:root{--app-accent: #696cff;--ease-out: cubic-bezier(.23, 1, .32, 1)}html{-webkit-text-size-adjust:100%}body{margin:0;background:#f5f5f9;color:#566a7f}button,a,select{touch-action:manipulation}button{-webkit-user-select:none;user-select:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #696cff;outline-offset:3px}.spa-layout .layout-container{min-height:100dvh}.spa-layout .layout-menu{overflow-y:auto}.spa-layout .app-brand-link{min-width:0}.spa-layout .app-brand-text{white-space:nowrap}.spa-content{min-width:0}.spa-content>div{min-width:0}.menu-close{padding:4px;margin-left:auto}.account-menu>.dropdown-menu{top:100%;right:0;left:auto}.account-menu>button{border:0;background:transparent}.table-sort{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:0;border:0;background:transparent;color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;text-align:left;cursor:pointer}.table-sort-arrows{display:inline-flex;flex-direction:column;font-size:10px;line-height:8px;color:#a1acb8}.table-sort-arrows .active{color:#566a7f}.monthly-filter-grid>label{min-width:0}.monthly-filter-grid .select2-container{margin-top:6px;font-weight:400}.account-name{min-width:0;overflow-wrap:anywhere}.profile-dialog{max-width:1140px}.profile-dialog .dialog-heading{margin-bottom:32px}.profile-form label{text-transform:uppercase;font-size:13px}.profile-form .form-control{text-transform:none}.profile-form .input-group{margin-top:6px}.profile-form .input-group .form-control{margin-top:0}.profile-photo-field{margin-top:12px}.profile-photo-preview{display:block;width:150px;height:150px;object-fit:contain;margin:20px 0}.profile-dialog .dialog-footer{border-top:0;margin-top:40px}.animated-dialog[open]{animation:dialog-fade-in .18s ease-out}.animated-dialog[open]::backdrop{animation:backdrop-fade-in .18s ease-out}.animated-dialog.dialog-closing{pointer-events:none}.animated-dialog.dialog-closing::backdrop{animation:backdrop-fade-out .18s ease-in forwards}@keyframes dialog-fade-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes backdrop-fade-in{0%{background:transparent}to{background:#1c254180}}@keyframes backdrop-fade-out{0%{background:#1c254180}to{background:transparent}}@media(prefers-reduced-motion:reduce){.animated-dialog[open],.animated-dialog[open]::backdrop,.animated-dialog.dialog-closing::backdrop{animation:none}}.spa-layout .layout-overlay{border:0}.export-menu,.advanced-filter-menu{position:relative}.export-menu>summary,.advanced-filter-menu>summary{list-style:none}.export-menu>summary::-webkit-details-marker,.advanced-filter-menu>summary::-webkit-details-marker{display:none}.export-menu[open]>.dropdown-menu,.advanced-filter-menu[open]>.dropdown-menu{display:block}.advanced-filter-menu .dropdown-menu{min-width:280px;padding:16px}.table-controls{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:16px}.table-controls>label{display:flex;align-items:center;gap:8px;margin:0}.table-controls .form-control{width:200px}.table-controls .form-select{width:auto}.section-heading,.pagination-bar{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:20px}.toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.filter-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:20px}.filter-grid label,.form-grid label{display:block;min-width:0}.filter-grid .form-control,.filter-grid .form-select,.form-grid .form-control,.form-grid .form-select{margin-top:6px}.monthly-filter-grid{grid-template-columns:repeat(3,minmax(0,1fr)) auto;margin-top:0;margin-bottom:16px}.filter-actions{align-self:end;text-align:right}.user-filters{grid-template-columns:minmax(180px,2fr) repeat(5,minmax(100px,1fr));margin-bottom:22px}.table-responsive{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}.table th{white-space:nowrap}.table td{min-width:70px;vertical-align:top}.table td,.break-text{overflow-wrap:anywhere}.user-table{min-width:1100px}.user-table td:nth-child(3){min-width:160px}.user-table td:nth-child(4){min-width:140px}.user-table td:nth-child(5){min-width:220px}.user-table td:nth-child(6){min-width:160px}.user-table td:nth-child(7){min-width:220px}.user-table td:last-child{min-width:160px}.user-table details ul{max-height:220px;overflow-y:auto}.company-list{max-height:220px;overflow-y:auto;padding-left:20px}.table-actions{flex-wrap:nowrap}.import-drop-area{min-height:200px;border-style:dashed!important;cursor:pointer}.import-drop-area:focus-within{outline:3px solid var(--app-accent)}.pagination-bar{margin:20px 0 0;font-size:13px}.report-tabs{display:flex;gap:0;flex-wrap:wrap;justify-content:center}.report-tabs .nav-link{white-space:normal}.report-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:24px;margin-top:24px}.report-grid>*{min-width:0}.report-table-controls{font-size:13px;gap:8px}.report-table-controls .form-control{width:110px}.report-chart{position:relative;width:100%;height:400px;min-width:0}.dashboard-panel{background:#fff;padding:24px;border-radius:12px;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a}.dashboard-title{font-size:20px;font-weight:600;color:#1f2937;margin-bottom:24px}.daily-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.daily-stat{border-radius:12px;padding:24px;text-align:center;color:#fff;box-shadow:0 1px 3px #0000001a}.daily-stat h2{font-size:18px;font-weight:600;color:inherit;margin-bottom:8px}.daily-stat strong{font-size:36px;line-height:40px}.daily-stat.waiting{background:#ea580c}.daily-stat.served{background:#16a34a}.daily-stat.total{background:#2563eb}.daily-charts{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:24px}.daily-charts>div{min-width:0}.daily-charts .report-chart{height:300px}.visits-report-grid{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}.summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.summary-grid>div{display:flex;flex-direction:column;gap:12px;padding:20px;background:#f5f5ff;border-radius:8px}.summary-grid strong{font-size:24px;overflow-wrap:anywhere}.app-dialog{width:min(1140px,calc(100% - 32px));max-height:calc(100dvh - 32px);border:0;border-radius:8px;padding:24px;color:#566a7f;overflow-y:auto;overscroll-behavior:contain;box-shadow:0 20px 80px #1c254133}.app-dialog::backdrop{background:#1c254180}.download-dialog{max-width:420px;padding:36px 28px;text-align:center;border-radius:16px}.download-visual{display:grid;place-items:center;position:relative;width:100px;height:100px;margin:0 auto 28px;background:#f0efff;border-radius:50%;color:var(--app-accent)}.download-orbit{position:absolute;inset:-5px;border:3px solid #696cff22;border-top-color:var(--app-accent);border-radius:50%;animation:download-spin 1.2s linear infinite}.download-file{display:flex;flex-direction:column;align-items:center;gap:2px}.download-file i{font-size:38px}.download-file span{font-size:11px;font-weight:700;letter-spacing:1px;text-transform:uppercase}.download-dialog h2{margin-bottom:12px}.download-dialog p{font-size:14px;line-height:1.7}.download-progress-track{height:4px;background:#ecebff;border-radius:8px;overflow:hidden;margin:24px 0 18px}.download-progress-track span{display:block;width:35%;height:100%;background:var(--app-accent);border-radius:inherit;animation:download-progress 1.5s ease-in-out infinite}@keyframes download-spin{to{transform:rotate(360deg)}}@keyframes download-progress{0%{transform:translate(-100%)}to{transform:translate(390%)}}@media(prefers-reduced-motion:reduce){.download-orbit,.download-progress-track span{animation:none}.download-progress-track span{margin:auto}}.dialog-heading{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:24px}.dialog-footer{display:flex;justify-content:flex-end;gap:10px;margin-top:24px;padding-top:16px;border-top:1px solid #d9dee3}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.user-form-grid>label:first-child{grid-column:1 / -1}.full-width{grid-column:1 / -1}.company-options{max-height:240px;overflow-y:auto;border:1px solid #d9dee3;border-radius:8px;padding:16px}.photo-preview{display:block;max-width:180px;max-height:180px;margin-top:14px;object-fit:contain}.skeleton-region{min-width:0;padding:12px 0}.skeleton{position:relative;overflow:hidden;background:#e7e9ef;border-radius:6px}.skeleton:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,#ffffff90,transparent);transform:translate(-100%);animation:skeleton-shimmer 1.5s linear infinite}.skeleton-line{height:28px;margin-bottom:18px}.skeleton-chart{height:360px}@keyframes skeleton-shimmer{to{transform:translate(100%)}}.login-cover{min-height:100dvh;position:relative}.auth-cover-brand{position:absolute;top:24px;left:32px;z-index:1}.login-cover-inner{min-height:100dvh;display:grid;grid-template-columns:minmax(0,2fr) minmax(400px,1fr)}.login-illustration{display:flex;align-items:center;justify-content:center;padding:80px 48px 48px}.login-illustration img{width:100%;height:auto}.login-form-panel{background:#fff;display:flex;align-items:center;padding:48px}.login-form-content{width:100%;max-width:400px;margin:auto}@media(min-width:992px)and (max-width:1199px){.login-cover-inner{grid-template-columns:minmax(0,7fr) minmax(0,5fr)}.login-form-panel{padding:32px}}@media(max-width:1199px){.user-filters{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:991px){.report-grid,.daily-charts{grid-template-columns:minmax(0,1fr)}.monthly-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.login-cover-inner{grid-template-columns:minmax(0,1fr)}.login-illustration{display:none}.login-form-panel{padding:140px 32px 48px}.summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:575px){.visits-toolbar{position:relative}.visits-toolbar .visits-filter-menu{position:static}.visits-filter-menu>.dropdown-menu{left:0;right:auto;min-width:0;width:min(280px,calc(100vw - 72px))}.spa-content{padding-bottom:env(safe-area-inset-bottom)}.dashboard-panel{padding:20px}.filter-grid,.form-grid,.user-filters{grid-template-columns:minmax(0,1fr)}.user-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.user-filters label:first-child{grid-column:1 / -1}.monthly-filter-grid{grid-template-columns:minmax(0,1fr)}.report-tabs{flex-wrap:nowrap;overflow-x:auto;padding-bottom:8px}.report-tabs{justify-content:flex-start}.report-tabs .nav-item{flex:0 0 auto}.report-tabs .nav-link{max-width:180px}.report-chart{height:320px}.summary-grid{gap:10px}.summary-grid>div{padding:12px}.summary-grid strong{font-size:19px}.app-dialog{padding:18px}.daily-stats{grid-template-columns:minmax(0,1fr)}.table-controls{align-items:flex-start}.table-controls .form-control{width:min(200px,50vw)}.auth-cover-brand{left:24px}.login-form-panel{padding-inline:24px}}@media(pointer:coarse){input,select,textarea,.form-control,.form-select{font-size:16px}.btn{min-height:44px}}@media(prefers-reduced-motion:reduce){.skeleton:after{animation:none;transform:none;opacity:.25}}
