:root{color:#2d241c;font-synthesis:none;text-rendering:optimizelegibility;background:#f4eadc;font-family:Avenir Next,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}button{border:0}.app-shell{background:radial-gradient(circle at 0 0,#c97d4547,#0000 30rem),linear-gradient(135deg,#fff8ed 0%,#efe0cb 45%,#d9e7dd 100%);min-height:100vh;padding:clamp(22px,3vw,40px)}.hero{max-width:1480px;margin:0 auto 28px}.eyebrow,.panel-kicker{color:#a05d31;letter-spacing:.16em;text-transform:uppercase;margin:0 0 10px;font-size:.78rem;font-weight:800}.hero__content{grid-template-columns:minmax(0,1fr) 260px;align-items:stretch;gap:24px;display:grid}.hero h1{color:#312215;letter-spacing:-.06em;max-width:760px;margin:0;font-family:Georgia,Times New Roman,Songti SC,serif;font-size:clamp(2.4rem,5vw,5.8rem);line-height:.95}.hero p:not(.eyebrow){color:#6f5a45;max-width:680px;margin:22px 0 0;font-size:1.05rem;line-height:1.8}.route-card{background:linear-gradient(160deg,#ffffffd1,#ffffff57),repeating-linear-gradient(-12deg,#a05d311c 0 1px,#0000 1px 12px);border:1px solid #4b352129;border-radius:32px;align-content:end;min-height:220px;padding:26px;display:grid;box-shadow:0 24px 70px #49301924}.route-card span,.route-card small{color:#8a7059;letter-spacing:.14em;text-transform:uppercase;font-size:.82rem;font-weight:800}.route-card strong{color:#2f4736;font-family:Georgia,Times New Roman,Songti SC,serif;font-size:3.2rem;line-height:1}.workspace{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;max-width:1480px;margin:0 auto;display:grid}.panel{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffcf6c7;border:1px solid #4b352129;border-radius:32px;min-height:660px;padding:20px;box-shadow:0 30px 90px #412a1624}.panel__header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.panel__header h2{color:#2f4736;margin:0;font-family:Georgia,Times New Roman,Songti SC,serif;font-size:1.85rem}.panel__header span{color:#735d47;background:#e7d5bccc;border-radius:999px;padding:8px 12px;font-size:.82rem;font-weight:700}.panel-controls{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.theme-select,.logo-select{color:#735d47;gap:6px;font-size:.78rem;font-weight:800;display:grid}.theme-select select,.logo-select input{color:#2f4736;background:#fffaf2;border:1px solid #503b272e;border-radius:999px;min-height:36px;padding:0 34px 0 12px;font-weight:700}.logo-select input{max-width:220px;padding:7px 12px}.logo-status{color:#735d47;margin:-4px 0 12px;font-size:.88rem;font-weight:700}textarea{resize:vertical;color:#32261c;background:#fffaf2;border:1px solid #503b2738;border-radius:22px;outline:none;width:100%;min-height:430px;padding:20px;font-family:Cascadia Code,SFMono-Regular,Consolas,Microsoft YaHei UI,monospace;font-size:.98rem;line-height:1.7;transition:border-color .16s,box-shadow .16s;box-shadow:inset 0 1px #ffffffe6}textarea:focus{border-color:#b66633;box-shadow:0 0 0 4px #b6663329,inset 0 1px #ffffffe6}.actions{flex-wrap:wrap;gap:12px;margin-top:18px;display:flex}.actions button{color:#fff9ef;cursor:pointer;background:#2f4736;border-radius:999px;min-height:48px;padding:0 20px;font-weight:800;transition:transform .16s,box-shadow .16s,opacity .16s;box-shadow:0 14px 26px #2f473638}.actions button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 18px 30px #2f473647}.actions button:disabled{cursor:progress;opacity:.62}.actions .secondary-button{color:#2f4736;box-shadow:none;background:#f2ddbd}.error-banner{color:#8f241c;background:#ffe8dce6;border:1px solid #ac362747;border-radius:18px;margin-top:18px;padding:14px 16px;font-weight:700}.preview-panel{flex-direction:column;display:flex}iframe,.empty-preview{background:#fffaf2;border:1px solid #503b272e;border-radius:24px;flex:1;width:100%;min-height:520px}iframe{box-shadow:inset 0 0 0 10px #fffaf2}.empty-preview{color:#7e6650;text-align:center;background:linear-gradient(#fffaf2eb,#fffaf2eb),repeating-linear-gradient(90deg,#2f473614 0 1px,#0000 1px 18px);place-items:center;padding:32px;display:grid}.empty-preview p{max-width:320px;margin:0;line-height:1.8}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=900px){.app-shell{padding:22px}.hero__content,.workspace{grid-template-columns:1fr}.panel{min-height:auto}}
