:root{--bg:#080b0a;--panel:#0e1311;--panel2:#121916;--line:#202923;--muted:#7f9086;--text:#eef7f1;--green:#48d17c;--green2:#1f9d55;--danger:#ff6b78;--slot:#8b8b8b;--slot-dark:#373737;--slot-light:#fff;--shadow:0 30px 80px rgba(0,0,0,.45)}*{box-sizing:border-box}html,body{height:100%;margin:0;background:radial-gradient(circle at 45% 15%,#102018 0,#090d0b 34%,#060807 76%);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input,textarea,select{font:inherit}button{cursor:pointer}.app-shell{min-height:100%;display:flex;flex-direction:column}.topbar{height:72px;border-bottom:1px solid var(--line);display:grid;grid-template-columns:280px 1fr 280px;align-items:center;padding:0 20px;background:rgba(10,14,12,.88);backdrop-filter:blur(16px);position:sticky;top:0;z-index:10}.brand{display:flex;align-items:center;gap:11px}.brand strong{display:block;font-size:15px;letter-spacing:.2px}.brand small{display:block;color:var(--muted);font-size:11px;margin-top:2px}.brand-cube{width:34px;height:34px;border:1px solid #2a4d37;border-radius:9px;background:linear-gradient(145deg,#1b4d2e,#0e2317);display:grid;place-items:center;box-shadow:inset 0 0 16px rgba(72,209,124,.12)}.brand-cube span{width:14px;height:14px;background:var(--green);box-shadow:7px 0 #2db565,0 7px #2db565,7px 7px #197a42;image-rendering:pixelated}.project-title-wrap{display:flex;justify-content:center}.menu-title-input{width:min(510px,90%);background:#0b100e;border:1px solid var(--line);color:#cfe1d6;border-radius:9px;padding:10px 13px;text-align:center;outline:none}.menu-title-input:focus{border-color:#2f6844;box-shadow:0 0 0 3px rgba(72,209,124,.08)}.top-actions{display:flex;justify-content:flex-end;gap:8px}.btn{border:1px solid var(--line);border-radius:8px;padding:9px 13px;color:var(--text);background:#151b18;font-weight:650;font-size:12px}.btn:hover{border-color:#36433c}.btn.primary{background:linear-gradient(180deg,#48d17c,#31ae63);border-color:#58e58c;color:#06210f;box-shadow:0 8px 20px rgba(72,209,124,.16)}.btn.ghost{background:#111613}.btn.danger{color:#ff8c97;border-color:#4c2930}.workspace{flex:1;display:grid;grid-template-columns:264px minmax(620px,1fr) 330px;min-height:calc(100vh - 72px)}.sidebar{background:rgba(13,18,16,.84);padding:18px;border-right:1px solid var(--line);overflow:auto}.inspector{border-right:0;border-left:1px solid var(--line)}.panel-heading{display:flex;justify-content:space-between;align-items:center;font-weight:730;font-size:12px;margin-bottom:14px}.panel-heading.compact{margin-bottom:10px}.pill{font-size:10px;color:#9bc6aa;background:#102619;border:1px solid #214b31;border-radius:999px;padding:4px 7px}.field-label{display:flex;justify-content:space-between;color:#94a69a;font-size:10px;text-transform:uppercase;font-weight:750;letter-spacing:.08em;margin:12px 0 6px}.field-label span{text-transform:none;letter-spacing:0;font-weight:500}.segmented{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}.segmented button{background:#101512;border:1px solid var(--line);color:#809087;border-radius:7px;padding:8px}.segmented button.active{color:#bcf4cd;background:#12321f;border-color:#2c6841}.section-divider{height:1px;background:var(--line);margin:18px 0}.quick-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.quick-item{aspect-ratio:1;border:1px solid var(--line);border-radius:8px;background:#111713;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;color:#adbbb2}.quick-item:hover{background:#152019;border-color:#315b40}.pixel-icon{width:28px;height:28px;display:grid;place-items:center;font-size:18px;filter:saturate(.9);text-shadow:0 2px 0 #000}.quick-item small{font-size:8px;max-width:56px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tool-btn{width:100%;display:flex;align-items:center;gap:10px;background:transparent;border:1px solid transparent;padding:9px;border-radius:8px;color:#cbd8d0;text-align:left}.tool-btn:hover{background:#111814;border-color:var(--line)}.tool-icon{width:28px;height:28px;border:1px solid var(--line);border-radius:7px;background:#0d120f;display:grid;place-items:center;color:#71dc94}.tool-btn b{display:block;font-size:11px}.tool-btn small{display:block;font-size:9px;color:var(--muted);margin-top:2px}.canvas-area{padding:28px 34px;overflow:auto;min-width:0}.canvas-toolbar{display:flex;justify-content:space-between;align-items:flex-start;max-width:900px;margin:0 auto 24px}.eyebrow{color:#5ee28e;font-size:9px;font-weight:850;letter-spacing:.16em}.canvas-toolbar h1,.modal h2{font-size:20px;margin:4px 0 5px}.canvas-toolbar p{margin:0;color:var(--muted);font-size:11px}.toolbar-chips{display:flex;gap:7px}.toolbar-chips span{background:#101512;border:1px solid var(--line);border-radius:999px;padding:7px 10px;font-size:10px;color:#89988f}.minecraft-stage{min-height:530px;display:grid;place-items:center;padding:32px;border:1px solid #19221d;border-radius:18px;background-image:linear-gradient(rgba(27,48,36,.19) 1px,transparent 1px),linear-gradient(90deg,rgba(27,48,36,.19) 1px,transparent 1px),radial-gradient(circle at 50% 45%,rgba(50,111,72,.14),transparent 42%);background-size:28px 28px,28px 28px,auto}.minecraft-window{background:#c6c6c6;border:4px solid #080808;box-shadow:inset 3px 3px #fff,inset -3px -3px #555,0 24px 55px rgba(0,0,0,.55);padding:14px 14px 13px;image-rendering:pixelated;max-width:100%}.mc-title,.mc-inventory-label{font-family:monospace;color:#343434;text-shadow:1px 1px #fff;font-size:15px;margin:1px 0 9px}.mc-inventory-label{font-size:10px;margin:10px 0 0;color:#656565}.inventory-grid{display:grid;grid-template-columns:repeat(9,56px);grid-auto-rows:56px;gap:0}.slot{width:56px;height:56px;position:relative;border:0;background:#8b8b8b;box-shadow:inset 2px 2px #373737,inset -2px -2px #fff;display:grid;place-items:center;padding:0}.slot:hover{background:#979797}.slot.selected:after{content:"";position:absolute;inset:3px;border:2px solid #4be47e;box-shadow:0 0 0 1px #173e25,0 0 14px rgba(72,209,124,.45);pointer-events:none}.slot-index{position:absolute;right:4px;bottom:2px;color:rgba(255,255,255,.38);font:8px monospace;text-shadow:1px 1px #333}.item-render{width:39px;height:39px;display:grid;place-items:center;position:relative;pointer-events:none}.item-render img{width:36px;height:36px;object-fit:contain;image-rendering:pixelated;filter:drop-shadow(2px 3px 0 rgba(0,0,0,.38))}.fallback-item{width:34px;height:34px;display:grid;place-items:center;background:linear-gradient(135deg,#59655c,#29332d);border:2px solid #9ca89f;box-shadow:inset -3px -3px #26302a,inset 3px 3px #c4cec8;color:#f4fff7;font:bold 9px monospace;text-shadow:1px 1px #000}.fallback-item.glass{background:rgba(36,52,44,.34);border-color:#4f6257;color:#adc0b5}.fallback-item.emerald{background:#19a95c;border-color:#6ef3a6}.fallback-item.redstone{background:#a52930;border-color:#ee6970}.fallback-item.gold{background:#d09d1a;border-color:#ffdc60}.fallback-item.diamond{background:#36bac6;border-color:#9df8ff}.fallback-item.paper{background:#e0ded1;border-color:#fff;color:#313632}.fallback-item.book{background:#6d3428;border-color:#b46852}.fallback-item.arrow{background:#aaa;border-color:#eee}.item-amount{position:absolute;right:0;bottom:-2px;color:white;font:bold 13px monospace;text-shadow:2px 2px #333}.hint-row{display:flex;gap:18px;justify-content:center;color:#74847a;font-size:9px;margin-top:14px}.hint-row kbd{font:8px monospace;color:#b6c5bc;border:1px solid #2c3932;background:#101512;border-radius:4px;padding:2px 4px}.selected-preview{display:flex;align-items:center;gap:11px;border:1px solid var(--line);background:#101512;border-radius:10px;padding:10px;margin-bottom:10px}.large-item-preview{width:47px;height:47px;border-radius:8px;background:#090d0b;border:1px solid #263029;display:grid;place-items:center;color:#526157}.large-item-preview img{width:36px;height:36px;object-fit:contain;image-rendering:pixelated}.selected-preview strong{display:block;font-size:11px}.selected-preview small{display:block;color:var(--muted);font-size:9px;margin-top:3px}.input,.textarea,.material-control input{width:100%;border:1px solid var(--line);background:#090d0b;color:#dbe8df;border-radius:8px;padding:9px 10px;outline:none;font-size:11px}.input:focus,.textarea:focus,.material-control input:focus{border-color:#347349;box-shadow:0 0 0 3px rgba(72,209,124,.06)}.textarea{resize:vertical;line-height:1.45}.mono{font-family:"SFMono-Regular",Consolas,monospace;font-size:9px}.material-control{display:flex}.material-control input{border-radius:8px 0 0 8px}.material-control button{width:38px;border:1px solid var(--line);border-left:0;background:#131b16;color:#74d995;border-radius:0 8px 8px 0}.select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,#6d7b72 50%),linear-gradient(135deg,#6d7b72 50%,transparent 50%);background-position:calc(100% - 14px) 50%,calc(100% - 10px) 50%;background-size:4px 4px,4px 4px;background-repeat:no-repeat}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:10px}.conditional-fields.hidden,.hidden{display:none!important}.decoded-url{font:9px monospace;color:#6f8577;word-break:break-all;border-left:2px solid #22452f;padding:6px 8px;margin-top:7px;max-height:54px;overflow:auto}.status-dot{font-size:8px;color:#79df98}.inspector-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:18px}.modal-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.72);display:grid;place-items:center;z-index:30;padding:20px;backdrop-filter:blur(8px)}.modal{width:min(850px,94vw);background:#0e1411;border:1px solid #29352e;border-radius:15px;box-shadow:var(--shadow);overflow:hidden}.modal-header{display:flex;justify-content:space-between;padding:18px 20px 12px}.icon-btn{border:1px solid var(--line);background:#111713;color:#a8b7ae;width:30px;height:30px;border-radius:7px;font-size:18px}.export-tabs{display:flex;padding:0 20px;border-bottom:1px solid var(--line)}.export-tabs button{border:0;border-bottom:2px solid transparent;background:transparent;color:#77877d;padding:10px 13px;font-size:10px}.export-tabs button.active{color:#6ae694;border-bottom-color:#4fd67f}.code-output{display:block;width:100%;height:390px;border:0;outline:0;resize:none;background:#070a08;color:#bcdac5;padding:18px;font:10px/1.55 "SFMono-Regular",Consolas,monospace}.modal-footer{display:flex;justify-content:flex-end;gap:8px;padding:12px 16px;border-top:1px solid var(--line)}.toast{position:fixed;left:50%;bottom:22px;transform:translate(-50%,20px);opacity:0;background:#142219;border:1px solid #2b6e43;color:#c8f8d8;padding:9px 13px;border-radius:9px;font-size:10px;transition:.2s;z-index:40}.toast.show{opacity:1;transform:translate(-50%,0)}@media(max-width:1150px){.workspace{grid-template-columns:220px 1fr}.inspector{position:fixed;right:0;top:72px;bottom:0;width:330px;z-index:12;box-shadow:-20px 0 60px rgba(0,0,0,.4)}.canvas-area{padding-right:350px}.topbar{grid-template-columns:220px 1fr 220px}}@media(max-width:900px){.workspace{display:block}.left-panel{display:none}.canvas-area{padding:20px}.inspector{position:static;width:auto;border-left:0;border-top:1px solid var(--line)}.topbar{grid-template-columns:1fr auto}.project-title-wrap{display:none}.inventory-grid{grid-template-columns:repeat(9,44px);grid-auto-rows:44px}.slot{width:44px;height:44px}.minecraft-stage{padding:15px;min-height:420px}.top-actions .ghost{display:none}}

/* Blue theme + vanilla asset browser */
:root{--bg:#050912;--panel:#0a1020;--panel2:#0d1629;--line:#1c2a46;--muted:#8294b5;--text:#edf5ff;--green:#4da3ff;--green2:#1976d2;--blue:#4da3ff;--blue2:#2563eb;--blue3:#8cc8ff;--danger:#ff6b78;--shadow:0 30px 80px rgba(0,0,0,.48)}
html,body{background:radial-gradient(circle at 45% 12%,#10254b 0,#091328 32%,#050913 74%)}
.topbar{background:rgba(6,11,22,.9)}
.brand-cube{border-color:#214b80;background:linear-gradient(145deg,#163e72,#0a1c38);box-shadow:inset 0 0 18px rgba(77,163,255,.18)}
.brand-cube span{background:var(--blue);box-shadow:7px 0 #328eea,0 7px #328eea,7px 7px #145cae}
.menu-title-input{background:#070d1a;color:#dcecff}.menu-title-input:focus{border-color:#315f9e;box-shadow:0 0 0 3px rgba(77,163,255,.1)}
.btn.primary{background:linear-gradient(180deg,#4ca4ff,#2b78da);border-color:#60b0ff;color:white;box-shadow:0 8px 24px rgba(34,114,220,.24)}
.segmented button.active,.export-tabs button.active{background:#173d70;color:#dff0ff;border-color:#2d71bd}
.slot.selected{outline:2px solid #56a9ff;box-shadow:0 0 0 3px rgba(53,144,255,.2),inset 2px 2px #fff,inset -2px -2px #373737}
.pill.blue-pill{color:#9dd2ff;background:#0e2848;border-color:#214a7d}
.eyebrow{color:#68b4ff!important}
.inline-link{float:right;border:0;background:transparent;color:#68b4ff;padding:0;font-size:11px}.inline-link:hover{text-decoration:underline}
.asset-count{font-size:10px;color:#71b8ff}.asset-browser-trigger{width:100%;display:grid;grid-template-columns:38px 1fr 18px;align-items:center;gap:10px;text-align:left;background:linear-gradient(145deg,#0c1d36,#0a1426);border:1px solid #1e3b64;border-radius:11px;color:var(--text);padding:11px;margin-bottom:10px;transition:.16s ease}.asset-browser-trigger:hover{border-color:#3379c5;transform:translateY(-1px);background:linear-gradient(145deg,#10284a,#0b1930)}.asset-browser-trigger b{display:block;font-size:12px}.asset-browser-trigger small{display:block;color:var(--muted);font-size:9.5px;line-height:1.35;margin-top:2px}.asset-browser-icon{height:34px;width:34px;border-radius:8px;background:#102c50;border:1px solid #245888;display:grid;place-items:center;font-size:17px}.chevron{font-size:24px;color:#5caeff}.asset-modal{width:min(1120px,94vw);height:min(790px,90vh);display:flex;flex-direction:column}.modal-subtitle{margin:5px 0 0;color:var(--muted);font-size:12px}.asset-search-row{display:grid;grid-template-columns:1fr 210px;gap:10px;margin:14px 0 10px}.asset-search{display:flex;align-items:center;gap:8px;background:#070d19;border:1px solid var(--line);border-radius:10px;padding:0 12px}.asset-search:focus-within{border-color:#3379c5;box-shadow:0 0 0 3px rgba(77,163,255,.08)}.asset-search span{color:#6dafef;font-size:18px}.asset-search input{height:42px;flex:1;background:transparent;border:0;outline:0;color:var(--text)}.asset-category{height:42px}.asset-browser-meta{display:flex;justify-content:space-between;color:var(--muted);font-size:10px;padding:0 2px 8px}.asset-grid{flex:1;overflow:auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:7px;align-content:start;padding:3px 4px 14px 2px}.asset-card{min-height:104px;border:1px solid #182944;background:linear-gradient(180deg,#0b1629,#08101e);border-radius:10px;padding:9px 7px 7px;color:#ddecff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;transition:.12s ease}.asset-card:hover{border-color:#3e83cb;background:linear-gradient(180deg,#10233f,#0a172b);transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,.23)}.asset-card .vanilla-icon{width:52px;height:52px}.asset-card .asset-name{width:100%;text-align:center;font-size:9px;line-height:1.25;text-transform:capitalize;overflow:hidden;text-overflow:ellipsis}.vanilla-icon{object-fit:contain;image-rendering:pixelated;filter:drop-shadow(2px 3px 2px rgba(0,0,0,.5))}.vanilla-icon.block-flat{border-radius:1px}.asset-empty{flex:1;display:grid;place-items:center;color:var(--muted)}.asset-footer-note{border-top:1px solid var(--line);padding-top:10px;color:#7086aa;font-size:9.5px}.item-render img.vanilla-icon{width:34px;height:34px;object-fit:contain;image-rendering:pixelated}.item-render.large img.vanilla-icon{width:58px;height:58px}.large-item-preview .vanilla-icon{width:58px;height:58px}.quick-item img{width:27px;height:27px;image-rendering:pixelated;object-fit:contain}.quick-item{min-height:58px}.asset-loading-card{height:104px;border-radius:10px;background:linear-gradient(90deg,#0a1425,#10223e,#0a1425);background-size:200% 100%;animation:assetPulse 1.3s linear infinite;border:1px solid #162841}@keyframes assetPulse{to{background-position:-200% 0}}
@media(max-width:900px){.asset-search-row{grid-template-columns:1fr}.asset-category{width:100%}.asset-grid{grid-template-columns:repeat(auto-fill,minmax(92px,1fr))}}

/* Full customization system */
:root{
  --accent:#4da3ff;--accent-dark:#1976d2;--app-bg:#050912;--app-panel:#0a1020;--app-panel2:#0d1629;--app-border:#1c2a46;--app-text:#edf5ff;--app-muted:#8294b5;--stage-grid:#1b365f;--gui-frame:#c6c6c6;--mc-slot:#8b8b8b;--selection:#56a9ff;--ui-radius:10px;--ui-glow:.45;--bg-intensity:1
}
html,body{background:radial-gradient(circle at 45% 12%,color-mix(in srgb,var(--accent) 19%,var(--app-bg)) 0,var(--app-bg) 67%);color:var(--app-text)}
:root{--line:var(--app-border);--muted:var(--app-muted);--text:var(--app-text);--green:var(--accent);--green2:var(--accent-dark);--blue:var(--accent);--blue2:var(--accent-dark)}
.topbar{background:color-mix(in srgb,var(--app-bg) 90%,transparent)}.sidebar,.modal{background:color-mix(in srgb,var(--app-panel) 94%,transparent)}
.btn,.segmented button,.toolbar-chips span,.selected-preview{border-radius:var(--ui-radius)}
.btn.primary{background:linear-gradient(180deg,var(--accent),var(--accent-dark));border-color:color-mix(in srgb,var(--accent) 80%,white);box-shadow:0 8px 24px color-mix(in srgb,var(--accent) 24%,transparent)}
.eyebrow,.inline-link,.asset-count{color:var(--accent)!important}.pill.blue-pill{color:color-mix(in srgb,var(--accent) 60%,white);background:color-mix(in srgb,var(--accent) 14%,var(--app-panel));border-color:color-mix(in srgb,var(--accent) 34%,var(--app-border))}
.minecraft-stage{background-color:color-mix(in srgb,var(--app-bg) 82%,var(--app-panel2));background-image:linear-gradient(color-mix(in srgb,var(--stage-grid) calc(19% * var(--bg-intensity)),transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--stage-grid) calc(19% * var(--bg-intensity)),transparent) 1px,transparent 1px),radial-gradient(circle at 50% 45%,color-mix(in srgb,var(--accent) calc(14% * var(--bg-intensity)),transparent),transparent 42%)}
.minecraft-window{background:var(--gui-frame)}.slot{background:var(--mc-slot)}.slot:hover{background:color-mix(in srgb,var(--mc-slot) 88%,white)}.slot.selected:after{border-color:var(--selection);box-shadow:0 0 0 1px color-mix(in srgb,var(--selection) 30%,black),0 0 14px color-mix(in srgb,var(--selection) calc(var(--ui-glow)*100%),transparent)}
body.no-stage-grid .minecraft-stage{background-image:radial-gradient(circle at 50% 45%,color-mix(in srgb,var(--accent) calc(14% * var(--bg-intensity)),transparent),transparent 42%)}body.no-slot-numbers .slot-index{display:none}body.smooth-icons .vanilla-icon,body.smooth-icons .item-render img,body.smooth-icons .quick-item img{image-rendering:auto}body.compact-slots .inventory-grid{grid-template-columns:repeat(9,48px);grid-auto-rows:48px}body.compact-slots .slot{width:48px;height:48px}
.theme-modal{width:min(980px,95vw);max-height:92vh;display:flex;flex-direction:column}.theme-content{padding:0 20px 18px;overflow:auto}.theme-section{padding:16px 0;border-top:1px solid var(--line)}.theme-section:first-child{border-top:0}.theme-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:13px}.theme-section h3{font-size:13px;margin:0 0 3px}.theme-section p{font-size:10px;color:var(--muted);margin:0}.btn.tiny{padding:6px 9px;font-size:9px}.theme-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.theme-grid-wide{grid-template-columns:repeat(6,minmax(0,1fr))}.theme-field{display:flex;flex-direction:column;gap:6px;color:var(--muted);font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.theme-field input[type=color]{width:100%;height:38px;padding:2px;background:#070d19;border:1px solid var(--line);border-radius:8px;cursor:pointer}.theme-field input[type=range]{width:100%;accent-color:var(--accent)}.color-row{display:grid;grid-template-columns:46px 1fr;gap:6px}.color-row input[type=color]{height:36px}.color-hex{height:36px}.toggle-row{display:flex;align-items:center;gap:15px;margin-top:12px}.toggle-row.wrap{flex-wrap:wrap}.toggle{display:flex;align-items:center;gap:7px;color:#bdcce0;font-size:10px;cursor:pointer}.toggle input{display:none}.toggle span{width:28px;height:16px;border-radius:999px;background:#162238;border:1px solid var(--line);position:relative;transition:.15s}.toggle span:after{content:"";position:absolute;width:10px;height:10px;left:2px;top:2px;border-radius:50%;background:#71809a;transition:.15s}.toggle input:checked+span{background:color-mix(in srgb,var(--accent) 35%,#102039);border-color:color-mix(in srgb,var(--accent) 55%,var(--line))}.toggle input:checked+span:after{left:14px;background:var(--accent)}.title-preview-card{margin-top:13px;border:1px solid var(--line);border-radius:10px;background:#090d12;padding:13px}.title-preview-card>span{display:block;color:#5d6878;font-size:8px;font-weight:800;letter-spacing:.14em;margin-bottom:8px}#customTitlePreview{font-family:monospace;font-size:15px;color:#55aaff}.preset-row{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:12px}.preset-row button{display:flex;align-items:center;gap:6px;border:1px solid var(--line);background:#0b1322;color:#b9c7da;padding:7px 9px;border-radius:8px;font-size:9px}.preset-row i{width:11px;height:11px;border-radius:50%;background:var(--swatch);box-shadow:0 0 9px color-mix(in srgb,var(--swatch) 50%,transparent)}.theme-advanced-row{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:14px}.theme-note{margin-right:auto;color:var(--muted);font-size:9px}.gradient-only.hidden-control{opacity:.35;pointer-events:none}
@media(max-width:900px){.theme-grid,.theme-grid-wide{grid-template-columns:repeat(2,1fr)}.theme-advanced-row{grid-template-columns:1fr}.toggle-row{gap:9px}.theme-note{display:none}}

/* Multi-select + drag/move UX */
.slot.multi-selected{outline:2px solid color-mix(in srgb,var(--selection) 72%,white);outline-offset:-3px;box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--selection) 28%,transparent)}
.slot.selected.multi-selected{outline:2px solid var(--selection);box-shadow:0 0 0 3px color-mix(in srgb,var(--selection) 24%,transparent),inset 0 0 0 2px color-mix(in srgb,var(--selection) 40%,transparent)}
.slot.drop-target{filter:brightness(1.16);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 48%,transparent),inset 2px 2px #fff,inset -2px -2px #373737}
.interaction-hint{margin-top:10px;padding:8px 10px;border:1px solid color-mix(in srgb,var(--app-border) 82%,transparent);border-radius:8px;background:color-mix(in srgb,var(--app-panel) 72%,transparent);color:var(--app-muted);font-size:9px;line-height:1.5;text-align:center}.interaction-hint b{color:color-mix(in srgb,var(--accent) 68%,white)}
.slot{user-select:none;-webkit-user-select:none}

/* Minecraft-like hover tooltips */
@font-face{font-family:"MinecraftDefault";src:local("Minecraft"),local("Minecraft Regular");font-display:swap}
.mc-title,.mc-inventory-label,.mc-tooltip{font-family:"MinecraftDefault","Courier New",monospace}
.slot{overflow:visible}
.mc-tooltip{display:none;position:absolute;z-index:80;left:calc(100% + 10px);top:-6px;min-width:170px;max-width:320px;padding:8px 10px;background:rgba(16,0,16,.94);border:2px solid #2a0a4a;box-shadow:inset 0 0 0 1px #100010,2px 2px 0 rgba(0,0,0,.5);color:#fff;font-size:12px;line-height:1.35;white-space:normal;text-align:left;pointer-events:none;text-shadow:1px 1px #000;image-rendering:pixelated}
.slot.tooltip-open .mc-tooltip{display:block}
.mc-tip-name{color:#fff;margin-bottom:2px}.mc-tip-lore{color:#aaa}.mc-tip-meta{color:#555;margin-top:4px;font-size:10px}
.slot:nth-child(9n+7) .mc-tooltip,.slot:nth-child(9n+8) .mc-tooltip,.slot:nth-child(9n) .mc-tooltip{left:auto;right:calc(100% + 10px)}

/* ========================================================================
   IF Studio v4 — true Minecraft chest canvas + complete texture browser
   ======================================================================== */

.chest-preview-window{
  width:min(100%,680px)!important;
  padding:20px!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  display:flex!important;
  flex-direction:column;
  align-items:center;
  overflow:visible;
}

.chest-preview-shell{
  --chest-height-3x:504px;
  --chest-height-2x:336px;
  --chest-height-1x:168px;
  position:relative;
  width:528px;
  height:var(--chest-height-3x);
  flex:0 0 auto;
  filter:drop-shadow(0 24px 25px rgba(0,0,0,.58));
  transition:height .16s ease;
}

.chest-native-frame{
  position:absolute;
  left:0;
  top:0;
  width:176px;
  height:168px;
  transform:scale(3);
  transform-origin:top left;
  image-rendering:pixelated;
  isolation:isolate;
}

.chest-background-canvas{
  position:absolute;
  inset:0;
  z-index:0;
  display:block;
  image-rendering:pixelated;
  pointer-events:none;
}

.mc-title-canvas{
  position:absolute;
  left:8px;
  top:6px;
  z-index:4;
  width:160px;
  height:10px;
  display:block;
  image-rendering:pixelated;
  pointer-events:none;
}

.mc-title-fallback{
  position:absolute!important;
  left:8px;
  top:6px;
  z-index:3;
  width:160px;
  height:10px;
  margin:0!important;
  overflow:hidden;
  color:#404040!important;
  font:7px/9px "Courier New",monospace!important;
  letter-spacing:-1px;
  text-shadow:none!important;
  white-space:nowrap;
  pointer-events:none;
}

.chest-slot-layer{
  position:absolute!important;
  inset:0!important;
  z-index:5;
  display:block!important;
  width:176px!important;
  height:100%!important;
  overflow:visible!important;
  pointer-events:none;
}

.chest-slot-layer .chest-slot{
  position:absolute!important;
  width:18px!important;
  height:18px!important;
  min-width:18px!important;
  min-height:18px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  outline:0;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
  display:grid!important;
  place-items:center;
  pointer-events:auto;
  image-rendering:pixelated;
}

.chest-slot-layer .chest-slot::before{
  content:"";
  position:absolute;
  inset:1px;
  z-index:0;
  background:transparent;
  pointer-events:none;
}

.chest-slot-layer .chest-slot:hover::before{
  background:rgba(255,255,255,.19);
}

.chest-slot-layer .chest-slot.multi-selected::before{
  background:color-mix(in srgb,var(--selection) 31%,transparent);
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--selection) 82%,white);
}

.chest-slot-layer .chest-slot.selected::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:8;
  border:1px solid color-mix(in srgb,var(--selection) 78%,white)!important;
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--selection) 35%,transparent),0 0 4px color-mix(in srgb,var(--selection) 55%,transparent)!important;
  pointer-events:none;
}

.chest-slot-layer .chest-slot.drop-target::before{
  background:rgba(255,255,255,.35);
  box-shadow:inset 0 0 0 1px #fff,0 0 4px var(--accent);
}

.chest-slot-layer .chest-slot.drag-source{
  opacity:.45;
}

.chest-slot-layer .item-render{
  position:relative;
  z-index:2;
  width:18px!important;
  height:18px!important;
  display:grid!important;
  place-items:center;
  pointer-events:none;
  overflow:visible;
}

.texture-frame{
  position:relative;
  display:grid;
  place-items:center;
  overflow:hidden;
  image-rendering:pixelated;
}

.chest-slot-layer .texture-frame,
.chest-slot-layer .fallback-item{
  width:16px!important;
  height:16px!important;
}

.chest-slot-layer .texture-frame img,
.chest-slot-layer .item-render img.vanilla-icon{
  display:block;
  width:16px!important;
  height:16px!important;
  max-width:16px!important;
  max-height:16px!important;
  object-fit:contain!important;
  image-rendering:pixelated;
  filter:none!important;
}

.chest-slot-layer .texture-frame.animated-strip img{
  width:16px!important;
  height:auto!important;
  max-height:none!important;
  align-self:start;
  object-fit:initial!important;
}

.chest-slot-layer .fallback-item{
  border-width:1px!important;
  box-shadow:none!important;
  font-size:4px!important;
  line-height:16px!important;
}

.chest-slot-layer .item-amount{
  position:absolute!important;
  right:-1px!important;
  bottom:-1px!important;
  z-index:6;
  color:#fff;
  font:bold 7px/7px "Courier New",monospace!important;
  letter-spacing:-1px;
  text-shadow:1px 1px #3f3f3f!important;
  pointer-events:none;
}

.chest-slot-layer .slot-index{
  position:absolute;
  right:1px!important;
  top:1px;
  bottom:auto!important;
  z-index:9;
  color:rgba(255,255,255,.7)!important;
  font:3px/4px monospace!important;
  text-shadow:1px 1px #222!important;
  pointer-events:none;
}

.player-inventory-caption{display:none!important}

.mc-inventory-label{
  margin:12px 0 0!important;
  color:var(--app-muted)!important;
  font:9px/1.4 Inter,ui-sans-serif,system-ui,sans-serif!important;
  text-shadow:none!important;
  text-align:center;
}

.interaction-hint{
  max-width:600px;
  margin-top:13px!important;
}

.minecraft-stage{
  min-height:580px;
  overflow:auto;
  align-items:center;
}

/* Large inspector previews keep their full readable size. */
.large-item-preview .item-render.large{
  width:58px!important;
  height:58px!important;
}
.large-item-preview .item-render.large .texture-frame,
.large-item-preview .item-render.large .fallback-item{
  width:48px!important;
  height:48px!important;
}
.large-item-preview .item-render.large img.vanilla-icon{
  width:48px!important;
  height:48px!important;
  max-width:48px!important;
  max-height:48px!important;
  object-fit:contain;
}
.large-item-preview .item-render.large .texture-frame.animated-strip img{
  width:48px!important;
  height:auto!important;
  max-height:none!important;
  align-self:start;
}
.large-item-preview .item-amount{font-size:12px!important;right:1px!important;bottom:1px!important}

/* Complete repository texture browser. */
.asset-modal{
  width:min(1220px,96vw)!important;
  height:min(900px,94vh)!important;
  display:flex!important;
  flex-direction:column;
}

.full-tree-controls{
  display:grid!important;
  grid-template-columns:minmax(330px,1fr) 190px 220px!important;
  gap:9px!important;
  padding:0 20px 10px!important;
}

.asset-browser-meta{
  padding:0 22px 9px!important;
}

.asset-grid{
  padding:4px 20px 16px!important;
  grid-template-columns:repeat(auto-fill,minmax(126px,1fr))!important;
  gap:9px!important;
  min-height:0;
}

.asset-card{
  position:relative;
  min-height:142px!important;
  padding:10px 8px 8px!important;
  justify-content:flex-start!important;
  overflow:hidden;
}

.asset-card>.texture-frame{
  width:66px;
  height:66px;
  flex:0 0 66px;
  margin-bottom:2px;
  border-radius:4px;
  background-image:linear-gradient(45deg,rgba(255,255,255,.035) 25%,transparent 25%),linear-gradient(-45deg,rgba(255,255,255,.035) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,rgba(255,255,255,.035) 75%),linear-gradient(-45deg,transparent 75%,rgba(255,255,255,.035) 75%);
  background-size:10px 10px;
  background-position:0 0,0 5px,5px -5px,-5px 0;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.05);
}

.asset-card>.texture-frame img{
  width:58px;
  height:58px;
  max-width:58px;
  max-height:58px;
  object-fit:contain;
  image-rendering:pixelated;
  filter:drop-shadow(2px 3px 1px rgba(0,0,0,.45));
}

.asset-card>.texture-frame.animated-strip img{
  width:58px;
  height:auto;
  max-height:none;
  align-self:start;
  object-fit:initial;
}

.asset-card .asset-name{
  display:block;
  width:100%;
  color:#e8f3ff;
  font-size:9.5px!important;
  font-weight:750;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

.asset-card .asset-path{
  display:block;
  width:100%;
  color:#7890b5;
  font:7.5px/1.25 "SFMono-Regular",Consolas,monospace;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

.asset-card .asset-namespace{
  display:block;
  width:100%;
  margin-top:auto;
  color:color-mix(in srgb,var(--accent) 65%,#a9bdd7);
  font-size:7px;
  text-transform:uppercase;
  letter-spacing:.06em;
}

.texture-error{
  display:grid!important;
  place-items:center;
  color:#71809a;
  border:1px dashed #30415e;
  font:bold 18px monospace;
}

.asset-pagination{
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:14px;
  padding:10px 20px;
  border-top:1px solid var(--line);
  color:var(--app-muted);
  font-size:9px;
  text-align:center;
}
.asset-pagination button:disabled{opacity:.35;cursor:not-allowed}
.asset-footer-note{margin:0 20px 14px!important;padding-top:10px!important}
.asset-empty{padding:30px}

.quick-item .item-render{
  width:31px!important;
  height:31px!important;
}
.quick-item .texture-frame,
.quick-item .fallback-item{
  width:28px!important;
  height:28px!important;
}
.quick-item .texture-frame img{
  width:28px!important;
  height:28px!important;
  max-width:28px!important;
  max-height:28px!important;
  object-fit:contain;
  image-rendering:pixelated;
}
.quick-item .texture-frame.animated-strip img{height:auto!important;max-height:none!important;align-self:start}

/* Canvas-rendered default Minecraft tooltip. */
.global-mc-tooltip{
  position:fixed;
  z-index:120;
  display:none;
  pointer-events:none;
  image-rendering:pixelated;
  filter:drop-shadow(3px 4px 0 rgba(0,0,0,.42));
}

.global-mc-tooltip-fallback{
  position:fixed;
  z-index:120;
  max-width:520px;
  padding:8px 10px;
  pointer-events:none;
  color:#aaa;
  background:rgba(16,0,16,.96);
  border:2px solid #2c0a4d;
  box-shadow:inset 0 0 0 1px #100010,3px 4px 0 rgba(0,0,0,.42);
  font:12px/1.35 "Courier New",monospace;
  text-shadow:1px 1px #000;
  white-space:pre-wrap;
}
.global-mc-tooltip-fallback .tooltip-name{color:#fff;margin-bottom:2px}
.global-mc-tooltip-fallback .tooltip-line{color:#aaa}

/* Remove the old per-slot tooltip implementation. */
.mc-tooltip{display:none!important}

body.no-slot-numbers .slot-index{display:none!important}
body.smooth-icons .texture-frame,
body.smooth-icons .texture-frame img,
body.smooth-icons .chest-background-canvas,
body.smooth-icons .mc-title-canvas{image-rendering:auto!important}
body.compact-slots .chest-native-frame{transform:scale(2.75)}
body.compact-slots .chest-preview-shell{width:484px;height:calc(var(--chest-height-3x) * .9167)}

@media(max-width:1480px){
  .workspace{grid-template-columns:244px minmax(520px,1fr) 310px}
  .canvas-area{padding:24px 22px}
}

@media(max-width:1220px){
  .workspace{grid-template-columns:225px minmax(400px,1fr) 290px}
  .chest-preview-shell{width:352px;height:var(--chest-height-2x)}
  .chest-native-frame{transform:scale(2)}
  body.compact-slots .chest-native-frame{transform:scale(1.85)}
  body.compact-slots .chest-preview-shell{width:326px;height:calc(var(--chest-height-2x) * .925)}
  .minecraft-stage{min-height:460px;padding:22px}
}

@media(max-width:980px){
  .topbar{grid-template-columns:1fr auto;height:auto;min-height:72px;gap:10px;padding:12px 16px}.project-title-wrap{grid-row:2;grid-column:1/-1}.menu-title-input{width:100%}
  .workspace{display:block}.sidebar{border:0;border-bottom:1px solid var(--line);max-height:none}.inspector{border-top:1px solid var(--line)}
  .canvas-area{padding:22px 14px}.canvas-toolbar{flex-direction:column;gap:12px}
  .full-tree-controls{grid-template-columns:1fr!important}.asset-modal{height:96vh!important}.asset-grid{grid-template-columns:repeat(auto-fill,minmax(105px,1fr))!important}
}

@media(max-width:600px){
  .top-actions{gap:4px;flex-wrap:wrap}.btn{padding:8px 9px}.brand small{display:none}
  .minecraft-stage{padding:16px 8px;justify-content:start}
  .chest-preview-shell{width:352px;height:var(--chest-height-2x)}
  .chest-native-frame{transform:scale(2)}
  .hint-row{flex-wrap:wrap}
  .asset-pagination{grid-template-columns:1fr 1fr}.asset-pagination span{grid-column:1/-1;grid-row:1}
}


/* True 3D Minecraft head renderer. */
.player-head-render{
  --head-cube-size:22px;
  position:relative;
  display:inline-grid;
  place-items:center;
  width:34px;
  height:34px;
  perspective:110px;
  transform-style:preserve-3d;
  image-rendering:pixelated;
  filter:drop-shadow(2px 3px 1px rgba(0,0,0,.46));
  overflow:visible;
}
.player-head-cube{
  position:absolute;
  left:50%;
  top:50%;
  width:var(--head-cube-size);
  height:var(--head-cube-size);
  margin-left:calc(var(--head-cube-size) / -2);
  margin-top:calc(var(--head-cube-size) / -2);
  transform-style:preserve-3d;
  transform:rotateX(-24deg) rotateY(38deg);
  transition:transform .18s ease;
}
.player-head-overlay-cube{transform:rotateX(-24deg) rotateY(38deg) scale3d(1.075,1.075,1.075)}
.player-head-face{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  image-rendering:pixelated;
  backface-visibility:hidden;
  transform-origin:center;
}
.player-head-face.face-front{transform:translateZ(calc(var(--head-cube-size) / 2));filter:brightness(1)}
.player-head-face.face-right{transform:rotateY(90deg) translateZ(calc(var(--head-cube-size) / 2));filter:brightness(.76)}
.player-head-face.face-top{transform:rotateX(90deg) translateZ(calc(var(--head-cube-size) / 2));filter:brightness(1.13)}
.player-head-render.head-loading::after{
  content:"";
  width:7px;height:7px;border:1px solid rgba(255,255,255,.35);border-top-color:var(--accent);border-radius:50%;animation:headSpin .7s linear infinite
}
.player-head-render.head-ready::after{display:none}
.player-head-render.head-render-error::after{content:"?";display:grid;place-items:center;width:18px;height:18px;border:1px dashed #53647e;color:#92a5c2;font:bold 10px monospace;animation:none;border-radius:2px}
@keyframes headSpin{to{transform:rotate(360deg)}}
.asset-card:hover .player-head-cube{transform:rotateX(-26deg) rotateY(48deg)}
.asset-card:hover .player-head-overlay-cube{transform:rotateX(-26deg) rotateY(48deg) scale3d(1.075,1.075,1.075)}

.chest-slot-layer .player-head-render{
  --head-cube-size:12px;
  width:16px;
  height:16px;
  perspective:55px;
  filter:drop-shadow(1px 1px 0 rgba(0,0,0,.48));
}
.item-render.large .player-head-render,
.large-item-preview .player-head-render{
  --head-cube-size:35px;
  width:52px;
  height:52px;
  perspective:170px;
  filter:drop-shadow(3px 4px 1px rgba(0,0,0,.5));
}
.quick-item .player-head-render{
  --head-cube-size:20px;
  width:29px;
  height:29px;
  perspective:95px;
}
.asset-card>.player-head-render{
  --head-cube-size:40px;
  width:66px;
  height:66px;
  flex:0 0 66px;
  perspective:190px;
  margin-bottom:2px;
  border-radius:4px;
  background-image:linear-gradient(45deg,rgba(255,255,255,.035) 25%,transparent 25%),linear-gradient(-45deg,rgba(255,255,255,.035) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,rgba(255,255,255,.035) 75%),linear-gradient(-45deg,transparent 75%,rgba(255,255,255,.035) 75%);
  background-size:10px 10px;
  background-position:0 0,0 5px,5px -5px,-5px 0;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.05);
}
.head-asset-card{border-color:color-mix(in srgb,var(--accent) 42%,#182944)!important;background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 9%,#0b1629),#08101e)!important}
.head-preview-card{
  display:grid;
  grid-template-columns:70px minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
  padding:10px;
  margin:7px 0 12px;
  border:1px solid color-mix(in srgb,var(--accent) 34%,var(--line));
  background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 8%,#09111f),#080d16);
  border-radius:10px;
}
.head-live-preview{
  width:68px;
  height:68px;
  display:grid;
  place-items:center;
  border-radius:8px;
  background-image:linear-gradient(45deg,rgba(255,255,255,.045) 25%,transparent 25%),linear-gradient(-45deg,rgba(255,255,255,.045) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,rgba(255,255,255,.045) 75%),linear-gradient(-45deg,transparent 75%,rgba(255,255,255,.045) 75%);
  background-size:10px 10px;
  background-position:0 0,0 5px,5px -5px,-5px 0;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.06);
}
.head-live-preview .player-head-render{--head-cube-size:42px;width:64px;height:64px;perspective:210px;filter:drop-shadow(3px 5px 1px rgba(0,0,0,.5))}
.head-preview-copy{min-width:0}
.head-preview-copy strong{display:block;font-size:10px;color:#e9f4ff;margin-bottom:4px}
.head-preview-copy small{display:block;font-size:8.5px;line-height:1.35;color:var(--app-muted)}
.head-reset-btn{white-space:nowrap;padding:6px 8px!important}
.status-dot.invalid{color:#ff7784!important}
.status-dot.valid{color:#61e797!important}
body.smooth-icons .player-head-face{image-rendering:auto}
@media(max-width:1150px){.head-preview-card{grid-template-columns:58px 1fr}.head-live-preview{width:56px;height:56px}.head-live-preview .player-head-render{--head-cube-size:34px;width:52px;height:52px}.head-reset-btn{grid-column:1/-1}}

/* Keep the inspector's 3D item preview contained and away from its text. */
.selected-preview{align-items:center}
.large-item-preview{width:64px!important;height:64px!important;min-width:64px;overflow:visible}
.large-item-preview .item-render.large{width:60px!important;height:60px!important}
.large-item-preview .item-render.large .player-head-render{--head-cube-size:31px;width:54px;height:54px;perspective:155px}
