:root{font-family:Inter,"Microsoft YaHei","PingFang SC",sans-serif;color:#192939;background:#f3f6fa;font-synthesis:none;font-size:16px;--blue:#175edf;--muted:#657387;--border:#e2e8f0}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button,a,input{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed}a{color:inherit;text-decoration:none}.top{height:88px;border-bottom:1px solid var(--border);background:#fff;display:flex;justify-content:space-between;align-items:center;padding:0 max(5vw,24px)}.brand{display:flex;align-items:center;gap:12px;font-weight:700;font-size:20px}.logo{background:var(--blue);color:white;border-radius:10px;padding:6px 10px}.top-note{font-size:14px;color:var(--muted)}main{max-width:1240px;margin:auto;padding:48px 32px 24px}.heading{display:flex;justify-content:space-between;gap:24px;align-items:center;margin-bottom:34px}.eyebrow{font-size:12px;letter-spacing:2px;color:var(--blue);font-weight:700}h1{font-size:32px;letter-spacing:-.8px;margin:12px 0}p{line-height:1.7}.heading p{margin:0;color:var(--muted)}.period{border-left:3px solid var(--blue);padding:8px 0 8px 20px;display:grid;gap:8px;flex-shrink:0}.period strong{font-size:26px;letter-spacing:1px}.period span{font-size:14px;color:var(--muted)}.layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(330px,1fr);gap:24px;align-items:start}.card{background:white;border:1px solid var(--border);border-radius:16px;padding:30px;box-shadow:0 6px 24px #162c4a04}.section-title{display:flex;align-items:center;gap:10px;margin-bottom:28px}h2{font-size:19px;margin:0}.step{font-size:12px;letter-spacing:1px;color:var(--blue);background:#edf3ff;border-radius:6px;padding:6px}.zone{margin-left:auto;font-size:13px;color:var(--muted)}.dates{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.date{background:#fff;border:1px solid var(--border);border-radius:10px;padding:13px 3px;color:var(--muted);display:grid;gap:7px;text-align:center;font-size:13px}.date strong{font-size:21px;color:#263c55}.date.selected{background:var(--blue);border-color:var(--blue);color:#dce8ff;box-shadow:0 4px 12px #175edf26}.date.selected strong{color:white}.date:hover:not(.selected){border-color:var(--blue)}.slot-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:29px 0 16px}h3{font-size:16px;margin:0}.legend{font-size:12px;color:var(--muted);display:flex;gap:6px;align-items:center}.legend i{width:8px;height:8px;border:1px solid #8198b4;border-radius:2px}.legend i.unavailable{background:#e4e9f0;border-color:#e4e9f0;margin-left:7px}.slots{display:grid;grid-template-columns:repeat(3,1fr);gap:11px}.slot{padding:15px 4px;background:#fff;color:#293e55;border:1px solid #dce4ee;border-radius:9px;display:grid;gap:7px}.slot strong{font-size:15px;font-weight:600}.slot small{font-size:12px;color:var(--muted)}.slot:disabled{background:#f4f6f8;border-color:#f0f2f6;color:#929ead}.slot:disabled small{color:#8b96a6}.slot.selected{border-color:var(--blue);background:#edf4ff;box-shadow:inset 0 0 0 1px var(--blue);color:var(--blue)}.slot.selected small{color:var(--blue)}.slot:hover:not(:disabled){border-color:var(--blue)}.muted{color:var(--muted);font-size:13px}.text-button{border:0;background:transparent;color:var(--blue);padding:6px 0;font-size:14px}.schedule-note{border-top:1px solid var(--border);padding-top:20px;margin-top:24px}.schedule-note span{font-size:14px;font-weight:600}.schedule-note p{font-size:13px;margin:8px 0 0;color:var(--muted)}form>label:not(.consent){display:block;font-size:14px;font-weight:600;margin:22px 0 10px}input:not([type=checkbox]){width:100%;border:1px solid #d9e2ec;border-radius:8px;padding:13px 14px;outline:none;color:#192939;background:#fff}input::placeholder{color:#929dae;font-size:14px}input:focus{border-color:var(--blue);box-shadow:0 0 0 3px #175edf13}.field-note{font-size:12px;color:var(--muted);margin:8px 0 22px}.selection{background:#f3f7fd;border-radius:10px;padding:18px;display:grid;gap:9px}.selection span,.selection small{font-size:12px;color:var(--muted)}.selection strong{font-size:16px;line-height:1.6}.consent{display:flex;gap:10px;align-items:flex-start;font-size:12px;color:var(--muted);line-height:1.8;margin:22px 0}.consent input{accent-color:var(--blue);width:16px;height:16px;flex-shrink:0;margin:3px 0}.primary{width:100%;border:0;border-radius:9px;background:var(--blue);color:white;padding:15px 18px;display:flex;justify-content:space-between;font-weight:600}.primary:hover{background:#124fc0}.primary:disabled{background:#b7c5da}.privacy{font-size:12px;color:var(--muted);margin:14px 0 0}.form-status{color:#b33434;font-size:14px}.form-status:empty{display:none}footer{margin-top:32px;display:flex;justify-content:space-between;gap:14px;font-size:12px;color:#748195}.success{max-width:650px;margin:20px auto;text-align:center;padding:44px}.success-icon{margin:0 auto 24px;border-radius:50%;background:#e6f5ef;color:#16865b;width:60px;height:60px;font-size:32px;line-height:60px}.success h2{font-size:28px;margin:18px}.success>strong{display:block;font-size:24px;margin:26px 0}.success>div:not(.success-icon):not(.eyebrow){font-size:14px}.success #success-id{font-family:monospace;margin-left:8px}button:focus-visible,a:focus-visible{outline:3px solid #75a7ff;outline-offset:3px}[hidden]{display:none!important}.admin-table{overflow:auto}table{border-collapse:collapse;width:100%;white-space:nowrap;font-size:14px}th,td{text-align:left;padding:15px 12px;border-bottom:1px solid var(--border)}th{color:var(--muted);font-weight:500}.admin-actions{display:flex;gap:20px;align-items:center;margin:22px 0}.admin-actions .primary{width:auto}.share-link{word-break:break-all;color:var(--blue)}@media(min-width:1150px){.dates{grid-template-columns:repeat(8,1fr)}}@media(max-width:800px){main{padding:30px 20px}.top{height:72px;padding:0 20px}.heading{display:block}.period{margin-top:24px}.layout{grid-template-columns:1fr}.heading h1{font-size:28px}.card{padding:24px}.top-note{font-size:12px}footer{flex-wrap:wrap}}@media(max-width:380px){.slots{grid-template-columns:repeat(2,1fr)}.slot-heading{align-items:flex-start;flex-direction:column}.top-note{display:none}.card{padding:18px}h1{font-size:24px!important}}

@media(max-width:600px){.top-note{display:none}.brand{font-size:18px;gap:8px}.top{padding:0 16px}}

dialog{border:1px solid var(--border);border-radius:16px;padding:28px;width:min(540px,calc(100% - 32px));max-height:90vh;color:#192939}dialog::backdrop{background:#14263a88}dialog .section-title{justify-content:space-between;margin-bottom:12px}dialog select{width:100%;padding:13px 10px;border:1px solid #d9e2ec;border-radius:8px;background:white;font:inherit;color:inherit}dialog .primary{margin-top:20px}

.delete-button{color:#b33434;margin-left:18px}
