@import "https://fonts.googleapis.com/css2?family=Playfair+Display:wght@500;600;700&family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap";:root{color:#f5f7fa;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--bg:#071525;--panel:#0c1e2ed6;--panel-strong:#0f2234;--line:#ccdae824;--text:#f5f7fa;--muted:#9cabbb;--eepc:#caa45d;--gold-soft:#e5ca85;--nwpt:#4f8c64;--blue:#2c68c8;--radius:8px;--display:"Playfair Display", Georgia, serif;background:#071525;font-family:Plus Jakarta Sans,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(circle at 18% 0,#caa45d29,#0000 28rem),linear-gradient(145deg,#040911 0%,#071525 48%,#06111b 100%);min-width:320px;min-height:100vh;margin:0}button,input,textarea,select{font:inherit}button,a{color:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}a{text-decoration:none}.topbar{z-index:5;justify-content:space-between;align-items:center;width:min(1180px,100% - 40px);margin:0 auto;padding:24px 0;display:flex;position:relative}.topbar nav,.segmented{align-items:center;gap:8px;display:flex}.topbar nav a,.segmented button{border:1px solid var(--line);color:var(--muted);background:#0a18259e;border-radius:999px;padding:8px 12px;font-size:12px;font-weight:800;transition:border-color .18s,color .18s,background .18s}.topbar nav a:hover,.segmented button:hover{color:var(--text);background:#caa45d17;border-color:#caa45d6b}.segmented button.active.eepc,.eepc .time-list .selected,.eepc .calendar .selected{background:var(--eepc);border-color:var(--eepc);color:#0a1115}.segmented button.active.nwpt,.nwpt .time-list .selected,.nwpt .calendar .selected{background:var(--nwpt);border-color:var(--nwpt);color:#f7fff7}.brand-mark{align-items:center;gap:12px;min-width:0;display:flex}.brand-mark strong{color:var(--eepc);font-family:var(--display);letter-spacing:0;font-size:22px}.nwpt .brand-mark strong{color:#74b785}.brand-mark span{color:var(--muted);max-width:190px;font-size:11px;line-height:1.15}.public-shell{isolation:isolate;background:linear-gradient(180deg, #07152557, #071525f0 42%, #071525 100%), var(--hero-bg) center top / cover no-repeat, var(--bg);min-height:100vh;position:relative;overflow:hidden}.public-shell:before{content:"";z-index:-2;background:linear-gradient(90deg,#071525eb,#071525bd,#071525f5),radial-gradient(circle at 72% 12%,#caa45d33,#0000 24rem);position:absolute;inset:0}.public-shell:after{content:"";z-index:-1;opacity:.035;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:absolute;inset:0}.booking-hero{z-index:1;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:32px;width:min(1180px,100% - 40px);margin:58px auto 34px;display:grid;position:relative}.booking-hero__content{max-width:820px}.booking-hero h1{max-width:880px;color:var(--text);font-family:var(--display);letter-spacing:0;margin:0;font-size:clamp(42px,6vw,78px);font-weight:700;line-height:.98}.booking-hero h1 span{color:#0000;background:linear-gradient(135deg, var(--eepc), var(--gold-soft));-webkit-background-clip:text;background-clip:text}.booking-hero p:not(.micro){color:#f5f7fab8;max-width:720px;margin:24px 0 0;font-size:clamp(16px,2vw,19px);line-height:1.85}.booking-hero__aside{border-radius:var(--radius);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#081724b8;border:1px solid #caa45d2e;gap:10px;min-width:184px;padding:18px;display:grid;box-shadow:0 24px 70px #00000047}.booking-hero__aside span{color:#f5f7fac7;letter-spacing:0;font-size:12px;font-weight:800}.booking-grid{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#caa45d24;border:1px solid #caa45d26;border-radius:12px;grid-template-columns:minmax(220px,.8fr) minmax(300px,1.15fr) minmax(176px,.62fr) minmax(300px,.95fr);gap:1px;width:min(1180px,100% - 40px);margin:0 auto 86px;display:grid;overflow:hidden;box-shadow:0 34px 100px #00000073,0 0 60px #caa45d0d}.service-panel,.calendar-panel,.times-panel,.details-panel,.ops-panel,.login-card,.confirmation-card{background:linear-gradient(#0e2031f2,#071420f5)}.service-panel,.calendar-panel,.times-panel,.details-panel{min-height:560px;padding:24px}.micro{color:var(--eepc);text-transform:uppercase;letter-spacing:.24em;margin:0 0 8px;font-size:11px;font-weight:800}h1,h2,p{margin-top:0}h1{font-family:var(--display);letter-spacing:0;margin-bottom:8px;font-size:clamp(30px,3.6vw,52px);line-height:.95}h2{margin-bottom:0;font-size:18px;line-height:1.2}.panel-heading{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:22px;display:flex}.panel-heading span{color:var(--muted);font-size:12px}.calendar-panel .panel-heading{grid-template-columns:minmax(0,1fr) auto;display:grid}.calendar-panel .panel-heading span{text-align:right}.service-card{border:1px solid color-mix(in srgb, var(--accent) 42%, transparent);border-radius:var(--radius);text-align:left;width:100%;color:var(--text);background:linear-gradient(135deg, color-mix(in srgb, var(--accent) 20%, transparent), transparent 72%), #ffffff09;gap:8px;padding:18px;display:grid;box-shadow:inset 0 1px #ffffff0a}.service-card span,.host-card strong{font-weight:800}.service-card small,.service-card p,.host-card span{color:var(--muted);font-size:12px;line-height:1.45}.host-card{border-top:1px solid var(--line);align-items:center;gap:12px;margin-top:26px;padding-top:24px;display:flex}.host-card div{gap:3px;display:grid}.avatar{color:#10160f;background:linear-gradient(135deg,#f5dfac,#c08b3f);border-radius:50%;place-items:center;width:40px;height:40px;font-size:12px;font-weight:900;display:grid}.calendar{grid-template-columns:repeat(7,minmax(30px,1fr));gap:9px;display:grid}.calendar b{color:var(--muted);text-align:center;font-size:11px}.calendar>span{min-height:36px}.calendar button,.time-list button{border:1px solid var(--line);min-height:40px;color:var(--text);background:#ffffff06;border-radius:6px;font-size:13px;font-weight:750;transition:transform .18s,border-color .18s,background .18s}.calendar button:hover,.time-list button:hover{background:#caa45d14;border-color:#caa45d61;transform:translateY(-1px)}.time-list{gap:10px;display:grid}.time-list button{border-color:var(--line);background:#ffffff0b}label{color:var(--muted);gap:7px;margin-bottom:14px;font-size:12px;font-weight:750;display:grid}input,textarea,select{border:1px solid var(--line);width:100%;color:var(--text);background:#030a1180;border-radius:6px;outline:none;padding:11px 12px;transition:border-color .18s,background .18s,box-shadow .18s}input:focus,textarea:focus,select:focus{background:#030a11b8;border-color:#caa45d8f;box-shadow:0 0 0 3px #caa45d1f}textarea{resize:vertical;min-height:82px}.primary{background:var(--accent,var(--eepc));color:#0c1111;border:0;border-radius:6px;width:100%;padding:14px 16px;font-size:13px;font-weight:900;transition:transform .18s,box-shadow .18s;box-shadow:0 0 30px #caa45d29,0 14px 30px #00000038}.primary:not(:disabled):hover{transform:translateY(-1px);box-shadow:0 0 42px #caa45d3d,0 18px 38px #00000047}.primary:disabled{cursor:not-allowed;opacity:.65}.confirm-shell,.login-shell{place-items:center;min-height:100vh;padding:24px;display:grid}.confirmation-card,.login-card,.manage-card{border:1px solid var(--line);border-radius:var(--radius);text-align:center;width:min(460px,100%);padding:34px;box-shadow:0 28px 80px #00000057}.login-card{text-align:left}.login-card p,.confirmation-card p,.manage-card p{color:var(--muted);line-height:1.6}.admin-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.logout-button{border:1px solid var(--line);color:var(--muted);background:#ffffff09;border-radius:6px;padding:12px 14px;font-size:12px;font-weight:850}.save-status{color:#74b785;text-transform:uppercase;border:1px solid #74b78561;border-radius:999px;padding:8px 10px;font-size:11px;font-weight:900}.save-status.saving{color:var(--eepc);border-color:#d6a85c73}.save-status.error{color:#e6a36f;border-color:#e6a36f8c}.manage-card{width:min(680px,100%)}.check{border:2px solid var(--accent);width:58px;height:58px;color:var(--accent);border-radius:50%;place-items:center;margin:34px auto 18px;font-size:28px;display:grid}.calendar-connect{color:var(--muted);justify-content:center;align-items:center;gap:8px;margin:22px 0;font-size:13px;display:flex}.calendar-connect+.calendar-connect{margin-top:-10px}.google-dot{background:conic-gradient(#4285f4,#34a853,#fbbc05,#ea4335,#4285f4);border-radius:50%;width:9px;height:9px;display:inline-block}.ghost-link{color:var(--text);text-underline-offset:5px;font-size:13px;text-decoration:underline;display:inline-block}.ghost-link.stacked{margin:10px 0;display:block}.admin-shell{grid-template-columns:220px 1fr;min-height:100vh;display:grid}.sidebar{border-right:1px solid var(--line);background:#03090db8;padding:20px}.sidebar .brand-mark{margin-bottom:32px}.sidebar button{width:100%;color:var(--muted);text-transform:capitalize;background:0 0;border:1px solid #0000;border-radius:6px;align-items:center;gap:10px;padding:11px 10px;font-size:13px;font-weight:800;display:flex}.sidebar button.active{color:var(--text);background:#d6a85c24;border-color:#d6a85c59}.sidebar svg{fill:none;stroke:currentColor;stroke-width:1.7px;width:18px;height:18px}.admin-main{padding:28px}.admin-header{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:24px;display:flex}.admin-header h1{font-size:34px}.dashboard-grid{grid-template-columns:1.4fr .8fr;gap:16px;display:grid}.ops-panel{border:1px solid var(--line);border-radius:var(--radius);padding:18px}.ops-panel.wide{grid-row:span 2}.panel-title{justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.panel-title h2{font-size:16px}.panel-title span{color:var(--muted);font-size:12px}.booking-rows{gap:8px;display:grid}.booking-row{border:1px solid var(--line);background:#ffffff09;border-radius:6px;grid-template-columns:84px 1fr 56px 88px;align-items:center;gap:12px;padding:12px;display:grid}.booking-row time,.booking-row span,.booking-row em{color:var(--muted);font-size:12px;font-style:normal}.booking-row div{gap:3px;display:grid}.booking-row b,.event-pill small{text-align:center;border-radius:4px;padding:5px 7px;font-size:10px}.booking-row b.eepc,.event-pill.eepc small{color:#16130d;background:var(--eepc)}.booking-row b.nwpt,.event-pill.nwpt small{color:#f7fff7;background:var(--nwpt)}.event-stack{gap:10px;display:grid}.event-admin-list{gap:8px;margin:16px 0;display:grid}.event-admin-list button,.toggle-button{border:1px solid var(--line);color:var(--text);text-align:left;background:#ffffff09;border-radius:6px;padding:10px 12px;font-size:12px;font-weight:850}.event-admin-list button.active{background:#d6a85c21;border-color:#d6a85c8c}.event-pill,.integration{border:1px solid var(--line);width:100%;color:var(--text);text-align:left;background:#ffffff09;border-radius:6px;justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex}.event-pill span{font-weight:850}.integration strong{color:#74b785;margin-left:auto;font-size:12px}.integration strong.warning{color:var(--eepc)}.integration.reconnect{margin-top:10px}.integration-note,.muted-line,.error-line{color:var(--muted);margin:12px 0 0;font-size:12px;line-height:1.5}.error-line{color:#e6a36f}.success-line{color:#74b785;margin:12px 0 0;font-size:12px;line-height:1.5}.integration-strip{flex-wrap:wrap;gap:8px;margin:-8px 0 14px;display:flex}.integration-strip span{border:1px solid var(--line);color:var(--muted);border-radius:999px;padding:5px 8px;font-size:11px;font-weight:800}.integration-strip span.ready{color:#74b785;border-color:#74b78561}.builder-layout{grid-template-columns:minmax(320px,520px) 1fr;gap:16px;display:grid}.analytics-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.metric-card{gap:8px;display:grid}.metric-card span,.metric-row span{color:var(--muted);font-size:12px}.metric-card strong{font-size:32px;line-height:1}.metric-row{border-top:1px solid var(--line);justify-content:space-between;padding:12px 0;display:flex}.question-row{border:1px solid var(--line);border-radius:6px;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:10px;margin-bottom:10px;padding:12px;display:grid}.toggle-row{border:1px solid var(--line);color:var(--muted);background:#ffffff09;border-radius:6px;justify-content:space-between;align-items:center;margin-bottom:12px;padding:11px 12px;font-size:12px;font-weight:800;display:flex}.toggle-row strong{color:var(--text)}.intake-block,.manage-actions,.reschedule-panel{border-top:1px solid var(--line);margin-top:18px;padding-top:18px}.danger-button{color:#f2b6a0;background:#e66f6f14;border:1px solid #e66f6f66;border-radius:6px;width:100%;padding:12px 16px;font-size:13px;font-weight:900}.compact-calendar{grid-template-columns:repeat(8,1fr);gap:8px;margin-bottom:14px;display:grid}.compact-calendar button{border:1px solid var(--line);min-height:34px;color:var(--text);background:#ffffff09;border-radius:6px}.compact-calendar button.selected{background:var(--eepc);color:#0a1115}.question-row span{color:var(--eepc);font-weight:900}.question-row p{color:var(--muted);margin:0}.question-row input{min-width:0}.question-add{margin-top:6px}.small-danger{border:1px solid var(--line);color:#ffc7c7;background:#ffffff09;border-radius:6px;padding:0 10px;font-size:12px;font-weight:850}.availability-panel{max-width:980px}.availability-grid{gap:8px;margin-top:18px;display:grid}.availability-row{grid-template-columns:50px minmax(0,1fr) 36px;align-items:center;gap:10px;display:grid}.availability-row strong,.availability-row span{border:1px solid var(--line);color:var(--muted);background:#ffffff09;border-radius:6px;padding:11px 12px;font-size:12px}.availability-blocks{gap:8px;min-width:0;display:grid}.availability-row button{border:1px solid var(--line);height:38px;color:var(--text);background:#ffffff09;border-radius:6px}.availability-block{grid-template-columns:minmax(110px,1fr) auto minmax(110px,1fr) auto;align-items:center;gap:8px;min-width:0;display:grid}.availability-block input{min-width:0;height:34px;padding:0 8px}.availability-block small{color:var(--muted)}.availability-row .small-danger{color:#ffc7c7;width:auto;padding:0 10px}.availability-empty{display:block}.availability-save{margin-top:14px}@media (width<=1050px){.booking-grid,.dashboard-grid,.builder-layout,.analytics-grid{grid-template-columns:1fr}.service-panel,.calendar-panel,.times-panel,.details-panel{min-height:auto}.admin-shell{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid var(--line)}.sidebar button{width:auto;margin-right:6px;display:inline-flex}}@media (width<=680px){.topbar,.admin-header{flex-direction:column;align-items:flex-start}.topbar{gap:14px;width:min(100% - 40px,1180px)}.topbar nav{flex-wrap:wrap}.booking-hero{grid-template-columns:1fr;gap:20px;width:min(100% - 40px,1180px);margin:78px auto 28px}.booking-hero h1{max-width:350px;font-size:46px;line-height:1.02}.booking-hero p:not(.micro){max-width:340px;font-size:15px;line-height:1.7}.booking-hero__aside{width:100%;min-width:0}.booking-grid{border-left:0;border-right:0;width:min(100% - 24px,1180px);margin:0 auto 42px}.booking-row,.availability-row{grid-template-columns:1fr}h1{font-size:34px}}
