:root{--bg:#f6f1ea;--surface:#fffaf5;--text:#261f1d;--muted:#7d6d64;--primary:#2e5d50;--line:#ead7c8}*{box-sizing:border-box}body{margin:0;background:linear-gradient(135deg,#f7f1e9,#eef5ee);font-family:Inter,Arial,sans-serif;color:var(--text)}.wrap{max-width:920px;margin:28px auto;padding:0 18px}.panel{background:rgba(255,255,255,.84);border:1px solid var(--line);border-radius:22px;padding:28px;box-shadow:0 24px 70px rgba(80,55,35,.09);margin-bottom:22px}.eyebrow{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:#a06d57;font-weight:800}h1{font-size:42px;line-height:.98;margin:8px 0 12px}p{color:var(--muted);line-height:1.6}.form{display:grid;gap:14px}.form label{font-weight:800;font-size:13px}.form input,.form textarea,.form select{width:100%;padding:14px 16px;border:1px solid #d8bdaa;border-radius:13px;background:#fff;color:#211d1b}.form textarea{min-height:110px}button,.btn{border:0;border-radius:999px;background:var(--primary);color:#fff;padding:14px 22px;font-weight:900;cursor:pointer;text-decoration:none;display:inline-flex;justify-content:center}.notice{background:#edf8f2;border:1px solid #c7e9d3;border-radius:16px;padding:14px;margin-bottom:18px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.result{display:flex;gap:12px;flex-wrap:wrap;margin-top:16px}@media(max-width:760px){.grid2{grid-template-columns:1fr}h1{font-size:34px}}
.warn{background:#fff1e8;border:1px solid #e2a77b;padding:12px 14px;border-radius:14px;color:#6d341b}.ok{background:#eef9f1;border:1px solid #9ed3aa;padding:12px 14px;border-radius:14px;color:#245834}

.generation-overlay{position:fixed;inset:0;z-index:9999;background:rgba(20,16,14,.44);backdrop-filter:blur(18px);display:none;align-items:center;justify-content:center;padding:24px}.generation-overlay.show{display:flex}.generation-card{width:min(620px,100%);border-radius:34px;background:linear-gradient(135deg,#fffaf5,#f3e8df);border:1px solid rgba(108,77,61,.18);box-shadow:0 40px 140px rgba(35,24,20,.28);padding:42px;text-align:center;color:#251d1b}.generation-card h2{font-size:34px;line-height:1.05;margin:14px 0}.generation-card p{font-size:17px;color:#6f5d55}.orb{width:92px;height:92px;border-radius:50%;margin:0 auto 18px;background:conic-gradient(from 180deg,#2d5d50,#c99f8a,#2d5d50);padding:4px;animation:spin 1.4s linear infinite}.orb span{display:block;width:100%;height:100%;border-radius:50%;background:#fffaf5;position:relative}.orb span:after{content:'AI';position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-weight:950;color:#2d5d50}.progress{height:10px;border-radius:999px;background:rgba(45,93,80,.13);overflow:hidden;margin:24px 0}.progress i{display:block;height:100%;width:12%;border-radius:999px;background:#2d5d50;transition:width .7s ease}.generation-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;list-style:none;padding:0;margin:0 0 16px}.generation-steps li{font-size:12px;font-weight:900;color:#9a8176;background:rgba(255,255,255,.62);padding:10px;border-radius:14px}.generation-steps li.active{color:#fff;background:#2d5d50}.generation-card small{color:#8a746b}.note{font-size:14px;color:#7d6d66}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:720px){.generation-card{padding:28px}.generation-steps{grid-template-columns:1fr 1fr}.generation-card h2{font-size:27px}}

/* v8 Website Creation Wizard */
.wizard-body{min-height:100vh;background:radial-gradient(circle at 12% 18%,#f4dccd 0,transparent 32%),radial-gradient(circle at 88% 12%,#dfece3 0,transparent 34%),linear-gradient(135deg,#f8f1e9,#edf3ef);font-family:Inter,Arial,sans-serif;color:#241d1a}.wizard-shell{width:min(1180px,calc(100% - 32px));min-height:calc(100vh - 48px);margin:24px auto;display:grid;grid-template-columns:.88fr 1.12fr;gap:22px}.wizard-brand{border-radius:34px;background:linear-gradient(145deg,#1f352f,#22332d 46%,#6b5242);color:#fff;padding:44px;display:flex;flex-direction:column;justify-content:space-between;box-shadow:0 38px 120px rgba(41,32,28,.18);overflow:hidden;position:relative}.wizard-brand:before{content:"";position:absolute;width:360px;height:360px;border-radius:50%;background:rgba(255,255,255,.09);right:-140px;top:-120px}.brand-mark{width:58px;height:58px;border-radius:20px;background:#fff;color:#27443a;display:flex;align-items:center;justify-content:center;font-weight:950;letter-spacing:-.08em}.wizard-brand h1{font-size:clamp(42px,5vw,72px);line-height:.88;letter-spacing:-.075em;margin:90px 0 22px;position:relative}.wizard-brand p{font-size:19px;line-height:1.65;color:rgba(255,255,255,.76);max-width:520px}.brand-note{margin-top:auto;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.08);border-radius:24px;padding:24px;display:grid;gap:8px;position:relative}.brand-note b{font-size:15px}.brand-note span{font-size:14px;line-height:1.55;color:rgba(255,255,255,.72)}.wizard-card{border-radius:34px;background:rgba(255,255,255,.82);backdrop-filter:blur(24px);border:1px solid rgba(152,111,86,.18);box-shadow:0 30px 120px rgba(41,32,28,.12);padding:34px;display:flex;flex-direction:column}.wizard-top{display:grid;gap:20px;margin-bottom:28px}.wizard-top h2{font-size:clamp(32px,4vw,54px);line-height:.95;letter-spacing:-.06em;margin:6px 0 0}.step-label,.success-kicker{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:#a8735b;font-weight:950}.progress-line{height:10px;border-radius:999px;background:#eadbd0;overflow:hidden}.progress-line i{display:block;height:100%;width:20%;border-radius:999px;background:#2e5d50;transition:width .28s ease}.wizard-step{display:none;animation:fadeIn .24s ease}.wizard-step.active{display:grid;gap:18px}.upload-row{display:grid;grid-template-columns:230px 1fr;gap:18px}.photo-upload{border:1px dashed #c9ad98;border-radius:26px;background:#fffaf6;min-height:246px;padding:20px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:10px;cursor:pointer}.photo-upload input{display:none}.photo-preview{width:112px;height:112px;border-radius:50%;background:#f0e2d6;color:#a56e57;display:flex;align-items:center;justify-content:center;font-size:42px;font-weight:300;overflow:hidden}.photo-preview img{width:100%;height:100%;object-fit:cover}.photo-upload strong{font-size:16px}.photo-upload small{font-size:13px;color:#806f68;line-height:1.45}.fields{display:grid;gap:14px}.wizard-card label{display:grid;gap:8px;font-size:13px;font-weight:900;color:#5c4d47}.wizard-card input,.wizard-card textarea,.wizard-card select{width:100%;border-radius:17px;border:1px solid #dcc5b4;background:#fff;padding:16px 17px;font-size:16px;color:#241d1a}.wizard-card textarea{min-height:128px;resize:vertical}.step-help{font-size:17px;color:#76655d;margin:0 0 4px;line-height:1.6}.choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.choice-grid label{position:relative}.choice-grid input,.style-card input{position:absolute;opacity:0;pointer-events:none}.choice-grid span{min-height:70px;border-radius:20px;background:#fff;border:1px solid #dec9ba;padding:20px;display:flex;align-items:center;font-size:18px;font-weight:950;transition:.18s ease}.choice-grid small{display:block;margin-top:4px;color:#786a63}.formats label{border-radius:22px;background:#fff;border:1px solid #dec9ba;padding:20px}.formats span{border:0;padding:0;min-height:0;background:transparent}.choice-grid input:checked+span,.formats input:checked+span{color:#2e5d50}.choice-grid label:has(input:checked),.style-card:has(input:checked){outline:3px solid rgba(46,93,80,.18);border-color:#2e5d50;background:#f3faf5}.approach-field{margin-top:4px}.style-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.style-card{min-height:168px;border-radius:24px;border:1px solid #dec9ba;background:#fff;padding:18px;display:flex;flex-direction:column;justify-content:flex-end;gap:8px;cursor:pointer;position:relative;overflow:hidden}.style-card:before{content:"";position:absolute;left:16px;right:16px;top:16px;height:68px;border-radius:18px;background:linear-gradient(135deg,#ead6c9,#fff)}.style-card b,.style-card span{position:relative}.style-card b{font-size:16px}.style-card span{font-size:13px;line-height:1.4;color:#75655d}.style-card.calm:before{background:linear-gradient(135deg,#dce9dc,#fff8ef)}.style-card.nordic:before{background:linear-gradient(135deg,#f7f7f2,#d7dfda)}.style-card.clinic:before{background:linear-gradient(135deg,#dde8ec,#ffffff)}.style-card.wellness:before{background:linear-gradient(135deg,#f0ccc2,#fff7f3)}.style-card.private:before{background:linear-gradient(135deg,#e6c485,#fff5df)}.review-box{border-radius:28px;background:#fffaf6;border:1px solid #dec9ba;padding:28px}.review-box h3{font-size:30px;letter-spacing:-.04em;margin:0 0 10px}.review-list{display:grid;gap:12px;margin-top:20px}.review-list div{display:flex;justify-content:space-between;gap:18px;border-radius:16px;background:#fff;padding:14px 16px}.review-list b{color:#6e5a52}.review-list span{text-align:right;font-weight:850}.wizard-actions{display:flex;justify-content:space-between;gap:12px;margin-top:auto;padding-top:28px}.wizard-actions button,.success-card .btn,.btn-light{min-height:54px;border:0;border-radius:999px;background:#2e5d50;color:#fff;padding:15px 24px;font-weight:950;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.wizard-actions .secondary,.btn-light{background:#fff;color:#2e5d50;border:1px solid #d8c3b3;box-shadow:none}.wizard-actions #submitBtn{display:none;background:#1f352f}.success-body{min-height:100vh;background:linear-gradient(135deg,#f8f1e9,#edf3ef);display:flex;align-items:center;justify-content:center;padding:24px}.success-shell{width:min(760px,100%)}.success-card{background:rgba(255,255,255,.88);border:1px solid #e2cfc0;border-radius:34px;padding:44px;text-align:center;box-shadow:0 36px 120px rgba(41,32,28,.13)}.success-icon{width:74px;height:74px;border-radius:50%;background:#2e5d50;color:#fff;display:flex;align-items:center;justify-content:center;margin:0 auto 20px;font-size:34px;font-weight:950}.success-card h1{font-size:clamp(42px,6vw,72px);line-height:.9;letter-spacing:-.075em;margin:12px 0}.success-card p{font-size:18px;color:#71635d;line-height:1.65}.site-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:26px 0}.site-summary div{border-radius:18px;background:#fffaf6;border:1px solid #e2cfc0;padding:16px;display:grid;gap:6px}.site-summary b{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#9d715e}.site-summary span{font-weight:950}.result-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.soft-warning{margin:18px 0;border-radius:18px;background:#fff4e8;border:1px solid #e9c6a2;color:#73461f;padding:14px 16px;text-align:left}.generation-card h2{font-size:34px;line-height:1.05;margin:14px 0}.generation-steps{grid-template-columns:repeat(5,1fr)}@keyframes fadeIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(max-width:980px){.wizard-shell{grid-template-columns:1fr}.wizard-brand{padding:30px}.wizard-brand h1{margin:44px 0 18px}.style-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.wizard-shell{width:100%;margin:0;min-height:100vh}.wizard-brand{border-radius:0}.wizard-card{border-radius:28px 28px 0 0;padding:24px}.upload-row,.grid2,.choice-grid{grid-template-columns:1fr}.style-grid{grid-template-columns:1fr}.site-summary{grid-template-columns:1fr}.generation-steps{grid-template-columns:1fr 1fr}.review-list div{display:grid}.review-list span{text-align:left}}
/* v8.2 language-first wizard */
.language-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:8px}.language-grid label{position:relative;display:block}.language-grid input{position:absolute;opacity:0;pointer-events:none}.language-grid span{min-height:148px;border-radius:26px;background:#fff;border:1px solid #dec9ba;padding:24px;display:flex;flex-direction:column;justify-content:flex-end;gap:8px;font-size:20px;font-weight:950;transition:.18s ease;box-shadow:0 16px 38px rgba(45,34,27,.06)}.language-grid small{display:block;font-size:13px;line-height:1.4;color:#75655d;font-weight:750}.language-grid label:has(input:checked) span{border-color:#2e5d50;background:#f3faf5;box-shadow:0 18px 48px rgba(46,93,80,.14);outline:3px solid rgba(46,93,80,.16)}@media(max-width:800px){.language-grid{grid-template-columns:1fr}}

/* V9 Dashboard Foundation */
.dash-body{margin:0;background:#f6f1ea;color:#241f1b;font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;display:grid;grid-template-columns:280px 1fr;min-height:100vh}.dash-sidebar{background:#211c18;color:#fff;padding:28px 22px;position:sticky;top:0;height:100vh;box-sizing:border-box}.dash-logo{display:flex;gap:12px;align-items:center;color:#fff;text-decoration:none;margin-bottom:30px}.dash-logo span{width:42px;height:42px;border-radius:16px;background:#d9b87f;color:#211c18;display:grid;place-items:center;font-weight:900}.dash-logo b{font-size:17px}.dash-nav{display:grid;gap:8px}.dash-nav a{color:rgba(255,255,255,.72);text-decoration:none;padding:13px 14px;border-radius:16px;font-weight:750}.dash-nav a:hover,.dash-nav a.active{background:rgba(255,255,255,.1);color:#fff}.dash-main{padding:34px;max-width:1180px;width:100%;box-sizing:border-box}.dash-top{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:24px}.dash-top span{color:#8d7a6a;font-weight:800;text-transform:uppercase;font-size:12px;letter-spacing:.12em}.dash-top h1{margin:5px 0 0;font-size:34px}.dash-open,.dash-btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:16px;padding:13px 18px;background:#2d221b;color:#fff;text-decoration:none;font-weight:850;cursor:pointer}.dash-hero-panel{background:linear-gradient(135deg,#fffaf2,#eadbc2);border:1px solid rgba(70,50,31,.12);border-radius:32px;padding:28px;display:flex;justify-content:space-between;gap:22px;align-items:center;box-shadow:0 24px 70px rgba(52,38,24,.08);margin-bottom:18px}.dash-hero-panel span{color:#927a5d;font-weight:850;text-transform:uppercase;font-size:12px;letter-spacing:.12em}.dash-hero-panel h2{font-size:30px;margin:7px 0}.dash-status{display:grid;gap:12px;justify-items:end}.dash-status b{color:#2e6b4f}.dash-status a{color:#2d221b;font-weight:850}.dash-grid{display:grid;gap:16px}.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:18px}.stats-grid article,.dash-card,.dash-actions a{background:#fff;border:1px solid rgba(65,48,35,.1);border-radius:24px;box-shadow:0 18px 55px rgba(52,38,24,.06)}.stats-grid article{padding:22px}.stats-grid b{font-size:24px;display:block}.stats-grid span{color:#8d7a6a;font-weight:700}.dash-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:18px}.dash-actions a{padding:20px;color:#251f1a;text-decoration:none;font-weight:850}.dash-card{padding:24px;margin-bottom:18px}.dash-card h2,.dash-card h3{margin-top:0}.dash-card code{display:block;background:#f5efe6;border-radius:15px;padding:14px;overflow:auto}.settings-form label{display:grid;gap:8px;font-weight:800}.settings-form input,.settings-form textarea{border:1px solid rgba(40,30,20,.14);border-radius:14px;padding:13px 14px;font:inherit;background:#fff}.settings-form textarea{min-height:110px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:18px}.form-grid .wide{grid-column:1/-1}.dash-table{width:100%;border-collapse:collapse}.dash-table th,.dash-table td{text-align:left;border-bottom:1px solid #eee3d7;padding:13px;vertical-align:top}.dash-table th{font-size:12px;color:#8d7a6a;text-transform:uppercase;letter-spacing:.08em}.dash-list{display:grid;gap:12px}.dash-list article{display:flex;justify-content:space-between;gap:20px;align-items:center;border:1px solid rgba(65,48,35,.1);border-radius:18px;padding:16px;background:#fffaf5}.dash-list p{margin:.35rem 0 0;color:#75685c}.dash-list a{font-weight:850;color:#2d221b}.muted{color:#827367}.empty-state{text-align:center;padding:60px 30px}@media(max-width:900px){.dash-body{grid-template-columns:1fr}.dash-sidebar{position:relative;height:auto}.stats-grid,.dash-actions,.form-grid{grid-template-columns:1fr}.dash-top,.dash-hero-panel{align-items:flex-start;flex-direction:column}.dash-status{justify-items:start}}

/* v9.1 site management */
.dash-card-head{display:flex;align-items:center;justify-content:space-between;gap:18px}.button-row{display:flex;gap:10px;flex-wrap:wrap}.dash-btn.secondary{background:#fff;color:#2d221b;border:1px solid rgba(55,38,27,.16)}.row-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.row-actions a{border-radius:999px;padding:9px 13px;background:#f4eadf;text-decoration:none;font-size:13px}.row-actions a.danger{background:#fff0ed;color:#9a3022}.manage-list article{align-items:flex-start}.tall-textarea{min-height:260px!important}.owner-toolbar{position:fixed;right:18px;bottom:18px;z-index:9999;display:flex;gap:10px;align-items:center;background:rgba(22,18,15,.88);color:#fff;border:1px solid rgba(255,255,255,.15);box-shadow:0 18px 50px rgba(0,0,0,.2);backdrop-filter:blur(12px);padding:10px 12px;border-radius:999px;font-family:Inter,Arial,sans-serif}.owner-toolbar a{color:#fff;text-decoration:none;font-weight:900;font-size:14px}.owner-toolbar span{width:30px;height:30px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--accent,#d9b7a5);color:#211d18;font-weight:950}@media(max-width:720px){.dash-card-head{align-items:flex-start;flex-direction:column}.row-actions{width:100%}}


/* v9.3 dashboard action buttons polish */
.row-actions{display:flex!important;gap:8px!important;align-items:center!important;justify-content:flex-end!important;flex-wrap:wrap!important;min-width:260px!important;}
.row-actions a,.row-actions .dash-mini-btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:38px!important;padding:9px 14px!important;border-radius:999px!important;background:#f4eadf!important;color:#2d221b!important;text-decoration:none!important;font-size:13px!important;font-weight:900!important;line-height:1!important;border:1px solid rgba(55,38,27,.08)!important;white-space:nowrap!important;}
.row-actions a.danger,.row-actions .danger{background:#fff0ed!important;color:#9a3022!important;}
.manage-list article{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:20px!important;}
@media(max-width:760px){.row-actions{justify-content:flex-start!important;min-width:0!important}.manage-list article{align-items:flex-start!important;flex-direction:column!important}}

/* v9.6 integration settings */
.dash-separator{border:0;border-top:1px solid #eadfd4;margin:22px 0}.integration-card{display:flex;justify-content:space-between;align-items:center;gap:20px}.integration-card p{color:#7d6e63;line-height:1.6;max-width:680px}.integration-card code{display:inline-flex!important;width:auto;background:#f4eadf;color:#3a2b22;border-radius:999px;padding:10px 14px;font-weight:900}.integration-ok{display:inline-flex;margin-top:8px;color:#2e6b4f}.integration-warn{display:inline-flex;background:#fff3e7;color:#7c4d20;border:1px solid #edd3ba;border-radius:999px;padding:10px 14px;font-weight:850}@media(max-width:760px){.integration-card{align-items:flex-start;flex-direction:column}}

/* v10.1 payment-link workflow */
.payment-settings-block{border-radius:22px;background:#fffaf6;border:1px solid #eadfd4;padding:20px;margin-bottom:18px}.checkbox-row{display:flex!important;align-items:center!important;gap:10px!important;background:#fff;border:1px solid rgba(40,30,20,.12);border-radius:14px;padding:13px 14px}.checkbox-row input{width:auto!important}.booking-payment-actions{display:grid;gap:12px;margin-top:18px}.payment-btn{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:var(--primary,#2e5d50);color:#fff;text-decoration:none;font-weight:950;padding:14px 22px}.booking-status-pill{display:inline-flex;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:900;background:#f4eadf;color:#4d3b30}.booking-status-pill.pending_payment{background:#fff3e2;color:#8a5115}.booking-status-pill.confirmed,.booking-status-pill.calendar_created{background:#edf8f1;color:#246143}.dash-inline-form{display:inline}.dash-mini-btn{border:0;cursor:pointer}

/* ABM hotfix: clean-url dashboard asset safety */
.service-admin-price{display:inline-flex;margin-top:8px;border-radius:999px;background:#f4eadf;padding:7px 10px;font-weight:900;color:#2d221b}.dash-body a{overflow-wrap:anywhere}.dash-table{width:100%;border-collapse:separate;border-spacing:0 10px}.dash-table th{text-align:left;font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#8d7a6a}.dash-table td{background:#fffaf5;border-top:1px solid rgba(65,48,35,.1);border-bottom:1px solid rgba(65,48,35,.1);padding:13px;vertical-align:top}.dash-table td:first-child{border-left:1px solid rgba(65,48,35,.1);border-radius:16px 0 0 16px}.dash-table td:last-child{border-right:1px solid rgba(65,48,35,.1);border-radius:0 16px 16px 0}
