@font-face{font-family:Outlaw;src:url('/assets/outlaw-slab.woff')}*{box-sizing:border-box}body{margin:0;background:#100f0e;color:#eae1d5;font:15px/1.6 system-ui,sans-serif}button,input,textarea,select{font:inherit}a{color:#e7af78}button,.button{cursor:pointer;background:#df9d60;color:#17110d;border:1px solid #df9d60;border-radius:9px;padding:12px 20px;font-weight:750;text-decoration:none;display:inline-block}button:disabled{opacity:.5;cursor:wait}button.secondary{background:transparent;color:#dcc9b5;border-color:#4c3a2b}header{border-bottom:1px solid #473324;padding:20px max(20px,calc((100vw - 1120px)/2));display:flex;align-items:center;justify-content:space-between;gap:16px}.brand{font-family:Outlaw,Georgia,serif;color:#e7af78;text-decoration:none;letter-spacing:2px;font-size:20px}.shell{max-width:1120px;margin:auto;padding:28px 22px 100px}.eyebrow{font-size:11px;letter-spacing:3px;text-transform:uppercase;color:#cf9b70;margin:0 0 12px}h1,h2,h3{line-height:1.15}h1{font:clamp(32px,5vw,56px)/1.1 Outlaw,Georgia,serif;margin:10px 0 18px}h2{font:27px Outlaw,Georgia,serif}h3{font-size:18px;margin:8px 0}.muted{color:#b9aa9a}.hero{padding:30px 0 20px;display:flex;justify-content:space-between;gap:24px}.quote{font:italic 19px Georgia,serif;color:#d6bb9c}.score{border:1px solid #a97549;border-radius:50%;width:104px;height:104px;display:grid;place-content:center;text-align:center;flex-shrink:0;background:radial-gradient(circle,#3b281a,#17130f)}.score strong{font-size:34px;line-height:1}.score small{font-size:10px;text-transform:uppercase;letter-spacing:1px}.tabs{display:flex;gap:9px;margin:8px 0 24px}.tabs button{flex:1}.tabs button[aria-selected=true]{background:#df9d60;color:#17110d}.layout{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:24px}.card{border:1px solid #49382a;border-radius:14px;padding:24px;margin-bottom:18px;background:linear-gradient(130deg,#211c17,#181613)}.card .number{color:#d69b65;font-size:12px;letter-spacing:2px}.meal-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.macro{display:flex;flex-wrap:wrap;gap:10px;margin:15px 0;color:#e6b281}.macro span{background:#30261e;border-radius:5px;padding:5px 9px;font-size:12px}label{display:block;margin:12px 0}input:not([type=checkbox]):not([type=file]),textarea,select{width:100%;padding:11px;border:1px solid #5b4937;border-radius:7px;background:#121110;color:#eee0d0}input[type=checkbox]{accent-color:#df9d60;width:21px;height:21px;vertical-align:middle;margin-right:8px}.check{border-top:1px solid #443325;margin-top:20px;padding-top:15px;font-weight:650}.set{display:grid;grid-template-columns:32px 1fr 1fr 35px;align-items:center;gap:8px;margin:8px 0}.set input{min-width:0}.row{display:flex;gap:12px;align-items:center}.row>*{flex:1}.days{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.days button{padding:8px 2px;background:#1a1713;color:#e6c4a1;border-color:#59412b;font-size:12px}.days button[aria-current=true]{outline:2px solid #df9d60}.days b{display:block}.week{margin:20px 0}.week h3{font-size:14px;display:flex;justify-content:space-between}.avatar{width:76px;height:76px;object-fit:cover;border-radius:50%;background:#38291d}.identity{display:flex;gap:16px;align-items:center}.identity strong{font-size:23px}.profile-score{color:#dca16b}.empty{text-align:center;padding:60px 20px}.status{min-height:24px;color:#e7b381}dialog{background:#1b1712;color:#efdfcc;border:1px solid #b17d4d;border-radius:18px;padding:36px;text-align:center;max-width:90vw}dialog::backdrop{background:#000b;backdrop-filter:blur(6px)}.spinner{width:75px;height:75px;border:3px solid #443020;border-top-color:#e2a167;border-radius:50%;animation:spin 1s linear infinite;margin:20px auto}.reveal{font-size:90px;color:#e6ae75;line-height:1.3}@keyframes spin{to{transform:rotate(360deg)}}details{margin:12px 0}summary{cursor:pointer;color:#dca16b}pre{white-space:pre-wrap}.banner{background:#3a2a17;padding:12px 20px;border-bottom:1px solid #906942}footer{color:#a59483;font-size:12px;margin-top:30px}#admin-json{min-height:420px;font:13px monospace}@media(max-width:760px){header{padding:16px}.layout{display:block}.shell{padding:18px 16px 80px}.card{padding:19px}.hero{padding:18px 0}.score{width:88px;height:88px}.row{flex-wrap:wrap}.row>*{flex-basis:100px}.brand{font-size:15px}.tabs button{padding:10px}aside{margin-top:28px}}@media(prefers-reduced-motion:reduce){.spinner{animation:none}}
