body.app{background:radial-gradient(900px 420px at 85% -80px,rgba(255,98,0,.10),transparent 70%),var(--lx-n-50);min-height:100vh}
.app-top{position:sticky;top:0;z-index:40;background:rgba(255,255,255,.86);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--lx-n-200)}
.app-top .bar{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:68px}
.secure{display:inline-flex;gap:.4rem;align-items:center;color:var(--lx-success);font-weight:600;font-size:.88rem}
.app-main{max-width:1120px;margin:0 auto;padding:2rem 1.25rem 4rem}
.block{width:100%}
/* gate */
.gate-card{max-width:500px;margin:2rem auto;background:#fff;border:1px solid var(--lx-n-200);border-radius:var(--lx-r-xl);box-shadow:var(--lx-shadow-lg);padding:2.3rem;animation:lxslide .5s var(--lx-ease)}
.gate-ic{display:inline-grid;place-items:center;width:3.4rem;height:3.4rem;border-radius:16px;background:var(--lx-orange-100);color:var(--lx-orange-700);font-size:1.6rem;margin-bottom:1rem}
.gate-card h1{font-size:1.7rem}
.gate-steps{list-style:none;display:flex;gap:.5rem;padding:0;margin:1.2rem 0 1.4rem;font-size:.85rem;color:var(--lx-n-500);font-weight:600}
.gate-steps li{display:flex;align-items:center;gap:.4rem;flex:1;position:relative}.gate-steps li:not(:last-child)::after{content:"";flex:1;height:2px;background:var(--lx-n-200);margin:0 .3rem}
.gate-steps i{font-style:normal;width:1.6rem;height:1.6rem;border-radius:50%;display:grid;place-items:center;background:var(--lx-n-100);font-size:.78rem;transition:all .25s}
.gate-steps .on{color:var(--lx-grey)}.gate-steps .on i{background:var(--lx-orange);color:var(--lx-ink);box-shadow:var(--lx-glow)}.gate-steps .ok i{background:var(--lx-success);color:#fff}
.gate-links{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1rem}.gate-note{margin:1.4rem 0 0;font-size:.84rem;color:var(--lx-n-500);display:flex;gap:.45rem;align-items:center}
input.code{letter-spacing:.5em;font:700 1.4rem var(--lx-head);text-align:left}
/* layout */
.wiz-layout{display:grid;grid-template-columns:290px 1fr;gap:1.75rem;align-items:start}
.side-prog{position:sticky;top:92px;background:#fff;border:1px solid var(--lx-n-200);border-radius:var(--lx-r-lg);padding:1.3rem;box-shadow:var(--lx-shadow-sm)}
.sp-prog{display:flex;align-items:center;gap:.9rem;margin-bottom:1.1rem}.spt{display:block;font:800 1rem var(--lx-head)}
.ring{width:64px;height:64px;position:relative;flex:none}.ring svg{transform:rotate(-90deg)}.ring circle{fill:none;stroke-width:6}.ring .bg{stroke:var(--lx-n-200)}.ring .fg{stroke:var(--lx-orange);stroke-linecap:round;transition:stroke-dashoffset .7s var(--lx-ease)}
.ring b{position:absolute;inset:0;display:grid;place-items:center;font:800 .92rem var(--lx-head)}
.stepper{list-style:none;margin:0 0 1rem;padding:0;display:grid;gap:.15rem}
.stepper .st{width:100%;display:flex;align-items:center;gap:.8rem;text-align:left;background:transparent;border:0;padding:.5rem .55rem;border-radius:12px;cursor:pointer;color:var(--lx-n-700);font:inherit;transition:background .2s,transform .2s}
.stepper .st:hover:not(:disabled){background:var(--lx-n-100);transform:translateX(2px)}
.stepper .bub{width:2.15rem;height:2.15rem;border-radius:11px;display:grid;place-items:center;background:var(--lx-n-100);color:var(--lx-n-500);flex:none;transition:all .3s var(--lx-ease)}
.stepper b{font:700 .93rem var(--lx-head)}
.stepper .st.cur{background:var(--lx-orange-50)}.stepper .st.cur .bub{background:var(--lx-orange);color:var(--lx-ink);box-shadow:var(--lx-glow);transform:scale(1.06)}.stepper .st.ok .bub{background:var(--lx-success-50);color:var(--lx-success)}
.stepper .st:disabled{opacity:.45;cursor:not-allowed}
.savepill{display:inline-flex;gap:.45rem;align-items:center;font:600 .8rem var(--lx-font);padding:.4rem .8rem;border-radius:99px;background:var(--lx-n-100);color:var(--lx-n-500);margin:0;max-width:100%}
.savepill.saved{background:var(--lx-success-50);color:#0b6b49}.savepill.bad{background:var(--lx-danger-50);color:#9b1c24}.savepill.saving{background:var(--lx-info-50);color:#1e3a8a}.savepill.saving .ic{animation:lxspin .9s linear infinite}
.sp-foot{margin:1rem 0 0;font-size:.82rem}.sp-foot a{color:var(--lx-n-500);display:inline-flex;gap:.4rem;align-items:center}
.wiz-card{background:#fff;border:1px solid var(--lx-n-200);border-radius:var(--lx-r-xl);box-shadow:var(--lx-shadow-md);padding:2.1rem 2.3rem;min-width:0}
.wc-head{display:flex;gap:1.1rem;align-items:flex-start;margin-bottom:1.6rem;padding-bottom:1.4rem;border-bottom:1px solid var(--lx-n-200)}
.wc-ic{display:grid;place-items:center;width:3.2rem;height:3.2rem;border-radius:16px;background:linear-gradient(135deg,#FF7A22,#FF6200);color:var(--lx-ink);font-size:1.5rem;flex:none;box-shadow:var(--lx-glow)}
.wc-head h1{font-size:1.7rem;margin:.1rem 0 .25rem}.wc-head p{margin:0}.kicker{font:700 .76rem var(--lx-head);letter-spacing:.1em;text-transform:uppercase;color:var(--lx-orange-700)}
.mobile-prog{display:none;margin-bottom:1.2rem}.mp-top{display:flex;justify-content:space-between;margin-bottom:.5rem}
.progress-lx{height:6px;background:var(--lx-n-200);border-radius:3px;overflow:hidden}#fill{height:100%;width:0;background:linear-gradient(90deg,var(--lx-orange),#ff9a4d);border-radius:3px;transition:width .5s var(--lx-ease)}
.anim .wc-head,.anim #body{animation:lxslide .45s var(--lx-ease)}@keyframes lxslide{from{opacity:0;transform:translateX(16px)}to{opacity:1;transform:none}}
@media(max-width:960px){.wiz-layout{grid-template-columns:1fr}.side-prog{display:none}.mobile-prog{display:block}.wiz-card{padding:1.5rem 1.25rem}}
/* fields */
.lx-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:1.15rem 1.25rem}.lx-col.c12{grid-column:span 12}.lx-col.c6{grid-column:span 6}@media(max-width:640px){.lx-col.c6{grid-column:span 12}}
.lx-field label,.lx-col>label:not(.lx-check),.lx-set legend{display:block;font:600 .92rem var(--lx-font);margin:0 0 .4rem;color:var(--lx-grey);float:none;padding:0;width:auto}
.opt{font-weight:600;color:var(--lx-n-500);background:var(--lx-n-100);border-radius:99px;padding:.05rem .55rem;font-size:.7rem;margin-left:.4rem;text-transform:uppercase;letter-spacing:.04em}
.lx-in{position:relative}.lx-in>.ic{position:absolute;left:.95rem;top:50%;transform:translateY(-50%);color:var(--lx-n-400);pointer-events:none;transition:color .2s}.lx-in:focus-within>.ic{color:var(--lx-orange)}
.lx-input{width:100%;font:500 1rem var(--lx-font);color:var(--lx-grey);background:#fff;border:1.5px solid var(--lx-n-300);border-radius:12px;padding:.8rem .95rem;transition:border-color .2s,box-shadow .2s,background .2s;appearance:none;-webkit-appearance:none}
.lx-in.has-ic .lx-input{padding-left:2.7rem}.lx-input::placeholder{color:var(--lx-n-400)}.lx-input:hover{border-color:var(--lx-n-400)}
.lx-input:focus{outline:0;border-color:var(--lx-orange);box-shadow:0 0 0 4px rgba(255,98,0,.16)}.lx-input[readonly]{background:var(--lx-n-100);color:var(--lx-n-700)}
.lx-input[aria-invalid=true]{border-color:var(--lx-danger);box-shadow:0 0 0 4px rgba(192,34,43,.09)}.lx-text{resize:vertical;min-height:11rem;line-height:1.6}
.lx-select{position:relative}.lx-select .ic{position:absolute;right:.95rem;top:50%;transform:translateY(-50%);pointer-events:none;color:var(--lx-n-500)}.lx-select select{padding-right:2.6rem;cursor:pointer}
.lx-err{min-height:1.35rem;color:var(--lx-danger);font-size:.85rem;display:flex;gap:.35rem;align-items:flex-start;margin-top:.35rem;font-weight:500;animation:lxfade .25s}.lx-err .ic{margin-top:.12rem}
.lx-set{border:0;padding:0;margin:0;min-width:0}.lx-opts{display:flex;flex-wrap:wrap;gap:.6rem}.lx-opt{position:relative;cursor:pointer}
.lx-opt input{position:absolute;opacity:0;inset:0;width:100%;height:100%;cursor:pointer;margin:0}
.lx-opt span{display:flex;align-items:center;gap:.6rem;padding:.7rem 1.15rem;border:1.5px solid var(--lx-n-300);border-radius:12px;font-weight:600;background:#fff;transition:all .2s var(--lx-ease)}
.lx-opt span::before{content:"";width:1.05rem;height:1.05rem;border-radius:50%;border:2px solid var(--lx-n-300);transition:all .2s;flex:none}
.lx-opt:hover span{border-color:var(--lx-n-400);transform:translateY(-1px)}
.lx-opt input:checked+span{border-color:var(--lx-orange);background:var(--lx-orange-50);box-shadow:0 0 0 3px rgba(255,98,0,.14)}.lx-opt input:checked+span::before{border-color:var(--lx-orange);background:radial-gradient(circle,var(--lx-orange) 45%,#fff 50%)}
.lx-opt input:focus-visible+span{outline:3px solid var(--lx-grey);outline-offset:2px}.lx-set[aria-invalid=true] .lx-opt span{border-color:var(--lx-danger)}
.lx-check{display:flex;gap:.85rem;align-items:flex-start;padding:1rem 1.1rem;border:1.5px solid var(--lx-n-300);border-radius:14px;cursor:pointer;transition:all .2s;position:relative}.lx-check:hover{border-color:var(--lx-n-400)}
.lx-check input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0;cursor:pointer}.lx-check .box{width:1.5rem;height:1.5rem;border-radius:8px;border:2px solid var(--lx-n-300);display:grid;place-items:center;flex:none;color:transparent;transition:all .25s var(--lx-ease);font-size:.9rem;margin-top:.1rem}
.lx-check input:checked~.box{background:var(--lx-orange);border-color:var(--lx-orange);color:var(--lx-ink);transform:scale(1.08)}.lx-check:has(input:checked){border-color:var(--lx-orange);background:var(--lx-orange-50)}
.lx-check input:focus-visible~.box{outline:3px solid var(--lx-grey);outline-offset:2px}.lx-check .txt{line-height:1.5}.lx-check a{position:relative;z-index:1;white-space:nowrap}
.lx-count{display:flex;align-items:center;gap:.75rem;margin-top:.5rem;font-size:.85rem;color:var(--lx-n-500)}.lx-count .bar{flex:1;height:6px;background:var(--lx-n-200);border-radius:3px;overflow:hidden}
.lx-count .bar i{display:block;height:100%;width:0;background:var(--lx-orange);transition:width .25s,background .25s}.lx-count.warn .bar i{background:#d97706}.lx-count.over .bar i{background:var(--lx-danger)}.lx-count.over{color:var(--lx-danger);font-weight:600}
.lx-note,.lx-alert{display:flex;gap:.7rem;background:var(--lx-orange-50);border:1px solid var(--lx-orange-200);border-radius:12px;padding:.85rem 1rem;margin-bottom:1.15rem;font-size:.94rem;animation:lxfade .3s}.lx-note .ic{color:var(--lx-orange-700);margin-top:.15rem}
.lx-alert.bad{background:var(--lx-danger-50);border-color:#f4c2c5;color:#7f1a20}.lx-alert.bad .ic{color:var(--lx-danger);margin-top:.15rem}
.actions{display:flex;gap:.75rem;align-items:center;margin-top:1.9rem;padding-top:1.4rem;border-top:1px solid var(--lx-n-200)}.actions .grow{margin-left:auto}
@media(max-width:640px){.actions{position:sticky;bottom:0;background:#fff;margin:1.5rem -1.25rem -1.5rem;padding:.9rem 1.25rem;box-shadow:0 -10px 24px rgba(0,0,0,.07);border-radius:0 0 var(--lx-r-xl) var(--lx-r-xl);flex-wrap:wrap}.actions .lx-btn{flex:1}.actions .grow{margin-left:0}}
/* review */
.rev{border:1px solid var(--lx-n-200);border-radius:16px;padding:1.1rem 1.3rem;margin-bottom:1rem;transition:box-shadow .2s,border-color .2s}.rev:hover{box-shadow:var(--lx-shadow-sm);border-color:var(--lx-n-300)}
.rev h2{font-size:1.05rem;margin:0 0 .8rem;display:flex;align-items:center;gap:.7rem}.rb{display:grid;place-items:center;width:2rem;height:2rem;border-radius:9px;background:var(--lx-orange-100);color:var(--lx-orange-700);font-size:1rem}
.rev .edit{margin-left:auto;display:inline-flex;gap:.35rem;align-items:center;border:0;background:var(--lx-n-100);color:var(--lx-grey);font:600 .82rem var(--lx-font);padding:.4rem .8rem;border-radius:99px;cursor:pointer;transition:all .2s}.rev .edit:hover{background:var(--lx-orange);color:var(--lx-ink)}
.rev dl{display:grid;grid-template-columns:minmax(120px,1fr) 2fr;gap:.45rem 1.2rem;margin:0}.rev dt{font-weight:600;color:var(--lx-n-500);font-size:.9rem}.rev dd{margin:0;overflow-wrap:anywhere;font-weight:500}.ph{max-width:200px;width:100%;border-radius:14px;box-shadow:var(--lx-shadow-md)}
@media(max-width:560px){.rev dl{grid-template-columns:1fr}}
/* photo */
.ph-tips{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.2rem}.ph-tips span{display:inline-flex;gap:.4rem;align-items:center;background:var(--lx-n-100);border-radius:99px;padding:.35rem .8rem;font-size:.85rem;font-weight:600;color:var(--lx-n-700)}.ph-tips .ic{color:var(--lx-orange)}
.ph-saved{display:flex;gap:1.1rem;align-items:center;background:var(--lx-success-50);border:1px solid #bce5d4;border-radius:16px;padding:1rem;margin-bottom:1.2rem}.ph-saved img{max-width:96px}.ph-saved b{display:flex;gap:.4rem;align-items:center;color:#0b6b49}.ph-saved p{margin:.2rem 0 0}
.ph-choose{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media(max-width:560px){.ph-choose{grid-template-columns:1fr}}
.ph-card{display:flex;flex-direction:column;gap:.3rem;align-items:flex-start;padding:1.3rem;border:1.5px solid var(--lx-n-300);border-radius:16px;background:#fff;cursor:pointer;text-align:left;transition:all .25s var(--lx-ease);font:inherit;color:inherit}
.ph-card:hover{border-color:var(--lx-orange);transform:translateY(-3px);box-shadow:var(--lx-shadow-md)}.ph-card .ic{width:2.8rem;height:2.8rem;padding:.7rem;border-radius:12px;background:var(--lx-orange-100);color:var(--lx-orange-700);margin-bottom:.5rem;box-sizing:border-box;transition:all .25s}
.ph-card:hover .ic{background:var(--lx-orange);color:var(--lx-ink)}.ph-card b{font:800 1.05rem var(--lx-head)}.ph-card span{color:var(--lx-n-500);font-size:.88rem}
.drop{display:flex;gap:.6rem;align-items:center;justify-content:center;margin-top:1rem;padding:1.2rem;border:2px dashed var(--lx-n-300);border-radius:16px;color:var(--lx-n-500);cursor:pointer;transition:all .2s}.drop:hover,.drop.over{border-color:var(--lx-orange);background:var(--lx-orange-50);color:var(--lx-orange-700)}.drop.over{transform:scale(1.01)}
.ph-priv{display:flex;gap:.45rem;align-items:center;margin-top:1rem}
.cam{position:relative;max-width:380px;margin:0 auto;aspect-ratio:3/4;background:#111;border-radius:22px;overflow:hidden;box-shadow:var(--lx-shadow-lg)}.cam video{width:100%;height:100%;object-fit:cover;transform:scaleX(-1)}
.oval{position:absolute;inset:9% 16%;border:3px solid rgba(255,255,255,.9);border-radius:50%;box-shadow:0 0 0 999px rgba(0,0,0,.42);animation:lxoval 2.4s ease-in-out infinite}@keyframes lxoval{50%{border-color:var(--lx-orange)}}
.camhint{position:absolute;left:0;right:0;bottom:.9rem;margin:0;text-align:center;color:#fff;font-weight:600;font-size:.9rem;text-shadow:0 1px 6px rgba(0,0,0,.6)}
.cambtns{display:flex;gap:1.2rem;align-items:center;justify-content:center;margin-top:1.2rem}
.ph-shutter{width:4.4rem;height:4.4rem;border-radius:50%;border:4px solid var(--lx-orange);background:#fff;padding:0;cursor:pointer;display:grid;place-items:center;transition:transform .15s,box-shadow .2s}.ph-shutter i{width:3.2rem;height:3.2rem;border-radius:50%;background:var(--lx-orange);transition:transform .15s}
.ph-shutter:hover{box-shadow:var(--lx-glow)}.ph-shutter:active i{transform:scale(.85)}
.ph-adj{display:grid;grid-template-columns:300px 1fr;gap:1.6rem;align-items:start}@media(max-width:720px){.ph-adj{grid-template-columns:1fr}}
#adj{width:100%;max-width:300px;height:auto;border-radius:18px;box-shadow:var(--lx-shadow-lg);display:block;margin:0 auto}
.sl{margin-bottom:.9rem}.sl label{display:flex;gap:.45rem;align-items:center;font-weight:600;font-size:.9rem;margin-bottom:.25rem}.sl .ic{color:var(--lx-orange)}
input[type=range]{width:100%;accent-color:var(--lx-orange);height:1.4rem;cursor:pointer}.phbtns{display:flex;flex-wrap:wrap;gap:.7rem;margin:1rem 0 0}.phbtns.center{justify-content:center}
/* success */
.done{max-width:600px;margin:1rem auto;background:#fff;border:1px solid var(--lx-n-200);border-radius:var(--lx-r-xl);box-shadow:var(--lx-shadow-lg);padding:2.4rem 2.2rem;text-align:center;position:relative;overflow:hidden;outline:0}
.okmark{width:92px;height:92px;margin:0 auto 1rem}.okmark svg{width:100%;height:100%}.okmark circle{fill:var(--lx-success-50);stroke:var(--lx-success);stroke-width:2;stroke-dasharray:151;stroke-dashoffset:151;animation:lxdraw .7s .1s forwards}
.okmark path{fill:none;stroke:var(--lx-success);stroke-width:3.5;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:40;stroke-dashoffset:40;animation:lxdraw .5s .7s forwards}@keyframes lxdraw{to{stroke-dashoffset:0}}
.done h1{font-size:2rem}.done .lead{font-size:1.05rem}
.refbox{background:var(--lx-orange-50);border:1px dashed var(--lx-orange);border-radius:16px;padding:1rem 1.2rem;margin:1.4rem 0;display:grid;gap:.5rem}.refbox small{color:var(--lx-n-500)}
.refrow{display:flex;align-items:center;justify-content:center;gap:.8rem;flex-wrap:wrap}.refrow code{font:800 1.5rem ui-monospace,Consolas,monospace;color:var(--lx-orange-700);letter-spacing:.02em}
.next{list-style:none;padding:0;margin:1.6rem 0;display:grid;gap:1rem;text-align:left}.next li{display:flex;gap:.9rem}.nb{width:2.4rem;height:2.4rem;border-radius:12px;background:var(--lx-orange-100);color:var(--lx-orange-700);display:grid;place-items:center;flex:none}.next b{display:block}.next span{color:var(--lx-n-500);font-size:.92rem}
.burst{position:absolute;left:50%;top:92px;width:0;height:0;pointer-events:none}.burst i{position:absolute;width:9px;height:14px;border-radius:2px;background:var(--lx-orange);opacity:0;animation:lxburst 1.4s .5s ease-out forwards}
.burst i:nth-child(3n){background:#34d399}.burst i:nth-child(3n+1){background:#fbbf24}.burst i:nth-child(4n){background:#333}
.burst i:nth-child(1){--x:-160px;--y:-70px}.burst i:nth-child(2){--x:-110px;--y:-120px}.burst i:nth-child(3){--x:-50px;--y:-150px}.burst i:nth-child(4){--x:20px;--y:-160px}.burst i:nth-child(5){--x:80px;--y:-140px}.burst i:nth-child(6){--x:130px;--y:-100px}.burst i:nth-child(7){--x:170px;--y:-40px}
.burst i:nth-child(8){--x:-180px;--y:-10px}.burst i:nth-child(9){--x:-130px;--y:30px}.burst i:nth-child(10){--x:-70px;--y:-90px}.burst i:nth-child(11){--x:50px;--y:-100px}.burst i:nth-child(12){--x:110px;--y:10px}.burst i:nth-child(13){--x:180px;--y:20px}.burst i:nth-child(14){--x:-15px;--y:-60px}
@keyframes lxburst{0%{opacity:1;transform:translate(0,0) rotate(0)}100%{opacity:0;transform:translate(var(--x),calc(var(--y) + 70px)) rotate(420deg)}}
@media print{body.app{background:#fff}.app-top{display:none}.done{box-shadow:none;border:0}.burst{display:none}}

input[type=range]{color-scheme:light}
