@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@400;500;600&display=swap";*{box-sizing:border-box}body{color:#352d30;background:#f8f5f2;margin:0;font-family:DM Sans,sans-serif;font-size:16px}button,input,select,textarea{font:inherit}button,.button{color:#fff;cursor:pointer;background:#743e50;border:0;border-radius:9px;justify-content:center;align-items:center;gap:8px;padding:12px 17px;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex}button:hover,.button:hover{filter:brightness(.96)}button:disabled{opacity:.55;cursor:wait}input,select,textarea{color:#352d30;background:#fff;border:1px solid #ddd1d0;border-radius:7px;min-width:0;max-width:100%;padding:11px}input:focus,select:focus,textarea:focus{outline-offset:2px;outline:2px solid #b18089}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Playfair Display,Georgia,serif;font-weight:500}h1{margin:8px 0 0;font-size:36px}h2{font-size:24px}h3{font-size:18px}p{line-height:1.65}small,.hint{color:#776b70;font-size:14px;line-height:1.5}.app{min-height:100vh;display:flex}aside{background:#fffdfb;border-right:1px solid #e8dfdc;flex-direction:column;flex-shrink:0;width:250px;height:100vh;padding:32px 22px;display:flex;position:sticky;top:0}.brand{color:#743e50;align-items:center;gap:12px;font-family:Playfair Display,Georgia,serif;font-size:25px;text-decoration:none;display:flex}.brand-icon{color:#b89766;font-size:33px}.brand small{letter-spacing:1px;margin-top:7px;font-family:DM Sans,sans-serif;font-size:10px;display:block}nav{flex-direction:column;gap:8px;margin-top:55px;display:flex}nav button{color:#776b70;background:0 0;justify-content:flex-start;padding:14px 15px;font-weight:500}nav button.selected{color:#743e50;background:#f1e4e7;font-weight:700}.sidebar-footer{align-items:center;gap:10px;margin-top:auto;font-size:12px;display:flex}.sidebar-footer small{font-size:12px;display:block}.avatar{color:#743e50;background:#eee2dc;border-radius:50%;padding:13px}main{flex:1;min-width:0;max-width:1600px;padding:38px 42px}header{justify-content:space-between;align-items:center;gap:15px;margin-bottom:30px;display:flex}.eyebrow{letter-spacing:2px;color:#8e6c74;font-size:11px;font-weight:700}.welcome{background:#eeddd8;border:1px solid #e6d0c9;border-radius:14px;justify-content:space-between;align-items:center;margin-bottom:24px;padding:32px 36px;display:flex}.welcome h2{margin:12px 0;font-size:32px;line-height:1.25}.welcome p{color:#7e6266;margin-bottom:0}.welcome-date{color:#805766;text-transform:capitalize;flex-direction:column;gap:15px;max-width:190px;display:flex}.metrics{grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:26px;display:grid}.card{background:#fffdfb;border:1px solid #e8dfdc;border-radius:12px;margin-bottom:22px;padding:24px}.metrics .card{flex-direction:column;gap:14px;margin:0;display:flex}.metrics span{color:#776b70;font-size:14px}.metrics strong{letter-spacing:-.5px;font-size:27px;font-weight:500}.metrics small{font-size:12px}.section-head{justify-content:space-between;align-items:center;gap:15px;margin-bottom:20px;display:flex}.section-head h2{margin:0}.appointment{border-top:1px solid #eee5e1;flex-wrap:wrap;align-items:center;gap:20px;padding:20px 0;display:flex}.time{color:#743e50;min-width:90px;font-weight:700}.time span,.person span,.person small,.amount span{color:#85797c;margin-top:5px;font-size:13px;font-weight:400;display:block}.person{flex:1;min-width:130px}.badge{color:#6f6659;background:#eee9df;border-radius:5px;padding:6px 10px;font-size:12px}.request{color:#916328;background:#f5e3cd}.amount{text-align:right;font-size:15px}.secondary{color:#743e50;background:#fffdfb;border:1px solid #d9c4c9;padding:9px 13px}.empty{text-align:center;color:#89747c;padding:35px 16px}.empty svg{color:#b39786;margin-bottom:15px}.empty h3{color:#57474d;margin:0 0 8px}.empty p{font-size:14px}.bottom-grid{grid-template-columns:1.2fr 1fr;gap:22px;display:grid}.booking-card{background:#f4ece4}.booking-card svg{color:#ad8650}.booking-card small{margin-top:18px;display:block}.muted{color:#85797c;font-size:14px}.subheading{margin-top:32px}.record-grid{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.record{border:1px solid #e8dfdc;border-radius:10px;padding:24px}.record-icon{color:#743e50;background:#f4e8e9;border-radius:9px;margin-bottom:20px;padding:12px;display:inline-flex}.record h3,.record p{margin-bottom:12px}.low{color:#ad6725}.settings{max-width:720px}.settings hr{border:0;border-top:1px solid #e8dfdc;margin:28px 0}footer{text-align:center;color:#9a8a8d;padding:18px;font-size:12px}.error{color:#8d2525;background:#fae4e4;border-radius:8px;padding:13px}.success{color:#3e603e;background:#e5efe3;border-radius:8px;gap:10px;padding:13px;display:flex}.overlay{z-index:10;background:#382b3680;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.dialog{background:#fffdfb;border-radius:14px;width:100%;max-width:540px;max-height:90vh;padding:26px;overflow:auto}.close{color:#776b70;background:0 0;padding:0 8px;font-size:26px}.form{gap:17px;display:grid}.form label{gap:8px;font-size:14px;font-weight:600;display:grid}.form textarea{min-height:90px}.form-actions{justify-content:flex-end;gap:12px;margin-top:10px;display:flex}.booking{max-width:650px;margin:0 auto;padding:45px 24px}.booking .brand{margin-bottom:45px}.booking h1{margin-bottom:20px;font-size:42px}.booking .eyebrow{margin-top:25px}.fields{grid-template-columns:1fr 1fr;gap:15px;display:grid}@media (max-width:1100px){aside{width:205px;padding:26px 15px}main{padding:30px 24px}.metrics,.record-grid{grid-template-columns:repeat(2,1fr)}.bottom-grid{grid-template-columns:1fr}.welcome-date{display:none}}@media (max-width:700px){.app{display:block}aside{border-bottom:1px solid #e8dfdc;border-right:0;width:100%;height:auto;padding:17px 18px;position:static}.brand{font-size:23px}.brand small{font-size:9px}nav{flex-direction:row;gap:6px;margin-top:19px;padding-bottom:3px;overflow-x:auto}nav button{white-space:nowrap;padding:11px;font-size:14px}nav svg{width:16px}.sidebar-footer{display:none}main{padding:24px 16px}h1{font-size:29px}header{align-items:center}.eyebrow{letter-spacing:1.4px;font-size:9px}header button{padding:11px 12px}.welcome{padding:24px}.welcome h2{font-size:28px}.metrics{gap:10px}.metrics .card{padding:18px 14px}.metrics strong{font-size:24px}.card{padding:20px 16px}.section-head{flex-wrap:wrap}.appointment{gap:12px}.amount{margin-left:auto}.appointment .secondary{width:100%}.record-grid,.fields{grid-template-columns:1fr}.booking h1{font-size:35px}.dialog{padding:20px}.overlay{padding:10px}footer{line-height:1.5}}.salon-logo{object-fit:contain;border-radius:50%;flex-shrink:0;width:76px;height:76px}.brand{gap:10px}.brand>span:last-child{font-size:20px}.booking .salon-logo{width:105px;height:105px}.booking .brand{font-size:27px}@media (max-width:1100px){aside .brand{flex-direction:column;align-items:flex-start}}@media (max-width:700px){aside .brand{flex-direction:row;align-items:center}.salon-logo{width:64px;height:64px}.booking .salon-logo{width:86px;height:86px}}body{color:#49343c;background:#fcf5f3}aside{background:linear-gradient(165deg,#fffaf5,#fff2f2);border-right-color:#e7cfad}.brand{color:#8b6131}.salon-logo{box-shadow:0 0 0 2px #d5b071,0 5px 16px #a9803420}nav button{border-radius:13px}h1{color:#774454}h2{color:#6d414c}button,.button{background:linear-gradient(115deg,#885064,#a56477);border-radius:12px;box-shadow:0 3px 8px #8b52651a}button:focus-visible{outline-offset:3px;outline:2px solid #a57930}.button:focus-visible{outline-offset:3px;outline:2px solid #a57930}nav button,.close{box-shadow:none}nav button{background:0 0}.card{border-color:#e5cfb2;border-radius:17px;box-shadow:0 5px 18px #865a3210}.welcome{background:linear-gradient(115deg,#f3dde3 0%,#f8e9dc 65%,#f9eedb 100%);border:1px solid #dab77a;border-radius:20px;position:relative;overflow:hidden;box-shadow:0 6px 20px #aa815318}.welcome:before{content:"";background:linear-gradient(90deg,#0000,#bc944c,#f6e2ad,#bc944c,#0000);height:3px;position:absolute;top:0;left:28px;right:28px}.welcome-date{color:#956927}.metrics .card{border-top:3px solid #c5a061}.section-head h2{padding-bottom:9px;position:relative}.section-head h2:after{content:"";background:#c4a16a;width:42px;height:2px;position:absolute;bottom:0;left:0}.appointment{border-top-color:#eddfd3}.badge{color:#7c5d2c;background:#f5e8d0;border:1px solid #e8d1a9}.record{background:linear-gradient(165deg,#fffdfa,#fff6f7);border-color:#ead3b3;border-radius:15px}.record-icon{color:#a37c3c;background:#f5e5df;border:1px solid #ead2aa;border-radius:13px}.booking-card{background:linear-gradient(125deg,#f7e5eb,#fbefdb);border-color:#d6b171}.booking-card>svg{color:#ab8035}.booking-card h2{margin-top:14px}input,select,textarea{background:#fffdfb;border-color:#e0c9c1;border-radius:10px}.avatar{color:#956b32;background:#f4e2db;border:1px solid #dbbd87}.dialog{background:#fff9f7;border:1px solid #cfab6c;border-radius:20px;box-shadow:0 20px 70px #40263340}.booking .brand{color:#946932}.empty svg{color:#b68d48}.settings hr{border-top-color:#e5cfb2}@media (max-width:700px){aside{border-bottom-color:#dabe91}.card{border-radius:15px}.welcome{border-radius:17px}}.treatment-bubble{color:#77505b;background:linear-gradient(120deg,#f9e8ed,#fcf0db);border:1px solid #d8b675;border-radius:15px;margin-top:5px;padding:17px 19px;position:relative}.treatment-bubble:before{content:"";background:#f9e8ed;border-top:1px solid #d8b675;border-left:1px solid #d8b675;width:12px;height:12px;position:absolute;top:-7px;left:25px;transform:rotate(45deg)}.treatment-bubble strong{color:#8a642f;font-size:15px}.treatment-bubble p{margin:5px 0 0;font-size:14px;line-height:1.6}.deposit-switch{-webkit-appearance:none;appearance:none;cursor:pointer;background:#e6ddd8;border-radius:20px;width:48px;height:28px;padding:0;position:relative}.deposit-switch:before{content:"";background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .15s;position:absolute;top:3px;left:3px;box-shadow:0 1px 4px #0002}.deposit-switch:checked{background:#9b7340;border-color:#9b7340}.deposit-switch:checked:before{transform:translate(20px)}.photo-link{color:#946626;text-underline-offset:3px;margin:9px 0;font-size:14px;text-decoration:underline;display:inline-block}input[type=file]{width:100%;font-size:14px}input[type=file]::file-selector-button{color:#765629;background:#f4e5d3;border:1px solid #d6b171;border-radius:7px;margin-right:10px;padding:8px}.companion-fields{background:#fff7f3;border:1px solid #ddbb84;border-radius:14px;gap:17px;margin:8px 0;padding:22px 18px;display:grid}.companion-fields legend{color:#7c485c;padding:0 9px;font-family:Playfair Display,Georgia,serif;font-size:23px}.group-title{margin:9px 0 0;font-size:23px}.companion-agenda{border-top:1px dashed #ddc8a5;margin-top:12px;padding-top:10px}.companion-agenda strong{font-size:14px}.companion-agenda .photo-link{display:block}.history-item{border-top:1px solid #ead6b8;padding:17px 0}.history-item p{margin:8px 0;font-size:14px}.record>button{margin-top:8px;margin-right:8px}body{background-color:#fff6f7;background-image:linear-gradient(#fff6f7e8,#fff6f7ef),url(/lisse-flores-magnolias.png);background-position:100% 0;background-size:cover;background-attachment:fixed}aside{background-color:#fff7f4;background-image:linear-gradient(#fffaf5f2 55%,#fff6f3c9),url(/lisse-flores-magnolias.png);background-position:50%,100% 100%;background-repeat:no-repeat;background-size:cover,auto 260px}.welcome{background-image:linear-gradient(90deg,#f8e7eefa 0%,#f8e7eeed 43%,#f8e7ee30 80%),url(/lisse-flores-magnolias.png);background-position:50%,100%;background-size:cover;min-height:230px}.welcome-date{background:#fff8f0e8;border:1px solid #e3c692;border-radius:13px;padding:16px}.booking-card{background-image:linear-gradient(90deg,#f9e9eefa,#faecded9),url(/lisse-flores-magnolias.png);background-position:50%,100%;background-size:cover}.booking .brand{background-image:linear-gradient(90deg,#fff9f6f5,#fff5f29c),url(/lisse-flores-magnolias.png);background-position:50%,100%;background-size:cover;border:1px solid #dfbd86;border-radius:21px;min-height:145px;padding:21px 18px}.dialog{background-image:linear-gradient(#fff9f7fa,#fff9f7f5),url(/lisse-flores-magnolias.png);background-position:100% 0;background-size:cover}.treatment-bubble{background-image:linear-gradient(90deg,#f9e8edfa,#fcf0dbe8),url(/lisse-flores-magnolias.png);background-position:100%;background-size:cover}.card{background-color:#fffafbef}.record{background-image:linear-gradient(145deg,#fffdfa,#fff1f5)}button,.button{background:linear-gradient(115deg,#a26078,#914d67)}.secondary{color:#885f2b;background:#fff9f3}nav button,.close{background:0 0}nav button.selected{background:linear-gradient(110deg,#f3d8e3,#f7e8d7)}@media (max-width:700px){.welcome{background-image:linear-gradient(90deg,#f8e7eef5,#f8e7eeaf),url(/lisse-flores-magnolias.png);min-height:210px}.booking .brand{padding:17px 12px;font-size:23px}.booking .salon-logo{width:74px;height:74px}}.welcome{background-image:linear-gradient(90deg,#f8e7eefa 0%,#f8e7eee8 40%,#f8e7ee20 75%),url(/lisse-flores-magnolias.png);background-position:50%,100%;background-repeat:no-repeat;background-size:cover,auto 110%}aside{background-image:linear-gradient(#fffaf5f7 50%,#fff6f350),url(/lisse-flores-magnolias.png);background-position:50%,100% 100%;background-repeat:no-repeat;background-size:cover,auto 265px}.booking-card{background-image:linear-gradient(90deg,#f9e9eefa 0%,#faecdebc 55%,#faecde35),url(/lisse-flores-magnolias.png);background-position:50%,100%;background-repeat:no-repeat;background-size:cover,auto 110%}.booking .brand{background-image:linear-gradient(90deg,#fff9f6f5 0%,#fff5f2c9 50%,#fff5f245),url(/lisse-flores-magnolias.png);background-position:50%,100%;background-repeat:no-repeat;background-size:cover,auto 110%}.treatment-bubble{background-position:50%,right 58%;background-repeat:no-repeat;background-size:cover,auto 150%}@media (max-width:700px){.welcome{background-image:linear-gradient(90deg,#f8e7eef5 0%,#f8e7eec2 55%,#f8e7ee40),url(/lisse-flores-magnolias.png);background-position:50%,100%;background-size:cover,auto 110%}.booking .brand{background-position:50%,100%;background-size:cover,auto 115%}aside{background-position:50%,100%;background-size:cover,auto 220px}}:root{--lisse-nude:#f7eee4;--lisse-cream:#fffbf5;--lisse-gold:#92702f;--lisse-gold-light:#d6b779;--lisse-ink:#4c3c2b}body{color:var(--lisse-ink);background-color:var(--lisse-nude);background-image:linear-gradient(#f7eee4e8,#f7eee4ef),url(/lisse-flores-magnolias.png)}aside{background-color:#fbf3e8;background-image:linear-gradient(#fff9eff5 50%,#f7e9d350),url(/lisse-flores-magnolias.png);border-color:#dec79e}h1,h2,h3{color:#6e542c}.brand,.booking .brand{color:#896521}.eyebrow{color:#886321}.brand small,small,.hint,.muted{color:#7b6a55}button,.button{color:#fffdf7;background:linear-gradient(115deg,#96702e,#7d5c24);box-shadow:0 3px 9px #8b67221c}button:focus-visible{outline-color:#a37b32}.button:focus-visible{outline-color:#a37b32}.secondary{color:#75551f;box-shadow:none;background:#fffaf0;border-color:#cbaa68}nav button{color:#79664e;box-shadow:none;background:0 0}nav button.selected{color:#705018;background:linear-gradient(110deg,#ebd8b7,#f5e8d4);box-shadow:inset 3px 0 #ab843c}.close{color:#79664e;box-shadow:none;background:0 0}.avatar{color:#78551c;background:#eddfc7;border-color:#c6a66c}.sidebar-footer{color:#736047}.card{background-color:#fffbf5;border-color:#e0cba6;box-shadow:0 5px 18px #865a3210}.metrics .card{border-top-color:#bf9951}.metrics span{color:#7d6b50}.metrics strong{color:#79571e}.metrics small{color:#8a795f}.welcome{background-color:#f2e2cb;background-image:linear-gradient(90deg,#f3e4d1fa 0%,#f3e4d1e8 40%,#f3e4d120 75%),url(/lisse-flores-magnolias.png);border-color:#cfad70}.welcome h2{color:#705228}.welcome p{color:#7a6549}.welcome-date{color:#846121;background:#fff8eae8;border-color:#d6b779}.booking-card{background-color:#f3e4cf;background-image:linear-gradient(90deg,#f5e8d5fa 0%,#f3e1c5bc 55%,#f3e1c535),url(/lisse-flores-magnolias.png);border-color:#cba565}.booking-card h2{color:#715125}.booking .brand{background-color:#f9eddb;background-image:linear-gradient(90deg,#fff9eef5 0%,#f8ebd5c9 50%,#f8ebd545),url(/lisse-flores-magnolias.png);border-color:#c8a363}.booking h1{color:#725327}.dialog{background-color:#fffaf0;background-image:linear-gradient(#fff9effa,#fff9eff5),url(/lisse-flores-magnolias.png);border-color:#c6a363}.overlay{background:#3d301e80}input,select,textarea{color:#4c3c2b;background:#fffdf8;border-color:#d8c3a3}input:focus,select:focus,textarea:focus{outline-color:#ad853d}input[type=file]::file-selector-button{color:#74551f;background:#eddbba;border-color:#c6a264}.treatment-bubble{color:#715c3e;background-color:#f1e3cd;background-image:linear-gradient(90deg,#f5e8d6fa,#f6e7cde8),url(/lisse-flores-magnolias.png);border-color:#d1b078}.treatment-bubble:before{background:#f5e8d6;border-color:#d1b078}.treatment-bubble strong{color:#79581e}.record{background:linear-gradient(145deg,#fffdf7,#f5e8d8);border-color:#ddc49c}.record-icon{color:#94702d;background:#eee0c8;border-color:#d9bd86}.appointment{border-color:#e8dac5}.person span,.person small,.amount span,.time span{color:#827158}.time{color:#89641f}.badge{color:#755820;background:#eee0c5;border-color:#d5b77c}.request{color:#7f5a1a;background:#f4e4c4;border-color:#d8b773}.companion-agenda{border-color:#d5bc8f}.companion-fields{background:#f9efdf;border-color:#d2b078}.companion-fields legend{color:#7b5b28}.group-title{color:#755528}.history-item,.settings hr{border-color:#dfc9a4}footer{color:#8a7553}.empty{color:#8a785e}.empty h3{color:#705b3b}.photo-link{color:#805b18}@media (max-width:700px){aside{border-bottom-color:#cfb07b}.welcome{background-image:linear-gradient(90deg,#f3e4d1f5 0%,#f3e4d1c2 55%,#f3e4d140),url(/lisse-flores-magnolias.png)}}.install-button{z-index:5;font-size:14px;position:fixed;bottom:16px;right:16px;box-shadow:0 4px 18px #46341726}.setup-checklist button{margin:6px 8px 0 0}.app main{padding-bottom:85px}.booking{padding-bottom:95px}@media (max-width:700px){.install-button{max-width:calc(100% - 24px);bottom:12px;right:12px}}.header-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}@media (max-width:700px){.header-actions{justify-content:flex-end;gap:7px}.header-actions button{padding:10px;font-size:13px}}
