@font-face{font-family:Badaboom;src:url(/fonts/badaboom.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}:root{--font-body: "Roboto", -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-heading: "Badaboom", Impact, Haettenschweiler, "Arial Black", sans-serif;--bg: #f6f7fb;--bg2: #eef1f7;--panel: rgba(255,255,255,.72);--panel2: rgba(255,255,255,.9);--border: rgba(15, 23, 42, .14);--text: rgba(15, 23, 42, .95);--muted: rgba(15, 23, 42, .7);--muted2: rgba(15, 23, 42, .52);--accent: #e11d2e;--accent2: #b81422;--r-lg: 16px;--r-md: 12px;--shadow: 0 18px 45px rgba(15, 23, 42, .12)}*{box-sizing:border-box}html,body{height:100%}body{margin:0;min-height:100%;overflow-x:hidden;font-family:var(--font-body);font-size:1rem;color:var(--text);background:radial-gradient(900px 520px at 16% -10%,rgba(225,29,46,.12),transparent 55%),radial-gradient(800px 520px at 100% 0%,rgba(56,189,248,.12),transparent 55%),linear-gradient(180deg,var(--bg),var(--bg2))}.title,.hTitle,.modalTitle,.cardTitle,.btn{font-family:var(--font-heading);letter-spacing:1px;text-transform:uppercase}#app{height:100%;display:flex;flex-direction:column}.page{padding:14px;display:flex;flex-direction:column;gap:12px}.pageHeader{display:flex;align-items:flex-end;justify-content:space-between;gap:12px}.cardTitle{font-size:14px;margin-bottom:10px}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:10px}.label{font-size:12px;color:var(--muted2)}.input{width:100%;background:#ffffff0a;border:1px solid var(--border);color:var(--text);padding:10px 12px;border-radius:var(--r-md);outline:none}.row2{display:grid;grid-template-columns:1fr 1fr;gap:10px}.colorPick{display:flex;align-items:center;gap:10px}.colorVal{font-size:12px;opacity:.75;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.actions{display:flex;gap:10px;align-items:center;margin-top:10px}.uploadGrid{display:grid;grid-template-columns:420px 1fr;gap:12px;align-items:start}.uPreviewCard{grid-column:2;grid-row:1 / span 2}@media(max-width:1100px){.uploadGrid{grid-template-columns:1fr}.uPreviewCard{grid-column:1 / -1;grid-row:auto}}@media(max-width:880px){.uploadGrid{grid-template-columns:1fr}}.uPreviewWrap{position:relative;width:100%;height:420px;border-radius:var(--r-lg);overflow:hidden;border:1px solid var(--border);background:radial-gradient(900px 520px at 16% -10%,rgba(225,29,46,.1),transparent 55%),radial-gradient(800px 520px at 100% 0%,rgba(37,99,235,.1),transparent 55%),linear-gradient(180deg,#0f172aeb,#0f172ab8)}#uploadPreviewCanvas{width:100%;height:100%;display:block}.fileMap{display:flex;flex-direction:column;gap:8px;margin-top:10px}.fileRow{display:grid;grid-template-columns:1fr 220px;gap:10px;align-items:center}@media(max-width:600px){.fileRow{grid-template-columns:1fr}}.fileName{font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.select{width:100%;background:#ffffff0a;border:1px solid var(--border);color:var(--text);padding:10px 12px;border-radius:var(--r-md)}.table{border-collapse:collapse}.table th,.table td{border-bottom:1px solid var(--border);padding:10px 8px;text-align:left;font-size:12px;color:var(--text)}.table th{color:var(--muted);font-weight:700}.pill{display:inline-flex;padding:4px 8px;border-radius:999px;border:1px solid var(--border);background:#ffffff0a}.danger{border-color:#d11f2b8c}.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;border-bottom:1px solid var(--border);background:linear-gradient(180deg,#ffffffe0,#ffffffad);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.brand{display:flex;align-items:center;gap:12px}.brandMark{width:14px;height:14px;border-radius:999px;background:var(--accent);box-shadow:0 0 0 6px #d11f2b29,0 10px 30px #d11f2b33}.subtitle{font-size:12px;color:var(--muted2);margin-top:2px}.search{width:min(520px,52vw);background:#ffffff0a;border:1px solid var(--border);color:var(--text);padding:10px 12px;border-radius:var(--r-md);outline:none}.topActions{display:flex;align-items:center;gap:10px}.nav{display:flex;align-items:center;gap:8px}.navLink{display:inline-flex;align-items:center;gap:6px;padding:10px;border-radius:var(--r-md);border:1px solid var(--border);background:#ffffff0a;color:var(--text);text-decoration:none;font-size:12px}.navLink:hover{filter:brightness(1.08)}.navBtn{cursor:pointer}.home{padding:14px;display:flex;flex-direction:column;gap:12px}.homeHeader{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.hTitle{font-size:20px}.hHint{font-size:12px;color:var(--muted2)}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px}.cardThumb{background:var(--panel);border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden;box-shadow:0 10px 35px #0f172a2e;cursor:pointer;transition:transform .12s ease,filter .12s ease}.cardThumb:hover{transform:translateY(-2px);filter:brightness(1.05)}.thumbImg{width:100%;aspect-ratio:16 / 10;object-fit:cover;display:block;background:#0f172a1a}.thumbBody{padding:10px 10px 12px;display:flex;flex-direction:column;gap:6px}.thumbTitle{font-weight:700;font-size:14px}.thumbMeta{font-size:12px;color:var(--muted2);display:flex;justify-content:space-between;gap:8px}.btn{background:linear-gradient(180deg,var(--accent),var(--accent2));border:1px solid rgba(255,255,255,.12);color:#fff;padding:10px 12px;border-radius:var(--r-md);cursor:pointer}.btn.ghost{background:#ffffff0a;border:1px solid var(--border);color:var(--text)}.modal{position:fixed;inset:0;display:none}.modal.open{display:block}.modalBackdrop{position:absolute;inset:0;background:#0f172a73}.modalPanel{position:relative;width:min(1100px,94vw);margin:5vh auto;border-radius:var(--r-lg);border:1px solid var(--border);background:#0f172a2e;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:var(--shadow);overflow:hidden}.modalTop{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border-bottom:1px solid var(--border);background:linear-gradient(180deg,#ffffff0a,#ffffff05)}.modalTitle{font-size:18px}.modalSub{font-size:12px;color:var(--muted2);margin-top:2px}.modalBtns{display:flex;gap:10px}.modalBody{display:grid;grid-template-columns:1fr 320px;min-height:520px}.previewWrap{position:relative;background:radial-gradient(900px 520px at 16% -10%,rgba(225,29,46,.12),transparent 55%),radial-gradient(800px 520px at 100% 0%,rgba(56,189,248,.12),transparent 55%),linear-gradient(180deg,var(--bg),var(--bg2))}#previewCanvas{width:100%;height:100%;display:block}.mStatus{position:absolute;left:12px;bottom:12px;font-size:12px;color:var(--muted);background:#ffffffc7;border:1px solid var(--border);padding:6px 8px;border-radius:999px}.modalSide{padding:12px;display:flex;flex-direction:column;gap:12px;border-left:1px solid var(--border);background:#ffffff05}.card{background:var(--panel);border:1px solid var(--border);border-radius:var(--r-lg);padding:12px}.cardTitle{font-size:16px;margin-bottom:10px}.miniNote{font-size:12.5px;color:var(--muted);line-height:1.35}.kv{display:grid;grid-template-columns:90px 1fr;gap:8px 10px;font-size:13px}.k{color:var(--muted2)}.v{color:var(--text)}@media(max-width:980px){.modalBody{grid-template-columns:1fr}.modalSide{border-left:none;border-top:1px solid var(--border)}}.textureRows{display:flex;flex-direction:column;gap:8px;margin-top:10px}.textureRow{display:grid;grid-template-columns:160px auto 1fr auto;gap:8px;align-items:center}@media(max-width:600px){.textureRow{grid-template-columns:1fr}}.fileChip{font-size:12px;color:#ffffffc7;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.btnTiny{padding:7px 10px;font-size:12px;border-radius:10px}