@charset "UTF-8";@font-face{font-family:Pixellari;src:url(/MazeSolver3D/Pixellari.ttf) format("truetype");font-display:swap}*{box-sizing:border-box;font-family:Pixellari,sans-serif}body{margin:0;padding:0;display:flex;justify-content:center;align-items:center;height:100vh;overflow:hidden;background-color:#999}#mazeCanvas{display:block;width:100%;height:100%}.scaled-gui{transition:opacity .3s ease}.scaled-gui .is-disabled{opacity:.55}.scaled-gui .is-disabled label,.scaled-gui .is-disabled input,.scaled-gui .is-disabled select,.scaled-gui .is-disabled button{cursor:not-allowed}@media (max-width: 800px){.scaled-gui{display:none!important}}canvas{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.loading{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);font-size:24px;color:#fff;z-index:9999}.toolbar-canvas{position:absolute;left:0;top:0;z-index:999}.toolbar-popup{position:absolute;top:var(--toolbar-popup-top, 0);left:var(--toolbar-popup-left, 238px);transform:translate(-50%);width:370px;height:100%;border:3px solid #000;background-color:#a0a0a0;overflow-y:auto;overflow-x:hidden;z-index:1000;-webkit-user-select:none;user-select:none}.toolbar-popup__title{position:absolute;top:-10px;left:50%;transform:translate(-50%);z-index:1001;font-size:22px;color:#0fa;background-color:#0000}.toolbar-popup__close{position:fixed;top:var(--toolbar-close-top, 10px);left:var(--toolbar-close-left, 410px);cursor:pointer;z-index:1001;transform:translate(-50%);background-color:#0000}.toolbar-popup__hide{position:fixed;top:var(--toolbar-hide-top, 10px);left:var(--toolbar-hide-left, 348px);cursor:pointer;z-index:1001;transform:translate(-50%);background-color:#0000}.maze-popup{box-sizing:border-box;padding:28px 12px 18px;display:flex;flex-direction:column;gap:12px}.maze-popup__controls{position:relative;top:40px;display:flex;flex-direction:column;gap:10px}.maze-popup__section{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.maze-popup__section-title{font-size:20px;color:#fff;letter-spacing:.4px;text-transform:uppercase}.maze-popup__section--apply{justify-content:center;position:relative;top:70px}.maze-popup__input{display:flex;align-items:center;gap:6px;color:#fff;font-size:20px}.maze-popup__input input{width:64px;height:36px;background:#111;color:#fff;border:1px solid #333;padding:4px 6px;border-radius:4px;font-size:16px;-webkit-user-select:text;user-select:text}.maze-popup__btn,.maze-popup__tool{background:#1a1a1a;color:#eaeaea;border:1px solid #2b2b2b;padding:10px 20px;border-radius:6px;cursor:pointer;font-size:16px}.maze-popup__tool.is-active,.maze-popup__btn--primary{background:#00a884;border-color:#00866a;color:#fff}.maze-popup__canvas{position:relative;top:60px;width:330px;height:330px;border:1px solid #000;background:#33566b;cursor:crosshair;touch-action:none}.toolbar-tooltip{position:fixed;z-index:1002;padding:6px 8px;background:#000000d9;color:#f2f2f2;font-size:14px;border-radius:4px;border:1px solid rgba(255,255,255,.2);pointer-events:none;white-space:nowrap;transform:translateZ(0)}.preview-window{position:fixed;background-color:var(--preview-surface, #3a3a3a);border:2px solid var(--preview-border, #1a1a1a);border-radius:4px;box-shadow:0 4px 12px #00000080;z-index:1000;overflow:hidden;font-family:Arial,sans-serif;transform:translateY(0);opacity:1;-webkit-user-select:none;user-select:none;transition:opacity var(--preview-hide-duration, .35s) ease,transform var(--preview-hide-duration, .35s) ease}.preview-window.dragging{opacity:.9;cursor:move}.preview-window.is-hiding{opacity:0;transform:translateY(12px) scale(.98);pointer-events:none}.preview-titlebar{background:linear-gradient(to bottom,var(--preview-surface-top, #4a4a4a) 0%,var(--preview-surface, #3a3a3a) 100%);color:#e0e0e0;padding:6px 10px;font-size:12px;font-weight:700;cursor:move;-webkit-user-select:none;user-select:none;border-bottom:1px solid var(--preview-border-soft, #2a2a2a);display:flex;justify-content:space-between;align-items:center;height:20px}.preview-title-actions{display:inline-flex;align-items:center;gap:6px}.preview-grid-btn{background:var(--preview-button-bg, #2f2f2f);border:1px solid var(--preview-button-border, #1a1a1a);color:#e0e0e0;font-size:10px;line-height:1;cursor:pointer;padding:2px 6px;height:18px;border-radius:3px;text-transform:uppercase;letter-spacing:.4px;transition:background-color .2s,color .2s,border-color .2s}.preview-grid-btn.active{background:var(--preview-start, #4a7a4a);border-color:var(--preview-button-active-border, #2e5a2e);color:#f6f6f6}.preview-grid-btn:hover{background:var(--preview-button-hover, #3a3a3a)}.preview-grid-btn:active{background:var(--preview-button-active, #2a2a2a)}.preview-legend{display:flex;gap:8px;padding:4px 8px;font-size:11px;color:#e0e0e0;background:var(--preview-legend-bg, #333);border-bottom:1px solid var(--preview-border-soft, #2a2a2a)}.preview-footer{display:flex;justify-content:flex-start;align-items:center;padding:6px 8px;height:26px;background:var(--preview-button-bg, #2f2f2f);border-top:1px solid var(--preview-footer-border, #1f1f1f)}.preview-legend-item{display:inline-flex;align-items:center;gap:4px}.preview-swatch{display:inline-block;width:10px;height:10px;border:1px solid var(--preview-border, #1a1a1a)}.preview-swatch.wall{background:var(--preview-wall, #808080)}.preview-swatch.path{background:var(--preview-path, #c0c0c0)}.preview-swatch.start{background:var(--preview-start, #2ecc71)}.preview-swatch.end{background:var(--preview-end, #e74c3c)}.preview-close-btn{background:none;border:none;color:#e0e0e0;font-size:18px;line-height:1;cursor:pointer;padding:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:2px;transition:background-color .2s}.preview-hide-btn{background:none;border:none;color:#e0e0e0;font-size:16px;line-height:1;cursor:pointer;padding:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:2px;transition:background-color .2s}.preview-hide-btn:hover{background-color:var(--preview-button-hover, #3a3a3a);color:#fff}.preview-hide-btn:active{background-color:var(--preview-button-active, #2a2a2a)}.preview-close-btn:hover{background-color:var(--preview-end, #c44);color:#fff}.preview-close-btn:active{background-color:var(--preview-close-active, #a33)}.preview-canvas{display:block;width:100%;height:calc(100% - 66px);background-color:var(--preview-bg, #2a2a2a);image-rendering:pixelated;image-rendering:crisp-edges}.preview-window:after{content:"";position:absolute;right:0;bottom:0;width:12px;height:12px;background:linear-gradient(135deg,transparent 50%,var(--preview-resize-grip, #5a5a5a) 50%);cursor:nwse-resize;pointer-events:none}
