*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--text);font:400 1rem/1.5 var(--font-ui);-webkit-font-smoothing:antialiased;min-height:100vh}a{color:var(--accent);text-underline-offset:.15em}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:3px solid var(--focus);outline-offset:2px;border-radius:var(--radius-sm)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.skip-link{position:absolute;left:.75rem;top:-4rem;z-index:100;padding:.55rem 1rem;border-radius:var(--radius-sm);background:var(--hot);color:var(--on-hot);font-weight:800;text-decoration:none}.skip-link:focus{top:.75rem}.hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}kbd{display:inline-block;min-width:1.5em;padding:0 .35em;border:1px solid var(--border-firm);border-bottom-width:2px;border-radius:5px;background:var(--bg-card);color:var(--text-muted);font:600 .75rem/1.5 var(--font-ui);text-align:center}.icon{width:1.25em;height:1.25em;flex:none;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.nav{position:sticky;top:0;z-index:50;height:var(--nav-height);display:flex;align-items:center;gap:.75rem;padding:0 max(1rem,calc((100% - var(--content-width)) / 2));background:var(--bg-nav);border-bottom:1px solid var(--border)}.brand{display:flex;align-items:center;gap:.6rem;text-decoration:none;color:var(--text)}.brand-mark{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:var(--hot);color:var(--on-hot);font:800 .95rem/1 var(--font-display);letter-spacing:-.02em;transform:rotate(-4deg);box-shadow:0 3px color-mix(in srgb,var(--hot) 55%,#000)}.brand-name{font:800 1.15rem/1 var(--font-display);letter-spacing:-.02em;white-space:nowrap}.nav-end{margin-left:auto;display:flex;align-items:center;gap:.5rem}.avatar{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--tag-5);color:var(--text);font:700 .875rem/1 var(--font-ui);text-decoration:none}.page{max-width:var(--page-width);margin:0 auto;padding:2rem 1rem 8rem}.hero{margin-bottom:1.5rem}.kicker{margin:0 0 .35rem;color:var(--text-muted);font-weight:var(--weight-small);font-size:var(--text-sm);letter-spacing:.02em;text-transform:uppercase}.headline{margin:0;font:800 clamp(2rem,5.5vw,3.1rem)/1.02 var(--font-display);letter-spacing:-.035em;text-wrap:balance}.headline em{font-style:normal;color:var(--accent)}.chip{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .75rem;border-radius:var(--radius-pill);background:var(--bg-card);border:1px solid var(--border);font-weight:600;font-size:var(--text-sm);white-space:nowrap}.chip strong{font:800 1rem/1 var(--font-display)}.chip[hidden]{display:none}.progress{flex:1 1 220px;display:flex;align-items:center;gap:.6rem;min-width:200px;font-weight:600;font-size:var(--text-sm);color:var(--text-muted)}.quick-add-btn{border:0;border-radius:var(--radius-sm);background:var(--hot);color:var(--on-hot);padding:.5rem .9rem;font-weight:700;cursor:pointer}.token{display:inline-flex;align-items:center;gap:.3rem;padding:.15rem .55rem;border-radius:var(--radius-pill);background:var(--bg-sunken);font-size:var(--text-sm);font-weight:600}.group{margin:1.5rem 0 0}.empty{padding:1.1rem 1.25rem;border:2px dashed var(--border-firm);border-radius:var(--radius-md);color:var(--text-muted);font-weight:500}.tag{display:inline-flex;align-items:center;padding:.05rem .5rem;border-radius:var(--radius-pill);background:var(--tag-0);color:var(--text);font-size:.78rem;font-weight:600;line-height:1.45}.tag:before{content:"#";opacity:.55;margin-right:.05em}.tag[data-swatch="1"]{background:var(--tag-1)}.tag[data-swatch="2"]{background:var(--tag-2)}.tag[data-swatch="3"]{background:var(--tag-3)}.tag[data-swatch="4"]{background:var(--tag-4)}.tag[data-swatch="5"]{background:var(--tag-5)}.tag[data-swatch="6"]{background:var(--tag-6)}.tag[data-swatch="7"]{background:var(--tag-7)}.tag[data-swatch="8"]{background:var(--tag-8)}.tag[data-swatch="9"]{background:var(--tag-9)}.tag[data-swatch="10"]{background:var(--tag-10)}.tag[data-swatch="11"]{background:var(--tag-11)}.more{position:relative;margin:-.3rem 0}.more summary{list-style:none;display:grid;place-items:center;width:32px;height:32px;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;opacity:.55}.more summary::-webkit-details-marker{display:none}.more[open] summary,.more summary:focus-visible{opacity:1}.more summary:hover,.more[open] summary{background:var(--bg-sunken);color:var(--text)}@media(hover:none){.more summary{opacity:1}}.menu{position:absolute;right:0;top:calc(100% + 4px);z-index:40;min-width:13rem;padding:.3rem;background:var(--bg-card);border:1px solid var(--border-firm);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);animation:rise .15s ease}.menu button{display:flex;align-items:center;gap:.6rem;width:100%;border:0;background:none;padding:.5rem .6rem;border-radius:var(--radius-sm);font-weight:600;font-size:.9rem;text-align:left;cursor:pointer}.menu button:hover,.menu button:focus-visible{background:var(--bg-sunken)}.menu button .icon{width:1.05em;height:1.05em;color:var(--text-muted)}.menu button kbd{margin-left:auto}.menu button[data-act=delete],.menu button[data-act=delete] .icon{color:var(--danger)}.menu hr{border:0;border-top:1px solid var(--border);margin:.3rem .2rem}.menu a{display:flex;align-items:center;gap:.6rem;padding:.5rem .6rem;border-radius:var(--radius-sm);color:var(--text);font-weight:600;font-size:.9rem;text-decoration:none}.menu a:hover,.menu a:focus-visible{background:var(--bg-sunken)}.menu a .icon{width:1.05em;height:1.05em;color:var(--text-muted)}.menu-who{display:flex;flex-direction:column;margin:0;padding:.45rem .6rem .55rem;border-bottom:1px solid var(--border);margin-bottom:.3rem;font-size:.9rem}.menu-who span{color:var(--text-muted);font-size:var(--text-sm)}.account-menu{margin:0}.account-menu>summary.avatar{width:38px;height:38px;border-radius:50%;opacity:1;background:var(--tag-5);color:var(--text);font:700 .875rem/1 var(--font-ui);cursor:pointer}.account-menu>summary.avatar:hover,.account-menu[open]>summary.avatar{background:var(--tag-5);box-shadow:0 0 0 3px var(--hot-soft)}.account-menu .menu{min-width:15rem;top:calc(100% + 8px)}.account-menu>summary.avatar{overflow:hidden;padding:0}.avatar-img{display:block;width:100%;height:100%;border-radius:50%;object-fit:cover}.avatar-row{display:flex;flex-wrap:wrap;gap:1rem 1.25rem;align-items:flex-start}.avatar-preview{display:grid;place-items:center;flex:none;width:96px;height:96px;border-radius:50%;overflow:hidden;background:var(--tag-5);color:var(--text);font:800 2.25rem/1 var(--font-display)}.avatar-controls{flex:1 1 14rem;min-width:0}[data-avatar-note].is-error{color:var(--danger);font-weight:700}.bell-menu{margin:0}.bell-menu>summary.bell{position:relative;width:38px;height:38px;border-radius:50%;opacity:1;color:var(--text-muted)}.bell-menu>summary.bell .icon{width:1.25rem;height:1.25rem}.bell-menu[open]>summary.bell,.bell-menu>summary.bell:hover{color:var(--text)}.bell-count{position:absolute;top:1px;right:0;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--hot);color:var(--on-hot);font:700 .7rem/18px var(--font-ui);text-align:center}.bell-count[hidden]{display:none}.bell-list{min-width:18rem;max-width:min(92vw,22rem);top:calc(100% + 8px)}.menu a.bell-item{flex-direction:column;align-items:flex-start;gap:.1rem}.bell-item strong{display:flex;align-items:center;gap:.4rem}.bell-item.is-unread strong:before{content:"";flex:none;width:7px;height:7px;border-radius:50%;background:var(--spark)}.bell-item span{color:var(--text-muted);font-size:var(--text-sm);font-weight:500}.bell-empty{margin:0;padding:.6rem;color:var(--text-muted);font-size:var(--text-sm)}.toasts{position:fixed;left:50%;bottom:1.5rem;transform:translate(-50%);z-index:300;display:flex;flex-direction:column-reverse;align-items:center;gap:.5rem;width:min(92vw,460px);pointer-events:none}.toast{display:flex;align-items:center;gap:.75rem;width:100%;padding:.75rem .75rem .75rem 1rem;border-radius:var(--radius-md);background:var(--text);color:var(--bg);box-shadow:var(--shadow-lg);font-weight:600;pointer-events:auto;animation:toast-in .35s cubic-bezier(.3,1.5,.5,1)}.toast.big{background:var(--hot);color:var(--on-hot);font:800 1.1rem/1.25 var(--font-display);letter-spacing:-.01em}.toast .emoji{font-size:1.35rem;line-height:1}.toast .msg{flex:1}.toast button{border:0;border-radius:var(--radius-sm);background:transparent;color:inherit;padding:.35rem .6rem;font-weight:800;text-decoration:underline;text-underline-offset:.2em;cursor:pointer}.toast.out{animation:toast-out .25s ease forwards}#confetti{position:fixed;inset:0;width:100vw;height:100vh;margin:0;padding:0;border:0;background:transparent;overflow:visible;z-index:250;pointer-events:none}dialog{color:var(--text)}dialog::backdrop{background:var(--scrim);backdrop-filter:blur(2px)}.palette{width:min(94vw,620px);margin:12vh auto auto;padding:0;border:1px solid var(--border-firm);border-radius:var(--radius-lg);background:var(--bg-card);box-shadow:var(--shadow-lg);overflow:hidden}.palette[open]{animation:rise .2s cubic-bezier(.3,1.3,.5,1)}.fields{display:grid;grid-template-columns:7.5rem minmax(0,1fr);gap:.55rem 1rem;align-items:center;margin:1.5rem 0;font-size:.9375rem}.fields dt{color:var(--text-muted);font-weight:600;font-size:var(--text-sm)}.fields dd{margin:0;min-width:0;display:flex;flex-wrap:wrap;gap:.35rem;align-items:center}.seg{display:inline-flex;padding:2px;border-radius:var(--radius-sm);background:var(--bg-sunken);border:1px solid var(--border)}.seg button{border:0;background:transparent;border-radius:6px;padding:.25rem .6rem;font-weight:600;font-size:var(--text-sm);color:var(--text-muted);cursor:pointer}.seg button[aria-pressed=true],.seg button[aria-checked=true]{background:var(--hot);color:var(--on-hot);box-shadow:var(--shadow)}.pill-btn{display:inline-flex;align-items:center;gap:.35rem;border:1px solid var(--border);background:var(--bg-card);border-radius:var(--radius-sm);padding:.3rem .6rem;font-weight:600;font-size:var(--text-sm);cursor:pointer}.pill-btn .icon{width:1em;height:1em;color:var(--text-muted)}a.pill-btn{color:var(--text);text-decoration:none}a.btn-primary,a.btn-danger{text-decoration:none}.pill-btn.ghost{border-style:dashed;color:var(--text-muted);background:transparent}.pill-btn[aria-pressed=true]{background:var(--text);border-color:var(--text);color:var(--bg)}.pill-btn[aria-pressed=true] .icon{color:var(--bg)}.form-sheet{width:min(94vw,500px)}.form-sheet[open]{animation:rise .2s cubic-bezier(.3,1.3,.5,1)}.form-sheet .sub{margin:-.5rem 0 1.1rem;color:var(--text-muted);font-size:.9375rem}.form-sheet .sub strong{color:var(--text)}.form-sheet fieldset{border:0;margin:0 0 1rem;padding:0}.form-sheet legend{padding:0;margin-bottom:.45rem;font:800 .95rem/1.2 var(--font-display)}.form-sheet input[type=date]{padding:.4rem .6rem;border:1px solid var(--border-firm);border-radius:var(--radius-sm);background:var(--bg-sunken);font-weight:600}.opt{display:flex;gap:.7rem;align-items:flex-start;padding:.7rem .8rem;margin-bottom:.4rem;border:1.5px solid var(--border);border-radius:var(--radius-sm);cursor:pointer}.opt:has(input:checked){border-color:var(--spark);background:var(--hot-soft)}.opt input{margin-top:.25rem;accent-color:var(--spark)}.opt>span{display:flex;flex-direction:column;gap:.1rem}.opt>span>span{color:var(--text-muted);font-size:var(--text-sm)}.preview{margin:0 0 1.1rem;padding:.65rem .8rem;border-left:3px solid var(--spark);background:var(--bg-sunken);border-radius:0 var(--radius-sm) var(--radius-sm) 0;font-size:.9rem;line-height:1.55}.actions{display:flex;justify-content:flex-end;gap:.5rem}.btn-primary{border:0;border-radius:var(--radius-sm);background:var(--hot);color:var(--on-hot);padding:.5rem 1.1rem;font-weight:800;cursor:pointer}.btn-primary:disabled{opacity:.45;cursor:not-allowed}.fields .seg{flex-wrap:wrap;max-width:100%}.fields .rem{min-width:0;max-width:100%}.rem{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem .6rem;padding:.4rem .4rem .4rem .6rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-sunken)}.sheet{width:min(94vw,560px);padding:1.5rem;border:1px solid var(--border-firm);border-radius:var(--radius-lg);background:var(--bg-card);box-shadow:var(--shadow-lg)}.sheet h2{margin:0 0 1rem;font:800 1.35rem/1.1 var(--font-display)}.keys{display:grid;grid-template-columns:auto 1fr;gap:.45rem 1rem;margin:0;font-size:.9375rem}.keys dt{display:flex;gap:.25rem;justify-content:flex-end}.keys dd{margin:0;color:var(--text-muted)}.headline-sm{font-size:clamp(1.9rem,4vw,2.4rem)}.hero-tight{margin-bottom:1.25rem}.settings{display:grid;grid-template-columns:13.5rem minmax(0,1fr);gap:1.5rem;align-items:start}.set-tabs{position:sticky;top:calc(var(--nav-height) + 1rem);display:flex;flex-direction:column;gap:.15rem}.set-tabs a{display:flex;align-items:center;gap:.6rem;padding:.6rem .8rem;border-radius:var(--radius-sm);color:var(--text-muted);font-weight:600;text-decoration:none;white-space:nowrap}.set-tabs a:hover{background:var(--bg-sunken);color:var(--text)}.set-tabs a[aria-selected=true]{background:var(--bg-card);color:var(--text);box-shadow:var(--shadow)}.set-tabs a[aria-selected=true]:before{content:"";width:3px;align-self:stretch;margin:-.2rem 0 -.2rem -.45rem;border-radius:3px;background:var(--spark)}.set-tabs .icon{width:1.1em;height:1.1em}.set-panel{padding:1.5rem 1.75rem 1.75rem;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-card)}.set-panel[hidden]{display:none}.set-head{display:flex;align-items:baseline;gap:1rem;margin-bottom:.5rem}.set-head h2{margin:0;font:800 1.5rem/1.1 var(--font-display);letter-spacing:-.02em}.saved{color:var(--accent);font-size:var(--text-sm);font-weight:700;opacity:0;transition:opacity .2s}.saved.on{opacity:1}.set-lede{margin:0 0 1.25rem;color:var(--text-muted);max-width:62ch}.set-group{padding:1.25rem 0;border-top:1px solid var(--border)}.set-head+.set-group{border-top:0;padding-top:.5rem}.set-group h3,.set-row h3{margin:0 0 .2rem;font:800 1.05rem/1.25 var(--font-display)}.set-help{display:block;margin:0 0 .75rem;color:var(--text-muted);font-size:.9rem;font-weight:500}.set-help code{overflow-wrap:anywhere}.set-row .set-help,.sessions .set-help{margin:0}.set-row>*{min-width:0}.set-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem 2rem;padding:1.1rem 0;border-top:1px solid var(--border)}.set-row>div:first-child{min-width:0;flex:1 1 16rem}.set-row:has(>.switch)>div:first-child{flex-basis:0}.set-row-inner{border-top:1px dashed var(--border);margin-top:1rem;padding-bottom:0}.set-row-inner+.form-actions{margin-top:1rem}.theme-pick{display:grid;grid-template-columns:repeat(3,1fr);gap:.9rem;margin:0;padding:0;border:0}.theme-card{position:relative;display:flex;flex-direction:column;gap:.7rem;padding:.7rem;border:2px solid var(--border);border-radius:var(--radius-md);cursor:pointer;transition:border-color .15s,box-shadow .15s}.theme-card:hover{border-color:var(--border-firm)}.theme-card:has(input:checked){border-color:var(--spark);box-shadow:0 0 0 4px var(--hot-soft)}.theme-card:has(input:focus-visible){outline:3px solid var(--focus);outline-offset:3px}.theme-card input{position:absolute;opacity:0;pointer-events:none}.tp-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-radius:var(--radius-sm);overflow:hidden;border:1px solid var(--border)}.tp-preview{display:flex;flex-direction:column;gap:6px;padding:10px;min-width:0;background:var(--p-bg)}.tp-row{display:flex;align-items:center;gap:6px;padding:6px;border-radius:6px;background:var(--p-bg-card)}.tp-check{width:12px;height:12px;border-radius:50%;border:2px solid var(--p-border);flex:none}.tp-check.on{background:var(--p-spark);border-color:var(--p-spark)}.tp-check.pri{border-color:var(--p-pri-3)}.tp-line{height:5px;flex:1;border-radius:3px;background:var(--p-text);opacity:.75}.tp-line.short{flex:.6;background:var(--p-text-muted)}.tp-chip{width:16px;height:8px;border-radius:4px;background:var(--p-tag-4)}.tp-btn{align-self:flex-end;padding:2px 8px;border-radius:5px;background:var(--p-hot);color:var(--p-on-hot);font-size:11px;font-weight:800}.tp-name{display:flex;flex-direction:column;gap:.1rem;padding:0 .2rem .1rem}.tp-name span{color:var(--text-muted);font-size:var(--text-sm)}.switch{position:relative;display:inline-flex;flex:none;cursor:pointer}.switch input{position:absolute;inset:0;margin:0;opacity:0;cursor:pointer}.switch-track{position:relative;width:48px;height:28px;border-radius:var(--radius-pill);background:var(--bg-sunken);border:2px solid var(--border-firm);transition:background .15s,border-color .15s}.switch-track:after{content:"";position:absolute;top:2px;left:2px;width:20px;height:20px;border-radius:50%;background:var(--text-muted);transition:transform .2s cubic-bezier(.3,1.4,.5,1),background .15s}.switch input:checked+.switch-track{background:var(--spark);border-color:var(--spark)}.switch input:checked+.switch-track:after{transform:translate(20px);background:var(--on-spark)}.switch input:focus-visible+.switch-track{outline:3px solid var(--focus);outline-offset:3px}.input{width:100%;max-width:100%;padding:.6rem .75rem;border:1px solid var(--border-firm);border-radius:var(--radius-sm);background:var(--bg-nav);font-weight:500}.input:focus{outline:none;border-color:var(--spark);box-shadow:0 0 0 3px var(--hot-soft)}.input-sm{width:auto;padding:.4rem .6rem;font-weight:600}.field{display:flex;flex-direction:column;gap:.35rem;margin-bottom:.9rem;max-width:30rem}.field>span:first-child{font-weight:700;font-size:.9rem}.field .set-help{margin:0}.form-actions{display:flex;gap:.5rem}.btn-row{display:flex;flex-wrap:wrap;gap:.5rem}.badge{padding:.15rem .6rem;border-radius:var(--radius-pill);background:var(--bg-sunken);color:var(--text-muted);font-size:.78rem;font-weight:700;white-space:nowrap}.check-row{display:flex;align-items:center;gap:.5rem;margin:0 0 .9rem;font-weight:600}.choice-list{margin:0 0 .75rem;padding:0;border:0}.sessions{list-style:none;margin:.5rem 0 .9rem;padding:0;display:grid;gap:.5rem}.sessions li{display:flex;align-items:center;gap:.9rem;padding:.75rem .9rem;border-radius:var(--radius-sm);background:var(--bg-sunken)}.sessions li>div{flex:1;min-width:0;display:flex;flex-direction:column;overflow-wrap:anywhere}.sessions li{min-width:0}@media(max-width:36rem){.sessions li{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:.9rem;row-gap:.5rem}.sessions li>:not(.ch-icon):not(div){grid-column:2;justify-self:start}}.ch-icon{font-size:1.3rem;line-height:1}.pw-meter{height:6px;max-width:30rem;margin:-.4rem 0 1rem;border-radius:var(--radius-pill);background:var(--bg-sunken);overflow:hidden}.pw-meter>div{height:100%;width:0;background:var(--hp-bloodied);border-radius:inherit;transition:width .2s,background .2s}.pw-meter>div[data-ok=true]{background:var(--spark)}.danger-zone{margin-top:.5rem;padding:1.1rem 1.2rem;border:2px solid color-mix(in oklab,var(--danger) 45%,var(--border));border-radius:var(--radius-md)}.btn-danger{border:0;border-radius:var(--radius-sm);background:var(--danger);color:var(--bg-card);padding:.55rem 1.1rem;font-weight:800;cursor:pointer}.btn-danger:disabled{opacity:.4;cursor:not-allowed}.set-save[hidden],#try-effects[hidden],.field[hidden],#push-btn[hidden],#push-off[hidden]{display:none}.set-save{margin-top:1.25rem}.install-steps{margin:0;padding-left:1.2rem;display:grid;gap:.35rem;color:var(--text-muted);font-size:.9rem}.install-steps strong{color:var(--text)}@media(max-width:47.99rem){.settings{grid-template-columns:minmax(0,1fr);gap:1rem}.set-tabs{position:static;flex-direction:row;flex-wrap:wrap;gap:.25rem}.set-tabs a{padding:.45rem .65rem;font-size:var(--text-sm);gap:.4rem}.set-tabs a[aria-selected=true]:before{display:none}.set-panel{padding:1.1rem 1rem 1.25rem}.theme-pick{grid-template-columns:1fr}.theme-card{flex-direction:row;align-items:center}.tp-pair{flex:0 0 55%}}.inbox{min-width:0;list-style:none;margin:0;padding:.35rem;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-card);position:sticky;top:calc(var(--nav-height) + 1rem)}.inbox li{min-width:0;display:flex;flex-direction:column;gap:.15rem;padding:.7rem .8rem;border-radius:var(--radius-sm);cursor:pointer}.inbox li+li{margin-top:.15rem}.inbox li:hover{background:var(--bg-sunken)}.inbox li[aria-selected=true]{background:var(--hot-soft)}.inbox li:focus-visible{outline:3px solid var(--focus);outline-offset:-3px}.mail{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-card);overflow:hidden;min-width:0}@media(max-width:60rem){.inbox{position:static}}.auth-page{min-height:100vh;display:flex;flex-direction:column}.auth{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.25rem;padding:3rem 1rem 6rem}.auth-box{width:min(100%,27rem);padding:2rem 1.75rem 1.75rem;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-card);box-shadow:var(--shadow);text-align:center}.auth-box[hidden]{display:none}.brand-img.auth-mark{display:block;width:72px;height:72px;margin:0 auto 1.25rem}.auth-box h1{margin:0 0 .75rem;font:800 1.6rem/1.15 var(--font-display);letter-spacing:-.025em;text-wrap:balance}.auth-box>p{margin:0 0 .9rem;color:var(--text-muted)}.auth-lede{margin:0 0 1.25rem!important}.auth-form{text-align:left;margin-top:1.25rem}.auth-form .field{max-width:none}.btn-block{display:block;width:100%;padding:.75rem 1rem;font-size:1rem;text-align:center;text-decoration:none}.auth-links{margin:1.25rem 0 0!important;font-size:.9rem}.auth-foot{margin:0;color:var(--text-muted);font-size:var(--text-sm)}.alert{margin:0 0 1rem!important;padding:.65rem .85rem;border-left:3px solid var(--danger);border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:color-mix(in oklab,var(--danger) 9%,var(--bg-card));color:var(--text)!important;font-weight:600;font-size:.9rem;text-align:left}.alert[hidden]{display:none}.alert p{margin:0}.alert ul{margin:.35rem 0 0;padding-left:1.1rem}.alert a{color:inherit}.field-error{padding-left:.55rem;border-left:3px solid var(--danger);color:var(--text);font-size:.85rem;font-weight:700}.input[aria-invalid=true]{border-color:var(--danger)}.pw-wrap{position:relative;display:block}.pw-wrap .input{padding-right:4.25rem}.pw-toggle{position:absolute;top:50%;right:.35rem;transform:translateY(-50%);border:0;border-radius:6px;background:none;padding:.3rem .55rem;color:var(--text-muted);font-size:var(--text-sm);font-weight:700;cursor:pointer}.pw-toggle:hover{background:var(--bg-card);color:var(--text)}.welcome{margin:0 0 1.25rem;padding:1.25rem 1.4rem 1.4rem;border:2px solid var(--spark);border-radius:var(--radius-lg);background:linear-gradient(135deg,var(--hot-soft),var(--bg-card) 55%)}.welcome[hidden]{display:none}@keyframes card-out{to{opacity:0;transform:translateY(-8px) scale(.98)}}.step{display:flex;gap:.75rem;align-items:flex-start;padding:.9rem;border-radius:var(--radius-md);background:var(--bg-card);border:1px solid var(--border)}.step>div{min-width:0}.step h3{margin:.1rem 0 .3rem;font:800 1rem/1.2 var(--font-display)}.step .set-help{font-size:.875rem}.step code{font:600 .78rem/1 ui-monospace,SF Mono,Menlo,monospace;background:var(--bg-sunken);border-radius:4px;padding:.1rem .25rem}.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:1.25rem}.kpi{display:flex;flex-direction:column;gap:.35rem;padding:1rem 1.1rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-card);min-width:0}.kpi-label{margin:0;color:var(--text-muted);font-size:var(--text-sm);font-weight:700}.kpi-value{margin:0;font:800 2.4rem/1 var(--font-display);letter-spacing:-.035em}.kpi-value small{font-size:1.3rem;margin-left:.05em}.kpi-note{margin:0;color:var(--text-muted);font-size:var(--text-sm);font-weight:500}@media(max-width:60rem){.kpis{grid-template-columns:repeat(2,1fr)}}@media(max-width:36rem){.kpi-value{font-size:2rem}}.tab-badge{margin-left:auto;min-width:1.4rem;padding:.05rem .4rem;border-radius:var(--radius-pill);background:var(--hot);color:var(--on-hot);font-size:.75rem;font-weight:800;text-align:center}.tab-badge[hidden]{display:none}.kpis-admin{grid-template-columns:repeat(auto-fit,minmax(7.25rem,1fr));gap:.6rem}.kpis-admin .kpi{padding:.85rem .9rem}.kpis-admin .kpi-value{font-size:2rem}.kpi-alert{border-color:var(--spark);box-shadow:0 0 0 3px var(--hot-soft)}.people{list-style:none;margin:.5rem 0 0;padding:0;display:grid;grid-template-columns:minmax(0,1fr);gap:.4rem}.people-empty{padding:.9rem 1rem;border:2px dashed var(--border-firm);border-radius:var(--radius-md);color:var(--text-muted)}.person{display:flex;align-items:center;gap:.8rem;padding:.65rem .8rem;border-radius:var(--radius-md);background:var(--bg-sunken)}.person-av{flex:none;display:grid;place-items:center;width:36px;height:36px;border-radius:50%;color:var(--text);font-weight:800}.person-av-lg{width:52px;height:52px;font-size:1.3rem}.person-who{flex:1;min-width:0;display:flex;flex-direction:column}.person-who>span{color:var(--text-muted);font-size:var(--text-sm);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.person-tags{display:flex;gap:.3rem;flex-wrap:wrap}.person-seen{font-size:var(--text-sm);color:var(--text-muted);white-space:nowrap;min-width:8.5rem}.people-table .person{display:grid;grid-template-columns:auto minmax(0,1.6fr) auto 8.5rem auto}.badge-ok{background:color-mix(in oklab,var(--spark) 18%,var(--bg-card));color:var(--text)}.badge-admin{background:var(--tag-5);color:var(--text)}.badge-active{background:var(--tag-2);color:var(--text)}.badge-pending{background:var(--tag-1);color:var(--text)}.set-group h3 .badge{vertical-align:middle;margin-left:.35rem;font-family:var(--font-ui)}.user-filters{display:flex;flex-wrap:wrap;gap:.6rem 1rem;align-items:center;margin-bottom:.75rem}.user-filters .field{min-width:0;max-width:100%;margin:0}.user-filters .field select{max-width:100%}.search-field{position:relative;flex:1 1 14rem}.search-field .icon{position:absolute;left:.7rem;top:50%;transform:translateY(-50%);color:var(--text-muted);width:1.05em;height:1.05em}.search-field .input{padding-left:2.2rem}.back-link{margin:0 0 .75rem;font-size:.9rem;font-weight:600}.person-head{align-items:center;gap:1rem}.person-head>div{flex:1;min-width:0}.person-head .set-help{margin:.2rem 0 0}.exits{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-top:1.25rem}.exit{padding:1rem;border:1px solid var(--border);border-radius:var(--radius-md)}.exit h4{margin:0 0 .3rem;font:800 .95rem/1.2 var(--font-display)}.exit p{margin:0 0 .8rem;color:var(--text-muted);font-size:.9rem}.exit-danger{border-color:color-mix(in oklab,var(--danger) 40%,var(--border))}.health{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem;padding-top:1.25rem;border-top:1px solid var(--border);margin-top:1.25rem}.health-card{padding:1rem 1.1rem;border-radius:var(--radius-md);background:var(--bg-sunken)}.health-card h3{display:flex;align-items:center;gap:.5rem;margin:0 0 .35rem;font:700 .9rem/1.2 var(--font-ui);color:var(--text-muted)}.health-big{margin:0 0 .35rem;font:800 1.2rem/1.2 var(--font-display)}.health-card .set-help{margin:0;font-size:.875rem}.dot-state{width:10px;height:10px;border-radius:50%;background:var(--spark)}.health-card[data-state=idle] .dot-state{background:transparent;border:2px solid var(--text-muted)}.health-card[data-state=fail] .dot-state{border-radius:2px;background:var(--danger)}.health-card form{margin-top:.75rem}.audit-list{list-style:none;margin:0;padding:0}.audit-row{display:grid;grid-template-columns:minmax(0,9rem) minmax(0,1fr);gap:.75rem;padding:.55rem 0;border-top:1px solid var(--border);font-size:.9rem}.audit-row:first-child{border-top:0}.audit-row time{color:var(--text-muted);font-variant-numeric:tabular-nums}.audit-row span{min-width:0;overflow-wrap:anywhere}@media(max-width:30rem){.audit-row{grid-template-columns:minmax(0,1fr);gap:.1rem}}.pager{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin:1rem 0}.pager .set-help{margin:0}.add-person>summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:.5rem}.add-person>summary::-webkit-details-marker{display:none}.add-person>summary:before{content:"+";font-weight:800;color:var(--hot)}.add-person[open]>summary:before{content:"\2212"}.add-person>summary h3{margin:0}.add-person form{margin-top:.75rem}.issued{border-left:3px solid var(--spark);padding-left:.85rem}.issued .input{font-family:var(--font-mono, ui-monospace, monospace);font-size:.85rem}.admin-version{margin-top:1.5rem}.admin-version code{overflow-wrap:anywhere}@media(max-width:60rem){.people-table .person{grid-template-columns:auto minmax(0,1fr) auto}.people-table .person-seen{display:none}.people-table .person-tags{grid-column:2}.people-table .person .pill-btn{grid-row:1 / span 2;grid-column:3}}@media(max-width:36rem){.exits,.health{grid-template-columns:1fr}.person-head{flex-wrap:wrap}}#themes{--color-bg: var(--bg-card);--color-surface-dark: var(--border-firm);--color-brand: var(--spark);--color-muted: var(--text-muted);--font-mono: ui-monospace, "SF Mono", Menlo, monospace}.th-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));gap:.75rem}.th-card{display:flex;flex-direction:column;gap:.6rem;padding:.8rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-sunken)}.th-card.is-selected{border-color:var(--spark);box-shadow:0 0 0 3px var(--hot-soft)}.th-swatches{display:flex;height:26px;border-radius:7px;overflow:hidden;border:1px solid var(--border)}.th-swatches i{flex:1}.th-swatches b{width:3px;background:var(--bg-card)}.th-meta{display:flex;flex-wrap:wrap;gap:.1rem .35rem;align-items:baseline}.th-meta>span:last-child{flex-basis:100%;color:var(--text-muted);font-size:var(--text-sm);font-family:ui-monospace,SF Mono,Menlo,monospace}.th-acts{display:flex;gap:.35rem}.pill-btn.is-on{background:var(--text);color:var(--bg);border-color:var(--text)}.th-note{margin-top:.75rem}.th-work{display:grid;grid-template-columns:minmax(0,1fr) 20rem;gap:1.25rem;align-items:start;margin-top:1.25rem;padding-top:1.25rem;border-top:1px solid var(--border)}.th-edit-head{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:1rem}.th-edit-head h3{margin:0;font:800 1.15rem/1.2 var(--font-display)}.th-edit-head .pill-btn{margin-left:auto}.th-work .field{max-width:none}.th-tokens{margin:1rem 0;border:1px solid var(--border);border-radius:var(--radius-md)}.th-row{display:grid;grid-template-columns:minmax(0,1fr) 9.5rem 9.5rem;gap:.5rem;align-items:center;padding:.4rem .7rem;border-top:1px solid var(--border)}.th-row-head{border-top:0;border-radius:calc(var(--radius-md) - 1px) calc(var(--radius-md) - 1px) 0 0;background:var(--bg-sunken);color:var(--text-muted);font-size:var(--text-sm);font-weight:700}.th-group{padding:.55rem .7rem .3rem;border-top:1px solid var(--border);background:var(--bg-sunken);font:800 .85rem/1.2 var(--font-display)}.th-k{display:flex;flex-direction:column;font:600 .82rem/1.3 ui-monospace,SF Mono,Menlo,monospace}.th-k span{font:500 .78rem/1.3 var(--font-ui);color:var(--text-muted)}.th-cell{display:flex;align-items:center;gap:.35rem}.th-cell .input{padding:.3rem .45rem;font:600 .8rem/1.2 ui-monospace,SF Mono,Menlo,monospace;min-width:0}.cr-wrap{margin:.5rem 0}.cr-row{display:flex;flex-wrap:wrap;gap:.35rem}.cr{display:inline-flex;align-items:center;gap:.3rem;padding:.2rem .55rem;border-radius:var(--radius-pill);font-size:.78rem;font-weight:600;background:var(--bg-sunken);color:var(--text)}.cr b{font-variant-numeric:tabular-nums}.cr-ok{background:color-mix(in oklab,var(--spark) 16%,var(--bg-card))}.cr-all{margin-top:.5rem}.cr-all summary{cursor:pointer;color:var(--text-muted);font-size:var(--text-sm);font-weight:700}.cr-all .cr-row{margin-top:.5rem;max-height:14rem;overflow:auto}.th-avail{margin:1rem 0;padding:.9rem 1rem;border-radius:var(--radius-md);background:var(--bg-sunken);display:grid;gap:.6rem}.th-avail h4,.th-side h4{margin:0;font:800 .95rem/1.2 var(--font-display)}.th-switch{display:flex;align-items:flex-start;gap:.7rem;font-weight:600}.th-switch.is-blocked{opacity:.7}.th-switch .set-help{display:block;margin:.15rem 0 0;font-weight:500}.th-actions{position:sticky;bottom:0;z-index:2;padding:.7rem;margin:0 -.7rem;background:color-mix(in srgb,var(--bg-card) 92%,transparent);backdrop-filter:blur(6px);justify-content:flex-start}.th-actions .btn-danger{margin-left:auto}.th-side{position:sticky;top:calc(var(--nav-height) + 1rem);display:grid;gap:.75rem}.th-preview{border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden;background:var(--bg);color:var(--text);font-size:.85rem}.thp-bar{display:flex;align-items:center;gap:.5rem;padding:.45rem .6rem;background:var(--bg-nav);border-bottom:1px solid var(--border)}.thp-bar .brand-mark{width:26px;height:26px;border-radius:8px;font-size:.62rem;box-shadow:0 2px color-mix(in srgb,var(--hot) 55%,#000)}.thp-bar strong{font:800 .85rem/1 var(--font-display)}.thp-mode{margin-left:auto;color:var(--text-muted);font-size:.72rem;font-weight:700}.thp-body{padding:.6rem;display:grid;gap:.5rem}.thp-head{margin:0;font:800 1rem/1.1 var(--font-display)}.th-preview .tag{font-size:.68rem}.thp-foot{margin:0;display:flex;flex-wrap:wrap;align-items:center;gap:.6rem;font-size:.78rem}.thp-foot .quick-add-btn{padding:.3rem .6rem;font-size:.78rem}.thp-soft{padding:.15rem .4rem;border-radius:5px;background:var(--hot-soft)}@media(max-width:70rem){.th-work{grid-template-columns:minmax(0,1fr)}.th-side{position:static;grid-template-columns:1fr 1fr}.th-side h4,.th-side>p{grid-column:1 / -1}}@media(max-width:40rem){.th-side{grid-template-columns:minmax(0,1fr)}.th-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.th-k{grid-column:1 / -1}}.siteimgs{display:grid;gap:.75rem}.siteimg{display:grid;grid-template-columns:8rem minmax(0,1fr);gap:1rem;align-items:start;padding:.8rem;border-radius:var(--radius-md);background:var(--bg-sunken)}.siteimg-preview{position:relative;display:grid;place-items:center;border-radius:var(--radius-sm);overflow:hidden;background:repeating-conic-gradient(var(--bg-card) 0 25%,var(--border) 0 50%) 0 0 / 14px 14px}.siteimg-square{aspect-ratio:1}.siteimg-wide{aspect-ratio:1200 / 630}.siteimg-wide img{width:100%;height:100%;object-fit:cover}.siteimg-preview img{max-width:100%;max-height:100%;object-fit:contain}.safe-zone{position:absolute;inset:10%;border-radius:50%;border:2px dashed rgb(255 255 255 / .75);box-shadow:0 0 0 1px #00000059;pointer-events:none;opacity:0;transition:opacity .15s}.siteimg-mask:hover .safe-zone,.siteimg-mask.show-crop .safe-zone{opacity:1}.siteimg-mask.show-crop img{clip-path:circle(40%)}.siteimg-controls{display:flex;flex-direction:column;gap:.35rem;min-width:0}.siteimg-state{color:var(--text-muted);font-size:var(--text-sm);overflow-wrap:anywhere}.siteimg-form{display:flex;flex-wrap:wrap;gap:.4rem}.siteimg-form label.pill-btn{cursor:pointer}.siteimg-form label.pill-btn:focus-within{outline:3px solid var(--focus);outline-offset:2px}.siteimg-controls .set-help{margin:0}.mask-toggle{display:inline-flex;align-items:center;gap:.4rem;font-size:var(--text-sm);font-weight:600;cursor:pointer}.mask-toggle input{accent-color:var(--spark)}.brand-img{width:38px;height:38px;object-fit:contain}.unfurl{display:flex;flex-direction:column;max-width:22rem;margin:.25rem 0 1rem;border:1px solid var(--border);border-left:4px solid var(--border-firm);border-radius:var(--radius-sm);overflow:hidden;background:var(--bg-sunken)}.unfurl img{width:100%;aspect-ratio:1200 / 630;object-fit:cover;display:block}.unfurl div{display:flex;flex-direction:column;gap:.15rem;padding:.55rem .75rem;min-width:0;font-size:.85rem}.unfurl span{color:var(--text-muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.unfurl em{font-style:normal;color:var(--text-muted);font-size:.75rem}@media(max-width:36rem){.siteimg{grid-template-columns:5.5rem minmax(0,1fr)}}.flash{width:calc(100% - 2rem);max-width:calc(var(--page-width) - 2rem);margin:1rem auto 0;padding:.65rem 1rem;border-left:3px solid var(--spark);border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:var(--bg-card);font-weight:600}.flash:has(form){display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-block:.45rem}.flash form{flex:none}@keyframes pop{0%{transform:scale(1)}40%{transform:scale(1.3)}to{transform:scale(1)}}@keyframes bump{0%{transform:scale(1)}40%{transform:scale(1.18) rotate(-3deg)}to{transform:scale(1)}}@keyframes leave{0%{opacity:1;max-height:6rem}60%{opacity:0;transform:translate(24px);max-height:6rem}to{opacity:0;transform:translate(24px);max-height:0;padding-top:0;padding-bottom:0}}@keyframes toast-in{0%{opacity:0;transform:translateY(16px) scale(.96)}to{opacity:1;transform:none}}@keyframes toast-out{to{opacity:0;transform:translateY(8px) scale(.97)}}@keyframes rise{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}@keyframes slide-in{0%{transform:translate(40px);opacity:0}to{transform:none;opacity:1}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}.toast,.toast.out{animation:none}}@media(max-width:47.99rem){.brand-name{display:none}.page{padding-top:1.25rem}.fields{grid-template-columns:6rem minmax(0,1fr)}}@media(max-width:24rem){.nav{gap:.35rem;padding:0 .75rem}.brand-mark{width:32px;height:32px;border-radius:9px;font-size:.8rem}.nav-end{gap:.2rem}.bell-menu>summary.bell,.account-menu>summary.avatar{width:34px;height:34px}.bell-list{position:fixed;left:.5rem;right:.5rem;top:calc(var(--nav-height) + 4px);min-width:0;max-width:none}}.tints{display:flex;flex-wrap:wrap;gap:.35rem;margin:0;padding:0;border:0}.tints legend{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.tints label{position:relative;cursor:pointer}.tints input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}.tints .tint{display:block;width:1.6rem;height:1.6rem;border-radius:50%;border:1px solid var(--border-firm)}.tints input:checked+.tint{box-shadow:0 0 0 2px var(--bg-card),0 0 0 4px var(--text)}.tints input:focus-visible+.tint{outline:3px solid var(--focus);outline-offset:3px}.tints button{border:0;padding:0;background:none;cursor:pointer;border-radius:50%}.tints button[aria-pressed=true] .tint{box-shadow:0 0 0 2px var(--bg-card),0 0 0 4px var(--text)}.tint[data-swatch="0"]{background:var(--tag-0)}.tint[data-swatch="1"]{background:var(--tag-1)}.tint[data-swatch="2"]{background:var(--tag-2)}.tint[data-swatch="3"]{background:var(--tag-3)}.tint[data-swatch="4"]{background:var(--tag-4)}.tint[data-swatch="5"]{background:var(--tag-5)}.tint[data-swatch="6"]{background:var(--tag-6)}.tint[data-swatch="7"]{background:var(--tag-7)}.tint[data-swatch="8"]{background:var(--tag-8)}.tint[data-swatch="9"]{background:var(--tag-9)}.tint[data-swatch="10"]{background:var(--tag-10)}.tint[data-swatch="11"]{background:var(--tag-11)}.panel{padding:1.25rem;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-card);box-shadow:var(--shadow);min-width:0}.panel+.panel{margin-top:1rem}.panel>h2,.panel-head h2{margin:0;font:700 1.3rem/1.15 var(--font-display);letter-spacing:-.01em}.panel-head{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1rem;margin-bottom:.9rem}.panel-head .btn-row,.panel-head>.pill-btn,.panel-head>.btn-primary{margin-left:auto}.panel-note{margin:-.4rem 0 1rem;color:var(--text-muted);font-size:.9rem}.two-col{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:1rem;align-items:start}.two-col>.panel+.panel{margin-top:0}.two-col.even{grid-template-columns:repeat(2,minmax(0,1fr))}.two-col+.panel{margin-top:1rem}@media(min-width:861px){.keep-in-view{position:sticky;top:calc(var(--nav-height) + 1rem)}}.muted{color:var(--text-muted)}.small{font-size:var(--text-sm)}.kind{display:inline-flex;align-items:center;padding:.05rem .5rem;border-radius:var(--radius-pill);color:var(--text);font-size:.74rem;font-weight:700;letter-spacing:.02em;line-height:1.5;white-space:nowrap}.kind-pc{background:var(--tag-4)}.kind-npc{background:var(--tag-3)}.kind-monster{background:var(--tag-0)}.role-dm{background:var(--tag-1)}.role-codm{background:var(--tag-6)}.role-player{background:var(--tag-9)}.cond{display:inline-flex;align-items:center;gap:.3rem;padding:.05rem .5rem;border-radius:var(--radius-pill);background:var(--tag-5);color:var(--text);font-size:.76rem;font-weight:600;line-height:1.5}.cond button{border:0;padding:0;background:none;color:var(--text-muted);font:inherit;cursor:pointer}.conds{display:flex;flex-wrap:wrap;gap:.3rem}.brand-name{font-weight:700;letter-spacing:-.01em}.headline{font-weight:700;letter-spacing:-.02em}.camp-head{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.5rem 1rem;margin-bottom:1rem}.camp-head .headline{font-size:clamp(1.7rem,4.5vw,2.5rem)}.camp-head .kind{margin-bottom:.35rem}.camp-head .camp-roll{margin:0 0 .25rem auto}.camp-head .camp-roll .icon{width:1.05em;height:1.05em}.dice-result{margin:-.3rem 0 1rem;padding:.8rem 1rem;border-radius:var(--radius-md);background:var(--bg-sunken);text-align:center}.dice-result-total{margin:0;font:700 2.6rem/1 var(--font-display);font-variant-numeric:tabular-nums}.dice-result-what{margin:.35rem 0 0;color:var(--text-muted);font-size:.9rem}.cnav{display:flex;gap:.2rem;margin:0 0 1.5rem;padding:.25rem;overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-sunken);scrollbar-width:none}.cnav a{display:inline-flex;align-items:center;gap:.4rem;flex:none;padding:.45rem .8rem;border-radius:var(--radius-sm);color:var(--text-muted);font-weight:600;font-size:.9rem;text-decoration:none;white-space:nowrap}.cnav a:hover{color:var(--text);background:var(--bg-card)}.cnav a[aria-current=page]{background:var(--bg-card);color:var(--text);box-shadow:var(--shadow)}.cnav .live{width:.5rem;height:.5rem;border-radius:50%;background:var(--spark)}.camp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,17rem),1fr));gap:1rem}.camp-card{display:flex;flex-direction:column;gap:.6rem;padding:1.1rem 1.15rem;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-card);box-shadow:var(--shadow);color:var(--text);text-decoration:none}.camp-card:hover{border-color:var(--border-firm)}.camp-card h2{margin:0;font:700 1.25rem/1.2 var(--font-display)}.camp-card p{margin:0;color:var(--text-muted);font-size:.9rem}.camp-card .live-line{display:flex;align-items:center;gap:.45rem;color:var(--text);font-weight:700;font-size:.875rem}.camp-card .live-line:before{content:"";width:.55rem;height:.55rem;border-radius:50%;background:var(--spark)}.faces{display:flex}.faces>*{margin-right:-.4rem;box-shadow:0 0 0 2px var(--bg-card)}.face{display:inline-grid;place-items:center;flex:none;width:2rem;height:2rem;border-radius:50%;overflow:hidden;background:var(--tag-5);color:var(--text);font:700 .85rem/1 var(--font-ui)}.face img{width:100%;height:100%;object-fit:cover}.face-lg{width:3.25rem;height:3.25rem;font-size:1.2rem}.portrait{border-radius:22%}.handover-pick{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center}.handover-pick .input{width:auto}.panel>.confirm-form{padding:0;border:0}.panel>.confirm-form .actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}.dm-of{list-style:none;margin:.6rem 0 0;padding:0;display:grid;gap:.4rem}.dm-of li{display:flex;flex-direction:column;gap:.1rem;padding:.6rem .8rem;border-radius:var(--radius-md);background:var(--bg-sunken)}.join-form{display:flex;flex-wrap:wrap;gap:.5rem;align-items:flex-end}.join-form .field{margin:0;flex:1 1 12rem}.code-input{font:700 1.1rem/1 ui-monospace,SF Mono,Menlo,monospace;letter-spacing:.25em;text-transform:uppercase}.code{display:inline-block;padding:.35rem .7rem;border:1px dashed var(--border-firm);border-radius:var(--radius-sm);background:var(--bg-sunken);font:700 1.4rem/1.2 ui-monospace,SF Mono,Menlo,monospace;letter-spacing:.25em}.roster{list-style:none;margin:0;padding:0;display:grid;gap:.5rem}.roster li{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:.2rem .9rem;align-items:center;padding:.7rem .85rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-card)}.roster .face{grid-row:span 2}.roster .who{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;align-self:end;gap:.3rem .6rem;min-width:0;padding-top:0}.roster .line{align-self:start}.roster .who a{color:var(--text);font-weight:700;text-decoration:none}.roster .who a:hover{text-decoration:underline}.roster .line{grid-column:2;color:var(--text-muted);font-size:.875rem}.roster .stats-mini{grid-row:span 2;display:flex;gap:.9rem}.stat-mini{display:flex;flex-direction:column;align-items:center;min-width:2.6rem}.stat-mini b{font:700 1.15rem/1 var(--font-display);font-variant-numeric:tabular-nums}.stat-mini span{color:var(--text-muted);font-size:.7rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.sheet-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,11rem),1fr));gap:0 1rem}.sheet-grid .field{max-width:none}.statboxes{display:grid;grid-template-columns:repeat(auto-fit,minmax(6.5rem,1fr));gap:.6rem;margin-bottom:1rem}.statbox{display:flex;flex-direction:column;gap:.3rem;padding:.6rem .7rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-sunken)}.statbox span{color:var(--text-muted);font-size:.72rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.statbox .input{font:700 1.25rem/1.1 var(--font-display);text-align:center;padding:.35rem;margin-top:auto}.rows{display:grid;gap:.5rem;margin-bottom:.75rem}.row-line{display:grid;grid-template-columns:minmax(0,1fr) 6rem auto;gap:.5rem;align-items:center}.row-line.three{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto}.icon-x{display:inline-grid;place-items:center;width:2.2rem;height:2.2rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-card);color:var(--text-muted);cursor:pointer}.icon-x:hover{color:var(--danger);border-color:var(--danger)}.total-line{display:flex;align-items:baseline;gap:.5rem;margin:0 0 1rem;font-weight:700}.total-line b{font:700 1.5rem/1 var(--font-display)}.pic-edit{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;margin-bottom:1rem}.pic-edit .face{width:6rem;height:6rem;font-size:2.4rem;font-family:var(--font-display)}.enc-bar{position:sticky;top:calc(var(--nav-height) + .5rem);z-index:20;display:flex;flex-wrap:wrap;align-items:center;gap:.6rem 1rem;margin-bottom:1rem;padding:.7rem .8rem .7rem 1rem;border:1px solid var(--border-firm);border-radius:var(--radius-lg);background:var(--bg-card);box-shadow:var(--shadow)}.enc-name{margin:0;font:700 1.15rem/1.2 var(--font-display)}.round{display:inline-flex;align-items:baseline;gap:.35rem;padding:.2rem .65rem;border-radius:var(--radius-pill);background:var(--bg-sunken);font-weight:700;font-size:.875rem}.round b{font:700 1.2rem/1 var(--font-display);font-variant-numeric:tabular-nums}.enc-move{display:flex;gap:.4rem;margin-left:auto}.btn-next{display:inline-flex;align-items:center;gap:.4rem;padding:.6rem 1.15rem;font-size:1rem}.enc-tools{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center;width:100%;padding-top:.6rem;border-top:1px solid var(--border)}.enc-tools .seg{margin-left:auto}.turns{list-style:none;margin:0;padding:0;display:grid;gap:.55rem}.turns>.turn{scroll-margin-top:calc(var(--nav-height) + 9rem)}.turn{position:relative;display:grid;grid-template-columns:3.4rem auto minmax(0,1fr) minmax(12rem,16rem) auto;grid-template-areas:"init face who hp acts";gap:.4rem .9rem;align-items:start;padding:.7rem .8rem .7rem .7rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-card)}.turn>.init{grid-area:init}.turn>.face{grid-area:face}.turn>.who{grid-area:who}.turn>.vitals{grid-area:hp;padding-top:.35rem}.turn>.acts{grid-area:acts}.turn>.saves{grid-column:3 / -1}.turn>.turn-more{grid-column:3 / -1}.turn .face{width:2.75rem;height:2.75rem;font-size:1.05rem;font-family:var(--font-display)}.turn.is-active{background:var(--hot-soft);border-color:var(--spark);box-shadow:0 0 0 1px var(--spark),var(--shadow)}.turn.is-active:before{content:"";position:absolute;left:-1px;top:-1px;bottom:-1px;width:6px;border-radius:var(--radius-md) 0 0 var(--radius-md);background:var(--spark)}.now-label{display:inline-flex;align-items:center;padding:.05rem .5rem;border-radius:var(--radius-pill);background:var(--hot);color:var(--on-hot);font-size:.72rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.turn.is-hidden{border-style:dashed;border-color:var(--border-firm);background:var(--bg-sunken)}.turn.is-away>:not(.acts){opacity:.55}.flag{display:inline-flex;align-items:center;gap:.25rem;padding:.05rem .45rem;border:1px solid var(--border-firm);border-radius:var(--radius-pill);color:var(--text-muted);font-size:.72rem;font-weight:700;white-space:nowrap}.flag .icon{width:.95em;height:.95em}.away-btn{padding:.05rem .5rem;border:1px solid var(--border-firm);border-radius:var(--radius-pill);background:var(--bg-card);color:var(--text);font-size:.72rem;font-weight:700;cursor:pointer}.away-btn:hover{background:var(--bg-sunken)}.init{display:flex;flex-direction:column;align-items:center;gap:.1rem}.init .input{width:3.2rem;padding:.3rem .2rem;text-align:center;font:700 1.2rem/1.1 var(--font-display)}.init b{font:700 1.45rem/1 var(--font-display);font-variant-numeric:tabular-nums}.init span{color:var(--text-muted);font-size:.65rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.who{display:flex;flex-direction:column;gap:.25rem;min-width:0;padding-top:.15rem}.who-top{display:flex;flex-wrap:wrap;align-items:center;gap:.3rem .5rem}.who-name{font:700 1.08rem/1.2 var(--font-display);color:var(--text);text-decoration:none;overflow-wrap:anywhere}a.who-name:hover{text-decoration:underline}.who-line{color:var(--text-muted);font-size:.82rem}.ac{display:inline-flex;align-items:center;gap:.2rem;color:var(--text-muted);font-size:.8rem;font-weight:700}.ac .icon{width:1em;height:1em}.vitals{display:flex;flex-direction:column;gap:.3rem;min-width:0}.vitals-top{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem}.hp-num{font:700 1.05rem/1 var(--font-display);font-variant-numeric:tabular-nums}.hp-num small{color:var(--text-muted);font:600 .78rem/1 var(--font-ui)}.band{font-size:.78rem;font-weight:700}.hpbar{height:.55rem;border-radius:var(--radius-pill);background:var(--bg-sunken);box-shadow:inset 0 0 0 1px var(--border);overflow:hidden}.hpbar>i{display:block;height:100%;border-radius:inherit;background:var(--hp, var(--hp-healthy))}[data-band=healthy]{--hp: var(--hp-healthy)}[data-band=wounded]{--hp: var(--hp-wounded)}[data-band=bloodied]{--hp: var(--hp-bloodied)}[data-band=critical]{--hp: var(--hp-critical)}[data-band=down]{--hp: var(--hp-down)}.band:before{content:"";display:inline-block;width:.55rem;height:.55rem;margin-right:.3rem;border-radius:50%;background:var(--hp);vertical-align:.02em}.vitals.is-status{align-items:flex-end}.vitals.is-status .band{display:inline-flex;align-items:center;padding:.2em .65em;border:2px solid var(--hp);border-radius:var(--radius-pill);background:var(--bg-card);color:var(--text);font-size:.85rem}.vitals.is-status .band:before{width:.75em;height:.75em;margin-right:.4em}.acts{display:flex;flex-direction:column;align-items:flex-end;gap:.35rem}.hp-form{display:flex;align-items:center;gap:.3rem}.hp-form .input{width:3.6rem;padding:.35rem .3rem;text-align:center;font-weight:700}.acts-row{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.3rem .6rem}.hp-quick{display:flex;gap:.2rem}.hp-quick button{min-width:2.1rem;padding:.25rem .35rem;border:1px solid var(--border);border-radius:6px;background:var(--bg-card);font-weight:700;font-size:.78rem;cursor:pointer;font-variant-numeric:tabular-nums}.hp-quick button:hover{border-color:var(--border-firm);background:var(--bg-sunken)}.btn-dmg,.btn-heal{padding:.35rem .6rem;border:1px solid var(--border-firm);border-radius:var(--radius-sm);background:var(--bg-card);font-weight:700;font-size:.82rem;cursor:pointer}.btn-dmg{color:var(--danger)}.btn-heal{color:var(--accent)}.row-tools{display:flex;gap:.2rem}.tool{display:inline-grid;place-items:center;width:2rem;height:2rem;border:1px solid transparent;border-radius:var(--radius-sm);background:none;color:var(--text-muted);cursor:pointer}.tool:hover,.tool[aria-pressed=true]{border-color:var(--border);background:var(--bg-sunken);color:var(--text)}.tool .icon{width:1.05em;height:1.05em}.turn-more{margin-top:.1rem}.turn-more>summary{display:inline-flex;align-items:center;gap:.3rem;color:var(--text-muted);font-size:.82rem;font-weight:700;cursor:pointer;list-style:none}.turn-more>summary::-webkit-details-marker{display:none}.turn-more>summary:before{content:"\25b8";transition:transform .15s}.turn-more[open]>summary:before{transform:rotate(90deg)}.more-body{display:grid;gap:.75rem;margin-top:.6rem;padding:.8rem;border-radius:var(--radius-md);background:var(--bg-sunken)}.cond-pick{display:flex;flex-wrap:wrap;gap:.3rem}.cond-pick button{padding:.15rem .55rem;border:1px solid var(--border-firm);border-radius:var(--radius-pill);background:var(--bg-card);font-size:.78rem;font-weight:600;cursor:pointer}.cond-pick button[aria-pressed=true]{background:var(--tag-5);border-color:var(--tag-5)}.inline-fields{display:flex;flex-wrap:wrap;gap:.5rem 1rem;align-items:flex-end}.inline-fields .field{margin:0;max-width:9rem}.saves{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1.25rem;padding:.65rem .8rem;border:1px solid var(--border-firm);border-radius:var(--radius-md);background:var(--bg-sunken)}.saves h3{margin:0;font:700 .95rem/1.2 var(--font-display)}.save-track{display:flex;align-items:center;gap:.35rem;font-size:.8rem;font-weight:700}.save-dot{width:1rem;height:1rem;border-radius:50%;box-shadow:inset 0 0 0 2px var(--text-muted)}.save-dot.ok{background:var(--hp-healthy);box-shadow:none}.save-dot.fail{background:var(--hp-critical);box-shadow:none}.save-dot.fail:after{content:"\2715";display:grid;place-items:center;height:100%;color:var(--bg-card);font-size:.62rem;font-weight:900}.save-record{display:flex;flex-wrap:wrap;gap:.3rem;align-items:center}.save-record .input{width:3.4rem;padding:.3rem;text-align:center}.secret{display:inline-flex;align-items:center;gap:.3rem;color:var(--text-muted);font-size:.8rem;font-weight:700}.live-status{margin:0 0 .8rem;padding:.55rem .8rem;border:1px solid var(--border-firm);border-radius:var(--radius-md);background:var(--bg-sunken);color:var(--text);font-size:.875rem;font-weight:600}.live-status[hidden]{display:none}.your-turn{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1rem;margin-bottom:1rem;padding:1rem 1.2rem;border-radius:var(--radius-lg);background:var(--hot);color:var(--on-hot);box-shadow:var(--shadow)}.your-turn strong{font:700 1.5rem/1.1 var(--font-display)}.your-turn p{margin:0;font-weight:600}.ondeck{color:var(--text-muted);font-weight:600}.ondeck b{color:var(--text)}.add-list{list-style:none;margin:0 0 1rem;padding:0;display:grid;gap:.35rem;max-height:22rem;overflow:auto}.add-list li{display:grid;grid-template-columns:auto auto minmax(0,1fr) auto;gap:.6rem;align-items:center;padding:.45rem .6rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-card)}.add-list .input{width:4rem;padding:.3rem;text-align:center}.sheet-lg{width:min(94vw,720px)}.sheet .actions{margin-top:1rem}.enc-list{list-style:none;margin:0;padding:0;display:grid;gap:.5rem}.enc-list li{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1rem;padding:.8rem 1rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-card)}.enc-list h3{margin:0;font:700 1.05rem/1.2 var(--font-display)}.enc-list .btn-row{margin-left:auto}.status{display:inline-flex;align-items:center;gap:.35rem;font-size:.8rem;font-weight:700}.status:before{content:"";width:.55rem;height:.55rem;border-radius:50%;box-shadow:inset 0 0 0 2px var(--text-muted)}.status-running:before{background:var(--spark);box-shadow:none}.status-ended{color:var(--text-muted)}body.display{min-height:100vh}.display-wrap{max-width:1400px;margin:0 auto;padding:clamp(1rem,3vw,2.5rem)}.display-top{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem 1rem;margin-bottom:clamp(1rem,2.5vw,2rem)}.display-top h1{margin:0;font:700 clamp(1.4rem,2.6vw,2.2rem)/1.1 var(--font-display)}.display-top .round{font-size:clamp(1rem,1.6vw,1.3rem)}.display-top .round b{font-size:clamp(1.4rem,2.4vw,2rem)}.display-tools{display:flex;gap:.4rem;margin-left:auto}.display-wrap{position:relative}.display-wrap>.display-tools{position:absolute;top:clamp(1rem,3vw,2.5rem);right:clamp(1rem,3vw,2.5rem)}.display-wrap .display-top{padding-right:8rem}.display-wait{font-size:clamp(1.1rem,2vw,1.5rem);color:var(--text-muted)}.spotlight{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:.5rem clamp(1rem,2.5vw,2rem);align-items:center;padding:clamp(1rem,2.5vw,2rem);border-radius:var(--radius-lg);background:var(--hot-soft);border:2px solid var(--spark);margin-bottom:clamp(1rem,2vw,1.5rem)}.spotlight .face{width:clamp(4.5rem,9vw,8rem);height:clamp(4.5rem,9vw,8rem);font-size:clamp(2rem,4vw,3.5rem)}.spotlight .now-label{font-size:clamp(.8rem,1.2vw,1rem);padding:.2rem .7rem}.spotlight h2{margin:.3rem 0 0;font:700 clamp(2.2rem,5.5vw,4.5rem)/1 var(--font-display);letter-spacing:-.02em}.spotlight .vitals{min-width:clamp(10rem,22vw,20rem)}.spotlight .band,.spotlight .hp-num,.spotlight .vitals.is-status .band{font-size:clamp(1.1rem,2vw,1.6rem)}.spotlight .vitals.is-status{min-width:0}.spotlight .hpbar{height:clamp(.7rem,1.2vw,1rem)}.display-ondeck{margin:0 0 clamp(1rem,2vw,1.5rem);font-size:clamp(1.05rem,1.8vw,1.5rem)}.order{list-style:none;margin:0;padding:0;display:grid;gap:.5rem;counter-reset:order}.order li{display:grid;grid-template-columns:2.5rem auto minmax(0,1fr) minmax(9rem,18rem);gap:clamp(.6rem,1.5vw,1.25rem);align-items:center;padding:clamp(.6rem,1.2vw,1rem) clamp(.8rem,1.5vw,1.25rem);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-card);font-size:clamp(1rem,1.6vw,1.35rem)}.order li:before{counter-increment:order;content:counter(order);color:var(--text-muted);font:700 1.1em/1 var(--font-display);text-align:center}.order .face{width:clamp(2.5rem,4vw,3.5rem);height:clamp(2.5rem,4vw,3.5rem);font-size:1.1em}.order .who-name{font-size:1.15em}.order li.is-active{background:var(--hot-soft);border-color:var(--spark)}.order li.is-down .who-name{text-decoration:line-through;text-decoration-thickness:2px}.order .band{font-size:.85em}.coins{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.6rem;margin-bottom:1rem}.coin{display:flex;flex-direction:column;align-items:center;gap:.35rem;padding:.8rem .4rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-sunken);text-align:center}.coin b{font:700 1.6rem/1 var(--font-display);font-variant-numeric:tabular-nums}.coin span{color:var(--text-muted);font-size:.72rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.coin .input{text-align:center;font:700 1.2rem/1 var(--font-display)}.coin i{display:grid;place-items:center;width:2.1rem;height:2.1rem;border-radius:50%;border:2px solid var(--border-firm);color:var(--text);font:800 .72rem/1 var(--font-ui);font-style:normal;letter-spacing:.02em}.coin-pp i{background:var(--tag-9)}.coin-gp i{background:var(--tag-1)}.coin-ep i{background:var(--tag-7)}.coin-sp i{background:var(--tag-4)}.coin-cp i{background:var(--tag-0)}.divider-out{margin:.5rem 0 0;padding:.7rem .9rem;border-radius:var(--radius-md);background:var(--hot-soft);font-weight:600}.stash{list-style:none;margin:0;padding:0;display:grid;gap:.45rem}.stash li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.2rem .8rem;padding:.65rem .8rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-card)}.stash .item-top{display:flex;flex-wrap:wrap;align-items:center;gap:.3rem .5rem}.stash .item-name{font-weight:700}.stash .qty{color:var(--text-muted);font-weight:700;font-variant-numeric:tabular-nums}.stash .item-where{grid-column:1;color:var(--text-muted);font-size:.85rem}.stash .item-desc{grid-column:1 / -1;margin:0;font-size:.875rem}.stash .row-tools{grid-row:1;grid-column:2}.cat{display:inline-flex;padding:.02rem .45rem;border-radius:var(--radius-pill);color:var(--text);font-size:.72rem;font-weight:700}.cat-magic{background:var(--tag-5)}.cat-consumable{background:var(--tag-2)}.cat-quest{background:var(--tag-1)}.cat-treasure{background:var(--tag-6)}.cat-gear{background:var(--tag-8)}.finder{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin-bottom:.8rem}.finder .input{width:auto;flex:1 1 12rem}.lore{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,18rem),1fr));gap:.75rem}.lore article{display:flex;flex-direction:column;gap:.45rem;padding:.9rem 1rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-card)}.lore h3{margin:0;font:700 1.05rem/1.25 var(--font-display)}.lore p{margin:0;font-size:.9rem}.lore footer{margin-top:auto;color:var(--text-muted);font-size:.78rem}.lore article{position:relative}.lore article:hover{border-color:var(--border-firm)}.lore h3 a{color:var(--text);text-decoration:none}.lore h3 a:after{content:"";position:absolute;inset:0;border-radius:inherit}.lore h3 a:hover{text-decoration:underline}.lore h3 a:focus-visible{outline:none}.lore article:has(h3 a:focus-visible){outline:3px solid var(--focus);outline-offset:2px}.lore-excerpt{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.lore-entry .prose{max-width:none}.lore-entry>h2{margin:.5rem 0 .2rem;font:700 clamp(1.5rem,3vw,2rem)/1.15 var(--font-display)}.lore-entry>h2+.lore-meta,.lore-meta{margin:0 0 1.25rem;color:var(--text-muted);font-size:.85rem}.lore-entry .prose{margin-bottom:1.5rem}.lore-entry .prose ul{padding-left:1.2rem}.lore-actions{gap:.5rem;padding-top:1rem;border-top:1px solid var(--border)}.lore-text{font:.95rem/1.6 var(--font-ui);min-height:18rem}.cat-quest-l{background:var(--tag-1)}.cat-npc{background:var(--tag-3)}.cat-location{background:var(--tag-7)}.cat-lore-l{background:var(--tag-9)}.cat-session{background:var(--tag-11)}.dice-pad{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.4rem;margin-bottom:.9rem}.die{display:flex;flex-direction:column;align-items:center;gap:.15rem;padding:.6rem .2rem;border:1px solid var(--border-firm);border-radius:var(--radius-md);background:var(--bg-card);cursor:pointer;font-weight:800}.die:hover{background:var(--bg-sunken)}.die[aria-pressed=true],.die:has(input:checked){background:var(--hot);border-color:var(--hot);color:var(--on-hot)}.dice-pad{border:0;padding:0;min-width:0}.die:has(input:focus-visible),.seg label:has(input:focus-visible){outline:3px solid var(--focus);outline-offset:2px}.seg label{border-radius:6px;padding:.25rem .6rem;font-weight:600;font-size:var(--text-sm);color:var(--text-muted);cursor:pointer}.seg label:has(input:checked){background:var(--hot);color:var(--on-hot);box-shadow:var(--shadow)}fieldset.field{border:0;padding:0;margin:0;min-width:0}.inline-fields fieldset.field{max-width:none}form:has(input[name=die]:checked):not(:has(input[name=die][value="20"]:checked)) .d20-mode{display:none}.field.roll-for{max-width:none}.seg.seg-wrap{flex-wrap:wrap;max-width:100%}.die svg{width:1.6rem;height:1.6rem}.roll-log{list-style:none;margin:0;padding:0;display:grid;gap:.45rem}.roll{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:.15rem .75rem;align-items:center;padding:.6rem .8rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-card)}.roll .face{grid-row:span 2}.roll-who{font-weight:700}.roll-what{grid-column:2;color:var(--text-muted);font-size:.85rem}.roll-total{grid-row:span 2;font:700 1.8rem/1 var(--font-display);font-variant-numeric:tabular-nums;min-width:2.5ch;text-align:right}.roll.is-hidden{border-style:dashed;background:var(--bg-sunken)}.nat{display:inline-flex;padding:.02rem .45rem;border-radius:var(--radius-pill);font-size:.7rem;font-weight:800;letter-spacing:.04em}.nat-20{background:var(--hot);color:var(--on-hot)}.nat-1{background:var(--tag-0);color:var(--text)}.die-face{display:block;width:3rem;height:3rem;overflow:visible;isolation:isolate}.die-face .die-edge{fill:none;stroke:var(--die-line);stroke-width:3;stroke-linejoin:round}.die-face .die-body{fill:var(--die-bg);stroke:var(--die-line);stroke-width:3;stroke-linejoin:round}.die-face .die-tex{mix-blend-mode:multiply}.die-face .die-facet{fill:none;stroke:var(--die-line);stroke-width:2;opacity:.55;stroke-linejoin:round}.die-face text{fill:var(--die-fg);font:800 38px/1 var(--font-display);text-anchor:middle;dominant-baseline:central}.die-face text.n3{font-size:30px}.die-face.lg{width:4.5rem;height:4.5rem}.dice-themes{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,15rem),1fr));gap:.75rem}.dice-themes li{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:.2rem .8rem;align-items:center;padding:.75rem .85rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-card)}.dice-themes li .die-face{grid-row:span 2}.dice-themes .t-name{font-weight:700}.dice-themes .t-what{grid-column:2;color:var(--text-muted);font-size:.82rem}.dice-themes .t-tools{grid-row:span 2;display:flex;flex-direction:column;align-items:flex-end;gap:.35rem}.colour-row{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center}.dice-themes li[aria-current=true]{border-color:var(--hot);box-shadow:inset 0 0 0 1px var(--hot)}.colour-slot{display:inline-flex;align-items:center;gap:.15rem}.colour-drop{padding:.2rem .55rem}.field.field-wide{max-width:none}.check-inline{display:inline-flex;align-items:center;gap:.4rem;font-size:.9rem}.dice-admin .form-actions{flex-wrap:wrap}.dice-admin .form-actions>*{white-space:nowrap}@media(max-width:40rem){.dice-admin .panel{padding:0;border:0;background:none;box-shadow:none}.dice-admin .panel+.panel,.dice-admin>.panel{margin-top:1.5rem}}.colour-row input[type=color]{width:2.6rem;height:2.2rem;padding:.15rem;border:1px solid var(--border-firm);border-radius:var(--radius-sm);background:var(--bg-card);cursor:pointer}.theme-check{display:flex;align-items:center;gap:.9rem;padding:.8rem;border-radius:var(--radius-md);background:var(--bg-sunken)}.theme-check p{margin:0}.check-ok{color:var(--text);font-weight:700}.check-ok:before{content:"\2713  ";color:var(--accent)}.check-fail{color:var(--text);font-weight:700}.check-fail:before{content:"\2715  ";color:var(--danger)}.dice-pick{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,6.5rem),1fr));gap:.7rem;margin:0;padding:0;border:0}.dice-pick .theme-card{display:flex;flex-direction:column;align-items:center;gap:.4rem;padding:.8rem .5rem;text-align:center}.dice-stage{--die-size: clamp(4rem, 9vw, 6.5rem);position:fixed;inset:0;z-index:60;display:grid;place-items:center;background:color-mix(in srgb,var(--bg) 55%,transparent);cursor:pointer;animation:stage-in .2s ease}.dice-stage.is-many{--die-size: 3.4rem}.dice-stage.is-lots{--die-size: 2.6rem}.dice-stage .tumble{position:absolute;top:38%;left:50%;width:var(--die-size);height:var(--die-size);margin:calc(var(--die-size) / -2) 0 0 calc(var(--die-size) / -2);--land-x: calc(var(--land-col, 0) * var(--die-size) * 1.2);--land-y: calc(var(--land-row, 0) * var(--die-size) * 1.2);transform:translate(var(--land-x),var(--land-y))}.dice-stage .tumble .die-face{width:100%;height:100%;filter:drop-shadow(0 10px 14px rgba(0,0,0,.35));animation:tumble 1.6s cubic-bezier(.2,.7,.3,1) both;animation-delay:var(--die-delay, 0s)}.dice-stage .tumble .die-face text{animation:num-in .2s ease both;animation-delay:calc(var(--die-delay, 0s) + 1.45s)}.dice-stage .tumble.is-kept:after{content:"";position:absolute;inset:-.45rem;border:3px solid var(--hot);border-radius:50%;animation:num-in .25s ease both;animation-delay:calc(var(--card-at, 1.5s) - .1s)}@keyframes tumble{0%{transform:translate(55vw,-40vh) rotate(540deg) scale(.7)}55%{transform:translateY(6vh) rotate(40deg) scale(1.05)}72%{transform:translateY(-2vh) rotate(-12deg)}86%{transform:translateY(1vh) rotate(4deg)}to{transform:none}}@keyframes num-in{0%{opacity:0}}@keyframes stage-in{0%{opacity:0}}.roll-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:.1rem .8rem;align-items:center;min-width:min(92vw,20rem);max-width:26rem;padding:.8rem 1rem;border:1px solid var(--border-firm);border-radius:var(--radius-lg);background:var(--bg-card);color:var(--text);box-shadow:var(--shadow-lg)}.roll-card .die-face{grid-row:span 2;width:2.6rem;height:2.6rem}.roll-card .rc-who{font-weight:700}.roll-card .rc-what{grid-column:2;color:var(--text-muted);font-size:.85rem}.roll-card .rc-total{grid-row:span 2;font:700 2.2rem/1 var(--font-display);font-variant-numeric:tabular-nums}.dice-stage .roll-card{position:absolute;bottom:clamp(1rem,8vh,4rem);left:50%;transform:translate(-50%);animation:card-in .3s ease both;animation-delay:var(--card-at, 1.5s)}@keyframes card-in{0%{opacity:0;transform:translate(-50%,.6rem)}}.roll-popups{position:fixed;right:max(1rem,env(safe-area-inset-right));bottom:1rem;z-index:55;display:grid;gap:.5rem;justify-items:end}.roll-popups .roll-card{animation:rise .25s ease}@media(prefers-reduced-motion:reduce){.dice-stage .tumble{display:none}.dice-stage .roll-card{animation:none}}.guide{display:grid;grid-template-columns:13.5rem minmax(0,1fr);gap:1.5rem;align-items:start}.toc{position:sticky;top:calc(var(--nav-height) + 1rem);display:grid;gap:.1rem}.toc a{padding:.4rem .7rem;border-radius:var(--radius-sm);color:var(--text-muted);font-weight:600;font-size:.9rem;text-decoration:none}.toc a:hover{background:var(--bg-sunken);color:var(--text)}.prose{max-width:68ch}.prose h2{margin:2rem 0 .6rem;font:700 1.45rem/1.2 var(--font-display)}.prose h2:first-child{margin-top:0}.prose h3{margin:1.25rem 0 .4rem;font:700 1.1rem/1.25 var(--font-display)}.prose p,.prose li{line-height:1.65}.glossary{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:.45rem 1rem;margin:0}.glossary dt{font-weight:700}.glossary dd{margin:0;color:var(--text-muted)}.bands-key{list-style:none;padding:0;display:grid;gap:.35rem}.attribution{margin-top:2rem;padding-top:1rem;border-top:1px solid var(--border);color:var(--text-muted);font-size:.85rem;overflow-wrap:anywhere}@media(max-width:860px){.enc-bar{position:static}.turns>.turn{scroll-margin-top:calc(var(--nav-height) + 1rem)}.two-col,.two-col.even,.guide{grid-template-columns:minmax(0,1fr)}.toc{position:static;grid-auto-flow:column;overflow-x:auto}.turn{grid-template-columns:3rem auto minmax(0,1fr);grid-template-areas:"init face who" "hp hp hp" "acts acts acts"}.turn>.saves,.turn>.turn-more{grid-column:1 / -1}.acts{flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between}.acts-row{justify-content:flex-start}.order li{grid-template-columns:2rem auto minmax(0,1fr)}.order li .vitals{grid-column:2 / -1}.spotlight{grid-template-columns:auto minmax(0,1fr)}.spotlight .vitals{grid-column:1 / -1;min-width:0}}@media(max-width:560px){.enc-move{margin-left:0;width:100%}.enc-move .btn-next{flex:1;justify-content:center}.enc-tools .seg{margin-left:0}.coins{grid-template-columns:repeat(3,minmax(0,1fr))}.dice-pad{grid-template-columns:repeat(4,minmax(0,1fr))}.roster li{grid-template-columns:auto minmax(0,1fr)}.roster .stats-mini{grid-row:auto;grid-column:1 / -1;order:1}.row-line,.row-line.three{grid-template-columns:minmax(0,1fr) 5rem auto}.hp-quick{flex-wrap:wrap}}
