.sheet{--radius:3px;--shadow:0 6px 18px #00000038;background:var(--bg);color:var(--text);font-family:var(--font-body);flex:1;font-size:16.5px;line-height:1.45;position:relative}.sheet.mode-dark{--shadow:0 8px 24px #0000008c}.sheet-texture,.sheet-grain{pointer-events:none;z-index:0;position:fixed;inset:0}.sheet-texture{background-image:var(--texture);opacity:var(--texture-opacity)}.sheet>:is(header,main,footer){z-index:1;position:relative}.sheet h1,.sheet h2,.sheet h3,.sheet h4{font-family:var(--font-display);margin:0;font-weight:400}.sheet button,.sheet input,.sheet select,.sheet textarea{font:inherit;color:inherit}.sheet-status{text-align:center;color:var(--muted,#776);padding:3rem 16px}.sheet-header-inner{grid-template-columns:auto 1fr auto;align-items:center;gap:14px;max-width:980px;margin:0 auto;padding:16px 16px 14px;display:grid}.portrait{border:3px solid var(--metal);background:var(--surface-alt);border-radius:50%;flex-shrink:0;place-items:center;width:72px;height:72px;padding:0;display:grid;overflow:hidden}@media (width>=640px){.portrait{width:96px;height:96px}}button.portrait{cursor:zoom-in}.portrait img{object-fit:cover;width:100%;height:100%}.portrait.crest{filter:drop-shadow(0 3px 4px #00000059);background:0 0;border:none;border-radius:0}.portrait.crest img{object-fit:contain}.portrait.crest span{font-family:var(--font-display);font-size:2.4rem}.portrait-large{object-fit:contain;width:100%;max-height:75vh}.identity{min-width:0}.identity h1{overflow-wrap:anywhere;font-size:clamp(1.45rem,5vw,2.5rem);line-height:1.05}.identity-line{margin:4px 0 0;font-size:.92rem}.identity-line .tag{margin-left:6px}.header-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;max-width:130px;display:flex}@media (width>=640px){.header-actions{max-width:none}}.tabs-bar{background:var(--surface);border-bottom:2px solid var(--metal);position:sticky;top:0;box-shadow:0 4px 10px #0000001f;z-index:10!important}.tabs{scrollbar-width:none;gap:4px;max-width:980px;margin:0 auto;padding:8px 16px;display:flex;overflow-x:auto}.tabs::-webkit-scrollbar{display:none}.tab{color:var(--muted);cursor:pointer;font-family:var(--font-display);text-transform:uppercase;letter-spacing:.05em;background:0 0;border:1px solid #0000;flex-shrink:0;padding:6px 12px;font-size:.98rem}.tab:hover{color:var(--text)}.tab.active{background:var(--accent);color:var(--accent-text);border-color:var(--metal)}.sheet-main{max-width:980px;margin:0 auto;padding:18px 16px 36px}.tab-stack{flex-direction:column;gap:18px;display:flex}.tab-grid{grid-template-columns:1fr;gap:18px;display:grid}@media (width>=760px){.tab-grid{grid-template-columns:1fr 1fr}.tab-grid>.wide,.tab-grid>.stat-row{grid-column:1/-1}}.sheet-footer{max-width:980px;color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:8px;margin:0 auto;padding:8px 16px 18px;font-size:.8rem;display:flex}.save-state.error{color:var(--danger)}.save-state.offline{color:var(--warn);font-weight:600}.notice{border:2px solid var(--warn);background:color-mix(in srgb, var(--warn) 14%, var(--surface));justify-content:space-between;align-items:center;gap:10px;margin-bottom:16px;padding:10px 12px;font-weight:600;display:flex}.demo-tools{align-items:center;gap:12px;display:flex}.demo-tools select{background:var(--surface);border:1px solid var(--border);padding:2px 4px}.card{min-width:0;padding:18px;position:relative}.card-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;display:flex}.card-head h3{color:var(--accent);text-transform:uppercase;letter-spacing:.06em;font-size:1.15rem}.card h4{margin-bottom:4px;font-size:1rem}.stat-row{grid-template-columns:repeat(auto-fill,minmax(108px,1fr));gap:10px;display:grid}.stat-tile{background:var(--surface);text-align:center;flex-direction:column;align-items:center;gap:2px;min-width:0;padding:12px 6px 10px;display:flex;position:relative}.stat-tile.clickable{cursor:pointer}.stat-label{text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-size:.7rem;font-weight:600}.stat-value{font-family:var(--font-display);color:var(--text);font-size:2rem;line-height:1.05}.stat-sub{color:var(--accent);font-size:.74rem;font-weight:600}.stat-tile.alert{outline:2px solid var(--warn);outline-offset:2px}.stat-tile.alert .stat-value{color:var(--warn)}.alert-note{color:var(--warn);margin:6px 0 0;font-size:.9rem;font-weight:600}.alert-text{color:var(--warn);font-weight:600}.reminders{border-left:4px solid var(--warn);background:color-mix(in srgb, var(--warn) 12%, var(--surface));margin-bottom:10px;padding:8px 12px}.reminders p{margin:2px 0;font-size:.92rem}.btn{border:1px solid var(--metal);background:var(--surface-alt);color:var(--text);cursor:pointer;min-height:40px;font-family:var(--font-display);text-transform:uppercase;letter-spacing:.05em;padding:8px 14px;font-size:.9rem}.btn:disabled{opacity:.4;cursor:not-allowed}.btn.primary{background:var(--accent);color:var(--accent-text)}.btn.danger{background:var(--danger);color:#fff}.btn.good{background:var(--good);color:#fff}.mode-dark .btn.danger,.mode-dark .btn.good{color:#111}.btn.small{min-height:32px;padding:4px 10px;font-size:.78rem}.icon-btn{border:1px solid var(--metal);background:var(--surface);cursor:pointer;width:38px;height:38px;color:var(--text);place-items:center;font-size:1.05rem;display:inline-grid}.icon-btn:disabled{opacity:.35;cursor:not-allowed}.link-btn{color:var(--accent);cursor:pointer;text-underline-offset:3px;background:0 0;border:none;padding:4px 0;font-weight:600;text-decoration:underline}.link-btn.danger{color:var(--danger)}.sheet input:not([type=checkbox]),.sheet select,.sheet textarea{background:var(--surface);border:1px solid var(--metal);width:100%;min-width:0;min-height:40px;padding:8px 10px}.sheet input:focus-visible,.sheet select:focus-visible,.sheet textarea:focus-visible,.sheet button:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.toggle{border:1px solid var(--metal);background:var(--surface);cursor:pointer;min-height:32px;font-family:var(--font-display);text-transform:uppercase;letter-spacing:.05em;padding:4px 14px;font-size:.82rem}.toggle.on{background:var(--accent);color:var(--accent-text)}.toggle.small{min-height:28px;padding:2px 10px;font-size:.72rem}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{border:1px solid var(--metal);background:var(--surface);cursor:pointer;padding:4px 11px;font-size:.86rem}.chip.on{background:var(--accent);color:var(--accent-text);font-weight:600}.tag{border:1px solid var(--metal);background:var(--surface-alt);color:var(--text);vertical-align:middle;font-size:.68rem;font-family:var(--font-body);text-transform:uppercase;letter-spacing:.06em;margin-left:4px;padding:1px 6px;font-weight:600;display:inline-block}.tag-accent{background:var(--accent);color:var(--accent-text)}.tag-muted{color:var(--muted)}.tag-warn{background:var(--warn);color:#111;border-color:var(--warn)}.tag-danger{background:var(--danger);color:#fff;border-color:var(--danger)}.muted{color:var(--muted)}.small{font-size:.84rem}.empty{color:var(--muted);margin:0;font-style:italic}.prose{white-space:pre-line;margin:.4em 0}.error{color:var(--danger);margin:0}.switch-row{color:var(--muted);align-items:center;gap:8px;font-size:.9rem;display:flex}.pips{flex-wrap:wrap;gap:8px;display:flex}.pip{border:2px solid var(--metal);cursor:pointer;background:0 0;width:22px;height:22px;padding:0}.pip.on{background:var(--accent)}.hp-numbers{flex-wrap:wrap;align-items:baseline;gap:6px;display:flex}.hp-current{font-family:var(--font-display);font-size:3rem;line-height:1}.hp-max{color:var(--muted);font-size:1.3rem}.hp-temp{color:var(--accent);font-weight:700}.hp-bar{background:var(--surface-alt);border:2px solid var(--metal);height:18px;margin:12px 0 14px;display:flex;overflow:hidden}.hp-fill{height:100%;transition:width .25s}.hp-fill.good{background:var(--good)}.hp-fill.warn{background:var(--warn)}.hp-fill.danger{background:var(--danger)}.hp-fill.temp{background:var(--accent);opacity:.7}.hp-controls{grid-template-columns:1fr 1fr 1fr;gap:8px;display:grid}.hp-controls input{grid-column:1/-1}@media (width>=480px){.hp-controls{grid-template-columns:1.3fr 1fr 1fr 1fr}.hp-controls input{grid-column:auto}}.death-saves{flex-wrap:wrap;gap:24px;margin-bottom:8px;display:flex}.resource-list{flex-direction:column;gap:12px;display:flex}.resource{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.resource-name{font-size:.98rem;font-weight:600}.resource-name .muted{font-weight:400}.exhaustion{align-items:center;gap:10px;margin-top:14px;font-weight:600;display:flex}.condition-details{flex-direction:column;gap:10px;margin-top:14px;display:flex}.condition-detail{background:var(--surface-alt);border-left:4px solid var(--accent);padding:10px 12px}.condition-detail ul{margin:0;padding-left:18px;font-size:.92rem}.notes{resize:vertical}.hd-row{grid-template-columns:1fr 80px auto auto;align-items:center;gap:6px;margin:8px 0;display:grid}@media (width<=420px){.hd-row{grid-template-columns:1fr 70px}}.action-list,.spell-list,.item-list,.check-list{margin:0;padding:0;list-style:none}.action{border-top:1px solid var(--border);justify-content:space-between;gap:10px;padding:11px 0;display:flex}.action:first-child{border-top:none}.action-main{flex-direction:column;gap:2px;min-width:0;display:flex}.action-name{font-size:1.02rem;font-weight:700}.action.standard .action-name{color:var(--muted);font-weight:600}.action.standard .action-summary{color:var(--muted);font-size:.86rem}.action-summary{font-size:.93rem}.attack-line{font-size:.98rem}.action-side{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:4px;display:flex}.filter-bar{flex-direction:column;gap:8px;display:flex}.slot-grid{flex-wrap:wrap;gap:14px 24px;display:flex}.slot-cell{flex-direction:column;gap:6px;display:flex}.slot-level{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:.75rem;font-weight:600}.spell{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:10px;padding:9px 0;display:flex}.spell:first-child{border-top:none}.spell.unprepared .spell-main{opacity:.5}.spell-main{text-align:left;cursor:pointer;background:0 0;border:none;flex-direction:column;gap:2px;min-width:0;padding:0;display:flex}.spell-name{font-weight:700}.spell-side{flex-shrink:0;align-items:center;gap:6px;display:flex}.spell-facts{grid-template-columns:auto 1fr;gap:4px 12px;margin:8px 0;display:grid}.spell-facts dt{color:var(--muted)}.spell-facts dd{margin:0}.ability-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}@media (width>=640px){.ability-grid{grid-template-columns:repeat(6,1fr)}}.ability{background:var(--surface-alt);border:2px solid var(--metal);cursor:pointer;flex-direction:column;align-items:center;padding:12px 4px 10px;display:flex}.ability-name{text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-size:.68rem;font-weight:600}.ability-mod{font-family:var(--font-display);font-size:2.1rem;line-height:1.1}.ability-score{border:1px solid var(--metal);background:var(--surface);margin-top:2px;padding:0 10px;font-size:.9rem;font-weight:700}.check-list li{border-top:1px solid var(--border);grid-template-columns:18px 1fr auto;align-items:center;gap:10px;padding:6px 0;display:grid}.check-list li:first-child{border-top:none}.prof-dot{border:2px solid var(--muted);vertical-align:middle;width:13px;height:13px;display:inline-block;transform:rotate(45deg)}.prof-dot.proficient{background:var(--accent);border-color:var(--accent)}.prof-dot.expertise{background:var(--accent);border-color:var(--accent);box-shadow:0 0 0 2px var(--surface), 0 0 0 4px var(--accent)}.prof-dot.half{background:linear-gradient(135deg, var(--accent) 50%, transparent 50%);border-color:var(--accent)}.legend .prof-dot{margin:0 4px 0 10px}.mod-btn{min-width:58px;min-height:38px;font-family:var(--font-display);background:var(--surface-alt);border:1px solid var(--metal);cursor:pointer;font-size:1.2rem}.defenses{margin:10px 0 0;padding-left:18px}.feature-list{flex-direction:column;gap:6px;display:flex}.feature{border-top:1px solid var(--border);padding:7px 0 7px 16px;position:relative}.feature:first-child{border-top:none}.feature summary{cursor:pointer;flex-direction:column;gap:2px;list-style:none;display:flex}.feature summary::-webkit-details-marker{display:none}.feature summary:before{content:"▸";color:var(--accent);position:absolute;left:0}.feature[open] summary:before{content:"▾"}.feature-name{font-weight:700}.feature-meta .tag{margin-left:0}.pill-list{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.pill-list li{background:var(--surface-alt);border:1px solid var(--metal);padding:4px 10px;font-size:.92rem}.fact-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;margin:0;display:grid}.fact-grid dt{text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-size:.7rem;font-weight:600}.fact-grid dd{margin:0;font-size:1.02rem}.coin-row{grid-template-columns:repeat(5,1fr);gap:8px;display:grid}.coin{background:var(--surface-alt);border:2px solid var(--border);flex-direction:column;align-items:center;padding:8px 2px;display:flex}.coin-amount{font-family:var(--font-display);font-size:1.35rem}.coin-label{color:var(--muted);letter-spacing:.1em;font-size:.7rem;font-weight:600}.coin-gp{border-color:#c9a227}.coin-pp{border-color:#9fb3c8}.coin-ep{border-color:#b8b28a}.coin-sp{border-color:#a9aeb5}.coin-cp{border-color:#b87333}.item{border-top:1px solid var(--border);grid-template-columns:1fr auto;align-items:center;gap:6px 10px;padding:9px 0;display:grid}.item:first-child{border-top:none}.item-main{flex-direction:column;grid-column:1/-1;min-width:0;display:flex}.item-name{font-weight:700}.item-main .tag{margin-left:0}.qty{align-items:center;gap:8px;display:flex}.qty span{text-align:center;min-width:24px;font-weight:700}.item-actions{justify-content:flex-end;gap:6px;display:flex}@media (width>=560px){.item{grid-template-columns:1fr auto auto}.item-main{grid-column:auto}}.form-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.form-grid label{color:var(--muted);flex-direction:column;gap:4px;font-size:.86rem;font-weight:600;display:flex}.form-grid label.check{color:var(--text);flex-direction:row;align-items:center;font-size:.95rem;font-weight:400}.form-grid .span-2{grid-column:1/-1}@media (width<=420px){.form-grid{grid-template-columns:1fr}}.modal-backdrop{background:#0000008c;justify-content:center;align-items:flex-end;animation:.15s fade;display:flex;position:fixed;inset:0;z-index:100!important}.modal{background:var(--surface);color:var(--text);width:100%;max-width:560px;max-height:85dvh;padding:18px 18px calc(18px + env(safe-area-inset-bottom));border:2px solid var(--metal);box-shadow:var(--shadow);outline:none;overflow:auto}.modal input:not([type=checkbox]),.modal select{background:var(--surface);border:1px solid var(--metal);width:100%;min-height:40px;padding:8px 10px}@media (width>=640px){.modal-backdrop{align-items:center}}.modal-head{border-bottom:2px solid var(--metal);justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;padding-bottom:8px;display:flex}.modal-head h2{color:var(--accent);font-size:1.35rem}.breakdown table{border-collapse:collapse;width:100%}.breakdown td{border-bottom:1px solid var(--border);padding:7px 0}.breakdown tfoot td{border-bottom:none;border-top:2px solid var(--metal);font-size:1.15rem;font-weight:700}.breakdown .num{text-align:right;font-variant-numeric:tabular-nums}@keyframes fade{0%{opacity:0}}.edit-panel{background:var(--bg);flex-direction:column;display:flex;position:fixed;inset:0;overflow:auto;z-index:50!important}.edit-head{background:var(--surface);border-bottom:2px solid var(--metal);z-index:2;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:12px 16px;display:flex;position:sticky;top:0}.edit-head h2{font-size:1.3rem}.edit-head .btn-row{margin:0}.edit-nav{gap:6px;width:100%;max-width:980px;margin:0 auto;padding:10px 16px;display:flex;overflow-x:auto}.edit-nav .chip{flex-shrink:0}.edit-body{width:100%;max-width:980px;margin:0 auto;padding:8px 16px 48px}.edit-body h3{color:var(--accent);margin:18px 0 8px}.error-box{background:color-mix(in srgb, var(--danger) 14%, var(--surface));border:2px solid var(--danger);max-width:948px;margin:0 auto 8px;padding:10px 14px}.error-box ul{margin:4px 0 0;padding-left:18px}.list-editor{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.list-item{background:var(--surface);border:1px solid var(--metal);width:100%;padding:10px 12px}.list-item summary{cursor:pointer;font-weight:700}.list-item[open] summary{margin-bottom:10px}.field-label{color:var(--muted);margin-bottom:4px;font-size:.86rem;font-weight:600;display:block}.bonus-row{grid-template-columns:1fr 80px 38px;gap:6px;margin-bottom:6px;display:grid}.check-row{flex-wrap:wrap;align-items:center;gap:6px 16px;display:flex}.check-row label.check{color:var(--text);flex-direction:row;align-items:center;gap:6px;display:flex}.family-illuminated .sheet-texture{-webkit-mask-image:radial-gradient(#000 40%,#0000 100%);mask-image:radial-gradient(#000 40%,#0000 100%)}.family-illuminated .sheet-grain{background:radial-gradient(#0000 55%,#0000002e 100%)}.family-illuminated.mode-dark .sheet-grain{background:radial-gradient(#0000 50%,#00000080 100%)}.family-illuminated{--band:var(--accent);--band-text:var(--accent-text);--band-title:var(--accent-text)}.family-illuminated.mode-dark{--band:color-mix(in srgb, var(--accent) 30%, #07060a);--band-text:var(--text);--band-title:var(--metal)}.family-illuminated .sheet-header{background:linear-gradient(180deg, #ffffff14, transparent 40%, #00000040), var(--band);color:var(--band-text);border-bottom:4px double var(--metal)}.family-illuminated .identity h1{color:var(--band-title);text-shadow:0 2px #0000004d;letter-spacing:.02em}.family-illuminated .identity-line{color:var(--band-text);opacity:.9}.family-illuminated .identity-line strong{color:var(--band-text)}.family-illuminated .header-actions .btn,.family-illuminated .header-actions .icon-btn{color:var(--band-text);border-color:var(--metal);background:0 0}.family-illuminated.mode-dark .tab.active{background:var(--band);color:var(--metal);border-color:var(--metal)}.family-illuminated .portrait:not(.crest){box-shadow:0 0 0 3px var(--accent), 0 0 0 5px var(--metal)}.family-illuminated .tab{border-color:#0000}.family-illuminated .tab.active{box-shadow:inset 0 -3px 0 var(--metal)}.family-illuminated .card,.family-illuminated .modal,.family-illuminated .list-item{background:var(--corner-tl) top 5px left 5px / 30px no-repeat, var(--corner-tr) top 5px right 5px / 30px no-repeat, var(--corner-bl) bottom 5px left 5px / 30px no-repeat, var(--corner-br) bottom 5px right 5px / 30px no-repeat, var(--surface);border:2px solid var(--metal);box-shadow:inset 0 0 0 4px var(--surface), inset 0 0 0 5px var(--metal), var(--shadow)}.family-illuminated .card-head{text-align:center;flex-direction:column;justify-content:center;gap:6px}.family-illuminated .card-head h3{background:var(--divider) center bottom / 180px 14px no-repeat;padding-bottom:14px;font-size:1.25rem}.family-illuminated .card-actions{align-self:center}.family-illuminated .stat-tile{border:2px solid var(--metal);box-shadow:inset 0 0 0 3px var(--surface), inset 0 0 0 4px var(--border)}.family-illuminated .card .stat-tile{background:var(--surface)}.family-illuminated .stat-tile.clickable:hover,.family-illuminated .ability:hover,.family-illuminated .mod-btn:hover{background:var(--surface-alt);border-color:var(--accent)}.family-illuminated .btn{box-shadow:inset 0 1px #ffffff2e,0 2px #0003}.family-illuminated .btn:hover:not(:disabled){filter:brightness(1.08)}.family-illuminated .pip{width:18px;height:18px;margin:3px;transform:rotate(45deg)}.family-illuminated .pip.on{background:linear-gradient(135deg, color-mix(in srgb, var(--accent) 70%, #fff), var(--accent) 60%);box-shadow:0 0 6px color-mix(in srgb, var(--accent) 60%, transparent)}.family-illuminated .hp-bar{box-shadow:inset 0 2px 4px #0000004d}.family-illuminated .hp-fill{background-image:linear-gradient(#ffffff4d,#0000 55%,#00000026)}.family-illuminated .modal-head{background:var(--divider) left bottom / 160px 14px no-repeat;border-bottom:none;justify-content:space-between;padding-bottom:16px}.family-weathered{--shadow:3px 4px 0 #00000047}.family-weathered.mode-dark{--shadow:3px 4px 0 #000000b3}.family-weathered .sheet-grain{opacity:.55;mix-blend-mode:multiply;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.6 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E"),radial-gradient(#0000 50%,#3c1e0a40 100%)}.family-weathered.mode-dark .sheet-grain{opacity:.35;mix-blend-mode:normal;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0.12 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E"),radial-gradient(#0000 45%,#0009 100%)}.family-weathered .sheet-header{background:var(--surface-alt);background-image:var(--rough-line);background-position:0 100%;background-repeat:repeat-x;background-size:200px 10px;border-bottom:0;padding-bottom:6px}.family-weathered .identity h1{color:var(--text);letter-spacing:.02em}.family-weathered .identity-line{color:var(--muted);font-style:italic}.family-weathered .identity-line strong{color:var(--accent);font-style:normal}.family-weathered .tabs-bar{background:var(--surface-alt);border-bottom:2px dashed var(--metal);box-shadow:none}.family-weathered .tab{border:2px solid #0000}.family-weathered .tab.active{border-color:var(--metal);box-shadow:2px 2px 0 var(--metal);transform:rotate(-1.5deg)}.family-weathered .card,.family-weathered .modal,.family-weathered .list-item{border:10px solid #0000;border-image:var(--rough-panel) 12 fill / 10px / 0 stretch;filter:drop-shadow(3px 4px #00000038);background:0 0}.family-weathered.mode-dark .card,.family-weathered.mode-dark .modal{filter:drop-shadow(3px 4px #0009)}.family-weathered .card{padding:10px 10px 8px}.family-weathered .modal{border:2px solid var(--metal);background:var(--surface);filter:none;padding:16px 16px calc(16px + env(safe-area-inset-bottom));border-image:;box-shadow:5px 6px #00000073}.family-weathered .card-head h3{color:var(--accent);border:2px solid var(--accent);letter-spacing:.14em;background:color-mix(in srgb, var(--accent) 8%, transparent);padding:2px 10px 1px;font-size:1.05rem;display:inline-block;transform:rotate(-1.2deg)}.family-weathered .modal-head{border-bottom:2px dashed var(--metal)}.family-weathered .stat-tile{border:10px solid #0000;border-image:var(--rough-panel-alt) 12 fill / 10px / 0 stretch;background:0 0;padding:4px 2px 2px}.family-weathered .card .stat-tile{background:0 0}.family-weathered .stat-label{letter-spacing:.14em}.family-weathered .stat-tile.clickable:hover{transform:rotate(-1deg)}.family-weathered .btn,.family-weathered .icon-btn,.family-weathered .mod-btn,.family-weathered .toggle,.family-weathered .chip{border:2px solid var(--metal);box-shadow:2px 2px 0 var(--metal)}.family-weathered .btn:active:not(:disabled),.family-weathered .icon-btn:active:not(:disabled),.family-weathered .mod-btn:active,.family-weathered .chip:active{box-shadow:none;transform:translate(2px,2px)}.family-weathered .chip.on,.family-weathered .toggle.on{transform:rotate(-1deg)}.family-weathered .tag{border-style:dashed}.family-weathered .ability{border:2px dashed var(--metal);background:var(--surface-alt)}.family-weathered .ability:hover,.family-weathered .mod-btn:hover{border-style:solid}.family-weathered .pip{border-radius:0}.family-weathered .pip.on{background:var(--metal);box-shadow:inset 0 0 0 2px var(--surface)}.family-weathered .hp-bar{border-style:solid;border-width:2px;height:20px}.family-weathered .hp-fill{background-image:repeating-linear-gradient(-45deg,#0000002e 0 3px,#0000 3px 7px)}.family-weathered .condition-detail{border-left:4px dashed var(--accent)}.family-weathered .action,.family-weathered .spell,.family-weathered .item,.family-weathered .check-list li,.family-weathered .feature{border-top-style:dashed}.feedback-fab{right:max(16px, env(safe-area-inset-right));bottom:max(16px, env(safe-area-inset-bottom));background:var(--accent);min-height:46px;color:var(--accent-text);border:2px solid var(--metal);font-family:var(--font-display);text-transform:uppercase;letter-spacing:.06em;cursor:pointer;box-shadow:var(--shadow);align-items:center;gap:6px;padding:10px 16px;display:inline-flex;position:fixed;z-index:40!important}.family-weathered .feedback-fab{box-shadow:3px 3px 0 var(--metal);transform:rotate(-1.5deg)}.feedback-fab:hover{filter:brightness(1.08)}.sheet-footer{padding-bottom:80px}.feedback-form textarea{background:var(--surface);border:1px solid var(--metal);width:100%;color:var(--text);font:inherit;margin-bottom:6px;padding:8px 10px}.feedback-form .chips{margin:10px 0 12px}@media (prefers-reduced-motion:reduce){.hp-fill,.modal-backdrop{transition:none;animation:none}}.sheet-texture,.family-illuminated .sheet-texture{-webkit-mask-image:radial-gradient(70% 65% at 50% 45%,#0000 35%,#000 100%);mask-image:radial-gradient(70% 65% at 50% 45%,#0000 35%,#000 100%)}.family-weathered .sheet-grain,.family-weathered.mode-dark .sheet-grain{opacity:1;mix-blend-mode:normal;background-image:radial-gradient(#0000 55%,#28140538 100%)}.family-weathered.mode-dark .sheet-grain{background-image:radial-gradient(#0000 50%,#0000008c 100%)}.sheet-header{isolation:isolate;position:relative;overflow:hidden}.sheet-header:before{content:"";z-index:-1;background:var(--banner) right center / cover no-repeat;position:absolute;inset:0;-webkit-mask-image:linear-gradient(90deg,#0000 0%,#00000059 28%,#000 60%);mask-image:linear-gradient(90deg,#0000 0%,#00000059 28%,#000 60%)}.sheet-header-inner{min-height:128px;padding-top:20px;padding-bottom:20px}@media (width>=640px){.sheet-header-inner{min-height:176px}}.portrait{width:84px;height:84px}@media (width>=640px){.portrait{width:132px;height:132px}}.portrait.crest{filter:drop-shadow(0 4px 6px #00000073)drop-shadow(0 0 1px #0006)}.identity h1{font-size:clamp(1.6rem,6vw,3.1rem)}.identity-line{font-size:.95rem}.family-illuminated .sheet-header{background:linear-gradient(180deg, #ffffff24, transparent 35%, #00000052), var(--band);box-shadow:inset 0 -1px 0 color-mix(in srgb, var(--metal) 70%, white), inset 0 -6px 0 -3px var(--metal)}.family-illuminated .identity h1{text-shadow:0 2px #00000059,0 0 18px #00000040}.family-illuminated .card,.family-illuminated .list-item{background:var(--corner-tl) top 6px left 6px / 40px no-repeat, var(--corner-tr) top 6px right 6px / 40px no-repeat, var(--corner-bl) bottom 6px left 6px / 40px no-repeat, var(--corner-br) bottom 6px right 6px / 40px no-repeat, linear-gradient(180deg, color-mix(in srgb, var(--surface) 96%, white), var(--surface) 30%, color-mix(in srgb, var(--surface) 90%, var(--metal)));border:3px solid #0000;border-image:linear-gradient(135deg, color-mix(in srgb, var(--metal) 55%, white), var(--metal) 35%, color-mix(in srgb, var(--metal) 70%, black) 65%, color-mix(in srgb, var(--metal) 60%, white)) 1;box-shadow:inset 0 0 0 4px var(--surface), inset 0 0 0 5px color-mix(in srgb, var(--metal) 80%, transparent), inset 0 2px 10px #ffffff40, var(--shadow)}.family-illuminated.mode-dark .card{box-shadow:inset 0 0 0 4px var(--surface), inset 0 0 0 5px color-mix(in srgb, var(--metal) 70%, transparent), inset 0 2px 14px #00000080, var(--shadow)}.family-illuminated .card{padding:26px 24px 22px}.family-illuminated .card-head h3{letter-spacing:.08em;background:var(--divider) center bottom / 220px 16px no-repeat;text-shadow:0 1px 0 color-mix(in srgb, var(--surface) 60%, white);padding-bottom:18px;font-size:1.4rem}.family-illuminated.mode-dark .card-head h3{text-shadow:0 0 12px color-mix(in srgb, var(--accent) 35%, transparent)}.family-illuminated .stat-tile,.family-illuminated .ability,.family-illuminated .coin{background:linear-gradient(180deg, color-mix(in srgb, var(--surface) 92%, white), var(--surface-alt));border:2px solid #0000;border-image:linear-gradient(160deg, color-mix(in srgb, var(--metal) 50%, white), var(--metal) 45%, color-mix(in srgb, var(--metal) 70%, black)) 1;box-shadow:inset 0 1px #ffffff80,inset 0 -2px 6px #00000014,0 2px 4px #0000001f}.family-illuminated.mode-dark .stat-tile,.family-illuminated.mode-dark .ability,.family-illuminated.mode-dark .coin{background:linear-gradient(180deg, color-mix(in srgb, var(--surface-alt) 85%, white), var(--surface));box-shadow:inset 0 1px #ffffff14,inset 0 -2px 8px #0006,0 2px 6px #00000080}.family-illuminated .stat-value,.family-illuminated .ability-mod{text-shadow:0 1px #fff9;font-size:2.2rem}.family-illuminated.mode-dark .stat-value,.family-illuminated.mode-dark .ability-mod{text-shadow:0 1px #0009}.family-illuminated .btn,.family-illuminated .chip.on,.family-illuminated .tab.active,.family-illuminated .toggle.on{background-image:linear-gradient(#ffffff38,#0000 50%,#00000024)}.family-illuminated .hp-bar{border-width:2px;height:22px;box-shadow:inset 0 3px 6px #00000059,0 1px #fff6}.family-illuminated .pip{width:20px;height:20px}.family-illuminated .pip.on{background:radial-gradient(circle at 35% 30%, color-mix(in srgb, var(--accent) 35%, white), var(--accent) 55%, color-mix(in srgb, var(--accent) 70%, black))}.family-weathered .sheet-header{background:radial-gradient(ellipse at 15% 20%, #ffffff40, transparent 60%), linear-gradient(180deg, var(--surface-alt), color-mix(in srgb, var(--surface-alt) 88%, var(--metal)));background-repeat:no-repeat}.family-weathered .sheet-header:after{content:"";background:var(--rough-line) left bottom / 200px 10px repeat-x;height:10px;position:absolute;bottom:0;left:0;right:0}.family-weathered .identity h1{text-shadow:1px 1px 0 color-mix(in srgb, var(--surface) 70%, transparent), 2px 2px 0 #0000001f}.family-weathered .stat-value,.family-weathered .ability-mod{font-size:2.15rem}.family-weathered .hp-bar{height:22px}.family-weathered .pip{width:22px;height:22px}.family-weathered .pip.on{background:radial-gradient(circle at 35% 35%, color-mix(in srgb, var(--metal) 70%, var(--surface)), var(--metal) 70%)}.family-illuminated .header-actions :is(.btn,.icon-btn){background:color-mix(in srgb, var(--band) 78%, transparent);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.family-weathered .header-actions :is(.btn,.icon-btn){background:color-mix(in srgb, var(--surface) 88%, transparent);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.display-decorative :is(.tab,.card-head h3,.btn,.toggle,.feedback-fab){text-transform:none;letter-spacing:.01em}.display-decorative .card-head h3{font-size:1.55rem}.display-decorative .tab{font-size:1.08rem}.display-decorative .btn{font-size:1rem}.sheet-header:before{-webkit-mask-image:linear-gradient(90deg,#0000 0% 30%,#0000004d 48%,#000 72%);mask-image:linear-gradient(90deg,#0000 0% 30%,#0000004d 48%,#000 72%)}.family-illuminated .identity :is(h1,.identity-line){text-shadow:0 0 6px var(--band), 0 0 14px var(--band), 0 2px 0 #00000059}.family-weathered .identity :is(h1,.identity-line){text-shadow:0 0 6px var(--surface-alt), 0 0 12px var(--surface-alt), 0 0 2px var(--surface-alt)}.stat-value{white-space:nowrap}.display-decorative :is(.stat-value,.ability-mod){font-size:1.75rem}.spell-tag-notes{color:var(--muted);gap:6px;margin:0 0 12px;padding:0;list-style:none;display:grid}.spell-tag-notes .tag{margin-right:4px}.identity h1{overflow-wrap:break-word;-webkit-hyphens:manual;hyphens:manual}@media (width<=560px){.sheet-header-inner{grid-template-columns:auto minmax(0,1fr);row-gap:8px}.header-actions{grid-area:1/1/auto/-1;justify-self:end;max-width:none}.identity h1{font-size:clamp(1.35rem,7vw,2rem)}.feedback-fab{justify-content:center;width:48px;height:48px;min-height:48px;padding:0;font-size:1.2rem}.feedback-fab .fab-label{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.sheet-main{padding-bottom:84px}}.adv-mark{font-size:.75rem;font-family:var(--font-body);color:var(--accent);margin-left:8px;font-style:italic}.level-btn{color:inherit;font:inherit;cursor:pointer;background:0 0;border:none;border-radius:4px;align-items:baseline;gap:2px;margin:-2px -4px;padding:2px 4px;display:inline-flex}.level-btn strong{color:var(--accent)}.level-btn:hover strong,.level-btn:focus-visible strong{text-decoration:underline}.level-count{background:var(--accent);color:var(--accent-text);border-radius:999px;margin-left:4px;padding:0 6px;font-size:.7rem;font-style:normal}.level-menu{gap:12px;display:grid}.level-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.level-choice{background:var(--surface);width:100%;color:var(--text);border:1px solid var(--border);font:inherit;cursor:pointer;text-align:left;justify-content:space-between;align-items:center;gap:8px;padding:10px 12px;display:flex}.level-choice.current{border:2px solid var(--accent)}.level-choice:hover{border-color:var(--accent)}.level-new{gap:10px;display:grid}.level-new .field input,.level-menu .field input,.level-new input{width:100%}.level-warn{color:var(--danger);font-weight:600}.level-checklist{border:2px solid var(--warn);background:color-mix(in srgb, var(--warn) 10%, var(--surface));margin:0 0 16px}.level-checklist.has-fix{border-color:var(--danger);background:color-mix(in srgb, var(--danger) 8%, var(--surface))}.level-checklist-head{width:100%;color:var(--text);font:inherit;cursor:pointer;text-align:left;background:0 0;border:none;justify-content:space-between;align-items:center;gap:8px;padding:10px 14px;display:flex}.level-issues{gap:8px;margin:0;padding:0 14px 12px;list-style:none;display:grid}.level-issues li{line-height:1.4}.level-issue-kind{text-transform:uppercase;letter-spacing:.05em;border:1px solid;margin-right:4px;padding:1px 6px;font-size:.7rem;font-weight:700;display:inline-block}.level-issues li.fix .level-issue-kind{color:var(--danger)}.level-issues li.check .level-issue-kind{color:var(--warn)}.levelup{gap:14px;display:grid}.levelup section{gap:10px;display:grid}.levelup-steps{text-transform:uppercase;letter-spacing:.04em;flex-wrap:wrap;gap:4px 6px;margin:0;padding:0;font-size:.78rem;list-style:none;display:flex}.levelup-steps li{border:1px solid var(--border);color:var(--muted);padding:2px 8px}.levelup-steps li.done{color:var(--text);border-color:var(--accent)}.levelup-steps li.current{background:var(--accent);color:var(--accent-text);border-color:var(--accent)}.levelup .check{color:var(--text);flex-wrap:wrap;align-items:center;gap:6px 8px;display:flex}.levelup input[type=text],.levelup textarea,.levelup select{background:var(--surface);width:100%;color:var(--text);border:1px solid var(--border);font:inherit;padding:8px 10px}.levelup-num{background:var(--surface);width:5.5em;color:var(--text);border:1px solid var(--border);font:inherit;padding:6px 8px}.levelup-block{border-top:1px dashed var(--border);gap:8px;padding-top:10px;display:grid}.levelup-feature summary,.levelup-spell-level summary{cursor:pointer}.levelup-feature p,.levelup-spell-text p{white-space:pre-line;margin:6px 0 0 26px}.levelup-custom{border:1px solid var(--border);background:var(--surface);gap:6px;padding:8px;display:grid}.levelup-custom .link-btn{justify-self:start}.levelup-spell-list{gap:6px;margin:6px 0 0;padding:0;list-style:none;display:grid}.levelup-spell-level>summary{padding:6px 0;font-weight:700}.levelup-summary ul{gap:4px;margin:0;padding-left:20px;display:grid}.levelup-nav{justify-content:space-between}.levelup .check-row{flex-wrap:wrap;gap:6px 14px;display:flex}.fx-toggle{opacity:.55}.fx-toggle.on{opacity:1;color:var(--metal)}.fx-layer{pointer-events:none;z-index:60;position:fixed;inset:0;overflow:hidden}.fx{--c:var(--accent);width:0;height:0;position:absolute}.fx-damage,.fx-down,.fx-fumble{--c:var(--danger)}.fx-heal,.fx-save-ok{--c:var(--good)}.fx-temp{--c:#4f8fd6}.fx-resource,.fx-inspiration,.fx-crit,.fx-rest{--c:var(--metal)}.fx-save-fail{--c:var(--danger)}.fx-burst{border:2px solid var(--c);width:72px;height:72px;box-shadow:0 0 18px var(--c), inset 0 0 12px var(--c);border-radius:50%;animation:.7s ease-out forwards fx-ring;position:absolute;top:-36px;left:-36px}.fx-spell .fx-burst{border-style:dashed;animation:1.1s ease-out forwards fx-rune}.fx-temp .fx-burst{border-width:3px;animation-duration:.9s}.fx-p{background:radial-gradient(circle, #fff 0 20%, var(--c) 55%, transparent 70%);width:8px;height:8px;animation:fx-spark .9s cubic-bezier(.2,.7,.3,1) var(--d,0s) forwards;opacity:0;border-radius:50%;position:absolute;top:-4px;left:-4px}.fx-heal .fx-p,.fx-rest .fx-p{animation-name:fx-rise;animation-duration:1.3s}.fx-inspiration .fx-p{clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%);background:var(--c);border-radius:0;width:12px;height:12px}.fx-slash{background:linear-gradient(90deg, transparent, #fff, var(--c), transparent);border-radius:6px;width:120px;height:6px;animation:.42s ease-out forwards fx-slash;position:absolute;top:-3px;left:-60px;transform:rotate(-28deg)scaleX(0)}.fx-damage .fx-slash{--c:var(--danger)}.fx-label{white-space:nowrap;text-align:center;border:1px solid var(--c);background:color-mix(in srgb, var(--surface) 92%, transparent);color:var(--text);box-shadow:0 4px 14px #00000040, 0 0 10px color-mix(in srgb, var(--c) 45%, transparent);border-radius:999px;flex-direction:column;align-items:center;gap:1px;padding:4px 12px;animation:1.6s ease-out forwards fx-float;display:flex;position:absolute;top:-54px;left:0;transform:translate(-50%)}.fx-label strong{font-family:var(--font-display);color:var(--c);font-size:1.15rem;line-height:1.15}.fx-label small{color:var(--muted);text-overflow:ellipsis;max-width:70vw;font-size:.75rem;overflow:hidden}.fx-crit .fx-label strong{font-size:1.35rem}@media (width<=520px){.fx-label{max-width:86vw}}.fx-glow{--c:var(--accent);animation:.9s ease-out forwards fx-glow;position:absolute;inset:0}.fx-glow.fx-damage{--c:var(--danger)}.fx-glow.fx-down{--c:#000;animation-duration:1.5s}.fx-glow.fx-heal{--c:var(--good)}.fx-glow.fx-rest{--c:#6b7fd6;animation-duration:1.5s}.fx-glow.fx-crit{--c:var(--metal)}.fx-glow{box-shadow:inset 0 0 90px 10px color-mix(in srgb, var(--c) 55%, transparent)}@keyframes fx-ring{0%{opacity:.9;transform:scale(.3)}to{opacity:0;transform:scale(1.6)}}@keyframes fx-rune{0%{opacity:.95;transform:scale(.4)rotate(0)}to{opacity:0;transform:scale(1.7)rotate(150deg)}}@keyframes fx-spark{0%{opacity:1;transform:rotate(var(--a)) translateX(6px) scale(1)}to{opacity:0;transform:rotate(var(--a)) translateX(64px) scale(.4)}}@keyframes fx-rise{0%{opacity:0;transform:rotate(var(--a)) translateX(18px) rotate(calc(-1 * var(--a))) translateY(0)}20%{opacity:1}to{opacity:0;transform:rotate(var(--a)) translateX(30px) rotate(calc(-1 * var(--a))) translateY(-70px)}}@keyframes fx-slash{0%{opacity:1;transform:rotate(-28deg)scaleX(0)}60%{opacity:1;transform:rotate(-28deg)scaleX(1)}to{opacity:0;transform:rotate(-28deg)scaleX(1.1)}}@keyframes fx-float{0%{opacity:0;transform:translate(-50%,10px)scale(.85)}12%{opacity:1;transform:translate(-50%)scale(1.05)}20%{transform:translate(-50%)scale(1)}75%{opacity:1}to{opacity:0;transform:translate(-50%,-26px)}}@keyframes fx-glow{0%{opacity:0}25%{opacity:1}to{opacity:0}}@media (prefers-reduced-motion:reduce){.fx-burst,.fx-p,.fx-slash,.fx-glow{display:none}.fx-label{animation-name:fx-fade}}@keyframes fx-fade{0%,to{opacity:0;transform:translate(-50%)}15%,75%{opacity:1;transform:translate(-50%)}}.concentration-bar{border:1px solid var(--metal);background:color-mix(in srgb, var(--accent) 12%, var(--surface));border-radius:8px;flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:10px;padding:8px 14px;display:flex}.concentration-bar .link-btn{margin-left:auto}.conc-check{border:1px solid var(--warn);background:color-mix(in srgb, var(--warn) 12%, var(--surface));border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;margin-top:10px;padding:8px 12px;display:flex}.conc-check .btn-row{gap:6px;margin:0;display:flex}.resource-extra{text-align:right;flex-basis:100%;font-size:.85rem}.follow-up{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.follow-up .action-main{flex-direction:column;gap:2px;display:flex}.concentration-bar .follow-up{border-top:1px dashed var(--border);flex-basis:100%;padding-top:8px}.action.active-spell{border-left:3px solid var(--accent);background:color-mix(in srgb, var(--accent) 7%, transparent);padding-left:10px}.action.active-spell>.follow-up{flex:1}.item.empty .item-main,.item.empty .qty{opacity:.45}.item.empty .item-name{text-decoration:line-through;text-decoration-thickness:1px}.feature-notes{border-left:3px solid var(--metal);background:color-mix(in srgb, var(--metal) 8%, transparent);border-radius:0 6px 6px 0;margin:0 0 10px;padding:6px 12px}.feature-notes p{margin:3px 0;font-size:.88rem}.skill-note{color:var(--muted);margin-top:2px;font-size:.8rem;font-weight:400;line-height:1.3;display:block}.rating-pick{border:none;margin:10px 0;padding:0}.rating-row{grid-template-columns:repeat(10,1fr);gap:4px;margin-top:6px;display:grid}.rating-btn{border:1px solid var(--metal);background:var(--surface);min-height:40px;color:var(--text);font-family:var(--font-display);cursor:pointer;border-radius:6px;font-size:1rem}.rating-btn.on{background:var(--accent);color:var(--accent-text)}.rating-ends{justify-content:space-between;margin-top:4px;display:flex}.admin{--a-bg:#f4f5f7;--a-surface:#fff;--a-text:#1b1f27;--a-muted:#5f6775;--a-border:#d9dde4;--a-accent:#8a2a3a;--a-accent-text:#fff;--a-ok:#2f7a3b;--a-warn:#a86708;--a-danger:#b42318;--a-pilot:#5b3fa8;background:var(--a-bg);color:var(--a-text);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;flex:1;font:15px/1.45 system-ui,-apple-system,Segoe UI,sans-serif}@media (prefers-color-scheme:dark){.admin{--a-bg:#121419;--a-surface:#1b1e25;--a-text:#e8eaee;--a-muted:#9aa2b1;--a-border:#2f3440;--a-accent:#e07a8a;--a-accent-text:#1a0c10;--a-ok:#6cc07a;--a-warn:#e2a64a;--a-danger:#f07467;--a-pilot:#ae95f0;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}body:has(.admin){--page-bg:#f4f5f7}@media (prefers-color-scheme:dark){body:has(.admin){--page-bg:#121419}}.admin h1{margin:0;font-size:1.25rem}.admin h2{margin:0;font-size:1.05rem}.admin .muted{color:var(--a-muted)}.admin .small{font-size:.85rem}.admin .error{color:var(--a-danger)}.admin .nowrap{white-space:nowrap}.admin a{color:var(--a-accent)}.admin input,.admin select{font:inherit;color:inherit;background:var(--a-surface);border:1px solid var(--a-border);border-radius:6px;min-height:38px;padding:7px 10px}.admin input:focus-visible,.admin select:focus-visible,.admin button:focus-visible,.admin a:focus-visible{outline:2px solid var(--a-accent);outline-offset:2px}.admin-head{background:var(--a-surface);border-bottom:1px solid var(--a-border);z-index:5;padding:12px 16px 0;position:sticky;top:0}.admin-head>div{flex-wrap:wrap;align-items:baseline;gap:12px;max-width:1200px;margin:0 auto;display:flex}.admin-nav{gap:2px;max-width:1200px;margin:8px auto 0;display:flex;overflow-x:auto}.admin-nav a{color:var(--a-muted);white-space:nowrap;border-bottom:2px solid #0000;padding:8px 12px;font-weight:600;text-decoration:none}.admin-nav a.active{color:var(--a-text);border-bottom-color:var(--a-accent)}.badge{background:var(--a-danger);color:#fff;border-radius:999px;margin-left:6px;padding:0 7px;font-size:.75rem;display:inline-block}.admin-main{flex-direction:column;gap:16px;max-width:1200px;margin:0 auto;padding:16px;display:flex}.admin-gate{max-width:640px;margin:0 auto;padding:3rem 16px}.setup-values{flex-direction:column;gap:10px;margin:16px 0;display:flex}.setup-values div{flex-direction:column;gap:2px;display:flex}.setup-values code{background:var(--a-surface);border:1px solid var(--a-border);overflow-wrap:anywhere;-webkit-user-select:all;user-select:all;border-radius:6px;padding:8px 10px;font-size:1rem}.a-card{background:var(--a-surface);border:1px solid var(--a-border);border-radius:8px;min-width:0;padding:16px}.a-card>header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.kpis{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:12px;display:grid}.kpi{background:var(--a-surface);border:1px solid var(--a-border);border-radius:8px;flex-direction:column;padding:14px;text-decoration:none;display:flex;color:var(--a-text)!important}.kpi:hover{border-color:var(--a-accent)}.kpi.attention{border-color:var(--a-danger)}.kpi-value{font-variant-numeric:tabular-nums;font-size:1.9rem;font-weight:700;line-height:1.1}.kpi-label{color:var(--a-muted);font-size:.85rem}.usage{margin-bottom:14px}.usage-top{flex-wrap:wrap;justify-content:space-between;gap:10px;margin-bottom:4px;display:flex}.usage-bar{background:var(--a-bg);border:1px solid var(--a-border);border-radius:999px;height:12px;overflow:hidden}.usage-fill{height:100%}.usage-fill.ok{background:var(--a-ok)}.usage-fill.warn{background:var(--a-warn)}.usage-fill.danger{background:var(--a-danger)}.a-btn{font:inherit;color:var(--a-text);background:var(--a-surface);border:1px solid var(--a-border);cursor:pointer;white-space:nowrap;border-radius:6px;align-items:center;min-height:36px;padding:7px 12px;font-size:.9rem;font-weight:600;text-decoration:none;display:inline-flex}.a-btn:hover{border-color:var(--a-accent)}.a-btn.primary{background:var(--a-accent);color:var(--a-accent-text);border-color:var(--a-accent)}.a-btn.danger{color:var(--a-danger)}.a-btn.small{min-height:30px;padding:3px 9px;font-size:.82rem}.a-btn:disabled{opacity:.5;cursor:not-allowed}.btn-row{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.toolbar{flex-wrap:wrap;gap:10px;margin-bottom:12px;display:flex}.toolbar input{flex:1;min-width:200px}.seg{border:1px solid var(--a-border);border-radius:6px;display:inline-flex;overflow:hidden}.seg button{font:inherit;background:var(--a-surface);color:var(--a-text);border:0;border-right:1px solid var(--a-border);cursor:pointer;padding:6px 12px;font-size:.88rem}.seg button:last-child{border-right:0}.seg button.on{background:var(--a-accent);color:var(--a-accent-text);font-weight:600}.inline-form{flex-wrap:wrap;align-items:flex-end;gap:10px;margin-bottom:14px;display:flex}.inline-form label{color:var(--a-muted);flex-direction:column;gap:4px;font-size:.85rem;font-weight:600;display:flex}.inline-form label.check{color:var(--a-text);flex-direction:row;align-items:center;gap:6px;min-height:38px}.inline-form label input:not([type=checkbox]){min-width:240px}.table-wrap{overflow-x:auto}.a-table{border-collapse:collapse;width:100%}.a-table th{text-align:left;text-transform:uppercase;letter-spacing:.05em;color:var(--a-muted);border-bottom:1px solid var(--a-border);white-space:nowrap;padding:6px 10px;font-size:.78rem}.a-table td{border-bottom:1px solid var(--a-border);vertical-align:top;padding:10px}.a-table tr.revoked td,.a-table tr.dim td{opacity:.6}.link-cell{white-space:nowrap}.link-cell code{margin-right:6px;font-size:.82rem}.link-cell .a-btn{margin-right:4px}.row-actions{white-space:nowrap;text-align:right}.row-actions .a-btn{margin-left:4px}.pill{border:1px solid var(--a-border);color:var(--a-text);white-space:nowrap;border-radius:999px;margin:0 4px 4px 0;padding:1px 8px;font-size:.75rem;font-weight:600;text-decoration:none;display:inline-block}.pill.ok{color:var(--a-ok);border-color:currentColor}.pill.danger{color:var(--a-danger);border-color:currentColor}.pill.attention{color:var(--a-warn);border-color:currentColor}.pill.pilot{color:var(--a-pilot);border-color:currentColor}.pill.kind-bug{color:var(--a-danger);border-color:currentColor}.pill.kind-idea{color:var(--a-pilot);border-color:currentColor}.pill.kind-feedback{color:var(--a-ok);border-color:currentColor}.pill.rating{color:var(--a-pilot);border-color:currentColor;font-weight:700}.rating-summary{margin:0 0 12px}.token-created{border:2px solid var(--a-accent);border-radius:8px;padding:14px}.token-created p{margin:0 0 8px}.token-big{letter-spacing:.06em;background:var(--a-bg);overflow-wrap:anywhere;-webkit-user-select:all;user-select:all;border-radius:6px;padding:10px;font:700 1.5rem/1.2 ui-monospace,Cascadia Mono,Consolas,monospace}.message-preview{white-space:pre-wrap;background:var(--a-bg);color:var(--a-muted);border-radius:6px;margin:10px 0 0;padding:10px;font:.85rem/1.4 ui-monospace,Consolas,monospace}.feedback-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.fb{border:1px solid var(--a-border);border-left-width:4px;border-radius:6px;padding:10px 12px}.fb-bug{border-left-color:var(--a-danger)}.fb-idea{border-left-color:var(--a-pilot)}.fb-feedback{border-left-color:var(--a-ok)}.fb-done{opacity:.65}.fb-head{flex-wrap:wrap;align-items:baseline;gap:8px;display:flex}.fb-head .pill{margin:0}.fb-date{margin-left:auto}.fb-msg{white-space:pre-wrap;margin:8px 0}.review-list{flex-direction:column;gap:12px;display:flex}.review{border:1px solid var(--a-border);border-radius:8px;padding:12px}.review-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:10px;display:flex}.grade{flex-wrap:wrap;gap:4px;margin-bottom:8px;display:flex}.grade-btn{font:inherit;border:1px solid var(--a-border);background:var(--a-surface);width:38px;height:38px;color:var(--a-text);cursor:pointer;border-radius:6px;font-weight:700}.grade-btn:hover{border-color:var(--a-accent)}.grade-btn.on{background:var(--a-accent);color:var(--a-accent-text);border-color:var(--a-accent)}.grade-btn.on.low{background:var(--a-danger);border-color:var(--a-danger);color:#fff}.grade-btn.on.high{background:var(--a-ok);border-color:var(--a-ok);color:#fff}.review textarea{width:100%;font:inherit;color:inherit;background:var(--a-surface);border:1px solid var(--a-border);border-radius:6px;padding:8px 10px}.ok-text{color:var(--a-ok)}label.check{align-items:center;gap:6px;display:inline-flex}.pipeline-banner{border:1px solid var(--a-border);border-left:4px solid var(--a-ok);border-radius:6px;margin-bottom:12px;padding:8px 12px}.pipeline-banner.off{border-left-color:var(--a-warn)}.mode-card{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.mode-card h2{margin-bottom:2px}.note{white-space:pre-wrap;max-width:360px;margin-top:4px}.file-link{white-space:nowrap;margin:0 8px 4px 0;display:inline-block}@media (width<=640px){.inline-form label input:not([type=checkbox]){width:100%;min-width:0}.inline-form label{width:100%}}.health-list{gap:12px;margin:0;padding:0;list-style:none;display:grid}.health-row{align-items:flex-start;gap:12px;display:flex}.health-dot{background:var(--a-muted);border-radius:50%;flex:none;width:12px;height:12px;margin-top:5px}.health-row.ok .health-dot{background:var(--a-ok)}.health-row.bad .health-dot{background:var(--a-danger)}.health-row.neutral .health-dot{background:var(--a-warn)}.error-detail{white-space:pre-wrap;word-break:break-word;background:#7f7f7f1a;border-radius:6px;max-height:280px;margin:6px 0 0;padding:8px;font-size:.78rem;overflow:auto}.backup-list{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:4px;margin:0 0 10px;padding:0;list-style:none;display:grid}.health-actions{flex-wrap:wrap;gap:8px;display:flex}.site{--vellum:#f1e8d6;--paper:#fbf6ea;--paper-2:#efe4cc;--ink:#1c1820;--ink-soft:#5a5049;--wine:#7d1f2e;--wine-text:#fff7ea;--gold:#a87b2a;--gold-bright:#d4a23c;--line:#d6c39c;--night:#0d0b14;--night-2:#1a1326;--night-text:#efe3c6;--night-muted:#b9a98a;--danger:#a3271c;--ok:#3d6b34;--shadow:0 14px 34px #28140a29;background:radial-gradient(ellipse 80% 50% at 50% 0%, #ffffff8c, transparent 70%), var(--vellum);color:var(--ink);flex-direction:column;flex:1;font:18px/1.6 EB Garamond,Georgia,serif;display:flex}@media (prefers-color-scheme:dark){.site{--vellum:#100e14;--paper:#1a1720;--paper-2:#231f2a;--ink:#efe7d6;--ink-soft:#b2a897;--wine:#d0687a;--wine-text:#170a0d;--gold:#d6aa4f;--gold-bright:#e9c46a;--line:#3d3646;--danger:#ef6f62;--ok:#78b86a;--shadow:0 14px 34px #0000008c;background:radial-gradient(ellipse 80% 50% at 50% 0%, #7d1f2e2e, transparent 70%), var(--vellum)}}body:has(.site){--page-bg:#0d0b14}#app:has(.site)>.site-footer{display:none}.site h1,.site h2,.site h3{text-wrap:balance;margin:0 0 .5em;font-family:Cinzel,Georgia,serif;font-weight:600;line-height:1.2}.site h1{letter-spacing:.01em;font-family:Cinzel Decorative,Cinzel,Georgia,serif;font-size:clamp(2.1rem,5.6vw,3.6rem);font-weight:700}.site h2{color:var(--wine);font-size:clamp(1.5rem,3.4vw,2.1rem)}.site h3{font-size:1.12rem}.site a{color:var(--wine);text-underline-offset:3px}.site .muted{color:var(--ink-soft)}.site .small{font-size:.88rem}.site .centered{text-align:center;margin-left:auto;margin-right:auto}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;overflow:hidden;position:absolute!important}.ornament{width:min(320px,70%);height:auto;color:var(--gold);margin:0 auto 18px;display:block}.site-head{z-index:30;background:linear-gradient(#120e1c,#0b0911);border-bottom:1px solid #6e5320;position:sticky;top:0;box-shadow:0 1px #2a2016,0 6px 18px #00000059}.site-head:after{content:"";opacity:.8;background:linear-gradient(90deg,#0000,#a87b2a 20%,#e9c46a 50%,#a87b2a 80%,#0000);height:3px;position:absolute;bottom:-4px;left:0;right:0}.site-head-inner{max-width:1180px;padding-block:10px;padding-left:max(16px, env(safe-area-inset-left,0px));padding-right:max(16px, env(safe-area-inset-right,0px));flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 20px;margin:0 auto;display:flex}.brand{align-items:center;gap:10px;text-decoration:none;display:flex}.brand .crest{filter:drop-shadow(0 2px 3px #0009);flex-shrink:0}.brand-text{flex-direction:column;line-height:1.05;display:flex}.brand-name{color:#f1d792;letter-spacing:.02em;font:700 1.3rem Cinzel Decorative,Georgia,serif}.brand-tag{letter-spacing:.22em;text-transform:uppercase;color:var(--night-muted);font:600 .66rem Cinzel,Georgia,serif}.site-nav{letter-spacing:.04em;flex-wrap:wrap;align-items:center;gap:4px 20px;font:600 .9rem Cinzel,Georgia,serif;display:flex}.site-nav a{border-bottom:1px solid #0000;padding:6px 0;text-decoration:none;color:var(--night-text)!important}.site-nav a:hover{border-bottom-color:#a87b2a;color:#f1d792!important}.site-nav .nav-cta{background:linear-gradient(#d4a23c2e,#d4a23c0a);border:1px solid #a87b2a;padding:6px 14px;color:#f1d792!important}.site-nav .nav-cta:hover{background:#d4a23c47}@media (width<=640px){.site-nav{gap:2px 14px;font-size:.82rem}.brand-tag{display:none}}.site-main{width:100%;max-width:1080px;padding-block:28px 64px;padding-left:max(16px, env(safe-area-inset-left,0px));padding-right:max(16px, env(safe-area-inset-right,0px));flex:1;margin:0 auto}.site-main.narrow{max-width:780px}.site-main>section{margin:0 0 72px}.site-main.inner>h1:first-child,.site-main.inner>article>h1:first-child{text-align:center}.site-main.inner>h1:first-child:after,.site-main.inner>article>h1:first-child:after{content:"";background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 180 14'%3E%3Cpath d='M0 7H72M108 7H180' stroke='%23a87b2a' stroke-width='1.2'/%3E%3Cpath d='M90 1L96 7L90 13L84 7Z' fill='%23a87b2a'/%3E%3C/svg%3E") 50%/contain no-repeat;width:180px;height:14px;margin:12px auto 0;display:block}.page-band{border-bottom:1px solid #6e5320;height:120px;position:relative;overflow:hidden}.page-band .hero-scene{width:100%;height:100%;position:absolute;inset:0}@media (width>=700px){.page-band{height:150px}}.is-home .site-main{max-width:none;padding:0 0 64px}.is-home .site-main>section:not(.hero){max-width:1080px;padding-left:max(16px, env(safe-area-inset-left,0px));padding-right:max(16px, env(safe-area-inset-right,0px));margin:0 auto 80px}.hero{color:var(--night-text);background:var(--night);border-bottom:1px solid #6e5320;position:relative;overflow:hidden;margin-bottom:64px!important}.hero:after{content:"";background:linear-gradient(90deg,#0000,#a87b2a 20%,#e9c46a 50%,#a87b2a 80%,#0000);height:3px;position:absolute;bottom:0;left:0;right:0}.hero .hero-scene{width:100%;height:100%;position:absolute;inset:0}.hero-inner{max-width:1180px;padding-block:64px 80px;padding-left:max(16px, env(safe-area-inset-left,0px));padding-right:max(16px, env(safe-area-inset-right,0px));grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);align-items:center;gap:40px;margin:0 auto;display:grid;position:relative}.hero-copy{min-width:0}.site-main section[id],.hero-cards{scroll-margin-top:96px}.hero h1{color:#f6e2a8;text-shadow:0 2px #00000080,0 0 24px #d4a23c40;margin-bottom:18px;font-size:clamp(2.1rem,4.6vw,3.3rem)}.hero .lead{max-width:54ch;color:var(--night-text);margin:0 0 28px;font-size:clamp(1.1rem,2.1vw,1.28rem)}.eyebrow{letter-spacing:.16em;text-transform:uppercase;color:#f1d792;background:#d4a23c14;border:1px solid #a87b2a;margin:0 0 20px;padding:5px 14px;font:600 .78rem Cinzel,Georgia,serif;display:inline-block}.cta-row{flex-wrap:wrap;gap:12px;margin-bottom:22px;display:flex}.hero-facts{letter-spacing:.08em;text-transform:uppercase;color:var(--night-muted);flex-wrap:wrap;gap:6px 18px;margin:0;font:600 .78rem Cinzel,Georgia,serif;display:flex}.hero-facts span:before{content:"◆";color:#a87b2a;vertical-align:1px;margin-right:8px;font-size:.7em}.hero-cards{min-width:0;padding:12px 0 28px;scroll-margin-top:90px;display:grid;position:relative}.hero-cards>.demo-card{grid-area:1/1;justify-self:center;width:100%;max-width:460px;box-shadow:0 24px 48px #0000008c}.hero-cards>.demo-card:first-child{transform:rotate(-3deg)translate(-24px,-96px)}.hero-cards>.demo-card:last-child{transform:rotate(2.5deg)translate(28px,150px)}.hero-cards{align-items:start;min-height:470px}.hero-cards>a.demo-card:hover{z-index:2;transform:rotate(0)translateY(-6px)scale(1.02)}@media (width<=900px){.hero-inner{grid-template-columns:1fr;gap:28px;padding-block:44px 48px}.hero-cards{gap:18px;min-height:0;padding:0}.hero-cards>.demo-card{grid-area:auto;transform:none!important}}.section-lead{color:var(--ink-soft);max-width:66ch;margin:0 0 22px;font-size:1.1rem}.section-lead.centered,.intro{text-align:center}.steps{counter-reset:step;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;margin:24px 0 0;padding:0;list-style:none;display:grid}.steps li{counter-increment:step;text-align:center;background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow);padding:26px 22px 22px;position:relative}.steps li:before{content:counter(step, upper-roman);letter-spacing:.08em;min-width:30px;color:var(--wine-text);background:var(--wine);border:1px solid var(--gold);padding:2px 10px;font:700 .85rem Cinzel,Georgia,serif;position:absolute;top:-15px;left:50%;transform:translate(-50%)}.steps .icon,.feature-card .icon{color:var(--gold);width:52px;height:52px;margin:0 auto 10px;display:block}.steps h3{color:var(--wine);margin-bottom:6px}.steps p{margin:0;font-size:1rem}.feature-grid{grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:20px;margin-top:8px;display:grid}.feature-card{text-align:center}.feature-card .icon{width:46px;height:46px}.feature-card h3{color:var(--wine);margin-bottom:6px}.feature-card p{margin:0;font-size:1rem}.faq-list{background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow);margin-bottom:16px;padding:6px 26px}.faq-list details{border-bottom:1px solid var(--line);padding:14px 0}.faq-list details:last-child{border-bottom:0}.faq-list summary{cursor:pointer;justify-content:space-between;gap:12px;font:600 1.05rem Cinzel,Georgia,serif;list-style:none;display:flex}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:"+";color:var(--gold);font-size:1.3rem;line-height:1}.faq-list details[open] summary:after{content:"–"}.faq-list details p{margin:10px 0 0}.site-foot{color:var(--night-muted);background:linear-gradient(#0f0c17,#08060b);border-top:1px solid #6e5320;padding-block:34px 26px;position:relative}.site-foot:before{content:"";opacity:.8;background:linear-gradient(90deg,#0000,#a87b2a 20%,#e9c46a 50%,#a87b2a 80%,#0000);height:3px;position:absolute;top:-4px;left:0;right:0}.site-foot-inner{max-width:1080px;padding-left:max(16px, env(safe-area-inset-left,0px));padding-right:max(16px, env(safe-area-inset-right,0px));flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:20px 40px;margin:0 auto 18px;display:flex}.foot-brand{align-items:center;gap:14px;display:flex}.foot-brand strong{color:#f1d792;font:700 1.2rem Cinzel Decorative,Georgia,serif}.foot-brand p{margin:2px 0 0;font-size:.95rem}.foot-nav{letter-spacing:.05em;grid-template-columns:repeat(2,auto);gap:6px 28px;font:600 .82rem Cinzel,Georgia,serif;display:grid}.foot-nav a{text-decoration:none;color:var(--night-text)!important}.foot-nav a:hover{color:#f1d792!important}.foot-ornament{color:#6e5320;width:min(260px,60%);margin-bottom:12px}.foot-legal{text-align:center;padding-left:max(16px, env(safe-area-inset-left,0px));padding-right:max(16px, env(safe-area-inset-right,0px));margin:0;font-size:.85rem}.s-btn{letter-spacing:.05em;text-transform:uppercase;background:var(--paper);border:2px solid var(--gold);cursor:pointer;min-height:46px;box-shadow:inset 0 0 0 3px var(--paper), inset 0 0 0 4px var(--line);border-radius:3px;justify-content:center;align-items:center;gap:6px;padding:10px 20px;font:600 1rem Cinzel,Georgia,serif;text-decoration:none;display:inline-flex;color:var(--ink)!important}.s-btn:hover:not(:disabled){background:var(--paper-2)}.s-btn.primary{background:var(--wine);box-shadow:inset 0 0 0 3px var(--wine), inset 0 0 0 4px var(--gold), 0 4px 0 #0003;color:var(--wine-text)!important}.s-btn.primary:hover:not(:disabled){filter:brightness(1.08);background:var(--wine)}.s-btn.small{min-height:36px;padding:6px 12px;font-size:.85rem}.s-btn.big{min-height:56px;padding:12px 28px;font-size:1.15rem}.s-btn:disabled{opacity:.5;cursor:not-allowed}.site button.link{color:var(--wine);cursor:pointer;font:inherit;background:0 0;border:0;font-size:.9rem;text-decoration:underline}.site :is(input:not([type=checkbox]):not([type=file]),select,textarea){width:100%;font:inherit;color:var(--ink);background:var(--paper);border:1px solid var(--gold);border-radius:3px;min-height:46px;padding:10px 12px}.site :is(input,select,textarea,button,a):focus-visible{outline:3px solid var(--wine);outline-offset:2px}.s-form{flex-direction:column;gap:16px;display:flex}.s-form.inline{flex-flow:wrap;align-items:flex-end}.s-form.inline .s-field{flex:1;min-width:240px}.s-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}@media (width<=640px){.s-grid{grid-template-columns:1fr}}.s-field{flex-direction:column;gap:4px;display:flex}.s-field.wide{grid-column:1/-1}.s-label{letter-spacing:.02em;font:600 .95rem Cinzel,Georgia,serif}.s-field.has-error :is(input,select,textarea){border-color:var(--danger);border-width:2px}.s-error{color:var(--danger);margin:0;font-weight:600}.token-input{letter-spacing:.08em;text-transform:uppercase;font-family:ui-monospace,Cascadia Mono,Consolas,monospace!important}.hp-field{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.consent{align-items:flex-start;gap:10px;font-size:.95rem;display:flex}.consent input{width:20px;height:20px;accent-color:var(--wine);flex-shrink:0;margin-top:3px}.site{--corners:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='28' viewBox='0 0 28 28'%3E%3Cg transform='rotate(0 14 14)'%3E%3Cpath d='M2 26V9Q2 2 9 2H26' fill='none' stroke='%23a87b2a' stroke-width='1.6'/%3E%3Cpath d='M7 26V12Q7 7 12 7H26' fill='none' stroke='%23a87b2a' stroke-width='0.7'/%3E%3Cpath d='M7 2.5L9.5 5L7 7.5L4.5 5Z' fill='%23a87b2a'/%3E%3C/g%3E%3C/svg%3E"), url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='28' viewBox='0 0 28 28'%3E%3Cg transform='rotate(90 14 14)'%3E%3Cpath d='M2 26V9Q2 2 9 2H26' fill='none' stroke='%23a87b2a' stroke-width='1.6'/%3E%3Cpath d='M7 26V12Q7 7 12 7H26' fill='none' stroke='%23a87b2a' stroke-width='0.7'/%3E%3Cpath d='M7 2.5L9.5 5L7 7.5L4.5 5Z' fill='%23a87b2a'/%3E%3C/g%3E%3C/svg%3E"), url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='28' viewBox='0 0 28 28'%3E%3Cg transform='rotate(270 14 14)'%3E%3Cpath d='M2 26V9Q2 2 9 2H26' fill='none' stroke='%23a87b2a' stroke-width='1.6'/%3E%3Cpath d='M7 26V12Q7 7 12 7H26' fill='none' stroke='%23a87b2a' stroke-width='0.7'/%3E%3Cpath d='M7 2.5L9.5 5L7 7.5L4.5 5Z' fill='%23a87b2a'/%3E%3C/g%3E%3C/svg%3E"), url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='28' viewBox='0 0 28 28'%3E%3Cg transform='rotate(180 14 14)'%3E%3Cpath d='M2 26V9Q2 2 9 2H26' fill='none' stroke='%23a87b2a' stroke-width='1.6'/%3E%3Cpath d='M7 26V12Q7 7 12 7H26' fill='none' stroke='%23a87b2a' stroke-width='0.7'/%3E%3Cpath d='M7 2.5L9.5 5L7 7.5L4.5 5Z' fill='%23a87b2a'/%3E%3C/g%3E%3C/svg%3E")}@media (prefers-color-scheme:dark){.site{--corners:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='28' viewBox='0 0 28 28'%3E%3Cg transform='rotate(0 14 14)'%3E%3Cpath d='M2 26V9Q2 2 9 2H26' fill='none' stroke='%23d6aa4f' stroke-width='1.6'/%3E%3Cpath d='M7 26V12Q7 7 12 7H26' fill='none' stroke='%23d6aa4f' stroke-width='0.7'/%3E%3Cpath d='M7 2.5L9.5 5L7 7.5L4.5 5Z' fill='%23d6aa4f'/%3E%3C/g%3E%3C/svg%3E"), url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='28' viewBox='0 0 28 28'%3E%3Cg transform='rotate(90 14 14)'%3E%3Cpath d='M2 26V9Q2 2 9 2H26' fill='none' stroke='%23d6aa4f' stroke-width='1.6'/%3E%3Cpath d='M7 26V12Q7 7 12 7H26' fill='none' stroke='%23d6aa4f' stroke-width='0.7'/%3E%3Cpath d='M7 2.5L9.5 5L7 7.5L4.5 5Z' fill='%23d6aa4f'/%3E%3C/g%3E%3C/svg%3E"), url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='28' viewBox='0 0 28 28'%3E%3Cg transform='rotate(270 14 14)'%3E%3Cpath d='M2 26V9Q2 2 9 2H26' fill='none' stroke='%23d6aa4f' stroke-width='1.6'/%3E%3Cpath d='M7 26V12Q7 7 12 7H26' fill='none' stroke='%23d6aa4f' stroke-width='0.7'/%3E%3Cpath d='M7 2.5L9.5 5L7 7.5L4.5 5Z' fill='%23d6aa4f'/%3E%3C/g%3E%3C/svg%3E"), url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='28' viewBox='0 0 28 28'%3E%3Cg transform='rotate(180 14 14)'%3E%3Cpath d='M2 26V9Q2 2 9 2H26' fill='none' stroke='%23d6aa4f' stroke-width='1.6'/%3E%3Cpath d='M7 26V12Q7 7 12 7H26' fill='none' stroke='%23d6aa4f' stroke-width='0.7'/%3E%3Cpath d='M7 2.5L9.5 5L7 7.5L4.5 5Z' fill='%23d6aa4f'/%3E%3C/g%3E%3C/svg%3E")}}.s-form,.done-box,.status-box,.feature-card,.start>.s-form,.faq-list,.prose-page{background-color:var(--paper);background-image:var(--corners);border:1px solid var(--gold);box-shadow:inset 0 0 0 4px var(--paper), inset 0 0 0 5px var(--line), var(--shadow);background-position:5px 5px,right 5px top 5px,left 5px bottom 5px,right 5px bottom 5px;background-repeat:no-repeat;border-radius:2px;padding:30px}.feature-card{padding:28px 24px}.faq-list{padding:10px 30px}.prose-page{padding:34px clamp(20px,5vw,48px)}.s-form.inline{box-shadow:none;background:0 0;border:0;margin-bottom:20px;padding:0}.s-form .section-lead{margin:0}.done-box h1,.done-box h2{color:var(--wine)}.band{padding:8px 0}.demo-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;display:grid}.demo-card{background:var(--bg);min-height:220px;font-family:var(--font-body);flex-direction:column;gap:14px;padding:20px;text-decoration:none;transition:transform .15s;display:flex;position:relative;overflow:hidden;color:var(--text)!important}a.demo-card:hover{transform:translateY(-3px)}.demo-texture{background-image:var(--texture);opacity:var(--texture-opacity);pointer-events:none;position:absolute;inset:0}.demo-card>:not(.demo-texture){position:relative}.demo-card.family-illuminated{border:2px solid var(--metal);box-shadow:inset 0 0 0 4px var(--bg), inset 0 0 0 5px var(--metal), var(--shadow)}.demo-card.family-illuminated .demo-top{background:var(--accent);color:var(--accent-text);border-bottom:3px double var(--metal);margin:-20px -20px 0;padding:16px 20px}@media (prefers-color-scheme:dark){.demo-card.family-illuminated .demo-top{background:color-mix(in srgb, var(--accent) 30%, #07060a);color:var(--text)}.demo-card.family-illuminated .demo-name{color:var(--metal)}}.demo-card.family-weathered{border:10px solid #0000;border-image:var(--rough-panel) 12 fill / 10px / 0 stretch;filter:drop-shadow(3px 4px #00000040);background:0 0;padding:12px}.demo-card.family-weathered .demo-texture{display:none}.demo-top{align-items:center;gap:12px;display:flex}.demo-name{font:1.3rem var(--font-display);display:block}.demo-what{opacity:.85;font-size:.9rem;display:block}.demo-stats{flex-wrap:wrap;gap:8px;display:flex}.demo-stats span{border:1px solid var(--metal);background:var(--surface);font:1.2rem var(--font-display);flex-direction:column;align-items:center;min-width:74px;padding:6px 12px;display:flex}.demo-stats b{font:600 .65rem var(--font-body);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.demo-cta{color:var(--accent);margin-top:auto;font-weight:600}.dropzone{border:2px dashed var(--gold);text-align:center;background:color-mix(in srgb, var(--paper-2) 60%, transparent);padding:18px}.dropzone.over{background:var(--paper-2);border-style:solid}.dropzone p{margin:0 0 10px}.file-list{text-align:left;margin:14px 0 0;padding:0;list-style:none}.file-list li{border-top:1px solid var(--line);align-items:baseline;gap:10px;padding:6px 0;display:flex}.file-list li span:first-child{overflow-wrap:anywhere;flex:1}.portrait-pick{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.portrait-pick img,.portrait-empty{object-fit:cover;border:2px solid var(--gold);border-radius:50%;width:64px;height:64px}.portrait-empty{color:var(--ink-soft);background:var(--paper-2);place-items:center;font:1.6rem Cinzel,serif;display:grid}.progress{border:2px solid var(--gold);background:var(--paper-2);height:46px;position:relative}.progress div{background:var(--wine);transition:width .2s;position:absolute;inset:0 auto 0 0}.progress span{mix-blend-mode:difference;color:#fff;place-items:center;height:100%;font-weight:600;display:grid;position:relative}.timeline{counter-reset:t;grid-template-columns:repeat(4,1fr);gap:6px;margin:0 0 20px;padding:0;list-style:none;display:grid}.timeline li{counter-increment:t;text-align:center;color:var(--ink-soft);padding-top:34px;font-size:.9rem;position:relative}.timeline li:before{content:"";border:2px solid var(--line);background:var(--paper);width:22px;height:22px;margin-left:-11px;position:absolute;top:2px;left:50%;transform:rotate(45deg)}.timeline li:after{content:counter(t);place-items:center;width:26px;height:26px;margin-left:-13px;font-weight:700;line-height:1;display:grid;position:absolute;top:0;left:50%}.timeline li.done:before{background:var(--ok);border-color:var(--ok)}.timeline li.done:after{content:"✓";color:#fff}.timeline li.current{color:var(--ink);font-weight:600}.timeline li.current:before{background:var(--wine);border-color:var(--gold)}.timeline li.current:after{color:var(--wine-text)}.ready{text-align:center}.issues{background:color-mix(in srgb, var(--danger) 10%, var(--paper));border-left:4px solid var(--danger);padding:10px 10px 10px 30px}.choice-grid{grid-template-columns:1fr 1fr;gap:16px;margin-top:16px;display:grid}@media (width<=640px){.choice-grid{grid-template-columns:1fr}.timeline{grid-template-columns:1fr 1fr;row-gap:14px}}.choice{border:1px solid var(--gold);flex-direction:column;align-items:flex-start;gap:10px;padding:14px;display:flex}.prose-page h2{margin-top:1.4em}.prose-page li{margin-bottom:6px}@media (prefers-reduced-motion:reduce){.demo-card,.progress div{transition:none}}.demo-card .demo-top{background-repeat:no-repeat;min-height:104px;position:relative}.demo-card.family-illuminated .demo-top{background:var(--banner) right center / cover no-repeat, linear-gradient(180deg, #ffffff1f, transparent 40%, #00000040), var(--accent)}.demo-card.family-weathered .demo-top{background:var(--banner) right center / cover no-repeat, var(--surface-alt);border-bottom:2px dashed var(--metal);margin:-12px -12px 0;padding:16px 14px}.demo-card .demo-top img{filter:drop-shadow(0 3px 4px #0006);width:72px;height:72px}.demo-card .demo-name{text-shadow:0 0 8px color-mix(in srgb, var(--accent) 60%, transparent);font-size:1.5rem}.demo-card.family-weathered .demo-name{text-shadow:0 0 6px var(--surface-alt), 0 0 12px var(--surface-alt)}@media (prefers-color-scheme:dark){.demo-card.family-illuminated .demo-top{background:var(--banner) right center / cover no-repeat, linear-gradient(180deg, #ffffff0f, transparent 40%, #00000059), color-mix(in srgb, var(--accent) 30%, #07060a)}}.more-levels{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.dropzone .level-head{justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:6px;display:flex}.levels-hint{margin-top:-6px}.file-list .level-pill{border:1px solid var(--metal);color:var(--accent);border-radius:999px;flex:none;padding:1px 8px;font-size:.75rem}.level-split{border:1px solid var(--metal);background:color-mix(in srgb, var(--accent) 8%, transparent);text-align:left;border-radius:8px;margin-top:12px;padding:12px 14px}.level-split p{margin:0 0 10px}.level-split .cta-row{gap:8px;margin:0}.level-status{margin-top:18px}.level-status .small-h{margin:0 0 6px;font-size:1.05rem}.s-btn.ghost{box-shadow:none;background:#d4a23c0f;border-color:#a87b2a;color:#f1d792!important}.s-btn.ghost:hover:not(:disabled){background:#d4a23c2e}.hero .s-btn.primary{box-shadow:inset 0 0 0 3px var(--wine), inset 0 0 0 4px #d4a23c, 0 6px 18px #00000073}@media (prefers-color-scheme:dark){.hero .s-btn.primary{background:#8f2436;box-shadow:inset 0 0 0 3px #8f2436,inset 0 0 0 4px #e9c46a,0 6px 18px #00000073;color:#fff7ea!important}}@media (prefers-reduced-motion:no-preference){.hero-cards>.demo-card{transition:transform .25s}}@media (width<=640px){.site-head{position:relative}.site-main section[id],.hero-cards{scroll-margin-top:12px}.hero .cta-row .s-btn{flex:100%}.eyebrow{letter-spacing:.12em;font-size:.7rem}}.site-main.inner h1{font-size:clamp(1.8rem,4vw,2.6rem)}@media (width<=900px){.hero-copy{display:contents}.hero-inner{gap:18px}.hero-inner>.eyebrow,.hero-copy>.eyebrow{order:1;justify-self:start;margin-bottom:0}.hero h1{order:2;margin-bottom:0}.hero-cards{order:3}.hero .lead{order:4;margin-bottom:0}.hero .cta-row{order:5;margin-bottom:0}.hero-facts{order:6}.hero-cards{scroll-snap-type:x mandatory;margin-left:calc(-1 * max(16px, env(safe-area-inset-left,0px)));margin-right:calc(-1 * max(16px, env(safe-area-inset-right,0px)));padding:4px max(16px, env(safe-area-inset-left,0px)) 14px;scrollbar-width:none;gap:14px;display:flex;overflow-x:auto}.hero-cards::-webkit-scrollbar{display:none}.hero-cards>.demo-card{scroll-snap-align:center;flex:0 0 86%;max-width:420px;min-height:0}}.next-steps{gap:6px;margin:12px 0 18px;padding-left:20px;display:grid}.wait-demos{border-top:1px solid var(--line);margin-bottom:12px;padding-top:14px}.wait-demos .cta-row{justify-content:flex-start;margin:8px 0 0}.edition-known{align-items:baseline;gap:12px;margin:4px 0 0;font-weight:600;display:flex}.done-box .cta-row{justify-content:flex-start;margin:14px 0 10px}:root{--bg:#faf7f2;--fg:#1f1a14;--muted:#6b6257;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;font-family:system-ui,-apple-system,Segoe UI,sans-serif}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#16130f;--fg:#eee6da;--muted:#a39887}}*{box-sizing:border-box}body{background:var(--page-bg,var(--bg));color:var(--fg);flex-direction:column;min-height:100dvh;margin:0;display:flex}#app{flex-direction:column;flex:1;display:flex}.placeholder{flex:1;width:100%;max-width:720px;margin:0 auto;padding:2rem 16px}.site-footer{color:var(--muted);text-align:center;padding:1rem 16px;font-size:.75rem}
