:root{color-scheme:dark;--bg:#040914;--panel:rgba(8,17,31,.88);--panel-soft:rgba(255,255,255,.055);--text:#f7f9fc;--muted:#b9c4d2;--line:rgba(255,255,255,.15);--line-strong:rgba(255,255,255,.29);--accent:#dcecff;--button:#0b1727;--danger:#ffb8b8;--focus:#f8c878;--radius:1.25rem;--shadow:0 1.5rem 5rem rgba(0,0,0,.38)}*{box-sizing:border-box}html{min-height:100%;background:var(--bg)}body{min-height:100vh;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--text);background:radial-gradient(circle at 50% -10%,rgba(110,149,201,.25),transparent 36rem),linear-gradient(150deg,#02050b,#07111f 60%,#030812);-webkit-font-smoothing:antialiased}body:before{content:"";position:fixed;inset:0;pointer-events:none;background:linear-gradient(rgba(255,255,255,.025),transparent 22rem)}main{position:relative;width:min(100% - 2rem,76rem);margin:0 auto;padding:clamp(1.25rem,4vw,3.5rem) 0 5rem}a{color:inherit;text-underline-offset:.2em}:where(a,button,input,textarea):focus-visible{outline:3px solid var(--focus);outline-offset:3px}.topbar,.section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;flex-wrap:wrap}.topbar{margin-bottom:1.4rem}.eyebrow{margin:0 0 .45rem;color:#a9c9ef;font-size:.78rem;font-weight:800;letter-spacing:.17em;text-transform:uppercase}h1{margin:0;font-size:clamp(2.1rem,6vw,4.7rem);line-height:1;letter-spacing:-.045em}h2{margin:0;font-size:clamp(1.25rem,3vw,1.7rem)}h3{margin:0;font-size:1.04rem;overflow-wrap:anywhere}p{color:var(--muted);line-height:1.5}.identity{display:flex;max-width:100%;flex-direction:column;align-items:flex-end;padding:.65rem .85rem;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.055);font-size:.82rem}.identity span{max-width:19rem;overflow:hidden;color:var(--muted);text-overflow:ellipsis}.test-banner,.notice{display:flex;align-items:center;gap:.6rem 1rem;flex-wrap:wrap;margin:0 0 1rem;padding:.8rem 1rem;border-radius:.85rem}.test-banner{border:1px solid rgba(248,200,120,.42);background:rgba(95,65,17,.46);color:#ffedc8}.test-banner span{color:#e7d5ae}.test-banner a{margin-left:auto;font-weight:800}.notice{border:1px solid rgba(115,211,153,.35);background:rgba(22,92,54,.4);color:#d9ffe8}.panel{margin-bottom:1rem;padding:clamp(1rem,3vw,1.6rem);border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(145deg,rgba(255,255,255,.025),transparent),var(--panel);box-shadow:var(--shadow);backdrop-filter:blur(12px)}.panel.compact{padding:1.2rem}.section-head{align-items:center;margin-bottom:1rem}.section-head p{margin:.25rem 0 0}.year-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:.8rem}.year-card{display:flex;min-height:9rem;flex-direction:column;justify-content:flex-end;padding:1rem;border:1px solid var(--line);border-radius:1rem;background:var(--panel-soft);text-decoration:none;transition:transform .15s,border-color .15s,background .15s}.year-card:hover{transform:translateY(-2px);border-color:var(--line-strong);background:rgba(255,255,255,.085)}.year-card span:not(.year-number){color:var(--muted);font-size:.87rem}.year-number{margin-bottom:auto;font-size:2rem;font-weight:850;letter-spacing:-.04em}.empty{width:100%;padding:1.2rem;border:1px dashed var(--line);border-radius:.9rem;text-align:center}.file-list{display:grid;gap:.8rem}.file-card{display:grid;grid-template-columns:auto minmax(0,1fr);gap:1rem;padding:1rem;border:1px solid var(--line);border-radius:1rem;background:var(--panel-soft)}.pdf-icon{display:grid;width:3.25rem;height:3.75rem;place-items:center;border-radius:.5rem;background:linear-gradient(145deg,#f5f8fc,#c9d4e4);color:#9a1f2a;font-size:.72rem;font-weight:950;box-shadow:0 .5rem 1.6rem rgba(0,0,0,.2)}.description{margin:.35rem 0}.metadata{display:flex;gap:.45rem 1.3rem;flex-wrap:wrap;margin:.75rem 0}.metadata div{display:grid;grid-template-columns:auto auto;gap:.35rem}.metadata dt{color:#8291a5;font-size:.78rem}.metadata dd{margin:0;color:var(--muted);font-size:.78rem}.metadata .hash{min-width:0;grid-template-columns:auto minmax(0,1fr);flex:1 1 18rem}.metadata .hash dd{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.actions{display:flex;gap:.55rem;flex-wrap:wrap}.button,button{display:inline-flex;min-height:2.65rem;align-items:center;justify-content:center;padding:.65rem 1rem;border:0;border-radius:999px;background:linear-gradient(135deg,#f7fbff,#d5e8ff);color:var(--button);font:inherit;font-weight:800;text-decoration:none;cursor:pointer}.button.secondary,button.secondary{border:1px solid var(--line);background:rgba(255,255,255,.075);color:var(--text)}button.danger{border:1px solid rgba(255,120,120,.35);background:#4b1118;color:var(--danger)}.inline-form,.stack-form,.edit-box form{display:grid;gap:.8rem}.inline-form{grid-template-columns:minmax(8rem,1fr) auto;align-items:end}.stack-form{max-width:42rem}label{display:grid;gap:.35rem;color:var(--muted);font-size:.84rem;font-weight:700}input,textarea{width:100%;border:1px solid var(--line);border-radius:.7rem;padding:.75rem;background:rgba(255,255,255,.07);color:var(--text);font:inherit}textarea{min-height:5.5rem;resize:vertical}input[type=file]{padding:.65rem}.edit-box{margin-top:.85rem;border-top:1px solid var(--line);padding-top:.75rem}.edit-box summary{width:max-content;color:var(--muted);cursor:pointer;font-weight:750}.edit-box form{margin-top:.8rem}.delete-form{padding-top:.15rem}.back{display:inline-block;margin-bottom:.65rem;color:var(--muted);font-weight:750;text-decoration:none}.error-panel{max-width:42rem;margin:10vh auto}.error-panel h1{font-size:clamp(2.4rem,7vw,4.5rem)}footer{position:relative;padding:0 1rem 1.5rem;color:#718197;text-align:center;font-size:.78rem}@media(max-width:640px){main{width:min(100% - 1rem,76rem);padding-top:.75rem}.topbar{display:grid}.identity{align-items:flex-start;border-radius:.8rem}.test-banner{align-items:flex-start;flex-direction:column}.test-banner a{margin-left:0}.panel{border-radius:1rem}.section-head{align-items:stretch;flex-direction:column}.section-head .button{width:100%}.file-card{grid-template-columns:1fr}.pdf-icon{width:2.75rem;height:3.15rem}.actions .button{flex:1}.inline-form{grid-template-columns:1fr}.inline-form button{width:100%}.metadata{display:grid}.metadata .hash{min-width:0}.edit-box button{width:100%}}
