@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@400;500;600;700&display=swap";
:root{--bg-primary:#f8f9fc;--bg-secondary:#fff;--bg-card:#fff;--bg-elevated:#f0f2f7;--bg-muted:#e8ebf0;--text-primary:#1a1d29;--text-secondary:#5a6070;--text-muted:#9298a8;--accent:#e11d48;--accent-hover:#be123c;--accent-soft:#e11d480f;--accent-border:#e11d4826;--accent-glow:#e11d4840;--border:#e2e5ed;--border-strong:#cdd2de;--shadow-xs:0 1px 2px #00000008;--shadow-sm:0 2px 8px #0000000a, 0 1px 2px #00000005;--shadow-md:0 4px 16px #0000000f, 0 2px 4px #00000005;--shadow-lg:0 12px 40px #00000014, 0 4px 12px #00000008;--shadow-xl:0 20px 60px #0000001a, 0 8px 24px #0000000a;--radius-xs:8px;--radius-sm:10px;--radius-md:14px;--radius-lg:20px;--radius-xl:28px;--radius-full:9999px;--ease-out:cubic-bezier(.25, .46, .45, .94);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--ease-bounce:cubic-bezier(.68, -.55, .265, 1.55)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100dvh;font-family:DM Sans,-apple-system,BlinkMacSystemFont,sans-serif;line-height:1.5}::selection{background:var(--accent);color:#fff}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-elevated)}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.top-nav{z-index:100;-webkit-backdrop-filter:blur(20px)saturate(180%);border:1px solid var(--border);border-radius:var(--radius-full);box-shadow:var(--shadow-md), 0 0 0 1px #ffffff80 inset;animation:slideDown .7s var(--ease-out) forwards;background:#ffffffeb;align-items:center;gap:4px;padding:6px;display:flex;position:fixed;top:20px;left:50%;transform:translate(-50%)}@keyframes slideDown{0%{opacity:0;transform:translate(-50%)translateY(-20px)scale(.95)}to{opacity:1;transform:translate(-50%)translateY(0)scale(1)}}.nav-logo{align-items:center;gap:10px;padding:6px 18px 6px 6px;display:flex}.logo-icon{background:linear-gradient(145deg, var(--accent), var(--accent-hover));color:#fff;width:40px;height:40px;box-shadow:0 4px 14px var(--accent-glow);transition:all .4s var(--ease-out);border-radius:12px;justify-content:center;align-items:center;font-size:16px;font-weight:700;display:flex}.nav-logo:hover .logo-icon{box-shadow:0 6px 20px var(--accent-glow);transform:scale(1.05)rotate(-3deg)}.nav-logo span{letter-spacing:1.5px;color:var(--text-primary);font-size:14px;font-weight:700}.nav-tabs{gap:2px;display:flex}.nav-tab{border-radius:var(--radius-full);cursor:pointer;color:var(--text-secondary);transition:all .4s var(--ease-out);background:0 0;border:none;padding:10px 22px;font-size:13px;font-weight:600;position:relative;overflow:hidden}.nav-tab:before{content:"";background:var(--accent-soft);opacity:0;transition:opacity .3s var(--ease-out);border-radius:inherit;position:absolute;inset:0}.nav-tab:hover{color:var(--text-primary)}.nav-tab:hover:before{opacity:1}.nav-tab.active{background:var(--accent);color:#fff;box-shadow:0 4px 12px var(--accent-glow)}.nav-tab.active:before{opacity:0}.section{max-width:960px;animation:fadeUp .7s var(--ease-out) forwards;margin:0 auto;padding:130px 24px 80px;display:none}.section.active{display:block}@keyframes fadeUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.form-header{text-align:center;background:linear-gradient(180deg, var(--bg-secondary) 0%, var(--bg-primary) 100%);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);margin-bottom:32px;padding:56px 48px;position:relative;overflow:hidden}.form-header:before{content:"";background:linear-gradient(90deg, var(--accent), #f472b6, var(--accent));background-size:200% 100%;height:5px;animation:3s ease-in-out infinite shimmer;position:absolute;top:0;left:0;right:0}@keyframes shimmer{0%,to{background-position:0%}50%{background-position:100%}}.form-header:after{content:"";background:radial-gradient(circle, var(--accent-soft) 0%, transparent 70%);pointer-events:none;width:300px;height:300px;position:absolute;top:-50%;right:-20%}.form-header h1{letter-spacing:-.02em;color:var(--text-primary);margin-bottom:12px;font-family:Playfair Display,Georgia,serif;font-size:clamp(34px,7vw,56px);font-weight:600;position:relative}.form-header p{color:var(--text-secondary);letter-spacing:.3px;font-size:15px;position:relative}.info-banner{background:linear-gradient(135deg, var(--accent-soft) 0%, #e11d4808 100%);border:1px solid var(--accent-border);border-radius:var(--radius-md);color:var(--accent-hover);align-items:center;gap:12px;margin-bottom:28px;padding:18px 22px;font-size:13px;font-weight:500;display:flex;position:relative;overflow:hidden}.info-banner:before{content:"";background:var(--accent);width:4px;position:absolute;top:0;bottom:0;left:0}.form-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);transition:all .45s var(--ease-out);margin-bottom:22px;padding:32px;position:relative;overflow:hidden}.form-card:before{content:"";pointer-events:none;background:linear-gradient(#fff9 0%,#0000 30%);position:absolute;inset:0}.form-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-lg);transform:translateY(-3px)}.card-title{color:var(--text-muted);border-bottom:1px solid var(--border);letter-spacing:2px;text-transform:uppercase;align-items:center;gap:10px;margin-bottom:24px;padding-bottom:16px;font-size:10px;font-weight:700;display:flex;position:relative}.card-title:before{content:"";background:var(--accent);width:8px;height:8px;box-shadow:0 0 0 3px var(--accent-soft);border-radius:50%;animation:2s ease-in-out infinite pulse-dot}@keyframes pulse-dot{0%,to{box-shadow:0 0 0 3px var(--accent-soft)}50%{box-shadow:0 0 0 6px #0000}}.form-grid{grid-template-columns:repeat(2,1fr);gap:20px;display:grid}.form-grid .full{grid-column:1/-1}.fg label{color:var(--text-secondary);letter-spacing:.3px;margin-bottom:9px;font-size:12px;font-weight:600;display:block}.fg input,.fg select,.fg textarea{background:var(--bg-primary);border:1.5px solid var(--border);border-radius:var(--radius-md);width:100%;color:var(--text-primary);transition:all .35s var(--ease-out);padding:15px 18px;font-family:inherit;font-size:14px}.fg input::placeholder,.fg textarea::placeholder{color:var(--text-muted)}.fg input:focus,.fg select:focus,.fg textarea:focus{border-color:var(--accent);background:var(--bg-secondary);box-shadow:0 0 0 4px var(--accent-soft), var(--shadow-sm);outline:none}.fg select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%239298a8' stroke-width='2.5'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-position:right 16px center;background-repeat:no-repeat;padding-right:44px}.fg textarea{resize:vertical;min-height:96px}.service-grid{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}.svc-card{background:var(--bg-primary);border:2px solid var(--border);border-radius:var(--radius-lg);cursor:pointer;transition:all .45s var(--ease-out);padding:24px;position:relative;overflow:hidden}.svc-card:before{content:"";background:linear-gradient(145deg, var(--accent-soft) 0%, transparent 60%);opacity:0;transition:opacity .4s var(--ease-out);position:absolute;inset:0}.svc-card:hover{border-color:var(--accent-border);box-shadow:var(--shadow-lg);transform:translateY(-4px)}.svc-card:hover:before{opacity:1}.svc-card.selected{border-color:var(--accent);background:var(--bg-secondary);box-shadow:0 0 0 4px var(--accent-soft), var(--shadow-lg);border-width:2px}.svc-card.selected:before{opacity:1}.svc-card .check{border:2px solid var(--border-strong);color:#0000;background:var(--bg-secondary);width:26px;height:26px;transition:all .4s var(--ease-spring);border-radius:50%;justify-content:center;align-items:center;font-size:12px;display:flex;position:absolute;top:16px;right:16px}.svc-card.selected .check{border-color:var(--accent);background:var(--accent);color:#fff;transform:scale(1.1)}.svc-name{color:var(--text-primary);margin-bottom:6px;font-size:15px;font-weight:700;position:relative}.svc-desc{color:var(--text-muted);margin-bottom:18px;font-size:12px;line-height:1.5;position:relative}.svc-price{color:var(--accent);font-size:22px;font-weight:700;position:relative}.svc-price small{color:var(--text-muted);font-size:11px;font-weight:500}.qty-row{align-items:center;gap:24px;margin-bottom:26px;display:flex}.qty-row label{min-width:140px;color:var(--text-secondary);font-size:14px;font-weight:500}.qty-ctrl{background:var(--bg-primary);border:1.5px solid var(--border);border-radius:var(--radius-md);transition:all .3s var(--ease-out);align-items:center;gap:4px;padding:4px;display:flex}.qty-ctrl:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.qty-btn{background:var(--bg-secondary);width:44px;height:44px;color:var(--text-primary);border-radius:var(--radius-sm);cursor:pointer;transition:all .3s var(--ease-out);box-shadow:var(--shadow-xs);border:none;justify-content:center;align-items:center;font-size:20px;font-weight:500;display:flex}.qty-btn:hover{background:var(--accent);color:#fff;box-shadow:0 4px 12px var(--accent-glow);transform:scale(1.05)}.qty-btn:active{transform:scale(.95)}.qty-input{text-align:center;width:60px;color:var(--text-primary);background:0 0;border:none;padding:10px;font-family:inherit;font-size:18px;font-weight:700}.qty-input:focus{outline:none}.opt-row{grid-template-columns:repeat(2,1fr);gap:22px;display:grid}.opt-group label{color:var(--text-secondary);margin-bottom:9px;font-size:12px;font-weight:600;display:block}.opt-group select{background:var(--bg-primary);border:1.5px solid var(--border);border-radius:var(--radius-md);width:100%;color:var(--text-primary);cursor:pointer;appearance:none;transition:all .35s var(--ease-out);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%239298a8' stroke-width='2.5'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-position:right 16px center;background-repeat:no-repeat;padding:15px 44px 15px 16px;font-family:inherit;font-size:14px}.opt-group select:focus{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft);outline:none}.price-box{background:linear-gradient(145deg, var(--bg-primary) 0%, var(--bg-elevated) 100%);border:1.5px solid var(--border);border-radius:var(--radius-lg);padding:28px;position:relative;overflow:hidden}.price-box:before{content:"";background:linear-gradient(90deg, var(--accent), var(--accent-hover));height:3px;position:absolute;top:0;left:0;right:0}.price-line{color:var(--text-secondary);border-bottom:1px solid var(--border);justify-content:space-between;padding:12px 0;font-size:14px;display:flex}.price-line:last-child{border-bottom:none}.price-line.extra{color:var(--accent);font-weight:600}.price-line.total{border-top:2px solid var(--border-strong);color:var(--text-primary);background:linear-gradient(90deg, transparent, var(--accent-soft), transparent);margin:16px -28px -28px;padding:20px 28px;font-size:24px;font-weight:700}.submit-btn{background:linear-gradient(145deg, var(--accent), var(--accent-hover));color:#fff;border-radius:var(--radius-lg);cursor:pointer;width:100%;transition:all .5s var(--ease-out);letter-spacing:1.5px;text-transform:uppercase;box-shadow:0 6px 20px var(--accent-glow);border:none;margin-top:28px;padding:20px 32px;font-size:14px;font-weight:700;position:relative;overflow:hidden}.submit-btn:before{content:"";background:linear-gradient(145deg, var(--accent-hover), var(--accent));opacity:0;transition:opacity .5s var(--ease-out);position:absolute;inset:0}.submit-btn:hover{box-shadow:0 12px 32px var(--accent-glow);transform:translateY(-3px)}.submit-btn:hover:before{opacity:1}.submit-btn:active{transform:translateY(-1px)}.submit-btn span{z-index:1;position:relative}.submit-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.store-header{justify-content:space-between;align-items:center;margin-bottom:32px;display:flex}.store-header h2{color:var(--text-primary);font-family:Playfair Display,Georgia,serif;font-size:28px;font-weight:600}.search-bar{background:var(--bg-secondary);border:1.5px solid var(--border);border-radius:var(--radius-lg);transition:all .4s var(--ease-out);box-shadow:var(--shadow-sm);gap:10px;margin-bottom:32px;padding:6px;display:flex}.search-bar:focus-within{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft), var(--shadow-md)}.search-bar input{color:var(--text-primary);background:0 0;border:none;flex:1;padding:16px 20px;font-family:inherit;font-size:14px}.search-bar input::placeholder{color:var(--text-muted)}.search-bar input:focus{outline:none}.search-bar button{background:linear-gradient(145deg, var(--accent), var(--accent-hover));color:#fff;border-radius:var(--radius-md);cursor:pointer;letter-spacing:.5px;transition:all .4s var(--ease-out);box-shadow:0 4px 14px var(--accent-glow);border:none;padding:14px 28px;font-family:inherit;font-size:13px;font-weight:700}.search-bar button:hover{box-shadow:0 8px 24px var(--accent-glow);transform:translateY(-2px)}.order-cards{flex-direction:column;gap:16px;display:flex}.order-card{background:var(--bg-secondary);border:1.5px solid var(--border);border-radius:var(--radius-lg);transition:all .45s var(--ease-out);cursor:pointer;box-shadow:var(--shadow-xs);justify-content:space-between;align-items:center;padding:24px 28px;display:flex;position:relative;overflow:hidden}.order-card:before{content:"";background:linear-gradient(180deg, var(--accent), var(--accent-hover));opacity:0;width:4px;transition:opacity .4s var(--ease-out);position:absolute;top:0;bottom:0;left:0}.order-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-lg);transform:translate(8px)}.order-card:hover:before{opacity:1}.oc-code{color:var(--accent);letter-spacing:2px;margin-bottom:5px;font-family:SF Mono,Fira Code,monospace;font-size:16px;font-weight:700}.oc-name{color:var(--text-secondary);margin-bottom:4px;font-size:14px}.oc-service{color:var(--text-muted);font-size:12px}.oc-total{color:var(--text-primary);margin-bottom:10px;font-size:18px;font-weight:700}.oc-status{border-radius:var(--radius-full);letter-spacing:.5px;text-transform:uppercase;padding:6px 14px;font-size:11px;font-weight:700;display:inline-block}.st-wait{color:#b45309;background:#fef3c7;border:1px solid #fde68a}.st-process{color:#1d4ed8;background:#dbeafe;border:1px solid #bfdbfe}.st-done{color:#15803d;background:#dcfce7;border:1px solid #bbf7d0}.oc-actions{justify-content:flex-end;gap:10px;margin-top:14px;display:flex}.oc-btn{border-radius:var(--radius-sm);cursor:pointer;transition:all .35s var(--ease-out);border:none;padding:10px 18px;font-family:inherit;font-size:12px;font-weight:700}.oc-btn-print{background:var(--accent-soft);color:var(--accent);border:1px solid var(--accent-border)}.oc-btn-print:hover{background:var(--accent);color:#fff;box-shadow:0 4px 14px var(--accent-glow);transform:translateY(-2px)}.oc-btn-status{background:var(--bg-elevated);color:var(--text-secondary);border:1px solid var(--border)}.oc-btn-status:hover{background:var(--bg-muted);color:var(--text-primary);border-color:var(--border-strong)}.order-modal{-webkit-backdrop-filter:blur(12px)saturate(150%);z-index:200;animation:fadeIn .4s var(--ease-out);background:#0f111999;padding:24px;display:none;position:fixed;inset:0;overflow-y:auto}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.order-modal.show{justify-content:center;align-items:flex-start;display:flex}.modal-inner{background:var(--bg-secondary);border-radius:var(--radius-xl);width:100%;max-width:480px;box-shadow:var(--shadow-xl);animation:scaleIn .5s var(--ease-spring);margin:60px auto;overflow:hidden}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)translateY(24px)}to{opacity:1;transform:scale(1)translateY(0)}}.modal-top{background:linear-gradient(145deg, var(--accent), var(--accent-hover));text-align:center;padding:52px 40px;position:relative;overflow:hidden}.modal-top:before{content:"";opacity:.6;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.07'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");position:absolute;inset:0}.success-icon{animation:bounce-in .8s var(--ease-bounce);margin-bottom:14px;font-size:60px}@keyframes bounce-in{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}.modal-top h2{margin-bottom:8px;font-family:Playfair Display,Georgia,serif;font-size:24px;font-weight:600}.modal-top p{opacity:.92;font-size:14px}.code-display{background:var(--bg-primary);border-radius:var(--radius-lg);text-align:center;border:2.5px dashed var(--accent-border);margin:-20px 32px 0;padding:28px;position:relative}.code-display .label{color:var(--text-muted);text-transform:uppercase;letter-spacing:2.5px;font-size:10px;font-weight:700}.code-display .code{color:var(--accent);letter-spacing:6px;text-shadow:0 2px 16px var(--accent-glow);margin:12px 0;font-family:SF Mono,Fira Code,monospace;font-size:40px;font-weight:800}.code-display .hint{color:var(--text-secondary);background:var(--bg-secondary);border-radius:var(--radius-sm);border:1px solid var(--border);margin-top:14px;padding:14px 16px;font-size:12px;line-height:1.5}.receipt-area{padding:32px}.receipt{color:var(--text-primary);border-radius:var(--radius-md);border:1px solid var(--border);width:280px;box-shadow:var(--shadow-sm);background:#fafafc;margin:0 auto;padding:28px;font-family:SF Mono,Fira Code,monospace;font-size:12px;line-height:1.8}.receipt .r-header{text-align:center;margin-bottom:16px}.receipt .r-header h3{letter-spacing:3px;font-size:14px;font-weight:700}.receipt .r-header p{color:var(--text-muted);font-size:10px}.receipt .r-divider{border-top:1px dashed var(--border-strong);margin:12px 0}.receipt .r-row{justify-content:space-between;display:flex}.receipt .r-row .lbl{color:var(--text-muted)}.receipt .r-row .val{font-weight:700}.receipt table{border-collapse:collapse;width:100%;margin:10px 0;font-size:11px}.receipt table th{text-align:left;border-bottom:1px solid var(--border-strong);color:var(--text-muted);text-transform:uppercase;letter-spacing:1px;padding:6px 2px;font-size:10px}.receipt table td{padding:6px 2px}.receipt table .right{text-align:right}.receipt .r-total{border-top:1px solid var(--border-strong);justify-content:space-between;margin-top:10px;padding-top:10px;font-size:15px;font-weight:700;display:flex}.receipt .r-footer{text-align:center;color:var(--text-muted);margin-top:16px;font-size:9px;line-height:1.6}.modal-actions{gap:14px;padding:0 32px 32px;display:flex}.btn-copy,.btn-print{border-radius:var(--radius-md);cursor:pointer;transition:all .4s var(--ease-out);flex:1;padding:16px 20px;font-family:inherit;font-size:13px;font-weight:700}.btn-copy{background:var(--bg-elevated);color:var(--text-primary);border:1.5px solid var(--border)}.btn-copy:hover{background:var(--bg-muted);border-color:var(--border-strong);transform:translateY(-2px)}.btn-print{background:linear-gradient(145deg, var(--accent), var(--accent-hover));color:#fff;box-shadow:0 4px 14px var(--accent-glow);border:none}.btn-print:hover{box-shadow:0 8px 24px var(--accent-glow);transform:translateY(-2px)}.loading{color:var(--text-muted);justify-content:center;align-items:center;padding:60px;display:flex}@media (max-width:640px){.top-nav{border-radius:var(--radius-lg);width:calc(100% - 32px);top:12px}.nav-logo span{display:none}.nav-tab{padding:8px 14px;font-size:12px}.section{padding:100px 16px 60px}.form-header{border-radius:var(--radius-lg);padding:40px 24px}.form-header h1{font-size:28px}.form-card{border-radius:var(--radius-lg);padding:24px 20px}.form-grid,.service-grid,.opt-row{grid-template-columns:1fr;gap:14px}.qty-row{flex-direction:column;align-items:flex-start;gap:12px}.qty-row label{min-width:auto}.price-line.total{font-size:20px}.order-card{flex-direction:column;align-items:flex-start;gap:16px}.order-card>div:last-child{text-align:left;width:100%}.oc-actions{justify-content:flex-start}.modal-inner{margin:30px auto}.modal-top{padding:40px 24px}.code-display{margin:-16px 20px 0;padding:20px}.code-display .code{letter-spacing:3px;font-size:30px}.modal-actions{flex-direction:column;padding:0 20px 24px}}
