:root{
  --bg:#f5f4ef;--panel:#ffffff;--ink:#161612;--muted:#77766e;--line:#e7e4dc;
  --accent:#b79a62;--accent-soft:#eee5d3;--dark:#171713;--radius:22px;
  --shadow:0 18px 50px rgba(23,23,19,.07)
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.5 Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
a{color:inherit;text-decoration:none}button,.button{border:0;background:var(--dark);color:white;padding:12px 18px;border-radius:13px;font:700 14px inherit;cursor:pointer;transition:.2s}.button.primary{background:var(--dark)}button:hover,.button:hover{transform:translateY(-1px);box-shadow:0 10px 24px rgba(0,0,0,.1)}.secondary{background:#efede7!important;color:var(--ink)!important}
.sidebar{position:fixed;inset:0 auto 0 0;width:250px;background:#151511;color:#fff;padding:28px 22px;display:flex;flex-direction:column;z-index:20}
.brand{display:flex;align-items:center;gap:12px;margin-bottom:45px}.brandMark,.loginMark{width:48px;height:48px;border:1px solid #9f8a5d;border-radius:50%;display:grid;place-items:center;font-family:Georgia,serif;color:#d8c18c}.brand b{display:block;letter-spacing:.05em}.brand small{display:block;color:#8d8b84;font-size:9px;letter-spacing:.25em}
.sidebar nav{display:grid;gap:7px}.sidebar nav a{padding:13px 14px;border-radius:13px;color:#aaa;display:flex;gap:12px;align-items:center}.sidebar nav a.active,.sidebar nav a:hover{background:#292821;color:#fff}.sidebarFoot{margin-top:auto;color:#85847d;font-size:12px;display:grid;gap:12px}.statusDot{display:inline-block;width:8px;height:8px;background:#61c784;border-radius:50%;margin-right:5px}.sidebarFoot a{color:#ddd}
.shell{margin-left:250px;padding:42px;max-width:1650px}.mobileHead{display:none}
.topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}.topbar h1,.patientHeader h1{font:700 38px/1.05 Georgia,serif;margin:5px 0}.eyebrow{margin:0;color:#9b8356;font-size:10px;font-weight:850;letter-spacing:.18em}.muted{color:var(--muted);margin:5px 0}
.heroStats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:22px}.heroMetric{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:23px;box-shadow:var(--shadow)}.heroMetric.dark{background:#1a1a16;color:white;border-color:#1a1a16}.heroMetric span,.heroMetric small{display:block;color:var(--muted)}.heroMetric.dark span,.heroMetric.dark small{color:#aaa}.heroMetric strong{display:block;font:700 29px Georgia,serif;margin:8px 0}
.panel{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:23px;margin-bottom:20px}.panel h2{font:700 22px Georgia,serif;margin:4px 0 16px}.panelHead{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.panelHead h2{margin:4px 0}.panelHead a{color:#8c7448;font-weight:750;font-size:13px}
.dashboardGrid{display:grid;grid-template-columns:1.25fr 1fr;gap:20px}.appointmentRow,.patientRow,.documentRow,.sessionRow{display:flex;align-items:center;gap:14px;padding:14px 0;border-bottom:1px solid var(--line)}.appointmentRow:last-child,.patientRow:last-child,.documentRow:last-child,.sessionRow:last-child{border:0}.grow{flex:1}.grow p,.appointmentRow p,.documentRow p,.patientHeader p{margin:3px 0;color:var(--muted)}.patientRow small{display:block;color:var(--muted)}.timeBlock{width:64px;height:58px;border-radius:15px;background:#f1eee7;display:grid;place-items:center;line-height:1}.timeBlock b{font-size:18px}.timeBlock small{text-transform:uppercase;color:#8d7950}.avatar{width:42px;height:42px;border-radius:50%;background:var(--accent-soft);display:grid;place-items:center;font-weight:850;color:#745f37}.avatar.huge{width:76px;height:76px;font-size:22px}.badge{display:inline-block;background:#f0eee8;color:#655a44;padding:5px 9px;border-radius:999px;font-size:11px;font-weight:800}.badge.success{background:#e3f4e8;color:#26773e}
.methodCards{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.methodCards article{background:#f8f7f3;border:1px solid #eeeae2;border-radius:16px;padding:17px}.methodCards span,.methodCards strong{display:block}.methodCards strong{font-size:21px;margin:7px 0}.progress,.paymentTrack{height:7px;background:#e7e2d8;border-radius:999px;overflow:hidden}.progress i,.paymentTrack i{display:block;height:100%;background:var(--accent);border-radius:999px}
.searchBar,.uploadBar{display:flex;gap:10px;margin-bottom:18px;align-items:center}.searchBar input{flex:1}.tablePanel{padding:0;overflow:auto}table{border-collapse:collapse;width:100%}th,td{padding:16px;text-align:left;border-bottom:1px solid var(--line)}th{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}tbody tr{cursor:pointer}tbody tr:hover{background:#fbfaf7}td small{display:block;color:var(--muted)}.personCell{display:flex;align-items:center;gap:11px}
input,select,textarea{width:100%;border:1px solid #ddd9cf;background:#fff;border-radius:12px;padding:11px 12px;font:inherit;outline:none}input:focus,select:focus,textarea:focus{border-color:#b69b68;box-shadow:0 0 0 3px rgba(182,155,104,.12)}textarea{min-height:92px;resize:vertical}label{display:grid;gap:6px;color:#5e5c55;font-size:12px;font-weight:750}.formGrid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.wide{grid-column:1/-1}.actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}
dialog{border:0;border-radius:24px;padding:0;width:min(760px,92vw);box-shadow:0 35px 120px rgba(0,0,0,.25)}dialog::backdrop{background:rgba(14,14,12,.48);backdrop-filter:blur(4px)}.modalForm{padding:25px}.modalHead{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:18px}.modalHead h2{font:700 28px Georgia,serif;margin:4px 0}.modalHead button{background:transparent;color:#222;font-size:25px;padding:2px 8px;box-shadow:none}
.patientHeader{background:linear-gradient(135deg,#fff,#f3efe6);border:1px solid var(--line);border-radius:26px;padding:25px;display:flex;align-items:center;gap:18px;box-shadow:var(--shadow)}.sectionTabs{display:flex;gap:8px;overflow:auto;padding:16px 0 20px;position:sticky;top:0;background:var(--bg);z-index:10}.sectionTabs a{white-space:nowrap;padding:9px 14px;background:#fff;border:1px solid var(--line);border-radius:999px;font-size:12px;font-weight:750}.sectionTabs a:hover{background:#171713;color:white}
.treatmentCard{border:1px solid var(--line);border-radius:18px;padding:18px;margin:13px 0}.treatmentMain{display:flex;justify-content:space-between;align-items:center;gap:16px}.treatmentCard h3{margin:8px 0 2px}.amountBlock{text-align:right}.amountBlock strong,.amountBlock small{display:block}.amountBlock strong{font:700 24px Georgia,serif}.amountBlock small{color:var(--muted)}.paymentTrack{margin:14px 0}.treatmentCard summary{cursor:pointer;color:#8d7344;font-weight:800}.triple{display:grid;grid-template-columns:1.35fr 1fr 1fr;gap:13px;margin-top:15px}.toolCard{background:#f8f7f3;border:1px solid #ece8df;border-radius:16px;padding:15px;display:grid;gap:9px}.toolCard h4{margin:0 0 5px}.compactGrid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.sessionNumber{width:44px;height:44px;background:#191915;color:white;border-radius:50%;display:grid;place-items:center;font-weight:850}.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.gallery figure{margin:0;background:#f1eee7;border-radius:16px;overflow:hidden}.gallery img,.gallery video{display:block;width:100%;aspect-ratio:1;object-fit:cover}.gallery figcaption{padding:10px;font-size:12px;font-weight:800}.check{display:flex;align-items:center;gap:8px}.check input{width:auto}.hint,.emptyState{text-align:center;color:var(--muted);padding:22px}.courseGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.courseCard h2{margin:10px 0 3px}.courseMoney{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--line)}.miniPay{display:grid;gap:8px;margin-top:14px}
.loginShell{min-height:100vh;display:grid;grid-template-columns:1.3fr .8fr;background:#151511}.loginVisual{position:relative;background:radial-gradient(circle at 20% 20%,rgba(203,173,116,.35),transparent 35%),linear-gradient(145deg,#1f1f19,#0f0f0d);overflow:hidden}.loginVisual:after{content:"";position:absolute;inset:12% 10%;border:1px solid rgba(255,255,255,.08);border-radius:34px;transform:rotate(-4deg)}.visualOverlay{position:absolute;left:10%;bottom:12%;color:white;z-index:2}.visualBrand{letter-spacing:.25em;font-size:12px;color:#d3ba86}.visualOverlay h2{font:700 64px/1.02 Georgia,serif;margin:18px 0}.visualOverlay p{max-width:500px;color:#aaa;font-size:18px}.loginPanel{background:#f6f4ee;display:grid;place-items:center;padding:35px}.loginCard{width:min(420px,100%);background:white;border:1px solid #e8e3d8;border-radius:28px;padding:38px;box-shadow:0 35px 100px rgba(0,0,0,.18);display:grid;gap:15px}.loginMark{background:#171713;color:#d8c18c;width:62px;height:62px}.loginCard h1{font:700 38px Georgia,serif;margin:0}.loginCard .muted{margin-top:-10px}.full{width:100%;margin-top:3px}.secureNote{text-align:center;color:#999}.alert{background:#fff0ee;color:#9c2e24;padding:10px;border-radius:11px}
@media(max-width:1100px){.sidebar{width:82px;padding:24px 12px}.brand span:last-child,.sidebar nav a:not(.active){font-size:0}.sidebar nav a{justify-content:center}.sidebar nav a span{font-size:18px}.sidebarFoot{display:none}.shell{margin-left:82px;padding:26px}.heroStats{grid-template-columns:repeat(2,1fr)}.triple{grid-template-columns:1fr}.courseGrid{grid-template-columns:1fr 1fr}.loginShell{grid-template-columns:1fr 1fr}.visualOverlay h2{font-size:46px}}
@media(max-width:760px){.sidebar{display:none}.mobileHead{display:flex;justify-content:space-between;background:#151511;color:white;padding:14px 18px}.shell{margin:0;padding:16px}.topbar{align-items:flex-start}.topbar h1{font-size:31px}.heroStats,.dashboardGrid,.methodCards,.courseGrid{grid-template-columns:1fr}.formGrid{grid-template-columns:1fr}.wide{grid-column:auto}.uploadBar,.searchBar{flex-direction:column;align-items:stretch}.patientHeader{align-items:flex-start;flex-wrap:wrap}.patientHeader button{width:100%}.treatmentMain{align-items:flex-start}.amountBlock{text-align:left}.gallery{grid-template-columns:repeat(2,1fr)}.loginShell{display:block;background:#f6f4ee}.loginVisual{display:none}.loginPanel{min-height:100vh}.compactGrid{grid-template-columns:1fr}}
