:root{--bg:#101214;--panel:#1a1d21;--text:#e8e6e1;--dim:#8a8f98;--accent:#3ddc84;--danger:#ff5a5a;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-family:Segoe UI,system-ui,sans-serif}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0}.app{max-width:760px;margin:0 auto;padding:12px 16px 32px}header{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:12px;display:flex}h1{letter-spacing:.04em;margin:0;font-size:1.3rem;font-weight:600}.accent{color:var(--accent)}.tabs{gap:6px;display:flex}.tab{color:var(--dim);cursor:pointer;background:0 0;border:1px solid #2c3138;border-radius:999px;padding:6px 14px;font-size:.85rem}.tab.active{color:var(--bg);background:var(--accent);border-color:var(--accent);font-weight:600}.start-screen{text-align:center;color:var(--dim);padding:18vh 16px;line-height:1.6}.start-btn{background:var(--accent);color:var(--bg);cursor:pointer;border:none;border-radius:999px;margin-top:24px;padding:14px 36px;font-size:1.15rem;font-weight:700}.start-btn:disabled{opacity:.6}.view{flex-direction:column;gap:10px;display:flex}.canvas-wrap{background:#000;border-radius:10px;position:relative;overflow:hidden}.canvas-wrap canvas{width:100%;height:auto;display:block}.status{background:var(--panel);color:var(--dim);font-variant-numeric:tabular-nums;border-radius:8px;align-items:center;gap:10px;padding:8px 12px;font-size:.85rem;display:flex}.dot{background:var(--danger);border-radius:50%;flex-shrink:0;width:10px;height:10px}.dot.locked{background:var(--accent)}.status-text{white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.meter{background:#0b0d0f;border-radius:4px;flex-shrink:0;width:120px;height:8px;overflow:hidden}.meter-fill{background:var(--accent);height:100%;transition:width .12s linear}.controls{background:var(--panel);color:var(--dim);border-radius:8px;flex-wrap:wrap;align-items:center;gap:16px;padding:10px 14px;font-size:.85rem;display:flex}.controls button{color:var(--text);cursor:pointer;background:#2c3138;border:none;border-radius:8px;padding:8px 16px;font-size:.9rem}.controls label{flex-direction:column;gap:4px;min-width:140px;display:flex}.controls label.check{flex-direction:row;align-items:center;gap:6px;min-width:0}.controls input[type=range],.controls input[type=checkbox]{accent-color:var(--accent)}.hint{flex:1;min-width:200px;line-height:1.5}.notice{background:var(--panel);text-align:center;color:var(--dim);border-radius:8px;padding:24px}.overlay-notice{background:#0009;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.help{background:var(--panel);color:var(--text);border-radius:10px;padding:8px 24px 20px;line-height:1.65}.help h2{color:var(--accent);margin-top:20px;font-size:1rem}.help p,.help li{color:var(--dim);font-size:.92rem}.encode-form{background:var(--panel);border-radius:8px;flex-wrap:wrap;align-items:stretch;gap:10px;padding:12px 14px;display:flex}.file-label{min-width:220px;color:var(--dim);cursor:pointer;white-space:nowrap;text-overflow:ellipsis;border:1px dashed #3a4048;border-radius:8px;flex:2;align-items:center;padding:8px 14px;font-size:.9rem;display:flex;overflow:hidden}.file-label input{display:none}.title-input{min-width:160px;color:var(--text);background:#0b0d0f;border:1px solid #2c3138;border-radius:8px;flex:1;padding:8px 12px;font-size:.9rem}.encode-form button{background:var(--accent);color:var(--bg);cursor:pointer;border:none;border-radius:8px;padding:8px 20px;font-weight:700}.encode-form button:disabled{opacity:.5}.notice.error{color:var(--danger)}.strip-card{background:#fff;border-radius:8px;padding:8px}.strip-card img{width:100%;height:auto;display:block}.strip-actions{color:#555;flex-wrap:wrap;align-items:center;gap:12px;padding:8px 4px 2px;font-size:.82rem;display:flex}.strip-actions button,.strip-actions .btn{color:var(--text);cursor:pointer;background:#2c3138;border:none;border-radius:8px;padding:6px 14px;font-size:.85rem;text-decoration:none}.format-row{background:var(--panel);color:var(--dim);border-radius:8px;flex-direction:column;gap:6px;padding:10px 14px;font-size:.85rem;display:flex}.row-badge{border:1px solid var(--accent);color:var(--accent);font-variant-numeric:tabular-nums;background:#0b0d0f;border-radius:999px;padding:4px 12px;font-size:.8rem}.print-sheet{display:none}@page{size:A4 landscape;margin:0}@media print{body{background:#fff}.app{display:none}.print-sheet{display:block}.print-sheet img{break-inside:avoid;margin:8mm;display:block}.print-sheet img.print-full{margin:0}}
