.spot-book{position:relative}.spot-fields{background:var(--template-border);border:1px solid var(--template-border);border-radius:var(--radius-lg);margin-bottom:var(--space-4);grid-template-columns:1fr 1fr;gap:1px;display:grid;overflow:hidden}.spot-field{background:var(--template-surface-raised);padding:var(--space-3) var(--space-4);text-align:start;cursor:pointer;font:inherit;color:var(--template-fg);transition:background var(--dur-fast) var(--ease-out);border:0}.spot-field:hover{background:var(--template-card)}.spot-field .lbl{font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--template-muted-foreground);font-weight:700;display:block}.spot-field .v{margin-top:2px;font-weight:600;display:block}.spot-field--wide{grid-column:1/-1}.spot-pop{z-index:200;background:var(--template-surface-raised);border:1px solid var(--template-border);border-radius:var(--radius-lg);box-shadow:var(--template-shadow-lg);padding:var(--space-5);max-height:min(72vh,540px);position:fixed;overflow:auto}.spot-pop__foot{margin-top:var(--space-4);justify-content:space-between;align-items:center;display:flex}.spot-cal__head{margin-bottom:var(--space-3);justify-content:space-between;align-items:center;display:flex}.spot-cal__nav{border-radius:var(--radius-full);border:1px solid var(--template-border);cursor:pointer;width:34px;height:34px;color:var(--template-fg);background:0 0;justify-content:center;align-items:center;display:inline-flex}.spot-cal__nav:hover{border-color:var(--template-primary);color:var(--template-primary)}.spot-cal__nav svg{width:18px;height:18px}.spot-cal__title{font-family:var(--font-display);font-size:var(--text-lg);font-weight:600}.spot-cal__dow{grid-template-columns:repeat(7,1fr);gap:2px;margin-bottom:4px;display:grid}.spot-cal__dow span{text-align:center;color:var(--template-muted-foreground);font-size:11px;font-weight:700}.spot-cal__grid{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.cal-day{aspect-ratio:1;border-radius:var(--radius-sm);cursor:pointer;font:inherit;font-size:var(--text-sm);color:var(--template-fg);background:0 0;border:0;justify-content:center;align-items:center;display:inline-flex}.cal-day:hover:not(:disabled):not(.cal-empty){background:var(--template-muted)}.cal-empty{visibility:hidden;pointer-events:none}.cal-past{color:var(--template-muted-foreground);opacity:.35;cursor:not-allowed}.cal-between{background:var(--template-primary-soft);color:var(--template-primary-soft-fg);border-radius:0}.cal-sel{background:var(--template-primary);color:var(--template-primary-foreground);font-weight:700}.spot-grow{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-4) 0;border-bottom:1px solid var(--template-border);display:flex}.spot-grow:last-of-type{border-bottom:0}.spot-grow__t{font-weight:700}.spot-grow__s{margin-top:1px;font-size:13px}.spot-grow .step{align-items:center;gap:var(--space-4);display:flex}.spot-grow .step button{border-radius:var(--radius-full);border:1px solid var(--template-border);width:38px;height:38px;color:var(--template-fg);cursor:pointer;background:0 0;font-size:20px;line-height:1}.spot-grow .step button:hover:not(:disabled){border-color:var(--template-primary);color:var(--template-primary)}.spot-grow .step button:disabled{opacity:.35;cursor:not-allowed}.spot-grow .step b{text-align:center;min-width:1.5ch;font-size:var(--text-md)}
