:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#b01e2b;--bg-accent:#8c1520;--card:#6e1019;--text:#fff6f4;--muted:#f6d9d6;--border:#c4545c;--primary:#ffe3a3;--primary-text:#3a0a0a;--primary-hover:#ffd27a;--danger:#ffb3aa;--on-danger:#3a0404;--ok:#9be8b4;--warn-bg:#4d3a0a;--warn-text:#ffe6a6;--err-bg:#4a0c0c;--err-text:#ffd4d0;--ok-bg:#0f3f21;--ok-text:#c3f3d2;--info-bg:#1a2e4d;--info-text:#d0e2ff;--focus:#fff;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.5}@media (prefers-color-scheme:dark){:root{--bg:#5c0d12;--bg-accent:#430a0e;--card:#3b1111;--text:#fbefee;--muted:#e0c4c2;--border:#6a3030;--primary:#ff9d9d;--primary-text:#2a0404;--primary-hover:#ffb4b4;--danger:#ffa49c;--on-danger:#2a0404;--ok:#7fe0a0;--warn-bg:#4d3a0a;--warn-text:#ffe6a6;--err-bg:#5a1414;--err-text:#ffd4d0;--ok-bg:#0f3f21;--ok-text:#c3f3d2;--info-bg:#1a2e4d;--info-text:#d0e2ff;--focus:#8ab8ff}}*{box-sizing:border-box}body{background:var(--bg);min-height:100vh;color:var(--text);margin:0}a{color:inherit;text-underline-offset:3px}h1,h2,h3{font-weight:700}h1{margin:.5rem 0 .75rem;font-size:1.7rem;line-height:1.2}h2{margin:0 0 .5rem;font-size:1.2rem}h3{margin:.75rem 0 .25rem;font-size:1.05rem}p{margin:0 0 .75rem}ul{margin:0 0 .75rem;padding-left:1.2rem}:focus-visible{outline:3px solid var(--focus);outline-offset:2px}main:focus{outline:none}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:10;background:var(--primary);color:var(--primary-text);border-radius:8px;padding:.6rem 1rem;position:absolute;top:-4rem;left:.5rem}.skip-link:focus{top:.5rem}.page{background:linear-gradient(180deg, var(--bg-accent), var(--bg) 220px);flex-direction:column;min-height:100vh;display:flex;position:relative}.topbar{z-index:2;justify-content:space-between;align-items:center;gap:.5rem;width:100%;max-width:40rem;margin:0 auto;padding:.5rem 1rem;display:flex;position:relative}.brand{align-items:center;min-height:44px;font-weight:700;text-decoration:none;display:inline-flex}.wrapper{z-index:2;flex:1;width:100%;max-width:40rem;margin:0 auto;padding:.5rem 1rem 2rem;position:relative}.footer{z-index:2;width:100%;max-width:40rem;color:var(--muted);justify-content:space-between;gap:1rem;margin:0 auto;padding:1rem;display:flex;position:relative}.footer a{align-items:center;min-height:44px;display:inline-flex}.version{font-variant-numeric:tabular-nums;align-self:center}.lang{border:1px solid var(--border);border-radius:10px;display:inline-flex;overflow:hidden}.lang-btn{min-width:44px;min-height:44px;color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;font-weight:600}.lang-btn[aria-pressed=true]{background:var(--primary);color:var(--primary-text)}.lead{color:var(--muted);font-size:1.05rem}.hint{color:var(--muted);margin:.15rem 0 .4rem;font-size:.9rem}.count,.meta{color:var(--muted)}.meta{margin-left:.5rem;font-size:.85rem}.pre{white-space:pre-wrap;overflow-wrap:anywhere}.ok-text{color:var(--ok);font-weight:600}.warning-text{color:var(--warn-text);background:var(--warn-bg);border-radius:8px;padding:.5rem .75rem}.card{background:var(--card);border:1px solid var(--border);border-radius:14px;margin:0 0 1rem;padding:1rem}.card-danger{border-color:var(--danger)}.link-card-danger{border-color:var(--danger);border-width:2px}details.card>summary{cursor:pointer;align-items:center;min-height:44px;font-weight:600;display:flex}.subform{border-top:1px solid var(--border);margin-top:.75rem;padding-top:.75rem}.facts{grid-template-columns:max-content 1fr;gap:.25rem .75rem;margin:0 0 .75rem;display:grid}.facts dt{font-weight:600}.facts dd{overflow-wrap:anywhere;margin:0}.field,.check{margin:0 0 1rem}.field label{margin-bottom:.25rem;font-weight:600;display:block}.field-group{border:0;margin:0 0 .5rem;padding:0}.field-group legend{margin-bottom:.25rem;padding:0;font-weight:600}fieldset{border:1px solid var(--border);border-radius:10px;margin:0 0 1rem}input[type=text],input[type=number],input[type=date],input:not([type]),textarea,select,.link-input{width:100%;min-height:44px;font:inherit;color:var(--text);background:var(--card);border:1px solid var(--muted);border-radius:10px;padding:.55rem .7rem}textarea{resize:vertical}input[aria-invalid=true],textarea[aria-invalid=true]{border-color:var(--danger);border-width:2px}.field-error{color:var(--danger);margin:.25rem 0 0;font-weight:600}.check{grid-template-columns:28px 1fr;align-items:start;column-gap:.5rem;min-height:44px;display:grid}.check input{width:24px;height:24px;margin:.4rem 0 0}.check label{padding-top:.5rem}.check .hint{grid-column:2;margin-top:-.2rem}.row{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.row-fields>.field{flex:8rem}.link-input{margin-bottom:.5rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85rem}.btn{min-height:48px;font:inherit;cursor:pointer;border:2px solid #0000;border-radius:12px;justify-content:center;align-items:center;padding:.55rem 1.1rem;font-weight:600;text-decoration:none;display:inline-flex}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-block{width:100%;margin-top:.5rem}.btn-primary{background:var(--primary);color:var(--primary-text)}.btn-primary:hover:not(:disabled){background:var(--primary-hover)}.btn-secondary{color:var(--text);border-color:var(--text);background:0 0}.btn-danger{background:var(--danger);color:var(--on-danger)}.btn-link{min-height:44px;color:var(--text);background:0 0;border:0;padding:.4rem .6rem;font-weight:600;text-decoration:underline}.btn-link-danger{color:var(--danger)}.notice{border-radius:10px;margin:0 0 1rem;padding:.7rem .9rem}.notice p:last-child{margin-bottom:0}.notice-info{background:var(--info-bg);color:var(--info-text)}.notice-warning{background:var(--warn-bg);color:var(--warn-text)}.notice-error{background:var(--err-bg);color:var(--err-text)}.notice-success{background:var(--ok-bg);color:var(--ok-text)}.badge{border:1px solid var(--border);color:var(--muted);border-radius:999px;margin-left:.4rem;padding:.05rem .5rem;font-size:.8rem;display:inline-block}.badge-ok{background:var(--ok-bg);color:var(--ok-text);border-color:#0000}.badge-warn{background:var(--warn-bg);color:var(--warn-text);border-color:#0000}.status{background:var(--info-bg);color:var(--info-text);border-radius:999px;padding:.15rem .7rem;font-weight:600;display:inline-block}.status-drawn{background:var(--ok-bg);color:var(--ok-text)}.status-stale{background:var(--warn-bg);color:var(--warn-text)}.plain-list{padding:0;list-style:none}.list-row,.participant{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.25rem .75rem;padding:.35rem 0;display:flex}.rule-list{padding:0;list-style:none}.rule-list li{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:.25rem .5rem;padding:.35rem 0;display:flex}.rule-list li>span:first-child{flex:12rem}.is-conflict{background:var(--warn-bg);color:var(--warn-text);border-radius:8px;padding-inline:.5rem}.chips{flex-wrap:wrap;gap:.4rem;padding:0;list-style:none;display:flex}.chips li{border:1px solid var(--border);border-radius:999px;padding:.2rem .7rem}.rich-text{white-space:pre-wrap;overflow-wrap:anywhere}.link-host{color:var(--muted);font-size:.85rem}.loading{color:var(--muted);align-items:center;gap:.6rem;display:flex}.spinner{border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;width:1.1rem;height:1.1rem;animation:.9s linear infinite spin}.reveal .result-line{color:var(--muted);margin-bottom:0}.result-name{overflow-wrap:anywhere;margin:.1rem 0 .5rem;font-size:2rem;font-weight:800}.scratch{aspect-ratio:320/96;width:100%;max-width:320px;margin:.75rem auto 1rem;position:relative}.scratch-name{text-align:center;background:var(--bg-accent);overflow-wrap:anywhere;border-radius:12px;justify-content:center;align-items:center;margin:0;padding:0 .5rem;font-size:1.5rem;font-weight:800;display:flex;position:absolute;inset:0;overflow:hidden}.scratch-canvas{touch-action:none;cursor:crosshair;border-radius:12px;width:100%;height:100%;transition:opacity .4s;position:absolute;inset:0}.scratch-canvas.is-cleared{opacity:0;pointer-events:none}.name-row{align-items:flex-end;gap:.25rem;display:flex}.name-row>.field{flex:auto}.name-row>.btn-link{margin-bottom:1rem}.exclusion-card{padding-block:.25rem}.exclusion-card>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:.5rem;min-height:44px;font-weight:600;display:flex}.wizard-nav{background:var(--bg);justify-content:space-between;gap:.5rem;padding:.75rem 0;display:flex;position:sticky;bottom:0}.wizard-nav>.btn{flex:1 1 0}.choice-card{margin:0 0 1rem}.choice-h{margin:0 0 .6rem;font-size:1.1rem}.choice-h .btn{font-size:1.1rem;font-weight:700}.choice-text{color:var(--muted);margin:0;font-size:.85rem;line-height:1.4}.home{padding-top:.5rem}.santa{transform-origin:50% 90%;margin-right:.45rem;font-size:1.5rem;animation:1.8s ease-in-out infinite santa-wobble;display:inline-block}@keyframes santa-wobble{0%,to{transform:rotate(-12deg)}50%{transform:rotate(12deg)}}.dialog{border:2px solid var(--border);background:var(--card);width:min(92vw,30rem);max-height:90vh;color:var(--text);border-radius:16px;padding:1.1rem;overflow:auto}.dialog::backdrop{background:#0009}.dialog-actions{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;margin-top:1rem;display:flex}.snow{pointer-events:none;z-index:1;position:fixed;inset:0;overflow:hidden}.flake{background:var(--primary);opacity:.35;border-radius:50%;width:8px;height:8px;animation:14s linear infinite fall;position:absolute;top:-10vh}.flake:nth-child(3n){width:10px;height:10px;animation-duration:17s}.flake:nth-child(4n){width:6px;height:6px;animation-duration:11s}.flake:first-child{animation-delay:-1s;left:5%}.flake:nth-child(2){animation-delay:-6s;left:10%}.flake:nth-child(3){animation-delay:-3s;left:16%}.flake:nth-child(4){animation-delay:-9s;left:22%}.flake:nth-child(5){animation-delay:-5s;left:28%}.flake:nth-child(6){animation-delay:-12s;left:34%}.flake:nth-child(7){animation-delay:-7s;left:40%}.flake:nth-child(8){animation-delay:-2s;left:46%}.flake:nth-child(9){animation-delay:-10s;left:52%}.flake:nth-child(10){animation-delay:-4s;left:58%}.flake:nth-child(11){animation-delay:-8s;left:64%}.flake:nth-child(12){animation-delay:-13s;left:70%}.flake:nth-child(13){animation-delay:-6s;left:76%}.flake:nth-child(14){animation-delay:-11s;left:82%}.flake:nth-child(15){animation-delay:-3s;left:88%}.flake:nth-child(16){animation-delay:-9s;left:93%}.flake:nth-child(17){animation-delay:-1s;left:97%}.flake:nth-child(18){animation-delay:-14s;left:2%}@keyframes fall{to{transform:translateY(115vh)translate(20px)}}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.santa{animation:none}*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@media (min-width:640px){h1{font-size:2rem}.btn-block{width:auto}}
