@import"https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700;800;900&family=Barlow:wght@400;500;600;700;800&family=Inter:ital,opsz,wght@0,14..32,400..700;1,14..32,400..700&family=JetBrains+Mono:wght@400;500&display=swap";@property --clip-border-width{syntax: "<length>"; inherits: true; initial-value: 0px;}@property --clip-border-inner-radius{syntax: "<length>"; inherits: true; initial-value: 0px;}@property --clip-border-inset{syntax: "<length>"; inherits: true; initial-value: 0px;}@property --clip-border-radius{syntax: "<length>"; inherits: true; initial-value: 0px;}.glowBtn,.clip-border{--clip-border-inner-radius: calc(var(--clip-border-radius) - var(--clip-border-width));--clip-border-inset: max(var(--clip-border-radius), var(--clip-border-width));position:relative;border:var(--clip-border-width) solid #0000;border-radius:var(--clip-border-radius);background-clip:padding-box;background:var(--clip-border-background);background-clip:text;color:#0000;font-weight:700;text-transform:uppercase;corner-shape:bevel;&:before{content:"";position:absolute;pointer-events:none;inset:calc(-1 * var(--clip-border-width));background:repeating-radial-gradient(#fff0,#000,#fff0 45% 50%),var(--clip-border-background);corner-shape:bevel;border-radius:var(--clip-border-radius);clip-path:shape(evenodd from 0 0,hline to 100%,vline to 100%,hline to 0,move to var(--clip-border-width) var(--clip-border-inset),line by var(--clip-border-inner-radius) calc(-1 * var(--clip-border-inner-radius)),hline to calc(100% - var(--clip-border-inset)),line by var(--clip-border-inner-radius) var(--clip-border-inner-radius),vline to calc(100% - var(--clip-border-inset)),line by calc(-1 * var(--clip-border-inner-radius)) var(--clip-border-inner-radius),hline to var(--clip-border-inset),line by calc(-1 * var(--clip-border-inner-radius)) calc(-1 * var(--clip-border-inner-radius)),)}&:after{content:"";position:absolute;pointer-events:none;inset:calc(-1 * var(--clip-border-width));background:var(--clip-border-background);mask:repeating-linear-gradient(90deg,#0000,#fff8 3px),radial-gradient(#0000,#fff);border-radius:var(--clip-border-radius);opacity:.25;corner-shape:bevel}}.glowBtn{--accent-color: cyan;--clip-border-radius: 4px;--clip-border-width: .75px;--clip-border-background: linear-gradient(90deg, oklch(from var(--accent-color) calc(l - .2) c calc(h - 15) ), var(--accent-color), oklch(from var(--accent-color) calc(l - .2) c calc(h - 15) ) );corner-shape:bevel;cursor:pointer;display:inline grid;font-weight:700;font-size:.875rem;padding:1rem 2rem;place-items:center;transition:filter .25s cubic-bezier(.25,1,.51,1.1);&:after{transition:opacity .25s cubic-bezier(.25,1,.51,1.1)}&:hover{filter:brightness(1.5);&:after{opacity:.3}}&.-primary{--accent-color: orange}&.-secondary{--accent-color: lime}}:root{--base-h: 225;--base-c: .025;--bg-0: oklch(.13 var(--base-c) var(--base-h));--bg-1: oklch(.17 var(--base-c) var(--base-h));--bg-2: oklch(.21 var(--base-c) var(--base-h));--bg-3: oklch(.26 var(--base-c) var(--base-h));--line-1: oklch(.3 var(--base-c) var(--base-h) / .6);--line-2: oklch(.4 var(--base-c) var(--base-h) / .5);--line-3: oklch(.55 var(--base-c) var(--base-h) / .4);--fg-0: oklch(.96 .01 var(--base-h));--fg-1: oklch(.82 .015 var(--base-h));--fg-2: oklch(.62 .015 var(--base-h));--fg-3: oklch(.48 .015 var(--base-h));--accent-h: 210;--accent-l: .76;--accent-c: .17;--cyan: oklch(var(--accent-l) var(--accent-c) var(--accent-h));--amber: oklch(.8 .16 75);--green: oklch(.8 .18 148);--red: oklch(.72 .19 27);--violet: oklch(.72 .17 300);--cyan-dim: oklch(.55 .13 var(--accent-h));--amber-dim: oklch(.58 .12 75);--green-dim: oklch(.58 .14 148);--red-dim: oklch(.52 .15 27);--violet-dim: oklch(.52 .13 300);--glow-k: .5;--glow-sm: calc(4px * var(--glow-k));--glow-md: calc(10px * var(--glow-k));--glow-lg: calc(22px * var(--glow-k));--density-k: 1;--pad-1: calc(4px * var(--density-k));--pad-2: calc(8px * var(--density-k));--pad-3: calc(12px * var(--density-k));--pad-4: calc(16px * var(--density-k));--pad-5: calc(20px * var(--density-k));--pad-6: calc(24px * var(--density-k));--fs-xs: 11px;--fs-sm: 12px;--fs-base: 13px;--fs-md: 14px;--fs-lg: 16px;--fs-xl: 20px;--fs-2xl: 26px;--fs-3xl: 34px;--f-display: "Barlow Condensed", "Helvetica Neue Condensed", Helvetica, sans-serif;--f-wordmark: "Barlow Condensed", "Helvetica Neue Condensed", Helvetica, sans-serif;--f-label: "Barlow", "Helvetica Neue", Helvetica, sans-serif;--f-body: "Inter", "Helvetica Neue", Helvetica, sans-serif;--f-mono: "JetBrains Mono", "IBM Plex Mono", ui-monospace, Menlo, monospace;--pb-xenobiologist: oklch(.78 .16 158);--pb-broker: oklch(.8 .16 75);--pb-tailor: oklch(.72 .04 240);--pb-doctor: oklch(.76 .17 210);--pb-engineer: oklch(.76 .18 50);--pb-theorist: oklch(.68 .17 295);--pb-soldier: oklch(.72 .19 27);--pb-scout: oklch(.8 .18 130);--pb-zealot: oklch(.72 .17 300);--pb-commander: oklch(.7 .17 250);--color-bg: var(--bg-0);--color-surface: var(--bg-1);--color-surface2: var(--bg-2);--color-accent: var(--cyan);--color-success: var(--green);--color-warning: var(--amber);--color-danger: var(--red);--color-text: var(--fg-0);--color-muted: var(--fg-2);--panel-bg: var(--bg-1);--font-sans: var(--f-body);--font-mono: var(--f-mono);--radius-sm: 2px;--radius-md: 2px;--radius-lg: 4px;--radius-xl: 4px}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--f-body);font-size:var(--fs-base);color:var(--fg-0);background:var(--bg-0);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.scroll,::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--line-2);border:2px solid transparent;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background:var(--line-3);background-clip:padding-box}.scroll{overflow-y:auto}.mono-label{font-family:var(--f-display);font-weight:700;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--fg-2)}.display{font-family:var(--f-display);font-weight:700;letter-spacing:.02em}.display-bold{font-family:var(--f-display);font-weight:800;letter-spacing:.015em}.wordmark{font-family:var(--f-wordmark);font-weight:900;letter-spacing:.04em;text-transform:uppercase}.app-bg{background-color:var(--bg-0);background-image:radial-gradient(ellipse 80% 60% at 50% -10%,oklch(var(--accent-l) .06 var(--accent-h) / .06),transparent 60%),radial-gradient(ellipse 60% 50% at 110% 110%,oklch(.6 .08 280 / .05),transparent 60%)}.scanlines{position:relative}.scanlines:after{content:"";position:absolute;inset:0;pointer-events:none;background-image:repeating-linear-gradient(0deg,transparent 0 2px,oklch(1 0 0 / .012) 2px 3px);mix-blend-mode:overlay}.chamfer{--ch: 8px;clip-path:polygon(0 0,calc(100% - var(--ch)) 0,100% var(--ch),100% 100%,var(--ch) 100%,0 calc(100% - var(--ch)))}.chamfer-sm{--ch: 5px}.chamfer-lg{--ch: 12px}.chamfer-x{--ch: 7px;clip-path:polygon(var(--ch) 0,calc(100% - var(--ch)) 0,100% var(--ch),100% calc(100% - var(--ch)),calc(100% - var(--ch)) 100%,var(--ch) 100%,0 calc(100% - var(--ch)),0 var(--ch))}.brackets{position:relative}.brackets:before,.brackets:after{content:"";position:absolute;width:10px;height:10px;border:1px solid var(--cyan);pointer-events:none;filter:drop-shadow(0 0 var(--glow-sm) var(--cyan))}.brackets:before{top:-1px;left:-1px;border-right:none;border-bottom:none}.brackets:after{bottom:-1px;right:-1px;border-left:none;border-top:none}.shimmer{position:relative;overflow:hidden}.shimmer:before{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 0%,transparent 40%,oklch(var(--accent-l) var(--accent-c) var(--accent-h) / .07) 50%,transparent 60%,transparent 100%);transform:translate(-100%);pointer-events:none;transition:transform 0s}.shimmer:hover:before{transform:translate(100%);transition:transform .7s ease}@keyframes pulseGlow{0%,to{box-shadow:0 0 oklch(var(--accent-l) var(--accent-c) var(--accent-h) / .4)}50%{box-shadow:0 0 0 calc(6px * var(--glow-k)) oklch(var(--accent-l) var(--accent-c) var(--accent-h) / 0)}}.pulse{animation:pulseGlow 2s ease-in-out infinite}@keyframes pulseGreen{0%,to{box-shadow:0 0 oklch(from var(--green) l c h / .5)}50%{box-shadow:0 0 0 5px oklch(from var(--green) l c h / 0)}}.pulse-green{animation:pulseGreen 2s ease-in-out infinite}.panel-rh{background:var(--bg-1);border:1px solid var(--line-1);position:relative}.panel-rh-raised{background:var(--bg-2);border:1px solid var(--line-2)}.panel-header-rh{display:flex;align-items:center;gap:var(--pad-2);padding:var(--pad-2) var(--pad-3);border-bottom:1px solid var(--line-1);background:linear-gradient(180deg,oklch(1 0 0 / .03),transparent);min-height:34px}.panel-header-rh .ph-title{font-family:var(--f-display);font-weight:800;font-size:14px;letter-spacing:.12em;text-transform:uppercase;color:var(--fg-0)}.panel-header-rh .ph-count{font-family:var(--f-mono);font-size:var(--fs-xs);color:var(--fg-2);letter-spacing:.1em}.tick-divider{display:flex;align-items:center;gap:10px;color:var(--fg-3);font-family:var(--f-mono);font-size:var(--fs-xs);letter-spacing:.12em;text-transform:uppercase}.tick-divider:before,.tick-divider:after{content:"";flex:1;height:1px;background:linear-gradient(90deg,transparent,var(--line-2),transparent)}.chip-rh{--c: var(--fg-1);display:inline-flex;align-items:center;gap:6px;font-family:var(--f-label);font-weight:700;font-size:11px;letter-spacing:.08em;padding:2px 8px;color:var(--c);background:oklch(from var(--c) l c h / .08);border:1px solid oklch(from var(--c) l c h / .5);text-shadow:0 0 var(--glow-sm) oklch(from var(--c) l c h / .5);box-shadow:0 0 var(--glow-sm) oklch(from var(--c) l c h / .2);text-transform:uppercase;white-space:nowrap;line-height:1.6}.chip-rh .dot{width:6px;height:6px;border-radius:50%;background:var(--c);box-shadow:0 0 var(--glow-sm) var(--c);flex-shrink:0}.chip-rh.chip-healthy{--c: var(--green)}.chip-rh.chip-injured{--c: var(--amber)}.chip-rh.chip-incap{--c: var(--red)}.chip-rh.chip-info{--c: var(--cyan)}.chip-rh.chip-lore{--c: var(--violet)}.chip-rh.chip-muted{--c: var(--fg-2);text-shadow:none;box-shadow:none;background:transparent}.outcome-badge{--c: var(--green);display:inline-flex;align-items:center;justify-content:center;font-family:var(--f-display);font-weight:800;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--c);padding:2px 8px;background:oklch(from var(--c) l c h / .06);border:1.5px solid oklch(from var(--c) l c h / .7);text-shadow:0 0 var(--glow-md) oklch(from var(--c) l c h / .9);box-shadow:0 0 var(--glow-md) oklch(from var(--c) l c h / .35),inset 0 0 var(--glow-sm) oklch(from var(--c) l c h / .15);--ch: 4px;clip-path:polygon(var(--ch) 0,calc(100% - var(--ch)) 0,100% var(--ch),100% calc(100% - var(--ch)),calc(100% - var(--ch)) 100%,var(--ch) 100%,0 calc(100% - var(--ch)),0 var(--ch))}.outcome-badge.outcome-success{--c: var(--green)}.outcome-badge.outcome-mixed{--c: var(--amber)}.outcome-badge.outcome-failure{--c: var(--red)}.stats-block{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:var(--line-1);border:1px solid var(--line-1)}.stats-block__cell{display:flex;flex-direction:column;align-items:center;padding:4px 2px 5px;background:var(--bg-2);gap:1px}.stats-block__label{font-family:var(--f-mono);font-size:9.5px;letter-spacing:.1em;color:var(--fg-2)}.stats-block__value{font-family:var(--f-display);font-weight:800;font-size:var(--fs-md);color:var(--fg-0);line-height:1}.stats-block__cell.pos .stats-block__value{color:var(--green);text-shadow:0 0 var(--glow-sm) oklch(from var(--green) l c h / .5)}.stats-block__cell.neg .stats-block__value{color:var(--red);text-shadow:0 0 var(--glow-sm) oklch(from var(--red) l c h / .5)}.action-tile-rh{--c: var(--fg-1);padding:6px 8px;background:var(--bg-2);border:1px solid var(--line-1);display:flex;flex-direction:column;align-items:flex-start;gap:2px;cursor:pointer;transition:all .12s;position:relative;min-height:40px;text-align:left;width:100%}.action-tile-rh:hover{border-color:oklch(from var(--c) l c h / .6);background:oklch(from var(--bg-2) calc(l + .025) c h);box-shadow:0 0 var(--glow-sm) oklch(from var(--c) l c h / .2)}.action-tile-rh:active{transform:translateY(.5px)}.action-tile-rh:disabled{opacity:.4;cursor:not-allowed}.action-tile-rh.-selected{border-color:oklch(from var(--c) l c h / .7);background:oklch(from var(--c) l c h / .1);box-shadow:0 0 var(--glow-md) oklch(from var(--c) l c h / .3)}.action-tile-rh .tile-name{font-family:var(--f-display);font-weight:700;font-size:12px;letter-spacing:.05em;color:var(--fg-0);line-height:1.1;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.action-tile-rh .tile-tag{font-family:var(--f-mono);font-size:9.5px;letter-spacing:.12em;color:oklch(from var(--c) l c h);text-shadow:0 0 var(--glow-sm) oklch(from var(--c) l c h / .5)}.action-tile-rh.tile-util{--c: var(--cyan)}.action-tile-rh.tile-risk{--c: var(--amber)}.action-tile-rh.tile-playbook{--c: var(--pb-color, var(--cyan))}.id-code-rh{font-family:var(--f-mono);font-size:var(--fs-xs);letter-spacing:.15em;color:var(--cyan);background:oklch(from var(--cyan) l c h / .08);border:1px solid oklch(from var(--cyan) l c h / .4);padding:2px 7px;text-shadow:0 0 var(--glow-sm) oklch(from var(--cyan) l c h / .5)}.mini-btn-rh{font-family:var(--f-mono);font-size:var(--fs-xs);letter-spacing:.08em;padding:3px 8px;color:var(--fg-1);background:transparent;border:1px solid var(--line-2);cursor:pointer;transition:all .12s}.mini-btn-rh:hover{border-color:var(--cyan);color:var(--cyan)}.btn-primary{display:inline-flex;align-items:center;justify-content:center;font-family:var(--f-display);font-weight:800;font-size:13px;letter-spacing:.12em;text-transform:uppercase;padding:7px 16px;min-height:32px;color:var(--cyan);background:linear-gradient(180deg,oklch(from var(--cyan) l c h / .12),oklch(from var(--cyan) l c h / .04));border:1px solid oklch(from var(--cyan) l c h / .55);cursor:pointer;transition:all .12s;text-shadow:0 0 var(--glow-sm) oklch(from var(--cyan) l c h / .6);box-shadow:0 0 var(--glow-sm) oklch(from var(--cyan) l c h / .25);--ch: 5px;clip-path:polygon(var(--ch) 0,calc(100% - var(--ch)) 0,100% var(--ch),100% calc(100% - var(--ch)),calc(100% - var(--ch)) 100%,var(--ch) 100%,0 calc(100% - var(--ch)),0 var(--ch));text-decoration:none;&:not(:disabled):hover{background:linear-gradient(180deg,oklch(from var(--cyan) l c h / .22),oklch(from var(--cyan) l c h / .08));box-shadow:0 0 var(--glow-md) oklch(from var(--cyan) l c h / .5);color:oklch(from var(--cyan) calc(l + .05) c h)}&:not(:disabled):active{transform:translateY(.5px)}&:disabled{opacity:.4;cursor:not-allowed}}.btn-secondary{display:inline-flex;align-items:center;justify-content:center;font-family:var(--f-display);font-weight:800;font-size:13px;letter-spacing:.12em;text-transform:uppercase;padding:7px 16px;min-height:32px;color:var(--fg-1);background:transparent;border:1px solid var(--line-2);cursor:pointer;transition:all .12s;--ch: 5px;clip-path:polygon(var(--ch) 0,calc(100% - var(--ch)) 0,100% var(--ch),100% calc(100% - var(--ch)),calc(100% - var(--ch)) 100%,var(--ch) 100%,0 calc(100% - var(--ch)),0 var(--ch));text-decoration:none;&:not(:disabled):hover{border-color:var(--cyan);color:var(--cyan)}&:not(:disabled):active{transform:translateY(.5px)}&:disabled{opacity:.4;cursor:not-allowed}}.btn-danger{display:inline-flex;align-items:center;justify-content:center;font-family:var(--f-display);font-weight:800;font-size:13px;letter-spacing:.12em;text-transform:uppercase;padding:7px 16px;min-height:32px;color:var(--red);background:oklch(from var(--red) l c h / .08);border:1px solid oklch(from var(--red) l c h / .5);cursor:pointer;transition:all .12s;--ch: 5px;clip-path:polygon(var(--ch) 0,calc(100% - var(--ch)) 0,100% var(--ch),100% calc(100% - var(--ch)),calc(100% - var(--ch)) 100%,var(--ch) 100%,0 calc(100% - var(--ch)),0 var(--ch));&:not(:disabled):hover{background:oklch(from var(--red) l c h / .16)}&:not(:disabled):active{transform:translateY(.5px)}&:disabled{opacity:.4;cursor:not-allowed}}.input-field{width:100%;font-family:var(--f-body);font-size:var(--fs-base);color:var(--fg-0);background:var(--bg-0);border:1px solid var(--line-2);padding:7px 10px;outline:none;transition:border-color .12s,box-shadow .12s;border-radius:0;&:focus{border-color:oklch(from var(--cyan) l c h / .7);box-shadow:0 0 0 1px oklch(from var(--cyan) l c h / .4),0 0 var(--glow-md) oklch(from var(--cyan) l c h / .3)}&::placeholder{color:var(--fg-3)}}.form-label{display:block;font-family:var(--f-mono);font-size:var(--fs-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--fg-2);margin-bottom:.25rem}.condition-healthy{background:oklch(from var(--green) l c h / .1);color:var(--green);border:1px solid oklch(from var(--green) l c h / .4)}.condition-injured{background:oklch(from var(--amber) l c h / .1);color:var(--amber);border:1px solid oklch(from var(--amber) l c h / .4)}.condition-incapacitated{background:oklch(from var(--red) l c h / .1);color:var(--red);border:1px solid oklch(from var(--red) l c h / .4)}.text-success{color:var(--green)}.text-warning{color:var(--amber)}.text-danger{color:var(--red)}.text-accent{color:var(--cyan)}.text-muted{color:var(--fg-2)}.outcome-success{color:var(--green)}.outcome-mixed{color:var(--amber)}.outcome-failure{color:var(--red)}.stat-badge{font-family:var(--f-mono);font-size:.75rem;padding:.125rem .5rem;background:var(--bg-2);border:1px solid var(--line-1);color:var(--fg-2)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulseAccent{0%,to{opacity:1}50%{opacity:.6}}.dice-overlay-enter{animation:fadeIn .3s ease forwards}.dice-overlay-exit{animation:fadeOut .5s ease forwards}.pulse-accent{animation:pulseAccent 2s ease-in-out infinite}
