:root{font-family:Inter,Segoe UI,system-ui,-apple-system,sans-serif;color:#111;background:#f6f6f8;line-height:1.5;font-size:16px}.mockup-page{display:flex;flex-direction:column;gap:1.5rem}.mockup-page.simple{gap:1rem}.simple-header h2{margin:0;font-size:clamp(1.5rem,3vw,2.2rem);color:#0f172a}.simple-header p{margin:.35rem 0 0;color:#4b5166}.mockup-hero{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(220px,1fr);gap:2rem;padding:2rem;border-radius:28px;border:1px solid rgba(15,23,42,.08);background:radial-gradient(circle at top right,rgba(79,70,229,.12),transparent 55%),linear-gradient(135deg,#ffffff,#f6f8ff)}.hero-copy h1{margin:.4rem 0 .8rem;font-size:clamp(1.8rem,5vw,3rem);color:#0f172a}.hero-copy .subhead{margin:0;color:#3b4455;max-width:52ch}.hero-badge{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .9rem;border-radius:999px;background:rgba(79,70,229,.1);color:#1b1b1b;text-transform:uppercase;letter-spacing:.15em;font-size:.75rem;font-weight:600}.hero-steps{flex-wrap:wrap;margin-top:1.5rem}.hero-step,.hero-steps{display:flex;gap:.75rem}.hero-step{flex:1 1 200px;align-items:center;padding:.85rem 1rem;border-radius:16px;background:rgba(15,23,42,.05);border:1px solid rgba(15,23,42,.08)}.hero-step-number{width:32px;height:32px;border-radius:50%;background:#0f172a;color:white;display:grid;place-items:center;font-weight:600;font-size:.9rem}.hero-step-title{margin:0;font-weight:600;color:#111322}.hero-step-text{margin:0;font-size:.85rem;color:#5b6274}.hero-highlights{display:grid;gap:1rem}.hero-highlight{padding:1.25rem;border-radius:18px;border:1px solid rgba(15,23,42,.08);background:white}.hero-highlight h3{margin:.35rem 0;font-size:1.25rem;color:#0f172a}.highlight-eyebrow{margin:0;text-transform:uppercase;letter-spacing:.2em;font-size:.7rem;color:#8186a2}.hero-highlight p{margin:0;color:#4b5166}@media (max-width:900px){.mockup-hero{grid-template-columns:1fr;padding:1.5rem}}@media (max-width:600px){.hero-step{flex:1 1 100%}.hero-toolbar{padding:1rem}}.toolbar{display:flex;flex-wrap:wrap;gap:1rem;align-items:center}.hero-toolbar{padding:1rem 1.5rem;border-radius:22px;border:1px solid rgba(15,23,42,.08);background:white}.simple-toolbar{padding:1rem;border-radius:16px;border:1px solid rgba(15,23,42,.05);background:white}.upload-panel{flex:1 1 320px;padding:1rem 1.5rem;border:2px dashed #b7c1d6;border-radius:1rem;background:white;min-height:140px;display:flex;flex-direction:column;justify-content:center;gap:.5rem;text-align:center;transition:border-color .2s ease,background .2s ease}.upload-panel.dragover{border-color:#171717;background:#f6f3ff}.upload-panel p{margin:0;color:#4f566b;font-size:.95rem}.upload-action{display:inline-flex;justify-content:center;align-items:center;padding:.65rem 1.5rem;border-radius:999px;border:none;background:#161616;color:white;font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.upload-action:hover{transform:translateY(-2px)}.mockup-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.5rem}.mockup-card{background:white;display:flex;flex-direction:column;gap:.75rem;border-radius:8px;border:1px solid rgba(15,23,42,.08);overflow:hidden;position:relative}.mockup-card.selected{border-color:rgba(8,8,8,.5);box-shadow:0 0 0 3px rgba(35,35,35,.9)}.canvas-wrapper{position:relative;width:100%;aspect-ratio:var(--aspect-ratio,4/3);overflow:hidden;background:#0f172a}.mockup-canvas{width:100%;height:100%;display:block}.handle-layer,.handle-visuals{position:absolute;inset:0;pointer-events:none}.handle-visuals polygon{fill:rgba(79,70,229,.08);stroke:rgba(27,27,27,.7);stroke-width:4;vector-effect:non-scaling-stroke}.handle-layer .handle{position:absolute;width:18px;height:18px;pointer-events:auto;cursor:grab;touch-action:none;transform:translate(-50%,-50%)}.handle-layer .handle:after,.handle-layer .handle:before{content:"";position:absolute;left:50%;top:50%;width:2px;height:18px;background:#fefefe;transform:translate(-50%,-50%);box-shadow:0 0 0 1px rgba(0,0,0,.25)}.handle-layer .handle:after{width:18px;height:2px}.handle-layer .handle:active{cursor:grabbing}.corner-readout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.3rem 1rem;font-size:.8rem;padding:.5rem .25rem 0;color:#4a5368}.corner-line{display:flex;justify-content:space-between;gap:.3rem;font-variant-numeric:tabular-nums}.corner-value{color:#111827;font-weight:600}.canvas-wrapper.handles-hidden .handle-layer,.canvas-wrapper.handles-hidden .handle-visuals,.mockup-controls{opacity:0;pointer-events:none}.mockup-controls{position:absolute;top:.75rem;right:.75rem;display:flex;justify-content:flex-end;gap:.5rem;transform:translateY(-6px);transition:opacity .2s ease,transform .2s ease}.mockup-card:focus-within .mockup-controls,.mockup-card:hover .mockup-controls{opacity:1;pointer-events:auto;transform:translateY(0)}.mockup-controls label{display:flex;flex-direction:column;font-size:.9rem;color:#4a5367;flex:1 1 180px}.mockup-controls input[type=range]{width:100%;accent-color:#191919}.mockup-controls button{padding:.55rem 1.25rem;border-radius:999px;background:rgba(18,18,18,.9);border:1px solid rgba(255,255,255,.2);color:white;box-shadow:0 10px 20px rgba(0,0,0,.25),0 5px 10px rgba(0,0,0,.15)}@media (max-width:600px){.canvas-wrapper{aspect-ratio:var(--aspect-ratio,3/2)}}.mockup-pagination{display:flex;align-items:center;justify-content:center;gap:.75rem;margin-top:1rem;padding:.5rem 0 1rem}.mockup-pagination[hidden]{display:none}.mockup-page-button{min-width:100px;padding:.45rem 1rem;border-radius:999px;border:1px solid rgba(15,23,42,.15);background:white;color:#0f172a;font-weight:500;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease}.mockup-page-button:hover:not(:disabled){background:#f5f6fb;border-color:rgba(15,23,42,.3)}.mockup-page-button:disabled{opacity:.5;cursor:not-allowed}.mockup-page-label{font-weight:600;color:#1f2937;min-width:120px;text-align:center}