:root{--bg-primary:#9cf;--bg-secondary:#fff;--bg-tertiary:#e8e8e8;--bg-accent:#ffc;--text-primary:#000;--text-secondary:#333;--text-muted:#666;--accent-primary:#00f;--accent-secondary:#06c;--accent-hover:red;--border-primary:grey;--border-secondary:silver;--border-accent:#006;--success:green;--warning:#f90;--error:red;--heading-color:#039;--spacing-xs:4px;--spacing-sm:8px;--spacing-md:16px;--spacing-lg:24px;--spacing-xl:32px}*{box-sizing:border-box;margin:0;padding:0}html{margin:auto;max-width:800px;padding:0 8px}body{background-image:radial-gradient(circle,#0000660f 1px,#0000 0);background-size:16px 16px;font-size:13px;font-weight:400;line-height:1.5;min-height:100vh}.content-container{background:var(--bg-secondary);border:3px ridge var(--border-primary);display:grid;margin-bottom:12px;padding:16px}.preview-container{background-color:#fff;border:2px inset var(--border-primary);height:400px;overflow:auto;padding:12px}a{color:var(--accent-primary);font-weight:400;text-decoration:underline}a:visited{color:purple}a:hover{color:var(--accent-hover)}a:active{color:red}ul{list-style:square;margin-left:24px}textarea{background-color:var(--bg-secondary);border:2px inset var(--border-primary);color:var(--text-primary);font-family:Courier New,Courier,monospace;font-size:13px;padding:8px;resize:vertical}textarea:focus{outline:1px dotted var(--text-primary)}iframe{border:2px inset var(--border-primary);width:100%}code{font-size:13px}h1,h2,h3,h4,h5,h6{color:var(--heading-color);font-family:Comic Sans MS,Chalkboard SE,cursive;font-weight:700;line-height:1.3;margin-bottom:12px}h1{font-size:1.6rem;text-align:center}h2{font-size:1.3rem}h3{font-size:1.15rem}h4{font-size:1.05rem}p{color:var(--text-secondary);line-height:1.5;margin-bottom:8px}hr{background:linear-gradient(to right,#0000,var(--heading-color),#f0f,var(--heading-color),#0000);border:none;height:2px;margin:16px 0}@keyframes marquee{0%{transform:translateX(100%)}to{transform:translateX(-100%)}}.marquee{background:var(--bg-accent);border:2px inset var(--border-primary);overflow:hidden;padding:6px 0;white-space:nowrap}.marquee span{animation:marquee 20s linear infinite;color:#f0f;display:inline-block;font-family:Comic Sans MS,cursive;font-size:14px;font-weight:700}.star-divider{color:var(--heading-color);font-size:10px;letter-spacing:6px;margin:12px 0;text-align:center}.retro-footer{background:#006;border:3px ridge var(--border-primary);color:#ccc;font-size:11px;line-height:1.8;margin-top:12px;padding:16px;text-align:center}.retro-footer a{color:#9cf}.retro-footer a:visited{color:#c9f}.retro-footer a:hover{color:#fc0}.retro-footer p{color:#ccc;font-size:11px;margin-bottom:4px}.retro-badge{background:silver;border:2px outset silver;color:#000;display:inline-block;font-family:Verdana,sans-serif;font-size:10px;margin:4px 2px;padding:2px 8px}::-webkit-scrollbar{height:16px;width:16px}::-webkit-scrollbar-track{background:silver}::-webkit-scrollbar-thumb{background:silver;border:2px outset #fff}::-webkit-scrollbar-thumb:hover{background:#a0a0a0}::-webkit-scrollbar-button{background:silver;border:1px outset #fff;display:block;height:16px;width:16px}body{background-color:var(--bg-primary);font-family:Verdana,Geneva,Arial,Helvetica,sans-serif;margin:0}body,code{color:var(--text-primary)}code{background-color:var(--bg-tertiary);font-family:Courier New,Courier,monospace;padding:1px 4px}.header{align-items:center;background:#006;border-bottom:3px ridge grey;display:flex;justify-content:space-between;margin-bottom:12px;padding:0;position:-webkit-sticky;position:sticky;top:0;width:100%;z-index:1000}.logo{display:inline-block;font-family:Comic Sans MS,cursive,Verdana,sans-serif;font-size:22px;font-weight:700;padding:8px 16px;text-decoration:none}.logo,.logo:visited{color:#fc0}.logo:hover{color:#fff;text-decoration:none}.nav{background:#006;height:100vh;left:0;overflow:hidden;position:fixed;top:0;transform:translateX(-100%);transition:transform .3s ease;width:100%;z-index:999}.nav.open{transform:translateX(0)}.menu{align-items:center;display:flex;flex-direction:column;gap:0;height:100%;list-style:none;margin:0;padding-top:60px}.menu a{border-bottom:1px solid #039;color:#fff;display:block;font-family:Verdana,sans-serif;font-size:14px;font-weight:400;padding:12px 24px;text-align:center;text-decoration:none;width:100%}.menu a:visited{color:#ccf}.menu a:hover{background:#039;color:#fc0;text-decoration:underline}.hamb{align-items:center;background:none;border:none;cursor:pointer;display:flex;justify-content:center;padding:12px;position:relative;z-index:1001}.hamb:focus{outline:1px dotted #fc0}.hamb-line{height:3px;position:relative;width:20px}.hamb-line,.hamb-line:after,.hamb-line:before{background:#fff;display:block;transition:all .3s ease}.hamb-line:after,.hamb-line:before{content:"";height:100%;position:absolute;width:100%}.hamb-line:before{top:6px}.hamb-line:after{top:-6px}.hamb.open .hamb-line{background:#0000}.hamb.open .hamb-line:before{background:#fc0;top:0;transform:rotate(-45deg)}.hamb.open .hamb-line:after{background:#fc0;top:0;transform:rotate(45deg)}@media (min-width:768px){.nav{background:#0000;position:relative;transform:translateX(0);transition:none;width:-webkit-fit-content;width:fit-content}.menu,.nav{height:auto}.menu{flex-direction:row;gap:0;padding:0 8px}.menu li{border-left:1px solid #369;height:auto}.menu li:last-child{border-right:1px solid #369}.menu a{border-bottom:none;font-size:12px;padding:8px 16px;width:auto}.hamb{display:none}}.column-container{display:flex;flex:auto;flex-direction:column;gap:var(--spacing-md);max-width:50%;padding:var(--spacing-sm)}.column-container>p{font-family:Verdana,sans-serif;font-size:12px;font-weight:700;margin-left:var(--spacing-sm)}.row-container{align-items:flex-start;display:flex;flex:auto;flex-direction:row;gap:var(--spacing-lg);justify-content:center;padding:var(--spacing-md)}@media (max-width:768px){.row-container{align-items:center;flex-direction:column}.column-container{max-width:100%;width:100%}}.diffy-input-container{display:flex;flex-wrap:wrap;gap:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.text-input-section{flex:1 1;min-width:280px}.text-input-section label{color:var(--text-primary);display:block;font-family:Verdana,sans-serif;font-size:12px;font-weight:700;margin-bottom:var(--spacing-sm)}.text-input-section textarea{background-color:var(--bg-secondary);border:2px inset var(--border-primary);color:var(--text-primary);font-family:Courier New,Courier,monospace;font-size:12px;line-height:1.4;padding:var(--spacing-sm);resize:vertical;width:100%}.text-input-section textarea:focus{outline:1px dotted var(--text-primary)}.diffy-buttons{display:flex;gap:var(--spacing-md);justify-content:center;margin:var(--spacing-lg) 0}.diffy-button{cursor:pointer;font-family:Verdana,sans-serif;font-size:12px;font-weight:700;padding:4px 20px}.diffy-button.primary{background-color:silver;border:2px outset #fff;color:#000}.diffy-button.primary:hover{background-color:#d0d0d0}.diffy-button.primary:active{border-style:inset}.diffy-button.secondary{background-color:silver;border:2px outset #fff;color:#000}.diffy-button.secondary:hover{background-color:#d0d0d0}.diffy-button.secondary:active{border-style:inset}.diff-summary{background:var(--bg-accent);border:2px ridge var(--border-primary);margin-bottom:var(--spacing-md);padding:var(--spacing-md)}.diff-summary h3{color:var(--heading-color);margin-top:0}.diff-summary p{color:var(--text-secondary);font-size:12px;margin:var(--spacing-xs) 0}.diff-content h4{color:var(--heading-color);font-weight:700;margin-bottom:var(--spacing-md)}.diff-container{background-color:var(--bg-secondary);border:2px inset var(--border-primary);font-family:Courier New,Courier,monospace;font-size:12px;line-height:1.4;max-height:400px;overflow-y:auto}.diff-line{border-left:4px solid #0000;display:flex;margin:0;padding:1px 0}.diff-line.added{background-color:#cfc;border-left-color:var(--success)}.diff-line.removed{background-color:#fcc;border-left-color:var(--error)}.diff-line.unchanged{background-color:var(--bg-tertiary);border-left-color:var(--border-secondary)}.line-number{background-color:#e0e0e0;border-right:1px solid var(--border-primary);color:var(--text-muted);display:inline-block;flex-shrink:0;padding:0 var(--spacing-sm);text-align:right;-webkit-user-select:none;user-select:none;width:50px}.diff-line.added .line-number{color:var(--success);font-weight:700}.diff-line.removed .line-number{color:var(--error);font-weight:700}.line-content{flex:1 1;padding:0 var(--spacing-sm);white-space:pre-wrap;word-break:break-word}.diff-line.added .line-content{color:#060}.diff-line.removed .line-content{color:#c00}.diff-line.unchanged .line-content{color:var(--text-secondary)}.side-by-side-container{background-color:var(--bg-secondary);border:2px ridge var(--border-primary);display:flex;margin-top:var(--spacing-md);max-height:400px;overflow:hidden}.side-by-side-column{display:flex;flex:1 1;flex-direction:column;min-width:0}.side-by-side-column:first-child{border-right:2px groove var(--border-primary)}.side-by-side-header{background:silver;border-bottom:2px groove var(--border-primary);color:var(--text-primary);font-family:Verdana,sans-serif;font-size:12px;font-weight:700;padding:var(--spacing-sm);text-align:center}.side-by-side-content{flex:1 1;font-family:Courier New,Courier,monospace;font-size:12px;line-height:1.4;overflow-x:auto;overflow-y:auto}.side-by-side-line{border-left:4px solid #0000;display:flex;margin:0;min-height:18px;padding:1px 0}.side-by-side-line.added{background-color:#cfc;border-left-color:var(--success)}.side-by-side-line.removed{background-color:#fcc;border-left-color:var(--error)}.side-by-side-line.unchanged{background-color:var(--bg-tertiary);border-left-color:var(--border-secondary)}.side-by-side-line.empty{background-color:#f0f0f0;border-left-color:#0000}.side-by-side-line .line-number{background-color:#e0e0e0;border-right:1px solid var(--border-primary);color:var(--text-muted);display:inline-block;flex-shrink:0;padding:0 var(--spacing-sm);text-align:right;-webkit-user-select:none;user-select:none;width:50px}.side-by-side-line.added .line-number{color:var(--success);font-weight:700}.side-by-side-line.removed .line-number{color:var(--error);font-weight:700}.side-by-side-line .line-content{flex:1 1;min-width:0;padding:0 var(--spacing-sm);white-space:pre-wrap;word-break:break-word}.side-by-side-line.added .line-content{color:#060}.side-by-side-line.removed .line-content{color:#c00}.side-by-side-line.unchanged .line-content{color:var(--text-secondary)}.side-by-side-line.empty .line-content{color:#0000}@media (max-width:768px){.diffy-input-container{flex-direction:column}.text-input-section{min-width:unset}.text-input-section textarea{font-size:11px;padding:var(--spacing-xs)}.diffy-buttons{align-items:center;flex-direction:column}.diffy-button{width:180px}.diff-container{font-size:11px}.line-number{width:40px}.line-content,.line-number{padding:0 var(--spacing-xs)}.side-by-side-container{flex-direction:column;max-height:600px}.side-by-side-column:first-child{border-bottom:2px groove var(--border-primary);border-right:none}.side-by-side-content{max-height:200px}.side-by-side-line .line-number{padding:0 var(--spacing-xs);width:40px}.side-by-side-line .line-content{font-size:11px;padding:0 var(--spacing-xs)}}.aquarium-container{-webkit-touch-callout:none;background:#1a4d7a;height:100vh;left:0;overflow:hidden;position:fixed;top:0;touch-action:none;-webkit-user-select:none;user-select:none;width:100vw}.aquarium-canvas{display:block;height:100%;transition:opacity 1s ease-in;width:100%;will-change:transform}.aquarium-loading{color:#4a90e2;font-family:Arial,sans-serif;font-size:1.5rem;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);z-index:10}.loading-text{animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.4}50%{opacity:1}}.controls-container{bottom:30px;display:flex;flex-direction:column;gap:12px;position:fixed;right:30px;z-index:100}.control-button{align-items:center;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#ffffff26;border:2px solid #ffffff4d;border-radius:50%;box-shadow:0 4px 15px #0003;color:#ffffffe6;cursor:pointer;display:flex;height:56px;justify-content:center;transition:all .3s ease;width:56px}.control-button:hover{background:#ffffff40;border-color:#ffffff80;transform:scale(1.05)}.control-button:active{transform:scale(.95)}.control-button:focus{outline:2px solid #fff9;outline-offset:2px}.control-button svg{height:24px;width:24px}.keyboard-hints{animation:fadeInOut 8s ease-in-out 2s;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#0006;border-radius:20px;bottom:30px;color:#fffc;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.875rem;left:50%;opacity:0;padding:10px 20px;pointer-events:none;position:fixed;transform:translateX(-50%);z-index:90}@keyframes fadeInOut{0%,to{opacity:0}10%,90%{opacity:1}}@media (max-width:768px){.controls-container{bottom:20px;gap:10px;right:20px}.control-button{height:48px;width:48px}.control-button svg{height:20px;width:20px}.keyboard-hints{display:none}}body.aquarium-active,html.aquarium-active{height:100%;overflow:hidden;position:fixed;width:100%}.minesweeper-container{margin:0 auto;max-width:800px;padding:12px;touch-action:pan-y;user-select:none;-webkit-user-select:none}.game-header{background:silver;border:2px outset #fff;display:flex;flex-direction:column;gap:10px;margin-bottom:12px;padding:8px}.game-info{display:flex;flex-wrap:wrap;gap:10px;justify-content:space-around}.info-item{align-items:center;display:flex;flex-direction:column;gap:2px}.info-label{color:#000;font-family:Verdana,sans-serif;font-size:10px;letter-spacing:1px;text-transform:uppercase}.info-value{background:#000;border:2px inset grey;color:red;font-family:Courier New,monospace;font-size:1.2rem;font-weight:700;min-width:50px;padding:2px 8px;text-align:center}.game-controls{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.btn{background:silver;border:2px outset #fff;color:#000;cursor:pointer;font-family:Verdana,sans-serif;font-size:12px;padding:4px 16px}.btn:hover{background:#d0d0d0}.btn:active{border-style:inset}.difficulty-select{border:2px inset grey;cursor:pointer;font-family:Verdana,sans-serif;font-size:12px;padding:4px 12px}.difficulty-select,.difficulty-select option{background:#fff;color:#000}.infinite-hint{background:var(--bg-accent);border:2px ridge var(--border-primary);color:#000;font-family:Verdana,sans-serif;font-size:11px;margin-bottom:10px;padding:8px;text-align:center}.board{background:silver;border:3px outset #fff;display:inline-block;overflow:hidden;padding:4px}.board.classic{display:flex;flex-direction:column}.board.infinite{cursor:grab;height:600px;overflow:hidden;position:relative;touch-action:none;width:100%}.board.infinite:active{cursor:grabbing}.board-row,.cell{display:flex}.cell{align-items:center;background:silver;border:2px outset #fff;cursor:pointer;font-family:Verdana,sans-serif;font-size:12px;font-weight:700;height:28px;justify-content:center;position:relative;width:28px}.cell:hover{background:#d0d0d0}.cell.hidden{background:silver;border:2px outset #fff}.cell.hidden:active{background:#b0b0b0;border-style:inset}.cell.revealed{border:1px solid grey;cursor:default}.cell.revealed,.cell.revealed:hover{background:silver}.cell.revealed.mine{background:red}.cell.flagged{background:silver;border:2px outset #fff}.number-1{color:#00f}.number-2{color:green}.number-3{color:red}.number-4{color:navy}.number-5{color:maroon}.number-6{color:teal}.number-7{color:#000}.number-8{color:grey}@media (max-width:768px){.minesweeper-container{padding:8px}.game-header{padding:6px}.info-value{font-size:1rem}.btn{padding:4px 12px}.btn,.cell{font-size:11px}.cell{height:26px;width:26px}.board.infinite{height:500px}}@media (max-width:480px){.cell{font-size:10px;height:22px;width:22px}.board.infinite{height:400px}.info-label{font-size:9px}.info-value{font-size:.9rem}}
/*# sourceMappingURL=main.3a4fafd8.css.map*/