.book main .wrap{gap:28px;padding-block:clamp(32px,5vw,60px) 64px;display:grid}.book .wrap.narrow{max-width:900px}.book .intro{gap:12px;display:grid}.book .grid{align-items:start;gap:20px;display:grid}@media (width>=920px){.book .grid{grid-template-columns:1fr 1.12fr;gap:24px}}.book .card{background:var(--card);border:1px solid var(--line);border-radius:16px;align-content:start;gap:16px;padding:22px;display:grid}.book .card .k{font-family:var(--mono);letter-spacing:.13em;text-transform:uppercase;color:var(--accent);font-size:10.5px}.book .field{gap:6px;display:grid}.book label{font-size:13.5px;font-weight:500}.book label small{color:var(--muted-2);margin-left:6px;font-weight:400}.book input:not([type=checkbox]):not([type=radio]):not([type=hidden]),.book select,.book textarea{background:var(--bg);border:1px solid var(--line-2);border-radius:10px;width:100%;padding:12px 14px;font-size:15.5px;transition:border-color .16s,box-shadow .16s}.book input:focus-visible,.book select:focus,.book textarea:focus{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft);outline:none}.book textarea{resize:vertical;min-height:76px}.book .two{gap:13px;display:grid}@media (width>=560px){.book .two{grid-template-columns:1fr 1fr}}.book .err{color:var(--bad);font-size:12.5px;display:none}.book .field.bad .err{display:block}.book .field.bad input,.book .field.bad textarea{border-color:var(--bad)}.book .details{gap:13px;display:grid}.book .fine{font-family:var(--mono);letter-spacing:.02em;color:var(--muted-2);margin:0;font-size:10.5px;line-height:1.6}.book .summary{border-top:1px solid var(--line);font-family:var(--mono);color:var(--muted);gap:7px;padding-top:14px;font-size:12.5px;display:grid}.book .summary b{color:var(--fg);font-weight:500}.book .card>.btn{width:100%;padding:15px 20px}.book .note-strip{font-family:var(--mono);letter-spacing:.02em;color:var(--muted-2);align-items:flex-start;gap:10px;margin:0;font-size:11px;line-height:1.55;display:flex}.book .note-strip:before{content:"✓";color:var(--accent);flex:none}.book .ms{gap:7px;display:grid;position:relative}.book .ms .lbl{font-size:13.5px;font-weight:500}.book .ms-btn{all:unset;box-sizing:border-box;cursor:pointer;border:1px solid var(--line-2);background:var(--bg);border-radius:10px;align-items:center;gap:10px;width:100%;padding:12px 14px;transition:border-color .16s,box-shadow .16s;display:flex}.book .ms-btn:hover{border-color:var(--muted-2)}.book .ms-btn:focus-visible{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft);outline:none}.book .ms-btn .ms-val{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:15px;overflow:hidden}.book .ms-btn.dirty{border-color:var(--line-2);background:var(--card-2)}.book .ms-btn.dirty .ms-val{color:var(--fg);font-weight:500}.book .ms-chev{width:16px;height:16px;color:var(--muted-2);flex:none;transition:transform .18s}.book .ms-btn[aria-expanded=true]{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.book .ms-btn[aria-expanded=true] .ms-chev{transform:rotate(180deg)}.book .ms-count{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--accent-fg);background:var(--accent);border-radius:999px;flex:none;padding:3px 8px;font-size:10px}.book .ms-count[hidden]{display:none}.book .ms-pop{z-index:30;background:var(--bg-2);border:1px solid var(--line-2);border-radius:12px;grid-template-rows:auto minmax(0,1fr) auto;max-height:320px;padding:6px;display:grid;position:absolute;top:calc(100% - 2px);left:0;right:0;box-shadow:0 18px 44px -18px #0000008c}.book .ms-pop[hidden]{display:none}.book .ms-search{align-items:center;padding-bottom:6px;display:flex;position:relative}.book .ms-search-i{width:15px;height:15px;color:var(--muted-2);pointer-events:none;position:absolute;left:11px}.book .ms-search-in{background:var(--bg);border:1px solid var(--line-2);border-radius:9px;width:100%;padding:9px 12px 9px 33px;font-size:14.5px;transition:border-color .16s,box-shadow .16s}.book .ms-search-in::placeholder{color:var(--muted-2)}.book .ms-search-in:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.book .ms-list{overscroll-behavior:contain;scrollbar-width:thin;min-height:0;overflow-y:auto}.book .ms-opt{cursor:pointer;border-radius:9px;grid-template-columns:20px 1fr;align-items:start;gap:11px;padding:9px 11px;transition:background .14s;display:grid}.book .ms-opt.hi{background:var(--card-2);box-shadow:inset 0 0 0 1px var(--line-2)}.book .ms-opt[hidden]{display:none}.book .ms-opt input{opacity:0;width:0;height:0;position:absolute}.book .ms-opt:focus-within{outline:2px solid var(--accent);outline-offset:-2px}.book .ms-box{border:1px solid var(--line-2);background:var(--bg);color:#0000;border-radius:6px;flex:none;place-items:center;width:20px;height:20px;margin-top:1px;transition:all .15s;display:grid}.book .ms-box svg{width:12px;height:12px}.book .ms-opt input:checked~.ms-box{background:var(--accent);border-color:var(--accent);color:var(--accent-fg)}.book [data-multiple=false] .ms-opt input:checked~.ms-box{border-radius:50%}.book .ms-txt{gap:2px;min-width:0;display:grid}.book .ms-txt b{font-size:14.5px;font-weight:500}.book .ms-txt small{color:var(--muted-2);font-size:12.5px;line-height:1.4}.book .ms-none{color:var(--muted-2);text-align:center;margin:0;padding:14px 11px;font-size:13.5px}.book .ms-none[hidden]{display:none}.book .ms-foot{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;margin-top:6px;padding:8px 4px 2px;display:flex}.book .ms-foot-n{font-family:var(--mono);letter-spacing:.04em;color:var(--muted-2);font-size:10.5px}.book .ms-clear{all:unset;box-sizing:border-box;cursor:pointer;font-family:var(--mono);letter-spacing:.07em;text-transform:uppercase;color:var(--muted);border-radius:6px;padding:4px 6px;font-size:10.5px}.book .ms-clear:hover{color:var(--accent);background:var(--accent-soft)}.book .ms-clear:disabled{opacity:.4;cursor:not-allowed}.book .ms-hint{font-family:var(--mono);letter-spacing:.02em;color:var(--muted-2);margin:0;font-size:10.5px;line-height:1.6}.book .sr{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.book .pick{align-items:start;gap:18px;display:grid}@media (width>=620px){.book .pick{grid-template-columns:minmax(0,300px) minmax(0,1fr);gap:24px}}.book .cal{gap:10px;max-width:300px;display:grid}.book .cal .h{justify-content:space-between;align-items:center;display:flex}.book .cal .h b{font-size:15px;font-weight:500}.book .cal .h button{all:unset;box-sizing:border-box;cursor:pointer;border:1px solid var(--line-2);background:var(--bg);border-radius:8px;place-items:center;width:30px;height:30px;display:grid}.book .cal .h button:hover{border-color:var(--accent);color:var(--accent)}.book .cal .h button:disabled{opacity:.35;cursor:not-allowed}.book .dow,.book .days{grid-template-columns:repeat(7,1fr);gap:3px;display:grid}.book .dow span{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted-2);text-align:center;padding-bottom:3px;font-size:9.5px}.book .day{all:unset;box-sizing:border-box;cursor:pointer;aspect-ratio:1;border:1px solid var(--line-2);background:var(--bg-2);color:var(--fg);font-variant-numeric:tabular-nums;border-radius:8px;place-items:center;font-size:13px;font-weight:500;transition:background .14s,color .14s,border-color .14s;display:grid}.book .day:hover:not(:disabled){background:var(--accent-soft);border-color:var(--accent)}.book .day:disabled{color:var(--muted-2);border-color:var(--line);opacity:.7;cursor:not-allowed;background:0 0}.book .day.today{border-color:var(--fg);font-weight:700}.book .day[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--accent-fg);font-weight:600}.book .day[aria-pressed=true]:hover{background:var(--accent);border-color:var(--accent)}.book .slots{gap:10px;margin-top:18px;display:grid}@media (width>=620px){.book .slots{margin-top:0}}.book .slots .t{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);justify-content:space-between;align-items:baseline;font-size:11px;display:flex}.book .slots .when{color:var(--fg);margin:-4px 0 0;font-size:14px;font-weight:500}.book .slots .g{grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:8px;max-height:226px;padding-right:2px;display:grid;overflow:auto}.book .slot{all:unset;box-sizing:border-box;cursor:pointer;text-align:center;font-family:var(--mono);border:1px solid var(--line-2);border-radius:8px;padding:10px 6px;font-size:13px;transition:all .14s}.book .slot:hover{border-color:var(--accent)}.book .slot[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--accent-fg)}.book .slot:disabled{opacity:.3;cursor:not-allowed;text-decoration:line-through}.book .empty{color:var(--muted-2);margin:0;padding:8px 0;font-size:13.5px;line-height:1.5}.book .rail{gap:8px;margin:0;padding:0;list-style:none;display:grid}@media (width>=700px){.book .rail{grid-template-columns:repeat(3,1fr)}}.book .rail button{all:unset;box-sizing:border-box;cursor:pointer;border:1px solid var(--line);background:var(--card);border-radius:12px;grid-template-columns:auto 1fr auto;align-items:center;gap:11px;width:100%;padding:13px 15px;transition:all .18s;display:grid}.book .rail button:hover{border-color:var(--line-2)}.book .rail button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.book .rail .n{font-family:var(--mono);letter-spacing:.08em;color:var(--muted-2);font-size:10.5px}.book .rail .t{font-size:14.5px;font-weight:500}.book .rail .tick{border:1px solid var(--line-2);color:#0000;border-radius:50%;place-items:center;width:20px;height:20px;display:grid}.book .rail .tick svg{width:11px;height:11px}.book .rail button[aria-current=step]{border-color:var(--accent);background:var(--accent-soft)}.book .rail button[aria-current=step] .n{color:var(--accent)}.book .rail button[aria-current=step] .tick{border-color:var(--accent)}.book .rail button.done .tick{background:var(--ok);border-color:var(--ok);color:#fff}.book .rail button:disabled{opacity:.45;cursor:not-allowed}.book .step-panel{background:var(--card);border:1px solid var(--line);border-radius:16px;align-content:start;gap:16px;padding:22px;display:grid}.book .step-panel[hidden]{display:none}.book .pager{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:10px;padding-top:16px;display:flex}.book .pager .spacer{flex:1}.book .pager .btn{flex:0 auto;width:auto;min-width:0}.book .pager .btn.ghost{margin-right:auto}@media (width<=480px){.book .pager{flex-direction:column;align-items:stretch}.book .pager .btn,.book .pager .btn.ghost{width:100%;margin-right:0}.book .pager .spacer{display:none}}.book .grid.guided>.gcol{align-content:start;gap:20px;display:grid}.book .estimate{border:1px solid var(--line);background:var(--card-2);border-radius:13px;gap:8px;padding:15px 16px;transition:border-color .22s;display:grid}.book .estimate.ready{border-color:var(--accent)}.book .estimate .t{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted-2);font-size:10.5px}.book .erow{font-family:var(--mono);color:var(--muted);justify-content:space-between;align-items:baseline;gap:12px;font-size:12.5px;display:flex}.book .erow b{color:var(--fg);text-align:right;font-weight:500}.book .estimate .note{margin:2px 0 0}.book .done{gap:16px;display:none}.book .done.on{display:grid}.book .done h2{font-size:26px}.book .done-rows{display:grid}.book .done .row{border-top:1px solid var(--line);grid-template-columns:130px 1fr;gap:12px;padding:10px 0;font-size:14.5px;display:grid}.book .done .row[hidden]{display:none}.book .done .row>span:first-child{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);padding-top:3px;font-size:11px}.book .done .row .mono{font-family:var(--mono);color:var(--muted);font-size:12px}.book .status{font-family:var(--mono);gap:6px;font-size:12px;display:grid}.book .status div:before{content:"○ ";color:var(--muted-2)}.book .status div.ok:before{content:"● ";color:var(--ok)}.book .status div.no:before{content:"○ ";color:var(--muted-2)}.book .btns{flex-wrap:wrap;gap:10px;display:flex}.book .btns .btn{flex:180px;width:auto}.book .note-strip.lead{font-family:var(--font);color:var(--muted);letter-spacing:0;font-size:14.5px}.book .note-strip.lead:before{content:none}
