@import"https://cdn.jsdelivr.net/npm/galmuri/dist/galmuri.css";*{box-sizing:border-box;margin:0;padding:0;font-family:Galmuri11,monospace,sans-serif;-webkit-tap-highlight-color:transparent}body.theme-light{--bg-page: #f6f1e9;--bg-card: #fbf8f3;--border-main: #3a3335;--text-main: #3a3335;--text-sub: #78716c;--board-bg: #ebe5dc;--cell-empty: #f4efe8;--cell-border: #ded6ca;--cell-filled: #94a3b8;--btn-primary-bg: #fde047;--btn-primary-text: #3a3335;--btn-primary-shadow: #3a3335;--tray-bg: #f1ebe2;--slot-bg: #fbf8f3;--slot-border: #3a3335;--slot-sel-bg: #fff7ed;--slot-sel-border: #f97316;--btn-sec-bg: #fed7aa;--btn-sec-border: #3a3335;--btn-sec-text: #3a3335;--star-color: #d97706}body.theme-dark{--bg-page: #1c1a24;--bg-card: #23202e;--border-main: #4a435d;--text-main: #f5f3ff;--text-sub: #9d94b3;--board-bg: #181520;--cell-empty: #1f1b29;--cell-border: #2c263b;--cell-filled: #64748b;--btn-primary-bg: #f472b6;--btn-primary-text: #1c1a24;--btn-primary-shadow: #100d16;--tray-bg: #181520;--slot-bg: #23202e;--slot-border: #4a435d;--slot-sel-bg: #2c253d;--slot-sel-border: #f472b6;--btn-sec-bg: #363147;--btn-sec-border: #5e5577;--btn-sec-text: #f5f3ff;--star-color: #fbcfe8}body{background-color:var(--bg-page);color:var(--text-main);min-height:100vh;display:flex;flex-direction:column;padding:12px 10px 40px;transition:background-color .2s ease,color .2s ease}.pixel-container{background:var(--bg-card);border:2px solid var(--border-main);box-shadow:4px 4px 0 var(--border-main);max-width:440px;margin:0 auto;width:100%;padding:14px 12px;transition:max-width .2s ease,padding .2s ease}.pixel-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:10px;border-bottom:2px solid var(--cell-border)}.pixel-title{font-size:16px;font-weight:700;color:var(--star-color);letter-spacing:.5px}.pixel-subtitle{font-size:11px;color:var(--text-sub);margin-top:2px}.pixel-btn-group{display:flex;gap:5px;flex-shrink:0;align-items:center}.pixel-btn{background:var(--btn-sec-bg);border:2px solid var(--btn-sec-border);color:var(--btn-sec-text);padding:5px 8px;font-size:12px;cursor:pointer;white-space:nowrap;flex-shrink:0;box-shadow:0 2px 0 var(--border-main);transition:transform .05s ease,box-shadow .05s ease}.pixel-btn:active{transform:translateY(2px);box-shadow:0 0 0 transparent}.pixel-btn-primary{background:var(--btn-primary-bg);border:2px solid var(--border-main);color:var(--btn-primary-text);padding:12px 16px;font-size:14px;font-weight:700;cursor:pointer;box-shadow:0 4px 0 var(--btn-primary-shadow);width:100%;text-align:center;transition:transform .05s ease,box-shadow .05s ease}.pixel-btn-primary:active{transform:translateY(4px);box-shadow:0 0 0 transparent}.pixel-toolbar{margin-bottom:10px}.pixel-btn-upload{background:var(--btn-sec-bg);border:2px dashed var(--border-main);color:var(--text-main);padding:8px 12px;font-size:12px;font-weight:700;cursor:pointer;box-shadow:0 2px 0 var(--border-main);width:100%;text-align:center;transition:transform .05s ease,background .15s ease;display:flex;align-items:center;justify-content:center;gap:6px}.pixel-btn-upload:hover{background:var(--btn-primary-bg);color:var(--btn-primary-text)}.pixel-btn-upload:active{transform:translateY(2px);box-shadow:0 0 0 transparent}.upload-status-banner{background:var(--tray-bg);border:2px solid var(--border-main);padding:6px 10px;font-size:11px;text-align:center;margin-bottom:10px;color:var(--star-color);font-weight:700}.pixel-board-box{background:var(--board-bg);border:2px solid var(--border-main);padding:6px;margin-bottom:12px}.board-grid{display:grid;grid-template-columns:repeat(8,1fr);grid-template-rows:repeat(8,1fr);gap:3px;width:100%;aspect-ratio:1 / 1;box-sizing:border-box}.board-cell{background:var(--cell-empty);border:1px solid var(--cell-border);position:relative;cursor:pointer;-webkit-user-select:none;user-select:none;display:flex;align-items:center;justify-content:center;font-size:11px;line-height:1;font-weight:700;aspect-ratio:1 / 1;width:100%;height:100%;min-width:0;min-height:0;box-sizing:border-box;overflow:hidden}.board-cell.filled{background:var(--cell-filled);border:1px solid var(--border-main);box-shadow:inset 1px 1px #ffffffb3,inset -1px -1px #0003}.board-cell.step-placed{border:1px solid var(--border-main);box-shadow:inset 2px 2px #ffffffe6,inset -2px -2px #0000004d;color:#fff}.board-cell.clearing{background:#0fc!important;animation:pulse-flash .3s infinite alternate}@keyframes pulse-flash{0%{opacity:.6}to{opacity:1}}.pixel-tray-box{background:var(--tray-bg);border:2px solid var(--border-main);padding:10px;margin-bottom:14px}.tray-title-row{display:flex;justify-content:space-between;margin-bottom:8px;font-size:12px}.tray-slots{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.tray-slot{background:var(--slot-bg);border:2px solid var(--slot-border);min-height:72px;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;padding:4px;position:relative}.tray-slot.selected{background:var(--slot-sel-bg);border-color:var(--slot-sel-border)}.slot-label{position:absolute;top:4px;left:6px;font-size:10px;color:var(--text-sub)}.mini-block{display:grid;gap:2px;margin-top:10px}.mini-cell{width:11px;height:11px;border-radius:1px}.pixel-step-box{background:var(--tray-bg);border:2px solid var(--border-main);padding:10px;margin-bottom:12px}.step-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px;font-size:12px;font-weight:700}.step-desc{font-size:11px;color:var(--text-sub)}.step-controls{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px;margin-top:10px}.modal-backdrop{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#000000a6;display:flex;align-items:center;justify-content:center;z-index:1000;padding:14px}.modal-content{background:var(--bg-card);border:2px solid var(--border-main);box-shadow:4px 4px 0 var(--border-main);width:100%;max-width:520px;max-height:85vh;padding:14px;display:flex;flex-direction:column}@media (max-width: 480px){body{padding:10px 8px 36px}.pixel-container{max-width:100%;padding:12px 10px;box-shadow:3px 3px 0 var(--border-main)}.pixel-header{gap:8px}.pixel-title{font-size:14px;white-space:nowrap}.pixel-subtitle{font-size:10px;white-space:nowrap}.pixel-btn-group{gap:4px;flex-shrink:0}.pixel-btn{padding:4px 6px;font-size:11px;white-space:nowrap}.pixel-board-box{padding:5px}.board-grid{gap:2px}.board-cell{font-size:10px}.tray-slots{gap:6px}.tray-slot{min-height:68px;padding:3px}}@media (min-width: 481px) and (max-width: 768px){body{padding:20px 16px 50px}.pixel-container{max-width:440px;padding:16px 14px;margin:10px auto;box-shadow:5px 5px 0 var(--border-main)}}@media (min-width: 769px){body{padding:30px 20px 60px}.pixel-container{max-width:460px;padding:20px 18px;margin:24px auto;box-shadow:6px 6px 0 var(--border-main)}.pixel-header{margin-bottom:16px;padding-bottom:12px}.pixel-title{font-size:18px}.board-cell{font-size:12px;transition:filter .1s ease}.board-cell:hover{filter:brightness(1.08)}.tray-slot{min-height:78px;transition:transform .08s ease,border-color .08s ease}.tray-slot:hover{transform:translateY(-2px)}}
