:root{
  --bg:#07111f;--sidebar:#0b1727;--panel:#101d2e;--panel-2:#132238;--line:#26384e;
  --text:#f5f7fb;--muted:#98a9bd;--gold:#d8af55;--gold-2:#f2d38d;--blue:#4c8df6;
  --green:#58c98d;--red:#ef7474;--orange:#e8a456;--shadow:0 18px 50px rgba(0,0,0,.25)
}
*{box-sizing:border-box}html{background:var(--bg)}body{margin:0;background:var(--bg);color:var(--text);font:14px/1.5 Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.app{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:268px;background:linear-gradient(180deg,#0d1b2e 0,#091321 100%);border-right:1px solid var(--line);z-index:40;display:flex;flex-direction:column}.sidebar-brand{height:78px;display:flex;align-items:center;gap:12px;padding:0 20px;border-bottom:1px solid var(--line)}.brand-mark{width:42px;height:42px;border:1px solid rgba(216,175,85,.55);border-radius:11px;display:grid;place-items:center;color:var(--gold);font-weight:900;letter-spacing:.03em;background:rgba(216,175,85,.06)}.brand-copy strong{display:block;font-size:15px}.brand-copy span{display:block;color:var(--muted);font-size:11px;letter-spacing:.09em;text-transform:uppercase;margin-top:2px}.nav{padding:16px 12px;overflow:auto}.nav-label{color:#6f8298;font-size:10px;text-transform:uppercase;letter-spacing:.16em;font-weight:900;padding:14px 10px 7px}.nav a{display:flex;align-items:center;gap:11px;padding:10px 12px;color:#b7c4d4;border-radius:9px;margin:2px 0;font-weight:650}.nav a:hover{background:rgba(255,255,255,.045);color:#fff}.nav a.active{background:linear-gradient(90deg,rgba(216,175,85,.16),rgba(216,175,85,.035));color:#fff;border:1px solid rgba(216,175,85,.22)}.nav-icon{width:21px;text-align:center;color:var(--gold)}.sidebar-foot{margin-top:auto;padding:14px;border-top:1px solid var(--line)}.user-chip{display:flex;align-items:center;gap:10px;padding:8px}.avatar{width:35px;height:35px;border-radius:50%;display:grid;place-items:center;background:#1b304b;color:var(--gold);font-weight:800}.user-chip strong,.user-chip span{display:block}.user-chip span{color:var(--muted);font-size:11px}.main{margin-left:268px;min-height:100vh}.topbar{height:78px;position:sticky;top:0;z-index:30;background:rgba(7,17,31,.88);backdrop-filter:blur(16px);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 28px}.topbar-left{display:flex;align-items:center;gap:14px}.topbar h1{font-size:19px;margin:0}.topbar p{margin:2px 0 0;color:var(--muted);font-size:12px}.top-actions{display:flex;align-items:center;gap:9px}.mobile-menu{display:none;background:transparent;border:1px solid var(--line);color:var(--text);border-radius:8px;padding:7px 10px}.content{padding:28px;max-width:1680px;margin:0 auto}.flash{border-radius:10px;padding:13px 15px;margin-bottom:18px;border:1px solid}.flash-success{background:rgba(88,201,141,.1);border-color:rgba(88,201,141,.32);color:#caffdf}.flash-error{background:rgba(239,116,116,.1);border-color:rgba(239,116,116,.32);color:#ffd4d4}.flash-warning{background:rgba(232,164,86,.1);border-color:rgba(232,164,86,.32);color:#ffe3bc}.grid{display:grid;gap:18px}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.card{background:linear-gradient(180deg,rgba(17,31,49,.98),rgba(14,26,42,.98));border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow)}.card-head{padding:18px 20px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:14px}.card-head h2,.card-head h3{margin:0;font-size:15px}.card-body{padding:20px}.stat{padding:20px}.stat-top{display:flex;justify-content:space-between;align-items:flex-start}.stat-icon{width:42px;height:42px;border-radius:11px;display:grid;place-items:center;background:rgba(76,141,246,.1);color:#8ab7ff;border:1px solid rgba(76,141,246,.2);font-size:17px}.stat-value{font-size:30px;line-height:1;font-weight:850;margin:18px 0 7px}.stat-label{color:var(--muted);font-size:12px}.stat-meta{margin-top:14px;font-size:11px;color:#b7c4d4}.stat-meta strong{color:var(--green)}.toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:18px}.toolbar .grow{flex:1}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:9px;padding:9px 13px;font-weight:800;border:1px solid transparent;cursor:pointer;white-space:nowrap}.btn-primary{background:linear-gradient(135deg,var(--gold),var(--gold-2));color:#172033}.btn-secondary{background:#16263b;border-color:var(--line);color:#dce5f0}.btn-danger{background:rgba(239,116,116,.12);border-color:rgba(239,116,116,.3);color:#ffb4b4}.btn-ghost{background:transparent;border-color:var(--line);color:#b9c7d7}.btn-sm{padding:6px 9px;font-size:12px}.table-wrap{overflow:auto}.table{width:100%;border-collapse:collapse;min-width:760px}.table th{color:#8194aa;font-size:10px;letter-spacing:.12em;text-transform:uppercase;text-align:left;padding:12px 14px;border-bottom:1px solid var(--line);font-weight:900}.table td{padding:13px 14px;border-bottom:1px solid rgba(38,56,78,.72);vertical-align:middle}.table tbody tr:hover{background:rgba(255,255,255,.018)}.table tr:last-child td{border-bottom:0}.muted{color:var(--muted)}.small{font-size:12px}.actions{display:flex;gap:7px;justify-content:flex-end}.badge{display:inline-flex;align-items:center;border-radius:999px;padding:4px 8px;font-size:10px;font-weight:900;letter-spacing:.05em;text-transform:uppercase;background:#213147;color:#c6d4e4}.badge-active,.badge-published,.badge-completed{background:rgba(88,201,141,.12);color:#7ee0aa}.badge-inactive,.badge-archived,.badge-suspended,.badge-expired{background:rgba(150,164,181,.12);color:#b9c4d1}.badge-draft,.badge-invited,.badge-not_started{background:rgba(232,164,86,.12);color:#efb971}.badge-in_progress,.badge-important{background:rgba(76,141,246,.13);color:#8bb8ff}.badge-failed,.badge-urgent{background:rgba(239,116,116,.12);color:#ff9f9f}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.form-group.full{grid-column:1/-1}.form-group label{display:block;font-weight:800;font-size:12px;margin-bottom:7px;color:#d8e1ec}.form-control{width:100%;background:#091524;border:1px solid var(--line);border-radius:9px;color:var(--text);padding:10px 12px;outline:none}.form-control:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(76,141,246,.14)}textarea.form-control{min-height:115px;resize:vertical}.help{font-size:11px;color:var(--muted);margin-top:6px}.modal{position:fixed;inset:0;background:rgba(1,6,12,.78);z-index:100;display:none;align-items:center;justify-content:center;padding:18px}.modal.open{display:flex}.modal-panel{width:min(700px,100%);max-height:90vh;overflow:auto;background:var(--panel);border:1px solid var(--line);border-radius:15px;box-shadow:0 30px 100px rgba(0,0,0,.55)}.modal-head,.modal-foot{padding:16px 20px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.modal-foot{border-top:1px solid var(--line);border-bottom:0;justify-content:flex-end}.modal-body{padding:20px}.close-modal{border:0;background:transparent;color:var(--muted);font-size:24px;cursor:pointer}.empty{padding:44px 20px;text-align:center;color:var(--muted)}.progress{height:8px;background:#08121f;border-radius:999px;overflow:hidden;border:1px solid #1d2d42}.progress span{display:block;height:100%;background:linear-gradient(90deg,var(--blue),#85b5ff);border-radius:999px}.metric-row{display:flex;align-items:center;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--line)}.metric-row:last-child{border-bottom:0}.page-split{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(320px,.6fr);gap:18px}.module{border:1px solid var(--line);border-radius:11px;background:#0c1828;margin-bottom:14px;overflow:hidden}.module-head{padding:14px 16px;background:#132239;display:flex;justify-content:space-between;gap:12px}.lesson{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-top:1px solid var(--line)}.lesson-meta{font-size:11px;color:var(--muted);margin-top:3px}.search{position:relative}.search input{padding-left:34px}.search span{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#71849a}.pagination{display:flex;gap:6px;justify-content:flex-end;padding-top:16px}.pagination a,.pagination span{min-width:32px;height:32px;display:grid;place-items:center;border:1px solid var(--line);border-radius:8px;color:#bdcad9}.pagination .current{background:var(--gold);color:#172033;border-color:var(--gold);font-weight:900}.login-page{min-height:100vh;display:grid;place-items:center;padding:20px;background:radial-gradient(circle at 80% 0,#19365e 0,transparent 34%),var(--bg)}.login-shell{width:min(970px,100%);display:grid;grid-template-columns:1.05fr .95fr;background:var(--panel);border:1px solid var(--line);border-radius:20px;overflow:hidden;box-shadow:0 35px 100px rgba(0,0,0,.42)}.login-visual{padding:48px;background:linear-gradient(145deg,#11233a,#091321);position:relative}.login-visual:after{content:"";position:absolute;inset:auto -80px -100px auto;width:280px;height:280px;border-radius:50%;border:1px solid rgba(216,175,85,.24);box-shadow:0 0 0 45px rgba(216,175,85,.03),0 0 0 90px rgba(216,175,85,.025)}.login-form{padding:48px;display:flex;flex-direction:column;justify-content:center}.login-form h1{margin:0 0 6px;font-size:28px}.login-kicker{color:var(--gold);font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.16em}.login-feature{display:flex;gap:12px;margin:20px 0;color:#c3cfdd}.login-feature b{color:var(--gold)}.footer-note{color:#6f8196;font-size:11px;margin-top:28px}.chart-placeholder{height:210px;display:flex;align-items:flex-end;gap:9px;padding-top:24px}.chart-placeholder span{flex:1;background:linear-gradient(180deg,#5e9bf7,#264d80);border-radius:5px 5px 2px 2px;min-height:12px;opacity:.85}.checkbox-row{display:flex;align-items:center;gap:9px}.checkbox-row input{width:auto}.code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;color:#c9ddfa;background:#07111f;border:1px solid var(--line);padding:2px 5px;border-radius:5px}
@media(max-width:1180px){.grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}.page-split{grid-template-columns:1fr}}
@media(max-width:900px){.sidebar{transform:translateX(-100%);transition:.2s}.sidebar.open{transform:translateX(0)}.main{margin-left:0}.mobile-menu{display:block}.content{padding:20px}.topbar{padding:0 20px}.grid-3{grid-template-columns:1fr}.login-shell{grid-template-columns:1fr}.login-visual{display:none}}
@media(max-width:640px){.grid-4,.grid-2,.form-grid{grid-template-columns:1fr}.form-group.full{grid-column:1}.content{padding:15px}.topbar{height:70px}.topbar p{display:none}.top-actions .btn span.hide-mobile{display:none}.card-head{align-items:flex-start;flex-direction:column}.actions{justify-content:flex-start}.login-form{padding:30px}.toolbar{align-items:stretch}.toolbar .search,.toolbar .search input,.toolbar .btn{width:100%}}

/* Navy Resource Library admin v1.3 */
.resource-admin-alert{display:flex;align-items:flex-start;gap:18px;padding:15px 17px;margin-bottom:18px;border:1px solid rgba(232,164,86,.36);border-left:4px solid var(--orange);background:rgba(232,164,86,.08);border-radius:10px;color:#d7e1ed}.resource-admin-alert strong{min-width:210px;color:#ffd6a4}.resource-admin-alert span{color:#aebfd1;font-size:12px;line-height:1.55}.resource-stat-grid{margin-bottom:18px}.resource-toolbar .resource-filter-form{display:flex;gap:8px;min-width:min(100%,760px)}.resource-filter-form select{width:180px}.resource-admin-table{min-width:1120px}.resource-admin-table td:first-child{max-width:330px}.resource-row-actions{flex-wrap:wrap;min-width:330px}.resource-access-public{background:rgba(88,201,141,.12);color:#7ee0aa}.resource-access-cac_required{background:rgba(76,141,246,.13);color:#8bb8ff}.resource-access-request_required{background:rgba(232,164,86,.12);color:#efb971}.resource-access-restricted{background:rgba(239,116,116,.12);color:#ff9f9f}.resource-access-historical_reference{background:rgba(175,132,214,.12);color:#d7aff3}.resource-verify-verified_official,.resource-verify-official_portal{background:rgba(76,141,246,.13);color:#8bb8ff}.resource-verify-historical{background:rgba(175,132,214,.12);color:#d7aff3}.resource-verify-restricted{background:rgba(239,116,116,.12);color:#ff9f9f}.resource-source-status{max-width:420px;margin-top:5px;white-space:normal}.resource-modal-panel{width:min(940px,100%)}.btn:disabled{opacity:.45;cursor:not-allowed}.form-control[type=file]{padding:7px}
@media(max-width:900px){.resource-admin-alert{display:block}.resource-admin-alert strong{display:block;margin-bottom:6px}.resource-toolbar .resource-filter-form{width:100%;flex-wrap:wrap}.resource-filter-form .search{width:100%}.resource-filter-form select{flex:1;min-width:150px}}

/* Complete Navy rating resource administration — v1.4.0 */
.all-rates-admin-banner{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 24px;margin:16px 0;background:linear-gradient(135deg,#f7fbff,#eef5fb);border-left:4px solid #1967a8}.all-rates-admin-banner h2{margin:4px 0 6px;color:#0b3159;font-size:20px}.all-rates-admin-banner p{max-width:850px;margin:0;color:#63758a;font-size:12px;line-height:1.55}.all-rates-admin-banner .actions{flex-wrap:wrap;justify-content:flex-end}.all-rates-admin-banner form{margin:0}
@media(max-width:900px){.all-rates-admin-banner{align-items:flex-start;flex-direction:column}.all-rates-admin-banner .actions{justify-content:flex-start}}

/* Publication Vault v1.5 */
.publication-sync-card{overflow:hidden}.publication-sync-body{padding:24px}.publication-sync-progress{display:flex;align-items:center;gap:14px}.publication-sync-progress-bar{height:16px;flex:1;border-radius:999px;background:#e6ebf2;overflow:hidden}.publication-sync-progress-bar span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#1e4d87,#4e7fb9);transition:width .35s ease}.publication-sync-progress>strong{min-width:52px;text-align:right;font-size:20px;color:#1e3659}.publication-sync-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-top:22px}.publication-sync-metrics div{padding:17px;border:1px solid #dde5ef;border-radius:12px;background:#f9fbfd}.publication-sync-metrics strong{display:block;font-size:24px;color:#173459}.publication-sync-metrics span{display:block;margin-top:3px;color:#6d7a8d;font-size:12px}.publication-sync-note{margin-top:20px;padding:15px 17px;border-radius:11px;background:#edf4fc;color:#284c76}.publication-sync-note p{margin:5px 0 0;font-size:13px}.badge-warning{background:#fff0d3;color:#7e5800}@media(max-width:900px){.publication-sync-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.publication-sync-body{padding:16px}.publication-sync-metrics{grid-template-columns:1fr}}

/* Library Study Content v1.6 */
.study-admin-layout{display:grid;grid-template-columns:minmax(280px,.42fr) minmax(430px,.78fr);gap:16px}.study-admin-set-list{display:flex;flex-direction:column;padding:8px}.study-admin-set-list>a{display:grid;grid-template-columns:37px minmax(0,1fr);gap:10px;align-items:center;padding:11px;border-radius:9px;color:#4f6072}.study-admin-set-list>a:hover,.study-admin-set-list>a.active{background:#eaf2fb;color:#174f85}.study-admin-set-list>a>span{display:grid;place-items:center;width:35px;height:35px;border-radius:9px;background:#fff;border:1px solid #dbe4ed;font-weight:900}.study-admin-set-list strong,.study-admin-set-list small{display:block}.study-admin-set-list strong{font-size:11px}.study-admin-set-list small{margin-top:3px;font-size:8px;color:#7b8999}.study-admin-form .card-body{padding:18px}.study-admin-content-grid{display:grid;grid-template-columns:minmax(360px,.55fr) minmax(450px,.85fr);gap:16px;margin-top:16px}.study-item-list{display:flex;flex-direction:column;padding:8px}.study-item-list article{display:grid;grid-template-columns:30px minmax(0,1fr) auto;gap:10px;padding:11px;border-bottom:1px solid #e7ebf0}.study-item-list article>span{display:grid;place-items:center;width:28px;height:28px;border-radius:8px;background:#eaf2fb;color:#1e609d;font-size:9px;font-weight:900}.study-item-list strong{display:block;font-size:10px}.study-item-list p{margin:4px 0;color:#69798b;font-size:9px}.study-item-list small{font-size:8px;color:#8793a1}@media(max-width:1000px){.study-admin-layout,.study-admin-content-grid{grid-template-columns:1fr}}

/* Production operations, moderation, support, and responsive utilities */
.full{grid-column:1/-1}.eyebrow{display:block;margin-bottom:5px;color:var(--gold);font-size:10px;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:20px}.card-foot{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:16px 20px;border-top:1px solid var(--line)}.settings-check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:20px}.checkbox-row{display:flex;align-items:flex-start;gap:9px;padding:10px 11px;border:1px solid var(--line);border-radius:9px;background:#0c1828}.checkbox-row input{flex:0 0 auto;margin-top:3px}.admin-thread{display:flex;flex-direction:column;gap:12px}.admin-message{padding:14px;border:1px solid var(--line);border-radius:11px;background:#0c1828}.admin-message.is-internal{border-color:rgba(232,164,86,.45);background:rgba(232,164,86,.07)}.admin-message-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.admin-message p{margin:0;white-space:pre-wrap}.moderation-review-form{display:grid;grid-template-columns:minmax(170px,.35fr) minmax(0,1fr) auto;gap:10px;align-items:end}.api-token-reveal{padding:14px;border:1px solid rgba(88,201,141,.4);border-radius:11px;background:rgba(88,201,141,.08);overflow-wrap:anywhere}.api-token-reveal code{display:block;margin-top:8px;padding:10px;border-radius:8px;background:#07111f;color:#caffdf}.skip-link{position:fixed;left:12px;top:12px;z-index:1000;transform:translateY(-150%);padding:10px 14px;border-radius:8px;background:#fff;color:#07111f;font-weight:800}.skip-link:focus{transform:translateY(0)}:focus-visible{outline:3px solid #8ab7ff;outline-offset:3px}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
@media(max-width:760px){.settings-check-grid{grid-template-columns:1fr}.moderation-review-form{grid-template-columns:1fr}.hide-mobile{display:none!important}.page-head{flex-direction:column}.card-foot{align-items:stretch;flex-direction:column}.card-foot .btn{width:100%}}
