:root{--surface: #F5F7FA;--surface-alt: #ECEFF4;--surface-card: #FFFFFF;--ink: #14223F;--ink-2: #2A3A5C;--muted: #515C70;--border: #D7DCE5;--border-strong: #C2C9D6;--gold: #C39A3E;--gold-bright: #D8B45A;--gold-deep: #8A6716;--navy: #14223F;--navy-deep: #0F1A30;--s-1: 4px;--s-2: 8px;--s-3: 12px;--s-4: 16px;--s-6: 24px;--s-8: 32px;--s-12: 48px;--s-16: 64px;--radius: 12px;--radius-sm: 8px;--maxw: 1200px;--header-h: 84px;--shadow-sm: 0 1px 2px rgba(20,34,63,.06), 0 2px 8px rgba(20,34,63,.05);--shadow-md: 0 8px 24px rgba(20,34,63,.1), 0 2px 6px rgba(20,34,63,.06);--ease: cubic-bezier(.22,.61,.36,1)}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--surface);color:var(--ink);font-family:Open Sans,system-ui,-apple-system,sans-serif;font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased}img,canvas{max-width:100%;display:block}a{color:inherit}h1,h2,h3{font-family:Montserrat,system-ui,sans-serif;margin:0;letter-spacing:-.01em}:focus-visible{outline:3px solid var(--gold-deep);outline-offset:3px;border-radius:4px}.ic{width:20px;height:20px}.skip-link{position:absolute;left:var(--s-4);top:-60px;background:var(--navy);color:#fff;padding:var(--s-3) var(--s-4);border-radius:var(--radius-sm);z-index:200;transition:top .2s var(--ease);font-weight:600}.skip-link:focus{top:var(--s-4)}.wrap{width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:clamp(20px,5vw,40px)}.site-header{position:sticky;top:0;z-index:100;background:#f5f7fae6;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:var(--s-4);min-height:var(--header-h)}.brand-logo{height:56px;width:auto}.mini-nav{display:flex;align-items:center;gap:var(--s-2)}.mini-nav a{display:inline-flex;align-items:center;gap:var(--s-2);text-decoration:none;color:var(--ink-2);font-family:Montserrat,sans-serif;font-weight:600;font-size:.9375rem;min-height:44px;padding:10px var(--s-3);border-radius:var(--radius-sm)}.mini-nav a:hover{color:var(--ink);background:#14223f0d}.mini-phone .ic{color:var(--gold-deep)}.intro{padding-block:clamp(40px,6vw,72px) clamp(16px,2vw,24px)}.eyebrow{font-family:Montserrat,sans-serif;font-weight:700;font-size:.8125rem;line-height:1.23;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-deep);margin:0 0 var(--s-4)}.page-title{font-size:clamp(2rem,5vw,3.25rem);font-weight:800;line-height:1.1;margin-bottom:var(--s-4)}.page-title em{font-style:normal;color:var(--gold-deep)}.page-lede{color:var(--muted);font-size:1.125rem;line-height:1.5556;max-width:58ch;margin:0}.app-section{padding-block:clamp(24px,3vw,40px) clamp(48px,6vw,80px)}.app-grid{display:grid;grid-template-columns:1fr 340px;gap:var(--s-6);align-items:start}.stage-card{background:var(--surface-card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-md);overflow:hidden}.dropzone{padding:clamp(40px,7vw,88px) clamp(24px,4vw,48px);text-align:center}.dropzone.drag{background:var(--surface-alt)}.dz-ic{width:56px;height:56px;color:var(--gold-deep);margin:0 auto var(--s-4)}.dz-title{font-size:1.5rem;font-weight:800;line-height:1.17;margin-bottom:var(--s-3)}.dz-text{color:var(--muted);max-width:44ch;margin:0 auto var(--s-6)}.dz-actions{display:flex;flex-wrap:wrap;gap:var(--s-3);justify-content:center;margin-bottom:var(--s-4)}.dz-note{color:var(--muted);font-size:.8125rem;margin:0}.canvas-wrap{position:relative;background:var(--navy-deep)}#stage{width:100%;height:auto;touch-action:none;cursor:crosshair}.hint{position:absolute;left:50%;top:var(--s-4);transform:translate(-50%);background:#0f1a30d9;color:#fff;font-family:Montserrat,sans-serif;font-weight:600;font-size:.875rem;padding:var(--s-2) var(--s-4);border-radius:999px;pointer-events:none;white-space:nowrap;transition:opacity .3s var(--ease)}.hint.hidden{opacity:0}.before-btn{position:absolute;right:var(--s-3);bottom:var(--s-3);display:inline-flex;align-items:center;gap:var(--s-2);background:#0f1a30d9;color:#fff;border:1px solid rgba(255,255,255,.35);font-family:Montserrat,sans-serif;font-weight:600;font-size:.8125rem;min-height:44px;padding:var(--s-2) var(--s-4);border-radius:999px;cursor:pointer;user-select:none;-webkit-user-select:none}.before-btn .ic{width:18px;height:18px}.toolbar{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--s-2);padding:var(--s-3);border-top:1px solid var(--border);background:var(--surface)}.tool-group{display:flex;flex-wrap:wrap;gap:var(--s-1)}.tool{display:inline-flex;align-items:center;gap:6px;background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);color:var(--ink-2);font-family:Montserrat,sans-serif;font-weight:600;font-size:.8125rem;min-height:44px;padding:var(--s-2) var(--s-3);cursor:pointer}.tool .ic{width:18px;height:18px}.tool:hover{background:#14223f0f}.tool.is-active{background:var(--navy);color:#fff}.tool[hidden]{display:none}.panel{background:var(--surface-card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:var(--s-6);position:sticky;top:calc(var(--header-h) + 16px)}.panel-title{font-size:1.1875rem;font-weight:700;margin-bottom:var(--s-4)}.chips{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s-3);margin-bottom:var(--s-6)}.chip{border:2px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-card);padding:0;cursor:pointer;overflow:hidden;display:flex;flex-direction:column}.chip canvas{width:100%;height:48px}.chip span{font-family:Montserrat,sans-serif;font-weight:600;font-size:.6875rem;line-height:1.2;color:var(--ink-2);padding:6px 4px;text-align:center}.chip.is-active{border-color:var(--gold);box-shadow:0 0 0 3px #c39a3e40}.chip.is-active span{color:var(--gold-deep)}.sliders{display:grid;gap:var(--s-4);margin-bottom:var(--s-6)}.slider{display:grid;gap:var(--s-2)}.slider-label{font-family:Montserrat,sans-serif;font-weight:600;font-size:.8125rem;color:var(--ink-2)}.slider input[type=range]{width:100%;accent-color:var(--gold);min-height:24px}.status{color:var(--muted);font-size:.875rem;line-height:1.4286;background:var(--surface-alt);border-radius:var(--radius-sm);padding:var(--s-3) var(--s-4);margin:0 0 var(--s-6)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--s-2);min-height:48px;padding:var(--s-3) var(--s-6);border-radius:var(--radius-sm);font-family:Montserrat,sans-serif;font-weight:700;font-size:1rem;line-height:1.5;text-decoration:none;cursor:pointer;border:2px solid transparent;transition:transform .18s var(--ease),background-color .18s var(--ease)}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--gold);color:var(--navy);box-shadow:var(--shadow-sm)}.btn-primary:hover{background:#b88e30}.btn-ghost-dark{background:transparent;color:var(--ink);border-color:var(--border-strong)}.btn-ghost-dark:hover{background:#14223f0d}.btn-block{width:100%}.panel-note{color:var(--muted);font-size:.8125rem;line-height:1.5385;margin:var(--s-3) 0 0}.how{background:var(--surface-alt);padding-block:clamp(48px,7vw,96px)}.how-title{font-size:clamp(1.5rem,3.5vw,2.25rem);font-weight:800;line-height:1.17;margin-bottom:var(--s-8)}.how-steps{list-style:none;margin:0 0 var(--s-8);padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s-6)}.how-steps h3{font-size:1.125rem;font-weight:700;margin:var(--s-4) 0 var(--s-2)}.how-steps p{color:var(--muted);margin:0;font-size:.9375rem;line-height:1.5715}.how-num{font-family:Montserrat,sans-serif;font-weight:800;font-size:1rem;color:var(--navy);background:var(--surface);border:2px solid var(--gold);width:48px;height:48px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center}.how-disclaimer{color:var(--muted);font-size:.875rem;line-height:1.5715;max-width:65ch;margin:0}.site-footer{background:var(--navy-deep);color:#ffffffb3}.footer-inner{padding-block:var(--s-6)}.footer-inner p{margin:0;font-size:.8125rem}.load-1,.load-2,.load-3{opacity:0;transform:translateY(16px);animation:fadeUp .7s var(--ease) forwards}.load-1{animation-delay:.05s}.load-2{animation-delay:.15s}.load-3{animation-delay:.25s}@keyframes fadeUp{to{opacity:1;transform:none}}@media (max-width: 1024px){.app-grid{grid-template-columns:1fr}.panel{position:static}.chips{grid-template-columns:repeat(6,1fr)}}@media (max-width: 768px){:root{--header-h: 72px}.brand-logo{height:46px}.how-steps{grid-template-columns:1fr}.chips{grid-template-columns:repeat(3,1fr)}.mini-nav a span{display:none}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.001ms!important;transition-duration:.001ms!important}.load-1,.load-2,.load-3{opacity:1;transform:none}}
