:root{color-scheme:dark;--bg:#10141e;--panel:#191f2b;--line:#2b3445;--muted:#a2adc0;--blue:#699eff;--text:#f5f7fc;font-family:Arial,Helvetica,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-size:15px;line-height:1.5}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}button:focus-visible,a:focus-visible{outline:3px solid #a7c6ff;outline-offset:4px}[hidden]{display:none!important}.shell{max-width:1040px;margin:auto;padding:0 32px}.topbar{height:95px;display:flex;align-items:center;justify-content:space-between}.brand{color:white;text-decoration:none;font-size:27px;font-weight:900;letter-spacing:-2px}.brand span{color:var(--blue)}.brand small{font-size:10px;letter-spacing:2px;margin-left:14px;vertical-align:middle}.tag{font-size:10px;letter-spacing:2px;color:var(--muted)}.hero{background:linear-gradient(115deg,#1a3470,#285bc4 65%,#3b74df);border:1px solid #4c73be;border-radius:20px;padding:40px 44px 24px;position:relative;overflow:hidden}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:700;color:#a9bce1}.hero .eyebrow{color:#cbdcff}h1{font-size:clamp(38px,6vw,64px);line-height:1.05;letter-spacing:-2px;margin:20px 0;font-weight:900;position:relative;z-index:1}h1 span{color:#bcd3ff}.hero p{color:#d4e3ff;position:relative;z-index:1}.hero-footer{display:flex;justify-content:space-between;border-top:1px solid #ffffff30;margin-top:34px;padding-top:17px;font-size:10px;letter-spacing:1px;position:relative;z-index:1}.record{width:240px;height:240px;border-radius:50%;position:absolute;right:50px;top:35px;background:repeating-radial-gradient(circle,#101c38 0,#101c38 3px,#253961 4px,#121d37 6px);box-shadow:15px 15px 50px #08163555;transform:rotate(-20deg)}.record div{position:absolute;inset:80px;border-radius:50%;background:#82aaff;border:30px solid #4677cc;box-shadow:0 0 0 2px #14294c}.tabs{display:flex;border-bottom:1px solid var(--line);margin:28px 0 32px;gap:28px}.tab{background:none;border:0;border-bottom:3px solid transparent;color:var(--muted);padding:14px 0;font-weight:bold}.tab.active{border-color:var(--blue);color:#fff}.section-title{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:26px 0 18px}h2{font-size:23px;letter-spacing:-.6px;margin:4px 0}.muted,.hint{color:var(--muted)}.hint{font-size:12px;margin:8px 0 18px}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.service{background:var(--panel);color:var(--text);border:1px solid var(--line);border-radius:12px;padding:22px;text-align:left;position:relative}.service.selected{border-color:var(--blue);background:#1c2c47;box-shadow:inset 0 0 0 1px var(--blue)}.service .number{color:var(--blue);font-size:12px;letter-spacing:2px}.service h3{font-size:18px;margin:20px 0 5px;overflow-wrap:anywhere}.service .cost{display:flex;justify-content:space-between;gap:8px;margin-top:16px}.service .cost small{color:var(--muted)}.panel{background:var(--panel);border:1px solid var(--line);padding:26px;border-radius:14px;margin:20px 0}.panel .section-title:first-child{margin-top:0}label{display:block;font-size:13px;color:#d1d8e5;margin:16px 0}input,textarea,select{display:block;width:100%;border:1px solid #3b465c;border-radius:8px;background:#111824;color:var(--text);padding:12px 14px;margin-top:7px;outline:none}input:focus,textarea:focus,select:focus{border-color:var(--blue);box-shadow:0 0 0 2px #699eff25}input[type=date]{max-width:300px;min-height:47px}.slots{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.slot{background:#111824;border:1px solid #3b465c;color:#d5deec;border-radius:7px;padding:10px 17px}.slot.selected{background:#699eff;color:#071629;border-color:#699eff;font-weight:bold}.divider{height:1px;background:var(--line);margin:28px 0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.check{display:flex;gap:10px;align-items:center;cursor:pointer}.check input{width:18px;height:18px;margin:0;accent-color:var(--blue)}.submit-row{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:26px}.primary{border:0;border-radius:8px;background:#75a5ff;color:#0c1a33;font-weight:bold;padding:13px 24px}.small{padding:10px 15px}.text-button,.icon-button{background:none;border:0;color:var(--blue);padding:8px}.icon-button{font-size:22px}.notice{padding:14px 18px;border:1px solid #4773b6;background:#1a2d49;border-radius:8px}.notice.error,.error{color:#ffb6b6}.notice.error{border-color:#8a4f59;background:#38232d}.empty{padding:34px 20px;text-align:center;border:1px dashed #3b465c;border-radius:12px;color:var(--muted)}.booking-card{border:1px solid var(--line);background:var(--panel);padding:20px;border-radius:12px;margin:12px 0;overflow-wrap:anywhere}.booking-card h3{margin:0 0 8px}.booking-card p{margin:5px 0}.booking-card .actions{display:flex;gap:14px;margin-top:10px}.badge{display:inline-block;font-size:11px;background:#233957;color:#accaff;padding:4px 8px;border-radius:4px;margin-bottom:10px}.badge.cancelled{background:#343640;color:#adb0bc}footer{display:flex;justify-content:space-between;color:#8894aa;font-size:10px;letter-spacing:1px;border-top:1px solid var(--line);margin-top:54px;padding:24px 0 32px}dialog{background:var(--panel);color:var(--text);border:1px solid #46536d;border-radius:16px;max-width:540px;width:calc(100% - 32px);padding:26px;max-height:90dvh}dialog::backdrop{background:#000b}dialog .section-title{margin-top:0}dialog .primary{width:100%}.error:empty{display:none}@media(max-width:650px){.shell{padding:0 18px}.topbar{height:76px}.tag{font-size:8px;letter-spacing:1px}.brand small{margin-left:9px;font-size:9px}.hero{padding:28px 23px 18px;border-radius:14px}.hero .eyebrow{font-size:8px;letter-spacing:1.5px}.hero p{font-size:13px;max-width:220px}.record{width:170px;height:170px;right:-69px;top:52px;opacity:.65}.record div{inset:57px;border-width:21px}.hero-footer{font-size:8px;margin-top:27px;letter-spacing:.5px}.tabs{gap:24px;margin-top:18px;margin-bottom:24px}.tab{font-size:13px}.services{grid-template-columns:1fr}.service{padding:18px 20px}.service h3{margin:6px 0;font-size:18px}.service .number{float:right}.service .cost{margin-top:8px}.panel{padding:20px 16px}.form-grid{grid-template-columns:1fr;gap:0}.submit-row{align-items:stretch;flex-direction:column}.slot{padding:10px 14px}h2{font-size:21px}.section-title .muted{font-size:12px}footer{font-size:8px;gap:18px}.booking-card{padding:18px}dialog{padding:20px}}
