:root{--bg-color:#0d0f12;--surface-color:rgba(25,28,36,0.4);--surface-border:rgba(255,255,255,0.08);--text-primary:#e2e8f0;--text-secondary:#94a3b8;--accent:#d845ff;--accent-hover:#e880ff;--accent-glow:rgba(216,69,255,0.4);--font-heading:"Outfit",sans-serif;--font-body:"Inter",sans-serif;--transition:all 0.3s cubic-bezier(0.25,0.8,0.25,1)}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-color);color:var(--text-primary);font-family:var(--font-body);min-height:100vh;overflow-x:hidden;line-height:1.6}.app-container{position:relative;min-height:100vh}.bg-glow{position:absolute;width:600px;height:600px;border-radius:50%;filter:blur(120px);z-index:-1;opacity:.15;pointer-events:none;animation:drift 20s linear infinite alternate}.bg-glow-1{background:radial-gradient(circle,var(--accent) 0,transparent 70%);top:-200px;left:-200px}.bg-glow-2{background:radial-gradient(circle,#455dff 0,transparent 70%);bottom:-200px;right:-200px;animation-delay:-5s}@keyframes drift{0%{transform:translate(0) scale(1)}to{transform:translate(50px,50px) scale(1.1)}}.glass{background:var(--surface-color);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--surface-border);border-radius:16px;box-shadow:0 8px 32px rgba(0,0,0,.4)}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:600}.brand-title{font-size:3rem;font-weight:800;letter-spacing:4px;background:linear-gradient(135deg,#fff,var(--text-secondary));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;margin-bottom:.5rem;text-align:center}.subtitle{text-align:center;color:var(--text-secondary);margin-bottom:2rem}.btn,.subtitle{font-size:.9rem;letter-spacing:1px;text-transform:uppercase}.btn{font-family:var(--font-heading);font-weight:600;padding:.8rem 1.5rem;border-radius:8px;border:none;cursor:pointer;transition:var(--transition);display:inline-flex;align-items:center;justify-content:center}.btn-primary{background:linear-gradient(135deg,var(--accent),#9b20b8);color:#fff;box-shadow:0 4px 15px var(--accent-glow)}.btn-primary:hover{box-shadow:0 6px 20px var(--accent-glow);transform:translateY(-2px);filter:brightness(1.2)}.btn-secondary{background:transparent;color:var(--text-primary);border:1px solid var(--surface-border)}.btn-secondary:hover{background:rgba(255,255,255,.05);border-color:var(--text-secondary)}.btn-ghost{background:transparent;color:var(--text-secondary);font-size:.8rem}.btn-ghost:hover{color:var(--accent)}.w-full{width:100%}.form-group{margin-bottom:1.5rem}.form-group label{display:block;font-size:.85rem;color:var(--text-secondary);margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.5px}.input-field{width:100%;background:rgba(0,0,0,.2);border:1px solid var(--surface-border);color:var(--text-primary);padding:.8rem 1rem;border-radius:8px;font-family:var(--font-body);font-size:1rem;transition:var(--transition)}.input-field:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px rgba(216,69,255,.2)}.main-content{width:100%;max-width:1200px;margin:0 auto;position:relative;z-index:1}.login-card{max-width:400px;margin:10vh auto;padding:3rem 2rem}.mt-4{margin-top:1rem}.text-center{text-align:center}.hint-text{font-size:.8rem;color:var(--text-secondary)}.category-view{display:flex;flex-direction:column;gap:1.5rem;height:90vh}.category-container{flex-grow:1;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:2rem}.category-prompt{font-size:1.8rem;margin-bottom:3rem;color:#fff;text-shadow:0 0 10px rgba(255,255,255,.2)}.category-grid{display:flex;gap:3rem;justify-content:center;flex-wrap:wrap}.category-card{width:280px;padding:2rem;border-radius:16px;cursor:pointer;transition:var(--transition);text-align:center;display:flex;flex-direction:column;align-items:center;gap:1.5rem;background:rgba(0,0,0,.3)}.category-card:hover{transform:translateY(-10px);border-color:var(--accent);box-shadow:0 15px 40px rgba(216,69,255,.2);background:rgba(216,69,255,.05)}.category-card .img-wrapper{width:100%;height:300px;border-radius:8px;overflow:hidden;position:relative;border:1px solid rgba(255,255,255,.1)}.category-card img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.25,.8,.25,1)}.category-card:hover img{transform:scale(1.08)}.category-card h4{font-size:1.5rem;color:var(--text-primary);letter-spacing:1px}.measurement-view{display:flex;flex-direction:column;gap:1.5rem;height:90vh}.view-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 2rem}.user-badge{background:rgba(255,255,255,.1);padding:.3rem .8rem;border-radius:20px;font-size:.8rem;font-family:var(--font-heading);letter-spacing:1px}.content-split{display:grid;grid-template-columns:2fr 1fr;grid-gap:1.5rem;gap:1.5rem;height:100%}.scrollable{overflow-y:auto;padding:2rem}.stepper{display:flex;gap:1rem;margin-bottom:2rem;border-bottom:1px solid var(--surface-border);padding-bottom:1rem}.step{padding:.5rem 1rem;color:var(--text-secondary);font-size:.9rem;font-weight:600;cursor:pointer;transition:var(--transition);position:relative}.step.active{color:var(--accent)}.step.active:after{content:"";position:absolute;bottom:-1rem;left:0;width:100%;height:2px;background:var(--accent);box-shadow:0 0 10px var(--accent-glow)}.step.completed{color:var(--text-primary)}.section-title{font-size:1.5rem;margin-bottom:1.5rem;color:#fff}.measurement-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));grid-gap:1.5rem;gap:1.5rem}.measure-item{background:rgba(0,0,0,.15);padding:1rem;border-radius:8px;border:1px solid rgba(255,255,255,.05)}.measure-label-area{justify-content:space-between;margin-bottom:.5rem}.btn-icon,.measure-label-area{display:flex;align-items:center}.btn-icon{width:24px;height:24px;border-radius:50%;border:1px solid var(--text-secondary);background:transparent;color:var(--text-secondary);cursor:pointer;justify-content:center;font-size:.8rem;transition:var(--transition)}.btn-icon:hover{color:var(--accent);border-color:var(--accent);box-shadow:0 0 8px var(--accent-glow)}.options-group{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:1rem;gap:1rem}.radio-card{border:1px solid var(--surface-border);padding:1.5rem 1rem;border-radius:8px;cursor:pointer;transition:var(--transition);background:rgba(0,0,0,.2);text-align:center}.radio-card h4{margin-bottom:.5rem;font-size:1rem}.radio-card h4 span{color:var(--accent);font-size:.8rem;display:block;margin-top:.2rem}.radio-card p{font-size:.8rem;color:var(--text-secondary)}.radio-card:hover{border-color:rgba(255,255,255,.2);transform:translateY(-2px)}.radio-card.active{border-color:var(--accent);background:rgba(216,69,255,.05);box-shadow:0 0 15px rgba(216,69,255,.1)}.summary-area{display:flex;flex-direction:column;gap:1.5rem}.guide-box{padding:1.5rem}.guide-title{display:flex;align-items:center;gap:.5rem;font-size:1.2rem;margin-bottom:.5rem}.accent-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 8px var(--accent)}.guide-desc{font-size:.9rem;color:var(--text-secondary);margin-bottom:1rem}.price-card{padding:1.5rem;flex-grow:1}.price-card h3{margin-bottom:1rem;border-bottom:1px solid var(--surface-border);padding-bottom:.5rem}.summary-list{list-style:none;margin-bottom:2rem}.summary-list li{padding:.5rem 0;font-size:.9rem;color:var(--text-secondary);border-bottom:1px dashed rgba(255,255,255,.1)}.summary-list li,.summary-total{display:flex;justify-content:space-between}.summary-total{align-items:center;font-size:1.2rem;font-weight:600}.total-price{font-size:1.8rem;color:var(--accent);font-family:var(--font-heading)}.fade-enter-active,.fade-leave-active{transition:opacity .4s ease,transform .4s ease}.fade-enter-from,.fade-leave-to{opacity:0;transform:translateY(10px)}[v-cloak]{display:none}#threejs-canvas-container{width:100%;height:350px;background:radial-gradient(circle at center,rgba(216,69,255,.1) 0,rgba(0,0,0,.4) 80%);border-radius:8px;position:relative;display:flex;justify-content:center;align-items:center;overflow:hidden;border:1px solid var(--surface-border);box-shadow:inset 0 0 20px rgba(0,0,0,.5)}#threejs-canvas-container canvas{display:block;width:100%!important;height:100%!important;outline:none}.toast{position:fixed;top:20px;left:50%;transform:translateX(-50%) translateY(-100px);background:#1e2128;color:#fff;padding:1rem 2rem;border-radius:8px;border:1px solid var(--accent);box-shadow:0 4px 20px rgba(0,0,0,.5),0 0 15px rgba(216,69,255,.2);z-index:1000;transition:all .4s cubic-bezier(.175,.885,.32,1.275);font-weight:600;opacity:0}.toast.toast-visible{transform:translateX(-50%) translateY(0);opacity:1}.admin-view{padding:2rem;min-height:80vh}.admin-table{width:100%;border-collapse:collapse;background:rgba(0,0,0,.2);border-radius:8px;overflow:hidden}.admin-table td,.admin-table th{padding:1rem;text-align:left;border-bottom:1px solid var(--surface-border)}.admin-table th{background:rgba(255,255,255,.05);color:var(--text-secondary);font-weight:600;text-transform:uppercase;font-size:.85rem}.admin-table tbody tr:hover{background:rgba(255,255,255,.02)}.status-badge{background:rgba(0,255,128,.1);color:#00ff80;padding:.2rem .6rem;border-radius:12px;font-size:.8rem;border:1px solid rgba(0,255,128,.2)}.accent-text{color:var(--accent);font-weight:600}