:root{--color-bg:#0f1117;--color-surface:#1a1d27;--color-surface-alt:#242837;--color-border:#2e3348;--color-text:#e2e8f0;--color-text-muted:#8892a4;--color-primary:#4f8ef7;--color-primary-hover:#3b7ff0;--color-danger:#e55b5b;--color-success:#4caf7d;--color-warning:#f0a84b;--btn-min-size:44px;--radius:8px;--radius-sm:4px;--font-mono:"Roboto Mono", "Courier New", monospace;--font-ui:system-ui, -apple-system, "Segoe UI", sans-serif}:root[data-theme=light]{--color-bg:#f2f5fb;--color-surface:#fff;--color-surface-alt:#edf2fb;--color-border:#cfd8e6;--color-text:#15223a;--color-text-muted:#4f6180;--color-primary:#2c6ee6;--color-primary-hover:#245dc3;--color-danger:#c43f3f;--color-success:#2f8f5b;--color-warning:#c27a24}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;overscroll-behavior:none;font-size:16px}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-ui);overscroll-behavior:none;min-height:100dvh;line-height:2;overflow-x:hidden}#app{flex-direction:column;min-height:100dvh;display:flex}.btn{min-width:var(--btn-min-size);min-height:var(--btn-min-size);border-radius:var(--radius-sm);background:var(--color-primary);color:#fff;font-family:var(--font-ui);cursor:pointer;-webkit-user-select:none;user-select:none;border:none;justify-content:center;align-items:center;padding:0 16px;font-size:1rem;font-weight:500;text-decoration:none;transition:background .15s;display:inline-flex}.btn:hover,.btn:focus-visible{background:var(--color-primary-hover);outline:none}.btn:active{opacity:.85}.btn:disabled{opacity:.6;cursor:not-allowed}.btn.hidden{display:none!important}.btn-back{background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text)}.btn-start{background:var(--color-success)}.btn-start:hover{background:#43a870}.btn-stop{background:var(--color-danger)}.btn-stop:hover{background:#d04a4a}.btn-pause,.btn-resume{background:var(--color-warning);color:#111}.btn-pause:hover,.btn-resume:hover{background:#e09a35}.btn-export,.btn-export-row{background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text);font-size:.875rem}.btn-export-row{background:var(--color-success);color:#fff;border-color:#0000}.btn-back:hover,.btn-back:focus-visible,.btn-export:hover,.btn-export:focus-visible,.btn-export-row:hover,.btn-export-row:focus-visible{background:var(--color-surface-alt);color:var(--color-text);border-color:#5b6680}.btn-export-row:hover,.btn-export-row:focus-visible{color:#fff;background:#3a9668;border-color:#0000}.login-view{flex-direction:column;justify-content:center;align-items:center;min-height:100dvh;padding:24px;display:flex}.login-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);width:100%;max-width:360px;padding:32px}.login-card h1{text-align:center;margin-bottom:24px;font-size:1.25rem}.login-form{flex-direction:column;gap:16px;display:flex}.login-auth-toast{border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-surface-alt);color:var(--color-text);text-align:center;margin:0 0 12px;padding:10px 12px;font-size:.875rem}.login-auth-toast.hidden{display:none}.login-form label{color:var(--color-text-muted);flex-direction:column;gap:6px;font-size:.875rem;display:flex}.login-form input{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg);color:var(--color-text);min-height:var(--btn-min-size);outline:none;padding:10px 12px;font-size:1rem;transition:border-color .15s}.login-form input:focus{border-color:var(--color-primary)}.login-form p{color:var(--color-danger);text-align:center;min-height:1.25rem;font-size:.875rem}.login-form p.hidden{display:none}.form-group{flex-direction:column;gap:6px;margin-bottom:16px;display:flex}.form-group label{color:var(--color-text-muted);font-size:.875rem}.form-group input{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg);color:var(--color-text);min-height:var(--btn-min-size);outline:none;padding:10px 12px;font-size:1rem;transition:border-color .15s}.form-group input:focus{border-color:var(--color-primary)}.login-btn{width:100%;margin-top:8px}.login-error{color:var(--color-danger);text-align:center;min-height:1.25rem;margin-top:12px;font-size:.875rem}.timer-view{flex-direction:column;align-items:stretch;gap:16px;width:100%;height:100dvh;padding:16px;display:flex;overflow:hidden}.timer-header{flex-direction:column;align-items:center;gap:4px;width:100%;display:flex;position:relative}.timer-total{font-family:var(--font-mono);letter-spacing:-1px;color:var(--color-text);font-size:3.5rem;font-weight:700}.timer-lap{font-family:var(--font-mono);color:var(--color-text-muted);font-size:1.5rem}.timer-header__actions{align-items:center;gap:4px;display:flex;position:absolute;top:0;right:0}.sync-status{color:var(--color-text-muted);text-align:right;min-width:130px;font-size:.72rem}.btn-legend,.timer-header .btn-logout{opacity:.7;padding:4px 10px;font-size:.82rem}.btn-legend:hover,.timer-header .btn-logout:hover{opacity:1}.btn-history{opacity:.7;padding:4px 10px;font-size:.82rem;position:absolute;top:0;left:0}.btn-history:hover{opacity:1}.legend-overlay{z-index:200;background:#00000073;position:fixed;inset:0}.legend-overlay.hidden{display:none}.legend-panel{background:var(--color-surface);border-left:1px solid var(--color-border);z-index:201;flex-direction:column;width:min(360px,92vw);height:100dvh;max-height:100dvh;display:flex;position:fixed;top:0;bottom:0;right:0;overflow:hidden;box-shadow:-4px 0 24px #0000004d}.legend-panel.hidden{display:none}.legend-panel__header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.legend-panel__title{color:var(--color-text);font-size:1rem;font-weight:600}.legend-panel__body{-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--color-border) var(--color-surface);flex:1;min-height:0;padding:12px 16px;overflow-y:auto}.legend-panel__body::-webkit-scrollbar{width:10px}.legend-panel__body::-webkit-scrollbar-track{background:var(--color-surface)}.legend-panel__body::-webkit-scrollbar-thumb{background:var(--color-border);border:2px solid var(--color-surface);border-radius:999px}.legend-panel__body::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}.legend-table{border-collapse:collapse;width:100%;font-size:.9rem}.legend-table th{text-align:left;color:var(--color-text-muted);border-bottom:1px solid var(--color-border);padding:6px 8px;font-weight:500}.legend-table td{border-bottom:1px solid var(--color-border);padding:7px 8px}.legend-code{font-family:var(--font-mono);color:var(--color-primary);white-space:nowrap;width:80px;font-weight:600}.legend-empty{color:var(--color-text-muted);padding:8px 0;font-size:.9rem}.timer-ctx{color:var(--color-text-muted);gap:12px;font-size:.875rem;display:flex}.timer-ctx.hidden{display:none}.timer-total,.timer-lap{text-align:center}.timer-controls{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.lap-list-container{-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--color-border) transparent;flex:1;width:100%;max-width:960px;min-height:0;margin:0 auto;overflow-y:auto}.lap-list-container::-webkit-scrollbar{width:10px}.lap-list-container::-webkit-scrollbar-track{background:0 0}.lap-list-container::-webkit-scrollbar-thumb{background:var(--color-border);background-clip:padding-box;border:2px solid #0000;border-radius:999px}.lap-list-container::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}.lap-list,.lap-table{border-collapse:separate;border-spacing:0;width:100%;max-width:100%;margin:0 auto;font-size:1.0625rem}.lap-list thead,.lap-table thead{background:var(--color-surface)}.lap-list th,.lap-table th{text-align:left;color:var(--color-text-muted);z-index:10;background:var(--color-surface);box-shadow:0 1px 0 var(--color-border);padding:8px 10px;font-weight:500;position:sticky;top:0}.lap-list td,.lap-table td{border-bottom:1px solid var(--color-border);padding:8px 10px}.lap-table .lap-row--pause td{color:var(--color-text-muted);background:color-mix(in srgb, var(--color-surface-alt) 60%, transparent)}.lap-table th:nth-child(3),.lap-table th:nth-child(4),.lap-table .lap-tag-cell,.lap-table .lap-comment-cell{text-align:center}.lap-table .lap-tag-cell{padding-right:10px}.lap-table .lap-comment-cell{padding-left:10px}.lap-tag-btn,.lap-comment-btn{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);cursor:pointer;min-height:var(--btn-min-size);min-width:var(--btn-min-size);touch-action:manipulation;justify-content:center;align-items:center;padding:6px 10px;font-size:1rem;display:inline-flex}.lap-tag-btn:hover,.lap-comment-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.lap-tag-btn:disabled,.lap-comment-btn:disabled{opacity:.55;cursor:not-allowed}.tag-dialog{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-text);flex-direction:column;width:90vw;max-width:480px;max-height:80vh;padding:0;display:flex;overflow:hidden}.tag-dialog::backdrop{background:#0009}.tag-selector-dialog{background:0 0;border:none;width:min(680px,92vw);max-width:680px;max-height:80dvh;padding:0}.tag-selector-dialog::backdrop{background:#0009}.tag-selector{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);flex-direction:column;max-height:80dvh;display:flex;overflow:hidden}@media screen and (width>=769px) and (width<=1440px){.tag-selector-dialog{height:100dvh;max-height:100dvh;margin:0}.tag-selector{border-radius:0;height:100dvh;max-height:100dvh}}.tag-selector header{border-bottom:1px solid var(--color-border);background:var(--color-surface-alt);color:var(--color-text);justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.tag-selector header h2{color:var(--color-text);font-size:1rem;font-weight:600}.btn-close{color:var(--color-text-muted);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;padding:4px 8px;font-size:1.25rem;line-height:1}.btn-close:hover{color:var(--color-text);background:var(--color-bg)}.tag-search-wrap{border-bottom:1px solid var(--color-border);padding:10px 16px}.tag-list{scrollbar-width:thin;scrollbar-color:var(--color-border) var(--color-surface);flex-direction:column;flex:1;gap:2px;padding:8px 12px;display:flex;overflow-y:auto}.tag-list::-webkit-scrollbar{width:10px}.tag-list::-webkit-scrollbar-track{background:var(--color-surface)}.tag-list::-webkit-scrollbar-thumb{background:var(--color-border);border:2px solid var(--color-surface);border-radius:999px}.tag-list::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}.tag-chip{border-radius:var(--radius-sm);color:var(--color-text);cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;align-items:center;gap:10px;width:100%;min-height:40px;padding:8px 10px;transition:background .1s;display:flex}.tag-chip:hover{background:var(--color-bg);border-color:var(--color-border)}.tag-chip.selected{background:color-mix(in srgb, var(--color-primary) 15%, transparent);border-color:var(--color-primary)}.tag-chip .tag-code{font-family:var(--font-mono);color:var(--color-primary);min-width:36px;font-size:.8125rem}.tag-chip .tag-label{color:var(--color-text);font-size:.875rem;font-weight:500}.tag-selector footer{border-top:1px solid var(--color-border);padding:10px 16px}.tag-selector .btn-clear{border:1px solid var(--color-border);width:100%;color:var(--color-danger);background:0 0}.tag-selector .btn-clear:hover{background:color-mix(in srgb, var(--color-danger) 10%, transparent)}.tag-dialog-header{border-bottom:1px solid var(--color-border);align-items:center;gap:8px;padding:16px;display:flex}.tag-dialog-header h2{flex:1;font-size:1rem}.tag-search{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-sm);width:100%;color:var(--color-text);min-height:var(--btn-min-size);outline:none;flex:1;padding:8px 12px;font-size:.9375rem}.tag-search:focus{border-color:var(--color-primary)}.tag-dialog-body{flex-direction:column;flex:1;gap:12px;padding:12px 16px;display:flex;overflow-y:auto}.tag-section-title{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px;font-size:.75rem}.tag-list{flex-direction:column;gap:2px;display:flex}.tag-item{border-radius:var(--radius-sm);cursor:pointer;color:var(--color-text);text-align:left;width:100%;min-height:var(--btn-min-size);background:0 0;border:none;align-items:center;gap:10px;padding:10px 8px;transition:background .1s;display:flex}.tag-item:hover{background:var(--color-bg)}.tag-code{font-family:var(--font-mono);color:var(--color-primary);min-width:64px;font-size:.875rem}.tag-desc{color:var(--color-text-muted);font-size:.875rem}.tag-dialog-footer{border-top:1px solid var(--color-border);gap:8px;padding:12px 16px;display:flex}.btn-clear-tag{border:1px solid var(--color-border);color:var(--color-danger);background:0 0;flex:1}.btn-cancel-tag{border:1px solid var(--color-border);color:var(--color-text-muted);background:0 0}.history-view{flex-direction:column;gap:16px;width:100%;min-height:100dvh;padding:16px;display:flex}.history-header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;padding-bottom:8px;display:flex}.history-header h1{font-size:1.25rem}.history-filters{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.history-filters label{color:var(--color-text-muted);align-items:center;gap:6px;font-size:.875rem;display:flex}.history-filters .history-filter-user{flex-direction:column;align-items:flex-start;gap:4px;margin-left:auto;display:flex}.history-filters .history-filter-user .input{width:200px}.history-filters input[type=date],.history-filters select{font-family:var(--font-ui);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);outline:none;min-height:0;padding:6px 10px;font-size:.9rem}.history-filters input[type=date]:focus,.history-filters select:focus{border-color:var(--color-primary)}.history-filters .btn-filter,.history-filters .btn-reset{min-width:118px}.history-filters .btn-reset{border:1px solid var(--color-border);color:var(--color-text);background:0 0}.history-filters .btn-reset:hover,.history-filters .btn-reset:focus-visible{background:var(--color-surface);border-color:#5b6680}.history-table-wrapper{min-width:0;overflow-x:auto}.history-table{border-collapse:collapse;white-space:nowrap;width:100%;font-size:.875rem}.history-table th{text-align:left;color:var(--color-text-muted);border-bottom:1px solid var(--color-border);padding:8px 10px;font-weight:500}.history-table td{border-bottom:1px solid var(--color-border);padding:8px 10px}.history-table .btn-export-row,.history-table .btn-delete-session{min-width:92px;min-height:32px;padding:0 10px;font-size:.85rem}.history-empty{text-align:center;color:var(--color-text-muted);padding:32px}.history-empty.hidden{display:none}.btn-ghost{color:var(--color-text-muted);border:1px solid var(--color-border);background:0 0}.btn-ghost:hover{background:var(--color-surface);color:var(--color-text)}.btn-danger{background:var(--color-danger)}.btn-danger:hover{background:#d44}.btn[data-action=toggle-scenario][data-active=true]{background:#4b5d8b}.btn[data-action=toggle-scenario][data-active=true]:hover,.btn[data-action=toggle-scenario][data-active=true]:focus-visible{background:#5a6ea1}.btn-danger-outline{color:var(--color-danger);border:1px solid var(--color-danger);background:0 0}.btn-danger-outline:hover{background:var(--color-danger);color:#fff}.btn-success{background:var(--color-success)}.btn-success:hover{background:#3a9668}.btn-primary{background:#2563eb}.btn-primary:hover{background:#1d4ed8}.btn-sm{min-width:32px;min-height:32px;padding:0 10px;font-size:.85rem}.admin-view{flex-direction:column;width:100%;max-width:100vw;height:100dvh;min-height:100dvh;display:flex;overflow:hidden}.admin-header{background:var(--color-surface);border-bottom:1px solid var(--color-border);flex-wrap:wrap;flex:none;justify-content:space-between;align-items:center;gap:8px;width:100%;max-width:100%;padding:12px 24px;display:flex}.admin-header__title{overflow-wrap:anywhere;min-width:0;font-size:1.1rem;font-weight:600}.admin-header__nav{gap:8px;min-width:0;display:flex}.admin-tabs{border-bottom:1px solid var(--color-border);background:var(--color-surface);gap:0;display:flex}.admin-tab{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;border-bottom:3px solid #0000;padding:10px 24px;font-size:1rem;transition:color .15s,border-color .15s}.admin-tab:hover{color:var(--color-text)}.admin-tab--active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.admin-content{scrollbar-width:thin;scrollbar-color:var(--color-border) transparent;flex:1;width:100%;min-width:0;max-width:100%;min-height:0;padding:24px;overflow:hidden auto}.admin-content::-webkit-scrollbar{width:10px;height:10px}.admin-content::-webkit-scrollbar-track{background:0 0}.admin-content::-webkit-scrollbar-thumb{background:var(--color-border);background-clip:padding-box;border:2px solid #0000;border-radius:999px}.admin-content::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}.admin-section{margin-bottom:32px}.admin-section__title{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:12px;font-size:1rem;font-weight:600}.admin-section__header{justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:12px;display:flex}.admin-section__header .admin-section__title{margin-bottom:0}.scenario-creator-filter{color:var(--color-text-muted);align-items:center;gap:8px;font-size:.82rem;display:inline-flex}.scenario-creator-filter span{white-space:nowrap}.scenario-creator-filter .input{min-width:240px}.admin-form__row{flex-wrap:wrap;gap:12px;margin-bottom:12px;display:flex}.admin-form__row label{color:var(--color-text-muted);flex-direction:column;gap:4px;font-size:.875rem;display:flex}.admin-form__row .input{width:200px}.admin-form__error{color:var(--color-danger);margin-bottom:8px;font-size:.875rem}.admin-table{border-collapse:collapse;width:100%;font-size:.9rem}.admin-table th,.admin-table td{text-align:left;border-bottom:1px solid var(--color-border);padding:8px 12px}.admin-table th{color:var(--color-text-muted);font-weight:500}.admin-row--inactive td{opacity:.45}.admin-row--editing{background:var(--color-surface)}.admin-edit-form{align-items:flex-end;gap:8px;display:flex}.admin-edit-form .admin-form__row{flex:1;align-items:flex-end;gap:8px;display:flex}.admin-edit-form label{flex-direction:column;gap:2px;font-size:.9rem;display:flex}.admin-actions{white-space:nowrap}.admin-tz-cell{white-space:nowrap;align-items:center;gap:6px;display:flex}.admin-tz-label{color:var(--color-text-muted);text-overflow:ellipsis;white-space:nowrap;flex:0 0 170px;width:170px;margin-right:0;font-size:.82rem;display:inline-block;overflow:hidden}.admin-tz-select{flex:0 180px;width:180px;max-width:180px;padding:3px 6px;font-size:.8rem}.input--sm{padding:3px 6px;font-size:.82rem}.admin-empty{color:var(--color-text-muted);padding:8px 0;font-size:.9rem}#users-table{-webkit-overflow-scrolling:touch;max-width:100%;overflow:auto hidden}#users-table .admin-table{min-width:980px}.input{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);font-size:.9rem;font-family:var(--font-ui);padding:6px 10px}.input:focus{border-color:var(--color-primary);outline:none}.scenario-view{background:var(--color-bg);flex-direction:column;height:100dvh;min-height:100dvh;display:flex;overflow:hidden}.scenario-header{border-bottom:1px solid var(--color-border);background:var(--color-surface);z-index:20;flex:none;justify-content:space-between;align-items:center;gap:12px;padding:12px 20px;display:flex;position:sticky;top:0}.scenario-header__title{color:var(--color-text);min-width:0;font-size:1.1rem;font-weight:600}.scenario-header__actions{flex-shrink:0;align-items:center;gap:8px;margin-left:auto;display:inline-flex}.scenario-header .btn-theme-toggle,.scenario-header .btn-logout{align-items:center;gap:6px;min-height:40px;padding:0 12px;display:inline-flex}.btn-theme-toggle__icon,.btn-logout__icon{justify-content:center;width:1rem;line-height:1;display:inline-flex}.btn-logout__icon:before{content:"↪"}.btn-theme-toggle[data-theme=dark] .btn-theme-toggle__icon:before{content:"☀"}.btn-theme-toggle[data-theme=light] .btn-theme-toggle__icon:before{content:"☽"}.scenario-body{scrollbar-width:thin;scrollbar-color:var(--color-border) var(--color-bg);flex:1;min-height:0;padding:24px 20px;overflow-y:auto}.scenario-body::-webkit-scrollbar{width:10px}.scenario-body::-webkit-scrollbar-track{background:var(--color-bg)}.scenario-body::-webkit-scrollbar-thumb{background:var(--color-border);border:2px solid var(--color-bg);border-radius:999px}.scenario-body::-webkit-scrollbar-thumb:hover{background:#5b6680}.scenario-loading,.scenario-empty{color:var(--color-text-muted);text-align:center;margin-top:60px;font-size:1rem}.scenario-active-session-cta{margin-bottom:14px}.scenario-active-session-cta .btn{border-color:var(--color-primary);color:var(--color-primary);background:color-mix(in srgb, var(--color-primary) 12%, transparent)}.scenario-cards{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;display:grid}.scenario-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);flex-direction:column;gap:8px;min-width:0;padding:16px 18px;display:flex;overflow:hidden}.scenario-card__body{flex-direction:column;flex:1;gap:8px;min-width:0;display:flex}.scenario-card__name{color:var(--color-text);font-size:1rem;font-weight:600}.scenario-card__desc{color:var(--color-text-muted);min-height:18px;font-size:.85rem}.scenario-card__tags-count{color:var(--color-text-muted);font-size:.78rem}.scenario-card__tag-list{flex-direction:column;gap:4px;min-height:24px;margin:0;padding-left:0;list-style:none;display:flex}.scenario-card__tag-list li{overflow-wrap:anywhere;min-width:0}.scenario-tag-code{background:var(--color-surface-alt,#2a2a2a);border:1px solid var(--color-border);color:var(--color-text-muted);border-radius:4px;padding:2px 7px;font-size:.75rem}.scenario-tag-more{color:var(--color-text-muted);align-self:center;font-size:.75rem}.btn-start-scenario{align-self:flex-start;margin-top:8px}.scenario-admin-tags-cell{min-width:260px}#scenarios-table{-webkit-overflow-scrolling:touch;max-width:100%;overflow:auto hidden}#scenarios-table .admin-table{table-layout:auto;min-width:1120px}#scenarios-table .admin-table th,#scenarios-table .admin-table td{vertical-align:top;overflow-wrap:break-word}#scenarios-table .admin-table th:nth-child(3),#scenarios-table .admin-table td:nth-child(3){white-space:nowrap;width:84px}.scenario-admin-tags{flex-wrap:wrap;gap:4px;margin-bottom:8px;display:flex}.scenario-admin-tags-controls{align-items:center;gap:8px;margin-bottom:8px;display:flex}.scenario-tags-collapsed-hint{color:var(--color-text-muted);font-size:.78rem}.scenario-tags-toggle{min-height:30px;padding:0 10px;font-size:.78rem}.scenario-admin-tag{background:var(--color-surface-alt,#2a2a2a);border:1px solid var(--color-border);color:var(--color-text);white-space:normal;overflow-wrap:anywhere;border-radius:4px;align-items:center;gap:4px;max-width:100%;padding:2px 6px;font-size:.8rem;display:inline-flex}.btn-remove-tag{cursor:pointer;color:var(--color-danger,#e55);background:0 0;border:none;padding:0 2px;font-size:.85rem;line-height:1}.btn-remove-tag:hover{color:#f44}.scenario-tag-form{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.scenario-tag-form .input--sm{width:80px}.scenario-action-btns{flex-direction:column;align-items:flex-start;gap:4px;display:flex}.scenario-actions-cell{white-space:nowrap;width:130px}.scenario-users-cell{vertical-align:top;min-width:230px}.scenario-users-list{flex-wrap:wrap;gap:4px;display:flex}.scenario-users-view{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.scenario-user-badge{border:1px solid var(--color-border);background:var(--color-surface-alt);border-radius:4px;align-items:center;padding:2px 6px;font-size:.8rem;display:inline-flex}.scenario-users-editor{flex-direction:column;gap:6px;font-size:.82rem;display:flex}.scenario-users-editor__list{border:1px solid var(--color-border);background:var(--color-surface);border-radius:4px;flex-direction:column;gap:4px;max-height:150px;padding:6px;display:flex;overflow-y:auto}.scenario-users-editor__row{align-items:center;gap:6px;display:flex}.scenario-users-editor__hint{color:var(--color-text-muted);line-height:1.3}@media screen and (width>=1200px){.timer-view{max-width:960px;margin:0 auto}.history-view{max-width:1400px;margin:0 auto}.admin-content{max-width:1600px;margin:0 auto;padding:32px 40px}.admin-form__row .input{width:240px}.timer-total{font-size:4.5rem}}@media screen and (width<=1150px){.admin-content{padding:20px 24px}.admin-form__row .input{width:180px}.history-view{max-width:1100px;margin:0 auto}.timer-view{max-width:800px;margin:0 auto}}@media screen and (width<=1050px){.admin-content{padding:16px 20px}.admin-form__row .input{width:160px}.admin-table{font-size:.85rem}.admin-table th,.admin-table td{padding:7px 10px}#scenarios-table{max-width:100%;overflow-x:hidden}#scenarios-table .admin-table{table-layout:fixed;width:100%;min-width:0}#scenarios-table .admin-table th,#scenarios-table .admin-table td{overflow-wrap:anywhere;padding:6px}#scenarios-table .scenario-admin-tags-cell{min-width:170px}#scenarios-table .scenario-users-cell{min-width:130px}#scenarios-table .scenario-actions-cell{white-space:normal;width:110px}#scenarios-table .scenario-action-btns .btn{white-space:normal;width:100%;min-width:0}.timer-view{max-width:720px;margin:0 auto}.history-view{max-width:960px;margin:0 auto}}@media screen and (width<=820px){.timer-total{font-size:3rem}.timer-lap{font-size:1.35rem}.timer-controls{gap:12px}.btn{min-width:76px;min-height:50px}.btn.btn-sm{min-width:32px;min-height:36px;padding:0 8px}.admin-header{padding:10px 16px}.admin-header__title{font-size:1rem}.admin-form__row .input{width:150px}.admin-tz-label{display:none}.admin-tz-select{max-width:120px;font-size:.78rem}.scenario-admin-tags-cell{min-width:0}.scenario-tag-form .input--sm{width:60px}#scenarios-table{overflow-x:hidden}#scenarios-table .admin-table{table-layout:fixed;width:100%;min-width:0}#scenarios-table .admin-table th,#scenarios-table .admin-table td{overflow-wrap:anywhere;padding:5px 6px;font-size:.8rem}#scenarios-table .scenario-admin-tags-cell{min-width:180px}#scenarios-table .scenario-users-cell{min-width:130px}#scenarios-table .scenario-actions-cell{white-space:normal;width:110px}#scenarios-table .scenario-action-btns .btn.btn-sm{white-space:normal;width:100%;min-width:0;padding:4px 6px;line-height:1.1}#scenarios-table .scenario-admin-tag{font-size:.74rem}.scenario-cards{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}}@media screen and (width<=800px){.timer-total{font-size:2.8rem}.timer-lap{font-size:1.25rem}.admin-form__row .input{width:140px}.history-view{padding:12px}.history-header{flex-wrap:wrap;gap:8px}}@media screen and (width<=768px){.timer-view{gap:12px;max-width:100%;padding:12px}.history-view{max-width:100%;padding:12px}.admin-content{padding:12px 16px}.admin-table{font-size:.82rem}.scenario-tag-form{flex-wrap:wrap}.scenario-tag-form .input--sm{flex:60px;width:60px}.scenario-admin-tags-cell{min-width:140px}.scenario-body{padding:16px 12px}.scenario-cards{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}}@media screen and (width<=750px){.timer-total{font-size:2.6rem}.admin-header{flex-direction:column;align-items:flex-start;gap:8px}.admin-header__nav{flex-wrap:wrap}.admin-section__header{flex-direction:column;align-items:flex-start}.scenario-creator-filter .input{width:100%;min-width:0}.history-filters{gap:8px}.history-header{flex-direction:column;align-items:flex-start}.history-header h1{font-size:1.1rem}}@media screen and (width<=700px){.timer-total{font-size:2.4rem}.admin-form__row{flex-direction:column}.admin-form__row label,.admin-form__row .input{width:100%}.admin-tz-label{display:none}.admin-tz-select{max-width:130px;font-size:.75rem}.history-filters{flex-direction:column;align-items:flex-start}.history-filters label{font-size:.825rem}.history-filters .history-filter-user{width:100%;margin-left:0}.scenario-cards{grid-template-columns:1fr}}@media screen and (width<=640px){.login-card{padding:24px 20px}.timer-total{font-size:2.2rem}.timer-lap{font-size:1.1rem}.timer-header{padding-top:40px}.btn-history,.btn-legend,.timer-header .btn-logout{padding:3px 8px;font-size:.78rem}.admin-content{padding:8px 12px}.admin-tab{padding:8px 14px;font-size:.9rem}.admin-section__title{font-size:.875rem}.admin-table th,.admin-table td{padding:6px 8px}.admin-header__title{font-size:.9rem}.scenario-header__actions{gap:6px}.scenario-header .btn-theme-toggle,.scenario-header .btn-logout{min-height:36px;padding:0 10px;font-size:.86rem}.scenario-header .btn-theme-toggle{min-width:40px;padding:0 8px}.scenario-header .btn-theme-toggle__label{display:none}.scenario-body{padding:12px 10px}.scenario-cards{grid-template-columns:1fr;gap:10px}}@media screen and (height<=600px){.timer-view{gap:6px;padding:4px 12px}.timer-total{font-size:2rem}.timer-lap{font-size:.95rem}.btn{min-height:40px}.timer-controls{gap:6px}.legend-panel{top:0}}@media screen and (width<=480px){.login-view{padding:16px}.login-card{max-width:100%;padding:20px 16px}.timer-total{letter-spacing:0;font-size:1.8rem}.timer-lap{font-size:.95rem}.timer-controls{flex-wrap:wrap;gap:6px}.timer-controls .btn{flex:calc(50% - 6px);min-width:0}.admin-tabs{-webkit-overflow-scrolling:touch;overflow-x:auto}.admin-tab{padding:8px 12px;font-size:.85rem}.admin-content{padding:6px 8px}#users-table .admin-table th:nth-child(2),#users-table .admin-table td:nth-child(2),#users-table .admin-table th:nth-child(3),#users-table .admin-table td:nth-child(3),#users-table .admin-table th:nth-child(4),#users-table .admin-table td:nth-child(4){display:none}#users-table .admin-table{table-layout:fixed;width:100%;min-width:0}#users-table .admin-actions{white-space:normal;flex-wrap:wrap;align-items:center;gap:4px;display:flex}#users-table .admin-actions .btn.btn-sm{min-height:28px;padding:0 4px;font-size:.72rem}#scenarios-table .admin-table th:nth-child(2),#scenarios-table .admin-table td:nth-child(2),#scenarios-table .admin-table th:nth-child(3),#scenarios-table .admin-table td:nth-child(3){display:none}#scenarios-table{max-width:100%;overflow-x:auto}#scenarios-table .admin-table{table-layout:fixed;width:auto;min-width:760px}#scenarios-table .scenario-admin-tags-cell{min-width:0}#scenarios-table .scenario-actions-cell{white-space:normal;width:auto}#scenarios-table .scenario-action-btns{align-items:stretch;width:100%}#scenarios-table .scenario-action-btns .btn.btn-sm{width:100%;min-width:0;padding:0 4px}#scenarios-table .scenario-admin-tag{padding:2px 4px;font-size:.74rem}.admin-table th,.admin-table td{padding:5px 6px}.admin-table .btn.btn-sm{min-width:0;padding:0 6px;font-size:.78rem}.admin-tz-select{max-width:90px;font-size:.7rem}.scenario-tag-form{flex-direction:column;gap:4px}.scenario-tag-form .input--sm,.scenario-tag-form .btn,.history-filters label{width:100%}.history-filters input[type=date],.history-filters select{width:100%;padding:6px 8px;font-size:.8rem}.history-header h1{font-size:.95rem}.history-table th:nth-child(2),.history-table td:nth-child(2),.history-table--admin th:nth-child(5),.history-table--admin td:nth-child(5){display:none}.history-table th,.history-table td{padding:5px 6px;font-size:.8rem}.history-table .btn-export-row,.history-table .btn-delete-session,.history-table .btn-stop-session{min-width:0;min-height:32px;padding:0 6px;font-size:.75rem}.lap-list th,.lap-list td,.lap-table th,.lap-table td{padding:4px 5px;font-size:.8rem}.lap-table .lap-tag-cell{padding-right:8px}.lap-table .lap-comment-cell{padding-left:8px}.lap-table .lap-tag-btn,.lap-table .lap-comment-btn{min-width:40px;min-height:40px;padding:4px 8px}.tag-selector-dialog{width:97vw;max-height:92dvh}.legend-panel{border-left:none;width:100vw}.scenario-body{padding:10px 8px}.scenario-card{padding:12px 14px}.scenario-card__name{font-size:.95rem}.scenario-header{padding:8px 12px}.scenario-header__title{font-size:.95rem}.btn-start-scenario{align-self:stretch}}@media screen and (width<=420px){#users-table .admin-table th:nth-child(5),#users-table .admin-table td:nth-child(5){display:none}}@media screen and (width<=412px){.admin-content{overflow-x:hidden}#panel-scenarios,#scenarios-table{min-width:0;max-width:100%}#scenarios-table{overflow-x:hidden}#scenarios-table .admin-table{table-layout:auto;border-collapse:separate;border-spacing:0 8px;width:100%;min-width:0}#scenarios-table .admin-table thead{display:none}#scenarios-table .admin-table tbody{width:100%;display:block}#scenarios-table .admin-table tr{border:1px solid var(--color-border);background:var(--color-surface);border-radius:6px;width:100%;margin-bottom:8px;padding:6px;display:block}#scenarios-table .admin-table td,#scenarios-table .admin-table td:nth-child(2),#scenarios-table .admin-table td:nth-child(3){border-bottom:1px dashed var(--color-border);white-space:normal;overflow-wrap:anywhere;width:100%;min-width:0;padding:6px 4px;display:block}#scenarios-table .admin-table td:last-child{border-bottom:none}#scenarios-table .admin-table td:before{color:var(--color-text-muted);margin-bottom:4px;font-size:.72rem;line-height:1.2;display:block}#scenarios-table .admin-table td:first-child:before{content:"Название"}#scenarios-table .admin-table td:nth-child(2):before{content:"Описание"}#scenarios-table .admin-table td:nth-child(3):before{content:"Статус"}#scenarios-table .admin-table td:nth-child(4):before{content:"Теги"}#scenarios-table .admin-table td:nth-child(5):before{content:"Действие"}#scenarios-table .admin-table td:nth-child(6):before{content:"Для пользователя"}#scenarios-table .scenario-admin-tags,#scenarios-table .scenario-users-list{max-width:100%}#scenarios-table .scenario-admin-tags-cell,#scenarios-table .scenario-users-cell,#scenarios-table .scenario-actions-cell{width:100%;min-width:0}#scenarios-table .scenario-action-btns{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;width:100%;display:grid}#scenarios-table .scenario-action-btns .btn.btn-sm{width:100%;min-width:0;min-height:30px;padding:0 4px;font-size:.72rem}#scenarios-table .scenario-admin-tag{max-width:100%;padding:2px 4px;font-size:.72rem}}
