@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-vietnamese-wght-normal-CnvboYUG.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-latin-ext-wght-normal-Ca2vKHc0.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-latin-wght-normal-ukD16Tqj.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Hanken Grotesk Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(data:font/woff2;base64,d09GMgABAAAAAAaEABMAAAAADFgAAAYdAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhYbbhwoP0hWQVJpBmA/U1RBVIE4AFwvbBEICoJ8gkMLFAAwhCoBNgIkAyIEIAWGUAdiDAcbvgpRVHJOI/viwCYyfSFrJjFIG8raYpYj9+IeSF0s6zD+Lk/4OGrZHhHV+wvt2ffuWPwlA51lIICIosSVmyOKEs5Uzlx3NKeXIgn1ssCydUybDV0IHga+SszIyfrQe9bLTFNxjayzgs76hNsDoSYtRe32fiJ4gxBjrP8L+w//zzHjv7Yqyr9o2vOBDXhCo2jMtr4uwAK/gV1U0PxAq/EAD+yW9EoKOL1KLw8rHrFgCSgRTQRzBzpeXVhweEDlyfY8gIoOa2CQJzrTAHIIoitTMVV2dyFwpJ2iAEQTpSkhPitxD3YwuZHEagTcAhyKAcBmUyPdhTovJThOw6HYiaF2M/J7erdi2OUutor6ES6Ac88AvfZvKpb6fJoArohb524042j6Jij36NI7P8Pb7s721naN9gcTtcjXQP4l+8BKEzFVGMxxoHqlq8Ul4LGneFJBDFaOdKpLPcg8P14YSDwIcn75hdlyJLTBlZ4voL6tT46yC/njunXqpJ0/bSvmrH1o3kRlwZ+j0DBogkF3KbDRVBlbOc+fY5HVXwPoT9hfekPnyZMaEmenYLMSg5npqegFOsgXsBv1IoF9aIVfSCNHkk6+gIzILsiYuhWQCfUtZEpbkRntQxBZgw7MwFbMcRvwJrAnBlDqs7isLtL7pO84Xru1i7ah7tckH1Wreqq6K9u0amxU1bcff/s2Y1ni3rh2I8zHzqkm3PGvv3mzC6NDBz/UcOBIg+nm88rxN8MbdtypvHUL5o1c2zG0urYpRmW+VHZdiba6GXN/3v0B3i3nt4RBsbfAu8ftLqRcTIlZ4VYheFTAS5nXLS65VZrbuW3daF2Ze1ChyGXWZN6u9nUuH1LfyTERifZXEpIueMe28vF8FOoTnsONzw+1djo9P71lZGx1vM8mH/BhvSa2HDsRZ1+Ul+RmpnPOIaEuwWnZZdkgQWAAyCDDZ1wk+0sh7wseAAwA6UlHxbftCgYAAwKAgwIAEA7ACfHIRbV7J6dwF/ZzcRRmAjXUYKAGWAlDCCFmKnH+LJEQfHKEmVrfmKwSEab36AcubXQBoDYJV/aRV+funFD8wAXLSLYbwr9+DR+h/qZIKCfeqRG5ghHpdY0zcV2nuz5iJMhAFjaTDwOcoyKGG9JHrCfdp4cC+kCvUrxc7+bliIMiHj95sPIbUeWZEP/HLnN2tlr9EBeRiktHuWvErx98fRz1MuEvHO3FDRgtsSzL/P0hsDLK2n5/uHMOjvTst0HD6t+80ZN798j7j//kjqHxIOZDFPR/FxurFD6/HxGbB799RPHLx5F89MoBOub9jVuOWtmPH3o9H3r26DIuff+LqPLwff/xryDRmiAYmjxiK0GwS9XU+k8QpUrHsCTs4qH89Fv44ubWbQmOE51M7J8Pt8+h+NKt3zZpa2L9zZqcRlyEc4MaNGdfjQCxgIygn78ne4yAzcLWA3zAJ6RRGbijvHr1W+XN8ywrG0EoZSySb0/A9KsllI7Q/Pq8hLu76tfTy5cF4X8bQxTtYp2vr6/+1oI4AhgAlNYFryt62VaX9ktO6VsAeDLeWx6fff4vdV1ts7N6+gw9GCsQnqPB0QUttB9nEc7Aaf4XM0NQ90VJ+HV1rG04znGCmXcpPCA9+nxdMPgPlT7Dz83NMfZuMJaNeRqbc+tjd2QER/b0B44d7nv5Rif7VC8svYkx9SKWwb3YzN2M3cY8jSNLl+PYZqfjxNTxOLXVCmfmduDc0ty1kLbjeiGfIrDFJXWPTTMD5TKupR8cpZgJeXTofId8NoUj6E8XfAc2k4WPdbCberDYAp8Q7L5dUo8wE8cs9QINZYvwXKzvBS4v/n+fQZkGrrFysKEIuFBgjQpxiHH1XA+ZBI+C+oAoxhYKECc42rGOc8L4mYhsiThGfFjOcKmFubPpDgwnY1918Fwo8ouenDJxvGP96HFWJ28hiOy251oKjkcbGz2POMme8CTMThx6wqOPsFtPI6j6HhDyDTxFQYnL88FcXGAGHl3ZuueRbEuxbK6Hc84ZDvRrREtLzyjj8Xkd/uShR1b0sYd8Nh8/c8znxCnadxQcf2nFVWIyw1g+4StXav9j75s+CQAA) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Hanken Grotesk Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/hanken-grotesk-vietnamese-wght-normal-CHiFlh_0.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Hanken Grotesk Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/hanken-grotesk-latin-ext-wght-normal-Dg-wlmqe.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Hanken Grotesk Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/hanken-grotesk-latin-wght-normal-CaVRRdDk.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Schoolbell;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/schoolbell-latin-400-normal-D_Z2-wWK.woff2) format("woff2"),url(/assets/schoolbell-latin-400-normal-C8qtHTDx.woff) format("woff")}:root{--palette-cream-50: #f7f3ec;--palette-cream-100: #F8F3E9;--palette-cream-200: #EBE1D5;--palette-paper: #FCF9F5;--palette-ink: #3E201E;--palette-muted: #7E3E3A;--palette-paprika: #E85038;--palette-paprika-dark: #7E3E3A;--palette-paprika-soft: #F3D9CA;--palette-olive: #60787B;--palette-line: #DADACF;--palette-danger: #7E3E3A;--palette-danger-dark: #3E201E;--palette-danger-soft: #E9DDD1;--palette-danger-line: #D1BAB0;--palette-danger-ink: #7E3E3A;--palette-mustard-deep: #7E3E3A;--palette-mustard-soft: #E7DACE;--palette-success: #45919b;--palette-success-soft: #DDE9E7;--palette-status-preparing-bg: #F3D9CA;--palette-status-preparing-fg: #7E3E3A;--palette-status-neutral-bg: #A8CFD0;--palette-status-neutral-fg: #3E201E;--color-bg: var(--palette-cream-50);--color-surface: var(--palette-paper);--color-text: var(--palette-ink);--color-text-muted: var(--palette-muted);--color-primary: var(--palette-paprika);--color-primary-hover: var(--palette-paprika-dark);--color-primary-dark: var(--palette-paprika-dark);--color-danger: var(--palette-danger);--color-danger-hover: var(--palette-danger-dark);--color-danger-bg: var(--palette-danger-soft);--color-error-bg: var(--palette-danger-soft);--color-error-text: var(--palette-danger-ink);--color-error-border: var(--palette-danger-line);--color-border: var(--palette-line);--color-input-bg: var(--palette-paper);--color-bg-card: var(--palette-cream-100);--color-bg-card-hover: var(--palette-cream-200);--color-bg-selected: var(--palette-paprika-soft);--color-bg-muted: var(--palette-cream-200);--color-warning-bg: var(--palette-mustard-soft);--color-warning: var(--palette-mustard-deep);--color-success-bg: var(--palette-success-soft);--color-success: var(--palette-success);--color-ring: color-mix(in srgb, var(--color-primary) 18%, transparent);--color-focus: var(--palette-ink);--color-accent-decor: var(--palette-olive);--color-on-primary: #ffffff;--color-on-danger: #ffffff;--color-on-success: #ffffff;--color-status-pending-bg: var(--color-warning-bg);--color-status-pending-fg: var(--color-warning);--color-status-preparing-bg: var(--palette-status-preparing-bg);--color-status-preparing-fg: var(--palette-status-preparing-fg);--color-status-completed-bg: var(--color-success-bg);--color-status-completed-fg: var(--color-success);--color-status-cancelled-bg: var(--color-error-bg);--color-status-cancelled-fg: var(--color-error-text);--color-status-neutral-bg: var(--palette-status-neutral-bg);--color-status-neutral-fg: var(--palette-status-neutral-fg);--font-body: "Hanken Grotesk Variable", "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-display: "Schoolbell","Fraunces Variable", "Iowan Old Style", Georgia, "Times New Roman", serif;--font-hand: "Schoolbell", "Segoe Print", "Bradley Hand", cursive;--radius: 8px;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--max-width: 480px}*{box-sizing:border-box}body{margin:0;min-height:100vh;background-color:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:16px;line-height:1.5}:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--spacing-md)}.card{width:100%;max-width:var(--max-width);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--spacing-xl)}.page-title{margin:0 0 var(--spacing-sm);font-size:1.5rem;font-weight:700;text-align:center}.page-subtitle{margin:0 0 var(--spacing-lg);font-size:.875rem;color:var(--color-text-muted);text-align:center}.text-muted{margin-top:var(--spacing-lg);font-size:.75rem;color:var(--color-text-muted);text-align:center}.user-info p{margin:var(--spacing-sm) 0}.auth-form{display:flex;flex-direction:column;gap:var(--spacing-md)}.form-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.form-group label{font-size:.875rem;font-weight:500}.form-group input{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius);font-size:1rem;background:var(--color-input-bg);min-height:44px;transition:border-color .15s}.form-group input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-ring)}.form-group input:disabled{opacity:.6;cursor:not-allowed}.input-shell{position:relative;display:flex;align-items:center}.input-shell input{flex:1 1 auto;min-width:0;padding-right:48px}.input-trailing-btn{position:absolute;right:2px;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:44px;height:44px;padding:0;border:none;border-radius:8px;background:none;color:var(--color-text-muted);cursor:pointer}.input-trailing-btn:hover{color:var(--color-text)}.input-trailing-btn:disabled{opacity:.6;cursor:not-allowed}.field-error{font-size:.75rem;color:var(--color-error-text)}.error-banner{padding:var(--spacing-sm) var(--spacing-md);background:var(--color-error-bg);color:var(--color-error-text);border:1px solid var(--color-error-border);border-radius:var(--radius);font-size:.875rem}.btn{padding:var(--spacing-sm) var(--spacing-lg);border:none;border-radius:var(--radius);font-family:inherit;font-size:1rem;font-weight:600;cursor:pointer;min-height:44px;transition:background-color .15s,opacity .15s}.btn-busy{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm)}.btn-spinner{width:1.05em;height:1.05em;flex:0 0 auto;border:2px solid currentColor;border-bottom-color:transparent;border-radius:50%;animation:btn-spin .7s linear infinite}@keyframes btn-spin{to{transform:rotate(360deg)}}.btn:disabled,.btn.is-loading{opacity:.6;cursor:not-allowed}.btn-primary{background:var(--color-primary);color:var(--color-on-primary)}.btn-primary:not(:disabled):hover{background:var(--color-primary-hover)}.btn-danger{background:var(--color-danger);color:var(--color-on-danger)}.btn-danger:not(:disabled):hover{background:var(--color-danger-hover)}.btn-confirm{background:var(--color-success);color:var(--color-on-success)}.btn-confirm:not(:disabled):hover{background:color-mix(in srgb,var(--color-success) 85%,black)}.btn-full{width:100%}@media(min-width:768px){.card{padding:var(--spacing-xl) var(--spacing-xl)}.page-title{font-size:1.75rem}}.layout{min-height:100vh;background:var(--color-bg);display:flex;flex-direction:column}.header{background:var(--color-surface);padding:12px 16px;display:flex;align-items:center;justify-content:space-between;gap:8px;border-bottom:1px solid var(--color-border);position:sticky;top:0;z-index:50}.header-left{display:flex;align-items:center}.header-brand{color:var(--palette-paprika)}.header-right{display:flex;align-items:center;gap:10px}.header-username{font-size:.8125rem;color:var(--color-text-muted);max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header-logout{font-size:.8125rem;color:var(--color-text-muted);cursor:pointer}.btn-ghost{background:none;border:none;cursor:pointer;padding:4px 8px;font-size:.8125rem;color:var(--color-text-muted)}.btn-ghost:hover{color:var(--color-danger)}.mode-selector{display:flex;gap:2px;padding:2px;background:var(--color-border);border-radius:6px}.mode-btn{padding:4px 10px;border:none;border-radius:4px;font-size:.75rem;font-weight:500;cursor:pointer;background:transparent;color:var(--color-text-muted);transition:all .15s}.mode-btn.active{background:var(--color-surface);color:var(--color-text);font-weight:600;box-shadow:0 1px 2px #0000000f}.layout-content{flex:1;padding:var(--spacing-md);padding-bottom:72px}.mobile-nav{position:fixed;bottom:0;left:0;right:0;background:var(--color-surface);border-top:1px solid var(--color-border);display:flex;justify-content:space-around;padding:6px 0;z-index:100}.nav-icon{display:block;width:30px;height:30px;flex:none}.nav-item{display:flex;flex-direction:column;align-items:center;gap:2px;padding:4px 12px;font-size:.6875rem;color:var(--palette-paprika);text-decoration:none;border-radius:6px;transition:color .15s}.nav-item.active{color:var(--color-primary)}.nav-label{line-height:1}.dashboard{max-width:var(--max-width);margin:0 auto}.forbidden{text-align:center;padding:48px 20px}.forbidden .page-title{font-size:1.25rem;color:var(--color-danger)}.forbidden .text-muted{margin-top:var(--spacing-sm);margin-bottom:var(--spacing-lg);font-size:.8125rem}.catalog-page{max-width:var(--max-width);margin:0 auto}.catalog-page-title{font-size:1.25rem;color:var(--color-text);margin:0 0 var(--spacing-md) 0}.catalog-loading,.catalog-empty{text-align:center;padding:var(--spacing-xl);color:var(--color-text-muted);font-size:.875rem}.catalog-group{margin-bottom:var(--spacing-lg)}.catalog-group-title{display:flex;align-items:center;gap:var(--spacing-xs);font-size:1rem;font-weight:600;color:var(--color-text);margin:0 0 var(--spacing-sm) 0;padding-bottom:var(--spacing-xs);border-bottom:2px solid var(--color-primary)}.catalog-group-icon{font-size:1.125rem}.catalog-group-items{display:flex;flex-direction:column;gap:var(--spacing-xs)}.catalog-card{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius)}.catalog-card-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.catalog-card-name{font-weight:600;font-size:.9375rem;color:var(--color-text)}.catalog-card-desc{font-size:.8125rem;color:var(--color-text-muted)}.catalog-card-price{font-weight:700;font-size:.9375rem;color:var(--color-primary);flex-shrink:0}.sandwich-page{max-width:var(--max-width);margin:0 auto}.sandwich-page-title{font-size:1.25rem;color:var(--color-text);margin:0 0 var(--spacing-md) 0}.sandwich-loading,.sandwich-empty,.beverages-empty{text-align:center;padding:var(--spacing-xl);color:var(--color-text-muted);font-size:.875rem}.sandwich-selected-preview{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-sm) var(--spacing-md);background:var(--color-bg-selected);border:2px solid var(--color-primary);border-radius:var(--radius);margin-bottom:var(--spacing-md)}.sandwich-selected-name{font-weight:600;font-size:.9375rem;color:var(--color-text)}.sandwich-selected-price{font-weight:700;font-size:.9375rem;color:var(--color-primary)}.sandwich-section{margin-bottom:var(--spacing-lg)}.sandwich-section-title{display:flex;align-items:center;gap:var(--spacing-xs);font-size:1rem;font-weight:600;color:var(--color-text);margin:0 0 var(--spacing-sm) 0;padding-bottom:var(--spacing-xs);border-bottom:2px solid var(--color-primary)}.sandwich-list{display:flex;flex-direction:column;gap:var(--spacing-xs)}.sandwich-card{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-bg-card);border:2px solid var(--color-border);border-radius:var(--radius);width:100%;cursor:pointer;font-size:1rem;text-align:left;transition:border-color .15s,background .15s;min-height:48px}.sandwich-card:active{transform:scale(.98)}.sandwich-card.selected{border-color:var(--color-primary);background:var(--color-bg-selected)}.sandwich-card-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.sandwich-card-name{font-weight:600;font-size:.9375rem;color:var(--color-text)}.sandwich-card-desc{font-size:.8125rem;color:var(--color-text-muted)}.sandwich-card-price{font-weight:700;font-size:.9375rem;color:var(--color-primary);flex-shrink:0}.beverages-page{max-width:var(--max-width);margin:0 auto}.beverages-page-title{font-size:1.25rem;color:var(--color-text);margin:0 0 var(--spacing-md) 0}.beverages-loading{text-align:center;padding:var(--spacing-xl);color:var(--color-text-muted);font-size:.875rem}.beverage-selected-preview{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-sm) var(--spacing-md);background:var(--color-bg-selected);border:2px solid var(--color-primary);border-radius:var(--radius);margin-bottom:var(--spacing-md)}.beverage-selected-name{font-weight:600;font-size:.9375rem;color:var(--color-text)}.beverage-selected-price{font-weight:700;font-size:.9375rem;color:var(--color-primary)}.beverages-section{margin-bottom:var(--spacing-lg)}.beverages-section-title{display:flex;align-items:center;gap:var(--spacing-xs);font-size:1rem;font-weight:600;color:var(--color-text);margin:0 0 var(--spacing-sm) 0;padding-bottom:var(--spacing-xs);border-bottom:2px solid var(--color-primary)}.beverages-list{display:flex;flex-direction:column;gap:var(--spacing-xs)}.beverage-card{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-bg-card);border:2px solid var(--color-border);border-radius:var(--radius);width:100%;cursor:pointer;font-size:1rem;text-align:left;transition:border-color .15s,background .15s;min-height:48px}.beverage-card:active{transform:scale(.98)}.beverage-card.selected{border-color:var(--color-primary);background:var(--color-bg-selected)}.beverage-card-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.beverage-card-name{font-weight:600;font-size:.9375rem;color:var(--color-text)}.beverage-card-desc{font-size:.8125rem;color:var(--color-text-muted)}.beverage-card-price{font-weight:700;font-size:.9375rem;color:var(--color-primary);flex-shrink:0}.extras-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--spacing-xs)}.extras-item{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-xs) var(--spacing-md);background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius)}.extras-item-name{font-size:.9375rem;color:var(--color-text)}.extras-item-price{font-weight:600;font-size:.875rem;color:var(--color-text-muted)}.extras-list li{list-style:none;margin:0;padding:0}.extra-toggle{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-bg-card);border:2px solid var(--color-border);border-radius:var(--radius);width:100%;cursor:pointer;font-size:1rem;text-align:left;transition:border-color .15s,background .15s;min-height:48px}.extra-toggle:active{transform:scale(.98)}.extra-toggle.selected{border-color:var(--color-primary);background:var(--color-bg-selected)}.extra-toggle-icon{font-size:1.25rem;font-weight:700;color:var(--color-text-muted);flex-shrink:0;width:24px;text-align:center}.extra-toggle.selected .extra-toggle-icon{color:var(--color-primary)}.extra-toggle-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.extra-toggle-name{font-weight:600;font-size:.9375rem;color:var(--color-text)}.extra-toggle-desc{font-size:.8125rem;color:var(--color-text-muted)}.extra-toggle-price{font-weight:700;font-size:.9375rem;color:var(--color-primary);flex-shrink:0}.ordering-blocker{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-danger-bg);border:1px solid var(--color-danger);border-radius:var(--radius);margin:var(--spacing-md) 0}.ordering-blocker.is-warning{background:var(--color-warning-bg);border-color:var(--color-warning)}.ordering-blocker-icon{font-size:1.25rem;flex-shrink:0}.ordering-blocker-text{font-size:.875rem;color:var(--color-text)}.configurator-section{margin-top:var(--spacing-lg);padding:var(--spacing-md);background:var(--color-bg-card);border:2px solid var(--color-primary);border-radius:var(--radius)}.configurator-title{font-size:1rem;font-weight:600;color:var(--color-text);margin:0 0 var(--spacing-sm) 0;padding-bottom:var(--spacing-xs);border-bottom:2px solid var(--color-primary)}.configurator-extras{margin-bottom:var(--spacing-sm)}.configurator-extras-label{font-size:.8125rem;font-weight:600;color:var(--color-text-muted);display:block;margin-bottom:var(--spacing-xs)}.configurator-extras-list{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}.configurator-extra-chip{display:inline-flex;align-items:center;gap:4px;padding:4px var(--spacing-xs);background:var(--color-bg-selected);border:1px solid var(--color-primary);border-radius:999px;font-size:.8125rem;color:var(--color-text)}.configurator-extra-price{font-weight:600;color:var(--color-primary)}.configurator-label{display:block;font-size:.8125rem;font-weight:600;color:var(--color-text-muted);margin-bottom:var(--spacing-xs)}.configurator-comment{width:100%;padding:var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--radius);font-size:.9375rem;font-family:inherit;resize:vertical;color:var(--color-text);background:var(--color-bg);margin-bottom:var(--spacing-md)}.configurator-comment:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary)}.configurator-total{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-sm) 0;border-bottom:2px solid var(--color-border);margin-bottom:var(--spacing-md)}.configurator-total-label{font-size:1rem;font-weight:600;color:var(--color-text)}.configurator-total-value{font-size:1.125rem;font-weight:700;color:var(--color-primary)}.order-button{width:100%;margin-top:var(--spacing-sm);padding:var(--spacing-sm);font-size:1rem;font-weight:600}.configurator-error{margin-top:var(--spacing-sm);padding:var(--spacing-sm);background:var(--color-danger-bg);border:1px solid var(--color-danger);border-radius:var(--radius);font-size:.875rem;color:var(--color-danger)}.configurator-result{margin-top:var(--spacing-sm);padding:var(--spacing-sm);background:var(--color-success-bg);border:1px solid var(--color-success);border-radius:var(--radius);font-size:.875rem;color:var(--color-text)}.configurator-service-date{margin-top:var(--spacing-xs);font-size:.8125rem;color:var(--color-text-muted);font-style:italic}.configurator-reset{margin-top:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);background:none;border:1px solid var(--color-border);border-radius:var(--radius);font-size:.8125rem;color:var(--color-text-muted);cursor:pointer}.configurator-reset:hover{border-color:var(--color-primary);color:var(--color-primary)}.confirmation-section{display:flex;flex-direction:column;align-items:center;padding:var(--spacing-lg) var(--spacing-md);background:var(--color-bg-card);border:1px solid var(--color-success);border-radius:var(--radius);margin-top:var(--spacing-md)}.confirmation-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:var(--color-success);color:var(--color-on-success);border-radius:50%;font-size:1.5rem;font-weight:700;margin-bottom:var(--spacing-sm)}.confirmation-title{font-size:1.125rem;font-weight:600;color:var(--color-text);margin:0 0 var(--spacing-xs)}.confirmation-service-date{font-size:.875rem;color:var(--color-text-muted);margin:0 0 var(--spacing-sm)}.confirmation-stats{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-md);width:100%}.confirmation-counter,.confirmation-total{flex:1;display:flex;flex-direction:column;align-items:center;padding:var(--spacing-sm);background:var(--color-bg-card-hover);border-radius:var(--radius)}.confirmation-counter-label,.confirmation-total-label{font-size:.75rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.confirmation-counter-value,.confirmation-total-value{font-size:1.5rem;font-weight:700;color:var(--color-primary)}.confirmation-actions{display:flex;flex-direction:column;gap:var(--spacing-xs);width:100%}.confirmation-another-button{width:100%;margin:0;padding:var(--spacing-sm);font-size:1rem;font-weight:600;background:var(--color-primary);color:var(--color-on-primary);border:2px solid var(--color-primary);border-radius:var(--radius);cursor:pointer}.confirmation-another-button:hover{background:var(--color-primary-dark);border-color:var(--color-primary-dark)}.confirmation-another-button.is-loading{opacity:.7;cursor:not-allowed}.confirmation-finalize-button{width:100%;margin:0;padding:var(--spacing-sm);font-size:.875rem;font-weight:500;background:transparent;color:var(--color-text-muted);border:1px solid var(--color-border);border-radius:var(--radius);cursor:pointer}.confirmation-finalize-button:hover{border-color:var(--color-primary);color:var(--color-primary)}.current-order-page{max-width:480px;margin:0 auto}.current-order-loading,.current-order-empty{text-align:center;padding:3rem 1rem;color:var(--color-text-muted)}.current-order-header{background:var(--color-bg-card);border-radius:var(--radius);padding:1.25rem;margin-bottom:1rem;border:1px solid var(--color-border)}.current-order-title{font-size:1.25rem;font-weight:600;margin:0 0 .5rem}.current-order-date{font-size:.875rem;color:var(--color-text-muted);margin:0 0 .5rem}.current-order-status-badge{display:inline-block;padding:.25rem .75rem;border-radius:999px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.025em}.current-order-items{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.current-order-line{background:var(--color-bg-card);border-radius:var(--radius);padding:1rem;border:1px solid var(--color-border)}.current-order-line--cancelled{opacity:.6;text-decoration:line-through}.current-order-line-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.5rem}.current-order-line-type{font-size:1.25rem;line-height:1}.current-order-line-name{font-weight:600;font-size:1rem;flex:1}.current-order-line-price{font-weight:600;font-size:.9375rem;white-space:nowrap}.current-order-line-extras{display:flex;flex-wrap:wrap;gap:.375rem;margin-bottom:.5rem}.current-order-line-extra{background:var(--color-bg-muted);border-radius:999px;padding:.125rem .625rem;font-size:.75rem;color:var(--color-text-muted)}.current-order-line-comment{font-size:.8125rem;color:var(--color-text-muted);font-style:italic;margin:.25rem 0 0}.current-order-line-status{display:inline-block;padding:.125rem .5rem;border-radius:999px;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.025em}.line-PENDING{background:var(--color-status-pending-bg);color:var(--color-status-pending-fg)}.line-IN_PREPARATION{background:var(--color-status-preparing-bg);color:var(--color-status-preparing-fg)}.line-COMPLETED{background:var(--color-status-completed-bg);color:var(--color-status-completed-fg)}.line-CANCELLED{background:var(--color-status-neutral-bg);color:var(--color-status-neutral-fg)}.current-order-footer{background:var(--color-bg-card);border-radius:var(--radius);padding:1rem;border:1px solid var(--color-border);display:flex;justify-content:space-between;align-items:center}.current-order-total-label{font-weight:600;font-size:.9375rem;color:var(--color-text-muted)}.current-order-total-value{font-weight:700;font-size:1.125rem}.pending-page,.profile-page{text-align:center;padding:3rem 1rem}.pending-page h1,.profile-page h1{font-size:1.25rem;font-weight:600;margin:0 0 .75rem}.pending-page p,.profile-page p{color:var(--color-text-muted);font-size:.9375rem;margin:0}.current-order-line-actions{display:flex;gap:.5rem;margin-top:.75rem}.order-item-modify-button,.order-item-delete-button{flex:1;min-height:40px;padding:.5rem .75rem;border-radius:var(--radius);font-size:.875rem;font-weight:600;cursor:pointer;border:1px solid var(--color-border)}.order-item-modify-button{background:var(--color-bg-selected);color:var(--color-primary);border-color:var(--color-primary)}.order-item-delete-button{background:var(--color-danger-bg);color:var(--color-danger);border-color:var(--color-danger)}.order-header-cancel{margin-top:.75rem;display:flex;flex-direction:column;gap:.5rem}.order-header-cancel-button{width:100%}.edit-line-panel{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius);padding:1rem;margin-top:1rem}.edit-line-loading{color:var(--color-text-muted);text-align:center}.edit-line-title{font-size:1.125rem;font-weight:600;margin:0 0 1rem}.edit-line-section{margin-bottom:1rem}.edit-line-section-title{font-size:.875rem;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.025em;margin:0 0 .5rem}.edit-line-list{display:flex;flex-direction:column;gap:.5rem}.edit-line-extras{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.edit-line-empty{color:var(--color-text-muted);font-size:.875rem;margin:0}.edit-line-actions{display:flex;gap:.75rem;margin-top:1rem}.edit-line-actions .btn{flex:1;min-height:44px}.edit-error{color:var(--color-error-text);background:var(--color-error-bg);border:1px solid var(--color-error-border);border-radius:var(--radius);padding:.625rem .75rem;font-size:.875rem;margin:.75rem 0 0}.edit-conflict-banner{background:var(--color-warning-bg);color:var(--color-warning);border:1px solid var(--color-warning);border-radius:var(--radius);padding:.625rem .75rem;font-size:.875rem;margin:.75rem 0 0}.profile-page{max-width:480px;margin:0 auto;padding:var(--space) var(--space);gap:1.25rem;display:flex;flex-direction:column}.profile-header{text-align:center;margin-bottom:.25rem}.profile-header h1{font-size:1.5rem;font-weight:700;margin:0 0 .125rem;color:var(--color-text)}.profile-header p{font-size:.875rem;color:var(--color-text-muted);margin:0 0 .5rem}.role-badges{display:flex;justify-content:center;gap:.375rem;flex-wrap:wrap}.role-badge{display:inline-block;background:var(--color-primary);color:var(--color-on-primary);font-size:.6875rem;font-weight:600;padding:.125rem .5rem;border-radius:999px;text-transform:uppercase;letter-spacing:.03em}.profile-loading{text-align:center;color:var(--color-text-muted);padding:2rem 0}.btn-refresh{display:inline-block;margin:.75rem auto 0;padding:.5rem 1.25rem;background:var(--color-primary);color:var(--color-on-primary);border:none;border-radius:var(--radius);font-size:.875rem;cursor:pointer}.btn-refresh:hover{background:var(--color-primary-hover)}.profile-debt-summary{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:1rem}.profile-debt-summary h2{font-size:1rem;font-weight:600;margin:0 0 .75rem;color:var(--color-text)}.profile-debt-amount{text-align:center;font-size:2rem;font-weight:700;line-height:1.1;font-variant-numeric:tabular-nums;color:var(--color-primary);margin:0 0 .875rem}.profile-debt-amount--advisory{color:var(--color-warning)}.profile-debt-amount--blocked{color:var(--color-danger)}.progress-bar{position:relative;width:100%;height:8px;background:var(--color-border);border-radius:999px;overflow:hidden}.progress-fill{height:100%;background:var(--color-success);transition:width .3s ease}.progress-bar--advisory .progress-fill{background:var(--color-warning)}.progress-bar--blocked .progress-fill{background:var(--color-danger)}.progress-bar-labels{display:flex;justify-content:space-between;font-size:.75rem;color:var(--color-text-muted);margin-top:.375rem}.advisory-banner{background:var(--color-warning-bg);color:var(--color-warning);border:1px solid var(--color-warning);border-radius:var(--radius);padding:.625rem .75rem;font-size:.875rem;margin-top:.75rem;text-align:center}.blocked-banner{background:var(--color-error-bg);color:var(--color-error-text);border:1px solid var(--color-error-border);border-radius:var(--radius);padding:.625rem .75rem;font-size:.875rem;margin-top:.75rem;text-align:center}.profile-breakdown{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:1rem}.profile-breakdown h2{font-size:1rem;font-weight:600;margin:0 0 .75rem;color:var(--color-text)}.breakdown-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}.breakdown-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius);padding:.75rem .5rem;text-align:center;display:flex;flex-direction:column;gap:.25rem}.breakdown-label{font-size:.6875rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.03em;font-weight:500}.breakdown-value{font-size:.9375rem;font-weight:600;color:var(--color-text)}.profile-last-payment{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:1rem}.profile-last-payment h2{font-size:1rem;font-weight:600;margin:0 0 .5rem;color:var(--color-text)}.last-payment-details{display:flex;flex-direction:column;gap:.25rem}.last-payment-type{font-size:.8125rem;font-weight:600;color:var(--color-primary)}.last-payment-amount{font-size:1rem;font-weight:700;color:var(--color-text)}.last-payment-date{font-size:.75rem;color:var(--color-text-muted)}.last-payment-comment{font-size:.8125rem;color:var(--color-text-muted);margin:.25rem 0 0;font-style:italic}.profile-payment-history{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:1rem}.profile-payment-history h2{font-size:1rem;font-weight:600;margin:0 0 .75rem;color:var(--color-text)}.payment-list{display:flex;flex-direction:column;gap:.5rem}.payment-item{display:flex;align-items:center;gap:.5rem;padding:.5rem 0;border-bottom:1px solid var(--color-border);font-size:.8125rem}.payment-item:last-child{border-bottom:none}.payment-date{flex-shrink:0;color:var(--color-text-muted);min-width:3.5rem}.payment-badge{display:inline-block;font-size:.6875rem;font-weight:600;padding:.125rem .5rem;border-radius:999px;text-transform:uppercase;letter-spacing:.03em;flex-shrink:0}.payment-badge--payment{background:var(--color-success-bg);color:var(--color-success)}.payment-badge--adjustment{background:var(--color-warning-bg);color:var(--color-warning)}.payment-badge--reversal{background:var(--color-error-bg);color:var(--color-error-text)}.payment-amount{font-weight:600;margin-left:auto;flex-shrink:0}.payment-amount--positive{color:var(--color-success)}.payment-amount--negative{color:var(--color-error-text)}.payment-comment{font-size:.75rem;color:var(--color-text-muted);font-style:italic;margin-top:.125rem}.empty-text{color:var(--color-text-muted);font-size:.875rem;text-align:center;padding:1rem 0}.history-page{max-width:var(--max-width);margin:0 auto;padding:var(--spacing-md)}.profile-back-link{display:inline-block;margin:0 0 var(--spacing-md);font-size:.875rem;color:var(--color-primary);text-decoration:none}.profile-back-link:hover{text-decoration:underline}.order-date-filter{display:flex;flex-direction:column;gap:var(--spacing-sm);padding:var(--spacing-md);background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius);margin-bottom:var(--spacing-md)}.order-date-filter label{display:flex;flex-direction:column;gap:var(--spacing-xs);font-size:.875rem;font-weight:600}.order-date-filter input[type=date]{padding:var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-input-bg);font-size:1rem}.order-date-filter button{align-self:flex-start;padding:var(--spacing-sm) var(--spacing-md);font-size:.875rem;color:var(--color-danger);background:var(--color-danger-bg);border:1px solid var(--color-border);border-radius:var(--radius);cursor:pointer}.order-date-filter .filter-info{margin:0;font-size:.75rem;color:var(--color-text-muted)}.order-history-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.order-history-item{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);overflow:hidden}.order-history-row{display:flex;align-items:center;gap:var(--spacing-sm);width:100%;padding:var(--spacing-sm) var(--spacing-md);background:transparent;border:none;cursor:pointer;font-size:.875rem;text-align:left;flex-wrap:wrap}.order-history-date{font-weight:600}.order-history-total{margin-left:auto;font-weight:600;color:var(--color-primary-dark)}.order-history-count{font-size:.75rem;color:var(--color-text-muted)}.order-history-arrow{color:var(--color-text-muted)}.order-status-badge,.status-PENDING,.status-IN_PREPARATION,.status-COMPLETED,.status-CANCELLED{display:inline-block;padding:.25rem .75rem;border-radius:999px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.025em}.status-PENDING{background:var(--color-status-pending-bg);color:var(--color-status-pending-fg)}.status-IN_PREPARATION{background:var(--color-status-preparing-bg);color:var(--color-status-preparing-fg)}.status-COMPLETED{background:var(--color-status-completed-bg);color:var(--color-status-completed-fg)}.status-CANCELLED{background:var(--color-status-cancelled-bg);color:var(--color-status-cancelled-fg)}.order-history-details-wrap{border-top:1px solid var(--color-border);padding:var(--spacing-md)}.order-history-details-header{display:flex;align-items:center;gap:var(--spacing-sm);flex-wrap:wrap;font-size:.875rem;color:var(--color-text-muted);margin-bottom:var(--spacing-sm)}.order-history-details{display:flex;flex-direction:column;gap:var(--spacing-sm)}.order-line{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--spacing-sm)}.order-line-top{display:flex;align-items:center;gap:var(--spacing-sm);flex-wrap:wrap}.line-type{padding:.125rem .5rem;border-radius:999px;font-size:.75rem;font-weight:600;background:var(--color-bg-selected);color:var(--color-primary-dark)}.order-line-name{font-weight:600}.order-line-meta{display:flex;justify-content:space-between;font-size:.875rem;color:var(--color-text-muted);margin-top:var(--spacing-xs)}.order-line-extras{list-style:none;padding:0;margin:var(--spacing-xs) 0 0}.order-line-extra{font-size:.75rem;color:var(--color-text-muted)}.order-line-comment{margin:var(--spacing-xs) 0 0;font-size:.75rem;font-style:italic;color:var(--color-text-muted)}.order-history-details-footer{display:flex;justify-content:space-between;font-weight:600;margin-top:var(--spacing-sm)}.pagination-controls{display:flex;align-items:center;flex-wrap:wrap;gap:var(--spacing-sm);margin-top:var(--spacing-md)}.pagination-info{flex:1 1 100%;margin:0;font-size:.75rem;color:var(--color-text-muted)}.pagination-btn{padding:var(--spacing-sm) var(--spacing-md);font-size:.875rem;font-weight:600;color:var(--color-primary);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);cursor:pointer}.pagination-btn:disabled{opacity:.5;cursor:not-allowed}.history-empty{color:var(--color-text-muted);font-size:.875rem;text-align:center;padding:var(--spacing-lg) 0}.history-loading{color:var(--color-text-muted);font-size:.875rem;text-align:center;padding:var(--spacing-md) 0}.btn-refresh{margin-top:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);font-size:.875rem;color:var(--color-primary);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);cursor:pointer}.profile-history-link{display:block;text-align:center;margin-top:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);font-size:.875rem;font-weight:600;color:var(--color-primary);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);text-decoration:none}.admin-dashboard,.admin-panel-page{max-width:var(--max-width);margin:0 auto;display:flex;flex-direction:column;gap:var(--spacing-md);padding-bottom:calc(var(--spacing-lg) * 2)}.admin-dashboard-header{text-align:center}.admin-dashboard-header .page-title{margin-bottom:var(--spacing-xs)}.admin-dashboard-subtitle{margin:0;font-size:.875rem}.admin-dashboard-error{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md)}.admin-dashboard-error .error-banner{width:100%}.admin-stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-sm)}@media(min-width:768px){.admin-stats-grid{grid-template-columns:repeat(3,1fr)}}.admin-stats-grid.admin-stats-grid--single{grid-template-columns:1fr}.stat-card{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-md);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);min-height:88px;gap:2px}.stat-card-value{font-size:1.75rem;font-weight:700;color:var(--color-primary);line-height:1}.stat-card-label{font-size:.75rem;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;text-align:center}.stat-card-hint{font-size:.6875rem;color:var(--color-text-muted)}.stat-card--money .stat-card-value{font-size:1.25rem;white-space:nowrap}.stat-card--money .stat-card-hint{white-space:nowrap}.admin-loading{text-align:center;padding:var(--spacing-xl);color:var(--color-text-muted);font-size:.875rem}.admin-hub-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.admin-hub-card{display:flex;align-items:center;gap:var(--spacing-sm);min-height:64px;padding:.85rem 1rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);color:inherit;text-decoration:none}.admin-hub-card:active{background:var(--color-bg-card-hover)}@media(hover:hover){.admin-hub-card:hover{background:var(--color-bg-card-hover)}}.admin-hub-card-main{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.admin-hub-card-title{font-size:1rem;font-weight:600;color:var(--color-text)}.admin-hub-card-desc{font-size:.8125rem;color:var(--color-text-muted)}.admin-hub-card-chevron{flex-shrink:0;color:var(--color-text-muted)}.admin-stats-back-link{margin-bottom:0}.admin-section{margin-top:var(--spacing-md)}.admin-section-title{display:flex;align-items:center;gap:var(--spacing-xs);font-size:1rem;font-weight:600;color:var(--color-text);margin:0 0 var(--spacing-sm) 0;padding-bottom:var(--spacing-xs);border-bottom:2px solid var(--color-primary)}.admin-year-selector{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.admin-year-selector-label{font-size:.875rem;font-weight:600;color:var(--color-text)}.admin-year-select{min-height:44px;padding:0 var(--spacing-sm);font:inherit;font-size:.9375rem;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);touch-action:manipulation}.admin-year-select:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.admin-year-select:disabled{opacity:.6}.admin-annual-grid{display:grid;grid-template-columns:1fr;gap:var(--spacing-sm)}@media(min-width:768px){.admin-annual-grid{grid-template-columns:repeat(2,1fr)}}.admin-annual-card{padding:var(--spacing-md);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);display:flex;flex-direction:column;gap:var(--spacing-xs)}.admin-annual-card-title{margin:0;font-size:.8125rem;font-weight:600;color:var(--color-text-muted);text-transform:uppercase}.admin-annual-empty{margin:0;font-size:.875rem;color:var(--color-text-muted);font-style:italic}.admin-stat-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--spacing-xs)}.admin-stat-list-item{display:flex;align-items:baseline;justify-content:space-between;gap:var(--spacing-sm);font-size:.9375rem}.admin-stat-list-name{color:var(--color-text);min-width:0;overflow-wrap:anywhere}.admin-stat-list-value{flex-shrink:0;font-weight:600;color:var(--color-primary);white-space:nowrap}.nav-item--disabled{opacity:.4;cursor:not-allowed;border:none;background:transparent;font-family:inherit}.nav-item--disabled,.nav-item--disabled.active{color:var(--color-text-muted)}.admin-catalog-page{max-width:var(--max-width);margin:0 auto;display:flex;flex-direction:column;gap:var(--spacing-md);padding-bottom:calc(var(--spacing-lg) * 2)}.admin-catalog-header{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-sm)}.admin-catalog-header .page-title{margin:0 0 2px;text-align:left;font-size:1.25rem}.admin-catalog-header .admin-dashboard-subtitle{margin:0;text-align:left}.admin-catalog-filters{display:flex;gap:var(--spacing-xs);padding:2px;background:var(--color-border);border-radius:6px;overflow-x:auto}.admin-catalog-filter-groups{display:flex;flex-direction:column;gap:var(--spacing-sm)}.admin-catalog-filter{flex:1 1 auto;min-height:36px;padding:var(--spacing-xs) var(--spacing-md);border:none;border-radius:4px;background:transparent;color:var(--color-text-muted);font-size:.8125rem;font-weight:500;cursor:pointer;white-space:nowrap;transition:all .15s}.admin-catalog-filter.active{background:var(--color-surface);color:var(--color-primary);font-weight:600;box-shadow:0 1px 2px #0000000f}.admin-catalog-table-wrap{overflow-x:auto}.admin-catalog-table{width:100%;border-collapse:collapse;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);min-width:720px}.admin-catalog-table th,.admin-catalog-table td{padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid var(--color-border);text-align:left;vertical-align:middle;font-size:.8125rem}.admin-catalog-table th{font-size:.75rem;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.03em;background:var(--color-bg-card)}.admin-catalog-table tbody tr:last-child td{border-bottom:none}.admin-catalog-name{font-weight:600}.admin-catalog-desc{max-width:220px;color:var(--color-text-muted)}.admin-catalog-badge{display:inline-block;padding:.125rem .5rem;border-radius:999px;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.admin-catalog-badge.is-active{background:var(--color-success-bg);color:var(--color-success)}.admin-catalog-badge.is-inactive{background:var(--color-danger-bg);color:var(--color-danger)}.admin-catalog-actions{display:flex;gap:var(--spacing-sm);flex-wrap:wrap}.admin-catalog-actions .btn{min-height:36px;padding:var(--spacing-xs) var(--spacing-md);font-size:.8125rem}.admin-catalog-empty{text-align:center;padding:var(--spacing-xl);color:var(--color-text-muted);font-size:.875rem}.admin-catalog-cards{display:flex;flex-direction:column;gap:var(--spacing-sm)}.admin-catalog-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-sm)}.admin-catalog-card-header{display:flex;justify-content:space-between;align-items:center}.admin-catalog-card-type{display:flex;align-items:center;gap:var(--spacing-xs);font-size:.75rem;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.03em}.admin-catalog-card-body{display:flex;flex-direction:column;gap:var(--spacing-xs)}.admin-catalog-card-name{font-size:1rem;font-weight:600;color:var(--color-text);margin:0}.admin-catalog-card-desc{font-size:.8125rem;color:var(--color-text-muted);margin:0}.admin-catalog-card-meta{display:flex;align-items:center;gap:var(--spacing-md)}.admin-catalog-card-price{font-size:1rem;font-weight:700;color:var(--color-text)}.admin-catalog-card-order{font-size:.75rem;color:var(--color-text-muted)}.admin-catalog-card-actions{display:flex;gap:var(--spacing-sm);padding-top:var(--spacing-xs);border-top:1px solid var(--color-border)}.admin-catalog-card-actions .btn{flex:1;min-height:40px}@media(min-width:768px){.admin-catalog-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-md)}}.admin-catalog-form-panel{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--spacing-md)}.admin-catalog-form-title{font-size:1rem;font-weight:600;color:var(--color-text);margin:0 0 var(--spacing-md) 0}.admin-catalog-form,.admin-catalog-form-grid{display:flex;flex-direction:column;gap:var(--spacing-md)}.admin-catalog-form-row{display:flex;gap:var(--spacing-sm);justify-content:flex-end;align-items:center}.admin-catalog-form-row .btn{flex:1;min-height:44px}.admin-catalog-form-grid .form-group select,.admin-catalog-form-grid select.catalog-select,.catalog-select{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius);font-size:1rem;background:var(--color-input-bg);min-height:44px;transition:border-color .15s}.catalog-textarea{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius);font-size:1rem;font-family:inherit;background:var(--color-input-bg);resize:vertical;transition:border-color .15s}.catalog-select:focus,.catalog-textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-ring)}.admin-catalog-checkbox{display:flex;align-items:center;gap:var(--spacing-sm);font-size:.9375rem;font-weight:500;cursor:pointer}.admin-catalog-checkbox input{width:20px;height:20px;accent-color:var(--color-primary)}@media(min-width:768px){.admin-catalog-form-grid{display:grid;grid-template-columns:repeat(2,1fr);align-items:start}}.admin-users-page{max-width:var(--max-width);margin:0 auto;display:flex;flex-direction:column;gap:var(--spacing-md);padding-bottom:calc(var(--spacing-lg) * 2)}.admin-users-filters{display:flex;flex-direction:column;gap:var(--spacing-sm)}.admin-users-search{display:flex;gap:var(--spacing-sm)}.admin-users-search input{flex:1 1 auto;min-width:0;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius);font-size:1rem;font-family:inherit;background:var(--color-input-bg);min-height:44px;transition:border-color .15s}.admin-users-search input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-ring)}.admin-users-search .btn{flex:0 0 auto;min-height:44px}.admin-users-roles-cell{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}.admin-users-role-badge{display:inline-block;padding:.125rem .5rem;border-radius:999px;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.admin-users-role-badge.is-user{background:var(--color-bg-muted);color:var(--color-text-muted)}.admin-users-role-badge.is-company{background:var(--color-success-bg);color:var(--color-success)}.admin-users-role-badge.is-admin{background:var(--color-danger-bg);color:var(--color-danger)}.admin-users-password-panel{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--spacing-md)}.admin-users-roles-group{display:flex;flex-direction:column;gap:var(--spacing-sm)}.admin-users-roles-group .admin-catalog-checkbox{min-height:44px}.admin-payments-page{max-width:var(--max-width);margin:0 auto;display:flex;flex-direction:column;gap:var(--spacing-md);padding-bottom:calc(var(--spacing-lg) * 2)}.admin-payments-search-block{display:flex;flex-direction:column;gap:var(--spacing-sm)}.admin-payments-search{display:flex;gap:var(--spacing-sm)}.admin-payments-search input{flex:1 1 auto;min-width:0;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius);font-size:1rem;font-family:inherit;background:var(--color-input-bg);min-height:44px;transition:border-color .15s}.admin-payments-search input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-ring)}.admin-payments-search .btn{flex:0 0 auto;min-height:44px}.admin-payments-search-results{display:flex;flex-direction:column;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);overflow:hidden}.admin-payments-search-result{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-sm);width:100%;min-height:48px;padding:var(--spacing-sm) var(--spacing-md);border:none;border-bottom:1px solid var(--color-border);background:transparent;color:var(--color-text);font-family:inherit;font-size:.9375rem;text-align:left;cursor:pointer;transition:background-color .15s}.admin-payments-search-result:last-child{border-bottom:none}.admin-payments-search-result:hover{background:var(--color-bg-card-hover)}.admin-payments-search-result:active,.admin-payments-search-result:focus-visible{background:var(--color-bg-muted)}.admin-payments-user{display:flex;flex-direction:column;gap:2px;min-width:0}.admin-payments-user-secondary{font-size:.75rem;color:var(--color-text-muted)}.admin-payments-selected{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--spacing-sm);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--spacing-sm) var(--spacing-md)}.admin-payments-selected .btn{min-height:44px}.admin-payments-debt-card{display:flex;flex-direction:column;gap:var(--spacing-sm);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--spacing-md)}.admin-payments-debt-card.is-advisory{border-color:var(--color-warning);background:var(--color-warning-bg)}.admin-payments-debt-card.is-blocked{border-color:var(--color-error-border);background:var(--color-error-bg)}.admin-payments-debt-title{font-size:1rem;font-weight:600;color:var(--color-text);margin:0}.admin-payments-debt-value{font-size:1.75rem;font-weight:700;line-height:1;color:var(--color-primary)}.admin-payments-debt-card.is-advisory .admin-payments-debt-value{color:var(--color-warning)}.admin-payments-debt-card.is-blocked .admin-payments-debt-value{color:var(--color-danger)}.payment-badge--reversed{background:var(--color-bg-muted);color:var(--color-text-muted)}.admin-payments-form-panel .admin-payments-type-block{display:flex;flex-direction:column;gap:var(--spacing-xs)}.admin-payments-type-label{font-size:.875rem;font-weight:500}.admin-payments-type-group{display:flex;gap:var(--spacing-sm)}.admin-payments-type-option{flex:1 1 0;display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);min-height:44px;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-input-bg);color:var(--color-text);font-size:.9375rem;font-weight:500;cursor:pointer;transition:border-color .15s,background-color .15s}.admin-payments-type-option input{width:20px;height:20px;accent-color:var(--color-primary);flex-shrink:0}.admin-payments-type-option:has(input:checked){border-color:var(--color-primary);background:var(--color-bg-selected);color:var(--color-primary-dark)}.admin-payments-field-hint{font-size:.75rem;color:var(--color-text-muted);margin-top:calc(var(--spacing-sm) * -1)}.admin-payments-movements{display:flex;flex-direction:column;gap:var(--spacing-sm)}.admin-payments-section-error{display:flex;align-items:center;gap:var(--spacing-sm)}.admin-payments-section-error .error-banner{flex:1 1 auto;min-width:0}.admin-payments-comment{max-width:220px;color:var(--color-text-muted)}.admin-payments-date{white-space:nowrap}.admin-payments-movements .btn{min-height:44px}.admin-payments-reverse-btn{white-space:nowrap;min-width:92px}.admin-payments-reverse-btn.is-confirm{font-weight:700}@media(min-width:768px){.admin-payments-debt-card{gap:var(--spacing-xs)}}.auth{--auth-radius: 24px;--auth-input-radius: 10px;position:relative;isolation:isolate;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;overflow-x:hidden;background:var(--palette-paprika)}.auth-pattern{position:absolute;inset:-25%;z-index:0;display:grid;grid-template-columns:repeat(auto-fill,80px);grid-auto-rows:55px;justify-content:space-around;align-content:space-around;gap:28px 30px;overflow:hidden;transform:rotate(6deg);transform-origin:center;color:var(--palette-paprika-dark);opacity:.2;pointer-events:none;-webkit-user-select:none;user-select:none}.auth-pattern-motif{display:block;width:80px;height:55px}.auth-brand{position:relative;z-index:1;flex:0 0 auto;padding:calc(42px + env(safe-area-inset-top)) 24px 28px;display:flex;flex-direction:column;align-items:center;text-align:center}.auth-logo{width:96px;height:96px;display:grid;place-items:center;margin-bottom:24px;border-radius:50%;background:var(--palette-cream-100)}.auth-motif{display:block;width:62px;height:auto;color:var(--palette-paprika)}.auth-wordmark{margin:0;font-family:var(--font-hand);font-size:clamp(2.1rem,8vw,2.65rem);font-weight:400;line-height:1;letter-spacing:0;color:var(--palette-cream-100)}.auth-tagline{max-width:330px;margin:14px 0 0;font-size:1rem;line-height:1.45;color:var(--palette-cream-100)}.auth-sheet{position:relative;z-index:1;flex:1 1 auto;width:calc(100% - 36px);margin:0 18px calc(16px + env(safe-area-inset-bottom));padding:28px 24px 36px;background:var(--palette-paper);border:0;border-radius:var(--auth-radius);box-shadow:none}.auth-sheet .form-group input{min-height:48px;border-width:1.5px;border-radius:var(--auth-input-radius)}.auth-sheet .btn{min-height:48px;border-radius:var(--auth-input-radius)}.auth-sheet .btn-primary{background:var(--palette-ink);color:var(--color-on-primary)}.auth-sheet .btn-primary:not(:disabled):hover{background:var(--palette-paprika-dark)}.auth-sheet .error-banner{border-left:4px solid var(--color-danger);border-radius:10px;font-weight:500}.auth-sheet .btn:not(:disabled):active{transform:translateY(1px)}@keyframes auth-rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.auth-logo,.auth-wordmark{animation:auth-rise .26s ease-out both}.auth-tagline{animation:auth-rise .26s ease-out 70ms both}.auth-sheet{animation:auth-rise .26s ease-out .13s both}@media(min-width:768px){.auth{justify-content:center;align-items:center;padding:48px 0}.auth-brand{width:100%;max-width:520px;padding:0 24px 32px}.auth-logo{width:112px;height:112px}.auth-motif{width:72px}.auth-tagline{max-width:390px}.auth-sheet{flex:0 0 auto;width:min(calc(100% - 64px),520px);min-height:420px;margin:0;padding:32px}}@media(prefers-reduced-motion:reduce){.auth-logo,.auth-wordmark,.auth-tagline,.auth-sheet{animation:none}.auth-sheet .btn:not(:disabled):active{transform:none}.btn-spinner{animation-duration:1.6s}}.admin-settings-page{max-width:var(--max-width);margin:0 auto;display:flex;flex-direction:column;gap:var(--spacing-md);padding-bottom:calc(var(--spacing-lg) * 2)}.admin-settings-success{background:var(--color-success-bg);color:var(--color-success);border:1px solid var(--color-success);border-radius:var(--radius);padding:var(--spacing-sm) var(--spacing-md);font-size:.875rem}.admin-settings-form,.admin-settings-grid{display:flex;flex-direction:column;gap:var(--spacing-md)}.admin-settings-field{display:flex;flex-direction:column;gap:var(--spacing-xs)}.admin-settings-days{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.admin-settings-day-chip{position:relative;display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-input-bg);color:var(--color-text);font-size:.9375rem;font-weight:500;cursor:pointer;transition:border-color .15s,background-color .15s}.admin-settings-day-chip input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}.admin-settings-day-chip:has(input:checked){border-color:var(--color-primary);background:var(--color-bg-selected);color:var(--color-primary-dark)}.admin-settings-day-chip:has(input:focus-visible){box-shadow:0 0 0 3px var(--color-ring)}.admin-settings-switch{display:flex;align-items:center;gap:var(--spacing-sm);min-height:44px;font-size:.9375rem;font-weight:500;cursor:pointer}.admin-settings-switch input{position:absolute;width:1px;height:1px;opacity:0}.admin-settings-switch-track{position:relative;flex-shrink:0;width:48px;height:28px;border:1px solid var(--color-border);border-radius:999px;background:var(--color-bg-muted);transition:background-color .15s,border-color .15s}.admin-settings-switch-thumb{position:absolute;top:2px;left:2px;width:22px;height:22px;border-radius:50%;background:var(--color-surface);box-shadow:0 1px 2px #00000026;transition:transform .15s}.admin-settings-switch input:checked+.admin-settings-switch-track{background:var(--color-primary);border-color:var(--color-primary)}.admin-settings-switch input:checked+.admin-settings-switch-track .admin-settings-switch-thumb{transform:translate(20px)}.admin-settings-switch input:focus-visible+.admin-settings-switch-track{box-shadow:0 0 0 3px var(--color-ring)}.admin-settings-switch input:disabled+.admin-settings-switch-track{opacity:.6;cursor:not-allowed}.admin-settings-readonly{display:flex;flex-direction:column;gap:2px;padding:var(--spacing-sm) var(--spacing-md);border:1px dashed var(--color-border);border-radius:var(--radius);background:var(--color-bg-muted);color:var(--color-text-muted);font-size:.9375rem}.admin-settings-readonly-value{font-weight:600;color:var(--color-text)}.admin-settings-readonly-note{font-size:.75rem}.admin-settings-exceptions{display:flex;flex-direction:column;gap:var(--spacing-sm)}.admin-settings-exception-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr) auto;gap:var(--spacing-xs);align-items:start}.admin-settings-exception-field{display:flex;flex-direction:column;gap:2px;min-width:0}.admin-settings-exception-field input{min-width:0;min-height:44px;padding:var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--radius);font-size:1rem;font-family:inherit;background:var(--color-input-bg);transition:border-color .15s}.admin-settings-exception-field input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-ring)}.admin-settings-exception-field input:disabled{opacity:.6;cursor:not-allowed}.admin-settings-exceptions .btn{min-height:44px}.admin-settings-exception-remove{white-space:nowrap}.admin-settings-exception-add{align-self:flex-start}.admin-settings-note{margin:0;font-size:.8125rem;color:var(--color-text-muted)}@media(max-width:375px){.admin-settings-day-chip{flex:1 1 auto}.admin-settings-exception-row{grid-template-columns:1fr}.admin-settings-exception-remove{width:100%}.admin-settings-exception-add{align-self:stretch}.admin-settings-exception-field input[type=date],.admin-settings-grid input[type=time]{width:100%}}.admin-day-page{max-width:var(--max-width);margin:0 auto;display:flex;flex-direction:column;gap:var(--spacing-md);padding-bottom:calc(var(--spacing-lg) * 2)}.admin-day-date-filter{display:grid;grid-template-columns:1fr auto;gap:var(--spacing-sm);align-items:end;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--spacing-md)}.admin-day-date-input-row{display:flex;flex-direction:column;gap:var(--spacing-xs);min-width:0}.admin-day-date-input-row label{font-size:.75rem;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.03em}.admin-day-date-input-row input[type=date]{min-height:44px;padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-input-bg);color:var(--color-text);font-family:inherit;font-size:1rem}.admin-day-date-buttons{display:flex;gap:var(--spacing-xs)}.admin-day-date-nav{min-width:44px;min-height:44px;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);color:var(--color-text);font-size:1.25rem;line-height:1;cursor:pointer}.admin-day-date-nav:hover:not(:disabled){background:var(--color-bg-card-hover)}.admin-day-date-nav:disabled,.admin-day-date-filter .btn:disabled{opacity:.5;cursor:not-allowed}.admin-day-date-filter .admin-day-date-today{min-height:44px}.admin-day-date-info{grid-column:1 / -1;display:flex;align-items:center;gap:var(--spacing-sm);flex-wrap:wrap}.admin-day-date-label{font-size:.875rem;font-weight:600;color:var(--color-text);text-transform:capitalize}.admin-day-nonservice{display:inline-block;padding:.125rem .5rem;border-radius:999px;font-size:.6875rem;font-weight:600;background:var(--color-warning-bg);color:var(--color-warning)}.admin-day-summary{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-sm)}.admin-day-filters{display:flex;flex-direction:column;gap:var(--spacing-sm)}.admin-day-filter-row{display:flex;align-items:center;gap:var(--spacing-sm)}.admin-day-filter-label{font-size:.8125rem;font-weight:600;color:var(--color-text-muted);min-width:4rem;flex-shrink:0}.admin-day-select{flex:1;min-height:40px;padding:var(--spacing-xs) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);color:var(--color-text);font-size:.875rem;font-family:inherit;cursor:pointer;appearance:auto}.admin-day-select:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-ring);outline:none}.admin-day-filters .admin-day-view-toggle{margin-top:var(--spacing-xs)}.admin-day-lines,.admin-day-section-error{display:flex;flex-direction:column;gap:var(--spacing-sm)}.admin-day-section-error .error-banner{width:100%}.admin-day-table-only{display:none}.admin-day-cards{display:flex;flex-direction:column;gap:var(--spacing-sm)}.admin-day-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-xs)}.admin-day-card-header{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-sm);flex-wrap:wrap}.admin-day-card-item{margin:0;font-weight:600;overflow-wrap:anywhere}@media(min-width:768px){.admin-day-summary{grid-template-columns:repeat(4,1fr)}.admin-day-table-only.admin-catalog-table-wrap{display:block}.admin-day-cards{display:none}}.admin-day-badges{display:inline-flex;align-items:center;gap:var(--spacing-xs);flex-wrap:wrap}.admin-day-status{display:inline-block;padding:.125rem .5rem;border-radius:999px;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.admin-day-status--pending{background:var(--color-warning-bg);color:var(--color-warning)}.admin-day-status--in-preparation{background:var(--color-bg-selected);color:var(--color-primary)}.admin-day-status--completed{background:var(--color-success-bg);color:var(--color-success)}.admin-day-status--cancelled{background:var(--color-error-bg);color:var(--color-error-text)}.admin-day-order-cancelled{display:inline-block;padding:.125rem .5rem;border-radius:999px;font-size:.6875rem;font-weight:600;background:var(--color-danger-bg);color:var(--color-danger)}.admin-day-admin-badge{display:inline-block;padding:.0625rem .375rem;border-radius:999px;font-size:.625rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;background:var(--color-bg-muted);color:var(--color-text-muted)}.admin-day-extras,.admin-day-comment{color:var(--color-text-muted);font-size:.8125rem;overflow-wrap:anywhere}.admin-day-quantity{font-weight:600}.admin-day-line-total{display:block;color:var(--color-text-muted);font-size:.75rem}@media(max-width:375px){.admin-day-date-filter{grid-template-columns:1fr}.admin-day-date-input-row input[type=date]{width:100%}.admin-day-date-buttons{grid-column:1 / -1}.admin-day-date-buttons .admin-day-date-today{flex:1}.admin-day-filters .admin-day-view-toggle{flex-wrap:wrap}.admin-day-comment,.admin-day-extras{word-break:break-word}}.admin-day-view-toggle .admin-catalog-filter{min-height:44px}.admin-day-groups{display:flex;flex-direction:column;gap:var(--spacing-md);min-width:0}.admin-day-group-section{display:flex;flex-direction:column;gap:var(--spacing-sm);min-width:0}.admin-day-group-section-title{margin:0;display:flex;align-items:center;gap:var(--spacing-xs);font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted)}.admin-day-group-section-count{display:inline-block;padding:.0625rem .375rem;border-radius:999px;font-size:.6875rem;font-weight:600;background:var(--color-bg-muted);color:var(--color-text-muted)}.admin-day-group{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);overflow-wrap:anywhere}.admin-day-group--all-cancelled{background:var(--color-bg-muted)}.admin-day-group>details>summary{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:var(--spacing-sm);min-height:44px;padding:var(--spacing-sm) var(--spacing-md);cursor:pointer;list-style:none}.admin-day-group>details>summary::-webkit-details-marker{display:none}.admin-day-group>details>summary:focus-visible{outline:2px solid var(--color-primary);outline-offset:-2px;border-radius:var(--radius)}.admin-day-group-heading{display:flex;flex-direction:column;gap:2px;min-width:0}.admin-day-group-name{font-weight:600;overflow-wrap:anywhere}.admin-day-group--all-cancelled .admin-day-group-name{color:var(--color-text-muted)}.admin-day-group-extras{color:var(--color-text-muted);font-size:.8125rem;overflow-wrap:anywhere}.admin-day-group-metrics{display:flex;flex-direction:column;align-items:flex-end;gap:2px;text-align:right}.admin-day-group-count{display:inline-block;padding:.125rem .625rem;border-radius:999px;font-size:1.125rem;font-weight:700;background:var(--color-bg-selected);color:var(--color-primary)}.admin-day-group--all-cancelled .admin-day-group-count{background:var(--color-border);color:var(--color-text-muted)}.admin-day-group-total{font-size:.8125rem;font-weight:600;color:var(--color-text-muted)}.admin-day-group-cancelled{font-size:.6875rem;font-weight:600;color:var(--color-danger)}.admin-day-group-chevron{align-self:center;color:var(--color-text-muted);font-size:.875rem;transition:transform .15s ease}.admin-day-group>details[open]>.admin-day-group-summary .admin-day-group-chevron{transform:rotate(180deg)}.admin-day-group-lines{list-style:none;margin:0;padding:0 var(--spacing-md) var(--spacing-sm);display:flex;flex-direction:column;min-width:0}.admin-day-group-line{display:flex;flex-direction:column;gap:var(--spacing-xs);padding:var(--spacing-sm) 0;border-top:1px solid var(--color-border);min-width:0}.admin-day-group-line-header{display:flex;align-items:baseline;justify-content:space-between;gap:var(--spacing-sm);flex-wrap:wrap;min-width:0}.admin-day-group-line-user{min-width:0;overflow-wrap:anywhere}.admin-day-group-line-amount{text-align:right;white-space:nowrap}.admin-day-group-line .admin-day-comment{word-break:break-word}@media(min-width:768px){.admin-day-group>details>summary{grid-template-columns:minmax(0,1fr) auto auto;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg)}.admin-day-group-lines{padding:0 var(--spacing-lg) var(--spacing-md)}}@media(max-width:375px){.admin-day-group>details>summary{padding:var(--spacing-sm);gap:var(--spacing-xs)}.admin-day-group-lines{padding:0 var(--spacing-sm) var(--spacing-sm)}.admin-day-group-count{font-size:1rem}.admin-day-group-extras{word-break:break-word}}.admin-day-status-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--spacing-xs);min-width:0;min-height:44px}.admin-day-status-actions .btn{flex:0 1 auto;min-height:44px;padding:var(--spacing-xs) var(--spacing-sm);font-size:.8125rem;white-space:nowrap}.admin-day-group-actions{justify-content:flex-end;min-width:0;padding:var(--spacing-sm) var(--spacing-md);border-top:1px solid var(--color-border);border-radius:0 0 var(--radius-lg) var(--radius-lg);background:var(--color-bg-card)}.admin-day-reason-panel{display:flex;flex-direction:column;gap:var(--spacing-sm);min-width:0;margin-top:var(--spacing-xs);padding:var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-bg-card)}.admin-day-reason-panel .catalog-textarea{width:100%;min-width:0;font-size:1rem}.admin-day-group>.admin-day-reason-panel{margin-top:0;padding:var(--spacing-sm) var(--spacing-md);border:none;border-top:1px solid var(--color-border);border-radius:0 0 var(--radius-lg) var(--radius-lg);background:var(--color-bg-card)}.admin-day-reason-actions{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);min-width:0}.admin-day-reason-actions .btn{flex:1 1 auto;min-height:44px;padding:var(--spacing-xs) var(--spacing-sm);font-size:.875rem}.admin-day-line-changed{margin:0;font-size:.75rem;color:var(--color-text-muted);overflow-wrap:anywhere}.admin-day-action-banner{position:relative;display:flex;align-items:center;gap:var(--spacing-sm);min-width:0;overflow:hidden;padding:var(--spacing-sm) var(--spacing-sm) var(--spacing-sm) calc(var(--spacing-md) + 4px);border:1px solid color-mix(in srgb,var(--color-success) 35%,var(--color-border));border-radius:var(--radius-lg);background:color-mix(in srgb,var(--color-success-bg) 72%,var(--color-surface));box-shadow:var(--shadow-soft);color:var(--color-success);font-size:.875rem;font-weight:600}.admin-day-action-banner:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:var(--palette-olive)}.admin-day-action-banner-text{flex:1 1 auto;min-width:0;overflow-wrap:anywhere}.admin-day-action-banner-close{flex:0 0 auto;display:grid;place-items:center;width:44px;height:44px;margin:calc(var(--spacing-sm) * -1) calc(var(--spacing-sm) * -1) calc(var(--spacing-sm) * -1) 0;border:none;border-radius:0 var(--radius-lg) var(--radius-lg) 0;background:none;color:inherit;font-size:1.375rem;line-height:1;cursor:pointer}.admin-day-action-banner-close:hover{background:color-mix(in srgb,var(--color-success) 12%,transparent)}@media(min-width:768px){.admin-day-group-actions{padding:var(--spacing-sm) var(--spacing-lg)}}:root{--space: var(--spacing-md);--radius: 12px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 22px;--shadow-soft: 0 1px 2px rgba(63, 45, 29, .04), 0 8px 24px rgba(63, 45, 29, .045);--shadow-raised: 0 2px 6px rgba(63, 45, 29, .06), 0 18px 42px rgba(63, 45, 29, .08)}html{background:var(--color-bg)}body,.layout{background-color:var(--color-bg);background-image:radial-gradient(44rem 28rem at 106% -8%,color-mix(in srgb,var(--palette-paprika) 6%,transparent),transparent 64%),radial-gradient(38rem 28rem at -12% 16%,color-mix(in srgb,var(--palette-olive) 6%,transparent),transparent 62%);background-attachment:fixed}body{letter-spacing:-.006em}.page-title,.catalog-page-title,.sandwich-page-title,.beverages-page-title,.profile-header h1,.profile-debt-summary h2,.profile-breakdown h2,.profile-last-payment h2,.profile-payment-history h2,.admin-payments-debt-title,.admin-catalog-form-title,.edit-line-title,.confirmation-title,.current-order-title{font-family:var(--font-display);font-weight:600;letter-spacing:-.018em}.page-title,.catalog-page-title,.sandwich-page-title,.beverages-page-title,.profile-header h1{line-height:1.12}.catalog-page-title,.sandwich-page-title,.beverages-page-title{font-size:1.55rem;margin-bottom:1.1rem}.profile-header h1{font-size:1.8rem}.header{min-height:52px;padding:10px 14px;background:color-mix(in srgb,var(--color-surface) 94%,transparent);border-bottom-color:color-mix(in srgb,var(--color-border) 82%,transparent);box-shadow:0 1px #553e2705;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.header-brand{display:inline-flex;align-items:center}.header-brand>svg{display:block;width:50px;height:35px}.header-username{color:var(--color-text-muted)}.header-logout,.btn-ghost{color:var(--color-text-muted);font-weight:500}.mode-selector{gap:1px;padding:3px;background:var(--palette-cream-200);border:1px solid color-mix(in srgb,var(--color-border) 85%,transparent);border-radius:10px}.mode-btn{min-height:28px;padding:3px 10px;border-radius:7px}.mode-btn.active{background:var(--color-surface);color:var(--color-text);box-shadow:0 1px 3px #3726181a}.layout-content{padding:18px 14px calc(94px + env(safe-area-inset-bottom))}.mobile-nav{left:8px;right:8px;bottom:calc(8px + env(safe-area-inset-bottom));padding:5px 4px;background:color-mix(in srgb,var(--color-surface) 96%,transparent);border:1px solid color-mix(in srgb,var(--color-border) 90%,transparent);border-radius:18px;box-shadow:var(--shadow-raised);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.nav-item{position:relative;min-height:42px;justify-content:center;padding:4px 9px;border-radius:11px;font-weight:500}.nav-pill{position:absolute;top:0;left:0;background:var(--color-primary);border-radius:11px;pointer-events:none;opacity:0;transition:transform .2s ease-out,width .2s ease-out,height .2s ease-out,opacity .15s ease-out}.nav-pill[data-snap]{transition-property:opacity}.nav-item.active{color:var(--color-bg-card)}.mobile-nav--admin{padding-left:5px;padding-right:5px}.mobile-nav--admin .nav-item{min-width:58px}.card,.profile-debt-summary,.profile-breakdown,.profile-last-payment,.profile-payment-history,.current-order-header,.current-order-line,.current-order-footer,.admin-payments-selected,.admin-payments-debt-card,.admin-catalog-form-panel,.admin-users-password-panel,.edit-line-panel,.admin-day-date-filter,.admin-day-card,.admin-day-group,.order-date-filter{border-color:color-mix(in srgb,var(--color-border) 88%,transparent);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft)}.form-group input,.admin-users-search input,.admin-payments-search input,.catalog-select,.catalog-textarea,.configurator-comment,.admin-settings-exception-field input,.admin-day-date-input-row input[type=date],.order-date-filter input[type=date]{border-radius:11px;border-color:color-mix(in srgb,var(--color-border) 92%,transparent);background:var(--color-surface)}.form-group input:focus,.admin-users-search input:focus,.admin-payments-search input:focus,.catalog-select:focus,.catalog-textarea:focus,.admin-settings-exception-field input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-ring)}.btn{border-radius:11px;letter-spacing:-.006em;transition:background-color .15s,border-color .15s,transform .12s,box-shadow .15s,opacity .15s}.btn:not(:disabled):active{transform:translateY(1px)}.btn-primary{box-shadow:0 5px 14px color-mix(in srgb,var(--color-primary) 18%,transparent)}.btn-primary:not(:disabled):hover{box-shadow:0 7px 18px color-mix(in srgb,var(--color-primary) 23%,transparent)}.btn-confirm{box-shadow:0 5px 14px color-mix(in srgb,var(--color-success) 20%,transparent)}.btn-confirm:not(:disabled):hover{box-shadow:0 7px 18px color-mix(in srgb,var(--color-success) 25%,transparent)}.catalog-group-title,.sandwich-section-title,.beverages-section-title,.configurator-title,.admin-section-title{font-family:var(--font-display);font-size:1.12rem;font-weight:600;letter-spacing:-.012em;border-bottom:1px solid color-mix(in srgb,var(--color-primary) 58%,var(--color-border));padding-bottom:7px;margin-bottom:9px}.catalog-group{margin-bottom:1.7rem}.catalog-group-items,.sandwich-list,.beverages-list,.extras-list{gap:0;overflow:hidden;background:color-mix(in srgb,var(--color-surface) 96%,var(--palette-cream-100));border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft)}.catalog-card,.sandwich-card,.beverage-card,.extra-toggle{position:relative;min-height:62px;padding:10px 13px;background:transparent;border:0;border-bottom:1px solid color-mix(in srgb,var(--color-border) 78%,transparent);border-radius:0}.catalog-card:last-child,.sandwich-card:last-child,.beverage-card:last-child,.extras-list li:last-child .extra-toggle,.extras-list>:last-child{border-bottom:0}.sandwich-card:hover,.beverage-card:hover,.extra-toggle:hover,.catalog-card:hover{background:color-mix(in srgb,var(--palette-cream-100) 70%,transparent)}.sandwich-card.selected,.beverage-card.selected,.extra-toggle.selected{background:var(--color-bg-selected);box-shadow:inset 3px 0 0 var(--color-primary)}.catalog-card-name,.sandwich-card-name,.beverage-card-name,.extra-toggle-name{font-size:.96rem;font-weight:650}.catalog-card-desc,.sandwich-card-desc,.beverage-card-desc,.extra-toggle-desc{color:var(--color-text-muted);line-height:1.25}.catalog-card-price,.sandwich-card-price,.beverage-card-price,.extra-toggle-price{font-variant-numeric:tabular-nums;letter-spacing:-.01em}.sandwich-selected-preview,.beverage-selected-preview{border-width:1px;border-radius:var(--radius-lg);box-shadow:inset 3px 0 0 var(--color-primary)}.profile-page{gap:1rem;padding:4px 0 20px}.profile-header{padding:4px 0 8px}.role-badge{padding:.18rem .58rem;background:var(--color-primary);box-shadow:0 3px 8px color-mix(in srgb,var(--color-primary) 15%,transparent)}.profile-debt-summary{padding:1.2rem;background:linear-gradient(145deg,color-mix(in srgb,var(--color-surface) 98%,var(--palette-cream-100)),var(--color-surface))}.profile-debt-summary h2,.profile-breakdown h2,.profile-last-payment h2,.profile-payment-history h2{font-size:1.17rem;text-align:center}.progress-bar{height:9px;background:var(--palette-cream-200)}.progress-fill{background:var(--palette-olive)}.breakdown-grid{gap:7px}.breakdown-card{min-height:84px;justify-content:center;border-color:transparent;border-radius:12px;background:var(--palette-cream-100)}.breakdown-label{font-size:.64rem;letter-spacing:.045em}.breakdown-value{font-size:1rem;font-variant-numeric:tabular-nums}.profile-last-payment,.profile-payment-history,.profile-breakdown{padding:1.05rem}.last-payment-details{align-items:center;text-align:center;gap:.2rem}.last-payment-amount{font-family:var(--font-display);font-size:1.35rem}.payment-item{padding:.68rem 0}.profile-history-link{border-radius:12px;background:color-mix(in srgb,var(--color-surface) 93%,var(--palette-cream-100))}.admin-payments-page,.admin-users-page,.admin-catalog-page,.admin-settings-page,.admin-day-page,.admin-dashboard,.admin-panel-page{gap:1rem}.admin-payments-search-results{border-radius:var(--radius-lg);box-shadow:var(--shadow-soft)}.admin-payments-search-result{min-height:54px;padding:10px 13px}.admin-payments-selected{padding:10px 13px}.admin-payments-debt-card{position:relative;overflow:hidden;gap:.55rem;padding:1.15rem;background:var(--color-surface)}.admin-payments-debt-card:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:var(--palette-olive)}.admin-payments-debt-card.is-advisory:before{background:var(--color-warning)}.admin-payments-debt-card.is-blocked:before{background:var(--color-danger)}.admin-payments-debt-title{font-size:1.2rem}.admin-payments-debt-value{font-family:var(--font-display);font-size:2rem;font-weight:650;letter-spacing:-.025em}.admin-payments-type-group{gap:7px}.admin-payments-type-option{min-height:46px;border-radius:11px}.admin-payments-type-option:has(input:checked){box-shadow:inset 0 0 0 1px var(--color-primary)}.admin-catalog-form-panel,.admin-users-password-panel,.edit-line-panel{background:color-mix(in srgb,var(--color-surface) 97%,var(--palette-cream-100));padding:1.05rem}.current-order-header,.current-order-line,.current-order-footer,.order-history-item,.order-line{background:var(--color-surface)}.current-order-header,.current-order-line,.current-order-footer{padding:1.05rem}.current-order-title{font-size:1.35rem}.current-order-line-extra,.line-type,.payment-badge,.current-order-status-badge,.current-order-line-status,.admin-catalog-badge,.admin-users-role-badge,.admin-day-status,.admin-day-order-cancelled,.admin-day-admin-badge{border-radius:999px}.order-history-item{border-radius:var(--radius-lg);box-shadow:var(--shadow-soft)}.stat-card{border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-soft)}.stat-card-value{font-family:var(--font-display);font-weight:650;letter-spacing:-.02em}.admin-catalog-filters{padding:3px;border:1px solid var(--color-border);border-radius:11px;background:var(--palette-cream-200)}.admin-catalog-filter{border-radius:8px}.admin-catalog-filter.active{background:var(--color-surface);box-shadow:0 1px 4px #37261817}.admin-catalog-table{border-color:var(--color-border);border-radius:var(--radius-lg);overflow:hidden}.admin-catalog-table th{background:var(--palette-cream-100)}.configurator-section{padding:1.05rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft)}.configurator-extra-chip{border-color:color-mix(in srgb,var(--color-primary) 60%,var(--color-border))}.configurator-total{border-bottom:0;padding:.85rem 0 .65rem}.configurator-total-value{font-family:var(--font-display);font-size:1.4rem}@media(min-width:768px){:root{--max-width: 540px}.layout-content{padding-top:24px;padding-bottom:32px}.mobile-nav{left:50%;right:auto;bottom:18px;width:min(700px,calc(100vw - 32px));transform:translate(-50%)}.catalog-page,.sandwich-page,.beverages-page,.profile-page,.history-page,.current-order-page,.admin-payments-page,.admin-users-page,.admin-catalog-page,.admin-settings-page,.admin-day-page,.admin-dashboard,.admin-panel-page{width:100%}}@media(max-width:375px){.header{padding-left:10px;padding-right:10px}.header-right{gap:5px}.mode-btn{padding-left:8px;padding-right:8px}.nav-item{padding-left:6px;padding-right:6px}.catalog-card,.sandwich-card,.beverage-card,.extra-toggle{padding-left:10px;padding-right:10px}}@media(prefers-reduced-motion:reduce){.btn,.sandwich-card,.beverage-card,.extra-toggle,.nav-item,.nav-pill{transition:none}}.admin-mo-page{max-width:var(--max-width);margin:0 auto;display:flex;flex-direction:column;gap:1rem;padding-bottom:calc(var(--spacing-lg) * 2)}.admin-mo-section{display:flex;flex-direction:column;gap:var(--spacing-sm);min-width:0}.admin-mo-section-title{margin:0 0 1px;padding-bottom:7px;font-family:var(--font-display);font-size:1.12rem;font-weight:600;line-height:1.2;letter-spacing:-.012em;color:var(--color-text);border-bottom:1px solid color-mix(in srgb,var(--color-primary) 58%,var(--color-border))}.admin-mo-section .admin-catalog-filter{min-height:44px}.admin-mo-products{display:grid;grid-template-columns:1fr;gap:var(--spacing-sm)}.admin-mo-product{position:relative;display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-sm);min-height:58px;padding:10px 13px;border:1px solid color-mix(in srgb,var(--color-border) 90%,transparent);border-radius:var(--radius-md);background:color-mix(in srgb,var(--color-surface) 97%,var(--palette-cream-100));color:var(--color-text);box-shadow:0 1px 2px #3f2d1d09;font-family:inherit;font-size:.9375rem;text-align:left;cursor:pointer;overflow:hidden;overflow-wrap:anywhere;transition:border-color .15s,background-color .15s,box-shadow .15s,transform .12s}.admin-mo-product:hover:not(:disabled){border-color:color-mix(in srgb,var(--color-primary) 34%,var(--color-border));background:var(--color-surface);box-shadow:var(--shadow-soft)}.admin-mo-product:active:not(:disabled){transform:translateY(1px)}.admin-mo-product:focus-visible{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-ring)}.admin-mo-product.selected{border-color:color-mix(in srgb,var(--color-primary) 72%,var(--color-border));background:var(--color-bg-selected);color:var(--color-primary-dark);box-shadow:inset 3px 0 0 var(--color-primary),0 1px 2px #3f2d1d0a}.admin-mo-product:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.admin-mo-product-name{min-width:0;font-weight:650;line-height:1.25;overflow-wrap:anywhere}.admin-mo-product-price{flex-shrink:0;color:var(--color-primary);font-size:.9rem;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:-.01em;white-space:nowrap}.admin-mo-product.selected .admin-mo-product-price{color:var(--color-primary-dark)}.admin-mo-quantity{display:flex;align-items:center;gap:var(--spacing-sm);flex-wrap:wrap}.admin-mo-quantity-btn{width:48px;height:48px;flex:0 0 auto;border:1px solid color-mix(in srgb,var(--color-border) 92%,transparent);border-radius:12px;background:var(--color-surface);color:var(--color-text);box-shadow:0 1px 2px #3f2d1d0a;font-family:inherit;font-size:1.35rem;font-weight:500;line-height:1;cursor:pointer;transition:border-color .15s,background-color .15s,color .15s,transform .12s}.admin-mo-quantity-btn:hover:not(:disabled){border-color:color-mix(in srgb,var(--color-primary) 42%,var(--color-border));background:var(--palette-cream-100);color:var(--color-primary-dark)}.admin-mo-quantity-btn:active:not(:disabled){transform:translateY(1px);background:var(--color-bg-muted)}.admin-mo-quantity-btn:focus-visible{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-ring)}.admin-mo-quantity-btn:disabled{opacity:.42;cursor:not-allowed;box-shadow:none}.admin-mo-quantity-input{width:76px;min-height:48px;padding:0 var(--spacing-xs);text-align:center;border:1px solid color-mix(in srgb,var(--color-border) 92%,transparent);border-radius:12px;background:var(--color-surface);color:var(--color-text);font-family:var(--font-display);font-size:1.2rem;font-weight:600;font-variant-numeric:tabular-nums;transition:border-color .15s,box-shadow .15s}.admin-mo-quantity-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-ring)}.admin-mo-success{position:relative;display:flex;flex-direction:column;gap:var(--spacing-xs);min-width:0;overflow:hidden;padding:1.05rem 1.05rem 1.05rem 1.2rem;border:1px solid color-mix(in srgb,var(--color-success) 35%,var(--color-border));border-radius:var(--radius-lg);background:linear-gradient(145deg,color-mix(in srgb,var(--color-success-bg) 72%,var(--color-surface)),color-mix(in srgb,var(--color-surface) 94%,var(--color-success-bg)));box-shadow:var(--shadow-soft)}.admin-mo-success:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:var(--palette-olive)}.admin-mo-success-title{margin:0 0 2px;font-family:var(--font-display);font-size:1.18rem;font-weight:600;letter-spacing:-.012em;color:var(--color-success)}.admin-mo-success-line{margin:0;font-size:.9375rem;line-height:1.4;overflow-wrap:anywhere}.admin-mo-success-total{font-family:var(--font-display);font-size:1.08rem;font-weight:650;font-variant-numeric:tabular-nums}.admin-mo-success-actions{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);margin-top:var(--spacing-sm)}.admin-mo-success-actions .btn{flex:1 1 auto;min-width:0}.admin-mo-success-actions a.btn{display:inline-flex;align-items:center;justify-content:center;text-align:center;text-decoration:none}.admin-mo-note{margin:2px 0 0;font-size:.75rem;line-height:1.4;color:var(--color-text-muted);text-align:center}@media(min-width:768px){.admin-mo-page{width:100%}.admin-mo-products{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-mo-product{min-height:76px;align-items:flex-start;flex-direction:column;justify-content:space-between}.admin-mo-product-price{align-self:flex-end}}@media(max-width:375px){.admin-mo-product{padding-left:10px;padding-right:10px}.admin-mo-success-actions{flex-direction:column}.admin-mo-success-actions .btn,.admin-mo-success-actions a.btn{width:100%}}@media(prefers-reduced-motion:reduce){.admin-mo-product,.admin-mo-quantity-btn{transition:none}}.configurator-quantity{display:flex;align-items:center;gap:var(--spacing-sm);flex-wrap:wrap;margin-bottom:var(--spacing-sm)}.configurator-quantity-label{font-size:.8125rem;font-weight:600;color:var(--color-text-muted)}.configurator-quantity-controls{display:flex;align-items:center;gap:var(--spacing-xs)}.quantity-btn{width:48px;height:48px;flex:0 0 auto;border:1px solid color-mix(in srgb,var(--color-border) 92%,transparent);border-radius:12px;background:var(--color-surface);color:var(--color-text);box-shadow:0 1px 2px #3f2d1d0a;font-family:inherit;font-size:1.35rem;font-weight:500;line-height:1;cursor:pointer;transition:border-color .15s,background-color .15s,color .15s,transform .12s}.quantity-btn:hover:not(:disabled){border-color:color-mix(in srgb,var(--color-primary) 42%,var(--color-border));background:var(--palette-cream-100);color:var(--color-primary-dark)}.quantity-btn:active:not(:disabled){transform:translateY(1px);background:var(--color-bg-muted)}.quantity-btn:focus-visible{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-ring)}.quantity-btn:disabled{opacity:.42;cursor:not-allowed;box-shadow:none}.quantity-value{display:inline-flex;align-items:center;justify-content:center;min-width:52px;height:48px;padding:0 var(--spacing-xs);border:1px solid color-mix(in srgb,var(--color-border) 92%,transparent);border-radius:12px;background:var(--color-surface);color:var(--color-text);font-family:var(--font-display);font-size:1.2rem;font-weight:600;font-variant-numeric:tabular-nums}.confirmation-item-detail{flex:1;display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-sm);padding:var(--spacing-sm);background:var(--color-bg-card-hover);border-radius:var(--radius)}.confirmation-item-name{font-weight:600;font-size:.9375rem;color:var(--color-text)}.confirmation-item-quantity{font-weight:700;color:var(--color-primary);font-variant-numeric:tabular-nums;flex-shrink:0}.profile-change-password{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:1rem;display:flex;flex-direction:column;gap:var(--spacing-md)}.profile-change-password h2{font-size:1rem;font-weight:600;margin:0 0 .75rem;color:var(--color-text)}.profile-change-password-form{display:flex;flex-direction:column;gap:var(--spacing-md)}.profile-change-password-message{font-size:.875rem;padding:var(--spacing-sm);border-radius:var(--radius);margin-top:var(--spacing-sm)}.profile-change-password-message--success{background:var(--color-success-bg);color:var(--color-success);border:1px solid var(--color-success)}.profile-change-password-message--error{background:var(--color-error-bg);color:var(--color-error-text);border:1px solid var(--color-error-border)}.confirmation-finalize-button--primary{width:100%;padding:var(--spacing-sm);font-size:1rem;font-weight:600;background:var(--color-primary);color:var(--color-on-primary);border:2px solid var(--color-primary);border-radius:var(--radius);cursor:pointer}.confirmation-finalize-button--primary:hover{background:var(--color-primary-dark);border-color:var(--color-primary-dark)}@media(prefers-reduced-motion:reduce){.quantity-btn{transition:none}}.update-banner{display:flex;flex-wrap:wrap;align-items:center;gap:var(--spacing-sm);max-width:var(--max-width);margin:.75rem auto 0;padding:.625rem .75rem;background:var(--color-warning-bg);color:var(--color-warning);border:1px solid var(--color-warning);border-radius:var(--radius);font-size:.875rem}.update-banner-message{flex:1 1 100%;margin:0;font-weight:600}.update-banner-actions{display:flex;align-items:center;gap:var(--spacing-sm);width:100%}.update-banner-actions .btn{font-size:.875rem}.update-banner-dismiss{min-height:44px;padding:0 var(--spacing-md);background:none;border:1px solid var(--color-warning);border-radius:var(--radius);font-family:inherit;font-size:.875rem;font-weight:600;color:var(--color-warning);cursor:pointer}@media(min-width:540px){.update-banner{flex-wrap:nowrap}.update-banner-message{flex:1 1 auto}.update-banner-actions{width:auto}}.profile-notifications{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:1rem;display:flex;flex-direction:column;gap:var(--spacing-md)}.profile-notifications h2{font-size:1rem;font-weight:600;margin:0;color:var(--color-text)}.profile-notifications h3{font-size:.875rem;font-weight:600;margin:0 0 var(--spacing-sm) 0;color:var(--color-text)}.profile-notifications-intro{font-size:.875rem;color:var(--color-text-muted);margin:0}.profile-switch{display:flex;align-items:center;gap:var(--spacing-sm);min-height:44px;cursor:pointer;-webkit-tap-highlight-color:transparent}.profile-switch__input{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.profile-switch__track{position:relative;flex-shrink:0;width:48px;height:28px;border-radius:999px;background:var(--color-bg-muted);border:1px solid var(--color-border);transition:background-color .15s ease}.profile-switch__thumb{position:absolute;top:2px;left:2px;width:22px;height:22px;border-radius:50%;background:var(--color-surface);box-shadow:0 1px 2px #0003;transition:transform .15s ease}.profile-switch__input:checked+.profile-switch__track{background:var(--color-primary);border-color:var(--color-primary)}.profile-switch__input:checked+.profile-switch__track .profile-switch__thumb{transform:translate(20px)}.profile-switch__input:focus-visible+.profile-switch__track{outline:2px solid var(--color-focus);outline-offset:2px}.profile-switch__input:disabled+.profile-switch__track{opacity:.5}.profile-switch__input:disabled~.profile-switch__label{opacity:.6}.profile-switch__label{font-size:1rem;color:var(--color-text)}.profile-notifications-devices{display:flex;flex-direction:column}.profile-notifications-device-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--spacing-sm)}.profile-notifications-device{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-sm);padding:var(--spacing-sm);background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius)}.profile-notifications-device__info{display:flex;flex-direction:column;gap:2px;min-width:0}.profile-notifications-device__agent{font-size:.875rem;font-weight:600;color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-notifications-device__meta{font-size:.75rem;color:var(--color-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-notifications-device__remove{flex-shrink:0;min-height:44px;padding:0 var(--spacing-md);font-size:.875rem;background:none;border:1px solid var(--color-danger);color:var(--color-danger);border-radius:var(--radius)}.profile-notifications-device__remove:not(:disabled):hover{background:var(--color-danger-bg)}.profile-notifications-empty{font-size:.875rem;color:var(--color-text-muted);margin:0}.profile-notifications-notice{font-size:.875rem;padding:var(--spacing-sm);border-radius:var(--radius);background:var(--color-warning-bg);color:var(--color-warning);border:1px solid var(--color-warning);margin:0}.profile-notifications-status{min-height:1.25rem;font-size:.875rem;color:var(--color-text-muted);margin:0}.admin-audit-section{margin-top:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-md)}.admin-audit-section-header{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--spacing-sm)}.admin-audit-section-header .admin-section-title{flex:1;margin:0}.admin-audit-filters{display:flex;flex-direction:column;gap:var(--spacing-sm);background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--spacing-md)}.admin-audit-dates{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-sm)}.admin-audit-filter-field{display:flex;flex-direction:column;gap:var(--spacing-xs);min-width:0}.admin-audit-filter-label{font-size:.75rem;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.03em}.admin-audit-filters input[type=date]{min-height:44px;padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-input-bg);color:var(--color-text);font-family:inherit;font-size:1rem}.admin-audit-select{min-height:44px;padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);color:var(--color-text);font-size:.9375rem;font-family:inherit;cursor:pointer;appearance:auto;width:100%}.admin-audit-select:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-ring);outline:none}.admin-audit-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--spacing-sm)}.admin-audit-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-xs)}.admin-audit-card-top{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-sm);flex-wrap:wrap}.admin-audit-time{font-size:.75rem;color:var(--color-text-muted)}.audit-badge{display:inline-block;padding:.125rem .5rem;border-radius:999px;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.audit-badge--money{background:var(--color-success-bg);color:var(--color-success)}.audit-badge--settings{background:var(--color-warning-bg);color:var(--color-warning)}.audit-badge--order{background:var(--color-bg-selected);color:var(--color-primary)}.audit-badge--user,.audit-badge--neutral{background:var(--color-bg-muted);color:var(--color-text-muted)}.admin-audit-actor{margin:0;font-size:.875rem;font-weight:600;overflow-wrap:anywhere}.admin-audit-actor-username{font-weight:400;color:var(--color-text-muted)}.admin-audit-entity{margin:0;font-size:.75rem;color:var(--color-text-muted);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.admin-audit-changes{margin:0;display:flex;flex-direction:column;gap:2px;font-size:.8125rem}.admin-audit-change-line{display:flex;gap:var(--spacing-xs)}.admin-audit-change-label{flex-shrink:0;min-width:7.5rem;color:var(--color-text-muted)}.admin-audit-change-value{margin:0;min-width:0;overflow-wrap:anywhere;white-space:pre-line}@media(max-width:375px){.admin-audit-change-line{flex-direction:column;gap:0}}
