:root{--bg: #f4f1eb;--surface: #ffffff;--ink: #1f2933;--muted: #6b7280;--line: #e5ded2;--accent: #0e7c68;--accent-dark: #0b5f51;--gold: #bd8b2f;--dark: #151515}*{box-sizing:border-box}body{margin:0;min-width:320px;background:linear-gradient(140deg,rgba(14,124,104,.1),transparent 30%),linear-gradient(320deg,rgba(189,139,47,.12),transparent 35%),var(--bg);color:var(--ink);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.65}.app{display:grid;grid-template-columns:260px 1fr;min-height:100vh}.sidebar{padding:24px;background:linear-gradient(180deg,rgba(255,255,255,.06),transparent 34%),var(--dark);color:#fff}.brand{display:flex;gap:12px;align-items:center;margin-bottom:28px}.brand>span{display:grid;width:42px;height:42px;place-items:center;border-radius:8px;background:linear-gradient(135deg,var(--accent),var(--gold));font-weight:800}.brand small{display:block;color:#ffffff9e}nav{display:grid;gap:8px}nav button{min-height:44px;border:0;border-radius:8px;background:transparent;color:#ffffffb8;text-align:left;padding:0 12px}nav button.active,nav button:hover{background:#ffffff1a;color:#fff}.content{padding:32px}.topbar{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:20px}.eyebrow{margin:0 0 6px;color:var(--accent-dark);font-size:12px;font-weight:800;text-transform:uppercase}h1,h2,h3,p{margin-top:0}h1{margin-bottom:0;font-size:clamp(34px,5vw,54px);line-height:1}.actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:flex-end}.primary,.secondary{min-height:44px;padding:0 16px;border-radius:8px;font-weight:800}.primary{border:1px solid var(--accent);background:var(--accent);color:#fff}.primary:hover{background:var(--accent-dark)}.secondary{border:1px solid var(--line);background:#fffefa;color:var(--ink)}.user-pill{padding:10px 12px;border:1px solid var(--line);border-radius:999px;background:#fffefa;color:var(--accent-dark);font-weight:800}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:18px}.metrics article,.panel{border:1px solid var(--line);border-radius:8px;background:#ffffffe6;box-shadow:0 18px 45px #17171714}.metrics article{padding:18px}.metrics small,label,.label,dt{color:var(--muted);font-weight:700}.metrics strong{display:block;margin-top:6px;font-size:28px}.grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:18px;align-items:start}.panel{padding:20px}.form{display:grid;gap:14px}.form-header,.section-title{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.form-header h2,.section-title h2{margin-bottom:0}.status{border-radius:999px;padding:7px 10px;background:#d8f3ed;color:var(--accent-dark);font-size:12px;font-weight:800}label{display:grid;gap:8px}input,select{width:100%;min-height:44px;padding:0 12px;border:1px solid var(--line);border-radius:8px;background:#fffefa;color:var(--ink)}.slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:8px;margin-top:8px}.slots button{min-height:38px;border:1px solid var(--line);border-radius:8px;background:#fffefa}.slots button.selected{border-color:var(--accent);background:#d8f3ed;color:var(--accent-dark);font-weight:800}.slots button:disabled{color:#a1a1aa;background:#f4f4f5;cursor:not-allowed}.message{min-height:20px;margin-bottom:0;color:var(--accent-dark);font-weight:800}.login-layout{display:grid;min-height:460px;place-items:center}.login-panel{display:grid;width:min(100%,440px);gap:14px}.login-mark{display:grid;width:54px;height:54px;place-items:center;border-radius:8px;background:linear-gradient(135deg,var(--accent),var(--gold));color:#fff;font-size:24px;font-weight:900}.muted-text{color:var(--muted);line-height:1.5}dl{display:grid;gap:12px;margin:0}dl div{display:flex;justify-content:space-between;gap:12px;padding-bottom:10px;border-bottom:1px solid var(--line)}dd{margin:0;text-align:right;font-weight:800}.schedule{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.schedule article,.appointment{border-radius:8px;background:#fffefa}.schedule article{border:1px solid var(--line);padding:14px}.appointment{margin-top:8px;padding:10px;background:#eef8f5}.muted-card{color:var(--muted);background:#f7f4ee}@media (max-width: 980px){.app,.grid,.metrics,.schedule{grid-template-columns:1fr}.content,.sidebar{padding:18px}.topbar{flex-direction:column;align-items:stretch}.actions{justify-content:stretch}}
