:root{--primary:#c97830;--primary-h:#a86120;--primary-s:#fef0df;--ink:#1a1f2e;--ink-s:#5b6170;--ink-m:#929aa8;--bg:#f5f1ea;--bg2:#ebe5db;--surface:#fff;--line:#e6e0d8;--line-s:#cbc4bc;--err:#e55;--err-bg:#fff5f5;--err-icon-bg:#fde;--r:12px;--ease:cubic-bezier(.4, 0, .2, 1)}[data-theme=dark]{--primary:#e8944a;--primary-h:#f0a868;--primary-s:#3a2412;--ink:#e8e4dd;--ink-s:#a09888;--ink-m:#6b6458;--bg:#1a1814;--bg2:#141210;--surface:#242118;--line:#363128;--line-s:#4a4438;--err:#e55;--err-bg:#2a1414;--err-icon-bg:#3a1a1a}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--primary:#e8944a;--primary-h:#f0a868;--primary-s:#3a2412;--ink:#e8e4dd;--ink-s:#a09888;--ink-m:#6b6458;--bg:#1a1814;--bg2:#141210;--surface:#242118;--line:#363128;--line-s:#4a4438;--err:#e55;--err-bg:#2a1414;--err-icon-bg:#3a1a1a}}@keyframes fadeUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}:focus{box-shadow:none;outline:none}:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:4px}::selection{background:var(--primary-s)}button,input,label{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}html{background:var(--bg);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;height:100%;transition:background-color .3s}@media (prefers-color-scheme:dark){html{--lightningcss-light: ;--lightningcss-dark:initial}}body{color:var(--ink);background:linear-gradient(180deg, var(--bg), var(--bg2));background-attachment:fixed;flex-direction:column;align-items:center;min-height:100vh;padding:24px 12px 32px;font:15px/1.5 -apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;transition:color .2s;display:flex}button{font:inherit;cursor:pointer}input{font:inherit}.header{text-align:center;width:100%;max-width:820px;animation:fadeUp .3s var(--ease) both;margin-bottom:20px}.header-row{justify-content:center;align-items:center;gap:14px;display:flex}.header-logo{width:auto;height:44px;display:block}.header-icon{filter:drop-shadow(0 2px 4px #c978302e);width:auto;height:72px;display:block}.header-sub{color:var(--ink-s);margin-top:6px;font-size:.82rem;transition:color .2s}.badge{background:var(--primary-s);color:var(--primary-h);vertical-align:middle;border-radius:6px;margin-right:2px;padding:1px 7px;font-size:.58rem;font-weight:700;transition:background-color .2s,color .2s;display:inline-block}.badge-beta{color:var(--primary);border:1.5px solid var(--primary);background:0 0;margin-left:4px}.theme-toggle{background:var(--surface);border:1px solid var(--line);border-radius:10px;gap:1px;margin-top:8px;padding:2px;transition:background-color .2s,border-color .2s;display:inline-flex}.theme-btn{width:32px;height:28px;color:var(--ink-m);cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;transition:background .15s,color .15s;display:flex}.theme-btn svg{width:15px;height:15px}.theme-btn:hover{color:var(--ink-s);background:var(--bg)}.theme-btn.active{background:var(--primary-s);color:var(--primary)}.main{width:100%;max-width:820px}.section{background:var(--surface);border:1px solid var(--line);animation:fadeUp .3s var(--ease) both;border-radius:16px;margin-bottom:16px;padding:24px;transition:background-color .2s,border-color .2s,box-shadow .2s;box-shadow:0 1px 3px #0000000a}.section:nth-child(2){animation-delay:50ms}.section:nth-child(3){animation-delay:.1s}.section:nth-child(4){animation-delay:.15s}.section-hd{color:var(--ink-s);text-transform:uppercase;letter-spacing:.5px;align-items:center;gap:6px;margin-bottom:14px;font-size:.78rem;font-weight:600;transition:color .2s;display:flex}.section-hd .bar{background:var(--primary);border-radius:2px;flex-shrink:0;width:3px;height:14px}.section-hd svg{color:var(--primary);vertical-align:-2px;width:16px;height:16px}.upload{background:var(--surface);border:2px dashed var(--line-s);border-radius:var(--r);text-align:center;cursor:pointer;padding:28px 16px;transition:background .15s,border-color .15s}.upload:hover,.upload.drag{background:var(--primary-s);border-color:var(--primary)}.upload.error{border-color:var(--err);background:var(--err-bg)}.upload.error .upload-icon{background:var(--err-icon-bg)}.upload.error .upload-icon svg,.upload.error .upload-text{color:var(--err)}.upload label{cursor:pointer;color:var(--ink-s);flex-direction:column;align-items:center;gap:8px;font-weight:500;display:flex}.upload-icon{background:var(--primary-s);border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;transition:background .15s;display:flex}.upload-icon svg{color:var(--primary);width:22px;height:22px}.upload-text{color:var(--ink);font-size:.92rem;font-weight:600;transition:color .15s}.upload-hint{color:var(--ink-m);font-size:.75rem;transition:color .15s}.crop{animation:none!important}.crop-hd{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.crop-hd svg{color:var(--primary);vertical-align:-1px;width:14px;height:14px}.crop-hd>span{align-items:center;gap:4px;font-size:.82rem;font-weight:600;display:flex}.crop-actions{gap:8px;display:flex}.btn-sm svg{vertical-align:-1px;width:14px;height:14px}.btn-sm{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:6px 14px;font-size:.78rem;font-weight:600;transition:background .15s,transform .1s}.btn-sm:hover{background:var(--primary-h)}.btn-sm:active{transform:scale(.96)}.btn-outline{color:var(--ink-s);border:1px solid var(--line-s);background:0 0;transition:background .15s,color .15s,border-color .15s}.btn-outline:hover{background:var(--bg);color:var(--ink);border-color:var(--ink-m)}.crop-wrap{aspect-ratio:1;cursor:grab;background:#111;border-radius:10px;width:100%;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff14}.crop-wrap:active{cursor:grabbing}.crop-wrap canvas{width:100%;height:100%;display:block}.crop-overlay{pointer-events:none;z-index:1;position:absolute;inset:0;box-shadow:0 0 0 9999px #0000008c}.crop-frame{z-index:2;pointer-events:none;aspect-ratio:1;box-sizing:content-box;border:2px solid #fffc;border-radius:2px;width:88%;max-width:88%;height:88%;max-height:88%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.crop-hint{z-index:3;color:#ffffff73;white-space:nowrap;pointer-events:none;background:#00000059;border-radius:10px;padding:3px 12px;font-size:.7rem;position:absolute;bottom:10px;left:50%;transform:translate(-50%)}.preview-wrap{flex-direction:column;align-items:center;margin-bottom:14px;display:flex}.preview-canvas{background:var(--surface);border:1px solid var(--line);image-rendering:auto;border-radius:8px;width:280px;height:280px;transition:background-color .2s,border-color .2s;display:block}.preview-size{color:var(--ink-m);text-align:center;font-variant-numeric:tabular-nums;margin-top:6px;font-size:.7rem}.preview-actions{gap:10px;display:flex}.preview-actions .btn-dl{flex:1}.preview-actions .btn-outline{flex-shrink:0}.controls{flex-direction:column;gap:8px;margin-bottom:14px;display:flex}.ctrl{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);cursor:default;touch-action:manipulation;align-items:center;gap:12px;padding:12px 16px;transition:background-color .2s,border-color .2s;display:flex}.ctrl svg{width:18px;height:18px;color:var(--primary);flex-shrink:0}.ctrl span{color:var(--ink);white-space:nowrap;min-width:36px;font-size:.88rem;font-weight:600;transition:color .2s}.ctrl input[type=range]{background:var(--bg);appearance:none;cursor:pointer;touch-action:none;border-radius:6px;outline:none;flex:1;min-width:80px;height:6px;transition:background-color .2s}.ctrl input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:var(--primary);border:3px solid var(--surface);cursor:pointer;border-radius:50%;width:22px;height:22px;box-shadow:0 1px 3px #c978304d}.ctrl input[type=range]::-moz-range-thumb{background:var(--primary);border:3px solid var(--surface);cursor:pointer;border-radius:50%;width:22px;height:22px;box-shadow:0 1px 3px #0003}.ctrl-val{text-align:right;font-variant-numeric:tabular-nums;min-width:48px;color:var(--ink);font-size:.88rem;font-weight:700;transition:color .2s}.btn-dl svg{width:18px;height:18px}.btn-dl-split{flex:1;display:flex;position:relative}.btn-dl-split .btn-dl{border-radius:var(--r) 0 0 var(--r);flex:1}.btn-dl{background:var(--primary);color:#fff;border-radius:var(--r);cursor:pointer;border:none;justify-content:center;align-items:center;gap:8px;width:100%;height:48px;font-size:1rem;font-weight:700;transition:background .12s,transform 80ms;display:flex;box-shadow:0 1px 2px #c9783033}.btn-dl:hover:not(:disabled){background:var(--primary-h);box-shadow:0 2px 6px #c978304d}.btn-dl:active:not(:disabled){box-shadow:none;transform:scale(.98)}.btn-dl:disabled{color:#ccc;cursor:not-allowed;box-shadow:none;background:#8b8b8b}.btn-dl-arrow{background:var(--primary);color:#fff;border-radius:0 var(--r) var(--r) 0;cursor:pointer;border:none;border-left:1px solid #ffffff40;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:48px;transition:background .12s;display:flex}.btn-dl-arrow:hover{background:var(--primary-h)}.btn-dl-arrow svg{width:14px;height:14px;transform:rotate(180deg)}.fmt-drop{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);z-index:10;min-width:100px;animation:fadeUp .15s var(--ease) both;position:absolute;bottom:52px;right:0;overflow:hidden;box-shadow:0 4px 16px #0000001f}.fmt-opt{width:100%;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:none;padding:10px 16px;font-size:.85rem;font-weight:600;transition:background .1s,color .1s;display:block}.fmt-opt:hover{background:var(--bg)}.fmt-opt.active{color:var(--primary);background:var(--primary-s)}.fmt-opt+.fmt-opt{border-top:1px solid var(--line)}.picker-hd{cursor:pointer;width:100%;color:var(--ink-s);text-transform:uppercase;letter-spacing:.5px;background:0 0;border:none;align-items:center;gap:6px;margin-bottom:0;padding:0;font-size:.78rem;font-weight:600;transition:color .15s;display:flex}.picker-hd:hover{color:var(--ink)}.picker-hd .bar{background:var(--primary);border-radius:2px;width:3px;height:14px}.picker-hd svg{color:var(--primary);vertical-align:-2px;width:16px;height:16px}.picker-arrow{color:var(--ink-m);width:12px;height:12px;margin-left:auto;transition:transform .2s,color .15s;display:inline-flex}.picker-arrow.open{transform:rotate(180deg)}.picker-body{opacity:0;max-height:0;margin-top:0;transition:max-height .25s,opacity .2s,margin .25s;overflow:hidden}.picker-body.open{opacity:1;max-height:370px;margin-top:8px;overflow-y:auto}.picker-body::-webkit-scrollbar{width:5px}.picker-body::-webkit-scrollbar-track{background:0 0}.picker-body::-webkit-scrollbar-thumb{background:var(--line-s);border-radius:10px}.picker-body::-webkit-scrollbar-thumb:hover{background:var(--ink-m)}.picker-grid{grid-template-columns:repeat(3,1fr);gap:10px;padding-top:4px;display:grid}.picker-card{background:var(--surface);border:2px solid var(--line);border-radius:var(--r);cursor:pointer;flex-direction:column;align-items:center;gap:8px;padding:14px 6px 10px;transition:border-color .12s,background .12s,transform 80ms,box-shadow .12s;display:flex}.picker-card:hover{border-color:var(--line-s);transform:translateY(-1px);box-shadow:0 2px 8px #0000000f}.picker-card.active{border-color:var(--primary);background:var(--primary-s)}.picker-card:active{transform:scale(.97)}.picker-thumb{background:var(--surface);border:1px solid var(--line);border-radius:8px;justify-content:center;align-items:center;width:64px;height:64px;transition:border-color .15s,background-color .2s;display:flex;overflow:hidden}.picker-thumb img{max-width:100%;max-height:100%;display:block}.picker-label{color:var(--ink-s);text-align:center;font-size:.78rem;font-weight:600;transition:color .15s}.picker-card.active .picker-label{color:var(--primary-h)}.footer{border-top:1px solid var(--line);width:100%;max-width:820px;animation:fadeUp .3s var(--ease) .15s both;flex-wrap:wrap;justify-content:center;gap:12px;padding:14px 0;transition:border-color .2s;display:flex}.footer-btn{color:var(--ink-s);background:var(--surface);border:1px solid var(--line);border-radius:999px;align-items:center;gap:5px;padding:5px 12px;font-size:.8rem;font-weight:500;text-decoration:none;transition:border-color .15s,color .15s,background-color .2s;display:inline-flex}.footer-btn svg{width:14px;height:14px}.footer-btn:hover{color:var(--ink);border-color:var(--line-s)}.footer-btn.gh{color:#fff;background:#24292e;border-color:#24292e}.footer-btn.gh:hover{color:#fff;background:#1b1f24;border-color:#1b1f24}.footer-btn.bi{color:#fff;background:#fb7299;border-color:#fb7299}.footer-btn.bi:hover{color:#fff;background:#e56789;border-color:#e56789}.footer-btn.src{opacity:.35;transition:opacity .15s}.footer-btn.src:hover{opacity:.6}@media (width<=600px){body{padding:16px 10px 24px}.section{border-radius:12px;padding:16px}.picker-grid{grid-template-columns:repeat(3,1fr);gap:8px;padding-top:3px}.picker-thumb{width:56px;height:56px}.ctrl{gap:6px;padding:8px 10px}.ctrl svg{display:none}.header-icon{height:60px}.header-logo{height:36px}.preview-canvas{width:240px;height:240px}.picker-body.open{max-height:340px}}@media (width<=420px){.picker-grid{grid-template-columns:repeat(2,1fr);padding-top:2px}.picker-thumb{width:52px;height:52px}.header-logo{height:32px}.header-icon{height:52px}.preview-canvas{width:200px;height:200px}.picker-body.open{max-height:310px}.btn-dl{font-size:.9rem}}@media (width>=900px){.picker-grid{grid-template-columns:repeat(4,1fr)}}
