:root{color-scheme:dark;--green:#d9dbdf;--muted:#a3a5ad;--line:#34353c;--lime:#ed2438;color:#f4f4f6;background:#09090b}
body{background:radial-gradient(ellipse at 95% 0,#43131b55,transparent 45%),#09090b;min-height:100dvh}
button,.button{background:linear-gradient(115deg,#f1f2f4,#b1b4be 55%,#e4e5e9);color:#141417;box-shadow:inset 0 1px #fff6;transition:background .2s,transform .2s}
button:hover,.button:hover{transform:translateY(-1px)}button:focus-visible,a:focus-visible{outline:2px solid #ff5261;outline-offset:4px}
a{color:#e0e1e6}.secondary,.outline{background:#232329;color:#e1e2e7;border:1px solid #44454e;box-shadow:none}.danger{background:#4a1821;color:#ffabb4}
input,select,textarea{background:#101014;color:#f4f4f6;border-color:#42434c}input:focus,select:focus,textarea:focus{outline-color:#e63749}input[type=checkbox]{accent-color:#e31e32}
.eyebrow,.steps{color:#c4c6cf}.brand{display:flex;flex-direction:column;align-items:flex-start;gap:9px}.brand-logo{position:relative;display:block;width:185px;height:85px;overflow:hidden;background:#000;border-radius:3px}.brand .brand-logo img{position:absolute;width:165%;height:auto;max-width:none;left:-36%;top:-62%}.brand small{font-size:9px;color:#c4c6ce;letter-spacing:3px;margin-left:5px}
.sidebar{background:#000;border-right:1px solid #303037;color:#fff}.sidebar .brand{margin-bottom:38px}.sidebar .brand-logo{width:100%;height:auto;aspect-ratio:185/85}.nav button{color:#b5b6bf;box-shadow:none}.nav button.active{background:linear-gradient(100deg,#551520,#241318);color:#fff;border-left:3px solid #ed2438}.sidebar-bottom{border-color:#303037}.avatar{background:linear-gradient(125deg,#f3f3f5,#9da0ac);color:#202126}.account small,.logout{color:#b8bac3}
.main{margin:0 auto}.topbar{color:#a4a6af}.pill{background:#1c1d22;border-color:#3b3c45;color:#d4d5dc}.dot{background:#f02b41;box-shadow:0 0 10px #ed243877}h1{font-weight:600;letter-spacing:-1.4px}h2,h3{color:#f5f5f7}
.stat,.card{background:linear-gradient(135deg,#202127,#141418);border-color:#35363e;box-shadow:0 15px 45px #0002,inset 0 1px #ffffff06}.stat:first-child{background:linear-gradient(125deg,#38151d,#1c171c);border-color:#60313b}.stat-label{color:#b9bbc4;letter-spacing:1px}.stat strong{color:#f1f2f5}.tabs{background:#09090d}.tabs button{color:#b1b3be;box-shadow:none}.tabs button.active{background:#383940;color:#fff}
.appointment{border-color:#33343b}.appointment p,.time small{color:#a9abb5}.badge{background:#17372d;color:#a6dfc5}.badge.pending{background:#43351c;color:#f2d398}.badge.proposed{background:#2d294a;color:#cec7ff}.badge.cancelled{background:#4a2028;color:#ffb5bd}.icon-button{background:#303138;color:#e0e2e9}.empty{color:#a5a7b1}.empty strong{color:#e2e3e9}.calendar th{color:#a8aab5}.calendar td{color:#d3d4dc}.calendar .today{background:#df1d33;color:#fff}.side-note{background:linear-gradient(130deg,#30171e,#17171c);border:1px solid #533039}.side-note p,.footer-note{color:#b2aeb7}
.public-top{border-bottom:1px solid #303138;padding-bottom:24px}.profile-card{background:linear-gradient(145deg,#282930,#101013);border:1px solid #41424c;position:relative;overflow:hidden}.profile-card:before{content:"";position:absolute;top:0;left:30px;width:65px;height:3px;background:#ed2438}.profile-card p,.profile-card .help{color:#b7b9c4}.profile-card .eyebrow{color:#d4d5dc}.profile-line{border-color:#42434d}.slot{background:#1b1c22;color:#e9eaf0;border-color:#4b4d58;box-shadow:none}.slot.selected{background:#d91c31;color:#fff;border-color:#ff6878}.help,.private-note,.public-footer{color:#aaadb8}
.auth{max-width:470px;margin:6vh auto}.auth .brand{align-items:center;margin-bottom:30px}.auth .brand-logo{width:220px;height:101px}.auth .card{border-top:2px solid #a6a8b1;background:linear-gradient(140deg,#24252c,#111115);padding:32px}.auth h1{font-size:28px}.auth .eyebrow{color:#f25768}.error{background:#441c24;color:#ffc1c8}.success{background:#20352c;color:#c5ebd6}.link-box{background:#09090c;border:1px solid #393b45}.qr img{background:#fff;border:12px solid #fff;border-radius:12px}
dialog{background:#1b1c22;color:#eeeef2;border-color:#50515d;box-shadow:0 30px 100px #0009}dialog::backdrop{background:#000b;backdrop-filter:blur(6px)}dialog .close{background:#363740;color:#fff}#toast{background:#30313a;border:1px solid #646671;color:#fff}
.brand-intro{position:fixed;inset:0;z-index:100;display:grid;place-content:center;background:#000;pointer-events:none;animation:intro-out .45s ease 1.15s forwards}.brand-intro .brand-logo{width:min(310px,75vw);height:min(142px,34.4vw);animation:logo-arrive .85s cubic-bezier(.2,.7,.2,1) both}.intro-caption{color:#bdbfc8;letter-spacing:5px;text-transform:uppercase;font-size:10px;text-align:center;margin-top:24px;animation:logo-arrive .8s .15s both}.intro-line{height:2px;background:linear-gradient(90deg,transparent,#ed2438,transparent);margin-top:24px;animation:line-arrive 1s ease both}
@keyframes logo-arrive{from{opacity:0;transform:translateY(18px) scale(.96);filter:blur(6px)}to{opacity:1;transform:none;filter:none}}@keyframes line-arrive{from{transform:scaleX(0);opacity:0}to{transform:scaleX(1);opacity:1}}@keyframes intro-out{to{opacity:0;visibility:hidden}}
@media(max-width:700px){.sidebar .brand-logo{width:145px;height:67px}.sidebar .brand{gap:5px}.sidebar .brand small{font-size:8px}.sidebar-bottom{top:35px}.public-top .brand-logo{width:160px;height:74px}.public-top{gap:15px}.auth{margin-top:4vh}.auth .card{padding:25px}.heading h1{font-size:27px}.nav button.active{border-left:0;border-bottom:2px solid #ed2438}.brand-intro .brand-logo img{width:165%;height:auto}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.brand-intro{display:none}button:hover,.button:hover{transform:none}}
