/* Phase 5 — product discovery + assisted checkout */
.search-trigger{height:40px;padding:0 13px;border-radius:999px;border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.025);color:#d8e1ec;display:flex;gap:8px;align-items:center;cursor:pointer;font:inherit}.search-trigger span{font-size:19px;color:var(--accent)}.search-trigger b{font-size:11px}.search-trigger:hover{border-color:rgba(186,255,69,.28);background:rgba(186,255,69,.04)}
.featured-card--image{cursor:pointer}.featured-card--image:hover{border-color:rgba(186,255,69,.26)}
.product-visual{cursor:pointer;transition:transform .35s ease,filter .35s ease}.product-card:hover .product-visual{transform:scale(1.018);filter:saturate(1.05)}
.details-link{width:100%;margin-top:18px;padding:0 0 13px;border:0;border-bottom:1px solid rgba(255,255,255,.07);background:none;color:#9ba8b9;display:flex;justify-content:space-between;align-items:center;font:700 11px Inter,sans-serif;cursor:pointer}.details-link span{color:var(--accent)}.details-link:hover{color:#fff}
body.modal-open{overflow:hidden}
.product-modal-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.78);backdrop-filter:blur(11px);z-index:130}
.product-modal{position:fixed;z-index:140;left:50%;top:50%;width:min(1060px,calc(100% - 36px));max-height:min(780px,calc(100vh - 36px));transform:translate(-50%,-46%) scale(.98);opacity:0;pointer-events:none;display:grid;grid-template-columns:minmax(390px,.95fr) 1.05fr;background:#070b11;border:1px solid rgba(255,255,255,.10);border-radius:30px;overflow:hidden;box-shadow:0 45px 140px rgba(0,0,0,.65);transition:.22s ease}.product-modal.open{transform:translate(-50%,-50%) scale(1);opacity:1;pointer-events:auto}.product-modal-close{position:absolute;right:18px;top:18px;z-index:4;width:42px;height:42px;border-radius:50%;border:1px solid rgba(255,255,255,.14);background:rgba(4,8,13,.72);color:#fff;font-size:24px;cursor:pointer;backdrop-filter:blur(9px)}
.product-modal-art{min-height:610px;background-size:cover;background-position:center;border-right:1px solid rgba(255,255,255,.08)}.product-modal-content{padding:48px 44px 36px;overflow:auto;display:flex;flex-direction:column}.product-modal-meta{display:flex;gap:8px;margin-bottom:18px}.product-modal-meta span{padding:7px 9px;border-radius:999px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);font-size:9px;text-transform:uppercase;letter-spacing:.11em;color:#a5b1c1}.product-modal-meta span.live{color:var(--accent);border-color:rgba(186,255,69,.16);background:rgba(186,255,69,.06)}.product-modal-meta span.preorder{color:#ff8ec8;border-color:rgba(255,101,181,.18);background:rgba(255,101,181,.06)}.product-modal h2{font-size:clamp(38px,5vw,62px);line-height:.95;margin:0 0 17px}.product-modal-content>p{color:#7f8c9f;line-height:1.75;margin:0 0 27px}.product-specs{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.product-specs div{padding:15px;border-radius:15px;background:rgba(255,255,255,.026);border:1px solid rgba(255,255,255,.07);display:grid;gap:5px}.product-specs span,.product-modal-buybar small{font-size:9px;text-transform:uppercase;letter-spacing:.1em;color:#687487}.product-specs strong{font-size:12px}.product-feature-list{display:grid;gap:10px;margin:22px 0 30px}.product-feature-list div{display:flex;gap:10px;align-items:center;color:#b9c4d1;font-size:12px}.product-feature-list span{display:grid;place-items:center;width:23px;height:23px;border-radius:8px;background:rgba(186,255,69,.07);color:var(--accent)}.product-modal-buybar{margin-top:auto;padding-top:23px;border-top:1px solid rgba(255,255,255,.08);display:flex;justify-content:space-between;gap:18px;align-items:end}.product-modal-buybar>div{display:grid}.product-modal-buybar strong{font-size:30px}.product-modal-buybar>div>span{font-size:10px;color:#667284;margin-top:4px}
/* search */
.search-overlay{position:fixed;inset:0;z-index:160;background:rgba(0,0,0,.76);backdrop-filter:blur(13px);display:grid;place-items:start center;padding-top:min(13vh,115px);opacity:0;transition:.18s ease}.search-overlay.open{opacity:1}.search-panel{width:min(760px,calc(100% - 30px));background:#080d14;border:1px solid rgba(255,255,255,.10);border-radius:26px;padding:27px;box-shadow:0 45px 120px rgba(0,0,0,.65)}.search-head{display:flex;justify-content:space-between;align-items:start}.search-head h2{font-size:31px}.search-box{display:flex;align-items:center;gap:10px;margin:20px 0;padding:0 15px;height:56px;border:1px solid rgba(255,255,255,.10);background:#0b121b;border-radius:16px}.search-box>span{font-size:23px;color:var(--accent)}.search-box input{flex:1;border:0;outline:0;background:transparent;color:#fff;font:inherit}.search-results{display:grid;gap:7px;max-height:430px;overflow:auto}.search-result{border:1px solid rgba(255,255,255,.06);background:rgba(255,255,255,.02);border-radius:15px;padding:13px;display:grid;grid-template-columns:46px 1fr 24px;gap:12px;text-align:left;align-items:center;color:#fff;cursor:pointer}.search-result:hover{border-color:rgba(186,255,69,.20);background:rgba(186,255,69,.035)}.search-result>span{font-size:8px;font-weight:800;color:var(--accent);letter-spacing:.11em}.search-result div{display:grid;gap:3px}.search-result strong{font-size:13px}.search-result small{color:#657285;font-size:10px}.search-result>b{color:#8895a6}.search-empty{padding:26px;text-align:center;color:#687588;font-size:12px}
/* checkout */
.checkout-progress{display:grid;grid-template-columns:auto 1fr auto 1fr auto;align-items:center;gap:8px;margin:22px 0 25px}.checkout-progress>i{height:1px;background:rgba(255,255,255,.10)}.checkout-step{display:flex;align-items:center;gap:7px;color:#596577}.checkout-step span{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(255,255,255,.11);font-size:10px;font-weight:800}.checkout-step b{font-size:9px;text-transform:uppercase;letter-spacing:.08em}.checkout-step.active{color:#fff}.checkout-step.active span{background:var(--accent);color:#071006;border-color:var(--accent)}.checkout-step.complete{color:var(--accent)}.checkout-step.complete span{border-color:rgba(186,255,69,.25)}.checkout-panel{animation:checkoutIn .22s ease}.checkout-panel h3{font-size:23px;margin:0 0 16px}.checkout-kicker{margin:0 0 5px;font-size:9px;color:var(--accent);font-weight:800;text-transform:uppercase;letter-spacing:.12em}.checkout-actions{display:grid;grid-template-columns:auto 1fr;gap:9px;margin-top:18px}.checkout-actions .button:last-child{width:100%}.review-card{border:1px solid rgba(255,255,255,.08);border-radius:17px;overflow:hidden}.review-card>div{padding:13px 15px;display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid rgba(255,255,255,.06)}.review-card>div:last-child{border-bottom:0}.review-card span{font-size:10px;color:#687588}.review-card strong{font-size:11px;text-align:right}.order-drawer .checkout-panel>label{display:grid;gap:8px;margin:14px 0;color:#b9c6d8;font-size:12px;font-weight:700}@keyframes checkoutIn{from{opacity:0;transform:translateX(8px)}to{opacity:1;transform:none}}
@media(max-width:1000px){.search-trigger b{display:none}.product-modal{grid-template-columns:1fr 1fr}.product-modal-content{padding:40px 30px}.product-modal-art{min-height:540px}}
@media(max-width:680px){.search-trigger{display:none}.product-modal{display:block;overflow:auto;max-height:calc(100vh - 20px);width:calc(100% - 20px);border-radius:23px}.product-modal-art{min-height:310px;border-right:0;border-bottom:1px solid rgba(255,255,255,.08);background-position:center 24%}.product-modal-content{padding:27px 20px 24px}.product-modal h2{font-size:39px}.product-specs{grid-template-columns:1fr}.product-modal-buybar{position:sticky;bottom:-24px;margin-inline:-20px;padding:16px 20px 18px;background:rgba(7,11,17,.96);backdrop-filter:blur(12px)}.product-modal-buybar strong{font-size:24px}.product-modal-buybar .button{padding-inline:17px}.search-overlay{padding-top:12px;align-items:start}.search-panel{padding:20px;border-radius:21px}.search-head h2{font-size:26px}.checkout-progress{gap:4px}.checkout-step b{display:none}.checkout-actions{grid-template-columns:1fr}.checkout-actions .checkout-back{order:2}.review-card>div{align-items:start}}
