.menu[data-v-52ed7c3c]{position:relative;height:100%}button[data-v-52ed7c3c]{background:none;border:0;border-radius:0;color:inherit;font:inherit;display:flex;height:100%;padding:5px 10px;gap:5px;align-items:center;cursor:pointer}button[data-v-52ed7c3c]:hover{background:var(--hover-tint)}svg[data-v-52ed7c3c]{width:20px}.menu-items[data-v-52ed7c3c]{background-color:var(--menu-background);border-bottom-left-radius:5px;border-bottom-right-radius:5px;position:absolute;top:100%;left:0;min-width:12rem;z-index:10;display:flex;flex-direction:column;box-shadow:0 8px 24px var(--shadow)}.menu-items.right[data-v-52ed7c3c]{left:auto;right:0}.appear-enter-active[data-v-52ed7c3c],.appear-leave-active[data-v-52ed7c3c]{transition:opacity .2s ease-in-out}.appear-enter-from[data-v-52ed7c3c],.appear-leave-to[data-v-52ed7c3c]{opacity:0}#nav[data-v-6ef1e949]{display:flex;align-items:stretch;height:var(--nav-height);flex-shrink:0;position:relative;z-index:100;background:var(--nav-background);border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}#nav[data-v-6ef1e949]:before{content:"";position:absolute;inset:0 0 auto 0;height:2px;background:linear-gradient(90deg,var(--crimson),transparent 70%)}.main-links[data-v-6ef1e949]{display:flex;align-items:stretch;flex:1;min-width:0}.home-link[data-v-6ef1e949],.nav-link[data-v-6ef1e949]{display:flex;align-items:center;padding:0 14px;color:var(--nav-link);font-size:.875rem;font-weight:500;text-decoration:none;position:relative;white-space:nowrap;transition:color .15s}.home-link[data-v-6ef1e949]{gap:10px;padding-right:22px}.logo[data-v-6ef1e949]{width:26px;height:26px}.wordmark[data-v-6ef1e949]{font-family:var(--font-display);font-size:1.25rem;font-weight:600;letter-spacing:.02em;text-transform:uppercase;color:var(--text-muted)}.wordmark b[data-v-6ef1e949]{font-weight:800;color:var(--title)}.nav-link[data-v-6ef1e949]:hover{color:var(--text)}.nav-link.current[data-v-6ef1e949]{color:var(--title)}.nav-link.current[data-v-6ef1e949]:after{content:"";position:absolute;bottom:0;left:12px;right:12px;height:2px;background:var(--crimson);border-radius:2px 2px 0 0}.user-links[data-v-6ef1e949]{display:flex;align-items:center;gap:14px;padding:0 14px;font-size:.875rem}.user-links a[data-v-6ef1e949]{color:var(--nav-link);text-decoration:none;font-weight:500}.user-links a[data-v-6ef1e949]:hover{color:var(--text)}.user-links .sign-up[data-v-6ef1e949]{color:#fff;padding:6px 12px}.avatar[data-v-6ef1e949]{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--steel-deep);color:var(--steel-bright);font-size:.75rem;font-weight:800}.user-menu[data-v-6ef1e949] .menu-items{border-radius:0 0 10px 10px;overflow:hidden}.user-menu[data-v-6ef1e949] .menu-items button,.user-menu[data-v-6ef1e949] .menu-items a{background:none;border:0;color:var(--text);font:inherit;padding:10px 14px;text-align:left;text-decoration:none;cursor:pointer}.user-menu[data-v-6ef1e949] .menu-items button:hover,.user-menu[data-v-6ef1e949] .menu-items a:hover{background:var(--hover-tint)}@media(max-width:768px){.main-links[data-v-6ef1e949]{overflow-x:auto;scrollbar-width:none}.wordmark[data-v-6ef1e949],.nav-home[data-v-6ef1e949]{display:none}.home-link[data-v-6ef1e949],.nav-link[data-v-6ef1e949]{padding:0 9px}.user-links[data-v-6ef1e949]{padding:0 8px}}footer[data-v-45d6ee98]{position:fixed;bottom:0;z-index:100;width:100%;padding:1px 8px;font-size:.6rem;color:var(--text-faint);background:var(--ink-0);text-align:center;pointer-events:none}footer a[data-v-45d6ee98]{color:inherit;pointer-events:auto}@media(not (min-width:800px))and (orientation:portrait){footer[data-v-45d6ee98]{display:none}}.confirm-delete[data-v-f286b5f4]{width:min(26rem,100vw - 2rem);padding:18px 20px;border:1px solid var(--line-strong);border-radius:8px;background:var(--panel);color:var(--text);box-shadow:0 10px 40px var(--shadow-strong)}.confirm-delete[data-v-f286b5f4]::backdrop{background:#0009;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.confirm-delete h2[data-v-f286b5f4]{margin:0 0 12px;font-size:1.1em;color:var(--title)}.subject[data-v-f286b5f4]{display:flex;align-items:center;gap:12px}.actions[data-v-f286b5f4]{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}.actions button[data-v-f286b5f4]{background:transparent;border:1px solid var(--box-border);border-radius:3px;color:var(--text);cursor:pointer;font:inherit;font-size:.85em;font-weight:700;padding:6px 12px;text-transform:uppercase}.actions button.confirm[data-v-f286b5f4]{background:var(--danger);border-color:var(--danger)}.actions button[data-v-f286b5f4]:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.hero-portrait[data-v-3a26227a]{position:relative;display:block;border-radius:inherit}.hero-portrait[data-v-3a26227a]:after{content:"";position:absolute;inset:auto 0 0 0;height:4px;background:var(--bar)}.game-row[data-v-77f1248a]{--edge: var(--crimson);position:relative;display:flex;align-items:stretch;min-height:104px;border:1px solid var(--line);border-radius:14px;background:var(--ink-2);overflow:hidden;transition:border-color .15s,transform .15s}.game-row[data-v-77f1248a]:hover{border-color:var(--line-strong)}.game-row.won[data-v-77f1248a]{--edge: var(--health)}.game-row.lost[data-v-77f1248a]{--edge: var(--ink-5)}.villain[data-v-77f1248a]{position:relative;flex:0 0 150px}.villain[data-v-77f1248a]:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent 40%,var(--ink-2))}.villain[data-v-77f1248a]:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;z-index:1;background:var(--edge)}.lost .villain[data-v-77f1248a]{filter:grayscale(.7) brightness(.8)}.body[data-v-77f1248a]{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center;gap:4px;padding:12px 16px 12px 4px}.title-line[data-v-77f1248a]{display:flex;align-items:center;gap:10px;min-width:0}.title[data-v-77f1248a]{font-family:var(--font-display);font-size:1.5rem;font-weight:700;line-height:1.1;color:var(--title);text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.title[data-v-77f1248a]:hover{color:#fff;text-decoration:underline;text-decoration-color:var(--crimson);text-underline-offset:4px}.badge[data-v-77f1248a]{flex:none;padding:2px 8px;border-radius:999px;font-size:.65rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.badge.won[data-v-77f1248a]{background:var(--health-deep);color:#9fd8ae}.badge.lost[data-v-77f1248a]{background:var(--ink-4);color:var(--text-muted)}.badge.expert[data-v-77f1248a]{background:var(--crimson-deep);color:#ffb3b7}.meta[data-v-77f1248a]{margin:0;font-size:.8rem;color:var(--text-muted)}.vs[data-v-77f1248a]{color:var(--text);font-weight:600}.seats[data-v-77f1248a]{display:flex;flex-wrap:wrap;gap:8px 14px;margin:6px 0 0;padding:0;list-style:none}.seat[data-v-77f1248a]{display:flex;align-items:center;gap:7px}.seat.eliminated[data-v-77f1248a]{opacity:.4}.face[data-v-77f1248a]{width:30px;height:30px;border-radius:8px;overflow:hidden}.face[data-v-77f1248a]:after{height:0}.seat-name[data-v-77f1248a]{font-size:.82rem;font-weight:600}.seat-damage[data-v-77f1248a]{font-size:.75rem;font-weight:700;color:#f0a4a9}.delete[data-v-77f1248a]{align-self:center;margin-right:14px;padding:8px;border:0;border-radius:8px;background:none;color:var(--text-faint);cursor:pointer}.delete[data-v-77f1248a]:hover{color:var(--danger);background:#d650581a}.delete svg[data-v-77f1248a]{width:18px;height:18px}.confirm-art[data-v-77f1248a]{flex:0 0 64px;height:64px;border-radius:10px}.confirm-details[data-v-77f1248a]{display:flex;flex-direction:column;gap:2px;min-width:0}.confirm-meta[data-v-77f1248a]{color:var(--text-muted);font-size:.85em}@media(max-width:600px){.villain[data-v-77f1248a]{flex-basis:84px}}.segmented-toggle[data-v-8bd1717f]{display:grid;grid-template-columns:repeat(var(--items),minmax(0,1fr));border-radius:5px;background:var(--input-background);border:1px solid var(--box-border);padding:2px;gap:2px;position:relative}.segmented-toggle[data-v-8bd1717f]:before{content:"";background:var(--segmented-accent, var(--button-primary));border-radius:3px;position:absolute;top:2px;bottom:2px;left:2px;width:calc((100% - 4px - (var(--items) - 1) * 2px) / var(--items));transform:translate(calc(var(--index) * (100% + 2px)));transition:transform .22s cubic-bezier(.2,.8,.2,1),background .15s ease;pointer-events:none}label[data-v-8bd1717f]{display:flex;align-items:center;justify-content:center;position:relative;margin:0;padding:6px 8px;border-radius:3px;cursor:pointer;color:var(--text-muted);font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;text-align:center;-webkit-user-select:none;user-select:none;min-width:0}input[data-v-8bd1717f]{position:absolute;width:1px;height:1px;opacity:0}span[data-v-8bd1717f]{overflow-wrap:anywhere}small[data-v-8bd1717f]{margin-left:4px;font-size:inherit;font-variant-numeric:tabular-nums;opacity:.8}label[data-v-8bd1717f]:hover{color:var(--text)}label[data-v-8bd1717f]:has(input:checked){color:var(--segmented-text, var(--button-primary-text))}label[data-v-8bd1717f]:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}label.disabled[data-v-8bd1717f]{color:color-mix(in srgb,var(--text-muted) 45%,transparent);cursor:not-allowed}.segmented-toggle[data-v-8bd1717f]:hover:before{background:var(--segmented-accent-highlight, var(--button-primary-hover))}@media(prefers-reduced-motion:reduce){.segmented-toggle[data-v-8bd1717f]:before{transition:none}}.head[data-v-e50d61d9]{display:flex;align-items:center;gap:12px;margin-bottom:16px;flex-wrap:wrap}.head .page-title[data-v-e50d61d9]{margin:0 auto 0 0}.actions[data-v-e50d61d9]{display:flex;gap:8px}.tabs[data-v-e50d61d9]{width:18rem;margin-bottom:14px}.games[data-v-e50d61d9]{display:grid;gap:10px}.empty[data-v-e50d61d9]{display:flex;align-items:center;justify-content:space-between;gap:16px;color:var(--text-muted);padding:22px}.load-game[data-v-e50d61d9]{display:grid;gap:10px;margin-bottom:16px}.load-actions[data-v-e50d61d9]{display:flex;justify-content:flex-end;gap:8px}.file-picker[data-v-e50d61d9]{display:block;border:1px dashed var(--line-strong);border-radius:10px;padding:20px;text-align:center;color:var(--text-muted);cursor:pointer}.file-picker[data-v-e50d61d9]:hover{border-color:var(--crimson);color:var(--text)}.file-picker input[data-v-e50d61d9]{display:none}.import-error[data-v-e50d61d9]{margin:0;color:var(--danger)}.watchable[data-v-e50d61d9]{margin-top:36px}.sub-head[data-v-e50d61d9]{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:10px}.sub-head h2[data-v-e50d61d9]{margin:0;font-size:1.4rem;text-transform:uppercase;color:var(--text-muted)}.campaign-row[data-v-e50d61d9]{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 16px;color:var(--text);text-decoration:none}.campaign-row span[data-v-e50d61d9]{color:var(--text-muted);font-size:.9rem}.campaign-row .next[data-v-e50d61d9]{margin-left:auto;color:var(--amber)}.fade-enter-active[data-v-e50d61d9],.fade-leave-active[data-v-e50d61d9]{transition:opacity .2s}.fade-enter-from[data-v-e50d61d9],.fade-leave-to[data-v-e50d61d9]{opacity:0}:root{--card-width: clamp(58px, min(7.4vw, 12.4vh), 124px);--card-aspect: .716;--gap: 10px;--nav-height: 46px;--font-display: "Barlow Condensed", "Arial Narrow", system-ui, sans-serif;--font-ui: "Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-title: var(--font-display);--ink-0: #0b0d12;--ink-1: #11141b;--ink-2: #161a23;--ink-3: #1d222d;--ink-4: #262c39;--ink-5: #313847;--crimson: #b8323a;--crimson-bright: #d2434b;--crimson-deep: #6e1d23;--steel: #5b8db8;--steel-bright: #8fb6da;--steel-deep: #24384d;--amber: #e2a33b;--amber-deep: #6b4a16;--health: #4fae6a;--stat-thw: #5d9be0;--stat-sch: #5d9be0;--stat-atk: #e0535b;--stat-def: #52b36c;--stat-rec: #e6c43f;--health-deep: #1d4a2c;--violet: #8e7cc3;--aggression: #c9474e;--justice: #d8b545;--leadership: #4f8bd0;--protection: #4cab6c;--basic: #8f97a6;--hero: #7aa2c8;--encounter: #b0773f;--campaign: #5aa7a2;--pool: #b56fbf;--surface-0: var(--ink-0);--surface-1: var(--ink-2);--surface-2: var(--ink-3);--surface-3: var(--ink-4);--surface-4: var(--ink-5);--well: #090b0f;--text: #e7eaf0;--text-muted: #a3abba;--text-faint: #6d7688;--title: #f2f4f8;--accent: var(--crimson);--accent-bright: var(--crimson-bright);--hero-tone: var(--steel);--danger: #d65058;--success: var(--health);--cream-muted: var(--text-muted);--cream-faint: var(--text-faint);--cream: var(--text);--interactive: #4cc8ff;--interactive-glow: rgb(76 200 255 / .55);--target: #ffb547;--page-background: var(--ink-1);--panel: rgb(22 26 35 / .97);--box-background: var(--ink-2);--box-border: var(--line);--line: rgb(255 255 255 / .08);--line-strong: rgb(255 255 255 / .16);--input-background: var(--well);--nav-background: rgb(13 15 21 / .96);--nav-link: var(--text-muted);--bar-background: var(--ink-2);--menu-background: var(--ink-4);--menu-section-text: var(--text-faint);--button-primary: var(--crimson);--button-primary-hover: var(--crimson-bright);--button-primary-text: #fff;--button-secondary: var(--ink-4);--button-secondary-hover: var(--ink-5);--button-disabled: var(--ink-4);--button-disabled-text: var(--text-faint);--hover-tint: rgb(255 255 255 / .06);--highlight-tint: rgb(184 50 58 / .14);--subtle-tint: rgb(255 255 255 / .04);--shadow: rgb(0 0 0 / .5);--shadow-strong: rgb(0 0 0 / .8);--threat-red: var(--amber);--attack: #f08a4b;--defense: var(--steel-bright);--willpower: var(--amber);--phase-player: var(--steel);--phase-villain: var(--crimson);color-scheme:dark}*{box-sizing:border-box}img{color:transparent}html,body{height:100%}html{-webkit-text-size-adjust:100%}#app{display:flex;flex-direction:column;height:100dvh;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}body{margin:0;color:var(--text);font-family:var(--font-ui);font-size:15px;background:radial-gradient(1200px 600px at 80% -10%,rgb(184 50 58 / .07),transparent 60%),radial-gradient(900px 500px at -10% 110%,rgb(91 141 184 / .07),transparent 60%),var(--page-background);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}h1,h2,h3,.display{font-family:var(--font-display);font-weight:700;letter-spacing:.01em}a{color:var(--steel-bright)}button,a,input,select,label,[data-card-id]{touch-action:manipulation}.page-container{flex:1;min-height:0;overflow-y:auto;scrollbar-gutter:stable;padding:28px 16px 40px}.page-content{width:min(1100px,100%);margin:0 auto}.page-title{margin:0 0 14px;color:var(--title);font-size:2.3rem;line-height:1;text-transform:uppercase;letter-spacing:.02em}.page-title:before{content:"";display:inline-block;width:6px;height:.8em;margin-right:12px;border-radius:2px;background:var(--crimson);vertical-align:.02em}.box{background:var(--box-background);border:1px solid var(--box-border);color:var(--text);padding:16px;border-radius:10px}.box.error{border-color:var(--danger);color:var(--danger)}.box p{margin:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:9px 16px;border:1px solid var(--line-strong);border-radius:8px;background:var(--ink-4);color:var(--text);font:inherit;font-size:.875rem;font-weight:600;cursor:pointer;transition:background .15s,border-color .15s,transform .1s;text-decoration:none;white-space:nowrap}.btn:hover:not(:disabled){background:var(--ink-5)}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn svg{width:16px;height:16px}.btn.primary{background:var(--crimson);border-color:var(--crimson);color:#fff}.btn.primary:hover:not(:disabled){background:var(--crimson-bright);border-color:var(--crimson-bright)}.btn.ghost{background:transparent;border-color:transparent;color:var(--text-muted)}.btn.ghost:hover:not(:disabled){background:var(--hover-tint);color:var(--text)}.btn.big{padding:13px 22px;font-size:1rem}.input,.page-container input[type=text],.page-container input[type=email],.page-container input[type=password],.page-container input[type=url]{font:inherit;color:var(--text);background:var(--input-background);border:1px solid var(--line-strong);border-radius:8px;padding:10px 12px;outline:0}.input:focus,.page-container input:focus{border-color:var(--steel);box-shadow:0 0 0 3px #5b8db833}select.input{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:34px;background:var(--input-background) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%239aa4b2' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 12px center;cursor:pointer}.aspect-chip{--chip: var(--basic);display:inline-flex;align-items:center;gap:5px;padding:2px 8px 2px 6px;border-radius:999px;background:color-mix(in srgb,var(--chip) 16%,transparent);border:1px solid color-mix(in srgb,var(--chip) 45%,transparent);color:color-mix(in srgb,var(--chip) 70%,white);font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;line-height:1.5;white-space:nowrap}.aspect-chip:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--chip)}[data-aspect=aggression]{--chip: var(--aggression);--aspect: var(--aggression)}[data-aspect=justice]{--chip: var(--justice);--aspect: var(--justice)}[data-aspect=leadership]{--chip: var(--leadership);--aspect: var(--leadership)}[data-aspect=protection]{--chip: var(--protection);--aspect: var(--protection)}[data-aspect=basic]{--chip: var(--basic);--aspect: var(--basic)}[data-aspect=hero]{--chip: var(--hero);--aspect: var(--hero)}[data-aspect=encounter]{--chip: var(--encounter);--aspect: var(--encounter)}[data-aspect=campaign]{--chip: var(--campaign);--aspect: var(--campaign)}[data-aspect=pool]{--chip: var(--pool);--aspect: var(--pool)}.portrait{display:block;background-color:var(--ink-4);background-size:132% auto;background-position:95% 19%;background-repeat:no-repeat}.portrait.square{background-size:165% auto;background-position:72% 22%}.switch{display:flex;align-items:center;gap:10px;color:var(--text);font-size:.9rem;cursor:pointer}.switch input{position:absolute;opacity:0;pointer-events:none}.switch .track{position:relative;flex:none;width:38px;height:22px;border-radius:11px;background:var(--ink-5);transition:background .15s}.switch .track:after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;transition:translate .15s}.switch input:checked+.track{background:var(--crimson)}.switch input:checked+.track:after{translate:16px 0}.switch input:focus-visible+.track{outline:2px solid var(--steel-bright);outline-offset:2px}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%23a3abba' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;background-size:.7rem;padding-right:2.2rem}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}::selection{background:#b8323a66}*{scrollbar-width:thin;scrollbar-color:var(--ink-5) transparent}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition-duration:0s!important;animation-duration:0s!important}}.stat-thw{--stat-bg: color-mix(in oklab, var(--stat-thw) 62%, black)}.stat-sch{--stat-bg: color-mix(in oklab, var(--stat-sch) 62%, black)}.stat-atk{--stat-bg: color-mix(in oklab, var(--stat-atk) 62%, black)}.stat-def{--stat-bg: color-mix(in oklab, var(--stat-def) 62%, black)}.stat-rec{--stat-bg: color-mix(in oklab, var(--stat-rec) 62%, black)}:is(.stat-thw,.stat-sch,.stat-atk,.stat-def,.stat-rec){--stat-fg: #fff;--stat-label: rgb(255 255 255 / .8)}::view-transition-old(*),::view-transition-new(*){animation-duration:.28s}@keyframes deal-turn-away{0%{transform:rotateY(0)}50%,to{transform:rotateY(90deg)}}@keyframes deal-turn-up{0%,50%{transform:rotateY(-90deg)}to{transform:rotateY(0)}}@media(prefers-reduced-motion:reduce){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}}
