:root{--brand:#c2410c;--brand-600:#9a330a;--brand-50:#fdf1e9;--brown:#5e3a1e;--accent:#f97316;--bg:#f6f7f9;--surface:#fff;--fg:#111827;--muted:#6b7280;--border:#e5e7eb;--danger:#dc2626;--success:#16a34a;--radius:10px;--radius-sm:7px;--shadow:0 1px 2px #1018280a, 0 1px 3px #10182814;--shadow-md:0 4px 12px #10182814;--max-width:1024px}@media (prefers-color-scheme:dark){:root{--brand:#fb923c;--brand-600:#fdba74;--brand-50:#2a160a;--brown:#c9a47e;--accent:#fb923c;--bg:#0b0f14;--surface:#131a22;--fg:#e6e9ee;--muted:#9aa4b2;--border:#243040}}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{color:var(--fg);background:var(--bg);margin:0;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:15px;line-height:1.55}main{max-width:var(--max-width);margin:0 auto;padding:2rem 1.25rem 4rem}h1{letter-spacing:-.01em;margin:0 0 .25rem;font-size:1.6rem;font-weight:700}h2{margin:0 0 .75rem;font-size:1.15rem;font-weight:650}h3{color:var(--muted);margin:1rem 0 .5rem;font-size:.95rem;font-weight:600}a{color:var(--brand);text-decoration:none}a:hover{text-decoration:underline}p{margin:.5rem 0}code{background:var(--brand-50);color:var(--brand-600);border-radius:5px;padding:.1rem .35rem;font-size:.85em}:root{--topbar-h:56px;--sidebar-w:240px}.topbar{height:var(--topbar-h);z-index:60;box-shadow:var(--shadow);background:linear-gradient(90deg,#5e3a1e 0%,#c2410c 55%,#ea580c 100%);border-bottom:1px solid #00000026;align-items:center;gap:.75rem;padding:0 1rem;display:flex;position:fixed;top:0;left:0;right:0}.menu-toggle{color:#fff;background:#ffffff1f;border:1px solid #ffffff59;padding:.35rem .55rem;font-size:1.1rem;line-height:1}.menu-toggle:hover{background:#ffffff3d}.topbar-brand{color:#fff;font-size:1rem;font-weight:700}.topbar-brand:hover{opacity:.9;text-decoration:none}.topbar-spacer{margin-left:auto}.sidebar{top:var(--topbar-h);width:var(--sidebar-w);z-index:55;background:linear-gradient(#5e3a1e 0%,#c2410c 55%,#ea580c 100%);border-right:1px solid #00000026;transition:transform .18s;position:fixed;bottom:0;left:0;overflow-y:auto;transform:translate(-100%)}.sidebar.is-open{transform:translate(0)}.sidebar-nav{flex-direction:column;gap:.1rem;padding:.75rem;display:flex}.sidebar-section{flex-direction:column;gap:.1rem;display:flex}.sidebar-section+.sidebar-section{border-top:1px solid #ffffff2e;margin-top:1rem;padding-top:.75rem}.sidebar-heading{text-transform:uppercase;letter-spacing:.05em;color:#ffffffa6;margin:0 0 .25rem;padding:0 .7rem;font-size:.7rem;font-weight:700}.sidebar-nav a{color:#ffffffeb;border-radius:var(--radius-sm);padding:.5rem .7rem;font-size:.95rem;font-weight:500;display:block}.sidebar-nav a:hover{color:#fff;background:#ffffff29;text-decoration:none}.sidebar-nav a.sidebar-sub{color:#ffffffc7;border-left:1px solid #ffffff4d;margin-left:.7rem;padding-left:.7rem;font-size:.9rem;font-weight:400}.backdrop{inset:var(--topbar-h) 0 0 0;z-index:50;background:#10182873;position:fixed}.app-content{padding-top:var(--topbar-h);transition:margin-left .18s}@media (min-width:769px){.app-content.sidebar-open{margin-left:var(--sidebar-w)}.backdrop{display:none}}main>section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);margin:1.25rem 0;padding:1.25rem}.bento{grid-template-columns:repeat(3,1fr);gap:1rem;margin:1.25rem 0;display:grid}.bento .tile{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.1rem 1.25rem}.bento .tile.span-2{grid-column:span 2}.tile.accent{background:linear-gradient(135deg, var(--brown) 0%, var(--brand) 55%, var(--accent) 100%);border-color:var(--brand);color:#fff}.tile.accent a{color:#fff}.tile-head{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.6rem;display:flex}.tile-head h2,.tile-head h3{color:inherit;margin:0;font-size:.95rem}.tile-n{font-size:2rem;font-weight:800;line-height:1.1}.tile .task{border-bottom:1px solid var(--border);align-items:center;gap:.6rem;padding:.5rem 0;display:flex}.tile .task:last-child{border-bottom:0}.pill{background:var(--brand-50);color:var(--brand-600);text-align:center;border-radius:8px;min-width:1.9rem;padding:.1rem .5rem;font-size:.85rem;font-weight:800}.pill.warn{color:var(--danger);background:#fdeaea}.feed-item{border-bottom:1px solid var(--border);gap:.7rem;padding:.55rem 0;display:flex}.feed-item:last-child{border-bottom:0}.feed-item .dot{background:var(--brand);border-radius:50%;flex:none;width:9px;height:9px;margin-top:.45rem}@media (max-width:760px){.bento{grid-template-columns:1fr}.bento .tile.span-2{grid-column:auto}}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid var(--border);vertical-align:top;padding:.6rem .75rem}th{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:.72rem;font-weight:600}tbody tr:hover{background:var(--brand-50)}input,select,textarea{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--fg);padding:.5rem .6rem;font-family:inherit;font-size:.92rem}input:focus,select:focus,textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-50);outline:none}label{color:var(--fg);font-size:.9rem}button{border-radius:var(--radius-sm);background:var(--brand);color:#fff;cursor:pointer;border:1px solid #0000;padding:.5rem .9rem;font-family:inherit;font-size:.9rem;font-weight:550;transition:background .12s,opacity .12s}button:hover{background:var(--brand-600)}button:disabled{opacity:.55;cursor:default}td button,li button,summary+form button[formnovalidate],.subtle button{color:var(--brand);border-color:var(--border);background:0 0}td button:hover,li button:hover{background:var(--brand-50)}details>summary{cursor:pointer;color:var(--brand);margin:.5rem 0;font-weight:500}ul{margin:.5rem 0;padding-left:1.1rem}.muted{color:var(--muted)}input,select,textarea{max-width:100%}@media (max-width:640px){body{font-size:16px}main{padding:1rem .9rem 3rem}h1{font-size:1.35rem}table{white-space:nowrap;-webkit-overflow-scrolling:touch;display:block;overflow-x:auto}main>section{padding:1rem}}
