:root{--coxa-ink: #1e212b;--coxa-green: #4d8b31;--coxa-gold: #ffc800;--coxa-orange: #ff8427;--coxa-white: #ffffff;--coxa-primary: var(--coxa-green);--coxa-primary-hover: #3f7429;--coxa-primary-dim: var(--coxa-ink);--coxa-primary-soft: rgba(77, 139, 49, .12);--coxa-accent: var(--coxa-gold);--coxa-accent-hover: #e6b400;--coxa-accent-soft: rgba(255, 200, 0, .18);--coxa-orange-soft: rgba(255, 132, 39, .14);--coxa-bg: #f0f2f5;--coxa-surface: var(--coxa-white);--coxa-surface-raised: #f8f9fb;--coxa-surface-hover: #ebeef2;--coxa-border: #dde1e8;--coxa-border-strong: #c5cad4;--coxa-text: var(--coxa-ink);--coxa-text-muted: #5c6370;--coxa-text-inverse: var(--coxa-white);--coxa-danger: #c53030;--coxa-danger-soft: rgba(197, 48, 48, .1);--coxa-warning: var(--coxa-orange);--coxa-warning-soft: var(--coxa-orange-soft);--coxa-success: var(--coxa-green);--coxa-success-soft: rgba(77, 139, 49, .12);--coxa-font: "DM Sans", "Segoe UI", system-ui, sans-serif;--coxa-font-mono: "Consolas", "Courier New", monospace;--coxa-space-1: .25rem;--coxa-space-2: .5rem;--coxa-space-3: .75rem;--coxa-space-4: 1rem;--coxa-space-5: 1.25rem;--coxa-space-6: 1.5rem;--coxa-space-8: 2rem;--coxa-radius-sm: 6px;--coxa-radius: 10px;--coxa-radius-lg: 14px;--coxa-radius-full: 999px;--coxa-sidebar-width: 240px;--coxa-content-max: 1120px;--coxa-auth-width: 420px;--coxa-shadow-sm: 0 1px 2px rgba(30, 33, 43, .06);--coxa-shadow-md: 0 4px 16px rgba(30, 33, 43, .1);--coxa-shadow-lg: 0 12px 40px rgba(30, 33, 43, .14);--bg: var(--coxa-bg);--surface: var(--coxa-surface);--surface-hover: var(--coxa-surface-hover);--border: var(--coxa-border);--text: var(--coxa-text);--muted: var(--coxa-text-muted);--accent: var(--coxa-primary);--accent-hover: var(--coxa-primary-hover);--radius: var(--coxa-radius)}*,*:before,*:after{box-sizing:border-box}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-height:100vh;font-family:var(--coxa-font);font-size:1rem;line-height:1.5;color:var(--coxa-text);background:var(--coxa-bg)}h1,h2,h3,h4{font-weight:600;line-height:1.25}a{color:var(--coxa-primary);text-decoration:none}a:hover{text-decoration:underline}code{font-family:var(--coxa-font-mono);font-size:.875em;background:var(--coxa-surface-raised);padding:.1em .35em;border-radius:var(--coxa-radius-sm)}button,input,select,textarea{font:inherit}:focus-visible{outline:2px solid var(--coxa-primary);outline-offset:2px}.brand{font-weight:700;font-size:1.05rem;color:var(--coxa-text)}.brand--pill{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--coxa-primary)}.brand-sub{color:var(--coxa-text-muted);font-size:.8rem;margin-bottom:var(--coxa-space-6)}.auth-layout{min-height:100vh;display:grid;place-items:center;padding:var(--coxa-space-6);background:radial-gradient(ellipse 70% 50% at 100% 0%,var(--coxa-accent-soft),transparent),radial-gradient(ellipse 80% 60% at 50% -10%,var(--coxa-primary-soft),transparent),var(--coxa-bg)}.auth-card{width:100%;max-width:var(--coxa-auth-width);background:var(--coxa-surface);border:1px solid var(--coxa-border);border-radius:var(--coxa-radius-lg);padding:var(--coxa-space-8);box-shadow:var(--coxa-shadow-lg)}.auth-card h1{margin:0 0 var(--coxa-space-2);font-size:1.5rem}.auth-card p{margin:0 0 var(--coxa-space-6);color:var(--coxa-text-muted);font-size:.9rem}.auth-card label{display:block;font-size:.85rem;margin-bottom:var(--coxa-space-2);color:var(--coxa-text-muted)}.auth-card input{width:100%;margin-bottom:var(--coxa-space-4);padding:.65rem .75rem;border-radius:var(--coxa-radius);border:1px solid var(--coxa-border);background:var(--coxa-surface);color:var(--coxa-text)}.auth-card input:focus{border-color:var(--coxa-primary);outline:none}.auth-card button{width:100%;padding:.75rem;border:none;border-radius:var(--coxa-radius);background:var(--coxa-primary);color:var(--coxa-text-inverse);font-weight:600;cursor:pointer}.auth-card button:hover{background:var(--coxa-primary-hover)}.auth-footer{margin-top:var(--coxa-space-5);text-align:center;font-size:.85rem;color:var(--coxa-text-muted)}.auth-hint{margin-top:var(--coxa-space-4);text-align:center;font-size:.78rem;color:var(--coxa-text-muted)}.topbar-user{display:flex;align-items:center;gap:var(--coxa-space-3);margin-left:auto}.topbar-user__name{font-size:.82rem;color:var(--coxa-text-muted)}.pos-topbar{position:sticky;top:0;z-index:50;background:var(--coxa-surface);border-bottom:1px solid var(--coxa-border)}.detail-list{display:grid;gap:var(--coxa-space-3)}.detail-list div{display:grid;grid-template-columns:8rem 1fr;gap:var(--coxa-space-2);font-size:.9rem}.detail-list dt{color:var(--coxa-text-muted);font-weight:500}.detail-list dd{margin:0}.page-header h1{margin:0 0 var(--coxa-space-2);font-size:1.6rem}.page-header p{margin:0 0 var(--coxa-space-6);color:var(--coxa-text-muted)}.main{padding:var(--coxa-space-8)}.main--narrow{max-width:var(--coxa-content-max);margin:0 auto;width:100%}.shell{min-height:100vh}.shell--sidebar{display:grid;grid-template-columns:var(--coxa-sidebar-width) 1fr}.sidebar{background:var(--coxa-surface);border-right:1px solid var(--coxa-border);display:flex;flex-direction:column;box-shadow:var(--coxa-shadow-sm)}.shell--topbar{display:flex;flex-direction:column}.topbar{display:flex;align-items:center;gap:var(--coxa-space-6);padding:.85rem var(--coxa-space-6);background:var(--coxa-surface);border-bottom:1px solid var(--coxa-border);box-shadow:var(--coxa-shadow-sm);flex-wrap:wrap}.topbar .brand{color:var(--coxa-primary)}.topnav{display:flex;gap:var(--coxa-space-1);flex:1;flex-wrap:wrap}.nav-link{display:block;padding:.6rem .75rem;margin-bottom:var(--coxa-space-1);border-radius:var(--coxa-radius);color:var(--coxa-text);text-decoration:none;font-size:.9rem;transition:background .15s,color .15s}.topnav .nav-link{display:inline-block;margin-bottom:0;color:var(--coxa-text-muted)}.nav-link:hover{background:var(--coxa-surface-hover);text-decoration:none}.topnav .nav-link:hover{color:var(--coxa-text)}.nav-link.active{background:var(--coxa-primary-dim);color:var(--coxa-text-inverse)}.topnav .nav-link.active{background:var(--coxa-primary)}.sign-out{font-size:.85rem;color:var(--coxa-text-muted)}.sign-out:hover{color:var(--coxa-text)}.grid,.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:var(--coxa-space-4)}.card{background:var(--coxa-surface);border:1px solid var(--coxa-border);border-radius:var(--coxa-radius);padding:var(--coxa-space-4);box-shadow:var(--coxa-shadow-sm);transition:border-color .15s,box-shadow .15s}.card--interactive{cursor:pointer}.card--interactive:hover{border-color:var(--coxa-primary);box-shadow:var(--coxa-shadow-md)}.card.single{max-width:480px}.card h3{margin:0 0 var(--coxa-space-2);font-size:1rem}.card p{margin:0;color:var(--coxa-text-muted);font-size:.875rem}.card .value{font-size:1.1rem;font-weight:600;color:var(--coxa-text)}.stats{display:flex;gap:var(--coxa-space-4);margin-bottom:var(--coxa-space-6);flex-wrap:wrap}.stat{background:var(--coxa-surface);border:1px solid var(--coxa-border);border-radius:var(--coxa-radius);padding:var(--coxa-space-4) var(--coxa-space-5);min-width:120px}.stat strong{display:block;font-size:1.5rem}.stat span{color:var(--coxa-text-muted);font-size:.8rem}.tags{display:flex;gap:var(--coxa-space-2);margin-top:var(--coxa-space-3);flex-wrap:wrap}.tags span{font-size:.7rem;padding:.2rem .5rem;border-radius:var(--coxa-radius-full);border:1px solid var(--coxa-border);color:var(--coxa-text-muted);text-transform:capitalize}.tags span.staff{border-color:var(--coxa-primary);color:var(--coxa-primary)}.table{width:100%;border-collapse:collapse;background:var(--coxa-surface);border:1px solid var(--coxa-border);border-radius:var(--coxa-radius);overflow:hidden}.table th,.table td{padding:.75rem var(--coxa-space-4);text-align:left;border-bottom:1px solid var(--coxa-border);background:var(--coxa-surface)}.table th{color:var(--coxa-text-muted);font-size:.8rem;font-weight:500;background:var(--coxa-surface)}.table tr:last-child td{border-bottom:none}.alert{padding:.75rem var(--coxa-space-4);border-radius:var(--coxa-radius);margin-bottom:var(--coxa-space-4);background:var(--coxa-surface);border:1px solid var(--coxa-border)}.alert.error{border-color:var(--coxa-danger);color:#991b1b;background:var(--coxa-danger-soft)}.empty,.status{padding:var(--coxa-space-8);text-align:center;color:var(--coxa-text-muted);background:var(--coxa-surface);border:1px dashed var(--coxa-border);border-radius:var(--coxa-radius)}.club-switcher{position:relative;margin-bottom:var(--coxa-space-5)}.club-switcher__trigger{width:100%;display:flex;align-items:center;justify-content:space-between;padding:.55rem .75rem;border:1px solid var(--coxa-border);border-radius:var(--coxa-radius);background:var(--coxa-bg);cursor:pointer;font-size:.875rem;color:var(--coxa-text);transition:border-color .15s;gap:var(--coxa-space-2)}.club-switcher__trigger:hover{border-color:var(--coxa-primary)}.club-switcher__name{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.club-switcher__caret{font-size:.65rem;color:var(--coxa-text-muted);flex-shrink:0}.club-switcher__menu{position:absolute;top:calc(100% + 4px);left:0;right:0;background:var(--coxa-surface);border:1px solid var(--coxa-border);border-radius:var(--coxa-radius);box-shadow:var(--coxa-shadow-md);z-index:200;overflow:hidden}.club-switcher__item{width:100%;display:flex;align-items:center;justify-content:space-between;padding:.6rem .75rem;border:none;background:none;cursor:pointer;font-size:.85rem;color:var(--coxa-text);text-align:left;gap:var(--coxa-space-2);transition:background .1s}.club-switcher__item:hover{background:var(--coxa-surface-hover)}.club-switcher__item.active{background:var(--coxa-primary-dim);color:var(--coxa-text-inverse)}.club-switcher__item-name{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.club-switcher__item-role{font-size:.75rem;color:inherit;opacity:.7;flex-shrink:0}.club-switcher__item.active .club-switcher__item-role{opacity:.85}.club-switcher__item--new{border-top:1px solid var(--coxa-border);color:var(--coxa-primary);font-weight:500}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;display:grid;place-items:center;z-index:500;padding:var(--coxa-space-6)}.modal{width:100%;max-width:560px;background:var(--coxa-surface);border:1px solid var(--coxa-border);border-radius:var(--coxa-radius-lg);padding:var(--coxa-space-6);box-shadow:var(--coxa-shadow-lg)}.modal__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--coxa-space-5)}.modal__header h2{margin:0;font-size:1.2rem}.modal__close{border:none;background:none;cursor:pointer;font-size:1rem;color:var(--coxa-text-muted);padding:.25rem;line-height:1}.modal__close:hover{color:var(--coxa-text)}.modal__actions{display:flex;gap:var(--coxa-space-3);justify-content:flex-end;margin-top:var(--coxa-space-5)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--coxa-space-4);margin-bottom:var(--coxa-space-4)}.form-group{display:flex;flex-direction:column;gap:var(--coxa-space-2);margin-bottom:0}.form-group label{font-size:.85rem;color:var(--coxa-text-muted)}.form-group input,.form-group select{padding:.65rem .75rem;border:1px solid var(--coxa-border);border-radius:var(--coxa-radius);background:var(--coxa-surface);color:var(--coxa-text);font-size:.9rem}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--coxa-primary)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.65rem 1.25rem;border-radius:var(--coxa-radius);font-size:.875rem;font-weight:600;cursor:pointer;border:none;transition:background .15s}.btn--ghost{background:transparent;border:1px solid var(--coxa-border);color:var(--coxa-text)}.btn--ghost:hover{background:var(--coxa-surface-hover)}.sidebar-footer{margin-top:auto;padding-top:var(--coxa-space-5);border-top:1px solid var(--coxa-border);display:flex;flex-direction:column;gap:var(--coxa-space-3)}.sidebar-user__name{font-size:.875rem;font-weight:600;color:var(--coxa-text)}.sidebar-user__meta{font-size:.78rem;color:var(--coxa-text-muted);text-transform:capitalize}.sign-out-btn{background:none;border:none;cursor:pointer;font-size:.8rem;color:var(--coxa-text-muted);padding:0;text-align:left}.sign-out-btn:hover{color:var(--coxa-text)}@media(max-width:768px){.shell--sidebar{grid-template-columns:1fr}.sidebar{border-right:none;border-bottom:1px solid var(--coxa-border)}.main{padding:var(--coxa-space-4)}}@media(max-width:640px){.topbar{flex-direction:column;align-items:flex-start}.auth-card{padding:var(--coxa-space-6)}}.field-label{display:block;font-size:.8rem;font-weight:500;color:var(--coxa-text-muted);margin-bottom:var(--coxa-space-2)}.field-hint{font-size:.75rem;color:var(--coxa-text-muted);margin-top:var(--coxa-space-1)}.form-field{margin-bottom:var(--coxa-space-4)}.form-field input,.form-field select,.form-field textarea{display:block;width:100%;padding:.65rem .75rem;border-radius:var(--coxa-radius);border:1px solid var(--coxa-border);background:var(--coxa-surface);color:var(--coxa-text);transition:border-color .15s,box-shadow .15s}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:var(--coxa-primary);box-shadow:0 0 0 3px var(--coxa-primary-soft);outline:none}.form-grid{display:grid;gap:var(--coxa-space-4);grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid .form-field--full{grid-column:1 / -1}@media(max-width:640px){.form-grid{grid-template-columns:1fr}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--coxa-space-2);padding:.65rem 1rem;border-radius:var(--coxa-radius);border:1px solid transparent;font-weight:600;font-size:.9rem;cursor:pointer;transition:background .15s,border-color .15s,opacity .15s}.btn:disabled{opacity:.5;cursor:not-allowed}.btn--primary{background:var(--coxa-primary);color:var(--coxa-text-inverse)}.btn--primary:hover:not(:disabled){background:var(--coxa-primary-hover)}.btn--secondary{background:var(--coxa-surface);color:var(--coxa-text);border-color:var(--coxa-border)}.btn--secondary:hover:not(:disabled){background:var(--coxa-surface-hover)}.btn--ghost{background:transparent;color:var(--coxa-text-muted);border-color:transparent;padding:.35rem .5rem}.btn--ghost:hover:not(:disabled){color:var(--coxa-danger);background:var(--coxa-danger-soft)}.btn--block{width:100%}.btn--sm{padding:.4rem .65rem;font-size:.8rem}.alert.success{border-color:var(--coxa-success);color:var(--coxa-success);background:var(--coxa-success-soft)}.badge{display:inline-block;font-size:.7rem;font-weight:600;padding:.2rem .55rem;border-radius:var(--coxa-radius-full);background:var(--coxa-surface-raised);border:1px solid var(--coxa-border);color:var(--coxa-text-muted)}.badge--stock{border-color:var(--coxa-border-strong)}.badge--low{border-color:var(--coxa-danger);color:var(--coxa-danger);background:var(--coxa-danger-soft)}.panel{background:var(--coxa-surface);border:1px solid var(--coxa-border);border-radius:var(--coxa-radius-lg);padding:var(--coxa-space-6);box-shadow:var(--coxa-shadow-sm);margin-bottom:var(--coxa-space-6)}.panel__title{margin:0 0 var(--coxa-space-2);font-size:1.05rem}.panel__desc{margin:0 0 var(--coxa-space-5);color:var(--coxa-text-muted);font-size:.875rem}.toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--coxa-space-4);margin-bottom:var(--coxa-space-6);padding:var(--coxa-space-4) var(--coxa-space-5);background:var(--coxa-surface);border:1px solid var(--coxa-border);border-radius:var(--coxa-radius)}.toolbar label{display:flex;align-items:center;gap:var(--coxa-space-2);font-size:.875rem;color:var(--coxa-text-muted)}.toolbar select{padding:.4rem .6rem;border-radius:var(--coxa-radius-sm);border:1px solid var(--coxa-border);background:var(--coxa-surface)}.table-wrap{overflow-x:auto;border-radius:var(--coxa-radius);border:1px solid var(--coxa-border);background:var(--coxa-surface)}.table-wrap .table{border:none;border-radius:0;background:var(--coxa-surface)}.coxa-data-table-wrapper{background:var(--coxa-surface);border:1px solid var(--coxa-border);border-radius:var(--coxa-radius);overflow:hidden}.coxa-data-table-scroll{overflow-x:auto;background:var(--coxa-surface)}.coxa-data-table{width:100%;border-collapse:collapse;font-size:.875rem;background:var(--coxa-surface)}.coxa-data-table th,.coxa-data-table td{padding:.75rem var(--coxa-space-4);text-align:left;border-bottom:1px solid var(--coxa-border);background:var(--coxa-surface)}.coxa-data-table--dense th,.coxa-data-table--dense td{padding:.5rem var(--coxa-space-3)}.coxa-data-table th{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--coxa-text-muted);background:var(--coxa-surface);white-space:nowrap}.coxa-data-table tbody tr:hover td{background:var(--coxa-surface-hover)}.coxa-data-table tbody tr:last-child td{border-bottom:none}.coxa-data-table__empty{text-align:center;color:var(--coxa-text-muted);padding:var(--coxa-space-6) var(--coxa-space-4)!important}.coxa-data-table__footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--coxa-space-3);padding:.625rem var(--coxa-space-4);border-top:1px solid var(--coxa-border);background:var(--coxa-surface);font-size:.8125rem;color:var(--coxa-text-muted)}.coxa-data-table__controls{display:flex;flex-wrap:wrap;align-items:center;gap:var(--coxa-space-2)}.coxa-data-table__page-size{display:inline-flex;align-items:center;gap:var(--coxa-space-2);font-size:.8125rem}.coxa-data-table__page-size select{padding:.35rem .5rem;border-radius:var(--coxa-radius-sm);border:1px solid var(--coxa-border);background:var(--coxa-surface);font-size:.8125rem}.coxa-data-table__page-btn{padding:.35rem .75rem;border-radius:var(--coxa-radius-sm);border:1px solid var(--coxa-border);background:var(--coxa-surface);color:var(--coxa-text);font-size:.8125rem;cursor:pointer}.coxa-data-table__page-btn:hover:not(:disabled){background:var(--coxa-surface-hover)}.coxa-data-table__page-btn:disabled{opacity:.45;cursor:not-allowed}.coxa-data-table-wrapper--flush{border:none;border-radius:0}.coxa-data-table__page-indicator{min-width:6rem;text-align:center}.commerce-layout{display:grid;grid-template-columns:1fr min(340px,100%);gap:var(--coxa-space-6);align-items:start}@media(max-width:900px){.commerce-layout{grid-template-columns:1fr}}.product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--coxa-space-4)}.product-card{display:flex;flex-direction:column;min-height:100%;padding:0;overflow:hidden}.product-card__body{padding:var(--coxa-space-4);flex:1;display:flex;flex-direction:column}.product-card__title{margin:0 0 var(--coxa-space-2);font-size:1rem;line-height:1.3}.product-card__desc{margin:0 0 var(--coxa-space-3);font-size:.8rem;color:var(--coxa-text-muted);flex:1}.product-card__meta{display:flex;flex-wrap:wrap;gap:var(--coxa-space-2);margin-bottom:var(--coxa-space-3)}.product-card__price{font-size:1.25rem;font-weight:700;margin:0 0 var(--coxa-space-3)}.product-card__footer{padding:var(--coxa-space-3) var(--coxa-space-4);border-top:1px solid var(--coxa-border);background:var(--coxa-surface-raised)}.product-card__footer .btn{width:100%}.cart-panel{padding:0;overflow:hidden}.cart-panel--sticky{position:sticky;top:var(--coxa-space-4)}.cart-panel__head{padding:var(--coxa-space-4) var(--coxa-space-5);border-bottom:1px solid var(--coxa-border);background:var(--coxa-surface-raised)}.cart-panel__head h3{margin:0;font-size:1rem}.cart-panel__body{padding:var(--coxa-space-4) var(--coxa-space-5);max-height:280px;overflow-y:auto}.cart-panel__foot{padding:var(--coxa-space-4) var(--coxa-space-5);border-top:1px solid var(--coxa-border);background:var(--coxa-surface)}.cart-line{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--coxa-space-2);padding:var(--coxa-space-3) 0;border-bottom:1px solid var(--coxa-border);font-size:.875rem}.cart-line:last-child{border-bottom:none}.cart-line__info{flex:1;min-width:0}.cart-line__name{font-weight:500;display:block}.cart-line__qty{color:var(--coxa-text-muted);font-size:.8rem}.cart-line__price{font-weight:600;white-space:nowrap}.cart-total{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:var(--coxa-space-4);font-size:1.1rem}.cart-total strong{font-size:1.35rem}.cart-empty{text-align:center;color:var(--coxa-text-muted);padding:var(--coxa-space-6) var(--coxa-space-4);font-size:.9rem}.input{display:block;width:100%;padding:.65rem .75rem;border-radius:var(--coxa-radius);border:1px solid var(--coxa-border);background:var(--coxa-surface);color:var(--coxa-text);font-size:.9rem;transition:border-color .15s,box-shadow .15s}.input:focus{outline:none;border-color:var(--coxa-primary);box-shadow:0 0 0 3px var(--coxa-primary-soft)}.input--sm{padding:.4rem .6rem;font-size:.8rem}.input--lg{padding:.85rem 1rem;font-size:1rem}.btn--lg{padding:.85rem 1.5rem;font-size:1rem}.btn--xs{padding:.25rem .5rem;font-size:.72rem;gap:.25rem}.btn--danger{background:var(--coxa-danger);color:#fff;border-color:var(--coxa-danger)}.btn--danger:hover:not(:disabled){background:#b91c1c;border-color:#b91c1c}.page{padding:0}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--coxa-space-4);flex-wrap:wrap;margin-bottom:var(--coxa-space-6)}.page-header__left{display:flex;align-items:center;gap:var(--coxa-space-3);min-width:0}.page-header__left h1{margin:0;font-size:1.5rem;font-weight:700;letter-spacing:-.02em}.page-header__actions{display:flex;align-items:center;gap:var(--coxa-space-2);flex-wrap:wrap;flex-shrink:0}.page-header__sub{color:var(--coxa-text-muted);font-size:.85rem;margin:.25rem 0 0;width:100%}.card__header{display:flex;align-items:center;gap:var(--coxa-space-2);margin-bottom:var(--coxa-space-4);padding-bottom:var(--coxa-space-3);border-bottom:1px solid var(--coxa-border)}.card__header h2,.card__header h3{margin:0;font-size:.95rem;font-weight:600;flex:1}.table--compact th,.table--compact td{padding:.5rem var(--coxa-space-3);font-size:.82rem}.table-wrapper{overflow-x:auto;border-radius:var(--coxa-radius);border:1px solid var(--coxa-border)}.table-wrapper .table{border:none;border-radius:0}.badge{display:inline-flex;align-items:center;gap:.25rem}.page-header__left svg{color:var(--coxa-primary);flex-shrink:0}.nav-section+.nav-section{margin-top:var(--coxa-space-4);padding-top:var(--coxa-space-4);border-top:1px solid var(--coxa-border)}.nav-section__title{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--coxa-text-muted);padding:0 .75rem;margin-bottom:var(--coxa-space-2)}.nav-link--sub{font-size:.85rem;padding-left:1rem}.pos-shell{min-height:100vh;padding:var(--coxa-space-6);max-width:1400px;margin:0 auto}.page-header__actions{margin-top:var(--coxa-space-3)}.page-header__actions a{font-size:.9rem;font-weight:500}.link-muted{color:var(--coxa-text-muted);font-size:.875rem}.sku-list{list-style:none;margin:var(--coxa-space-3) 0 0;padding:0}.sku-list li{padding:var(--coxa-space-2) 0;border-top:1px solid var(--coxa-border);font-size:.85rem;color:var(--coxa-text-muted)}.sku-list li:first-child{border-top:none}.loading-text{color:var(--coxa-text-muted);padding:var(--coxa-space-8);text-align:center}:root{--fan-app-width: 430px;--fan-tabbar-height: 4.5rem;--fan-header-height: 3.5rem;--fan-safe-bottom: env(safe-area-inset-bottom, 0px);--fan-safe-top: env(safe-area-inset-top, 0px);--fan-glass-bg: rgba(255, 255, 255, .72);--fan-glass-border: rgba(255, 255, 255, .55);--fan-glass-shadow: 0 4px 24px rgba(30, 33, 43, .08);--fan-header-glass-bg: rgba(255, 255, 255, .58);--fan-header-glass-bg-scrolled: rgba(255, 255, 255, .82);--fan-header-glass-border: rgba(255, 255, 255, .45);--fan-ease-spring: cubic-bezier(.34, 1.45, .64, 1);--fan-ease-out: cubic-bezier(.22, 1, .36, 1)}html{-webkit-tap-highlight-color:transparent}body{overscroll-behavior-y:none}.fan-app-viewport{min-height:100dvh;background:var(--coxa-ink)}.fan-app-frame{width:100%;max-width:var(--fan-app-width);min-height:100dvh;margin:0 auto;background:var(--coxa-bg);position:relative;isolation:isolate}@media(min-width:481px){.fan-app-viewport{padding:1rem 0;min-height:100vh}.fan-app-frame{min-height:calc(100vh - 2rem);border-radius:28px;overflow:hidden;box-shadow:0 0 0 1px #ffffff14,0 24px 80px #00000073}}.fan-shell{display:flex;flex-direction:column;min-height:100dvh;min-height:100vh;position:relative}.fan-header{position:fixed;top:0;left:50%;transform:translate(-50%);width:100%;max-width:var(--fan-app-width);z-index:50;display:flex;align-items:center;justify-content:space-between;gap:var(--coxa-space-3);min-height:calc(var(--fan-header-height) + var(--fan-safe-top));padding:calc(.5rem + var(--fan-safe-top)) var(--coxa-space-4) .5rem;background:var(--fan-header-glass-bg);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border-bottom:1px solid rgba(221,225,232,.35);box-shadow:0 1px 0 var(--fan-header-glass-border) inset,0 4px 20px #1e212b0a;transition:background .35s var(--fan-ease-out),border-color .35s var(--fan-ease-out),box-shadow .35s var(--fan-ease-out),backdrop-filter .35s var(--fan-ease-out)}.fan-header--scrolled{background:var(--fan-header-glass-bg-scrolled);backdrop-filter:blur(24px) saturate(190%);-webkit-backdrop-filter:blur(24px) saturate(190%);border-bottom-color:#dde1e8a6;box-shadow:0 1px #fff9 inset,var(--fan-glass-shadow)}.fan-header__brand{display:flex;align-items:center;gap:.65rem;min-width:0}.fan-header__mark{flex-shrink:0;width:2rem;height:2rem;border-radius:9px;background:var(--coxa-primary);color:var(--coxa-text-inverse);display:grid;place-items:center;font-weight:800;font-size:.9rem;box-shadow:0 2px 8px #4d8b3159;transition:transform .3s var(--fan-ease-spring)}.fan-shell--scrolled .fan-header__mark{transform:scale(.92)}.fan-header__titles{min-width:0;opacity:0;transform:translateY(6px);transition:opacity .3s var(--fan-ease-out),transform .3s var(--fan-ease-out)}.fan-header__titles--visible{opacity:1;transform:translateY(0)}.fan-header--home:not(.fan-header--scrolled) .fan-header__titles{opacity:0;transform:translateY(8px);pointer-events:none}.fan-header__title{font-weight:700;font-size:.95rem;line-height:1.2;color:var(--coxa-text)}.fan-header__subtitle{font-size:.72rem;color:var(--coxa-text-muted);line-height:1.2}.fan-header__signout{flex-shrink:0;border:1px solid rgba(255,255,255,.5);background:#ffffff73;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);color:var(--coxa-text-muted);font-size:.72rem;font-weight:600;padding:.45rem .7rem;border-radius:var(--coxa-radius-full);cursor:pointer;box-shadow:0 1px 4px #1e212b0f;transition:background .2s,border-color .2s,transform .2s var(--fan-ease-spring)}.fan-header--scrolled .fan-header__signout{background:#ffffffb8;border-color:#dde1e8b3}.fan-header__signout:active{transform:scale(.96)}.fan-main{flex:1;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;padding:calc(var(--fan-header-height) + var(--fan-safe-top) + var(--coxa-space-3)) var(--coxa-space-4) calc(var(--fan-tabbar-height) + var(--fan-safe-bottom) + var(--coxa-space-5))}.fan-tabbar{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:100%;max-width:var(--fan-app-width);z-index:100;padding:0 var(--coxa-space-3) calc(.55rem + var(--fan-safe-bottom));pointer-events:none;transition:padding .35s var(--fan-ease-out)}.fan-tabbar__inner{pointer-events:auto;display:flex;align-items:stretch;min-height:3.65rem;padding:.3rem .35rem;border-radius:22px;background:var(--fan-glass-bg);backdrop-filter:blur(24px) saturate(190%);-webkit-backdrop-filter:blur(24px) saturate(190%);border:1px solid var(--fan-glass-border);box-shadow:var(--fan-glass-shadow),inset 0 1px #ffffffa6;transition:transform .4s var(--fan-ease-spring),box-shadow .35s var(--fan-ease-out),background .35s var(--fan-ease-out)}.fan-tabbar--scrolled .fan-tabbar__inner{transform:translateY(-2px) scale(.985);box-shadow:0 8px 32px #1e212b24,inset 0 1px #ffffffb3;background:#ffffffd1}.fan-tabbar__link{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.1rem;padding:.35rem .2rem;font-size:.58rem;font-weight:600;color:var(--coxa-text-muted);text-decoration:none;border-radius:16px;transition:color .2s,background .2s;min-height:2.85rem;position:relative}.fan-tabbar__icon{display:grid;place-items:center;transition:transform .35s var(--fan-ease-spring)}.fan-tabbar__link--active .fan-tabbar__icon{animation:fan-tab-pop .45s var(--fan-ease-spring)}.fan-tabbar__link--active{color:var(--coxa-primary)}.fan-tabbar__link--active svg{stroke:var(--coxa-primary)}.fan-tabbar__link:active:not(.fan-tabbar__link--active){background:#1e212b0d}.fan-tabbar__label{line-height:1;letter-spacing:.01em}@keyframes fan-tab-pop{0%{transform:scale(1)}40%{transform:scale(1.18)}to{transform:scale(1)}}.fan-home{display:flex;flex-direction:column;gap:var(--coxa-space-4)}.fan-home__hero{margin-bottom:var(--coxa-space-1)}.fan-home__eyebrow{margin:0 0 .25rem;font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--coxa-primary)}.fan-home__title{margin:0;font-size:2rem;font-weight:800;line-height:1.1;letter-spacing:-.03em;color:var(--coxa-text)}.fan-home__match{display:block;text-decoration:none;color:inherit;padding:var(--coxa-space-5);border-radius:20px;background:linear-gradient(145deg,var(--coxa-ink) 0%,#2a3140 100%);color:var(--coxa-text-inverse);box-shadow:0 12px 32px #1e212b38;transition:transform .25s var(--fan-ease-spring)}.fan-home__match:active{transform:scale(.985)}.fan-home__match-badge{display:inline-block;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--coxa-gold);margin-bottom:.65rem}.fan-home__match-title{margin:0 0 .35rem;font-size:1.25rem;font-weight:700;line-height:1.25}.fan-home__match-date{margin:0 0 var(--coxa-space-4);font-size:.85rem;opacity:.75;text-transform:capitalize}.fan-home__match-cta{display:inline-flex;align-items:center;gap:.15rem;font-size:.88rem;font-weight:600;color:var(--coxa-gold)}.fan-home__match--empty{background:linear-gradient(145deg,#3a4254 0%,var(--coxa-ink) 100%)}.fan-home__stats{display:grid;grid-template-columns:1fr 1fr;gap:var(--coxa-space-3)}.fan-home__stat{display:flex;flex-direction:column;gap:.2rem;padding:var(--coxa-space-4);border-radius:16px;text-decoration:none;color:inherit;background:var(--coxa-surface);border:1px solid var(--coxa-border);box-shadow:var(--coxa-shadow-sm);transition:transform .2s var(--fan-ease-spring)}.fan-home__stat:active{transform:scale(.97)}.fan-home__stat-label{font-size:.75rem;font-weight:600;color:var(--coxa-text-muted);text-transform:uppercase;letter-spacing:.04em}.fan-home__stat-value{font-size:1.5rem;font-weight:800;letter-spacing:-.02em;line-height:1.1}.fan-home__stat--points .fan-home__stat-value{color:var(--coxa-primary)}.fan-home__stat--tickets .fan-home__stat-value{color:var(--coxa-ink)}.fan-home__offer{display:block;text-decoration:none;color:inherit;padding:var(--coxa-space-4);border-radius:16px;background:linear-gradient(135deg,var(--coxa-accent-soft),var(--coxa-primary-soft));border:1px solid rgba(255,200,0,.35);transition:transform .2s var(--fan-ease-spring)}.fan-home__offer:active{transform:scale(.985)}.fan-home__offer-tag{display:inline-block;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--coxa-primary);margin-bottom:.35rem}.fan-home__offer strong{display:block;font-size:1rem;margin-bottom:.25rem}.fan-home__offer p{margin:0 0 .5rem;font-size:.85rem;color:var(--coxa-text-muted);line-height:1.4}.fan-home__offer-link{display:inline-flex;align-items:center;gap:.1rem;font-size:.85rem;font-weight:600;color:var(--coxa-primary)}.fan-ios-group__label{margin:0 0 var(--coxa-space-2);padding-left:.35rem;font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--coxa-text-muted)}.fan-ios-list{list-style:none;margin:0;padding:0;border-radius:16px;overflow:hidden;background:var(--coxa-surface);border:1px solid var(--coxa-border);box-shadow:var(--coxa-shadow-sm)}.fan-ios-row{display:flex;align-items:center;gap:var(--coxa-space-3);padding:.85rem var(--coxa-space-4);text-decoration:none;color:inherit;border-bottom:1px solid var(--coxa-border);transition:background .15s}.fan-ios-list li:last-child .fan-ios-row{border-bottom:none}.fan-ios-row:active{background:var(--coxa-surface-hover)}.fan-ios-row__icon{flex-shrink:0;width:2.25rem;height:2.25rem;border-radius:10px;display:grid;place-items:center}.fan-ios-row__icon--green{background:var(--coxa-primary-soft);color:var(--coxa-primary)}.fan-ios-row__icon--gold{background:var(--coxa-accent-soft);color:#b89400}.fan-ios-row__icon--orange{background:var(--coxa-orange-soft);color:var(--coxa-orange)}.fan-ios-row__icon--ink{background:#1e212b14;color:var(--coxa-ink)}.fan-ios-row__body{flex:1;min-width:0;display:flex;flex-direction:column;gap:.1rem}.fan-ios-row__label{font-size:.95rem;font-weight:600;color:var(--coxa-text)}.fan-ios-row__detail{font-size:.78rem;color:var(--coxa-text-muted)}.fan-ios-row__chevron{flex-shrink:0;color:var(--coxa-border-strong)}.fan-main .page-header{margin-bottom:var(--coxa-space-4)}.fan-main .page-header h1{font-size:1.75rem;font-weight:800;letter-spacing:-.02em;margin-bottom:.35rem}.fan-main .page-header p{font-size:.875rem;margin-bottom:0;color:var(--coxa-text-muted)}.fan-main .grid,.fan-main .cards{grid-template-columns:1fr;gap:var(--coxa-space-3)}.fan-main .card{padding:var(--coxa-space-4);border-radius:16px}.fan-main .panel{padding:var(--coxa-space-4);margin-bottom:var(--coxa-space-4);border-radius:16px}.fan-main .commerce-layout{grid-template-columns:1fr;gap:var(--coxa-space-4)}.fan-main .product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--coxa-space-3)}.fan-main .product-card__title{font-size:.9rem}.fan-main .product-card__price{font-size:1.05rem}.fan-main .cart-panel--sticky{position:static}.fan-main .btn{min-height:2.75rem;border-radius:12px}.fan-main .btn--primary{font-size:.95rem}.fan-main .coxa-data-table-scroll{margin:0 calc(-1 * var(--coxa-space-4));padding:0 var(--coxa-space-4)}.ticket-card__qr{margin-top:var(--coxa-space-4);padding-top:var(--coxa-space-4);border-top:1px solid var(--coxa-border);text-align:center}.ticket-card__qr-preview{display:inline-flex;padding:var(--coxa-space-3);border:1px solid var(--coxa-border);border-radius:var(--coxa-radius);background:var(--coxa-surface);cursor:pointer;transition:transform .2s var(--fan-ease-spring),box-shadow .2s}.ticket-card__qr-preview:active{transform:scale(.97)}.ticket-card__qr-label{margin:var(--coxa-space-2) 0 0;font-size:.78rem;color:var(--coxa-text-muted)}.ticket-qr-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:flex-end;justify-content:center;padding:0;background:#1e212b8c;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);animation:ticket-qr-backdrop-in .25s var(--fan-ease-out)}.ticket-qr-modal{width:100%;max-width:var(--fan-app-width);max-height:min(92dvh,720px);background:var(--coxa-surface);border-radius:24px 24px 0 0;box-shadow:0 -12px 48px #1e212b47;overflow:hidden;animation:ticket-qr-sheet-in .35s var(--fan-ease-spring)}.ticket-qr-modal__head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--coxa-space-3);padding:calc(var(--coxa-space-4) + var(--fan-safe-top)) var(--coxa-space-4) var(--coxa-space-4);border-bottom:1px solid var(--coxa-border);background:var(--coxa-surface)}.ticket-qr-modal__eyebrow{margin:0 0 .25rem;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--coxa-primary)}.ticket-qr-modal__head h3{margin:0 0 .35rem;font-size:1.15rem;font-weight:700;line-height:1.25;color:var(--coxa-text)}.ticket-qr-modal__head p{margin:0;font-size:.85rem;color:var(--coxa-text-muted);line-height:1.35}.ticket-qr-modal__close{flex-shrink:0;display:grid;place-items:center;width:2.25rem;height:2.25rem;padding:0;border:none;border-radius:var(--coxa-radius-full);background:var(--coxa-surface-hover);color:var(--coxa-text-muted);cursor:pointer;transition:background .15s,color .15s}.ticket-qr-modal__close:hover{background:var(--coxa-border);color:var(--coxa-text)}.ticket-qr-modal__body{padding:var(--coxa-space-5) var(--coxa-space-4) calc(var(--coxa-space-5) + var(--fan-safe-bottom));text-align:center;overflow-y:auto}.ticket-qr-modal__code{display:inline-flex;padding:var(--coxa-space-4);border:1px solid var(--coxa-border);border-radius:var(--coxa-radius-lg);background:#fff;margin-bottom:var(--coxa-space-4);box-shadow:var(--coxa-shadow-sm)}.ticket-qr-modal__hint{margin:0 0 var(--coxa-space-2);font-size:.9rem;font-weight:600;color:var(--coxa-text)}.ticket-qr-modal__meta{margin:0 0 var(--coxa-space-3);font-size:.78rem;color:var(--coxa-text-muted)}.ticket-qr-modal__token{display:block;word-break:break-all;font-size:.68rem;line-height:1.4;padding:var(--coxa-space-3);background:var(--coxa-surface-raised);border-radius:var(--coxa-radius-sm);margin-bottom:var(--coxa-space-4);color:var(--coxa-text-muted)}.ticket-qr-modal__actions{display:flex;flex-direction:column;gap:var(--coxa-space-2)}.ticket-qr-modal__actions .btn{width:100%;min-height:3rem}.ticket-qr-modal__unavailable{display:flex;flex-direction:column;gap:var(--coxa-space-4);padding:var(--coxa-space-2) 0}.ticket-qr-modal__unavailable p{margin:0;color:var(--coxa-text-muted)}@keyframes ticket-qr-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes ticket-qr-sheet-in{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@media(min-width:481px){.ticket-qr-backdrop{align-items:center;padding:var(--coxa-space-4)}.ticket-qr-modal{border-radius:20px;max-height:min(88vh,680px);animation:ticket-qr-modal-in .3s var(--fan-ease-spring)}.ticket-qr-modal__head{padding-top:var(--coxa-space-4)}.ticket-qr-modal__body{padding-bottom:var(--coxa-space-5)}.ticket-qr-modal__actions{flex-direction:row;justify-content:center}.ticket-qr-modal__actions .btn{width:auto;min-width:8rem}}@keyframes ticket-qr-modal-in{0%{opacity:0;transform:translateY(16px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@media(prefers-reduced-motion:reduce){.ticket-qr-backdrop,.ticket-qr-modal{animation:none}}@media(max-width:360px){.fan-main .product-grid{grid-template-columns:1fr}.fan-home__title{font-size:1.75rem}}@media(prefers-reduced-motion:reduce){.fan-header,.fan-header__titles,.fan-header__mark,.fan-tabbar__inner,.fan-tabbar__icon,.fan-home__match,.fan-home__stat,.fan-home__offer{transition:none;animation:none}.fan-tabbar__link--active .fan-tabbar__icon{animation:none}}.order-list{display:flex;flex-direction:column;gap:.75rem}.order-card{background:var(--coxa-surface);border:1px solid var(--coxa-border);border-radius:16px;padding:1rem 1.1rem;box-shadow:0 1px 4px #1e212b0d;transition:box-shadow .15s}.order-card:hover{box-shadow:0 4px 16px #1e212b17}.order-card__header{display:flex;justify-content:space-between;align-items:flex-start;gap:.5rem;margin-bottom:.65rem}.order-card__meta{display:flex;flex-direction:column;gap:.15rem}.order-card__number{font-size:.82rem;font-family:monospace;color:var(--coxa-text-muted);background:#0000000a;padding:.1rem .4rem;border-radius:6px}.order-card__date{font-size:.75rem;color:var(--coxa-text-muted)}.order-card__total{font-size:1.05rem;font-weight:700;color:var(--coxa-primary)}.order-card__lines{display:flex;flex-direction:column;gap:.25rem;margin-bottom:.65rem;padding-bottom:.65rem;border-bottom:1px solid rgba(0,0,0,.06)}.order-card__line{display:flex;align-items:center;gap:.35rem;font-size:.85rem}.order-card__line-name{flex:1}.order-card__line-qty{color:var(--coxa-text-muted);font-size:.8rem}.order-card__line-price{font-weight:600;font-size:.82rem}.order-qr-toggle{display:inline-flex;align-items:center;gap:.3rem;padding:.35rem .65rem;border:1px solid var(--coxa-border);border-radius:999px;background:var(--coxa-surface);color:var(--coxa-text-muted);font-size:.75rem;font-weight:500;cursor:pointer;transition:background .12s,color .12s,border-color .12s}.order-qr-toggle:hover{background:var(--coxa-primary-soft);color:var(--coxa-primary);border-color:var(--coxa-primary)}.order-qr-toggle:disabled{opacity:.5;cursor:not-allowed}.order-qr-panel{margin-top:.65rem;padding:.75rem;background:var(--coxa-bg);border-radius:12px;border:1px solid var(--coxa-border)}.order-qr-line{margin-bottom:.75rem}.order-qr-line:last-child{margin-bottom:0}.order-qr-line__name{font-size:.8rem;font-weight:600;display:flex;align-items:center;gap:.35rem;margin-bottom:.5rem}.order-qr-line__qty{font-size:.72rem;color:var(--coxa-text-muted);font-weight:400}.order-qr-line__grid{display:flex;flex-wrap:wrap;gap:.6rem}.order-qr-token{display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:.5rem;background:var(--coxa-surface);border-radius:10px;border:1px solid var(--coxa-border)}.order-qr-token--used{opacity:.4;filter:grayscale(1)}.order-qr-token__label{font-size:.65rem;color:var(--coxa-text-muted);font-weight:600;text-transform:uppercase;letter-spacing:.05em}
