:root{--bg:#0d0b2e;--card:#221a4d;--green:#39ff14;--orange:#ff8a1f;--txt:#f1eeff}
*{box-sizing:border-box}
body{margin:0;font:600 17px ui-rounded,"SF Pro Rounded","Nunito","Varela Round","Arial Rounded MT Bold",system-ui,-apple-system,sans-serif;color:var(--txt);min-height:100vh;
 background:radial-gradient(1px 1px at 20% 30%,#fff9,transparent),radial-gradient(1px 1px at 70% 10%,#fff8,transparent),radial-gradient(1.5px 1.5px at 40% 80%,#fffa,transparent),radial-gradient(1px 1px at 85% 60%,#fff7,transparent),radial-gradient(1px 1px at 10% 70%,#fff6,transparent),radial-gradient(1.5px 1.5px at 55% 45%,#fff8,transparent),radial-gradient(ellipse at top,#3a1f6e,var(--bg) 70%);
 background-size:220px 220px,300px 300px,260px 260px,180px 180px,340px 340px,400px 400px,100% 100%;background-attachment:fixed;padding-bottom:env(safe-area-inset-bottom)}
header{display:flex;align-items:center;gap:12px;max-width:760px;margin:auto;padding:12px 14px;padding-top:max(12px,env(safe-area-inset-top))}
header img{border-radius:16px;box-shadow:0 0 16px #39ff1455}
h1{margin:0;font-size:30px;font-weight:900;letter-spacing:.5px;color:var(--green);text-shadow:0 0 10px #39ff1488}h1 span{color:var(--orange);text-shadow:0 0 10px #ff8a1f88}
.tag{margin:2px 0 0;color:#c9b8ff;font-size:14px}h2{margin:0;font-size:18px}
main{max-width:760px;margin:auto;padding:0 14px 20px}main.over{outline:3px dashed var(--green);border-radius:16px}
.btn{min-height:52px;border:2px solid #3b2d7a;border-radius:18px;background:var(--card);color:var(--txt);font:inherit;font-weight:800;padding:0 12px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}
.btn:active{transform:scale(.96)}.btn:disabled{opacity:.4}
.primary{background:var(--green);border-color:var(--green);color:#0d0b2e;box-shadow:0 0 18px #39ff1455}
.burst{border-color:var(--orange);color:#ffd0a6}.danger{background:#5a1430;border-color:#a3264f}.sm{min-height:40px;font-size:14px;margin-left:6px}
.big{width:100%;min-height:64px;font-size:21px;font-weight:900;margin:10px 0}
video{width:100%;max-height:55vh;background:#000;display:block}
.row{display:flex;justify-content:space-between;align-items:center;gap:8px;margin:8px 0;flex-wrap:wrap}
.row3,.row4{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:8px 0}.row4{grid-template-columns:repeat(3,1fr)}.row4 .custom{grid-column:1/-1}.custom input{flex:1}.custom::before{content:"Custom:";align-self:center;margin-right:6px;color:#ffd0a6}.row4 .btn{font-size:15px}
.custom{display:flex;gap:4px}.custom input{width:100%;min-width:42px;padding:0;border-radius:14px;border:2px solid var(--orange);background:#120e35;color:#fff;font:inherit;text-align:center}
input[type=range]{width:100%;height:44px;accent-color:var(--green)}select{font:inherit;font-size:16px;padding:8px;border-radius:12px;background:#120e35;color:#fff;border:2px solid #3b2d7a}
.muted,.hint{color:#b3a6e0}#status{color:var(--orange)}
#grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:6px}
.th{position:relative;border-radius:12px;overflow:hidden;border:3px solid transparent}.th img{width:100%;display:block}
.th.sel{border-color:var(--green)}.th.sel::after{content:"✓";position:absolute;top:4px;right:6px;background:var(--green);color:#0d0b2e;border-radius:50%;width:24px;height:24px;text-align:center;font-weight:900}
.th span{position:absolute;bottom:0;left:0;right:0;font-size:11px;background:#0d0b2ecc;padding:2px 4px}
#vwrap{position:relative;overflow:hidden;border-radius:16px;border:2px solid #3b2d7a}
#crop{position:absolute;border:2px solid var(--orange);box-shadow:0 0 0 9999px #0d0b2e99;touch-action:none;cursor:move}
#crop .h{position:absolute;width:34px;height:34px;touch-action:none}#crop .h::after{content:"";position:absolute;inset:9px;background:var(--orange);border-radius:50%}
.nw{left:-17px;top:-17px;cursor:nwse-resize}.ne{right:-17px;top:-17px;cursor:nesw-resize}.sw{left:-17px;bottom:-17px;cursor:nesw-resize}.se{right:-17px;bottom:-17px;cursor:nwse-resize}
#cropT.on{background:var(--orange);border-color:var(--orange);color:#0d0b2e}
footer{text-align:center;color:#b3a6e0;font-size:14px;padding:16px 14px 28px;line-height:1.7}footer a{color:var(--green)}
.privacy{max-width:732px;margin:0 auto 6px;padding:10px 14px;border:2px solid var(--green);border-radius:16px;background:#39ff1418;color:#d9ffd0;font-size:15px;text-align:center}
@media(max-width:760px){.privacy{margin:0 14px 6px}}
.info{max-width:760px;margin:10px auto 0;padding:0 18px;line-height:1.55;font-weight:500}.info h2{color:var(--green);font-size:22px;margin:22px 0 8px}
.info li{margin:6px 0}details{background:var(--card);border:2px solid #3b2d7a;border-radius:14px;padding:12px 14px;margin:8px 0}summary{font-weight:800;cursor:pointer;color:#ffd0a6}
