:root{--bg:#fffaf8;--paper:#fffefd;--ink:#342a2a;--muted:#887a79;--line:#eee1de;--brand:#c97773;--brand-2:#f3d6d1;--accent:#f6eee4;--shadow:0 16px 44px rgba(90,55,50,.09);--success:#5f9a78}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.45 'DM Sans',sans-serif}button,input{font:inherit}button{cursor:pointer;border:0}.app{max-width:1440px;margin:auto;min-height:100vh;padding:18px;display:grid;grid-template-columns:235px 1fr;gap:18px}.side{background:var(--paper);border:1px solid var(--line);border-radius:24px;padding:25px 15px;display:flex;flex-direction:column;min-height:calc(100vh - 36px);position:sticky;top:18px}.logo{font:700 26px 'Playfair Display';padding:0 10px 30px;letter-spacing:-1px}.logo b{color:var(--brand);font-style:italic}.profile-mini{display:flex;gap:10px;align-items:center;padding:10px;margin-bottom:18px;background:var(--accent);border-radius:16px}.avatar{display:grid;place-items:center;background:linear-gradient(140deg,var(--brand-2),var(--brand));color:white;width:36px;height:36px;border-radius:13px;font-weight:700}.profile-mini strong,.profile-mini small{display:block}.profile-mini small{color:var(--muted);font-size:11px}.nav{display:grid;gap:5px}.nav button{background:transparent;color:var(--muted);text-align:left;padding:12px 11px;border-radius:12px;font-weight:600;display:flex;gap:11px;align-items:center}.nav button.active,.nav button:hover{color:var(--ink);background:var(--accent)}.nav i{font-style:normal;width:18px;text-align:center}.side-bottom{margin-top:auto}.theme-control{width:100%;display:flex;gap:8px;align-items:center;text-align:left;border:1px solid var(--line);border-radius:13px;padding:11px;background:transparent;color:var(--ink)}.theme-dot{width:15px;height:15px;border-radius:50%;background:linear-gradient(135deg,#f5d7d2,#ba6c71)}.upgrade{margin-top:14px;padding:16px;background:var(--ink);color:white;border-radius:17px}.upgrade strong{font-size:13px}.upgrade p{font-size:11px;color:#ded4d2;margin:5px 0 12px}.upgrade button{background:var(--brand-2);color:var(--ink);border-radius:9px;padding:7px 10px;font-weight:700;font-size:11px}.main{min-width:0}.topbar{display:flex;justify-content:space-between;align-items:center;padding:5px 3px 22px}.crumb{color:var(--muted);font-size:13px}.top-actions{display:flex;gap:9px;align-items:center}.icon-btn,.ghost-btn{background:var(--paper);border:1px solid var(--line);color:var(--ink);border-radius:12px;padding:10px 13px;font-weight:600}.ghost-btn{font-size:12px}.primary{background:var(--brand);color:#fff;border-radius:12px;padding:11px 16px;font-weight:700;box-shadow:0 7px 17px rgba(183,102,97,.18)}.hero{padding:8px 4px 22px;display:flex;align-items:end;justify-content:space-between}.eyebrow{text-transform:uppercase;letter-spacing:1.2px;font-size:10px;font-weight:700;color:var(--brand)}h1{font:700 clamp(27px,4vw,43px)/1.1 'Playfair Display';letter-spacing:-1.4px;margin:4px 0}.hero p{margin:7px 0 0;color:var(--muted)}.date-chip{padding:9px 12px;background:var(--paper);border:1px solid var(--line);border-radius:12px;color:var(--muted);font-size:12px}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.metric,.panel{background:var(--paper);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow)}.metric{padding:16px}.metric small{color:var(--muted);font-weight:600}.metric strong{display:block;font-size:25px;letter-spacing:-1px;margin:8px 0 3px}.trend{font-size:11px;color:var(--success);font-weight:700}.trend.down{color:#c96d6d}.grid{display:grid;grid-template-columns:1.4fr .9fr;gap:16px;margin-top:16px}.panel{padding:19px}.panel-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.panel h2{font:700 20px 'Playfair Display';margin:0}.text-btn{background:transparent;color:var(--brand);font-size:12px;font-weight:700}.appointment{display:grid;grid-template-columns:54px 44px 1fr auto;gap:10px;align-items:center;padding:11px 0;border-top:1px solid var(--line)}.appointment:first-of-type{border-top:0}.time{font-weight:700}.time small{display:block;color:var(--muted);font-weight:400;font-size:10px}.client-pic{width:39px;height:39px;border-radius:50%;background:var(--accent);display:grid;place-items:center;font-size:13px;font-weight:700;color:var(--brand)}.appointment strong,.appointment small{display:block}.appointment small{font-size:11px;color:var(--muted)}.tag{border-radius:9px;padding:6px 8px;background:var(--accent);font-size:10px;font-weight:700;color:var(--brand)}.tag.done{color:var(--success);background:#edf7ee}.calendar{padding:0}.calendar-top{padding:19px 19px 10px;display:flex;justify-content:space-between;align-items:center}.calendar h2{font-size:19px}.calendar-grid{padding:5px 14px 16px;display:grid;grid-template-columns:repeat(7,1fr);gap:5px;text-align:center}.weekday{font-size:10px;color:var(--muted);font-weight:700;padding-bottom:3px}.day{height:31px;display:grid;place-items:center;border-radius:10px;font-size:12px}.day.active{background:var(--brand);color:#fff;font-weight:700}.day.has:after{content:'';display:block;position:absolute;width:4px;height:4px;border-radius:50%;background:var(--brand);margin-top:23px}.day.active:after{background:#fff}.calendar-footer{padding:14px 19px;border-top:1px solid var(--line);font-size:12px;display:flex;gap:9px;align-items:center}.calendar-footer span{width:8px;height:8px;border-radius:50%;background:var(--brand)}.bottom-grid{display:grid;grid-template-columns:1.4fr .9fr;gap:16px;margin-top:16px}.link-preview{background:linear-gradient(120deg,var(--accent),var(--brand-2));border-radius:17px;padding:19px;min-height:142px;position:relative;overflow:hidden}.link-preview:after{content:'✦';font-size:130px;line-height:1;color:#fff8;position:absolute;right:0;bottom:-25px}.link-preview *{position:relative;z-index:1}.link-preview p{margin:0 0 4px;font-size:12px;color:var(--muted)}.link-preview strong{font:600 22px 'Playfair Display'}.copy-row{display:flex;gap:7px;margin-top:13px}.copy-row code{background:#fff9;border-radius:9px;padding:8px;font-size:11px;flex:1}.copy-row button{border-radius:9px;background:var(--ink);color:#fff;padding:0 10px;font-size:11px}.progress-row{margin-bottom:14px}.progress-row>div{display:flex;justify-content:space-between;font-size:12px;margin-bottom:6px}.progress{height:7px;background:var(--accent);border-radius:10px;overflow:hidden}.progress span{display:block;height:100%;background:var(--brand);border-radius:inherit}.mobile-nav{display:none}.modal{position:fixed;inset:0;background:#32252655;display:grid;place-items:center;padding:18px;z-index:8;opacity:0;pointer-events:none;transition:.2s}.modal.show{opacity:1;pointer-events:auto}.modal-card{width:min(520px,100%);background:var(--paper);border:1px solid var(--line);border-radius:25px;padding:25px;box-shadow:0 28px 80px #33202044;transform:translateY(10px);transition:.2s}.modal.show .modal-card{transform:none}.modal-title{display:flex;justify-content:space-between;align-items:start}.modal h2{font:700 26px 'Playfair Display';margin:0}.close{font-size:20px;background:transparent;color:var(--muted)}.theme-options{display:grid;gap:9px;margin:20px 0}.theme-option{padding:14px;border:1px solid var(--line);background:transparent;border-radius:15px;display:flex;align-items:center;gap:13px;text-align:left;color:var(--ink)}.theme-option.active{border-color:var(--brand);box-shadow:0 0 0 2px var(--brand-2)}.theme-swatches{display:flex}.theme-swatches span{width:18px;height:18px;border-radius:50%;border:2px solid var(--paper);margin-left:-5px}.theme-option b,.theme-option small{display:block}.theme-option small{color:var(--muted);font-size:11px}.auth-step{margin:18px 0}.auth-step label{display:block;font-size:12px;font-weight:700;margin-bottom:6px}.auth-step input{width:100%;padding:13px;border:1px solid var(--line);border-radius:12px;background:var(--bg);outline:0}.auth-step input:focus{border-color:var(--brand)}.full{width:100%;margin-top:10px}.note{font-size:11px;color:var(--muted);text-align:center;margin:12px 0 0}.plan{display:flex;justify-content:space-between;align-items:center;padding:14px;border-radius:15px;background:var(--accent);margin:17px 0}.plan b{display:block}.plan small{color:var(--muted)}.price{font-size:19px;font-weight:700}.toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,30px);background:var(--ink);color:#fff;border-radius:14px;padding:11px 16px;font-size:13px;opacity:0;pointer-events:none;transition:.25s;z-index:10}.toast.show{opacity:1;transform:translate(-50%,0)}
body[data-theme="night"]{--bg:#131526;--paper:#1c1e33;--ink:#f1eefb;--muted:#aaaac2;--line:#30324b;--brand:#a782ee;--brand-2:#41355e;--accent:#282942;--shadow:0 16px 44px rgba(0,0,0,.21)}body[data-theme="mint"]{--bg:#f6fbf8;--paper:#fff;--ink:#294047;--muted:#718589;--line:#dcebe5;--brand:#79aaa0;--brand-2:#d7eee6;--accent:#edf7f2;--shadow:0 16px 44px rgba(56,101,88,.08)}
.public-page{min-height:100vh;background:var(--bg);padding:22px}.public-wrap{max-width:860px;margin:auto}.public-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.back{background:transparent;color:var(--muted);font-weight:700}.public-card{background:var(--paper);border:1px solid var(--line);border-radius:28px;overflow:hidden;box-shadow:var(--shadow)}.cover{height:185px;background:linear-gradient(130deg,var(--brand-2),var(--accent));position:relative}.cover:after{content:'✦';position:absolute;right:10%;bottom:-40px;font:150px 'Playfair Display';color:#fff8}.public-profile{padding:0 30px 30px;position:relative}.public-avatar{width:93px;height:93px;border:5px solid var(--paper);border-radius:29px;display:grid;place-items:center;font:700 35px 'Playfair Display';background:linear-gradient(140deg,var(--brand-2),var(--brand));color:#fff;transform:translateY(-40px);margin-bottom:-28px}.public-profile h1{margin-top:0}.public-profile p{color:var(--muted)}.public-actions{display:flex;gap:9px;margin:22px 0}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.service{border:1px solid var(--line);padding:13px;border-radius:14px}.service small{display:block;color:var(--muted);margin-top:3px}.public-info{display:flex;gap:16px;color:var(--muted);font-size:13px;margin-top:17px;flex-wrap:wrap}@media(max-width:850px){.app{display:block;padding:12px}.side{display:none}.topbar{padding:4px 2px 18px}.metrics{grid-template-columns:repeat(2,1fr)}.grid,.bottom-grid{grid-template-columns:1fr}.hero{display:block}.date-chip{display:inline-block;margin-top:13px}.mobile-nav{display:flex;position:fixed;bottom:11px;left:11px;right:11px;z-index:3;background:var(--paper);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);padding:7px;justify-content:space-around}.mobile-nav button{background:transparent;color:var(--muted);padding:6px;font-size:18px}.mobile-nav button.active{color:var(--brand)}.main{padding-bottom:65px}.appointment{grid-template-columns:47px 38px 1fr}.appointment .tag{display:none}.panel{padding:16px}.public-page{padding:13px}.public-profile{padding:0 20px 22px}.services{grid-template-columns:1fr}.top-actions .ghost-btn{display:none}}@media(max-width:400px){.metrics{gap:8px}.metric{padding:13px}.metric strong{font-size:21px}.primary{padding:10px 12px}.appointment{font-size:13px}}
