/*! tailwindcss v4.2.2 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-leading:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial}}}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.z-20{z-index:20}.mx-auto{margin-inline:auto}.box-border{box-sizing:border-box}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.aspect-square{aspect-ratio:1}.h-\[140mm\]{height:140mm}.h-full{height:100%}.min-h-screen{min-height:100vh}.w-\[140mm\]{width:140mm}.w-full{width:100%}.max-w-\[190mm\]{max-width:190mm}.max-w-\[280px\]{max-width:280px}.max-w-\[320px\]{max-width:320px}.max-w-\[560px\]{max-width:560px}.flex-1{flex:1}.scale-90{--tw-scale-x:90%;--tw-scale-y:90%;--tw-scale-z:90%;scale:var(--tw-scale-x) var(--tw-scale-y)}.scale-110{--tw-scale-x:110%;--tw-scale-y:110%;--tw-scale-z:110%;scale:var(--tw-scale-x) var(--tw-scale-y)}.scale-\[0\.98\]{scale:.98}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.touch-manipulation{touch-action:manipulation}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-rows-3{grid-template-rows:repeat(3,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-\[1px\]{gap:1px}.overflow-hidden{overflow:hidden}.overflow-x-hidden{overflow-x:hidden}.rounded-full{border-radius:3.40282e38px}.border{border-style:var(--tw-border-style);border-width:1px}.border-4{border-style:var(--tw-border-style);border-width:4px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-t-2{border-top-style:var(--tw-border-style);border-top-width:2px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-r-4{border-right-style:var(--tw-border-style);border-right-width:4px}.border-r-\[1px\]{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b-2{border-bottom-style:var(--tw-border-style);border-bottom-width:2px}.border-b-4{border-bottom-style:var(--tw-border-style);border-bottom-width:4px}.border-b-\[1px\]{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.bg-transparent{background-color:#0000}.bg-gradient-to-r{--tw-gradient-position:to right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.text-center{text-align:center}.text-right{text-align:right}.text-\[9px\]{font-size:9px}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.leading-none{--tw-leading:1;line-height:1}.tracking-\[0\.3em\]{--tw-tracking:.3em;letter-spacing:.3em}.text-transparent{color:#0000}.capitalize{text-transform:capitalize}.uppercase{text-transform:uppercase}.italic{font-style:italic}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-30{opacity:.3}.opacity-50{opacity:.5}.opacity-55{opacity:.55}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-80{opacity:.8}.opacity-85{opacity:.85}.shadow-\[0_0_20px_rgba\(250\,204\,21\,0\.3\)\]{--tw-shadow:0 0 20px var(--tw-shadow-color,#facc154d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\[0_4px_12px_rgba\(244\,63\,94\,0\.4\)\]{--tw-shadow:0 4px 12px var(--tw-shadow-color,#f43f5e66);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-2{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.blur-\[0\.5px\]{--tw-blur:blur(.5px);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,)}.drop-shadow-\[0_0_6px_rgba\(244\,63\,94\,0\.6\)\]{--tw-drop-shadow-size:drop-shadow(0 0 6px var(--tw-drop-shadow-color,#f43f5e99));--tw-drop-shadow:var(--tw-drop-shadow-size);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,)}.drop-shadow-\[0_0_12px_rgba\(250\,204\,21\,0\.6\)\]{--tw-drop-shadow-size:drop-shadow(0 0 12px var(--tw-drop-shadow-color,#facc1599));--tw-drop-shadow:var(--tw-drop-shadow-size);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,)}.drop-shadow-\[0_4px_10px_rgba\(99\,102\,241\,0\.35\)\]{--tw-drop-shadow-size:drop-shadow(0 4px 10px var(--tw-drop-shadow-color,#6366f159));--tw-drop-shadow:var(--tw-drop-shadow-size);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,)}.grayscale{--tw-grayscale:grayscale(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,)}.filter{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-all{transition-property:all;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.duration-100{--tw-duration:.1s;transition-duration:.1s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.select-none{-webkit-user-select:none;user-select:none}@media (hover:hover){.group-hover\:scale-110:is(:where(.group):hover *){--tw-scale-x:110%;--tw-scale-y:110%;--tw-scale-z:110%;scale:var(--tw-scale-x) var(--tw-scale-y)}}.last\:border-r-0:last-child{border-right-style:var(--tw-border-style);border-right-width:0}.last\:border-b-0:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}@media (hover:hover){.hover\:opacity-100:hover{opacity:1}}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.active\:scale-95:active{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-30:disabled{opacity:.3}@media print{.print\:block{display:block}.print\:hidden{display:none}}@layer base{body{touch-action:manipulation;-webkit-user-select:none;user-select:none;font-family:Outfit,sans-serif;transition:background-color .4s,color .4s}@media print{@page{margin:0;size:auto}html,body{margin:0!important;padding:0!important;font-family:Outfit,sans-serif!important}body{-webkit-print-color-adjust:exact;print-color-adjust:exact;color:#000!important;background-color:#fff!important}.print\:hidden{display:none!important}.print\:block{display:block!important}}}.theme-glass{color:#1e1b4b;background:radial-gradient(circle at 0 0,#e0e7ff,#f3e8ff,#fdf2f8)}.theme-glass .glass-panel{-webkit-backdrop-filter:blur(16px);background:#ffffffb3;border:1px solid #fff6;box-shadow:0 20px 40px -15px #6366f126}.theme-glass .grid-container{background:#312e81;border-color:#4338ca}.theme-glass .grid-cell-empty{color:#6366f1;background:#ffffffe6}.theme-glass .grid-cell-clue{color:#0f172a;background:#f8fafc}.theme-glass .cell-selected{box-shadow:inset 0 0 0 3px #6366f1;background:#e0e7ff!important}.theme-glass .cell-highlight{background:#f1f5f9}.theme-glass .btn-primary{color:#fff;background:linear-gradient(135deg,#6366f1,#8b5cf6);box-shadow:0 4px 15px #6366f14d}.theme-glass .btn-secondary{color:#475569;background:#fffc;border:1px solid #e2e8f0}.theme-glass .btn-active{color:#fff!important;background:#6366f1!important}.theme-cyber{color:#0fc;background:radial-gradient(circle,#0b071e 0%,#03000a 100%);font-family:Outfit,sans-serif}.theme-cyber .glass-panel{-webkit-backdrop-filter:blur(12px);background:#0b071ecc;border:2px solid #ff007f;box-shadow:0 0 25px #ff007f40,inset 0 0 15px #ff007f1a}.theme-cyber .grid-container{background:#03000a;border:3px solid #ff007f;box-shadow:0 0 20px #ff007f66}.theme-cyber .grid-cell-empty{color:#0fc;text-shadow:0 0 8px #0fc9;background:#0d0620;border-color:#ff007f33}.theme-cyber .grid-cell-clue{color:#ff0;text-shadow:0 0 8px #ff09;background:#170d35;border-color:#ff007f33}.theme-cyber .cell-selected{box-shadow:inset 0 0 10px #0fc,0 0 15px #00ffcc80;color:#fff!important;background:#00ffcc26!important}.theme-cyber .cell-highlight{background:#ff007f14}.theme-cyber .btn-primary{color:#fff;text-shadow:0 0 4px #fffc;background:linear-gradient(135deg,#ff007f,#b800ff);border:1px solid #ff007f;box-shadow:0 0 15px #ff007f66}.theme-cyber .btn-secondary{color:#0fc;background:#0d0620cc;border:1px solid #0fc;box-shadow:0 0 10px #0fc3}.theme-cyber .btn-active{text-shadow:none;box-shadow:0 0 15px #0fc9;color:#03000a!important;background:#0fc!important}.theme-retro{color:#39ff14;image-rendering:pixelated;background-color:#0a0e08;font-family:"Press Start 2P",monospace}.theme-retro .glass-panel{background:#0a0e08;border:4px solid #39ff14;box-shadow:8px 8px #1a3010;border-radius:0!important}.theme-retro .grid-container{background:#020501;border:4px solid #39ff14;border-radius:0!important}.theme-retro .grid-cell-empty{color:#39ff14;text-shadow:0 0 4px #39ff14;background:#050a04;border:1px solid #1a3010;border-radius:0!important}.theme-retro .grid-cell-clue{color:#0ff;text-shadow:0 0 4px #0ff;background:#121e0d;border:1px solid #1a3010;border-radius:0!important}.theme-retro .cell-selected{box-shadow:inset 0 0 0 4px #39ff14;color:#fff!important;background:#39ff1440!important;border-radius:0!important}.theme-retro .cell-highlight{background:#39ff1414}.theme-retro .btn-primary{color:#0a0e08;background:#39ff14;border:4px solid #000;font-size:.8rem;box-shadow:4px 4px #1a3010;border-radius:0!important}.theme-retro .btn-secondary{color:#39ff14;background:#0a0e08;border:4px solid #39ff14;font-size:.8rem;box-shadow:4px 4px #1a3010;border-radius:0!important}.theme-retro .btn-active{border:4px solid #000;box-shadow:4px 4px #1a3010;color:#0a0e08!important;background:#0ff!important;border-radius:0!important}.theme-retro *{border-radius:0!important}.btn-tactile{transition:all .2s cubic-bezier(.175,.885,.32,1.275)}.btn-tactile:hover{transform:translateY(-2px)scale(1.02)}.btn-tactile:active{transform:translateY(2px)scale(.97)}.animate-shake{backface-visibility:hidden;perspective:1000px;animation:.4s cubic-bezier(.36,.07,.19,.97) both shake;transform:translate(0)}@keyframes shake{10%,90%{transform:translate(-4px)}20%,80%{transform:translate(8px)}30%,50%,70%{transform:translate(-10px)}40%,60%{transform:translate(10px)}}.theme-cyber .grid-error-flash{animation:.5s ease-in-out cyber-error}@keyframes cyber-error{0%,to{border-color:#ff007f;box-shadow:0 0 20px #ff007f66}50%{border-color:red;box-shadow:0 0 35px red}}.theme-retro .grid-error-flash{animation:.5s ease-in-out retro-error}@keyframes retro-error{0%,to{border-color:#39ff14}50%{background-color:#f003;border-color:red}}.theme-glass .grid-error-flash{animation:.5s ease-in-out glass-error}@keyframes glass-error{0%,to{border-color:#4338ca}50%{background-color:#ef44441a;border-color:#ef4444}}.animate-pop{animation:.3s cubic-bezier(.175,.885,.32,1.5) forwards cell-pop}@keyframes cell-pop{0%{opacity:.5;transform:scale(.6)}to{opacity:1;transform:scale(1)}}.line-shimmer{position:relative;overflow:hidden}.line-shimmer:after{content:"";background:linear-gradient(90deg,#0000 0%,#fff6 50%,#0000 100%);animation:.8s ease-in-out forwards shimmer-sweep;position:absolute;inset:0;transform:translate(-100%)}@keyframes shimmer-sweep{to{transform:translate(100%)}}@keyframes float{0%,to{transform:translateY(0)rotate(0)}50%{transform:translateY(-8px)rotate(15deg)}}.animate-float-slow{animation:4s ease-in-out infinite float}.animate-float-fast{animation:2.5s ease-in-out infinite float}.crt-overlay:after{content:" ";z-index:9999;pointer-events:none;background:linear-gradient(#12101000 50%,#00000040 50%) 0 0/100% 4px,linear-gradient(90deg,#ff00000f,#00ff0005,#0000ff0f) 0 0/6px 100%;display:block;position:fixed;inset:0}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}
