:root{--bg:#060606;--panel:#0d0d0f;--panel2:#141416;--panel3:#19191c;--line:#2b2b2f;--line2:#3b3428;--gold:#d6a94a;--gold2:#f0d28a;--gold3:#9d7328;--text:#f4f4f5;--muted:#96969d;--soft:#c5c5ca;--shadow:0 18px 50px rgba(0,0,0,.34)}*{box-sizing:border-box}html{background:#060606}body,html{margin:0;min-height:100%;color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}body{min-height:100vh;display:flex;flex-direction:column;overflow:auto;background:radial-gradient(circle at 78% 2%,rgba(214,169,74,.12),transparent 24%),linear-gradient(145deg,#080808,#040404 68%)}button,input,select{font:inherit}.topbar{height:60px;padding:0 18px;border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;background:rgba(7,7,8,.91);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);z-index:20}.brand{display:flex;align-items:center;gap:10px;font-weight:780;letter-spacing:.015em}.brand-mark{display:grid;place-items:center;width:32px;height:32px;border:1px solid var(--gold);border-radius:8px;color:var(--gold2);font-size:10px;font-weight:950;box-shadow:inset 0 0 18px rgba(214,169,74,.08),0 0 22px rgba(214,169,74,.08)}.app-name{font-size:11px;letter-spacing:.24em;color:#dadadd;font-weight:850}.site-link{justify-self:end;color:var(--gold2);text-decoration:none;font-size:9px;letter-spacing:.14em;font-weight:850}.site-link:hover{color:#fff}.app-shell{flex:1;display:grid;grid-template-columns:350px 1fr}.panel{border-right:1px solid var(--line);overflow:auto;scrollbar-width:thin;scrollbar-color:#3b3428 transparent}.eyebrow{font-size:10px;letter-spacing:.22em;color:var(--gold);font-weight:950}.hero-copy h1{line-height:.98;margin:9px 0 8px;letter-spacing:-.045em}.hero-copy p{margin:0;color:var(--muted);font-size:13px}.hero-meta{display:flex;gap:7px;flex-wrap:wrap;margin-top:13px}.hero-meta span{border:1px solid #342f28;background:#11100e;color:#bfb29b;border-radius:999px;padding:5px 8px;font-size:8px;font-weight:850;letter-spacing:.09em}.control-section{border-top:1px solid var(--line)}.section-title{font-size:10px;letter-spacing:.18em;font-weight:950}.preset-grid,.theme-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.tool-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:13px}button{border:1px solid #35353a;background:linear-gradient(180deg,#1a1a1d,#141416);color:#dedee2;border-radius:9px;min-height:41px;padding:9px 11px;font-size:11px;font-weight:820;cursor:pointer;transition:transform .16s,border-color .16s,box-shadow .16s,background .16s}button:hover{border-color:#66666d;transform:translateY(-1px)}button:active{transform:translateY(0) scale(.985)}button.active{border-color:var(--gold);color:var(--gold2);background:linear-gradient(180deg,#1d1a14,#171510);box-shadow:inset 0 0 0 1px rgba(214,169,74,.11),0 0 22px rgba(214,169,74,.05)}button.primary{background:linear-gradient(180deg,#e1bd68,#b9872f);border-color:#ebce89;color:#090909;box-shadow:0 8px 24px rgba(185,135,47,.13)}button.primary:hover{border-color:#ffe2a2;box-shadow:0 10px 28px rgba(214,169,74,.22)}button.secondary{background:linear-gradient(180deg,#1b1b1e,#141416);border-color:#4c4c52}.full{width:100%;margin-top:11px}.full.primary{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:52px}.full.primary small{font-size:8px;letter-spacing:.03em;font-weight:650;opacity:.66}.compact{min-width:46px;padding:6px;font-size:17px}.export-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.control-section label{display:block;color:#aaaab0;font-size:11px;margin:12px 0}.control-section input[type=number],.control-section select{margin-top:6px;width:100%;height:39px;background:#111113;color:#eee;border:1px solid #333338;border-radius:8px;padding:0 11px;outline:0}.control-section input[type=number]:focus,.control-section select:focus{border-color:#8f733e;box-shadow:0 0 0 3px rgba(214,169,74,.07)}.inline{display:grid;grid-template-columns:1fr 46px;gap:7px}.inline input{margin-top:6px!important}.inline button{margin-top:6px}.slider-row span{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.slider-row b{color:var(--gold2);font-size:10px}.slider-row input{width:100%;accent-color:var(--gold)}.upload-box{border:1px dashed #625540;border-radius:10px;padding:16px!important;text-align:center;cursor:pointer;background:linear-gradient(180deg,#12110f,#0f0f10);transition:.18s}.upload-box:hover{border-color:var(--gold);background:#15130f}.upload-box span{display:block;color:var(--gold2);font-size:10px;font-weight:900;letter-spacing:.11em}.upload-box small{display:block;color:#77777d;font-size:9px;margin-top:6px}.viewer-wrap{position:relative;min-width:0;overflow:hidden;background:#080808}.viewer-wrap:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 52% 26%,rgba(230,184,83,.1),transparent 34%),linear-gradient(180deg,transparent 70%,rgba(0,0,0,.12));z-index:1}.viewer-toolbar{position:absolute;top:14px;left:14px;z-index:4;display:flex;gap:7px;flex-wrap:wrap;max-width:calc(100% - 28px)}.viewer-toolbar button{min-height:34px;background:rgba(10,10,11,.78);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 8px 26px rgba(0,0,0,.16)}#viewer{width:100%;height:100%}#viewer canvas{display:block;width:100%;height:100%;touch-action:none}.hint,.stats,.status{position:absolute;z-index:4;background:rgba(9,9,10,.8);border:1px solid rgba(75,75,81,.72);padding:8px 10px;color:#b2b2b8;font-size:10px;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 8px 30px rgba(0,0,0,.16)}.stats{left:14px;bottom:14px;color:#c4c4c8;border-color:#4b4030}.hint{right:14px;bottom:14px}.status{right:14px;top:14px;color:var(--gold2);border-color:#5d4b2c;opacity:0;transform:translateY(-4px);transition:.2s}.status.show{opacity:1;transform:translateY(0)}footer{height:36px;border-top:1px solid var(--line);padding:0 18px;display:flex;align-items:center;justify-content:space-between;color:#6d6d72;font-size:8px;letter-spacing:.11em;background:#080808}.panel::-webkit-scrollbar{width:7px}.panel::-webkit-scrollbar-thumb{background:#302b22;border-radius:8px}.panel::-webkit-scrollbar-track{background:0 0}@media(max-width:900px){body{overflow:auto}.topbar{position:sticky;top:0;height:56px;grid-template-columns:1fr auto}.app-name{display:none}.site-link{font-size:8px}.app-shell{display:flex;flex-direction:column}.viewer-wrap{height:54vh;min-height:390px;order:1;border-bottom:1px solid var(--line)}.panel{order:2;border-right:0;border-top:0;overflow:visible}.controls{padding:20px 16px 28px}.hero-copy{padding-top:2px}.preset-grid,.theme-grid{grid-template-columns:repeat(2,1fr)}footer{position:relative}.hint{display:none}}@media(max-width:520px){.topbar{padding:0 13px}.brand{font-size:12px}.brand-mark{width:30px;height:30px}.site-link{display:none}.viewer-wrap{height:50vh;min-height:355px}.viewer-toolbar{top:10px;left:10px;gap:6px;max-width:calc(100% - 20px)}.viewer-toolbar button{font-size:9px;padding:7px 8px;min-height:32px}.stats{left:10px;bottom:10px;font-size:9px}.status{right:10px;top:50px}.hero-copy h1{font-size:29px}.controls{padding:18px 15px 26px}.control-section{padding:17px 0}.preset-grid,.theme-grid{gap:7px}.tool-grid{grid-template-columns:repeat(2,1fr)}footer{padding:0 12px;font-size:7px}}@media(max-width:360px){.viewer-toolbar button{font-size:8px;padding:6px 7px}.stats{font-size:8px}.hero-copy h1{font-size:26px}}.material-upload{margin-top:12px}.material-note{margin-top:10px;padding:10px 12px;border:1px solid rgba(213,168,63,.24);border-radius:10px;background:rgba(213,168,63,.06);color:#c9c9c9;font-size:12px;letter-spacing:.03em}.brand{text-decoration:none;color:var(--text)}.brand-logo{width:38px;height:38px;border-radius:10px;object-fit:cover;border:1px solid rgba(214,169,74,.45);box-shadow:0 0 24px rgba(214,169,74,.1)}.brand span{display:flex;flex-direction:column;gap:2px}.brand b{font-size:12px;letter-spacing:.09em;color:var(--gold2)}.brand small{font-size:7px;letter-spacing:.18em;color:#9a9a9f}.tool-info{background:linear-gradient(180deg,#090909,#050505);border-top:1px solid #30291d;padding:48px 20px;color:#e9e9eb}.tool-info-inner{max-width:1050px;margin:auto}.info-kicker{color:var(--gold);font-size:10px;font-weight:900;letter-spacing:.2em}.tool-info h2{font-size:clamp(24px,4vw,38px);margin:8px 0 10px;color:var(--gold2);letter-spacing:-.03em}.tool-info p{color:#b8b8bd;line-height:1.65;max-width:850px}.info-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:24px 0}.info-grid>div,.license{border:1px solid #302a20;background:linear-gradient(145deg,#111112,#0b0b0c);border-radius:18px;padding:20px}.tool-info h3{margin:0 0 10px;color:#e8d39b}.tool-info ul{margin:0;padding-left:20px;color:#aaaab0;line-height:1.8}.license small{color:#77777d}.related{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.related a{color:#111;text-decoration:none;background:linear-gradient(135deg,#d5a83f,#f0d98d);font-weight:850;border-radius:999px;padding:10px 14px;font-size:11px}@media(min-width:901px){body{overflow:auto}.app-shell{height:calc(100vh - 96px);min-height:650px}}@media(max-width:650px){.info-grid{grid-template-columns:1fr}.tool-info{padding:36px 15px}.brand b{font-size:10px}.brand small{display:none}.brand-logo{width:32px;height:32px}}.topbar{position:sticky;top:0;box-shadow:0 14px 40px rgba(0,0,0,.44)}.app-shell{width:min(1500px,calc(100% - 28px));margin:14px auto 18px;display:grid;grid-template-columns:minmax(330px,390px) minmax(0,1fr);gap:14px;align-items:stretch;min-height:0}.panel,.viewer-wrap{border:1px solid #3c3326;border-radius:22px;box-shadow:0 24px 65px rgba(0,0,0,.42),inset 0 1px rgba(255,255,255,.025)}.panel{border-right:1px solid #3c3326;background:linear-gradient(155deg,rgba(17,17,19,.985),rgba(8,8,9,.985))}.controls{padding:18px}.hero-copy{padding:18px;margin-bottom:10px;border:1px solid rgba(214,169,74,.24);border-radius:18px;background:linear-gradient(145deg,rgba(214,169,74,.08),rgba(255,255,255,.018))}.hero-copy h1{font-size:28px;margin-top:8px}.control-section{margin-top:10px;padding:16px;border:1px solid #2b2b2f;border-radius:16px;background:linear-gradient(145deg,rgba(255,255,255,.026),rgba(255,255,255,.010))}.control-section:first-of-type{border-top:1px solid #2b2b2f}.section-title{margin-bottom:11px;color:#e7d39c}.viewer-wrap{min-height:650px;background:linear-gradient(180deg,#0a0a0b,#050505)}.viewer-toolbar{padding:7px;border:1px solid rgba(255,255,255,.1);border-radius:14px;background:rgba(7,7,8,.64);backdrop-filter:blur(14px)}.viewer-toolbar button{border-radius:10px}.hint,.stats,.status{border-radius:12px}.tool-info{margin-top:0}@media(min-width:901px){.app-shell{height:calc(100vh - 92px);min-height:680px}.panel{overflow:auto}.viewer-wrap{min-height:0}}@media(max-width:900px){body{overflow:auto}.app-shell{width:min(100% - 18px,760px);margin:10px auto 16px;display:flex;flex-direction:column;gap:12px}.viewer-wrap{order:1;height:58vh;min-height:430px;border-radius:20px;border-bottom:1px solid #3c3326}.panel{order:2;overflow:visible;border-top:1px solid #3c3326;border-radius:20px}.controls{padding:12px}.hero-copy{display:grid;grid-template-columns:1fr auto;align-items:end;gap:10px;padding:15px}.hero-copy .eyebrow,.hero-copy p{grid-column:1}.hero-copy h1{grid-column:1;font-size:25px;margin:5px 0 2px}.hero-meta{grid-column:2;grid-row:1/4;max-width:135px;justify-content:flex-end;margin:0}.control-section{padding:15px;margin-top:9px}.preset-grid,.theme-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.tool-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.export-grid{grid-template-columns:1fr 1fr}footer{margin-top:0}}@media(max-width:620px){.topbar{height:58px;padding:0 12px}.brand-logo{width:34px;height:34px}.brand b{font-size:10px}.brand small{display:block;font-size:6px}.site-link{display:block;font-size:8px}.app-shell{width:calc(100% - 12px);margin:6px auto 12px;gap:8px}.viewer-wrap{height:54vh;min-height:380px;border-radius:17px}.panel{border-radius:17px}.controls{padding:8px}.hero-copy{padding:13px;border-radius:14px;grid-template-columns:1fr}.hero-copy .eyebrow,.hero-copy h1,.hero-copy p,.hero-meta{grid-column:1;grid-row:auto}.hero-copy h1{font-size:24px}.hero-meta{justify-content:flex-start;max-width:none;margin-top:8px}.control-section{padding:13px;border-radius:14px}.preset-grid,.theme-grid{grid-template-columns:repeat(2,1fr)}.tool-grid{grid-template-columns:repeat(3,1fr)}.viewer-toolbar{top:8px;left:8px;right:8px;max-width:none;display:grid;grid-template-columns:repeat(4,1fr);gap:5px;padding:5px}.viewer-toolbar button{min-width:0;padding:7px 4px;font-size:8px}.stats{left:8px;bottom:8px}.status{right:8px;top:54px}.hint{display:none}.info-grid{grid-template-columns:1fr}}@media(max-width:390px){.viewer-wrap{height:51vh;min-height:350px}.viewer-toolbar button{font-size:7.5px}.tool-grid{grid-template-columns:repeat(2,1fr)}}