.tool-page{--t-btn: #2563eb;--t-btn-hover: #1d4ed8;--t-neutral-btn: #374151;--t-neutral-btn-hover: #4b5563;--t-danger: #f87171;--t-danger-strong: #ef4444;--t-danger-btn: #7f1d1d;--t-danger-btn-hover: #991b1b;--t-ok: #4ade80;--t-info: #93c5fd;--t-link: #60a5fa;--t-lock: #6b7280;--t-warn-bg: #422006;--t-warn-border: #b45309;--t-warn-ink: #fcd34d;--t-warn-btn: #b45309;--t-warn-btn-hover: #92400e}:root[data-theme=light] .tool-page{--t-neutral-btn: #4b5563;--t-neutral-btn-hover: #374151;--t-danger: #dc2626;--t-danger-strong: #b91c1c;--t-danger-btn: #b91c1c;--t-danger-btn-hover: #991b1b;--t-ok: #15803d;--t-info: #1d4ed8;--t-link: #1d4ed8;--t-warn-bg: #fef3c7;--t-warn-border: #d97706;--t-warn-ink: #92400e;--t-warn-btn: #d97706;--t-warn-btn-hover: #b45309}.tool-page{button{background:var(--t-btn);color:#fff;border:none;border-radius:6px;padding:.5em 1.1em;cursor:pointer;font-size:.95rem;margin:.25rem}button:hover{background:var(--t-btn-hover)}button:disabled{background:var(--color-line);cursor:not-allowed}input[type=text],input[type=number],textarea,select{background:var(--color-base);color:var(--color-ink);border:1px solid var(--color-line);border-radius:6px;padding:.5em;font-family:inherit}textarea{resize:vertical}.result{white-space:pre-line;margin-top:1rem}}.tool-page.travel-split{h3{margin-top:1.6rem}.ts-intro{color:var(--color-muted);font-size:.95rem;line-height:1.6}.ts-card{background:var(--color-base);border:1px solid var(--color-line);border-radius:8px;padding:.9rem 1rem;margin-top:.75rem}.ts-row{display:flex;flex-wrap:wrap;gap:.6rem;align-items:flex-end}.ts-field{display:flex;flex-direction:column;gap:.25rem}.ts-field>span{font-size:.8rem;color:var(--color-muted)}.ts-field input,.ts-field select{min-width:0}.ts-grow{flex:1 1 12rem}.ts-grow input,.ts-grow select{width:100%}.ts-w6{width:6.5rem}.ts-w9{width:9rem}.ts-muted{color:var(--color-muted);font-size:.85rem}.ts-conv{color:var(--t-info);font-variant-numeric:tabular-nums;min-height:1em}.ts-lock{color:var(--t-lock);font-size:1rem}.ts-by{color:var(--color-muted);font-size:.78rem}.ts-lockbar{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap;background:var(--t-warn-bg);border:1px solid var(--t-warn-border);color:var(--t-warn-ink);border-radius:8px;padding:.7rem 1rem;margin-bottom:.75rem;font-weight:600}.ts-lockbar button{background:var(--t-warn-btn);margin:0}.ts-lockbar button:hover{background:var(--t-warn-btn-hover)}.ts-toast{position:fixed;right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));z-index:9999;display:flex;align-items:center;gap:12px;padding:10px 14px;border-radius:10px;background:var(--color-surface);border:1px solid var(--color-line);color:var(--color-ink);font-size:.9rem;box-shadow:0 6px 20px #00000059;opacity:0;transform:translateY(8px);transition:opacity .2s,transform .2s;pointer-events:none}.ts-toast.show{opacity:1;transform:none;pointer-events:auto}.ts-toast button{margin:0;padding:.35em .9em}.ts-status{min-height:1.2em}.ts-status.err{color:var(--t-danger)}.ts-status.ok{color:var(--t-ok)}.ts-chip{display:inline-flex;align-items:center;gap:.4rem;background:var(--color-surface);border:1px solid var(--color-line);border-radius:999px;padding:.25rem .7rem;margin:.2rem;font-size:.9rem}.ts-chip button{background:none;border:none;color:var(--t-danger);padding:0;margin:0;font-size:1rem;line-height:1;cursor:pointer}.ts-chip button:hover{background:none;color:var(--t-danger-strong)}.ts-split-list{display:grid;gap:.35rem;margin:.4rem 0}.ts-split-item{display:flex;align-items:center;gap:.6rem;background:var(--color-surface);border:1px solid var(--color-line);border-radius:6px;padding:.3rem .6rem}.ts-split-item label{display:flex;align-items:center;gap:.5rem;flex:1;cursor:pointer}.ts-split-item input[type=number]{width:6.5rem}table.ts-table{width:100%;border-collapse:collapse;margin-top:.5rem;font-size:.9rem}table.ts-table th,table.ts-table td{text-align:left;padding:.45rem .5rem;border-bottom:1px solid var(--color-line);vertical-align:top}table.ts-table th{color:var(--color-muted);font-weight:600}table.ts-table td.num,table.ts-table th.num{text-align:right;font-variant-numeric:tabular-nums}table.ts-table .ts-mini{background:var(--t-neutral-btn);padding:.2em .6em;font-size:.8rem;margin:0 .15rem}table.ts-table .ts-mini.del{background:var(--t-danger-btn)}table.ts-table .ts-mini.del:hover{background:var(--t-danger-btn-hover)}.ts-balance{display:flex;justify-content:space-between;padding:.4rem .2rem;border-bottom:1px solid var(--color-line)}.ts-pos{color:var(--t-ok);font-variant-numeric:tabular-nums}.ts-neg{color:var(--t-danger);font-variant-numeric:tabular-nums}.ts-settle{padding:.45rem .2rem;border-bottom:1px solid var(--color-line)}.ts-settle b{font-variant-numeric:tabular-nums}details.ts-guide{margin-top:1rem}details.ts-guide summary{cursor:pointer;color:var(--t-link)}details.ts-guide pre{background:var(--color-surface);border:1px solid var(--color-line);border-radius:6px;padding:.8rem;overflow-x:auto;font-size:.8rem;line-height:1.5}details.ts-guide ol{padding-left:1.3rem;line-height:1.7}.ts-empty{color:var(--color-muted);padding:.6rem .2rem}}.tool-page.lottery{--lt-mono: ui-monospace, SFMono-Regular, Menlo, "Noto Sans Mono", monospace;h3{margin-top:1.6rem}.lt-intro{color:var(--color-muted);font-size:.95rem;line-height:1.7}.lt-card{background:var(--color-surface);border:1px solid var(--color-line);border-radius:8px;padding:1rem;margin-top:.75rem}.lt-seed{display:flex;flex-wrap:wrap;gap:.75rem;align-items:flex-end;padding-bottom:1rem;margin-bottom:1rem;border-bottom:1px dashed var(--color-line)}.lt-field{display:flex;flex-direction:column;gap:.25rem}.lt-label{font-size:.8rem;color:var(--color-muted)}.lt-grow{flex:1 1 16rem;min-width:0}.lt-seed input{width:100%;font-family:var(--lt-mono);font-variant-numeric:tabular-nums}.lt-time{flex:1 1 14rem;font-family:var(--lt-mono);font-size:.85rem;color:var(--color-muted);background:var(--color-base);border-left:3px solid var(--color-accent);border-radius:0 6px 6px 0;padding:.4rem .7rem}.lt-time.err{color:var(--t-danger);border-left-color:var(--t-danger)}.lt-lists{display:grid;grid-template-columns:repeat(auto-fit,minmax(18rem,1fr));gap:.9rem}.lt-head{display:flex;justify-content:space-between;align-items:baseline;gap:.5rem}.lt-count{font-size:.78rem;color:var(--color-muted);font-variant-numeric:tabular-nums}.lt-lists textarea{width:100%;min-height:9rem;font-family:var(--lt-mono);font-size:.85rem;line-height:1.7}.lt-lists .is-priority textarea{border-left:3px solid var(--color-accent)}.lt-lists .is-priority .lt-label{color:var(--color-accent)}.lt-actions{display:flex;flex-wrap:wrap;align-items:center;margin-top:1rem}button.lt-ghost{background:var(--t-neutral-btn)}button.lt-ghost:hover{background:var(--t-neutral-btn-hover)}.lt-status{margin-left:.5rem;font-size:.85rem;min-height:1.2em}.lt-status.ok{color:var(--t-ok)}.lt-status.err{color:var(--t-danger)}.lt-stats{display:flex;flex-wrap:wrap;margin-top:1.5rem;background:var(--color-surface);border:1px solid var(--color-line);border-radius:8px;overflow:hidden}.lt-stat{flex:1 1 7rem;padding:.6rem .9rem;border-right:1px solid var(--color-line)}.lt-stat:last-child{border-right:0}.lt-stat b{display:block;font-family:var(--lt-mono);font-size:1.6rem;line-height:1.3;font-variant-numeric:tabular-nums}.lt-stat span{font-size:.75rem;color:var(--color-muted)}.lt-stat.hit b{color:var(--t-ok)}.lt-stat.miss b{color:var(--t-danger)}.lt-group+.lt-group{margin-top:1.4rem}.lt-group-head{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:var(--color-muted);margin-bottom:.5rem}.lt-group-head:after{content:"";flex:1;height:1px;background:var(--color-line)}.lt-tag{font-size:.72rem;font-weight:700;padding:.1rem .5rem;border-radius:999px;background:var(--color-base);border:1px solid var(--color-line);color:var(--color-accent)}.lt-slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(8.5rem,1fr));gap:.5rem}.lt-slot{background:var(--color-surface);border:1px solid var(--color-line);border-top:3px solid var(--color-line);border-radius:6px;padding:.45rem .6rem}.lt-slot.is-priority{border-top-color:var(--color-accent)}.lt-slot .lt-no{display:block;font-family:var(--lt-mono);font-size:.75rem;color:var(--color-muted)}.lt-slot .lt-who{display:block;font-family:var(--lt-mono);font-size:1rem;font-weight:700;overflow-wrap:anywhere}.lt-slot.is-empty{background:none;border:1px dashed var(--color-line)}.lt-slot.is-empty .lt-who{color:var(--color-muted);font-weight:400;font-size:.9rem}.lt-deal .lt-slot{animation:lt-deal .34s cubic-bezier(.2,.7,.3,1) backwards}.lt-names{display:flex;flex-wrap:wrap;gap:.35rem}.lt-name{font-family:var(--lt-mono);font-size:.8rem;padding:.15rem .5rem;background:var(--color-surface);border:1px solid var(--color-line);border-radius:4px;color:var(--color-muted)}.lt-share{margin-top:.9rem}.lt-share input{width:100%;font-family:var(--lt-mono);font-size:.8rem}.lt-verdict{margin-top:1.25rem;padding:.85rem 1rem;background:var(--color-surface);border:1px solid var(--color-line);border-left:4px solid var(--color-accent);border-radius:8px}.lt-verdict strong{display:block;font-size:1rem}.lt-verdict p{margin:.3rem 0 0;font-size:.88rem;color:var(--color-muted);line-height:1.7}.lt-verdict.ok{border-left-color:var(--t-ok)}.lt-verdict.ok strong{color:var(--t-ok)}.lt-verdict.err{border-left-color:var(--t-danger)}.lt-verdict.err strong{color:var(--t-danger)}.lt-name .lt-rank{display:inline-block;min-width:1.4em;margin-right:.4rem;padding-right:.35rem;border-right:1px solid var(--color-line);color:var(--color-accent);font-variant-numeric:tabular-nums;text-align:right}.lt-empty{color:var(--color-muted)}.lt-verify{border-left:3px solid var(--color-accent)}.lt-verify dl{display:grid;grid-template-columns:auto 1fr;gap:.35rem .9rem;margin:0 0 .8rem;font-size:.9rem}.lt-verify dt{color:var(--color-muted);white-space:nowrap}.lt-verify dd{margin:0;font-family:var(--lt-mono);overflow-wrap:anywhere}.lt-streams{display:flex;flex-wrap:wrap;gap:.3rem}.lt-stream{font-family:var(--lt-mono);font-size:.72rem;padding:.1rem .45rem;border-radius:4px;background:var(--color-base);color:var(--color-accent)}.lt-steps{list-style:decimal;padding-left:1.3rem;line-height:1.8;font-size:.9rem;color:var(--color-muted)}.lt-steps code{font-family:var(--lt-mono);font-size:.85em;background:var(--color-base);border-radius:4px;padding:.05em .3em}}@media print{body:has(.tool-page.lottery){background:#fff;color:#000}body:has(.tool-page.lottery) nav,body:has(.tool-page.lottery)>footer{display:none}.tool-page.lottery{--color-base: #fff;--color-surface: #fff;--color-ink: #000;--color-muted: #333;--color-line: #999;--color-accent: #000;.lt-intro,.lt-seed,.lt-lists,.lt-actions,.lt-share,.lt-steps{display:none}h3:first-of-type{display:none}.lt-card:not(.lt-verify){display:none}.lt-slot,.lt-name,.lt-stats,.lt-verdict,.lt-verify{background:#fff;border-color:#999;box-shadow:none}.lt-slot{break-inside:avoid}.lt-stat.hit b,.lt-stat.miss b,.lt-verdict strong,.lt-name .lt-rank{color:#000}.lt-group{break-inside:avoid}}}@keyframes lt-deal{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.tool-page.lottery .lt-deal .lt-slot{animation:none}}
