.visitor-choice{margin:1.4rem 0;padding:1.1rem 1.2rem;border:1px solid var(--line);border-radius:.65rem;background:var(--surface)}
.visitor-choice .visitor-choice-label{display:flex;align-items:flex-start;gap:.8rem;cursor:pointer;text-transform:none;letter-spacing:normal;line-height:1.5;font-size:.95rem}
.visitor-choice .visitor-choice-label input[type=checkbox]{appearance:auto;width:20px;height:20px;min-width:20px;padding:0;margin:.2rem 0 0;accent-color:var(--ink);flex:none}
.visitor-choice-label strong,.visitor-choice-label span>span{display:block}.visitor-choice-label span>span{margin-top:.4rem;font-weight:400}
.visitor-choice p{font-size:.8rem;line-height:1.6;color:var(--muted);margin:.8rem 0 0}.visitor-choice a{text-decoration:underline;text-underline-offset:3px}
.visitor-settings{max-width:780px;margin:2rem auto 5rem}.visitor-settings h1{font-size:clamp(2rem,3vw,3rem);letter-spacing:-.04em;margin:.6rem 0 1rem}
.visitor-settings>p{line-height:1.7}.visitor-current{border-left:3px solid var(--ink);padding:.5rem 1rem}.visitor-message{padding:1rem;background:var(--surface);border:1px solid var(--line);border-radius:.5rem}
.visitor-breakdown{list-style:none;padding:0;margin:0}.visitor-breakdown li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.8rem;padding:.7rem 0;border-bottom:1px solid var(--line)}
.visitor-breakdown span{overflow-wrap:anywhere}.visitor-breakdown strong{font-variant-numeric:tabular-nums}.visitor-breakdown li:last-child{border:0}
.visitor-day{display:grid;grid-template-columns:100px minmax(60px,1fr) 65px;align-items:center;gap:1rem;margin:.55rem 0;font-size:.85rem}.visitor-day i{display:block;background:var(--ink);height:8px;border-radius:4px;opacity:.7}.visitor-day strong{text-align:right;font-variant-numeric:tabular-nums}
