*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,*:before,*:after{box-sizing:border-box;margin:0;padding:0;border-radius:0!important}html,body,#root{height:100%}body{font-family:var(--font-mono);font-size:var(--text-base);font-weight:var(--weight-regular);line-height:var(--leading-normal);color:var(--text-primary);background:var(--ground);-webkit-font-smoothing:antialiased}a{color:var(--cyan);text-decoration:none;border-bottom:1px solid var(--cyan-dim)}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-hard)}.display{font-family:var(--font-serif);font-size:var(--text-2xl);font-weight:var(--weight-regular);line-height:var(--leading-tight);color:var(--text-primary);letter-spacing:-.02em}.display-lg{font-family:var(--font-serif);font-size:var(--text-3xl);font-weight:var(--weight-regular);line-height:var(--leading-tight);color:var(--text-primary);letter-spacing:-.02em}.subheading{font-family:var(--font-serif);font-size:var(--text-lg);font-weight:var(--weight-regular);line-height:var(--leading-normal);color:var(--text-primary)}.rupture{font-family:var(--font-serif);font-style:normal}.field-label{display:block;font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-bold);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.12em;margin-bottom:var(--space-xs)}.input-field{font-family:var(--font-mono);font-size:var(--text-base);color:var(--text-primary);background:var(--ground-sunken);border:1px solid var(--border-hard);padding:var(--space-sm) var(--space-md);width:100%;transition:border-color .15s}.input-field:focus{outline:none;border-color:var(--yellow);box-shadow:0 0 0 1px var(--yellow)}.input-field::-moz-placeholder{color:var(--text-muted)}.input-field::placeholder{color:var(--text-muted)}.textarea{min-height:140px;resize:vertical;line-height:var(--leading-normal)}.badge{display:inline-block;font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-bold);letter-spacing:.08em;text-transform:uppercase;padding:2px 10px;transform:rotate(1.5deg);background:var(--magenta);color:#fff}.badge--yellow{background:var(--yellow);color:var(--ground)}.badge--red{background:var(--vermillion);color:#fff}.badge--cyan{background:var(--cyan);color:#fff}.badge--earth{background:#c09a6a;color:var(--ground)}.badge--flat{transform:none}.btn-primary{font-family:var(--font-mono);font-size:var(--text-sm);font-weight:var(--weight-bold);text-transform:uppercase;letter-spacing:.08em;background:var(--yellow);color:var(--ground);border:none;padding:var(--space-sm) var(--space-lg);cursor:pointer;transition:background .1s,transform .1s;flex:1}.btn-primary:hover{background:var(--yellow-bright)}.btn-primary:active{transform:scale(.97)}.btn-primary.copied{background:var(--cyan);color:#fff}.btn-secondary{font-family:var(--font-mono);font-size:var(--text-sm);font-weight:var(--weight-bold);text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);background:var(--ground-raised);border:1px solid var(--border-hard);padding:var(--space-sm) var(--space-md);cursor:pointer;transition:border-color .1s,color .1s}.btn-secondary:hover{border-color:var(--text-secondary);color:var(--text-secondary)}.tab-bar{display:flex;gap:0;border-bottom:1px solid var(--border-hard);flex-shrink:0}.tab{font-family:var(--font-mono);font-size:var(--text-sm);font-weight:var(--weight-bold);text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);background:none;border:none;border-bottom:2px solid transparent;padding:var(--space-sm) var(--space-md);cursor:pointer;transition:color .15s,border-color .15s;margin-bottom:-1px}.tab:hover{color:var(--text-secondary)}.tab.active{color:var(--yellow);border-bottom-color:var(--yellow)}.anchor-block{font-size:var(--text-sm);color:var(--text-muted);font-style:italic;line-height:var(--leading-normal);padding:var(--space-sm) var(--space-md);border-left:2px solid var(--cyan);background:#2b8fad0d;margin:var(--space-md) 0}.warning-note{padding:var(--space-sm) var(--space-md);font-size:var(--text-sm);line-height:var(--leading-normal);background:#d94a2e12;border:1px solid rgba(217,74,46,.2);color:var(--vermillion-bright)}.info-note{padding:var(--space-sm) var(--space-md);font-size:var(--text-sm);line-height:var(--leading-normal);background:#2b8fad0d;border:1px solid rgba(43,143,173,.2);color:var(--text-muted)}.info-note strong{color:var(--cyan)}.type-btn{padding:5px 12px;background:var(--ground-raised);border:1px solid var(--border-hard);color:var(--text-muted);font-size:var(--text-sm);font-family:var(--font-mono);cursor:pointer;transition:all .15s}.type-btn:hover{border-color:var(--yellow);color:var(--text-secondary)}.type-btn.active{background:var(--yellow);border-color:var(--yellow);color:var(--ground);font-weight:var(--weight-bold)}.ex-btn{padding:3px 9px;background:var(--ground-raised);border:1px solid var(--border-hard);color:var(--text-muted);font-size:var(--text-xs);font-family:var(--font-mono);cursor:pointer;transition:all .15s}.ex-btn:hover{border-color:var(--yellow);color:var(--text-secondary)}.move-card{background:var(--ground-raised);border:1px solid var(--border-hard);padding:10px 12px}.move-name{font-size:var(--text-xs);font-weight:var(--weight-bold);text-transform:uppercase;letter-spacing:.08em;color:var(--vermillion);margin-bottom:5px}.move-body{font-size:var(--text-sm);color:var(--text-muted);line-height:var(--leading-normal)}.tag-row{display:flex;gap:6px;flex-wrap:wrap}.tag{padding:3px 10px;font-size:var(--text-xs);font-weight:var(--weight-bold)}.tag-pro{background:#e8c8401a;border:1px solid rgba(232,200,64,.25);color:var(--yellow)}.tag-con{background:#d94a2e1a;border:1px solid rgba(217,74,46,.25);color:var(--vermillion-bright)}.rule-card{background:var(--ground-raised);border:1px solid var(--border-hard);padding:12px 14px}.rule-card+.rule-card{margin-top:8px}.rule-name{font-size:var(--text-xs);font-weight:var(--weight-bold);text-transform:uppercase;letter-spacing:.1em;color:var(--yellow);margin-bottom:6px}.rule-body{font-size:var(--text-sm);color:var(--text-secondary);line-height:var(--leading-normal)}.cursor-blink:after{content:"_";animation:blink 1s step-end infinite}@keyframes blink{50%{opacity:0}}.visible{visibility:visible}.invisible{visibility:hidden}.collapse{visibility:collapse}.fixed{position:fixed}.relative{position:relative}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.table{display:table}.grid{display:grid}.hidden{display:none}.resize{resize:both}.border{border-width:1px}.uppercase{text-transform:uppercase}.italic{font-style:italic}.invert{--tw-invert: invert(100%);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}:root{--ground: #1A1714;--ground-raised: #242018;--ground-sunken: #110F0C;--ground-light: #F7F3EE;--text-primary: #E8E0D0;--text-secondary: #A89E8C;--text-muted: #6B6358;--text-on-light: #1A1714;--vermillion: #D94A2E;--vermillion-dim: #8B2F1C;--vermillion-bright: #F06040;--yellow: #E8C840;--yellow-dim: #8B7A28;--yellow-bright: #F5DC6A;--magenta: #C42B5E;--magenta-dim: #7A1B3B;--magenta-bright: #E8407A;--cyan: #2B8FAD;--cyan-dim: #1A5C70;--cyan-bright: #48C4E8;--border-hard: #3A3530;--border-faint: #2A2620;--border-loud: #E8E0D0;--font-mono: "IBM Plex Mono", "Courier New", monospace;--font-serif: "Libre Baskerville", "Georgia", serif;--text-xs: 11px;--text-sm: 12px;--text-base: 14px;--text-lg: 16px;--text-xl: 18px;--text-2xl: 24px;--text-3xl: 32px;--weight-regular: 400;--weight-bold: 700;--leading-tight: 1.2;--leading-normal: 1.5;--leading-loose: 1.7;--space-xs: 4px;--space-sm: 8px;--space-md: 16px;--space-lg: 24px;--space-xl: 40px}
