:root{color:#26312a;font-synthesis:none;--ink:#26312a;--muted:#747a73;--soft:#969c94;--line:#303b321f;--paper:#fffdf8;--paper-strong:#fff;--forest:#314638;--forest-soft:#e3e9df;--sage:#809376;--danger:#a84c3c;--shadow:0 18px 55px #373c3114;background:#f1efe8;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{background:#f1efe8}body{background:radial-gradient(circle at 85% -10%,#b7c5a638,#0000 30rem),#f1efe8;min-width:320px;min-height:100svh;margin:0}button,input,textarea,select{font:inherit;min-width:0}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{cursor:pointer}.shell{min-height:100svh}.sidebar{z-index:20;border-right:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#f6f4eddb;flex-direction:column;width:15.5rem;padding:1.3rem 1rem;display:flex;position:fixed;inset:0 auto 0 0}.brand{align-items:center;gap:.75rem;padding:.45rem .65rem 1.4rem;display:flex}.brand-mark{background:var(--forest);color:#fff;border-radius:.75rem;place-items:center;width:2.25rem;height:2.25rem;font:600 1.05rem/1 Georgia,serif;display:grid}.brand strong{font:600 1rem/1.1 Georgia,serif;display:block}.brand span span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin-top:.18rem;font-size:.68rem;display:block}.nav-list{gap:.25rem;display:grid}.nav-link{color:#667068;border-radius:.8rem;align-items:center;gap:.8rem;padding:.75rem .8rem;font-size:.9rem;font-weight:560;display:flex}.nav-link:hover,.nav-link.active{color:var(--forest);background:#dee5d9d9}.nav-icon{place-items:center;width:1.1rem;height:1.1rem;font-size:.85rem;display:grid}.sidebar-foot{margin-top:auto;padding:.8rem}.logout{color:var(--muted);font-size:.78rem}.app-main{min-height:100svh;margin-left:15.5rem;padding:2.2rem clamp(1.25rem,4vw,4rem) 4rem}.page-wrap{width:min(100%,76rem);margin:0 auto}.page-head{justify-content:space-between;align-items:flex-end;gap:1rem;margin-bottom:1.75rem;display:flex}.eyebrow{color:var(--sage);letter-spacing:.12em;text-transform:uppercase;margin:0 0 .45rem;font-size:.72rem;font-weight:750}.page-title{letter-spacing:-.035em;margin:0;font:500 clamp(2.1rem,5vw,3.6rem)/1 Georgia,Times New Roman,serif}.page-subtitle{max-width:42rem;color:var(--muted);margin:.7rem 0 0;line-height:1.55}.card{border:1px solid var(--line);box-shadow:var(--shadow);background:#fffdf8e6;border-radius:1.25rem}.card-pad{padding:1.25rem}.button{background:var(--forest);color:#fff;border:0;border-radius:.8rem;justify-content:center;align-items:center;gap:.45rem;min-height:2.75rem;padding:.72rem 1rem;font-weight:650;display:inline-flex}.button:hover{background:#223529}.button.secondary{border:1px solid var(--line);background:var(--paper);color:var(--ink)}.button.ghost{color:var(--muted);background:0 0}.button.danger{color:var(--danger);background:#f8e9e5}.button.small{min-height:2.2rem;padding:.5rem .75rem;font-size:.82rem}.field{gap:.4rem;display:grid}.field label,.field-label{color:#59625b;font-size:.78rem;font-weight:700}.input,.select,.textarea{width:100%;color:var(--ink);background:#ffffffdb;border:1px solid #d5d8d1;border-radius:.8rem}.input,.select{height:2.75rem;padding:0 .85rem}.textarea{resize:vertical;min-height:10rem;padding:.9rem;line-height:1.55}.input:focus,.select:focus,.textarea:focus{border-color:var(--sage);outline:3px solid #8093762e}.muted{color:var(--muted)}.empty{text-align:center;color:var(--muted);padding:2.5rem 1.25rem}.pill{color:#5e695f;background:#ecefe9;border-radius:999px;align-items:center;gap:.35rem;padding:.3rem .55rem;font-size:.7rem;font-weight:700;display:inline-flex}.mobile-nav{display:none}@media (width<=780px){.sidebar{display:none}.app-main{margin-left:0;padding:1.35rem 1rem 6.5rem}.page-head{flex-direction:column;align-items:flex-start}.mobile-nav{z-index:30;padding:.5rem max(.5rem, env(safe-area-inset-right)) calc(.5rem + env(safe-area-inset-bottom)) max(.5rem, env(safe-area-inset-left));border-top:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#f9f7f0f0;grid-template-columns:repeat(5,1fr);display:grid;position:fixed;inset:auto 0 0}.mobile-nav .nav-link{flex-direction:column;gap:.2rem;padding:.45rem .2rem;font-size:.64rem}}@media (prefers-reduced-motion:no-preference){.card,.button,.nav-link{transition:all .16s}}
