:root{--color-canvas:#f4f8f9;--color-surface:#fff;--color-surface-soft:#eaf2f4;--color-ink:#24383e;--color-muted:#526a73;--color-brand:#245e6a;--color-brand-hover:#1c4c57;--color-sidebar:#1d3741;--color-on-brand:#f5f9fa;--color-sidebar-muted:#bed5dc;--color-line:#d5e2e6;--color-danger:#953b32;--color-focus:#245e6a;--font-body:Arial, Helvetica, sans-serif;--font-heading:Georgia, "Times New Roman", serif;--text-small:.8125rem;--text-body:.9375rem;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--radius-small:.375rem;--radius-panel:.75rem;--width-sidebar:15rem;--width-content:48rem}*{box-sizing:border-box}body{background:var(--color-canvas);color:var(--color-ink);font:var(--text-body)/1.65 var(--font-body);margin:0}.app-shell{background:linear-gradient(to right, var(--color-sidebar) 0 var(--width-sidebar), var(--color-canvas) var(--width-sidebar) 100%);min-height:100vh}button,input,select,textarea{font:inherit}a{color:var(--color-brand);text-underline-offset:.2em}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid var(--color-focus);outline-offset:4px}button{border:1px solid var(--color-line);border-radius:var(--radius-small);padding:var(--space-2) var(--space-4);background:var(--color-surface);color:var(--color-ink);cursor:pointer}button:hover:not(:disabled){background:var(--color-surface-soft)}button:disabled{opacity:.6;cursor:not-allowed}.primary{background:var(--color-brand);border-color:var(--color-brand);color:var(--color-on-brand)}.primary:hover:not(:disabled){background:var(--color-brand-hover)}.quiet{padding:var(--space-1) var(--space-2);background:0 0}.danger{color:var(--color-danger)}input,textarea{border:1px solid var(--color-line);border-radius:var(--radius-small);width:100%;padding:var(--space-3);color:var(--color-ink);background:var(--color-surface)}textarea{resize:vertical;min-height:8rem}label{gap:var(--space-2);font-weight:600;display:grid}form{gap:var(--space-4);display:grid}h1,h2,p{margin-top:0}h1{font:2.5rem/1.15 var(--font-heading);letter-spacing:-.06rem;margin-bottom:var(--space-3)}h2{font-size:1.1rem;font-weight:600}small,.muted{color:var(--color-muted);font-size:var(--text-small)}.eyebrow{color:var(--color-muted);letter-spacing:.14em;text-transform:uppercase;margin-bottom:var(--space-3);font-size:.7rem}.skip{top:-5rem;left:var(--space-4);background:var(--color-surface);padding:var(--space-3);z-index:10;position:fixed}.skip:focus{top:var(--space-4)}.sidebar{width:var(--width-sidebar);background:var(--color-sidebar);color:var(--color-on-brand);padding:var(--space-6) var(--space-5);gap:var(--space-6);flex-direction:column;display:flex;position:fixed;inset:0 auto 0 0}.brand{color:inherit;font:1.8rem var(--font-heading);text-decoration:none}.brand small{color:var(--color-sidebar-muted);font:.65rem var(--font-body);letter-spacing:.14em;margin-top:var(--space-2);text-transform:uppercase;display:block}.sidebar nav{gap:var(--space-2);display:grid}.sidebar nav a{color:var(--color-sidebar-muted);padding:var(--space-3);border-radius:var(--radius-small);text-decoration:none}.sidebar nav a[aria-current=page]{background:var(--color-brand);color:var(--color-on-brand)}.sidebar-footer{font-size:var(--text-small);color:var(--color-sidebar-muted);margin-top:auto}.sidebar-footer p{margin-bottom:var(--space-2)}.workspace{margin-left:var(--width-sidebar)}.topbar{background:var(--color-surface);border-bottom:1px solid var(--color-line);padding:var(--space-4) var(--space-6);justify-content:space-between;align-items:center;gap:var(--space-4);min-height:5rem;display:flex}.topbar span{color:var(--color-muted);font-size:var(--text-small)}main{max-width:var(--width-content);padding:var(--space-7) var(--space-5);margin:auto}.page-heading{margin-bottom:var(--space-6)}.panel{background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius-panel);padding:var(--space-5);margin-bottom:var(--space-5)}.panel>:last-child{margin-bottom:0}.login{max-width:30rem}.actions{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.actions small{margin-right:auto}.post-header{gap:var(--space-3);margin-bottom:var(--space-4);align-items:center;display:flex}.avatar{background:var(--color-surface-soft);color:var(--color-brand);width:2.7rem;height:2.7rem;font-family:var(--font-heading);border-radius:50%;flex-shrink:0;place-items:center;font-size:1.3rem;display:grid}.post-header a{color:var(--color-ink);font-weight:600;text-decoration:none}.post-header small{display:block}.post-body{white-space:pre-wrap;overflow-wrap:anywhere}.post-footer{align-items:center;gap:var(--space-3);border-top:1px solid var(--color-line);padding-top:var(--space-3);font-size:var(--text-small);flex-wrap:wrap;display:flex}.post-footer time{color:var(--color-muted);margin-right:auto}.error{color:var(--color-danger)}.status{padding:var(--space-3);background:var(--color-surface-soft);border-radius:var(--radius-small)}.pagination{justify-content:space-between;gap:var(--space-3);display:flex}.section-heading{margin:var(--space-6) 0 var(--space-4)}.back{margin-bottom:var(--space-5);display:inline-block}.profile-actions{align-items:center;gap:var(--space-4);margin-top:var(--space-4);flex-wrap:wrap;display:flex}.profile-actions p{margin:0}.search-input{gap:var(--space-3);display:flex}.post-actions{margin-top:var(--space-3)}.report-form{border-top:1px solid var(--color-line);padding-top:var(--space-4);margin-top:var(--space-3)}.sidebar nav{flex-wrap:wrap}select{min-width:0;max-width:100%}.search-input input{min-width:0}.search-tabs{gap:var(--space-4);margin:var(--space-5) 0 var(--space-3);display:flex}.search-tabs a{padding:var(--space-2) var(--space-3);border-radius:var(--radius-small)}.search-tabs a[aria-current=page]{background:var(--color-surface-soft);font-weight:600}@media (width<=760px){.app-shell{background:var(--color-canvas)}.sidebar{width:auto;padding:var(--space-4) var(--space-5);align-items:center;gap:var(--space-4);flex-flow:wrap;position:static}.sidebar nav{margin-left:auto;display:flex}.sidebar-footer{display:none}.brand{font-size:1.4rem}.brand small{font-size:.6rem}.workspace{margin-left:0}.topbar{padding:var(--space-3) var(--space-5)}main{padding-top:var(--space-6)}h1{font-size:2rem}.panel{padding:var(--space-4)}}
