:root{color:#f4efe5;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--panel:#0a121fc7;--panel-strong:#101c2deb;--border:#ffcb762e;--accent:#ffb347;--accent-strong:#ff6746;--soft:#f4efe5b8;--success:#63d7b1;--warning:#ffd27b;--danger:#ff9f8f;background:radial-gradient(circle at top,#ffb3473d,#0000 32%),radial-gradient(circle at 100%,#ff67461f,#0000 30%),linear-gradient(135deg,#08111f 0%,#10233a 52%,#172f42 100%);font-family:Avenir Next,Trebuchet MS,sans-serif;font-weight:500;line-height:1.5}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0}button,input{font:inherit}button{cursor:pointer}.app-shell{width:min(1400px,100vw - 32px);margin:0 auto;padding:24px 0 40px}.shell-grid,.content-grid,.hero-metrics,.active-team-grid,.action-row{gap:18px;display:grid}.shell-grid{gap:20px}.content-grid{grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr)}.scan-activity-grid{grid-template-columns:1fr 1fr}.scan-activity-grid .history-list{grid-template-columns:1fr 1fr;grid-auto-rows:60px;align-content:start}.hero-metrics,.active-team-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.action-row{grid-template-columns:repeat(auto-fit,minmax(160px,max-content));align-items:center}.action-row-inline{margin-top:18px}.action-row-stack{margin-top:24px}.status-shell{place-items:center;min-height:calc(100vh - 64px);display:grid}.panel{border:1px solid var(--border);background:linear-gradient(180deg, #ffffff08, transparent 22%), var(--panel);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-radius:28px;padding:24px;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff0a,0 28px 80px #00000042}.panel:before{content:"";pointer-events:none;opacity:.1;background-image:linear-gradient(#ffffff0a 1px,#0000 1px),linear-gradient(90deg,#ffffff0a 1px,#0000 1px);background-size:28px 28px;position:absolute;inset:0}.auth-panel{width:min(720px,100%)}.panel-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.panel-header-right{flex-direction:row;flex-shrink:0;align-items:center;gap:8px;display:flex}.eyebrow,.metric-label,.field,.field-hint,.hero-copy,.result-row small{color:var(--soft)}.eyebrow,.metric-label{text-transform:uppercase;letter-spacing:.14em;margin:0 0 8px;font-size:.8rem}h1,h2,strong{margin:0;font-family:Rockwell,Avenir Next,sans-serif}h1{font-size:clamp(2.7rem,6vw,5rem);line-height:.95}h2{font-size:clamp(1.5rem,2.4vw,2.3rem)}.hero-copy,.field-hint{max-width:62ch;margin:14px 0 0}.metric-card,.team-card,.result-row{background:#ffffff0a;border:1px solid #ffffff14;border-radius:22px}.metric-card,.team-card{padding:18px}.metric-card strong,.team-balance strong{margin-top:8px;font-size:1.28rem;display:block}.scan-form,.search-form,.auth-form{gap:16px;margin-top:24px;display:grid}.field{gap:8px;display:grid}.field-inline{justify-content:space-between;align-items:center;gap:12px;display:flex}.scan-input,.text-input{background:var(--panel-strong);width:100%;color:inherit;border:1px solid #ffcb7647;border-radius:20px;outline:none;padding:18px 20px;transition:border-color .18s,box-shadow .18s,transform .18s}.scan-input{text-transform:uppercase;letter-spacing:.1em;font-size:clamp(1.4rem,2.6vw,2.1rem)}.text-input{font-size:1.05rem}.scan-input:focus,.text-input:focus{border-color:#ffb347d9;transform:translateY(-1px);box-shadow:0 0 0 4px #ffb34724}.primary-button,.secondary-button,.danger-button{border:none;border-radius:999px;padding:13px 18px;transition:transform .18s,opacity .18s}.primary-button{background:linear-gradient(135deg, var(--accent) 0%, var(--accent-strong) 100%);color:#231104;font-weight:800}.secondary-button{color:inherit;background:#ffffff14;border:1px solid #ffffff1a}.danger-button{color:#fff;background:linear-gradient(135deg,#c0392b 0%,#922b21 100%);font-weight:800}.primary-button:hover,.secondary-button:hover,.danger-button:hover,.result-row:hover{transform:translateY(-1px)}.primary-button:disabled,.danger-button:disabled{opacity:.72;cursor:progress}.status-pill,.badge,.status-tag{white-space:nowrap;border-radius:999px;align-items:center;gap:10px;display:inline-flex}.status-pill{border:1px solid var(--border);background:#0e1c2ecc;padding:12px 16px}.status-dot{border-radius:50%;width:11px;height:11px}.status-pill-online .status-dot{background:var(--success)}.status-pill-checking .status-dot{background:var(--warning)}.status-pill-offline-ish .status-dot{background:var(--danger)}.feedback-strip{background:#63d7b114;border:1px solid #63d7b133;border-radius:18px;margin:18px 0 0;padding:14px 16px}.feedback-strip-danger{background:#ff9f8f14;border-color:#ff9f8f4d}.feedback-strip-warning{background:#ffd27b14;border-color:#ffd27b47}.badge,.status-tag{background:#ffffff14;padding:8px 12px;font-size:.9rem}.status-tag-success{background:#63d7b129}.team-card-header{justify-content:space-between;gap:16px;display:flex}.team-balance{margin-top:18px}.search-results{gap:12px;margin-top:18px;display:grid}.admin-toolbar{grid-template-columns:repeat(4,auto) minmax(240px,1fr)}.admin-search-field{min-width:0}.admin-table-panel{padding:0}.admin-table-wrap{overflow:auto}.admin-table{border-collapse:collapse;width:100%}.admin-table th,.admin-table td{text-align:left;vertical-align:top;border-bottom:1px solid #ffffff14;padding:16px 18px}.table-sort{color:inherit;font:inherit;background:0 0;border:none;padding:0;font-weight:700}.table-actions{flex-wrap:wrap;gap:10px;display:flex}.modal-overlay{z-index:20;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#060c14b8;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal-panel{width:min(1100px,100%);max-height:calc(100vh - 40px);overflow:auto}.history-list{gap:8px;max-height:400px;margin-top:20px;display:grid;overflow-y:auto}.history-entry{background:#ffffff0d;border-radius:8px;align-items:center;transition:background .15s;display:flex;overflow:hidden}.history-entry:hover{background:#ffffff1a}.history-entry--reversal{background:#63d7b10f;border:1px solid #63d7b126}.history-entry--reversal:hover{background:#63d7b11f}.history-entry--reversal .history-entry-units{color:var(--success)}.history-entry-body{color:inherit;text-align:left;cursor:pointer;background:0 0;border:none;flex:1;align-items:center;gap:12px;min-width:0;padding:10px 10px 10px 14px;display:flex;overflow:hidden}.history-entry-undo{color:#ffffff73;cursor:pointer;background:0 0;border:1px solid #ffffff1f;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;margin-right:6px;font-size:14px;transition:border-color .15s,color .15s,background .15s;display:flex}.history-entry-undo:hover:not(:disabled){border-color:var(--danger);color:var(--danger);background:#ff9f8f1a}.history-entry-undo:disabled{opacity:.4;cursor:default}.history-entry-main{flex-direction:row;align-items:center;gap:10px;min-width:0;display:flex}.history-entry-index{color:#fff9;border:1.5px solid #ffffff40;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:11px;font-weight:700;display:flex}.history-entry-label{flex-direction:column;gap:2px;min-width:0;display:flex;overflow:hidden}.history-entry-meta{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:2px;display:flex}.history-entry-units{color:var(--accent);font-weight:700}.history-filters{grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:12px;margin-top:18px;display:grid}.history-table-wrap{margin-top:18px;overflow:auto}.ranking-filters{grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:12px;margin-top:24px;display:grid}.ranking-actions{align-self:end}.ranking-table-panel{padding:0}.ranking-cards{gap:16px;display:grid}.ranking-card .hero-metrics{margin-top:18px}.history-row{background:#ffffff0a;border:1px solid #ffffff14;border-radius:20px;justify-content:space-between;gap:16px;padding:16px 18px;display:flex}.team-action-layout{grid-template-rows:auto 1fr;align-items:stretch;height:calc(100vh - 64px)}.team-qr-preview,.team-portal-qr-wrap{background:#ffffff0a;border:1px solid #ffffff14;border-radius:24px;justify-items:center;gap:14px;margin-top:12px;padding:18px;display:grid}.team-qr-preview-image,.team-portal-qr-image{aspect-ratio:1;object-fit:contain;background:#fff;border-radius:24px;width:min(100%,460px);padding:18px}.team-portal-grid{grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr)}.team-portal-identity{min-width:0}.team-portal-identity h1{overflow-wrap:anywhere}.team-portal-qr-header{align-items:flex-start}.team-portal-qr-panel{min-height:0}.team-action-layout .keypad-panel{grid-row:1/3;align-self:stretch}.team-action-history-panel{flex-direction:column;min-height:0;display:flex;overflow:hidden}.team-action-history-panel .history-list{flex:1;grid-template-columns:1fr 1fr;grid-auto-rows:56px;align-content:start;gap:8px;min-height:0;margin-top:20px;display:grid;overflow-y:auto}.keypad-grid{grid-template-columns:repeat(3,minmax(86px,1fr));gap:12px;margin-top:18px;display:grid}.keypad-button{min-height:84px;color:inherit;background:#ffffff0f;border:1px solid #ffffff14;border-radius:22px;font-size:1.5rem;font-weight:800}.keypad-button-secondary{font-size:1rem}.amount-display{background:var(--panel-strong);text-align:right;border:1px solid #ffcb7647;border-radius:24px;margin-top:20px;padding:22px 24px;font-family:Rockwell,Avenir Next,sans-serif;font-size:clamp(2.8rem,7vw,5rem);line-height:1}.quick-amount-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:18px;display:grid}.no-select{-webkit-user-select:none;user-select:none}.quick-amount-button{min-height:64px;font-size:1.25rem;font-weight:800}.result-row{width:100%;color:inherit;text-align:left;justify-content:space-between;align-items:center;padding:16px 18px;display:flex}.result-row span{gap:4px;display:grid}.result-units{font-weight:700}@media (width<=900px){.content-grid{grid-template-columns:1fr}.panel-header{flex-direction:column}.team-portal-hero-header,.team-portal-qr-header{flex-direction:row;align-items:flex-start}.team-portal-hero-header .panel-header-right{align-self:flex-start}.keypad-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-toolbar{grid-template-columns:1fr}.history-row{flex-direction:column}.history-filters,.ranking-filters{grid-template-columns:1fr}}@media (width<=640px){.app-shell{width:min(100vw - 20px,100%);padding:16px 0 28px}.panel{border-radius:22px;padding:18px}.scan-input{font-size:1.2rem}.team-portal-hero-header{gap:10px}.team-portal-hero-header .secondary-button,.team-portal-qr-header .secondary-button{padding:10px 14px;font-size:.95rem}}
