:root{color-scheme:light;font-family:system-ui,sans-serif;color:#243a42;background:#eef1ed}*{box-sizing:border-box}body{margin:0}header{display:flex;justify-content:space-between;gap:2rem;align-items:center;max-width:1400px;margin:auto;padding:30px 32px 22px}h1{font-size:30px;letter-spacing:.04em;margin:8px 0}h2{font-size:17px;font-weight:600}.eyebrow{font-size:11px;letter-spacing:.2em;color:#607a76}header p{margin:5px 0;font-size:14px}main{max-width:1400px;margin:auto;display:grid;grid-template-columns:minmax(300px,420px) minmax(320px,1fr);gap:22px;padding:0 32px 32px}.controls,.stage{background:#fff;border:1px solid #d6dfd9;border-radius:12px;padding:22px}.controls form{display:flex;flex-direction:column;gap:13px}label{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:600;min-width:0}select,input,textarea,button{font:inherit}select,input,textarea{border:1px solid #cbd5ce;border-radius:6px;padding:9px;background:#fafbf9;min-width:0;width:100%;color:inherit}textarea{line-height:1.6;resize:vertical;font-weight:400}input[type=color]{height:37px;padding:4px}.row{display:flex;gap:10px;align-items:end}.row>*{flex:1}.row button{font-size:12px;line-height:1.5}.hint{font-size:11px;line-height:1.65;color:#65736d;margin:0}.stage{align-self:start;position:sticky;top:20px}.stage-head{display:flex;justify-content:space-between;align-items:center;gap:1rem;color:#526761}.stage-head span{font-size:12px}.checker{border-radius:8px;border:1px solid #d7dfd9;background-color:#20282b;background-image:linear-gradient(45deg,#293337 25%,transparent 25%),linear-gradient(-45deg,#293337 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#293337 75%),linear-gradient(-45deg,transparent 75%,#293337 75%);background-size:24px 24px;background-position:0 0,0 12px,12px -12px,-12px 0;overflow:hidden}canvas{width:100%;height:auto;display:block}.actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}button{border:1px solid #aebfb3;border-radius:6px;padding:10px 14px;background:#f2f5ed;color:#28493e;cursor:pointer;font-weight:600}button:hover{background:#e0eadc}button:disabled{opacity:.4;cursor:default}#apng{background:#355747;color:#fff}progress{margin-top:18px;width:100%;height:8px;accent-color:#355747}#status{font-size:13px;line-height:1.6;min-height:40px;overflow-wrap:anywhere}#status.error{color:#a43727}#download{font-size:13px;color:#355747}.notes{border-top:1px solid #e1e7df;margin-top:18px;padding-top:14px;font-size:11px;line-height:1.7;color:#6d7970}.notes a{color:#46634f}@media(max-width:900px){header{align-items:start;padding:20px}main{grid-template-columns:1fr;padding:0 20px 20px}.stage{position:static;grid-row:1}.row{flex-wrap:wrap}.row>*{min-width:80px}header{flex-direction:column;gap:12px}}

.preview-timeline{margin:18px 0 10px}.preview-timeline input{padding:0;accent-color:#355747}.preview-timeline output{font-weight:400;font-variant-numeric:tabular-nums;font-size:12px;color:#526761}
.template-tools{display:flex;flex-direction:column;gap:12px;padding-bottom:18px;border-bottom:1px solid #d6dfd9}#tabs{display:flex;gap:5px;flex-wrap:wrap;margin:18px 0}#tabs button{padding:8px 9px;font-size:11px}#tabs button.active{background:#355747;color:#fff}.editor-panel{display:flex;flex-direction:column;gap:12px}.editor-panel[hidden]{display:none}.editor-panel h3{margin:16px 0 0;font-size:14px;border-top:1px solid #e1e7df;padding-top:12px}.editor-panel h3:first-child{margin-top:0}#editor .row{align-items:start}.controls{overflow-wrap:anywhere}#budget{margin-top:20px;font-variant-numeric:tabular-nums}.stage-head h2{overflow-wrap:anywhere}.preview-timeline input{width:100%}

.preview-backdrop{margin:0 0 10px;max-width:240px}.preview-backdrop select{font-size:11px;padding:6px}.checker.preview-light{background-color:#e8ece8;background-image:linear-gradient(45deg,#f8faf6 25%,transparent 25%),linear-gradient(-45deg,#f8faf6 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#f8faf6 75%),linear-gradient(-45deg,transparent 75%,#f8faf6 75%)}

.custom-font-row{display:flex;gap:10px;align-items:center;justify-content:space-between;font-size:11px}.custom-font-row span{overflow-wrap:anywhere}.custom-font-row button{padding:6px 8px;font-size:11px}#customFontList{display:flex;flex-direction:column;gap:8px}
