@import url(https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap);body{background:linear-gradient(135deg,#667eea,#764ba2);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0;min-height:100vh}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f8f9fa;color:#333;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}.App{display:flex;flex-direction:column;min-height:100vh;text-align:center}.App-header{background-color:#fff;box-shadow:0 2px 10px #0000000d;color:#333;padding:1rem 2rem;position:-webkit-sticky;position:sticky;top:0;z-index:1000}.App-header .header-content{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1200px}.App-header .header-brand{color:inherit;text-decoration:none;transition:opacity .2s}.App-header .header-brand:hover{opacity:.8}.App-header .header-text{text-align:left}.App-header .header-text h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#1a1a1a,#4a4a4a);-webkit-background-clip:text;font-size:1.5rem;font-weight:700;letter-spacing:-.5px;margin:0}.App-header .header-text p{color:#666;display:none;font-size:.8rem;margin:0}@media(min-width:768px){.App-header .header-text p{display:block}}.App-header .header-actions{align-items:center;display:flex;gap:1rem}.App-header .user-info{align-items:center;display:flex;font-size:.9rem;gap:.75rem}.App-header .user-info .user-name{color:#666}.App-header .btn-login,.App-header .btn-logout{background:#0000;border:1px solid #4a90e2;border-radius:6px;color:#4a90e2;cursor:pointer;display:inline-block;font-size:.9rem;padding:.5rem 1rem;text-decoration:none;transition:all .2s ease}.App-header .btn-login:hover,.App-header .btn-logout:hover{background:#4a90e2;color:#fff}.App-header .btn-logout{border-color:#999;color:#666}.App-header .btn-logout:hover{background:#999;color:#fff}.App-header .language-switcher{display:flex;gap:.5rem}.App-header .language-switcher .lang-btn{background:#0000;border:1px solid #e0e0e0;border-radius:20px;color:#333;cursor:pointer;font-size:.8rem;padding:.4rem .8rem;transition:all .2s ease}.App-header .language-switcher .lang-btn:hover{background:#f0f0f0;border-color:#ccc}.App-header .language-switcher .lang-btn.active{background:#333;border-color:#333;color:#fff}.App-main{display:flex;flex:1 1;flex-direction:column;margin:0 auto;width:100%}.App-footer{background-color:#1a1a1a;color:#fff;margin-top:auto;padding:2rem}.App-footer p{font-size:.9rem;opacity:.6}::-webkit-scrollbar{height:8px;width:8px}::-webkit-scrollbar-track{background:#f1f1f1}::-webkit-scrollbar-thumb{background:#ccc;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#999}.product-page{background-color:#fff;color:#121212;display:flex;flex-wrap:wrap;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;min-height:100vh}.product-gallery{align-items:center;background-color:#f6f6f6;display:flex;flex:1 1;height:100vh;justify-content:center;min-width:300px;overflow:hidden;position:-webkit-sticky;position:sticky;top:0}@media(max-width:900px){.product-gallery{flex:0 0 100%;height:500px;position:relative}}.gallery-container{height:100%;position:relative;width:100%}.gallery-container .cup-3d-ref{height:100%}.badge-container{display:flex;flex-direction:column;gap:8px;left:20px;position:absolute;top:20px;z-index:10}.badge{border-radius:4px;font-size:12px;font-weight:600;letter-spacing:.5px;padding:6px 12px;text-transform:uppercase}.badge.best-seller{background-color:#121212;color:#fff}.badge.material{background-color:#fff;border:1px solid #e0e0e0;color:#121212}.material-highlights-visual{bottom:30px;display:flex;gap:24px;justify-content:center;left:0;pointer-events:none;position:absolute;width:100%}.highlight-item{align-items:center;background:#ffffffe6;border-radius:20px;box-shadow:0 4px 12px #0000000d;display:flex;font-size:13px;font-weight:500;gap:8px;padding:8px 16px}.product-info{display:flex;flex:1 1;flex-direction:column;gap:40px;height:100vh;max-width:700px;overflow-y:auto;padding:60px 80px}@media(max-width:900px){.product-info{flex:0 0 100%;height:auto;padding:30px 20px}}.product-info-detail{max-width:880px;min-width:880px}.product-header{border-bottom:1px solid #e0e0e0;padding-bottom:24px}.product-title{font-size:32px;font-weight:700;line-height:1.2;margin:0 0 12px}.product-price{align-items:baseline;color:#121212;display:flex;font-size:24px;gap:4px;margin-bottom:16px}.product-price .unit{color:#666;font-size:14px;font-weight:400}.product-description{color:#555;font-size:15px;line-height:1.6;margin:0}.product-options{gap:32px}.option-group,.product-options{display:flex;flex-direction:column}.option-group{gap:12px}.option-label{color:#666;font-size:13px;font-weight:600;letter-spacing:1px;text-transform:uppercase}.lid-selector{display:flex;flex-wrap:wrap;gap:12px}.lid-option{background:#fff;border:2px solid #e0e0e0;border-radius:8px;cursor:pointer;flex:1 1;min-width:120px;padding:16px;text-align:center;transition:all .3s ease}.lid-option:hover{border-color:#764ba2;box-shadow:0 4px 12px #764ba233;transform:translateY(-2px)}.lid-option.selected{background:linear-gradient(135deg,#f5f3ff,#ede9fe);border-color:#764ba2;box-shadow:0 4px 16px #764ba24d}.lid-option-preview{align-items:center;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:6px;display:flex;height:80px;justify-content:center;margin-bottom:12px;width:100%}.lid-option-preview img{max-height:100%;max-width:100%;object-fit:contain}.lid-preview-none{color:#999;font-size:32px;font-weight:300}.lid-option-label{color:#333;font-size:14px;font-weight:500}.printing-selector{display:flex;flex-wrap:wrap;gap:12px}.printing-option{background:#fff;border:2px solid #e0e0e0;border-radius:8px;cursor:pointer;flex:1 1;min-width:150px;padding:16px;text-align:center;transition:all .3s ease}.printing-option:hover{border-color:#764ba2;box-shadow:0 4px 12px #764ba233;transform:translateY(-2px)}.printing-option.selected{background:linear-gradient(135deg,#f5f3ff,#ede9fe);border-color:#764ba2;box-shadow:0 4px 16px #764ba24d}.printing-option-label{color:#333;font-size:16px;font-weight:600;margin-bottom:8px}.printing-option-desc{color:#666;font-size:12px;line-height:1.4;margin-bottom:8px}.printing-option-price{color:#764ba2;font-size:14px;font-weight:600;margin-top:8px}.quantity-warning{background:#fff5f5;border:1px solid #fcc;border-radius:4px;color:#ff6b6b;font-size:12px;margin-top:8px;padding:8px}.design-panel-wrapper{background:#fff;border:1px solid #e0e0e0;border-radius:8px;height:500px;overflow:hidden}.design-panel-wrapper .cup-design-panel{min-height:auto}.design-panel-wrapper .design-toolbar{background:#fff;border-right:1px solid #eee}.purchase-actions{margin-top:16px}.quantity-selector-wrapper{align-items:center;display:flex;gap:12px}.quantity-selector{align-items:center;border:1px solid #e0e0e0;border-radius:4px;display:flex;flex-shrink:0;gap:0;overflow:hidden}.quantity-btn{align-items:center;background:#fff;border:none;color:#333;cursor:pointer;display:flex;font-size:1.2rem;height:48px;justify-content:center;transition:background .2s ease;width:40px}.quantity-btn,.quantity-btn:first-child{border-right:1px solid #e0e0e0}.quantity-btn:last-child{border-left:1px solid #e0e0e0;border-right:none}.quantity-btn:hover:not(:disabled){background:#f0f0f0}.quantity-btn:active:not(:disabled){background:#e0e0e0}.quantity-btn:disabled{cursor:not-allowed;opacity:.5}.quantity-input{-moz-appearance:textfield;border:1px solid #e0e0e0;border-bottom:none;border-top:none;font-size:1rem;height:48px;text-align:center;width:60px}.quantity-input::-webkit-inner-spin-button,.quantity-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.btn-add-to-cart{background-color:#121212;border:none;border-radius:4px;color:#fff;cursor:pointer;flex:1 1;font-size:16px;font-weight:600;padding:18px;transition:background-color .2s}.btn-add-to-cart:hover:not(:disabled){background-color:#333}.btn-add-to-cart:disabled{cursor:not-allowed;opacity:.6}.shipping-info{color:#666;font-size:13px;margin-top:12px;text-align:center}.material-details{background:#f9f9f9;border-radius:8px;margin-top:20px;padding:24px}.material-details h3{font-size:16px;margin:0 0 12px}.material-details ul{margin:0;padding-left:20px}.material-details ul li{color:#555;font-size:14px;line-height:1.5;margin-bottom:8px}.cup-3d-container{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);border-radius:12px;height:100%;margin-top:30px;min-height:400px;overflow:hidden;position:relative;width:100%}.cup-3d-container canvas,.cup-3d-container>*{outline:none}.cup-info-label{background:#fffffff2;border:1px solid #0000000d;border-radius:12px;bottom:120px;box-shadow:0 4px 12px #00000014;left:50%;padding:1rem 1.5rem;position:absolute;text-align:center;transform:translateX(-50%);z-index:10}.cup-name{color:#333;font-size:1.3rem;font-weight:700;margin-bottom:.4rem}.cup-dimensions{align-items:center;display:flex;flex-direction:column;flex-wrap:nowrap;justify-content:center}.cup-dimensions .dimension-label-radius{border:none}.cup-dimensions .dimension-label{color:#666;flex-shrink:0;font-family:monospace;font-size:.9rem;white-space:nowrap}.logo-print-limit-overlay{bottom:0;left:0;pointer-events:none;position:absolute;right:0;top:0;z-index:20}.logo-print-limit-box,.logo-print-limit-overlay{align-items:center;display:flex;justify-content:center}.logo-print-limit-box{animation:pulse 2s ease-in-out infinite;aspect-ratio:4/5;background:#ff6b6b0d;border:3px dashed #ff6b6b;border-radius:8px;box-shadow:0 0 0 2px #fffc,0 4px 12px #ff6b6b4d;position:relative;width:min(40%,200px)}@keyframes pulse{0%,to{opacity:.7}50%{opacity:1}}.logo-print-limit-label{background:#fffffff2;border:1px solid #ff6b6b4d;border-radius:6px;box-shadow:0 2px 8px #0000001a;color:#ff6b6b;font-size:12px;font-weight:600;left:50%;padding:4px 12px;position:absolute;top:-32px;transform:translateX(-50%);white-space:nowrap}@media(max-width:768px){.cup-3d-container{min-height:500px}.cup-info-label{font-size:.9rem;padding:.8rem 1.2rem}.logo-print-limit-box{width:min(50%,180px)}.logo-print-limit-label{font-size:11px;padding:3px 10px;top:-28px}}.cup-selector{width:100%}.selected-cup-display{background:linear-gradient(135deg,#f5f3ff,#ede9fe);border:2px solid #764ba2;border-radius:12px;display:flex;flex-direction:row;gap:1rem;justify-content:space-around;padding:1.2rem}.selected-cup-info{display:flex;flex-direction:column;gap:.5rem}.selected-cup-info h3{color:#764ba2;font-size:1.15rem;font-weight:700;margin:0}.selected-cup-info .cup-specs{color:#666;font-size:.9rem;margin:0}.selected-cup-info .cup-capacity{background:#764ba2;border-radius:12px;color:#fff;display:inline-block;font-size:.9rem;font-weight:600;padding:.3rem .8rem;width:-webkit-fit-content;width:fit-content}.btn-change-cup{align-self:center;background:#fff;border:2px solid #764ba2;border-radius:8px;color:#764ba2;cursor:pointer;font-size:.9rem;font-weight:500;padding:.6rem 1.2rem;transition:all .2s ease}.btn-change-cup:hover{background:#764ba2;box-shadow:0 4px 12px #764ba24d;color:#fff;transform:translateY(-2px)}.cup-options-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(2,1fr)}.cup-option-card{background:#fff;border:3px solid #e0e0e0;border-radius:12px;cursor:pointer;overflow:hidden;padding:1rem;position:relative;transition:all .3s ease}.cup-option-card:hover{border-color:#764ba2;box-shadow:0 8px 20px #764ba233;transform:translateY(-4px)}.cup-option-card.selected{background:linear-gradient(135deg,#f5f3ff,#ede9fe);border-color:#764ba2;box-shadow:0 8px 24px #764ba24d}.cup-option-image{align-items:center;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:8px;display:flex;height:120px;justify-content:center;margin-bottom:.75rem;padding:.5rem;width:100%}.cup-option-image img{max-height:100%;max-width:100%;object-fit:contain}.cup-option-info{text-align:center}.cup-option-info h3{color:#333;font-size:1.05rem;font-weight:600;margin:0 0 .25rem}.cup-specs{color:#666;font-size:.8rem;margin:0 0 .5rem}.cup-capacity{background:#764ba2;border-radius:12px;color:#fff;display:inline-block;font-size:.85rem;font-weight:600;padding:.25rem .75rem}.cup-option-card.selected .cup-capacity{background:#667eea}.selected-indicator{align-items:center;animation:popIn .3s ease;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;box-shadow:0 4px 12px #764ba266;color:#fff;display:flex;font-size:1.2rem;font-weight:700;height:32px;justify-content:center;position:absolute;right:.5rem;top:.5rem;width:32px}@keyframes popIn{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}@media(max-width:768px){.cup-options-grid{grid-template-columns:1fr}.cup-option-image{height:100px}}.cup-thumbnail{height:100%;justify-content:center;padding:.5rem;width:100%}.cup-thumbnail,.mini-cup{align-items:center;display:flex}.mini-cup{filter:drop-shadow(0 4px 12px rgba(0,0,0,.25));flex-direction:column;position:relative}.mini-top{background:linear-gradient(180deg,#fffffff2,#f0f0f0d9,#e1e1e1bf);border:2px solid #bebebeb3;border-bottom:none;border-radius:50%;box-shadow:inset 0 2px 4px #fff,inset 0 -1px 3px #00000026;margin-bottom:-2px;overflow:hidden;z-index:3}.mini-body{background:linear-gradient(135deg,#f5fcffb3,#eef8ffbf 25%,#ebf5ffa6 50%,#e8f4ffb3 75%,#e6f3ffbf);box-shadow:inset 15px 0 20px #ffffff80,inset -12px 0 20px #78a0c833;margin-bottom:-1px;margin-top:-1px;position:relative;z-index:2}.mini-shine{background:linear-gradient(90deg,#ffffffb3 0,#fff6 40%,#0000);height:100%;left:0;position:absolute;top:0;width:45%;z-index:2}.mini-bottom{background:linear-gradient(180deg,#b4b9c3b3,#c8cdd7cc,#dce1ebb3);border:2px solid #aaafb999;border-radius:50%;border-top:none;bottom:7px;box-shadow:inset 0 -2px 4px #0000004d,inset 0 1px 3px #ffffff80;margin-top:-1px;overflow:hidden;position:absolute;z-index:1}.cup-design-panel{display:flex;flex-direction:column;gap:0;height:100%;min-height:500px;position:relative;width:100%}.back-button-container{background:#fff;border-bottom:1px solid #e0e0e0;flex-shrink:0;padding:1rem}.back-button{align-items:center;background:#764ba2;border:none;border-radius:4px;color:#fff;cursor:pointer;display:inline-flex;font-size:.9rem;font-weight:500;gap:.5rem;padding:.5rem 1rem;transition:all .2s ease}.back-button:hover{background:#667eea;transform:translateX(-2px)}.back-button:active{transform:translateX(0)}.cup-design-panel-content{display:flex;flex:1 1 auto;gap:1rem;overflow:hidden}.design-toolbar{background:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;gap:.5rem;padding:.5rem;width:60px}.design-toolbar,.tool-item{display:flex;flex-direction:column}.tool-item{align-items:center;background:#fff;border:2px solid #0000;border-radius:6px;cursor:pointer;justify-content:center;min-height:60px;padding:.75rem .5rem;transition:all .2s ease}.tool-item:hover{background:#f0f0f0;border-color:#764ba2}.tool-item.active{background:linear-gradient(135deg,#f5f3ff,#ede9fe);border-color:#764ba2;box-shadow:0 2px 8px #764ba233}.tool-icon{font-size:1.5rem;margin-bottom:.25rem}.tool-name{color:#666;font-size:.7rem;font-weight:500;text-align:center}.tool-item.active .tool-name{color:#764ba2;font-weight:600}.tool-item.disabled{cursor:not-allowed;opacity:.4;pointer-events:none}.tool-item.disabled:hover{background:#fff;border-color:#0000}.design-canvas-container{align-items:center;background:#fff;border:1px solid #e0e0e0;border-radius:8px;display:flex;flex:1 1;flex-direction:column;justify-content:center;overflow:auto;padding:1rem}.canvas-header{align-items:center;border-bottom:2px solid #e0e0e0;display:flex;justify-content:space-between;margin-bottom:1rem;padding-bottom:.5rem}.canvas-header h3{color:#333;font-size:1rem;font-weight:600;margin:0}.canvas-info{color:#666;font-family:monospace;font-size:.85rem}.design-canvas{background:#fff;border:2px solid #764ba2;border-radius:4px;box-shadow:0 4px 12px #0000001a;margin:0 auto;overflow:hidden;position:relative}.canvas-grid{background-image:linear-gradient(90deg,#0000000d 1px,#0000 0),linear-gradient(180deg,#0000000d 1px,#0000 0);background-size:20px 20px;height:100%;left:0;pointer-events:none;position:absolute;top:0;width:100%}.logo-layer{align-items:center;display:flex;justify-content:center;pointer-events:auto;position:absolute;-webkit-user-select:none;user-select:none}.logo-layer,.logo-layer.dragging{transition:none}.logo-layer img{border:2px dashed #0000;box-shadow:0 2px 8px #0003}.logo-layer:hover img{border-color:#764ba2}.rotate-handle{background:#764ba2;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 6px #0000004d;cursor:crosshair;height:14px;pointer-events:auto;position:absolute;transition:all .2s ease;visibility:hidden;width:14px;z-index:10}.rotate-handle:hover{background:#667eea;box-shadow:0 3px 8px #764ba280;transform:translateX(-50%) scale(1.3)}.rotate-handle:before{background:#764ba2;content:"";height:15px;left:50%;pointer-events:none;position:absolute;top:-15px;transform:translateX(-50%);width:2px}.resize-handle{background:#764ba2;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 6px #0000004d;cursor:nwse-resize;height:16px;pointer-events:auto;position:absolute;transition:all .2s ease;visibility:visible;width:16px;z-index:10}.resize-handle:hover{background:#667eea;box-shadow:0 3px 8px #764ba280;transform:scale(1.3)}.logo-layer:hover .resize-handle{visibility:visible}.btn-remove-logo{align-items:center;background:#f00c;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:1.2rem;height:24px;justify-content:center;line-height:1;position:absolute;right:.5rem;top:.5rem;transition:all .2s ease;width:24px}.btn-remove-logo:hover{background:red;transform:scale(1.1)}.canvas-placeholder{color:#999;font-size:.9rem;left:50%;pointer-events:none;position:absolute;text-align:center;top:50%;transform:translate(-50%,-50%)}.canvas-placeholder p{background:#fffc;border:2px dashed #ccc;border-radius:8px;margin:0;padding:1rem}.canvas-dimensions{align-items:center;display:flex;flex-wrap:nowrap;gap:1rem;justify-content:center;margin-top:1rem;padding:.5rem;width:100%}.dimension-label{background:#ffffffe6;border:1px solid #e0e0e0;border-radius:4px;color:#666;flex-shrink:0;font-family:monospace;font-size:.8rem;padding:.25rem .5rem;white-space:nowrap}.text-layer{align-items:center;display:inline-flex;justify-content:center;min-height:30px;min-width:50px;pointer-events:auto;position:absolute;-webkit-user-select:none;user-select:none;z-index:20}.text-layer.editing{z-index:30}.text-content{background:#ffffffe6;border:2px dashed #0000;border-radius:4px;box-shadow:0 2px 8px #0003;padding:4px 8px;white-space:nowrap}.text-layer:hover .text-content{border-color:#764ba2}.text-input{background:#fffffff2;border:2px solid #764ba2;border-radius:4px;box-shadow:0 2px 8px #764ba24d;color:inherit;font-family:inherit;font-size:inherit;min-width:100px;outline:none;padding:4px 8px}.btn-remove-text{align-items:center;background:#f00c;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:1rem;height:20px;justify-content:center;line-height:1;position:absolute;right:-8px;top:-8px;transition:all .2s ease;width:20px;z-index:10}.btn-remove-text:hover{background:red;transform:scale(1.1)}@media(max-width:768px){.cup-design-panel{flex-direction:column}.design-toolbar{flex-direction:row;overflow-x:auto;width:100%}.tool-item{min-width:60px}}.landing-page{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;overflow-x:hidden;width:100%}.hero-section{align-items:center;background:linear-gradient(135deg,#fff,#f3f4f6);display:flex;height:80vh;justify-content:space-between;min-height:600px;padding:0 10%}.hero-section .hero-content{flex:1 1;max-width:600px}.hero-section .hero-content h1{color:#1a1a1a;font-size:3.5rem;font-weight:800;line-height:1.2;margin-bottom:1.5rem}.hero-section .hero-content .hero-subtitle{color:#666;font-size:1.2rem;margin-bottom:2.5rem}.hero-section .hero-content .cta-button{background:#1a1a1a;border:none;border-radius:50px;box-shadow:0 10px 20px #0000001a;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;padding:1rem 2.5rem;transition:all .3s ease}.hero-section .hero-content .cta-button:hover{background:#764ba2;box-shadow:0 15px 30px #764ba233;transform:translateY(-2px)}.hero-section .hero-visual{display:flex;flex:1 1;justify-content:center}.hero-section .hero-visual .floating-cup{animation:float 6s ease-in-out infinite;filter:drop-shadow(0 20px 30px rgba(0,0,0,.15));font-size:15rem}@keyframes float{0%{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-20px) rotate(5deg)}to{transform:translateY(0) rotate(0deg)}}.material-section{background:#fff;padding:5rem 10%;text-align:center}.material-section .section-header{margin-bottom:4rem}.material-section .section-header h2{color:#1a1a1a;font-size:2.5rem;margin-bottom:1rem}.material-section .section-header p{color:#666;font-size:1.1rem;margin:0 auto;max-width:600px}.material-section .benefits-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.material-section .benefits-grid .benefit-card{background:#f8f9fa;border-radius:16px;padding:2rem;transition:transform .3s ease}.material-section .benefits-grid .benefit-card:hover{transform:translateY(-5px)}.material-section .benefits-grid .benefit-card .icon{font-size:3rem;margin-bottom:1rem}.material-section .benefits-grid .benefit-card h3{color:#1a1a1a;font-size:1.3rem;margin-bottom:.8rem}.material-section .benefits-grid .benefit-card p{color:#666;font-size:.95rem;line-height:1.6}.products-section{background:#f8f9fa;padding:6rem 10%}.products-section h2{color:#1a1a1a;font-size:2.8rem;font-weight:700;letter-spacing:-.5px;margin-bottom:4rem;text-align:center}.products-section .product-grid{grid-gap:3rem;display:grid;gap:3rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin:0 auto;max-width:1400px}.products-section .product-card{background:#fff;border:1px solid #0000000d;border-radius:24px;box-shadow:0 4px 20px #00000014;cursor:pointer;overflow:hidden;transition:all .4s cubic-bezier(.4,0,.2,1)}.products-section .product-card:hover{border-color:#764ba233;box-shadow:0 24px 48px #0000001f;transform:translateY(-12px)}.products-section .product-card:hover .select-btn{background:#764ba2;border-color:#764ba2;color:#fff;transform:scale(1.02)}.products-section .product-card:hover .product-emoji{transform:scale(1.1)}.products-section .product-card .product-image-area{align-items:center;background:linear-gradient(135deg,#f8f9fa,#e9ecef);display:flex;height:380px;justify-content:center;overflow:hidden;position:relative}.products-section .product-card .product-image-area .hover-overlay{align-items:center;display:flex;flex-direction:column;gap:1rem;height:100%;justify-content:center;left:0;position:absolute;top:0;transition:background .3s ease;width:100%}.products-section .product-card .product-image-area .hover-overlay .product-emoji{align-items:center;display:flex;height:220px;justify-content:center;transition:transform .3s ease;width:180px}.products-section .product-card .product-image-area .hover-overlay .product-emoji .cup-thumbnail{align-items:center;display:flex;height:100%;justify-content:center;width:100%}.products-section .product-card .product-image-area .hover-overlay .action-text{background:#fff;border-radius:30px;box-shadow:0 4px 12px #0000001a;color:#1a1a1a;font-weight:600;opacity:0;padding:.8rem 1.5rem;transform:translateY(20px);transition:all .3s ease}.products-section .product-card .product-image-area:hover .hover-overlay{background:#0000000d}.products-section .product-card .product-image-area:hover .hover-overlay .product-emoji{transform:scale(1.1) translateY(-10px)}.products-section .product-card .product-image-area:hover .hover-overlay .action-text{opacity:1;transform:translateY(0)}.products-section .product-card .product-info-selection{height:40vh}.products-section .product-card .product-info{padding:2rem;text-align:center}.products-section .product-card .product-info h3{color:#1a1a1a;font-size:1.3rem;font-weight:600;margin-bottom:.8rem}.products-section .product-card .product-info .price{color:#764ba2;font-size:1.3rem;font-weight:700;letter-spacing:.5px;margin-bottom:1.5rem}.products-section .product-card .product-info .select-btn{background:#0000;border:2px solid #e0e0e0;border-radius:12px;color:#1a1a1a;cursor:pointer;font-size:1rem;font-weight:600;padding:1rem;transition:all .3s ease;width:100%}.products-section .product-card .product-info .select-btn:hover{border-color:#764ba2}.trust-section{background:#1a1a1a;color:#fff;padding:4rem 10%;text-align:center}.trust-section h2{font-size:2rem;margin-bottom:1rem}.trust-section p{opacity:.7}@media(max-width:768px){.hero-section{flex-direction:column-reverse;height:auto;padding:4rem 5%;text-align:center}.hero-section .hero-content h1{font-size:2.5rem}.material-section,.products-section{padding:3rem 5%}}.cart-icon-button{align-items:center;background:#0000;border:none;cursor:pointer;display:flex;font-size:1.5rem;justify-content:center;padding:.5rem;position:relative;transition:transform .2s ease}.cart-icon-button:hover{transform:scale(1.1)}.cart-icon-button .cart-icon{display:block}.cart-icon-button .cart-badge{align-items:center;background:#f44;border-radius:50%;color:#fff;display:flex;font-size:.7rem;font-weight:700;height:20px;justify-content:center;position:absolute;right:0;top:0;transform:translate(25%,-25%);width:20px}.cart-overlay{animation:fadeIn .2s ease;background:#00000080;bottom:0;left:0;position:fixed;right:0;top:0;z-index:1000}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.cart-sidebar{animation:slideIn .3s ease;background:#fff;box-shadow:-2px 0 10px #0000001a;display:flex;flex-direction:column;height:100vh;max-width:420px;position:fixed;right:0;top:0;width:100%;z-index:1001}@media(max-width:480px){.cart-sidebar{max-width:100%}}@keyframes slideIn{0%{transform:translateX(100%)}to{transform:translateX(0)}}.cart-header{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;padding:1.5rem}.cart-header h2{font-size:1.5rem;font-weight:600;margin:0}.cart-header .cart-close-button{align-items:center;background:#0000;border:none;border-radius:50%;color:#666;cursor:pointer;display:flex;font-size:2rem;height:32px;justify-content:center;padding:0;transition:all .2s ease;width:32px}.cart-header .cart-close-button:hover{background:#f0f0f0;color:#333}.cart-content{flex:1 1;overflow-y:auto;padding:1rem}.cart-empty{align-items:center;color:#999;display:flex;flex-direction:column;height:100%;justify-content:center}.cart-empty p{font-size:1.1rem;margin:0}.cart-items{display:flex;flex-direction:column;gap:1rem}.cart-item{background:#fafafa;border:1px solid #e0e0e0;border-radius:8px;display:flex;gap:1rem;padding:1rem}.cart-item .cart-item-image{align-items:center;background:#f0f0f0;border-radius:4px;display:flex;flex-shrink:0;height:80px;justify-content:center;overflow:hidden;width:80px}.cart-item .cart-item-image img{height:100%;object-fit:cover;width:100%}.cart-item .cart-item-image .cart-item-placeholder{font-size:2rem}.cart-item .cart-item-details{flex:1 1;min-width:0}.cart-item .cart-item-details h3{font-size:1rem;font-weight:600;margin:0 0 .5rem}.cart-item .cart-item-details .cart-item-price{color:#333;font-size:1.1rem;font-weight:600;margin:0 0 .25rem}.cart-item .cart-item-details .cart-item-note{color:#666;font-size:.85rem;margin:.25rem 0 0}.cart-item .cart-item-controls{align-items:flex-end;display:flex;flex-direction:column;gap:.5rem}.quantity-controls{align-items:center;border:1px solid #e0e0e0;border-radius:4px;display:flex;gap:.5rem;overflow:hidden}.quantity-controls .quantity-btn{align-items:center;background:#fff;border:none;cursor:pointer;display:flex;font-size:1.2rem;height:32px;justify-content:center;transition:background .2s ease;width:32px}.quantity-controls .quantity-btn:hover{background:#f0f0f0}.quantity-controls .quantity-btn:active{background:#e0e0e0}.quantity-controls .quantity-input{-moz-appearance:textfield;border:none;font-size:1rem;height:32px;text-align:center;width:50px}.quantity-controls .quantity-input::-webkit-inner-spin-button,.quantity-controls .quantity-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.remove-btn{background:#0000;border:none;color:#f44;cursor:pointer;font-size:.85rem;padding:.25rem .5rem;transition:color .2s ease}.remove-btn:hover{color:#c00;text-decoration:underline}.cart-footer{background:#fff;border-top:1px solid #e0e0e0;padding:1.5rem}.cart-footer .cart-total{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;margin-bottom:1rem;padding-bottom:1rem}.cart-footer .cart-total .total-label{font-size:1.1rem;font-weight:500}.cart-footer .cart-total .total-amount{color:#333;font-size:1.5rem;font-weight:700}.cart-footer .cart-actions{display:flex;gap:.75rem}.cart-footer .cart-actions button{border:none;border-radius:6px;cursor:pointer;flex:1 1;font-size:1rem;font-weight:600;padding:.75rem 1.5rem;transition:all .2s ease}.cart-footer .cart-actions .btn-clear-cart{background:#f0f0f0;color:#666}.cart-footer .cart-actions .btn-clear-cart:hover{background:#e0e0e0}.cart-footer .cart-actions .btn-checkout{background:#333;color:#fff}.cart-footer .cart-actions .btn-checkout:hover{background:#1a1a1a}.cart-footer .cart-actions .btn-checkout:active{transform:scale(.98)}.auth-container{align-items:center;display:flex;justify-content:center;min-height:calc(100vh - 200px);padding:2rem}.auth-card{background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a;max-width:400px;padding:2.5rem;width:100%}.auth-card h2{color:#333;font-size:1.75rem;margin:0 0 2rem;text-align:center}.auth-error{background:#fee;border-radius:6px;color:#c33;font-size:.9rem;margin-bottom:1.5rem;padding:.75rem}.form-group input{border:1px solid #ddd;border-radius:6px;font-size:1rem;padding:.75rem;transition:border-color .2s;width:100%}.form-group input:focus{border-color:#4a90e2;outline:none}.form-group input::placeholder{color:#999}.btn-auth-submit{background:#4a90e2;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:.875rem;transition:background .2s;width:100%}.btn-auth-submit:hover:not(:disabled){background:#357abd}.btn-auth-submit:disabled{cursor:not-allowed;opacity:.6}.auth-switch{color:#666;font-size:.9rem;margin-top:1.5rem;text-align:center}.auth-switch .btn-switch{background:none;border:none;color:#4a90e2;cursor:pointer;font-size:.9rem;margin-left:.5rem;text-decoration:underline}.auth-switch .btn-switch:hover{color:#357abd}.stripe-payment-form{margin-top:20px}.stripe-card-element{background:#fff;border:1px solid #ddd;border-radius:4px;margin-bottom:16px;padding:12px}.stripe-card-element:focus-within{border-color:#4a90e2;box-shadow:0 0 0 2px #4a90e21a}.stripe-error{background:#ffebee;border-radius:4px;color:#d32f2f;font-size:14px;margin-bottom:16px;padding:8px}.btn-pay{background:#4a90e2;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:12px 24px;transition:background .2s;width:100%}.btn-pay:hover:not(:disabled){background:#357abd}.btn-pay:disabled{background:#ccc;cursor:not-allowed}.checkout-container{margin:0 auto;max-width:1200px;min-width:1200px;padding:2rem}.checkout-title{color:#333;font-size:2rem;margin-bottom:2rem}.checkout-empty{padding:4rem 2rem;text-align:center}.checkout-empty p{color:#666;font-size:1.2rem;margin-bottom:2rem}.btn-back-to-shop{background:#4a90e2;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;padding:.875rem 2rem;transition:background .2s}.btn-back-to-shop:hover{background:#357abd}.checkout-content{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:1fr 1fr}@media(max-width:968px){.checkout-content{grid-template-columns:1fr}}.checkout-summary{background:#f9f9f9;border-radius:8px;padding:1.5rem}.checkout-summary h2{color:#333;font-size:1.25rem;margin:0 0 1.5rem}.order-items{margin-bottom:1.5rem}.order-item{border-bottom:1px solid #eee;display:flex;gap:1rem;padding:1rem 0}.order-item:last-child{border-bottom:none}.order-item-image{background:#f0f0f0;border-radius:6px;flex-shrink:0;height:80px;overflow:hidden;width:80px}.order-item-image img{height:100%;object-fit:cover;width:100%}.order-item-placeholder{align-items:center;display:flex;font-size:2rem;height:100%;justify-content:center;width:100%}.order-item-details{flex:1 1}.order-item-details h3{color:#333;font-size:1rem;margin:0 0 .5rem}.order-item-price{color:#666;font-size:.9rem;margin:0}.order-summary{border-top:2px solid #ddd;padding-top:1rem}.order-shipping,.order-subtotal{align-items:center;color:#666;display:flex;font-size:1rem;justify-content:space-between;margin-bottom:.75rem}.order-shipping .shipping-label,.order-shipping .subtotal-label,.order-subtotal .shipping-label,.order-subtotal .subtotal-label{color:#666}.order-shipping .shipping-amount,.order-shipping .subtotal-amount,.order-subtotal .shipping-amount,.order-subtotal .subtotal-amount{color:#333;font-weight:500}.order-shipping .calculating,.order-subtotal .calculating{color:#999;font-style:italic}.order-shipping .shipping-prompt,.order-subtotal .shipping-prompt{color:#999;font-size:.9rem;font-style:italic}.order-shipping .shipping-error,.order-subtotal .shipping-error{color:#c33;font-size:.9rem;font-weight:500}.order-shipping-info{align-items:center;color:#666;display:flex;font-size:.9rem;justify-content:space-between;margin-bottom:.5rem}.order-shipping-info .shipping-info-label{color:#666}.order-shipping-info .shipping-info-value{color:#4a90e2;font-weight:500}.shipping-estimate{color:#4a90e2;font-size:.85rem;font-style:italic;margin-top:.5rem}.order-total{align-items:center;border-top:1px solid #ddd;display:flex;font-size:1.25rem;font-weight:600;justify-content:space-between;padding-top:.75rem}.order-total .total-label{color:#333}.order-total .total-amount{color:#4a90e2}.checkout-form{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:1.5rem}.checkout-form h2{color:#333;font-size:1.25rem;margin:0 0 1.5rem}.checkout-error{background:#fee;border-radius:6px;color:#c33;font-size:.9rem;margin-bottom:1.5rem;padding:.75rem}.form-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-bottom:1rem}.form-group{margin-bottom:1.5rem}.form-group label{color:#555;display:block;font-size:.9rem;font-weight:500;margin-bottom:.5rem}.form-group .form-select,.form-group input{background:#fff;border:1px solid #ddd;border-radius:6px;box-sizing:border-box;font-family:inherit;font-size:1rem;padding:.75rem;transition:border-color .2s;width:100%}.form-group .form-select:focus,.form-group input:focus{border-color:#4a90e2;outline:none}.form-group .form-select::placeholder,.form-group input::placeholder{color:#999}.form-group .form-select{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%23333' d='M6 9 1 4h10z'/%3E%3C/svg%3E");background-position:right .75rem center;background-repeat:no-repeat;cursor:pointer;padding-right:2.5rem}.form-group .form-select:hover{border-color:#bbb}.btn-submit-order{background:#4a90e2;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;padding:1rem;transition:background .2s;width:100%}.btn-submit-order:hover:not(:disabled){background:#357abd}.btn-submit-order:disabled{cursor:not-allowed;opacity:.6}.payment-section{background:#f9f9f9;border-radius:8px;margin-top:2rem;padding:1.5rem}.payment-section h3{color:#333;font-size:1.3rem;margin-bottom:1rem}.payment-section .payment-amount{color:#4a90e2;font-size:1.2rem;font-weight:600;margin-bottom:1.5rem}.order-success-container{align-items:center;display:flex;justify-content:center;min-height:calc(100vh - 200px);padding:2rem}.order-success-card{background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a;max-width:500px;padding:3rem;text-align:center;width:100%}.success-icon{align-items:center;background:#4a90e2;border-radius:50%;color:#fff;display:flex;font-size:3rem;font-weight:700;height:80px;justify-content:center;margin:0 auto 1.5rem;width:80px}.order-success-card h1{color:#333;font-size:1.75rem;margin:0 0 1rem}.order-id{color:#666;font-size:1rem;font-weight:500;margin:.5rem 0}.success-message{color:#666;line-height:1.6;margin:1.5rem 0}.success-actions{margin-top:2rem}.btn-back-home{background:#4a90e2;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:.875rem 2rem;transition:background .2s}.btn-back-home:hover{background:#357abd}
/*# sourceMappingURL=main.b1a8d873.css.map*/