:root{--navy:#11283e;--navy2:#244863;--gold:#e5bd7a;--ink:#183047;--soft:#edf2f6;--line:#d9e3ea;--muted:#60778b}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:#f7f9fb;font:16px/1.65 system-ui,-apple-system,'Segoe UI',Arial,sans-serif}a{color:#185b8a}button,input,textarea,select{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #e7b65a;outline-offset:3px}.shell{width:min(1160px,calc(100% - 40px));margin:auto}.skip{position:absolute;left:12px;top:-80px;background:white;padding:8px;z-index:100}.skip:focus{top:12px}.top{background:#0b2034;color:#cad8e4}.topline{display:flex;justify-content:space-between;gap:20px;padding:10px 0;font-size:11px;letter-spacing:.11em}.nav{background:#fff;position:sticky;top:0;z-index:10;box-shadow:0 3px 20px #15324714}.navrow{display:flex;align-items:center;justify-content:space-between;gap:15px;min-height:76px}.brand{text-decoration:none;color:var(--navy);display:flex;align-items:center;gap:12px;font-weight:800;line-height:1.2}.brand small{display:block;font-size:12px;color:#6c7e8c;font-weight:450}.logo{display:grid;place-items:center;background:var(--navy);border-radius:12px;color:var(--gold);width:44px;height:44px;font:24px Georgia,serif}.navlinks{display:flex;align-items:center;gap:22px}.navlinks a,.navbtn{color:#244059;text-decoration:none;font-size:13px;font-weight:650}.navlinks a:hover{text-decoration:underline}.mutedlink{color:#71869a!important}.navbtn{border:none;background:none;padding:0}.inline{display:inline}.menubtn{display:none;background:white;border:1px solid var(--line);border-radius:8px;padding:7px 10px}.hero{background:radial-gradient(circle at 85% 0%,#2a5672,transparent 35%),linear-gradient(110deg,#10263b,#1c3c54);color:#fff}.herogrid{padding:85px 0 95px;display:grid;grid-template-columns:1.4fr .6fr;align-items:center;gap:45px}.eyebrow{color:var(--gold);font-size:12px;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.hero h1{font:clamp(40px,5.5vw,68px)/1.1 Georgia,serif;letter-spacing:-.03em;margin:15px 0}.hero p{font-size:17px;color:#dbe7ef;max-width:670px}.hero-sub{opacity:.9}.heroart{margin:auto;display:flex;flex-direction:column;align-items:center;justify-content:center;width:min(300px,100%);aspect-ratio:1;border:1px solid #ffffff50;border-radius:50%;box-shadow:inset 0 0 0 23px #ffffff08,inset 0 0 0 48px #ffffff08}.heroart span{font-size:65px;color:var(--gold);font-weight:600}.heroart small{letter-spacing:.1em;font-size:9px;color:#fff}.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}.btn{display:inline-block;border:1px solid transparent;border-radius:10px;padding:11px 19px;text-decoration:none;font-size:14px;font-weight:750}.gold{background:var(--gold);color:#1c2b38}.ghost{background:transparent;color:white;border-color:#829bae}.primary{background:var(--navy);color:white}.light{border-color:#c5d3df;background:white;color:#234660}.strip{background:#fff;border-bottom:1px solid var(--line)}.stripes{display:flex;gap:10px;flex-wrap:wrap;padding:17px 0}.stripes span{display:inline-block;border:1px solid #d8e2ea;border-radius:100px;padding:5px 14px;font-size:13px;color:#486378}.section{padding:73px 0;scroll-margin-top:74px}.sectionhead{margin-bottom:25px}.sectionhead h2{font:clamp(30px,4vw,40px)/1.2 Georgia,serif;margin:6px 0}.sectionhead p{margin:0;color:var(--muted)}.dark{color:#a17135}.grid{display:grid;gap:18px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.card,.panel{background:white;border:1px solid var(--line);border-radius:17px;padding:26px;box-shadow:0 4px 20px #0f2b4307}.card h3{margin:3px 0 12px;font-size:19px}.card p{color:#50677b;margin:0 0 12px}.cardmeta{color:#986b2f;font-size:12px;letter-spacing:.08em;text-transform:uppercase;font-weight:800}.facts{display:grid;grid-template-columns:40% 60%;margin:0}.facts dt,.facts dd{padding:10px 0;margin:0;border-bottom:1px solid var(--line)}.facts dt{color:#6b7b8d}.preserve{white-space:pre-wrap;overflow-wrap:anywhere}.mutedbg{background:#edf3f7}.number{font:34px Georgia,serif;color:#a7bbca}.fine{font-size:13px;color:#637c90}.filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}.chip{background:white;border:1px solid #becfdb;border-radius:100px;padding:8px 15px;color:#244059}.chip.active{color:white;background:var(--navy)}.material{min-height:190px;display:flex;flex-direction:column}.material .filelink{margin-top:auto;font-weight:700}.material[hidden]{display:none}.notice{border-radius:10px;padding:15px 18px;margin:22px 0}.notice.subtle{background:#e5eef5;border-left:4px solid #527d9b}.notice.success{background:#edf7ef;color:#245a32;border:1px solid #a7c9af}.notice.error{background:#fff0f0;color:#872b2b;border:1px solid #e3b0b0}.printtools{display:flex;gap:10px;margin-top:26px}.footer{background:#0b2034;color:#dde9f1;padding:38px 0}.footer p{font-size:12px;color:#a8bbca}.footrow{display:flex;justify-content:space-between;gap:35px}.adminhead{background:linear-gradient(120deg,#122940,#27516c);color:white;padding:47px 0}.adminhead h1{margin:10px 0 8px;font:clamp(30px,4vw,45px) Georgia,serif}.adminhead p{color:#d1e1eb;margin:0}.stat{background:white;border:1px solid var(--line);border-radius:15px;padding:25px}.stat strong{display:block;font-size:40px;color:var(--navy)}.stat span{font-size:14px;color:#718396}.adminlinks{margin-top:20px}.linkcard{text-decoration:none}.linkcard span{font-weight:800}.narrow{max-width:940px}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:18px;color:#29435a;font-weight:700;font-size:14px}.field.full{grid-column:1/-1}.field input,.field textarea,.field select{width:100%;background:#fff;border:1px solid #b8c8d5;border-radius:9px;padding:11px 12px;color:#1f344a;font-size:15px;font-weight:400}.field textarea{min-height:90px}.field small{font-size:12px;color:#74889a;font-weight:400}.check{display:flex;align-items:center;gap:8px;font-size:14px}.check input{width:18px;height:18px}.publish{background:#f0f5f9;padding:14px;border-radius:10px;margin:12px 0 20px}.formactions{display:flex;gap:10px;flex-wrap:wrap}.tablewrap{overflow:auto}table{border-collapse:collapse;width:100%;min-width:670px}th,td{padding:13px 10px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}th{font-size:12px;text-transform:uppercase;color:#718296}td{font-size:14px}td small{display:block;color:#7f8e9b;max-width:310px}.state{border-radius:100px;padding:4px 9px;white-space:nowrap;font-size:12px}.state.on{background:#e4f4e8;color:#235333}.state.off{background:#f0f1f2;color:#556676}.attachment{padding:12px 15px;background:#edf3f9;border-radius:9px;margin:10px 0}.deleteform{margin:30px 0}.danger{background:#fff1f1;border:1px solid #cd9292;color:#a13434;border-radius:8px;padding:10px 16px}.signin{max-width:510px}.highcontrast{--navy:#000;--ink:#000;--muted:#111;--line:#555}.highcontrast .hero,.highcontrast .adminhead{background:#000}.highcontrast .mutedbg{background:white}@media(max-width:920px){.navlinks{display:none;position:absolute;top:76px;left:0;right:0;background:white;padding:20px;flex-direction:column;align-items:start;box-shadow:0 8px 20px #0b213320}.navlinks.open{display:flex}.menubtn{display:block}.herogrid{grid-template-columns:1fr}.heroart{display:none}.grid.three{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.shell{width:calc(100% - 26px)}.topline span:last-child{display:none}.grid.two,.grid.three,.formgrid{grid-template-columns:1fr}.field.full{grid-column:auto}.herogrid{padding:60px 0}.section{padding:48px 0}.footrow{display:block}.card,.panel{padding:19px}.actions{flex-direction:column}.facts{grid-template-columns:1fr}.facts dt{border:0;padding-bottom:0}.facts dd{padding-top:0}.stripes span{font-size:11px}}@media print{body{background:white;color:#000}.nav,.top,.footer,.actions,.filters,.printtools,.adminhead{display:none!important}.hero{background:white;color:#000}.hero p{color:#000}.herogrid{padding:20px 0}.hero h1{font-size:32pt}.heroart{display:none}.section{padding:14px 0;break-inside:avoid}.mutedbg{background:white}.grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.card{box-shadow:none;break-inside:avoid}.material[hidden]{display:flex}}
/* 2.1: checklist controls */
.field input[type=checkbox]{width:19px;height:19px;vertical-align:middle;margin-right:9px;accent-color:#173a56}.field span:has(input[type=checkbox]){display:flex;align-items:center;line-height:1.5}.stat+.panel{margin-top:18px}

/* 2.2: archive tools */
.toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 20px}.filterform{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin-bottom:12px}.filterform .field{min-width:180px;flex:1;margin:0}.filterform .btn{white-space:nowrap}.filterform .field:first-child{flex:2;min-width:230px}.tablewrap td:last-child{white-space:nowrap}@media(max-width:600px){.filterform{display:grid}.filterform .field{min-width:0}}

/* v2.3 */
.yearfilter{display:flex;align-items:center;gap:12px;margin:-5px 0 20px;font-weight:700}.yearfilter select{padding:9px 12px;border:1px solid #becfdb;border-radius:8px;background:#fff}.file-list{display:flex;flex-direction:column;gap:7px;margin-top:auto;padding-top:13px;overflow-wrap:anywhere}.attachment ul{padding-left:22px}.attachment li{margin:10px 0}.attachment .check{display:inline-flex;margin-left:12px}.attachment .check input{width:17px;height:17px}@media print{.print-hide{display:none!important}.adminhead{display:none!important}.tablewrap{overflow:visible}.tablewrap table{min-width:0;font-size:10pt}.tablewrap td,.tablewrap th{padding:5px 6px}.panel{padding:0;border:none}}

/* v2.4 */
.readiness-list{display:grid;gap:18px;margin:20px 0}.readiness-card h2{font-size:20px;line-height:1.35}.stats-inline{display:flex;gap:16px;flex-wrap:wrap;color:#31546a;font-size:13px;background:#edf3f8;padding:12px;border-radius:10px;margin:14px 0}.readiness-card details{margin:16px 0}.readiness-card li{padding:4px 0}.criteria-choices{display:grid;gap:12px;padding:14px;background:#f1f6fa;border-radius:10px;margin:8px 0}.criteria-choices .check{align-items:flex-start}.criteria-choices input{flex-shrink:0;margin-top:4px}@media print{.readiness-card{break-inside:avoid}}

/* Release 2.5: report and analytics */
.report-section{margin-top:1.2rem;break-inside:avoid}.report-section li{margin:.4rem 0}.analytics-line{display:grid;grid-template-columns:minmax(110px,1fr) 3fr 35px;gap:1rem;align-items:center;margin:.8rem 0}.analytics-track{height:14px;background:#e7ecf3;border-radius:8px;overflow:hidden}.analytics-bar{height:100%;background:#28718a;border-radius:8px}
@media print{.print-hide,nav,header nav,footer,.navbtn{display:none!important}.report-section{break-inside:avoid}.analytics-bar{-webkit-print-color-adjust:exact;print-color-adjust:exact}body{background:#fff!important}.panel{box-shadow:none!important;border:1px solid #ddd}}

/* v2.6: pages, editorial form, photo previews and drag-and-drop */
.post-image{display:block;max-width:100%;max-height:500px;object-fit:contain;border-radius:12px;margin-bottom:24px}.readable-text{font-size:17px;max-width:760px;line-height:1.75}.readable-text p{margin:0 0 1.3em}.editor-toolbar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:8px}.editor-toolbar button{border:1px solid #b8c8d5;border-radius:7px;background:#eef4f8;padding:7px 12px}.edit-thumb{display:block;max-width:240px;max-height:170px;object-fit:contain;margin:10px 0}.dropzone{border:2px dashed #c0cfda;padding:18px;border-radius:12px}.dropzone.dragover{border-color:#21608a;background:#ebf5ff}.navlinks{gap:14px;flex-wrap:wrap}.navlinks a{font-size:12px}@media(min-width:921px){.navrow{align-items:center;gap:20px}.navlinks{justify-content:flex-end}}

/* v2.7 */
.photo-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}.photo-card{display:flex;flex-direction:column;overflow:hidden;background:#fff;border:1px solid #d7e0e7;border-radius:14px;text-decoration:none;color:#17334d}.photo-card img{display:block;width:100%;height:210px;object-fit:cover}.photo-card span{padding:1rem;font-weight:700}.trash-item{display:flex;align-items:center;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:1rem}.trash-item span{color:#536577}.trash-item button{cursor:pointer}#preview-post{margin:1rem 0;white-space:pre-wrap}
