@import"https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;600;700;800&display=swap";*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}button,input,select,textarea{font-family:inherit}:root{--bg-deep: #070d14;--bg-panel: rgba(8, 16, 10, .92);--border: rgba(70, 110, 70, .25);--green: #7ddf64;--green-dim: #3a6a3a;--text: #c0d0c0;--text-dim: #6a7a6a;--danger: #df6464;--cell-size: 22px;--rainbow-grad: linear-gradient(135deg, #ff5c5c, #ffb84d, #ffe34d, #5cff5c, #5cd6ff, #c45cff, #ff5cd1)}html,body{height:100%;overflow:hidden}body{font-family:JetBrains Mono,Courier New,monospace;background:linear-gradient(155deg,#060c16,#081510,#0a0f1a);color:var(--text);display:flex;flex-direction:column}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#7ddf6426;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#7ddf644d}.header{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;background:var(--bg-panel);border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);flex-shrink:0;gap:12px}.header-left{display:flex;align-items:center;gap:14px}.logo{display:flex;align-items:center;gap:10px}.logo-icon{font-size:26px;filter:drop-shadow(0 0 6px rgba(125,223,100,.4))}.logo-text{font-size:17px;font-weight:800;letter-spacing:5px;color:var(--green);text-shadow:0 0 25px rgba(125,223,100,.25)}.header-stats{display:flex;gap:14px;font-size:13px;color:var(--text-dim);align-items:center;flex-wrap:wrap}.header-stats strong{color:var(--text)}.header-tools{display:flex;gap:6px;align-items:center}.header-btn{padding:5px 10px;border:1px solid var(--border);border-radius:5px;background:#121c1299;color:var(--text-dim);cursor:pointer;font:600 12px/1 inherit;transition:all .15s;display:flex;align-items:center;gap:5px;white-space:nowrap}.header-btn:hover{background:#28462866;color:var(--text)}.header-btn:disabled{opacity:.3;cursor:default}.header-btn:disabled:hover{background:#121c1299;color:var(--text-dim)}.header-btn.active{background:#2d5a2d59;color:var(--green);border-color:var(--green)}.header-sep{width:1px;height:22px;background:var(--border)}.view-menu-wrap{position:relative}.view-menu{position:absolute;top:calc(100% + 6px);right:0;min-width:180px;background:#0c1810;border:1px solid var(--border);border-radius:8px;padding:6px;display:flex;flex-direction:column;gap:2px;box-shadow:0 12px 32px #00000080;z-index:150}.view-menu.hidden{display:none}.view-menu-item{display:flex;align-items:center;gap:8px;padding:7px 10px;border:none;background:transparent;color:var(--text);cursor:pointer;border-radius:5px;font:600 12px/1 inherit;text-align:left}.view-menu-item:hover{background:#28462866}.view-menu-item.active{color:var(--green)}.vm-icon{width:18px;text-align:center}.vm-label{flex:1}.vm-kbd{display:inline-block;padding:1px 5px;border-radius:3px;background:#3c5a3c33;border:1px solid rgba(70,100,70,.25);font-size:10px;color:var(--text-dim)}.view-menu-row{display:flex;align-items:center;gap:4px;padding:4px 6px}.view-menu-zoom{flex:1;padding:6px 0;border:1px solid var(--border);border-radius:5px;background:#121c1299;color:var(--text-dim);cursor:pointer;font:600 13px/1 inherit}.view-menu-zoom:hover{background:#28462866;color:var(--text)}.view-menu-zoom-label{flex:1;text-align:center;font-size:11px;color:var(--text-dim);min-width:40px}.view-menu-sep{height:1px;background:var(--border);margin:4px 0}.nav-pill{display:inline-flex;align-items:center;gap:6px;padding:5px 14px;border-radius:100px;background:#7ddf6414;border:1px solid rgba(125,223,100,.2);color:var(--green);font-size:12px;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;font-weight:700;transition:all .3s ease}.nav-pill:hover{background:#7ddf6426}.layout{display:flex;flex:1;overflow:hidden}.sidebar,.right-sidebar{background:var(--bg-panel);display:flex;flex-direction:column;padding:10px;gap:6px;overflow-y:auto;flex-shrink:0}.sidebar{width:290px;border-right:1px solid var(--border)}.right-sidebar{width:240px;border-left:1px solid var(--border);padding:12px}.section-label{font-size:11px;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;color:#4a6a4a;padding:6px 0 3px}.mode-row{display:flex;gap:4px}.mode-btn{flex:1;padding:9px 0;border:1px solid var(--border);border-radius:6px;background:#121c1299;color:var(--text-dim);cursor:pointer;font:600 13px/1 inherit;transition:all .15s}.mode-btn.active{background:#2d5a2d59;color:var(--green);border-color:var(--green)}.mode-btn:hover:not(.active){background:#1e321e66}.search-box{padding:7px 10px 7px 30px;border:1px solid var(--border);border-radius:6px;background:#121c1299;color:var(--text);font:13px/1.3 inherit;outline:none;width:100%;transition:border-color .15s}.search-box:focus{border-color:var(--green)}.search-box::placeholder{color:var(--text-dim)}.search-wrap{position:relative}.search-icon{position:absolute;left:9px;top:50%;transform:translateY(-50%);font-size:13px;color:var(--text-dim);pointer-events:none}.sort-row{display:flex;gap:3px;margin-top:8px}.sort-btn{flex:1;padding:4px 0;border:1px solid rgba(70,100,70,.15);border-radius:4px;background:#121c1266;color:var(--text-dim);cursor:pointer;font:600 10px/1 inherit;transition:all .12s;text-transform:uppercase;letter-spacing:.5px}.sort-btn.active{background:#2d5a2d4d;color:var(--green);border-color:#7ddf644d}.sort-btn:hover:not(.active){background:#1e321e4d}.filter-row{display:flex;flex-wrap:wrap;gap:4px;margin-top:8px;margin-bottom:8px;justify-content:center}.filter-btn{width:24px;height:24px;padding:0;border-radius:4px;border:1px solid rgba(70,100,70,.3);background:#121c1299;color:var(--text-dim);cursor:pointer;font:800 11px/1 JetBrains Mono,Courier New,monospace;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .12s}.filter-btn:hover:not(.active){filter:brightness(1.4);background:#283c2880}.filter-btn[data-rarity=All] .filter-letter{font-size:17px;line-height:1}.filter-btn-rainbow{border:1px solid transparent;background-image:var(--rainbow-grad);background-origin:border-box;background-clip:border-box;position:relative}.filter-btn-rainbow:before{content:"";position:absolute;top:1px;right:1px;bottom:1px;left:1px;border-radius:3px;background:#121c12d9;z-index:0}.filter-btn-rainbow .filter-letter{position:relative;z-index:1;background:var(--rainbow-grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}.filter-btn-rainbow.active:before{display:none}.filter-btn-rainbow.active .filter-letter{background:none;-webkit-text-fill-color:#0a120a;color:#0a120a}.filter-btn-rainbow:hover:not(.active){filter:brightness(1.25);background-image:var(--rainbow-grad)}.tree-list,.tile-list{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:3px;min-height:80px}.tree-item,.tile-item{display:flex;align-items:center;gap:8px;padding:7px 8px;border-radius:6px;background:#121c1273;cursor:pointer;transition:all .12s;border-left:3px solid transparent}.tree-item:hover,.tile-item:hover{background:#233c2366}.tree-item.selected,.tile-item.selected{background:#2d5a2d4d;box-shadow:inset 0 0 0 1px #7ddf6459}.tree-emoji{font-size:20px;width:24px;text-align:center;flex-shrink:0}.tree-name{font-size:12.5px;font-weight:700;color:#b8c8b8;letter-spacing:-.1px}.tree-meta{font-size:11px;color:var(--text-dim);display:flex;flex-wrap:wrap;gap:3px;align-items:center}.tree-meta .sep{color:#2a3a2a}.tree-meta .rarity-tag{font-weight:700;font-size:11px}.tree-item.rainbow{border-image-source:var(--rainbow-grad);border-image-slice:1}.tree-item.pinned{position:relative}.tree-item.pinned:after{content:"📌";position:absolute;top:2px;right:4px;font-size:10px;opacity:.85;pointer-events:none}.rarity-tag.rainbow{background:var(--rainbow-grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}.tree-emoji img{width:22px;height:22px;object-fit:contain;image-rendering:pixelated}.tile-swatch{width:22px;height:22px;border-radius:4px;border:1px solid rgba(255,255,255,.08);flex-shrink:0}.tile-name{font-size:13px;font-weight:700;color:#b8c8b8}.tile-meta{font-size:11px;color:var(--text-dim)}.brush-row{display:flex;gap:4px}.brush-btn{flex:1;padding:5px 0;border:1px solid var(--border);border-radius:5px;background:#121c1299;color:var(--text-dim);cursor:pointer;font:600 13px/1 inherit;transition:all .12s}.brush-btn.active{background:#2d5a2d59;color:var(--green);border-color:var(--green)}.btn-action{padding:8px 0;border:1px solid rgba(70,110,70,.35);border-radius:6px;background:#19371959;color:var(--green);cursor:pointer;font:600 13px/1 inherit;width:100%;transition:all .12s;margin-top:2px}.btn-action:hover{background:#28502866}.btn-danger{padding:8px 0;border:1px solid rgba(170,55,55,.35);border-radius:6px;background:#37121259;color:var(--danger);cursor:pointer;font:600 13px/1 inherit;width:100%;transition:all .12s}.btn-danger:hover{background:#50191966}.clear-row{display:flex;gap:4px}.clear-row button{flex:1;font-size:11px;padding:7px 4px}.vip-label{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:14px;color:#a0b8a0}.vip-label input{accent-color:var(--green);width:16px;height:16px}.shrine-select-row{display:flex;align-items:center;gap:8px;font-size:13px;color:#a0b8a0}.shrine-select{flex:1;padding:4px 6px;border:1px solid var(--border);border-radius:5px;background:#121c1299;color:var(--text);font:600 12px/1 JetBrains Mono,Courier New,monospace;outline:none;cursor:pointer}.shrine-select:focus{border-color:var(--green)}.bonus-input-row{display:flex;align-items:center;gap:8px;font-size:13px;color:#a0b8a0}.bonus-input-row label{flex:1}.bonus-input{width:64px;padding:4px 6px;border:1px solid var(--border);border-radius:5px;background:#121c1299;color:var(--text);font:600 12px/1 JetBrains Mono,Courier New,monospace;outline:none;text-align:right}.bonus-input:focus{border-color:var(--green)}.bonus-input::-webkit-outer-spin-button,.bonus-input::-webkit-inner-spin-button{opacity:1}.bonus-suffix{color:var(--text-dim);font-size:12px}.stat-value.cost{color:var(--danger)}.divider{height:1px;background:var(--border);margin:4px 0}.stat-row{display:flex;justify-content:space-between;align-items:center;padding:3px 0}.stat-label{font-size:13px;color:var(--text-dim)}.stat-value{font-size:15px;font-weight:700;color:var(--text)}.stat-value.income{color:var(--green)}.breakdown-toggle{background:none;border:none;color:var(--text-dim);cursor:pointer;font:600 11px/1 inherit;text-transform:uppercase;letter-spacing:1px;padding:4px 0;display:flex;align-items:center;gap:6px;transition:color .15s}.breakdown-toggle:hover{color:var(--text)}.breakdown-toggle .arrow{transition:transform .2s;display:inline-block;font-size:9px}.breakdown-toggle .arrow.open{transform:rotate(90deg)}.breakdown-list{display:flex;flex-direction:column;gap:2px;max-height:200px;overflow-y:auto}.breakdown-item{display:flex;justify-content:space-between;align-items:center;padding:3px 8px;border-radius:4px;background:#121c1266;font-size:11px}.breakdown-item-left{display:flex;align-items:center;gap:6px;color:var(--text-dim)}.breakdown-item-left img{width:16px;height:16px;image-rendering:pixelated}.breakdown-item-value{color:var(--green);font-weight:700}.breakdown-item-pct{color:var(--text-dim);font-size:10px;min-width:36px;text-align:right}.kbd{display:inline-block;padding:1px 5px;border-radius:3px;background:#3c5a3c33;border:1px solid rgba(70,100,70,.25);font-size:10px;color:var(--text-dim);font-family:inherit}.help-modal{max-width:820px;min-width:480px}.help-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px 24px}@media(min-width:760px){.help-grid{grid-template-columns:repeat(3,1fr)}}.help-section{display:flex;flex-direction:column;gap:4px}.help-h{font-size:11px;font-weight:700;color:var(--green);letter-spacing:1.5px;text-transform:uppercase;margin-bottom:4px}.help-row{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:12px;color:var(--text-dim);padding:2px 0}.help-key{color:var(--text);display:inline-flex;align-items:center;gap:3px;flex-shrink:0}.help-desc{color:var(--text-dim);text-align:right}.section-toggle{display:flex;align-items:center;gap:6px;width:100%;padding:8px 0;border:none;background:transparent;color:#4a6a4a;cursor:pointer;font:700 11px/1 inherit;letter-spacing:2.5px;text-transform:uppercase;text-align:left}.section-toggle:hover{color:var(--text-dim)}.section-arrow{display:inline-block;font-size:9px;transition:transform .18s;width:10px}.section-toggle.collapsed .section-arrow{transform:rotate(-90deg)}.section-body{display:flex;flex-direction:column;gap:6px}.section-body.collapsed{display:none}.section-hint{font-size:11px;color:var(--text-dim);line-height:1.5;padding:0 0 8px}.stamp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.stamp-btn{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 4px;border:1px solid var(--border);border-radius:6px;background:#121c1299;color:var(--text-dim);cursor:pointer;font:600 10px/1 inherit;transition:all .12s}.stamp-btn:hover{background:#28462866;color:var(--text);border-color:var(--green)}.stamp-preview{display:grid;width:32px;height:32px;gap:1px}.stamp-preview>i{background:var(--green);border-radius:1px;opacity:.85}.stamp-preview>i.empty{background:transparent}.stamp-label{font-size:10px;letter-spacing:.5px}.tour-overlay.hidden{display:none}.tour-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:400;pointer-events:none}.tour-strip{position:absolute;background:#000000a6;pointer-events:auto}.tour-card{position:absolute;background:#0c1810;border:1px solid var(--green);border-radius:10px;padding:16px 18px;min-width:260px;max-width:340px;box-shadow:0 12px 40px #0009;pointer-events:auto;display:flex;flex-direction:column;gap:8px}.tour-step{font-size:10px;letter-spacing:1.5px;color:var(--text-dim);text-transform:uppercase}.tour-title{font-size:15px;font-weight:700;color:var(--green)}.tour-body{font-size:13px;color:var(--text-dim);line-height:1.5}.tour-btns{display:flex;gap:8px;justify-content:flex-end;margin-top:4px}.grid-wrapper-outer{position:relative}.empty-grid-nudge{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:10px;padding:20px 28px;background:#0c1810d9;border:1px dashed var(--border);border-radius:12px;pointer-events:none;max-width:280px;text-align:center}.empty-grid-nudge.hidden{display:none}.egn-arrow{font-size:28px}.egn-text{font-size:13px;color:var(--text-dim);line-height:1.5}.empty-palette-msg{padding:24px 12px;text-align:center;color:var(--text-dim);font-size:12px}.center{flex:1;display:flex;align-items:center;justify-content:center;overflow:auto;padding:12px;position:relative}.grid-outer{display:flex;flex-direction:column;align-items:center}.col-labels{display:grid;grid-template-columns:var(--cell-size) repeat(24,var(--cell-size));gap:1px;padding-left:3px;margin-bottom:2px}.col-labels span{text-align:center;font-size:clamp(10px,calc(var(--cell-size) * .42),20px);color:#7ddf6473;font-weight:700}.grid-with-rows{display:flex}.row-labels{display:flex;flex-direction:column;gap:1px;padding-top:3px;margin-right:2px;width:var(--cell-size)}.row-labels span{height:var(--cell-size);display:flex;align-items:center;justify-content:flex-end;padding-right:4px;font-size:clamp(10px,calc(var(--cell-size) * .42),20px);color:#7ddf6473;font-weight:700}.grid-wrapper{display:inline-grid;grid-template-columns:repeat(24,var(--cell-size));grid-template-rows:repeat(24,var(--cell-size));gap:1px;background:#00000080;padding:3px;border-radius:8px;border:1px solid var(--border);box-shadow:0 0 60px #00460f14,inset 0 0 30px #0000004d;user-select:none;-webkit-user-select:none;position:relative}.cell{width:var(--cell-size);height:var(--cell-size);border-radius:2px;position:relative;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .08s;overflow:visible}.cell:hover{filter:brightness(1.25)}.cell.held{outline:2px solid #ffcc00;z-index:5}.cell.cursor{box-shadow:inset 0 0 0 2px var(--green),0 0 0 1px #7ddf6466;z-index:5}.cell.selected{box-shadow:inset 0 0 0 1px #7ddf64a6;background-color:#7ddf641f}.cell.cursor.selected{box-shadow:inset 0 0 0 2px var(--green),0 0 0 1px #7ddf6466}.cell.ghost{outline:2px solid rgba(125,223,100,.5);z-index:4}.cell.ghost-invalid{outline:2px solid rgba(223,100,100,.5);z-index:4}.cell.ghost .ghost-img,.cell.ghost-invalid .ghost-img{position:absolute;z-index:5;pointer-events:none;object-fit:contain;image-rendering:pixelated;opacity:.5}.cell.ghost .ghost-img{filter:drop-shadow(0 0 4px rgba(125,223,100,.4))}.cell.ghost-invalid .ghost-img{filter:drop-shadow(0 0 4px rgba(223,100,100,.4)) saturate(.3)}.ghost-img.small{width:calc(var(--cell-size) * .9);height:calc(var(--cell-size) * .9)}.ghost-img.big{width:calc(var(--cell-size) * 2);height:calc(var(--cell-size) * 2);top:0;left:0}.cell.occupied:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:2px;background:#ffffff0f;border:1px solid rgba(255,255,255,.1);pointer-events:none}.cell.occupied-Common:after{border-color:#7a8a7a4d;background:#7a8a7a14}.cell.occupied-Rare:after{border-color:#4a8adf4d;background:#4a8adf14}.cell.occupied-Legendary:after{border-color:#e8a8324d;background:#e8a83214}.cell.occupied-Mythical:after{border-color:#c44adf4d;background:#c44adf14}.cell.occupied-Guardian:after{border-color:#e8e8324d;background:#e8e83214}.cell.occupied-Enchanted:after{border-color:#ff4a8a4d;background:#ff4a8a14}.cell.occupied-Ancient:after{border-color:#2eaa5e4d;background:#2eaa5e14}.cell-emoji{line-height:1;pointer-events:none;-webkit-user-select:none;user-select:none;filter:drop-shadow(0 1px 3px rgba(0,0,0,.6));position:absolute;z-index:3}.cell-emoji.small{font-size:calc(var(--cell-size) * .68)}.cell-emoji.big{font-size:calc(var(--cell-size) * 1.1);width:calc(var(--cell-size) * 2 + 1px);height:calc(var(--cell-size) * 2 + 1px);display:flex;align-items:center;justify-content:center;top:0;left:0}.cell-img{position:absolute;z-index:3;pointer-events:none;object-fit:contain;filter:drop-shadow(0 1px 3px rgba(0,0,0,.6));image-rendering:pixelated}.cell-img.small{width:calc(var(--cell-size) * .9);height:calc(var(--cell-size) * .9)}.cell-img.big{width:calc(var(--cell-size) * 2);height:calc(var(--cell-size) * 2);top:0;left:0}.boost-label{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:7px;font-weight:800;color:#f0c040b3;pointer-events:none;z-index:2;text-shadow:0 0 3px rgba(0,0,0,.8)}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:200}.overlay.hidden{display:none}.modal{background:#0c1810;border:1px solid var(--border);border-radius:12px;padding:20px;min-width:320px;display:flex;flex-direction:column;gap:12px;box-shadow:0 20px 60px #0009}.modal-title{font-size:17px;font-weight:700;color:var(--green)}.modal-input{padding:9px 14px;border:1px solid var(--border);border-radius:6px;background:#121c1299;color:var(--text);font:14px/1.4 inherit;outline:none}.modal-input:focus{border-color:var(--green)}.modal-btn-row{display:flex;gap:8px}.btn-cancel{padding:8px 16px;border:1px solid rgba(100,100,100,.25);border-radius:6px;background:#23232366;color:#999;cursor:pointer;font:13px/1 inherit}.plan-list{max-height:250px;overflow-y:auto;display:flex;flex-direction:column;gap:4px}.plan-item{padding:10px 12px;border-radius:6px;background:#121c1280;cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:background .12s;gap:8px}.plan-item:hover{background:#233c2366}.plan-item-info{flex:1;min-width:0}.plan-item-name{font-size:14px;font-weight:700;color:var(--text)}.plan-item-date{font-size:11px;color:#4a5a4a}.plan-item-delete{padding:4px 8px;border-radius:4px;border:1px solid rgba(170,55,55,.25);background:#3712124d;color:var(--danger);cursor:pointer;font:600 11px/1 inherit;transition:all .12s;flex-shrink:0}.plan-item-delete:hover{background:#50191980}.plan-thumb{width:40px;height:40px;border-radius:4px;flex-shrink:0;background:#0a120a;border:1px solid var(--border);image-rendering:pixelated}.plan-thumb-empty{background:linear-gradient(135deg,#0c1810 25%,transparent 25%,transparent 50%,#0c1810 50%,#0c1810 75%,transparent 75%,transparent);background-size:8px 8px}.hover-tooltip{position:fixed;z-index:250;pointer-events:none;background:#0c1810;border:1px solid var(--border);border-radius:6px;padding:5px 9px;font:700 12px/1 JetBrains Mono,Courier New,monospace;box-shadow:0 8px 22px #0000008c;white-space:nowrap}.hover-tooltip.hidden{display:none}.hover-tooltip.positive{color:var(--green);border-color:#7ddf6473}.hover-tooltip.negative{color:var(--danger);border-color:#df646473}.hover-tooltip.neutral{color:var(--text-dim)}.cell-context-menu{position:fixed;z-index:260;min-width:180px;background:#0c1810;border:1px solid var(--border);border-radius:8px;padding:4px;display:flex;flex-direction:column;gap:1px;box-shadow:0 12px 32px #0000008c}.cell-context-menu.hidden{display:none}.ccm-item{display:flex;align-items:center;gap:10px;padding:7px 10px;border:none;background:transparent;color:var(--text);cursor:pointer;border-radius:5px;font:600 12px/1 inherit;text-align:left;white-space:nowrap}.ccm-item:hover{background:#28462866}.ccm-item.danger{color:var(--danger)}.ccm-item.danger:hover{background:#461e1e73}.ccm-icon{width:16px;text-align:center;flex-shrink:0}.ccm-label{flex:1}.ccm-shortcut{font-size:10px;color:var(--text-dim);padding:1px 5px;border-radius:3px;background:#3c5a3c2e;border:1px solid rgba(70,100,70,.22)}.ccm-sep{height:1px;background:var(--border);margin:3px 4px}.ccm-empty{padding:12px 14px;font-size:11px;color:var(--text-dim);text-align:center}.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%);padding:10px 20px;border-radius:8px;background:#0c1810f2;border:1px solid var(--border);color:var(--green);font:600 13px/1 inherit;z-index:300;opacity:0;transition:opacity .3s;pointer-events:none;box-shadow:0 8px 30px #0006}.toast.show{opacity:1}.toast{pointer-events:auto;display:flex;align-items:center;gap:12px}.toast.show .toast-action{pointer-events:auto}.toast-action{background:#7ddf641f;border:1px solid rgba(125,223,100,.4);color:var(--green);padding:4px 10px;border-radius:5px;font:700 11px/1 inherit;letter-spacing:1px;text-transform:uppercase;cursor:pointer}.toast-action:hover{background:#7ddf6438}.mobile-toolbar,.mobile-drawer-toggle,.mobile-drawer,.mobile-warning{display:none}@media(max-width:900px){.sidebar,.right-sidebar,.header-tools{display:none}.header{padding:8px 12px}.mobile-warning{display:flex;position:fixed;top:0;right:0;bottom:0;left:0;z-index:500;background:#000000eb;align-items:center;justify-content:center;padding:24px}.mw-card{background:#0c1810;border:1px solid var(--border);border-radius:12px;padding:24px;max-width:360px;text-align:center;display:flex;flex-direction:column;gap:14px;box-shadow:0 20px 60px #0009}.mw-icon{font-size:38px}.mw-title{font-size:16px;font-weight:700;color:var(--green)}.mw-body{font-size:13px;line-height:1.5;color:var(--text-dim)}.mw-continue{padding:10px 16px;border:1px solid var(--border);border-radius:6px;background:#28462866;color:var(--text);cursor:pointer;font:600 13px/1 inherit;margin-top:4px}.col-labels,.row-labels{display:none!important}.center{padding:0;align-items:flex-start;justify-content:flex-start}.grid-outer{padding:8px}.grid-wrapper{touch-action:none}.mobile-toolbar{display:flex;align-items:center;gap:5px;padding:6px 10px;background:var(--bg-panel);border-bottom:1px solid var(--border);flex-shrink:0;overflow-x:auto;-webkit-overflow-scrolling:touch}.mob-btn{padding:7px 12px;border:1px solid var(--border);border-radius:6px;background:#121c1299;color:var(--text-dim);cursor:pointer;font:600 12px/1 inherit;white-space:nowrap;flex-shrink:0;transition:all .15s}.mob-btn.active{background:#2d5a2d59;color:var(--green);border-color:var(--green)}.mob-btn.danger{color:var(--danger);border-color:#aa373759}.mob-btn:disabled{opacity:.3}.mob-sep{width:1px;height:24px;background:var(--border);flex-shrink:0}.mobile-drawer-toggle{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px;background:var(--bg-panel);border-top:1px solid var(--border);color:var(--text-dim);font:600 13px/1 inherit;cursor:pointer;flex-shrink:0}.mobile-drawer-toggle .toggle-arrow{transition:transform .2s;display:inline-block}.mobile-drawer-toggle .toggle-arrow.open{transform:rotate(180deg)}.mobile-drawer{display:flex;flex-direction:column;background:var(--bg-panel);border-top:1px solid var(--border);max-height:0;overflow:hidden;transition:max-height .3s ease;flex-shrink:0}.mobile-drawer.open{max-height:55vh;overflow-y:auto}.mob-stats-bar{display:flex;gap:10px;padding:8px 12px;flex-wrap:wrap;font-size:11px;color:var(--text-dim);border-bottom:1px solid var(--border)}.mob-stats-bar strong{color:var(--green)}.mob-section{padding:8px 12px}.mob-section .filter-row{margin-bottom:6px}.mob-section .tree-list,.mob-section .tile-list{max-height:30vh;min-height:60px}}@media(min-width:901px){.mobile-warning{display:none}}
