:root{--navy:#111b3b;--navy2:#1d2b52;--gold:#c3945f;--cream:#f8f6f1;--paper:#fff;--ink:#172033;--muted:#677188;--line:#d9dde7;--teal:#2f7f78;--focus:#f0b429;--shadow:0 14px 40px #111b3b17;color:var(--ink);background:var(--cream);font-family:Raleway,Inter,Segoe UI,Arial,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,select{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.skip{z-index:99;background:#fff;padding:12px;position:fixed;top:-80px;left:16px}.skip:focus{top:16px}.app-shell{grid-template-columns:260px 1fr;min-height:100vh;display:grid}.rail{background:var(--navy);color:#fff;height:100vh;padding:28px 20px;position:sticky;top:0}.brand{align-items:center;gap:12px;margin-bottom:34px;display:flex}.brand-mark{border:5px solid var(--gold);border-radius:50%;place-items:center;width:42px;height:42px;font-weight:800;display:grid}.brand small{color:#c8cfdf;display:block}.nav-label{letter-spacing:.15em;text-transform:uppercase;color:#98a5c4;margin:22px 0 8px;font-size:.7rem}.nav-link{color:#dce2ef;border-radius:12px;padding:11px 12px;display:block}.nav-link:hover,.nav-link.active{color:#fff;background:#ffffff17}.workspace{min-width:0}.topbar{border-bottom:1px solid var(--line);z-index:4;background:#fff;justify-content:space-between;align-items:center;height:74px;padding:0 34px;display:flex;position:sticky;top:0}.topbar select{border:1px solid var(--line);background:#fff;border-radius:10px;max-width:270px;padding:10px}.connection{color:var(--muted);align-items:center;gap:8px;font-size:.9rem;display:flex}.connection i,.online{background:var(--teal);border-radius:50%;width:9px;height:9px;display:inline-block}main{max-width:1440px;margin:auto;padding:34px}.hero{justify-content:space-between;align-items:end;gap:24px;margin-bottom:28px;display:flex}.eyebrow{color:var(--gold);text-transform:uppercase;letter-spacing:.15em;font-size:.75rem;font-weight:800}.hero h1{margin:.25em 0;font-size:clamp(2rem,4vw,3.5rem);line-height:1}.hero p,.muted{color:var(--muted)}.grid{grid-template-columns:repeat(12,1fr);gap:18px;display:grid}.card{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:18px;padding:22px}.span4{grid-column:span 4}.span8{grid-column:span 8}.full{grid-column:1/-1}.card h2,.card h3{margin-top:0}.badge{color:var(--navy);background:#eef1f7;border-radius:999px;padding:6px 10px;font-size:.78rem;font-weight:700;display:inline-flex}.badge.gold{color:#714d27;background:#f3e6d6}.button{background:var(--navy);color:#fff;border:0;border-radius:12px;padding:12px 18px;font-weight:700;display:inline-flex}.button.secondary{color:var(--navy);border:1px solid var(--line);background:#fff}.button:disabled{opacity:.5}.actions,.command{flex-wrap:wrap;align-items:center;gap:10px;margin-top:18px;display:flex}.field{gap:7px;margin:14px 0;display:grid}.field input,.field textarea,.field select,td input{background:#fff;border:1px solid #bfc6d4;border-radius:10px;width:100%;padding:12px}.field textarea{min-height:110px}.check{gap:10px;padding:10px 0;display:flex}.notice{border-left:4px solid var(--gold);background:#fff8ed;border-radius:0 12px 12px 0;padding:14px 16px}.progress{background:#e6e9ef;border-radius:20px;height:10px;margin:20px 0;overflow:hidden}.progress span{background:linear-gradient(90deg,var(--gold),var(--teal));border-radius:20px;height:100%;display:block}.mission-track{grid-template-columns:repeat(5,1fr);gap:10px;display:grid}.mission{border:1px solid var(--line);background:#fff;border-radius:14px;padding:18px}.mission b{color:var(--navy);font-size:1.6rem;display:block}.mission span,.mission small{display:block}.mission small{color:var(--muted)}.mission.current{border:2px solid var(--gold);background:#fffaf4}.metric{color:var(--navy);font-size:2.4rem;font-weight:800}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid var(--line);white-space:nowrap;padding:12px}th{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-size:.75rem}.audit-grid,.gallery{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;display:grid}.audit-grid article,.gallery article{border:1px solid var(--line);border-radius:14px;padding:18px}.status-message{color:var(--teal)}.trace{color:var(--muted);border-top:1px dashed var(--line);margin-top:24px;padding-top:14px;font-size:.8rem}.mobile-nav{display:none}@media (max-width:900px){.app-shell{grid-template-columns:1fr}.rail{display:none}.topbar{padding:0 18px}.topbar>div strong{font-size:.9rem}.topbar select{max-width:190px}.mobile-nav{border-top:1px solid var(--line);z-index:9;background:#fff;justify-content:space-around;padding:12px 8px;font-size:.8rem;display:flex;position:fixed;bottom:0;left:0;right:0}main{padding:24px 18px 90px}.span4,.span8{grid-column:1/-1}.hero{flex-direction:column;align-items:start}.mission-track{grid-template-columns:1fr 1fr}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
.auth-page{background:linear-gradient(135deg,var(--navy),var(--navy2));place-items:center;min-height:100vh;padding:28px;display:grid}.auth-card{background:#fff;border-radius:22px;width:min(480px,100%);padding:38px;box-shadow:0 24px 70px #0005}.auth-card .brand-mark,.dashboard-header .brand-mark{width:auto;height:auto;color:var(--navy);letter-spacing:.1em;border:0;border-radius:0;font-size:2rem;display:block}.auth-card .brand-mark span,.dashboard-header .brand-mark span{color:var(--gold)}.dashboard-page{max-width:1280px;margin:auto;padding:0 34px 60px}.dashboard-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:24px;min-height:88px;display:flex}.dashboard-header>div{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.list-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:18px;padding:15px 0;display:flex}.list-row p{color:var(--muted);margin:.3rem 0}@media (max-width:700px){.dashboard-page{padding:0 18px 50px}.dashboard-header,.list-row{flex-direction:column;align-items:flex-start}.auth-card{padding:25px}}.auth-links{justify-content:space-between;gap:16px;margin-top:22px;display:flex}.institutional-page{background:linear-gradient(145deg,#fff 0%,var(--cream) 65%,#efe7dc 100%);flex-direction:column;max-width:none;min-height:100vh;padding:0;display:flex}.institutional-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;height:88px;padding:0 clamp(24px,6vw,92px);display:flex}.institutional-header .brand-mark{letter-spacing:.1em;width:auto;height:auto;color:var(--navy);border:0;border-radius:0;font-size:2rem}.institutional-header .brand-mark span{color:var(--gold)}.institutional-hero{grid-template-columns:1.05fr .95fr;align-items:center;gap:clamp(30px,7vw,100px);width:min(1240px,100%);margin:auto;padding:70px clamp(24px,6vw,92px);display:grid}.institutional-hero h1{letter-spacing:-.055em;color:var(--navy);margin:.18em 0;font-size:clamp(3rem,7vw,6.3rem);line-height:.94}.institutional-hero .lead{color:var(--muted);max-width:650px;font-size:clamp(1.05rem,2vw,1.35rem);line-height:1.6}.institutional-hero img{width:100%;max-height:520px}.institutional-page footer{color:var(--muted);border-top:1px solid var(--line);padding:28px clamp(24px,6vw,92px)}.system-page{background:var(--cream);place-items:center;min-height:100vh;padding:28px;display:grid}.system-card{border:1px solid var(--line);max-width:650px;box-shadow:var(--shadow);background:#fff;border-radius:22px;padding:42px}.system-code{color:var(--gold);margin:0;font-size:4rem;font-weight:800}.loading-mark{border:6px solid #d9dde7;border-top-color:var(--gold);border-radius:50%;width:54px;height:54px;margin-bottom:24px;animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width:800px){.institutional-hero{grid-template-columns:1fr;padding-top:45px}.institutional-hero img{max-height:330px}.institutional-header>span{display:none}}
