@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;600;700;800&display=swap');
:root{--blue:#07539f;--dark:#073f78;--orange:#ff8a00;--muted:#607089;--line:#dfe9f5}*{box-sizing:border-box}body{margin:0;background:#f4f8fd;color:#123058;font:400 15px/1.6 Inter,Segoe UI,Arial,sans-serif}header{max-width:1220px;margin:auto;display:flex;justify-content:space-between;align-items:center;padding:12px 24px;gap:16px}header img{display:block;object-fit:contain}a{color:var(--dark);text-decoration:none;font-weight:700;font-size:13px}main{width:calc(100% - 48px);max-width:1180px;margin:24px auto}.heading>p:first-child{font-size:11px;font-weight:800;letter-spacing:.12em;color:var(--blue)}h1{font-size:clamp(30px,4.5vw,52px);line-height:1.12;letter-spacing:-.04em;margin:12px 0}h1 span{color:var(--orange)}.subtitle{color:var(--muted);margin:0 0 30px}.layout{display:grid;grid-template-columns:390px minmax(0,1fr);gap:24px;align-items:start}.panel,.viewer-panel{border:1px solid var(--line);border-radius:24px;background:#fff;padding:28px;box-shadow:0 12px 35px #073f7809}h2{font-size:23px;line-height:1.3;margin:0 0 12px;color:var(--dark)}.hint{font-size:12px;line-height:1.6;color:var(--muted)}fieldset{margin:26px 0;border:0;padding:0}legend{font-size:13px;font-weight:800;margin-bottom:12px;color:var(--blue)}.fields{display:grid;grid-template-columns:1fr 1fr .8fr;gap:10px}label{display:block;font-size:12px;font-weight:600}input,select{width:100%;min-width:0;min-height:48px;font:inherit;font-size:15px;padding:10px 11px;border:1px solid #bfcfe1;border-radius:10px;background:#fff;color:var(--dark);margin-top:6px}input[aria-invalid=true]{border-color:#b83b1a}.material-label{margin-top:8px}.message{font-size:13px;color:#b83b1a;min-height:20px;margin:14px 0}.primary{width:100%;min-height:52px;background:linear-gradient(135deg,#ff8a00,#ff6a00);color:white;border:0;border-radius:13px;font:inherit;font-weight:800;font-size:14px;cursor:pointer}.primary:disabled{opacity:.7;cursor:progress}.privacy{text-align:center;margin-bottom:0}.viewer-panel{overflow:hidden}.viewer-panel>div{min-width:0}#empty-state{min-height:370px;display:flex;flex-direction:column;justify-content:center;text-align:center;align-items:center;background:linear-gradient(145deg,#edf6ff,#fff7ed);border-radius:18px;padding:30px}.lens-symbol{display:block;font-size:65px;color:var(--blue);margin-bottom:14px}#empty-state h2{max-width:360px}#empty-state p{color:var(--muted);font-size:14px}.estimate-note{font-size:12px;color:var(--muted);line-height:1.65;margin:20px 0 0}.eye-tabs{display:flex;gap:10px;flex-wrap:wrap}.eye-tabs button,.view-actions button{min-height:44px;border:1px solid var(--line);background:white;color:var(--dark);font:inherit;font-size:12px;font-weight:700;border-radius:10px;padding:10px 14px;cursor:pointer}.eye-tabs button[aria-pressed=true],.view-actions button[aria-pressed=true]{background:var(--blue);color:#fff;border-color:var(--blue)}#rx-meta{font-size:12px;font-weight:600;color:var(--muted)}.lens-3d-viewport{position:relative;min-height:390px;width:100%;overflow:hidden;display:grid;place-items:center;border-radius:18px;background:radial-gradient(circle at 50% 40%,#fff,#e5eef8);touch-action:none}.lens-3d-viewport canvas{position:absolute;inset:0;width:100%!important;height:100%!important;z-index:2;cursor:grab}.lens-3d-viewport>p{font-size:13px;color:var(--muted)}.fullscreen-button{position:absolute;z-index:3;top:12px;right:12px;width:44px;height:44px;border:1px solid var(--line);border-radius:10px;background:#ffffffdc;cursor:pointer}.view-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.lens-3d-viewport:fullscreen{width:100vw;height:100vh;border-radius:0}.lens-3d-viewport:fullscreen canvas{width:100%!important;height:100%!important}footer{font-size:11px;color:var(--muted);max-width:1180px;margin:30px auto;padding:0 24px 24px}[hidden]{display:none!important}:focus-visible{outline:3px solid var(--orange);outline-offset:3px}@media(max-width:950px){.layout{grid-template-columns:1fr}.panel{max-width:none}.fields{gap:14px}.lens-3d-viewport{min-height:420px}}@media(max-width:580px){header{padding:10px 16px}header img{width:120px;height:68px}main{width:calc(100% - 24px);margin-top:18px}.panel,.viewer-panel{padding:20px;border-radius:20px}.fields{gap:8px}input{padding:10px 8px;font-size:16px}.heading{padding:0 6px}h1{font-size:34px}.subtitle{font-size:14px}.lens-3d-viewport{min-height:320px}.view-actions button{flex:1 1 42%;font-size:11px}.eye-tabs button{flex:1}#empty-state{min-height:270px;padding:22px}.estimate-note{font-size:11px}}

.degree-toggle{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0 0 16px}.degree-toggle label{position:relative;cursor:pointer}.degree-toggle input{position:absolute;opacity:0;width:1px;height:1px;min-height:0;margin:0}.degree-toggle span{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 6px;min-height:46px;border:1px solid var(--line);border-radius:10px;background:#f7faff;font-size:12px;color:var(--dark);font-weight:700}.degree-toggle small{font-size:17px;line-height:1}.degree-toggle label:has(input:checked) span{background:var(--blue);border-color:var(--blue);color:#fff}.degree-toggle label:has(input:focus-visible) span{outline:3px solid var(--orange);outline-offset:3px}.degree-input{display:flex;position:relative;align-items:center;margin-top:6px}.degree-input input{margin:0;padding-left:26px}.degree-sign{position:absolute;left:10px;top:50%;transform:translateY(-50%);font-size:18px;font-weight:700;color:var(--blue);pointer-events:none}.fields label{min-width:0}@media(max-width:580px){.degree-toggle span{font-size:11px}.degree-input input{padding-left:24px;font-size:16px}.degree-sign{left:8px}}
.frame-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.frame-options label{position:relative;cursor:pointer}.frame-options input{position:absolute;opacity:0;width:1px;height:1px;min-height:0;margin:0}.frame-card{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:155px;padding:14px 8px;border:2px solid var(--line);border-radius:14px;background:#f7faff;text-align:center}.frame-card img,.frame-card svg{width:84px;height:84px;object-fit:contain;display:block}.frame-card strong{font-size:12px;margin-top:6px}.frame-card small{color:var(--muted);font-size:10px}.frame-options label:has(input:checked) .frame-card{border-color:var(--blue);background:#edf6ff}.frame-options label:has(input:focus-visible) .frame-card{outline:3px solid var(--orange);outline-offset:3px}
