:root{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#172037;background:#f7f8fc}*{box-sizing:border-box}body{margin:0}header{background:#fff;border-bottom:1px solid #e8eaf1;padding:17px max(24px,calc((100vw - 1180px)/2));display:flex;align-items:center;justify-content:space-between}.brand{display:flex;gap:12px;align-items:center;font-size:15px;font-weight:900;letter-spacing:.06em}.brand small{display:block;font-size:9px;letter-spacing:.24em;color:#7a8398;margin-top:3px}.mark{background:#2155ef;color:white;border-radius:13px;padding:11px;font-size:19px;letter-spacing:-.08em}.tag{font-size:13px;color:#8790a5}main{max-width:1180px;margin:0 auto;padding:46px 24px 75px}.intro{text-align:center;margin-bottom:40px}.eyebrow{font-size:11px;font-weight:800;letter-spacing:.24em;color:#315cf0}.intro h1{font-size:clamp(40px,6vw,64px);letter-spacing:-.065em;margin:9px 0}.intro em{color:#315cf0;font-style:normal}.intro p{color:#788298;margin:0}.layout{display:grid;grid-template-columns:1fr 1fr;gap:25px;align-items:start}.preview-panel,.controls{background:white;border:1px solid #e9ecf4;border-radius:22px;box-shadow:0 12px 36px #1b2c5b0b;padding:25px}.preview-top,.preview-bottom{display:flex;justify-content:space-between;align-items:center;gap:12px}.preview-top span,.preview-bottom{font-size:12px;color:#8b93a4}.case-stage{height:500px;display:flex;justify-content:center;align-items:center;background:radial-gradient(circle,#f5f7ff 0,#e9eefb 100%);border-radius:16px;margin:18px 0;overflow:hidden}.case-shell{width:225px;height:440px;border:9px solid #1c2230;border-radius:39px;box-shadow:14px 18px 28px #1d2d5430, inset 0 0 0 2px #ddd;position:relative;overflow:hidden;background:#e1e5f1;touch-action:none}.case-shell canvas{width:100%;height:100%;display:block;touch-action:none}.camera{position:absolute;z-index:2;top:13px;left:13px;width:83px;height:94px;border-radius:23px;background:#d9dfe9e8;border:3px solid #3a4050;display:flex;flex-wrap:wrap;align-content:center;justify-content:space-around;padding:10px;pointer-events:none}.camera i{width:27px;height:27px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#3c506f,#111a29 65%);border:3px solid #71819b}.fine{font-size:11px;color:#9ba2b0;line-height:1.6}.step{display:flex;align-items:center;gap:12px;margin:23px 0 15px}.step:first-child{margin-top:0}.step span{display:grid;place-items:center;background:#eaf0ff;color:#315cf0;font-size:11px;font-weight:900;border-radius:50%;height:34px;width:34px}.step h2{font-size:17px;letter-spacing:-.025em;margin:0}label{font-size:12px;font-weight:750;display:flex;justify-content:space-between;margin:14px 0 8px}select{width:100%;padding:14px;border:1px solid #dce1ec;border-radius:10px;background:#fff;color:#25314b;font-size:14px}.segmented,.tabs{display:flex;gap:8px}.segmented button,.tabs button,.design-grid button{border:1px solid #e1e6f0;background:#fff;color:#536078;border-radius:10px;padding:13px;cursor:pointer;flex:1;font-weight:650}.segmented .selected,.tabs .active{border-color:#315cf0;color:#315cf0;background:#edf2ff}.tabs{margin-bottom:15px}.tabs button{border-radius:9px}.drop{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;padding:26px;border:2px dashed #b9c9fa;background:#f6f8ff;border-radius:14px;cursor:pointer;color:#315cf0}.drop span{font-size:11px;color:#929aab;font-weight:400}input[type=range]{width:100%;accent-color:#315cf0}.hint{font-size:12px;color:#8b93a5}.design-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.design-grid button{min-height:65px}.export{border-top:1px solid #edf0f6;margin-top:25px;padding-top:20px}.export>p:first-child{font-size:12px;color:#69758a}.primary,.secondary{width:100%;padding:15px;border:0;border-radius:11px;font-weight:800;cursor:pointer;margin-top:10px}.primary{background:#315cf0;color:white}.secondary{background:#eaf0ff;color:#315cf0}button:disabled{opacity:.4;cursor:not-allowed}#message{font-size:12px;overflow-wrap:anywhere}footer{text-align:center;font-size:10px;letter-spacing:.22em;color:#9ba2b0;padding:24px}@media(max-width:800px){.layout{grid-template-columns:1fr}.case-stage{height:450px}main{padding:28px 15px}.preview-panel,.controls{padding:18px}}


/* v1.3: honest full-bleed print-area preview; no guessed device geometry. */
.case-stage{position:relative}
.print-sheet{height:88%;width:auto;max-width:80%;max-height:88%;background:#fff;box-shadow:0 15px 40px #1d2d5433;overflow:hidden;touch-action:none;position:relative;border:1px solid #cbd3e6;border-radius:2px}
.print-sheet canvas{width:100%;height:100%;display:block;touch-action:none}

/* v1.4: only verified manufacturer-provided overlays are shown as real case previews. */
.preview-mode{display:flex;gap:8px;margin:0 0 8px}.preview-mode button{flex:1;border:1px solid #dce1ec;background:#fff;border-radius:10px;padding:11px 6px;color:#56627c;font-weight:700;cursor:pointer}.preview-mode button.selected{border-color:#315cf0;background:#edf2ff;color:#315cf0}.preview-mode button:disabled{cursor:not-allowed;opacity:.45}.template-status{font-size:12px;color:#69758a;line-height:1.5;margin:8px 0 15px}.print-sheet.with-template{border:0;border-radius:0;box-shadow:none;background:transparent}.print-sheet #verifiedOverlay{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;object-fit:fill}.print-sheet #verifiedOverlay[hidden]{display:none}
