:root { --ink:#10242b; --muted:#6b7d82; --paper:#f5f7f4; --card:#fff; --line:#dbe5e1; --accent:#b5e34a; --accent-dark:#698f19; --shadow:0 18px 45px rgba(16,36,43,.09); --radius:1.4rem; }
body.modern-app { --ink:#e2b27e; --muted:#948462; --paper:#000; --card:#161616; --line:#594939; --accent:#fda944; --accent-dark:#e38f35; --shadow:0 18px 45px rgba(0,0,0,.42); --radius:.35rem; }
* { box-sizing:border-box; }
body { margin:0; background:var(--paper); color:var(--ink); font:16px/1.55 Inter,ui-sans-serif,system-ui,-apple-system,sans-serif; }
a { color:inherit; text-decoration:none; }
.site-header { align-items:center; display:flex; gap:2rem; justify-content:space-between; margin:auto; max-width:1180px; padding:1.4rem 2rem; }
.brand { font-size:1rem; font-weight:900; letter-spacing:.12em; }
.brand span { color:#c60f19; }
nav { display:flex; gap:1.4rem; margin-left:auto; }
nav a,.text-link { color:var(--muted); font-size:.9rem; font-weight:700; }
nav a:hover,.text-link:hover { color:var(--ink); }
nav a.is-active { box-shadow:inset 0 -2px 0 var(--accent); color:var(--ink); }
.player-navigation { align-items:center; background:var(--card); border:1px solid var(--line); border-radius:.35rem; box-shadow:var(--shadow); display:flex; gap:.8rem; justify-content:flex-start; margin:.75rem 0 0; overflow-x:auto; padding:0 .8rem; scrollbar-width:thin; }
.player-navigation a { flex:0 0 auto; padding:.8rem .55rem; }
.site-header .player-navigation { background:transparent; border:0; border-radius:0; box-shadow:none; flex:1 1 auto; margin:0; min-width:0; padding:0; }
.site-header .player-navigation a { font-size:.78rem; padding:.35rem .25rem; }
.nav-notification { color:#a9fd44; font-weight:900; }
.profile-chip { align-items:center; display:flex; font-size:.9rem; font-weight:800; gap:.6rem; }
.avatar { align-items:center; background:var(--accent); border-radius:50%; display:inline-flex; font-size:.75rem; font-weight:900; height:2rem; justify-content:center; width:2rem; }
.avatar-large { font-size:1.25rem; height:4.5rem; width:4.5rem; }
.page-shell { margin:auto; max-width:1180px; padding:4rem 2rem 6rem; }
.hero { align-items:center; display:grid; gap:3rem; grid-template-columns:1fr; min-height:360px; }
.hero-with-login { background-image:linear-gradient(90deg,rgba(0,0,0,.96),rgba(0,0,0,.86) 48%,rgba(0,0,0,.68)),url('/interface/images/fond.jpg'); background-position:center 15%; background-size:cover; border:1px solid var(--line); border-radius:1.4rem; grid-template-columns:minmax(0,1fr) minmax(300px,420px); overflow:hidden; padding:clamp(1.25rem,4vw,3rem); position:relative; }
.hero-with-login > * { position:relative; z-index:1; }
.hero h1 { font-size:clamp(2.5rem,5.5vw,5rem); }
.eyebrow,.metric-label,.card-index { color:var(--accent-dark); font-size:.7rem; font-weight:900; letter-spacing:.14em; text-transform:uppercase; }
h1 { font-size:clamp(2.7rem,7vw,6.5rem); letter-spacing:-.07em; line-height:.92; margin:1rem 0 1.5rem; max-width:850px; }
h2 { letter-spacing:-.04em; margin:.6rem 0; }
.lead { color:var(--muted); font-size:1.15rem; max-width:600px; }
.actions { display:flex; flex-wrap:wrap; gap:.8rem; margin-top:2rem; }
.button { background:var(--ink); border:1px solid var(--ink); border-radius:999px; color:white; display:inline-block; font-weight:800; padding:.85rem 1.35rem; }
.button:hover { background:#29434b; }
.button-ghost { background:transparent; color:var(--ink); }
.button-small { padding:.55rem 1rem; }
.hero-panel,.card { background:var(--card); border:1px solid var(--line); border-radius:1.4rem; box-shadow:var(--shadow); padding:1.5rem; }
.hero-panel { display:flex; flex-direction:column; gap:.35rem; }
.hero-panel small,.metric small { color:var(--muted); }
.status-dot { background:var(--accent); border-radius:50%; box-shadow:0 0 0 7px #edf8d7; height:.75rem; margin-bottom:1rem; width:.75rem; }
.feature-grid,.dashboard-grid { display:grid; gap:1rem; grid-template-columns:repeat(3,1fr); margin-top:4rem; }
.feature-card { overflow:hidden; padding:0; }
.feature-card-image { display:block; height:150px; object-fit:cover; opacity:.82; width:100%; }
.feature-card-content { padding:1.5rem; }
.feature-card-content .card-index { margin-bottom:1rem; }
.login-card { margin:0 auto; max-width:620px; width:100%; }
.login-card h2 { margin-top:.25rem; }
.login-error { background:rgba(250,31,31,.12); border:1px solid #fa1f1f; color:#fa1f1f; padding:.55rem .75rem; }
.login-error p { margin:0; }
.login-success { background:rgba(169,253,68,.12); border:1px solid #698f19; color:#698f19; padding:.55rem .75rem; }
.login-success p { margin:0; }
.login-switcher { perspective:1200px; }
.login-switcher-toggle { height:1px; opacity:0; position:absolute; width:1px; }
.login-switcher-toggle:focus-visible + .login-flip { outline:2px solid var(--accent); outline-offset:4px; }
.login-flip { display:grid; transform-style:preserve-3d; transition:transform .55s cubic-bezier(.2,.8,.2,1); }
.login-face { backface-visibility:hidden; grid-area:1 / 1; min-width:0; }
.login-face-back { transform:rotateY(180deg); visibility:hidden; }
.login-switcher-toggle:checked + .login-flip { transform:rotateY(180deg); }
.login-switcher-toggle:checked + .login-flip .login-face-front { visibility:hidden; }
.login-switcher-toggle:checked + .login-flip .login-face-back { visibility:visible; }
.login-face-heading { align-items:center; display:flex; gap:.8rem; margin-bottom:.75rem; }
.login-face-heading img { background:#000; border:1px solid var(--line); border-radius:.25rem; flex:0 0 64px; height:64px; object-fit:contain; width:64px; }
.login-face-heading .eyebrow { margin:0; }
.login-face h3 { color:var(--ink); font-size:1.25rem; letter-spacing:-.04em; margin:.15rem 0 0; }
.login-face > p { color:var(--muted); font-size:.85rem; margin:.7rem 0 0; }
.login-recovery-form { margin-top:.7rem; }
.login-help { cursor:pointer; display:inline-block; font-size:.78rem; margin-top:.85rem; }
.hero-login-link { display:none; }
.card p { color:var(--muted); }
.card-index { display:block; margin-bottom:2rem; }
.section-heading { margin-bottom:3rem; }
.section-heading h1 { font-size:clamp(3rem,7vw,5.5rem); }
.page-title-block { margin-bottom:1.25rem; }
.page-title-block h1 { font-size:clamp(1.8rem,3.5vw,2.8rem); letter-spacing:-.05em; margin:.1rem 0 .35rem; }
.page-title-block .lead { font-size:.9rem; margin:0; }
.dashboard-grid { grid-template-columns:repeat(4,1fr); margin-top:0; }
.profile-card { grid-column:span 2; }
.profile-main { align-items:center; display:flex; gap:1rem; min-height:130px; }
.profile-main h2 { font-size:1.8rem; }
.metric { display:flex; flex-direction:column; gap:.4rem; justify-content:center; min-height:180px; }
.metric strong { font-size:2.8rem; letter-spacing:-.08em; }
.regiment-card { grid-column:span 2; }
.quick-links { margin-top:4rem; }
.quick-grid { display:grid; grid-template-columns:repeat(4,1fr); }
.quick-grid a { border-bottom:1px solid var(--line); font-weight:800; padding:1.2rem 0; }
.quick-grid span { color:var(--accent-dark); float:right; }
.bureau-dashboard { display:flex; flex-direction:column; gap:1rem; }
.bureau-heading { margin-bottom:.5rem; }
.bureau-heading h1 { margin-bottom:.9rem; }
.bureau-shortcuts { display:grid; gap:.7rem; grid-template-columns:repeat(2,minmax(0,1fr)); }
.bureau-shortcuts .operation-card { background:var(--card); border-radius:1.4rem; min-height:104px; }
.bureau-shortcuts .operation-card img { flex-basis:54px; height:54px; width:54px; }
.bureau-metrics { display:grid; gap:1rem; grid-template-columns:repeat(4,minmax(0,1fr)); }
.bureau-metric { display:flex; flex-direction:column; gap:.35rem; min-height:142px; justify-content:center; }
.bureau-metric strong { font-size:2.5rem; letter-spacing:-.08em; line-height:1; }
.bureau-metric small { color:var(--muted); font-size:.75rem; }
.company-overview { margin:0; }
.company-state-list { display:grid; gap:.5rem; grid-template-columns:repeat(4,minmax(0,1fr)); }
.company-state { align-items:center; background:color-mix(in srgb,var(--status-color) 7%,transparent); border-left:3px solid var(--status-color); border-top:1px solid var(--line); display:flex; gap:.5rem; min-width:0; padding:.5rem .55rem; }
.company-state .activity-icon { flex-basis:30px; height:30px; width:30px; }
.company-state .activity-copy strong { font-size:.8rem; }
.company-state .activity-copy small { font-size:.6rem; }
.company-state-count { color:var(--accent); font-size:1.1rem; margin-left:auto; }
.company-state.status-attente { --status-color:#948462; }
.company-state.status-projection { --status-color:#2e6ca0; }
.company-state.status-permission { --status-color:#318a05; }
.company-state.status-soin { --status-color:#c74e52; }
.company-state.status-formation { --status-color:#fda944; }
.company-state.status-detente { --status-color:#b7833f; }
.company-state.status-retour { --status-color:#6b7d82; }
.company-state .activity-icon { border-color:var(--status-color); color:var(--status-color); }
.company-state-count { color:var(--status-color); }
.company-state.is-empty { background:transparent; opacity:.55; }
.bureau-production { padding:1rem; }
.production-list { display:grid; gap:.5rem; grid-template-columns:repeat(5,minmax(0,1fr)); }
.production-item { border-top:1px solid var(--line); display:flex; flex-direction:column; gap:.15rem; padding:.65rem 0 0; }
.production-item span { color:var(--muted); font-size:.72rem; font-weight:800; }
.production-item strong { color:var(--accent-dark); font-size:1.1rem; }
.bureau-highlights { display:grid; gap:1rem; grid-template-columns:repeat(3,minmax(0,1fr)); }
.bureau-highlight { min-height:190px; padding:1rem; }
.bureau-highlight h2 { font-size:1.1rem; margin:.4rem 0 .6rem; }
.bureau-highlight p { font-size:.75rem; }
.bureau-highlight-value { color:var(--accent-dark); font-size:2.5rem; line-height:1; }
.bureau-highlight .text-link { display:inline-block; font-size:.75rem; font-weight:800; margin-top:.5rem; }
.bureau-event-list { display:grid; gap:.4rem; list-style:none; margin:.65rem 0 0; padding:0; }
.bureau-event-list li { border-top:1px solid var(--line); color:var(--muted); font-size:.7rem; padding-top:.4rem; }
.bureau-event-list strong { color:var(--accent-dark); }
.legacy-banner { align-items:center; background:#2e1d0b; border:1px solid #594939; color:#e2b27e; display:flex; gap:1rem; justify-content:space-between; margin-bottom:2.5rem; padding:.75rem 1rem; }
.legacy-banner .button { flex-shrink:0; }
.site-banner { margin:0 auto; max-width:1180px; padding:.75rem 2rem 0; }
.site-banner .legacy-banner { margin:0; }
.site-banner + .page-shell { padding-top:2rem; }
.empty-state { text-align:center; }
.login-form { display:grid; gap:.55rem; margin-top:1rem; text-align:left; }
.login-form label { color:var(--muted); font-size:.72rem; font-weight:800; letter-spacing:.05em; text-transform:uppercase; }
.login-form input { background:#000; border:1px solid #594939; border-radius:.45rem; color:var(--ink); font:inherit; padding:.65rem .75rem; width:100%; }
.login-form input:focus { border-color:#fda944; outline:2px solid rgba(253,169,68,.22); outline-offset:1px; }
.login-form .button { justify-self:start; margin-top:.35rem; }
.login-help { font-size:.78rem; margin-top:.25rem; }
.site-footer { color:var(--muted); font-size:.8rem; margin:auto; max-width:1180px; padding:2rem; }
.footer-status { align-items:center; display:flex; gap:.75rem; justify-content:center; margin-bottom:.75rem; }
.footer-status .status-dot { flex-shrink:0; margin-bottom:0; }
.footer-status-copy { display:flex; flex-direction:column; gap:.1rem; text-align:left; }
.footer-status-copy small { color:var(--muted); }
body.modern-app .site-header { border-bottom:1px solid #442f1f; }
body.modern-app:not(.theme-light) { background-color:#050505; background-image:linear-gradient(rgba(253,169,68,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(253,169,68,.035) 1px,transparent 1px); background-size:32px 32px; }
body.modern-app:not(.theme-light) .site-header { background:linear-gradient(180deg,rgba(46,29,11,.72),rgba(0,0,0,.18)); box-shadow:0 2px 0 #000,0 1px 0 #594939; }
body.modern-app:not(.theme-light) .brand { color:#fda944; font-family:Tahoma,Arial Narrow,sans-serif; text-shadow:0 1px 0 #000; }
body.modern-app:not(.theme-light) h1 { font-family:Tahoma,Arial Narrow,sans-serif; text-shadow:2px 2px 0 #000; text-transform:uppercase; }
body.modern-app:not(.theme-light) h2 { color:#e2b27e; text-transform:uppercase; }
body.modern-app:not(.theme-light) .hero-panel,
body.modern-app:not(.theme-light) .card { border-radius:.35rem; box-shadow:inset 0 0 0 1px rgba(253,169,68,.08),0 12px 24px rgba(0,0,0,.32); }
body.modern-app:not(.theme-light) .button { border-radius:.25rem; letter-spacing:.06em; text-transform:uppercase; }
body.modern-app:not(.theme-light) .quick-grid a { border-bottom-color:#594939; text-transform:uppercase; }
body.modern-app .brand span { color:#c60f19; }
body.modern-app .eyebrow,
body.modern-app .card-index { color:#e38f35; }
body.modern-app nav a:hover,
body.modern-app .text-link:hover { color:#fda944; }
body.modern-app .profile-chip .avatar { background:#fda944; color:#191919; }
body.modern-app .button { background:#fda944; border-color:#fda944; color:#191919; }
body.modern-app .button:hover { background:#feae05; border-color:#feae05; }
body.modern-app .button-ghost { background:transparent; color:#fda944; }
body.modern-app .button-ghost:hover { background:#2e1d0b; }
body.modern-app .hero-panel,
body.modern-app .card { background:#161616; border-color:#594939; }
body.modern-app .hero-panel small,
body.modern-app .metric small,
body.modern-app .card p,
body.modern-app .lead { color:#948462; }
body.modern-app .login-face-heading img { background:#000; border-color:#594939; }
body.modern-app .login-face h3 { color:#e2b27e; }
body.modern-app .hero-with-login { border-color:#594939; }
body.modern-app .login-switcher-toggle:focus-visible + .login-flip { outline-color:#fda944; }
body.modern-app .login-help { color:#fda944; }
body.modern-app .login-success { background:rgba(169,253,68,.12); border-color:#698f19; color:#a9fd44; }
body.modern-app .status-dot { background:#a9fd44; box-shadow:0 0 0 7px #263410; }
body.modern-app .footer-status .status-dot { background:#a9fd44; box-shadow:0 0 0 7px #263410; }
body.modern-app .site-footer { border-top:1px solid #2e1d0b; }
.theme-toggle { align-self:flex-start; background:transparent; border:1px solid #fda944; border-radius:999px; color:#fda944; cursor:pointer; font:inherit; font-size:.8rem; font-weight:800; margin-top:1rem; padding:.55rem .85rem; }
.site-header .theme-toggle { margin-top:0; }
.theme-toggle:hover { background:#2e1d0b; }
body.modern-app.theme-light { --ink:#10242b; --muted:#6b7d82; --paper:#f5f7f4; --card:#fff; --line:#dbe5e1; --accent:#b5e34a; --accent-dark:#698f19; --shadow:0 18px 45px rgba(16,36,43,.09); }
body.modern-app.theme-light { --radius:1.4rem; }
body.modern-app.theme-light .site-header { border-bottom:0; }
body.modern-app.theme-light .brand span { color:#c60f19; }
body.modern-app.theme-light .eyebrow,
body.modern-app.theme-light .card-index { color:#698f19; }
body.modern-app.theme-light nav a:hover,
body.modern-app.theme-light .text-link:hover { color:#10242b; }
body.modern-app.theme-light nav a.is-active { color:#10242b; }
body.modern-app.theme-light .profile-chip .avatar { background:#b5e34a; color:#10242b; }
body.modern-app.theme-light .button { background:#10242b; border-color:#10242b; color:#fff; }
body.modern-app.theme-light .button:hover { background:#29434b; border-color:#29434b; }
body.modern-app.theme-light .button-ghost { background:transparent; color:#10242b; }
body.modern-app.theme-light .button-ghost:hover { background:#edf8d7; }
body.modern-app.theme-light .hero-panel,
body.modern-app.theme-light .card { background:#fff; border-color:#dbe5e1; }
body.modern-app.theme-light .hero-panel small,
body.modern-app.theme-light .metric small,
body.modern-app.theme-light .card p,
body.modern-app.theme-light .lead { color:#6b7d82; }
body.modern-app.theme-light .status-dot { background:#b5e34a; box-shadow:0 0 0 7px #edf8d7; }
body.modern-app.theme-light .footer-status .status-dot { background:#b5e34a; box-shadow:0 0 0 7px #edf8d7; }
body.modern-app.theme-light .site-footer { border-top:0; }
body.modern-app.theme-light .theme-toggle { border-color:#698f19; color:#698f19; }
body.modern-app.theme-light .theme-toggle:hover { background:#edf8d7; }
body.modern-app.theme-light .login-form input { background:#fff; border-color:#dbe5e1; color:#10242b; }
body.modern-app.theme-light .login-form input:focus { border-color:#698f19; outline-color:rgba(105,143,25,.22); }
body.modern-app.theme-light .login-face-heading img { background:#f5f7f4; border-color:#dbe5e1; }
body.modern-app.theme-light .legacy-banner { background:#edf8d7; border-color:#dbe5e1; color:#10242b; }
body.modern-app.theme-light .hero-with-login { background-image:linear-gradient(90deg,rgba(245,247,244,.96),rgba(245,247,244,.88) 48%,rgba(245,247,244,.72)),url('/interface/images/fond.jpg'); border-color:#dbe5e1; }
.modern-bureau .legacy-banner { margin-bottom:1.25rem; }
.command-center { display:flex; flex-direction:column; gap:1rem; }
.command-header { align-items:stretch; display:grid; gap:1rem; grid-template-columns:repeat(3,minmax(0,1fr)); margin:0; padding:1rem; }
.command-body { border-top:1px solid var(--line); padding:1rem; }
.resource-grid { display:grid; gap:.55rem; grid-template-columns:repeat(6,minmax(0,1fr)); }
.resource-card { align-items:center; display:flex; gap:.5rem; min-width:0; padding:.55rem .6rem; }
.resource-card img { background:#000; border:1px solid var(--line); flex:0 0 30px; height:30px; object-fit:contain; padding:.15rem; width:30px; }
.resource-card-copy { display:flex; flex:1; flex-direction:column; gap:.1rem; min-width:0; }
.resource-card-copy strong { font-size:1.05rem; letter-spacing:-.04em; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.resource-production { color:var(--muted); font-size:.58rem; line-height:1.2; }
.command-identity { align-items:center; display:flex; gap:1rem; min-width:0; }
.command-rank-identity { align-items:center; display:flex; gap:.65rem; }
.grade-avatar { background:transparent; border:0; border-radius:0; display:block; flex:0 0 46px; height:46px; object-fit:contain; width:46px; }
.command-rank-copy { display:flex; flex-direction:column; gap:.1rem; min-width:0; }
.command-level { color:var(--muted); font-size:.95rem; font-weight:800; }
.command-pdc-current { display:block; font-size:1.15rem; margin:.25rem 0 .45rem; }
.command-pdc-line { color:var(--muted); font-size:.78rem; line-height:1.35; margin-top:.3rem; }
.command-pdc-line strong { color:var(--accent-dark); font-weight:900; }
.command-identity h1 { font-size:clamp(1.2rem,2vw,1.7rem); letter-spacing:-.04em; margin:.1rem 0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.command-identity .avatar { flex:0 0 auto; }
.command-subtitle { color:var(--muted); font-size:.78rem; margin:0; }
.command-subtitle strong { color:var(--ink); }
.command-rank,.command-pdc { align-items:flex-start; border-left:1px solid var(--line); display:flex; flex-direction:column; justify-content:center; padding-left:1rem; }
.command-stat-label,.command-nav-kicker { color:var(--accent-dark); font-size:.68rem; font-weight:900; letter-spacing:.12em; text-transform:uppercase; }
.command-rank strong { display:block; font-size:1.15rem; margin:.25rem 0 .45rem; }
.command-pdc-value { color:var(--accent-dark); font-size:1.15rem; letter-spacing:-.04em; }
.command-nav { align-items:center; display:flex; gap:1rem; overflow-x:auto; padding:0 .85rem; }
.command-nav-title { color:var(--muted); font-size:.7rem; font-weight:900; letter-spacing:.12em; text-transform:uppercase; }
.command-nav-groups { display:flex; flex:1; min-width:max-content; }
.command-nav-link { border-left:1px solid var(--line); display:flex; flex-direction:column; gap:.15rem; min-width:130px; padding:.7rem 1rem; transition:background .15s ease,color .15s ease; }
.command-nav-link:hover,.command-nav-link.is-active { background:rgba(253,169,68,.1); color:var(--ink); }
.command-nav-link.is-active { box-shadow:inset 0 -2px 0 var(--accent); }
.command-nav-link > span:last-child { font-size:.88rem; font-weight:800; }
.command-layout { align-items:start; display:grid; gap:1rem; grid-template-columns:minmax(0,1.7fr) minmax(260px,.8fr); }
.command-main,.command-aside { display:flex; flex-direction:column; gap:1rem; min-width:0; }
.command-panel,.regiment-command,.priority-panel,.resource-panel { margin:0; }
.panel-heading { align-items:flex-start; display:flex; gap:1rem; justify-content:space-between; margin-bottom:1.2rem; }
.panel-heading h2 { margin:.15rem 0 0; }
.status-badge { align-items:center; color:var(--accent-dark); display:flex; font-size:.68rem; font-weight:900; gap:.45rem; letter-spacing:.08em; text-transform:uppercase; white-space:nowrap; }
.status-badge .status-dot { height:.5rem; margin:0; width:.5rem; }
.operation-grid { display:grid; gap:.7rem; grid-template-columns:repeat(2,minmax(0,1fr)); }
.operation-card { align-items:center; border:1px solid var(--line); display:flex; gap:.8rem; min-height:92px; padding:.8rem; transition:border-color .15s ease,background .15s ease,transform .15s ease; }
.operation-card:hover { background:rgba(253,169,68,.08); border-color:var(--accent); transform:translateY(-1px); }
.operation-card img { background:#000; border:1px solid var(--line); flex:0 0 42px; height:42px; object-fit:contain; padding:.2rem; width:42px; }
.operation-copy { display:flex; flex:1; flex-direction:column; gap:.2rem; min-width:0; }
.operation-copy strong { font-size:.9rem; }
.operation-copy small { color:var(--muted); font-size:.72rem; line-height:1.35; }
.operation-arrow { color:var(--accent-dark); font-size:1.1rem; font-weight:900; }
.regiment-summary { align-items:center; display:flex; gap:1rem; justify-content:space-between; }
.regiment-summary > div { min-width:0; }
.regiment-summary strong { display:block; font-size:1.25rem; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.regiment-summary p { font-size:.78rem; margin:.25rem 0 0; }
.priority-panel h2,.resource-panel h2 { font-size:1.15rem; }
.priority-list { border-top:1px solid var(--line); margin-top:1rem; }
.priority-list a { align-items:center; border-bottom:1px solid var(--line); display:grid; gap:.65rem; grid-template-columns:2rem 1fr auto; padding:.75rem 0; }
.priority-list a:hover { color:var(--accent); }
.priority-list a > span:nth-child(2) { font-size:.85rem; font-weight:800; }
.priority-list a > span:last-child { color:var(--accent-dark); font-weight:900; }
.priority-index { color:var(--muted); font-size:.68rem; font-weight:900; }
.resource-list { margin:1rem 0 0; }
.resource-list div { align-items:center; border-top:1px solid var(--line); display:flex; gap:1rem; justify-content:space-between; padding:.7rem 0; }
.resource-list dt { color:var(--muted); font-size:.75rem; }
.resource-list dd { font-size:1.1rem; font-weight:900; margin:0; }
.global-command-center { display:flex; flex-direction:column; gap:0; margin-bottom:1rem; overflow:hidden; padding:0; }
.global-command-center .command-header { border:0; border-radius:0; margin:0; }
.global-command-center .regiment-selector { border:0; border-radius:0; border-top:1px solid var(--line); padding:1rem; }
.regiment-selector { margin:0; padding:1rem; }
.regiment-dock { padding:1rem; }
.regiment-dock > .panel-heading { align-items:center; margin-bottom:.8rem; }
.regiment-tabs { display:grid; gap:.6rem; grid-template-columns:repeat(4,minmax(0,1fr)); padding-bottom:.35rem; }
.regiment-tab { align-items:center; border:1px solid var(--line); border-radius:.3rem; display:flex; gap:.65rem; min-height:68px; min-width:0; padding:.55rem; transition:background .15s ease,border-color .15s ease; }
.regiment-tab:hover,.regiment-tab.is-selected { background:rgba(253,169,68,.1); border-color:var(--accent); }
.regiment-tab.is-selected { box-shadow:none; }
.regiment-tab.is-premium { border-color:var(--accent-dark); }
.regiment-tab.is-premium .regiment-icon { border-color:var(--accent); color:var(--accent); }
.regiment-icon { align-items:center; background:#000; border:1px solid var(--line); color:var(--accent); display:inline-flex; flex:0 0 38px; font-size:.65rem; font-weight:900; height:38px; justify-content:center; letter-spacing:.04em; overflow:hidden; padding:.15rem; text-align:center; width:38px; }
.regiment-tab-copy { display:flex; flex:1; flex-direction:column; gap:.15rem; min-width:0; }
.regiment-tab-copy strong { font-size:.78rem; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.regiment-tab-copy small { color:var(--muted); font-size:.65rem; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.regiment-type { color:var(--accent-dark); font-size:.58rem; font-weight:900; letter-spacing:.06em; }
.regiment-detail { align-items:center; border-top:1px solid var(--line); display:grid; gap:1rem; grid-template-columns:minmax(220px,1.2fr) minmax(300px,1.8fr) auto; margin-top:.6rem; padding-top:1rem; }
.regiment-detail-heading { align-items:center; display:flex; gap:.7rem; min-width:0; }
.regiment-icon-large { flex-basis:54px; font-size:.78rem; height:54px; width:54px; }
.regiment-detail-heading h3 { color:var(--ink); font-size:1.1rem; margin:.15rem 0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.regiment-detail-heading p { color:var(--muted); font-size:.7rem; margin:0; }
.regiment-facts { display:grid; gap:.5rem; grid-template-columns:repeat(3,1fr); margin:0; }
.regiment-facts div { border-left:1px solid var(--line); padding-left:.7rem; }
.regiment-facts dt { color:var(--muted); font-size:.62rem; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }
.regiment-facts dd { font-size:.8rem; font-weight:800; margin:.15rem 0 0; }
.regiment-activity { border-top:1px solid var(--line); grid-column:1 / -1; padding-top:.8rem; }
.regiment-activity > .eyebrow { margin:0 0 .5rem; }
.activity-list { display:flex; flex-wrap:wrap; gap:.5rem; }
.activity-item { align-items:center; border:1px solid var(--line); display:flex; gap:.55rem; min-width:175px; padding:.45rem .55rem; }
.activity-icon { align-items:center; background:rgba(253,169,68,.12); border:1px solid var(--accent-dark); color:var(--accent); display:inline-flex; flex:0 0 28px; font-size:.7rem; font-weight:900; height:28px; justify-content:center; width:28px; }
.activity-copy { display:flex; flex:1; flex-direction:column; gap:.05rem; min-width:0; }
.activity-copy strong { font-size:.73rem; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.activity-copy small,.activity-deadline { color:var(--muted); font-size:.62rem; }
.activity-deadline { font-variant-numeric:tabular-nums; white-space:nowrap; }
.activity-empty { font-size:.75rem; margin:0; }
.regiment-actions-footer { border-top:1px solid var(--line); margin-top:1rem; padding-top:.8rem; }
.regiment-actions-footer > .eyebrow { margin:0 0 .5rem; }
.regiment-action-links { display:grid; gap:.5rem; grid-template-columns:repeat(4,minmax(0,1fr)); }
.regiment-action-link { align-items:center; border:1px solid var(--line); display:flex; gap:.55rem; min-height:58px; padding:.55rem; transition:background .15s ease,border-color .15s ease; }
.regiment-action-link:hover { background:rgba(253,169,68,.1); border-color:var(--accent); }
.regiment-action-link > span:last-child { font-size:.72rem; font-weight:800; line-height:1.3; }
.regiment-action-icon { align-items:center; background:rgba(253,169,68,.12); border:1px solid var(--accent-dark); color:var(--accent); display:inline-flex; flex:0 0 28px; font-size:.58rem; font-weight:900; height:28px; justify-content:center; width:28px; }
body.modern-app:not(.theme-light) .regiment-tab:hover,
body.modern-app:not(.theme-light) .regiment-tab.is-selected { background:rgba(253,169,68,.12); }
body.modern-app:not(.theme-light) .regiment-icon { border-color:#594939; }
body.modern-app.theme-light .regiment-tab:hover,
body.modern-app.theme-light .regiment-tab.is-selected { background:#edf8d7; }
body.modern-app.theme-light .regiment-icon { background:#f5f7f4; }
body.modern-app:not(.theme-light) .command-nav-link:hover,
body.modern-app:not(.theme-light) .command-nav-link.is-active,
body.modern-app:not(.theme-light) .operation-card:hover { background:rgba(253,169,68,.12); }
body.modern-app:not(.theme-light) .operation-card img { border-color:#594939; }
body.modern-app:not(.theme-light) .command-subtitle strong { color:#e2b27e; }
body.modern-app.theme-light .command-nav-link:hover,
body.modern-app.theme-light .command-nav-link.is-active,
body.modern-app.theme-light .operation-card:hover { background:#edf8d7; }
body.modern-app.theme-light .operation-card img { background:#f5f7f4; }
body.modern-app:not(.theme-light) .resource-card img { border-color:#594939; }
body.modern-app.theme-light .resource-card img { background:#f5f7f4; }
body.modern-app:not(.theme-light) .bureau-shortcuts .operation-card { border-radius:.35rem; }
body.modern-app.theme-light .bureau-shortcuts .operation-card { border-radius:1.4rem; }
@media (max-width:700px) { .site-header { flex-wrap:wrap; gap:1rem; padding:1rem 1.2rem; } nav { flex-basis:100%; justify-content:space-between; margin:0; order:3; } .page-shell { padding:2.5rem 1.2rem 4rem; } .hero { display:flex; flex-direction:column; min-height:0; } .hero-panel { align-self:stretch; } .feature-grid,.dashboard-grid { grid-template-columns:1fr; margin-top:2.5rem; } .profile-card,.regiment-card { grid-column:auto; } .quick-grid { grid-template-columns:1fr 1fr; } .legacy-banner { align-items:stretch; flex-direction:column; margin-bottom:2rem; } .legacy-banner .button { text-align:center; } .footer-status { align-items:flex-start; flex-wrap:wrap; justify-content:flex-start; } .hero-login-link { display:inline-block; } .login-flip { display:block; } .login-face-back { display:none; transform:none; } .login-switcher-toggle:checked + .login-flip .login-face-front { display:none; } .login-switcher-toggle:checked + .login-flip .login-face-back { display:block; } h1 { font-size:clamp(3rem,16vw,5rem); } .hero h1 { font-size:clamp(2.25rem,12vw,4rem); } }
@media (max-width:700px) {
    .player-navigation { gap:.35rem; padding:.2rem .55rem; white-space:nowrap; }
    .player-navigation a { font-size:.78rem; padding:.65rem .45rem; }
    .site-header .player-navigation { flex-basis:100%; margin:0; order:3; padding:.2rem 0; }
    .site-header .player-navigation a { font-size:.75rem; padding:.55rem .35rem; }
    .site-banner { padding:.6rem 1.2rem 0; }
    .site-banner + .page-shell { padding-top:1.25rem; }
    .modern-bureau .page-shell { padding-top:1.25rem; }
    .modern-bureau .legacy-banner { margin-bottom:1rem; }
    .global-command-center { gap:0; margin-bottom:.75rem; }
    .regiment-selector { padding:.85rem; }
    .command-center { gap:.75rem; }
    .command-header { display:flex; flex-direction:column; gap:.85rem; padding:.85rem; }
    .command-identity { gap:.75rem; }
    .command-rank-identity { gap:.5rem; }
    .grade-avatar { flex-basis:42px; height:42px; width:42px; }
    .command-identity h1 { font-size:1.3rem; max-width:calc(100vw - 7rem); }
    .command-subtitle { font-size:.72rem; }
    .command-rank { border-left:0; border-top:1px solid var(--line); padding:.75rem 0 0; }
    .command-pdc { border-left:0; border-top:1px solid var(--line); padding:.75rem 0 0; }
    .command-pdc-current { font-size:1.05rem; }
    .command-pdc-value { font-size:1.15rem; }
    .command-body { padding:.85rem; }
    .resource-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
    .resource-card { align-items:flex-start; flex-direction:column; gap:.3rem; min-height:74px; padding:.5rem; }
    .resource-card img { flex-basis:28px; height:28px; width:28px; }
    .resource-card-copy strong { font-size:.95rem; }
    .command-nav { align-items:stretch; border-radius:.35rem; display:block; padding:0; }
    .command-nav-title { display:block; padding:.65rem .85rem .35rem; }
    .command-nav-groups { -webkit-overflow-scrolling:touch; overflow-x:auto; padding:0 .2rem .2rem; scrollbar-width:thin; }
    .command-nav-link { min-height:58px; min-width:112px; padding:.65rem .7rem; }
    .command-nav-link > span:last-child { font-size:.8rem; }
    .command-layout { display:flex; flex-direction:column; gap:.75rem; }
    .command-aside { order:-1; width:100%; }
    .command-main { width:100%; }
    .command-panel,.regiment-command,.priority-panel,.resource-panel { padding:1rem; }
    .panel-heading { align-items:flex-start; flex-wrap:wrap; margin-bottom:1rem; }
    .panel-heading h2 { font-size:1.15rem; }
    .status-badge { font-size:.6rem; }
    .operation-grid { grid-template-columns:1fr; }
    .operation-card { min-height:76px; padding:.7rem; }
    .operation-card img { flex-basis:38px; height:38px; width:38px; }
    .operation-copy small { font-size:.68rem; }
    .regiment-summary { align-items:stretch; flex-direction:column; }
    .regiment-summary .button { text-align:center; width:100%; }
    .regiment-dock { padding:.85rem; }
    .regiment-dock > .panel-heading { margin-bottom:.55rem; }
    .regiment-tabs { grid-template-columns:repeat(2,minmax(0,1fr)); margin:0 -.15rem; padding-left:.15rem; padding-right:.15rem; }
    .regiment-tab { min-height:64px; }
    .regiment-detail { align-items:stretch; display:flex; flex-direction:column; gap:.8rem; }
    .regiment-facts { gap:.35rem; }
    .regiment-facts div { padding-left:.45rem; }
    .regiment-facts dt { font-size:.55rem; }
    .regiment-facts dd { font-size:.72rem; }
    .activity-list { flex-direction:column; }
    .activity-item { min-height:48px; min-width:0; width:100%; }
    .regiment-actions-footer { margin-top:.8rem; }
    .regiment-action-links { grid-template-columns:1fr 1fr; }
    .regiment-action-link { min-height:68px; }
    .regiment-action-link > span:last-child { font-size:.67rem; }
    .regiment-detail .button { text-align:center; width:100%; }
    .priority-list a { min-height:52px; padding:.65rem 0; }
    .resource-list div { min-height:52px; }
    .bureau-shortcuts { grid-template-columns:1fr; }
    .company-state-list { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .bureau-shortcuts .operation-card { border-radius:.35rem; }
    .bureau-shortcuts .operation-card img { flex-basis:46px; height:46px; width:46px; }
    .bureau-metrics { grid-template-columns:1fr 1fr; gap:.5rem; }
    .bureau-metric { min-height:112px; padding:.8rem; }
    .bureau-metric strong { font-size:2rem; }
    .bureau-metric small { font-size:.65rem; line-height:1.3; }
    .bureau-highlights { grid-template-columns:1fr; }
    .bureau-highlight { min-height:0; }
}
@media (max-width:380px) {
    .command-identity h1 { font-size:1.35rem; }
    .command-nav-link { min-width:104px; }
    .command-nav-kicker { font-size:.58rem; }
    .operation-copy small { display:none; }
}
@media (prefers-reduced-motion:reduce) { .login-flip { transition:none; } }
