@import "https://fonts.googleapis.com/css2?family=Cinzel:wght@500;600;700&family=Inter:wght@400;500;600;700;800;900&display=swap";:root{color:#e2e8f0;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#0f172a;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input,textarea,select{font:inherit}.app-shell{color:#e2e8f0;background:radial-gradient(circle at 0 0,#3182ce2e,#0000 30rem),#0f172a;min-height:100vh;padding:2rem}.app-shell-home{background:linear-gradient(90deg, #020617eb 0%, #020617b3 36%, #0206171f 70%), linear-gradient(180deg, #0206178c 0%, #0206172e 38%, #020617b8 100%), var(--home-background) center / cover no-repeat;min-height:100vh;position:relative}.app-shell-page{background:linear-gradient(180deg, #0206176b 0%, #02061747 46%, #02061794 100%), linear-gradient(90deg, #02061757 0%, #0f172a1f 52%, #02061757 100%), var(--page-background) center / cover fixed no-repeat}.site-header{box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;border-radius:0;justify-content:space-between;align-items:flex-start;gap:1.5rem;margin:0 0 2rem;padding:0 0 2rem;display:flex;position:relative}.app-shell-home .site-header{margin:0}.app-shell-home .auth-actions{justify-content:flex-end;margin-left:auto;transform:translate(.25rem,-1.5rem)}.app-shell-home .brand{transform:translateY(-1.5rem)}.app-shell-home .site-nav{flex-wrap:nowrap;justify-self:auto;width:max-content;position:absolute;top:0;left:50%;transform:translate(-50%)}.brand{color:#f8fafc;justify-self:start;align-items:center;gap:.65rem;text-decoration:none;display:inline-flex}.brand-mark{color:#67e8f9;letter-spacing:.12em;background:#02061785;border:1px solid #67e8f96b;border-radius:.15rem;place-items:center;width:2.65rem;height:2.25rem;font-family:Cinzel,Georgia,Times New Roman,serif;font-size:.86rem;font-weight:700;display:inline-grid}.brand-text{letter-spacing:.035em;font-family:Cinzel,Georgia,Times New Roman,serif;font-size:1.08rem;font-weight:500}.auth-status{color:#e2e8f0db;letter-spacing:.035em;align-items:center;gap:.75rem;font-family:Cinzel,Georgia,Times New Roman,serif;font-size:.82rem;font-weight:600;display:flex}.auth-status span{color:#67e8f9;letter-spacing:.01em;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.86rem;font-weight:700}.auth-actions{justify-content:flex-end;align-items:center;gap:.75rem;margin-left:auto;display:flex}.auth-page-centered{place-items:center;min-height:calc(100vh - 8rem);display:grid}.auth-card{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0206175c;border:1px solid #67e8f924;border-radius:.25rem;padding:1.35rem;box-shadow:0 12px 34px #0000002e}.auth-card-centered{width:min(100%,28rem)}.auth-card-header{margin-bottom:1.25rem}.auth-card-header h1{letter-spacing:-.045em;margin-bottom:.65rem;font-family:Cinzel,Georgia,Times New Roman,serif;font-size:clamp(2.25rem,5vw,3.75rem);font-weight:500;line-height:.95}.auth-card-header p{color:#e2e8f0d6;margin-bottom:0;font-size:.95rem;line-height:1.7}.utility-page{place-items:center;min-height:calc(100vh - 8rem);display:grid}.utility-card{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0206175c;border:1px solid #67e8f924;border-radius:.25rem;width:min(100%,34rem);padding:1.35rem;box-shadow:0 12px 34px #0000002e}.utility-card h1{letter-spacing:-.045em;margin-bottom:.85rem;font-family:Cinzel,Georgia,Times New Roman,serif;font-size:clamp(2.25rem,5vw,3.75rem);font-weight:500;line-height:.95}.utility-card p{color:#e2e8f0d6;line-height:1.7}.utility-actions{flex-wrap:wrap;gap:.85rem;margin-top:1.35rem;display:flex}.logout-button{color:#f8fafc;letter-spacing:.06em;cursor:pointer;background:#0206172e;border:1px solid #e2e8f061;border-radius:.15rem;padding:.55rem .9rem;font-family:Cinzel,Georgia,Times New Roman,serif;font-size:.82rem;font-weight:600;transition:background .16s,border-color .16s,color .16s}.logout-button:hover{color:#f8fafc;background:#67e8f91f;border-color:#67e8f9b8}.site-nav{flex-wrap:nowrap;justify-self:auto;gap:.75rem;width:max-content;display:flex;position:absolute;top:0;left:50%;transform:translate(-50%)}.site-nav a{color:#e2e8f0db;letter-spacing:.08em;text-transform:uppercase;border:0;border-radius:0;padding:.25rem 0;font-family:Cinzel,Georgia,Times New Roman,serif;font-size:.82rem;font-weight:600;text-decoration:none;transition:color .16s,opacity .16s;position:relative}.site-nav a:after{content:"";opacity:0;transform-origin:50%;background:#67e8f9;height:1px;transition:opacity .16s,transform .16s;position:absolute;bottom:-.35rem;left:0;right:0;transform:scaleX(.35)}.site-nav a:hover,.site-nav a.active{color:#f8fafc;background:0 0;transform:none}.site-nav a:hover:after,.site-nav a.active:after{opacity:1;transform:scaleX(1)}.hero,.panel{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#02061761;border:1px solid #67e8f924;border-radius:.35rem;box-shadow:0 18px 50px #0003}.hero{align-items:center;min-height:22rem;padding:3rem;display:grid}.home-page{min-height:calc(100vh - 6rem)}.home-hero{align-items:center;min-height:calc(100vh - 8rem);display:grid}.home-hero h1{color:#f8fafc;letter-spacing:-.055em;max-width:42rem;margin:0;font-family:Cinzel,Georgia,Times New Roman,serif;font-size:clamp(3.75rem,8vw,7.5rem);font-weight:500;line-height:.92}.home-hero .hero-copy{color:#e2e8f0d1;max-width:35rem;margin-top:1.35rem;font-size:1.02rem;line-height:1.75}.home-hero-content{max-width:42rem;padding-top:3rem}.panel{padding:1.35rem}.products-section{max-width:1180px;margin:0 auto;padding:0}.form-panel{grid-template-columns:minmax(0,.9fr) minmax(20rem,1fr);align-items:start;gap:2rem;display:grid}.form-copy{max-width:36rem}.eyebrow{color:#38bdf8;letter-spacing:.16em;text-transform:uppercase;margin:0 0 .75rem;font-size:.78rem;font-weight:700}h1,h2,p{margin-top:0}h1{color:#f8fafc;max-width:48rem;margin-bottom:.85rem;font-size:clamp(1.85rem,3.5vw,3.1rem);line-height:1}h2{color:#f8fafc;margin-bottom:.55rem;font-size:1rem}.hero-copy,.panel p,.product-card p{color:#cbd5e1;line-height:1.7}.hero-copy{max-width:46rem;margin-bottom:0;font-size:.98rem}.hero-actions{flex-wrap:wrap;gap:1rem;margin-top:2rem;display:flex}.button-link{color:#f8fafc;letter-spacing:.12em;text-transform:uppercase;background:#67e8f924;border:1px solid #67e8f9b8;border-radius:.15rem;justify-content:center;align-items:center;min-width:12rem;padding:.9rem 1.35rem;font-size:.78rem;font-weight:800;text-decoration:none;transition:background .16s,border-color .16s,transform .16s;display:inline-flex}.secondary-link{color:#f8fafc;letter-spacing:.12em;text-transform:uppercase;background:#0206172e;border:1px solid #e2e8f06b;border-radius:.15rem;justify-content:center;align-items:center;min-width:12rem;padding:.9rem 1.35rem;font-size:.78rem;font-weight:800;text-decoration:none;transition:background .16s,border-color .16s,transform .16s;display:inline-flex}.primary-button{color:#f8fafc;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;background:#67e8f929;border:1px solid #67e8f9b8;border-radius:.15rem;justify-content:center;align-items:center;width:100%;min-height:2.9rem;padding:.9rem 1.35rem;font-size:.78rem;font-weight:800;transition:background .16s,border-color .16s,transform .16s,opacity .16s;display:inline-flex}.primary-button:hover{background:#67e8f93d;border-color:#67e8f9e6;transform:translateY(-2px)}.primary-button:disabled{cursor:not-allowed;opacity:.65;transform:none}.button-link:hover,.secondary-link:hover{background:#67e8f938;border-color:#67e8f9e6;transform:translateY(-2px)}.form-card{background:#1e293bb8;border:1px solid #94a3b83d;border-radius:1.25rem;padding:1.25rem}.form-grid{gap:1rem;margin-bottom:1.25rem;display:grid}.form-grid label{color:#f8fafc;gap:.45rem;font-weight:800;display:grid}.form-grid input{color:#f8fafc;background:#0f172ae0;border:1px solid #94a3b852;border-radius:.85rem;width:100%;min-height:2.75rem;padding:.75rem .9rem}.form-grid input:focus{outline-offset:2px;outline:2px solid #38bdf88c}.form-message{border-radius:.9rem;margin:1rem 0 0;padding:.9rem 1rem}.success-message{color:#bbf7d0;background:#22c55e24}.form-helper{color:#cbd5e1;margin:1rem 0 0}.form-helper a{color:#38bdf8;font-weight:800}.oauth-button{color:#f8fafc;cursor:pointer;letter-spacing:.08em;background:#0206176b;border:1px solid #67e8f947;border-radius:.15rem;width:100%;min-height:2.9rem;padding:.9rem 1.35rem;font-family:Cinzel,Georgia,Times New Roman,serif;font-size:.78rem;font-weight:600}.oauth-button:hover{background:#67e8f91f;border-color:#67e8f9b8}.form-divider{color:#94a3b8;place-items:center;margin:1.25rem 0;font-weight:800;display:grid;position:relative}.form-divider:before{content:"";background:#94a3b83d;width:100%;height:1px;position:absolute}.form-divider span{background:#1e293bb8;padding:0 .75rem;position:relative}.section-header{justify-content:space-between;align-items:end;gap:1rem;margin-bottom:1.5rem;display:flex}.product-count{color:#94a3b8;margin:0;font-weight:700}.status-message{color:#cbd5e1;background:#94a3b81f;border-radius:1rem;margin:0;padding:1rem}.error-message{color:#fecaca;background:#f8717124}.product-grid{grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:1rem;display:grid}.product-card{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#02061757;border:1px solid #67e8f924;border-radius:.25rem;flex-direction:column;min-height:0;display:flex;overflow:hidden;box-shadow:0 12px 34px #0000002e}.product-image{aspect-ratio:1;background:radial-gradient(circle at 50% 35%,#67e8f91f,#0000 34%),#02061747;border-bottom:1px solid #67e8f91f;place-items:center;display:grid;overflow:hidden}.product-image img{object-fit:contain;width:100%;height:100%;padding:.75rem}.product-title-link,.product-title-link:hover,.product-title-link:focus{color:inherit;text-decoration:none}.product-title-link h2{color:#f8fafc;letter-spacing:.035em;margin:0 0 .25rem;font-family:Cinzel,Georgia,Times New Roman,serif;font-size:.95rem}.product-image span{color:#f8fafc38;letter-spacing:.08em;font-family:Cinzel,Georgia,Times New Roman,serif;font-size:3rem;font-weight:700}.product-card-copy{padding:1rem 1rem 0}.product-card-copy h2{letter-spacing:.035em;font-family:Cinzel,Georgia,Times New Roman,serif;font-size:1rem}.product-card-copy p{margin-bottom:0;font-size:.92rem}.product-meta{color:#f8fafc;justify-content:space-between;gap:1rem;margin:1rem 1rem 0;font-size:.9rem;font-weight:700;display:flex}.cart-layout{grid-template-columns:minmax(0,1fr) minmax(16rem,22rem);align-items:start;gap:1rem;display:grid}.cart-items{gap:1rem;display:grid}.cart-item,.cart-summary{background:#1e293bb8;border:1px solid #94a3b83d;border-radius:1.25rem;padding:1.25rem}.cart-item-meta{color:#f8fafc;flex-wrap:wrap;gap:.75rem;margin-top:1rem;font-weight:800;display:flex}.cart-total{color:#f8fafc;margin-bottom:1.25rem;font-size:2rem;font-weight:900}.cart-item-header{justify-content:space-between;align-items:start;gap:1rem;display:flex}.cart-item-controls{justify-content:space-between;align-items:center;gap:1rem;margin-top:1rem;display:flex}.cart-item{grid-template-columns:5.5rem minmax(0,1fr);align-items:center;gap:1rem;padding:.85rem;display:grid}.cart-item-image{background:#02061757;border:1px solid #67e8f91f;border-radius:.2rem;place-items:center;width:5.5rem;height:5.5rem;text-decoration:none;display:grid;overflow:hidden}.cart-item-image img{object-fit:contain;opacity:.82;filter:saturate(.85)brightness(.88);width:100%;height:100%;padding:.45rem}.cart-item-image span{color:#f8fafc38;font-family:Cinzel,Georgia,Times New Roman,serif;font-size:1.4rem;font-weight:700}.cart-item-body{min-width:0}.cart-item-header{align-items:center}.cart-item-title-link{color:inherit;text-decoration:none}.cart-item-title-link h2{letter-spacing:.035em;margin:0 0 .35rem;font-family:Cinzel,Georgia,Times New Roman,serif;font-size:.95rem}.cart-item-meta{gap:.45rem;margin-top:0;font-size:.78rem}.cart-item-meta span{background:#0206174d;border:1px solid #67e8f91a;border-radius:.15rem;padding:.28rem .45rem}.cart-item-controls{margin-top:.65rem}.cart-item .secondary-button,.cart-item .danger-button{letter-spacing:.05em;border-radius:.15rem;min-height:2rem;padding:.4rem .65rem;font-size:.76rem}.cart-page h1,.cart-page h2,.cart-item-title-link h2,.cart-summary h2{letter-spacing:.035em;font-family:Cinzel,Georgia,Times New Roman,serif;font-weight:600}.cart-page h1{font-size:clamp(2.25rem,4vw,4rem);line-height:.95}.cart-summary .eyebrow,.cart-total,.quantity-controls span,.cart-item-meta span,.product-count,.primary-button,.secondary-button,.danger-button,.button-link,.secondary-link,.logout-button{font-family:Cinzel,Georgia,Times New Roman,serif}.primary-button,.secondary-button,.danger-button,.button-link,.secondary-link{letter-spacing:.08em;font-weight:600}.quantity-controls span,.cart-item-meta span,.product-count{letter-spacing:.035em;font-size:.82rem;font-weight:600}.cart-total{letter-spacing:.02em;font-size:2.15rem;font-weight:700}.quantity-controls{gap:.5rem}.quantity-controls span{font-size:.82rem}.quantity-controls{align-items:center;gap:.75rem;display:inline-flex}.quantity-controls span,.cart-product-id{color:#f8fafc;font-weight:800}.cart-product-id{color:#94a3b8;margin:0}.secondary-button,.danger-button{cursor:pointer;border-radius:999px;justify-content:center;align-items:center;min-height:2.4rem;padding:.55rem .85rem;font-weight:800;display:inline-flex}.secondary-button{color:#f8fafc;background:0 0;border:1px solid #94a3b85c}.secondary-button:hover{color:#38bdf8;background:#38bdf824}.danger-button{color:#fecaca;background:#f871711f;border:1px solid #f871715c}.danger-button:hover{background:#f8717133}.secondary-button:disabled,.danger-button:disabled{cursor:not-allowed;opacity:.65}.cart-summary-actions{gap:.75rem;display:grid}.full-width-button{width:100%}.product-actions{gap:.65rem;margin-top:auto;padding:1rem;display:grid}.product-actions .primary-button,.product-actions .secondary-link{width:100%}.inline-message{border-radius:.85rem;margin:1rem 0 0;padding:.8rem .9rem;line-height:1.5}.checkout-panel{grid-template-columns:minmax(0,.9fr) minmax(18rem,26rem);align-items:start;gap:2rem;display:grid}.checkout-card{background:#1e293bb8;border:1px solid #94a3b83d;border-radius:1.25rem;padding:1.25rem}.checkout-layout{grid-template-columns:minmax(0,1fr) minmax(18rem,24rem);align-items:start;gap:2rem;display:grid}.checkout-points{flex-wrap:wrap;gap:.65rem;margin-top:1.25rem;display:flex}.checkout-points span{color:#e2e8f0e0;letter-spacing:.035em;background:#02061757;border:1px solid #67e8f924;border-radius:.15rem;padding:.45rem .65rem;font-family:Cinzel,Georgia,Times New Roman,serif;font-size:.78rem;font-weight:600}.checkout-page h1,.checkout-page h2,.checkout-card h2,.checkout-brief h2,.checkout-points span,.checkout-card .primary-button,.checkout-card .form-helper,.checkout-card .form-helper a{font-family:Cinzel,Georgia,Times New Roman,serif}.checkout-page p,.checkout-card p,.checkout-brief p{color:#e2e8f0d6;font-size:.98rem;line-height:1.7}.checkout-card .form-helper{letter-spacing:.025em;font-size:.86rem;font-weight:500}.checkout-card .form-helper a{color:#67e8f9;font-weight:600;text-decoration:none}.checkout-card .form-helper a:hover{text-underline-offset:.25rem;text-decoration:underline}.empty-state{gap:1rem;display:grid}.empty-state .button-link{width:fit-content}.orders-page{min-height:calc(100vh - 8rem)}.orders-page-shell{max-width:1180px;margin:0 auto}.orders-page-header{justify-content:space-between;align-items:end;gap:1rem;margin-bottom:1.5rem;display:flex}.orders-page-header h1{letter-spacing:-.035em;margin-bottom:.65rem;font-family:Cinzel,Georgia,Times New Roman,serif;font-size:clamp(2.25rem,4vw,4rem);font-weight:600;line-height:.95}.orders-page-header p{color:#e2e8f0d1;max-width:40rem;margin-bottom:0;line-height:1.7}.orders-list{gap:.85rem;display:grid}.order-card{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0206174d;border:1px solid #67e8f924;border-radius:.25rem;justify-content:space-between;align-items:center;gap:1.25rem;padding:1rem 1.15rem;display:flex;box-shadow:0 12px 34px #00000029}.order-label{color:#67e8f9;letter-spacing:.12em;text-transform:uppercase;margin-bottom:.35rem;font-family:Cinzel,Georgia,Times New Roman,serif;font-size:.78rem;font-weight:600}.order-card h2{letter-spacing:.02em;margin-bottom:.35rem;font-family:Cinzel,Georgia,Times New Roman,serif;font-size:1.65rem;font-weight:600}.order-date{color:#e2e8f0c7;margin-bottom:0;font-size:.92rem}.order-meta{flex-wrap:wrap;justify-content:end;gap:.75rem;display:flex}.order-meta span{letter-spacing:.04em;background:#02061757;border:1px solid #67e8f929;border-radius:.15rem;padding:.35rem .6rem;font-family:Cinzel,Georgia,Times New Roman,serif;font-size:.78rem;font-weight:600}.status-pill{color:#67e8f9;text-transform:capitalize}.product-detail-layout{grid-template-columns:minmax(18rem,.9fr) minmax(0,.75fr);align-items:center;gap:2rem;display:grid}.product-detail-visual{aspect-ratio:1;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#02061747;border:1px solid #67e8f924;border-radius:.25rem;place-items:center;display:grid;overflow:hidden;box-shadow:0 12px 34px #0000002e}.product-detail-visual img{object-fit:contain;width:100%;height:100%;padding:1rem}.product-detail-visual span{color:#f8fafc38;letter-spacing:.08em;font-family:Cinzel,Georgia,Times New Roman,serif;font-size:4rem;font-weight:700}.product-detail-copy p{color:#cbd5e1;line-height:1.7}.product-detail-meta{color:#f8fafc;flex-wrap:wrap;gap:.75rem;margin:1.5rem 0;font-weight:900;display:flex}.product-detail-meta span{background:#0206175c;border:1px solid #67e8f91f;border-radius:.15rem;padding:.4rem .65rem}.product-detail-actions{flex-wrap:wrap;gap:.75rem;display:flex}.checkout-success-panel{gap:1rem;display:grid}.form-card,.product-card,.cart-item,.cart-summary,.checkout-card,.order-card{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0206176b;border:1px solid #67e8f91f;border-radius:.25rem;box-shadow:0 12px 34px #0000002e}@media (width<=860px){.form-panel,.cart-layout,.checkout-panel,.product-detail-layout{grid-template-columns:1fr}}@media (width<=760px){.app-shell{padding:1rem}.site-header,.section-header,.product-meta{flex-direction:column;align-items:start}.auth-status{width:100%}.hero,.panel,.products-section{padding:1.25rem}.auth-actions{flex-direction:column;justify-self:end;align-items:start}.cart-item-header,.cart-item-controls,.order-card{flex-direction:column;align-items:start}.order-meta{justify-content:start}}
