:root{--ink: #112638;--ink-soft: #46586a;--muted: #8a95a1;--ground: #edf1f3;--surface: #ffffff;--sand: #dce6ec;--sky: #dcebf8;--ocean: #009bff;--ocean-deep: #0072cc;--marine: #0c6cc0;--navy: #0a3b66;--good: #11795a;--good-bg: #e2f4ec;--due: #9a5b00;--due-bg: #fdf0d5;--bad: #b42318;--bad-bg: #fde8e6;--line: rgba(17, 38, 56, .1);--c-open: #8ccdf8;--c-open-edge: #3d9be0;--c-open-ink: #0a3b66;--c-cruise: #1c4f99;--c-cruise-edge: #1c4f99;--c-cruise-ink: #ffffff;--c-lesson: #7a4fd0;--c-lesson-edge: #7a4fd0;--c-lesson-ink: #ffffff;--fp-open-bg: #e5f3fd;--fp-open: #2f8fd6;--fp-cruise-bg: #e2eaf6;--fp-cruise: #1c4f99;--fp-lesson-bg: #efe8fb;--fp-lesson: #6f45c7;--shadow-1: 0 1px 2px rgba(10, 59, 102, .06), 0 2px 8px rgba(10, 59, 102, .05);--shadow-2: 0 4px 12px rgba(10, 59, 102, .1), 0 16px 40px rgba(10, 59, 102, .12);--display: "Fraunces", Georgia, serif;--sans: "Manrope", system-ui, -apple-system, "Segoe UI", sans-serif;--mono: "JetBrains Mono", ui-monospace, Menlo, monospace;--r: 10px;--s1: 4px;--s2: 8px;--s3: 12px;--s4: 16px;--s5: 24px;--s6: 32px;--ease: cubic-bezier(.2, .9, .25, 1.15);color-scheme:light}*{box-sizing:border-box}html,body{margin:0}body{background:var(--ground);color:var(--ink);font:500 14px/1.5 var(--sans);-webkit-font-smoothing:antialiased}a{color:var(--marine);text-decoration:none}a:hover{text-decoration:underline}button{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--ocean);outline-offset:2px;border-radius:4px}.num{font-variant-numeric:tabular-nums}.mono{font-family:var(--mono);font-size:12.5px}.muted{color:var(--muted)}.soft{color:var(--ink-soft)}.top{position:sticky;top:0;z-index:20;background:var(--surface);border-bottom:1px solid var(--line);padding:env(safe-area-inset-top,0px) max(var(--s4),env(safe-area-inset-right,0px)) 0 max(var(--s4),env(safe-area-inset-left,0px))}.top-inner{max-width:1520px;margin:0 auto;display:flex;align-items:center;gap:var(--s4);height:56px}.brand{display:flex;align-items:center;gap:var(--s2);font-weight:800;letter-spacing:-.01em;color:var(--navy);white-space:nowrap}.brand img{width:30px;height:30px}.brand:hover{text-decoration:none}.nav{display:flex;gap:2px}.nav a{padding:6px 10px;border-radius:8px;color:var(--ink-soft);font-weight:600;transition:background-color .15s}.nav a:hover{background:var(--ground);text-decoration:none;color:var(--ink)}.nav a.on{background:var(--sky);color:var(--navy)}.search{position:relative;margin-left:auto;width:min(320px,40vw)}.search input{width:100%;height:36px;border:1px solid var(--line);border-radius:9px;padding:0 12px 0 34px;font:inherit;background:var(--ground) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%238a95a1' stroke-width='2'%3E%3Ccircle cx='7' cy='7' r='5'/%3E%3Cpath d='m11 11 4 4'/%3E%3C/svg%3E") no-repeat 11px 50%}.search input:focus{background-color:var(--surface);border-color:var(--ocean);outline:none}.results{position:absolute;right:0;top:42px;width:min(420px,92vw);background:var(--surface);border-radius:var(--r);box-shadow:var(--shadow-2);padding:var(--s2);max-height:70vh;overflow:auto}.results a{display:flex;justify-content:space-between;gap:var(--s3);padding:8px 10px;border-radius:8px;color:var(--ink)}.results a:hover{background:var(--ground);text-decoration:none}.results h6{margin:8px 10px 4px;font:700 11px/1 var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.banner{background:var(--navy);color:#fff;font-size:13px;padding:7px max(var(--s4),env(safe-area-inset-right,0px)) 7px max(var(--s4),env(safe-area-inset-left,0px))}.banner div{max-width:1520px;margin:0 auto}.banner b{color:#9fd6ff}main{max-width:1520px;margin:0 auto;padding:var(--s5) max(var(--s4),env(safe-area-inset-right,0px)) 80px max(var(--s4),env(safe-area-inset-left,0px));display:flex;flex-direction:column;gap:var(--s5)}@media (max-width: 760px){.nav{position:fixed;bottom:0;left:0;right:0;z-index:30;background:var(--surface);border-top:1px solid var(--line);justify-content:space-around;padding:6px 6px calc(6px + env(safe-area-inset-bottom,0px))}.nav a{font-size:13px}.search{width:auto;flex:1}.brand span{display:none}}.head{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:var(--s3)}.head h1{font:600 30px/1.1 var(--display);letter-spacing:-.03em;margin:0;text-wrap:balance}.head .sub{color:var(--ink-soft);margin-top:4px}.btns{display:flex;gap:var(--s2);align-items:center;flex-wrap:wrap}.btn{height:34px;padding:0 12px;border-radius:9px;border:1px solid var(--line);background:var(--surface);cursor:pointer;font-weight:700;display:inline-flex;align-items:center;gap:6px;box-shadow:var(--shadow-1);transition:transform .18s var(--ease),background-color .15s}.btn:hover{background:var(--sky);text-decoration:none}.btn:active{transform:scale(.96)}.btn[disabled]{opacity:.45;cursor:not-allowed;transform:none}.btn.primary{background:var(--marine);color:#fff;border-color:transparent}input[type=date],input[type=text],input[type=search],input[type=number]{height:34px;border:1px solid var(--line);border-radius:9px;padding:0 10px;font:inherit;background:var(--surface);color:var(--ink)}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--s3)}.stat{background:var(--surface);border-radius:var(--r);padding:var(--s3) var(--s4);box-shadow:var(--shadow-1);min-width:0}.stat b{display:block;font:800 22px/1.15 var(--sans);letter-spacing:-.02em;font-variant-numeric:tabular-nums}.stat span{color:var(--ink-soft);font-size:12.5px}@media (max-width: 640px){.stats{grid-template-columns:repeat(2,minmax(0,1fr))}}.card{background:var(--surface);border-radius:var(--r);box-shadow:var(--shadow-1);padding:var(--s4);min-width:0}.card h2{font:800 13px/1.2 var(--sans);letter-spacing:.07em;text-transform:uppercase;color:var(--ink-soft);margin:0 0 var(--s3)}.grid2{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:var(--s4);align-items:start}@media (max-width: 900px){.grid2{grid-template-columns:minmax(0,1fr)}}.tablewrap{overflow-x:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:9px 10px;border-bottom:1px solid var(--line);vertical-align:top}th{font:700 11px/1.2 var(--sans);letter-spacing:.07em;text-transform:uppercase;color:var(--muted);white-space:nowrap}td.r,th.r{text-align:right}tbody tr.link{cursor:pointer;transition:background-color .12s}tbody tr.link:hover{background:var(--ground)}tfoot td{font-weight:800;border-bottom:0}dl.kv{display:grid;grid-template-columns:auto 1fr;gap:6px 16px;margin:0}dl.kv dt{color:var(--muted)}dl.kv dd{margin:0;min-width:0;overflow-wrap:anywhere}.pill{display:inline-flex;align-items:center;gap:4px;font:700 11px/1 var(--sans);letter-spacing:.03em;padding:4px 7px;border-radius:99px;white-space:nowrap}.pill.good{color:var(--good);background:var(--good-bg)}.pill.due{color:var(--due);background:var(--due-bg)}.pill.bad{color:var(--bad);background:var(--bad-bg)}.pill.info{color:var(--navy);background:var(--sky)}.pill.mute{color:var(--ink-soft);background:var(--ground)}.dot{width:9px;height:9px;border-radius:50%;display:inline-block;flex:none}.p-open{background:#28ad1f}.p-cruise{background:#25a1ef}.p-lesson{background:#6b25ef}.p-gift{background:var(--sand)}.timeline{overflow-x:auto}.tl{position:relative;min-width:1180px}.tl-hours{display:flex;color:var(--muted);font-size:12.5px;font-weight:700;padding-bottom:6px}.tl-hours>b{width:112px;flex:none;position:sticky;left:0;z-index:4;background:var(--surface)}.tl-hours>div{flex:1;display:grid}.tl{--row: 172px}.tl-lane{display:flex;align-items:stretch;border-top:1px solid var(--line)}.tl-lane.thin{--row: 44px}.tl-lane>b{width:112px;font-size:15px;line-height:1.2;padding-right:8px;flex:none;display:flex;align-items:center;font-weight:800;color:var(--navy);position:sticky;left:0;z-index:4;background:var(--surface)}.tl-track{position:relative;flex:1;background-image:linear-gradient(to right,var(--line) 1px,transparent 1px)}.run{position:absolute;top:8px;bottom:8px;border-radius:8px;padding:5px 8px;overflow:hidden;cursor:pointer;text-align:left;border:0;font-size:12px;line-height:1.25;box-shadow:var(--shadow-1);transition:transform .18s var(--ease),box-shadow .18s}.run:hover{transform:translateY(-2px);box-shadow:var(--shadow-2);z-index:2}.run:active{transform:scale(.98)}.run b{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.run span{white-space:nowrap;opacity:.85}.run.open{background:var(--ocean);color:#fff}.run.cruise{background:var(--navy);color:#fff}.run.lesson{background:var(--surface);color:var(--navy);box-shadow:inset 0 0 0 2px var(--navy),var(--shadow-1)}.run.clash{outline:2px dashed var(--bad);outline-offset:2px}.block{position:absolute;border-radius:8px;background:repeating-linear-gradient(-45deg,var(--bad-bg) 0 6px,transparent 6px 12px);border:1px solid var(--bad);color:var(--bad);font-size:11px;font-weight:700;padding:4px 6px}.now-line{position:absolute;top:0;bottom:0;width:2px;background:var(--bad);z-index:0;pointer-events:none;opacity:.7}.fhpill{z-index:1}.slotgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s4)}@media (max-width: 900px){.slotgrid{grid-template-columns:minmax(0,1fr)}}.slot{display:grid;grid-template-columns:54px 1fr auto;gap:10px;align-items:center;padding:10px;border-radius:9px;cursor:pointer;border:0;background:none;width:100%;text-align:left;transition:background-color .12s,transform .18s var(--ease)}.slot:hover{background:var(--ground)}.slot:active{transform:scale(.99)}.slot .t{font:800 14px/1 var(--sans);font-variant-numeric:tabular-nums}.slot .meta{min-width:0}.slot .meta div{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.slot.empty{opacity:.5}.seats{display:flex;gap:2px;margin-top:4px}.seats i{width:8px;height:8px;border-radius:2px;background:var(--sand)}.seats i.on{background:var(--ocean)}.week{display:grid;grid-template-columns:repeat(7,minmax(150px,1fr));gap:var(--s3);overflow-x:auto;padding-bottom:4px}.week .col{background:var(--surface);border-radius:var(--r);box-shadow:var(--shadow-1);padding:var(--s3);min-width:0;display:flex;flex-direction:column;gap:6px}.week .col h3{margin:0 0 4px;font:800 13px/1.2 var(--sans)}.week .col h3 a{color:var(--ink)}.week .col.today{box-shadow:inset 0 0 0 2px var(--ocean),var(--shadow-1)}.chip{display:flex;align-items:center;gap:6px;padding:6px 8px;border-radius:8px;background:var(--ground);cursor:pointer;border:0;width:100%;text-align:left;font-size:12.5px;transition:transform .18s var(--ease),background-color .12s}.chip:hover{background:var(--sky)}.chip:active{transform:scale(.98)}.chip .t{font-weight:800;font-variant-numeric:tabular-nums}.chip .n{margin-left:auto;font-weight:700;color:var(--ink-soft);font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#0a3b6647;z-index:40;animation:fade .18s ease-out}.drawer{position:fixed;top:0;right:0;bottom:0;width:min(640px,100vw);background:var(--ground);z-index:41;overflow-y:auto;box-shadow:var(--shadow-2);padding:calc(var(--s4) + env(safe-area-inset-top,0px)) max(var(--s4),env(safe-area-inset-right,0px)) calc(var(--s6) + env(safe-area-inset-bottom,0px)) var(--s4);display:flex;flex-direction:column;gap:var(--s4);animation:slide .26s var(--ease)}@keyframes fade{0%{opacity:0}}@keyframes slide{0%{transform:translate(40px);opacity:0}}@media (prefers-reduced-motion: reduce){.drawer,.scrim{animation:none}.run,.btn,.chip,.slot{transition:none}}.drawer .x{position:sticky;top:0;align-self:flex-end}.guest{background:var(--surface);border-radius:var(--r);box-shadow:var(--shadow-1);padding:var(--s3) var(--s4);display:flex;flex-direction:column;gap:6px}.guest .row1{display:flex;justify-content:space-between;gap:var(--s3);align-items:baseline}.guest .name{font-weight:800;font-size:15px;color:var(--ink)}.guest .tags{display:flex;flex-wrap:wrap;gap:4px}.guest.off{opacity:.55}.timeline-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.timeline-list li{display:grid;grid-template-columns:130px 1fr;gap:10px}.empty-state{text-align:center;padding:var(--s6);color:var(--ink-soft)}.err{background:var(--bad-bg);color:var(--bad);padding:var(--s3) var(--s4);border-radius:var(--r);font-weight:600}.loading{color:var(--muted);padding:var(--s5)}.chip>.soft{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chip .n small{font-size:10.5px}.modal-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;background:#0a3b6652;display:grid;place-items:center;padding:var(--s4);animation:fade .18s ease-out}.modal{background:var(--surface);border-radius:14px;box-shadow:var(--shadow-2);width:min(520px,100%);max-height:88vh;overflow:auto;padding:var(--s5);display:flex;flex-direction:column;gap:var(--s4);animation:pop .22s var(--ease)}@keyframes pop{0%{transform:translateY(8px) scale(.98);opacity:0}}.modal h3{margin:0;font:600 22px/1.15 var(--display);letter-spacing:-.02em}.modal .actions{display:flex;gap:var(--s2);justify-content:flex-end;flex-wrap:wrap}.field{display:flex;flex-direction:column;gap:6px;min-width:0}.field>span{font:700 12px/1.2 var(--sans);color:var(--ink-soft)}.field input,.field select,.field textarea{height:38px;border:1px solid var(--line);border-radius:9px;padding:0 10px;font:inherit;background:var(--surface);color:var(--ink);width:100%}.field textarea{height:72px;padding:8px 10px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--ocean);box-shadow:0 0 0 3px #009bff26}.row{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:var(--s3)}.seg{display:inline-flex;background:var(--ground);border-radius:10px;padding:3px;gap:2px;flex-wrap:wrap}.seg button{border:0;background:none;padding:7px 12px;border-radius:8px;font-weight:700;cursor:pointer;color:var(--ink-soft);transition:background-color .15s,transform .18s var(--ease)}.seg button:hover{color:var(--ink)}.seg button:active{transform:scale(.96)}.seg button.on{background:var(--surface);color:var(--navy);box-shadow:var(--shadow-1)}.stepper{display:inline-flex;align-items:center;gap:4px}.stepper button{width:36px;height:36px;border-radius:9px;border:1px solid var(--line);background:var(--surface);font-size:18px;font-weight:700;cursor:pointer;transition:transform .18s var(--ease),background-color .12s}.stepper button:hover{background:var(--sky)}.stepper button:active{transform:scale(.92)}.stepper b{min-width:34px;text-align:center;font-size:18px;font-variant-numeric:tabular-nums}.times{display:grid;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:8px}.time{border:1px solid var(--line);border-radius:10px;padding:8px 10px;background:var(--surface);cursor:pointer;text-align:left;display:flex;flex-direction:column;gap:2px;transition:transform .18s var(--ease),border-color .12s,background-color .12s}.time:hover:not([disabled]){border-color:var(--ocean)}.time:active:not([disabled]){transform:scale(.97)}.time b{font-size:15px;font-variant-numeric:tabular-nums}.time small{color:var(--ink-soft);font-size:11.5px;line-height:1.3}.time.on{border-color:var(--marine);background:var(--sky);box-shadow:inset 0 0 0 1px var(--marine)}.time[disabled]{cursor:not-allowed;opacity:.5;background:var(--ground)}.quote{background:var(--ground);border-radius:10px;padding:var(--s3) var(--s4);display:flex;flex-direction:column;gap:4px}.quote div{display:flex;justify-content:space-between;gap:var(--s3);font-variant-numeric:tabular-nums}.quote .tot{font-weight:800;font-size:16px;border-top:1px solid var(--line);padding-top:6px;margin-top:2px}.practice-note{background:var(--due-bg);color:var(--due);border-radius:10px;padding:10px 12px;font-weight:600;font-size:13px}.toast{position:fixed;left:50%;bottom:calc(24px + env(safe-area-inset-bottom,0px));transform:translate(-50%);z-index:60;background:var(--navy);color:#fff;padding:10px 16px;border-radius:10px;box-shadow:var(--shadow-2);font-weight:700;animation:pop .22s var(--ease);max-width:calc(100vw - 32px)}.toast.bad{background:var(--bad)}@media (max-width: 760px){.toast{bottom:calc(76px + env(safe-area-inset-bottom,0px))}}.btn.danger{color:var(--bad)}.btn.danger:hover{background:var(--bad-bg)}.btn.small{height:28px;padding:0 9px;font-size:12.5px}.checkin{display:inline-flex;gap:4px}.checkin button{border:1px solid var(--line);background:var(--surface);border-radius:8px;height:30px;padding:0 10px;font-weight:700;font-size:12.5px;cursor:pointer;transition:transform .18s var(--ease),background-color .12s}.checkin button:active{transform:scale(.95)}.checkin button.on.in{background:var(--good-bg);color:var(--good);border-color:transparent}.checkin button.on.ns{background:var(--bad-bg);color:var(--bad);border-color:transparent}.log{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;font-size:13px}.log li{display:grid;grid-template-columns:170px 1fr;gap:10px}@media (max-width: 640px){.log li{grid-template-columns:1fr;gap:0}}.block-chip{display:inline-flex;align-items:center;gap:6px;background:var(--bad-bg);color:var(--bad);border-radius:8px;padding:4px 8px;font-size:12.5px;font-weight:700}.block-chip button{border:0;background:none;color:inherit;cursor:pointer;font-weight:800}.daycal{padding:var(--s4) var(--s4) var(--s5)}.daycal-head{display:flex;justify-content:space-between;align-items:center;gap:var(--s3);flex-wrap:wrap;margin-bottom:var(--s3)}.daycal-head h2{margin:0;font:600 22px/1.1 var(--display);letter-spacing:-.02em;text-transform:none;color:var(--ink)}.legend{display:flex;gap:14px;flex-wrap:wrap;font-size:12.5px;color:var(--ink-soft);font-weight:600;align-items:center}.legend>span{display:inline-flex;gap:6px;align-items:center}.sw{width:14px;height:14px;border-radius:4px;display:inline-block}.sw.open{background:var(--c-open);box-shadow:inset 0 0 0 1.5px var(--c-open-edge)}.sw.cruise{background:var(--c-cruise)}.sw.lesson{background:var(--c-lesson)}.fhcount{display:inline-flex;align-items:center;gap:3px;font:800 13px/1 var(--sans);font-variant-numeric:tabular-nums;white-space:nowrap}.sq{width:11px;height:11px;border-radius:2.5px;border:1.5px solid currentColor;display:inline-block;margin-left:4px}.sq.on{background:currentColor}.fhcount .sq:first-child{margin-left:0}.pillrun{position:absolute;top:8px;bottom:8px;border-radius:10px;padding:7px 9px;overflow:hidden;cursor:pointer;text-align:left;display:flex;flex-direction:column;gap:3px;font-size:12px;line-height:1.3;border:2px solid var(--edge);color:var(--ink-c);background:linear-gradient(90deg,var(--fillc) 0 var(--fill),var(--surface) var(--fill) 100%);box-shadow:var(--shadow-1);transition:transform .18s var(--ease),box-shadow .18s}.pillrun:hover{transform:translateY(-2px);box-shadow:var(--shadow-2);z-index:2}.pillrun:active{transform:scale(.985)}.pillrun.open{--fillc: var(--c-open);--edge: var(--c-open-edge);--ink-c: var(--c-open-ink)}.pillrun.cruise{--fillc: var(--c-cruise);--edge: var(--c-cruise-edge);--ink-c: var(--c-cruise-ink)}.pillrun.lesson{--fillc: var(--c-lesson);--edge: var(--c-lesson-edge);--ink-c: var(--c-lesson-ink)}.pillrun.empty,.pillrun.part{--ink-c: var(--c-open-ink)}.pillrun.cruise.empty,.pillrun.cruise.part{--ink-c: var(--c-cruise)}.pillrun.lesson.empty,.pillrun.lesson.part{--ink-c: var(--c-lesson)}.pillrun.empty{border-style:dashed;box-shadow:none}.pillrun.clash{outline:2px dashed var(--bad);outline-offset:2px}.pr-top{display:flex;justify-content:space-between;align-items:center;gap:6px}.pr-top b{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.pr-crew{font-weight:700;font-size:11.5px;opacity:.85;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pr-names{display:flex;flex-direction:column;min-width:0;font-weight:600}.pr-names span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pr-names .practice{font-style:italic;opacity:.8}.pr-names em{font-style:normal;font-weight:800;color:var(--due);background:var(--due-bg);border-radius:4px;padding:0 3px;margin-left:2px}.pr-names .more{opacity:.75;font-weight:700}@media (max-width: 760px){.tl-lane>b{width:72px;font-size:14px}.tl-hours>b{width:72px}}.pillrun{container-type:inline-size}@container (max-width: 120px){.pr-top{flex-direction:column;align-items:flex-start;gap:2px}}.fhpill{position:absolute;border-radius:6px;border:1.5px solid var(--fp);background:var(--fp-bg);padding:7px 10px 12px;overflow:hidden;cursor:pointer;text-align:left;display:flex;flex-direction:column;gap:3px;font:400 14px/1.3 Roboto,Helvetica Neue,Arial,sans-serif;color:#212529;transition:transform .18s var(--ease),box-shadow .18s}.fhpill:hover{transform:translateY(-2px);box-shadow:var(--shadow-2);z-index:2}.fhpill:active{transform:scale(.985)}.fhpill.open{--fp: var(--fp-open);--fp-bg: var(--fp-open-bg)}.fhpill.cruise{--fp: var(--fp-cruise);--fp-bg: var(--fp-cruise-bg)}.fhpill.lesson{--fp: var(--fp-lesson);--fp-bg: var(--fp-lesson-bg)}.fhpill.empty{background:#fff}.fhpill.clash{outline:2px dashed var(--bad);outline-offset:2px}.fhpill>span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.fp-head{color:#6c757d;font-size:14.5px}.fp-head b{color:var(--fp);font-weight:700}.fp-note{font-weight:700;color:#212529}.fp-count{display:inline-flex;align-items:center;gap:3px;color:var(--fp);font-weight:500;font-size:14px;font-variant-numeric:tabular-nums}.fp-count .sq{width:12px;height:12px;border-radius:2px;border:1.5px solid currentColor;display:inline-block;margin:0 1px 0 6px}.fp-count .sq:first-child{margin-left:0}.fp-count .sq.on{background:currentColor;opacity:.75}.legendcount{color:var(--ink-soft)}.fp-crew{color:#212529}.fp-names{display:flex;flex-direction:column;color:#6c757d;line-height:1.25}.fp-names span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fp-names .practice{font-style:italic}.fp-names em{font-style:normal;font-weight:700;color:var(--due);margin-left:4px}.fp-bar{position:absolute;left:0;right:0;bottom:0;height:6px;background:#d9dee3}.fp-bar span{display:block;height:100%;background:var(--fp)}.fhpill{container-type:inline-size}main.wide{max-width:none}.fhh,.fhtb,.fhmain{font-family:Roboto,-apple-system,Segoe UI,Helvetica Neue,sans-serif;letter-spacing:.13px}.fhh{position:sticky;top:0;z-index:30;height:45px;display:flex;align-items:stretch;background:#0a6ece;color:#fff;border-bottom:1px solid rgb(209,214,219);box-shadow:#00000040 0 7px 5px -8px;font-size:13px}.fhh-logo{width:52px;display:grid;place-items:center;flex:none}.fhh-logo img{width:30px;height:30px;border-radius:6px}.fhh-nav{display:flex;padding-left:8px}.fhh-nav a{position:relative;display:block;padding:0 12px;font-size:14px;line-height:44px;color:#fff;text-decoration:none}.fhh-nav a:hover{background:#00000014;text-decoration:none}.fhh-nav a.current:after{content:"";position:absolute;left:10px;right:10px;bottom:0;border-bottom:3px solid rgb(133,197,255);border-radius:5px 5px 0 0}.fhh-grow{flex:1}.fhh-user{display:flex;align-items:center;gap:6px;font-size:12px;padding:0 12px;white-space:nowrap}.fhh-avatar{width:22px;height:22px;border-radius:50%;background:#ffffff40;display:grid;place-items:center;font-size:10px;font-weight:500}.fhh-company{font-size:17px;line-height:44px;padding:0 12px 0 10px;white-space:nowrap}button.fhh-company{border:0;background:none;color:inherit;font-family:inherit;cursor:pointer;border-radius:6px;transition:background-color .15s}button.fhh-company:hover{background:#ffffff1f}button.fhh-company:active{background:#fff3}button.fhh-company:focus-visible{outline:2px solid #fff;outline-offset:-3px}.fhtb{position:sticky;top:45px;z-index:29;height:37px;display:flex;align-items:center;justify-content:space-between;gap:10px;background:#fff;border-bottom:1px solid rgb(209,214,219);padding:3px 10px;font-size:13px;color:#1f2428}.fhtb-start,.fhtb-end{display:flex;align-items:center;gap:1px}.fhtb-btn{display:inline-flex;align-items:center;gap:6px;height:30px;padding:3px 8px;border:0;border-radius:4px;background:none;font:inherit;font-size:13px;color:#1f2428;cursor:pointer;text-decoration:none;transition:background-color .12s}.fhtb-btn:hover{background:#f1f2f4;text-decoration:none}.fhtb-btn:active{background:#e4e7ea}.fhtb-btn svg{color:#5a6672}.fhtb .search{position:relative;width:200px;margin:0}.fhtb .search input{height:30px;width:200px;border:0;border-radius:4px;background:#f1f2f4;box-shadow:inset 0 0 0 1px #e0e3e6;padding:0 12px 0 32px;font:14px Roboto,sans-serif;color:#1f2428}.fhtb .search input:focus{outline:none;background:#fff;box-shadow:inset 0 0 0 1px #25a1ef}.fhsearch-ic{position:absolute;left:10px;top:8px;color:#697886;pointer-events:none}@media (max-width: 760px){.fhh-company,.fhh-name{display:none}.fhh-user{padding:0 10px}.fhtb .search,.fhtb .search input{width:140px}.fhtb-btn{padding:3px 6px}}body:has(.fhwrap){background:#fff}main.fhmain{max-width:none;padding:0 15px 40px;gap:0;font-size:13px;color:#1f2428}.fhwrap{display:flex;flex-direction:column}.cal-nav{position:sticky;top:82px;z-index:20;background:#fff;display:flex;justify-content:space-between;align-items:center;height:64px;padding:11px 0 12px 8px;box-sizing:border-box}.cal-nav-picker{position:relative;font-size:15px;line-height:33px;color:#697886;cursor:pointer;display:inline-flex;align-items:center;gap:6px}.cal-nav-picker .caret{width:7px;height:5px;background:currentColor;clip-path:polygon(0 0,100% 0,50% 100%);display:inline-block}.cal-nav-picker input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer;width:100%}.cal-nav-buttons{display:flex;align-items:center}.cal-nav-btn{height:35px;border-radius:3px;background:#fff;color:#1f2428;font:13px/33px Roboto,sans-serif;letter-spacing:.13px;cursor:pointer}.cal-nav-btn.today{border:1px solid rgb(224,227,230);padding:0 15px;margin:3px 5px 3px 1px}.cal-nav-btn.arrow{width:40px;border:1px solid transparent;margin:3px 1px;display:grid;place-items:center}.cal-nav-btn:hover{background:#f1f2f4}.cal-nav-btn:active{background:#e4e7ea}.bookings-grid-scroll{overflow:visible}table.bookings-grid{width:100%;table-layout:fixed;border-collapse:separate;border-spacing:0;font:13px/15.6px Roboto,sans-serif;letter-spacing:.13px;color:#1f2428}table.bookings-grid th{position:sticky;top:146px;z-index:10;background:#fff;font-size:12px;font-weight:700;line-height:13.2px;text-align:center;padding:7px 2px;text-transform:none;letter-spacing:.13px;color:#1f2428;border-bottom:1px solid rgb(209,214,219);box-shadow:0 6px 6px -6px #0000001f;white-space:nowrap;overflow:hidden}table.bookings-grid th.current-day{background:#fff1ba;border-left:1px solid rgb(209,214,219)}table.bookings-grid td{vertical-align:top;padding:3px 0 0;border-right:1px solid rgb(224,227,230);border-bottom:1px solid rgb(224,227,230)}table.bookings-grid td.current-day{background:#fff1ba}table.bookings-grid td.bookings-td-legend{text-align:right;padding:9px 16px 5px 8px}td.bookings-td-legend b{font-weight:700}@media (max-width: 1100px){.bookings-grid-scroll{overflow-x:auto}table.bookings-grid{min-width:1100px}table.bookings-grid th{position:static}}.cal-block{--light: rgb(217, 239, 252);--mid: rgb(37, 161, 239);--dark: rgb(10, 76, 118);display:block;position:relative;margin:5px;padding:3px 8px;overflow:hidden;text-decoration:none;cursor:pointer;font:13px/14.95px Roboto,sans-serif;letter-spacing:.13px;color:var(--dark);background:var(--light);border:1px solid var(--mid);border-radius:5px;box-shadow:#e8ebed 0 1px 2px}.cal-block:hover{text-decoration:none;filter:brightness(.985);box-shadow:#c8ced4 0 1px 4px}.c-open,.cal-block.c-open{--light: rgb(220, 252, 217);--mid: rgb(40, 173, 31);--dark: rgb(15, 109, 9)}.c-cruise,.cal-block.c-cruise{--light: rgb(217, 239, 252);--mid: rgb(37, 161, 239);--dark: rgb(10, 76, 118)}.c-lesson,.cal-block.c-lesson{--light: rgb(229, 217, 252);--mid: rgb(107, 37, 239);--dark: rgb(47, 10, 118)}.cal-block.is-dimmed{border-color:#afb8c0;opacity:.75}.cb-head{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cal-status-icon{color:#5a6672;display:inline-block;width:11px;margin-right:4px}.cal-status-icon svg{vertical-align:-2px}.cb-time{font-weight:700;opacity:.75;padding-right:1px}.cb-headline{color:#5a6672}.cb-private-headline{display:block;font-weight:700;line-height:14.3px;color:#1f2428;padding:5px 0 6px}.cb-stat{font-size:11px;line-height:12.65px;color:var(--dark);display:flex;align-items:center;flex-wrap:wrap;gap:0 3px;min-height:12.65px}.cb-inline-stat{display:inline-flex;align-items:center}.cb-square{display:inline-block;position:relative;overflow:hidden;width:9.34px;height:9.34px;border:1px solid var(--dark);border-radius:2px;margin-right:3px;box-sizing:border-box}.cb-square.filled:before{content:"";position:absolute;top:-6px;right:-6px;bottom:-6px;left:-6px;background:var(--dark);opacity:.7}.cal-block .badge{font-size:11px;line-height:12.65px;color:#fff;background:#5a6672;border:1px solid transparent;border-radius:3px;padding:0 4px}.cb-wait{display:inline-flex;color:var(--dark)}.cb-glass-sm{width:12px;height:12px}ul.cb-list{list-style:none;margin:0;padding:0}ul.cb-list.crew li{padding:3px 0;color:#1f2428}ul.cb-list.guests{padding:3px 0}ul.cb-list.guests li{color:#697886}ul.cb-list li{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}ul.cb-list li.practice{font-style:italic}.db-theater{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;overflow-y:auto;background:#f9fafbcc;font:13px/15.6px Roboto,sans-serif;letter-spacing:.13px;color:#1f2428;animation:fade .15s ease-out}.inline-swatch{width:12px;height:12px;border-radius:3px;display:inline-block;margin-right:2px}.inline-swatch.sw-open{background:#28ad1f}.inline-swatch.sw-cruise{background:#25a1ef}.inline-swatch.sw-lesson{background:#6b25ef}.db-theater-inner{padding:24px 16px 32px;min-height:100%}.sess{position:relative;max-width:1180px;margin:0 auto;background:#fff;border-radius:8px;overflow:hidden;box-shadow:#1f24280f 0 1px 2px,#1f242824 0 8px 28px -6px,#1f242814 0 0 0 1px}.sw-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:18px 18px 16px 28px;border-top:4px solid var(--mid)}.sw-title{min-width:0}.sw-kicker{display:flex;align-items:center;gap:6px;font-size:14px;line-height:17px;color:#5a6672}.sw-kicker .inline-swatch{width:11px;height:11px;margin:0}.sw-title h2{margin:4px 0 0;display:flex;align-items:center;flex-wrap:wrap;gap:4px 8px;font:700 24px/29px Roboto,sans-serif;letter-spacing:-.015em;color:#1f2428}.sw-chip{display:inline-flex;align-items:center;gap:4px;height:22px;padding:0 8px;border-radius:11px;background:#f1f2f4;font:500 13px/22px Roboto,sans-serif;letter-spacing:.13px;color:#5a6672;white-space:nowrap}.sw-chip.open{background:#e5f5ec;color:#1d875a}.sw-chip.past{background:#fef0e4;color:#c45e0e}.sw-actions{display:flex;align-items:center;gap:6px;flex:none}.sw-btn{display:inline-flex;align-items:center;gap:7px;height:36px;padding:0 14px;border:1px solid rgb(224,227,230);border-radius:5px;background:#fff;font:500 14px/1 Roboto,sans-serif;letter-spacing:.13px;color:#1f2428;cursor:pointer;white-space:nowrap;transition:background-color .12s,transform .16s cubic-bezier(.34,1.56,.64,1)}.sw-btn svg{color:#5a6672}.sw-btn:hover:not(:disabled){background:#f1f2f4}.sw-btn:active:not(:disabled){transform:scale(.97)}.sw-btn:focus-visible,.sw-x:focus-visible{outline:2px solid rgb(37,161,239);outline-offset:1px}.sw-btn.primary{background:#0a6ece;border-color:#0a6ece;color:#fff}.sw-btn.primary svg{color:#fff}.sw-btn.primary:hover:not(:disabled){background:#0860b5}.sw-btn:disabled{opacity:.45;cursor:not-allowed}.sw-x{display:grid;place-items:center;width:36px;height:36px;margin-left:2px;border:0;border-radius:5px;background:none;color:#5a6672;cursor:pointer;transition:background-color .12s}.sw-x:hover{background:#f1f2f4}.sw-x:active{background:#e4e7ea}.sw-note{display:flex;align-items:flex-start;gap:8px;margin:0 28px 16px;padding:9px 12px;font-size:14px;border-radius:5px;background:#fff8e1;box-shadow:inset 3px 0 #f0b429;font-weight:700;color:#1f2428}.sw-note svg{flex:none;margin-top:1px;color:#b07c00}.sw-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid rgb(224,227,230);border-bottom:1px solid rgb(224,227,230);background:#f9fafb}.sw-stat{position:relative;display:flex;flex-direction:column;gap:5px;padding:14px 28px 15px;min-width:0}.sw-stat+.sw-stat{border-left:1px solid rgb(224,227,230)}.sw-k{font-size:12px;line-height:14px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:#697886}.sw-stat b{font:700 24px/28px Roboto,sans-serif;color:#1f2428;font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sw-stat b small{font-size:14px;font-weight:400;color:#697886}.sw-stat b.sw-crew{font-size:17px;line-height:22px;white-space:normal}.sw-stat b.sw-good{color:#1d875a}.sw-bar{display:block;height:4px;margin-top:3px;border-radius:2px;background:#e0e3e6;overflow:hidden}.sw-bar i{display:block;height:100%;background:var(--mid);border-radius:2px}.sw-spots{display:flex;align-items:center;gap:6px;margin-top:4px}.sw-step{display:grid;place-items:center;width:28px;height:28px;border:1px solid rgb(209,214,219);border-radius:6px;background:#fff;font:500 17px/1 Roboto,sans-serif;color:#1f2428;cursor:pointer;transition:background-color .1s,border-color .1s,transform .16s cubic-bezier(.34,1.56,.64,1)}.sw-step:hover:not(:disabled){background:#f1f2f4;border-color:#afb8c0}.sw-step:active:not(:disabled){transform:scale(.92)}.sw-step:focus-visible,.sw-reset:focus-visible{outline:2px solid rgb(37,161,239);outline-offset:1px}.sw-step:disabled{opacity:.4;cursor:not-allowed}.sw-spots-n{min-width:74px;text-align:center;font-size:13px;color:#5a6672;white-space:nowrap}.sw-spots-n b,.sw-spots-ro b{font:700 15px/1 Roboto,sans-serif;color:#1f2428;font-variant-numeric:tabular-nums}.sw-spots-ro{margin-top:4px;font-size:13px;color:#5a6672}.sw-reset{border:0;background:none;padding:2px 4px;border-radius:4px;font:500 12px Roboto,sans-serif;color:#0a6ece;cursor:pointer}.sw-reset:hover{text-decoration:underline}.sw-reset:active{color:#0860b5}.sw-due{font-size:13px;font-weight:700;color:#c94d0d}.sw-none{color:#697886;font-weight:400}.sw-crew-pick{display:flex;flex-wrap:wrap;align-items:center;gap:6px;min-height:28px}.sw-person{display:inline-flex;align-items:center;gap:4px;height:28px;padding:0 4px 0 11px;border-radius:14px;background:#fff;box-shadow:inset 0 0 0 1px #d1d6db;font:700 15px/1 Roboto,sans-serif;color:#1f2428;white-space:nowrap}.sw-person:not(:has(button)){padding-right:11px}.sw-person button{display:grid;place-items:center;width:20px;height:20px;border:0;border-radius:50%;background:none;color:#697886;cursor:pointer;transition:background-color .1s}.sw-person button:hover{background:#f1f2f4;color:#c02b2b}.sw-person button:active{background:#e4e7ea}.sw-person button:focus-visible{outline:2px solid rgb(37,161,239);outline-offset:1px}.sw-add{position:relative;display:inline-flex;align-items:center;gap:5px;height:28px;padding:0 11px;border-radius:14px;border:1px dashed rgb(175,184,192);font:500 13px/1 Roboto,sans-serif;color:#0a6ece;cursor:pointer;white-space:nowrap;transition:background-color .1s,border-color .1s}button.sw-add{font:inherit;background:transparent;cursor:pointer}button.sw-add:focus-visible{outline:2px solid rgb(37,161,239);outline-offset:1px}.sw-add:hover{background:#ecf5fd;border-color:#0a6ece}.sw-add:active{background:#deeefc}.sw-add:focus-within{outline:2px solid rgb(37,161,239);outline-offset:1px}.sw-add select{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer;width:100%;font-size:16px}.sw-list-head{display:flex;align-items:center;justify-content:space-between;padding:16px 28px 8px;font-size:15px}.sw-list{padding:0 12px 12px}.sw-row{display:grid;grid-template-columns:minmax(0,1.4fr) 128px 112px minmax(0,1.2fr) 86px 96px 104px;align-items:center;gap:14px;padding:9px 16px;font-size:14px;cursor:pointer;border-radius:5px;color:#1f2428;text-decoration:none;transition:background-color .1s}.sw-row+.sw-row{box-shadow:0 -1px #eceef0}.sw-row:hover{background:#f4f6f8;text-decoration:none;box-shadow:none}.sw-row:hover+.sw-row{box-shadow:none}.sw-row:active{background:#eceef0}.sw-row:focus-visible{outline:2px solid rgb(37,161,239);outline-offset:-2px}.sw-who{display:flex;align-items:baseline;gap:6px;min-width:0}.sw-who a{min-width:0;overflow:hidden;color:inherit;text-decoration:none;border-radius:2px}.sw-who a:focus-visible{outline:2px solid rgb(37,161,239);outline-offset:2px}.sw-who b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sw-nc{display:flex;justify-content:flex-end}.sw-pierc{display:flex}.sw-pier{display:inline-flex;border:1px solid rgb(209,214,219);border-radius:6px;overflow:hidden;background:#fff}.sw-pier button,.sw-allpier button{height:26px;padding:0 9px;border:0;background:none;font:500 12px/1 Roboto,sans-serif;letter-spacing:.13px;color:#5a6672;white-space:nowrap;cursor:pointer;transition:background-color .1s,color .1s}.sw-pier button+button{border-left:1px solid rgb(209,214,219)}.sw-pier button:hover,.sw-allpier button:hover{background:#ecf5fd;color:#0a6ece}.sw-pier button:active,.sw-allpier button:active{background:#deeefc}.sw-pier button:focus-visible,.sw-allpier button:focus-visible{outline:2px solid rgb(37,161,239);outline-offset:-2px}.sw-pier button.on,.sw-allpier button.on{background:#0a6ece;color:#fff}.sw-pier-tag{display:inline-flex;align-items:center;height:24px;padding:0 9px;border-radius:6px;background:#ecf5fd;color:#0a6ece;font:500 12px/1 Roboto,sans-serif;white-space:nowrap}.sw-pier-none{font-size:12px;color:#8c959e}.sw-allpier{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:#697886}.sw-allpier button{height:26px;border:1px solid rgb(209,214,219);border-radius:6px;background:#fff}.sw-nc-btn{display:inline-flex;align-items:center;height:26px;padding:0 11px;border:1px solid rgb(209,214,219);border-radius:13px;background:#fff;font:500 12px/1 Roboto,sans-serif;letter-spacing:.13px;color:#5a6672;white-space:nowrap;cursor:pointer;transition:background-color .12s,border-color .12s,color .12s,transform .16s cubic-bezier(.34,1.56,.64,1)}button.sw-nc-btn:hover{border-color:#c02b2b;color:#c02b2b;background:#fdf2f2}button.sw-nc-btn:active{transform:scale(.95)}button.sw-nc-btn:focus-visible{outline:2px solid rgb(37,161,239);outline-offset:2px}.sw-nc-btn.on,button.sw-nc-btn.on:hover{background:#c02b2b;border-color:#c02b2b;color:#fff}button.sw-nc-btn.on:hover{background:#a82121}button.sw-nc-btn:disabled{opacity:.6;cursor:progress}.sw-row.is-gone{background:#fdf5f5}.sw-row.is-gone:hover{background:#fbecec}.sw-row.is-gone .sw-who b,.sw-row.is-gone .sw-pax{color:#8c959e;text-decoration:line-through}.sw-gone{color:#c02b2b;font-weight:500}.sw-code{font-size:13px;color:#697886;white-space:nowrap}.sw-pax{white-space:nowrap;color:#1f2428}.sw-src{font-size:13px;color:#697886;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sw-amt{text-align:right;font-variant-numeric:tabular-nums}.sw-badge{display:flex;justify-content:flex-end}.sw-empty{margin:0;padding:8px 16px 16px;font-size:14px;color:#697886}.sw-list.is-off .sw-row{opacity:.6}.sw-off-toggle{display:flex;align-items:center;gap:6px;width:100%;padding:11px 28px;border:0;border-top:1px solid rgb(224,227,230);background:none;font:500 13px/16px Roboto,sans-serif;letter-spacing:.13px;color:#5a6672;cursor:pointer;text-align:left}.sw-off-toggle:hover{background:#f9fafb}.sw-off-toggle:focus-visible{outline:2px solid rgb(37,161,239);outline-offset:-2px}.sw-chev{display:inline-block;width:8px;font-size:15px;line-height:1;transition:transform .15s}.sw-foot{margin:0;padding:10px 28px 12px;border-top:1px solid rgb(224,227,230);font-size:12px;color:#697886}.badge-st{display:inline-block;font-size:12px;line-height:16px;color:#fff;border:1px solid transparent;border-radius:3px;padding:0 4px;white-space:nowrap}.badge-paid{background:#1d875a}.badge-underpaid{background:#c94d0d}.badge-cancelled{background:#697886}.badge-practice{background:#f37f25}.badge-paying{background:#25a1ef}@media (max-width: 760px){.db-theater-inner{padding:0}.sess{border-radius:0;min-height:100vh}.sw-head{padding:12px 10px 12px 16px;flex-wrap:wrap}.sw-title h2{font-size:21px;line-height:26px}.sw-stat b{font-size:20px;line-height:24px}.sw-title{flex:1 1 100%;order:2}.sw-actions{order:1;width:100%}.sw-x{margin-left:auto}.sw-note{margin:0 16px 10px}.sw-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.sw-unit{display:none}.sw-spots-n{min-width:52px}.sw-spots{gap:5px}.sw-stat{padding:11px 16px 12px}.sw-stat:nth-child(3){border-left:0}.sw-stat:nth-child(n+3){border-top:1px solid rgb(224,227,230)}.sw-list-head{padding:14px 16px 6px}.sw-off-toggle,.sw-foot{padding-left:16px;padding-right:16px}.sw-list{padding:0 4px 8px}.sw-row{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"who badge" "pax amt" "src src" "pier nc";gap:4px 10px;padding:10px 12px}.sw-pierc{grid-area:pier;align-items:center}.sw-list-head{flex-wrap:wrap;gap:8px}.sw-who{grid-area:who}.sw-nc{grid-area:nc}.sw-badge{grid-area:badge}.sw-pax{grid-area:pax;font-size:12px}.sw-amt{grid-area:amt;font-size:12px}.sw-src{grid-area:src}}.fhtb-btn{white-space:nowrap}.fhtb-btn .lbl-short{display:none}@media (max-width: 760px){table.bookings-grid col:first-child{width:64px}table.bookings-grid{min-width:1000px}td.bookings-td-legend{padding:3px 4px 5px 0;font-size:12px}.fhtb .search,.fhtb .search input{width:110px}.fhtb-btn .lbl-long{display:none}.fhtb-btn .lbl-short{display:inline}}.fhtb-btn.highlighted,.fhtb-btn.highlighted svg{color:#004b92}tr.oos-row td{padding:4px 0}.oos-chip{display:flex;align-items:center;gap:4px;margin:2px 5px;padding:2px 4px 2px 7px;border:1px solid rgb(192,43,43);border-radius:5px;background:#fdeeee;color:#961e1e;font:11px/14px Roboto,sans-serif;letter-spacing:.13px;white-space:nowrap;overflow:hidden}.oos-chip span{overflow:hidden;text-overflow:ellipsis}.oos-chip button{margin-left:auto;border:0;background:none;color:inherit;font-size:15px;line-height:1;cursor:pointer;padding:0 3px;border-radius:3px}.oos-chip button:hover{background:#c02b2b1f}.impact{background:var(--due-bg);color:var(--due);border-radius:10px;padding:10px 12px;font-size:13px}.impact ul{margin:6px 0 0;padding-left:18px;color:var(--ink)}.rtabs{display:flex;gap:4px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding-bottom:0;margin-bottom:-8px}.rtabs a{padding:9px 12px;color:var(--ink-soft);font-weight:700;border-bottom:2px solid transparent;margin-bottom:-1px;transition:color .12s}.rtabs a:hover{color:var(--ink);text-decoration:none}.rtabs a.on{color:var(--navy);border-bottom-color:var(--marine)}.bars{display:flex;flex-direction:column;gap:10px}.bar-row{display:grid;grid-template-columns:86px 1fr 38px 90px;gap:10px;align-items:center}.bar-label{color:var(--ink-soft);font-weight:700;font-size:13px}.bar-track{height:14px;background:var(--ground);border-radius:4px;overflow:hidden}.bar-fill{display:block;height:100%;background:var(--marine);border-radius:4px}.bar-fill.thin{background:var(--due)}.bar-val{font-weight:800;text-align:right}.bar-sub{font-size:12px}@media (max-width: 640px){.bar-row{grid-template-columns:70px 1fr 30px}.bar-sub{display:none}}body.rebooking{padding-left:230px}.sidepanel{position:fixed;left:0;top:0;bottom:0;width:230px;z-index:35;overflow-y:auto;background:#263844;box-shadow:#1e2a31 -6px -4px 20px inset;color:#fff;font:13px/15.6px Roboto,-apple-system,sans-serif;letter-spacing:.13px}.sidepanel-inner{padding:15px 10px 20px}.btn-stop-rebooking{display:flex;align-items:center;gap:12px;width:204px;height:40px;margin-bottom:15px;padding:5px 15px;border:1px solid transparent;border-radius:4px;background:#c02b2b;color:#fff;font:700 13px/15.6px Roboto,sans-serif;letter-spacing:.13px;text-align:left;cursor:pointer;transition:background-color .12s}.btn-stop-rebooking:hover{background:#ab2222}.btn-stop-rebooking:active{background:#961c1c}.btn-stop-rebooking:focus-visible{outline:2px solid #fff;outline-offset:2px}.sidepanel-booking-contact{list-style:none;margin:0;padding:0 0 15px}.sidepanel-booking-contact b{font-size:15px;line-height:18px}.sidepanel-booking-contact li{overflow-wrap:anywhere}.badge-booking-pk{display:inline-block;background:#697886;border-radius:3px;padding:0 4px;font-size:13px;line-height:16px;border:1px solid transparent}a.booking-block{display:block;color:#fff;text-decoration:none;padding:15px 0 0;border-radius:3px}a.booking-block:hover{text-decoration:none;background:#ffffff0a}a.booking-block:focus-visible{outline:2px solid rgb(133,197,255);outline-offset:2px}.bb-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:3px}.bb-head h2{margin:0;font-size:16px;line-height:17.6px;font-weight:400;display:flex;align-items:center;gap:4px}.bb-date{color:#abb8c1}.bb-guests{padding-top:8px}.bb-meta{margin-top:8px;font-size:12px;line-height:14.4px;color:#abb8c1}.bb-meta b{display:block;padding-bottom:2px}table.sidepanel-card{width:100%;margin-top:16px;border-collapse:collapse;border:1px solid rgba(255,255,255,.14);border-radius:3px}table.sidepanel-card td{padding:3px 5px;font-size:13px;line-height:15.6px;border:0;color:#fff}table.sidepanel-card td:last-child{text-align:right;white-space:nowrap}table.sidepanel-card.lines{margin-top:8px}table.sidepanel-card tr.is-header td{padding-top:5px;padding-bottom:5px;font-weight:700}table.sidepanel-card tr.is-header td:last-child{font-weight:400}.rb-popover{position:fixed;z-index:45;width:172px;background:#fff;border-radius:4px;box-shadow:#1f242840 0 4px 16px,#1f24281f 0 0 0 1px;font:13px/15.6px Roboto,sans-serif;letter-spacing:.13px;color:#1f2428;padding:5px 0;animation:fade .12s ease-out}.rb-triangle{position:absolute;top:14px;width:10px;height:10px;background:#fff;transform:rotate(45deg);box-shadow:#1f24281f -1px 1px}.rb-popover.on-right .rb-triangle{left:-5px}.rb-popover.on-left .rb-triangle{right:-5px;box-shadow:#1f24281f 1px -1px}.rb-popover ul{list-style:none;margin:0;padding:0;position:relative}.rb-popover li button{display:flex;align-items:center;gap:6px;width:100%;border:0;background:none;text-align:left;padding:8px 25px 8px 15px;font:13px/15.6px Roboto,sans-serif;letter-spacing:.13px;color:#1f2428;cursor:pointer;transition:background-color .1s}.rb-popover li button.green{color:#1d875a;font-weight:700}.rb-popover li button:hover{background:#f1f2f4}.rb-popover li button:active{background:#e4e7ea}.rb-popover li button:focus-visible{outline:2px solid rgb(37,161,239);outline-offset:-2px}.rb-popover li button:disabled{color:#afb8c0;cursor:not-allowed;background:none}.rb-capacity{position:relative;margin-top:5px;border-top:1px solid rgb(224,227,230);padding:7px 15px 3px;font-size:12px}.rb-capacity>div{display:flex;align-items:center;gap:10px}.rb-capacity>div>span:first-child{flex:1;color:#5a6672}.rb-capacity .cb-square{--dark: rgb(31, 36, 40)}.rb-capacity span{display:inline-flex;align-items:center}body:has(main.fhbook){background:#f9fafb}main.fhbook{max-width:none;padding:17px 15px 40px;font:13px/15.6px Roboto,-apple-system,sans-serif;letter-spacing:.13px;color:#1f2428}.bookform-page{width:100%;max-width:1100px;margin:0 auto;background:#fff;box-shadow:#e0e3e6 0 0 0 1px;border-radius:3px}.book-form-tb{display:flex;align-items:center;flex-wrap:wrap;min-height:37px;padding:3px 10px;border-bottom:1px solid rgb(209,214,219);gap:0}.tb-sep{width:1px;height:18px;background:#e0e3e6;margin:0 6px}.tb-text{display:inline-flex;align-items:center;height:30px;padding:0 8px;gap:5px;font-size:13px}.fh-blue{color:#0a6ece}.tb-back{width:30px;justify-content:center;padding:0}.tb-cap{color:var(--dark)}.tb-cap .cb-square{width:11px;height:11px}.tb-cap .cb-square+.cb-square,.tb-cap i:nth-of-type(2){margin-left:8px}.fh-grey{color:#697886}.create-booking{display:grid;grid-template-columns:302px minmax(0,1fr) 302px;align-items:start}.bf-col{min-width:0}.bf-left{border-right:1px solid rgb(224,227,230);align-self:stretch}.bf-right{border-left:1px solid rgb(224,227,230);align-self:stretch}.auth-booking-ava{padding:12px 15px 12px 12px;border-bottom:1px solid rgb(224,227,230);display:flex;flex-direction:column;gap:4px}.auth-booking-ava>div:nth-child(2){font-size:15px;line-height:18px;color:#0a6ece}.ava-open{background:#edfdec}.ava-cruise{background:#ecf7fe}.ava-lesson{background:#f2ecfe}.ava-item{display:flex;align-items:center;gap:4px;color:#0a6ece}.bf-section{padding:12px 15px 12px 12px;border-bottom:1px solid rgb(224,227,230);display:flex;flex-direction:column;gap:10px;align-items:flex-start}.bf-check{display:flex;align-items:center;gap:6px;color:#5a6672;cursor:not-allowed}.form-link-subtle{border:0;background:none;padding:0;font:inherit;color:#0a6ece;cursor:pointer}.form-link-subtle:hover{text-decoration:underline}.form-link-subtle:focus-visible{outline:2px solid rgb(37,161,239);outline-offset:2px;border-radius:2px}.bf-note{width:100%;min-height:70px;border:1px solid rgb(209,214,219);border-radius:3px;padding:6px 8px;font:inherit;resize:vertical;box-sizing:border-box}.bf-note:focus{outline:none;border-color:#25a1ef}.ct-count{display:flex;margin:12px 15px 0 12px;border:1px solid rgb(209,214,219);border-radius:4px;overflow:hidden;min-height:104px;cursor:pointer}.ct-count:last-child{margin-bottom:12px}.customer-select{position:relative;flex:none;width:75px;background:#0a6ece;color:#fff;display:flex;align-items:center;justify-content:center;gap:6px;transition:background-color .12s}.ct-count:hover .customer-select{background:#0860b5}.customer-select:focus-within{box-shadow:inset 0 0 0 2px #85c5ff}.customer-select-count{font-size:17px;line-height:20.4px;min-width:20px;text-align:center}.customer-select select{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer;width:100%;font-size:16px}.customer-select-text{padding:5px 12px;display:flex;flex-direction:column;gap:4px;min-width:0}.customer-select-text b{font-weight:700}.customer-select-note{color:#697886}.bf-mid{padding:15px 25px;display:flex;flex-direction:column;gap:15px}.cf-label{display:flex;flex-direction:column;gap:4px;max-width:446px}.bf-select{height:32px;border:1px solid rgb(209,214,219);border-radius:3px;background:#fff;padding:0 8px;font:13px Roboto,sans-serif;color:#1f2428}.bf-select:focus{outline:none;border-color:#25a1ef}table.book-form-totals{width:calc(100% - 27px);margin:10px 15px 10px 12px;border-collapse:collapse}table.book-form-totals th{text-align:left;font:700 13px/15.6px Roboto,sans-serif;letter-spacing:.13px;text-transform:none;padding:0 0 6px;color:#1f2428;border:0}table.book-form-totals td{padding:1px 5px 1px 0;height:20px;font-size:13px;color:#5a6672;border:0}table.book-form-totals td:first-child{width:127px}table.book-form-totals tr.final td{font-size:14px;line-height:16.8px;font-weight:700}.bf-help{margin:0;padding:12px 15px 12px 12px;border-top:1px solid rgb(224,227,230);border-bottom:1px solid rgb(224,227,230);color:#5a6672}.bf-cancel{border-bottom:1px solid rgb(224,227,230)}.bf-cancel button{width:100%;border:0;background:none;text-align:left;padding:9px 15px;font:700 13px/15.6px Roboto,sans-serif;color:#1f2428;cursor:pointer}.bf-cancel button:hover{background:#f9fafb}.bf-cancel button:focus-visible{outline:2px solid rgb(37,161,239);outline-offset:-2px}.bf-cancel p{margin:0;padding:0 15px 12px;color:#5a6672}.bf-blocked{margin:12px 15px 0 12px;padding:8px 10px;border-radius:3px;background:#fff6e5;color:#7a4a00}.btn-rebook-now{display:block;width:274px;max-width:calc(100% - 27px);height:54px;margin:12px 15px 15px 12px;border:1px solid transparent;border-radius:5px;background:#0a6ece;color:#fff;font:700 18px/21.6px Roboto,sans-serif;letter-spacing:.13px;cursor:pointer;transition:background-color .12s,transform .12s cubic-bezier(.34,1.56,.64,1)}.btn-rebook-now:hover{background:#0860b5}.btn-rebook-now:active{transform:scale(.98)}.btn-rebook-now:focus-visible{outline:2px solid rgb(133,197,255);outline-offset:2px}.btn-rebook-now:disabled{background:#afb8c0;cursor:not-allowed;transform:none}@media (max-width: 900px){body.rebooking{padding-left:0}.sidepanel{position:static;width:auto;box-shadow:none}.sidepanel-inner{padding:12px 16px;display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.btn-stop-rebooking{width:100%;grid-column:1 / -1}.badge-booking-pk{justify-self:start}.create-booking{grid-template-columns:1fr}.bf-left,.bf-right{border:0;border-bottom:1px solid rgb(224,227,230)}.btn-rebook-now{width:calc(100% - 27px)}}@media (max-width: 520px){.sidepanel-inner{grid-template-columns:1fr}}ul.cb-list li.gone{text-decoration:line-through;opacity:.7}.card-head{display:flex;align-items:center;justify-content:space-between;gap:var(--s3);flex-wrap:wrap;margin-bottom:var(--s3)}.card-head h2{margin:0}.check{display:inline-flex;align-items:center;gap:8px;font-weight:600;cursor:pointer}.check input{width:16px;height:16px;accent-color:var(--marine)}.sched{display:flex;flex-direction:column}.sched-row{display:grid;grid-template-columns:92px minmax(0,1.2fr) auto minmax(0,1fr) 70px 14px;align-items:center;gap:var(--s3);width:100%;padding:10px;border:0;border-radius:8px;background:none;text-align:left;cursor:pointer;transition:background-color .12s}.sched-row+.sched-row{box-shadow:0 -1px 0 var(--line)}.sched-row:hover{background:var(--ground);box-shadow:none}.sched-row:hover+.sched-row{box-shadow:none}.sched-row:active{background:var(--sand)}.sched-row.is-off{opacity:.55}.sched-time{font-variant-numeric:tabular-nums;font-weight:800;color:var(--navy);white-space:nowrap}.sched-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sched-days{display:inline-flex;gap:3px}.sched-days i{display:grid;place-items:center;width:22px;height:22px;border-radius:6px;font:700 11px/1 var(--sans);font-style:normal;color:var(--muted);background:var(--ground)}.sched-days i.on{background:var(--sky);color:var(--navy)}.sched-season{color:var(--ink-soft);font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sched-state{display:flex;justify-content:flex-end}.sched-chev{color:var(--muted);font-size:18px;line-height:1}.sched-preview{display:flex;flex-direction:column}.pv-day{display:grid;grid-template-columns:110px minmax(0,1fr);gap:var(--s3);padding:7px 0;align-items:start}.pv-day+.pv-day{border-top:1px solid var(--line)}.pv-date{font-weight:700;color:var(--ink-soft);font-size:13px;padding-top:3px;white-space:nowrap}.pv-times{display:flex;flex-wrap:wrap;gap:5px}.pv-t{display:inline-flex;align-items:baseline;gap:3px;padding:3px 8px;border-radius:6px;background:var(--ground);font:700 12.5px/1.3 var(--sans);font-variant-numeric:tabular-nums;color:var(--ink);white-space:nowrap}.pv-t small{font-weight:600;font-size:11px}.pv-t.fh{background:var(--due-bg);color:var(--due)}.pv-t.ours{background:var(--sky);color:var(--navy);box-shadow:inset 0 0 0 1px #0c6cc059}.pv-t.closed{text-decoration:line-through;color:var(--muted)}.daypick{display:flex;flex-wrap:wrap;gap:4px}.daypick button{height:32px;min-width:46px;padding:0 10px;border:1px solid var(--line);border-radius:8px;background:var(--surface);font-weight:700;font-size:13px;color:var(--ink-soft);cursor:pointer;transition:background-color .12s,color .12s,transform .16s var(--ease)}.daypick button:hover{background:var(--ground)}.daypick button:active{transform:scale(.95)}.daypick button.on{background:var(--marine);border-color:var(--marine);color:#fff}.daypresets{display:flex;gap:10px;margin-top:2px}.daypresets button{border:0;background:none;padding:0;font-size:12.5px;font-weight:700;color:var(--marine);cursor:pointer}.daypresets button:hover{text-decoration:underline}.closeform{display:flex;flex-wrap:wrap;gap:var(--s3);align-items:end}.closeform .field{flex:0 0 auto}.closeform .field.grow{flex:1 1 200px}.closures{display:flex;flex-direction:column}.closure{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;padding:10px 0}.closure+.closure{border-top:1px solid var(--line)}.closure .btn{margin-left:auto}table.prices td{vertical-align:middle}.money-in{display:inline-flex;align-items:center;height:34px;border:1px solid var(--line);border-radius:9px;background:var(--surface);padding:0 0 0 10px;transition:border-color .12s,box-shadow .12s}.money-in:focus-within{border-color:var(--ocean);box-shadow:0 0 0 3px #009bff26}.money-in span{color:var(--muted);font-weight:700}.money-in input{width:86px;height:32px;border:0;background:none;padding:0 10px 0 4px;font:700 14px var(--sans);font-variant-numeric:tabular-nums;text-align:right;color:var(--ink)}.money-in input:focus{outline:none}.switch{display:inline-flex;align-items:center;gap:8px;cursor:pointer;font-size:13px;color:var(--ink-soft)}.switch input{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:34px;height:20px;border-radius:10px;background:var(--sand);position:relative;cursor:pointer;transition:background-color .15s;margin:0}.switch input:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 2px #0a3b6640;transition:transform .18s var(--ease)}.switch input:checked{background:var(--good)}.switch input:checked:after{transform:translate(14px)}.switch input:focus-visible{outline:2px solid var(--ocean);outline-offset:2px}.groups{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:var(--s3);padding-top:var(--s3);border-top:1px solid var(--line)}.groups .soft{font-weight:700;margin-right:4px}.rules{display:flex;flex-wrap:wrap;align-items:end;gap:var(--s3);margin-top:var(--s3);padding-top:var(--s3);border-top:1px solid var(--line)}.rules .field{flex:0 1 220px}.unit-in{display:flex;align-items:center;gap:8px}.unit-in input{width:80px!important}.unit-in i{font-style:normal;color:var(--ink-soft);font-size:13px;white-space:nowrap}.grouprow{display:grid;grid-template-columns:1fr 1fr auto;gap:var(--s3);align-items:end}@media (max-width: 760px){.sched-row{grid-template-columns:76px minmax(0,1fr) 14px;grid-template-areas:"time label chev" "days days chev" "season state chev";gap:6px 10px}.sched-time{grid-area:time}.sched-label{grid-area:label}.sched-days{grid-area:days}.sched-season{grid-area:season}.sched-state{grid-area:state}.sched-chev{grid-area:chev}.pv-day{grid-template-columns:1fr;gap:4px}.closure .btn{margin-left:0}}.pp-bar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s3)}.pp-search{height:36px!important;width:min(260px,100%)}.pp-list{padding:var(--s2);display:flex;flex-direction:column}.pp-row{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1.2fr) minmax(0,1fr) 150px 120px 82px;align-items:center;gap:var(--s3);width:100%;padding:11px 12px;border:0;border-radius:8px;background:none;text-align:left;cursor:pointer;transition:background-color .12s}.pp-row+.pp-row{box-shadow:0 -1px 0 var(--line)}.pp-row:hover{background:var(--ground);box-shadow:none}.pp-row:hover+.pp-row{box-shadow:none}.pp-row:active{background:var(--sand)}.pp-who,.pp-paid,.pp-code{display:flex;flex-direction:column;min-width:0}.pp-who b,.pp-who small,.pp-what,.pp-code code{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pp-who small,.pp-paid small,.pp-what small{color:var(--ink-soft);font-size:12px;font-weight:500}.pp-code code{font-family:var(--mono);font-size:12px}.pp-use{display:flex;flex-direction:column;gap:4px}.pp-n{font-size:12.5px;color:var(--ink-soft);white-space:nowrap}.pp-n b{color:var(--ink);font-variant-numeric:tabular-nums}.pp-track{display:block;height:4px;border-radius:2px;background:var(--ground);overflow:hidden}.pp-track i{display:block;height:100%;background:var(--marine);border-radius:2px}.pp-paid b{font-variant-numeric:tabular-nums}.pp-state{display:flex;justify-content:flex-end}.pp-summary{padding:10px 12px;border-radius:9px;background:var(--ground)}.pp-rides{display:flex;flex-direction:column;gap:2px;padding-top:var(--s2);border-top:1px solid var(--line)}.pp-rides>b{font-size:12px;color:var(--ink-soft);margin-bottom:4px}.pp-ride{display:grid;grid-template-columns:110px minmax(0,1fr) auto;gap:var(--s3);padding:6px 8px;border-radius:7px;color:var(--ink);font-size:13px}.pp-ride:hover{background:var(--ground);text-decoration:none}.pp-ride.is-off{opacity:.55}.code-off{display:flex;align-items:center;gap:var(--s2);flex-wrap:wrap}.code-off input{width:90px!important}.checks{display:flex;flex-wrap:wrap;gap:var(--s4)}table.codes tbody tr{cursor:pointer;transition:background-color .12s}table.codes tbody tr:hover{background:var(--ground)}table.codes tr.is-off td{opacity:.55}table.codes code{font-family:var(--mono);font-size:12.5px;font-weight:700}.field input:disabled{background:var(--ground);color:var(--ink-soft)}@media (max-width: 900px){.pp-row{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"who state" "what paid" "use code";gap:6px 12px}.pp-who{grid-area:who}.pp-state{grid-area:state}.pp-what{grid-area:what}.pp-paid{grid-area:paid;text-align:right}.pp-use{grid-area:use}.pp-code{grid-area:code;text-align:right}}.when-btn{border:1px dashed var(--line);background:none;border-radius:8px;padding:4px 9px;font:600 12.5px var(--sans);color:var(--ink-soft);cursor:pointer;white-space:nowrap;transition:background-color .12s,border-color .12s}.when-btn:hover{background:var(--ground);border-color:var(--muted)}.when-btn:active{transform:scale(.97)}.when-btn.set{border-style:solid;border-color:transparent;background:var(--sky);color:var(--navy)}.sw-wl{border-top:1px solid rgb(224,227,230)}.sw-wl-fit{margin:0 28px 8px;padding:8px 12px;border-radius:6px;background:#e5f5ec;color:#1d875a;font-weight:700;font-size:13px}.sw-row.sw-wl-row{grid-template-columns:minmax(0,1.4fr) 90px minmax(0,2fr) auto;cursor:default}.sw-row.sw-wl-row:hover{background:none}.sw-row.sw-wl-row.fits{background:#f4fbf7}.sw-wl-act{display:flex;gap:6px;justify-content:flex-end;align-items:center}.sw-wl-act .sw-btn{height:28px;padding:0 12px;font-size:13px}@media (max-width: 760px){.sw-wl-fit{margin:0 16px 8px}.sw-row.sw-wl-row{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"who pax" "src src" "act act"}.sw-wl-row .sw-who{grid-area:who}.sw-wl-row .sw-pax{grid-area:pax}.sw-wl-row .sw-src{grid-area:src;white-space:normal}.sw-wl-act{grid-area:act;justify-content:flex-start}}.wv{min-height:100vh;background:var(--ground);padding:24px 16px 48px}.wv-card{max-width:640px;margin:0 auto;background:var(--surface);border-radius:16px;box-shadow:var(--shadow-1);padding:28px 28px 24px;display:flex;flex-direction:column;gap:16px}.wv-brand{font:800 15px/1 var(--sans);letter-spacing:-.01em;color:var(--navy)}.wv h1{margin:4px 0 0;font:600 26px/1.15 var(--display);letter-spacing:-.03em;color:var(--ink);text-wrap:balance}.wv h2{margin:0;font:800 13px/1.2 var(--sans);letter-spacing:.07em;text-transform:uppercase;color:var(--ink-soft)}.wv-soft{margin:0;color:var(--ink-soft);line-height:1.6}.wv-trip{display:flex;flex-direction:column;gap:2px;padding:12px 14px;border-radius:10px;background:var(--sky);color:var(--navy)}.wv-trip span{font-size:13.5px;color:var(--ink-soft)}.wv-progress{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:14px;color:var(--ink-soft)}.wv-dots{display:flex;gap:5px}.wv-dots i{width:12px;height:12px;border-radius:50%;background:var(--sand)}.wv-dots i.on{background:var(--good)}.wv-done{padding:12px 14px;border-radius:10px;background:var(--good-bg);color:var(--good);font-weight:700}.wv-text{max-height:46vh;overflow-y:auto;padding:14px 16px;border:1px solid var(--line);border-radius:10px;background:#fbfcfd;font-size:14px;line-height:1.65;color:var(--ink)}.wv-text p{margin:0 0 12px}.wv-text:focus-visible{outline:2px solid var(--ocean);outline-offset:2px}.wv-form{display:flex;flex-direction:column;gap:12px;padding-top:6px}.wv-form label{display:flex;flex-direction:column;gap:6px;font:700 12.5px/1.2 var(--sans);color:var(--ink-soft)}.wv-form label i{font-style:normal;font-weight:500;color:var(--muted)}.wv-form input:not([type=checkbox]){height:44px;border:1px solid var(--line);border-radius:10px;padding:0 12px;font:500 16px var(--sans);color:var(--ink);background:var(--surface)}.wv-form input:not([type=checkbox]):focus{outline:none;border-color:var(--ocean);box-shadow:0 0 0 3px #009bff26}.wv-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.wv-form label.wv-check{flex-direction:row;align-items:flex-start;gap:10px;font:500 14px/1.5 var(--sans);color:var(--ink);cursor:pointer}.wv-check input{width:20px;height:20px;margin-top:1px;flex:none;accent-color:var(--marine)}.wv-err{margin:0;padding:10px 12px;border-radius:9px;background:var(--bad-bg);color:var(--bad);font-weight:600}.wv-btn{height:50px;border:0;border-radius:12px;background:var(--marine);color:#fff;font:800 16px var(--sans);cursor:pointer;transition:background-color .15s,transform .18s var(--ease)}.wv-btn:hover:not(:disabled){background:var(--ocean-deep)}.wv-btn:active:not(:disabled){transform:scale(.98)}.wv-btn:focus-visible{outline:2px solid var(--ocean);outline-offset:3px}.wv-btn:disabled{opacity:.45;cursor:not-allowed}.wv-fine{margin:0;font-size:12px;color:var(--muted);text-align:center}@media (max-width: 520px){.wv{padding:0}.wv-card{border-radius:0;min-height:100vh;padding:22px 18px}.wv-row{grid-template-columns:1fr}}.wl-link{display:inline-flex;gap:6px;align-items:center}.wl-link input{height:28px;width:200px;border:1px solid var(--line);border-radius:8px;padding:0 8px;font:12px var(--mono);color:var(--ink-soft);background:var(--ground)}.em-row{display:flex;justify-content:space-between;align-items:center;gap:10px;width:100%;padding:8px 6px;border:0;border-radius:8px;background:none;text-align:left;cursor:pointer;transition:background-color .12s}.em-row:hover{background:var(--ground)}.em-row:active{background:var(--sand)}.em-body{border-radius:12px;max-height:62vh;overflow:auto;border:1px solid var(--line)}.em-list{display:flex;flex-direction:column;padding:var(--s2)}.em-tpl{display:flex;align-items:center;gap:var(--s3);padding:4px 10px 4px 0}.em-tpl+.em-tpl{border-top:1px solid var(--line)}.em-tpl.is-off .em-tpl-main{opacity:.5}.em-tpl-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;padding:10px 12px;border:0;border-radius:8px;background:none;text-align:left;cursor:pointer;transition:background-color .12s}.em-tpl-main:hover{background:var(--ground)}.em-tpl-main:active{background:var(--sand)}.em-tpl-main .soft{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pier-row{display:grid;grid-template-columns:60px minmax(0,1.4fr) minmax(0,1fr) auto;align-items:end;gap:var(--s3);padding:8px 0}.pier-row+.pier-row{border-top:1px solid var(--line)}.pier-row>b{padding-bottom:10px;color:var(--navy)}.pier-row .pier-arrival{grid-column:2 / 4}.pier-row .pier-arrival small{font-weight:400;color:var(--muted)}.rem-row{display:flex;align-items:center;gap:var(--s3);padding:6px 0;flex-wrap:wrap}.rem-row>span:first-child{flex:0 0 160px;font-weight:700}.modal:has(.tpl-grid){width:min(1040px,100%)}.tpl-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--s4)}.tpl-edit{display:flex;flex-direction:column;gap:var(--s3);min-width:0}.field textarea.tpl-body{height:380px;font:13px/1.55 var(--mono)}.tpl-vars{display:flex;flex-wrap:wrap;gap:4px}.tpl-vars button{border:1px solid var(--line);background:var(--surface);border-radius:6px;padding:3px 6px;font:11.5px var(--mono);color:var(--marine);cursor:pointer}.tpl-vars button:hover{background:var(--sky)}.tpl-preview{display:flex;flex-direction:column;gap:8px;min-width:0}.tpl-pv-head{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap;font-size:12.5px}.tpl-subj{font-size:14px}.tpl-html{border-radius:12px;overflow:auto;max-height:520px;border:1px solid var(--line)}.wv-admin .wv-text{max-height:none}.wv-meta{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:10px}@media (max-width: 900px){.tpl-grid,.pier-row{grid-template-columns:1fr}.pier-row .pier-arrival{grid-column:auto}}.cp-link{display:flex;gap:var(--s4);align-items:center;flex-wrap:wrap}.cp-link img{border-radius:10px;border:1px solid var(--line);background:#fff}.cp-side{display:flex;flex-direction:column;gap:8px;min-width:0;flex:1 1 220px}.cp-side>b{font-size:24px;font-variant-numeric:tabular-nums}.cp-side .wl-link input{width:100%;min-width:0}.cp-side .wl-link{width:100%}.cp-wait{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--ink-soft)}.cp-dot{width:8px;height:8px;border-radius:50%;background:var(--ocean);animation:cp-pulse 1.2s ease-in-out infinite}@keyframes cp-pulse{50%{opacity:.25;transform:scale(.8)}}.cp-row{display:grid;grid-template-columns:90px 1fr auto;gap:10px;align-items:center;padding:4px 8px;font-size:13px}.cb-len{margin-left:auto;font-weight:700;font-size:11px;line-height:13px;padding:0 5px;border-radius:3px;background:var(--mid);color:#fff}.sw-time-btn{border:0;background:none;padding:2px 6px;border-radius:5px;font:500 13px Roboto,sans-serif;color:#0a6ece;cursor:pointer;transition:background-color .1s}.sw-time-btn:hover{background:#ecf5fd}.sw-time-btn:active{background:#deeefc}.sw-time-btn:focus-visible{outline:2px solid rgb(37,161,239);outline-offset:1px}ul.cb-list li:has(.cb-name){display:flex}.cb-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cb-n{flex:none;white-space:nowrap}.sw-k2{margin-top:8px}.vx-row{display:flex;flex-wrap:wrap;gap:6px}.vx{position:relative;display:inline-flex;align-items:center;gap:4px;height:28px;padding:0 12px;border-radius:14px;border:0;overflow:hidden;font:800 13px/1 Roboto,sans-serif;letter-spacing:.02em;cursor:pointer;white-space:nowrap;filter:grayscale(.85);opacity:.42;transition:opacity .15s,filter .15s,transform .16s cubic-bezier(.34,1.56,.64,1)}.vx:hover{opacity:.7;filter:grayscale(.3)}.vx:active{transform:scale(.94)}.vx:focus-visible{outline:2px solid rgb(37,161,239);outline-offset:2px}.vx.on{opacity:1;filter:none;box-shadow:0 1px 2px #0a3b6633,0 0 0 2px #fff,0 0 0 3.5px currentColor}span.vx{cursor:default}.vx-baby-blue{background:#8ccdf8;color:#0a3b66}.vx-black-orange{background:linear-gradient(115deg,#141414 0,#141414 64%,#f26b1d 64%,#f26b1d 78%,#141414 78%);color:#fff}.vx-black-orange.on{box-shadow:0 1px 2px #00000040,0 0 0 2px #fff,0 0 0 3.5px #f26b1d}.vx-sparkle-navy{color:#fff;background:radial-gradient(circle at 14% 30%,rgba(255,255,255,.95) 0 .7px,transparent 1.2px),radial-gradient(circle at 38% 72%,rgba(255,255,255,.8) 0 .6px,transparent 1.1px),radial-gradient(circle at 63% 22%,rgba(190,220,255,.9) 0 .7px,transparent 1.2px),radial-gradient(circle at 84% 64%,rgba(255,255,255,.85) 0 .6px,transparent 1.1px),radial-gradient(circle at 92% 18%,rgba(160,205,255,.8) 0 .5px,transparent 1px),radial-gradient(circle at 28% 50%,rgba(120,170,255,.5) 0 1.4px,transparent 2.6px),linear-gradient(135deg,#0d2e6e,#081b45 55%,#12357d)}.vx-sparkle-navy.on{box-shadow:0 1px 2px #081b4559,0 0 0 2px #fff,0 0 0 3.5px #0d2e6e}.cal-status-icon.done{color:#1d875a}.cb-tick{vertical-align:-1px}main.login{max-width:400px;margin:0 auto;padding-top:12vh}.login-card{display:flex;flex-direction:column;gap:14px;padding:24px}.login-brand{display:flex;align-items:center;gap:12px;font:800 17px/1.2 var(--sans);color:var(--navy);letter-spacing:-.01em}.login-brand img{border-radius:10px;flex:none}.pw{position:relative;display:block}.pw input{padding-right:64px!important}.pw-show{position:absolute;right:6px;top:50%;transform:translateY(-50%);height:28px;padding:0 9px;border:0;border-radius:7px;background:var(--ground);font:700 12px var(--sans);color:var(--ink-soft);cursor:pointer}.pw-show:hover{background:var(--sky)}.pw-show:focus-visible{outline:2px solid var(--ocean);outline-offset:1px}.login-btn{height:42px;font-size:15px}.login-ok{padding:10px 12px;border-radius:10px;background:var(--good-bg);color:var(--good);font-weight:600;font-size:13px}.login-link{align-self:center;border:0;background:none;padding:4px;font:600 13px var(--sans);color:var(--marine);cursor:pointer}.login-link:hover{text-decoration:underline}.login-link:focus-visible{outline:2px solid var(--ocean);outline-offset:2px;border-radius:4px}.sw-chip.weather{background:var(--bad-bg);color:var(--bad)}.wx-list{list-style:none;margin:0;padding:0;border:1px solid var(--line);border-radius:9px;max-height:240px;overflow:auto}.wx-list li{display:flex;justify-content:space-between;gap:12px;padding:8px 12px;border-top:1px solid var(--line)}.wx-list li:first-child{border-top:0}.wx-list li span{min-width:0;overflow-wrap:anywhere}.wx-list li small{color:var(--muted);font-weight:400}.wx-list li b{white-space:nowrap;font-weight:600}.wx-warn{margin:0;padding:8px 12px;border-radius:9px;background:var(--due-bg);color:var(--due)}.btn.wx-go{background:var(--bad);color:#fff;border-color:transparent}.btn.wx-go:hover{filter:brightness(1.08)}.btn.wx-go:active{filter:brightness(.94)}.btn.wx-go:focus-visible{outline:2px solid var(--bad);outline-offset:2px}.sw-pax{min-width:0;overflow-wrap:anywhere}.sw-level{display:block;font-size:12px;line-height:1.3;color:#697886}.sw-level{white-space:normal}.fhh{padding-top:env(safe-area-inset-top,0px);height:calc(45px + env(safe-area-inset-top,0px))}.fhtb{top:calc(45px + env(safe-area-inset-top,0px))}.fhh-user-wrap{position:relative;display:flex}button.fhh-user{background:none;border:0;color:inherit;font:inherit;font-size:12px;cursor:pointer}button.fhh-user:hover{background:#00000014}button.fhh-user:active{background:#00000024}button.fhh-user:focus-visible{outline:2px solid #fff;outline-offset:-3px}.um{position:absolute;top:100%;right:0;z-index:40;width:290px;max-width:calc(100vw - 24px);margin-top:4px;padding:12px 14px;background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:12px;box-shadow:0 1px 2px #0a3b6614,0 8px 24px #0a3b6624}.um-row{display:flex;align-items:center;gap:14px;justify-content:space-between}.um-row b{display:block;font-size:14px}.um-row small{display:block;font-size:12px;line-height:1.4;color:var(--muted);margin-top:2px}.um-switch{flex:none;position:relative;width:44px;height:26px;border-radius:13px;border:0;background:#cdd3d9;cursor:pointer;transition:background-color .2s}.um-switch i{position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 2px #0003;transition:transform .2s cubic-bezier(.3,1.4,.6,1)}.um-switch.on{background:#0a6ece}.um-switch.on i{transform:translate(18px)}.um-switch:active i{transform:scale(.92)}.um-switch.on:active i{transform:translate(18px) scale(.92)}.um-switch:focus-visible{outline:2px solid rgb(10,110,206);outline-offset:2px}.um-switch[disabled]{opacity:.5}.fhh{position:fixed;left:0;right:0;top:0}.fhh-space{height:calc(45px + env(safe-area-inset-top,0px));flex:none}.ph,.ph-menu,.cal-phone,.ph-search,body:has(.ph) main{font-family:-apple-system,BlinkMacSystemFont,system-ui,Roboto,sans-serif}@media (max-width: 760px){body:has(.ph) main.fhmain{padding:12px 12px 40px}body:has(.ph) .cp-card.ph-search{margin-top:0}}.ph-status{position:fixed;top:0;left:0;right:0;z-index:31;height:env(safe-area-inset-top,0px);background:#0a6ece}.ph{position:fixed;top:env(safe-area-inset-top,0px);left:0;right:0;z-index:30;background:#0a6ece;color:#fff;border-bottom:1px solid rgb(209,213,218)}.ph-title{height:44px;display:flex;align-items:center;padding:0 15px;font-size:17px;font-weight:400;border-bottom:1px solid rgba(0,0,0,.18)}.ph-bar{height:44px;display:flex;align-items:center;padding:0 4px}.ph-space{height:calc(90px + env(safe-area-inset-top,0px))}.ph .fhh-name{display:inline}.ph button.fhh-user{height:44px;padding:0 10px;gap:6px;font-size:13px;font-weight:600}.ph .fhh-avatar{width:22px;height:22px;font-size:9px;background:#ffffff38}.ph .caret,.cp-start .caret{display:inline-block;width:8px;height:5px;margin-left:4px;background:currentColor;clip-path:polygon(0 0,100% 0,50% 100%)}.ph .um{left:4px;right:auto}.ph-menu-wrap{position:relative;display:flex}.ph-burger{display:flex;align-items:center;gap:4px;height:44px;padding:0 10px;border:0;background:none;color:#fff;cursor:pointer;border-radius:6px}.ph-burger svg{width:18px;height:13px}.ph-burger:active,.ph button.fhh-user:active{background:#00000024}.ph-burger:focus-visible{outline:2px solid #fff;outline-offset:-4px}.ph-menu{position:absolute;top:100%;right:4px;z-index:40;width:220px;margin-top:4px;padding:5px;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 1px 2px #0a3b6614,0 8px 24px #0a3b6629}.ph-menu button{display:block;width:100%;padding:10px 12px;border:0;border-radius:7px;background:none;text-align:left;font-size:15px;line-height:1.2;font-family:inherit;color:#1f2428;cursor:pointer}.ph-menu button.current{color:#0a6ece;font-weight:600}.ph-menu button:hover,.ph-menu button:active{background:#f1f2f4}.ph-menu button:focus-visible{outline:2px solid rgb(10,110,206);outline-offset:-2px}.ph-menu hr{border:0;border-top:1px solid rgb(224,227,230);margin:5px 4px}.cp-card{margin:12px 0 0;border:1px solid rgb(224,226,229);border-radius:3px;background:#fff}.ph-search .search{width:100%;margin:0}.ph-search .search input{height:38px;border:0;border-radius:2px;background:#f1f2f3;padding:0 12px 0 44px;font-size:15.5px;font-family:inherit}.ph-search .search input:focus{background:#fff;box-shadow:inset 0 0 0 2px #25a1ef}.ph-search .fhsearch-ic{left:17px;top:11px;width:16px;height:16px;color:#202428}.ph-search .results{left:0;right:0;width:auto;top:42px;z-index:35}.cp-date{display:flex;align-items:center;justify-content:space-between;margin:15px 0 0;padding:0 3px 0 7px}.cp-start{position:relative;display:inline-flex;align-items:center;gap:3px;font-size:15.5px;color:#697886;cursor:pointer}.cp-start input{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;opacity:0}.cal-phone .cal-nav-btn.today{height:35px;margin:0;padding:0 17px;font-size:13px;font-family:inherit;border-color:#e0e2e5}.cp-tabs{display:flex;gap:7px;overflow-x:auto;scrollbar-width:none;margin:7px -12px 0;padding:12px;border-top:1px solid rgb(209,213,218);border-bottom:1px solid rgb(209,213,218)}.cp-tabs::-webkit-scrollbar{display:none}.cp-tab{flex:none;height:48px;padding:0 14px;border:1px solid transparent;border-radius:2px;background:#f1f2f3;font-weight:500;font-size:13px;font-family:inherit;color:#202428;cursor:pointer}.cp-tab.on{background:#fcf1c0;border-color:#a9974c}.cp-tab.is-today:not(.on){color:#0a6ece}.cp-tab:active{filter:brightness(.96)}.cp-tab:focus-visible{outline:2px solid rgb(10,110,206);outline-offset:2px}.cp-back{width:33px;padding:0;font-size:15px;color:#5a6672}.cal-phone{padding-bottom:env(safe-area-inset-bottom,0px)}.cp-oos{margin:12px 0 0}.cp-oos .oos-chip{margin:0 0 5px;padding:4px 6px 4px 9px;font-size:13px}.cp-none{margin:12px 0 4px;color:#8c959e;font-size:13px}.cp-group{margin:15px 3px 0 -2px;padding:0 0 0 9px;border-left:1px solid rgb(184,187,192)}.cp-group+.cp-group{margin-top:21px}.cal-phone .cal-block{margin:0 0 5px;padding:7px 34px 7px 14px;border-radius:5px;font-family:inherit;font-size:14px;line-height:1.35}.cal-phone .cb-head{font-size:13px;line-height:19px}.cal-phone .cb-time{font-weight:600}.cb-prod{font-weight:700}.cal-phone .cb-stat{font-size:12px;line-height:15px;margin-top:1px;gap:0 4px}.cal-phone .cal-block .badge,.cal-phone .cb-len{font-size:11px;line-height:13px}.cal-phone ul.cb-list.crew li{padding:4px 0 2px;font-size:14px}.cal-phone ul.cb-list.guests{padding:6px 0 0}.cal-phone ul.cb-list.guests li{font-size:14px;line-height:16px;white-space:normal}.cal-phone .cal-block:active{transform:scale(.99)}.cb-go{position:absolute;right:12px;top:50%;transform:translateY(-50%);font-size:22px;line-height:1;color:#bec5cc}.cp-tab{padding:0 12px}.cp-group{padding-left:10px}.cal-phone .cal-nav-btn.today{padding:0 16px}.ph-menu button.ph-check{display:flex;align-items:center;gap:10px}.ph-tick{flex:none;width:18px;height:18px;border:1.5px solid rgb(160,168,176);border-radius:4px;position:relative}.ph-tick.on{background:#0a6ece;border-color:#0a6ece}.ph-tick.on:after{content:"";position:absolute;left:5px;top:1px;width:5px;height:10px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}.ph-row{display:flex;box-shadow:inset 0 -1px #0000002e}.ph-row button.ph-title{border-bottom:0}.ph-back{flex:none;width:40px;height:44px;display:grid;place-items:center;margin-right:-12px;padding:0 0 0 6px;border:0;background:none;color:#fff;cursor:pointer}.ph-back:active{background:#0000001f}.ph-back:focus-visible{outline:2px solid #fff;outline-offset:-3px}@media (display-mode: standalone){body:has(.ph) main{padding-bottom:calc(16px + env(safe-area-inset-bottom,0px))}}button.ph-title{flex:1;min-width:0;width:100%;gap:16px;border:0;border-bottom:1px solid rgba(0,0,0,.18);background:none;color:#fff;font-family:inherit;text-align:left;cursor:pointer}button.ph-title img{width:32px;height:22px;flex:none}button.ph-title:active{background:#0000001f}button.ph-title:focus-visible{outline:2px solid #fff;outline-offset:-3px}@media (max-width: 760px),(pointer: coarse){input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea{font-size:16px!important}}:root{--ph-top: calc(env(safe-area-inset-top, 0px) + min(env(safe-area-inset-top, 0px), 20px)) }.ph-status{height:var(--ph-top)}.ph{top:var(--ph-top)}.ph-space{height:calc(90px + var(--ph-top))}@media (max-width: 760px){body:has(.ph) .db-theater{top:calc(var(--ph-top) + 90px);z-index:29;background:#fff}body:has(.ph) .sess{min-height:100%}body:has(.ph) .modal-scrim{padding-top:calc(var(--ph-top) + 16px);padding-bottom:calc(16px + env(safe-area-inset-bottom,0px))}}.ph-search .search input[type=search]::-webkit-search-cancel-button{display:none}.ph-clear{position:absolute;right:4px;top:50%;transform:translateY(-50%);width:34px;height:34px;display:grid;place-items:center;border:0;background:none;color:#202428;cursor:pointer;border-radius:6px}.ph-clear:active{background:#00000014}.ph-clear:focus-visible{outline:2px solid rgb(10,110,206);outline-offset:-2px}.sr{padding:22px 13px 8px 18px}.sr-none{margin:0;color:#6c7784;font-size:14px}.sr-item{display:block;padding:0 0 30px;color:#202428;text-decoration:none;-webkit-tap-highlight-color:rgba(10,110,206,.08)}.sr-item:hover{text-decoration:none}.sr-item:active .sr-name{color:#0a6ece}.sr-item:focus-visible{outline:2px solid rgb(10,110,206);outline-offset:4px;border-radius:4px}.sr-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.sr-name{font-size:16px;line-height:21px;min-width:0;overflow-wrap:anywhere}.sr-badge{flex:none;margin-top:1px;padding:0 4px;border-radius:3px;font-size:12.5px;line-height:17px;color:#fff}.sr-badge.paid{background:#41855d}.sr-badge.due{background:#e3853d}.sr-badge.off{background:#8c959e}.sr-sub{font-size:12.5px;line-height:17px;color:#6c7784}.sr-trip{display:flex;align-items:center;gap:6px;margin-top:6px;font-size:13.5px;font-weight:700;line-height:18px}.sr-trip i{width:9.5px;height:9.5px;border-radius:2px;background:var(--mid)}.sr-trip.c-open i{background:#55aa3a}.sr-when{display:flex;align-items:center;flex-wrap:wrap;gap:4px;margin-top:2px;font-size:12.5px;line-height:20px}.sr-past{padding:0 4px;border:1px solid rgb(227,133,61);border-radius:3px;color:#e3853d;line-height:16px}.sr-src{display:flex;align-items:center;gap:5px;margin-top:7px;font-size:11.5px;font-weight:600;line-height:16px;color:#6c7784}.sr-meta{font-size:12px;line-height:18px;color:#6c7784}.sr-item.is-off .sr-name{text-decoration:line-through;color:#8c959e}body:has(.ph-search){background:#fff}.um-out{display:block;width:100%;margin-top:10px;padding:10px 0 0;border:0;border-top:1px solid var(--line);background:none;text-align:left;font:inherit;font-size:14px;font-weight:600;color:var(--bad);cursor:pointer}.um-out:hover,.um-out:active{text-decoration:underline}.um-out:focus-visible{outline:2px solid rgb(10,110,206);outline-offset:2px}.cal-block.is-not-mine{--light: rgb(243, 244, 246);--mid: rgb(206, 211, 216);--dark: rgb(118, 127, 137)}.cal-block.is-not-mine .cb-len{background:#b0b7bf}ul.cb-list.crew li.me{font-weight:700;color:#112638}.um-as{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:10px;padding-top:10px;border-top:1px solid var(--line);font-size:14px;font-weight:600}.um-as select{flex:1;min-width:0;height:34px;border:1px solid var(--line);border-radius:8px;padding:0 8px;background:#fff;font:inherit;font-weight:500}.view-as-bar{position:sticky;top:calc(var(--ph-top, 0px) + 90px);z-index:25;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 12px;background:#fff1ba;color:#5c480a;font-size:14px;border-bottom:1px solid rgb(214,180,90)}.view-as-bar button{flex:none;height:30px;padding:0 12px;border:1px solid rgb(169,151,76);border-radius:6px;background:#fff;color:#5c480a;font:inherit;font-weight:700;cursor:pointer}.view-as-bar button:active{transform:scale(.97)}.view-as-bar button:focus-visible{outline:2px solid rgb(10,110,206);outline-offset:2px}@media (min-width: 761px){.view-as-bar{position:static}}.mt{display:flex;flex-direction:column;gap:14px}.mt-stats{grid-template-columns:repeat(2,minmax(0,1fr));max-width:520px}.mt-list{padding:4px 16px 10px}.mt-list section+section{border-top:1px solid var(--line)}.mt-list h3{display:flex;justify-content:space-between;margin:0;padding:12px 0 4px;font-size:13px;font-weight:700;color:var(--ink-soft);text-transform:none;letter-spacing:0}.mt-list h3 span{font-variant-numeric:tabular-nums}.mt-row{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:6px 0;font-size:15px}.mt-row>span:first-child{min-width:0;overflow-wrap:anywhere}.mt-row small{color:var(--muted);font-size:13px}.mt-r{flex:none;font-variant-numeric:tabular-nums;font-weight:600}.mt-dot{display:inline-block;width:9px;height:9px;border-radius:2px;margin:0 5px 0 4px;background:var(--mid);vertical-align:0}.mt-dot.c-open{background:#55aa3a}.sched-row.is-sun{cursor:default}.sched-row.is-sun:hover{background:none}.sched-extra{display:block;font-size:11.5px;font-weight:500;color:var(--muted)}.cal-block.is-weather{--light: rgb(245, 246, 247);--mid: rgb(214, 218, 223);--dark: rgb(118, 127, 137);box-shadow:none}.cal-block.is-weather .cb-time{opacity:1}.cb-wx{display:inline-flex;align-items:center;gap:4px;color:#767f89}.cb-rain{flex:none}.cal-phone .cb-wx{font-size:12.5px}:root{--sans: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Helvetica Neue", system-ui, sans-serif;--display: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Helvetica Neue", system-ui, sans-serif;--mono: ui-monospace, "SF Mono", SFMono-Regular, Menlo, monospace;--ink: #1d1d1f;--ink-soft: #515154;--muted: #8e8e93;--ground: #f2f2f7;--surface: #ffffff;--sand: #e5e5ea;--sky: #e6f0fb;--marine: #0a6ece;--ocean-deep: #085db0;--navy: #0a6ece;--good: #1f7a35;--good-bg: rgba(52, 199, 89, .15);--due: #a64d00;--due-bg: rgba(255, 149, 0, .16);--bad: #d70015;--bad-bg: rgba(255, 59, 48, .12);--line: rgba(60, 60, 67, .14);--fill: rgba(118, 118, 128, .12);--fill-2: rgba(118, 118, 128, .2);--hair: 0 0 0 .5px rgba(0, 0, 0, .07);--shadow-1: 0 0 0 .5px rgba(0, 0, 0, .06), 0 1px 2px rgba(0, 0, 0, .04);--shadow-2: 0 0 0 .5px rgba(0, 0, 0, .08), 0 22px 50px rgba(0, 0, 0, .2), 0 6px 16px rgba(0, 0, 0, .08);--r: 12px;--spring: cubic-bezier(.32, .72, 0, 1)}body{font-family:var(--sans);-webkit-font-smoothing:antialiased;letter-spacing:-.003em}.fhh,.fhtb,.fhmain,table.bookings-grid,.cal-block,.db-theater,.sess,.sw-stat b,.cal-nav-btn,.cal-nav-picker{font-family:var(--sans)!important}.head h1{font:700 28px/1.15 var(--display);letter-spacing:-.022em}.head .sub{color:var(--ink-soft);font-size:14px}.card{border-radius:var(--r);box-shadow:var(--shadow-1);padding:16px 18px}.card h2{font:600 15px/1.25 var(--sans);letter-spacing:-.01em;text-transform:none;color:var(--ink);margin:0 0 10px}th{font:600 12px/1.2 var(--sans);letter-spacing:0;text-transform:none;color:var(--muted)}th,td{border-bottom:.5px solid var(--line)}.kv dt{color:var(--muted)}.stat{border-radius:var(--r);box-shadow:var(--shadow-1)}.stat b{font-weight:700;letter-spacing:-.02em}.btn{height:30px;padding:0 12px;border:0;border-radius:8px;background:var(--fill);color:var(--ink);font:600 13px/1 var(--sans);box-shadow:none;transition:transform .2s var(--spring),background-color .15s}.btn:hover{background:var(--fill-2)}.btn:active{transform:scale(.97)}.btn:focus-visible{outline:3px solid rgba(10,110,206,.4);outline-offset:1px}.btn.primary{background:var(--marine);color:#fff}.btn.primary:hover{background:var(--ocean-deep)}.btn.danger{background:#ff3b301a;color:var(--bad)}.btn.danger:hover{background:#ff3b3029}.btn.small{height:26px;font-size:12.5px}input[type=date],input[type=text],input[type=search],input[type=number],input[type=email],input[type=tel],input[type=time],select,textarea{border:0!important;border-radius:8px!important;background-color:var(--fill)!important;color:var(--ink);font-family:var(--sans);transition:box-shadow .15s,background-color .15s}input:focus,select:focus,textarea:focus{outline:none;background-color:#fff!important;box-shadow:0 0 0 3px #0a6ece59!important}.seg{background:var(--fill);border-radius:9px;padding:2px;gap:0}.seg button{padding:6px 13px;border-radius:7px;font:600 13px/1.2 var(--sans);color:var(--ink);transition:background-color .2s var(--spring),box-shadow .2s}.seg button.on{background:#fff;color:var(--ink);box-shadow:0 3px 8px #0000001f,0 3px 1px #0000000a,0 0 0 .5px #0000000a}.rtabs{border-bottom:.5px solid var(--line);gap:2px}.rtabs a{font:600 13.5px/1.2 var(--sans);color:var(--ink-soft);padding:10px 12px}.rtabs a.on{color:var(--marine);border-bottom-color:var(--marine)}.pill{font:600 11.5px/1 var(--sans);letter-spacing:0;padding:4px 8px}.badge-st{border:0;border-radius:6px;padding:1px 7px;font:600 12px/18px var(--sans)}.badge-st.badge-paid{background:#34c75929;color:#1f7a35}.badge-st.badge-underpaid,.badge-st.badge-practice{background:#ff95002b;color:#a64d00}.badge-st.badge-paying{background:#0a6ece1f;color:var(--marine)}.badge-st.badge-cancelled{background:var(--fill);color:var(--ink-soft)}.modal-scrim{background:#00000038;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.modal{border-radius:14px;box-shadow:var(--shadow-2)}.modal h3{font:700 19px/1.2 var(--display);letter-spacing:-.015em}.toast{border-radius:999px;background:#1e1e20e6;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);font:600 13.5px/1.2 var(--sans);box-shadow:0 8px 24px #0000002e}.toast.bad{background:#d70015eb}.fhh-nav a{font-weight:600;letter-spacing:-.005em}.fhh-nav a.current:after{left:12px;right:12px;border-bottom:2.5px solid #fff;border-radius:2px}.fhtb{background:#ffffffd1;backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);border-bottom:.5px solid var(--line);box-shadow:none}.fhtb-btn{font:500 13px/1 var(--sans);border-radius:7px}.fhtb-btn svg{color:var(--marine)}.fhtb-btn:hover{background:var(--fill)}.fhtb .search input{background:var(--fill)!important;border-radius:8px!important;box-shadow:none}.um,.ph-menu{border:0;border-radius:12px;box-shadow:var(--shadow-2)}.cal-nav-btn{border-radius:8px;font-weight:600}.cal-nav-btn.today{border:0;background:var(--fill)}.cal-nav-btn.today:hover{background:var(--fill-2)}table.bookings-grid th{font:400 13px/1.2 var(--sans);color:var(--ink-soft);box-shadow:0 .5px 0 var(--line);border-bottom:0}table.bookings-grid th b{font-weight:inherit}table.bookings-grid th.current-day b{font-weight:600}table.bookings-grid th.current-day{background:#0a6ece0f;color:var(--marine);border-left:0}table.bookings-grid td{border-right:.5px solid var(--line);border-bottom:.5px solid var(--line)}table.bookings-grid td.current-day{background:#0a6ece09}table.bookings-grid td.bookings-td-legend b{font-weight:600;color:var(--ink-soft)}.cal-block{border:0;border-radius:6px;box-shadow:none;padding-top:5px;padding-bottom:5px;padding-left:11px;background:color-mix(in srgb,var(--mid) 13%,#fff);transition:background-color .15s,transform .2s var(--spring)}.cal-block:hover{background:color-mix(in srgb,var(--mid) 19%,#fff);box-shadow:none;filter:none}.cal-block:active{transform:scale(.985)}.cal-block.is-dimmed{opacity:.6}.cal-block .badge{border-radius:4px;background:#3c3c438c}.cb-len{border-radius:5px;background:var(--mid)}.oos-chip{border:0;border-radius:8px;background:#ff3b301a;color:#c4161c}.cal-block:after{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(to top,var(--mid) var(--occ, 0%),color-mix(in srgb,var(--mid) 28%,transparent) var(--occ, 0%))}.cal-phone .cal-block{border-radius:10px;padding-left:18px}.cal-phone .cal-block:after{width:4px}.cp-tab{border:0;border-radius:10px;background:var(--fill)}.cp-tab.on{background:var(--marine);color:#fff;border:0}.cp-tab.is-today:not(.on){color:var(--marine);box-shadow:inset 0 0 0 1.5px #0a6ece8c}.cp-card{border:0;border-radius:10px}.ph-search .search input{border-radius:10px!important}.cp-group{border-left-color:var(--line)}.sess{border-radius:14px;box-shadow:var(--shadow-2)}.sw-head{border-top-width:4px}.sw-btn{height:32px;border:0;border-radius:8px;background:var(--fill);font:600 13px/1 var(--sans);color:var(--ink)}.sw-btn svg{color:var(--marine)}.sw-btn:hover:not(:disabled){background:var(--fill-2)}.sw-btn.primary{background:var(--marine)}.sw-x{border-radius:50%;background:var(--fill);width:30px;height:30px}.sw-x:hover{background:var(--fill-2)}.sw-stats{background:var(--ground);border-top:.5px solid var(--line);border-bottom:.5px solid var(--line)}.sw-stat+.sw-stat{border-left:.5px solid var(--line)}.sw-k{font:600 12px/14px var(--sans);letter-spacing:0;text-transform:none;color:var(--muted)}.sw-stat b{font-weight:700;letter-spacing:-.02em}.sw-chip{border-radius:6px;font-weight:600}.sw-row+.sw-row{box-shadow:0 -.5px 0 var(--line)}.sw-row:hover{background:#7676800f}.sw-nc-btn{border-radius:8px;border:0;background:var(--fill);font-weight:600}.sw-nc-btn.on{background:#ff3b301f;color:var(--bad)}.vx{border-radius:8px}.sched-row{grid-template-columns:minmax(150px,190px) minmax(0,1.2fr) auto minmax(0,1fr) 70px 14px}.sched-time{color:var(--ink);font-weight:700;white-space:normal}.sched-days i{border-radius:5px}.seg{width:fit-content;max-width:100%}input:not([type]){border:0!important;border-radius:8px!important;background-color:var(--fill)!important;font-family:var(--sans);transition:box-shadow .15s,background-color .15s}.stepper{gap:0;background:var(--fill);border-radius:9px;padding:2px}.stepper button{width:34px;height:30px;border:0;border-radius:7px;background:none;font:500 19px/1 var(--sans);color:var(--ink)}.stepper button:hover{background:#fff;box-shadow:0 1px 3px #0000001a}.stepper b{min-width:30px;font:600 16px/1 var(--sans)}.sw-step{border:0!important;border-radius:7px!important;background:var(--fill)!important}.sw-step:hover:not(:disabled){background:var(--fill-2)!important}.sw-spots-n b,.sw-spots-ro b{font-family:var(--sans)}main.fhmain>form:first-child,main.fhmain>.mt:first-child{margin-top:16px}.stepper{width:fit-content}@media (max-width: 760px){.tablewrap td,.tablewrap th{white-space:nowrap}}.seg{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}.seg::-webkit-scrollbar{display:none}.seg button{flex:none;white-space:nowrap}@media (max-width: 760px){.rtabs{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin-left:-12px;margin-right:-12px;padding:0 12px}.rtabs::-webkit-scrollbar{display:none}.rtabs a{flex:none;white-space:nowrap}}@media (max-width: 760px){body:has(.ph) .db-theater{background:var(--ground)}.db-theater-inner{display:flex;flex-direction:column}.sess{flex:1;border-radius:0;box-shadow:none;background:var(--ground);padding-bottom:calc(28px + env(safe-area-inset-bottom,0px))}.sw-head{background:var(--surface);padding:14px 16px 16px;gap:14px 10px;box-shadow:0 .5px 0 var(--line)}.sw-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:16px 16px 0;background:none;border:0}.sw-stat,.sw-stat+.sw-stat,.sw-stat:nth-child(n+3){background:var(--surface);border:0;border-radius:var(--r);padding:12px 14px 14px;gap:6px}.sw-list-head{padding:24px 16px 8px 20px}.sw-list-head .sw-btn{height:30px}.sw-list,.sw-wl .sw-list{margin:0 16px;padding:0;background:var(--surface);border-radius:var(--r);overflow:hidden}.sw-list:empty{display:none}.sw-row{gap:6px 12px;padding:14px}.sw-row{position:relative}.sw-row+.sw-row,.sw-row:hover+.sw-row{box-shadow:none}.sw-row+.sw-row:before{content:"";position:absolute;left:14px;right:0;top:0;height:.5px;background:var(--line)}.sw-pax,.sw-amt{font-size:13px}.sw-pierc,.sw-nc{margin-top:4px}.sw-empty{margin:0 16px;padding:14px;background:var(--surface);border-radius:var(--r)}.sw-list .sw-empty{margin:0}.sw-wl{border-top:0}.sw-wl-fit{margin:0 16px 8px}.sw-off-toggle{margin-top:12px}.sw-foot{border-top:0;margin-top:4px;padding-left:20px;padding-right:20px}}.rf-routes{margin:0;padding:10px 12px 10px 28px;border-radius:10px;background:var(--fill);font-size:13px;line-height:1.45;color:var(--ink-soft)}.rf-routes li+li{margin-top:4px}.rf-routes b{color:var(--ink)}.sw-del{display:flex;justify-content:center;padding:18px 16px 6px}.sw-del-btn{height:34px;padding:0 16px;border:0;border-radius:9px;background:none;color:var(--bad);font:600 14px/1 var(--sans);cursor:pointer}.sw-del-btn:hover{background:var(--bad-bg)}.sw-del-btn:active{transform:scale(.97)}.sw-del-btn:focus-visible{outline:2px solid var(--bad);outline-offset:2px}@media (max-width: 760px){.sw-del{margin:8px 16px 0;padding:0}.sw-del-btn{width:100%;height:44px;background:var(--surface);border-radius:var(--r)}}
