:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--bg:#f6f2ec;--fg:#221a16;--muted:#6b5f57;--card:#fffdf9;--line:#d9cfc4;--accent:#5c2e2e;--accent-fg:#fffdf9;--soft:#efe7dd;--warn:#a33;--ok:#2a7;--tap:2.75rem;--gap:.75rem;-webkit-text-size-adjust:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:17px}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}:root:not([data-theme=light]){--bg:#17120f;--fg:#f0e8e0;--muted:#a3968c;--card:#221b17;--line:#3a302a;--accent:#d9a7a7;--accent-fg:#17120f;--soft:#2b221d;--warn:#e06a6a;--ok:#4c9}}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#17120f;--fg:#f0e8e0;--muted:#a3968c;--card:#221b17;--line:#3a302a;--accent:#d9a7a7;--accent-fg:#17120f;--soft:#2b221d;--warn:#e06a6a;--ok:#4c9}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body{overflow-x:hidden}body{background:var(--bg);color:var(--fg);-webkit-tap-highlight-color:transparent;margin:0;line-height:1.4}body.modal-open{overflow:hidden}h1{margin:0;font-size:1.35rem}h2{margin:1.25rem 0 .5rem;font-size:1.1rem}h3{margin:0 0 .5rem;font-size:1rem}h4{margin:.75rem 0 .25rem;font-size:.95rem}p{margin:.5rem 0}a{color:var(--accent)}.muted{color:var(--muted)}.empty{text-align:center;padding:2rem 1rem}.card{background:var(--card);border:1px solid var(--line);border-radius:.75rem;padding:.9rem 1rem}.notice{border:1px solid var(--line);background:var(--card);border-radius:.5rem;padding:.6rem .8rem}.row{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:inline-flex}.inline{flex-wrap:wrap;align-items:center;gap:.5rem;margin:.5rem 0;display:flex}.table-scroll{max-width:100%;overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.9rem}td,th{text-align:left;border-bottom:1px solid var(--line);padding:.35rem .5rem}td.num,th.num{text-align:right;font-variant-numeric:tabular-nums}dl{grid-template-columns:max-content 1fr;gap:.25rem .75rem;margin:0;display:grid}dt{color:var(--muted)}dd{margin:0}button,input,select{font:inherit}button{border:1px solid var(--line);background:var(--card);color:var(--fg);cursor:pointer;min-height:var(--tap);min-width:var(--tap);border-radius:.6rem;padding:.5rem .9rem}button.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-fg)}button.danger{background:var(--warn);border-color:var(--warn);color:#fff}button:disabled{opacity:.5;cursor:default}button.icon{width:var(--tap);height:var(--tap);border-radius:50%;justify-content:center;align-items:center;padding:0;font-size:1.4rem;line-height:1;display:inline-flex}button.icon.info{flex:none;width:2.4rem;min-width:2.4rem;height:2.4rem;min-height:2.4rem;margin:.2rem;font-family:Georgia,Times New Roman,serif;font-size:.9rem;font-style:italic}button.linkish{all:unset;cursor:pointer;text-underline-offset:.15em;margin-block:-.8rem;padding-block:.8rem;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}button.linkish.strong{font-weight:600}input[type=text],input[type=search],input[type=number],select{border:1px solid var(--line);background:var(--card);color:var(--fg);min-height:var(--tap);border-radius:.6rem;max-width:100%;padding:.5rem .7rem}input[type=search]{width:100%}.inline input[type=search],.inline input[type=text]{flex:12rem;width:auto}input[type=checkbox]{appearance:none;width:var(--tap);height:var(--tap);cursor:pointer;background:0 0;border:0;flex:none;margin:0;padding:0;position:relative}input[type=checkbox]:before{content:"";border:1.5px solid var(--muted);background:var(--card);border-radius:.3rem;position:absolute;inset:.65rem}input[type=checkbox]:checked:before{background:var(--accent);border-color:var(--accent)}input[type=checkbox]:checked:after{content:"";border:solid var(--accent-fg);border-width:0 3px 3px 0;width:.4rem;height:.85rem;position:absolute;top:.8rem;left:1.15rem;transform:rotate(45deg)}input[type=checkbox]:disabled{opacity:.5;cursor:default}summary{min-height:var(--tap);cursor:pointer;align-items:center;display:flex}label.toggle{min-height:var(--tap);align-items:center;gap:.25rem;display:inline-flex}.segmented{border:1px solid var(--line);border-radius:.6rem;display:inline-flex;overflow:hidden}.segmented button{border:0;border-right:1px solid var(--line);border-radius:0;min-width:4rem}.segmented button:last-child{border-right:0}.segmented button.active{background:var(--accent);color:var(--accent-fg)}.tag{border:1px solid var(--line);color:var(--muted);white-space:nowrap;vertical-align:middle;border-radius:.3rem;margin-left:.3rem;padding:.1rem .4rem;font-size:.72rem;display:inline-block}.tag.open{border-color:var(--accent);color:var(--accent)}.tag.warn{border-color:var(--warn);color:var(--warn);white-space:normal}.tag.legacy{color:#b8860b;border-color:#b8860b}.tag.trait{text-transform:capitalize}.tag.status-met{border-color:var(--ok);color:var(--ok)}.tag.status-unmet{border-color:var(--warn);color:var(--warn)}.tag.status-unknown{border-color:var(--muted);color:var(--muted)}.tag.rank{text-align:center;min-width:1.6rem;font-weight:600}.badge{background:var(--accent);min-width:1.3rem;color:var(--accent-fg);text-align:center;border-radius:1rem;margin-left:.35rem;padding:0 .35rem;font-size:.72rem;line-height:1.3rem;display:inline-block}ul.plain,ul.characters,ul.choices,ul.results,ul.candidates{margin:0;padding:0;list-style:none}.home-header{padding:max(.75rem, env(safe-area-inset-top)) max(1rem, env(safe-area-inset-right)) .5rem max(1rem, env(safe-area-inset-left));flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.home-body{max-width:60rem;padding:0 max(1rem, env(safe-area-inset-right)) max(2rem, env(safe-area-inset-bottom)) max(1rem, env(safe-area-inset-left));margin:0 auto}ul.characters{gap:var(--gap);grid-template-columns:repeat(auto-fill,minmax(20rem,1fr));display:grid}.character-card{flex-direction:column;gap:.5rem;display:flex}.character-card .link{color:inherit;min-height:var(--tap);flex-direction:column;gap:.2rem;padding:.25rem 0;text-decoration:none;display:flex}.character-card strong{font-size:1.1rem}.new-character{gap:var(--gap);flex-wrap:wrap;align-items:end;margin:.5rem 0;display:flex}.new-character label{flex-direction:column;flex:14rem;gap:.25rem;display:flex}ul.results li{border-bottom:1px solid var(--line)}ul.results li:last-child{border-bottom:none}.page-message{padding:2rem 1rem}.sheet{min-height:100vh;flex-direction:column;min-height:100dvh;display:flex}.sheet-header{z-index:5;background:var(--bg);border-bottom:1px solid var(--line);padding:max(.4rem, env(safe-area-inset-top)) max(.75rem, env(safe-area-inset-right)) .4rem max(.75rem, env(safe-area-inset-left));align-items:center;gap:.5rem;display:flex;position:sticky;top:0}.sheet-header .back{width:var(--tap);height:var(--tap);color:var(--accent);flex:none;justify-content:center;align-items:center;font-size:1.8rem;text-decoration:none;display:inline-flex}.sheet-title{flex:auto;min-width:0}.sheet-title h1{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.sheet-title p{white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:.85rem;overflow:hidden}.menu{right:max(.75rem, env(safe-area-inset-right));z-index:6;flex-direction:column;gap:.5rem;min-width:14rem;display:flex;position:absolute;top:calc(100% - .25rem);box-shadow:0 6px 24px #0000002e}.menu button{text-align:left}.menu-theme{padding-top:.25rem}.tabs{top:calc(var(--tap) + max(.4rem, env(safe-area-inset-top)) + .4rem + 1px);z-index:4;scrollbar-width:none;background:var(--bg);border-bottom:1px solid var(--line);padding:.25rem max(.75rem, env(safe-area-inset-right)) 0 max(.75rem, env(safe-area-inset-left));-webkit-overflow-scrolling:touch;gap:.25rem;display:flex;position:sticky;overflow:auto hidden}.tabs::-webkit-scrollbar{display:none}.tab{color:var(--muted);white-space:nowrap;background:0 0;border:0;border-bottom:3px solid #0000;border-radius:0;flex:1 0 auto;padding:.5rem .7rem;font-weight:500}.tab.active{color:var(--accent);border-bottom-color:var(--accent)}.sheet-body{width:100%;max-width:72rem;padding:var(--gap) max(1rem, env(safe-area-inset-right)) max(2rem, env(safe-area-inset-bottom)) max(1rem, env(safe-area-inset-left));flex:auto;margin:0 auto}.sheet-body>div>.card,.sheet-body .overview>.card,.sheet-body section.card{margin-bottom:var(--gap)}.sheet-notice{margin:var(--gap) max(1rem, env(safe-area-inset-right)) 0 max(1rem, env(safe-area-inset-left))}[hidden]{display:none!important}.tile-row{margin-bottom:var(--gap)}.row-title{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin:0 0 .35rem;font-size:.8rem}.stats{flex-wrap:wrap;gap:.5rem;display:flex}.stat{border:1px solid var(--line);background:var(--card);min-width:5rem;min-height:4.2rem;color:var(--fg);text-align:center;border-radius:.75rem;flex-direction:column;flex:5rem;justify-content:center;align-items:center;max-width:9rem;padding:.4rem .6rem;line-height:1.15;display:flex}.stat-label{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:.7rem}.stat-value{font-variant-numeric:tabular-nums;font-size:1.4rem;font-weight:600}.stat-derived{color:var(--muted);font-size:.7rem}.stat.overridden{border-color:var(--accent)}.stat.overridden .stat-value{color:var(--accent)}.stat.muted-tile{opacity:.6}.stat-pair{display:contents}.list .list-row{width:100%;min-height:var(--tap);border:0;border-bottom:1px solid var(--line);color:var(--fg);text-align:left;background:0 0;border-radius:0;justify-content:space-between;align-items:center;gap:.75rem;padding:.4rem .25rem;display:flex}.list .list-row:last-of-type{border-bottom:none}.list .list-row.overridden .row-value{color:var(--accent)}.list .list-row.inactive .row-name{color:var(--muted)}.row-main{flex-wrap:wrap;flex:auto;align-items:center;gap:.25rem;min-width:0;display:flex}.row-sub{flex-basis:100%;font-size:.85rem}.row-value{font-variant-numeric:tabular-nums;flex:none;font-size:1.1rem;font-weight:600}.row-value .stat-derived{font-weight:400}.overview-grid{gap:var(--gap);grid-template-columns:1fr;display:grid}@media (orientation:landscape) and (min-width:900px){.overview-grid{grid-template-columns:3fr 2fr}}.overview-side{gap:var(--gap);flex-direction:column;display:flex}.facts dl{font-size:.95rem}.toggle-row{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:.5rem;padding:.2rem 0;display:flex}.toggle-row:last-child{border-bottom:none}.strike{margin-bottom:var(--gap)}.strike.alt{background:var(--soft);margin:.5rem 0 0}.strike-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.5rem;display:flex}.strike-meta{font-size:.85rem}.strike-rolls{flex-wrap:wrap;align-items:center;gap:.5rem;margin:.5rem 0;display:flex}.strike-traits{margin:.25rem 0 0}.strike-traits .tag{margin:.15rem .3rem 0 0}.not-ready{opacity:.75}button.roll{min-height:var(--tap);border:1px solid var(--accent);background:var(--card);color:var(--accent);vertical-align:middle;border-radius:.6rem;align-items:center;gap:.45rem;margin:.1rem 0;padding:.3rem .7rem;font-weight:500;display:inline-flex}button.roll .roll-mod{font-variant-numeric:tabular-nums;font-weight:700}button.roll .roll-against{color:var(--muted);font-size:.85rem}button.roll.roll-unknown{color:var(--muted);border-style:dashed}button.roll.roll-breakdown{border-color:var(--line);color:var(--fg);font-weight:400}.desc button.roll{margin-block:-.45rem;padding:.55rem .6rem;line-height:1.2}.desc p{margin:.5rem 0}.desc hr{border:0;border-top:1px solid var(--line);margin:.75rem 0}.desc table{max-width:100%;display:block;overflow-x:auto}.desc ul,.desc ol{padding-left:1.4rem}.desc [data-visibility=gm]{border-left:3px solid var(--line);color:var(--muted);padding-left:.5rem}.entry-link{color:var(--accent);text-underline-offset:.15em;margin-block:-.8rem;padding-block:.8rem;text-decoration:underline}.entry-missing{color:var(--muted);border-bottom:1px dotted var(--muted)}.entry-missing-hint{font-size:.8em}.template{border-bottom:1px dashed var(--muted)}.action-details{color:var(--muted)}.modal-backdrop{z-index:20;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);background:#00000073;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:var(--bg);color:var(--fg);border-radius:1rem;flex-direction:column;width:min(100% - 1.5rem,40rem);max-height:min(92vh,92dvh);display:flex;overflow:hidden;box-shadow:0 12px 40px #0000004d}.modal-header{border-bottom:1px solid var(--line);flex:none;align-items:center;gap:.5rem;padding:.6rem .75rem .6rem 1rem;display:flex}.modal-title{text-overflow:ellipsis;flex:auto;min-width:0;margin:0;font-size:1.15rem;overflow:hidden}.modal-body{-webkit-overflow-scrolling:touch;padding:.75rem 1rem max(1rem, env(safe-area-inset-bottom));overflow-y:auto}.modal-panel{width:min(100% - 1.5rem,44rem);max-height:min(94vh,94dvh)}@media (orientation:landscape) and (min-width:900px){.modal-backdrop:has(.modal-panel){justify-content:flex-end;padding:0}.modal-panel{border-radius:1rem 0 0 1rem;width:min(48%,40rem);height:100%;max-height:100%}}@media (max-width:600px){.modal-backdrop{align-items:flex-end;padding:0}.modal{border-radius:1rem 1rem 0 0;width:100%;max-height:92vh}}.viewer-nav{gap:.25rem;display:inline-flex}.stat-headline{flex-wrap:wrap;align-items:baseline;gap:.5rem;margin:0 0 .5rem;display:flex}.stat-big{font-variant-numeric:tabular-nums;font-size:2rem;font-weight:700}.stat-big.overridden{color:var(--accent)}.breakdown h3,.override h3{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin:1rem 0 .35rem;font-size:.8rem}.breakdown-rows li{border-bottom:1px solid var(--line);grid-template-columns:1fr auto;align-items:baseline;gap:.1rem .75rem;padding:.45rem 0;display:grid}.breakdown-rows li:last-child{border-bottom:none}.breakdown-rows li.off{color:var(--muted)}.breakdown-rows .bd-label{grid-column:1}.breakdown-rows .bd-source{grid-column:1;font-size:.85rem}.breakdown-rows .bd-value{font-variant-numeric:tabular-nums;grid-area:1/2/span 2;font-weight:600}.breakdown-rows li.base .bd-label{color:var(--muted)}.override-form{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.override-form input[type=text]{flex:8rem}.override-value{flex:0 8rem;align-items:center;gap:.35rem;display:inline-flex}.override-value input{width:100%}.iwr-card .row h3{margin:0}.iwr-entry .tag{margin-left:.3rem}.iwr-editor .iwr-section{margin-top:.75rem}.iwr-editor .iwr-section h3{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin:.5rem 0 .35rem;font-size:.8rem}.iwr-editor .iwr-derived li{padding:.2rem 0}.iwr-editor .iwr-row{margin:.5rem 0;padding:.6rem .75rem}.iwr-editor .iwr-row input[type=text]{box-sizing:border-box;width:100%}.iwr-editor .iwr-tags{flex-wrap:wrap;align-items:center;gap:.35rem;display:inline-flex}.iwr-editor .iwr-tags .tag{margin-left:0}.iwr-editor .iwr-tags .tag button{text-align:center;min-width:2.75rem;margin-inline:-.4rem -.2rem;text-decoration:none;display:inline-block}.outlook{border:1px solid var(--accent);border-radius:.75rem;margin:.5rem 0 .75rem;padding:.6rem .75rem}.outlook-grid{text-align:center;grid-template-columns:repeat(4,1fr);gap:.5rem;display:grid}.outlook-grid>span{flex-direction:column;display:flex}.entry-meta{flex-wrap:wrap;align-items:center;gap:.3rem;margin:0 0 .5rem;display:flex}.entry-meta .tag{margin-left:0}.entry-kind{margin-right:.35rem;font-weight:600}.glyph{color:var(--accent);font-family:-apple-system,BlinkMacSystemFont,sans-serif}.entry-publication{border-top:1px solid var(--line);margin-top:1rem;padding-top:.5rem;font-size:.85rem}.entry-uuid{word-break:break-all;font-size:.75rem}.level{margin:.75rem 0}ul.choices li{border-bottom:1px solid var(--line);justify-content:space-between;gap:1rem;padding:.35rem 0;display:flex}ul.choices li:last-child{border-bottom:none}.session .events,.roll-log .events{margin:.5rem 0;font-size:.9rem}.session .events li,.roll-log .events li{padding:.15rem 0}.session .events li.warn,.roll-log .events li.warn{color:var(--warn)}.session .undo{text-overflow:ellipsis;white-space:nowrap;max-width:18rem;overflow:hidden}.session .hp{margin:.5rem 0}.session .vitals{flex-wrap:wrap;gap:.5rem;margin:.5rem 0;display:flex}.session .track{border:1px solid var(--line);background:var(--card);border-radius:.75rem;flex-direction:column;align-items:center;gap:.2rem;padding:.4rem .6rem;display:flex}.session .track.on{border-color:var(--accent)}.session .pips{align-items:center;gap:.4rem;display:inline-flex}.session details{margin:.75rem 0}ul.items li{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;padding:.35rem 0;display:flex}ul.items li:last-child{border-bottom:none}.session-end{margin-top:1rem}.roll-log .log-group{margin:0}.roll-log .log-round{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);top:calc(var(--tap) * 2 + max(.4rem, env(safe-area-inset-top)) + .9rem);background:var(--bg);z-index:1;margin:.9rem 0 .25rem;padding:.25rem 0;font-size:.8rem;position:sticky}.roll-log .log-entry{border-bottom:1px solid var(--line);content-visibility:auto;contain-intrinsic-size:auto 3rem}.roll-log .log-entry:last-child{border-bottom:none}.roll-log .log-summary{width:100%;min-height:var(--tap);color:inherit;text-align:left;font:inherit;background:0 0;border:0;border-radius:.5rem;flex-wrap:wrap;align-items:center;gap:.5rem;padding:.4rem .25rem;display:flex}.roll-log .log-summary:active,.roll-log .log-entry.open>.log-summary{background:var(--soft)}.roll-log .log-time{font-variant-numeric:tabular-nums;flex:none;font-size:.8rem}.roll-log .log-kind{flex:none;margin-left:0}.roll-log .log-kind.kind-roll{border-color:var(--accent);color:var(--accent)}.roll-log .log-text{flex:12rem;min-width:0}.roll-log .log-entry.reversed .log-text{color:var(--muted);text-decoration:line-through}.roll-log .log-entry.note .log-text{font-style:italic}.roll-log .log-detail{padding:.25rem .5rem .75rem}.roll-log .log-detail>.actions{margin-top:.5rem}.roll-log .log-roll{margin-top:.25rem}.roll-log .log-more{text-align:center;padding:.75rem 0}.roll-log .log-dropped{padding:.75rem .25rem;font-size:.85rem}.log-dependents li{border-bottom:1px solid var(--line);padding:.35rem 0}.log-dependents li:last-child{border-bottom:none}.builder h4{margin:0;font-size:.95rem}.builder .level{margin:.75rem 0}.builder ul.steps,.spells ul.steps{margin:.5rem 0 0;padding:0;list-style:none}.builder ul.steps>li,.spells ul.steps>li{border-bottom:1px solid var(--line);padding:.4rem 0}.builder ul.steps>li:last-child,.spells ul.steps>li:last-child{border-bottom:none}.builder ul.steps>li.open .item-label,.familiar ul.abilities>li.open .item-label{font-weight:600}.builder .item-row,.familiar .item-row,.spells .item-row{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.builder .item-label,.familiar .item-label,.spells .item-label{flex:12rem}.builder .item-value,.familiar .item-value,.spells .item-value{flex-wrap:wrap;flex:2 14rem;align-items:center;gap:.4rem;display:inline-flex}.builder .picker,.familiar .picker,.spells .picker{border:1px solid var(--line);background:var(--bg);border-radius:.75rem;margin:.5rem 0 .25rem;padding:.5rem .75rem}.builder .pending,.variant-rules .pending{border-color:var(--accent);margin:.75rem 0}.migration-report .migration-record+.migration-record{border-top:1px solid var(--line);margin-top:.75rem;padding-top:.75rem}.migration-report h3{margin:.75rem 0 .25rem;font-size:1rem}.migration-report ul.plain li{padding:.35rem 0}.migration-report .item-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.migration-report .item-label{overflow-wrap:anywhere;flex:22rem}.migration-report .item-row .actions{flex:none}.migration-report>.modal-body>.actions,.migration-report .actions{margin-top:.5rem}.variant-rules ul.plain>li{margin:.5rem 0}.variant-rules ul.plain>li>p{margin:0 0 0 2.2rem}ul.candidates{max-height:60vh;overflow-y:auto}ul.candidates li{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;display:flex}ul.candidates li:last-child{border-bottom:none}ul.candidates li.current{background:var(--card)}button.pick{all:unset;cursor:pointer;box-sizing:border-box;min-height:var(--tap);flex:auto;justify-content:space-between;align-items:center;gap:.75rem;padding:.5rem .4rem;display:flex}button.pick:disabled{cursor:default;opacity:.5}button.pick .pick-tags{flex-wrap:wrap;justify-content:flex-end;gap:.3rem;display:inline-flex}ul.candidates .prereqs{flex-basis:100%;padding:0 .4rem .4rem 3rem;font-size:.8rem;display:block}ul.candidates .prereq{margin-right:.6rem}ul.candidates .prereq.status-met:before{content:"✓ ";color:var(--ok)}ul.candidates .prereq.status-unmet:before{content:"✗ ";color:var(--warn)}ul.candidates .prereq.status-unknown:before{content:"? "}.attribute-picker{flex-wrap:wrap;gap:.5rem;margin:.5rem 0;display:flex}.attribute-picker button.pick{all:revert;font:inherit;border:1px solid var(--line);background:var(--card);color:var(--fg);cursor:pointer;min-height:var(--tap);border-radius:.6rem;align-items:center;gap:.4rem;padding:.45rem .8rem;display:inline-flex}.attribute-picker button.pick.current{border-color:var(--accent);color:var(--accent)}.attribute-picker button.pick:disabled{opacity:.5;cursor:default}.spells .entry-card{margin-top:.75rem}.spells .entry-card h4{margin:0}.spells .rank-group{border-top:1px solid var(--line);margin-top:.5rem;padding-top:.25rem}.spells ul.items li{flex-wrap:wrap}.spells ul.slots li{align-items:flex-start}.spells .picker{flex-basis:100%}.spells .slots-form label{flex-direction:column;align-items:center;font-size:.85rem;display:inline-flex}.inventory .warn{color:var(--warn)}.inventory ul.inventory-items>li{display:block}.inventory .inventory-item{flex-direction:column;gap:.35rem;display:flex}.inventory .inventory-item .item-main{flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}.inventory .inventory-item .actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.inventory .inventory-item.inactive .item-main>.linkish{color:var(--muted)}.inventory .inventory-item.depth-1{padding-left:1.25rem}.inventory .inventory-item.depth-2{padding-left:2.5rem}.inventory .inventory-item.depth-3{padding-left:3.75rem}.inventory .item-details{border:1px solid var(--line);background:var(--bg);border-radius:.75rem;padding:.5rem .75rem}.inventory .item-details .inline{margin:.35rem 0}.inventory .runes-form label{align-items:center;gap:.35rem;display:inline-flex}.inventory .tag .linkish{text-decoration:none}.familiar ul.abilities>li{border-bottom:1px solid var(--line);padding:.4rem 0}.familiar ul.abilities>li:last-child{border-bottom:none}.familiar .list{margin-top:var(--gap)}.library-sections{margin-bottom:var(--gap)}.library-sections button{flex:auto}.library .scope select{flex:12rem;max-width:100%}.filter-bar .filters{border:1px solid var(--line);background:var(--card);border-radius:.75rem;padding:.5rem .75rem}.filter-bar .range{align-items:center;gap:.35rem;display:inline-flex}.filter-bar .range input{width:4.5rem}button.chip{background:var(--soft);border-radius:1rem;padding:.3rem .8rem}button.more{width:100%;margin:var(--gap) 0;display:block}.results-count{flex-wrap:wrap;align-items:baseline;gap:.5rem;margin:.5rem 0;display:flex}.results-count .linkish{padding-inline:.6rem}ul.packs{gap:var(--gap);grid-template-columns:repeat(auto-fill,minmax(14rem,1fr));margin:.5rem 0;padding:0;list-style:none;display:grid}button.pack{text-align:left;flex-direction:column;align-items:flex-start;gap:.2rem;width:100%;display:flex}ul.library-list{margin:0;padding:0;list-style:none}ul.library-list li{border-bottom:1px solid var(--line);align-items:center;gap:.25rem;display:flex}ul.library-list li:last-child{border-bottom:none}ul.library-list button.pick{flex-wrap:wrap}ul.library-list button.pick .pick-name{flex:12rem}ul.library-list .snippet{-webkit-line-clamp:2;-webkit-box-orient:vertical;flex-basis:100%;font-size:.85rem;line-height:1.3;display:-webkit-box;overflow:hidden}button.icon.star{color:var(--muted);flex:none;font-size:1.3rem}button.icon.star.on{color:#b8860b}.library-entry .actions{margin-top:.5rem}a.button{min-height:var(--tap);border:1px solid var(--line);background:var(--card);color:var(--fg);border-radius:.6rem;align-items:center;padding:.5rem .9rem;text-decoration:none;display:inline-flex}.library-page .sheet-body{max-width:60rem}.tag.rarity-uncommon{color:#b8860b;border-color:#b8860b}.tag.rarity-rare{color:#2a6fbf;border-color:#2a6fbf}.tag.rarity-unique{color:#8b3fbf;border-color:#8b3fbf}button.roll{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;touch-action:manipulation}.roll-strip{flex-wrap:wrap;gap:.5rem;display:flex}.list .list-row.rollable{align-items:center;gap:.5rem;padding-right:0;display:flex}.list-row.rollable .row-open{all:unset;min-width:0;min-height:var(--tap);cursor:pointer;flex:auto;align-items:center;display:flex}.list-row.rollable .row-main{gap:.35rem}.list-row.rollable button.roll{flex:none;justify-content:center;min-width:4.5rem}.spell-rolls{vertical-align:middle;flex-wrap:wrap;align-items:center;gap:.4rem;margin-left:.4rem;display:inline-flex}.spell-rolls button.roll{padding:.2rem .6rem}.roll-tags{gap:.25rem;display:inline-flex}.roll-dice{flex-wrap:wrap;align-items:center;gap:.6rem;margin:.25rem 0 .75rem;display:flex}.die{border:2px solid var(--line);background:var(--card);border-radius:.75rem;flex-direction:column;justify-content:center;align-items:center;min-width:3.8rem;min-height:3.8rem;padding:.35rem .5rem;line-height:1.1;display:inline-flex}.die.kept{border-color:var(--accent)}.die.dropped{opacity:.55}.die.dropped .die-value{text-decoration:line-through}.die.nat20 .die-value{color:var(--ok)}.die.nat1 .die-value{color:var(--warn)}.die-value{font-variant-numeric:tabular-nums;font-size:1.7rem;font-weight:700}.die-label{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;text-align:center;font-size:.68rem}.die-sub{text-align:center;font-size:.72rem}.roll-sum{flex-wrap:wrap;align-items:baseline;gap:.3rem;font-size:1.1rem;display:inline-flex}.roll-total{font-variant-numeric:tabular-nums;font-size:2rem;font-weight:700}.roll-dc{margin:.25rem 0 .5rem}.degree{font-size:1.1rem;font-weight:700}.degree-criticalSuccess,.degree-success{color:var(--ok)}.degree-failure,.degree-criticalFailure{color:var(--warn)}.roll-choices{flex-wrap:wrap;align-items:center;gap:.25rem .9rem;margin:.25rem 0 .5rem;display:flex}.roll-choices label.inline{margin:0}.roll-actions{margin-top:.75rem}.roll-traits{margin:.5rem 0 0}.roll-traits .tag{margin:.15rem .3rem 0 0}.roll-persistent{margin:.25rem 0 .5rem}.roll-persistent .tag{margin-left:0;margin-right:.3rem}.roll-notes h3{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin:1rem 0 .35rem;font-size:.8rem}.roll-notes li{border-bottom:1px solid var(--line);padding:.35rem 0}.roll-notes li:last-child{border-bottom:none}.breakdown-rows li.total{border-top:2px solid var(--line)}.breakdown-rows li.total .bd-value{font-size:1.15rem}.dice-entry-grid{grid-template-columns:repeat(auto-fill,minmax(7rem,1fr));gap:.5rem;margin:.5rem 0;display:grid}.dice-entry-grid label{flex-direction:column;gap:.2rem;font-size:.85rem;display:flex}.dice-entry-grid input{width:100%}.tag.ok{border-color:var(--ok);color:var(--ok)}.boot{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:1rem;min-height:100dvh;padding:1rem;display:flex}.install{min-height:100dvh;padding:max(1rem, env(safe-area-inset-top)) max(1rem, env(safe-area-inset-right)) max(1rem, env(safe-area-inset-bottom)) max(1rem, env(safe-area-inset-left));justify-content:center;align-items:center;display:flex}.install-panel{background:var(--card);border:1px solid var(--line);border-radius:1rem;width:100%;max-width:36rem;padding:1.25rem 1.5rem}.install-panel h1{margin-top:0}.install progress,.about progress{width:100%;height:.8rem;accent-color:var(--accent);display:block}.install-total p{font-variant-numeric:tabular-nums}.install-groups{grid-template-columns:minmax(8rem,auto) 1fr auto;align-items:center;gap:.5rem .75rem;max-height:50dvh;margin:0;padding:0;font-size:.9rem;list-style:none;display:grid;overflow-y:auto}.install-groups li{display:contents}.install-groups li.done .label{color:var(--muted)}.install-groups .num{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:.8rem}.install-error{margin-top:1rem}.about h3{margin:1rem 0 .4rem;font-size:1rem}.update-indicator{text-decoration:none}@media (max-width:480px){.install-groups{grid-template-columns:1fr auto}.install-groups li progress{grid-column:1/-1}}
