:root{--navy:#132b49;--blue:#1658b5;--light:#eff5fe;--ink:#1b2940;--gray:#64748b;--line:#dbe4ef;--green:#137b58}*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,-apple-system,'Segoe UI',Arial,sans-serif;color:var(--ink);background:#f5f8fd}a{color:inherit}.wrap{max-width:1180px;margin:0 auto;padding:0 22px}.top{background:white;border-bottom:1px solid var(--line)}.header-flex{display:flex;align-items:center;justify-content:space-between;min-height:76px}.brand{text-decoration:none;display:flex;align-items:center;gap:12px;color:var(--navy)}.mark{display:grid;place-items:center;background:linear-gradient(135deg,#0f3766,#238dcb);height:44px;width:44px;border-radius:12px;color:white;font-weight:900;font-size:26px}.brand b{display:block;letter-spacing:.045em;font-size:16px}.brand small{display:block;letter-spacing:.12em;color:var(--gray);font-size:10px}.link-home{color:var(--blue);font-weight:700;font-size:13px}.hero{text-align:center;padding:60px 10px 38px}.badge{display:inline-block;border:1px solid #bbd4f6;background:#e8f3ff;color:#1258a7;border-radius:30px;font-size:12px;font-weight:750;padding:8px 15px}.hero h1{font-size:clamp(32px,4.8vw,55px);line-height:1.08;color:var(--navy);margin:20px 0}.hero em{font-style:normal;color:#1865c6}.hero p{max-width:760px;margin:0 auto;color:var(--gray);line-height:1.7}.trust{display:flex;gap:22px;justify-content:center;margin-top:22px;color:#32617a;font-size:13px;flex-wrap:wrap}.tabs{display:flex;gap:9px;margin:8px 0 18px;flex-wrap:wrap}.tab{cursor:pointer;border:1px solid var(--line);background:white;padding:14px 17px;border-radius:12px;color:var(--navy);font-size:14px;font-weight:750}.tab.active{background:var(--navy);color:white;border-color:var(--navy)}.workspace{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:start}.card{background:white;border:1px solid var(--line);box-shadow:0 5px 25px #1c46780b;border-radius:18px;padding:25px}.heading{display:flex;align-items:flex-start;gap:13px;margin-bottom:22px}.heading h2{margin:0;font-size:21px;color:var(--navy)}.heading p{margin:7px 0 0;line-height:1.5;color:var(--gray);font-size:13px}.step{flex-shrink:0;background:#e8f2ff;color:var(--blue);border-radius:11px;width:35px;height:35px;display:grid;place-items:center;font-weight:800}.drop{border:2px dashed #9dbce5;border-radius:16px;padding:26px 12px;text-align:center;display:flex;align-items:center;flex-direction:column;gap:7px;cursor:pointer;background:#f6faff}.drop.drag{background:#e5f3ff;border-color:var(--blue)}.upload-icon{font-size:24px;color:var(--blue);font-weight:bold}.drop strong{font-size:15px}.drop small{color:var(--gray);font-size:11px}.file-details{margin:10px 0;color:var(--gray);font-size:12px;overflow-wrap:anywhere}.sectionlabel{font-weight:750;margin:22px 0 11px;font-size:13px}.info{font-weight:400;color:var(--gray);font-size:11px}.preset-row{display:flex;flex-wrap:wrap;gap:8px}.preset{border:1px solid #bfd4ee;background:#f3f8ff;color:#164880;border-radius:8px;font-size:12px;padding:9px 11px;cursor:pointer}.preset:hover{background:#dcecff}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.form-grid label{font-size:12px;font-weight:750;color:#42546b}.form-grid input,.form-grid select{display:block;margin-top:8px;border:1px solid #cbd7e6;border-radius:9px;padding:12px;width:100%;font:inherit;color:var(--ink);background:white;min-width:0}.check-row,.bg-options{display:flex;flex-wrap:wrap;gap:12px 20px;margin-top:17px;color:#40546a;font-size:12px}.check-row label,.bg-options label{display:flex;align-items:center;gap:5px}.primary,.secondary{font:inherit;cursor:pointer;border-radius:10px;padding:13px 17px;font-weight:760;font-size:14px;border:0}.primary{background:#1761c1;color:white}.primary:hover{background:#104c9b}.primary:disabled{opacity:.45;cursor:not-allowed}.form-card>.primary{width:100%;margin-top:21px}.secondary{background:#eaf1fa;color:#1a4b82}.status{margin-top:12px;font-size:13px;line-height:1.5}.status.error{color:#b91c1c}.status.ok{color:var(--green)}.canvas-area{background:repeating-conic-gradient(#eaf0f8 0 25%,#fff 0 50%) 0 0/22px 22px;border:1px solid var(--line);min-height:300px;border-radius:12px;display:flex;justify-content:center;align-items:center;padding:14px;overflow:hidden}.placeholder{text-align:center;font-size:13px;color:#8390a2}.canvas-area canvas{display:block;max-width:100%;height:auto;touch-action:none;cursor:crosshair}.preview-controls{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:14px 0;color:var(--gray);font-size:12px}.output-box{border-top:1px solid var(--line);margin-top:20px;padding-top:20px}.output-preview{display:flex;align-items:center;gap:20px}.output-preview img{width:135px;max-height:160px;object-fit:contain;background:#f1f4f8;border:1px solid var(--line);padding:6px;border-radius:9px}.output-preview h3{margin:0;color:var(--navy)}.output-preview p{color:var(--gray);font-size:12px;line-height:1.6}.download{text-decoration:none;display:inline-block;font-size:12px}.warning{font-size:12px;color:#9a520e;background:#fff3da;border-radius:8px;padding:12px}.combine-panel{margin-bottom:20px}.combine-panel .form-grid{max-width:800px}.combine-panel>.primary{margin-top:18px}.note{margin-top:18px;padding:13px;background:#f3f7fd;font-size:12px;color:#53637a;border-radius:8px}.sheet-preview{max-width:420px;width:100%;height:auto;display:block;border:1px solid #ced9e8;margin:22px auto;box-shadow:0 6px 20px #00000018}.sheet-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.features{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:24px 0}.features article{background:white;border:1px solid var(--line);border-radius:15px;padding:23px}.features article span{font-size:24px}.features h3{font-size:16px;color:var(--navy);margin-bottom:8px}.features p{font-size:13px;line-height:1.7;color:var(--gray);margin-bottom:0}.content{margin:30px 0;background:white;border:1px solid var(--line);border-radius:15px;padding:30px}.content h2{font-size:22px;color:var(--navy);margin:12px 0 20px}.content ol{line-height:2;color:#526174}.content details{border-top:1px solid var(--line);padding:17px 4px}.content summary{cursor:pointer;font-weight:720}.content details p{color:var(--gray);font-size:13px;line-height:1.8}.cta{background:linear-gradient(120deg,#132b49,#155ca4);color:white;padding:32px;border-radius:18px;display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:35px}.cta h2{margin:0 0 10px}.cta p{margin:0;color:#cce0f5;font-size:13px}.cta-link{background:white;color:var(--navy);padding:14px 18px;border-radius:9px;text-decoration:none;font-weight:750;white-space:nowrap}footer{background:#101e30;color:#deecff;padding:24px 0;font-size:13px}footer a{color:#c4e6ff}footer small{display:block;color:#a1b4cb;margin-top:8px}@media(max-width:840px){.workspace{grid-template-columns:1fr}.features{grid-template-columns:1fr}.hero{padding-top:38px}.card{padding:18px}.cta{flex-direction:column;align-items:start}}@media(max-width:490px){.tabs{display:grid;grid-template-columns:1fr 1fr}.tab{padding:12px 6px;font-size:11px}.form-grid{grid-template-columns:1fr 1fr;gap:10px}.form-grid input,.form-grid select{font-size:12px;padding:10px}.brand b{font-size:12px}.link-home{font-size:11px}.hero h1{font-size:32px}.output-preview{align-items:flex-start}.output-preview img{width:100px}}

/* Visibility must beat layout display declarations */
[hidden]{display:none!important}
:focus-visible{outline:3px solid #ffb347;outline-offset:3px}
button,a,input,select{transition:background-color .15s,border-color .15s,box-shadow .15s}
button:hover:not(:disabled){filter:brightness(.97)}
.tab{flex:1;min-width:175px}.tabs{align-items:stretch}
.hero{background:radial-gradient(ellipse at top,#e6f2ff 0%,#f5f8fd 72%);border-radius:24px;margin-top:16px}
.card{box-shadow:0 12px 38px rgba(21,55,97,.075)}
.form-grid input:focus,.form-grid select:focus{outline:2px solid #b0d5ff;border-color:#1976d2}
.result-banner{padding:12px 14px;background:#e7f6ef;border:1px solid #a9dfc5;border-radius:10px;color:#116343;font-size:13px;margin-top:12px}
.quicklinks{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin:12px 0 25px}.quicklinks a{background:#e8f2ff;color:#144e86;border-radius:18px;padding:8px 14px;text-decoration:none;font-size:12px;font-weight:700}
.editor-tip{margin:12px 0;padding:10px 13px;background:#fff6e6;border-left:3px solid #e6a23c;border-radius:6px;color:#82551b;font-size:12px;line-height:1.55}
@media(max-width:490px){.tab{min-width:0}.hero{padding:28px 14px}.content{padding:18px}.trust{gap:9px}}
