@font-face{font-family:Anton;src:url(fonts/Anton.ttf) format('truetype');font-display:swap}@font-face{font-family:Bebas;src:url(fonts/BebasNeue.ttf) format('truetype');font-display:swap}
:root{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei",sans-serif;color:#f3f0ec;--ui:#f3f0ec;--muted:rgba(243,240,236,.43);--bg:#080808}*{box-sizing:border-box}body{margin:0;background:var(--bg);overflow:hidden}button,input{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid #b77d44;outline-offset:4px}#background,#stage{position:fixed;inset:0;width:100%;height:100%}#background{background:var(--bg);background-size:cover;background-position:center}#stage{pointer-events:none}header{position:fixed;top:32px;left:38px;right:38px;display:flex;justify-content:space-between;align-items:center;color:var(--ui)}.brand{display:flex;align-items:center;gap:12px;color:inherit;text-decoration:none;font-size:17px;font-weight:550}.brandmark{font-family:Georgia,serif;font-weight:bold;font-size:31px;letter-spacing:-3px;width:36px;height:38px}.brand-en{display:block;font-size:9px;letter-spacing:2.6px;color:var(--muted);margin-top:5px}.header-note{font-size:11px;letter-spacing:1px;color:var(--muted)}.workspace{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);width:min(530px,calc(100% - 28px));z-index:2}.dock{background:rgba(249,248,247,.96);color:#292929;border:1px solid rgba(255,255,255,.8);border-radius:23px;padding:11px 13px;display:flex;align-items:center;justify-content:space-between;gap:5px;box-shadow:0 8px 30px #0002,0 2px 4px #0001;backdrop-filter:blur(20px)}.presets{display:flex;gap:9px;align-items:center}.swatch{border:0;position:relative;width:33px;height:33px;border-radius:50%;background:var(--swatch);box-shadow:inset 0 0 0 1px #0001;flex-shrink:0}.swatch:after{content:"";position:absolute;inset:11px;border:1px solid var(--accent);border-radius:50%}.swatch.active{outline:1px solid #b4b0ab;outline-offset:3px}.divider{width:1px;height:25px;background:#dedcd9;margin:0 5px;flex-shrink:0}.tool{width:35px;height:35px;display:flex;align-items:center;justify-content:center;border:0;border-radius:10px;background:transparent;color:inherit;transition:background .15s}.tool:hover,.tool.selected{background:#e4e1dd}.tool svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.text-icon{font-family:Georgia,serif;font-size:22px}.font-icon{font-family:Georgia,serif;font-size:18px;letter-spacing:-1px}.play-tool{background:#242424;color:white;border-radius:50%;width:38px;height:38px}.play-tool:hover{background:#444}.hint{text-align:center;color:var(--muted);font-size:10px;letter-spacing:.7px;margin:15px 0 0}.playback{display:flex;align-items:center;gap:13px;color:var(--muted);font-size:10px;margin:0 15px 15px;font-variant-numeric:tabular-nums}.playback #time{min-width:65px}.duration{min-width:23px}input[type=range]{accent-color:#ae8d69;cursor:pointer;height:12px}#timeline{width:100%;height:2px;accent-color:#a59b91}.panel{position:absolute;bottom:118px;left:50%;transform:translateX(-50%);width:340px;max-width:calc(100vw - 32px);border-radius:20px;padding:21px;background:rgba(249,248,247,.98);color:#292929;box-shadow:0 12px 40px #0003;backdrop-filter:blur(20px);border:1px solid #fff}.panel[hidden]{display:none}.panel-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:17px}.panel h2{font-size:13px;letter-spacing:.5px;margin:0;font-weight:600}.close{border:0;background:transparent;color:#888;font-size:23px;line-height:1;padding:0 4px}.panel label{font-size:11px;display:block;color:#777;margin:12px 0 7px}.panel label span{color:#a6a29d;margin-left:6px;font-size:10px}.panel input[type=text],.panel input:not([type]){width:100%;padding:10px 12px;background:#eeece8;border:1px solid transparent;border-radius:9px;color:#222;font-size:16px}.range-label{display:flex;justify-content:space-between;align-items:center}.range-label output{font-size:10px;color:#888}.panel input[type=range]{width:100%}.font-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}.font-option{border:1px solid #e4e0db;border-radius:10px;padding:10px 8px;background:transparent;color:#555;text-align:left;min-height:55px}.font-option strong{display:block;font-size:20px;font-weight:400;line-height:1.3}.font-option small{font:9px sans-serif;color:#9a958e}.font-option.active{border-color:#b39b7f;background:#ede6dc;color:#39332b}.panel .upload{padding:12px;border:1px dashed #d4cfc6;border-radius:10px;cursor:pointer;text-align:center;margin-top:15px;color:#72675a}.panel .upload span{display:block;font-size:9px;margin:5px 0 0}.panel .color-row{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid #e7e3dd;font-size:12px;margin:0}.color-row .color-value{margin-left:auto;font:10px monospace;color:#a19b94}.color-row input[type=color]{width:28px;height:28px;border:0;padding:0;background:transparent;cursor:pointer}.color-row input::-webkit-color-swatch-wrapper{padding:0}.color-row input::-webkit-color-swatch{border:1px solid #0001;border-radius:50%}.text-button{display:block;border:0;background:none;font-size:10px;color:#9c7660;margin:8px auto 0}.center-play{position:fixed;left:50%;top:47%;transform:translate(-50%,-50%);height:70px;width:70px;border-radius:50%;border:1px solid #ffffff28;background:#ffffff0d;color:var(--ui);backdrop-filter:blur(4px);opacity:0;transition:opacity .2s;z-index:1}.center-play svg{width:25px;fill:currentColor;margin-left:4px}body:hover .center-play:not([hidden]),.center-play:focus-visible{opacity:1}.center-play[hidden]{display:none}#toast{position:fixed;left:50%;top:90px;transform:translateX(-50%);background:#f4f0e9;color:#333;padding:10px 18px;font-size:12px;border-radius:30px;opacity:0;pointer-events:none;transition:opacity .2s;z-index:5}#toast.show{opacity:1}#error{position:fixed;inset:30% 15% auto;color:var(--ui);font-size:15px;text-align:center}body.light{--ui:#292929;--muted:rgba(41,41,41,.43)}body.light .center-play{border-color:#0002;background:#fff7}@media(max-width:600px){header{top:22px;left:22px;right:22px}.header-note{display:none}.workspace{bottom:20px}.dock{padding:10px;gap:2px;border-radius:20px}.presets{gap:7px}.swatch{width:27px;height:27px}.swatch:after{inset:9px}.tool{width:31px;height:34px}.play-tool{width:34px;height:34px}.divider{margin:0 3px}.hint{font-size:9px}.panel{bottom:115px;max-height:calc(100dvh - 205px);overflow:auto}.center-play{width:58px;height:58px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}
[hidden]{display:none!important}
