/* Shared foundation for adopted workspaces; legacy pages remain unchanged.
   Keep --map-* tokens and .map-button compatibility while pages migrate. */
.workspace-page {
    --map-surface: #fff; --map-subtle: #f2f5f7; --map-text: #203448;
    --map-muted: #596979; --map-line: #d6dfe6; --map-control-line: #7a8b9a; --map-accent: #214d78;
    --map-accent-soft: #e9f1f8; --map-alarm: #ac2535; --map-alarm-soft: #fff0f1; --map-warning: #855008; --map-focus: #2473bc;
    color: var(--map-text); background: var(--map-subtle);
}
[data-theme="dark"] .workspace-page {
    --map-surface: #172532; --map-subtle: #101c27; --map-text: #e0e9f0;
    --map-muted: #adbdcb; --map-line: #344758; --map-control-line: #718597; --map-accent: #9bc8f0;
    --map-accent-soft: #263e52; --map-alarm: #ff9ca6; --map-alarm-soft: #392733; --map-warning: #f0c175; --map-focus: #94c9fa;
}
.workspace-page .content { min-width: 0; padding: 1.25rem 1.5rem; overflow: visible; }
.workspace-page .content > header { margin-bottom: 1.5rem; }
.workspace-page .content > header img { height: 2.75rem; }
.workspace-page .content > header h1 { font-size: 1rem; font-weight: 550; background: none; -webkit-text-fill-color: currentColor; color: var(--map-muted); }
.workspace-page .content > header a { gap: .7rem; }
.workspace-page .content > header a:hover h1 { animation: none; }
.workspace-page .content > footer { margin: 1.5rem 0 0; color: var(--map-muted); }
.workspace-page nav { background: var(--map-surface); box-shadow: none; border-right: 1px solid var(--map-line); }
.workspace-page nav li a, .workspace-page nav li a:visited { color: var(--map-muted); }
.workspace-page nav li.active a, .workspace-page nav li a:hover { background: var(--map-accent-soft); color: var(--map-accent); }
.workspace-page .nav-toggle { width: 44px; height: 44px; padding: .6rem; }
.workspace-page main { padding: 0; min-width: 0; }
.workspace-page ::selection { background: var(--map-accent); color: var(--map-surface); }
.workspace-page :focus-visible { outline: 3px solid var(--map-focus); outline-offset: 3px; }
.workspace-page [hidden] { display: none !important; }
.workspace-page input { color: var(--map-text); background: var(--map-surface); border: 1px solid var(--map-control-line); border-radius: 5px; font: inherit; caret-color: var(--map-accent); }
.workspace-page input::placeholder { color: var(--map-muted); opacity: 1; }
.workspace-page input[type="checkbox"] { accent-color: var(--map-accent); width: 1rem; height: 1rem; }
.workspace-page label { font-size: .875rem; text-transform: none; color: var(--map-muted); }
.workspace-page button, .workspace-page a.map-button { background: var(--map-surface); color: var(--map-text); border: 1px solid var(--map-control-line); border-radius: 5px; font: inherit; text-transform: none; box-shadow: none; }
.workspace-page button:hover, .workspace-page a.map-button:hover { background: var(--map-accent-soft); color: var(--map-accent); border-color: var(--map-accent); }
.workspace-page .map-button { display: inline-flex; min-height: 40px; align-items: center; justify-content: center; padding: .55rem .8rem; font-size: .875rem; white-space: nowrap; text-decoration: none; }
.workspace-page .map-button-primary { background: #214d78; color: #fff; border-color: #214d78; }
.workspace-page .map-button-primary:hover { background: #153b60; color: #fff; }
.workspace-page button:disabled { opacity: .5; cursor: not-allowed; }
@media (max-width: 899px) {
    .workspace-page .content { margin-left: 0; }
    .workspace-page nav:not(.active) { transform: translateX(-100%); }
    .workspace-page .content > header { padding-left: 3rem; min-height: 44px; }
}
@media (max-width: 760px) {
    .workspace-page .content { padding: .8rem; }
    .workspace-page .content > header { margin-bottom: 1rem; }
    .workspace-page .content > header h1 { font-size: .8rem; line-height: 1.4; }
    .workspace-page .content > header img { height: 2rem; }
    .workspace-page .map-button { min-height: 44px; }
}
@media (prefers-reduced-motion: reduce) {
    .workspace-page *, .workspace-page *::before, .workspace-page *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}
