:root{--navy:#092a43;--blue:#126a9d;--sky:#e8f4fa;--ink:#132330;--muted:#5d6b75;--line:#cfdae0;--paper:#fff;--danger:#a21b27}*{box-sizing:border-box}body{margin:0;background:#f4f7f8;color:var(--ink);font:16px/1.5 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.site-header{display:flex;justify-content:space-between;align-items:center;gap:2rem;padding:2.75rem max(1.25rem,calc((100% - 1200px)/2));background:linear-gradient(120deg,var(--navy),#104d70);color:white}.site-header h1,.auth-card h1{margin:0;font-size:clamp(1.8rem,4vw,2.8rem);line-height:1.1}.site-header nav{display:flex;gap:1rem}.site-header a{color:white}.admin-link,.button{display:inline-block;border:1px solid currentColor;border-radius:.35rem;padding:.65rem 1rem;text-decoration:none;font-weight:700}.eyebrow{margin:0 0 .4rem;text-transform:uppercase;font-size:.75rem;font-weight:800;letter-spacing:.1em;opacity:.78}main{width:min(1200px,calc(100% - 2.5rem));margin:2rem auto}.controls{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:1rem;align-items:end;background:var(--paper);padding:1.25rem;border:1px solid var(--line);border-radius:.5rem}.controls p{margin:0;color:var(--muted)}label{display:block;font-weight:700;color:var(--ink)}input,textarea,select{display:block;width:100%;margin-top:.38rem;padding:.7rem .75rem;border:1px solid #9aabb6;border-radius:.3rem;font:inherit;background:#fff;color:var(--ink)}textarea{min-height:4.5rem;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.88rem}.rows{min-height:14rem}button{margin-top:1.1rem;padding:.7rem 1rem;border:0;border-radius:.3rem;background:var(--blue);color:#fff;font:700 1rem inherit;cursor:pointer}.dataset{margin:2rem 0;background:var(--paper);border:1px solid var(--line);border-radius:.5rem;overflow:hidden}.dataset-heading{padding:1.2rem 1.25rem;border-left:5px solid var(--blue)}.dataset-heading p{margin:0;color:var(--blue);font-size:.82rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.dataset-heading h2{margin:.25rem 0 0;font-size:1.35rem}.dataset-heading h3{margin:.25rem 0 0;color:var(--muted);font-size:1rem;font-weight:600}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:570px}th,td{padding:.7rem .85rem;text-align:left;border-bottom:1px solid var(--line);white-space:nowrap}th{background:var(--sky);font-size:.83rem;color:#254355}tbody tr:last-child td{border:0}tbody tr:hover{background:#f7fbfd}footer{text-align:center;padding:2rem;color:var(--muted);font-size:.9rem}.auth{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,#e3f3f9,#f6f8f9)}.auth-card{width:min(440px,calc(100% - 2.5rem));padding:2rem;background:white;border-top:5px solid var(--blue);box-shadow:0 12px 35px #13344b22}.auth-card>p{color:var(--muted)}.auth-card form,.editor form{display:grid;gap:1rem}.auth-card button{width:100%}.alert{padding:.75rem 1rem;border-radius:.3rem}.success{background:#e5f6ed;color:#16643d}.error{background:#fff0f1;color:var(--danger)}.admin-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:2rem}.admin-grid>.alert{grid-column:1/-1;margin:0}.editor,.record-list{background:var(--paper);padding:1.5rem;border:1px solid var(--line);border-radius:.5rem}.editor h2,.record-list h2{margin-top:0}.help{color:var(--muted)}.secondary{margin-top:1.1rem;color:var(--blue);border-color:var(--blue);background:#fff}.record-list article{padding:1rem 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr auto;gap:.25rem 1rem;align-items:center}.record-list article span{color:var(--muted);font-size:.9rem}.record-list article small{color:var(--blue);font-weight:700}.record-list article a{grid-column:2;grid-row:1;color:var(--blue);font-weight:700}.record-list article form{grid-column:2;grid-row:2}.text-button{margin:0;padding:0;background:none;color:var(--danger);font-size:.85rem}@media(max-width:720px){.site-header{padding:1.5rem 1.25rem;align-items:flex-start;flex-direction:column;gap:1rem}.controls,.admin-grid{grid-template-columns:1fr}.admin-grid{gap:1rem}main{width:min(100% - 1.5rem,1200px);margin:1rem auto}.record-list article{grid-template-columns:1fr auto}.site-header nav{flex-wrap:wrap}}
