:root{--tm-content-font:"Open Sans",Arial,sans-serif;--tm-title-font:"Outfit","Open Sans",Arial,sans-serif;--tm-light-primary:#6F42C1;--tm-light-accent:#D6006C;--tm-dark-primary:#6F42C1;--tm-dark-accent:#D6006C;--tm-sidebar-width:280px;--tm-sidebar-width-compact:92px;--tm-header-height:72px;--tm-card-radius:18px;--tm-surface:rgba(255,255,255,0.96);--tm-surface-border:rgba(111,66,193,0.14);--tm-text:#0f172a;--tm-text-muted:#64748b;--tm-shadow:0 20px 40px rgba(0,0,0,0.18)}[data-bs-theme=dark]{--tm-surface:color-mix(in srgb,var(--tm-dark-surface,#181A1F) 96%,transparent);--tm-surface-border:var(--tm-dark-surface-border,rgba(139,92,246,0.26));--tm-text:var(--tm-dark-text,#e2e8f0);--tm-text-muted:var(--tm-dark-text-muted,#94a3b8);--bs-body-bg:var(--tm-dark-bg,#111827);--bs-body-color:var(--tm-dark-text,#e2e8f0);--bs-secondary-color:var(--tm-dark-text-muted,#94a3b8);--bs-tertiary-color:var(--tm-dark-text-muted,#94a3b8);--bs-emphasis-color:var(--tm-dark-text,#e2e8f0);--bs-heading-color:var(--tm-dark-text,#e2e8f0);--tm-shadow:0 22px 42px rgba(2,6,23,0.44)}body.tm-shell-body{--tm-primary:var(--tm-light-primary,#6F42C1);--tm-accent:var(--tm-light-accent,#D6006C);min-height:100vh;font-family:var(--tm-content-font);color:var(--tm-text);background-attachment:fixed;background-image:var(--tm-light-bg-image,linear-gradient(150deg,#eef2ff,#fdf2f8));background-color:var(--tm-light-bg-color,#f8f7ff)}[data-bs-theme=dark] body.tm-shell-body{--tm-primary:var(--tm-dark-primary,#6F42C1);--tm-accent:var(--tm-dark-accent,#D6006C);background-image:var(--tm-dark-bg-image,linear-gradient(150deg,var(--tm-dark-bg,#111827),var(--tm-dark-bg-accent,#312e81)));background-color:var(--tm-dark-bg-color,var(--tm-dark-bg,#111827))}body.tm-shell-radius-square{--tm-card-radius:12px}body.tm-shell-radius-rounded{--tm-card-radius:24px}body.tm-shell-radius-pill{--tm-card-radius:32px}.tm-shell-header{position:fixed;inset:0 0 auto 0;z-index:1040;padding:16px 12px 0}.tm-shell-header .navbar{min-height:var(--tm-header-height);border:1px solid var(--tm-surface-border);border-radius:calc(var(--tm-card-radius) - 2px);box-shadow:var(--tm-shadow);backdrop-filter:blur(10px);background:rgba(255,255,255,.9)}[data-bs-theme=dark] .tm-shell-header .navbar{background:rgba(24,26,31,.9)}body.tm-shell-header-filled .tm-shell-header .navbar{background:var(--tm-surface)}.tm-shell-brand{display:flex;align-items:center;gap:.75rem;text-decoration:none;color:inherit;min-width:0}.tm-shell-brand-copy{min-width:0}.tm-shell-brand-title{margin:0;font:600 1.05rem/1.1 var(--tm-title-font);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tm-shell-brand-subtitle{margin:.12rem 0 0;font-size:.77rem;color:var(--tm-text-muted)}.tm-shell-logo{width:38px;height:38px;-o-object-fit:contain;object-fit:contain;border-radius:12px}.tm-shell-header-btn{width:42px;height:42px;border-radius:14px;border:1px solid var(--tm-surface-border);display:inline-flex;align-items:center;justify-content:center;background:transparent;color:inherit}.tm-shell-header-btn:focus-visible,.tm-shell-header-btn:hover{background:color-mix(in srgb,var(--tm-primary) 12%,transparent);color:var(--tm-primary)}.tm-shell-notification-badge{position:absolute;inset:7px 6px auto auto;min-width:18px;height:18px;padding:0 4px;border-radius:999px;background:#ef4444;color:#fff;font-size:.65rem;line-height:18px;text-align:center}.tm-shell-main{display:flex;min-height:100vh;padding:calc(var(--tm-header-height) + 32px) 12px 12px;gap:12px}.tm-shell-sidebar{position:sticky;top:calc(var(--tm-header-height) + 32px);align-self:flex-start;width:var(--tm-sidebar-width);min-width:var(--tm-sidebar-width);flex-shrink:0;max-height:calc(100vh - var(--tm-header-height) - 46px);border-radius:var(--tm-card-radius);border:1px solid var(--tm-surface-border);background:var(--tm-surface);box-shadow:var(--tm-shadow);overflow:hidden;display:flex;flex-direction:column;min-height:0;transition:width .2s ease,transform .2s ease}.tm-shell-sidebar.is-swiping{transition:none!important}body.tm-shell-sidebar-boxed .tm-shell-sidebar{margin-left:8px;margin-right:8px}.tm-shell-sidebar-body{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:1rem}.tm-shell-sidebar-footer{flex:0 0 auto;padding:1rem;border-top:1px solid var(--tm-surface-border)}.tm-shell-sidebar-title{margin:0 0 .5rem;font:600 .72rem/1 var(--tm-title-font);color:var(--tm-text-muted);letter-spacing:.08em;text-transform:uppercase}.tm-shell-sidebar-group+.tm-shell-sidebar-group{margin-top:1rem}.tm-shell-sidebar-separator{height:1px;margin:.75rem 0;background:var(--tm-surface-border)}.tm-shell-nav-list{display:grid;gap:.3rem}.tm-shell-auth-link,.tm-shell-nav-link,.tm-shell-nav-toggle{display:flex;align-items:center;gap:.8rem;width:100%;border:0;background:transparent;color:inherit;text-decoration:none;border-radius:16px;padding:.8rem .95rem;font-weight:600;text-align:left}.tm-shell-auth-link:hover,.tm-shell-nav-link:hover,.tm-shell-nav-toggle:hover{background:color-mix(in srgb,var(--tm-primary) 10%,transparent);color:var(--tm-primary)}.tm-shell-auth-link.is-active,.tm-shell-nav-link.is-active{background:linear-gradient(135deg,color-mix(in srgb,var(--tm-primary) 20%,transparent),color-mix(in srgb,var(--tm-accent) 16%,transparent));color:var(--tm-primary)}.tm-shell-nav-icon{width:1.2rem;text-align:center;flex:0 0 1.2rem}.tm-shell-nav-label{flex:1 1 auto;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tm-shell-nav-caret{transition:transform .2s ease}.tm-shell-nav-toggle[aria-expanded=true] .tm-shell-nav-caret{transform:rotate(180deg)}.tm-shell-subnav{padding:.4rem 0 0 .55rem;display:grid;gap:.25rem}.tm-shell-subnav .tm-shell-nav-link{padding-top:.6rem;padding-bottom:.6rem;font-weight:500;min-width:0}.tm-shell-content{flex:1 1 auto;min-width:0;padding:.25rem 0}.tm-shell-content>.container.py-4{max-width:none;padding-top:0!important;padding-bottom:0!important}.tm-shell-content>.container.py-4,.tm-shell-content>.main-card,.tm-shell-content>div.main-card{margin:0}.tm-shell-page-title{font:700 clamp(1.35rem,1vw + 1rem,1.9rem)/1.1 var(--tm-title-font);margin:0}.tm-shell-page-subtitle{margin:.3rem 0 0;color:var(--tm-text-muted)}.tm-shell-offcanvas .offcanvas-body,.tm-shell-offcanvas .offcanvas-header{background:var(--tm-surface)}.tm-shell-offcanvas.is-swiping{transition:none!important}.tm-shell-notification-group+.tm-shell-notification-group{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--tm-surface-border)}.tm-shell-notification-title{font:600 .82rem/1 var(--tm-title-font);color:var(--tm-text-muted);text-transform:uppercase;letter-spacing:.08em;margin-bottom:.6rem}.tm-shell-notification-item{padding:.8rem .9rem;border-radius:16px;background:color-mix(in srgb,var(--tm-primary) 5%,transparent);margin-bottom:.5rem}.tm-shell-notification-item.is-danger{background:rgba(239,68,68,.08);color:#b91c1c}[data-bs-theme=dark] .tm-shell-notification-item.is-danger{color:#fecaca}.tm-shell-backdrop{display:none}.legacy-shell-footer,.legacy-shell-header,.legacy-shell-tabs{display:none!important}body.tm-sidebar-collapsed .tm-shell-sidebar{width:var(--tm-sidebar-width-compact)}body.tm-sidebar-collapsed .tm-shell-auth-link span:last-child,body.tm-sidebar-collapsed .tm-shell-brand-copy,body.tm-sidebar-collapsed .tm-shell-nav-caret,body.tm-sidebar-collapsed .tm-shell-nav-label,body.tm-sidebar-collapsed .tm-shell-sidebar-footer .btn span,body.tm-sidebar-collapsed .tm-shell-sidebar-title{display:none}body.tm-sidebar-collapsed .tm-shell-subnav{display:none!important}body.tm-shell-sidebar-compact .tm-shell-sidebar{width:240px}@media (min-width:992px){.tm-shell-menu-toggle{display:none}.tm-shell-main{display:block}.tm-shell-sidebar{position:fixed;top:calc(var(--tm-header-height) + 32px);left:12px;bottom:12px;align-self:auto;height:calc(100dvh - var(--tm-header-height) - 44px);max-height:calc(100dvh - var(--tm-header-height) - 44px)}.tm-shell-content{margin-left:calc(var(--tm-sidebar-width) + 24px)}body.tm-shell-sidebar-compact .tm-shell-content{margin-left:calc(240px + 24px)}body.tm-sidebar-collapsed .tm-shell-sidebar{width:var(--tm-sidebar-width)}body.tm-sidebar-collapsed .tm-shell-content{margin-left:calc(var(--tm-sidebar-width) + 24px)}body.tm-sidebar-collapsed .tm-shell-auth-link span:last-child,body.tm-sidebar-collapsed .tm-shell-brand-copy,body.tm-sidebar-collapsed .tm-shell-nav-caret,body.tm-sidebar-collapsed .tm-shell-nav-label,body.tm-sidebar-collapsed .tm-shell-sidebar-title{display:initial}body.tm-sidebar-collapsed .tm-shell-subnav{display:grid!important}}@media (max-width:991.98px){.tm-shell-header{padding:16px 12px 0}.tm-shell-main{padding:calc(var(--tm-header-height) + 32px) 8px 8px}.tm-shell-backdrop{position:fixed;inset:0;background:rgba(15,23,42,.45);z-index:1035}body.tm-sidebar-open .tm-shell-backdrop{display:block}.tm-shell-sidebar{position:fixed;top:calc(var(--tm-header-height) + 32px);left:12px;bottom:12px;width:min(84vw,300px);height:calc(100dvh - var(--tm-header-height) - 44px);max-height:calc(100dvh - var(--tm-header-height) - 44px);transform:translateX(calc(-100% - 18px));z-index:1038}body.tm-sidebar-open .tm-shell-sidebar{transform:translateX(0)}body.tm-sidebar-collapsed .tm-shell-sidebar{width:min(84vw,300px)}body.tm-sidebar-collapsed .tm-shell-auth-link span:last-child,body.tm-sidebar-collapsed .tm-shell-brand-copy,body.tm-sidebar-collapsed .tm-shell-nav-caret,body.tm-sidebar-collapsed .tm-shell-nav-label,body.tm-sidebar-collapsed .tm-shell-sidebar-title{display:initial}.tm-shell-content>.container.py-4,.tm-shell-content>.main-card,.tm-shell-content>div.main-card{padding-left:0!important;padding-right:0!important}}.table{--bs-table-bg:var(--tm-surface);--bs-table-border-color:var(--tm-surface-border);--bs-table-color:var(--tm-text);background-color:transparent}.table thead th{background:color-mix(in srgb,var(--tm-primary) 8%,transparent);color:var(--tm-text);font-weight:700;font-size:.82rem;letter-spacing:.03em;text-transform:uppercase;padding:.9rem .95rem;border-bottom:2px solid var(--tm-surface-border)}.table tbody tr{border-bottom:1px solid var(--tm-surface-border);transition:background-color .15s ease}.table tbody tr:hover{background:color-mix(in srgb,var(--tm-primary) 4%,transparent)}.table tbody td{padding:1rem .95rem;vertical-align:middle;color:var(--tm-text)}.table tbody td p{margin:0;font-size:.9rem}.table tbody td p.text-secondary{color:var(--tm-text-muted);font-size:.85rem;margin-top:.2rem}.table tbody td h6{font-size:.95rem;margin:0;font-weight:600;color:var(--tm-primary)}.table tbody td .badge{font-weight:600;font-size:.8rem;padding:.4rem .8rem}.table .avatar{border:2px solid var(--tm-surface-border)}.table .btn-link{padding:.4rem .5rem;font-size:.9rem;color:var(--tm-text-muted);transition:color .15s ease}.table .btn-link:hover{color:var(--tm-primary)}.table .btn-square{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border-radius:12px}.table .dropdown{display:inline-block}.table .dropdown-menu{border:1px solid var(--tm-surface-border);background:var(--tm-surface);box-shadow:var(--tm-shadow);border-radius:calc(var(--tm-card-radius) - 4px)}.table .dropdown-item{color:var(--tm-text);font-weight:500}.table .dropdown-item:focus,.table .dropdown-item:hover{background:color-mix(in srgb,var(--tm-primary) 10%,transparent);color:var(--tm-primary)}.table .dropdown-item.theme-red{color:#ef4444}.table .dropdown-item.theme-red:focus,.table .dropdown-item.theme-red:hover{background:rgba(239,68,68,.1);color:#dc2626}@media (max-width:768px){.table tbody td{padding:.8rem .7rem;font-size:.9rem}.table thead th{padding:.7rem;font-size:.75rem}.table .btn-square{width:32px;height:32px;font-size:.85rem}}.table-striped tbody tr:nth-of-type(odd){background:color-mix(in srgb,var(--tm-primary) 2%,transparent)}.table-bordered{border:1px solid var(--tm-surface-border);border-radius:calc(var(--tm-card-radius) - 4px);overflow:hidden}.table-bordered td,.table-bordered th{border-color:var(--tm-surface-border)}.admin-responsive-table{font-size:.95rem}.admin-responsive-table tbody td{white-space:normal;word-break:break-word}.tm-surface-table-wrap{border:1px solid var(--tm-surface-border);border-radius:18px;background:var(--tm-surface);box-shadow:0 10px 24px rgba(15,23,42,.08);overflow:hidden}.tm-surface-table{margin-bottom:0;--bs-table-bg:transparent;--bs-table-striped-bg:color-mix(in srgb,var(--tm-primary) 4%,transparent);--bs-table-striped-color:var(--tm-text)}.tm-surface-table thead th,.tm-surface-table-head th{background:var(--tm-surface)!important;box-shadow:inset 0 0 0 9999px var(--tm-surface),inset 0 -1px 0 var(--tm-surface-border);color:var(--tm-text)!important;border-bottom:1px solid var(--tm-surface-border)}.tm-surface-table td,.tm-surface-table th{border-color:var(--tm-surface-border);vertical-align:middle}.tm-surface-table .btn-link{color:var(--tm-primary)}.tm-surface-table .btn-link:focus-visible,.tm-surface-table .btn-link:hover{color:color-mix(in srgb,var(--tm-primary) 86%,black);text-decoration:underline!important}.card{border:1px solid var(--tm-surface-border);background:var(--tm-surface);box-shadow:none;border-radius:calc(var(--tm-card-radius) - 2px);transition:all .2s ease}.card:hover{box-shadow:var(--tm-shadow)}.card-body{padding:1.2rem}.card-header{border-bottom:1px solid var(--tm-surface-border);font-weight:600;color:var(--tm-text)}.card-footer,.card-header{background:transparent;padding:1rem 1.2rem}.card-footer{border-top:1px solid var(--tm-surface-border)}.card-title{margin:0 0 .5rem;font-size:1.05rem;font-weight:700;color:var(--tm-text)}.card-subtitle{margin-bottom:1rem;color:var(--tm-text-muted);font-size:.9rem}.border.rounded.p-3{border:1px solid var(--tm-surface-border)!important;background:color-mix(in srgb,var(--tm-primary) 6%,transparent)!important;border-radius:16px!important;padding:1.2rem!important;transition:all .15s ease;backdrop-filter:blur(2px)}.border.rounded.p-3:hover{border-color:var(--tm-primary);box-shadow:0 4px 12px rgba(111,66,193,.08);background:color-mix(in srgb,var(--tm-primary) 8%,transparent)!important}.border.rounded.p-3 h3{margin-bottom:.5rem;font-size:.95rem;font-weight:700;color:var(--tm-text)}.border.rounded.p-3 .small{color:var(--tm-text-muted);line-height:1.5}.form-control,.form-select,textarea.form-control{background:color-mix(in srgb,var(--tm-surface) 92%,transparent);border:1px solid var(--tm-surface-border);color:var(--tm-text);font-size:.95rem;border-radius:12px;transition:all .15s ease;box-shadow:inset 0 1px 0 rgba(255,255,255,.25)}.form-control::-moz-placeholder,textarea.form-control::-moz-placeholder{color:color-mix(in srgb,var(--tm-text-muted) 88%,transparent);opacity:1}.form-control::placeholder,textarea.form-control::placeholder{color:color-mix(in srgb,var(--tm-text-muted) 88%,transparent);opacity:1}.form-control:focus,.form-select:focus,textarea.form-control:focus{border-color:var(--tm-primary);background:var(--tm-surface);color:var(--tm-text);box-shadow:0 0 0 .2rem rgba(111,66,193,.1)}.form-control-sm,.form-select-sm{border-radius:10px}.form-floating>.form-control,.form-floating>.form-select{padding-top:1.15rem}input[type=file].form-control{padding:.45rem .55rem}input[type=file].form-control::file-selector-button{margin:-.45rem .7rem -.45rem -.55rem;padding:.7rem .95rem;border:0;border-right:1px solid var(--tm-surface-border);background:color-mix(in srgb,var(--tm-primary) 8%,transparent);color:var(--tm-primary);font-weight:700}.card .form-label{font-weight:600;color:var(--tm-text);margin-bottom:.5rem;font-size:.9rem}.card .form-check-label{margin-left:.5rem;color:var(--tm-text);font-weight:500}.card .form-check-input{width:1.25rem;height:1.25rem;border:1px solid var(--tm-surface-border);background:var(--tm-surface);cursor:pointer;margin-top:.25rem}.card .form-check-input:checked{background-color:var(--tm-primary);border-color:var(--tm-primary)}.card .form-check-input:focus{border-color:var(--tm-primary);box-shadow:0 0 0 .2rem rgba(111,66,193,.1)}.card.border-0{border:none!important;box-shadow:none}.modal-content{background:var(--tm-surface);border:1px solid var(--tm-surface-border);border-radius:calc(var(--tm-card-radius) - 2px);box-shadow:var(--tm-shadow)}.modal-header{background:transparent;border-bottom:1px solid var(--tm-surface-border);padding:1.2rem}.modal-header .modal-title{font-weight:700;color:var(--tm-text);font-size:1.1rem}.modal-body{padding:1.2rem;color:var(--tm-text)}.modal-footer{background:transparent;border-top:1px solid var(--tm-surface-border);padding:1rem 1.2rem}.modal-backdrop.show{backdrop-filter:blur(4px);background:rgba(0,0,0,.4)}.tm-theme-list-group{gap:.55rem;background:transparent}.tm-theme-list-group .list-group-item{border:1px solid var(--tm-surface-border);border-radius:14px!important;background:color-mix(in srgb,var(--tm-primary) 4%,transparent);color:var(--tm-text);padding:.85rem 1rem;display:flex;align-items:center;gap:.75rem;font-weight:600;transition:all .15s ease}.tm-theme-list-group .list-group-item+.list-group-item{margin-top:.55rem}.tm-theme-list-group .list-group-item:focus-visible,.tm-theme-list-group .list-group-item:hover{background:color-mix(in srgb,var(--tm-primary) 9%,transparent);border-color:color-mix(in srgb,var(--tm-primary) 28%,var(--tm-surface-border));color:var(--tm-primary);transform:translateY(-1px)}.tm-theme-list-group-icon{width:2rem;height:2rem;display:inline-flex;align-items:center;justify-content:center;border-radius:12px;background:color-mix(in srgb,var(--tm-primary) 14%,transparent);color:var(--tm-primary);flex:0 0 2rem;font-size:1rem}.tm-theme-list-group-label{min-width:0;flex:1 1 auto}.alert{position:relative;border:1px solid;border-radius:12px;padding:.95rem 1.1rem;margin-bottom:1.2rem;font-size:.95rem;transition:all .2s ease}.alert-dismissible{padding-right:2.5rem}.alert .table{--bs-table-bg:transparent;--bs-table-accent-bg:transparent;--bs-table-striped-bg:transparent;--bs-table-hover-bg:transparent;--bs-table-color:inherit;margin-bottom:0;color:inherit}.alert .table>:not(caption)>*>*{background-color:transparent!important;color:inherit}.alert .btn-close{position:absolute;top:.8rem;right:.8rem;background-color:transparent;opacity:.7;transition:opacity .15s ease}.alert .btn-close:hover{opacity:1}.alert-danger{background:rgba(239,68,68,.1);border-color:rgba(239,68,68,.3);color:#991b1b}[data-bs-theme=dark] .alert-danger{color:#fecaca}.alert-warning{background:rgba(245,158,11,.1);border-color:rgba(245,158,11,.3);color:#92400e}[data-bs-theme=dark] .alert-warning{color:#fcd34d}.alert-success{background:rgba(16,185,129,.1);border-color:rgba(16,185,129,.3);color:#065f46}[data-bs-theme=dark] .alert-success{color:#a7f3d0}.alert-info{background:rgba(59,130,246,.1);border-color:rgba(59,130,246,.3);color:#1e40af}[data-bs-theme=dark] .alert-info{color:#93c5fd}.alert-secondary{background:color-mix(in srgb,var(--tm-text-muted) 8%,transparent);border-color:var(--tm-surface-border);color:var(--tm-text)}.badge{font-weight:600;font-size:.8rem;padding:.4rem .8rem;border-radius:12px;letter-spacing:.02em;display:inline-block;transition:all .15s ease}.badge.bg-primary{background:linear-gradient(135deg,var(--tm-primary),color-mix(in srgb,var(--tm-primary) 85%,transparent))!important;color:#fff}.badge.bg-success{background:linear-gradient(135deg,#10b981,#059669)!important;color:#fff}.badge.bg-danger{background:linear-gradient(135deg,#ef4444,#dc2626)!important;color:#fff}.badge.bg-warning{background:linear-gradient(135deg,#f59e0b,#d97706)!important;color:#fff}.badge.bg-info{background:linear-gradient(135deg,#3b82f6,#1d4ed8)!important;color:#fff}.badge.bg-secondary{background:color-mix(in srgb,var(--tm-text-muted) 25%,transparent)!important;color:var(--tm-text-muted)}.badge.text-bg-success{background:linear-gradient(135deg,#10b981,#059669)!important;color:#fff!important}.badge.text-bg-danger{background:linear-gradient(135deg,#ef4444,#dc2626)!important;color:#fff!important}.badge.text-bg-warning{background:linear-gradient(135deg,#f59e0b,#d97706)!important;color:#fff!important}.badge.text-bg-secondary{background:color-mix(in srgb,var(--tm-text-muted) 25%,transparent)!important;color:var(--tm-text-muted)!important}.badge.severity-critical,.badge.severity-danger{background:linear-gradient(135deg,#ef4444,#dc2626)!important;color:#fff}.badge.severity-warning{background:linear-gradient(135deg,#f59e0b,#d97706)!important;color:#fff}.badge.severity-info{background:linear-gradient(135deg,#3b82f6,#1d4ed8)!important;color:#fff}.badge-container,.badge-group{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.btn.day-btn,.day-btn{font-size:.8rem;padding:.45rem .55rem;border-radius:10px;border:1px solid var(--tm-surface-border);background:var(--tm-surface);color:var(--tm-text);font-weight:600;transition:all .15s ease;white-space:normal;min-height:64px;display:inline-flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;line-height:1.1;gap:.25rem}.day-btn:hover{background:color-mix(in srgb,var(--tm-primary) 10%,transparent);border-color:var(--tm-primary);color:var(--tm-primary);transform:translateY(-1px)}.day-btn.active,.day-btn.is-active,.day-btn.selected{background:linear-gradient(135deg,var(--tm-primary),color-mix(in srgb,var(--tm-primary) 85%,transparent));border-color:var(--tm-primary);color:#fff;box-shadow:0 4px 8px rgba(111,66,193,.15)}.btn-outline-secondary.day-btn{border-color:var(--tm-surface-border)}.btn-outline-secondary.day-btn:hover{background:color-mix(in srgb,var(--tm-primary) 10%,transparent);border-color:var(--tm-primary)}.btn-danger.day-btn{background:rgba(239,68,68,.1);border-color:rgba(239,68,68,.35);color:#b91c1c}.btn-danger.day-btn:hover{background:rgba(239,68,68,.16);border-color:rgba(239,68,68,.45);color:#991b1b}.day-btn-date{font-size:.92rem;font-weight:800;line-height:1}.day-btn-total{justify-content:center;flex-wrap:wrap;gap:.18rem .26rem;font-size:.67rem;font-weight:600;line-height:1.05;color:color-mix(in srgb,currentColor 74%,transparent)}.day-btn-total .activity-symbol{width:.72rem;height:.72rem;display:inline-flex;align-items:center;justify-content:center}.day-btn-total .activity-symbol svg{width:100%;height:100%;display:block}.day-btn.active .day-btn-total,.day-btn.is-active .day-btn-total,.day-btn.selected .day-btn-total{color:rgba(255,255,255,.85)}.progress{background:color-mix(in srgb,var(--tm-text-muted) 10%,transparent);border-radius:10px;height:1.2rem;border:1px solid var(--tm-surface-border)}.progress-bar{background:linear-gradient(90deg,var(--tm-primary),color-mix(in srgb,var(--tm-primary) 85%,transparent))!important;font-weight:600;font-size:.8rem;display:flex;align-items:center;justify-content:center;transition:width .3s ease}.progress-bar.bg-success{background:linear-gradient(90deg,#10b981,#059669)!important}.progress-bar.bg-danger{background:linear-gradient(90deg,#ef4444,#dc2626)!important}.progress-bar.bg-warning{background:linear-gradient(90deg,#f59e0b,#d97706)!important}.danger-card,.info-card,.warning-card{border-radius:14px;padding:1rem 1.2rem;border:1px solid;margin-bottom:1rem;transition:all .2s ease}.info-card{background:rgba(59,130,246,.08);border-color:rgba(59,130,246,.3);color:#1e40af}[data-bs-theme=dark] .info-card{background:rgba(59,130,246,.12);color:#93c5fd}.warning-card{background:rgba(245,158,11,.08);border-color:rgba(245,158,11,.3);color:#92400e}[data-bs-theme=dark] .warning-card{background:rgba(245,158,11,.12);color:#fcd34d}.danger-card{background:rgba(239,68,68,.08);border-color:rgba(239,68,68,.3);color:#991b1b}[data-bs-theme=dark] .danger-card{background:rgba(239,68,68,.12);color:#fecaca}table.dismissable tbody tr{transition:all .2s ease}table.dismissable tbody tr:hover{background:color-mix(in srgb,var(--tm-primary) 5%,transparent)}table.dismissable .row-dismiss-btn{opacity:.6;transition:opacity .15s ease}table.dismissable tbody tr:hover .row-dismiss-btn{opacity:1}.rest-planner-container{background:color-mix(in srgb,var(--tm-primary) 2%,transparent);border:1px solid var(--tm-surface-border);border-radius:12px;padding:1.2rem;margin-bottom:1.2rem}.rest-planner-section{margin-bottom:1.2rem}.rest-planner-section:last-child{margin-bottom:0}.rest-planner-title{font-size:1rem;font-weight:700;color:var(--tm-text);margin-bottom:.8rem;display:flex;align-items:center;gap:.5rem}.rest-planner-subtitle{font-size:.9rem;color:var(--tm-text-muted);margin-bottom:.8rem}.info-pill,.notification-pill,.status-pill{display:inline-flex;align-items:center;gap:.4rem;padding:.4rem .8rem;border-radius:12px;font-size:.85rem;font-weight:600}.info-pill.success,.notification-pill.success,.status-pill.success{background:rgba(16,185,129,.12);color:#065f46;border:1px solid rgba(16,185,129,.3)}[data-bs-theme=dark] .notification-pill.success{color:#a7f3d0}.info-pill.danger,.notification-pill.danger,.status-pill.danger{background:rgba(239,68,68,.12);color:#991b1b;border:1px solid rgba(239,68,68,.3)}[data-bs-theme=dark] .notification-pill.danger{color:#fecaca}.info-pill.warning,.notification-pill.warning,.status-pill.warning{background:rgba(245,158,11,.12);color:#92400e;border:1px solid rgba(245,158,11,.3)}[data-bs-theme=dark] .notification-pill.warning{color:#fcd34d}.tm-report-back-fab{position:fixed;right:1.15rem;bottom:1.15rem;z-index:1035;width:54px;height:54px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 14px 28px rgba(15,23,42,.22)}.tm-report-back-fab i{font-size:1.2rem;line-height:1}.subscription-current-card,.subscription-period-card,.subscription-plan-card{position:relative;overflow:hidden}.subscription-current-card:before,.subscription-plan-card:before{content:"";position:absolute;inset:0 0 auto 0;height:4px;background:linear-gradient(90deg,var(--tm-primary),var(--tm-accent))}.subscription-current-hero,.subscription-plan-hero{display:flex;gap:1rem;align-items:center;margin-bottom:1rem}.subscription-plan-icon{width:56px;height:56px;border-radius:18px;display:inline-flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--tm-primary) 12%,transparent);color:var(--tm-primary);font-size:1.4rem;flex:0 0 56px}.subscription-current-name,.subscription-plan-name{font:700 1.15rem/1.1 var(--tm-title-font);margin:0}.subscription-current-price,.subscription-plan-price{font:800 clamp(2rem,2vw + 1.25rem,2.8rem)/1 var(--tm-title-font);margin:0;color:var(--tm-text)}.subscription-current-price span,.subscription-plan-price span{font-size:.48em;color:var(--tm-text-muted);vertical-align:top}.subscription-current-badge-row,.subscription-plan-badge-row{display:flex;justify-content:space-between;gap:.75rem;align-items:center;margin-bottom:1rem;flex-wrap:wrap}.subscription-feature-list{margin:0}.subscription-feature-list .list-group-item{font-weight:500;justify-content:space-between}.subscription-feature-label{display:inline-flex;align-items:center;gap:.55rem;min-width:0}.subscription-period-card{border:1px solid var(--tm-surface-border);border-radius:16px;background:color-mix(in srgb,var(--tm-primary) 3%,transparent);padding:.9rem;height:100%}.subscription-period-card .btn{margin-top:.35rem}@media (max-width:768px){.modal-content{border-radius:16px}.modal-body,.modal-footer,.modal-header{padding:1rem}.alert{padding:.85rem 1rem;font-size:.9rem}.badge{font-size:.75rem;padding:.35rem .65rem}.day-btn{font-size:.8rem;padding:.45rem .55rem;min-height:68px}.progress{height:1rem}.danger-card,.info-card,.warning-card{padding:.85rem 1rem;margin-bottom:.8rem}.rest-planner-container{padding:1rem;margin-bottom:1rem}.subscription-current-hero,.subscription-plan-hero{gap:.8rem}.subscription-plan-icon{width:48px;height:48px;flex-basis:48px;border-radius:16px;font-size:1.2rem}}.btn{font-weight:600;font-size:.95rem;border-radius:12px;padding:.6rem 1.2rem;transition:all .15s ease;border:none;display:inline-flex;align-items:center;gap:.5rem;white-space:nowrap}.btn:active,.btn:focus{box-shadow:0 0 0 .25rem rgba(111,66,193,.25)}.btn-primary{background:linear-gradient(135deg,var(--tm-primary),color-mix(in srgb,var(--tm-primary) 85%,transparent));color:#fff;border:none}.btn-primary:hover{background:linear-gradient(135deg,color-mix(in srgb,var(--tm-primary) 90%,transparent),color-mix(in srgb,var(--tm-primary) 75%,transparent));transform:translateY(-2px);box-shadow:0 8px 16px rgba(111,66,193,.2)}.btn-primary:active,.btn-primary:focus{background:var(--tm-primary);box-shadow:0 0 0 .25rem rgba(111,66,193,.5)}.btn-success{background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none}.btn-success:hover{background:linear-gradient(135deg,#059669,#047857);transform:translateY(-2px);box-shadow:0 8px 16px rgba(16,185,129,.2)}.btn-success:active,.btn-success:focus{background:#059669;box-shadow:0 0 0 .25rem rgba(16,185,129,.5)}.btn-secondary{background:color-mix(in srgb,var(--tm-text-muted) 15%,transparent);color:var(--tm-text);border:1px solid var(--tm-surface-border)}.btn-secondary:hover{background:color-mix(in srgb,var(--tm-text-muted) 20%,transparent);border-color:var(--tm-text-muted);transform:translateY(-2px)}.btn-secondary:active,.btn-secondary:focus{background:color-mix(in srgb,var(--tm-text-muted) 25%,transparent);box-shadow:0 0 0 .25rem rgba(100,116,139,.25)}.btn-outline-primary{background:transparent;color:var(--tm-primary);border:2px solid var(--tm-primary)}.btn-outline-primary:hover{background:color-mix(in srgb,var(--tm-primary) 10%,transparent);transform:translateY(-2px)}.btn-outline-success{background:transparent;color:#10b981;border:2px solid #10b981}.btn-outline-success:hover{background:rgba(16,185,129,.1);transform:translateY(-2px)}.btn-outline-danger{background:transparent;color:#ef4444;border:2px solid #ef4444}.btn-outline-danger:hover{background:rgba(239,68,68,.1);transform:translateY(-2px)}.btn-link{background:transparent;color:var(--tm-primary);border:none;text-decoration:none;padding:.5rem .8rem}.btn-link:hover{color:color-mix(in srgb,var(--tm-primary) 85%,transparent);text-decoration:underline}.btn-link:focus{box-shadow:0 0 0 .25rem rgba(111,66,193,.25)}.btn-sm{padding:.4rem .8rem;font-size:.85rem;border-radius:10px}.btn-lg{padding:.8rem 1.6rem;font-size:1.05rem;border-radius:14px}.btn-square,.btn.btn-icon{width:40px;height:40px;padding:0;display:inline-flex;align-items:center;justify-content:center;border-radius:12px}.btn-square.btn-sm{width:32px;height:32px}.btn-square.btn-lg{width:48px;height:48px}.btn-group,.btn-toolbar{display:flex;flex-wrap:wrap;gap:.5rem}.btn.disabled,.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn.disabled:hover,.btn:disabled:hover{transform:none;box-shadow:none}@media (max-width:768px){.tm-report-back-fab{right:.85rem;bottom:.85rem;width:50px;height:50px}}.btn-close{width:1.5rem;height:1.5rem;padding:0;background-color:transparent;background-repeat:no-repeat;background-position:50%;background-size:1em;border:none;border-radius:8px;color:var(--tm-text-muted);font-size:1.5rem;line-height:1;cursor:pointer;transition:all .15s ease}.btn-close:focus,.btn-close:hover{color:var(--tm-text);background:color-mix(in srgb,var(--tm-text-muted) 10%,transparent)}@media (max-width:768px){.card-body{padding:1rem}.card-footer,.card-header{padding:.8rem 1rem}.border.rounded.p-3{padding:1rem!important}.btn{padding:.55rem 1rem;font-size:.9rem}.btn-square{width:36px;height:36px}}body{min-height:100vh;background-image:linear-gradient(150deg,#7928ca,#d6006c)}.panel{background:rgba(255,255,255,.96);border-radius:12px;box-shadow:0 20px 40px rgba(0,0,0,.2)}[data-bs-theme=dark] body{background-image:linear-gradient(150deg,#111827,#312e81)}[data-bs-theme=dark] .panel{background:rgba(24,26,31,.96);color:#e9ecef}[data-bs-theme=dark] .table{--bs-table-bg:transparent}[data-bs-theme=dark] .table thead.table-dark th{background:#111827!important;color:#f8fafc;border-color:#374151}[data-bs-theme=dark] .table thead.table-secondary th{background:#2b3037!important;color:#e9ecef;border-color:#3a4150}[data-bs-theme=dark] .text-muted{color:var(--tm-text-muted)!important}.trip-calc-badges .badge{font-size:.75rem;padding:.45em .65em}.trip-calc-badge-info{background-color:#a5d8f7!important;color:#0c5460}.trip-calc-badge-total{background-color:#c7b8ea!important;color:#2d1b69}[data-bs-theme=dark] .trip-calc-badge-info{background-color:#0d3d56!important;color:#b8e4f4}[data-bs-theme=dark] .trip-calc-badge-total{background-color:#2d2468!important;color:#d4c8f0}.trip-calc-badge-profit-positive{background-color:#b8e0c8!important;color:#0f5132}.trip-calc-badge-profit-negative{background-color:#f5c2c7!important;color:#842029}[data-bs-theme=dark] .trip-calc-badge-profit-positive{background-color:#0d3320!important;color:#b8e0c8}[data-bs-theme=dark] .trip-calc-badge-profit-negative{background-color:#58151c!important;color:#f8d7da}.theme-toggle{position:relative;display:grid;grid-template-columns:1fr 1fr;align-items:center;width:78px;height:34px;padding:3px;border-radius:999px;border:1px solid rgba(0,0,0,.15);background:rgba(255,255,255,.45);backdrop-filter:blur(2px)}.theme-toggle-input{position:absolute;opacity:0;pointer-events:none}.theme-toggle-option{position:relative;z-index:2;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#6c757d;-webkit-user-select:none;-moz-user-select:none;user-select:none}.theme-toggle-option svg{width:16px;height:16px;display:block}.theme-toggle-thumb{position:absolute;left:3px;top:3px;width:28px;height:28px;border-radius:999px;background:#ffffff;box-shadow:0 2px 8px rgba(0,0,0,.25);transition:transform .22s ease;z-index:1}#themeModeDark:checked~.theme-toggle-thumb{transform:translateX(40px)}#themeModeDark:checked+.theme-toggle-option,#themeModeLight:checked+.theme-toggle-option{color:#212529}[data-bs-theme=dark] .theme-toggle{border-color:rgba(255,255,255,.22);background:rgba(15,23,42,.55)}[data-bs-theme=dark] .theme-toggle-option{color:#94a3b8}[data-bs-theme=dark] .theme-toggle-thumb{background:#0f172a;box-shadow:0 2px 8px rgba(0,0,0,.5)}[data-bs-theme=dark] #themeModeDark:checked+.theme-toggle-option,[data-bs-theme=dark] #themeModeLight:checked+.theme-toggle-option{color:#f8fafc}.driver-link{display:block;padding:.78rem .9rem;border:1px solid var(--tm-surface-border);border-radius:calc(var(--tm-card-radius) - 6px);color:var(--tm-text);background:linear-gradient(135deg,color-mix(in srgb,var(--tm-primary) 7%,#ffffff 93%),color-mix(in srgb,var(--tm-accent) 5%,#ffffff 95%));box-shadow:0 10px 24px rgba(15,23,42,.08);transition:transform .16s ease,background-color .16s ease,color .16s ease,border-color .16s ease,box-shadow .16s ease}.driver-link:focus,.driver-link:hover{color:var(--tm-primary);background:linear-gradient(135deg,color-mix(in srgb,var(--tm-primary) 12%,#ffffff 88%),color-mix(in srgb,var(--tm-accent) 10%,#ffffff 90%));border-color:color-mix(in srgb,var(--tm-primary) 45%,white);box-shadow:0 14px 28px rgba(15,23,42,.14);transform:translateY(-1px);text-decoration:none}.driver-link-name{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:700}.driver-link small{color:var(--tm-text-muted)!important;margin-top:.18rem}.driver-link.active{font-weight:700;color:#fff!important;background:linear-gradient(135deg,var(--tm-primary),color-mix(in srgb,var(--tm-accent) 78%,var(--tm-primary) 22%));border-color:transparent;box-shadow:0 16px 32px color-mix(in srgb,var(--tm-primary) 26%,transparent)}.tm-smartcard-placeholder{border:1px solid var(--tm-surface-border);border-radius:calc(var(--tm-card-radius) - 4px);padding:.95rem 1rem;background:linear-gradient(135deg,color-mix(in srgb,var(--tm-primary) 7%,var(--tm-surface) 93%),color-mix(in srgb,var(--tm-accent) 5%,var(--tm-surface) 95%));box-shadow:0 10px 24px rgba(15,23,42,.08);color:var(--tm-text)}.tm-smartcard-placeholder .small.text-muted,.tm-smartcard-placeholder .text-muted{color:var(--tm-text-muted)!important}[data-bs-theme=dark] .tm-smartcard-placeholder{background:linear-gradient(135deg,color-mix(in srgb,var(--tm-primary) 18%,var(--tm-surface) 82%),color-mix(in srgb,var(--tm-accent) 12%,var(--tm-surface) 88%));box-shadow:0 14px 28px rgba(2,6,23,.26)}.driver-link.active small{color:rgba(255,255,255,.9)!important}[data-bs-theme=dark] .driver-link{color:#e2e8f0;border-color:rgba(148,163,184,.22);background:linear-gradient(135deg,rgba(51,65,85,.82),rgba(30,41,59,.92));box-shadow:0 12px 26px rgba(2,6,23,.34)}[data-bs-theme=dark] .driver-link:focus,[data-bs-theme=dark] .driver-link:hover{color:#ffffff;border-color:rgba(196,181,253,.4);background:linear-gradient(135deg,color-mix(in srgb,var(--tm-primary) 26%,#0f172a 74%),color-mix(in srgb,var(--tm-accent) 18%,#0f172a 82%));box-shadow:0 16px 30px rgba(2,6,23,.42)}[data-bs-theme=dark] .driver-link small{color:#94a3b8!important}[data-bs-theme=dark] .driver-link.active{color:#fff!important;background:linear-gradient(135deg,var(--tm-primary),var(--tm-accent));border-color:transparent}.driver-link-grid,.vehicle-link-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:.5rem}.driver-link-grid>li,.vehicle-link-grid>li{margin-bottom:0!important}@media (max-width:767px){.driver-link-grid,.vehicle-link-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.file-name-cell{max-width:1px;width:100%}.file-name-cell .file-name-text,.file-name-cell .file-options-trigger{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left}.panel{margin:0 .5rem;padding:1rem!important}.container.py-4{padding-left:.5rem;padding-right:.5rem}.d-flex.justify-content-between.align-items-center.mb-3{flex-wrap:wrap;gap:.75rem}.d-flex.justify-content-between.align-items-center.mb-3 h1{font-size:1.25rem}}.day-detail-panel{background:#f8f9fa;border-color:#dee2e6!important}.day-selector-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(116px,1fr));gap:.3rem}.day-selector-grid .btn{width:100%;min-width:0;justify-self:stretch}.day-strip-scroller{display:flex;align-items:stretch;gap:.5rem}.day-strip-scroll{flex:1 1 auto;min-width:0;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-ms-overflow-style:none;scroll-behavior:smooth;padding-bottom:.25rem;position:relative;cursor:grab;touch-action:pan-x;-moz-user-select:none;user-select:none;-webkit-user-select:none;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 20px,#000 calc(100% - 20px),transparent);mask-image:linear-gradient(90deg,transparent 0,#000 20px,#000 calc(100% - 20px),transparent)}.day-strip-scroll::-webkit-scrollbar{display:none;width:0;height:0}.day-strip-scroll.dragging{cursor:grabbing;scroll-behavior:auto}.day-strip-scroll:after,.day-strip-scroll:before{content:"";position:sticky;top:0;bottom:0;width:26px;z-index:2;pointer-events:none;opacity:0;transition:opacity .2s ease;backdrop-filter:blur(8px)}.day-strip-scroll:before{left:0;float:left;background:linear-gradient(to right,color-mix(in srgb,var(--tm-surface,#fff) 96%,transparent),transparent)}.day-strip-scroll:after{right:0;float:right;background:linear-gradient(to left,color-mix(in srgb,var(--tm-surface,#fff) 96%,transparent),transparent)}.day-strip-scroll[data-show-left-edge="1"]:before,.day-strip-scroll[data-show-right-edge="1"]:after{opacity:1}.day-strip-nav{flex:0 0 auto;width:2.25rem;border:1px solid var(--tm-surface-border,#d0d7de);border-radius:999px;background:var(--tm-surface,#fff);color:var(--tm-text,#1f2937);display:inline-flex;align-items:center;justify-content:center;transition:background-color .2s ease,color .2s ease,opacity .2s ease}.day-strip-nav:hover:not(:disabled){background:color-mix(in srgb,var(--tm-primary,#0d6efd) 8%,var(--tm-surface,#fff))}.day-strip-nav:disabled{opacity:.45;cursor:default}.day-selector-grid.day-selector-scroll-strip{display:inline-flex;grid-template-columns:none;gap:.5rem;min-width:-moz-max-content;min-width:max-content;padding-top:.15rem}.day-selector-scroll-strip .day-btn{flex:0 0 auto;min-width:0;width:-moz-max-content;width:max-content;max-width:none;padding:.7rem .95rem .72rem;border:1px solid var(--tm-surface-border,#d0d7de);border-top:3px solid transparent;border-radius:14px;background:var(--tm-surface,#fff);color:var(--tm-text,#1f2937);text-align:left;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:.28rem;box-shadow:0 6px 16px rgba(15,23,42,.06)}.day-selector-scroll-strip .day-btn.active{border-top-color:var(--tm-primary,#0d6efd);border-color:color-mix(in srgb,var(--tm-primary,#0d6efd) 14%,var(--tm-surface-border,#d0d7de));background:rgb(238,238,238);color:var(--tm-text,#1f2937)}[data-bs-theme=dark] .day-selector-scroll-strip .day-btn.active{background:rgb(36,43,56)}.day-selector-scroll-strip .day-btn.day-btn--alert{border-left:3px solid #dc3545}.day-selector-scroll-strip .day-btn.day-btn--alert:not(.active){background:color-mix(in srgb,#dc3545 4%,var(--tm-surface,#fff))}.day-btn-date{display:block;font-size:.86rem;font-weight:700;line-height:1.2;white-space:nowrap}.day-btn-total{display:inline-flex;align-items:center;flex-wrap:nowrap;gap:.3rem;font-size:.74rem;color:var(--tm-text-muted,#6b7280);white-space:nowrap}.day-selector-scroll-strip .day-btn.active .day-btn-total{color:color-mix(in srgb,var(--tm-text,#1f2937) 78%,transparent)}@media (max-width:767px){.day-selector-grid{grid-template-columns:repeat(auto-fit,minmax(104px,1fr));gap:.25rem}.day-selector-grid .btn{padding:.45rem .4rem;font-size:.88rem}.day-strip-scroller{gap:.35rem}.day-strip-nav{width:2rem}.day-selector-scroll-strip .day-btn{padding:.62rem .8rem;border-radius:12px}.day-btn-date{font-size:.8rem}.day-btn-total{font-size:.7rem}}@media (max-width:575.98px){.day-selector-grid{grid-template-columns:repeat(auto-fit,minmax(92px,1fr));gap:.2rem}.day-selector-grid .btn{padding:.38rem .3rem;font-size:.8rem}.day-strip-nav{width:1.85rem}.day-selector-scroll-strip .day-btn{padding:.58rem .72rem}}.rest-planning-fade-pane .card.border-danger{border-color:var(--tm-surface-border)!important;background:color-mix(in srgb,var(--tm-surface) 94%,var(--tm-primary) 6%);box-shadow:0 16px 32px rgba(15,23,42,.08)}.rest-planning-fade-pane .card.border-danger .card-header{background:linear-gradient(135deg,color-mix(in srgb,var(--tm-primary) 10%,transparent),color-mix(in srgb,var(--tm-accent) 8%,transparent));border-bottom-color:var(--tm-surface-border);font-weight:700}.rest-planning-fade-pane .table.table-sm.mb-0{--bs-table-bg:transparent;margin-bottom:0}.rest-planning-fade-pane .table.table-sm.mb-0 td,.rest-planning-fade-pane .table.table-sm.mb-0 th{padding:.72rem .2rem;border-color:color-mix(in srgb,var(--tm-surface-border) 80%,transparent);background:transparent;vertical-align:middle}.rest-planning-fade-pane .table.table-sm.mb-0 td:first-child,.rest-planning-fade-pane .table.table-sm.mb-0 th:first-child{color:var(--tm-text-muted);font-weight:600}.rest-planning-fade-pane .table.table-sm.mb-0 td:last-child,.rest-planning-fade-pane .table.table-sm.mb-0 th:last-child{color:var(--tm-text);font-weight:700}.rest-planning-fade-pane .table.table-sm.mb-0 .text-muted{color:var(--tm-text-muted)!important}.day-timeline-viewport{overflow-x:auto;overflow-y:hidden;width:100%;touch-action:pan-x pan-y;overscroll-behavior-x:contain}.day-timeline-ticks-viewport{overflow-x:hidden;overflow-y:hidden;width:100%}.day-timeline-viewport{scrollbar-width:none;-ms-overflow-style:none}.day-timeline-viewport::-webkit-scrollbar{width:0;height:0;display:none}@media (max-width:575.98px){.day-timeline-zoom-controls .form-range{display:none}}.day-timeline-canvas{position:relative;height:126px;background:#fbfcfd;border:1px solid #d7dde3;border-radius:12px;min-width:100%;overflow:hidden;box-shadow:inset 0 1px 0 rgba(255,255,255,.85)}.day-timeline-ticks{position:relative;height:22px;font-size:9px;color:#6c757d;min-width:100%}.day-timeline-ticks span{white-space:nowrap}[data-bs-theme=dark] .day-detail-panel{background:#1f232b;border-color:#3a4150!important}[data-bs-theme=dark] .day-timeline-viewport{background:#2b3037;border-radius:12px}[data-bs-theme=dark] .day-timeline-canvas{background:#161b22;border-color:#3a4150;box-shadow:inset 0 1px 0 rgba(255,255,255,.03)}[data-bs-theme=dark] .day-timeline-ticks{color:#adb5bd}[data-bs-theme=dark] .day-activity-table .table-secondary{--bs-table-bg:#2b3037;--bs-table-color:#e9ecef}.day-activity-table .table{font-size:.875rem;margin-bottom:0}.day-activity-table .table td,.day-activity-table .table th{padding:.35rem .45rem;line-height:1.2;vertical-align:middle}.day-activity-table-grid{display:grid;grid-template-columns:1fr;gap:.75rem}@media (min-width:1200px){.day-activity-table-grid.two-col{grid-template-columns:1fr 1fr;align-items:start}}.activity-type-cell{gap:5px}.activity-symbol,.activity-type-cell{display:inline-flex;align-items:center}.activity-symbol{justify-content:center;width:14px;height:14px;color:#212529;flex:0 0 auto}.activity-symbol svg{width:14px;height:14px;display:block}[data-bs-theme=dark] .activity-symbol{color:#e9ecef}.day-location-cell{width:46px;text-align:center}.day-location-btn{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;padding:0;border:0;border-radius:999px;color:#0d6efd;text-decoration:none;background:transparent}.day-location-btn:focus-visible,.day-location-btn:hover{color:#0a58ca;background:rgba(13,110,253,.1);outline:none}.day-location-btn svg{width:16px;height:16px;display:block}[data-bs-theme=dark] .day-location-btn{color:#74c0fc}[data-bs-theme=dark] .day-location-btn:focus-visible,[data-bs-theme=dark] .day-location-btn:hover{color:#a5d8ff;background:rgba(116,192,252,.12)}.location-map-modal .modal-body{padding:0;background:#f8f9fa}[data-bs-theme=dark] .location-map-modal .modal-body{background:#161b22}.location-map-canvas{width:100%;height:min(65vh,460px);min-height:320px;background:#e9ecef}[data-bs-theme=dark] .location-map-canvas{background:#111827}[data-bs-theme=dark] .leaflet-tile{filter:invert(.92) hue-rotate(180deg) brightness(.95) contrast(.9) saturate(1.05)}.location-map-fallback{padding:1rem 1.25rem}.trip-notes-list .trip-note-item{border-left:0;border-right:0}.trip-note-line{display:flex;align-items:center;gap:.5rem;width:100%;min-width:0;text-align:left}.trip-note-bullet{flex:0 0 auto;font-size:1.1rem;line-height:1;color:var(--bs-primary)}.trip-note-timestamp{flex:0 0 auto;color:var(--bs-secondary-color);font-size:.875rem;white-space:nowrap}.trip-note-text{flex:1 1 auto;min-width:0}.trip-note-detail-text{white-space:pre-wrap;word-break:break-word}.severity-minor{background:#d1ecf1;color:#0c5460}.severity-serious{background:#fff3cd;color:#856404}.severity-very_serious{background:#f7d9df;color:#8a3048}.severity-most_serious{background:#efd3da;color:#7a2940;font-weight:700}.violations-table tbody tr.severity-minor td{background:#d1ecf1;color:#0c5460}.violations-table tbody tr.severity-serious td{background:#fff3cd;color:#856404}.violations-table tbody tr.severity-very_serious td{background:#f7d9df;color:#8a3048}.violations-table tbody tr.severity-most_serious td{background:#efd3da;color:#7a2940}[data-bs-theme=dark] .severity-minor{background:#0e3d47;color:#7dd3fc}[data-bs-theme=dark] .severity-serious{background:#4d3800;color:#fde047}[data-bs-theme=dark] .severity-very_serious{background:#4a1c1c;color:#fca5a5}[data-bs-theme=dark] .severity-most_serious{background:#7f1d1d;color:#fecaca;font-weight:700}[data-bs-theme=dark] .violations-table tbody tr.severity-minor td{background:#0e3d47;color:#7dd3fc}[data-bs-theme=dark] .violations-table tbody tr.severity-serious td{background:#4d3800;color:#fde047}[data-bs-theme=dark] .violations-table tbody tr.severity-very_serious td{background:#4a1c1c;color:#fca5a5}[data-bs-theme=dark] .violations-table tbody tr.severity-most_serious td{background:#7f1d1d;color:#fecaca}[data-bs-theme=dark] #violationsTable tbody tr.severity-minor td,[data-bs-theme=dark] #violationsTable tbody tr.severity-most_serious td,[data-bs-theme=dark] #violationsTable tbody tr.severity-serious td,[data-bs-theme=dark] #violationsTable tbody tr.severity-very_serious td{border-color:rgba(255,255,255,.1)}.tm-report-table-wrap{border:1px solid var(--tm-surface-border);border-radius:calc(var(--tm-card-radius) - 4px);background:color-mix(in srgb,var(--tm-surface) 96%,white 4%);box-shadow:0 16px 34px rgba(15,23,42,.08);overflow:hidden}.violations-table{table-layout:auto;width:100%;margin-bottom:0}.violations-table thead th{background:var(--tm-surface)!important;box-shadow:inset 0 0 0 9999px var(--tm-surface);color:var(--tm-text);border-bottom-color:var(--tm-surface-border);font-weight:700}.violations-table td:first-child,.violations-table th:first-child{width:72px}.violations-table td:nth-child(2),.violations-table th:nth-child(2){width:auto}.violations-table td:nth-child(3),.violations-table th:nth-child(3){width:23%}.violations-table td:nth-child(4),.violations-table th:nth-child(4){width:18%}.violations-table td,.violations-table th{vertical-align:top}.violations-table .violation-severity-cell{white-space:normal}.violations-table .violation-severity-cell .badge{display:inline-block;max-width:100%;font-size:.72rem;line-height:1.15;padding:.28rem .42rem;white-space:normal;text-align:center}.violations-table .violation-message-cell{line-height:1.2}.violations-table .violation-period-cell{white-space:nowrap}.violations-table .violation-period-cell .day-jump-btn{font:inherit;line-height:inherit;color:inherit;text-align:left;white-space:inherit}.violations-table .violation-metrics-cell{white-space:normal}.violations-table .violation-metrics-cell .metric-value{font-weight:600}.violations-table .violation-metrics-cell .metric-limit{color:#6c757d}[data-bs-theme=dark] .violations-table .violation-metrics-cell .metric-limit{color:#9aa4b2}[data-bs-theme=dark] .violations-table .violation-period-cell .day-jump-btn{color:inherit}[data-bs-theme=dark] .tm-report-table-wrap{background:color-mix(in srgb,var(--tm-surface) 96%,#020617 4%);box-shadow:0 18px 36px rgba(2,6,23,.28)}[data-bs-theme=dark] .violations-table thead th{background:var(--tm-surface)!important;box-shadow:inset 0 0 0 9999px var(--tm-surface);color:var(--tm-text)}.vehicle-other-doc-row{background:#f8f9fa;border:1px solid #dee2e6;border-radius:6px}[data-bs-theme=dark] .vehicle-other-doc-row{background:#1e293b;border-color:#334155}#timelineChart{width:100%!important}.chart-legend span{display:inline-block;width:14px;height:14px;border-radius:3px;margin-right:4px;vertical-align:middle}.day-timeline-tooltip{display:none;position:fixed;z-index:1090;max-width:280px;padding:6px 10px;font-size:12px;line-height:1.3;color:#fff;background:rgba(0,0,0,.85);border-radius:6px;pointer-events:none;white-space:pre-line;box-shadow:0 2px 8px rgba(0,0,0,.25)}[data-bs-theme=dark] .day-timeline-tooltip{background:rgba(30,35,45,.95);color:#e9ecef}.day-timeline-activity-icon{position:absolute;display:flex;align-items:center;justify-content:center;width:18px;height:18px;color:rgba(255,255,255,.96);z-index:4;pointer-events:none}.day-timeline-activity-icon svg{width:14px;height:14px;display:block}.day-timeline-band{position:absolute;left:0;right:0;pointer-events:none}.day-timeline-band-place{top:0;height:32px;background:linear-gradient(180deg,rgba(13,110,253,.04),rgba(13,110,253,.015));border-bottom:1px dashed rgba(13,110,253,.14)}.day-timeline-band-activity{top:32px;height:58px;background:rgba(255,255,255,0);border-bottom:1px dashed rgba(108,117,125,.14)}.day-timeline-band-events{top:90px;bottom:0;background:rgba(255,255,255,0)}.day-timeline-workday-bar{position:absolute;top:4px;height:11px;border-radius:4px;background:linear-gradient(180deg,#e7d67a,#d8c465);border:1px solid rgba(155,132,35,.35);color:#2c2410;font-size:10px;font-weight:700;line-height:9px;text-align:center;z-index:5;clip-path:polygon(8px 0,calc(100% - 8px) 0,100% 50%,calc(100% - 8px) 100%,8px 100%,0 50%);box-shadow:0 1px 2px rgba(0,0,0,.08);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:0 10px}.day-timeline-activity-bar{pointer-events:auto}.day-timeline-rest-duration-label{position:absolute;transform:translateX(-50%);font-size:10px;line-height:10px;font-weight:700;color:#111111;z-index:3;pointer-events:none;white-space:nowrap;text-shadow:0 1px 1px rgba(255,255,255,.75)}.day-timeline-workday-bar-small{font-size:9px;padding:0 6px}.day-timeline-hour-tick{position:absolute;top:2px;transform:translateX(-50%);font-variant-numeric:tabular-nums;letter-spacing:.04em;white-space:nowrap}.day-timeline-place-badge{position:absolute;display:inline-block;max-width:170px;color:#495057;font-size:11px;font-weight:500;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;z-index:3}.day-timeline-place-badge-right{transform:translateX(-100%);text-align:right}.day-timeline-place-badge-type{display:none}.day-timeline-place-badge-label{overflow:hidden;text-overflow:ellipsis}.day-timeline-place-stem{position:absolute;width:2px;background:rgba(220,53,69,.55);z-index:2}.day-timeline-event-callout{position:absolute;display:inline-flex;align-items:center;gap:4px;max-width:150px;padding:2px 7px;border-radius:999px;background:rgba(255,255,255,.94);border:1px solid rgba(108,117,125,.22);color:#212529;font-size:10px;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;z-index:4;box-shadow:0 1px 2px rgba(15,23,42,.08)}.day-timeline-event-glyph{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;border-radius:999px;color:#fff;font-size:9px;font-weight:700;flex:0 0 auto}.day-timeline-event-line{position:absolute;width:1px;z-index:2}.day-report-section{margin-top:.6rem}.day-report-odo-banner{font-size:.82rem;padding:.3rem .6rem;border-radius:.35rem;background:rgba(13,110,253,.08);border:1px solid rgba(13,110,253,.18);color:#0d6efd;display:inline-block}[data-bs-theme=dark] .day-report-odo-banner{background:rgba(77,171,247,.12);border-color:rgba(77,171,247,.22);color:#4dabf7}.day-report-section-title{margin-bottom:.35rem;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#6c757d}.day-report-section-summary{display:flex;align-items:center;justify-content:space-between;list-style:none;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;margin-bottom:0}.day-report-section-summary::-webkit-details-marker{display:none}.day-report-section-summary:after{content:"+";font-size:14px;font-weight:700;line-height:1}.day-report-section-collapsible[open] .day-report-section-summary:after{content:"-"}.place-event-list{display:grid;gap:.35rem}.place-event-item{display:flex;align-items:flex-start;gap:.5rem;padding:.4rem .55rem;border:1px solid #d7dde3;border-radius:6px;background:rgba(255,255,255,.82);color:#495057}.place-event-item-badge{min-width:20px;height:20px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:#0d6efd;color:#fff;font-size:10px;font-weight:700}.place-event-item-badge.end{background:#198754}.place-event-item-badge.manual{background:#6f42c1}.place-event-item-badge svg{width:12px;height:12px}.place-event-item-body{min-width:0;flex:1 1 auto;line-height:1.15}.place-event-item-title{font-weight:600;color:#212529}.place-event-item-meta{margin-top:2px;font-size:.8rem;color:#6c757d}.card-event-list{display:grid;gap:.35rem}.card-event-item{display:flex;align-items:flex-start;gap:.5rem;padding:.4rem .55rem;border:1px solid #d7dde3;border-radius:6px;background:rgba(255,255,255,.78);color:#495057}.card-event-item-time{min-width:54px;font-weight:600;color:#6c757d;line-height:1.15}.card-event-item-body{min-width:0;flex:1 1 auto;line-height:1.15}.card-event-item-title{font-weight:600;color:#212529}.card-event-item-meta{margin-top:2px;font-size:.8rem;color:#6c757d}[data-bs-theme=dark] .card-event-item{background:rgba(22,27,34,.92);border-color:#3a4150;color:#d0d7de}[data-bs-theme=dark] .day-timeline-band-place{background:linear-gradient(180deg,rgba(77,171,247,.1),rgba(77,171,247,.04));border-bottom-color:rgba(77,171,247,.25)}[data-bs-theme=dark] .day-timeline-band-activity{background:rgba(255,255,255,0);border-bottom-color:rgba(255,255,255,.1)}[data-bs-theme=dark] .day-timeline-band-events{background:rgba(255,255,255,0)}[data-bs-theme=dark] .day-timeline-event-callout,[data-bs-theme=dark] .day-timeline-place-badge{color:#e6edf3}[data-bs-theme=dark] .day-timeline-workday-bar{background:linear-gradient(180deg,#d6c266,#bea84d);border-color:rgba(222,201,109,.35);color:#161b22}[data-bs-theme=dark] .day-timeline-rest-duration-label{color:#ffffff;text-shadow:0 1px 2px rgba(0,0,0,.9)}[data-bs-theme=dark] .day-timeline-place-stem{background:rgba(255,99,132,.55)}[data-bs-theme=dark] .place-event-item{background:rgba(22,27,34,.92);border-color:#3a4150;color:#d0d7de}[data-bs-theme=dark] .place-event-item-title{color:#e6edf3}[data-bs-theme=dark] .card-event-item-meta,[data-bs-theme=dark] .card-event-item-time,[data-bs-theme=dark] .place-event-item-meta{color:#9aa4b2}[data-bs-theme=dark] .card-event-item-title{color:#e6edf3}[data-bs-theme=dark] .day-report-section-summary:after{color:#9aa4b2}@media (max-width:576px){.h6-sm{font-size:.875rem!important}.day-detail-panel{padding:.5rem!important}.day-timeline-canvas{height:118px;border-radius:8px}.day-timeline-ticks{font-size:8px;height:18px}.day-activity-table .table{font-size:.76rem}.day-activity-table .table td,.day-activity-table .table th{padding:.22rem .3rem}.activity-type-cell{gap:4px}.activity-symbol,.activity-symbol svg{width:12px;height:12px}.day-timeline-activity-icon{width:14px;height:14px}.day-timeline-activity-icon svg{width:11px;height:11px}.day-timeline-workday-bar{top:4px;height:10px}.day-timeline-rest-duration-label,.day-timeline-workday-bar{font-size:8px;line-height:8px}.day-timeline-event-callout,.day-timeline-place-badge{max-width:110px;font-size:9px}.day-timeline-place-badge{max-width:96px}.day-timeline-event-glyph,.day-timeline-place-badge-type,.place-event-item-badge{width:14px;height:14px;font-size:8px}.place-event-item{gap:.4rem;padding:.28rem .4rem}.place-event-item-meta{font-size:.72rem}.card-event-item{gap:.4rem;padding:.28rem .4rem}.card-event-item-time{min-width:48px;font-size:.78rem}.card-event-item-title{font-size:.79rem}.card-event-item-meta{font-size:.72rem}.violations-table{font-size:.78rem}.violations-table td,.violations-table th{padding:.3rem .35rem}.violations-table td:first-child,.violations-table th:first-child{width:58px}.violations-table td:nth-child(3),.violations-table th:nth-child(3){width:28%}.violations-table td:nth-child(4),.violations-table th:nth-child(4){width:24%}.violations-table .violation-severity-cell .badge{font-size:.66rem;padding:.2rem .28rem}.violations-table .violation-period-cell{white-space:normal;line-height:1.15}.violations-table .violation-period-cell .day-jump-btn{font-size:inherit;padding:0}.violations-table .violation-metrics-cell{min-width:110px}}.zoom-controls-container{position:relative}.zoom-controls-container .d-flex{position:relative;z-index:2}.zoom-range{width:180px}.zoom-btn,.zoom-label,.zoom-range,.zoom-value{flex-shrink:0}.vehicle-speed-chart-viewport{overflow-x:hidden;overflow-y:hidden;touch-action:pan-x pan-y;overscroll-behavior-x:contain;background:var(--tm-surface);border:1px solid var(--tm-surface-border)!important;border-radius:18px!important;box-shadow:0 10px 24px rgba(15,23,42,.08)}.vehicle-speed-chart-viewport.is-dragging{cursor:grabbing!important}.vehicle-speed-chart-content{height:min(42vh,420px);min-height:240px;min-width:100%}.vehicle-speed-chart-content canvas{display:block;height:100%;max-width:none}.vehicle-speed-chart-viewport.is-dragging canvas{cursor:grabbing!important}.vehicle-report-compact{font-size:.92rem}.vehicle-report-compact .card-body{padding-top:.7rem;padding-bottom:.7rem}.vehicle-report-compact .accordion-body{padding:.7rem .8rem}.vehicle-report-compact pre.small{font-size:.76rem;line-height:1.15;padding:.5rem!important}.vehicle-report-section-title{margin-bottom:.35rem}.vehicle-report-table{font-size:.8rem;line-height:1.15;margin-bottom:0;--bs-table-bg:transparent;--bs-table-striped-bg:color-mix(in srgb,var(--tm-primary) 4%,transparent);--bs-table-striped-color:var(--tm-text)}.vehicle-report-table td,.vehicle-report-table th{padding:.38rem .5rem;vertical-align:middle;border-color:var(--tm-surface-border)}.vehicle-report-table th{white-space:nowrap;background:var(--tm-surface)!important;color:var(--tm-text)!important;border-bottom:1px solid var(--tm-surface-border);box-shadow:inset 0 -1px 0 var(--tm-surface-border)}.vehicle-report-table td{word-break:break-word}.vehicle-report-table-wrap{border:1px solid var(--tm-surface-border);border-radius:18px;background:var(--tm-surface);box-shadow:0 10px 24px rgba(15,23,42,.08);overflow:hidden}.table-responsive.vehicle-report-table-wrap,.vehicle-report-table-wrap .table-responsive{margin-bottom:0}[data-bs-theme=dark] .vehicle-report-table-wrap,[data-bs-theme=dark] .vehicle-speed-chart-viewport{box-shadow:0 14px 28px rgba(2,6,23,.28)}.rest-planning-tabs{flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:thin;gap:.45rem;padding:.4rem;border:1px solid var(--tm-surface-border);border-radius:18px;background:var(--tm-surface);box-shadow:0 10px 24px rgba(15,23,42,.08)}.rest-planning-tabs .nav-item{flex:0 0 auto}.rest-planning-tabs .nav-link{white-space:nowrap;border:0;border-radius:14px;color:var(--tm-text-muted);font-weight:700;padding:.7rem 1rem;background:transparent;transition:background-color .15s ease,color .15s ease,box-shadow .15s ease,transform .15s ease}.rest-planning-tabs .nav-link:focus-visible,.rest-planning-tabs .nav-link:hover{color:var(--tm-primary);background:color-mix(in srgb,var(--tm-primary) 10%,transparent);box-shadow:none;transform:translateY(-1px)}.rest-planning-tabs .nav-link.active{color:#fff;background:linear-gradient(135deg,var(--tm-primary),color-mix(in srgb,var(--tm-accent) 60%,var(--tm-primary)));box-shadow:0 10px 18px rgba(111,66,193,.22)}.rest-planning-tabs::-webkit-scrollbar{height:6px}.rest-planning-tabs::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--tm-primary) 28%,transparent);border-radius:999px}.rest-planning-fade-pane{opacity:0;transition:opacity .15s linear}.rest-planning-fade-pane.is-visible{opacity:1}.sum-badge{font-size:.75rem;padding:.25rem .5rem;white-space:normal;line-height:1.2;text-align:center}.sum-badge-part{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap}.sum-badge-meta{flex-basis:100%}.sum-badge-total{flex-basis:100%;gap:4px;justify-content:center}.sum-badge-total .activity-symbol,.sum-badge-total .activity-symbol svg{width:12px;height:12px}.uploaded-files-table-wrap{border:1px solid var(--tm-surface-border);border-radius:18px;background:var(--tm-surface);box-shadow:0 10px 24px rgba(15,23,42,.08);overflow:hidden}.uploaded-files-table{margin-bottom:0;--bs-table-bg:transparent;--bs-table-striped-bg:color-mix(in srgb,var(--tm-primary) 4%,transparent);--bs-table-striped-color:var(--tm-text)}.uploaded-files-table-head th{background:var(--tm-surface)!important;color:var(--tm-text)!important;border-bottom:1px solid var(--tm-surface-border);box-shadow:inset 0 -1px 0 var(--tm-surface-border)}.uploaded-files-table td,.uploaded-files-table th{border-color:var(--tm-surface-border);vertical-align:middle}.uploaded-files-table .file-name-cell{min-width:16rem}.uploaded-files-table .file-options-trigger{font-weight:600;color:var(--tm-primary)}.uploaded-files-table .file-options-trigger:focus-visible,.uploaded-files-table .file-options-trigger:hover{color:color-mix(in srgb,var(--tm-primary) 86%,black);text-decoration:underline!important}.uploaded-files-table+nav .pagination{gap:.35rem}.uploaded-files-table+nav .page-link{border-radius:12px;border-color:var(--tm-surface-border);background:var(--tm-surface);color:var(--tm-text);font-weight:600}.uploaded-files-table+nav .page-item.active .page-link{background:linear-gradient(135deg,var(--tm-primary),color-mix(in srgb,var(--tm-accent) 60%,var(--tm-primary)));border-color:transparent;color:#fff}.uploaded-files-table+nav .page-item.disabled .page-link{background:color-mix(in srgb,var(--tm-text-muted) 10%,transparent);color:var(--tm-text-muted)}@media (max-width:767.98px){.rest-planning-tabs{padding:.3rem;border-radius:16px}.rest-planning-tabs .nav-link{padding:.62rem .9rem;font-size:.9rem}.uploaded-files-table .file-name-cell{min-width:12rem}}@media (max-width:768px){.day-selector-grid{grid-template-columns:repeat(auto-fit,minmax(104px,1fr))}.zoom-range{width:120px}.vehicle-speed-chart-content,.vehicle-speed-chart-content canvas{height:260px}.vehicle-report-table{font-size:.75rem}.vehicle-report-table td,.vehicle-report-table th{padding:.18rem .28rem}.sum-badge{font-size:.7rem;padding:.2rem .4rem}}@media (min-width:577px){.totals-inline{margin-top:0;margin-bottom:0}}@media (max-width:576px){.zoom-range{width:120px;min-width:80px}.zoom-label{display:none}.zoom-btn{padding:.15rem .3rem;font-size:.8rem}.zoom-value{font-size:.75rem}.zoom-controls-container .d-flex{flex-wrap:wrap}.totals-inline{flex-basis:100%;justify-content:center;margin-top:.5rem;margin-bottom:.5rem}.sum-badge{font-size:.65rem;padding:.15rem .3rem}}@media (hover:none) and (pointer:coarse){.day-timeline-activity-bar,.day-timeline-workday-bar{pointer-events:none}}.tm-report-modal{background-color:#eceef4}[data-bs-theme=dark] .tm-report-modal{background-color:#0b0f17}.tm-report-modal .modal-header{background-color:transparent;border-bottom-color:var(--tm-surface-border)}.tm-report-modal .card{box-shadow:0 1px 3px rgba(15,23,42,.08)}[data-bs-theme=dark] .tm-report-modal .card{box-shadow:0 2px 8px rgba(0,0,0,.55)}@media (min-width:1400px){.tm-report-modal-dialog.modal-xl{max-width:1320px}}@media (min-width:1700px){.tm-report-modal-dialog.modal-xl{max-width:1500px}}.day-btn-violation{background-color:rgba(220,53,69,.16);color:var(--bs-danger,#dc3545)}.day-btn-violation:hover{background-color:rgba(220,53,69,.34);color:#842029}.day-btn-violation.active{background-color:var(--bs-danger,#dc3545);color:#fff}[data-bs-theme=dark] .day-btn-violation{background-color:rgba(220,53,69,.3);color:#f1aeb5}[data-bs-theme=dark] .day-btn-violation:hover{background-color:rgba(220,53,69,.46);color:#fff}.day-violation-mark{font-size:1.15rem;font-weight:700;line-height:1;vertical-align:-.1em}.violations-table tr.tm-violation-active>td{background-color:color-mix(in srgb,var(--tm-primary) 22%,transparent)!important;box-shadow:inset 3px 0 0 var(--tm-primary)}.tm-restplan-card{position:relative;overflow:hidden}.tm-restplan-card:before{content:"";position:absolute;inset:0 0 auto 0;height:4px;background:linear-gradient(90deg,var(--tm-primary),var(--tm-accent));z-index:1}.tm-restplan-card .card-header{background:linear-gradient(135deg,color-mix(in srgb,var(--tm-primary) 26%,transparent),color-mix(in srgb,var(--tm-accent) 14%,transparent));border-bottom-color:var(--tm-surface-border);font-weight:600}.tm-boot-overlay{position:fixed;inset:0;z-index:2000;display:flex;align-items:center;justify-content:center;background:var(--bs-body-bg,#ffffff);opacity:1;transition:opacity .4s ease}.tm-boot-overlay--done{opacity:0;pointer-events:none}.tm-boot-loader{position:relative;width:64px;height:64px}.tm-boot-loader:after,.tm-boot-loader:before{content:"";position:absolute;inset:0;border-radius:50%;border:3px solid var(--bs-primary,#0d6efd);opacity:0;animation:tm-boot-ring 1.7s cubic-bezier(.2,.5,.3,1) infinite}.tm-boot-loader:after{animation-delay:-.85s}@keyframes tm-boot-ring{0%{transform:scale(.12);opacity:0}20%{opacity:.85}to{transform:scale(1);opacity:0}}@media (prefers-reduced-motion:reduce){.tm-boot-loader:after,.tm-boot-loader:before{animation-duration:3.4s}}.tm-update-gate{position:fixed;inset:0;z-index:3000;display:flex;align-items:center;justify-content:center;padding:24px;background:var(--bs-body-bg,#ffffff)}.tm-update-gate-card{width:100%;max-width:420px;text-align:center}.tm-update-gate-icon{font-size:3.5rem;line-height:1;color:var(--bs-primary,#0d6efd);display:block;margin-bottom:16px}.tm-rest-summary-timeline{display:flex;flex-direction:column;gap:4px;max-width:360px;margin:0 auto}.tm-rest-summary-row{display:flex;flex-direction:column;align-items:center;gap:1px;padding:3px 0}.tm-rest-summary-main{display:flex;align-items:center;justify-content:center;gap:6px;flex-wrap:wrap}.tm-rest-summary-time{font-size:.7rem;line-height:1.15;color:var(--bs-secondary-color,#6c757d)}.tm-rest-summary-info,.tm-rest-summary-pin{font-size:.92em;line-height:1;text-decoration:none;vertical-align:baseline}.tm-rest-summary-info-box{font-size:.72rem;line-height:1.45;text-align:left;background:var(--bs-tertiary-bg,rgba(0,0,0,.04));border-radius:6px;padding:5px 10px;margin-top:2px}.tm-rest-summary-rest{font-size:.82rem;padding:.4em .85em}.tm-rest-summary-drive{font-weight:600}.tm-rest-summary-drive .tm-rest-summary-loc{font-variant-numeric:tabular-nums;letter-spacing:.03em}.tm-rest-summary-drive .bi-truck{font-size:.85em}