:root{--queue-ink:#132238;--queue-muted:#64748b;--queue-surface:#fff;--queue-canvas:#f3f7fb;--queue-primary:#0f766e;--queue-primary-dark:#115e59;--queue-border:#dce6ef}.queue-app{background:radial-gradient(circle at top right, #14b8a61f, transparent 30rem), var(--queue-canvas);min-height:100vh;color:var(--queue-ink);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.queue-navbar{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#132238f5}.queue-navbar .navbar-brand{letter-spacing:-.02em}.queue-main{padding-block:clamp(1.5rem,4vw,3.5rem)}.queue-page-header{max-width:48rem;margin:0 auto clamp(1.5rem,4vw,2.5rem)}.queue-page-header__eyebrow{color:var(--queue-primary);letter-spacing:.1em;text-transform:uppercase;font-size:.75rem;font-weight:800}.queue-page-header__title{color:var(--queue-ink);letter-spacing:-.045em;font-size:clamp(1.75rem,5vw,2.75rem);font-weight:800}.queue-page-header__subtitle{color:var(--queue-muted);font-size:clamp(1rem,2vw,1.15rem)}.queue-panel,.queue-service-card,.ticket-card,.operator-card{border:1px solid var(--queue-border);background:var(--queue-surface);border-radius:1.25rem;box-shadow:0 14px 35px #0f172a12}.queue-service-card{height:100%;transition:transform .2s,box-shadow .2s,border-color .2s}.queue-service-card:hover{border-color:#0f766e59;transform:translateY(-4px);box-shadow:0 18px 40px #0f172a1f}.queue-service-card__icon{width:3.25rem;height:3.25rem;color:var(--queue-primary);background:#e6fffb;border-radius:1rem;place-items:center;display:grid}.queue-app .btn-primary{border-color:var(--queue-primary);background-color:var(--queue-primary)}.queue-app .btn-primary:hover,.queue-app .btn-primary:focus{border-color:var(--queue-primary-dark);background-color:var(--queue-primary-dark)}.ticket-card{overflow:hidden}.ticket-number-box{color:#fff;background:linear-gradient(135deg,#0f766e,#0f3f5c);position:relative;overflow:hidden}.ticket-number-box:after{content:"";border:2rem solid #ffffff14;border-radius:50%;width:16rem;height:16rem;position:absolute;top:-7rem;right:-5rem}.ticket-code{z-index:1;letter-spacing:-.08em;font-size:clamp(4rem,14vw,6.5rem);font-weight:900;line-height:.95;position:relative}.ticket-audio-toggle{z-index:2;position:absolute;top:1rem;right:1rem}.ticket-stat{border:1px solid var(--queue-border);background:#f8fafc;border-radius:1rem;min-height:7.75rem}.ticket-stat__value{color:var(--queue-ink);font-size:clamp(2rem,8vw,2.75rem);font-weight:800;line-height:1}.ticket-follow-card{background:#ecfdf5;border:1px solid #a7f3d0;border-radius:1rem}.customer-audio-modal{z-index:1055;background:#0f172ab8;display:block}.operator-shell{max-width:60rem}.operator-card{overflow:hidden}.operator-icon{width:3.75rem;height:3.75rem;color:var(--queue-primary);background:#e6fffb;border-radius:1.1rem;place-items:center;display:grid}.operator-waiting{border:1px solid var(--queue-border);background:#f8fafc;border-radius:1rem;min-width:9rem}.touch-action-none{touch-action:manipulation;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none}.touch-btn{min-height:3.75rem;transition:transform .1s,box-shadow .15s,background-color .15s}.touch-btn:active{transform:scale(.98)}.touch-btn-hero{border-radius:1.1rem;min-height:5.5rem;font-size:clamp(1.25rem,3vw,1.65rem)}.operator-active-ticket{background:linear-gradient(135deg,#0f766e,#164e63)}.display-ticket-code{letter-spacing:-.07em;font-size:clamp(4rem,12vw,6rem);font-weight:900;line-height:1}.touch-service-tile{cursor:pointer;border:2px solid var(--queue-border);border-radius:1rem;min-height:5rem;transition:border-color .2s,background-color .2s,box-shadow .2s}.touch-service-tile:hover,.touch-service-tile:focus-visible{border-color:var(--queue-primary);background:#f0fdfa}.touch-service-tile.selected{border-color:var(--queue-primary);background:#e6fffb;box-shadow:0 0 0 3px #0f766e29}.transfer-priority-control{cursor:pointer;width:3.2em;height:1.6em}@media (width<=575.98px){.ticket-audio-toggle{margin:.75rem .75rem 0 auto;display:inline-flex;position:static}.operator-waiting{width:100%}.touch-btn .btn-label{display:none}}
