.workspace .panel,.workspace .field{margin-bottom:0}.workspace{grid-template-columns:1fr 320px;align-items:start;gap:1.25rem;width:100%;display:grid}.preview-panel{flex-direction:column;align-items:center;gap:1.25rem;display:flex}.canvas-wrapper{border-radius:var(--radius);background-color:#0000;background-image:linear-gradient(#ffffff06 1px,#0000 1px),linear-gradient(90deg,#ffffff06 1px,#0000 1px);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:20px 20px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;border:1px dashed #ffffff0f;justify-content:center;align-items:center;width:100%;min-height:260px;padding:2rem;display:flex}#preview-container{justify-content:center;align-items:center;display:flex}.preview-meta{flex-wrap:wrap;justify-content:center;gap:.5rem;display:flex}.preview-badge{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);color:var(--secondary-text);padding:.2rem .55rem;font-family:Courier New,monospace;font-size:.72rem}.preview-badge span{color:var(--primary-text)}.android-preview{flex-direction:column;gap:.6rem;display:none}.android-preview.visible{display:flex}.android-preview-title{color:var(--secondary-text);text-transform:uppercase;letter-spacing:.1em;font-family:Aldrich,sans-serif;font-size:.7rem}.android-sizes-row{flex-wrap:wrap;align-items:flex-end;gap:.65rem;display:flex}.android-size-item{flex-direction:column;align-items:center;gap:.3rem;display:flex}.android-size-item canvas{border:1px solid var(--border);border-radius:3px}.android-size-item span{color:var(--secondary-text);font-family:Courier New,monospace;font-size:.62rem}.preview-loading{color:var(--secondary-text);opacity:.5;flex-direction:column;align-items:center;gap:.65rem;font-size:.78rem;display:none}.preview-loading.visible{display:flex}.preview-loading svg{width:1.6rem;height:1.6rem}.controls-col{flex-direction:column;gap:1rem;display:flex}.source-row{grid-template-columns:repeat(3,1fr);gap:.4rem;margin-bottom:1rem;display:grid}.source-btn{flex-direction:column;justify-content:center;align-items:center;gap:.3rem;min-width:0;min-height:60px;padding:.55rem .25rem;font-family:Verdana,sans-serif;font-size:.68rem;display:flex}.source-btn .src-ico{font-size:1rem;line-height:1;display:inline-flex}.source-btn .src-lbl{letter-spacing:.05em;font-family:Aldrich,sans-serif;font-size:.65rem}input.text-input,input.emoji-input{padding:.6rem .8rem;font-size:.88rem}input.text-input{letter-spacing:.04em;font-family:Verdana,sans-serif;font-weight:700}#text-style-panel{display:none}#text-style-panel.visible{display:block}.font-note{color:var(--secondary-text);opacity:.6;font-family:Courier New,monospace;font-size:.65rem}.group-label{color:var(--secondary-text);text-transform:uppercase;letter-spacing:.09em;font-size:.74rem}.style-row{grid-template-columns:repeat(3,1fr);gap:.4rem;display:grid}.weight-select{grid-column:1/-1}#text-style-panel .field{margin-bottom:.9rem}#text-style-panel .field:last-child{margin-bottom:0}.style-btn{text-align:center;padding:.45rem .25rem;font-family:Verdana,sans-serif;font-size:.95rem}.weight-select,.font-select{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);color:var(--primary-text);cursor:pointer;width:100%;transition:border-color var(--t);outline:none;padding:.45rem .4rem;font-family:Courier New,monospace;font-size:1rem}.weight-select:focus,.font-select:focus{border-color:var(--accent-focus)}.font-select{padding:.6rem .8rem;font-size:1rem}.color-field.cp-disabled{opacity:.3;pointer-events:none}.cp-fa-only{color:var(--secondary-text);opacity:.6;margin-top:.2rem;font-family:Courier New,monospace;font-size:.65rem;display:none}.cp-fa-only.visible{display:block}.workspace .color-row{grid-template-columns:1fr}.bgtype-row{gap:.5rem;margin-bottom:.55rem;display:flex}.bgtype-row .choice-btn{flex:1}.bg-gradient-panel{margin-top:.55rem;display:none}.bg-gradient-panel.visible{display:block}.angle-row{grid-template-columns:repeat(8,1fr);gap:.3rem;margin:.55rem 0;display:grid}.angle-btn{aspect-ratio:1;justify-content:center;align-items:center;font-size:.95rem;line-height:1;display:flex}.modal-overlay{z-index:9500;background:#000000a6;justify-content:center;align-items:center;padding:1.25rem;display:none;position:fixed;inset:0}.modal-overlay.visible{display:flex}.modal-card{background:var(--surface-2);border:1px solid var(--border);border-radius:12px;width:100%;max-width:340px;padding:1.25rem}.modal-title{letter-spacing:.04em;color:var(--primary-text);margin-bottom:.6rem;font-family:Aldrich,sans-serif;font-size:.85rem}.modal-text{color:var(--secondary-text);margin:0;font-size:.8rem;line-height:1.55}.modal-actions{flex-direction:column;gap:.5rem;margin-top:1.1rem;display:flex}.modal-btn{border-radius:var(--radius);cursor:pointer;border:1px solid var(--border);min-height:44px;color:var(--secondary-text);transition:all var(--t);background:0 0;padding:.7rem 1rem;font-family:Verdana,sans-serif;font-size:.85rem}.modal-btn:hover{border-color:var(--accent-soft);color:var(--primary-text)}.modal-btn.primary{background:var(--accent-dim);border-color:var(--accent);color:var(--primary-text);font-weight:700}.modal-btn.primary:hover{background:var(--accent);border-color:var(--accent);color:#fff}#icon-scale{margin-bottom:.375rem}@media (width<=580px){.export-row{grid-template-columns:1fr}}.cp-row{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);transition:border-color var(--t);align-items:stretch;display:flex;overflow:hidden}.cp-row:focus-within,.cp-row.open{border-color:var(--accent-focus)}.cp-swatch{border:none;border-right:1px solid var(--border);cursor:pointer;width:40px;transition:filter var(--t);flex-shrink:0;padding:0;position:relative}.cp-swatch:hover{filter:brightness(1.18)}.cp-swatch:before,.cp-preview:before{content:"";background-color:#2a2a2a;background-image:linear-gradient(45deg,#555 25%,#0000 25%),linear-gradient(-45deg,#555 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#555 75%),linear-gradient(-45deg,#0000 75%,#555 75%);position:absolute;inset:0}.cp-swatch:before{background-position:0 0,0 4px,4px -4px,-4px 0;background-size:8px 8px}.cp-swatch-fill{position:absolute;inset:0}.cp-hex-input{min-width:0;color:var(--primary-text);caret-color:var(--accent);background:0 0;border:none;outline:none;flex:1;height:36px;padding:0 .65rem;font-family:Courier New,monospace;font-size:1rem}.cp-popup{z-index:9000;user-select:none;touch-action:none;background:#1c1c1e;border:1px solid #ffffff1a;border-radius:8px;width:220px;padding:10px;display:none;position:fixed;box-shadow:0 12px 40px #000000bf}.cp-popup.visible{display:block}.cp-canvas-wrap{cursor:crosshair;border-radius:4px;width:100%;height:148px;position:relative;overflow:hidden}.cp-canvas{width:100%;height:100%;display:block}.cp-cursor{pointer-events:none;border:2px solid #fff;border-radius:50%;width:13px;height:13px;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 0 1px #00000080}.cp-hue-track{background:linear-gradient(90deg,red,#ff0,#0f0,#0ff,#00f,#f0f,red);border-radius:99px;height:11px;margin-top:9px;position:relative}input.cp-hue{-webkit-appearance:none;appearance:none;cursor:pointer;background:0 0;border:none;outline:none;width:100%;height:calc(100% + 6px);margin:0;position:absolute;inset:-3px 0}input.cp-hue::-webkit-slider-thumb{-webkit-appearance:none;cursor:pointer;background:#fff;border:2px solid #00000040;border-radius:50%;width:20px;height:20px;box-shadow:0 1px 4px #00000080}input.cp-hue::-moz-range-thumb{cursor:pointer;background:#fff;border:none;border-radius:50%;width:20px;height:20px;box-shadow:0 1px 4px #00000080}.cp-bottom{align-items:center;gap:7px;margin-top:9px;display:flex}.cp-preview{border:1px solid #ffffff1f;border-radius:4px;flex-shrink:0;width:28px;height:28px;position:relative;overflow:hidden}.cp-preview:before{background-position:0 0,0 3.5px,3.5px -3.5px,-3.5px 0;background-size:7px 7px}.cp-preview-fill{position:absolute;inset:0}.cp-hex-popup{min-width:0;color:var(--primary-text);transition:border-color var(--t);caret-color:var(--accent);background:#252527;border:1px solid #ffffff1a;border-radius:4px;outline:none;flex:1;padding:.3rem .5rem;font-family:Courier New,monospace;font-size:1rem}.cp-hex-popup:focus{border-color:var(--accent-focus)}.shape-row{grid-template-columns:repeat(4,1fr);gap:.45rem;display:grid}.shape-btn{flex-direction:column;align-items:center;gap:.35rem;padding:.55rem .25rem;font-family:Verdana,sans-serif;font-size:.68rem;display:flex}.shape-icon{opacity:.6;background:currentColor;width:20px;height:20px}.shape-icon.circle{border-radius:50%}.shape-icon.rounded{border-radius:4px}.shape-icon.square{border-radius:0}.shape-icon.none{opacity:1;background:0 0;border:1.5px dashed;border-radius:2px}.preset-grid{grid-template-columns:repeat(4,1fr);gap:.35rem;margin-bottom:.7rem;display:grid}.preset-btn{text-align:center;padding:.4rem .25rem;font-family:Courier New,monospace;font-size:.7rem}.custom-res{align-items:center;gap:.5rem;display:flex}.custom-res span{color:var(--secondary-text);flex-shrink:0;font-size:.82rem}.export-row{grid-template-columns:1fr 1fr;gap:.55rem;margin-top:.9rem;display:grid}.export-btn{align-items:baseline;padding:.7rem 1.2rem}.android-divider{align-items:center;gap:.7rem;margin:1rem 0 .7rem;display:flex}.android-divider hr{border:none;border-top:1px solid var(--border);flex:1}.android-divider span{color:var(--secondary-text);text-transform:uppercase;letter-spacing:.1em;white-space:nowrap;font-size:.68rem}.checkbox-row{cursor:pointer;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);transition:border-color var(--t), background var(--t);user-select:none;align-items:flex-start;gap:.7rem;margin-bottom:.7rem;padding:.7rem;display:flex}.checkbox-row:hover{background:#3ddc840a;border-color:#3ddc844d}.checkbox-row.cb-disabled{opacity:.3;pointer-events:none}.custom-checkbox{flex-shrink:0;margin-top:2px;position:relative}.custom-checkbox input[type=checkbox]{opacity:0;width:0;height:0;position:absolute}.checkbox-box{border:1.5px solid var(--border);background:var(--surface-3);width:16px;height:16px;transition:all var(--t);color:#0000;border-radius:3px;justify-content:center;align-items:center;display:flex}.checkbox-box svg{width:.58rem;height:.58rem}.custom-checkbox input:checked~.checkbox-box{background:var(--android-dim);border-color:var(--android);color:var(--android)}.checkbox-text{flex-direction:column;gap:.18rem;display:flex}.checkbox-label{color:var(--primary-text);text-transform:none;letter-spacing:0;font-family:Verdana,sans-serif;font-size:.8rem}.checkbox-sub{color:var(--secondary-text);font-family:Courier New,monospace;font-size:.68rem;line-height:1.4}.android-btn{background:var(--android-dim);border-radius:var(--radius);width:100%;color:var(--android);cursor:pointer;transition:all var(--t);border:1px solid #3ddc8438;justify-content:center;align-items:center;gap:.6rem;padding:.8rem 1rem;font-family:Verdana,sans-serif;font-size:.88rem;display:flex;position:relative;overflow:hidden}.android-btn:before{content:"";background:linear-gradient(90deg,#0000,#3ddc8412,#0000);transition:transform .5s;position:absolute;inset:0;transform:translate(-100%)}.android-btn:hover:before{transform:translate(100%)}.android-btn:hover{background:#3ddc842e;border-color:#3ddc847a}.android-btn:disabled{opacity:.45;cursor:not-allowed}.android-label{color:var(--android);transition:color var(--t);font-family:Aldrich,sans-serif;font-size:.85rem}.android-sub{color:#3ddc848c;margin-left:.15rem;font-size:.7rem}.progress-wrap{margin-top:.7rem;display:none}.progress-wrap.visible{display:block}.progress-bar-track{background:var(--surface-3);border-radius:99px;width:100%;height:3px;overflow:hidden}.progress-bar-fill{background:var(--android);border-radius:99px;width:0%;height:100%;transition:width .15s}.progress-label{color:var(--secondary-text);text-align:center;margin-top:.4rem;font-family:Courier New,monospace;font-size:.7rem}.icon-placeholder{color:var(--secondary-text);opacity:.3;flex-direction:column;align-items:center;gap:.65rem;display:flex}.icon-placeholder svg{fill:currentColor;width:42px;height:42px}.icon-placeholder p{font-size:.78rem}@media (width<=680px){.workspace{grid-template-columns:1fr}}
