:root{--bg:#f4f5f7;--panel:#fff;--ink:#17191c;--muted:#6f747c;--line:#e6e8eb;--fire:#f25b35;--fire2:#ff8a45;--green:#1f9d68;--amber:#c78416;--red:#d94b4b;--nav:#15171a;--shadow:0 18px 50px rgba(20,24,28,.09)}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;font-size:14px}button,input,select,textarea{font:inherit}.hidden{display:none!important}.eyebrow{margin:0 0 8px;color:var(--fire);font-size:11px;font-weight:800;letter-spacing:.15em}.brand-mark{display:grid;place-items:center;width:54px;height:54px;border-radius:16px;background:linear-gradient(145deg,var(--fire),var(--fire2));box-shadow:0 12px 30px rgba(242,91,53,.3);color:#fff;font-weight:900;letter-spacing:-.06em}.brand-mark.small{width:38px;height:38px;border-radius:11px;font-size:12px}.auth-shell{min-height:100vh;display:grid;grid-template-columns:1.1fr .9fr;background:#101215}.auth-brand{padding:9vw;display:flex;flex-direction:column;justify-content:center;background:radial-gradient(circle at 20% 15%,rgba(242,91,53,.18),transparent 30%),linear-gradient(140deg,#17191d,#0f1012);color:white}.auth-brand h1{max-width:720px;margin:28px 0 20px;font-size:clamp(38px,5vw,76px);line-height:.98;letter-spacing:-.055em}.auth-copy{max-width:620px;color:#adb1b7;font-size:18px;line-height:1.65}.auth-points{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}.auth-points span{padding:11px 14px;border:1px solid #34373d;border-radius:999px;color:#d9dadd}.auth-card{align-self:center;margin:7vw;width:min(500px,calc(100% - 40px));padding:34px;background:white;border-radius:24px;box-shadow:var(--shadow)}.tabs{display:flex;padding:4px;background:#f2f3f5;border-radius:12px;margin-bottom:26px}.tab{flex:1;padding:11px;border:0;border-radius:9px;background:transparent;color:var(--muted);font-weight:700;cursor:pointer}.tab.active{background:white;color:var(--ink);box-shadow:0 3px 10px rgba(0,0,0,.08)}.form-stack{display:grid;gap:16px}.form-stack label,.field{display:grid;gap:7px;color:#494d53;font-size:12px;font-weight:700}.form-stack input,.form-stack select,.field input,.field select,.field textarea{width:100%;border:1px solid #dfe2e6;border-radius:10px;padding:12px 13px;outline:none;background:#fff;color:var(--ink)}textarea{min-height:92px;resize:vertical}.form-stack input:focus,.form-stack select:focus,.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--fire);box-shadow:0 0 0 3px rgba(242,91,53,.1)}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.btn{border:0;border-radius:10px;padding:11px 15px;font-weight:800;cursor:pointer}.btn.primary{background:linear-gradient(135deg,var(--fire),var(--fire2));color:#fff;box-shadow:0 8px 20px rgba(242,91,53,.2)}.btn.secondary{background:#f0f2f4;color:#30343a}.btn.danger{background:#fff0f0;color:var(--red)}.btn:disabled{opacity:.55;cursor:not-allowed}.app-shell{min-height:100vh;display:grid;grid-template-columns:250px 1fr}.sidebar{position:sticky;top:0;height:100vh;padding:22px 16px;background:var(--nav);color:#fff;display:flex;flex-direction:column}.logo{display:flex;align-items:center;gap:11px;padding:0 8px 28px}.logo strong,.logo small{display:block}.logo strong{font-size:17px}.logo small{color:#868b92}.sidebar nav{display:grid;gap:6px}.nav-item{border:0;border-radius:10px;background:transparent;color:#90959d;padding:12px 13px;text-align:left;cursor:pointer;font-weight:650}.nav-item span{display:inline-block;width:26px;color:#70757d}.nav-item:hover,.nav-item.active{background:#24272c;color:#fff}.nav-item.active span{color:var(--fire)}.sidebar-foot{margin-top:auto;padding:16px 8px 0;border-top:1px solid #2a2d32;display:flex;align-items:center;justify-content:space-between}.sidebar-foot strong,.sidebar-foot small{display:block;max-width:130px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-foot small{color:#7f848c;font-size:11px}.link-btn{border:0;background:transparent;color:#8e939b;cursor:pointer}.workspace{min-width:0}.topbar{height:92px;padding:20px 34px;border-bottom:1px solid var(--line);background:rgba(255,255,255,.88);backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:5}.topbar h2{margin:0;font-size:25px;letter-spacing:-.035em}.top-actions{display:flex;align-items:center;gap:12px}.plan-pill{padding:9px 12px;border:1px solid var(--line);border-radius:10px;background:#fff;color:#555b63;font-size:12px}.content{padding:28px 34px 60px}.hero{padding:26px;border-radius:18px;background:linear-gradient(120deg,#1a1c20,#262a30);color:#fff;display:flex;justify-content:space-between;align-items:flex-end;overflow:hidden;position:relative}.hero:after{content:"";position:absolute;width:300px;height:300px;border-radius:50%;background:rgba(242,91,53,.18);right:-100px;top:-170px}.hero h3{font-size:25px;margin:5px 0 8px;letter-spacing:-.03em}.hero p{margin:0;color:#a8adb5}.capacity{text-align:right;z-index:1}.capacity strong{font-size:32px}.capacity small{display:block;color:#aaaeb4}.progress{height:7px;width:190px;margin-top:9px;background:#3b3e44;border-radius:10px;overflow:hidden}.progress span{display:block;height:100%;background:linear-gradient(90deg,var(--fire),var(--fire2));border-radius:10px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:18px 0}.stat{padding:19px;background:var(--panel);border:1px solid var(--line);border-radius:14px}.stat .label{color:var(--muted);font-size:12px}.stat .value{font-size:29px;font-weight:850;margin-top:10px;letter-spacing:-.04em}.grid-two{display:grid;grid-template-columns:1.25fr .75fr;gap:16px}.panel{background:var(--panel);border:1px solid var(--line);border-radius:15px;overflow:hidden}.panel-head{padding:18px 20px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.panel-head h3{margin:0;font-size:15px}.list{display:grid}.list-row{display:grid;grid-template-columns:1fr auto;align-items:center;gap:16px;padding:15px 20px;border-bottom:1px solid #f0f1f3}.list-row:last-child{border:0}.row-main{display:flex;align-items:center;gap:12px;min-width:0}.avatar{width:38px;height:38px;border-radius:12px;background:#f2f3f5;color:#4a4e54;display:grid;place-items:center;font-weight:850}.row-text strong,.row-text small{display:block}.row-text small{margin-top:3px;color:var(--muted)}.badge{display:inline-flex;align-items:center;padding:6px 9px;border-radius:999px;font-size:11px;font-weight:750}.badge.green{background:#eaf8f2;color:var(--green)}.badge.amber{background:#fff5dd;color:var(--amber)}.badge.gray{background:#f1f2f4;color:#6e737b}.badge.red{background:#ffeded;color:var(--red)}.toolbar{display:flex;gap:10px;align-items:center;margin-bottom:15px}.search{flex:1;border:1px solid var(--line);border-radius:10px;padding:11px 13px;background:#fff}.table-wrap{overflow:auto;background:#fff;border:1px solid var(--line);border-radius:15px}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:14px 16px;border-bottom:1px solid #eceef0;white-space:nowrap}th{color:#777c84;font-size:11px;text-transform:uppercase;letter-spacing:.07em}td strong{display:block}td small{color:var(--muted)}tr[data-id]{cursor:pointer}tr[data-id]:hover{background:#fafafb}.empty{padding:48px 20px;text-align:center;color:var(--muted)}.empty .empty-icon{font-size:32px;margin-bottom:12px}.diet-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.diet-card{padding:20px;background:#fff;border:1px solid var(--line);border-radius:15px}.diet-card h3{margin:0 0 7px}.diet-card p{color:var(--muted);min-height:40px}.diet-card .meal-count{display:inline-block;margin-top:15px;color:var(--fire);font-weight:800}.modal{width:min(680px,calc(100% - 24px));max-height:90vh;border:0;border-radius:18px;padding:0;box-shadow:0 30px 90px rgba(0,0,0,.25)}.modal::backdrop{background:rgba(9,10,12,.58);backdrop-filter:blur(3px)}.modal-head{padding:19px 22px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.modal-head h3{margin:0}.modal-body{padding:22px;overflow:auto;max-height:calc(90vh - 68px)}.icon-btn{border:0;background:#f1f2f4;width:32px;height:32px;border-radius:9px;font-size:21px;cursor:pointer}.form-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:18px}.detail-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding:20px;background:#1d2024;color:#fff;border-radius:14px}.detail-head h2{margin:0 0 5px}.detail-head p{margin:0;color:#9fa4ab}.detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:14px 0}.metric{padding:14px;border:1px solid var(--line);border-radius:12px}.metric span,.metric strong{display:block}.metric span{color:var(--muted);font-size:11px}.metric strong{font-size:20px;margin-top:6px}.timeline{margin-top:18px;display:grid;gap:10px}.event{padding:13px 14px;border:1px solid var(--line);border-radius:11px;display:flex;justify-content:space-between;gap:12px}.event small{color:var(--muted)}.codebox{padding:13px;background:#191b1f;color:#d7d9dd;border-radius:10px;font-family:ui-monospace,SFMono-Regular,monospace;font-size:12px;word-break:break-all}.notice{padding:14px;border-radius:11px;background:#fff7e5;color:#8b6418;margin-bottom:14px}.toast{position:fixed;right:24px;top:24px;z-index:100;padding:12px 16px;border-radius:11px;background:#202328;color:#fff;box-shadow:var(--shadow);opacity:0;transform:translateY(-8px);pointer-events:none;transition:.2s}.toast.show{opacity:1;transform:none}.toast.error{background:#a93030}@media(max-width:900px){.auth-shell{grid-template-columns:1fr}.auth-brand{display:none}.auth-card{margin:40px auto}.app-shell{grid-template-columns:74px 1fr}.sidebar{padding:18px 10px}.logo div,.nav-item:not(.active){font-size:0}.nav-item{font-size:0;text-align:center}.nav-item span{font-size:18px;width:auto}.sidebar-foot{display:none}.topbar,.content{padding-left:20px;padding-right:20px}.stats{grid-template-columns:1fr 1fr}.grid-two{grid-template-columns:1fr}.diet-grid{grid-template-columns:1fr 1fr}}@media(max-width:600px){.app-shell{display:block}.sidebar{position:fixed;z-index:10;top:auto;bottom:0;width:100%;height:64px;flex-direction:row;padding:8px}.logo,.sidebar-foot{display:none}.sidebar nav{display:flex;width:100%;justify-content:space-around}.nav-item{padding:11px 16px}.workspace{padding-bottom:66px}.topbar{height:auto;padding:14px 16px}.top-actions .plan-pill{display:none}.content{padding:16px}.stats{grid-template-columns:1fr 1fr}.hero{display:block}.capacity{text-align:left;margin-top:20px}.diet-grid{grid-template-columns:1fr}.field-row{grid-template-columns:1fr}.detail-grid{grid-template-columns:1fr 1fr}}
