@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');
@keyframes up-in{
 from{opacity:0; transform:translateY(6px);}
 to{opacity:1; transform:none;}
}
@keyframes spin{
 to{transform:rotate(360deg)}
}
@keyframes contractorPulse{
 0%{box-shadow:0 0 0 0 rgba(37,99,235,.20)}
 45%{box-shadow:0 0 0 6px rgba(37,99,235,.12)}
 100%{box-shadow:none}
}
@keyframes my-req-slide{
 0%{left: -40%;}
 100%{left: 120%;}
}
.table-wrap{width:100%;max-width:100%;overflow:auto;box-sizing:border-box;-webkit-overflow-scrolling:touch}
.gap-lg{gap:20px}
.panel-head--split{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;flex-wrap:wrap}

.table--modules input[type="text"], .table--modules input[type="number"]{min-width:120px}
.preview-grid--settings{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}
.brand-preview-row--stack{align-items:flex-start}
.settings-panel .settings-form .settings-block{padding:16px;border:1px solid rgba(255,255,255,.08);border-radius:16px}
.admin-form-grid label,.admin-user-form label{font-weight:700}
.admin-form-grid label span,.admin-user-form label span{display:block;margin-bottom:6px}
.table--admin-clean thead th{font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);background:#f8fafc;position:sticky;top:0;z-index:1}
.table--admin-clean tbody tr:hover{background:#fbfdff}
.table--admin-clean td{padding-top:12px;padding-bottom:12px}
.table--admin-clean input[type="text"],.table--admin-clean input[type="number"]{min-height:42px}
.route-pill{display:inline-flex;align-items:center;padding:7px 10px;border-radius:999px;background:#f8fafc;border:1px solid var(--line)}
.checkline--center{justify-content:center}
.admin-users-shell{align-items:start}
.admin-form-panel h2,.admin-list-panel h2,.panel--page-intro h2{margin:4px 0 0}
.table--users td:last-child,.table--tickets td:last-child{text-align:right}
.table--tickets td:nth-child(2),.table--tickets td:last-child{white-space:nowrap}
.panel--page-intro{padding:16px 18px}
a{text-decoration:none;color:inherit}
h1,h2,h3,p{margin-top:0}

.topbar{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;padding-bottom:8px}
.top-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.sidebar-toggle,.icon-btn{display:inline-flex;border:1px solid var(--line);background:#fff;padding:9px 11px;border-radius:12px;cursor:pointer}
.grid{display:grid;gap:16px}
.cards4{grid-template-columns:repeat(4,minmax(0,1fr))}
.two{grid-template-columns:1.3fr 1fr}
.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.stat{font-size:32px;font-weight:800;margin-top:6px}
.muted{color:var(--muted)}
.small{font-size:12px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--line);background:#fff;color:var(--text);padding:10px 14px;border-radius:12px;cursor:pointer}
.btn.ghost{background:#fff}
.btn.small{padding:6px 10px;font-size:12px}
.user-pill{display:inline-flex;align-items:center;justify-content:center;padding:6px 10px;border-radius:999px;font-size:12px;background:#f1f5f9}
.badge{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:5px 10px;border-radius:999px;font-size:12px;font-weight:700;white-space:nowrap;vertical-align:middle;background:#f1f5f9}
.badge.ok{background:#ecfdf5;color:#166534}
.badge.warn{background:#fffbeb;color:#92400e}
.badge.danger{background:#fef2f2;color:#991b1b}
.badge.info{background:#eff6ff;color:#1d4ed8}
.flash{padding:12px 14px;border-radius:14px;margin-bottom:14px}
.flash.ok{background:#f0fdf4;color:#166534;border:1px solid #bbf7d0}
.flash.err{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}

.table{width:100%;border-collapse:collapse;border-spacing:0}
.table th,.table td{padding:10px 12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.table th{font-weight:800;color:var(--text,#0f172a)}
.table td{color:var(--text,#0f172a)}
.list-stack{display:flex;flex-direction:column;gap:10px}
.list-item{border:1px solid var(--line);border-radius:14px;padding:12px;background:#fff}
.list-item.unread{background:#eff6ff}
.between{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.stack{display:flex;flex-direction:column;gap:12px}
.kanban-board{display:grid;grid-template-columns:repeat(4,minmax(280px,1fr));gap:14px;overflow:auto}
.kanban-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:12px;cursor:grab;transition:.18s transform,.18s box-shadow}
.kanban-card:hover{transform:translateY(-1px);box-shadow:0 10px 24px rgba(15,23,42,.08)}
.kanban-card.dragging{opacity:.5}
.eyebrow{letter-spacing:.08em;text-transform:uppercase;font-weight:700;opacity:.8;font-size:12px;color:var(--muted);margin-bottom:4px}
.card-foot{display:flex;justify-content:space-between;align-items:center;margin-top:10px;gap:10px}
.center{justify-content:center}
.filters{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:12px}
input,select,textarea{width:100%;max-width:100%;min-width:0;box-sizing:border-box;padding:11px 12px;border-radius:12px;border:1px solid var(--line);font:inherit;background:#fff;color:var(--text,#0f172a)}
select{min-height:44px}
input:not([type=checkbox]):not([type=radio]):not([type=file]),select,textarea{appearance:auto}
textarea{min-height:120px;resize:vertical;line-height:1.45}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--acc,#2563eb);box-shadow:0 0 0 3px rgba(37,99,235,.11)}
input:disabled,select:disabled,textarea:disabled{background:#f8fafc;color:var(--muted,#64748b);cursor:not-allowed}
label{min-width:0}
fieldset{min-width:0;border:0;padding:0;margin:0}
.requester-form .grid.two{grid-template-columns:1fr 1fr}
.full{grid-column:1/-1}
.meta{background:#f8fafc;border:1px solid var(--line);border-radius:16px;padding:12px}
.metaGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.metaLabel{font-size:12px;color:var(--muted)}
.metaValue{font-weight:700}
.fileList{display:flex;flex-direction:column;gap:8px;margin-top:10px}
.fileItem{display:flex;justify-content:space-between;align-items:center;border:1px solid var(--line);border-radius:12px;padding:10px;background:#fff;gap:12px}
.user-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.user-card{border:1px solid var(--line);border-radius:18px;padding:14px;background:#fff}
.tabs{display:flex;gap:8px;margin-bottom:14px;flex-wrap:wrap}
.tabs a{padding:8px 12px;border-radius:999px;background:#fff;border:1px solid var(--line)}
.tabs a.active{background:var(--soft);color:#1d4ed8;border-color:#bfdbfe}
.compact .list-item{padding:8px 10px}
.count{background:#e2e8f0;border-radius:999px;padding:2px 8px;font-size:12px}
.top-actions select{padding:8px;border-radius:10px}
.field{display:flex;flex-direction:column;gap:6px}
.split{display:grid;grid-template-columns:1.1fr .9fr;gap:16px}
.section-title{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:8px}
.tab-panel{display:none}
.tab-panel.active{display:block}
.hero{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}
.hero h2{margin-bottom:4px}
.stack-sm{display:flex;flex-direction:column;gap:8px}
.workflow-chip{padding:8px 12px;border-radius:999px;border:1px solid var(--line);background:#fff}
.ops-head h2{margin:4px 0 6px}
.dt-card>*:not(.ticket-link-cover){position:relative;z-index:2}
.ticket-meta-line{margin:0;font-size:13px;color:var(--text)}
.ticket-meta-line.subtle{color:var(--muted)}
.dt-card.is-saving{opacity:.65}
.dt-drop.drop-over{outline:2px dashed #93c5fd;outline-offset:4px;border-radius:16px}
.filter-card .grid-5,.filter-card .grid-4{display:grid;gap:12px}
.filter-card .grid-5{grid-template-columns:repeat(5,minmax(0,1fr))}
.filter-card .grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.filter-card label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:600}
.align-end{align-items:flex-end}
.row-clickable{cursor:pointer}
.row-clickable:hover{background:#f8fafc}
.request-stack{gap:16px}
.request-top{align-items:flex-start}
.request-actions-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px}
.request-actions-grid .full{grid-column:1/-1}
.danger-outline{border-color:#fecaca;color:#991b1b;background:#fff7f7}
.workflow-strip{margin-bottom:12px;display:flex;gap:8px;flex-wrap:wrap;margin:8px 0 4px}
.mini-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:14px 0}
.count-pill{display:inline-flex;align-items:center;justify-content:center;min-width:26px;height:26px;border-radius:999px;background:#e2e8f0;color:#0f172a;font-size:12px;font-weight:800}
.empty-cell{text-align:center;color:var(--muted)}
.clickable-pill{cursor:pointer}
.hoverable:hover{background:#f8fafc}
.activity-row{display:grid;grid-template-columns:14px 1fr;gap:12px;align-items:flex-start;padding:10px 0;border-bottom:1px solid var(--line)}
.activity-row:last-child{border-bottom:0}
.activity-dot{width:10px;height:10px;border-radius:999px;background:linear-gradient(180deg,var(--acc),#60a5fa);margin-top:6px}
.activity-note{margin-top:4px;color:var(--muted)}
.mini-stat{padding:14px 16px}
.stat-sm{font-size:24px;font-weight:800;margin-top:6px}
.grid-6{display:grid;gap:12px;grid-template-columns:repeat(6,minmax(0,1fr))}
.form-safe-zone select,.form-safe-zone .btn{pointer-events:auto}
.form-safe-zone,.form-safe-zone *{position:relative;z-index:3}
.request-card .btn,.request-card textarea,.request-card select{position:relative;z-index:2}
.request-card h3{margin-bottom:8px;margin:4px 0 8px}
.sidebar-toggle{font-size:18px}

.ticket-table-link{color:var(--acc)}
.request-actions-inline{position:relative}
.request-actions-inline summary{list-style:none}
.request-actions-inline[open]{min-width:260px}
.request-actions-inline form{margin-top:10px;padding-top:10px;border-top:1px solid var(--line)}
.location-list-stack{display:flex;flex-direction:column;gap:16px}
.location-card h3{margin-bottom:4px}
.location-table th,.location-table td{font-size:13px}
.empty-side-panel{display:flex;align-items:center;justify-content:center}
.board-summary-row{margin-bottom:14px}
.selected-row{background:#eff6ff}
.inbox-layout{align-items:start}
.listing-field.is-disabled{opacity:.55}
.listing-field.is-disabled select{background:#f1f5f9}
.role-grid,.team-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.role-card,.team-card{border:1px solid var(--line);border-radius:18px;padding:14px;background:#fff}
.wrap-gap{flex-wrap:wrap}
.strong-cta{box-shadow:0 8px 24px rgba(37,99,235,.12)}
.highlight-soft{font-weight:700}
.chart-panel{overflow:hidden}
.bar-row{display:grid;grid-template-columns:180px 1fr 42px;gap:12px;align-items:center}
.bar-label{font-size:13px;font-weight:700;color:var(--text)}
.bar-label.wide{font-size:12px}
.bar-track{height:12px;border-radius:999px;background:#eef2ff;overflow:hidden}
.bar-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,#60a5fa,#2563eb)}
.bar-fill.accent-requests{background:linear-gradient(90deg,#38bdf8,#0ea5e9)}
.bar-fill.accent-workorders{background:linear-gradient(90deg,#818cf8,#4f46e5)}
.bar-fill.accent-priority{background:linear-gradient(90deg,#f59e0b,#ef4444)}
.bar-fill.accent-people{background:linear-gradient(90deg,#34d399,#10b981)}
.bar-fill.accent-location{background:linear-gradient(90deg,#f472b6,#ec4899)}
.bar-value{font-weight:800;text-align:right}
.centered-modal{padding:0}
.selection-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.select-card{display:flex;flex-direction:column;gap:6px;padding:14px;border:1px solid var(--line);border-radius:16px;background:#fff;cursor:pointer;transition:.16s ease}
.select-card:hover{transform:translateY(-1px);box-shadow:0 10px 26px rgba(15,23,42,.08)}
.select-card.is-selected,.select-card:has(input:checked){border-color:#93c5fd;background:#eff6ff}
.select-card input{width:auto}
.select-card.compact{padding:10px}
.tag-list{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
.permission-group+.permission-group{margin-top:14px}
.feedback-panel h3{margin:4px 0 6px}
.stats-highlight>div{padding:10px 12px;border-radius:14px;background:#f8fafc;border:1px solid var(--line)}
.location-links-row{margin-bottom:12px}
.modal-mini-grid{grid-template-columns:repeat(2,minmax(0,1fr))}

.page-head .eyebrow{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.top-left h1{margin:0;font-size:1.55rem}
.request-modal-shell{display:grid;grid-template-columns:1.2fr .8fr;gap:18px}
.request-modal-actions{display:flex;gap:10px;flex-wrap:wrap}
.ticket-relation{margin:16px 0;padding:14px;border:1px solid #bfdbfe;background:#eff6ff;border-radius:16px}
.ticket-relation .title{font-weight:700;margin-bottom:6px}

.top-subtitle{font-size:12px;text-transform:none;max-width:900px}
.action-row{display:flex;gap:10px;flex-wrap:wrap}
.wo-hero h2{margin:4px 0 6px;font-size:28px}
.wo-hero-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.wo-toolbar-left,.wo-toolbar-right{display:flex;flex-wrap:wrap;gap:12px}
.wo-toolbar-item{display:flex;flex-direction:column;gap:4px;padding:10px 12px;border:1px solid var(--line);border-radius:14px;background:#fff}
.wo-panel.active{display:block}
.ticket-relation-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:10px}

.panel,.card,.stat-card,.login-card,.filter-card,.table-card{background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:20px;box-sizing:border-box;max-width:100%;overflow:hidden}
.panel,.card,.stat-card,.login-card,.filter-card{padding:18px}
.table-card{padding:0}
.list-item,.quick-grid a,.btn,.modal-card{box-sizing:border-box;max-width:100%}
.page-head.ops-head{margin-bottom:16px}

.notif-link{position:relative;display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:14px;background:#fff;border:1px solid var(--line);box-shadow:0 6px 18px rgba(15,23,42,.05)}
.notif-count{position:absolute;top:-5px;right:-5px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:#dc2626;color:#fff;font-size:11px;font-weight:800;border:2px solid #fff}
.login-hero--serious h1{font-size:48px;line-height:1.02;margin-bottom:14px;max-width:680px}
.login-hero--serious p{color:rgba(226,232,240,.82);font-size:18px;line-height:1.55;max-width:620px}
.login-hero__meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:28px;max-width:720px}
.login-hero__meta > div{padding:16px 14px;border-radius:18px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.04);backdrop-filter:blur(4px)}
.login-hero__meta strong{display:block;color:#fff;margin-bottom:4px}
.login-hero__meta span{color:rgba(226,232,240,.72);font-size:13px}
.login-card--serious h2{font-size:30px;margin:18px 0 8px}
.login-intro{margin-bottom:18px}
.login-hero{color:#fff;padding:12px 16px 12px 8px}
.login-hero__badge{display:inline-flex;padding:6px 10px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);margin-bottom:16px;font-size:12px;letter-spacing:.06em;text-transform:uppercase}
.login-card .brand{margin-bottom:8px}
.login-card h2{font-size:30px;margin:8px 0 14px}
.login-form{display:grid;gap:14px}
.login-form label{display:grid;gap:6px;font-weight:700;color:#24324a}
.login-form input:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 4px rgba(37,99,235,.12)}
.login-submit{font-size:15px;margin-top:4px;height:48px;border-radius:14px}

.panel-head{font-weight:800;font-size:1.05rem;display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.empty-state{text-align:center;padding:18px;border:1px dashed #d9e2ee;border-radius:16px;background:#fbfcfe;color:#64748b}
.overview-grid{display:grid;grid-template-columns:1.35fr .95fr;gap:16px}
.overview-card{border:1px solid #e3e8f0;border-radius:18px;background:#fff;padding:16px}
.overview-main{font-size:16px;line-height:1.55;color:#0f172a}
.meta-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.meta-item{padding:12px 14px;border:1px solid #e7ecf3;border-radius:16px;background:#f9fbfd}
.meta-item .label{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#64748b;margin-bottom:4px}
.meta-item .value{color:#0f172a;font-weight:700}
.activity-row .badge, .badge.activity-badge{padding:4px 10px}
.badge.status-en-validación,.badge.status-en-revisión{background:#fef3c7;color:#b45309}
.badge.status-convertida,.badge.status-convertida-a-work-order{background:#ede9fe;color:#6d28d9}
.badge.status-resuelto,.badge.status-cerrado{background:#dcfce7;color:#166534}
.badge.status-rechazada,.badge.status-cancelado{background:#fee2e2;color:#b91c1c}
.page-head, .ops-head{margin-bottom:16px}
.list-stack.compact .list-item{border:1px solid #e6ebf2;border-radius:16px;background:#fff}
.list-stack.compact .list-item + .list-item{margin-top:10px}
.overview-shell .overview-card, .overview-shell .meta-card{border:1px solid #e5eaf1;border-radius:18px;background:#fff;padding:16px;box-sizing:border-box}

.modal-card .modal-body{overflow:auto;max-height:calc(100vh - 140px)}
.overview-shell{display:grid;grid-template-columns:1.15fr .85fr;gap:16px}
.overview-card,.meta-card{border:1px solid #e6ebf2;background:#fff;border-radius:18px;padding:16px}
.overview-title,.section-title{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#64748b;margin-bottom:8px}
.meta-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.meta-line{padding:12px 14px;border-radius:14px;border:1px solid #e7edf5;background:#f8fafc}
.meta-line .k{display:block;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#64748b;margin-bottom:4px}
.meta-line .v{color:#0f172a;font-weight:700}
.activity-feed .activity-item{border:1px solid #e6ebf2;border-radius:14px;background:#fff;padding:12px 14px}
.activity-feed .activity-item + .activity-item{margin-top:10px}
.status-chip,[class*="status-"]{display:inline-flex;align-items:center;gap:6px;border-radius:999px;font-weight:700}
.status-nueva-solicitud{background:#dbeafe;color:#1d4ed8}
.status-en-validación,.status-en-validacion,.status-en-revisión,.status-en-revision{background:#fef3c7;color:#b45309}
.status-aprobada{background:#dcfce7;color:#166534}
.status-convertida,.status-convertida-a-work-order{background:#ede9fe;color:#6d28d9}
.status-abierto,.status-asignado{background:#dbeafe;color:#1d4ed8}
.status-en-progreso{background:#e0e7ff;color:#4338ca}
.status-pendiente{background:#ffedd5;color:#c2410c}
.status-resuelto,.status-cerrado{background:#dcfce7;color:#166534}
.status-rechazada,.status-cancelado{background:#fee2e2;color:#b91c1c}
.login-shell{min-height:100vh;display:grid;grid-template-columns:1.05fr .95fr;gap:24px;align-items:center;padding:28px}
.login-hero h1{margin-bottom:14px;margin:0 0 14px;font-size:52px;line-height:1.02;max-width:640px}
.login-hero p{margin:0;max-width:620px;font-size:17px;line-height:1.55;color:rgba(255,255,255,.86)}
.login-hero__bullets{flex-wrap:wrap;max-width:760px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:24px}
.login-hero__bullets span{display:block;padding:14px 16px;border-radius:16px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);font-size:15px;font-weight:700}
.login-card{backdrop-filter:blur(8px);width:100%;max-width:440px;margin-left:auto;background:rgba(255,255,255,.94);border:1px solid #dde4ee;box-shadow:0 24px 60px rgba(15,23,42,.12)}
.login-demo{margin-top:12px;display:none !important}

.request-state-passed, .badge.status-paso-a-work-order, .badge.status-pasó-a-work-order{background:#ede9fe;color:#6d28d9}
.badge.status-nueva-solicitud{background:#dbeafe;color:#1d4ed8}
.badge.status-en-validacion, .badge.status-en-validación, .badge.status-en-revision, .badge.status-en-revisión{background:#fef3c7;color:#b45309}
.badge.status-aprobada{background:#dcfce7;color:#166534}
.badge.status-rechazada, .badge.status-cancelado{background:#fee2e2;color:#b91c1c}
.badge.status-asignado{background:#dbeafe;color:#1d4ed8}
.badge.status-en-progreso{background:#e0e7ff;color:#4338ca}
.badge.status-pendiente{background:#ffedd5;color:#c2410c}
.badge.status-resuelto, .badge.status-cerrado{background:#dcfce7;color:#166534}
.main > .page-head, .main > .panel, .main > .grid, .main > .table-card, .main > .filter-card{flex:0 0 auto}
.page-wrap, .content-wrap, .request-screen, .ticket-screen{width:100%;max-width:100%;box-sizing:border-box}
.request-modal, .ticket-modal, .request-panel, .ticket-panel{width:min(1200px, 94vw);max-height:88vh;overflow:hidden;box-sizing:border-box}
.request-modal__body, .ticket-modal__body, .modal__body{overflow-y:auto}
.request-origin-card, .wo-origin-card{padding:14px 16px;border:1px solid #e7edf5;border-radius:16px;background:#fafcff}
.request-origin-card .title, .wo-origin-card .title{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#64748b;margin-bottom:6px}
.request-origin-card .value, .wo-origin-card .value{color:#0f172a;font-weight:700}
.status-aprobada, .badge.status-aprobada{background:#dcfce7;color:#166534}
.status-declinada, .status-rechazada, .badge.status-declinada, .badge.status-rechazada{background:#fee2e2;color:#b91c1c}
.status-en-revision, .status-en-revisión, .badge.status-en-revision, .badge.status-en-revisión{background:#fef3c7;color:#b45309}
.status-nueva-solicitud, .badge.status-nueva-solicitud{background:#dbeafe;color:#1d4ed8}
.page-container, .screen-container, .request-screen, .ticket-screen{width:100%;max-width:100%;min-width:0;box-sizing:border-box}
.panel, .card, .stat-card, .table-card, .filter-card, .modal, .list-item, .request-card, .ticket-card{box-sizing:border-box;overflow:hidden}
.request-note{padding:14px 16px;border-radius:16px;background:#f8fafc;border:1px solid #e7edf5;color:#334155;line-height:1.55;margin-top:10px}

.request-footer .btn-close, .card-footer .btn-close, .modal-footer .btn-close{display:none !important}
.badge.activity-badge, .activity-badge{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:700;white-space:nowrap}
.badge.status-nueva-solicitud,.activity-badge.status-nueva-solicitud{background:#dbeafe;color:#1d4ed8}
.badge.status-en-revision,.badge.status-en-revisión,.activity-badge.status-en-revision,.activity-badge.status-en-revisión{background:#fef3c7;color:#b45309}
.badge.status-aprobada,.activity-badge.status-aprobada{background:#dcfce7;color:#166534}
.badge.status-declinada,.badge.status-rechazada,.activity-badge.status-declinada,.activity-badge.status-rechazada{background:#fee2e2;color:#b91c1c}
.badge.status-asignado,.activity-badge.status-asignado{background:#dbeafe;color:#1d4ed8}
.badge.status-en-progreso,.activity-badge.status-en-progreso{background:#e0e7ff;color:#4338ca}
.badge.status-pendiente,.activity-badge.status-pendiente{background:#ffedd5;color:#c2410c}
.badge.status-resuelto,.badge.status-cerrado,.activity-badge.status-resuelto,.activity-badge.status-cerrado{background:#dcfce7;color:#166534}
.badge.status-wo-generado,.activity-badge.status-wo-generado{background:#ede9fe;color:#6d28d9}
.panel, .card, .stat-card, .table-card, .filter-card, .modal, .list-item{box-sizing:border-box;overflow:hidden}
.page-head h2{margin-bottom:6px}
.role-chip{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;background:#eff6ff;color:#1d4ed8;font-size:12px;font-weight:700}
html, body{height:100%}

.main > *{box-sizing:border-box}
.page-head, .panel, .grid, .table-card, .filter-card, .card, .stat-card, .modal, .list-item{box-sizing:border-box}
.page-head{margin-bottom:16px}
.request-history-item, .list-stack .list-item{border:1px solid #e7edf5;border-radius:18px;background:#fff;overflow:hidden}
.request-history-item .wo-linkline strong{color:#0f172a}
.badge.has-wo{background:#ede9fe;color:#6d28d9}
.badge.request-approved{background:#dcfce7;color:#166534}
.activity-badge.status-nueva-solicitud{background:#dbeafe;color:#1d4ed8}
.activity-badge.status-en-revision{background:#fef3c7;color:#b45309}
.activity-badge.status-aprobada{background:#dcfce7;color:#166534}
.activity-badge.status-declinada, .activity-badge.status-rechazada{background:#fee2e2;color:#b91c1c}
.activity-badge.status-asignado{background:#dbeafe;color:#1d4ed8}
.activity-badge.status-pendiente{background:#ffedd5;color:#c2410c}
.activity-badge.status-resuelto, .activity-badge.status-cerrado{background:#dcfce7;color:#166534}
.activity-badge.status-wo-generado{background:#ede9fe;color:#6d28d9}
.activity-badge.status-ticket-creado, .activity-badge.status-comentario-agregado, .activity-badge.status-ticket-actualizado{background:#e2e8f0;color:#334155}
.request-btn-row .btn-close{display:none !important}
.app-footer, footer{flex:0 0 auto;margin-top:auto}
.topbar .top-left{display:flex;align-items:center;gap:12px}

.request-btn-row,.request-footer,.card-footer,.modal-footer{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}

.icon-btn:hover{background:rgba(255,255,255,.1)}

.btn.primary:hover{filter:brightness(.98)}
.login-hero--serious{display:flex;flex-direction:column;justify-content:center;background:radial-gradient(circle at top left, rgba(59,130,246,.22), transparent 26%), radial-gradient(circle at bottom left, rgba(14,165,233,.14), transparent 24%);color:#fff;padding:72px 58px}
.login-hero__eyebrow{font-size:12px;font-weight:700;letter-spacing:.10em;text-transform:uppercase;margin-bottom:18px;color:#b9d9f5}
.login-hero__meta div{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08)}
.brand--login{justify-content:flex-start;gap:14px;margin-bottom:14px}
.brandmark--login{width:56px;height:56px;border-radius:18px;background:linear-gradient(135deg,var(--brand-sky),#5ea1ff);display:grid;place-items:center;color:#fff;font-weight:800;letter-spacing:.06em}
.login-card--serious .btn.primary{background:linear-gradient(135deg,var(--brand-blue),var(--brand-sky))}
body{margin:0;font-family:var(--dt-font-family,'Inter',system-ui,sans-serif);color:var(--text);min-height:100vh;width:100%;max-width:100%;overflow:hidden;background:linear-gradient(180deg,#f4f7fa,#edf3f8)}

.icon-btn{width:36px;height:36px;border-radius:12px;display:grid;place-items:center;background:rgba(255,255,255,.06);color:#fff;border:1px solid rgba(255,255,255,.08);backdrop-filter:blur(8px)}
.notif-dot{position:absolute;top:-4px;right:-4px;min-width:16px;height:16px;padding:0 4px;border-radius:999px;display:grid;place-items:center;font-size:10px;font-weight:700;color:#fff;border:2px solid #101a3f;background:var(--brand-sky);border-color:#123261}
.topbar-eyebrow{letter-spacing:.08em;text-transform:uppercase;font-size:11px;color:#153b74}
.btn.primary{border:0;color:#fff;border-color:transparent;background:linear-gradient(135deg,var(--brand-blue),var(--brand-sky))}
.login-page--serious{background:linear-gradient(135deg,#153b74,#0f2a58 58%, #1a6ea6) !important}
.brand-login-logo{width:72px;height:72px;object-fit:cover;border-radius:20px;border:1px solid #d9e4ef;background:#fff;box-shadow:0 12px 28px rgba(15,23,42,.08)}
.checkline{display:flex;align-items:center;gap:10px;padding-top:26px}
body:not(.login-page) .sidebar .user-pill{min-width:0;flex:1 1 auto;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;background:rgba(255,255,255,.08) !important;color:#fff !important}

.user-pref-form{display:grid;gap:12px}
.permission-note{padding:12px 14px;border:1px dashed #dbe4ef;border-radius:16px;background:#fbfcfe;color:#475569}

.settings-panel .form-grid.two{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.brand-preview-row{display:flex;align-items:center;gap:12px}
.brand-preview-image{width:50px;height:50px;object-fit:cover;border-radius:16px;border:1px solid #dbe4ef;background:#fff}
.brand-preview-image.login{width:64px;height:64px}

.settings-sections{display:grid;gap:18px !important}
.settings-block .muted.small{margin-top:-6px;margin-bottom:12px}
.preview-grid{margin-top:16px;display:grid;grid-template-columns:1fr 1fr;gap:16px !important}
.admin-page-head h2{margin-bottom:6px}
.admin-kpis, .settings-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:16px}
.admin-kpi-card .kpi-label{color:#64748b;font-size:12px}

.settings-page-head .eyebrow{color:#153b74;letter-spacing:.08em}
.settings-page-head h2{margin-bottom:6px}
.admin-page-head .eyebrow{color:#153b74;letter-spacing:.08em}

.admin-page-head, .settings-page-head{border:1px solid #dfe7f1 !important;border-radius:22px !important;padding:18px 20px !important;background:linear-gradient(180deg,#ffffff,#f8fbff) !important;box-shadow:0 12px 28px rgba(15,23,42,.05) !important}
.admin-page-head .eyebrow, .settings-page-head .eyebrow{color:#153b74 !important;font-weight:800}
.admin-kpis{margin-bottom:14px !important}
.admin-kpi-card{padding:14px 16px;box-shadow:0 10px 24px rgba(15,23,42,.04);border:1px solid #e5edf7 !important;border-radius:18px !important;background:#fff !important}
.admin-kpi-card .kpi-value{margin-top:6px;font-size:28px;font-weight:800;color:#153b74 !important}
.settings-panel{padding:20px !important;border-radius:24px !important;background:linear-gradient(180deg,#ffffff,#f8fbff) !important}
.settings-block .panel-head{margin-bottom:14px;font-size:1.02rem;color:#153b74;font-weight:800}
.settings-panel input[type="text"], .settings-panel select{width:100%;border:1px solid #d8e2ef;border-radius:14px;min-height:42px;padding:0 12px;background:#fff}
.settings-panel label > span{display:block;margin-bottom:7px;font-weight:600}
.brand-preview-card{padding:14px 16px;box-shadow:0 10px 26px rgba(15,23,42,.04);border:1px solid #e5edf7 !important;border-radius:20px !important;background:linear-gradient(180deg,#fff,#fbfdff) !important}
.brand-preview-row strong{color:#153b74}

.workspace-hero{border:1px solid #e5edf7;border-radius:24px;padding:18px 20px;background:linear-gradient(180deg,#ffffff,#f8fbff);box-shadow:0 12px 28px rgba(15,23,42,.05)}
.workspace-hero .eyebrow{color:#153b74;letter-spacing:.08em;font-weight:800}
.workspace-guide, .board-help, .settings-intro-panel, .admin-intro-panel{border-radius:22px !important;margin-bottom:16px;background:linear-gradient(180deg,#ffffff,#fbfdff) !important;border:1px solid #e5edf7 !important;box-shadow:0 10px 24px rgba(15,23,42,.04) !important}
.guide-pill strong{color:#153b74}
.activity-summary-note{margin-top:10px;margin-bottom:12px;padding:12px 14px;border:1px dashed #dbe4ef;border-radius:16px;background:#fbfcfe;color:#475569}
.activity-feed .list-item{border:1px solid #e7edf5;border-radius:18px;padding:14px 16px;background:#fff}
.request-table-wrap, .table-card, .panel{box-sizing:border-box}
.board-summary-row .workflow-chip{border:1px solid #e5edf7;border-radius:999px;padding:8px 12px;background:#fff}
.settings-panel, .admin-intro-panel, .settings-intro-panel{border-radius:24px !important}
.settings-block{padding:16px;border:1px solid #e5edf7 !important;border-radius:20px !important;background:#ffffff !important;box-shadow:0 10px 24px rgba(15,23,42,.04)}
.page-head.ops-head h2{margin-bottom:6px}
.top-left{display:flex;align-items:center;gap:12px;min-height:32px}
.topbar-eyebrow:empty{display:none !important}
.collapsible-help{border-radius:22px !important;margin-bottom:16px;background:linear-gradient(180deg,#ffffff,#fbfdff) !important;border:1px solid #e5edf7 !important;box-shadow:0 10px 24px rgba(15,23,42,.04) !important;overflow:hidden}
.collapsible-help[open]{padding-bottom:14px}
.help-summary::-webkit-details-marker{display:none}
.help-summary::after{content:"▾";font-size:14px;color:#64748b}
.collapsible-help[open] .help-summary::after{content:"▴"}
.workspace-help .guide-grid, .board-help .guide-grid{padding:0 16px 0 16px}
.workspace-hero{display:block;padding:16px 18px !important}
.workspace-hero h2{margin:0 !important}
.workspace-hero p{display:none !important}
.board-help, .workspace-help{border-radius:22px !important;border:1px solid #e5edf7 !important;background:linear-gradient(180deg,#ffffff,#fbfdff) !important;box-shadow:0 10px 24px rgba(15,23,42,.04) !important}
.help-summary{list-style:none;cursor:pointer;font-weight:800;color:#153b74;user-select:none;display:flex;align-items:center;justify-content:space-between;min-height:54px;padding:16px 18px !important}
.guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:stretch}
.guide-pill{border-radius:18px;padding:14px 16px;display:grid;gap:6px;box-shadow:0 8px 20px rgba(15,23,42,.03);min-height:100%;border:1px solid #e5edf7 !important;background:#fff !important}
.panel, .table-card, .stat-card{overflow:hidden}
.ops-head, .workspace-hero, .board-help, .workspace-help, .settings-page-head, .admin-page-head{box-sizing:border-box}
.workspace-hero, .workspace-help, .board-help, .settings-intro-panel, .admin-intro-panel, .workspace-guide{display:none !important}
.main > .panel:first-child, .main > .grid:first-child, .main > .tabs:first-child, .main > .table-card:first-child{margin-top:0 !important}
.page-head.ops-head, .workspace-hero, .workspace-help, .board-help, .settings-intro-panel, .admin-intro-panel, .workspace-guide{display:none !important}
.compact-module-topbar h2{margin:0 0 4px 0}
.compact-module-topbar p{margin:0}
.module-topbar-copy{min-width:0}
.module-topbar-side{flex:0 0 auto}
.request-filters{border-radius:20px !important;overflow:hidden}
.request-filters .help-summary{min-height:50px}
.filter-form-inside{padding:0 16px 16px 16px}
.compact-grid{align-items:end}
.request-list-panel, .request-table-wrap, .request-table{width:100%}
.request-table thead th{background:#f8fbff;position:sticky;top:0;z-index:1}
.request-table td, .request-table th{vertical-align:top}
.request-manage-grid{align-items:end}
.modal-two-col{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;gap:18px !important}
.ticket-title{line-height:1.25;margin-bottom:8px}
.ticket-problem-preview{margin:6px 0 0;color:#334155;line-height:1.55;max-height:240px;overflow:auto;padding-right:4px}
.form-safe-zone{position:relative;z-index:3;gap:14px}
.activity-badge.status-solicitud-enviada-a-validacion, .activity-badge.status-en-validacion, .activity-badge.status-en-revision{background:#fef3c7;color:#b45309}
.activity-badge.status-solicitud-aprobada, .activity-badge.status-aprobada, .activity-badge.status-resuelto, .activity-badge.status-cerrado{background:#dcfce7;color:#166534}
.activity-badge.status-solicitud-rechazada, .activity-badge.status-rechazada, .activity-badge.status-cancelado{background:#fee2e2;color:#b91c1c}
.activity-badge.status-work-order-creado-desde-la-solicitud, .activity-badge.status-ticket-creado, .activity-badge.status-abierto, .activity-badge.status-asignado{background:#e0e7ff;color:#4338ca}
.activity-badge.status-prioridad-actualizada, .activity-badge.status-asignacion-actualizada, .activity-badge.status-ticket-actualizado, .activity-badge.status-comentario-agregado, .activity-badge.status-estado-actualizado{background:#e2e8f0;color:#334155}
.module-inline-head .eyebrow{margin:0;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#64748b;font-weight:800}
.request-filters[open]{padding-bottom:16px}
.request-filters .filter-form-inside{padding-top:0}
.compact-module-topbar{align-items:center;justify-content:space-between;gap:14px;padding:16px 18px !important;margin-bottom:16px;border:1px solid #e5edf7 !important;border-radius:22px !important;background:linear-gradient(180deg,#ffffff,#f8fbff) !important;box-shadow:0 10px 24px rgba(15,23,42,.04) !important;display:none !important}
.module-inline-head{display:flex;align-items:center;gap:12px;margin-bottom:14px}
.panel-subcopy{margin-top:-4px;margin-bottom:12px}
.panel-head-row{margin-bottom:14px}
.panel-head-row .panel-head{margin-bottom:0 !important}
.inline-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.global-assigned-item{border-left:3px solid #2563eb}
.global-assigned-item.team-sourced{border-left-color:#7c3aed}
.modal-head .icon-btn{color:#0f172a !important;background:#fff !important;border:1px solid #dbe4ef !important;font-weight:800}
.modal-head .icon-btn:hover{background:#f8fbff !important}
.file-thumb{aspect-ratio:16/10;background:#f8fafc}
.request-history-item .activity-headline{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.files-dropzone.is-drag{border-color:#2563eb;background:#eff6ff}
.dropzone-copy{display:grid;gap:4px}
.supervisor-team-grid{display:flex;flex-wrap:wrap;gap:10px}
.file-card .muted.small{line-height:1.3}
.modal-actions{margin-top:14px;padding-top:10px;border-top:1px solid #e5edf7}
.request-link-banner{margin-top:10px;padding-top:10px;border-top:1px solid #e5edf7;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.file-badges{display:flex;gap:8px;flex-wrap:wrap}
.scope-note-card .panel-head{margin-bottom:8px !important}
.wo-linkline{margin-top:10px;padding-top:10px;border-top:1px solid #e5edf7;color:#334155}
.request-history-item .badge.has-wo{background:#eef2ff;color:#4338ca}
.field-hint.ok{color:#166534}
.field-hint.error{color:#b91c1c}
.modal-inline-flash{margin-bottom:8px}
.file-card img{image-rendering:auto}
.login-form input{height:46px;border-radius:14px;border:1px solid #d8e0eb;padding:0 14px;background:#fff;color:#0f172a;-webkit-text-security:initial}
.login-decoy{position:absolute !important;left:-9999px !important;width:1px !important;height:1px !important;opacity:0 !important;pointer-events:none !important}
.file-card .action-row{margin-top:8px}
.file-card .btn.small{padding:6px 10px}
.user-modal-grid{align-items:start}
.comment-box-form textarea{min-height:88px;resize:vertical}
.comment-box-form .action-row{justify-content:flex-end}
.wo-panel[data-tab-panel="comments"] .list-item{padding:10px 12px}
.wo-panel[data-tab-panel="comments"] .list-item strong{display:block;margin-bottom:4px}
.workflow-chip, .user-pill, .count-pill{display:inline-flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap;vertical-align:middle}
.activity-headline{display:flex;align-items:center;gap:10px;justify-content:flex-end}
.tag-list .workflow-chip, .file-badges .workflow-chip, .request-link-banner .workflow-chip{margin:0}
.scope-note-card{border:1px solid #dbe4ef !important;background:#fbfdff !important;display:none !important}
.request-table td:first-child{white-space:normal;min-width:260px !important}
.activity-clean-head{margin-bottom:10px !important}
.activity-item .activity-headline strong{font-size:15px !important;line-height:1.2 !important}
.activity-item .activity-meta{color:#64748b !important;font-size:12px !important;margin:2px 0 8px 0 !important}
.activity-badge.status-ticket-actualizado{background:#eef2ff !important;color:#4338ca !important;border-color:#c7d2fe !important}
.activity-badge.status-asignacion-actualizada{background:#eff6ff !important;color:#1d4ed8 !important;border-color:#bfdbfe !important}
.activity-badge.status-comentario-agregado{background:#ecfdf5 !important;color:#15803d !important;border-color:#bbf7d0 !important}
.activity-badge.status-solicitud-creada, .activity-badge.status-nueva-solicitud{background:#dbeafe !important;color:#1d4ed8 !important;border-color:#bfdbfe !important}
.activity-badge.status-solicitud-aprobada, .activity-badge.status-aprobada{background:#dcfce7 !important;color:#166534 !important;border-color:#bbf7d0 !important}
.activity-badge.status-solicitud-rechazada, .activity-badge.status-rechazada{background:#fee2e2 !important;color:#b91c1c !important;border-color:#fecaca !important}
.activity-badge.status-en-progreso{background:#cffafe !important;color:#0f766e !important;border-color:#99f6e4 !important}
.activity-badge.status-pendiente, .activity-badge.status-en-espera{background:#ffedd5 !important;color:#c2410c !important;border-color:#fdba74 !important}
.activity-badge.status-abierto, .activity-badge.status-asignado, .activity-badge.status-work-order-creado-desde-la-solicitud{background:#ede9fe !important;color:#5b21b6 !important;border-color:#c4b5fd !important}
.workflow-chip, .user-pill, .count-pill{align-items:center !important;justify-content:center !important;white-space:nowrap !important;gap:6px !important}
.activity-headline, .file-badges, .tag-list, .request-link-banner, .workflow-strip, .action-row{display:flex;align-items:center;gap:8px !important;flex-wrap:wrap !important}
.compact-comment-item .muted.small{margin-bottom:4px !important}
.activity-label-text{font-size:13px !important;color:#64748b !important;font-weight:700 !important}
.activity-feed{display:flex;flex-direction:column;gap:8px !important}
.compact-comments-head{margin-bottom:6px !important}
.activity-item{display:grid;gap:6px;border:1px solid #e5edf7 !important;border-radius:18px !important;background:#fff !important;padding:10px 12px !important}
.activity-item .activity-headline{flex-wrap:wrap !important;display:flex !important;align-items:center !important;justify-content:flex-start !important;gap:8px !important;margin-bottom:4px !important}
.compact-comments-list{gap:6px !important}
.compact-comment-item{border-radius:16px !important;padding:8px 10px !important}
.modal-manage-request .request-btn-row .btn.primary, .modal-manage-request-xl .request-btn-row .btn.primary{background:#16a34a !important;border-color:#16a34a !important;color:#fff !important}
.modal-manage-request .request-btn-row .btn:first-child, .modal-manage-request-xl .request-btn-row .btn:first-child{background:#ef4444 !important;border-color:#ef4444 !important;color:#fff !important}
.brand{max-width:calc(100% - 112px) !important;display:flex !important;gap:12px !important;flex:1 1 auto !important;align-items:center !important;min-width:0 !important}

.modal-user-editor .grid.two.user-modal-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:10px !important}
.modal-user-editor .selection-grid{align-items:stretch !important;display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:8px !important}
.modal-user-editor .select-card{overflow:hidden !important;min-height:68px !important;padding:10px 12px !important}
.modal-user-editor .select-card strong{font-size:13px !important}
.modal-user-editor .select-card .muted.small{font-size:11px !important}
.mini-stats-row{display:flex;gap:12px;flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px;margin:16px 0 12px}
.mini-stats-row::-webkit-scrollbar{height:8px}
.mini-stats-row::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:999px}
.mini-stats-row .mini-stat{flex:1 0 170px;min-width:170px;border-radius:18px}
.request-pagination{display:flex;gap:8px;justify-content:center;align-items:center;flex-wrap:wrap;width:100%;max-width:100%;box-sizing:border-box;margin:12px 0 0;padding:10px 12px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.94);box-shadow:0 12px 30px rgba(15,23,42,.07);overflow-x:auto}
.page-chip{display:inline-flex;align-items:center;justify-content:center;min-width:38px;height:38px;padding:0 12px;border-radius:12px;border:1px solid var(--line);background:#fff;color:var(--text);font-weight:700;text-decoration:none;box-shadow:0 6px 18px rgba(15,23,42,.05)}
.page-chip.is-active,.page-chip:hover{background:linear-gradient(180deg,#1d4ed8,#2563eb);color:#fff;border-color:#2563eb}
body.page-tickets .tickets-list-panel .request-pagination{margin:12px 14px 14px;width:auto}
body.page-my-requests .myrq-list-panel{overflow:hidden}
body.page-my-requests .myrq-list-panel .compact-table-head{border-radius:0}
body.page-my-requests .myrq-list-panel .table-wrap{border-radius:0 0 16px 16px}
body.page-my-requests .myrq-list-panel .request-pagination{margin:12px 14px 14px;width:auto}
.board-shell-arrow svg,.board-shell-arrow span{color:#fff !important;fill:#fff !important}
.board-page-mode .main.board-main-lock{height:calc(100vh - 16px);overflow:hidden}
.main > .mini-stats-row{flex:0 0 auto;width:100%;max-width:100%;box-sizing:border-box;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;overflow:visible;margin:16px 0 12px;padding:0;align-items:stretch}
.main > .mini-stats-row .mini-stat{min-width:0;flex:initial;padding:14px 16px;border-radius:18px}
.main > .mini-stats-row .mini-stat .muted{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.modal-manage-request .request-btn-row, .modal-manage-request-xl .request-btn-row{flex-wrap:nowrap !important;align-items:center !important;justify-content:flex-end !important;gap:10px !important}
.modal-manage-request .request-btn-row .btn, .modal-manage-request-xl .request-btn-row .btn{white-space:nowrap !important}

.panel--admin-modules .table code{white-space:nowrap}
.brand-preview-row img.brand-preview-image{object-fit:contain;background:#fff}
.settings-panel .badge.info{font-weight:700}

.panel-head,.section-title,.wo-section-head h3{letter-spacing:.01em}

.modal-backdrop{position:fixed;inset:0;z-index:10500;display:none;align-items:center;justify-content:center;padding:16px;background:rgba(15,23,42,.46);backdrop-filter:blur(5px);overflow:auto;box-sizing:border-box}
.modal-backdrop.is-visible,.modal-backdrop:not([hidden]){display:flex}
.modal-backdrop[hidden]{display:none !important}
.modal-card{background:#fff;border:1px solid var(--line);box-shadow:0 28px 80px rgba(15,23,42,.22);width:min(760px,calc(100vw - 32px));max-width:100%;max-height:calc(100dvh - 32px);overflow:hidden;border-radius:24px;box-sizing:border-box;display:flex;flex-direction:column;padding:0;margin:auto}
.modal-card.modal-wide{width:min(1100px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow:hidden}
.modal-card.modal-large{width:min(1080px,calc(100vw - 32px))}
.modal-card.modal-user-editor,.modal-card.modal-user-editor-xl,.modal-card.modal-manage-request,.modal-card.modal-manage-request-xl{width:min(960px,calc(100vw - 24px));max-width:960px}
.modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:16px 18px;border-bottom:1px solid var(--line);background:#fff;position:sticky;top:0;z-index:3;margin:0;box-sizing:border-box}
.modal-body{padding:16px 18px 18px;overflow:auto;min-height:0;max-height:calc(100dvh - 112px);box-sizing:border-box}
.modal-body,.modal-body *{box-sizing:border-box}
.modal-body .grid,.modal-body .selection-grid,.modal-body .select-card,.modal-body label,.modal-body input,.modal-body select,.modal-body textarea{min-width:0;max-width:100%}
.modal-body textarea{resize:vertical}
.modal-card.centered-modal{margin:auto}
.modal-card.centered-modal .selection-grid,.modal-user-editor .selection-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-items:stretch}
.modal-card.centered-modal .select-card,.modal-user-editor .select-card{min-width:0;max-width:100%;overflow:hidden;box-sizing:border-box}
.modal-card .request-btn-row,.modal-user-editor .request-btn-row,.modal-manage-request .request-btn-row{position:sticky;bottom:0;z-index:2;background:#fff;border-top:1px solid var(--line);margin-top:12px;padding:12px 0 0;justify-content:flex-end}
.modal-card .request-btn-row .btn{flex:0 0 auto}

.list-item.hoverable,.user-card,.team-card,.role-card{transition:transform .14s ease, border-color .14s ease, box-shadow .14s ease}
.list-item.hoverable:hover,.user-card:hover,.team-card:hover,.role-card:hover{transform:translateY(-1px);box-shadow:0 14px 28px rgba(0,0,0,.12)}
.request-table td strong,.dt-table td strong{letter-spacing:.01em}
.field label,.stack label{gap:8px}
.request-manage-grid label,.requester-form .field label,.user-pref-form label{font-weight:700}
.workflow-chip strong{font-weight:800}
.table-card .table-wrap{border-radius:16px;overflow:auto}
.table-card table{min-width:780px}
.badge.warn,.badge.danger,.badge.ok,.badge.info{border:1px solid rgba(15,23,42,.05)}
.wo-section-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}
.admin-user-form select[multiple]{min-height:140px}
.panel-head h2{font-size:1.15rem}
.module-inline-head-between{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:16px}
.dashboard-panel,.profile-summary-panel,.profile-activity-panel,.profile-list-panel,.notifications-panel{box-shadow:0 14px 34px rgba(15,23,42,.05)}
.stat-card--soft{background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%)}
.notifications-stats-grid .stat-card,.profile-stats-grid .stat-card,.people-stats-grid .stat-card{min-height:132px}
.notif-item{border-radius:18px;padding:16px 18px}
.notif-item.unread{border-left:4px solid var(--acc);padding-left:14px;border-color:#bfdbfe;background:linear-gradient(180deg,#f8fbff 0%,#eef6ff 100%)}
.notif-item-head{gap:12px;align-items:flex-start}
.notif-body{margin-top:8px;line-height:1.5}
.profile-summary-list .list-item{border-radius:16px;background:#fbfdff}
.profile-preferences-form{padding:16px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(180deg,#fbfdff 0%,#f8fbff 100%)}
.profile-preferences-form .section-title{margin-bottom:4px}
.people-user-cards,.people-team-grid{gap:14px}
.user-card,.team-card{border-radius:20px;padding:18px}
.user-card .mini-grid{margin-top:14px}
.user-card .action-row,.team-card .action-row{margin-top:14px}
.dashboard-panel--actions .quick-grid .btn{min-height:42px}
.workload-inline-summary{margin-top:-4px;display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}
.op-intro-panel,.board-intro-panel{margin-bottom:16px}
.request-list-panel .panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.request-table td{padding-top:8px;padding-bottom:8px;vertical-align:top}
.request-table td .muted.small{line-height:1.45}
.request-manage-grid label textarea,.request-manage-grid label select,.request-manage-grid label input,.request-manage-grid select,.request-manage-grid input{min-height:44px}
.modal-manage-request .ticket-problem-preview{line-height:1.6;color:var(--ink)}
.wo-hero{padding:22px;display:flex;align-items:flex-start;justify-content:space-between;gap:18px;flex-wrap:wrap}
.wo-hero-main h2{margin-bottom:4px}
.wo-toolbar{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding:14px 18px;border-style:solid;background:linear-gradient(180deg,#fbfdff 0%,#f8fbff 100%)}
.wo-panel{display:none;border-radius:22px !important;box-shadow:0 14px 34px rgba(15,23,42,.05)}

.wo-info-grid > div,.wo-info-grid > label{background:#fbfdff;border:1px solid var(--line);border-radius:16px;padding:12px 14px}
.requester-form--wo .field.full textarea{min-height:160px}
.filter-card--elevated{box-shadow:0 14px 34px rgba(15,23,42,.05)}
.filter-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid var(--line)}
.filter-toolbar-badges{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.badge.soft{background:#f8fafc;color:#334155;border:1px solid rgba(148,163,184,.26)}

.compact-table-head{display:flex;align-items:center;justify-content:space-between;gap:10px 12px;flex-wrap:wrap;min-width:0;padding:12px 14px 10px;margin:0;overflow:hidden;border-bottom:1px solid var(--line)}
.compact-table-head .panel-head-title{display:flex;align-items:center;gap:6px;flex:0 1 auto;min-width:180px;max-width:100%;line-height:1.35;white-space:normal;overflow:hidden;text-overflow:ellipsis}
.compact-table-head .panel-head-title .muted.small{white-space:normal;line-height:1.35}
.compact-table-head .panel-head-title .badge.soft{margin-left:0;font-size:10px;flex:0 0 auto}
.panel-head-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex:0 0 auto;flex-wrap:wrap;min-width:0}
.panel-head-filter-bar{display:flex;align-items:center;gap:8px;flex:1 1 420px;min-width:260px;max-width:min(100%,640px);margin:0;overflow:hidden}
.panel-head-filter-bar input,.panel-head-filter-bar select{height:32px;min-height:32px;font-size:12px;padding:0 8px;border:1px solid var(--border,#e5e7eb);border-radius:8px;background:var(--surface-soft,#f8fafc);color:var(--text-body,#111827);min-width:0;max-width:100%;box-sizing:border-box}
.panel-head-filter-bar .quick-filter-search{flex:1 1 180px;min-width:120px}
.panel-head-filter-bar select{flex:0 1 152px;min-width:118px}
.panel-head-filter-bar .btn{height:32px;min-height:32px;padding:0 10px;font-size:12px;flex:0 0 auto}
body.page-tickets .tickets-list-panel .compact-table-head{border-radius:0}
body.page-tickets .tickets-list-panel .table-wrap{border-radius:0 0 16px 16px}
body.page-tickets .tickets-quick-filter{max-width:min(100%,690px)}

@media (max-width:720px){
  .modal-backdrop{align-items:flex-end;padding:10px}
  .modal-card,.modal-card.modal-wide,.modal-card.modal-large,.modal-card.modal-user-editor,.modal-card.modal-user-editor-xl,.modal-card.modal-manage-request,.modal-card.modal-manage-request-xl{width:100%;max-width:100%;max-height:92dvh;border-radius:22px 22px 16px 16px}
  .modal-head{padding:14px 16px}
  .modal-body{padding:14px 16px 16px;max-height:calc(92dvh - 96px)}
  .modal-card.centered-modal .selection-grid,.modal-user-editor .selection-grid{grid-template-columns:1fr}
}

@media (max-width:1180px){.compact-table-head{align-items:flex-start}.compact-table-head .panel-head-title{flex:1 1 260px}.panel-head-filter-bar{order:3;flex:1 0 100%;min-width:0;max-width:100%;margin-top:2px}.panel-head-actions{margin-left:auto}}
.table .action-row .btn.small{min-width:88px;justify-content:center}
.request-table .action-row,.dt-table .action-row{display:flex;gap:8px;flex-wrap:wrap}
.dt-filters .grid-4,.dt-filters .grid-5{align-items:end}
.dt-filters input[type="text"],.dt-filters input[type="date"],.dt-filters select{min-height:44px}
.table-wrap thead th{position:sticky;top:0;z-index:1;background:#f8fbff}
.table tr.row-clickable td{transition:background .14s ease}
.table tr.row-clickable:hover td{background:#fbfdff}
.request-history-item{border:1px solid #e7edf5;background:#fff;border-radius:18px;padding:16px 18px}
.request-history-item .topline{margin-bottom:6px;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}
.request-history-item .wo-linkline{padding-top:8px;border-top:1px dashed #e5eaf1;color:#475569;margin-top:8px}
.dashboard-hero-panel{margin-bottom:16px;background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%);box-shadow:0 16px 36px rgba(15,23,42,.05)}
.dashboard-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;flex-wrap:wrap}
.dashboard-hero h2{margin:4px 0 6px;font-size:1.45rem;letter-spacing:-.015em}
.dashboard-hero .muted{max-width:760px;line-height:1.55}
.dashboard-panel .panel-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.dashboard-panel .list-stack.compact .list-item{border-radius:18px;background:linear-gradient(180deg,#ffffff 0%,#fbfdff 100%)}
.dashboard-panel .list-stack.compact .list-item .muted.small{line-height:1.45}
.stat-card{position:relative;overflow:hidden}
.stat-card::after{content:"";position:absolute;inset:auto -20px -34px auto;width:112px;height:112px;border-radius:999px;background:radial-gradient(circle,rgba(59,130,246,.08) 0%,rgba(59,130,246,0) 72%);pointer-events:none}
.quick-grid .btn{min-width:0;border-radius:14px}
.empty-state--action{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:18px 20px;border:1px dashed rgba(148,163,184,.36);border-radius:18px;background:linear-gradient(180deg,#fbfdff 0%,#f8fbff 100%)}
.empty-state--action strong{font-size:.98rem;color:#0f172a}
.empty-state--action span{color:#64748b;line-height:1.5}
.empty-state--action .action-row{margin-top:4px}
.mini-user-chip:hover{transform:translateY(-1px);box-shadow:0 10px 22px rgba(15,23,42,.08)}

.ticket-view-readonly .wo-edit-form, .ticket-view-readonly .files-upload-box, .ticket-view-readonly .comment-box-form{pointer-events:none;opacity:.72}
.dashboard-hero--requester{align-items:flex-start}
.dashboard-panel--requester-note .empty-state{min-height:100%;justify-content:center}
.requester-stats-grid .stat-card{position:relative;overflow:hidden}
.requester-stats-grid .stat-card::after{content:"";position:absolute;inset:auto -24px -24px auto;width:92px;height:92px;border-radius:50%;background:rgba(255,255,255,.05)}
.dashboard-role-note{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.dashboard-role-note .workflow-chip{background:#f8fbff;border-color:rgba(59,130,246,.16)}
.ticket-view-readonly .wo-toolbar .btn.primary{opacity:.55;pointer-events:none}
.request-filters-panel{width:100%;max-width:100%;padding:16px 18px}
.request-list-panel{overflow:hidden}
.request-list-head-badges{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.request-table-wrap{border:1px solid #e7edf5;border-radius:18px;overflow:auto !important;max-height:calc(100vh - 290px) !important;overflow:visible}
.request-table{table-layout:fixed;width:100%}
.request-primary-cell,.request-wrap-cell{min-width:0}
.request-brief-line{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.request-table td:nth-child(1){width:20%}
.request-table td:nth-child(2){width:18%}
.request-table td:nth-child(3){width:15%}
.request-table td:nth-child(4){width:13%}
.request-table td:nth-child(5){width:10%}
.request-table td:nth-child(6){width:10%}
.request-table td:nth-child(7){width:8%}
.request-table td:nth-child(8){width:16%}
.request-list-panel .table{min-width:0}
.request-list-panel .table-wrap,.request-list-panel .request-table-wrap{overflow:hidden}
.request-table th,.request-table td{white-space:normal;word-break:break-word;overflow-wrap:anywhere;hyphens:auto}
.filter-toolbar--request .eyebrow{letter-spacing:.08em}
.ticket-role-pill{display:inline-flex;align-items:center;gap:8px;margin-top:10px;padding:8px 12px;border-radius:999px;border:1px solid rgba(148,163,184,.28);color:#334155;font-size:.82rem;font-weight:700;background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%);border-color:rgba(59,130,246,.18)}
.ticket-view-readonly .wo-tab[data-tab-target="overview"]{opacity:.88}
.filter-toolbar--request .muted.small{max-width:62ch;white-space:normal}
.request-list-panel .panel-head>div:first-child{min-width:0}
.request-list-panel .panel-head strong{display:block}
.request-table td,.request-table th{white-space:nowrap;vertical-align:top}
.request-wrap-cell,.request-primary-cell{display:block;max-width:100%}
.request-wrap-cell{line-height:1.35}
.request-table td a.btn{max-width:100%}
.request-table .action-row .btn{white-space:normal;text-align:center;flex:1 1 120px}
.wo-info-grid select[disabled],.wo-info-grid input[disabled]{opacity:.78}
.wo-edit-form .soft-note{margin-bottom:8px}
.filter-card--elevated,.request-list-panel,.table-card{overflow:hidden}
.filter-card--elevated .filter-toolbar,.request-list-panel .panel-head,.table-card .panel-head{padding-bottom:12px}
.request-table td,.request-table th,.table--tickets td,.table--tickets th{vertical-align:top;word-break:break-word;overflow-wrap:anywhere}
.request-table .action-row{align-items:stretch;flex-wrap:wrap;gap:8px}
.request-table-wrap{overflow-x:visible}
.dashboard-panel > .empty-state, .dashboard-panel .list-stack > .empty-state{box-sizing:border-box;width:100%;margin:0}
.dashboard-panel .empty-state{padding:18px 20px}
.files-grid .file-meta .action-row{margin-top:10px}
.files-grid .file-card .btn{white-space:nowrap}
.dashboard-stats-grid,.requester-stats-grid,.notifications-stats-grid,.profile-stats-grid,.people-stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.wo-toolbar-item span,.workflow-chip,.muted.small{overflow-wrap:anywhere}
.files-grid,.ticket-files-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.file-card,.files-grid .fileItem{min-width:0}
.file-card .action-row,.files-grid .action-row{flex-wrap:wrap}
.panel-head,.wo-section-head,.dashboard-hero,.filter-toolbar,.filter-toolbar--request,.module-inline-head-between{min-width:0}
.panel-head > div,.dashboard-hero > div,.wo-section-head > div{min-width:0}
.table-wrap,.request-table-wrap{max-width:100%}
.modal-form--user-editor .modal-actions-sticky{position:sticky;bottom:0;z-index:3;background:linear-gradient(180deg,rgba(255,255,255,.92),#fff);padding:12px 16px 16px;border-top:1px solid #e5e7eb;justify-content:flex-end;gap:10px}
.team-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}
.team-summary-card{display:grid;gap:12px;padding:16px;border:1px solid #e2e8f0;border-radius:20px;background:linear-gradient(180deg,#fff 0%,#f8fbff 100%);box-shadow:0 12px 28px rgba(15,23,42,.05);min-width:0}
.team-summary-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.team-summary-head strong{font-size:16px;line-height:1.35;word-break:break-word}
.team-summary-meta{display:flex;flex-wrap:wrap;gap:8px}
.team-summary-card .supervisor-team-grid{gap:8px}
.mini-user-chip{padding:8px 12px;border-radius:999px;background:#f1f5f9;border:1px solid #e2e8f0;transition:transform .14s ease, box-shadow .14s ease,border-color .14s ease;display:inline-flex;align-items:center;justify-content:center;max-width:100%;white-space:normal;word-break:break-word;text-align:center}
.mini-user-chip--empty{background:#f8fafc;color:#64748b}
.modal-card.modal-user-editor, .modal-card.modal-user-editor-xl{display:flex;flex-direction:column}
.modal-form--user-editor{max-height:calc(100vh - 40px);display:flex;flex-direction:column;flex:1 1 auto;min-height:0;overflow:hidden}
.modal-form--user-editor .modal-form-scroll{padding:14px 16px 10px;flex:1 1 auto;min-height:0;overflow:auto}
.modal-form--user-editor .modal-form-section-stack{display:grid;gap:14px;min-width:0}
.modal-user-editor .permission-group, .modal-user-editor .role-grid, .modal-user-editor .selection-grid, .modal-user-editor .permission-select-grid{min-width:0;width:100%}
.modal-user-editor .permission-group{display:grid;gap:8px}
.modal-user-editor .permission-select-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}
.modal-user-editor .permission-select-grid .select-card, .modal-user-editor .role-select-grid .select-card{height:100%}
.modal-user-editor .modal-actions-sticky{margin-top:0;flex-shrink:0}
.app-shell{background:transparent;display:flex;height:100vh;overflow:hidden;min-height:var(--dt-vh)}
html,body{min-height:100dvh}
.login-page{display:grid;place-items:center;padding:24px;background:linear-gradient(135deg,#0f172a 0%,#16213a 42%,#edf2f7 42%,#f7f9fc 100%) !important;min-height:100dvh}
.board-density-toggle .btn{padding:8px 12px}
.analytics-click-card{cursor:pointer;transition:transform .15s ease, box-shadow .15s ease}
.analytics-click-card:hover{transform:translateY(-1px);box-shadow:0 8px 24px rgba(15,23,42,.08)}
.analytics-modal{position:fixed;inset:0;background:rgba(15,23,42,.42);display:none;align-items:center;justify-content:center;padding:20px;z-index:60}
.analytics-modal.open{display:flex}
.analytics-modal-list{display:flex;flex-direction:column;gap:10px;margin-top:12px}
.analytics-modal-item strong{display:block;margin-bottom:3px}
.request-filter-grid{align-items:end;gap:14px}
.field-box select,.field-box input{display:block;width:100%;max-width:100%;box-sizing:border-box;margin:0;background:#fff;border:1px solid #cfdae6;border-radius:14px;min-height:46px;padding:0 14px;box-shadow:inset 0 1px 0 rgba(255,255,255,.8)}
.field-box .field-hint{margin-top:-2px;color:var(--muted);font-size:12px;font-weight:500}
.input-with-action{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;width:100%}
.input-with-action .btn{white-space:nowrap;align-self:stretch;min-height:46px}
.filter-toolbar--request{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:14px}
.filter-actions{display:flex;gap:10px;align-items:center;justify-content:flex-end;margin-top:14px}
.request-filter-grid .field-box--location{grid-column:span 2}
.analytics-page .panel.chart-panel{background:linear-gradient(180deg,#ffffff,#f8fbff);border-color:#d9e3ee}
.analytics-page .mini-stat{background:linear-gradient(180deg,#ffffff,#f3f8ff);border-color:#d8e4f3}
.accent-requests{background:linear-gradient(90deg,#2563eb,#60a5fa)}
.accent-workorders{background:linear-gradient(90deg,#0f766e,#2dd4bf)}
.accent-priority{background:linear-gradient(90deg,#d97706,#fbbf24)}
.accent-people{background:linear-gradient(90deg,#7c3aed,#a78bfa)}
.accent-location{background:linear-gradient(90deg,#0f766e,#38bdf8)}
.analytics-modal-card{width:min(780px,100%);max-height:min(86vh,760px);overflow:auto;border:1px solid var(--line);border-radius:24px;padding:18px;box-shadow:0 28px 80px rgba(15,23,42,.24);background:linear-gradient(180deg,#ffffff,#f6faff)}
.analytics-modal-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:14px 0 10px}
.analytics-stat-box{border:1px solid #d7e2ef;border-radius:18px;padding:12px 14px;background:linear-gradient(180deg,#fff,#f3f8ff);box-shadow:0 10px 20px rgba(15,23,42,.05)}
.analytics-stat-box span{display:block;font-size:12px;color:var(--muted);margin-bottom:6px}
.analytics-stat-box strong{font-size:1.25rem;line-height:1}
.analytics-filter-chip{display:inline-flex;align-items:center;gap:8px;border:1px solid #d5e0ec;border-radius:999px;background:#fff;padding:9px 12px;cursor:pointer;font:inherit;color:var(--text)}
.analytics-filter-chip span{display:inline-flex;min-width:24px;justify-content:center;padding:2px 8px;border-radius:999px;background:#eaf2fb;color:#1d4ed8;font-size:12px}
.analytics-filter-chip.is-active{background:linear-gradient(180deg,#eff6ff,#dbeafe);border-color:#93c5fd;color:#1d4ed8}
.analytics-modal-item{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:12px 14px;border:1px solid var(--line);border-radius:16px;background:#fff;border-color:#d7e2ef}
.request-filter-grid .field-box,.tickets-filter-grid .field-box{height:100%}
.request-filter-grid label,.tickets-filter-grid label{line-height:1.2}
.field-box, .field-box input, .field-box select, .field-box .input-with-action, .my-requests-filter-grid label, .my-requests-filter-grid input, .my-requests-filter-grid select{box-sizing:border-box}
.field-box{display:flex;flex-direction:column;justify-content:flex-start;gap:8px;font-weight:700;background:linear-gradient(180deg,#fbfdff,#f4f8fc);border:1px solid #dce5ef;border-radius:18px;padding:14px 14px 12px;box-shadow:0 10px 26px rgba(15,23,42,.05);box-sizing:border-box;min-height:116px;overflow:hidden;align-self:stretch;width:100%}
.field-box input,.field-box select{width:100%;max-width:100%}
.field-box > input,.field-box > select{margin-top:6px}
.field-box--wide{grid-column:span 2}
.request-filter-grid,.tickets-filter-grid,.my-requests-filter-grid{align-items:stretch}
.my-requests-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.my-requests-filter-grid label{display:flex;flex-direction:column;gap:8px;font-weight:700;background:linear-gradient(180deg,#fbfdff,#f4f8fc);border:1px solid #dce5ef;border-radius:18px;padding:14px 14px 12px;min-height:116px;overflow:hidden;box-shadow:0 10px 26px rgba(15,23,42,.05)}
.my-requests-filter-grid input,.my-requests-filter-grid select{display:block;width:100%;background:#fff;border:1px solid #cfdae6;border-radius:14px;min-height:46px;padding:0 14px}
.locations-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:14px}
.locations-search-form{display:flex;gap:10px;align-items:center;flex-wrap:wrap;flex:1}
.locations-search-form input{max-width:420px}
.location-view-toggle{display:flex;gap:8px;align-items:center}
.location-grid-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.location-card-card{padding:0;overflow:hidden}
.location-card-media strong{position:relative;z-index:1;color:#0f172a;background:rgba(255,255,255,.82);padding:8px 10px;border-radius:12px}
.location-card-body{padding:16px;display:flex;flex-direction:column;gap:14px}
.location-card-actions{display:flex;gap:8px;flex-wrap:wrap}
.location-card-listings{display:flex;flex-direction:column;gap:8px;max-height:220px;overflow:auto}
.location-listing-pill{display:flex;justify-content:space-between;gap:8px;border:1px solid var(--line);background:#fff;border-radius:12px;padding:10px 12px}
.dt-kanban.compact-mode .kanban-card{border-radius:14px;padding:10px}
.dt-kanban.compact-mode .dt-card h3{font-size:14px;margin-bottom:6px}
.kanban-drop{min-height:420px;display:flex;flex-direction:column;gap:10px;max-height:72vh;overflow:auto;padding-right:4px}
.kanban-col{background:#f8fafc;border:1px solid var(--line);border-radius:20px;padding:12px;display:flex;flex-direction:column;min-height:0}
.kanban-head{font-weight:800;margin-bottom:10px;display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;background:#f8fafc;z-index:2;padding-bottom:10px}
.kanban-col .empty-state{margin-top:8px}

.board-toolbar{margin:12px 0 16px;display:flex;gap:12px;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;margin-bottom:14px}
.board-search{max-width:340px;flex:1 1 280px}
.board-search input{width:100%}
.board-actions{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap}
.board-status-filter{display:flex;flex-direction:column;gap:6px;min-width:170px}
.board-status-filter select{min-height:40px}
.board-overflow-note{max-width:420px;color:var(--muted);font-size:12px;line-height:1.35}
.board-metrics-row{margin-bottom:14px}
.board-mini-stat{min-height:96px}
.my-requests-filter-grid label, .request-filter-grid .field-box, .tickets-filter-grid .field-box{padding:12px 12px 10px !important}
.my-requests-filter-grid input, .my-requests-filter-grid select, .request-filter-grid .field-box input, .request-filter-grid .field-box select, .tickets-filter-grid .field-box input, .tickets-filter-grid .field-box select{min-height:44px !important}

.calendar-count-pill,.calendar-more-link{border:1px solid #bfdbfe;background:#eff6ff;color:#1d4ed8;border-radius:999px;padding:6px 10px;font:inherit;font-size:12px;cursor:pointer}
.location-card-card .muted.small{margin-top:2px}
.modal-shell{position:fixed;inset:0;z-index:1400;display:grid;place-items:center;padding:20px}
.modal-shell[hidden]{display:none !important}
.modal-overlay{position:absolute;inset:0;background:rgba(15,23,42,.48);backdrop-filter:blur(2px)}
.modal-shell .modal-card{position:relative;z-index:1}
.calendar-modal-shell{position:fixed;inset:0;display:grid;place-items:center;padding:20px;z-index:1200}
.calendar-modal-shell[hidden]{display:none !important}
.calendar-modal-shell .modal-overlay{position:absolute;inset:0;background:rgba(15,23,42,.46);backdrop-filter:blur(3px)}
.calendar-modal-shell .modal-card{position:relative;z-index:1;width:min(760px,calc(100vw - 24px));max-height:min(86vh,820px);overflow:auto;border-radius:24px;background:#fff;border:1px solid var(--line);box-shadow:0 28px 80px rgba(15,23,42,.28);padding:20px}
.calendar-month-modal .modal-head{margin-bottom:14px}
.calendar-month-chip.is-current{color:#1d4ed8;background:#e8f0ff;border-color:#bfd1ff;box-shadow:inset 0 0 0 1px #bfd1ff}
.requester-form--wo .grid.two{align-items:stretch;gap:16px}
.requester-form--wo .field-card textarea{min-height:160px;padding:14px}
.requester-form--wo .field-card input[type="file"]{padding:10px 12px;min-height:auto}
.requester-form--wo .field-card .muted.small{margin-top:0;font-size:12px}
.requester-form--wo .field-card.full{min-height:auto}
.requester-form--wo .meta{border-radius:18px;background:linear-gradient(180deg,#fbfdff 0%,#f8fbff 100%);height:100%}
.calendar-modal-shell .modal-card, .calendar-month-modal, .calendar-day-modal{box-sizing:border-box;overflow:hidden}
.calendar-month-year-label, #calendarMonthYearLabel{display:inline-flex;align-items:center;justify-content:center;min-width:72px;text-align:center}
.calendar-item strong, .calendar-item span, .calendar-item small{display:block;max-width:100%;overflow:hidden}
.calendar-item strong, .calendar-item span{display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}
.calendar-modal-shell .modal-card, .calendar-month-modal{position:relative}
.calendar-month-modal .modal-head, .calendar-day-modal .modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px;position:relative;padding-right:54px !important}
.calendar-month-modal .modal-head .icon-btn, .calendar-day-modal .modal-head .icon-btn{flex:0 0 auto;align-self:flex-start;margin-left:auto;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border-radius:12px;position:absolute;top:0;right:0}
.calendar-item span{-webkit-line-clamp:2;font-size:12px !important;line-height:1.2 !important}
.calendar-item small{color:var(--muted);line-height:1.2;font-size:10px !important;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:.9}
.requester-form--wo .field-card{display:flex;flex-direction:column;gap:8px;background:linear-gradient(180deg,#fbfdff,#f4f8fc);border:1px solid #dce5ef;box-shadow:0 10px 26px rgba(15,23,42,.05);box-sizing:border-box;min-height:112px;overflow:hidden;padding:14px 14px 12px !important;border-radius:18px !important}
.requester-form--wo .field-card > label{flex-direction:column;gap:8px;display:block;font-weight:700;margin-bottom:8px}
.requester-form--wo .field-card input, .requester-form--wo .field-card select, .requester-form--wo .field-card textarea{margin:0;background:#fff;border:1px solid #cfdae6;border-radius:14px;min-height:46px;padding:0 14px;box-shadow:inset 0 1px 0 rgba(255,255,255,.8);width:100% !important;max-width:100% !important;box-sizing:border-box !important;display:block !important}
.requester-form--wo .field-card input[type="date"]{padding-right:12px !important}
.requester-form--wo .field-card .meta{margin-top:0}
.analytics-modal-stats--interactive{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:14px 0 12px}
.analytics-modal-stats--interactive .analytics-stat-box:hover{transform:translateY(-1px);border-color:#93c5fd;box-shadow:0 12px 24px rgba(15,23,42,.08)}
.analytics-modal-stats--interactive .analytics-stat-box.is-active{background:linear-gradient(180deg,#eff6ff,#dbeafe);border-color:#93c5fd;color:#1d4ed8}
.analytics-modal-stats--interactive .analytics-stat-box strong{font-size:1.18rem}
.analytics-modal-filters{gap:8px;flex-wrap:wrap;margin:4px 0 12px;display:none !important}
.analytics-modal-card .between{align-items:flex-start;gap:14px;position:relative;padding-right:54px}
#analyticsModalClose,#analyticsLocationClose{line-height:1;flex:0 0 auto;position:absolute;top:0;right:0;display:inline-flex !important;align-items:center;justify-content:center;width:40px;height:40px;min-width:40px;border-radius:12px;border:1px solid #d7e2ef;background:#ffffff;color:#0f172a;box-shadow:0 10px 24px rgba(15,23,42,.08);font-size:18px;font-weight:800;text-decoration:none}
#analyticsModalClose:hover,#analyticsLocationClose:hover{background:#f8fbff;color:#0f172a;border-color:#b9c8dc}
.analytics-modal-stats--interactive .analytics-stat-box span{display:block;color:#64748b}
.analytics-modal-stats--interactive .analytics-stat-box{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:6px;cursor:pointer;width:100%;text-align:left;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease;background:linear-gradient(180deg,#fff,#f3f8ff);min-height:88px;border:1px solid #d7e2ef;border-radius:18px;padding:14px 14px 12px}
.board-filter-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.board-filter-grid .field-box{padding:12px 12px 10px;display:flex;flex-direction:column;gap:8px;background:linear-gradient(180deg,#fbfdff,#f4f8fc);border:1px solid #dce5ef;border-radius:18px;box-shadow:0 10px 26px rgba(15,23,42,.04)}
.board-filter-grid .field-box input, .board-filter-grid .field-box select{width:100%;min-height:46px;border:1px solid #cfdae6;border-radius:14px;background:#fff;padding:0 14px;box-sizing:border-box}
.board-status-pill span{font-weight:700;color:#475569}
.board-status-pill strong{font-size:1.1rem;color:#0f172a}
.board-status-pill.is-active{border-color:#93c5fd;background:linear-gradient(180deg,#eff6ff,#dbeafe);box-shadow:0 16px 34px rgba(37,99,235,.12)}
.board-status-pill.is-active span,.board-status-pill.is-active strong{color:#1d4ed8}
.dt-card .card-foot:last-child{margin-top:auto}
.board-filter-toolbar{align-items:flex-start;gap:10px;margin-bottom:10px}
.board-filter-card .filter-toolbar, .board-filter-card .board-filter-grid--compact, .board-filter-card .filter-actions{position:relative;z-index:1}
.board-status-pill{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:140px;padding:12px 14px;border:1px solid #d7e2ef;border-radius:18px;background:linear-gradient(180deg,#fff,#f7fbff);box-shadow:0 12px 28px rgba(15,23,42,.05);cursor:pointer;color:var(--text);flex:0 0 auto}
.board-status-strip{gap:10px;overflow:auto;margin-bottom:14px;scrollbar-width:thin;margin-top:4px;position:relative !important;top:auto !important;z-index:3 !important;margin:8px 0 14px !important;padding:0 0 6px !important;background:transparent !important;display:none !important}
.board-filter-grid--compact .field-box input,.board-filter-grid--compact .field-box select{min-height:40px !important;height:40px !important;border-radius:12px !important}
.kanban-card,.dt-card{position:relative;z-index:1;overflow:hidden;padding:12px !important;border-radius:16px !important;background:#fff !important;border:1px solid #dbe5ef !important;box-shadow:0 8px 20px rgba(15,23,42,.04)}
.dt-drop::-webkit-scrollbar{width:10px}
.dt-drop::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:999px;border:2px solid transparent;background-clip:padding-box}
.dt-drop > *{flex:0 0 auto !important}
.dt-card .card-foot.form-safe-zone .quick-status, .dt-card .card-foot.form-safe-zone .btn{position:relative !important;z-index:2 !important}
.board-intro-panel{margin-bottom:10px !important;padding:12px 16px !important}
.board-filter-toolbar .eyebrow{margin-bottom:2px !important}
.board-filter-toolbar .muted.small{max-width:620px;font-size:12px !important;line-height:1.3 !important}
.board-filter-grid--compact .field-box{min-width:0;background:linear-gradient(180deg,#fcfdff,#f5f8fc);box-shadow:none;min-height:unset !important;height:auto !important;padding:7px 9px 8px !important;border-radius:12px !important;font-size:11px !important;gap:4px !important}
.board-filter-grid--compact .field-box input, .board-filter-grid--compact .field-box select{display:block !important;width:100% !important;max-width:100% !important;min-height:36px !important;height:36px !important;padding:8px 10px !important;font-size:12px !important;border-radius:10px !important}
.board-filter-actions .btn{padding:8px 11px !important;min-height:36px !important}
.board-tabs{margin-bottom:10px !important;position:sticky !important;top:108px !important;z-index:14 !important;margin:0 0 10px !important;padding:4px 0 !important;background:linear-gradient(180deg, rgba(242,245,248,.96), rgba(242,245,248,.82)) !important;backdrop-filter:blur(8px)}
.kanban-col, .dt-col{display:flex !important;flex-direction:column !important;align-self:flex-start !important;overflow:hidden !important;flex:0 0 286px !important;width:286px !important;min-width:286px !important;max-width:286px !important;height:calc(100vh - 188px) !important;max-height:calc(100vh - 188px) !important;min-height:420px !important;padding:10px !important;border-radius:16px !important}
.dt-col-head .count{font-size:11px !important;min-width:22px !important;height:22px !important;padding:1px 7px !important}
.kanban-card, .dt-card{width:100% !important;max-width:100% !important;min-width:0 !important;display:flex !important;flex-direction:column !important;align-self:stretch !important;box-sizing:border-box !important;padding:10px !important;border-radius:14px !important;gap:6px !important}
.dt-card .card-foot.form-safe-zone .btn{padding:7px 9px !important;min-height:34px !important;font-size:11px !important;white-space:nowrap !important}
.board-page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:14px;padding:16px 18px}
.board-page-header__main h2{margin:4px 0 4px}
.board-page-header__main .muted.small{font-size:13px}
.board-filter-toolbar--tight .eyebrow{display:none}
.board-filter-grid--compact .field-box.compact input, .board-filter-grid--compact .field-box.compact select{min-height:40px;border-radius:12px;padding:0 12px}
.dt-card .card-foot .btn.small,.dt-card .quick-status{min-height:34px !important;font-size:12px !important;padding:6px 10px !important;border-radius:10px !important}
.dt-kanban.compact-mode .kanban-col,.dt-kanban.compact-mode .dt-col{flex-basis:270px !important;min-width:270px !important;max-width:270px !important}
.dt-kanban.compact-mode .dt-card{padding:8px !important;gap:5px !important}
.dt-kanban.compact-mode .ticket-title{line-height:1.25;font-size:.88rem !important}
.dt-kanban.compact-mode .ticket-meta-line{margin:4px 0 0;display:none;font-size:11px !important}
.dt-kanban.compact-mode .card-foot .btn.small,.dt-kanban.compact-mode .quick-status{min-height:30px !important;font-size:11px !important;padding:4px 8px !important}
.board-page-wrap > *{min-width:0}
.board-page-wrap{display:flex;flex-direction:column;gap:10px;min-width:0}
.board-filter-card--tight{margin-bottom:12px;position:sticky;top:10px;z-index:8;padding:12px 14px 12px !important}
.board-filter-grid--compact{align-items:start !important;grid-template-columns:repeat(5,minmax(120px,1fr)) !important;gap:8px !important;display:grid;grid-template-columns:repeat(5,minmax(140px,1fr));gap:8px;align-items:end}
.board-filter-grid--compact .field-box.compact{font-weight:700;padding:8px 9px 7px;border-radius:14px;gap:4px;font-size:12px}
.board-filter-grid--compact .field-box.compact input,.board-filter-grid--compact .field-box.compact select{min-height:36px;padding:0 10px;border-radius:10px;font-size:12px}
.kanban-col,.dt-col{box-sizing:border-box !important;scroll-snap-align:start;display:flex !important;flex-direction:column !important;flex:0 0 266px !important;min-width:266px !important;max-width:266px !important;height:calc(100vh - 210px) !important;min-height:520px !important;padding:8px !important;background:#eef4fb !important;border:1px solid #d7e4f0 !important;border-radius:18px !important;box-shadow:none !important;overflow:hidden !important}
.dt-col-head{padding-bottom:8px;backdrop-filter:blur(6px);flex:0 0 auto !important;font-size:13px !important;display:flex !important;justify-content:space-between;align-items:center;position:sticky !important;top:0 !important;z-index:4 !important;margin-bottom:8px !important;padding:9px 10px !important;background:#f8fbff !important;border:1px solid #d9e5f2 !important;border-radius:12px !important;box-shadow:0 4px 12px rgba(15,23,42,.04) !important}
.dt-card .card-foot .badge{font-size:10px !important;padding:4px 7px !important;border-radius:999px !important;line-height:1 !important}
.dt-card .quick-status{width:100% !important;min-width:0 !important;max-width:100% !important;height:34px !important;flex:1 1 0;min-width:0;min-height:30px !important;padding:4px 8px !important;font-size:11px !important;border-radius:10px !important}
.dt-card .card-foot .btn.small{min-height:30px !important;padding:4px 8px !important;font-size:11px !important;border-radius:10px !important}
.location-card-media{height:150px;background:linear-gradient(135deg,#dbeafe,#eff6ff 55%,#f8fafc);padding:16px;position:relative;display:flex;align-items:center;justify-content:center}
.location-card-media__badge{display:inline-flex;align-items:center;justify-content:center;width:62px;height:62px;border-radius:18px;background:rgba(255,255,255,.82);color:#0f172a;font-weight:900;font-size:1.05rem;box-shadow:0 10px 24px rgba(15,23,42,.08)}
.location-card-title{margin:0 0 2px;line-height:1.2}
.board-filter-card{overflow:hidden !important;top:12px !important;z-index:16 !important;padding:10px 12px !important;margin-bottom:10px !important;position:sticky !important;top:10px;z-index:30;background:linear-gradient(180deg,#ffffff,#f8fbff) !important;border:1px solid #dbe5f0 !important;box-shadow:0 10px 30px rgba(15,23,42,.06) !important}
.board-filter-toolbar--tight{flex-wrap:wrap;margin-bottom:10px;padding-bottom:10px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:10px}
.board-toolbar-main{justify-content:space-between;flex:1 1 640px;display:flex;align-items:center;gap:12px;flex-wrap:wrap;min-width:0}
.board-toolbar-title{font-size:1.02rem;font-weight:800;color:#0f172a;line-height:1.1}
.board-tabs--inline{margin:0;display:inline-flex;align-items:center;gap:4px;padding:4px;border:1px solid #d8e2ee;border-radius:14px;background:#f8fbff}
.board-tabs--inline a{margin:0;background:transparent;border:0;min-width:auto;color:#475569;text-decoration:none;font-size:13px;line-height:1;padding:8px 12px;border-radius:10px;font-weight:700}
.board-tabs--inline a.active{box-shadow:0 8px 20px rgba(15,23,42,.08);background:#e8f1ff;color:#1d4ed8}
.dt-col.is-muted{opacity:.42;filter:saturate(.75)}
.dt-col-head .count,.kanban-head .count{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:28px;padding:0 8px;border-radius:999px;background:#e8f1ff;color:#1d4ed8;font-weight:800}
.dt-card,.kanban-card{width:100% !important;max-width:100% !important;box-sizing:border-box !important;padding:10px 11px !important;border-radius:16px !important}
.dt-card .eyebrow{line-height:1.1 !important;font-size:.68rem !important;margin-bottom:4px !important}
.dt-card .ticket-title{display:-webkit-box !important;-webkit-line-clamp:2 !important;-webkit-box-orient:vertical !important;overflow:hidden !important;font-size:.92rem !important;line-height:1.24 !important;margin-bottom:4px !important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.dt-card .ticket-meta-line{word-break:break-word !important;white-space:nowrap !important;overflow:hidden !important;text-overflow:ellipsis !important;font-size:.76rem !important;line-height:1.25 !important;margin:2px 0 0 !important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.dt-card .ticket-meta-line.subtle{opacity:.88}
.dt-card .card-foot{display:flex !important;align-items:center !important;justify-content:space-between !important;gap:6px !important;flex-wrap:wrap !important;display:flex;align-items:center;justify-content:space-between;gap:6px;flex-wrap:wrap;margin-top:8px !important}
.dt-card .card-foot.form-safe-zone{width:100% !important;gap:6px !important;align-items:center !important;display:grid !important;grid-template-columns:1fr auto !important;align-items:center;gap:6px}
.dt-card .kanban-status-select,.dt-card .quick-status{min-height:34px !important;height:34px !important;padding:0 8px !important;font-size:.76rem !important;border-radius:10px !important;min-width:0}
.dt-card .btn.small{padding:7px 10px !important;min-height:34px !important;font-size:.74rem !important;border-radius:10px !important}
.ticket-link-cover{position:absolute;inset:0;z-index:1 !important;border-radius:16px}
.board-filter-grid--compact,.board-filter-actions,.board-filter-toolbar--tight,.board-toolbar-main{min-width:0}
.kanban-board-shell::-webkit-scrollbar:horizontal{height:14px}
.kanban-board-shell::-webkit-scrollbar:vertical{width:12px}
.board-shell-controls{display:flex;justify-content:flex-end;gap:8px;margin:-2px 0 6px}
.dt-drop,.kanban-drop{display:flex !important;flex-direction:column !important;align-items:stretch !important;gap:10px !important;overflow-y:auto !important;overflow-x:hidden !important;padding:2px 2px 8px;scrollbar-width:thin;scrollbar-gutter:stable;flex:1 1 auto !important;min-height:320px !important;overflow:visible !important;padding-bottom:120px !important}
.main{flex:1 1 auto !important;min-width:0 !important;min-height:100vh !important;height:100vh !important;overflow:auto !important;display:flex !important;flex-direction:column !important;padding:20px 22px !important;box-sizing:border-box !important;overflow-x:hidden;min-width:0}
.main > .board-page-wrap--kanban{min-width:0;padding:0 12px 18px !important;max-width:100%;width:100%;box-sizing:border-box;overflow:visible !important}
.board-page-wrap--kanban{height:100%;min-height:0;padding:0 6px 10px;display:flex;flex-direction:column;gap:12px;min-width:0;max-width:100%;width:100%;overflow:visible !important}
.board-filter-card.board-filter-card--tight{max-width:100%;margin:0 0 12px 0 !important;overflow:visible !important;border-radius:18px !important;width:100%;box-sizing:border-box}
.board-filter-actions{margin-top:8px !important;gap:8px !important;margin-top:10px;justify-content:flex-start;flex-wrap:wrap;gap:10px}
.board-shell-controls--inline{display:inline-flex;align-items:center;gap:8px;margin-left:auto}
.board-shell-arrow{display:inline-flex !important;align-items:center;justify-content:center;width:38px;height:38px;border-radius:12px;border:1px solid #cbd5e1 !important;background:#0f172a !important;color:#fff !important;box-shadow:0 8px 20px rgba(15,23,42,.16);font-size:18px;line-height:1}
.board-shell-arrow:hover{background:#1e293b !important;color:#fff !important}
.kanban-board-shell{flex:1 1 auto;position:relative !important;min-width:0;padding-bottom:6px;overflow-x:auto !important;overflow-y:visible !important;width:100% !important;max-width:100% !important;-webkit-overflow-scrolling:touch;position:relative;width:100%;max-width:100%;height:var(--board-shell-h) !important;min-height:560px !important;overflow:auto !important;overscroll-behavior:contain;scrollbar-gutter:stable both-edges;padding:0 0 16px 0 !important;margin:0 !important;border-radius:20px;background:linear-gradient(180deg,#edf4fb 0%,#f8fbff 100%);border:1px solid #dbe5f0;box-sizing:border-box}
.kanban-board-shell::-webkit-scrollbar{width:14px;height:14px}
.kanban-board-shell::-webkit-scrollbar-track{background:#e5edf6;border-radius:999px}
.kanban-board-shell::-webkit-scrollbar-thumb{background:#64748b;border-radius:999px;border:3px solid #e5edf6}
.dt-kanban{grid-template-columns:repeat(6,minmax(250px,1fr));position:relative;z-index:1;padding-bottom:8px;grid-auto-flow:column;grid-auto-columns:minmax(320px, 360px);flex-direction:row !important;box-sizing:border-box !important;scroll-padding-left:2px;overflow-x:auto !important;overflow-y:hidden !important;scrollbar-gutter:stable both-edges;scroll-snap-type:none !important;align-items:stretch !important;gap:12px !important;min-width:max-content !important;width:max-content !important;padding:10px !important;overflow:visible !important;display:flex !important;align-items:stretch;gap:14px;min-width:max-content;padding:10px 12px 20px}
.dt-col{gap:10px;background:linear-gradient(180deg,#f8fbff,#f1f6fb);border:1px solid #dbe5f0;border-radius:18px;padding:10px;box-shadow:0 12px 30px rgba(15,23,42,.05);scroll-margin-inline:14px;flex-direction:column !important;height:auto !important;max-height:none !important;overflow:visible !important;display:flex !important;flex-direction:column;align-self:stretch;flex:0 0 270px !important;min-width:270px !important;max-width:270px !important;min-height:calc(var(--board-shell-h) - 24px) !important}
.dt-col-head,.kanban-head{display:flex;align-items:center;justify-content:space-between;gap:8px;background:linear-gradient(180deg,#f8fbff 0%,#f8fbff 75%,rgba(248,251,255,.96) 100%) !important;border:1px solid #dbe5f0;border-radius:14px;padding:10px 12px !important;margin-bottom:8px;backdrop-filter:blur(8px);box-shadow:0 8px 20px rgba(15,23,42,.04);position:sticky !important;top:0 !important;z-index:40 !important;flex:0 0 auto}
.dt-drop{height:100%;scroll-padding-top:72px;padding-top:0 !important;padding:0 4px 2px 0 !important;box-sizing:border-box !important;display:flex !important;flex-direction:column !important;flex-wrap:nowrap !important;align-items:stretch !important;justify-content:flex-start !important;gap:8px !important;flex:1 1 auto !important;overflow-y:auto !important;overflow-x:hidden !important;padding-right:2px !important;flex:1 1 auto;display:flex;flex-direction:column;gap:10px;min-height:calc(var(--board-shell-h) - 92px) !important;padding-bottom:26px !important}
.kanban-empty{text-align:center;padding:14px 10px !important;font-size:12px !important;border:1px dashed #cfdae6;border-radius:14px;background:#ffffff80;color:#64748b;min-height:140px;display:flex;align-items:center;justify-content:center}
.dt-card{position:relative;box-shadow:0 10px 24px rgba(15,23,42,.05);display:flex !important;flex-direction:column !important;align-self:stretch !important;width:100% !important;max-width:100% !important;margin:0 !important;padding:8px !important;border-radius:14px !important;gap:5px !important;min-height:auto !important;overflow:hidden !important;width:100%;max-width:100%;box-sizing:border-box;flex:0 0 auto}
body.board-page-mode .main.board-main-lock > .flash{flex:0 0 auto}
body.board-page-mode .kanban-board-shell::-webkit-scrollbar{height:12px;width:12px}
body.board-page-mode .kanban-board-shell::-webkit-scrollbar-thumb{background:#94a3b8;border-radius:999px;border:2px solid #eaf0f6}
body.board-page-mode .kanban-board-shell::-webkit-scrollbar-track{background:#eaf0f6;border-radius:999px}
body.board-page-mode .dt-kanban{display:grid !important;grid-auto-flow:column;grid-auto-columns:minmax(300px, 340px);align-items:stretch !important;gap:14px !important;min-height:100%;padding:2px 6px 8px 2px !important;overflow:visible !important}
body.board-page-mode .kanban-col, body.board-page-mode .dt-col{display:flex !important;flex-direction:column !important;min-width:300px !important;max-width:340px !important;height:100% !important;min-height:0 !important;background:#eef4fa !important;border:1px solid #d8e2ee !important;border-radius:18px !important;padding:12px !important;overflow:hidden !important}
body.board-page-mode .dt-col-head{position:sticky !important;top:0 !important;z-index:8 !important;flex:0 0 auto;margin-bottom:10px !important;background:#f8fbff !important;border:1px solid #d9e5f2 !important;border-radius:14px !important;padding:10px 12px !important;box-shadow:0 6px 18px rgba(15,23,42,.06) !important}
body.board-page-mode .dt-drop{flex:1 1 auto;min-height:0 !important;height:auto !important;overflow-y:auto !important;overflow-x:hidden !important;display:flex;flex-direction:column;gap:12px;padding:2px 2px 64px 2px;overscroll-behavior:contain;scrollbar-width:thin}
body.board-page-mode .dt-drop::-webkit-scrollbar{width:10px}
body.board-page-mode .dt-drop::-webkit-scrollbar-thumb{background:#c7d4e2;border-radius:999px;border:2px solid #eef4fa}
body.board-page-mode .dt-drop::-webkit-scrollbar-track{background:transparent}
body.board-page-mode .dt-card{width:100%;max-width:100%}
body.board-page-mode .board-shell-controls{margin-left:auto}
body.board-page-mode, body.board-page-mode .app-shell{height:100dvh !important;min-height:100dvh !important;overflow:hidden !important}
body.board-page-mode .board-filter-card{margin-bottom:0 !important;flex:0 0 auto !important}
body.board-page-mode .board-shell-controls--inline{display:inline-flex !important;align-items:center !important;gap:8px !important;margin-left:10px !important}
body.board-page-mode .dt-kanban, body.board-page-mode .kanban-board{height:100% !important;min-height:100% !important;align-items:stretch !important}
body.board-page-mode .dt-drop > .kanban-empty, body.board-page-mode .kanban-drop > .kanban-empty{min-height:160px !important}
body.board-page-mode .dt-col, body.board-page-mode .kanban-col{max-height:100% !important;display:flex !important;flex-direction:column !important;overflow:hidden !important;min-height:0 !important;height:100% !important}
body.board-page-mode .dt-col-head, body.board-page-mode .kanban-head{flex:0 0 auto !important;position:sticky !important;top:0 !important;z-index:80 !important}
body.board-page-mode .board-shell-arrow{width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;background:#ffffff !important;color:#1d4ed8 !important;border:1px solid #bfdbfe !important;box-shadow:0 8px 18px rgba(29,78,216,.12) !important;font-weight:800 !important}
body.board-page-mode .board-shell-arrow:hover{background:#eff6ff !important;color:#1e40af !important;border-color:#93c5fd !important}
body.board-page-mode .board-shell-arrow svg, body.board-page-mode .board-shell-arrow span{color:#1d4ed8 !important;fill:#1d4ed8 !important}
body.board-page-mode .main.board-main-lock{height:100dvh !important;min-height:100dvh !important;display:flex !important;flex-direction:column !important;overflow:hidden !important}
body.board-page-mode .board-page-wrap--kanban{display:flex;flex-direction:column;gap:12px;width:100%;max-width:none;flex:1 1 auto !important;padding:0 12px 12px !important;box-sizing:border-box !important;height:100% !important;max-height:100% !important;min-height:0 !important;overflow:hidden !important}
body.board-page-mode .kanban-board-shell{position:relative;width:100%;overscroll-behavior:contain;scrollbar-gutter:stable both-edges;border-radius:18px;flex:1 1 auto !important;overscroll-behavior-x:contain !important;overscroll-behavior-y:none !important;touch-action:pan-x !important;padding:0 0 12px 0 !important;height:var(--board-shell-dynamic-h, calc(100dvh - 260px)) !important;min-height:420px !important;max-height:100% !important;overflow-x:auto !important;overflow-y:hidden !important}
body.board-page-mode .dt-drop, body.board-page-mode .kanban-drop{padding:2px 2px 140px 2px !important;scrollbar-gutter:stable !important;flex:1 1 auto !important;min-height:0 !important;height:auto !important;max-height:none !important;overflow-y:auto !important;overflow-x:hidden !important;overscroll-behavior:contain !important;overscroll-behavior-y:contain !important;overscroll-behavior-x:none !important;padding-bottom:56px !important}
.pm-layout{align-items:start}
.pm-panel{overflow:hidden}
.pm-form{gap:14px}
.pm-field{display:flex;flex-direction:column;gap:8px;width:100%;font-weight:600;color:#0f172a}
.pm-field > span{font-size:.92rem;letter-spacing:.01em}
.pm-field input, .pm-field select, .pm-field textarea{width:100%;max-width:100%;box-sizing:border-box;border:1px solid #d7dfeb;border-radius:14px;padding:12px 14px;background:linear-gradient(180deg,#fff 0%,#f8fbff 100%);min-height:48px;outline:none;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}
.pm-field textarea{min-height:132px;resize:vertical}
.pm-field input:focus,.pm-field select:focus,.pm-field textarea:focus{border-color:#2563eb;box-shadow:0 0 0 4px rgba(37,99,235,.10);background:#fff}

body.page-requester-create .main{
  padding:clamp(10px,1.4vw,20px) !important;
  background:
    radial-gradient(circle at 100% 0,rgba(37,99,235,.055),transparent 30%),
    linear-gradient(180deg,#f6f9fd 0%,#f8fafc 46%,#f6f8fb 100%);
}
body.page-requester-create .topbar{
  width:min(980px,100%);
  margin-left:auto;
  margin-right:auto;
}
.requester-form{
  width:min(980px,100%) !important;
  margin:0 auto 20px !important;
  padding:0 !important;
  border:1px solid rgba(203,213,225,.95) !important;
  border-radius:24px !important;
  background:#fff !important;
  box-shadow:0 16px 40px rgba(15,23,42,.075),0 2px 8px rgba(15,23,42,.028) !important;
  overflow:hidden !important;
  box-sizing:border-box !important;
}
.requester-form__header{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:10px;
  padding:17px 22px 13px;
  border-bottom:1px solid #e6edf5;
  background:
    radial-gradient(circle at top right,rgba(37,99,235,.08),transparent 32%),
    linear-gradient(180deg,#fff 0%,#fafcff 100%);
}
.requester-form__title-block{min-width:0;max-width:760px}
.requester-form__title-block h2{
  margin:0;
  color:#0f172a;
  font-size:clamp(21px,1.8vw,26px);
  line-height:1.08;
  font-weight:900;
  letter-spacing:-.035em;
}

.requester-form__body{
  padding:15px 22px 0 !important;
  background:linear-gradient(180deg,#fff 0%,#fcfdff 100%);
}
.requester-form .requester-create-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:10px 12px !important;
  align-items:start !important;
  max-width:920px;
  margin:0 auto;
}
.requester-form .full,
.requester-form .request-scope-picker,
.requester-form .request-property-details-card{
  grid-column:1/-1 !important;
}
.requester-form .request-field-card,
.requester-form .request-scope-picker,
.requester-form .request-property-details-card{
  min-width:0;
  box-sizing:border-box;
}
.requester-form .request-field-card{
  display:flex;
  flex-direction:column;
  gap:6px;
  padding:11px;
  border:1px solid #e1e9f3;
  border-radius:14px;
  background:linear-gradient(180deg,#ffffff 0%,#fbfdff 100%);
  box-shadow:0 6px 18px rgba(15,23,42,.03);
}
.requester-form .request-category-field{grid-column:auto !important}
.requester-form form.is-general-scope .request-property-field{grid-column:auto !important}
.requester-form .request-field-card > label,
.requester-form .request-scope-picker > label{
  display:flex;
  align-items:center;
  gap:4px;
  margin:0;
  color:#172033;
  font-size:12.5px;
  font-weight:900;
  line-height:1.25;
}
.requester-form .request-field-card > label span,
.requester-form .request-scope-picker > label span{color:#dc2626}
.requester-form .request-field-card input,
.requester-form .request-field-card select,
.requester-form .request-field-card textarea{
  width:100% !important;
  max-width:100% !important;
  box-sizing:border-box !important;
  border:1px solid #d5deeb !important;
  border-radius:15px !important;
  background:#fff !important;
  color:#0f172a !important;
  font-size:13px;
  box-shadow:0 1px 2px rgba(15,23,42,.04),inset 0 1px 0 rgba(255,255,255,.7);
  transition:border-color .15s ease,box-shadow .15s ease,background-color .15s ease;
}
.requester-form .request-field-card select{min-height:42px;padding:0 36px 0 12px !important}
.requester-form .request-field-card input{min-height:42px;padding:0 12px !important}
.requester-form .request-field-card textarea{min-height:104px;padding:11px 13px !important;line-height:1.5;resize:vertical}
.requester-form .request-field-card input:hover,
.requester-form .request-field-card select:hover,
.requester-form .request-field-card textarea:hover{border-color:#bfdbfe !important;background:#fbfdff !important}
.requester-form .request-field-card input:focus,
.requester-form .request-field-card select:focus,
.requester-form .request-field-card textarea:focus{border-color:#2563eb !important;box-shadow:0 0 0 4px rgba(37,99,235,.10),0 1px 2px rgba(15,23,42,.04) !important;background:#fff !important}
.requester-form .field-help{margin:0;color:#64748b;font-size:12px;line-height:1.45}
.requester-form .field-error{margin-top:2px;color:#b42318;font-size:12px;font-weight:800;line-height:1.4}
.requester-form .request-scope-picker{
  position:relative;
  padding:10px;
  border:1px solid #d8e6f8;
  border-radius:16px;
  background:linear-gradient(180deg,#f8fbff 0%,#f2f7ff 100%);
  box-shadow:0 8px 22px rgba(37,99,235,.045);
}
.requester-form .request-scope-native{
  position:absolute;
  inline-size:1px;
  block-size:1px;
  opacity:0;
  pointer-events:none;
  clip:rect(0 0 0 0);
  clip-path:inset(50%);
}
.requester-form .scope-options{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  margin-top:8px;
}
.requester-form .scope-option{
  position:relative;
  display:grid;
  grid-template-columns:32px minmax(0,1fr) 22px;
  align-items:flex-start;
  gap:9px;
  width:100%;
  min-height:50px;
  padding:9px 11px;
  border:1px solid #dbe4ef;
  border-radius:16px;
  background:#fff;
  color:#0f172a;
  text-align:left;
  cursor:pointer;
  box-shadow:0 1px 2px rgba(15,23,42,.035);
  transition:border-color .15s ease,background-color .15s ease,box-shadow .15s ease,transform .15s ease;
}
.requester-form .scope-option:hover{border-color:#bfdbfe;background:#f8fbff;transform:translateY(-1px)}
.requester-form .scope-option:focus-visible{outline:none;border-color:#2563eb;box-shadow:0 0 0 4px rgba(37,99,235,.12)}
.requester-form .scope-option.is-active,
.requester-form .scope-option[aria-checked="true"]{
  border-color:#2563eb;
  background:linear-gradient(180deg,#eff6ff 0%,#f8fbff 100%);
  box-shadow:0 0 0 3px rgba(37,99,235,.085),0 10px 24px rgba(37,99,235,.075);
}
.requester-form .scope-icon{
  display:grid;
  place-items:center;
  width:32px;
  height:32px;
  border-radius:11px;
  background:#eaf2ff;
  font-size:15px;
  line-height:1;
}
.requester-form .scope-copy strong{display:block;color:#0f172a;font-size:12.8px;font-weight:900;line-height:1.22}
.requester-form .scope-check{
  display:grid;
  place-items:center;
  width:20px;
  height:20px;
  border-radius:999px;
  background:#2563eb;
  color:#fff;
  font-size:14px;
  font-weight:900;
  opacity:0;
  transform:scale(.86);
  transition:opacity .15s ease,transform .15s ease;
}
.requester-form .scope-option.is-active .scope-check,
.requester-form .scope-option[aria-checked="true"] .scope-check{opacity:1;transform:scale(1)}
.requester-form .listing-field.is-hidden{display:none !important}
.requester-form .request-file-field{position:relative}
.requester-form .request-file-input{
  position:absolute;
  inline-size:1px;
  block-size:1px;
  opacity:0;
  pointer-events:none;
  clip:rect(0 0 0 0);
  clip-path:inset(50%);
}
.requester-form .request-file-dropzone{
  display:grid;
  grid-template-columns:40px minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
  width:100%;
  min-height:78px;
  padding:12px;
  border:2px dashed #bfdbfe;
  border-radius:18px;
  background:linear-gradient(180deg,#f8fbff 0%,#eef6ff 100%);
  cursor:pointer;
  box-sizing:border-box;
  transition:border-color .15s ease,background .15s ease,box-shadow .15s ease,transform .15s ease;
}
.requester-form .request-file-dropzone:hover,
.requester-form .request-file-dropzone.is-drag,
.requester-form .request-file-dropzone.has-files{border-color:#2563eb;background:#eff6ff;box-shadow:0 0 0 4px rgba(37,99,235,.08)}
.requester-form .request-file-dropzone.is-drag{transform:translateY(-1px)}
.requester-form .request-file-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:13px;background:#dbeafe;font-size:18px}
.requester-form .request-file-copy strong{display:block;color:#0f172a;font-size:13px;font-weight:900;line-height:1.25}
.requester-form .request-file-copy small{display:block;margin-top:3px;color:#64748b;font-size:11.5px;line-height:1.35}
.requester-form .request-file-button{display:inline-flex;width:max-content;margin-top:6px;padding:5px 10px;border-radius:999px;border:1px solid #bfdbfe;background:#fff;color:#1d4ed8;font-size:11.5px;font-weight:900}
.requester-form .request-file-status{justify-self:end;align-self:center;max-width:220px;padding:7px 10px;border-radius:999px;background:#fff;border:1px solid #dbe4ef;color:#64748b;font-size:12px;font-weight:850;text-align:center}
.requester-form .request-file-dropzone.has-files .request-file-status{background:#dbeafe;border-color:#bfdbfe;color:#1d4ed8}
.requester-form .request-file-list{margin-top:4px}
.requester-form .request-file-list:empty{display:none}
.requester-form .request-file-list .fileItem{border-color:#dbe3ec;background:#fff;border-radius:14px;box-shadow:0 1px 2px rgba(15,23,42,.035)}
.requester-form .request-property-details-card{
  display:block;
  padding:12px;
  border:1px solid #dce6f2;
  border-radius:18px;
  background:linear-gradient(180deg,#fff 0%,#f8fbff 100%);
  box-shadow:0 7px 20px rgba(15,23,42,.035);
}
.requester-form .property-details-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:9px}
.requester-form .property-details-head strong{display:block;color:#0f172a;font-size:14px;font-weight:900}
.requester-form .property-meta-grid{display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:8px}
.requester-form .property-meta-item{padding:9px 10px;border:1px solid #e2e8f0;border-radius:13px;background:#fff;min-width:0;box-shadow:0 1px 2px rgba(15,23,42,.025)}
.requester-form .property-meta-item .metaLabel{font-size:11px;font-weight:900;letter-spacing:.055em;text-transform:uppercase;color:#64748b}
.requester-form .property-meta-item .metaValue{margin-top:3px;color:#0f172a;font-size:13px;font-weight:900;overflow-wrap:anywhere}
.requester-form .request-action-bar{
  display:flex;
  justify-content:flex-end;
  align-items:center;
  gap:10px;
  margin:15px -22px 0;
  padding:12px 22px;
  background:linear-gradient(180deg,rgba(255,255,255,.92),#fff);
  border-top:1px solid #e2e8f0;
}
.requester-form .request-action-bar .btn{min-width:170px;min-height:42px;justify-content:center;border-radius:14px;font-weight:900}
@media (max-width:900px){
  .requester-form{border-radius:24px !important}
  .requester-form__header{padding:16px 18px 12px}
  .requester-form__body{padding:14px 18px 0 !important}
  .requester-form .requester-create-grid{grid-template-columns:1fr !important}
  .requester-form .request-category-field,.requester-form form.is-general-scope .request-property-field{grid-column:1/-1 !important}
  .requester-form .request-file-dropzone{grid-template-columns:44px minmax(0,1fr)}
  .requester-form .request-file-status{grid-column:1/-1;justify-self:start;max-width:100%}
  .requester-form .property-meta-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
  .requester-form .request-action-bar{margin-left:-18px;margin-right:-18px;padding-left:18px;padding-right:18px}
}
@media (max-width:760px){
  body.page-requester-create .main{padding:10px !important}
  body.page-requester-create .topbar{width:100%}
  .requester-form{border-radius:22px !important;margin-bottom:18px !important}
  .requester-form__header{padding:16px 16px 12px}
  .requester-form__body{padding:14px 16px 0 !important}
  .requester-form .requester-create-grid{grid-template-columns:1fr !important;gap:12px !important}
  .requester-form .scope-options{grid-template-columns:1fr}
  .requester-form .scope-option{min-height:auto;grid-template-columns:32px minmax(0,1fr) 22px;padding:9px 11px}
  .requester-form .scope-icon{width:32px;height:32px;border-radius:11px}
  .requester-form .request-file-dropzone{grid-template-columns:1fr;text-align:center;justify-items:center;min-height:108px}
  .requester-form .request-file-button{margin-left:auto;margin-right:auto}
  .requester-form .request-file-status{justify-self:center}
  .requester-form .property-meta-grid{grid-template-columns:1fr !important}
  .requester-form .property-details-head{flex-direction:column}
  .requester-form .request-action-bar{justify-content:stretch;margin:14px -16px 0;padding:14px 16px}
  .requester-form .request-action-bar .btn{width:100%;min-width:0}
  .requester-form .request-field-card,.requester-form .request-scope-picker,.requester-form .request-property-details-card{border-radius:18px;padding:14px}
}

.my-requests-filter-grid + .filter-actions{margin-top:14px}
.request-filters-panel,.mini-stats-row{width:100%;max-width:100%}
.analytics-summary-shell{margin:0 0 16px;padding:14px;border:1px solid #d9e3ee;border-radius:24px;background:linear-gradient(180deg,#f8fbff 0%,#eef5ff 100%);box-shadow:0 14px 34px rgba(15,23,42,.05)}
.analytics-summary-shell .analytics-mini-stats{margin:0;padding:0}
.analytics-summary-shell .analytics-mini-stats .mini-stat{background:linear-gradient(180deg,#ffffff,#f7fbff);border:1px solid #d9e6f3;box-shadow:0 8px 24px rgba(15,23,42,.04)}
.automation-rules-layout{align-items:start}
.automation-rule-form .field-box--check{display:flex;align-items:center;gap:10px;min-height:100%;justify-content:space-between}
.automation-rule-form .field-box--check-switch{padding-right:14px}
.dt-switch{position:relative;display:inline-flex;align-items:center;cursor:pointer;line-height:1}
.dt-switch input{position:absolute;opacity:0;width:0;height:0}
.dt-switch-ui{width:50px;height:28px;border-radius:999px;background:#d7deea;border:1px solid #c8d3e2;position:relative;transition:.2s ease;box-shadow:inset 0 1px 2px rgba(15,23,42,.08)}
.dt-switch-ui::after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 3px 10px rgba(15,23,42,.18);transition:.2s ease}
.dt-switch input:checked + .dt-switch-ui{background:#22c55e;border-color:#22c55e}
.dt-switch input:checked + .dt-switch-ui::after{transform:translateX(22px)}
.automation-rule-list{gap:12px}
.automation-rule-item{border:1px solid var(--line);border-radius:18px;padding:14px 16px;background:linear-gradient(180deg,#fff,#fbfdff)}
.location-card-media.has-photo::before{display:none}
.location-card-media__overlay{position:relative;z-index:1;display:flex;flex-direction:column;gap:8px;align-items:flex-start}
.location-card-media__overlay strong{color:#fff;background:rgba(15,23,42,.38);backdrop-filter:blur(4px)}
.location-card-media__tag{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;background:rgba(255,255,255,.88);color:#0f172a;font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.location-links-row--catalog{margin-bottom:10px}
.location-card-media.has-photo{background-size:cover;background-position:center;position:relative;background-repeat:no-repeat;overflow:hidden;background-image:none}
.location-card-media.has-photo[style]{background-size:cover !important;background-position:center !important;image-rendering:auto}
.location-card .location-card-actions{flex-wrap:wrap;justify-content:flex-end}
.location-quick-open{min-width:150px}
.location-action-card{width:min(560px,calc(100vw - 24px));padding:18px 18px 16px;border-radius:24px;background:#fff;border:1px solid var(--line);box-shadow:0 28px 80px rgba(15,23,42,.26)}
.location-action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px}
.location-action-option{display:flex;flex-direction:column;gap:8px;text-decoration:none;color:#0f172a;min-height:138px;justify-content:flex-start;border-radius:18px;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease;background:linear-gradient(180deg,#fff,#f8fbff)}
.location-action-option:hover{transform:translateY(-1px);border-color:#93c5fd;box-shadow:0 12px 28px rgba(15,23,42,.08)}
.location-action-option--primary{background:linear-gradient(180deg,#eff6ff,#dbeafe)}
.automation-rule-form input[list]{width:100%}
.automation-rule-form datalist{display:none}
.board-location-field{position:relative}
.board-location-suggest,.board-location-suggest__item{appearance:none;border:0;background:#fff;text-align:left;padding:10px 12px;border-radius:12px;font:inherit;color:#0f172a;cursor:pointer;transition:background .16s ease,color .16s ease,transform .16s ease}
.board-location-suggest__item:hover,.board-location-suggest__item:focus{background:#eff6ff;color:#0b5cab;outline:none;transform:translateX(1px)}
.js-location-autocomplete{position:relative}
.location-suggest{position:absolute;left:0;right:0;top:calc(100% + 8px);z-index:40;display:flex;flex-direction:column;gap:6px;padding:8px;border:1px solid rgba(148,163,184,.28);border-radius:16px;background:#fff;box-shadow:0 18px 40px rgba(15,23,42,.14);max-height:280px;overflow:auto}
.location-suggest__item:hover,.location-suggest__item:focus{background:#eff6ff;color:#0b5cab;outline:none;transform:translateX(1px)}
.field-box--location.is-open input{border-bottom-left-radius:10px;border-bottom-right-radius:10px}
.board-location-field .location-suggest{top:calc(100% + 8px)}
.location-suggest,.board-location-suggest{max-height:220px;overflow:auto;overscroll-behavior:contain}
.location-suggest__item{appearance:none;border:0;background:#fff;text-align:left;padding:10px 12px;border-radius:12px;font:inherit;color:#0f172a;cursor:pointer;transition:background .16s ease,color .16s ease,transform .16s ease;display:flex;flex-direction:column;align-items:flex-start;gap:2px;line-height:1.25}
.location-suggest__primary{font-weight:700;color:#0f172a}
.location-suggest__secondary{font-size:12px;color:#64748b}
.automation-rule-form .compact-grid{align-items:start}
.automation-rule-form .field-box--wide{grid-column:1 / -1}
.automation-rule-form .field-box--action{background:linear-gradient(180deg,#f8fbff,#f1f7ff);border-color:rgba(96,165,250,.35)}
.automation-rule-form .field-box--action .muted.small{margin-top:8px}
.automation-rule-form .field-box--toggle-row{display:flex;align-items:center;justify-content:space-between;gap:14px}
.automation-rule-item .action-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
body.login-page--serious, body.login-page--serious *{touch-action:manipulation}
body.login-page--serious{overscroll-behavior:none;-webkit-text-size-adjust:100%;text-size-adjust:100%;overflow:hidden}
.login-shell--serious{gap:0;padding:0;display:grid;grid-template-columns:1.1fr .9fr;min-height:100vh;width:100%;max-width:100%;box-sizing:border-box}
.login-card--serious{align-self:center;margin:0 auto;max-width:460px;width:100%;border:1px solid #e2e8f0;box-shadow:0 24px 60px rgba(15,23,42,.12);border-radius:26px;display:flex;flex-direction:column;justify-content:center;padding:52px;background:linear-gradient(180deg,#ffffff,#f7f9fc);overflow:hidden}
.login-card--serious .flash{width:100%;box-sizing:border-box}
.login-form, .login-form label{min-width:0}
.login-form input, .login-form .login-submit{width:100%;max-width:100%;box-sizing:border-box;font-size:16px !important}
.brand--login-stack{align-items:center !important;gap:14px !important}
.brand-login-copy{display:flex;flex-direction:column;align-items:flex-start;gap:2px;min-width:0}
.brand-login-line{display:block;font-size:1.1rem;line-height:1.02;font-weight:800;color:#24314f;letter-spacing:-.02em}
.brand-login-line--sub{font-size:1.02rem;color:#1f3a68}
.brand-login-divider{display:block;font-size:.9rem;line-height:1;color:#7c8aa5;font-weight:700}
html,body.login-page--cinematic{min-height:100%}
body.login-page--cinematic{position:relative;min-height:100dvh;overflow:hidden;background:#dfe6ef !important;touch-action:manipulation;-webkit-text-size-adjust:100%}
.login-bg-media{position:fixed;inset:0;z-index:0;overflow:hidden;background:#dfe6ef}
.login-bg-media video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(1.02) contrast(1.02)}
.login-bg-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(241,245,249,.72),rgba(226,232,240,.82));backdrop-filter:saturate(112%) blur(2px)}
.login-bg-glow{position:absolute;inset:auto auto 8% 50%;width:min(58vw,740px);height:min(58vw,740px);transform:translateX(-50%);background:radial-gradient(circle,rgba(59,130,246,.16),rgba(59,130,246,0) 68%);pointer-events:none}
.login-shell--cinematic{position:relative;z-index:1;min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:clamp(18px,4vw,42px)}
.login-card--cinematic{width:min(100%,540px);padding:24px 24px 22px;border-radius:38px;border:1px solid rgba(255,255,255,.55);background:linear-gradient(180deg,rgba(255,255,255,.88),rgba(255,255,255,.8));box-shadow:0 24px 60px rgba(15,23,42,.14),0 2px 0 rgba(255,255,255,.35) inset;backdrop-filter:blur(14px)}
.login-card__top{display:flex;align-items:center;gap:14px;margin-bottom:16px}
.brand-login-logo--hero,.brandmark--login-hero{width:68px !important;height:68px !important;border-radius:18px !important;box-shadow:0 14px 30px rgba(59,130,246,.18);flex:0 0 auto}
.brand-login-copy--stacked{display:flex;flex-direction:column;gap:2px;min-width:0}
.brand-login-copy--stacked .brand-login-line{display:block;font-size:clamp(1.35rem,3.3vw,1.9rem);line-height:1.03;letter-spacing:-.03em;color:#0f172a}
.brand-login-copy--stacked .brand-login-line--sub{color:#2563eb}
.login-form--iconic{display:flex;flex-direction:column;gap:14px;margin-top:8px}
.login-field{position:relative;display:flex;align-items:center;border:1px solid #d7e2ef;border-radius:18px;background:rgba(255,255,255,.96);box-shadow:0 1px 0 rgba(255,255,255,.55) inset,0 8px 22px rgba(15,23,42,.04);transition:border-color .18s ease, box-shadow .18s ease;overflow:hidden}
.login-field:focus-within{border-color:#60a5fa;box-shadow:0 0 0 4px rgba(59,130,246,.12),0 14px 30px rgba(37,99,235,.09)}
.login-field__icon{position:absolute;left:18px;top:50%;transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;color:#64748b;pointer-events:none;z-index:1}
.login-field__icon svg{width:20px;height:20px}
.login-form--iconic input{width:100%;min-height:56px;padding:0 16px 0 50px;border:0 !important;background:transparent !important;border-radius:18px !important;color:#0f172a;font-size:16px !important;box-sizing:border-box;outline:none;box-shadow:none !important;position:relative;z-index:2}
.login-form--iconic input::placeholder{color:#64748b;font-weight:500}
.login-field--password input{padding-right:16px}
.login-submit--cinematic{min-height:56px !important;border-radius:18px !important;font-size:1.08rem !important;font-weight:800 !important;letter-spacing:-.02em;background:linear-gradient(90deg,#2563eb 0%,#38bdf8 54%,#4cc2ff 100%) !important;border:0 !important;box-shadow:0 18px 36px rgba(37,99,235,.24),0 0 0 1px rgba(255,255,255,.14) inset}
.login-submit--cinematic:hover{transform:translateY(-1px)}
.login-submit--cinematic:active{transform:translateY(0)}
.calendar-item-location{font-size:10.5px;color:#475569}
.calendar-item-listing{font-size:10px;color:#64748b}
.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));flex:1;align-content:start;grid-auto-rows:minmax(0,1fr);min-height:0;height:calc(100dvh - 250px);overflow:hidden;gap:8px}
.calendar-item strong{-webkit-line-clamp:1;letter-spacing:.01em;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px !important;line-height:1.15 !important}
.calendar-item-brief,.calendar-item-location,.calendar-item-listing{display:block !important;min-width:0 !important;max-width:100% !important;overflow:hidden !important;text-overflow:ellipsis !important;white-space:nowrap !important}
.calendar-item{flex-direction:column;gap:4px;background:linear-gradient(180deg,#fff,#f8fbff);border:1px solid #dbe6f2;box-shadow:0 8px 18px rgba(15,23,42,.05);text-decoration:none;color:inherit;min-height:0 !important;align-self:stretch !important;display:block !important;width:100% !important;max-width:100% !important;min-width:0 !important;padding:0 !important;border-radius:12px !important;overflow:hidden !important;box-sizing:border-box !important}
.calendar-item-brief{color:#0f172a;-webkit-box-orient:vertical !important;-webkit-line-clamp:2 !important;min-height:24px !important;display:block !important;white-space:nowrap !important;overflow:hidden !important;text-overflow:ellipsis !important;font-size:10.5px !important;line-height:1.15 !important}
.due-date-field > span{display:block !important}
.wo-next-copy{min-width:0;max-width:820px}
.wo-next-copy h3{margin:4px 0 6px;font-size:1.08rem;line-height:1.25;color:var(--ink)}
.wo-next-copy p{margin:0;color:var(--muted);line-height:1.5;font-weight:600}
.wo-next-actions .btn{min-height:42px;white-space:nowrap}
.wo-section-head--summary{align-items:flex-start}
.wo-section-head--summary h3,.wo-action-zone-head h3{margin:0 0 4px}
.wo-section-head--summary p,.wo-action-zone-head p{margin:0}
.wo-action-zone .wo-edit-form{margin-top:0}
.wo-action-zone .quick-grid{align-items:center}
.wo-readonly-field span{font-weight:800;color:#111827}
.wo-readonly-field strong{font-size:.98rem;color:#111827}
.wo-action-zone .wo-info-grid select[disabled], .wo-action-zone .wo-info-grid input[disabled]{background:#f7f9fc;color:#64748b}
.geo-inline-status.is-loading{background:#f8fafc;color:#475569;border-color:#e2e8f0}
.geo-inline-status.is-ok{background:#ecfdf5;color:#047857;border-color:#bbf7d0}
.geo-inline-status.is-warn{background:#fff7ed;color:#c2410c;border-color:#fed7aa}
.activity-subpanel{display:none}
.activity-subpanel.active{display:block}
.activity-subpanel .geo-history-card{margin-top:0}
.browser-access-card{border:1px solid var(--line);border-radius:18px;background:rgba(248,250,252,.78);padding:14px}
.browser-access-list{display:grid;gap:10px;margin-top:12px}
.browser-access-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:10px;border:1px solid rgba(148,163,184,.28);border-radius:14px;background:#fff}
.browser-access-note{margin-top:10px}
.wo-shell{display:flex;flex-direction:column;gap:1rem}
.wo-shell .panel{border-radius:18px;border:1px solid rgba(15,23,42,.08);box-shadow:0 14px 34px rgba(15,23,42,.055)}
.wo-hero.panel>*{position:relative;z-index:1}
.wo-hero h1,.wo-hero .ticket-title,.wo-hero .ticket-code{letter-spacing:-.035em}
.wo-toolbar.panel{padding:.95rem 1.1rem}
.wo-next-panel .eyebrow{color:#1d4ed8;font-size:.68rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;margin-bottom:.18rem}
.wo-next-actions{justify-content:flex-end;display:flex;gap:.55rem;align-items:center;flex-wrap:wrap}
.wo-tabs{flex-wrap:wrap;margin-bottom:12px !important;display:flex;gap:.25rem;align-items:center;background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:16px;padding:.35rem;box-shadow:0 10px 28px rgba(15,23,42,.045);overflow-x:auto}
.wo-tab{cursor:pointer;border:0;background:transparent;border-radius:12px;padding:.68rem .9rem;color:#64748b;font-weight:750;white-space:nowrap;transition:background .14s ease,color .14s ease,box-shadow .14s ease}
.wo-tab:hover{background:#f1f5f9;color:#0f172a}
.wo-tab.active{background:#eff6ff !important;color:#1d4ed8 !important;box-shadow:inset 0 0 0 1px #bfdbfe}
.wo-tab:not(.active) .wo-tab-count{background:#e2e8f0;color:#64748b}
.wo-section-head h3,.activity-clean-head h3,.compact-comments-head h3{font-size:1rem;font-weight:850;letter-spacing:-.02em;color:#0f172a}
.wo-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:.7rem}
.wo-info-grid>div,.wo-info-grid>label,.ticket-relation-grid>div{background:#f8fafc;border:1px solid rgba(15,23,42,.07);border-radius:14px;padding:.72rem .8rem}
.wo-info-grid>label{display:flex;flex-direction:column;gap:6px;font-weight:600}
.wo-info-grid strong,.wo-info-grid label>span,.ticket-relation-grid strong{display:block;margin-bottom:.25rem;color:#64748b;font-size:.66rem;font-weight:850;text-transform:uppercase;letter-spacing:.065em}
.wo-info-grid div div,.wo-info-grid select,.wo-info-grid input,.ticket-relation-grid div div{font-size:.88rem;color:#0f172a;font-weight:600}
.wo-info-grid select,.wo-info-grid input{width:100%;border:1px solid #cbd5e1;border-radius:11px;background:#fff;padding:.56rem .68rem;font-weight:550;box-sizing:border-box}
.wo-info-grid select:focus,.wo-info-grid input:focus,.compact-comment-textarea:focus{outline:0;border-color:#2563eb;box-shadow:0 0 0 3px rgba(37,99,235,.11)}
.wo-readonly-field{border:1px solid #d8e0ea !important;color:#4b5563;border-radius:16px;padding:12px 14px;min-height:76px;display:flex;flex-direction:column;justify-content:center;gap:5px;background:#f1f5f9 !important;border-style:dashed !important}
.wo-readonly-field small{font-weight:800;text-transform:uppercase;letter-spacing:.04em;display:inline-flex;margin-top:.25rem;color:#64748b;font-size:.7rem}
.wo-problem{background:#f8fafc;border:1px solid rgba(15,23,42,.07);border-left:4px solid #2563eb;border-radius:16px;padding:1rem 1.1rem;margin-top:1rem}
.wo-problem strong{display:block;color:#64748b;font-size:.68rem;font-weight:850;text-transform:uppercase;letter-spacing:.065em;margin-bottom:.45rem}
.wo-problem p{margin:0;color:#0f172a;line-height:1.65;font-size:.92rem}
.request-bridge{margin-top:1rem;background:#f8fafc;border:1px solid rgba(15,23,42,.07);border-radius:16px;padding:1rem}
.request-bridge>strong{display:block;color:#64748b;font-size:.68rem;font-weight:850;text-transform:uppercase;letter-spacing:.065em;margin-bottom:.55rem}
.wo-action-zone{padding:16px;margin-top:1rem;background:#f8fafc;border:1px solid rgba(15,23,42,.08);border-radius:18px;overflow:hidden}
.wo-action-zone-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding-bottom:12px;margin-bottom:14px;background:#fff;border-bottom:1px solid rgba(15,23,42,.07);padding:.9rem 1rem}
.wo-action-zone-head .eyebrow{display:block;color:#2563eb;font-size:.68rem;font-weight:850;text-transform:uppercase;letter-spacing:.07em;margin-bottom:.12rem}
.wo-action-zone-head h3{margin:0;color:#0f172a;font-size:1rem;font-weight:850}
.wo-edit-form{margin-top:14px;padding:1rem}
.quick-grid{grid-template-columns:repeat(3,minmax(0,1fr));display:flex !important;gap:.55rem;align-items:center;flex-wrap:wrap;padding-top:.85rem;margin-top:.85rem;border-top:1px solid rgba(15,23,42,.07)}
.files-upload-box,.comment-box-form{background:#f8fafc;border:1px solid rgba(15,23,42,.07);border-radius:16px;padding:1rem;margin-bottom:1rem}
.files-upload-box{display:grid;gap:12px}
.files-dropzone{display:flex;align-items:center;justify-content:space-between;gap:14px;cursor:pointer;border:2px dashed #bfdbfe !important;border-radius:16px !important;background:#eff6ff !important;padding:1.45rem !important;text-align:center;transition:background .14s ease,border-color .14s ease}
.files-dropzone:hover{background:#dbeafe !important;border-color:#2563eb !important}
.files-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:.8rem}
.file-card{display:block;border-radius:16px !important;border:1px solid rgba(15,23,42,.08) !important;box-shadow:0 10px 24px rgba(15,23,42,.04);overflow:hidden;background:#fff;transition:transform .14s ease,box-shadow .14s ease}
.file-card:hover{transform:translateY(-2px);box-shadow:0 18px 36px rgba(15,23,42,.08)}
.file-meta{display:grid;gap:4px;padding:.8rem !important}
.file-thumb img{width:100%;height:145px;object-fit:cover;display:block}
.activity-subtabs{flex-wrap:wrap;margin:0 0 14px;display:inline-flex;gap:.25rem;background:#f1f5f9;border:1px solid rgba(15,23,42,.07);border-radius:14px;padding:.25rem;margin-bottom:1rem}
.activity-subtab{cursor:pointer;border:0;background:transparent;border-radius:11px;padding:.58rem .8rem;color:#64748b;font-weight:800;white-space:nowrap}
.activity-subtab.active{border-color:#bfdbfe;background:#fff;color:#1d4ed8;box-shadow:0 6px 18px rgba(15,23,42,.06)}
.activity-feed,.compact-comments-list{gap:.65rem}
.activity-item,.compact-comment-item{border:1px solid rgba(15,23,42,.07) !important;border-radius:15px !important;background:#fff !important;padding:.85rem 1rem !important}
.activity-badge{display:inline-flex;align-items:center;gap:6px;white-space:nowrap !important;border:1px solid transparent !important;margin-right:0 !important;margin:0 !important;border-radius:999px !important;padding:.22rem .6rem !important;font-size:.7rem !important;font-weight:850 !important}
.activity-meta{margin-top:.28rem;color:#64748b;font-size:.76rem}
.activity-note-body{color:#0f172a !important;line-height:1.35 !important;margin-top:2px !important;margin-top:.4rem;background:#f8fafc;border:1px solid rgba(15,23,42,.06);border-radius:12px;padding:.5rem .65rem;color:#0f172a;font-size:.85rem}
.geo-history-card{margin-top:16px;background:#fff;border:1px solid rgba(15,23,42,.07);border-radius:16px;padding:1rem}
.geo-history-list{display:flex;flex-direction:column;gap:.65rem}
.geo-history-item{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(170px,auto);gap:.8rem;align-items:center;background:#f8fafc;border:1px solid rgba(15,23,42,.07);border-radius:14px;padding:.8rem}
.geo-coordinates{grid-column:1 / -1;display:inline-flex;align-items:center;gap:.55rem;width:max-content;max-width:100%;background:#fff;border:1px solid rgba(37,99,235,.18);border-radius:999px;padding:.32rem .36rem .32rem .78rem;color:#334155;font-size:.78rem;font-weight:750;box-shadow:0 8px 16px rgba(15,23,42,.06)}
.geo-coordinates span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:min(320px,58vw)}
.geo-coordinates a{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:#2563eb;color:#fff;text-decoration:none;font-size:.74rem;font-weight:900;padding:.34rem .64rem;box-shadow:0 7px 14px rgba(37,99,235,.18)}
.geo-coordinates a:hover{background:#1d4ed8;color:#fff;text-decoration:none}
.compact-comment-textarea{resize:vertical !important;min-height:58px !important;max-height:90px !important;width:100%;border:1px solid #cbd5e1;border-radius:14px;padding:.75rem .85rem;resize:vertical;box-sizing:border-box;background:#fff}
.compact-comment-item strong{display:block;color:#0f172a;margin-bottom:.15rem}
.soft-note{border-radius:14px;background:#fffbeb;border:1px solid #fde68a;color:#92400e;padding:.7rem .85rem}
.geo-inline-status{align-items:center;width:max-content;max-width:100%;margin-top:2px;padding:7px 11px;border-radius:999px;border:1px solid #dbeafe;background:#eff6ff;color:#1d4ed8;font-size:12px;font-weight:800;display:none !important}
.wo-hero.panel{position:relative;overflow:hidden;background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%) !important;border:1px solid rgba(37,99,235,.16) !important;border-left:5px solid #2563eb !important;box-shadow:0 14px 34px rgba(15,23,42,.07) !important;color:#0f172a !important}
.wo-hero.panel::after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 90% 0%,rgba(37,99,235,.10),transparent 34%),radial-gradient(circle at 0% 110%,rgba(14,165,233,.08),transparent 38%) !important}
.wo-hero .eyebrow{color:#2563eb !important}
.wo-hero h1,.wo-hero h2,.wo-hero .ticket-title,.wo-hero .ticket-code{color:#0f172a !important}
.wo-hero .muted{max-width:900px;color:#475569 !important}
.wo-hero .btn.ghost,.wo-hero a.btn.ghost{background:#fff !important;border-color:#dbeafe !important;color:#1d4ed8 !important;box-shadow:0 8px 18px rgba(37,99,235,.08)}
.wo-hero .btn.ghost:hover,.wo-hero a.btn.ghost:hover{background:#eff6ff !important}
.wo-section-head, .wo-action-zone-head, .activity-clean-head, .compact-comments-head{background:linear-gradient(180deg,#ffffff,#f8fafc) !important;border-color:rgba(15,23,42,.07) !important}
.wo-section-head h3,.activity-clean-head h3,.compact-comments-head h3,.wo-action-zone-head h3{color:#111827 !important}
.wo-action-zone-head .eyebrow,.wo-next-panel .eyebrow{color:#2563eb !important}
.wo-next-panel{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;border:1px solid #bfdbfe !important;padding:1rem 1.2rem;background:linear-gradient(180deg,#ffffff,#f5f9ff) !important;border-color:#dbeafe !important}
.wo-next-panel h3{margin:0;font-size:1rem;font-weight:800;letter-spacing:-.015em;color:#0f172a !important}
.image-file-card{cursor:zoom-in;text-decoration:none;color:inherit}
.image-file-card .file-thumb{background:#f8fafc}
.ticket-image-modal .icon-btn{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border:1px solid #e5e7eb;border-radius:12px;background:#fff;color:#0f172a;font-size:1.35rem;line-height:1;cursor:pointer}
.ticket-image-modal .icon-btn:hover{background:#f1f5f9}
.wo-flat-left.panel,.wo-flat-right.panel{border-radius:22px;padding:18px;overflow:hidden;box-shadow:0 14px 34px rgba(15,23,42,.06)}
.wo-create-page .field-box span{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.055em;color:#64748b}
.wo-create-page .field-box input:focus, .wo-create-page .field-box select:focus, .wo-create-page .field-box textarea:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px rgba(37,99,235,.10)}
.wo-file-area{border:1px solid #e2e8f0;border-radius:18px;background:#f8fafc;padding:12px}
.wo-flat-actions .btn{min-height:42px;justify-content:center}
.vendors-page-head{border-radius:22px;background:linear-gradient(180deg,#ffffff,#f8fafc)}
.vendor-table td{vertical-align:middle}
.vendor-modal-card{width:min(760px,calc(100vw - 24px));max-height:92dvh;overflow:hidden;display:flex;flex-direction:column}
.vendor-form{display:flex;flex-direction:column;min-height:0}
.vendor-form .modal-body{overflow:auto}
.vendor-form-grid{gap:12px}
.vendor-form-grid label{min-width:0}
.vendor-form-grid input,.vendor-form-grid textarea{width:100%;box-sizing:border-box}
.vendor-email-modal-card{max-width:560px}
.vendor-email-summary{border:1px solid rgba(15,23,42,.08);background:#f8fafc;border-radius:16px;padding:14px 16px;display:flex;flex-direction:column;gap:3px}
.vendor-email-summary span{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;font-weight:800;color:#64748b}
.vendor-email-summary strong{font-size:1rem;color:#0f172a}
.vendor-email-summary small{color:#64748b}
.vendor-template-preview{border:1px solid rgba(37,99,235,.14);background:linear-gradient(180deg,#eff6ff,#ffffff);border-radius:16px;padding:14px 16px}
.vendor-template-preview h4{margin:4px 0 6px;font-size:1rem;color:#0f172a}
.vendor-template-preview p{margin:0;color:#64748b;font-size:.85rem;line-height:1.5}
.vendor-table td:last-child{white-space:nowrap}
.up-page{--up-bg:#eef1f9;--up-surface:#ffffff;--up-s2:#f5f6fb;--up-border:#dde2f0;--up-border2:#c8cedf;--up-text:#131726;--up-text2:#3c4362;--up-muted:#6e7898;--up-accent:#2f5af3;--up-accent-bg:rgba(47,90,243,.09);--up-accent-d:rgba(47,90,243,.20);--up-green:#0a6e4a;--up-green-bg:rgba(10,110,74,.08);--up-amber:#935600;--up-amber-bg:rgba(147,86,0,.08);--up-shadow:0 1px 6px rgba(10,20,60,.07), 0 2px 16px rgba(10,20,60,.04);--up-shadow-md:0 4px 24px rgba(10,20,60,.10);--up-shadow-lg:0 12px 48px rgba(10,20,60,.18);color:var(--up-text);padding:0 0 56px;animation:up-in .35s ease both}
.up-hero{display:flex;align-items:center;gap:20px;padding:18px 0 20px;margin-bottom:22px;border-bottom:1px solid var(--up-border);flex-wrap:wrap}
.up-avatar{width:68px;height:68px;border-radius:50%;flex-shrink:0;background:linear-gradient(135deg,var(--up-accent) 0%,#6c3af7 100%);display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:800;color:#fff;letter-spacing:-.5px;box-shadow:0 0 0 4px var(--up-accent-bg), var(--up-shadow-md)}
.up-hero-main{min-width:0}
.up-hero-name{font-size:21px;font-weight:800;letter-spacing:-.3px;margin:0 0 4px}
.up-hero-meta{font-size:13px;color:var(--up-muted);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.up-hero-meta .sep{opacity:.4}
.up-tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}
.up-tag{font-size:11px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;padding:3px 10px;border-radius:999px;background:var(--up-accent-bg);color:var(--up-accent);border:1px solid var(--up-accent-d)}
.up-tag.team{background:var(--up-green-bg);color:var(--up-green);border-color:rgba(10,110,74,.18)}
.up-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:10px}
.up-stats2{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:22px}
.up-stat{background:var(--up-surface);border:1px solid var(--up-border);border-radius:14px;padding:18px 18px 14px;box-shadow:var(--up-shadow);cursor:pointer;transition:border-color .18s, box-shadow .18s, transform .18s;position:relative;overflow:hidden;text-decoration:none;color:inherit;text-align:left;width:100%;display:block;box-sizing:border-box;min-height:126px}
.up-stat:hover{border-color:var(--up-accent);box-shadow:var(--up-shadow-md),0 0 0 3px var(--up-accent-bg);transform:translateY(-2px)}
.up-soft-metric{background:linear-gradient(180deg,var(--up-surface),var(--up-s2));border:1px solid var(--up-border);border-radius:14px;padding:18px 18px 14px;box-shadow:var(--up-shadow);position:relative;overflow:hidden;min-height:126px;box-sizing:border-box}
.up-soft-metric::after{content:"";position:absolute;inset:auto 14px 14px auto;width:38px;height:38px;border-radius:999px;background:var(--up-accent-bg);opacity:.55;pointer-events:none}
.up-stat--soft{background:var(--up-s2);cursor:default}
.up-stat--soft:hover{transform:none;box-shadow:var(--up-shadow);border-color:var(--up-border)}
.up-stat-icon{font-size:15px;margin-bottom:10px;display:block;opacity:.64}
.up-stat-val{font-size:30px;font-weight:800;letter-spacing:-1px;line-height:1;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;margin-bottom:5px;transition:color .18s}
.up-stat:hover .up-stat-val:not(.green):not(.amber){color:var(--up-accent)}
.up-stat-val.accent{color:var(--up-accent)}
.up-stat-val.green{color:var(--up-green)}
.up-stat-val.amber{color:var(--up-amber)}
.up-stat-lbl{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;color:var(--up-muted)}
.up-stat-sub{font-size:11px;color:var(--up-muted);margin-top:2px;opacity:.75}
.up-stat-hint{position:absolute;bottom:9px;right:12px;font-size:10px;font-weight:800;letter-spacing:.5px;text-transform:uppercase;color:var(--up-accent);opacity:0;transition:opacity .18s}
.up-stat:not(.up-stat--soft):hover .up-stat-hint{opacity:1}
.up-cols{display:grid;grid-template-columns:340px 1fr;gap:18px;margin-bottom:18px}
.up-left-stack{display:flex;flex-direction:column;gap:16px}
.up-panel{background:var(--up-surface);border:1px solid var(--up-border);border-radius:14px;box-shadow:var(--up-shadow);overflow:hidden}
.up-panel-head{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.7px;color:var(--up-muted);padding:12px 18px;border-bottom:1px solid var(--up-border);display:flex;align-items:center;justify-content:space-between;gap:10px;background:var(--up-s2)}
.up-panel-hl{display:flex;align-items:center;gap:6px}
.up-panel-icon{font-size:13px;opacity:.7}
.up-info-row{display:flex;gap:12px;align-items:flex-start;padding:11px 18px;border-bottom:1px solid var(--up-border);font-size:13.5px}
.up-info-row:last-child{border-bottom:none}
.up-info-lbl{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;color:var(--up-muted);min-width:80px;padding-top:2px;flex-shrink:0}
.up-info-val{flex:1;color:var(--up-text2);min-width:0;overflow-wrap:anywhere}
.up-info-val.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12.5px;color:var(--up-text)}
.up-org{padding:10px 18px 14px;border-top:1px solid var(--up-border)}
.up-org-row{display:flex;align-items:center;gap:10px;padding:9px 12px;background:var(--up-s2);border:1px solid var(--up-border);border-radius:10px;margin-bottom:7px;font-size:13px}
.up-org-row:last-child{margin-bottom:0}
.up-org-lbl{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;color:var(--up-muted);min-width:72px}
.up-security-body{padding:14px 18px 16px}
.up-security-grid{display:grid;grid-template-columns:1fr;gap:8px}
.up-sec-item{display:flex;justify-content:space-between;gap:12px;padding:9px 12px;background:var(--up-s2);border:1px solid var(--up-border);border-radius:10px;font-size:13px}
.up-sec-item strong{color:var(--up-text);font-size:12px}
.up-sec-item span{color:var(--up-text2);text-align:right;overflow-wrap:anywhere}
.up-note{background:#fffbeb;border:1px solid #fde68a;border-radius:10px;padding:10px 12px;color:#78350f;font-size:12px;line-height:1.45;margin-bottom:10px}
.up-security-details{margin-top:10px}
.up-security-details summary{cursor:pointer;display:inline-flex;align-items:center;border:1px solid var(--up-border2);border-radius:10px;padding:6px 11px;font-size:12px;font-weight:700;color:var(--up-text2)}
.up-audit-list{display:flex;flex-direction:column;gap:8px;margin-top:10px}
.up-audit-row{padding:9px 12px;background:var(--up-s2);border:1px solid var(--up-border);border-radius:10px}
.up-audit-row strong{display:block;font-size:12px}
.up-audit-row span{display:block;font-size:11px;color:var(--up-muted);margin-top:2px}
.up-prefs{padding:14px 18px 16px}
.up-prefs-title,.up-access-title{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.7px;color:var(--up-muted);margin-bottom:12px}
.up-field{margin-bottom:11px}
.up-field-lbl{display:block;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;color:var(--up-muted);margin-bottom:5px}
.up-select{width:100%;padding:9px 12px;background:var(--up-s2);border:1px solid var(--up-border2);border-radius:10px;color:var(--up-text);font-size:13px;outline:none;transition:border-color .18s, box-shadow .18s}
.up-select:focus{border-color:var(--up-accent);box-shadow:0 0 0 3px var(--up-accent-bg)}
.up-checkline{display:flex;align-items:center;gap:10px;padding:9px 12px;cursor:pointer;font-size:13.5px;background:var(--up-s2);border:1px solid var(--up-border);border-radius:10px;transition:border-color .18s}
.up-checkline:hover{border-color:var(--up-accent)}
.up-checkline input[type=checkbox]{accent-color:var(--up-accent);width:15px;height:15px}
.up-btn-save{width:100%;padding:10px 18px;margin-top:12px;background:var(--up-accent);color:#fff;border:none;border-radius:10px;font-size:13px;font-weight:800;letter-spacing:.3px;cursor:pointer;transition:opacity .18s, transform .12s}
.up-btn-save:hover{opacity:.88;transform:translateY(-1px)}
.up-access{padding:14px 18px 18px;border-top:1px solid var(--up-border)}
.up-access-note{font-size:12px;color:var(--up-muted);margin-bottom:12px;line-height:1.5}
.up-access-row{display:flex;align-items:center;gap:10px;margin-bottom:7px;padding:9px 12px;background:var(--up-s2);border:1px solid var(--up-border);border-radius:10px}
.up-access-info{flex:1;min-width:0}
.up-access-info strong{font-size:13px;display:block}
.up-access-info small{font-size:11px;color:var(--up-muted)}
.up-badge-warn{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;padding:2px 8px;border-radius:999px;white-space:nowrap;background:var(--up-amber-bg);color:var(--up-amber);border:1px solid rgba(147,86,0,.18)}
.up-btn-ghost{font-size:11px;font-weight:700;padding:5px 11px;white-space:nowrap;background:transparent;border:1px solid var(--up-border2);border-radius:10px;color:var(--up-text2);cursor:pointer;transition:all .15s}
.up-btn-ghost:hover{border-color:var(--up-accent);color:var(--up-accent);background:var(--up-accent-bg)}
.up-access-footer{font-size:11px;color:var(--up-muted);margin-top:10px;line-height:1.5}
.up-feed{padding:6px 18px 18px}
.up-feed-empty,.up-ticket-empty{padding:28px 14px;text-align:center;color:var(--up-muted);font-size:13px}
.up-feed-empty{padding:32px 0}
.up-act{display:flex;gap:14px;padding:12px 0;border-bottom:1px solid var(--up-border);animation:up-in .3s ease both}
.up-act:last-child{border-bottom:none}
.up-act-tl{display:flex;flex-direction:column;align-items:center}
.up-act-dot{width:9px;height:9px;border-radius:50%;background:var(--up-accent);margin-top:4px;flex-shrink:0;box-shadow:0 0 0 3px var(--up-accent-bg)}
.up-act-line{width:1px;flex:1;background:var(--up-border);margin-top:5px;min-height:8px}
.up-act-body{flex:1;min-width:0}
.up-act-event{font-size:13px;font-weight:700;margin-bottom:2px}
.up-act-time{font-size:11px;color:var(--up-muted);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}
.up-act-note{font-size:12px;color:var(--up-text2);margin-top:5px;line-height:1.45;padding:6px 10px;border-radius:10px;background:var(--up-s2);border-left:2px solid var(--up-accent)}
.up-ver-mas{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;padding:4px 10px;border-radius:999px;cursor:pointer;background:var(--up-accent-bg);color:var(--up-accent);border:1px solid var(--up-accent-d);transition:background .15s}
.up-ver-mas:hover{background:var(--up-accent-d)}
.up-pills{display:flex;gap:6px;flex-wrap:wrap;padding:10px 16px;border-bottom:1px solid var(--up-border);background:var(--up-s2);min-height:42px}
.up-pill{font-size:11px;font-weight:700;letter-spacing:.4px;padding:4px 11px;border-radius:999px;cursor:pointer;background:transparent;color:var(--up-muted);border:1px solid var(--up-border2);transition:all .15s}
.up-pill:hover{border-color:var(--up-accent);color:var(--up-accent);background:var(--up-accent-bg)}
.up-pill.active{background:var(--up-accent);color:#fff;border-color:var(--up-accent)}
.up-ticket-list{padding:10px 14px 14px}
.up-ticket,.up-mticket{display:flex;flex-direction:column;gap:4px;padding:11px 14px;margin-bottom:8px;background:var(--up-s2);border:1px solid var(--up-border);border-radius:10px;text-decoration:none;color:inherit;transition:border-color .15s, transform .15s, box-shadow .15s;animation:up-in .25s ease both}
.up-ticket:last-child,.up-mticket:last-child{margin-bottom:0}
.up-ticket:hover,.up-mticket:hover{border-color:var(--up-accent);transform:translateX(3px);box-shadow:-3px 0 0 var(--up-accent)}
.up-ticket.hidden{display:none !important}
.up-ticket-top,.up-mticket-top{display:flex;align-items:center;justify-content:space-between;gap:8px}
.up-ticket-code,.up-mticket-code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px;font-weight:700;color:var(--up-accent)}
.up-ticket-brief,.up-mticket-brief{font-size:13px;line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.up-mticket-brief{white-space:normal}
.up-ticket-meta,.up-mticket-meta{font-size:11px;color:var(--up-muted);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}
.up-ticket-link,.up-mticket-link{font-size:11px;color:var(--up-muted)}
.up-modal{background:var(--up-surface);border:1px solid var(--up-border);border-radius:16px;box-shadow:var(--up-shadow-lg);width:100%;max-width:680px;max-height:86vh;display:flex;flex-direction:column;transform:translateY(16px) scale(.98);transition:transform .22s ease}
.up-overlay.open .up-modal{transform:none}
.up-modal-head{display:flex;align-items:center;justify-content:space-between;padding:18px 22px 14px;border-bottom:1px solid var(--up-border);flex-shrink:0}
.up-modal-title{font-size:16px;font-weight:800;letter-spacing:-.2px}
.up-modal-close{width:30px;height:30px;border-radius:50%;border:none;cursor:pointer;background:var(--up-s2);color:var(--up-muted);font-size:18px;display:flex;align-items:center;justify-content:center;transition:background .15s, color .15s}
.up-modal-close:hover{background:var(--up-border);color:var(--up-text)}
.up-modal-filters{display:flex;gap:6px;flex-wrap:wrap;padding:10px 22px;border-bottom:1px solid var(--up-border);flex-shrink:0;background:var(--up-s2)}
.up-modal-body{flex:1;overflow-y:auto;padding:14px 18px}
.up-modal-loading{display:flex;align-items:center;justify-content:center;gap:10px;padding:48px 0;color:var(--up-muted);font-size:13px}
.up-spinner{width:18px;height:18px;border-radius:50%;border:2px solid var(--up-border);border-top-color:var(--up-accent);animation:spin .7s linear infinite}
.up-modal-empty{text-align:center;padding:48px 0;color:var(--up-muted);font-size:13px}
.up-modal-empty span{font-size:28px;display:block;margin-bottom:8px}
.up-modal-foot{padding:13px 22px;border-top:1px solid var(--up-border);display:flex;align-items:center;justify-content:space-between;flex-shrink:0;background:var(--up-s2);gap:12px}
.up-modal-info,.up-pag-cur{font-size:12px;color:var(--up-muted);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}
.up-pag{display:flex;gap:6px;align-items:center}
.up-pag-btn{padding:5px 13px;border-radius:10px;border:1px solid var(--up-border2);background:var(--up-surface);font-size:12px;font-weight:700;color:var(--up-text2);cursor:pointer;transition:all .15s}
.up-pag-btn:hover:not(:disabled){border-color:var(--up-accent);color:var(--up-accent);background:var(--up-accent-bg)}
.up-pag-btn:disabled{opacity:.35;cursor:not-allowed}
.up-feed-compact .up-act:nth-of-type(n+4){display:none}
.up-overlay{position:fixed;inset:0;z-index:9000;background:rgba(10,15,40,.42);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:20px;opacity:0;pointer-events:none;transition:opacity .2s;--up-surface:#ffffff;--up-s2:#f5f6fb;--up-border:#dde2f0;--up-border2:#c8cedf;--up-text:#131726;--up-text2:#3c4362;--up-muted:#6e7898;--up-accent:#2f5af3;--up-accent-bg:rgba(47,90,243,.09);--up-shadow-lg:0 12px 48px rgba(10,20,60,.18)}
.up-overlay::before{content:"";position:absolute;inset:0;background:rgba(10,15,40,.45);backdrop-filter:blur(4px)}
.up-overlay .up-modal{position:relative;z-index:1;background:#fff}
.up-modal-activity{padding:13px 14px;margin-bottom:9px;border:1px solid var(--up-border);background:linear-gradient(180deg,#fff,var(--up-s2));border-radius:12px;box-shadow:0 1px 6px rgba(10,20,60,.05)}
.up-modal-activity:last-child{margin-bottom:0}
.up-modal-activity-main{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.up-modal-activity-main strong{font-size:13px;color:var(--up-text)}
.up-modal-activity-main span{font-size:11px;color:var(--up-muted);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;white-space:nowrap}
.up-modal-activity-note{margin-top:7px;padding:8px 10px;border-radius:10px;background:var(--up-s2);border-left:2px solid var(--up-accent);color:var(--up-text2);font-size:12px;line-height:1.45}
.up-modal-security-row .up-modal-activity-note{border-left-color:#b45309}
.up-overlay[hidden]{display:none !important}
.up-overlay:not(.open){display:none !important}
.up-overlay.open{display:flex !important;opacity:1;pointer-events:auto}
body.up-modal-is-open{overflow:hidden}
.up-preview-note{margin:0 18px 16px;padding:9px 12px;border:1px solid var(--up-border);border-radius:10px;background:var(--up-s2);color:var(--up-muted);font-size:12px;line-height:1.4}
.up-feed-compact{max-height:310px;overflow:hidden}
.up-security-actions .up-ver-mas{margin-top:2px}
.up-security-actions{margin-top:12px;justify-content:flex-start;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.up-profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:18px;align-items:stretch}
.up-profile-grid > .up-panel{min-width:0;height:100%}
.up-user-activity-panel .up-panel-head, .up-security-panel .up-panel-head{min-height:46px}
.up-audit-card{padding:16px 18px 18px;display:flex;flex-direction:column;gap:12px}
.up-audit-card p{margin:0;color:var(--up-muted);font-size:12px;line-height:1.45}
.up-audit-metric{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 14px;border:1px solid var(--up-border);border-radius:12px;background:linear-gradient(180deg,#fff,var(--up-s2))}
.up-audit-metric span{font-size:11px;font-weight:800;letter-spacing:.6px;text-transform:uppercase;color:var(--up-muted)}
.up-audit-metric strong{font-size:30px;line-height:1;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;color:var(--up-accent)}
.up-note-compact{margin:0}
.up-ticket-sections{align-items:start}
.sysdev-modal-backdrop{position:fixed;inset:0;z-index:9500;display:none;align-items:center;justify-content:center;padding:22px;background:rgba(15,23,42,.46);backdrop-filter:blur(5px)}
.sysdev-modal-backdrop.is-visible{display:flex}
.sysdev-modal-card{width:min(760px,calc(100vw - 28px));max-height:min(88vh,820px);overflow:hidden;display:flex;flex-direction:column;border-radius:22px;background:#fff;border:1px solid rgba(15,23,42,.10);box-shadow:0 30px 90px rgba(15,23,42,.30)}
.sysdev-modal-body{padding:16px;overflow:auto;min-height:0}
.sysdev-modal-card .modal-actions-sticky{position:sticky;bottom:0;background:#fff;border-top:1px solid var(--line);padding:12px 16px;margin:0}
.sysdev-confirm-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.ticket-contractor-modal, .contractors-create-modal{position:fixed !important;inset:0 !important;z-index:9400 !important;display:none !important;align-items:center !important;justify-content:center !important;padding:22px !important;overflow:auto !important;background:rgba(15,23,42,.46) !important;backdrop-filter:blur(5px)}
.ticket-contractor-modal.is-visible, .contractors-create-modal.is-visible{display:flex !important}
.contractor-modal-card{width:min(760px,calc(100vw - 28px));max-height:min(88vh,820px);overflow:hidden;display:flex;flex-direction:column;border-radius:22px;background:#fff;border:1px solid rgba(15,23,42,.10);box-shadow:0 30px 90px rgba(15,23,42,.30)}
.contractor-form{min-height:0;overflow:auto}
.contractor-form-grid{display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px !important;align-items:start}
.contractor-form-grid label, .contractor-form label{display:flex;flex-direction:column;gap:6px;min-width:0;font-weight:750;color:#334155}
.contractor-form input, .contractor-form select, .contractor-form textarea{width:100%;box-sizing:border-box}
.contractor-form .field-box--full{grid-column:1/-1}
.contractor-form .modal-actions-sticky{position:sticky;bottom:0;background:#fff;border-top:1px solid var(--line);padding-top:12px;margin-top:6px}
.contractor-card-pulse{animation:contractorPulse .9s ease both}
.calendar-page-shell{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;height:100%;overflow:hidden}
.main > .calendar-page-shell{flex:1 1 auto;min-height:0;overflow:hidden}
.calendar-panel, .panel.calendar-panel{display:flex;flex-direction:column;gap:6px;flex:1 1 auto;min-height:0;height:100%;overflow:hidden !important;box-sizing:border-box;padding:10px;padding-bottom:8px}
.calendar-toolbar{flex:0 0 auto !important;flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.calendar-toolbar-center{display:flex;flex-direction:column;align-items:center;gap:4px;min-width:180px;text-align:center}
.calendar-weekdays{display:grid !important;grid-template-columns:repeat(7,minmax(0,1fr)) !important;gap:8px !important;margin-bottom:8px !important;flex:0 0 auto !important;flex:0 0 auto;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;margin:0}
.calendar-head{letter-spacing:.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;background:#eef2ff !important;color:#334155 !important;height:36px !important;min-height:36px !important;padding:0 8px !important;font-size:14px !important;font-weight:800 !important;line-height:1.1 !important;border-radius:12px !important;display:flex !important;align-items:center !important;justify-content:center !important;display:flex;align-items:center;justify-content:center;height:38px;min-height:38px;padding:0 8px;border-radius:12px;background:#eef2ff;color:#334155;font-size:15px;font-weight:800;line-height:1;text-align:center}
.calendar-head span{max-width:100%;font-size:inherit !important;line-height:1.1 !important;display:block !important;white-space:nowrap !important;overflow:hidden !important;text-overflow:ellipsis !important;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.calendar-days-grid, .calendar-grid.calendar-days-grid{flex:1 1 auto;min-height:0;width:100%;height:100%;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-template-rows:repeat(5,minmax(118px,1fr));gap:6px;overflow:hidden !important;align-content:stretch;align-items:stretch;box-sizing:border-box}
.calendar-cell{min-width:0;min-height:0;height:100%;padding:7px;border:1px solid var(--line);border-radius:16px;background:#fff;display:flex;flex-direction:column;gap:6px;overflow:hidden;box-sizing:border-box}
.calendar-cell.is-empty{background:#f8fafc;border-style:dashed}
.calendar-cell-top{display:flex;align-items:center;justify-content:space-between;gap:6px;min-height:20px;margin:0;flex:0 0 auto}
.calendar-date{font-size:17px !important;font-size:12px;font-weight:800;line-height:1;color:#0f172a}
.calendar-count-pill{line-height:1 !important;flex:0 0 auto !important;font-size:10.5px !important;padding:4px 8px !important;min-height:24px !important;flex:0 0 auto;max-width:60%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:9.5px;line-height:1;padding:4px 7px}
.calendar-items{display:flex;flex-direction:column;gap:4px;padding-top:0;flex:1 1 auto;min-width:0;min-height:0;overflow:hidden}
.calendar-item, .calendar-item.badge, .calendar-item.badge.info, .calendar-item.badge.warn, .calendar-item.badge.ok{display:block;width:100%;max-width:100%;min-width:0;min-height:0;padding:0;border-radius:12px;overflow:hidden;box-sizing:border-box;text-decoration:none;color:inherit;border:1px solid rgba(59,130,246,.18);background:#f8fbff;box-shadow:none;flex:0 0 auto;transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease}
.calendar-item:hover{transform:none;box-shadow:none;border-color:rgba(59,130,246,.32)}
.calendar-item-inner{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:2px;width:100%;max-width:100%;min-width:0;min-height:0;padding:5px 6px;box-sizing:border-box;overflow:hidden}
.calendar-item-top{display:block;width:100%;min-width:0}
.calendar-item-top strong{display:block;width:100%;min-width:0;max-width:100%;font-size:10.5px;line-height:1.02;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#1d4ed8}
.calendar-item-status{align-items:center;justify-content:center;font-weight:800;overflow:hidden;text-overflow:ellipsis;border:1px solid rgba(148,163,184,.26);background:#f8fafc;flex:0 0 auto !important;max-width:46% !important;white-space:nowrap !important;font-size:9px !important;line-height:1 !important;padding:4px 6px !important;border-radius:999px !important;display:none !important}
.calendar-item-body{display:block;width:100%;min-width:0;margin-top:0}
.calendar-item-category, .calendar-item-location, .calendar-item-listing{display:block;min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.calendar-item-category{font-size:9.5px;line-height:1.02;font-weight:800;color:#0f172a}
.calendar-item-location,.calendar-item-listing{white-space:nowrap !important;overflow:hidden !important;text-overflow:ellipsis !important;font-size:9.5px !important;line-height:1.1 !important;display:none !important}
.calendar-more-link{display:none;border:0;background:transparent;color:#2563eb;cursor:pointer;flex:0 0 auto;margin-top:auto;align-self:flex-start;padding:4px 0;font-size:10.5px;font-weight:800}
.calendar-cell.has-items .calendar-item:last-of-type{margin-bottom:0}
.calendar-cell.has-items .calendar-count-pill{margin-left:auto}
.calendar-page-shell .calendar-panel > .calendar-grid.calendar-days-grid{max-width:100%}
.calendar-cell .calendar-items > *{max-width:100%}
.calendar-empty{padding-top:8px;color:#94a3b8;font-size:14px;line-height:1.2}
.calendar-day-modal{width:min(760px,calc(100vw - 24px));max-height:min(84dvh,720px);overflow:auto}
.calendar-day-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:8px 0 14px}
.calendar-stat-box{padding:14px 16px;border-radius:18px}
.calendar-day-list{padding-bottom:4px}
body.modal-open{overflow:hidden}
.calendar-month-trigger{appearance:none;border:0;background:transparent;padding:0;margin:0;font:inherit;color:inherit;cursor:pointer}
.calendar-month-trigger strong{display:inline-flex;align-items:center;gap:8px;border:1px solid #d6e1ec;background:linear-gradient(180deg,#fff,#f8fbff);border-radius:14px;padding:10px 14px;box-shadow:0 10px 24px rgba(15,23,42,.06)}
.calendar-month-trigger strong::after{content:"▾";font-size:.9rem;color:#2563eb}
.calendar-month-modal{width:min(640px,calc(100vw - 24px))}
.calendar-month-head{padding:8px 0 14px;display:flex;align-items:center;justify-content:space-between;gap:12px;margin:8px 0 14px;flex-wrap:wrap}
.calendar-month-grid{padding-top:2px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.calendar-month-chip{box-sizing:border-box;padding:12px;overflow:hidden;text-align:center;display:flex;align-items:center;justify-content:center;min-height:48px;border:1px solid #d7e2ef;border-radius:16px;background:linear-gradient(180deg,#fff,#f5f9ff);color:var(--text);text-decoration:none;font-weight:700;box-shadow:0 10px 22px rgba(15,23,42,.05)}
.calendar-month-chip:hover{border-color:#93c5fd;color:#1d4ed8;background:linear-gradient(180deg,#eff6ff,#dbeafe)}
body:not(.login-page) .main:has(.calendar-page-shell){padding-bottom:24px !important}
.calendar-page-shell, .calendar-panel, .calendar-grid.calendar-days-grid{max-width:100%;box-sizing:border-box}
.calendar-panel > .calendar-grid.calendar-days-grid{padding-bottom:2px}
.calendar-cell.has-items .calendar-items{justify-content:flex-start;padding-top:1px}
.calendar-cell.has-items .calendar-more-link{margin-top:1px}
.calendar-cell .calendar-item + .calendar-item{margin-top:0}
.card-dates{display:flex;flex-wrap:wrap;gap:4px 12px;margin:6px 0 4px}
.card-date-item{display:flex;flex-direction:column;font-size:10px;color:var(--text-muted, #6b7280);line-height:1.3}
.card-date-label{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-subtle, #9ca3af)}
.card-date-item--closed .card-date-label{color:#16a34a}
.card-last-comment{border-left:3px solid var(--border, #e5e7eb);padding:3px 8px;margin:4px 0;font-size:11px;font-style:italic;color:var(--text-body, #374151);line-height:1.4}
.card-comment-time{font-size:10px;color:var(--text-muted, #6b7280);font-style:normal;margin-top:1px}
.dt-card--closed{opacity:.75}
.dt-card--closed .ticket-title{text-decoration:line-through;opacity:.7}
.wo-tab-count{display:inline-flex;align-items:center;justify-content:center;background:var(--accent, #2563eb);color:#fff;border-radius:999px;font-size:10px;font-weight:700;min-width:18px;height:18px;padding:0 5px;margin-left:4px;vertical-align:middle}
.analytics-clickable{cursor:pointer}
button.analytics-clickable{background:none;border:none;width:100%;text-align:left}
.analytics-clickable:hover{opacity:.8}
.analytics-hint{opacity:.6;font-style:italic}
.analytics-item-left{flex:1;min-width:0}
.analytics-item-meta{font-size:12px;color:var(--text-muted, #6b7280);margin:2px 0;display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.analytics-item-brief{font-size:13px;margin-top:2px}
.my-requests-page{max-width:800px;margin:0 auto}
.my-req-stats{display:grid;grid-template-columns:repeat(4, 1fr);gap:10px;margin-bottom:16px}
.my-req-stat{display:flex;flex-direction:column;align-items:center;background:var(--surface, #fff);border:1px solid var(--border, #e5e7eb);border-radius:10px;padding:12px 8px;text-decoration:none;color:inherit;text-align:center;transition:border-color .15s}
.my-req-stat:hover{border-color:var(--accent, #2563eb)}
.my-req-stat-num{font-size:26px;font-weight:700;line-height:1}
.my-req-stat-label{font-size:10px;color:var(--text-muted, #6b7280);margin-top:3px;text-transform:uppercase;letter-spacing:.04em;font-weight:600}
.my-req-stat--pending .my-req-stat-num{color:#d97706}
.my-req-stat--approved .my-req-stat-num{color:#16a34a}
.my-req-stat--rejected .my-req-stat-num{color:#dc2626}
.my-req-create-bar{display:flex;align-items:center;gap:12px;margin-bottom:14px;flex-wrap:wrap}
.my-req-list{display:flex;flex-direction:column;gap:10px}
.my-req-card{display:block;text-decoration:none;color:inherit;padding:14px 18px;transition:border-color .15s, box-shadow .15s;cursor:pointer}
.my-req-card:hover{border-color:var(--accent, #2563eb);box-shadow:0 2px 10px rgba(37,99,235,.08)}
.my-req-card-head{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;margin-bottom:5px}
.my-req-card-code{font-size:12px;font-weight:700;color:var(--text-muted, #6b7280)}
.my-req-card-status-wrap{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.my-req-card-title{font-size:15px;font-weight:600;margin-bottom:4px;line-height:1.3}
.my-req-card-meta{font-size:13px;color:var(--text-muted, #6b7280);display:flex;flex-wrap:wrap;gap:4px;margin-bottom:6px}
.my-req-sep{opacity:.4}
.my-req-card-footer{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:12px;color:var(--text-subtle, #9ca3af)}
.my-req-due{color:#d97706;font-weight:500}
.my-req-wo-status{color:var(--accent, #2563eb);font-weight:500}
.my-req-progress{display:flex;align-items:center;gap:8px;margin-top:8px}
.my-req-progress-bar{flex:1;height:4px;border-radius:2px;background:#e5e7eb;position:relative;overflow:hidden}
.my-req-progress-bar--validating::after{content:"";position:absolute;top:0;left:-40%;width:40%;height:100%;background:#f59e0b;animation:my-req-slide 1.5s infinite ease-in-out}
.my-req-progress-label{font-size:11px;color:#d97706;font-weight:500;white-space:nowrap}
.wo-create-header{background:linear-gradient(180deg,#ffffff,#f8fafc);border:1px solid var(--line,#e5e7eb);border-radius:22px;padding:16px 18px;box-shadow:0 14px 34px rgba(15,23,42,.06);display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:16px;flex-wrap:wrap}
.wo-create-title{letter-spacing:-.02em;margin:4px 0 0;font-size:22px}
.wo-form-section{background:var(--surface, #fff);border:1px solid var(--border, #e5e7eb);border-radius:10px;padding:18px 20px;margin-bottom:12px}
.wo-form-section-head{display:flex;align-items:center;gap:10px;margin-bottom:12px;font-size:14px;font-weight:600}
.wo-form-step{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:var(--accent, #2563eb);color:#fff;font-size:12px;font-weight:700;flex-shrink:0}
.wo-create-grid{display:grid;grid-template-columns:repeat(2, 1fr);gap:12px}
.wo-create-grid--full{grid-template-columns:1fr}
.field-box--full{grid-column:1 / -1}
.wo-meta-strip{grid-template-columns:repeat(3,minmax(0,1fr));display:flex;flex-wrap:wrap;gap:6px 18px;margin-top:10px;padding:8px 12px;background:var(--surface-soft, #f8fafc);border-radius:8px;border:1px solid var(--border, #e5e7eb)}
.wo-meta-item{min-width:0;background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:8px 10px;display:flex;flex-direction:column;gap:1px}
.wo-meta-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-subtle, #9ca3af)}
.wo-meta-val{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:13px;font-weight:500}
.wo-create-actions{display:flex;gap:10px;align-items:center;padding:14px 0 4px;flex-wrap:wrap}
.btn--lg{padding:11px 22px;font-size:15px;font-weight:600}
.row--mine{background:color-mix(in srgb, var(--accent, #2563eb) 4%, transparent) !important}
.mi-trabajo-panel{display:none}
.mi-trabajo-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:14px}
.mi-trabajo-header h3{margin:2px 0 0;font-size:16px}
.mi-trabajo-stats{display:flex;gap:10px}
.mi-stat{display:flex;flex-direction:column;align-items:center;background:var(--surface-soft, #f8fafc);border:1px solid var(--border, #e5e7eb);border-radius:10px;padding:8px 14px;min-width:58px;text-align:center}
.mi-stat--urgent{background:#fef2f2;border-color:#fecaca}
.mi-stat--active{background:#eff6ff;border-color:#bfdbfe}
.mi-stat--done{background:#f0fdf4;border-color:#bbf7d0}
.mi-stat-num{font-size:22px;font-weight:700;line-height:1}
.mi-stat--urgent .mi-stat-num{color:#dc2626}
.mi-stat--active .mi-stat-num{color:#2563eb}
.mi-stat--done .mi-stat-num{color:#16a34a}
.mi-stat-label{font-size:10px;color:var(--text-muted, #6b7280);margin-top:2px;text-transform:uppercase;letter-spacing:.04em;font-weight:600}
.mi-trabajo-list{display:flex;flex-direction:column;gap:10px;margin-bottom:12px}
.mi-trabajo-card{display:flex;flex-direction:column;gap:4px;background:var(--surface, #fff);border:1px solid var(--border, #e5e7eb);border-radius:10px;padding:12px 14px;text-decoration:none;color:inherit;transition:border-color .15s, box-shadow .15s}
.mi-trabajo-card:hover{border-color:var(--accent, #2563eb);box-shadow:0 2px 8px rgba(37,99,235,.1)}
.mi-card-head{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.mi-card-code{font-size:11px;color:var(--text-muted, #6b7280);margin-left:auto;font-weight:600}
.mi-card-brief{font-size:14px;font-weight:600;line-height:1.3}
.mi-card-meta{font-size:12px;color:var(--text-muted, #6b7280)}
.mi-card-time{font-size:11px;color:var(--text-subtle, #9ca3af);margin-top:2px}
.mi-trabajo-footer{border-top:1px solid var(--border, #e5e7eb);padding-top:10px;text-align:right;margin-top:4px}

.my-req-filter-panel{margin-bottom:16px}
.my-req-filter-form{display:flex;flex-direction:column;gap:12px}
.my-req-filter-grid{display:grid;grid-template-columns:repeat(4, 1fr);gap:12px}
.my-req-filter-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.analytics-stat-link{display:flex;flex-direction:column;text-decoration:none;color:inherit;transition:border-color .15s, box-shadow .15s, transform .1s}
.analytics-stat-link:hover{border-color:var(--accent, #2563eb);box-shadow:0 2px 10px rgba(37,99,235,.1);transform:translateY(-1px)}
.analytics-stat-hint{margin-top:4px;opacity:0;transition:opacity .15s;font-size:11px !important;color:var(--accent, #2563eb) !important}
.analytics-stat-link:hover .analytics-stat-hint{opacity:1}
button.bar-row.analytics-click-card{padding:6px 8px;border-radius:8px;transition:background .15s}
button.bar-row.analytics-click-card:hover{background:var(--surface-soft, #f8fafc);cursor:pointer}
.db-top-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:16px;background:var(--surface, #fff);border:1px solid var(--border, #e5e7eb);border-radius:16px;padding:20px 22px}
.db-greeting{flex:1;min-width:200px}
.db-quick-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.db-link-grid{display:grid;grid-template-columns:repeat(4, 1fr);gap:8px}
.db-link-card{display:flex;flex-direction:column;align-items:center;gap:6px;padding:14px 10px;border:1px solid var(--border, #e5e7eb);border-radius:12px;background:var(--surface-soft, #f8fafc);text-decoration:none;color:var(--text-body, #111827);font-size:12px;font-weight:600;text-align:center;transition:border-color .15s, box-shadow .15s, background .15s;cursor:pointer}
.db-link-card:hover{border-color:var(--accent, #2563eb);background:var(--surface, #fff);box-shadow:0 2px 8px rgba(37,99,235,.08)}
.db-link-card--primary{background:var(--accent, #2563eb);color:#fff;border-color:var(--accent, #2563eb)}
.db-link-card--primary:hover{opacity:.92;background:var(--accent, #2563eb)}
.db-link-card--alert{background:#fef2f2;border-color:#fecaca;color:#dc2626}
.db-link-card--alert:hover{border-color:#dc2626}
.db-link-icon{font-size:22px;line-height:1}
.db-badge-count{display:inline-flex;align-items:center;justify-content:center;background:#dc2626;color:#fff;border-radius:999px;font-size:10px;font-weight:700;min-width:18px;height:18px;padding:0 4px;margin-left:4px;vertical-align:middle}
.myrq-desktop-table{display:block}
.myrq-mobile-cards{display:none}
.myrq-stat{text-decoration:none;color:inherit;transition:border-color .15s, box-shadow .15s}
.myrq-stat:hover{border-color:var(--accent, #2563eb);box-shadow:0 2px 8px rgba(37,99,235,.08)}
.mob-filter-toggle{display:none !important}
.dt-filter-toggle{display:inline-flex !important}
.wo-create-layout{display:grid;grid-template-columns:380px 1fr;gap:16px;align-items:start}
.wo-create-left{display:flex;flex-direction:column;gap:12px}
.wo-create-right-inner{display:flex;flex-direction:column;position:sticky;top:16px}
.wo-field-stack{display:flex;flex-direction:column;gap:12px}
.wo-field-row{display:grid;grid-template-columns:repeat(2, 1fr);gap:12px}
.wo-field-row .due-date-field:nth-child(3){grid-column:1 / -1}
.wo-field-row.trio{grid-template-columns:1fr 1fr 1fr}
.wo-dropzone-box{border:2px dashed var(--border, #e5e7eb);border-radius:10px;padding:20px;text-align:center;background:var(--surface-soft, #f8fafc);transition:border-color .15s;cursor:pointer}
.wo-dropzone-box:hover{border-color:var(--accent, #2563eb)}
.th-sortable:hover{color:var(--accent, #2563eb)}
.th-active{color:var(--accent, #2563eb) !important}
.sort-arrow{font-size:10px;opacity:.45;margin-left:3px}
.th-active .sort-arrow{opacity:1}
.mob-filter-toggle-bar{display:none;gap:8px;align-items:center;margin-bottom:12px;flex-wrap:wrap}
.wo-flat-left, .wo-flat-right{display:flex;flex-direction:column;gap:0}
.wo-flat-divider{height:1px;background:var(--border, #e5e7eb);margin:0}
.wo-flat-right{gap:0}
.wo-flat-right .field-box{padding:0}
.wo-file-area input[type="file"]{width:100%;padding:10px;border:2px dashed var(--border, #e5e7eb);border-radius:10px;background:var(--surface-soft, #f8fafc);cursor:pointer;font-size:13px}
.wo-file-area input[type="file"]:hover{border-color:var(--accent, #2563eb)}
.db2-hero-text h2{margin:4px 0 6px;font-size:24px}
.db2-hero-text p{margin:0;font-size:14px}
.db2-hero-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.db2-stat-strip{display:grid;grid-template-columns:repeat(4, 1fr);gap:10px}
.db2-stat:hover{border-color:var(--accent, #2563eb);box-shadow:0 2px 8px rgba(37,99,235,.08)}
.db2-stat--blue .db2-stat-num{color:#2563eb}
.db2-stat--ok .db2-stat-num{color:#16a34a}
.db2-stat--warn .db2-stat-num{color:#d97706}
.db2-side-col{display:flex;flex-direction:column}
.db2-wo-brief{font-size:13px;margin-top:3px}
.db2-link:hover{border-color:var(--accent, #2563eb);background:var(--surface, #fff)}
.db2-link--primary:hover{opacity:.9;background:var(--accent, #2563eb)}
.db2-link--alert{border-color:#fecaca;background:#fef2f2;color:#dc2626}
.db2-link--alert:hover{border-color:#dc2626}
.db2-two-col{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.dt-collapsible-filter{display:none !important}
.dt-collapsible-filter.dt-filter-open{display:block !important}
.comment-box-form{border:1px solid #e5edf7;background:#fbfdff;border-radius:16px !important;padding:8px 10px !important;margin-bottom:8px !important;display:flex !important;flex-direction:column !important;gap:10px !important;width:100% !important;max-width:100% !important;overflow:hidden !important;box-sizing:border-box !important}
.comment-box-form .comment-textarea-field, .comment-box-form label{display:flex !important;flex-direction:column !important;gap:6px !important;width:100% !important;max-width:100% !important;box-sizing:border-box !important}
.comment-box-form .compact-comment-textarea{display:block !important;width:100% !important;max-width:100% !important;min-height:74px !important;box-sizing:border-box !important;resize:vertical !important}
.wo-info-grid .due-date-field{display:flex !important;flex-direction:column !important;gap:6px !important;width:100% !important;max-width:100% !important;box-sizing:border-box !important;overflow:hidden !important;cursor:pointer !important}
.wo-info-grid .due-date-field input[type="date"]{display:block !important;width:100% !important;max-width:100% !important;min-height:44px !important;box-sizing:border-box !important;cursor:pointer !important}
.mini-stats-row--clickable .mini-stat-link:hover{transform:translateY(-1px);border-color:#93c5fd;box-shadow:0 14px 34px rgba(37,99,235,.10)}
.th-sortable{white-space:nowrap;transition:color .15s;cursor:pointer !important;user-select:none}
.th-sortable.th-active, .th-sortable:hover{color:#1d4ed8}
.due-date-field{display:flex !important;flex-direction:column !important;gap:6px !important;position:relative !important;cursor:pointer !important}
.due-date-field input[type="date"]{-webkit-appearance:none !important;appearance:none !important;display:block !important;padding:10px 12px !important;z-index:2 !important;background:#fff !important;position:relative !important;width:100% !important;min-height:44px !important;cursor:pointer !important}
.due-date-field input[type="date"]::-webkit-calendar-picker-indicator{position:absolute !important;inset:0 !important;width:100% !important;height:100% !important;margin:0 !important;padding:0 !important;opacity:0 !important;cursor:pointer !important}
.board-mobile-lock{display:none}
.mini-stats-row--clickable .mini-stat-link{display:block;text-decoration:none;color:inherit;cursor:pointer;transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease;position:relative;overflow:hidden;border-color:color-mix(in srgb,var(--stat-color,#2563eb) 26%,#e5e7eb)}
.mini-stats-row--clickable .mini-stat-link::before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:var(--stat-color,#2563eb)}
.mini-stats-row--clickable .mini-stat-link .stat-sm{color:var(--stat-color,#2563eb)}
.mini-stats-row--clickable .mini-stat-link.is-active{box-shadow:0 14px 34px rgba(37,99,235,.14);background:color-mix(in srgb,var(--stat-color,#2563eb) 9%,#fff);border-color:var(--stat-color,#2563eb)}

.db2-page{display:flex;flex-direction:column;gap:16px;--db2-line:rgba(148,163,184,.26);--db2-shadow:0 20px 45px rgba(15,23,42,.08)}
.db2-page .panel, .db2-hero, .db2-stat{border:1px solid var(--db2-line);box-shadow:var(--db2-shadow)}
.db2-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap;border:1px solid var(--border, #e5e7eb);border-radius:16px;padding:20px 24px;position:relative;overflow:hidden;background:radial-gradient(circle at 0% 0%, rgba(37,99,235,.13), transparent 32%), linear-gradient(180deg,#fff 0%,#f8fbff 100%)}
.db2-hero::before{content:"";width:64px;height:64px;border-radius:24px;background:linear-gradient(135deg,#dbeafe,#eff6ff);position:absolute;left:18px;top:26px;opacity:.9}
.db2-hero-text{padding-left:86px;min-height:74px}
.db2-hero-text::before{content:"🔧";position:absolute;left:43px;top:49px;font-size:26px;transform:rotate(-12deg)}
.db2-hero h2{letter-spacing:-.03em}
.db2-hero-actions .btn{min-height:44px;padding-inline:18px}
.db2-stat{display:flex;flex-direction:column;align-items:center;border:1px solid var(--border, #e5e7eb);text-decoration:none;color:inherit;text-align:center;background:#fff;border-radius:22px;padding:20px 22px;transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease}
.db2-stat:hover, .db2-link:hover, .db2-wo-item:hover{transform:translateY(-2px)}
.db2-stat-num{font-weight:800;font-size:clamp(26px,3vw,38px);line-height:1}
.db2-stat-label{font-size:11px;margin-top:4px;text-transform:uppercase;letter-spacing:.04em;color:#334155;font-weight:800}
.db2-main-grid{display:grid;grid-template-columns:1fr 340px;align-items:start;gap:18px}
.db2-link-grid{display:grid;grid-template-columns:repeat(2, 1fr);margin-top:4px;gap:12px}
.db2-link{display:flex;align-items:center;gap:8px;padding:10px 12px;border:1px solid var(--border, #e5e7eb);text-decoration:none;color:var(--text-body, #111827);font-size:13px;font-weight:500;min-height:62px;border-radius:16px;background:#fff;border-color:rgba(148,163,184,.28);transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease}
.db2-link span{font-size:20px}
.db2-link--primary{border-color:var(--accent, #2563eb);background:linear-gradient(180deg,#2563eb,#1d4ed8) !important;color:#fff !important;box-shadow:0 16px 30px rgba(37,99,235,.24)}
.db2-card-tall .list-stack{gap:0;border:1px solid rgba(148,163,184,.22);border-radius:18px;overflow:hidden}
.db2-card-tall .list-item{border-width:0 0 1px 0;border-radius:0}
.db2-card-tall .list-item:last-child{border-bottom:0}
.db2-wo-item{cursor:pointer;transition:transform .16s ease, background .16s ease}
.panel-head--split .badge{font-size:11px;font-weight:800}
.field-hint{min-height:16px;display:block;margin-top:6px;color:var(--muted);font-size:12px;line-height:1.35;font-weight:500}
.db2-link .db2-link-mark{width:32px;height:32px;min-width:32px;display:inline-flex;align-items:center;justify-content:center;border-radius:12px;background:#eef4ff;color:#1d4ed8;font-size:11px;font-weight:900;letter-spacing:.02em}
.db2-link--primary .db2-link-mark{background:rgba(255,255,255,.18);color:#fff}
.db2-hero-actions--clean{align-items:flex-start}
.db2-action-center{background:linear-gradient(180deg,#ffffff,#f8fbff)}
.db2-action-grid{display:grid;grid-template-columns:1fr;gap:10px}
.db2-action{display:flex;flex-direction:column;gap:3px;padding:13px 14px;border:1px solid rgba(148,163,184,.28);border-radius:16px;background:#fff;text-decoration:none;color:inherit;box-shadow:0 8px 20px rgba(15,23,42,.035);transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}
.db2-action:hover{transform:translateY(-1px);border-color:rgba(37,99,235,.45);box-shadow:0 12px 26px rgba(15,23,42,.08)}
.db2-action strong{font-size:14px}
.db2-action span{font-size:12px;color:#64748b}
.db2-action--primary{background:linear-gradient(180deg,#2563eb,#1d4ed8);color:#fff;border-color:#2563eb}
.db2-action--primary span{color:rgba(255,255,255,.82)}
.db2-action--alert{border-color:#fbbf24;background:#fffbeb;color:#92400e}
.db2-action--alert span{color:#b45309}
body.page-dashboard .dt-dash-v88{width:100%;max-width:1480px;margin:0 auto;color:#0f172a}
body.page-dashboard .dt-dash-v88 *{box-sizing:border-box}
body.page-dashboard .dt-dash-v88 a{text-decoration:none}
body.page-dashboard .dt-home-hero, body.page-dashboard .dt-action-hub, body.page-dashboard .dt-card, body.page-dashboard .dt-metric-card{border:1px solid rgba(148,163,184,.22);background:rgba(255,255,255,.92);box-shadow:0 18px 45px rgba(15,23,42,.07)}
body.page-dashboard .dt-home-hero{position:relative;overflow:hidden}
body.page-dashboard .dt-home-hero:before{content:"";position:absolute;inset:-60px -80px auto auto;width:300px;height:300px;border-radius:999px;background:radial-gradient(circle, rgba(37,99,235,.18), rgba(37,99,235,0) 68%);pointer-events:none}
body.page-dashboard .dt-role-pill{display:inline-flex;align-items:center;width:max-content;min-height:28px;padding:6px 10px;border-radius:999px;background:#eff6ff;color:#1d4ed8;border:1px solid #bfdbfe;font-weight:800;font-size:12px;letter-spacing:.02em;text-transform:uppercase}
body.page-dashboard .dt-home-hero h1{margin:12px 0 6px;font-size:clamp(26px,3vw,40px);line-height:1.05;letter-spacing:-.04em}
body.page-dashboard .dt-home-hero p{margin:0;color:#64748b;font-weight:650;max-width:680px}
body.page-dashboard .dt-home-hero__status{position:relative;z-index:1}
body.page-dashboard .dt-status-tile{border-radius:22px;background:#f8fafc;border:1px solid #e2e8f0;min-width:132px;padding:16px}
body.page-dashboard .dt-status-tile span{display:block;font-size:34px;line-height:1;font-weight:900;color:#2563eb;letter-spacing:-.04em}
body.page-dashboard .dt-status-tile small{display:block;margin-top:6px;color:#64748b;font-weight:800}
body.page-dashboard .dt-status-tile--warn span{color:#d97706}
body.page-dashboard .dt-status-tile--ok span{color:#16a34a}
body.page-dashboard .dt-action-hub{border-radius:26px;overflow:hidden}
body.page-dashboard .dt-action-card{position:relative;display:flex;flex-direction:column;justify-content:center;min-width:0;border:1px solid #e2e8f0;background:linear-gradient(180deg,#fff 0%,#f8fafc 100%);color:#0f172a;border-radius:20px;transition:transform .15s ease, box-shadow .15s ease, border-color .15s ease;overflow:hidden}
body.page-dashboard .dt-action-card:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(15,23,42,.1);border-color:#cbd5e1}
body.page-dashboard .dt-action-card strong{display:block;line-height:1.14;font-weight:900;letter-spacing:-.02em}
body.page-dashboard .dt-action-card span{display:block;margin-top:7px;color:#64748b;font-weight:700;line-height:1.25}
body.page-dashboard .dt-action-card--primary{background:linear-gradient(135deg,#2563eb,#1d4ed8);border-color:#1d4ed8;color:#fff}
body.page-dashboard .dt-action-card--primary span{color:#dbeafe}
body.page-dashboard .dt-action-card--request{background:linear-gradient(135deg,#e0f2fe,#fff);border-color:#7dd3fc}
body.page-dashboard .dt-action-card--warn{background:linear-gradient(135deg,#fff7ed,#fff);border-color:#f59e0b;color:#92400e}
body.page-dashboard .dt-metric-card{display:flex;flex-direction:column;justify-content:center;min-width:0;border-radius:22px;color:#0f172a;border-left:5px solid #cbd5e1}
body.page-dashboard .dt-metric-card span{display:block;font-weight:950;color:#0f172a;line-height:1;letter-spacing:-.05em}
body.page-dashboard .dt-metric-card small{display:block;margin-top:8px;color:#64748b;font-weight:850}
body.page-dashboard .dt-metric-card--blue{border-left-color:#2563eb}
body.page-dashboard .dt-metric-card--blue span{color:#2563eb}
body.page-dashboard .dt-metric-card--ok{border-left-color:#16a34a}
body.page-dashboard .dt-metric-card--ok span{color:#16a34a}
body.page-dashboard .dt-metric-card--warn{border-left-color:#d97706}
body.page-dashboard .dt-metric-card--warn span{color:#d97706}
body.page-dashboard .dt-card{border-radius:26px;overflow:hidden}
body.page-dashboard .dt-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #e2e8f0;background:linear-gradient(180deg,#f8fafc,#fff)}
body.page-dashboard .dt-card-head strong{font-size:17px;letter-spacing:-.02em}
body.page-dashboard .dt-card-head a{color:#2563eb;font-weight:850;font-size:13px}
body.page-dashboard .dt-list{display:flex;flex-direction:column}
body.page-dashboard .dt-list-row{display:grid;align-items:center;gap:10px 16px;color:#0f172a;border-bottom:1px solid #eef2f7;transition:background .15s ease;min-width:0;box-sizing:border-box}
body.page-dashboard .dt-list-row:last-child{border-bottom:0}
body.page-dashboard .dt-list-row:hover{background:#f8fafc}
body.page-dashboard .dt-row-code{font-weight:950;color:#1e293b;white-space:nowrap;min-width:0}
body.page-dashboard .dt-row-title{min-width:0;color:#334155;font-weight:760;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding-left:2px}
body.page-dashboard .dt-list-row small{color:#64748b;font-weight:700}
body.page-dashboard .dt-empty{color:#64748b;font-weight:800;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:18px}
body.login-page .login-bg-media, body.login-page .login-bg-media *, body.login-page .login-bg-overlay, body.login-page .login-bg-glow{pointer-events:none !important}
body.login-page .login-shell, body.login-page .login-card, body.login-page .login-form, body.login-page .login-field, body.login-page .login-field input, body.login-page .login-submit{pointer-events:auto !important}
body.login-page .login-shell{position:relative !important;z-index:20 !important}
body.login-page .login-card{position:relative !important;z-index:21 !important}
body.login-page .login-form{position:relative !important;z-index:22 !important}
body.login-page .login-field{cursor:text !important}
body.login-page .login-field__icon{pointer-events:none !important}
body.login-page .login-form--iconic input[name="identifier"], body.login-page .login-form--iconic input[name="password"]{position:relative !important;z-index:2 !important;-webkit-user-select:text !important;user-select:text !important;touch-action:manipulation !important;pointer-events:auto !important;opacity:1 !important}
body.login-page .login-form--iconic input[name="identifier"][readonly]{-webkit-text-fill-color:inherit !important}
body.page-notifications .notif-hero{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px;border-radius:24px;background:linear-gradient(135deg,#eff6ff,#fff);border-color:#dbeafe}
body.page-notifications .notif-hero h2{margin:4px 0 4px;font-size:clamp(24px,3vw,36px);letter-spacing:-.04em;color:#0f172a}
body.page-notifications .notif-summary-grid{display:grid;gap:12px;margin:14px 0}
body.page-notifications .notif-summary-card{background:#fff;border:1px solid #e5e7eb;border-radius:20px;padding:16px;box-shadow:0 12px 28px rgba(15,23,42,.06);position:relative;overflow:hidden}
body.page-notifications .notif-summary-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background:var(--ncolor,#2563eb)}
body.page-notifications .notif-summary-card--warn{--ncolor:#d97706}
.notif-summary-card--ok{--ncolor:#16a34a}
.notif-summary-card--info{--ncolor:#2563eb}
body.page-notifications .notif-summary-card span{display:block;font-size:12px;color:#64748b;font-weight:900;text-transform:uppercase;letter-spacing:.05em}
body.page-notifications .notif-summary-card strong{display:block;font-size:32px;line-height:1;margin:8px 0;color:#0f172a}
body.page-notifications .notif-summary-card small{color:#64748b;font-weight:750}
body.page-notifications .notif-list-panel{border-radius:24px;padding:0;overflow:hidden}
body.page-notifications .notif-list-head{padding:15px 18px;border-bottom:1px solid #e5e7eb;background:#f8fafc}
body.page-notifications .notif-list{display:grid;gap:0}
body.page-notifications .notif-card{display:flex;gap:12px;padding:15px 18px;border-bottom:1px solid #eef2f7;background:#fff}
body.page-notifications .notif-card.is-unread{background:#fff7ed}
body.page-notifications .notif-dot-icon{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;font-weight:950;background:#e2e8f0;color:#334155;flex:0 0 auto}
body.page-notifications .notif-card.is-unread .notif-dot-icon{background:#f59e0b;color:#fff}
body.page-notifications .notif-card-main{min-width:0;flex:1}
body.page-notifications .notif-card-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
body.page-notifications .notif-card-top strong{font-size:14px;color:#0f172a;line-height:1.2}
body.page-notifications .notif-time{font-size:11px;color:#64748b;font-weight:800;white-space:nowrap}
body.page-notifications .notif-card p{margin:6px 0 0;color:#475569;line-height:1.35;font-size:13px}
body.page-notifications .notif-card-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
.wo-create-page .wo-flat-layout{display:grid;grid-template-columns:minmax(360px,460px) minmax(0,1fr);gap:16px;align-items:start}
.wo-create-page .wo-flat-left.panel,.wo-create-page .wo-flat-right.panel{border-radius:22px;padding:18px;overflow:visible;box-shadow:0 14px 34px rgba(15,23,42,.06)}
.wo-create-page .wo-flat-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;min-width:0}
.wo-create-page .field-box input,.wo-create-page .field-box select,.wo-create-page .field-box textarea{width:100%;max-width:100%;min-width:0;box-sizing:border-box}
.wo-create-page .field-box--description,.wo-create-page .field-box--files{padding:14px 14px 12px !important;min-height:auto !important}
.wo-create-page .field-box--description textarea{display:block;width:100%;min-height:170px;padding:12px 14px;line-height:1.5;resize:vertical;box-sizing:border-box}

#tk-page,#tk-page *,#tk-page *::before,#tk-page *::after{box-sizing:border-box}
#tk-page{--c-blue:#2563eb;--c-blue-d:#1d4ed8;--c-blue-lt:#eff6ff;--c-blue-bd:#bfdbfe;--c-green:#15803d;--c-green-lt:#f0fdf4;--c-green-bd:#bbf7d0;--c-amber:#92400e;--c-amber-lt:#fffbeb;--c-amber-bd:#fde68a;--c-red:#dc2626;--c-red-lt:#fef2f2;--c-red-bd:#fecaca;--c-orange:#c2410c;--c-orange-lt:#fff7ed;--c-orange-bd:#fed7aa;--c-slate:#64748b;--c-muted:#94a3b8;--c-bd:#e2e8f0;--c-bg:#f1f5f9;--c-surface:#fff;--c-text:#0f172a;--c-text2:#334155;--r:10px;--rs:7px;--sh:0 1px 2px rgba(0,0,0,.05),0 3px 12px rgba(0,0,0,.07);--sh-md:0 4px 8px rgba(0,0,0,.06),0 12px 28px rgba(0,0,0,.09);font-family:var(--dt-font-family,'Inter',system-ui,sans-serif);background:var(--c-bg) !important;padding:20px 24px 64px !important;max-width:100% !important;width:100% !important;display:block !important}
#tk-page .tk-wrap{width:100%;display:flex;flex-direction:column;gap:10px}
#tk-page .tk-card{background:var(--c-surface) !important;border-radius:var(--r) !important;border:1px solid var(--c-bd) !important;box-shadow:var(--sh) !important;overflow:hidden !important;margin:0 !important;padding:0 !important}
#tk-page .wo-section-head, #tk-page .wo-section-head--summary, #tk-page .compact-comments-head, #tk-page .activity-clean-head{all:unset !important;display:flex !important;align-items:center !important;justify-content:space-between !important;padding:14px 24px !important;border-bottom:1px solid var(--c-bd) !important;box-sizing:border-box !important;width:100% !important}
#tk-page .wo-section-head h3, #tk-page .compact-comments-head h3, #tk-page .activity-clean-head h3{margin:0 !important;font-size:.9rem !important;font-weight:700 !important;color:var(--c-text) !important;letter-spacing:-.01em !important}
#tk-page .tk-hero{padding:22px 24px !important;display:flex !important;flex-direction:column !important;gap:16px !important}
#tk-page .tk-hero-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}
#tk-page .tk-hero-meta{flex:1;min-width:0}
#tk-page .tk-eyebrow{display:inline-block !important;font-size:10px !important;font-weight:700 !important;letter-spacing:.09em !important;text-transform:uppercase !important;color:var(--c-slate) !important;margin-bottom:5px !important}
#tk-page .tk-code{font-size:1.65rem !important;font-weight:800 !important;color:var(--c-text) !important;letter-spacing:-.025em !important;line-height:1.1 !important;margin:0 0 6px !important}
#tk-page .tk-brief{font-size:.92rem !important;color:var(--c-slate) !important;line-height:1.55 !important;margin:0 !important}
#tk-page .tk-hero-badges{display:flex !important;flex-wrap:wrap !important;gap:6px !important;align-items:center !important;flex-shrink:0 !important}
#tk-page .tk-badge{display:inline-flex !important;align-items:center !important;gap:4px !important;padding:4px 11px !important;border-radius:999px !important;font-size:11px !important;font-weight:700 !important;letter-spacing:.02em !important;white-space:nowrap !important;border:1px solid transparent !important}
#tk-page .tk-badge-request{background:var(--c-green-lt) !important;color:var(--c-green) !important;border-color:var(--c-green-bd) !important}
#tk-page .tk-badge-wo{background:var(--c-blue-lt) !important;color:var(--c-blue) !important;border-color:var(--c-blue-bd) !important}
#tk-page .tk-badge-open{background:var(--c-green-lt) !important;color:var(--c-green) !important;border-color:var(--c-green-bd) !important}
#tk-page .tk-badge-assigned{background:var(--c-blue-lt) !important;color:var(--c-blue) !important;border-color:var(--c-blue-bd) !important}
#tk-page .tk-badge-inprogress{background:var(--c-orange-lt) !important;color:var(--c-orange) !important;border-color:var(--c-orange-bd) !important}
#tk-page .tk-badge-resolved{background:#ecfdf5 !important;color:#065f46 !important;border-color:#a7f3d0 !important}
#tk-page .tk-badge-closed{background:#f1f5f9 !important;color:#475569 !important;border-color:var(--c-bd) !important}
#tk-page .tk-badge-canceled{background:var(--c-red-lt) !important;color:var(--c-red) !important;border-color:var(--c-red-bd) !important}
#tk-page .tk-badge-pending{background:var(--c-amber-lt) !important;color:var(--c-amber) !important;border-color:var(--c-amber-bd) !important}
#tk-page .tk-badge-approved{background:var(--c-green-lt) !important;color:var(--c-green) !important;border-color:var(--c-green-bd) !important}
#tk-page .tk-badge-baja{background:var(--c-green-lt) !important;color:var(--c-green) !important;border-color:var(--c-green-bd) !important}
#tk-page .tk-badge-media{background:var(--c-blue-lt) !important;color:var(--c-blue) !important;border-color:var(--c-blue-bd) !important}
#tk-page .tk-badge-alta{background:var(--c-amber-lt) !important;color:var(--c-amber) !important;border-color:var(--c-amber-bd) !important}
#tk-page .tk-badge-urgente{background:var(--c-red-lt) !important;color:var(--c-red) !important;border-color:var(--c-red-bd) !important}
#tk-page .badge,#tk-page [class*="badge-"]{display:inline-flex !important;align-items:center !important;padding:4px 11px !important;border-radius:999px !important;font-size:11px !important;font-weight:700 !important;border:1px solid var(--c-bd) !important;background:#f1f5f9 !important;color:#475569 !important}
#tk-page .badge.ok{background:var(--c-green-lt) !important;color:var(--c-green) !important;border-color:var(--c-green-bd) !important}
#tk-page .badge.warn{background:var(--c-amber-lt) !important;color:var(--c-amber) !important;border-color:var(--c-amber-bd) !important}
#tk-page .badge.err{background:var(--c-red-lt) !important;color:var(--c-red) !important;border-color:var(--c-red-bd) !important}
#tk-page .tk-hero-back{display:inline-flex !important;align-items:center !important;gap:6px !important;padding:7px 14px !important;border-radius:var(--rs) !important;border:1.5px solid var(--c-bd) !important;background:transparent !important;font-size:.82rem !important;font-weight:600 !important;color:var(--c-slate) !important;text-decoration:none !important;transition:all .14s !important}
#tk-page .tk-hero-back:hover{background:var(--c-bg) !important;border-color:#cbd5e1 !important;color:var(--c-text) !important}
#tk-page .tk-meta-bar{display:flex !important;overflow-x:auto !important;-webkit-overflow-scrolling:touch !important}
#tk-page .tk-meta-item{display:flex !important;flex-direction:column !important;gap:3px !important;padding:13px 20px !important;border-right:1px solid var(--c-bd) !important;flex-shrink:0 !important;min-width:0 !important}
#tk-page .tk-meta-item:last-child{border-right:none !important}
#tk-page .tk-meta-label{font-size:9px !important;font-weight:700 !important;text-transform:uppercase !important;letter-spacing:.08em !important;color:var(--c-muted) !important;white-space:nowrap !important}
#tk-page .tk-meta-val{font-size:.82rem !important;font-weight:600 !important;color:var(--c-text2) !important;white-space:nowrap !important}
#tk-page .tk-meta-badges{display:flex !important;align-items:center !important;gap:6px !important;padding:12px 20px !important;flex-wrap:wrap !important;margin-left:auto !important;border-left:1px solid var(--c-bd) !important;flex-shrink:0 !important}
#tk-page .tk-cta{background:linear-gradient(135deg,#1e3a8a 0%,#2563eb 60%,#3b82f6 100%) !important;border:none !important;box-shadow:0 4px 18px rgba(37,99,235,.35) !important;display:flex !important;align-items:center !important;justify-content:space-between !important;gap:16px !important;padding:18px 24px !important;flex-wrap:wrap !important}
#tk-page .tk-cta-copy .tk-eyebrow{color:rgba(255,255,255,.6) !important}
#tk-page .tk-cta-title{font-size:1.05rem !important;font-weight:800 !important;color:#fff !important;margin:0 !important;letter-spacing:-.01em !important}
#tk-page .tk-cta-btns{display:flex !important;gap:8px !important;flex-wrap:wrap !important;flex-shrink:0 !important}
#tk-page .tk-tabs{display:flex !important;padding:4px !important;gap:2px !important;overflow-x:auto !important;-webkit-overflow-scrolling:touch !important;background:var(--c-surface) !important;border-radius:var(--r) !important;border:1px solid var(--c-bd) !important;box-shadow:var(--sh) !important}
#tk-page .tk-tab-btn{flex:1 !important;min-width:fit-content !important;padding:9px 14px !important;font-size:.84rem !important;font-weight:600 !important;border:none !important;background:transparent !important;color:var(--c-slate) !important;border-radius:6px !important;cursor:pointer !important;white-space:nowrap !important;display:inline-flex !important;align-items:center !important;justify-content:center !important;gap:5px !important;transition:all .13s !important}
#tk-page .tk-tab-btn:hover{background:var(--c-bg) !important;color:var(--c-text) !important}
#tk-page .tk-tab-btn.active{background:var(--c-blue) !important;color:#fff !important;box-shadow:0 1px 4px rgba(37,99,235,.4) !important}
#tk-page .tk-count{display:inline-flex !important;align-items:center !important;justify-content:center !important;min-width:17px !important;height:17px !important;padding:0 4px !important;border-radius:999px !important;font-size:10px !important;font-weight:700 !important}
#tk-page .tk-tab-btn.active .tk-count{background:rgba(255,255,255,.25) !important;color:#fff !important}
#tk-page .tk-tab-btn:not(.active) .tk-count{background:#e2e8f0 !important;color:#64748b !important}
#tk-page .tk-panel{display:none !important}
#tk-page .tk-panel.active{display:block !important}
#tk-page .tk-panel-head{display:flex !important;align-items:center !important;justify-content:space-between !important;padding:14px 24px !important;border-bottom:1px solid var(--c-bd) !important}
#tk-page .tk-panel-head h3{margin:0 !important;font-size:.9rem !important;font-weight:700 !important;color:var(--c-text) !important;letter-spacing:-.01em !important}
#tk-page .tk-info-grid{display:grid !important;grid-template-columns:1fr 1fr !important}
#tk-page .tk-info-cell{padding:13px 24px !important;border-bottom:1px solid var(--c-bd) !important;border-right:1px solid var(--c-bd) !important;display:flex !important;flex-direction:column !important;gap:4px !important}
#tk-page .tk-info-cell:nth-child(even){border-right:none !important}
#tk-page .tk-field-label{font-size:9.5px !important;font-weight:700 !important;text-transform:uppercase !important;letter-spacing:.06em !important;color:var(--c-muted) !important}
#tk-page .tk-field-val{font-size:.875rem !important;font-weight:500 !important;color:var(--c-text2) !important}
#tk-page .tk-problem{padding:18px 24px !important;border-bottom:1px solid var(--c-bd) !important}
#tk-page .tk-problem .tk-field-label{display:block !important;margin-bottom:8px !important}
#tk-page .tk-problem p{margin:0 !important;line-height:1.7 !important;color:var(--c-text2) !important;font-size:.9rem !important}
#tk-page .tk-bridge{padding:16px 24px !important;border-top:1px solid var(--c-bd) !important;background:var(--c-bg) !important}
#tk-page .tk-bridge-label{font-size:9.5px !important;font-weight:700 !important;text-transform:uppercase !important;letter-spacing:.06em !important;color:var(--c-muted) !important;display:block !important;margin-bottom:10px !important}
#tk-page .tk-bridge-grid{display:grid !important;grid-template-columns:repeat(auto-fill,minmax(145px,1fr)) !important;gap:10px !important}
#tk-page .tk-bridge-cell{display:flex !important;flex-direction:column !important;gap:3px !important}
#tk-page .tk-bridge-cell .tk-field-label{display:block !important}
#tk-page .tk-bridge-cell .tk-field-val{font-size:.84rem !important}
#tk-page .tk-bridge-head{display:flex !important;align-items:center !important;justify-content:space-between !important;gap:8px !important;margin-bottom:12px !important;flex-wrap:wrap !important}
#tk-page .tk-soft-note{margin:0 24px 4px !important;padding:9px 13px !important;border-radius:7px !important;background:#fefce8 !important;border:1px solid #fde047 !important;font-size:.82rem !important;color:#854d0e !important;display:flex !important;align-items:center !important;gap:7px !important}
#tk-page .tk-action-zone-wrap{border-top:2px solid var(--c-bd) !important}
#tk-page .tk-action-head{padding:16px 24px 4px !important;display:flex !important;align-items:baseline !important;gap:10px !important}
#tk-page .tk-action-eyebrow{font-size:9px !important;font-weight:700 !important;text-transform:uppercase !important;letter-spacing:.09em !important;color:var(--c-blue) !important;white-space:nowrap !important}
#tk-page .tk-action-title{font-size:.94rem !important;font-weight:700 !important;color:var(--c-text) !important;margin:0 !important;letter-spacing:-.01em !important}
#tk-page .tk-action-form{padding:0 24px 22px !important}
#tk-page .tk-form-grid{display:grid !important;grid-template-columns:1fr 1fr !important;border:1px solid var(--c-bd) !important;border-radius:var(--rs) !important;overflow:hidden !important;margin:14px 0 16px !important}
#tk-page .tk-form-cell{padding:11px 16px !important;border-bottom:1px solid var(--c-bd) !important;border-right:1px solid var(--c-bd) !important;display:flex !important;flex-direction:column !important;gap:5px !important}
#tk-page .tk-form-cell:nth-child(even){border-right:none !important}
#tk-page .tk-form-cell .tk-field-label{display:block !important}
#tk-page .tk-form-cell select, #tk-page .tk-form-cell input[type="date"]{width:100% !important;border:1px solid var(--c-bd) !important;border-radius:5px !important;padding:6px 9px !important;font-size:.84rem !important;color:var(--c-text2) !important;background:#fff !important;transition:border-color .14s,box-shadow .14s !important;font-family:inherit !important}
#tk-page .tk-form-cell select:focus, #tk-page .tk-form-cell input[type="date"]:focus{outline:none !important;border-color:var(--c-blue) !important;box-shadow:0 0 0 3px rgba(37,99,235,.12) !important}
#tk-page .tk-form-cell select:disabled, #tk-page .tk-form-cell input:disabled{background:var(--c-bg) !important;color:var(--c-muted) !important;cursor:not-allowed !important}
#tk-page .tk-comment-form{padding:14px 24px !important;border-bottom:1px solid var(--c-bd) !important;background:var(--c-bg) !important}
#tk-page .tk-comment-label{display:block !important;font-size:9.5px !important;font-weight:700 !important;text-transform:uppercase !important;letter-spacing:.06em !important;color:var(--c-muted) !important;margin-bottom:6px !important}
#tk-page .tk-comment-ta{width:100% !important;border:1px solid var(--c-bd) !important;border-radius:var(--rs) !important;padding:10px 13px !important;font-size:.88rem !important;font-family:inherit !important;resize:vertical !important;background:#fff !important;transition:border-color .14s !important;color:var(--c-text) !important}
#tk-page .tk-comment-ta:focus{outline:none !important;border-color:var(--c-blue) !important;box-shadow:0 0 0 3px rgba(37,99,235,.12) !important}
#tk-page .tk-comments-list{padding:0 24px 12px !important}
#tk-page .tk-comment-item{padding:14px 0 !important;border-bottom:1px solid var(--c-bd) !important;display:flex !important;flex-direction:column !important;gap:5px !important}
#tk-page .tk-comment-item:last-child{border-bottom:none !important}
#tk-page .tk-comment-author{font-size:.875rem !important;font-weight:700 !important;color:var(--c-text) !important}
#tk-page .tk-comment-date{font-size:.78rem !important;color:var(--c-muted) !important}
#tk-page .tk-comment-body{font-size:.875rem !important;color:var(--c-text2) !important;line-height:1.65 !important}
#tk-page .tk-activity-subtabs{display:flex !important;gap:6px !important;padding:12px 24px !important;border-bottom:1px solid var(--c-bd) !important}
#tk-page .tk-subtab{padding:5px 14px !important;border-radius:999px !important;font-size:.8rem !important;font-weight:600 !important;border:1.5px solid var(--c-bd) !important;background:transparent !important;color:var(--c-slate) !important;cursor:pointer !important;transition:all .13s !important}
#tk-page .tk-subtab.active{background:var(--c-blue) !important;border-color:var(--c-blue) !important;color:#fff !important}
#tk-page .tk-activity-feed{padding:8px 24px 18px !important}
#tk-page .tk-act-item{display:flex !important;flex-direction:column !important;gap:4px !important;padding:11px 0 11px 22px !important;border-left:2px solid var(--c-bd) !important;position:relative !important;margin-left:10px !important}
#tk-page .tk-act-item::before{content:"" !important;width:8px !important;height:8px !important;border-radius:50% !important;background:var(--c-blue) !important;border:2px solid #fff !important;box-shadow:0 0 0 2px var(--c-blue) !important;position:absolute !important;left:-5px !important;top:16px !important}
#tk-page .tk-act-item:last-child{border-left-color:transparent !important}
#tk-page .tk-act-badge{display:inline-flex !important;align-items:center !important;padding:2px 9px !important;border-radius:999px !important;font-size:10.5px !important;font-weight:700 !important;background:#f1f5f9 !important;color:#475569 !important;border:1px solid var(--c-bd) !important}
#tk-page .tk-act-meta{font-size:.77rem !important;color:var(--c-muted) !important;margin-top:1px !important}
#tk-page .tk-act-note{font-size:.83rem !important;color:#475569 !important;line-height:1.55 !important}
#tk-page .tk-geo-list{padding:0 24px 16px !important}
#tk-page .tk-geo-item{display:flex !important;flex-wrap:wrap !important;align-items:center !important;justify-content:space-between !important;gap:8px !important;padding:12px 0 !important;border-bottom:1px solid var(--c-bd) !important}
#tk-page .tk-geo-item:last-child{border-bottom:none !important}
#tk-page .tk-geo-coords{font-size:.78rem !important;color:#1d4ed8 !important;width:auto !important}
#tk-page .tk-dropzone-wrap{padding:16px 24px !important;border-bottom:1px solid var(--c-bd) !important}
#tk-page .tk-dropzone{border:2px dashed var(--c-bd) !important;border-radius:var(--rs) !important;padding:28px 16px !important;text-align:center !important;background:var(--c-bg) !important;cursor:pointer !important;transition:border-color .14s,background .14s !important}
#tk-page .tk-dropzone:hover{border-color:var(--c-blue) !important;background:var(--c-blue-lt) !important}
#tk-page .tk-dz-title{display:block !important;font-size:.9rem !important;font-weight:700 !important;color:var(--c-text) !important;margin-bottom:3px !important}
#tk-page .tk-dz-sub{display:block !important;font-size:.8rem !important;color:var(--c-muted) !important;margin-bottom:14px !important}
#tk-page .tk-files-grid{display:grid !important;grid-template-columns:repeat(auto-fill,minmax(170px,1fr)) !important;gap:10px !important;padding:14px 24px !important}
#tk-page .tk-file-card{border:1px solid var(--c-bd) !important;border-radius:var(--rs) !important;overflow:hidden !important;background:#fff !important;transition:box-shadow .14s,transform .14s !important}
#tk-page .tk-file-card:hover{box-shadow:var(--sh-md) !important;transform:translateY(-2px) !important}
#tk-page .tk-file-thumb{aspect-ratio:16/9;overflow:hidden;background:var(--c-bg)}
#tk-page .tk-file-thumb img{width:100% !important;height:100% !important;object-fit:cover !important;display:block !important}
#tk-page .tk-file-meta{padding:9px 11px !important;display:flex !important;flex-direction:column !important;gap:6px !important}
#tk-page .tk-file-name{font-size:.78rem !important;font-weight:600 !important;color:var(--c-text) !important;word-break:break-word !important;line-height:1.35 !important}
#tk-page .tk-file-plain{padding:14px 16px !important;display:flex !important;flex-direction:column !important;gap:8px !important}
#tk-page .modal-backdrop, #contractorAssignModal{position:fixed !important;inset:0 !important;z-index:999 !important;display:flex !important;align-items:center !important;justify-content:center !important;background:rgba(0,0,0,.48) !important;backdrop-filter:blur(4px) !important;opacity:0 !important;pointer-events:none !important;transition:opacity .18s !important}
#tk-page .modal-backdrop.is-visible, #contractorAssignModal.is-visible{opacity:1 !important;pointer-events:all !important}
#tk-page .modal-card, #contractorAssignModal .modal-card{background:#fff !important;border-radius:14px !important;box-shadow:0 24px 60px rgba(0,0,0,.3) !important;width:min(94vw,480px) !important;max-height:90vh !important;display:flex !important;flex-direction:column !important;overflow:hidden !important}
#tk-page .modal-head{padding:16px 22px !important;border-bottom:1px solid var(--c-bd) !important;display:flex !important;align-items:center !important;justify-content:space-between !important}
#tk-page .modal-head .eyebrow{font-size:9px !important;text-transform:uppercase !important;font-weight:700 !important;letter-spacing:.08em !important;color:var(--c-muted) !important;display:block !important;margin-bottom:2px !important}
#tk-page .modal-head strong{font-weight:800 !important;font-size:.95rem !important;color:var(--c-text) !important}
#tk-page .modal-body{padding:20px 22px !important;overflow-y:auto !important;flex:1 !important}
#tk-page .modal-body label{display:flex !important;flex-direction:column !important;gap:6px !important;font-size:.88rem !important;font-weight:600 !important;color:var(--c-text) !important}
#tk-page .modal-body label select{border:1px solid var(--c-bd) !important;border-radius:6px !important;padding:8px 10px !important;font-size:.88rem !important;color:var(--c-text) !important;background:#fff !important;width:100% !important;font-family:inherit !important}
#tk-page .modal-actions{display:flex !important;gap:8px !important;justify-content:flex-end !important;padding:14px 22px !important;border-top:1px solid var(--c-bd) !important;background:#fff !important}
.ticket-image-modal{place-items:center;padding:20px;position:fixed !important;inset:0 !important;z-index:1000 !important;display:flex !important;align-items:center !important;justify-content:center !important}
.ticket-image-modal[hidden]{display:none !important}
.ticket-image-modal__overlay{position:absolute !important;inset:0 !important;background:rgba(0,0,0,.72) !important;backdrop-filter:blur(4px) !important}
.ticket-image-modal__card{z-index:1;border:1px solid rgba(226,232,240,.9);position:relative !important;background:#fff !important;border-radius:14px !important;box-shadow:0 24px 60px rgba(0,0,0,.45) !important;width:min(92vw,800px) !important;max-height:90vh !important;display:flex !important;flex-direction:column !important;overflow:hidden !important}
.ticket-image-modal__head{gap:12px;background:linear-gradient(180deg,#fff,#f8fafc);display:flex !important;align-items:center !important;justify-content:space-between !important;padding:14px 18px !important;border-bottom:1px solid #e2e8f0 !important}
.ticket-image-modal__head .eyebrow{font-size:9px !important;text-transform:uppercase !important;font-weight:700 !important;letter-spacing:.08em !important;color:#64748b !important;display:block !important;margin-bottom:2px !important}
.ticket-image-modal__head h3{color:#0f172a;word-break:break-word;margin:0 !important;font-size:.92rem !important;font-weight:700 !important}
.ticket-image-modal__body{min-height:220px;place-items:center;flex:1 !important;overflow:auto !important;display:flex !important;align-items:center !important;justify-content:center !important;padding:16px !important;background:#f1f5f9 !important}
.ticket-image-modal__body img{object-fit:contain;max-width:100% !important;max-height:60vh !important;border-radius:8px !important;display:block !important;box-shadow:0 4px 20px rgba(0,0,0,.15) !important}
.ticket-image-modal__foot{justify-content:flex-end;background:#fff;display:flex !important;gap:8px !important;padding:12px 18px !important;border-top:1px solid #e2e8f0 !important}
#tk-page .tk-btn,#tk-page .btn{display:inline-flex !important;align-items:center !important;justify-content:center !important;gap:6px !important;padding:8px 16px !important;border-radius:7px !important;font-size:.855rem !important;font-weight:600 !important;border:1.5px solid transparent !important;cursor:pointer !important;transition:all .13s !important;text-decoration:none !important;white-space:nowrap !important;line-height:1.3 !important;font-family:inherit !important}
#tk-page .tk-btn-primary,#tk-page .btn.primary{background:var(--c-blue) !important;color:#fff !important;border-color:var(--c-blue) !important}
#tk-page .tk-btn-primary:hover,#tk-page .btn.primary:hover{background:var(--c-blue-d) !important;border-color:var(--c-blue-d) !important}
#tk-page .tk-btn-ghost,#tk-page .btn.ghost{background:transparent !important;color:#475569 !important;border-color:var(--c-bd) !important}
#tk-page .tk-btn-ghost:hover,#tk-page .btn.ghost:hover{background:var(--c-bg) !important;color:var(--c-text) !important;border-color:#cbd5e1 !important}
#tk-page .tk-btn-sm,#tk-page .btn.small{padding:5px 11px !important;font-size:.78rem !important}
#tk-page .tk-btn-white{background:#fff !important;color:var(--c-blue) !important;border-color:#fff !important;font-weight:700 !important}
#tk-page .tk-btn-white:hover{background:#dbeafe !important}
#tk-page .tk-btn-ghost-inv{background:rgba(255,255,255,.14) !important;color:#fff !important;border-color:rgba(255,255,255,.28) !important}
#tk-page .tk-btn-ghost-inv:hover{background:rgba(255,255,255,.24) !important}
#tk-page .icon-btn{width:32px !important;height:32px !important;border-radius:8px !important;border:none !important;background:transparent !important;cursor:pointer !important;display:inline-flex !important;align-items:center !important;justify-content:center !important;font-size:1.05rem !important;color:#64748b !important;text-decoration:none !important;transition:background .13s !important}
#tk-page .icon-btn:hover{background:var(--c-bg) !important;color:var(--c-text) !important}
#tk-page .tk-action-row{display:flex !important;flex-wrap:wrap !important;gap:8px !important;align-items:center !important;margin-top:4px !important}

#tk-page .tk-action-row--overview{
  flex-wrap:nowrap !important;
  gap:7px !important;
}
#tk-page .tk-action-row--overview .btn{
  flex:0 1 auto !important;
}
@media (max-width:720px){
  #tk-page .tk-action-row--overview{
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:6px !important;
    width:100% !important;
  }
  #tk-page .tk-action-row--overview .btn{
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    justify-content:center !important;
    padding:7px 6px !important;
    border-radius:10px !important;
    font-size:.74rem !important;
    line-height:1.15 !important;
    white-space:normal !important;
    text-align:center !important;
  }
}
@media (max-width:360px){
  #tk-page .tk-action-row--overview .btn{
    font-size:.7rem !important;
    padding-inline:4px !important;
  }
}
#tk-page .wo-readonly-field{display:flex !important;flex-direction:column !important;gap:3px !important}
#tk-page .wo-readonly-field>span{font-size:9.5px !important;font-weight:700 !important;text-transform:uppercase !important;letter-spacing:.05em !important;color:var(--c-muted) !important}
#tk-page .wo-readonly-field>strong{font-size:.88rem !important;color:var(--c-text) !important}
#tk-page .wo-readonly-field>small{font-size:.75rem !important;color:var(--c-muted) !important}
#tk-page .tk-empty{padding:28px 24px !important;text-align:center !important;color:var(--c-muted) !important;font-size:.88rem !important}
#tk-page .tk-empty-soft{display:flex !important;flex-direction:column !important;gap:5px !important;align-items:center !important}
#tk-page .tk-empty-soft strong{color:#334155 !important;font-size:.9rem !important;font-weight:700 !important}
#tk-page .tk-empty-soft span{font-size:.83rem !important;color:var(--c-muted) !important;max-width:340px !important;text-align:center !important;line-height:1.55 !important}
#tk-page .tk-sep{border:none !important;border-top:1px solid var(--c-bd) !important;margin:0 !important}
#tk-page .tk-row{display:flex !important;align-items:center !important;gap:8px !important;flex-wrap:wrap !important}
#tk-page .tk-stack{display:flex !important;flex-direction:column !important;gap:8px !important}
#tk-page .muted{color:var(--c-slate) !important}
#tk-page .small{font-size:.8rem !important}
#tk-page .between{display:flex !important;align-items:center !important;justify-content:space-between !important;gap:8px !important;flex-wrap:wrap !important}
#tk-page .stack{display:flex !important;flex-direction:column !important;gap:12px !important}
#tk-page .stack-sm{display:flex !important;flex-direction:column !important;gap:8px !important}
#tk-page .list-item{padding:0 !important}
html{box-sizing:border-box;scrollbar-gutter:auto;overflow:hidden;width:100%;max-width:100%;height:100%;min-height:100%;background:#edf3f8}

:root{--dt-font-family:'Inter', system-ui, sans-serif;--dt-brand-gap:10px;--ink:var(--text,#0f172a);--text-body:var(--text,#111827);--text-muted:var(--muted,#64748b);--text-subtle:#94a3b8;--border:var(--line,#e5e7eb);--accent:var(--acc,#2563eb);--surface:var(--card,#fff);--surface-soft:#f8fafc;--board-shell-dynamic-h:calc(100dvh - 260px);--bg:#f6f8fc;--card:#fff;--line:#e5e7eb;--text:#0f172a;--muted:#64748b;--acc:#2563eb;--acc2:#1d4ed8;--soft:#eff6ff;--nav:#0f172a;--nav2:#172554;--ok:#16a34a;--warn:#f59e0b;--danger:#ef4444;--shadow:0 16px 40px rgba(15,23,42,.08);--brand-sky:#2ea0d6;--brand-indigo:#29206f;--brand-blue:#1876bc;--brand-gray-30:#c7c9ce;--brand-gray-55:#8f9197;--brand-gray-80:#66676d;--dt-vh:100vh;--board-shell-h:calc(100vh - 235px);--dt-mobile-shell-pad:14px;--dt-mobile-card-radius:22px;--dt-sidebar-top:#153b74;--dt-sidebar-bottom:#0c214a;--clr-primary:var(--acc,#2563eb);--clr-border:var(--line,#e5e7eb);--clr-surface:var(--card,#fff);--clr-bg:var(--bg,#f6f8fc);--clr-text:var(--text,#0f172a);--clr-muted:var(--muted,#64748b)}

html,body{font-family:var(--dt-font-family,'Inter',system-ui,sans-serif)}
body:not(.login-page) .app-shell,body:not(.login-page) .main,.sidebar,.topbar,.panel,.card,.stat-card,.table-card,.modal-card,.btn,.badge,.user-pill{font-family:var(--dt-font-family,'Inter',system-ui,sans-serif)}
button,input,select,textarea{font:inherit}

body:not(.login-page) input,body:not(.login-page) select,body:not(.login-page) textarea{max-width:100%;min-width:0;box-sizing:border-box}
body:not(.login-page) .field,body:not(.login-page) .wo-field,body:not(.login-page) .form-field,body:not(.login-page) .filter-card label{min-width:0}
body:not(.login-page) .table-wrap,body:not(.login-page) .request-table-wrap{width:100%;max-width:100%;box-sizing:border-box;overflow-x:auto;-webkit-overflow-scrolling:touch}
body:not(.login-page) .table,body:not(.login-page) .request-table,body:not(.login-page) .dt-table{max-width:100%;box-sizing:border-box}
body:not(.login-page) .empty-state{width:100%;box-sizing:border-box;text-align:center}

.modal-backdrop, #contractorAssignModal, .ticket-contractor-modal, .contractors-create-modal, .ticket-image-modal, .modal-shell, .sysdev-modal-backdrop, .calendar-modal-shell, .analytics-modal{z-index:10500 !important}
.list-item, .tk-act-item, .activity-item, .tk-comment-item, .compact-comment-item{overflow:visible !important}

.wo-create-page{max-width:1100px;width:min(1100px,100%) !important;margin:0 auto !important;padding-bottom:32px !important;display:flex !important;flex-direction:column !important;gap:0 !important}
.wo-layout{display:grid !important;grid-template-columns:380px 1fr !important;gap:16px !important;align-items:start !important}
.wo-panel{background:var(--card,#fff) !important;border:1px solid var(--line,#e5e7eb) !important;border-radius:1.25rem !important;overflow:hidden !important}
.wo-section{padding:18px 18px 16px !important;display:flex !important;flex-direction:column !important;gap:12px !important}
.wo-section+.wo-section{border-top:1px solid var(--line,#e5e7eb) !important}
.wo-right{display:flex !important;flex-direction:column !important;gap:12px !important}
.wo-field{display:flex !important;flex-direction:column !important;gap:5px !important;min-width:0 !important}
.wo-field select,.wo-field input:not([type=hidden]),.wo-field textarea{width:100% !important;padding:.5rem .75rem !important;border:1.5px solid var(--line,#e5e7eb) !important;border-radius:.6rem !important;background:#fff !important;color:var(--text,#0f172a) !important;font-size:.875rem !important;box-sizing:border-box !important;min-height:unset !important;height:auto !important}
.wo-submit{background:var(--card,#fff) !important;border:1px solid var(--line,#e5e7eb) !important;border-radius:1.25rem !important;padding:16px 18px !important;display:flex !important;gap:10px !important;align-items:center !important}
@media(max-width:900px){.wo-layout{grid-template-columns:1fr !important}.wo-right{order:-1 !important}}
@media(max-width:600px){.wo-row{grid-template-columns:1fr !important}}

body.page-locations .location-list-stack,body.page-locations .location-grid-cards{content-visibility:auto;contain-intrinsic-size:900px;overflow-anchor:none}

@media (max-width:1180px){
.cards4,.three{grid-template-columns:repeat(2,minmax(0,1fr))}
.two,.split{grid-template-columns:1fr}
.main{padding:18px}

.filter-card .grid-5,.filter-card .grid-4,.request-actions-grid,.mini-grid{grid-template-columns:1fr 1fr}
.grid-6,.role-grid,.team-grid{grid-template-columns:1fr 1fr}.role-grid,.team-grid{grid-template-columns:1fr}
body:not(.login-page) .inbox-layout{grid-template-columns:1fr}
.request-table td,.request-table th{white-space:normal}

.my-requests-filter-grid{grid-template-columns:1fr 1fr}
.location-grid-cards{grid-template-columns:1fr}
.board-filter-card{position:relative !important;top:auto !important}
.dt-kanban{grid-template-columns:repeat(2,minmax(250px,1fr));grid-auto-columns:minmax(300px,82vw) !important;gap:12px !important}
.kanban-col, .dt-col{flex-basis:300px !important;width:300px !important;min-width:300px !important;max-width:300px !important;height:calc(100vh - 215px) !important;max-height:calc(100vh - 215px) !important}
.board-page-header{align-items:stretch}
.board-tabs--inline{width:100%;justify-content:stretch}
.board-tabs--inline a{flex:1 1 0;text-align:center}
.board-filter-card--tight{position:relative;top:auto}
.board-toolbar-main{align-items:flex-start}
.board-filter-grid--compact{grid-template-columns:repeat(2,minmax(0,1fr)) !important;grid-template-columns:repeat(2,minmax(0,1fr))}
.kanban-board-shell{min-height:auto}
.kanban-col,.dt-col{min-height:500px !important;flex-basis:300px !important;min-width:300px !important;max-width:300px !important;height:calc(100vh - 180px) !important}
.calendar-grid{grid-template-columns:repeat(2,minmax(0,1fr));height:auto;overflow:visible;grid-auto-rows:auto}
.calendar-head{font-size:12px;white-space:normal;line-height:1.15;text-align:center;min-height:46px;padding:6px;height:38px !important;min-height:38px !important}
.calendar-page-shell{height:auto;min-height:0}
.calendar-panel{height:auto;min-height:0;overflow:visible !important}
.calendar-weekdays,.calendar-days-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.calendar-days-grid{grid-template-rows:none;grid-auto-rows:minmax(170px,auto);overflow:visible !important}
}
@media (max-width:760px){
.cards4,.three,.user-cards,.quick-grid,.metaGrid,.mini-grid,.requester-form .grid.two{grid-template-columns:1fr}
body:not(.login-page) .topbar{flex-direction:column;align-items:flex-start}
.filter-card .grid-5,.filter-card .grid-4,.request-actions-grid,.mini-grid,.quick-grid,.cards4,.two,.three{grid-template-columns:1fr}
.grid-6,.role-grid,.team-grid{grid-template-columns:1fr}
.selection-grid,.modal-mini-grid{grid-template-columns:1fr}
body:not(.login-page) .bar-row{grid-template-columns:1fr;gap:6px}
body:not(.login-page) .bar-value{text-align:left}
.modal-backdrop{padding:12px}
body{font-size:14px}

.dashboard-stats-grid,.requester-stats-grid,.notifications-stats-grid,.profile-stats-grid,.people-stats-grid,.cards4,.three,.two,.split,.quick-grid,.metaGrid,.mini-grid,.user-cards,.people-user-cards,.people-team-grid{grid-template-columns:1fr}
.dashboard-panel .panel-head,.wo-section-head,.filter-toolbar,.filter-toolbar--request,.module-inline-head-between{flex-direction:column;align-items:stretch}
.top-left,.top-actions,.wo-hero-actions,.filter-actions,.request-table .action-row{width:100%}
.sidebar-toggle,.icon-btn,.btn{min-height:42px}
body:not(.login-page) .btn.small{min-height:36px}
body:not(.login-page) .wo-toolbar-left,body:not(.login-page) .wo-toolbar-right{width:100%;display:grid;grid-template-columns:1fr;gap:10px}
body:not(.login-page) .wo-toolbar-item{width:auto}
.filter-card .grid-5,.filter-card .grid-4,.dt-filters .grid-5,.dt-filters .grid-4,.grid-4.compact-grid{grid-template-columns:1fr}
.request-filters-panel,.filter-card,.request-list-panel,.table-card,.dashboard-panel{padding:14px}
.request-table tr{padding:12px 14px}
.request-table td::before{margin-bottom:2px}
body:not(.login-page) .table th,body:not(.login-page) .table td{padding:8px}
.wo-hero h2,.dashboard-hero h2{font-size:1.1rem}
.empty-state,.empty-state--action{padding:14px 16px}
.tabs,.wo-tabs{gap:6px}
.tabs a,.wo-tab{flex:1 1 calc(50% - 6px);text-align:center;justify-content:center}
body:not(.login-page) .workflow-strip{gap:6px}
.workflow-chip,.ticket-role-pill{width:100%;justify-content:flex-start}
.request-primary-cell strong,.ticket-title,strong{overflow-wrap:anywhere}
.modal-form--user-editor .modal-actions-sticky{padding:12px;flex-direction:column}
.modal-form--user-editor .modal-actions-sticky .btn{width:100%}
.team-summary-grid{grid-template-columns:1fr}
.modal-user-editor .permission-select-grid, .modal-user-editor .role-select-grid, .modal-user-editor .selection-grid{grid-template-columns:1fr}
.login-page{padding:14px;background:linear-gradient(180deg,#eef2f7,#f8fafc)}
.login-card h1,.login-card h2{font-size:1.35rem}
.analytics-modal{padding:10px}
body.page-board .kanban-board{grid-template-columns:repeat(1,minmax(0,1fr))}
.request-filter-grid .field-box--location{grid-column:span 1}
.field-box select,.field-box input{min-height:44px}
.input-with-action{grid-template-columns:1fr}
.input-with-action .btn{width:100%}
.analytics-modal-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
.analytics-modal-filters{gap:6px}
.analytics-filter-chip{flex:1 1 calc(50% - 6px);justify-content:space-between}
.login-shell{padding:14px !important;min-height:100dvh}
.login-card{width:100% !important;border-radius:22px !important;padding:18px !important}
.login-hero{padding:6px 0 0 !important}
.login-hero h1{font-size:1.9rem !important;line-height:1.05}
.calendar-toolbar{align-items:stretch}
.calendar-toolbar .btn{width:100%;justify-content:center}
.calendar-toolbar-center{order:-1;width:100%}
.field-box{padding:12px;min-height:auto}
.my-requests-filter-grid{grid-template-columns:1fr}
.field-box--wide,.request-filter-grid .field-box--location,.tickets-filter-grid .field-box--location{grid-column:span 1}
.locations-search-form{flex-direction:column;align-items:stretch}
.locations-search-form input{max-width:none}
.kanban-drop{overflow:visible;max-height:none}
.board-toolbar{align-items:stretch}
.board-actions{align-items:stretch}
.board-status-filter{min-width:100%}
.board-overflow-note{max-width:none;order:3}
.board-metrics-row{display:flex !important;gap:10px;overflow:auto;padding-bottom:6px;scroll-snap-type:x proximity}
.board-mini-stat{min-width:130px;scroll-snap-align:start;padding:14px;min-height:auto}
.kanban-head,.dt-col-head{position:sticky;top:0;background:#f8fafc;padding-bottom:8px;z-index:2}
.dt-drop{min-height:0}
.calendar-cell-top{flex-direction:column;align-items:flex-start}
.calendar-count-pill{padding:5px 9px}
.calendar-month-head strong{width:100%;text-align:center}
.modal-shell{padding:12px;align-items:flex-end}
.calendar-modal-shell{padding:10px;align-items:end}
.calendar-month-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.requester-form--wo .field-card{padding:12px;min-height:auto}
.calendar-modal-shell .modal-card{width:min(100%,calc(100vw - 8px));max-height:88dvh;border-radius:20px 20px 16px 16px;padding:14px !important}
.calendar-month-modal .modal-head, .calendar-day-modal .modal-head{margin-bottom:10px;padding-right:0}
.calendar-month-head{flex-wrap:wrap;justify-content:center}
.calendar-month-head .btn{justify-content:center;flex:1 1 calc(50% - 8px);min-width:0}
#calendarMonthYearLabel{width:100%;order:-1;margin-bottom:4px}
.analytics-modal-stats--interactive{grid-template-columns:repeat(2,minmax(0,1fr))}
.app-shell{display:block !important;width:100% !important;max-width:100% !important;overflow-x:hidden !important}

.main{padding-left:12px !important;padding-right:12px !important;display:block !important;width:100% !important;max-width:100% !important;margin:0 !important;padding:12px !important;padding-top:10px !important;overflow-x:hidden !important}
.main > *{max-width:100% !important}
#analyticsModalClose,#analyticsLocationClose,.analytics-modal .icon-btn{color:#0f172a !important;background:#fff !important;border-color:#d7e2ef !important}
.analytics-modal-card{padding:14px;width:100%;max-width:100%;border-radius:20px;padding:16px 14px !important}
html,body{max-width:100%;overflow-x:hidden !important}
body:not(.login-page){background:linear-gradient(180deg,#eef2f6,#f8fafc) !important}
body:not(.login-page) .app-shell{display:block !important;width:100% !important;max-width:100% !important;min-height:100dvh !important;height:auto !important;overflow:visible !important;overflow-x:hidden !important;position:relative !important}

body:not(.login-page) .main{position:relative !important;display:block !important;width:100% !important;max-width:100% !important;margin:0 !important;margin-left:0 !important;padding:14px !important;padding-top:10px !important;left:auto !important;right:auto !important;transform:none !important;overflow-x:hidden !important}
body:not(.login-page) .main > *{max-width:100% !important;margin-left:0 !important;margin-right:0 !important}
body:not(.login-page) .top-left{width:100%}
.login-hero--serious h1{font-size:1.95rem !important;line-height:1.08 !important;margin:0 0 12px !important}
.login-hero--serious p{margin:0 0 16px !important;font-size:.98rem !important}
.login-hero__meta{display:grid !important;grid-template-columns:1fr !important;gap:10px !important;margin:0 !important}
.login-hero__meta > div{min-height:auto !important;padding:14px 14px !important}
.brand-login-logo{width:56px !important;height:56px !important;border-radius:16px !important}
.login-hero--serious{padding:0 !important;margin:0 !important;border-radius:0 !important;min-height:0 !important;box-shadow:none !important;display:none !important}
.brand--login{gap:12px !important;justify-content:flex-start !important;align-items:center !important}
.brand--login > div{min-width:0}
.board-filter-card{padding:12px !important}
.board-filter-toolbar{flex-direction:column;align-items:flex-start}
.dt-col-head{top:8px}
.dt-kanban{grid-template-columns:1fr !important;grid-auto-columns:minmax(280px,88vw) !important;gap:10px !important;padding-bottom:10px !important}
.kanban-col, .dt-col{flex-basis:86vw !important;width:86vw !important;min-width:86vw !important;max-width:86vw !important;height:calc(100vh - 170px) !important;max-height:calc(100vh - 170px) !important;min-height:420px !important}
.dt-card .ticket-meta-line{white-space:normal !important}
.board-page-header{padding:14px 14px 12px}
.kanban-board-shell{min-height:auto}
.board-filter-grid--compact{grid-template-columns:1fr !important;grid-template-columns:1fr}
.board-toolbar-main{flex-direction:column;align-items:stretch}
.board-tabs--inline{width:100%}
.board-tabs--inline a{flex:1 1 0;text-align:center}
.kanban-col,.dt-col{padding:10px 10px 12px;border-radius:18px;width:82vw !important;max-height:calc(100vh - 150px) !important;flex-basis:86vw !important;min-width:86vw !important;max-width:86vw !important;height:70vh !important;min-height:430px !important}
body.board-page-mode .kanban-board-shell{overflow-x:auto !important;overflow-y:hidden !important}
body.board-page-mode .main.board-main-lock{overflow:hidden !important}
body.board-page-mode .board-page-wrap--kanban{overflow:visible;padding:0 8px 10px !important}
.location-card .between{flex-direction:column;align-items:stretch;gap:12px}
.location-card .location-card-actions{justify-content:stretch}
.location-card .location-card-actions .btn, .location-quick-open{width:100%}
.location-mini{grid-template-columns:repeat(2,minmax(0,1fr))}
body:not(.login-page) .location-links-row{gap:8px}
.location-links-row .btn{flex:1 1 calc(50% - 8px);justify-content:center}
.location-action-card{width:min(100%,calc(100vw - 14px));padding:16px 14px 14px;border-radius:22px 22px 18px 18px}
.location-action-grid{grid-template-columns:1fr}
.location-action-option{min-height:122px}
html,body.login-page--serious{min-height:100dvh;height:100%}
body.login-page--serious{padding:0 !important;display:block !important;min-height:100dvh !important;background:linear-gradient(180deg,#edf3f8 0%,#f7fafc 100%) !important;overflow:hidden !important;position:relative}
.login-shell--serious{gap:0 !important;display:flex !important;align-items:center !important;justify-content:center !important;width:100% !important;min-height:100dvh !important;box-sizing:border-box !important;padding:max(12px, env(safe-area-inset-top)) 12px max(12px, env(safe-area-inset-bottom)) !important;overflow:hidden !important}
.login-card--serious{position:relative !important;z-index:2 !important;margin:0 auto !important;border-radius:26px !important;border:1px solid rgba(203,213,225,.92) !important;box-shadow:0 18px 44px rgba(15,23,42,.12) !important;background:#ffffff !important;width:min(100%, 420px) !important;max-width:420px !important;padding:20px 14px 18px !important}
.login-card--serious h2{font-size:1.85rem !important;line-height:1.08 !important;margin:0 0 12px !important}
.login-intro{margin-bottom:14px !important;font-size:.96rem !important;line-height:1.45 !important;margin:0 0 16px !important;display:none !important}
.login-form{display:flex !important;flex-direction:column !important;gap:12px !important}
.login-form label{display:flex !important;flex-direction:column !important;font-size:.95rem !important;font-weight:700 !important;color:#334155 !important;gap:6px !important;width:100%}
.login-form input{border:1px solid #d7e2ef !important;background:#fff !important;min-height:50px !important;padding:12px 13px !important;border-radius:14px !important}
.login-submit{width:100% !important;font-size:1rem !important;font-weight:700 !important;min-height:52px !important;border-radius:14px !important}
.brand--login-stack{gap:12px !important}
.brand-login-logo,.brandmark--login{width:56px !important;height:56px !important;border-radius:16px !important}
.brand-login-line{font-size:1.05rem !important}
.brand-login-line--sub{font-size:.98rem !important}
body.login-page--cinematic{padding:0 !important}
.login-shell--cinematic{align-items:center;justify-content:center;padding:20px 16px}
.login-card--cinematic{width:min(100%,500px);margin:0 auto;padding:24px 22px 20px;border-radius:36px}
.login-card__top{margin-bottom:14px;gap:14px;align-items:center;justify-content:flex-start;text-align:left}
.brand-login-copy--stacked{text-align:left}
.brand-login-logo--hero,.brandmark--login-hero{width:58px !important;height:58px !important;border-radius:17px !important}
.brand-login-copy--stacked .brand-login-line{font-size:1.36rem;font-weight:800;color:#0f172a}
.brand-login-copy--stacked .brand-login-line--sub{font-size:1.12rem;font-weight:800;color:#1d4ed8}
.login-form--iconic{gap:12px}
.login-field{border-radius:21px}
.login-form--iconic input{min-height:56px;padding-left:45px !important;padding-right:16px;line-height:normal;font-size:16px !important}
.login-form--iconic input::placeholder{color:#64748b;font-weight:500}
.login-field__icon{left:17px;width:18px;height:18px;z-index:3;color:#64748b}
.login-field__icon svg{width:18px;height:18px}
.login-submit--cinematic{min-height:53px !important;border-radius:18px !important;font-size:1rem !important}
.login-bg-overlay{background:linear-gradient(180deg,rgba(241,245,249,.78),rgba(226,232,240,.88))}
.calendar-grid{height:auto;overflow:visible;grid-template-columns:1fr}
.calendar-item-top{align-items:flex-start;gap:6px}
.calendar-item-status{max-width:50%}
.wo-next-panel{align-items:stretch;flex-direction:column;padding:16px}
.wo-next-actions{width:100%;display:grid;grid-template-columns:1fr;gap:10px}
.wo-next-actions .btn{width:100%;justify-content:center}
.wo-action-zone{padding:14px;border-radius:18px}
.wo-action-zone .quick-grid{grid-template-columns:1fr !important}
.calendar-weekdays,.calendar-days-grid{grid-template-columns:1fr}
.calendar-panel{height:auto;min-height:0;overflow:visible !important}
.calendar-days-grid{grid-auto-rows:auto;overflow:visible !important}
.calendar-head{justify-content:flex-start !important;padding:0 12px !important;font-size:13px}
.calendar-day-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
.calendar-cell{min-height:auto !important;overflow:visible}
body.page-board .board-filter-card, body.page-board .kanban-board-shell{display:none !important}
body.page-board .board-mobile-lock{display:block !important;margin:14px 0 90px}
body.page-board .board-mobile-lock .panel{padding:18px;border-radius:22px;text-align:left}
body.page-board .board-mobile-lock h3{margin:0 0 8px}
body.page-board .board-mobile-lock .action-row{margin-top:14px;gap:8px;flex-wrap:wrap}
}
@media (max-width:980px){
body:not(.login-page) .selection-grid{grid-template-columns:1fr 1fr}
body:not(.login-page) .bar-row{grid-template-columns:130px 1fr 36px}
.ticket-relation-grid,.request-modal-shell{grid-template-columns:1fr}
.overview-shell{grid-template-columns:1fr}
.meta-card-grid{grid-template-columns:1fr}
.settings-panel .form-grid.two, .preview-grid, .admin-kpis, .settings-kpis{grid-template-columns:1fr !important}
.guide-grid{grid-template-columns:1fr}
.modal-two-col{grid-template-columns:1fr !important}
.compact-module-topbar{flex-direction:column;align-items:flex-start}
.module-inline-head-between{align-items:flex-start}
.panel-head-row{align-items:flex-start;flex-direction:column}
.files-grid{grid-template-columns:1fr}
.modal-backdrop{padding:10px}
.modal-user-editor, .modal-manage-request{width:min(100vw - 12px, 100%)}
.modal-user-editor .selection-grid{grid-template-columns:1fr}
.activity-headline{justify-content:flex-start}
.panel,.card,.stat-card,.login-card{border-radius:18px;padding:14px}
.dashboard-hero,.wo-hero,.wo-toolbar,.wo-section-head,.module-inline-head-between{gap:12px}
.dashboard-hero .inline-actions,.wo-hero-actions,.filter-actions,.action-row{width:100%}
.dashboard-hero .inline-actions .btn,.wo-hero-actions .btn,.filter-actions .btn,.action-row .btn{flex:1 1 160px}
.wo-info-grid,.ticket-relation-grid,.request-actions-grid,.files-grid,.ticket-files-grid{grid-template-columns:1fr}
.filter-card .grid-5,.filter-card .grid-4,.dt-filters .grid-5,.dt-filters .grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}
.quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.table-card table,.table-card .table,.request-table{min-width:0}
.request-filter-grid .field-box--location{grid-column:span 2}
.analytics-modal-stats{grid-template-columns:repeat(3,minmax(0,1fr))}
.app-shell{display:block !important;overflow-x:hidden}

.main{padding:12px;width:100% !important;max-width:100% !important;margin-left:0 !important;padding-left:14px !important;padding-right:14px !important;overflow-x:hidden}
.main > *{max-width:100%}
.analytics-modal-stats--interactive{grid-template-columns:repeat(3,minmax(0,1fr))}
body.login-page--serious{min-height:100dvh;background:linear-gradient(180deg,#153b74 0%, #0f2a58 48%, #edf3f8 48%, #f6f8fb 100%) !important}
.login-shell--serious{min-height:100dvh;display:flex !important;flex-direction:column;gap:14px;padding:14px 14px 18px}
.login-hero--serious{display:block !important;padding:18px 16px 10px !important;border-radius:22px;min-height:0}
.login-hero--serious h1{font-size:1.85rem !important;line-height:1.1 !important;margin-bottom:10px;max-width:none}
.login-hero--serious p{font-size:.98rem !important;line-height:1.45 !important;max-width:none}
.login-hero__meta{grid-template-columns:1fr !important;gap:10px !important;margin-top:16px !important;max-width:none}
.login-card--serious{width:100%;max-width:none !important;margin:0 !important;padding:20px 16px 18px !important;border-radius:24px !important;box-shadow:0 18px 44px rgba(15,23,42,.14)}
.brand--login{justify-content:flex-start}
.brand-login-logo{width:60px;height:60px;border-radius:18px}
.login-card--serious h2{font-size:1.55rem;margin-bottom:8px}
.login-intro{font-size:.94rem;line-height:1.45}
.login-form{gap:12px}
.login-form label{gap:6px;font-size:.95rem}
.login-form input{min-height:48px;border-radius:14px}
.login-submit{min-height:50px;border-radius:14px;font-size:1rem}
.board-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.board-status-strip{top:8px;padding-bottom:8px}
.dt-col-head{top:62px}
.board-tabs{position:relative !important;top:auto !important;background:transparent !important;backdrop-filter:none !important}
.board-filter-grid--compact{grid-template-columns:repeat(2,minmax(120px,1fr)) !important}
.kanban-col,.dt-col{flex-basis:260px !important;width:260px !important;min-width:260px !important;max-width:260px !important;height:calc(100vh - 160px) !important;max-height:calc(100vh - 160px) !important}
.board-filter-card{position:relative !important;top:8px !important}
.board-filter-card.board-filter-card--tight{padding:12px !important}
.kanban-board-shell{height:calc(100vh - 190px) !important;min-height:480px !important}
.dt-col{min-height:calc(100vh - 220px);max-height:calc(100vh - 220px);flex-basis:250px !important;min-width:250px !important;max-width:250px !important}
.main > .board-page-wrap--kanban{padding:0 8px 14px !important}
body.board-page-mode .board-page-wrap--kanban{padding-bottom:6px}
body.board-page-mode .kanban-board-shell{padding-bottom:10px}
body.board-page-mode .dt-kanban{grid-auto-columns:minmax(280px, 320px)}
body.board-page-mode .kanban-col, body.board-page-mode .dt-col{min-width:280px !important;max-width:320px !important}
.location-grid-cards{grid-template-columns:1fr !important}
.location-card-card{border-radius:20px;overflow:hidden}
.location-card-media{height:180px}
.location-card-body{padding:14px}
.db2-hero-text{padding-left:0}
.db2-hero::before,.db2-hero-text::before{display:none}
.db2-hero-actions{display:grid;grid-template-columns:1fr;width:100%}
.db2-hero-actions .btn{width:100%}
.db2-link{min-height:54px}
body.page-tickets .tickets-desktop-list{display:none !important}
body.page-tickets .tickets-mobile-cards{display:flex !important;flex-direction:column !important;gap:12px !important;margin-top:12px !important;margin-bottom:calc(96px + env(safe-area-inset-bottom,0px)) !important}
body.page-tickets .tickets-mobile-head{display:flex !important;align-items:center !important;justify-content:space-between !important;gap:10px !important;padding:2px 2px 0 !important}
body.page-tickets .tickets-mobile-head h3{margin:2px 0 0 !important;font-size:18px !important;line-height:1.15 !important;letter-spacing:-.02em !important}
body.page-tickets .tickets-mobile-card{display:block !important;text-decoration:none !important;color:inherit !important;background:#fff !important;border:1px solid #e5e7eb !important;border-radius:20px !important;padding:14px !important;box-shadow:0 10px 24px rgba(15,23,42,.07) !important}
body.page-tickets .tickets-mobile-card--mine{border-color:#bfdbfe !important;background:linear-gradient(180deg,#eff6ff 0%,#ffffff 55%) !important}
body.page-tickets .tmc-top, body.page-tickets .tmc-bottom{display:flex !important;align-items:center !important;justify-content:space-between !important;gap:10px !important}
body.page-tickets .tmc-top strong{color:#1e40af !important;font-size:13px !important;letter-spacing:.02em !important}
body.page-tickets .tmc-title{font-weight:800 !important;font-size:15px !important;line-height:1.25 !important;margin-top:10px !important;color:#0f172a !important}
body.page-tickets .tmc-meta{margin-top:5px !important;font-size:12px !important;line-height:1.25 !important;color:#64748b !important}
body.page-tickets .tmc-bottom{border-top:1px solid #e5e7eb !important;margin-top:12px !important;padding-top:10px !important;font-size:11px !important;color:#64748b !important}
body.page-my-requests .myrq-desktop-table{display:none !important}
body.page-my-requests .myrq-mobile-cards{display:flex !important;flex-direction:column !important;gap:12px !important;margin-bottom:calc(96px + env(safe-area-inset-bottom,0px)) !important}
.wo-create-page{max-width:100%;margin:0 auto}
.wo-create-header{display:flex;flex-direction:column;align-items:stretch;gap:12px}
.wo-create-header .btn{width:100%;justify-content:center}
.wo-flat-layout{grid-template-columns:1fr;display:grid;grid-template-columns:1fr !important;gap:14px}
.wo-flat-row{display:grid;grid-template-columns:1fr !important;gap:12px}
.wo-flat-actions{display:flex;flex-direction:column;align-items:stretch}
.wo-flat-actions .btn{width:100%;justify-content:center}
.wo-meta-strip{grid-template-columns:repeat(2, minmax(0, 1fr))}
.field-box, .wo-flat-left, .wo-flat-right{min-width:0}
.due-date-field{cursor:pointer}
body.page-dashboard .main{padding-bottom:96px !important}
body.page-dashboard .dt-dash-v88{padding:10px 0 18px}
body.page-dashboard .dt-dash-v88 > * + *{margin-top:12px}
body.page-dashboard .dt-home-hero{border-radius:24px;padding:18px}
body.page-dashboard .dt-home-hero h1{font-size:28px}
body.page-dashboard .dt-home-hero p{font-size:13px;line-height:1.35}
body.page-dashboard .dt-home-hero__status{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:16px}
body.page-dashboard .dt-status-tile{min-width:0;padding:14px;border-radius:18px}
body.page-dashboard .dt-status-tile span{font-size:28px}
body.page-dashboard .dt-action-hub{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:10px;border-radius:22px}
body.page-dashboard .dt-action-card{min-height:86px;padding:13px;border-radius:18px}
body.page-dashboard .dt-action-card strong{font-size:13px}
body.page-dashboard .dt-action-card span{font-size:11px}
body.page-dashboard .dt-action-card--primary, body.page-dashboard .dt-action-card--request{min-height:98px}
body.page-dashboard .dt-desktop-action{display:none !important}
body.page-dashboard .dt-metric-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
body.page-dashboard .dt-metric-card{min-height:92px;padding:14px;border-radius:18px}
body.page-dashboard .dt-metric-card span{font-size:30px}
body.page-dashboard .dt-metric-card small{font-size:12px}
body.page-dashboard .dt-dashboard-grid{display:grid;grid-template-columns:1fr;gap:12px}
body.page-dashboard .dt-card{border-radius:22px}
body.page-dashboard .dt-card-head{padding:14px;min-height:54px}
body.page-dashboard .dt-card-head strong{font-size:15px}
body.page-dashboard .dt-list-row{grid-template-columns:1fr auto;padding:14px}
body.page-dashboard .dt-row-code{grid-column:1 / 2}
body.page-dashboard .dt-row-title{grid-column:1 / -1;white-space:normal;line-height:1.25}
body.page-dashboard .dt-list-row small{grid-column:1 / -1}
body.page-dashboard .dt-empty{margin:12px;padding:18px}

body.page-dashboard a[href$="board.php"], body.page-dashboard a[href*="board.php?"]{display:none !important}
body.page-request-inbox .module-inline-head{align-items:flex-start;gap:10px;margin-bottom:12px}
body.page-request-inbox .module-inline-head .inline-actions{width:100%;display:grid;grid-template-columns:1fr}
body.page-request-inbox .request-filters-panel{border-radius:22px !important;margin:12px 0 !important}
body.page-request-inbox .request-filters-panel:not(.dt-filter-open){display:none !important}
body.page-request-inbox .request-filter-grid{display:grid !important;grid-template-columns:1fr !important;gap:10px !important}
body.page-request-inbox .filter-toolbar{display:block !important}
body.page-request-inbox .filter-toolbar-badges{margin-top:8px}
body.page-request-inbox .filter-actions{display:grid !important;grid-template-columns:1fr 1fr;gap:10px}
body.page-request-inbox .request-list-panel{background:transparent !important;border:0 !important;box-shadow:none !important;padding:0 !important}

body.page-request-inbox .request-list-panel .panel-head-filter-bar{display:none !important}
body.page-request-inbox .request-table-wrap{display:none !important}
body.page-request-inbox .request-mobile-card.is-selected{border-color:#2563eb;box-shadow:0 16px 36px rgba(37,99,235,.16)}
body.page-notifications .notif-hero{display:block;padding:16px;border-radius:22px}
body.page-notifications .notif-hero-actions{margin-top:12px;display:grid}
body.page-notifications .notif-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
body.page-notifications .notif-summary-card{padding:12px 10px 12px 13px;border-radius:16px}
body.page-notifications .notif-summary-card span{font-size:9px}
body.page-notifications .notif-summary-card strong{font-size:24px}
body.page-notifications .notif-summary-card small{font-size:10px}
body.page-notifications .notif-list-panel{border-radius:22px;background:transparent;border:0;box-shadow:none}
body.page-notifications .notif-list-head{border:1px solid #e5e7eb;border-radius:18px;background:#fff;margin-bottom:10px}
body.page-notifications .notif-list{gap:10px}
body.page-notifications .notif-card{border:1px solid #e5e7eb;border-radius:20px;box-shadow:0 12px 28px rgba(15,23,42,.07);padding:13px;background:#fff}
body.page-notifications .notif-card.is-unread{background:#fffaf0;border-color:#fed7aa}
body.page-notifications .notif-card-top{display:block}
body.page-notifications .notif-time{display:block;margin-top:5px;white-space:normal}
body.page-notifications .notif-card-actions{display:grid;grid-template-columns:1fr 1fr}
body.page-notifications .notif-card-actions .btn{width:100%;justify-content:center}
body.page-request-inbox .main{padding-bottom:calc(96px + env(safe-area-inset-bottom,0px));padding-inline:12px !important}
body.page-request-inbox .mini-stats-row--clickable{display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:8px !important;margin:8px 0 10px !important}
body.page-request-inbox .mini-stats-row--clickable .mini-stat-link{background:#fff !important;min-height:58px !important;padding:10px 11px 9px 12px !important;border-radius:15px !important;box-shadow:0 7px 18px rgba(15,23,42,.055) !important;border-left:4px solid var(--stat-color,#2563eb) !important}
body.page-request-inbox .mini-stats-row--clickable .mini-stat-link .muted{font-weight:850;color:#475569;font-size:10px !important;line-height:1.05 !important;white-space:nowrap !important;overflow:hidden !important;text-overflow:ellipsis !important}
body.page-request-inbox .mini-stats-row--clickable .mini-stat-link .stat-sm{line-height:1;font-size:20px !important;margin-top:5px !important}
body.page-request-inbox .request-list-panel .panel-head{background:#fff;border:1px solid #e5e7eb;box-shadow:0 10px 24px rgba(15,23,42,.06);border-radius:16px !important;padding:10px 11px !important;margin-bottom:8px !important;gap:8px !important}
body.page-request-inbox .request-list-panel .panel-head > div:first-child{min-width:0 !important;font-size:13px !important;line-height:1.15 !important}
body.page-request-inbox .request-list-panel .panel-head .badge{display:inline-flex !important;margin-top:4px !important}
body.page-request-inbox .request-list-panel .dt-filter-toggle{height:34px !important;padding:0 10px !important;border-radius:12px !important;flex:0 0 auto !important}
body.page-request-inbox .request-mobile-list{display:grid !important;gap:8px !important}
body.page-request-inbox .request-mobile-card{display:block;background:#fff;border:1px solid #e5e7eb;text-decoration:none;color:inherit;overflow:hidden;border-radius:17px !important;padding:11px !important;box-shadow:0 8px 22px rgba(15,23,42,.065) !important}
body.page-request-inbox .rmc-top{display:flex;justify-content:space-between;align-items:flex-start !important;gap:8px !important}
body.page-request-inbox .rmc-top > div:first-child{min-width:0 !important}
body.page-request-inbox .rmc-code{font-weight:950;color:#1d4ed8;font-size:11px !important;letter-spacing:.01em !important}
body.page-request-inbox .rmc-title{font-weight:900;color:#0f172a;font-size:13px !important;margin-top:2px !important;line-height:1.18 !important;display:-webkit-box !important;-webkit-line-clamp:2 !important;-webkit-box-orient:vertical !important;overflow:hidden !important}
body.page-request-inbox .rmc-top .badge{font-size:10px !important;padding:4px 7px !important;white-space:nowrap !important;flex:0 0 auto !important}
body.page-request-inbox .rmc-location{font-weight:850;color:#334155;margin-top:8px !important;font-size:12px !important;line-height:1.2 !important;display:-webkit-box !important;-webkit-line-clamp:2 !important;-webkit-box-orient:vertical !important;overflow:hidden !important}
body.page-request-inbox .rmc-meta-grid{grid-template-columns:1fr 1fr;display:flex !important;gap:6px !important;margin-top:9px !important;overflow-x:auto !important;padding-bottom:2px !important;scrollbar-width:none !important}
body.page-request-inbox .rmc-meta-grid::-webkit-scrollbar{display:none !important}
body.page-request-inbox .rmc-meta-grid div{border:1px solid #edf2f7;flex:0 0 auto !important;min-width:112px !important;max-width:148px !important;padding:7px 8px !important;border-radius:12px !important;background:#f8fafc !important}
body.page-request-inbox .rmc-meta-grid span{display:block;text-transform:uppercase;color:#64748b;font-weight:900;font-size:8.5px !important;letter-spacing:.04em !important}
body.page-request-inbox .rmc-meta-grid strong{margin-top:3px;color:#0f172a;white-space:normal;overflow-wrap:anywhere;font-size:10.5px !important;line-height:1.15 !important;display:-webkit-box !important;-webkit-line-clamp:2 !important;-webkit-box-orient:vertical !important;overflow:hidden !important}
body.page-request-inbox .rmc-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:7px !important;margin-top:10px !important}
body.page-request-inbox .rmc-actions .btn{width:100%;justify-content:center;height:34px !important;min-height:34px !important;padding:0 10px !important;border-radius:12px !important;font-size:12px !important}
body.page-request-inbox .request-pagination{gap:6px !important;margin-top:10px !important;overflow-x:auto !important;padding-bottom:4px !important}
body.page-request-inbox .page-chip{min-width:34px !important;height:34px !important;border-radius:12px !important}

body.page-dashboard .dt-action-card[href$="board.php"], body.page-dashboard .dt-action-card[href*="board.php?"]{display:none !important}

body.page-calendar .main{padding-inline:12px !important}
body.page-calendar .calendar-page-shell{height:auto !important;min-height:0 !important;padding-bottom:calc(var(--dt-mobile-nav-height,74px) + 18px) !important}
body.page-calendar .calendar-panel{height:auto !important;min-height:0 !important;overflow:visible !important;border-radius:22px !important;padding:12px !important}
body.page-calendar .calendar-toolbar{display:grid !important;grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;gap:10px !important;align-items:stretch !important;width:100% !important;max-width:100% !important;overflow:hidden !important}
body.page-calendar .calendar-toolbar-center{order:1 !important;grid-column:1 / -1 !important;width:100% !important;min-width:0 !important;text-align:left !important}
body.page-calendar .calendar-toolbar > a:first-child{order:2 !important}
body.page-calendar .calendar-toolbar > a:last-child{order:3 !important}
body.page-calendar .calendar-toolbar > a.btn{width:100% !important;min-width:0 !important;max-width:100% !important;height:44px !important;padding:0 10px !important;white-space:nowrap !important;font-size:12px !important;border-radius:15px !important;box-sizing:border-box !important;justify-content:center !important}
body.page-calendar .calendar-month-trigger{display:flex !important;width:100% !important;max-width:100% !important;min-width:0 !important;padding:0 !important;margin:0 !important;box-sizing:border-box !important;overflow:hidden !important}
body.page-calendar .calendar-month-trigger strong{display:flex !important;align-items:center !important;justify-content:center !important;width:100% !important;max-width:100% !important;min-width:0 !important;height:48px !important;padding:0 12px !important;border-radius:16px !important;box-sizing:border-box !important;overflow:hidden !important;white-space:nowrap !important;text-overflow:ellipsis !important}
body.page-calendar .calendar-weekdays{display:none !important}
body.page-calendar .calendar-days-grid, body.page-calendar .calendar-grid.calendar-days-grid{display:flex !important;flex-direction:column !important;gap:10px !important;height:auto !important;max-height:none !important;overflow:visible !important}
body.page-calendar .calendar-cell.is-empty, body.page-calendar .calendar-cell:not(.has-items){display:none !important}
body.page-calendar .calendar-cell.has-items{display:block !important;min-height:0 !important;height:auto !important;border-radius:18px !important;padding:12px !important;background:#fff !important;border:1px solid rgba(148,163,184,.24) !important;box-shadow:0 10px 24px rgba(15,23,42,.07) !important}
body.page-calendar .calendar-cell-top{display:flex !important;align-items:center !important;justify-content:space-between !important;gap:10px !important;margin-bottom:9px !important}
body.page-calendar .calendar-date{width:34px !important;height:34px !important;border-radius:12px !important;background:#eff6ff !important;color:#1d4ed8 !important;display:grid !important;place-items:center !important;font-size:14px !important;font-weight:900 !important}
body.page-calendar .calendar-count-pill{height:30px !important;padding:0 10px !important;border-radius:999px !important;font-size:11px !important}
body.page-calendar .calendar-items{display:flex !important;flex-direction:column !important;gap:8px !important;padding:0 !important}
body.page-calendar .calendar-item{width:100% !important;border-radius:14px !important;overflow:hidden !important}
body.page-calendar .calendar-item-inner{padding:9px 10px !important}
body.page-calendar .calendar-item-top strong{font-size:12px !important}
body.page-calendar .calendar-item-category{font-size:12px !important;line-height:1.2 !important}
body.page-calendar .calendar-item-location, body.page-calendar .calendar-item-listing{display:block !important;font-size:10.5px !important;color:#64748b !important;white-space:nowrap !important;overflow:hidden !important;text-overflow:ellipsis !important}
body.page-calendar .calendar-more-link{display:flex !important;align-items:center !important;justify-content:center !important;width:100% !important;height:34px !important;border-radius:12px !important;margin-top:0 !important;background:#f8fafc !important;border:1px solid #e2e8f0 !important;color:#2563eb !important;font-weight:800 !important}
body.page-calendar .calendar-month-modal, body.page-calendar .calendar-day-modal{width:min(94vw,680px) !important;max-height:86dvh !important;border-radius:24px !important}
body.page-calendar .calendar-month-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
body.page-calendar .calendar-day-stats{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:8px !important}

body.page-analytics .analytics-page, body.page-analytics .analytics-page *{box-sizing:border-box}
body.page-analytics .analytics-page{width:100%;max-width:100%;overflow-x:hidden;padding-bottom:calc(var(--dt-mobile-nav-height,76px) + 16px)}
body.page-analytics .analytics-mini-stats{display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:10px !important;width:100% !important;max-width:100% !important}
body.page-analytics .analytics-page > .grid.two{display:grid !important;grid-template-columns:1fr !important;gap:12px !important;width:100% !important;max-width:100% !important}
body.page-analytics .chart-panel{width:100% !important;max-width:100% !important;min-width:0 !important;overflow:hidden !important;border-radius:20px !important}
body.page-analytics .bar-row{display:grid !important;grid-template-columns:minmax(86px,112px) minmax(0,1fr) auto !important;gap:8px !important;width:100% !important;max-width:100% !important;min-width:0 !important;align-items:center !important;padding:10px !important}
body.page-analytics .bar-label{min-width:0 !important;max-width:100% !important;overflow:hidden !important;text-overflow:ellipsis !important;white-space:nowrap !important;font-size:12px !important}
body.page-analytics .bar-track{min-width:0 !important;width:100% !important}
body.page-analytics .bar-value{min-width:22px !important;text-align:right !important;font-size:12px !important}
body.page-analytics .analytics-modal{align-items:flex-end !important;padding:10px !important;z-index:10030 !important}
body.page-analytics .analytics-modal-card{width:100% !important;max-width:100% !important;max-height:88dvh !important;overflow:auto !important;border-radius:22px 22px 0 0 !important;padding:14px !important}
body.page-analytics .analytics-modal-stats, body.page-analytics .analytics-modal-stats--interactive{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:8px !important}
body.page-analytics .analytics-modal-item{display:block !important;min-width:0 !important;overflow:hidden !important}
body.page-analytics .analytics-item-meta, body.page-analytics .analytics-item-brief{max-width:100% !important;overflow:hidden !important;text-overflow:ellipsis !important}
html body:not(.login-page){overflow-x:hidden !important}
html body:not(.login-page) .app-shell, html body:not(.login-page) .main{width:100% !important;max-width:100% !important;min-width:0 !important;overflow-x:hidden !important;box-sizing:border-box !important}
html body:not(.login-page) .main > *{max-width:100% !important;box-sizing:border-box !important}
html body:not(.login-page) .panel, html body:not(.login-page) .card, html body:not(.login-page) .table-card, html body:not(.login-page) .filter-card{max-width:100% !important;box-sizing:border-box !important}
html body:not(.login-page) .table-wrap{max-width:100% !important;overflow-x:auto !important;-webkit-overflow-scrolling:touch !important}
html body:not(.login-page) input, html body:not(.login-page) select, html body:not(.login-page) textarea{max-width:100%;box-sizing:border-box}

body.page-analytics .main{overflow-y:visible !important;min-height:100dvh !important}
:root{--board-shell-h:calc(100vh - 205px);--dt-mobile-nav-h:76px;--dt-mobile-sidebar-w:min(86vw,326px);--dt-sidebar-blue-top:#153b74;--dt-sidebar-blue-bottom:#0c214a;--dt-mobile-nav-height:76px;--dt-mobile-bottom-clearance:calc(var(--dt-mobile-nav-height,76px) + 72px + env(safe-area-inset-bottom,0px))}
html body:not(.login-page) .app-shell{min-height:100dvh !important;height:auto !important;overflow:visible !important;padding-bottom:0 !important}
html body:not(.login-page) .main{height:auto !important;min-height:100dvh !important;max-height:none !important;overflow-y:visible !important;padding-bottom:var(--dt-mobile-bottom-clearance) !important;scroll-padding-bottom:var(--dt-mobile-bottom-clearance) !important}
html body:not(.login-page) .main::after{content:"";display:block;height:calc(var(--dt-mobile-nav-height,76px) + env(safe-area-inset-bottom,0px));min-height:calc(var(--dt-mobile-nav-height,76px) + env(safe-area-inset-bottom,0px));pointer-events:none}
.wo-create-page .wo-flat-layout{grid-template-columns:1fr}
.wo-create-page .wo-flat-row{grid-template-columns:1fr}
}
@media (max-width:900px){
.wo-info-grid,.ticket-relation-grid{grid-template-columns:1fr}
.module-inline-head-between{align-items:flex-start}
.notif-item-head{flex-direction:column}
.wo-hero,.wo-toolbar{flex-direction:column;gap:14px}
body:not(.login-page) .wo-toolbar-left,body:not(.login-page) .wo-toolbar-right{width:100%}
.dt-col-head{position:static}
.filter-toolbar{align-items:flex-start}
.table .action-row .btn.small{min-width:0;flex:1 1 auto}
.dashboard-hero h2{font-size:1.22rem}
.dashboard-hero .inline-actions{width:100%}
.dashboard-hero .inline-actions .btn{flex:1 1 auto}
.dashboard-role-note{align-items:flex-start}
.pm-layout{grid-template-columns:1fr}
.pm-field input,.pm-field select{min-height:46px}
.up-cols{grid-template-columns:1fr}
.db2-main-grid{grid-template-columns:1fr}
.db2-stat-strip{grid-template-columns:repeat(2, 1fr)}
.db2-two-col{grid-template-columns:1fr}
}
@media (max-width:1080px){
.login-hero{padding:0}
.login-shell{grid-template-columns:1fr;padding:22px}
.login-hero__bullets{grid-template-columns:1fr 1fr}
.overview-grid{grid-template-columns:1fr}
.modal-two-col,.overview-shell,.login-shell{grid-template-columns:1fr}
.login-card{margin:0}
}
@media (max-width:840px){
.cards4,.three,.quick-grid{grid-template-columns:1fr 1fr}
.grid.two{grid-template-columns:1fr}
}
@media (max-width:560px){
.cards4,.three,.quick-grid{grid-template-columns:1fr}
.login-hero h1{font-size:34px}
:root{--dt-mobile-shell-pad:12px}
.main{padding:14px;padding-left:var(--dt-mobile-shell-pad);padding-right:var(--dt-mobile-shell-pad)}
.analytics-summary-shell .analytics-mini-stats, .mini-stats-row, .board-summary-row, .location-mini{grid-template-columns:1fr}
.request-btn-row > .btn, .action-row > .btn, .wo-tabs > .wo-tab, .location-card-actions > .btn, .top-actions > .btn, .top-actions > a.btn, .request-actions-inline .action-row > .btn{flex:1 1 100%}
.request-btn-row .btn, .action-row .btn, .top-actions .btn, .location-card-actions .btn{width:100%}
.panel, .card, .stat-card, .mini-stat, .table tr, .request-table tr, .dt-table tr, .wo-hero, .wo-toolbar, .wo-panel, .analytics-summary-shell, .dashboard-hero-panel, .location-card-card{border-radius:18px}
.wo-meta-strip{grid-template-columns:1fr}
.wo-create-title{font-size:22px;line-height:1.15}
#tk-page{padding:12px 10px 56px !important}
#tk-page .tk-code{font-size:1.3rem !important}
#tk-page .tk-hero{padding:16px !important}
#tk-page .tk-panel-head{padding:13px 16px !important}

#tk-page .tk-edit-inline-btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;min-height:34px!important;padding:7px 12px!important;border-radius:999px!important;border:1px solid var(--c-blue-bd)!important;background:var(--c-blue-lt)!important;color:var(--c-blue)!important;text-decoration:none!important;font-size:.78rem!important;font-weight:800!important;line-height:1!important;white-space:nowrap!important}
#tk-page .tk-edit-inline-btn:hover{background:#dbeafe!important;border-color:#93c5fd!important;color:var(--c-blue-d)!important}
#tk-page .tk-overview-edit{display:grid!important;gap:12px!important;padding:16px 24px!important;border-bottom:1px solid var(--c-bd)!important;background:linear-gradient(180deg,#f8fbff 0%,#fff 100%)!important}
#tk-page .tk-overview-edit label{display:grid!important;gap:7px!important;margin:0!important}
#tk-page .tk-overview-edit input,#tk-page .tk-overview-edit textarea{width:100%!important;border:1px solid var(--c-bd)!important;border-radius:12px!important;background:#fff!important;color:var(--c-text)!important;font:inherit!important;padding:11px 13px!important;box-shadow:0 1px 2px rgba(15,23,42,.04)!important}
#tk-page .tk-overview-edit textarea{resize:vertical!important;min-height:120px!important;line-height:1.55!important}
#tk-page .tk-overview-edit input:focus,#tk-page .tk-overview-edit textarea:focus{outline:none!important;border-color:var(--c-blue)!important;box-shadow:0 0 0 4px rgba(37,99,235,.10)!important}
#tk-page .tk-overview-edit-actions{justify-content:flex-start!important;margin-top:0!important}
#tk-page .tk-info-grid{grid-template-columns:1fr !important}
#tk-page .tk-info-cell{border-right:none !important;padding:11px 16px !important}
#tk-page .tk-form-grid{grid-template-columns:1fr !important}
#tk-page .tk-form-cell{border-right:none !important;padding:10px 14px !important}
#tk-page .tk-form-cell:nth-child(even){border-right:none !important}
#tk-page .tk-problem{padding:14px 16px !important}
#tk-page .tk-bridge{padding:13px 16px !important}
#tk-page .tk-comment-form{padding:12px 16px !important}
#tk-page .tk-comments-list{padding:0 16px 10px !important}
#tk-page .tk-comment-item{padding:12px 0 !important}
#tk-page .tk-activity-feed{padding:6px 16px 14px !important}
#tk-page .tk-activity-subtabs{padding:10px 16px !important}
#tk-page .tk-geo-list{padding:0 16px 14px !important}
#tk-page .tk-dropzone-wrap{padding:12px 16px !important}
#tk-page .tk-files-grid{grid-template-columns:1fr 1fr !important;gap:8px !important;padding:12px 16px !important}
#tk-page .tk-action-form{padding:0 16px 18px !important}
#tk-page .tk-action-head{padding:13px 16px 8px !important}
#tk-page .tk-soft-note{margin:0 16px 4px !important}
#tk-page .tk-cta{padding:14px 16px !important}
#tk-page .tk-tabs{border-radius:8px !important}
}
@media (max-width:1100px){
.login-shell--serious{grid-template-columns:1fr}
.login-hero--serious{padding:34px 22px 16px}
.login-hero__meta{grid-template-columns:1fr}
.login-card--serious{margin:10px 22px 22px}
.modal-card.modal-manage-request-xl .modal-body, .modal-card.modal-user-editor-xl .modal-body{max-height:calc(100vh - 88px) !important}
.modal-manage-request .modal-two-col, .modal-user-editor .grid.two.user-modal-grid, .modal-user-editor .selection-grid{grid-template-columns:1fr !important}
.activity-item .activity-headline{justify-content:flex-start !important}
.modal-card.modal-manage-request-xl, .modal-card.modal-user-editor-xl{max-height:calc(100vh - 12px) !important;width:min(100vw - 10px, 100%) !important}
.modal-user-editor .selection-grid, .modal-user-editor .grid.two.user-modal-grid, .modal-manage-request .modal-two-col{grid-template-columns:1fr !important}
.main > .mini-stats-row{grid-template-columns:repeat(3,minmax(0,1fr))}
.request-table thead{display:none}
.request-table,.request-table tbody,.request-table tr,.request-table td{display:block;width:100%}
.request-table tr:first-child{border-top:0}
.request-table td{padding:7px 0;border:0}
.request-table td::before{content:attr(data-label);display:block;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:4px}
.request-list-panel{overflow:hidden}
.request-table tr{padding:14px 16px;border-top:1px solid var(--line);border-radius:18px;background:linear-gradient(180deg,#ffffff 0%,#fbfdff 100%);margin-bottom:10px}
.board-filter-grid--compact{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
.up-profile-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:640px){
.login-hero__bullets{grid-template-columns:1fr}
.quick-grid{grid-template-columns:1fr}
.meta-grid{grid-template-columns:1fr}
.login-hero h1{font-size:38px}
.login-hero__bullets,.meta-card-grid{grid-template-columns:1fr}
.browser-access-row{grid-template-columns:1fr;align-items:start}
.browser-access-row .btn{width:100%;justify-content:center}
.wo-create-header{border-radius:18px;padding:14px}
.wo-flat-left.panel,.wo-flat-right.panel{border-radius:18px;padding:14px}
.wo-flat-row{grid-template-columns:1fr}
.wo-meta-strip{grid-template-columns:1fr}
.wo-flat-actions{grid-template-columns:1fr}
.wo-flat-actions .btn{width:100%}
.vendor-modal-card{width:100%;max-height:94dvh;border-radius:22px 22px 18px 18px}
.vendor-form-grid{grid-template-columns:1fr !important}
.vendors-page-head .between{align-items:flex-start}
.up-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
.up-stats2{grid-template-columns:1fr}
.up-access-row{align-items:flex-start;flex-wrap:wrap}
.up-sec-item{flex-direction:column;gap:3px}
.up-sec-item span{text-align:left}
.up-modal{max-height:90vh}
.up-modal-foot{align-items:flex-start;flex-direction:column}
.up-pag{width:100%;justify-content:space-between}
.up-ticket-top,.up-mticket-top{align-items:flex-start;flex-direction:column}
.up-ticket-brief{white-space:normal}
.up-hero{align-items:flex-start}
.up-avatar{width:58px;height:58px;font-size:20px}
.wo-create-page{padding:0 2px 18px}
.wo-create-page .wo-flat-left.panel,.wo-create-page .wo-flat-right.panel{border-radius:18px;padding:14px}
}
@media (max-width:920px){
.modal-card.modal-user-editor-xl, .modal-card.modal-manage-request-xl{width:min(100vw - 8px, 100%) !important;max-width:none !important}
.modal-user-editor .grid.two.user-modal-grid, .modal-user-editor .selection-grid, .modal-manage-request .modal-two-col{grid-template-columns:1fr !important}

.modal-card.modal-user-editor-xl, .modal-card.modal-manage-request-xl, .modal-card.centered-modal:not(.modal-user-editor):not(.modal-manage-request){width:min(100vw - 10px, 100%) !important;max-width:none !important}
.modal-user-editor .grid.two.user-modal-grid, .modal-user-editor .selection-grid, .modal-card.centered-modal:not(.modal-user-editor):not(.modal-manage-request) .selection-grid{grid-template-columns:1fr !important}
.modal-card.modal-user-editor, .modal-card.modal-user-editor-xl, .modal-card.modal-manage-request, .modal-card.modal-manage-request-xl, .modal-card.centered-modal.team-editor-modal, .modal-card.centered-modal.create-team-modal{width:min(100vw - 10px, 100%) !important;max-width:none !important}
.modal-user-editor .grid.two.user-modal-grid, .modal-user-editor .selection-grid, .modal-card.centered-modal.team-editor-modal .selection-grid, .modal-card.centered-modal.create-team-modal .selection-grid{grid-template-columns:1fr !important}
}
@media (max-width:960px){
.mini-stats-row .mini-stat{flex-basis:150px;min-width:150px}
.board-page-mode .main.board-main-lock{height:auto;overflow:auto}
.kanban-board-shell{overflow:auto}
}
@media (max-width:720px){
.main > .mini-stats-row{grid-template-columns:repeat(2,minmax(0,1fr))}
.analytics-summary-shell{padding:12px;border-radius:20px}
.geo-inline-status{width:100%;justify-content:center}
.wo-shell{gap:.8rem}
.wo-next-panel{align-items:flex-start}
.wo-next-actions,.quick-grid{width:100%}
.wo-next-actions .btn,.quick-grid .btn,.quick-grid button{flex:1 1 auto;justify-content:center}
.wo-tabs{border-radius:14px}
.wo-tab{padding:.62rem .76rem}
.wo-info-grid{grid-template-columns:1fr 1fr;gap:.55rem}
.wo-info-grid>div,.wo-info-grid>label,.ticket-relation-grid>div{padding:.65rem}
.activity-subtabs{gap:6px;width:100%;overflow-x:auto}
.activity-subtab{text-align:center;flex:1 0 auto}
.geo-history-item{grid-template-columns:1fr}
.ticket-image-modal{padding:10px;align-items:end}
.ticket-image-modal__card{width:100%;max-height:88dvh;border-radius:22px 22px 16px 16px}
.ticket-image-modal__head{padding:14px}
.ticket-image-modal__foot{padding:12px 14px;flex-direction:column}
.ticket-image-modal__foot .btn{width:100%;justify-content:center}
.ticket-image-modal__body img{max-height:calc(88dvh - 180px)}
.vendor-table td:last-child .btn{width:100%;justify-content:center}
.vendor-email-modal-card{max-width:94vw}
.up-profile-grid{grid-template-columns:1fr}
.sysdev-modal-backdrop,.ticket-contractor-modal,.contractors-create-modal{align-items:flex-end !important;padding:10px !important}
.sysdev-modal-card,.contractor-modal-card{width:100%;max-height:92vh;border-radius:22px 22px 16px 16px}
.contractor-form-grid{grid-template-columns:1fr !important}
}
@media (min-width:921px){
.modal-manage-request .request-btn-row .btn, .modal-manage-request-xl .request-btn-row .btn{flex:0 1 auto !important}
}
@media (max-width:1280px){
.dashboard-stats-grid,.requester-stats-grid,.notifications-stats-grid,.profile-stats-grid,.people-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.board-filter-grid--compact{grid-template-columns:repeat(3,minmax(120px,1fr)) !important}
.board-tabs{top:96px !important}
.kanban-col,.dt-col{flex-basis:270px !important;width:270px !important;min-width:270px !important;max-width:270px !important;height:calc(100vh - 176px) !important;max-height:calc(100vh - 176px) !important}
}
@media (max-width:520px){

.dashboard-panel,.request-list-panel,.request-filters-panel,.table-card,.panel,.card,.stat-card{padding:12px}
.request-table tr{border-radius:16px}
.request-table .action-row .btn,.action-row .btn,.filter-actions .btn,.dashboard-hero .inline-actions .btn,.wo-hero-actions .btn{flex:1 1 100%}
.tabs a,.wo-tab{flex:1 1 100%}
.notif-dot{right:-2px;top:-4px}
}
@supports (height: 100svh){
:root{--dt-vh:100svh}
}
@supports (height: 100dvh){
:root{--dt-vh:100dvh}
}
@media (min-width:981px){
.main{padding-top:24px}

body:not(.login-page) .main:has(.calendar-page-shell){overflow:hidden !important}
.calendar-panel, .panel.calendar-panel{height:100%}
.calendar-weekdays{gap:5px}
.calendar-grid.calendar-days-grid{gap:5px}
.calendar-cell{padding:6px;gap:4px}
.calendar-cell-top{min-height:18px;gap:5px}
.calendar-date{font-size:11px}
.calendar-count-pill{font-size:9px;padding:3px 6px}
.calendar-items{gap:3px;padding-top:0}
.calendar-item,.calendar-item.badge,.calendar-item.badge.info,.calendar-item.badge.warn,.calendar-item.badge.ok{border-radius:10px}
.calendar-item-inner{padding:4px 5px;gap:1px}
.calendar-item-top strong{font-size:10px;line-height:1}
.calendar-item-category{font-size:9px;line-height:1}
.calendar-more-link{font-size:9px;line-height:1;margin-top:0}
.calendar-page-shell{min-height:calc(100vh - 122px);height:calc(100vh - 122px);padding-bottom:0;box-sizing:border-box}
.calendar-panel,.panel.calendar-panel{padding:8px 8px 6px;gap:5px;padding-bottom:12px;max-height:100%}
.calendar-days-grid,.calendar-grid.calendar-days-grid{max-height:100%}
.calendar-cell.has-items .calendar-items{justify-content:flex-start}
body.page-tickets .tickets-desktop-list{display:block !important}
body.page-tickets .tickets-mobile-cards{display:none !important}
body.page-my-requests .myrq-desktop-table{display:block !important}
body.page-my-requests .myrq-mobile-cards{display:none !important}
body.page-request-inbox .request-list-panel{display:block !important}
.wo-create-page{width:100%;max-width:1180px;margin:0 auto}
.wo-flat-layout{display:grid;grid-template-columns:minmax(0, 1.15fr) minmax(360px, .85fr);gap:18px;align-items:start}
.wo-flat-row{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:12px}
.wo-flat-right{position:sticky;top:18px}
.wo-create-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.due-date-field{cursor:pointer}

body.pref-sidebar-icons-off.page-dashboard .db2-link-mark, body.pref-sidebar-icons-off.page-dashboard .db2-hero::before, body.pref-sidebar-icons-off.page-dashboard .db2-hero-text::before{display:none !important}
body.pref-sidebar-icons-off.page-dashboard .db2-hero-text{padding-left:0 !important;min-height:auto !important}
.page-dashboard .db2-link-mark{pointer-events:none}
.page-dashboard .db2-link{gap:10px}

body.page-dashboard .dt-dash-v88{padding:6px 0 28px}
body.page-dashboard .dt-dash-v88 > * + *{margin-top:18px}
body.page-dashboard .dt-home-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:166px;padding:28px 30px;border-radius:30px}
body.page-dashboard .dt-home-hero__main{min-width:0;position:relative;z-index:1}
body.page-dashboard .dt-home-hero__status{display:flex;gap:12px;flex:0 0 auto}
body.page-dashboard .dt-action-hub{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;padding:14px}
body.page-dashboard .dt-action-card{min-height:94px;padding:16px}
body.page-dashboard .dt-action-card strong{font-size:15px}
body.page-dashboard .dt-action-card span{font-size:12px}
body.page-dashboard .dt-action-card--primary, body.page-dashboard .dt-action-card--request{grid-column:span 2;min-height:112px;padding:20px}
body.page-dashboard .dt-action-card--primary strong, body.page-dashboard .dt-action-card--request strong{font-size:21px}
body.page-dashboard .dt-metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
body.page-dashboard .dt-metric-card{min-height:116px;padding:20px}
body.page-dashboard .dt-metric-card span{font-size:38px}
body.page-dashboard .dt-dashboard-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(340px,.75fr);gap:18px;align-items:start}
body.page-dashboard .dt-dashboard-grid--two{grid-template-columns:repeat(2,minmax(0,1fr))}
body.page-dashboard .dt-card-head{min-height:64px;padding:18px 20px}
body.page-dashboard .dt-list-row{grid-template-columns:minmax(178px,max-content) minmax(0,1fr) auto;padding:16px 20px}
body.page-dashboard .dt-list-row small{grid-column:2 / -1;margin-top:-4px}
body.page-dashboard .dt-card--side .dt-list-row{grid-template-columns:minmax(0,1fr) auto}
body.page-dashboard .dt-card--side .dt-row-title{grid-column:1 / -1}
body.page-dashboard .dt-card--side .dt-list-row small{grid-column:1 / -1}
body.page-dashboard .dt-empty{margin:16px;padding:24px}
body.page-locations .location-grid-cards{display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:16px !important}
body.page-locations .location-list-stack{display:flex !important;flex-direction:column !important;gap:14px !important}
body.page-calendar .calendar-page-shell, body.page-calendar .calendar-panel{min-height:0 !important}
body.page-admin-modules .admin-modules-table-wrap{width:100%;max-width:100%;overflow-x:auto;overflow-y:visible;border:1px solid #dbe7f3;border-radius:20px;background:#fff;box-sizing:border-box}
body.page-admin-modules .table--modules{width:100%;min-width:920px;table-layout:fixed}
body.page-admin-modules .table--modules th,body.page-admin-modules .table--modules td{vertical-align:middle;box-sizing:border-box}
body.page-admin-modules .table--modules th:nth-child(1),body.page-admin-modules .table--modules td:nth-child(1){width:20%}
body.page-admin-modules .table--modules th:nth-child(2),body.page-admin-modules .table--modules td:nth-child(2){width:16%}
body.page-admin-modules .table--modules th:nth-child(3),body.page-admin-modules .table--modules td:nth-child(3){width:16%}
body.page-admin-modules .table--modules th:nth-child(4),body.page-admin-modules .table--modules td:nth-child(4){width:8%}
body.page-admin-modules .table--modules th:nth-child(5),body.page-admin-modules .table--modules td:nth-child(5){width:8%}
body.page-admin-modules .table--modules th:nth-child(6),body.page-admin-modules .table--modules td:nth-child(6){width:20%}
body.page-admin-modules .table--modules th:nth-child(7),body.page-admin-modules .table--modules td:nth-child(7){width:12%}
body.page-admin-modules .table--modules input[type="text"],body.page-admin-modules .table--modules input[type="number"]{width:100%;min-width:0;box-sizing:border-box}
body.page-admin-modules .route-pill,body.page-admin-modules .route-pill code{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
body.page-analytics .chart-panel,body.page-analytics .analytics-page .panel{min-width:0;max-width:100%;box-sizing:border-box}

body.page-board .board-mobile-lock{display:none !important}
body.page-board .board-page-wrap--kanban{width:100%;max-width:100%;overflow:hidden}
body.page-board .kanban-board-shell{display:block !important;width:100% !important;max-width:100% !important;height:calc(100vh - 210px) !important;min-height:520px !important;overflow:auto !important;border-radius:20px !important;box-sizing:border-box !important}
body.page-board .dt-kanban, body.page-board .kanban-board{display:flex !important;flex-wrap:nowrap !important;gap:14px !important;min-width:max-content !important;width:max-content !important;align-items:stretch !important}
body.page-board .kanban-col, body.page-board .dt-col{flex:0 0 292px !important;width:292px !important;min-width:292px !important;max-width:292px !important;min-height:480px !important;box-sizing:border-box !important}
body.page-calendar .calendar-page-shell{display:flex !important;flex-direction:column !important;width:100% !important;max-width:100% !important;min-height:calc(100vh - 150px) !important;height:auto !important;overflow:hidden !important}
body.page-calendar .calendar-panel{display:flex !important;flex-direction:column !important;min-height:0 !important;overflow:hidden !important}
body.page-calendar .calendar-toolbar{display:flex !important;flex-direction:row !important;align-items:center !important;justify-content:space-between !important;gap:12px !important;flex-wrap:nowrap !important;width:100% !important}
body.page-calendar .calendar-toolbar-center{order:0 !important;width:auto !important;min-width:220px !important;text-align:center !important}
body.page-calendar .calendar-toolbar > a.btn{width:auto !important;min-width:max-content !important;height:auto !important}
body.page-calendar .calendar-month-trigger{width:auto !important;max-width:none !important;min-width:0 !important}
body.page-calendar .calendar-weekdays{display:grid !important;grid-template-columns:repeat(7,minmax(0,1fr)) !important;gap:8px !important}
body.page-calendar .calendar-days-grid, body.page-calendar .calendar-grid.calendar-days-grid{display:grid !important;grid-template-columns:repeat(7,minmax(0,1fr)) !important;gap:8px !important;flex:1 1 auto !important;min-height:0 !important;height:calc(100vh - 250px) !important;overflow:auto !important}
body.page-calendar .calendar-cell{display:block !important;min-height:124px !important;height:auto !important}
body.page-calendar .calendar-cell.is-empty{display:block !important}
body.page-analytics .analytics-mini-stats{width:100%;display:grid !important;grid-template-columns:repeat(4,minmax(0,1fr)) !important;gap:14px !important}
body.page-analytics .bar-track{min-width:0;width:100%;min-width:0 !important;width:100% !important}
body.page-analytics .analytics-modal{z-index:10020;padding:24px;z-index:10030 !important;padding:24px !important}
body.page-analytics .analytics-modal-card{width:min(860px,calc(100vw - 48px));max-width:100%;max-height:min(86vh,780px);overflow:auto;box-sizing:border-box;width:min(860px,calc(100vw - 48px)) !important;max-width:100% !important;max-height:min(86vh,780px) !important;overflow:auto !important;box-sizing:border-box !important}
body.page-request-inbox .request-table-wrap, body.page-my-requests .table-wrap, body.page-tickets .table-wrap{width:100% !important;max-width:100% !important;overflow-x:auto !important;overflow-y:visible !important;-webkit-overflow-scrolling:touch !important}
body.page-request-inbox .request-table, body.page-my-requests .table, body.page-tickets .table--tickets{table-layout:auto !important;width:100% !important;min-width:1040px !important;border-collapse:separate !important;border-spacing:0 !important}
body.page-request-inbox .request-table th, body.page-request-inbox .request-table td, body.page-my-requests .table th, body.page-my-requests .table td, body.page-tickets .table--tickets th, body.page-tickets .table--tickets td{display:table-cell !important;vertical-align:top !important;word-break:normal !important;overflow-wrap:normal !important;white-space:normal !important;hyphens:none !important}
body.page-request-inbox .request-table td:nth-child(1), body.page-request-inbox .request-table th:nth-child(1), body.page-request-inbox .request-table td:nth-child(5), body.page-request-inbox .request-table th:nth-child(5), body.page-request-inbox .request-table td:nth-child(6), body.page-request-inbox .request-table th:nth-child(6), body.page-request-inbox .request-table td:nth-child(7), body.page-request-inbox .request-table th:nth-child(7), body.page-my-requests .table td:nth-child(1), body.page-my-requests .table th:nth-child(1), body.page-my-requests .table td:nth-child(5), body.page-my-requests .table th:nth-child(5), body.page-tickets .table--tickets td:nth-child(1), body.page-tickets .table--tickets th:nth-child(1), body.page-tickets .table--tickets td:nth-child(2), body.page-tickets .table--tickets th:nth-child(2), body.page-tickets .table--tickets td:nth-child(6), body.page-tickets .table--tickets th:nth-child(6), body.page-tickets .table--tickets td:nth-child(7), body.page-tickets .table--tickets th:nth-child(7){white-space:nowrap !important;word-break:normal !important;overflow-wrap:normal !important}
body.page-request-inbox .request-table .badge, body.page-my-requests .table .badge, body.page-tickets .table--tickets .badge{white-space:nowrap !important}
body.page-analytics .analytics-page .panel, body.page-analytics .analytics-page .chart-panel{min-width:0 !important;max-width:100% !important;box-sizing:border-box !important}
body.page-analytics .analytics-page .bar-row{min-width:0 !important;max-width:100% !important}
.table-wrap, .table-card .table-wrap, body.page-request-inbox .table-wrap, body.page-my-requests .table-wrap, body.page-tickets .table-wrap{width:100% !important;max-width:100% !important;overflow-x:auto !important;overflow-y:visible !important}
body.page-request-inbox table.table, body.page-my-requests table.table, body.page-tickets table.table{width:100% !important;min-width:920px !important;table-layout:auto !important}
body.page-request-inbox table.table th, body.page-request-inbox table.table td, body.page-my-requests table.table th, body.page-my-requests table.table td, body.page-tickets table.table th, body.page-tickets table.table td{vertical-align:middle !important;overflow-wrap:normal !important;word-break:normal !important}
body.page-request-inbox table.table td:first-child, body.page-request-inbox table.table td:nth-child(4), body.page-request-inbox table.table td:nth-child(5), body.page-request-inbox table.table td:last-child, body.page-my-requests table.table td:first-child, body.page-my-requests table.table td:nth-child(5), body.page-my-requests table.table td:last-child, body.page-tickets table.table td:first-child, body.page-tickets table.table td:nth-child(2), body.page-tickets table.table td:nth-child(6), body.page-tickets table.table td:last-child{white-space:nowrap !important;min-width:max-content !important}
body.page-request-inbox table.table td:first-child strong, body.page-my-requests table.table td:first-child strong, body.page-tickets table.table td:first-child strong{white-space:nowrap !important;word-break:keep-all !important;overflow-wrap:normal !important}
body.page-analytics .analytics-page, body.page-analytics .analytics-page *{box-sizing:border-box}
body.page-analytics .chart-panel, body.page-analytics .panel, body.page-analytics .card{min-width:0;max-width:100%}
body.page-analytics .bar-row{width:100%;max-width:100%;box-sizing:border-box;display:grid !important;gap:10px !important;align-items:center !important;width:100% !important;max-width:100% !important;box-sizing:border-box !important;grid-template-columns:minmax(150px,240px) minmax(0,1fr) auto !important;min-width:0}
body.page-analytics .bar-label{min-width:0 !important;overflow:hidden !important;text-overflow:ellipsis !important;white-space:nowrap !important;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

body.page-analytics{height:100dvh !important;min-height:100dvh !important;overflow:hidden !important}
body.page-analytics .app-shell{height:100dvh !important;min-height:100dvh !important;overflow:hidden !important}
body.page-analytics .main{height:100dvh !important;min-height:0 !important;overflow-y:auto !important;overflow-x:hidden !important;padding-bottom:44px !important}
body.page-analytics .analytics-page{overflow:hidden;width:100%;margin:0 auto;box-sizing:border-box;max-width:1320px !important;max-width:100%;overflow-x:hidden;overflow:visible !important;padding-bottom:44px !important}
body.page-analytics .analytics-page > .grid.two{align-items:start;display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:16px !important;align-items:start !important;overflow:visible !important}
body.page-analytics .chart-panel{min-width:0 !important;overflow:hidden !important}
body.page-admin-modules .table--modules input[type="checkbox"]:disabled{opacity:1 !important;cursor:default}
body.page-admin-modules .table--modules .is-core-module td{background:#f8fafc}
body.page-admin-modules .checkline--center{display:flex;align-items:center;gap:8px;white-space:nowrap}
body.page-admin-modules .route-pill code{font-size:11px;font-family:ui-monospace,monospace;background:#f1f5f9;border-radius:6px;padding:2px 6px;display:inline-block;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
body.page-settings .settings-page{max-width:860px;margin:0 auto}
body.page-settings .settings-save-row{position:sticky;bottom:0;background:#fff;padding:12px 0 4px;border-top:1px solid var(--line);margin-top:8px;z-index:2}
body.page-request-inbox .request-mobile-list{display:none !important}
body.page-notifications .notif-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}

}
@media (max-width:680px){
.board-filter-grid{grid-template-columns:1fr}
.board-status-pill{min-width:132px;padding:10px 12px}
.dt-col{min-width:100%}
.dt-kanban{grid-template-columns:1fr !important}
.dt-col-head{top:58px}
}
@media (max-width:700px){
.kanban-col,.dt-col{min-width:280px}
.board-filter-toolbar--tight,.board-toolbar-main{align-items:flex-start}
.board-tabs--inline{width:100%;justify-content:flex-start;overflow:auto}
.board-filter-grid--compact{grid-template-columns:1fr !important}
.board-shell-controls{display:none}
.kanban-board-shell{padding-bottom:10px;height:calc(100vh - 170px) !important;min-height:430px !important}
.board-shell-controls--inline{margin-left:0}
:root{--board-shell-h:calc(100vh - 180px)}
.dt-col{min-height:calc(100vh - 210px);max-height:calc(100vh - 210px);flex-basis:84vw !important;min-width:84vw !important;max-width:84vw !important}
.board-shell-arrow{width:34px;height:34px;font-size:16px}
.contractor-grid{grid-template-columns:1fr}
.contractor-modal-card{width:100%}
}
@media (max-width:860px){
.automation-rule-form .field-box--wide{grid-column:auto}
html,body{overflow-x:hidden}
body:not(.login-page){background:linear-gradient(180deg,#eef3f8 0%,#f6f8fb 100%)}
.app-shell{display:block;min-height:100vh}
.main{padding:10px var(--dt-mobile-shell-pad) 24px;min-width:0}
body:not(.login-page) .main{max-width:560px;margin:0 auto}
body:not(.login-page) .flash{border-radius:16px;margin-bottom:12px}
.panel, .card, .stat-card, .mini-stat, .login-card, .table-card, .dashboard-hero-panel, .analytics-summary-shell, .location-card-card, .wo-hero, .wo-toolbar, .wo-panel{border-radius:var(--dt-mobile-card-radius);box-shadow:0 14px 34px rgba(15,23,42,.06)}
.grid, .two, .three, .cards4, .grid-4, .grid-5, .grid-6, .quick-grid, .metaGrid, .mini-grid, .split, .inbox-layout, .request-modal-shell, .ticket-relation-grid, .wo-info-grid, .request-manage-grid, .people-stats-grid, .notifications-stats-grid, .profile-stats-grid, .location-grid-cards, .dashboard-two-col, .dashboard-grid, .analytics-grid, .charts-grid, .selection-grid, .modal-mini-grid{grid-template-columns:1fr !important}
.cards4, .grid-4, .grid-5, .grid-6{gap:12px}
.dashboard-hero-panel, .wo-hero, .wo-toolbar, .module-inline-head-between, .filter-toolbar{flex-direction:column;align-items:flex-start}
.top-left h1, .page-head h1, .wo-hero h2, .panel-head h2, .section-title + h2, .hero h2{font-size:1.2rem !important;line-height:1.2}
.top-subtitle, .dashboard-hero-panel .muted, .wo-hero .muted, .panel-head .muted{font-size:.93rem;line-height:1.45}
.request-btn-row, .action-row, .request-actions-inline .action-row, .wo-hero-actions, .wo-tabs, .request-card .action-row, .location-card-actions, .top-actions{width:100%;display:flex;flex-wrap:wrap;gap:10px}
.request-btn-row > .btn, .action-row > .btn, .wo-tabs > .wo-tab, .location-card-actions > .btn, .top-actions > .btn, .top-actions > a.btn, .request-actions-inline .action-row > .btn{flex:1 1 calc(50% - 10px);min-width:0;justify-content:center}
.wo-tabs > .wo-tab{min-height:44px}
.btn, button.btn, a.btn, input, select, textarea{min-height:46px;font-size:16px}
body:not(.login-page) textarea{min-height:120px}
.request-table-wrap, .table-wrap{overflow:visible}
.table-card table, .request-table, .dt-table, .table{min-width:0 !important}
.table thead, .request-table thead, .dt-table thead{display:none}
.table tbody, .request-table tbody, .dt-table tbody, .table tr, .request-table tr, .dt-table tr, .table td, .request-table td, .dt-table td{display:block;width:100%}
.table tr, .request-table tr, .dt-table tr{background:#fff;border:1px solid var(--line);border-radius:18px;padding:12px;margin-bottom:12px;box-shadow:0 10px 26px rgba(15,23,42,.05)}
.table td, .request-table td, .dt-table td{border:0;padding:6px 0;white-space:normal !important}
.table td::before, .request-table td::before, .dt-table td::before{content:attr(data-label);display:block;margin-bottom:4px;font-size:11px;line-height:1.2;letter-spacing:.08em;text-transform:uppercase;color:#64748b;font-weight:800}
.table td:last-child, .request-table td:last-child, .dt-table td:last-child{padding-bottom:0}
body.page-board .kanban-board{grid-template-columns:1fr;gap:14px;overflow:visible}
.kanban-col{padding:12px;border-radius:20px}
.dt-col-head{position:static;border-radius:16px}
.kanban-drop{min-height:0}
.analytics-summary-shell, .mini-stats-row, .board-summary-row{margin-bottom:14px}
.analytics-summary-shell .analytics-mini-stats, .mini-stats-row, .board-summary-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.analytics-summary-shell .mini-stat, .mini-stats-row .mini-stat, .board-summary-row .mini-stat{min-height:0;padding:14px}
body:not(.login-page) .stat-sm{font-size:1.2rem}
.filter-toolbar-badges, .workload-inline-summary, .tag-list, .location-links-row, .filter-actions{width:100%;display:flex;flex-wrap:wrap;gap:8px}
.filter-toolbar-badges > *, .workload-inline-summary > *, .tag-list > *, .filter-actions > *{max-width:100%}
.field-box, .field, .stack label, .requester-form .field-card, .wo-info-grid > div, .wo-info-grid > label{border-radius:16px}
.modal-backdrop{padding:10px;align-items:end}
.modal-card, .location-action-card{width:min(100%,560px);max-height:88vh;border-radius:24px 24px 18px 18px;margin:0 auto}
.modal-head{padding:16px 16px 10px}
.modal-body{padding:14px 16px 16px}
.location-card-media{height:190px}
body:not(.login-page) .location-mini{grid-template-columns:1fr 1fr;gap:10px}
.up-profile-grid{grid-template-columns:1fr}
.wo-create-layout{grid-template-columns:1fr}
.wo-create-right-inner{position:static}
.wo-field-row{grid-template-columns:1fr}
.wo-field-row.trio{grid-template-columns:1fr}
.wo-field-row .due-date-field:nth-child(3){grid-column:auto}
.wo-flat-layout{grid-template-columns:1fr}
.wo-flat-row{grid-template-columns:1fr}
}
@media (max-width:420px){
.login-shell--cinematic{padding:16px 14px}
.login-card--cinematic{width:min(100%,432px);padding:21px 18px 18px;border-radius:34px}
.login-card__top{gap:12px;justify-content:flex-start;text-align:left}
.login-field{border-radius:20px}
.login-form--iconic input{min-height:54px;padding-left:45px !important;line-height:normal}
.login-form--iconic input::placeholder{color:#64748b;font-weight:500}
.login-field__icon{left:16px;width:17px;height:17px}
.brand-login-copy--stacked .brand-login-line{font-size:1.18rem;font-weight:800}
.brand-login-copy--stacked .brand-login-line--sub{font-size:1.02rem;font-weight:800}
.wo-info-grid{grid-template-columns:1fr}
.files-grid{grid-template-columns:1fr}
}
@media (max-width:1320px){
.calendar-head{font-size:11px}
}
@media (min-width:1100px){
.wo-action-zone .wo-info-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}
}
@media (max-width:1400px){
.calendar-head{font-size:14px}
}
@media (max-width:768px){
body:not(.login-page) .sidebar-toggle{display:none !important}
body.page-dashboard .mi-trabajo-panel{display:block}
.kanban-board-shell{overflow-x:visible !important}
body.page-board .kanban-board{display:flex !important;flex-direction:column !important;gap:6px !important}
.kanban-col{width:100% !important;min-width:unset !important}
.kanban-head{cursor:pointer;display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-radius:8px;user-select:none;-webkit-tap-highlight-color:transparent}
.kanban-head::after{content:"▾";font-size:12px;transition:transform .2s;opacity:.5;margin-left:6px}
.kanban-col.col-collapsed .kanban-head::after{transform:rotate(-90deg)}
.kanban-drop{transition:max-height .25s ease;overflow:hidden}
.kanban-col.col-collapsed .kanban-drop{max-height:0 !important}
.board-filter-grid{grid-template-columns:1fr 1fr !important;gap:8px}
.board-filter-actions{flex-wrap:wrap;gap:6px}
.wo-hero{flex-direction:column !important;gap:10px !important}
body:not(.login-page) .wo-hero-actions{flex-wrap:wrap;gap:6px}
.wo-info-grid{grid-template-columns:1fr !important}
.wo-toolbar{flex-direction:column !important;gap:8px !important}
body:not(.login-page) .wo-toolbar-left{flex-wrap:wrap;gap:8px}
.wo-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;scrollbar-width:none}
.wo-tab{scroll-snap-align:start;flex-shrink:0;white-space:nowrap}
body:not(.login-page) .table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
.dt-table th, .dt-table td{white-space:nowrap;font-size:12px !important;padding:8px 10px !important}
.dt-table.table--tickets th:nth-child(5), .dt-table.table--tickets td:nth-child(5){display:none}

.compact-table-head{flex-direction:row;align-items:center;justify-content:space-between;gap:8px 10px;padding:12px 14px 10px;overflow:hidden}
.compact-table-head .panel-head-title{flex:1 1 auto;min-width:0;max-width:100%}
.compact-table-head .panel-head-actions{display:flex;flex:0 0 auto;align-items:center;justify-content:flex-end;gap:8px;margin-left:auto;min-width:0}
.compact-table-head .panel-head-actions .btn{white-space:nowrap}
body.page-request-inbox .panel-head-filter-bar,body.page-my-requests .panel-head-filter-bar,body.page-tickets .panel-head-filter-bar{display:none !important}
.wo-create-grid{grid-template-columns:1fr}
.wo-form-section{padding:14px}
.my-req-stats{grid-template-columns:repeat(2, 1fr)}
.my-requests-page{max-width:100%}
.mini-stats-row{grid-template-columns:repeat(3, 1fr) !important;gap:8px !important}
body:not(.login-page) .flash{font-size:13px;padding:10px 14px}
.filter-toolbar{flex-direction:column !important;gap:8px}
.filter-actions{flex-wrap:wrap;gap:8px}
.my-req-filter-grid{grid-template-columns:1fr 1fr}
.db-top-row{flex-direction:column;gap:12px}
.db-quick-actions{width:100%}
.db-link-grid{grid-template-columns:repeat(3, 1fr)}
.myrq-desktop-table{display:none !important}
.myrq-mobile-cards{display:flex;flex-direction:column;gap:10px}
.request-filters-panel{display:none}
.request-filters-panel.mob-filter-open{display:block !important}
#requestInboxFilter.mob-filter-open{display:block !important}
#ticketsFilterPanel{display:none}
#ticketsFilterPanel.mob-filter-open{display:block !important}
.mob-filter-toggle{display:inline-flex !important}
#requestInboxFilter{display:none}
#requestInboxFilter.dt-filter-open{display:block !important}
.mob-filter-toggle-bar{display:flex}
.dt-mob-collapsible{display:none}
.dt-mob-collapsible.dt-filter-open{display:block !important}
}
@media (max-width:480px){
.my-req-stats{grid-template-columns:repeat(2, 1fr)}
.board-filter-grid{grid-template-columns:1fr !important}
.wo-create-grid{grid-template-columns:1fr}
.my-req-filter-grid{grid-template-columns:1fr}
.db-link-grid{grid-template-columns:repeat(2, 1fr)}
.db2-stat-strip{grid-template-columns:repeat(2, 1fr)}
.db2-hero{flex-direction:column;gap:12px}
.db2-hero-actions{width:100%}
}
@media (min-width:1180px){
.db2-action-grid{grid-template-columns:1fr 1fr}
.db2-action--primary{grid-column:1/-1}
}
@media (min-width:981px) and (max-width:1260px){
body.page-dashboard .dt-action-hub{grid-template-columns:repeat(4,minmax(0,1fr))}
body.page-dashboard .dt-dashboard-grid{grid-template-columns:1fr}
}
@media (max-width:390px){
body.page-dashboard .dt-action-hub, body.page-dashboard .dt-metric-grid, body.page-dashboard .dt-home-hero__status{grid-template-columns:1fr}
body.page-request-inbox .rmc-meta-grid div{min-width:104px !important}
}
@media (min-width:560px){
#tk-page .tk-hero{flex-direction:row !important;justify-content:space-between !important;align-items:flex-start !important}
#tk-page .tk-hero-meta{flex:1 !important;min-width:0 !important}
#tk-page .tk-hero-badges{flex-shrink:0 !important;align-items:flex-start !important}
#tk-page .tk-meta-bar{flex-wrap:nowrap !important}
#tk-page .tk-meta-badges{margin-left:auto !important}
}

@media (max-width:980px){
  html body:not(.login-page) nav#mobileBottomNav.mobile-bottom-nav[data-mobile-nav="canonical"]{
    position:fixed !important;
    left:0 !important;
    right:0 !important;
    bottom:0 !important;
    width:100vw !important;
    min-height:var(--dt-mobile-nav-height,76px) !important;
    height:auto !important;
    max-height:calc(var(--dt-mobile-nav-height,76px) + env(safe-area-inset-bottom,0px)) !important;
    padding:7px max(8px,env(safe-area-inset-left)) calc(7px + env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-right)) !important;
    display:flex !important;
    flex-direction:row !important;
    align-items:stretch !important;
    justify-content:space-between !important;
    gap:4px !important;
    background:rgba(255,255,255,.985) !important;
    border-top:1px solid rgba(15,23,42,.10) !important;
    box-shadow:0 -12px 30px rgba(15,23,42,.12) !important;
    z-index:9998 !important;
    box-sizing:border-box !important;
    overflow:visible !important;
    opacity:1 !important;
    visibility:visible !important;
  }
  html body.dt-sidebar-mobile-open nav#mobileBottomNav.mobile-bottom-nav{display:none !important}
  html body:not(.login-page) nav#mobileBottomNav.mobile-bottom-nav[data-mobile-nav="canonical"] > .mob-nav-item{
    flex:1 1 0 !important;
    min-width:0 !important;
    max-width:none !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    gap:3px !important;
    padding:4px 2px !important;
    border-radius:15px !important;
    color:#64748b !important;
    text-decoration:none !important;
    background:transparent !important;
    border:0 !important;
    box-shadow:none !important;
    font:inherit !important;
    box-sizing:border-box !important;
  }
  html body:not(.login-page) nav#mobileBottomNav.mobile-bottom-nav[data-mobile-nav="canonical"] > .mob-nav-item--menu{order:1 !important}
  html body:not(.login-page) nav#mobileBottomNav.mobile-bottom-nav[data-mobile-nav="canonical"] > .mob-nav-item--work{order:2 !important}
  html body:not(.login-page) nav#mobileBottomNav.mobile-bottom-nav[data-mobile-nav="canonical"] > .mob-nav-item--plus{order:3 !important}
  html body:not(.login-page) nav#mobileBottomNav.mobile-bottom-nav[data-mobile-nav="canonical"] > .mob-nav-item--tickets,
  html body:not(.login-page) nav#mobileBottomNav.mobile-bottom-nav[data-mobile-nav="canonical"] > .mob-nav-item--requests{order:4 !important}
  html body:not(.login-page) nav#mobileBottomNav.mobile-bottom-nav[data-mobile-nav="canonical"] > .mob-nav-item--alerts{order:5 !important}
  html body:not(.login-page) nav#mobileBottomNav.mobile-bottom-nav[data-mobile-nav="canonical"] > .mob-nav-item.active{
    color:#1d4ed8 !important;
    background:#eff6ff !important;
  }
  html body:not(.login-page) nav#mobileBottomNav.mobile-bottom-nav[data-mobile-nav="canonical"] .mob-nav-icon{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:24px !important;
    height:24px !important;
    min-width:24px !important;
    min-height:24px !important;
    line-height:1 !important;
    color:currentColor !important;
  }
  html body:not(.login-page) nav#mobileBottomNav.mobile-bottom-nav[data-mobile-nav="canonical"] .mob-nav-svg,
  html body:not(.login-page) nav#mobileBottomNav.mobile-bottom-nav[data-mobile-nav="canonical"] .mob-nav-svg *{
    width:22px !important;
    height:22px !important;
    stroke:currentColor !important;
    vector-effect:non-scaling-stroke !important;
  }
  html body:not(.login-page) nav#mobileBottomNav.mobile-bottom-nav[data-mobile-nav="canonical"] .mob-nav-label{
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    color:currentColor !important;
    font-size:8.2px !important;
    font-weight:850 !important;
    line-height:1.05 !important;
    text-align:center !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    opacity:1 !important;
    visibility:visible !important;
  }
  html body:not(.login-page) nav#mobileBottomNav.mobile-bottom-nav[data-mobile-nav="canonical"] > .mob-nav-item--plus .mob-nav-icon{
    width:34px !important;
    height:34px !important;
    min-width:34px !important;
    min-height:34px !important;
    border-radius:999px !important;
    background:#2563eb !important;
    color:#fff !important;
    box-shadow:0 8px 18px rgba(37,99,235,.28) !important;
  }
  html body:not(.login-page) nav#mobileBottomNav.mobile-bottom-nav[data-mobile-nav="canonical"] > .mob-nav-item--plus .mob-nav-svg,
  html body:not(.login-page) nav#mobileBottomNav.mobile-bottom-nav[data-mobile-nav="canonical"] > .mob-nav-item--plus .mob-nav-svg *{stroke:#fff !important}
}
@media (min-width:981px){
  body:not(.login-page) nav#mobileBottomNav.mobile-bottom-nav{display:none !important}
}

html,body{width:100%;max-width:100%;height:100%;margin:0;padding:0;background:#edf3f8;overflow:hidden}

html::-webkit-scrollbar,body::-webkit-scrollbar{width:0;height:0}
html::-webkit-scrollbar-button,body::-webkit-scrollbar-button{display:none;width:0;height:0}
html{scrollbar-width:none}

body:not(.login-page){background:linear-gradient(180deg,#f4f7fa,#edf3f8);overflow:hidden}
body:not(.login-page) .app-shell{
  display:flex !important;
  flex-direction:row !important;
  width:100% !important;
  max-width:100vw !important;
  height:100dvh !important;
  min-height:100dvh !important;
  overflow:hidden !important;
  background:linear-gradient(180deg,#f4f7fa,#edf3f8);
}
body:not(.login-page) .main{
  flex:1 1 auto !important;
  min-width:0 !important;
  max-width:100% !important;
  height:100dvh !important;
  overflow-y:auto !important;
  overflow-x:hidden !important;
  scrollbar-gutter:auto !important;
  overflow-anchor:none !important;
  padding:24px !important;
  box-sizing:border-box !important;
  background:transparent !important;
  scrollbar-width:thin;
  scrollbar-color:rgba(100,116,139,.42) #edf3f8;
}
body:not(.login-page) .main::-webkit-scrollbar{width:10px}
body:not(.login-page) .main::-webkit-scrollbar-track{background:#edf3f8}
body:not(.login-page) .main::-webkit-scrollbar-thumb{background:rgba(100,116,139,.34);border-radius:999px;border:3px solid #edf3f8;background-clip:padding-box}
body:not(.login-page) .main::-webkit-scrollbar-corner{background:#edf3f8}
body:not(.login-page) .main::-webkit-scrollbar-button{display:none;width:0;height:0}
body:not(.login-page) .sidebar .nav-wrap::-webkit-scrollbar-button{display:none;width:0;height:0}

body:not(.login-page) .sidebar{
  font-family:var(--dt-font-family,'Inter',system-ui,sans-serif) !important;
  --dt-sidebar-w:284px;
  --dt-sidebar-collapsed-w:92px;
  flex:0 0 var(--dt-sidebar-w) !important;
  width:var(--dt-sidebar-w) !important;
  min-width:var(--dt-sidebar-w) !important;
  max-width:var(--dt-sidebar-w) !important;
  height:100vh !important;
  min-height:100vh !important;
  max-height:100vh !important;
  display:flex !important;
  flex-direction:column !important;
  overflow:hidden !important;
  box-sizing:border-box !important;
  padding:0 !important;
  transform:none !important;
  contain:layout paint style !important;
  isolation:isolate !important;
  background:linear-gradient(180deg,var(--dt-sidebar-top,#153b74) 0%,var(--dt-sidebar-bottom,#0c214a) 100%) !important;
  color:#fff !important;
  z-index:10 !important;

  scrollbar-width:none;
  transition:width .20s ease,min-width .20s ease,max-width .20s ease,flex-basis .20s ease !important;
}
body:not(.login-page) .sidebar.collapsed,
html.dt-sidebar-precollapsed body:not(.login-page) .sidebar{
  flex-basis:var(--dt-sidebar-collapsed-w) !important;
  width:var(--dt-sidebar-collapsed-w) !important;
  min-width:var(--dt-sidebar-collapsed-w) !important;
  max-width:var(--dt-sidebar-collapsed-w) !important;
}

body:not(.login-page) .sidebar .brand-row{
  flex:0 0 auto !important;
  min-height:74px !important;
  width:100% !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:10px !important;
  margin:0 !important;
  padding:16px 10px 12px !important;
  border-bottom:1px solid rgba(255,255,255,.14) !important;
  box-sizing:border-box !important;
  position:relative !important;
  overflow:visible !important;
  background:transparent !important;
}
body:not(.login-page) .sidebar .brand{
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  flex:1 1 auto !important;
  min-width:0 !important;
  max-width:calc(100% - 84px) !important;
  overflow:hidden !important;
}
body:not(.login-page) .sidebar .brand-logo,
body:not(.login-page) .sidebar .brandmark{
  flex:0 0 42px !important;
  width:42px !important;
  height:42px !important;
  min-width:42px !important;
  max-width:42px !important;
  border-radius:15px !important;
  object-fit:contain !important;
  display:grid !important;
  place-items:center !important;
}
body:not(.login-page) .sidebar .brand-copy{
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  gap:4px !important;
  min-width:0 !important;
  max-width:100% !important;
  overflow:hidden !important;
  position:relative !important;
  padding-top:2px !important;
}
body:not(.login-page) .sidebar .brand-line{
  display:block !important;
  min-width:0 !important;
  max-width:100% !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  line-height:1.12 !important;
  color:#fff !important;
}
body:not(.login-page) .sidebar .brand-line--primary{
  font-size:17px !important;
  font-weight:900 !important;
  letter-spacing:.015em !important;
}
body:not(.login-page) .sidebar .brand-line--secondary{
  font-size:11px !important;
  font-weight:800 !important;
  letter-spacing:.14em !important;
  text-transform:uppercase !important;
  opacity:.82 !important;
}
body:not(.login-page) .sidebar .brand-line--secondary::before{
  content:"" !important;
  display:block !important;
  width:28px !important;
  height:2px !important;
  margin:0 0 7px !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.28) !important;
}
body:not(.login-page) .sidebar .brand-actions{
  flex:0 0 auto !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:6px !important;
  width:74px !important;
  min-width:74px !important;
  max-width:74px !important;
  position:static !important;
  inset:auto !important;
  transform:none !important;
}
body:not(.login-page) .sidebar .icon-btn{
  background:rgba(255,255,255,.10) !important;
  border:1px solid rgba(255,255,255,.16) !important;
  color:#fff !important;
}
body:not(.login-page) .sidebar .brand-actions .icon-btn,
body:not(.login-page) .sidebar .logout-btn{
  flex:0 0 34px !important;
  width:34px !important;
  min-width:34px !important;
  height:34px !important;
  min-height:34px !important;
  padding:0 !important;
  display:grid !important;
  place-items:center !important;
  border-radius:12px !important;
  line-height:1 !important;
}
body:not(.login-page) .sidebar .nav-wrap{
  flex:1 1 auto !important;
  min-height:0 !important;
  overflow-y:auto !important;
  overflow-x:hidden !important;
  scrollbar-gutter:auto !important;
  overscroll-behavior:contain !important;
  overflow-anchor:none !important;
  padding:12px 10px 16px !important;
  box-sizing:border-box !important;
  scroll-behavior:auto !important;
}
body:not(.login-page) .sidebar::-webkit-scrollbar{display:none}
body:not(.login-page) .sidebar .nav-wrap{scrollbar-width:thin;scrollbar-color:rgba(226,232,240,.34) transparent}
body:not(.login-page) .sidebar .nav-wrap::-webkit-scrollbar{width:6px}
body:not(.login-page) .sidebar .nav-wrap::-webkit-scrollbar-track{background:transparent}
body:not(.login-page) .sidebar .nav-wrap::-webkit-scrollbar-thumb{background:rgba(226,232,240,.30);border-radius:999px;border:1px solid transparent;background-clip:padding-box}
body:not(.login-page) .sidebar .nav-wrap::-webkit-scrollbar-thumb:hover{background:rgba(226,232,240,.42);background-clip:padding-box}
body:not(.login-page) .sidebar .nav-group{
  margin:0 0 12px !important;
  padding:8px !important;
  border-radius:16px !important;
  background:rgba(255,255,255,.045) !important;
  border:1px solid rgba(255,255,255,.08) !important;
  overflow:hidden !important;
}
body:not(.login-page) .sidebar .nav-group summary{
  display:flex !important;
  align-items:center !important;
  min-height:28px !important;
  padding:0 6px 6px !important;
  margin:0 !important;
  font-size:10.5px !important;
  font-weight:850 !important;
  line-height:1.15 !important;
  letter-spacing:.10em !important;
  text-transform:uppercase !important;
  color:rgba(255,255,255,.62) !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
body:not(.login-page) .sidebar a[data-nav-link]{
  width:100% !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:10px !important;
  min-height:40px !important;
  padding:8px 10px !important;
  margin:0 0 4px !important;
  box-sizing:border-box !important;
  border-radius:12px !important;
  color:rgba(255,255,255,.86) !important;
  text-decoration:none !important;
  overflow:hidden !important;
}
body:not(.login-page) .sidebar a[data-nav-link]:last-child{margin-bottom:0 !important}
body:not(.login-page) .sidebar a[data-nav-link].current{
  color:#fff !important;
  background:rgba(255,255,255,.12) !important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.10) !important;
}
body:not(.login-page) .sidebar .nav-icon{
  flex:0 0 26px !important;
  width:26px !important;
  height:26px !important;
  min-width:26px !important;
  display:grid !important;
  place-items:center !important;
  border-radius:10px !important;
  line-height:1 !important;
}
body.pref-sidebar-icons-off:not(.login-page) .sidebar:not(.collapsed) .nav-icon{
  display:none !important;
}
body.pref-sidebar-icons-off:not(.login-page) .sidebar:not(.collapsed) a[data-nav-link]{
  gap:0 !important;
}
body:not(.login-page) .sidebar .nav-label{
  flex:1 1 auto !important;
  min-width:0 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
body:not(.login-page) .sidebar > .sidebar-foot{
  flex:0 0 auto !important;
  min-height:54px !important;
  width:100% !important;
  padding:10px 14px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:8px !important;
  border-top:1px solid rgba(255,255,255,.12) !important;
  background:rgba(0,0,0,.18) !important;
  box-sizing:border-box !important;
  overflow:hidden !important;
}
body:not(.login-page) .sidebar > .sidebar-foot .user-pill.clickable-pill{
  flex:1 1 auto !important;
  min-width:0 !important;
  height:32px !important;
  min-height:32px !important;
  padding:0 10px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  border-radius:11px !important;
  background:rgba(255,255,255,.13) !important;
  border:1px solid rgba(255,255,255,.12) !important;
  color:#fff !important;
  font-size:12px !important;
  font-weight:750 !important;
  line-height:1 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  text-decoration:none !important;
}
body:not(.login-page) .sidebar.collapsed .brand-row{
  min-height:138px !important;
  padding:12px 8px 12px !important;
  flex-direction:column !important;
  justify-content:flex-start !important;
  align-items:center !important;
  gap:10px !important;
  background:rgba(255,255,255,.045) !important;
  border-bottom:1px solid rgba(255,255,255,.14) !important;
}
body:not(.login-page) .sidebar.collapsed .brand{
  flex:0 0 auto !important;
  max-width:100% !important;
  justify-content:center !important;
  overflow:visible !important;
}
body:not(.login-page) .sidebar.collapsed .brand-logo,
body:not(.login-page) .sidebar.collapsed .brandmark{
  flex-basis:38px !important;
  width:38px !important;
  height:38px !important;
  min-width:38px !important;
  max-width:38px !important;
}
body:not(.login-page) .sidebar.collapsed .brand-copy,
body:not(.login-page) .sidebar.collapsed .nav-group summary,
body:not(.login-page) .sidebar.collapsed .nav-label{
  display:none !important;
}
body:not(.login-page) .sidebar.collapsed .brand-actions{
  width:100% !important;
  min-width:0 !important;
  max-width:100% !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:8px !important;
  padding-top:2px !important;
}
body:not(.login-page) .sidebar.collapsed .brand-actions .notif-btn,
body:not(.login-page) .sidebar.collapsed .brand-actions .sidebar-desktop-toggle{
  width:38px !important;
  height:38px !important;
  min-width:38px !important;
  min-height:38px !important;
  margin:0 auto !important;
  display:grid !important;
  place-items:center !important;
  border-radius:14px !important;
  background:rgba(255,255,255,.115) !important;
  border:1px solid rgba(255,255,255,.14) !important;
}
body:not(.login-page) .sidebar.collapsed .nav-wrap{padding:10px 8px 12px !important}
body:not(.login-page) .sidebar.collapsed .nav-group{
  padding:8px 0 !important;
  margin:0 0 10px !important;
  border-top:1px solid rgba(255,255,255,.095) !important;
  border-bottom:1px solid rgba(255,255,255,.055) !important;
  border-left:0 !important;
  border-right:0 !important;
  border-radius:0 !important;
  background:rgba(255,255,255,.026) !important;
}
body:not(.login-page) .sidebar.collapsed a[data-nav-link]{
  align-items:center !important;
  justify-content:center !important;
  gap:0 !important;
  min-height:44px !important;
  padding:6px 0 !important;
  margin:0 0 8px !important;
  background:transparent !important;
}
body:not(.login-page) .sidebar.collapsed a[data-nav-link].current .nav-icon{
  background:linear-gradient(135deg,rgba(46,160,214,.34),rgba(24,118,188,.42)) !important;
  box-shadow:0 8px 18px rgba(0,0,0,.16),inset 0 0 0 1px rgba(255,255,255,.12) !important;
}
body:not(.login-page) .sidebar.collapsed .nav-icon{
  display:grid !important;
  place-items:center !important;
  flex:0 0 36px !important;
  width:36px !important;
  height:36px !important;
  min-width:36px !important;
  margin:0 auto !important;
  font-size:16px !important;
  border-radius:14px !important;
  background:rgba(255,255,255,.055) !important;
  border:1px solid rgba(255,255,255,.075) !important;
}
body:not(.login-page) .sidebar.collapsed a[data-nav-link][data-has-icon="0"]::before{
  content:"•" !important;
  display:grid !important;
  place-items:center !important;
  flex:0 0 36px !important;
  width:36px !important;
  height:36px !important;
  min-width:36px !important;
  margin:0 auto !important;
  border-radius:14px !important;
  color:rgba(255,255,255,.82) !important;
  background:rgba(255,255,255,.055) !important;
  border:1px solid rgba(255,255,255,.075) !important;
}
body:not(.login-page) .sidebar.collapsed > .sidebar-foot{
  justify-content:center !important;
  padding:12px 8px !important;
  gap:0 !important;
  background:rgba(0,0,0,.18) !important;
  border-top:1px solid rgba(255,255,255,.12) !important;
  overflow:visible !important;
}
body:not(.login-page) .sidebar.collapsed > .sidebar-foot .logout-btn{display:none !important}
body:not(.login-page) .sidebar.collapsed > .sidebar-foot .user-pill.clickable-pill{
  display:grid !important;
  place-items:center !important;
  flex:0 0 40px !important;
  width:40px !important;
  min-width:40px !important;
  max-width:40px !important;
  height:40px !important;
  min-height:40px !important;
  padding:0 !important;
  margin:0 auto !important;
  border-radius:15px !important;
  font-size:0 !important;
  overflow:hidden !important;
  background:rgba(255,255,255,.13) !important;
  border:1px solid rgba(255,255,255,.14) !important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.035) !important;
}
body:not(.login-page) .sidebar.collapsed > .sidebar-foot .user-pill.clickable-pill::before{
  content:"👤" !important;
  display:grid !important;
  place-items:center !important;
  width:100% !important;
  height:100% !important;
  font-size:16px !important;
  line-height:1 !important;
}
body.page-locations .location-list-stack,
body.page-locations .location-grid-cards{
  content-visibility:auto;
  contain-intrinsic-size:900px;
  overflow-anchor:none;
}
body.page-locations .location-card{
  content-visibility:auto;
  contain-intrinsic-size:260px;
  contain:layout paint;
  overflow-anchor:none;
}
@media (max-width:980px){
  html,body:not(.login-page){height:auto !important;overflow-x:hidden !important;overflow-y:auto !important}
  body:not(.login-page) .app-shell{display:block !important;height:auto !important;min-height:100dvh !important;overflow:visible !important}
  body:not(.login-page) .main{display:block !important;width:100% !important;max-width:100% !important;height:auto !important;min-height:100dvh !important;overflow:visible !important;padding:12px 14px calc(var(--dt-mobile-nav-h,72px) + 24px + env(safe-area-inset-bottom,0px)) !important}
  body:not(.login-page) .app-shell > .sidebar{
    --dt-mobile-sidebar-w:min(86vw,320px);
    position:fixed !important;
    inset:0 auto 0 0 !important;
    width:var(--dt-mobile-sidebar-w) !important;
    min-width:var(--dt-mobile-sidebar-w) !important;
    max-width:var(--dt-mobile-sidebar-w) !important;
    height:100dvh !important;
    min-height:100dvh !important;
    max-height:100dvh !important;
    flex:0 0 auto !important;
    transform:translateX(-112%) !important;
    opacity:1 !important;
    visibility:visible !important;
    z-index:10030 !important;
    transition:transform .22s ease !important;
  }
  body:not(.login-page) .sidebar.open,
  body.sidebar-open:not(.login-page) .sidebar,
  body.dt-sidebar-mobile-open:not(.login-page) .sidebar,
  body:not(.login-page) .sidebar.open.collapsed{transform:translateX(0) !important}
  body.dt-sidebar-mobile-open:not(.login-page)::before,
  body.sidebar-open:not(.login-page)::before{content:"";position:fixed;inset:0;background:rgba(15,23,42,.36);z-index:10010}
  body:not(.login-page) .sidebar .brand-row,
  body:not(.login-page) .sidebar.collapsed .brand-row{min-height:72px !important;padding:16px 10px 12px !important;flex-direction:row !important;align-items:center !important;justify-content:space-between !important;gap:10px !important}
  body:not(.login-page) .sidebar .brand,
  body:not(.login-page) .sidebar.collapsed .brand{flex:1 1 auto !important;max-width:calc(100% - 84px) !important;justify-content:flex-start !important;overflow:hidden !important}
  body:not(.login-page) .sidebar .brand-logo,
  body:not(.login-page) .sidebar.collapsed .brand-logo,
  body:not(.login-page) .sidebar .brandmark,
  body:not(.login-page) .sidebar.collapsed .brandmark{flex-basis:42px !important;width:42px !important;height:42px !important;min-width:42px !important;max-width:42px !important}
  body:not(.login-page) .sidebar .brand-line--primary{font-size:15px !important}
  body:not(.login-page) .sidebar .brand-copy,
  body:not(.login-page) .sidebar.collapsed .brand-copy{display:flex !important}
  body:not(.login-page) .sidebar .brand-actions,
  body:not(.login-page) .sidebar.collapsed .brand-actions{width:74px !important;min-width:74px !important;max-width:74px !important;justify-content:flex-end !important;gap:6px !important}
  body:not(.login-page) .sidebar .brand-actions .notif-btn,
  body:not(.login-page) .sidebar.collapsed .brand-actions .notif-btn,
  body:not(.login-page) .sidebar .brand-actions .sidebar-desktop-toggle,
  body:not(.login-page) .sidebar.collapsed .brand-actions .sidebar-desktop-toggle{display:grid !important}
  body:not(.login-page) .sidebar.collapsed{width:var(--dt-mobile-sidebar-w) !important;min-width:var(--dt-mobile-sidebar-w) !important;max-width:var(--dt-mobile-sidebar-w) !important}
  body:not(.login-page) .sidebar.collapsed .nav-group summary,
  body:not(.login-page) .sidebar.collapsed .nav-label{display:flex !important}
  body:not(.login-page) .sidebar.collapsed a[data-nav-link]{justify-content:flex-start !important;gap:10px !important;padding:9px 10px !important;background:transparent !important}
  body:not(.login-page) .sidebar.collapsed .nav-icon{flex:0 0 26px !important;width:26px !important;height:26px !important;min-width:26px !important;margin:0 !important}
  body:not(.login-page) .sidebar > .sidebar-foot,
  body:not(.login-page) .sidebar.collapsed > .sidebar-foot{justify-content:space-between !important;padding:10px 14px !important;background:rgba(0,0,0,.18) !important;border-top:1px solid rgba(255,255,255,.12) !important;gap:8px !important}
  body:not(.login-page) .sidebar > .sidebar-foot .logout-btn,
  body:not(.login-page) .sidebar.collapsed > .sidebar-foot .logout-btn{display:grid !important}
  body:not(.login-page) .sidebar.collapsed > .sidebar-foot .user-pill.clickable-pill{display:flex !important;place-items:normal !important;flex:1 1 auto !important;width:auto !important;max-width:none !important;height:32px !important;font-size:12px !important;justify-content:center !important;text-align:center !important;padding:0 10px !important}
  body:not(.login-page) .sidebar.collapsed > .sidebar-foot .user-pill.clickable-pill::before{content:none !important}
  body:not(.login-page) .sidebar.collapsed a[data-nav-link][data-has-icon="0"]::before{content:none !important;display:none !important}
}

@media (max-width:980px){
  html.dt-sidebar-precollapsed body:not(.login-page) :where(.sidebar),
  body:not(.login-page) :where(.sidebar.collapsed){
    width:var(--dt-mobile-sidebar-w,min(86vw,326px)) !important;
    min-width:var(--dt-mobile-sidebar-w,min(86vw,326px)) !important;
    max-width:var(--dt-mobile-sidebar-w,min(86vw,326px)) !important;
  }
  body:not(.login-page) :where(.sidebar.collapsed .brand-copy,.sidebar.collapsed .nav-group summary,.sidebar.collapsed .nav-label),
  html.dt-sidebar-precollapsed body:not(.login-page) :where(.sidebar .brand-copy,.sidebar .nav-group summary,.sidebar .nav-label){
    display:flex !important;
  }
}

body.page-request-inbox .request-inbox-list-panel,
body.page-tickets .tickets-list-panel,
body.page-my-requests .myrq-list-panel{overflow:hidden;background:var(--card,#fff);border:1px solid var(--line,#e5e7eb);border-radius:20px;box-shadow:var(--shadow,0 16px 40px rgba(15,23,42,.08));padding:0;max-width:100%;box-sizing:border-box}
body.page-request-inbox .request-inbox-list-panel .compact-table-head,
body.page-tickets .tickets-list-panel .compact-table-head,
body.page-my-requests .myrq-list-panel .compact-table-head{border-radius:0;padding:12px 14px 10px;background:#fff;border-bottom:1px solid var(--line,#e5e7eb)}
body.page-request-inbox .request-table-wrap,
body.page-tickets .tickets-list-panel .table-wrap,
body.page-my-requests .myrq-list-panel .table-wrap{border-radius:0;max-width:100%;overflow:auto;box-sizing:border-box}
body.page-request-inbox .request-inbox-list-panel .request-pagination,
body.page-tickets .tickets-list-panel .request-pagination,
body.page-my-requests .myrq-list-panel .request-pagination{margin:12px 14px 14px;width:auto}
body.page-request-inbox .request-mobile-list,
body.page-tickets .tickets-mobile-cards,
body.page-my-requests .myrq-mobile-cards{box-sizing:border-box;max-width:100%}
@media (max-width:980px){
  body.page-request-inbox .request-inbox-list-panel,
  body.page-tickets .tickets-list-panel,
  body.page-my-requests .myrq-list-panel{background:transparent;border:0;box-shadow:none;border-radius:0;padding:0;overflow:visible}
  body.page-request-inbox .request-inbox-list-panel .compact-table-head,
  body.page-tickets .tickets-list-panel .compact-table-head,
  body.page-my-requests .myrq-list-panel .compact-table-head{background:#fff;border:1px solid var(--line,#e5e7eb);border-radius:16px;padding:10px 11px;margin-bottom:8px;box-shadow:0 10px 24px rgba(15,23,42,.06)}
  body.page-request-inbox .request-inbox-list-panel .request-pagination,
  body.page-tickets .tickets-list-panel .request-pagination,
  body.page-my-requests .myrq-list-panel .request-pagination{margin:10px 0 calc(96px + env(safe-area-inset-bottom,0px));overflow-x:auto}
}

body.page-vendors .vendors-page-head,
body.page-contractors .contractors-page-head,
body.page-parts .parts-page-head{border-radius:22px;background:linear-gradient(180deg,#ffffff,#f8fafc)}
body.page-vendors .vendor-table,
body.page-parts .parts-table{width:100%}
body.page-vendors .vendor-table td,
body.page-parts .parts-table td{vertical-align:middle}
body.page-vendors .vendor-list-panel,
body.page-contractors .contractors-list-panel,
body.page-parts .parts-list-panel{overflow:hidden;padding:0}
body.page-vendors .vendor-list-panel .panel-head,
body.page-contractors .contractors-list-panel .panel-head,
body.page-parts .parts-list-panel .panel-head{padding:12px 14px 10px;border-bottom:1px solid var(--line,#e5e7eb)}
body.page-vendors .vendor-list-panel .request-table-wrap,
body.page-parts .parts-list-panel .request-table-wrap{border-radius:0;overflow:auto;max-width:100%}
.vendor-modal-card{width:min(760px,calc(100vw - 24px));max-height:92dvh;overflow:hidden;display:flex;flex-direction:column}
.vendor-form{display:flex;flex-direction:column;min-height:0}.vendor-form .modal-body{overflow:auto}.vendor-form-grid{gap:12px}.vendor-form-grid label{min-width:0}.vendor-form-grid input,.vendor-form-grid textarea{width:100%;box-sizing:border-box}.vendor-email-modal-card{max-width:560px}.vendor-email-summary{border:1px solid rgba(15,23,42,.08);background:#f8fafc;border-radius:16px;padding:14px 16px;display:flex;flex-direction:column;gap:3px}.vendor-email-summary span{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;font-weight:800;color:#64748b}.vendor-email-summary strong{font-size:1rem;color:#0f172a}.vendor-email-summary small{color:#64748b}.vendor-template-preview{border:1px solid rgba(37,99,235,.14);background:linear-gradient(180deg,#eff6ff,#ffffff);border-radius:16px;padding:14px 16px}.vendor-template-preview h4{margin:4px 0 6px;font-size:1rem;color:#0f172a}.vendor-template-preview p{margin:0;color:#64748b;font-size:.85rem;line-height:1.5}.vendor-table td:last-child{white-space:nowrap}

.system-tabs{display:flex;gap:6px;flex-wrap:wrap;border-bottom:1px solid var(--line);margin-bottom:0;}
.system-tabs .pt-tab{padding:9px 16px;border-radius:12px 12px 0 0;font-size:13px;font-weight:800;color:var(--muted);text-decoration:none;border:1px solid transparent;border-bottom:none;}
.system-tabs .pt-tab.active{background:#fff;color:var(--acc);border-color:var(--line);border-bottom:2px solid #fff;margin-bottom:-1px;}
.soft-panel{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;}
.item-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid #eef2f7;}
.item-row:last-child{border-bottom:0;}
.sysdev-modal-backdrop{position:fixed;inset:0;background:rgba(15,23,42,.44);z-index:1200;display:none;align-items:center;justify-content:center;padding:18px;}
.sysdev-modal-backdrop.is-visible{display:flex;}
.sysdev-modal-card{width:min(760px,96vw);max-height:92vh;overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:0 28px 90px rgba(15,23,42,.28);display:flex;flex-direction:column;}
.sysdev-modal-body{padding:16px;overflow:auto;}
.sysdev-edit-form{margin:0;overflow:auto;}
.sysdev-checkline{display:flex;align-items:center;gap:8px;min-height:42px;}
.sysdev-role-lock{display:flex;align-items:center;gap:10px;flex-wrap:wrap;border-top:1px solid var(--line);margin-top:14px;padding-top:14px;}
.admin-module-note.compact{margin:0 0 14px 0;}
.sysdev-sql-preview{white-space:pre-wrap;background:#0f172a;color:#e5e7eb;border-radius:14px;padding:14px;max-height:260px;overflow:auto;font-size:12px;}
.sysdev-detail-grid{margin:12px 0;}
.sysdev-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end;}

.sysdev-security-grid{display:grid;grid-template-columns:repeat(2,minmax(220px,1fr));gap:12px;align-items:stretch;}
.sysdev-security-field{display:flex;flex-direction:column;gap:7px;background:#f8fafc;border:1px solid var(--line);border-radius:14px;padding:12px 14px;min-width:0;}
.sysdev-security-field span{font-size:12px;font-weight:800;color:#475569;letter-spacing:.02em;}
.sysdev-security-field input{width:100%;min-height:42px;box-sizing:border-box;}
.sysdev-security-chips{display:grid;grid-template-columns:repeat(2,minmax(220px,1fr));gap:10px;align-items:stretch;}
.sysdev-security-chips .check-card{margin:0;min-height:74px;background:#f8fafc;border:1px solid var(--line);border-radius:14px;padding:12px;display:flex;align-items:flex-start;gap:10px;}
.sysdev-security-chips .check-card span{display:flex;flex-direction:column;gap:3px;line-height:1.25;}
.sysdev-confirm-actions{display:flex;gap:8px;justify-content:flex-end;align-items:center;flex-wrap:wrap;margin-top:14px;}
@media(max-width:760px){.sysdev-security-grid,.sysdev-security-chips{grid-template-columns:1fr;}.sysdev-confirm-actions{justify-content:flex-start;}}
@media(max-width:700px){.sysdev-modal-card{width:100%;max-height:95vh}.sysdev-actions{justify-content:flex-start}}

.an-page{display:flex;flex-direction:column;gap:20px;}

.an-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;}
.an-kpi{background:#fff;border:1px solid var(--line);border-radius:20px;padding:20px 22px;display:flex;flex-direction:column;gap:6px;text-decoration:none;color:inherit;transition:.13s background;}
.an-kpi:hover{background:#f8fafc;}
.an-kpi .kpi-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);}
.an-kpi .kpi-val{font-size:2.4rem;font-weight:800;line-height:1;color:var(--text);}
.an-kpi .kpi-hint{font-size:11px;color:var(--muted);margin-top:2px;}
.an-kpi.kpi-requests .kpi-val{color:#2563eb;}
.an-kpi.kpi-wo .kpi-val{color:#0891b2;}
.an-kpi.kpi-open .kpi-val{color:#d97706;}
.an-kpi.kpi-closed .kpi-val{color:#16a34a;}

.an-charts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:stretch;}
.an-chart{background:#fff;border:1px solid var(--line);border-radius:20px;padding:18px 20px;display:flex;flex-direction:column;gap:0;}
.an-chart-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;flex-shrink:0;}
.an-chart-title{font-size:14px;font-weight:800;color:var(--text);}
.an-chart-hint{font-size:11px;color:var(--muted);}
.an-bars{display:flex;flex-direction:column;gap:9px;flex:1;justify-content:space-evenly;}

.an-bar{display:grid;grid-template-columns:140px 1fr 38px;gap:10px;align-items:center;background:none;border:none;padding:3px 0;cursor:pointer;text-align:left;width:100%;}
.an-bar:hover .an-bar-fill{filter:brightness(.9);}
.an-bar-label{font-size:12px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:left;color:var(--text);}
.an-bar-track{height:10px;background:#f1f5f9;border-radius:999px;overflow:hidden;min-width:0;}
.an-bar-fill{height:100%;border-radius:999px;transition:width .35s ease;}
.an-bar-val{font-size:12px;font-weight:700;color:var(--muted);text-align:right;}
.fill-req{background:linear-gradient(90deg,#3b82f6,#60a5fa);}
.fill-wo{background:linear-gradient(90deg,#06b6d4,#67e8f9);}
.fill-pri{background:linear-gradient(90deg,#f59e0b,#fcd34d);}
.fill-ppl{background:linear-gradient(90deg,#8b5cf6,#c4b5fd);}
.fill-loc{background:linear-gradient(90deg,#10b981,#6ee7b7);}

.an-chart-full{grid-column:1/-1;}
.an-chart-full .an-bar{grid-template-columns:minmax(180px,280px) 1fr 42px;}

.an-empty{padding:24px;text-align:center;color:var(--muted);font-size:13px;}

@media(max-width:980px){
  .an-kpis{grid-template-columns:repeat(2,minmax(0,1fr));}
  .an-charts{grid-template-columns:1fr;}
  .an-chart-full{grid-column:auto;}
  .an-bar{grid-template-columns:110px 1fr 32px;}
}

.assets-page{display:flex;flex-direction:column;gap:18px;}
.assets-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;}
.assets-stat{background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px 18px;display:flex;flex-direction:column;gap:4px;}
.assets-stat .as-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);}
.assets-stat .as-val{font-size:2rem;font-weight:800;color:var(--text);line-height:1.1;}
.assets-stat.warn .as-val{color:#b45309;}
.assets-stat.danger .as-val{color:#991b1b;}

.assets-filter{display:flex;gap:10px;flex-wrap:wrap;align-items:center;}
.assets-filter input,.assets-filter select{flex:1 1 160px;padding:8px 12px;border-radius:10px;border:1px solid var(--line);font:inherit;font-size:13px;}

.plan-list{display:flex;flex-direction:column;gap:10px;}
.plan-row{display:grid;grid-template-columns:1fr auto;gap:16px;align-items:center;padding:14px 16px;border:1px solid var(--line);border-radius:16px;background:#fff;transition:.12s background;}
.plan-row:hover{background:#f8fafc;}
.plan-row.is-overdue{border-color:#fca5a5;background:#fff5f5;}
.plan-row.is-soon{border-color:#fcd34d;background:#fffbeb;}
.plan-title{font-size:14px;font-weight:700;margin-bottom:3px;}
.plan-meta{font-size:12px;color:var(--muted);display:flex;flex-wrap:wrap;gap:8px;margin-top:4px;}
.plan-meta span{display:inline-flex;align-items:center;gap:3px;}
.plan-actions{display:flex;gap:8px;flex-shrink:0;align-items:center;}
.progress-bar{height:6px;background:#e2e8f0;border-radius:999px;overflow:hidden;margin-top:6px;width:120px;}
.progress-fill{height:100%;background:var(--acc);border-radius:999px;}
@media(max-width:700px){
  .assets-stats{grid-template-columns:1fr 1fr;}
  .plan-row{grid-template-columns:1fr;}
  .plan-actions{flex-direction:row;}
}

.contractors-panel-body{padding:1rem 1rem 1.15rem}.contractors-hero{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:1rem;margin-bottom:1.2rem}
.contractors-hero-text .eyebrow{font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--clr-muted);margin-bottom:.25rem}
.contractors-hero-text h2{font-size:1.5rem;font-weight:700;margin:0 0 .25rem}
.contractors-hero-text p{color:var(--clr-muted);font-size:.85rem;margin:0}
.contractors-stats{display:flex;gap:.75rem;flex-wrap:wrap;margin-bottom:1.5rem}
.contractor-stat{background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:.75rem;padding:.6rem 1.1rem;display:flex;flex-direction:column;min-width:80px}
.contractor-stat span:first-child{font-size:1.5rem;font-weight:700;line-height:1.1}
.contractor-stat span:last-child{font-size:.72rem;color:var(--clr-muted);margin-top:.1rem}
.contractor-search-bar{margin-bottom:1.25rem}
.contractor-search-bar input{width:100%;max-width:360px;padding:.5rem .9rem;border:1px solid var(--clr-border);border-radius:.6rem;background:var(--clr-surface);font-size:.875rem;color:var(--clr-text)}
.contractor-search-bar input:focus{outline:none;border-color:var(--clr-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--clr-primary) 15%,transparent)}
.contractor-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem}
.contractor-card{background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:1rem;overflow:hidden;display:flex;flex-direction:column;transition:box-shadow .15s,border-color .15s}
.contractor-card:hover{box-shadow:0 4px 18px rgba(0,0,0,.09);border-color:var(--clr-primary)}
.contractor-card.is-inactive{opacity:.6}
.cc-head{display:flex;align-items:center;gap:.85rem;padding:1rem 1rem .75rem}
.cc-avatar{width:46px;height:46px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.95rem;font-weight:700;color:#fff;flex-shrink:0;letter-spacing:.02em}
.cc-name-block{flex:1;min-width:0}
.cc-name{font-size:.975rem;font-weight:700;margin:0 0 .2rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cc-category{font-size:.72rem;color:var(--clr-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cc-body{padding:.1rem 1rem .75rem;display:flex;flex-direction:column;gap:.3rem;flex:1}
.cc-row{display:flex;gap:.45rem;align-items:baseline;font-size:.82rem;line-height:1.4}
.cc-row-icon{width:18px;text-align:center;flex-shrink:0;font-size:.78rem;opacity:.7}
.cc-row-val{word-break:break-word;color:var(--clr-text)}
.cc-row-val a{color:var(--clr-primary);text-decoration:none}
.cc-row-val a:hover{text-decoration:underline}
.cc-muted{color:var(--clr-muted) !important}
.ins-ok{color:#16a34a}
.ins-warning{color:#d97706;font-weight:600}
.ins-expired{color:#dc2626;font-weight:700}
.cc-notes{font-size:.78rem;color:var(--clr-muted);border-top:1px solid var(--clr-border);margin:0 1rem;padding:.55rem 0;line-height:1.45;word-break:break-word}
.cc-footer{padding:.65rem 1rem;border-top:1px solid var(--clr-border);display:flex;gap:.5rem;align-items:center}
.contractor-empty{grid-column:1/-1;padding:3.5rem 2rem;text-align:center;color:var(--clr-muted)}
.contractor-empty p{font-size:.9rem;margin:.5rem 0 0}

.cc-modal-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:10500;display:flex;align-items:center;justify-content:center;padding:1rem;opacity:0;pointer-events:none;transition:opacity .18s}
.cc-modal-backdrop.is-open{opacity:1;pointer-events:all}
.cc-modal{background:var(--clr-surface);border-radius:1rem;width:100%;max-width:600px;max-height:90dvh;overflow-y:auto;box-shadow:0 20px 60px rgba(0,0,0,.25);transform:translateY(18px) scale(.97);transition:transform .18s}
.cc-modal-backdrop.is-open .cc-modal{transform:none}
.cc-modal-head{display:flex;align-items:flex-start;justify-content:space-between;padding:1.2rem 1.4rem .8rem;border-bottom:1px solid var(--clr-border)}
.cc-modal-head h3{font-size:1rem;font-weight:700;margin:0}
.cc-modal-head .eyebrow{font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--clr-muted);margin-bottom:.15rem}
.cc-modal-close{background:none;border:none;cursor:pointer;font-size:1.1rem;color:var(--clr-muted);padding:.2rem .4rem;border-radius:.3rem;transition:background .12s}
.cc-modal-close:hover{background:var(--clr-border)}
.cc-modal-body{padding:1.2rem 1.4rem}
.cc-edit-grid{display:grid;grid-template-columns:1fr 1fr;gap:.65rem}
.cc-edit-grid label{display:flex;flex-direction:column;gap:.25rem;font-size:.78rem;font-weight:600;color:var(--clr-muted)}
.contractor-form-grid label,.cc-edit-grid label{min-width:0}.contractor-form-grid label input,.contractor-form-grid label textarea,.cc-edit-grid label input,.cc-edit-grid label textarea{width:100%;box-sizing:border-box;display:block}.cc-edit-grid label input,.cc-edit-grid label textarea{font-size:.875rem;padding:.42rem .65rem;border:1px solid var(--clr-border);border-radius:.45rem;background:var(--clr-bg,#f4f6f8);color:var(--clr-text);transition:border-color .15s;font-family:inherit}
.cc-edit-grid label input:focus,.cc-edit-grid label textarea:focus{outline:none;border-color:var(--clr-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--clr-primary) 15%,transparent);background:var(--clr-surface)}
.cc-edit-check{flex-direction:row !important;align-items:center;gap:.4rem;font-size:.85rem !important;cursor:pointer;align-self:end;min-height:38px}
.cc-edit-check input{width:1rem;height:1rem}
.cc-edit-full{grid-column:1/-1}
.cc-modal-foot{display:flex;gap:.5rem;justify-content:flex-end;align-items:center;padding:.9rem 1.4rem;border-top:1px solid var(--clr-border)}
.cc-modal-toast{position:fixed;bottom:1.5rem;right:1.5rem;z-index:10600;display:flex;flex-direction:column;gap:.5rem}
.cc-toast{padding:.65rem 1.1rem;border-radius:.6rem;font-size:.85rem;font-weight:600;box-shadow:0 4px 16px rgba(0,0,0,.15);animation:ccToastIn .25s ease;max-width:320px}
.cc-toast.ok{background:#16a34a;color:#fff}
.cc-toast.err{background:#dc2626;color:#fff}
@keyframes ccToastIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@media(max-width:600px){.cc-edit-grid{grid-template-columns:1fr}.cc-edit-full{grid-column:1}.cc-modal{max-height:100dvh;border-radius:.75rem}}

body.page-create-work-order,
body.page-create-work-order .main{
  background:linear-gradient(180deg,#f4f7fa 0%,#edf3f8 100%) !important;
}
body.page-create-work-order .main{
  overflow-x:hidden !important;
  scrollbar-gutter:stable;
  scrollbar-color:#cbd5e1 #edf3f8;
}
body.page-create-work-order .main::-webkit-scrollbar-track{background:#edf3f8}
body.page-create-work-order .main::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:999px;border:3px solid #edf3f8}
body.page-create-work-order .wo-create-page{
  width:100%;
  max-width:1280px;
  margin:0 auto;
  padding-bottom:32px;
  display:flex;
  flex-direction:column;
  gap:0;
  box-sizing:border-box;
}
body.page-create-work-order .wo-create-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:12px;
  margin-bottom:20px;
}
body.page-create-work-order .wo-create-header-left .eyebrow{
  font-size:.7rem;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--clr-muted);
}
body.page-create-work-order .wo-create-header-left h2{
  font-size:1.5rem;
  font-weight:700;
  margin:.2rem 0 0;
  letter-spacing:-.02em;
}
body.page-create-work-order .wo-layout{
  display:grid;
  grid-template-columns:minmax(460px,.95fr) minmax(520px,1.25fr);
  gap:16px;
  align-items:start;
  min-width:0;
  max-width:100%;
  box-sizing:border-box;
}
body.page-create-work-order .wo-panel{
  display:block !important;
  min-width:0;
  max-width:100%;
  overflow:hidden;
  box-sizing:border-box;
  background:var(--clr-surface);
  border:1px solid var(--clr-border);
  border-radius:1.25rem;
}
body.page-create-work-order .wo-section{
  padding:18px 18px 16px;
  display:flex;
  flex-direction:column;
  gap:12px;
  min-width:0;
  max-width:100%;
  box-sizing:border-box;
}
body.page-create-work-order .wo-section + .wo-section{border-top:1px solid var(--clr-border)}
body.page-create-work-order .wo-section-label{
  font-size:.68rem;
  font-weight:800;
  letter-spacing:.07em;
  text-transform:uppercase;
  color:var(--clr-muted);
  margin-bottom:2px;
}
body.page-create-work-order .wo-row{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  min-width:0;
  max-width:100%;
  box-sizing:border-box;
}
body.page-create-work-order .wo-row--location{
  grid-template-columns:minmax(135px,170px) minmax(0,1fr);
  align-items:end;
  width:100%;
  max-width:100%;
  overflow:hidden;
}
body.page-create-work-order .wo-field,
body.page-create-work-order .wo-field label,
body.page-create-work-order .wo-field input,
body.page-create-work-order .wo-field select,
body.page-create-work-order .wo-field textarea{
  min-width:0;
  max-width:100%;
  box-sizing:border-box;
}
body.page-create-work-order .wo-field label{display:block}
body.page-create-work-order .wo-field input,
body.page-create-work-order .wo-field select,
body.page-create-work-order .wo-field textarea{display:block;width:100%}
body.page-create-work-order .wo-section--location .wo-field select{min-height:43px}
body.page-create-work-order .wo-location-hint,
body.page-create-work-order .wo-meta{display:none !important}
body.page-create-work-order .wo-listing-summary{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  margin-top:10px;
  min-width:0;
}
body.page-create-work-order .wo-listing-summary[hidden],
body.page-create-work-order .wo-listing-summary.is-hidden,
body.page-create-work-order .wo-section--location.is-general .wo-listing-summary,
body.page-create-work-order.wo-create-general .wo-listing-summary{display:none !important}
body.page-create-work-order .wo-listing-chip{
  border:1px solid var(--clr-border);
  background:color-mix(in srgb,var(--clr-primary) 12%,#fff);
  color:var(--clr-text);
  border-radius:999px;
  padding:9px 12px;
  font-size:.82rem;
  font-weight:800;
  cursor:pointer;
  max-width:100%;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
body.page-create-work-order .wo-listing-chip.active{
  border-color:color-mix(in srgb,var(--clr-primary) 45%,var(--clr-border));
  box-shadow:0 0 0 3px color-mix(in srgb,var(--clr-primary) 10%,transparent);
}
body.page-create-work-order .wo-listing-summary-note{font-size:.72rem;color:var(--clr-muted)}
body.page-create-work-order #dueAtInput{cursor:pointer}
body.page-create-work-order.wo-listing-modal-open{overflow:hidden !important}
body.page-create-work-order .wo-listing-modal{
  position:fixed;
  inset:0;
  z-index:12000;
  display:none;
  align-items:center;
  justify-content:center;
  width:100%;
  height:100dvh;
  min-height:100dvh;
  padding:18px;
  overflow-y:auto;
  overflow-x:hidden;
  box-sizing:border-box;
  background:rgba(15,23,42,.46);
  backdrop-filter:blur(4px);
}
body.page-create-work-order .wo-listing-modal.is-visible{display:flex}
body.page-create-work-order .wo-listing-modal[hidden],
body.page-create-work-order .wo-listing-modal:not(.is-visible){display:none !important}
body.page-create-work-order .wo-section--location #listingFieldBox{display:none !important}
body.page-create-work-order .wo-listing-modal #listingFieldBox{display:block !important}
body.page-create-work-order .wo-listing-modal-card{
  width:min(720px,100%);
  max-width:720px;
  max-height:calc(100dvh - 42px);
  margin:auto;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  box-sizing:border-box;
  border-radius:22px;
  background:#fff;
}
body.page-create-work-order .wo-listing-modal-card .modal-head{
  flex:0 0 auto;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  padding:16px 18px;
  margin:0;
  border-bottom:1px solid var(--clr-border);
  background:#fff;
  box-sizing:border-box;
}
body.page-create-work-order .wo-listing-modal-body{
  flex:1 1 auto;
  display:flex;
  flex-direction:column;
  gap:14px;
  overflow:auto;
  padding:16px 18px 18px;
  box-sizing:border-box;
}
body.page-create-work-order .wo-listing-picker{
  padding:12px;
  border:1px solid var(--clr-border);
  border-radius:14px;
  background:var(--clr-bg,#f8fafc);
}
body.page-create-work-order .wo-listing-modal-title{display:flex;flex-direction:column;gap:2px;min-width:0}
body.page-create-work-order .wo-listing-modal-title strong,
body.page-create-work-order .wo-listing-modal-title span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
body.page-create-work-order .wo-listing-modal-title strong{font-size:1rem;line-height:1.25}
body.page-create-work-order .wo-listing-modal-title span{font-size:.78rem;color:var(--clr-muted)}
body.page-create-work-order .wo-listing-modal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
body.page-create-work-order .wo-listing-modal-item{
  min-width:0;
  box-sizing:border-box;
  padding:10px 12px;
  border:1px solid var(--clr-border);
  border-radius:.75rem;
  background:var(--clr-bg,#f4f6f8);
}
body.page-create-work-order .wo-listing-modal-label{
  margin-bottom:4px;
  font-size:.64rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.06em;
  color:var(--clr-muted);
}
body.page-create-work-order .wo-listing-modal-value{font-size:.9rem;font-weight:700;color:var(--clr-text);overflow-wrap:anywhere}
body.page-create-work-order .wo-listing-modal-empty{
  padding:12px;
  border:1px dashed var(--clr-border);
  border-radius:.75rem;
  background:var(--clr-bg,#f4f6f8);
  font-size:.86rem;
  color:var(--clr-muted);
}
body.page-create-work-order .wo-right{display:flex;flex-direction:column;gap:12px;min-width:0}
body.page-create-work-order .wo-file-drop{
  border:2px dashed var(--clr-border);
  border-radius:.75rem;
  padding:1rem;
  cursor:pointer;
  transition:border-color .15s,background .15s;
  background:var(--clr-bg,#f8fafc);
}
body.page-create-work-order .wo-file-drop:hover,
body.page-create-work-order .wo-file-drop.drag-over{border-color:var(--clr-primary);background:color-mix(in srgb,var(--clr-primary) 5%,white)}
body.page-create-work-order .wo-file-drop input[type=file]{display:none}
body.page-create-work-order .wo-file-drop-text{font-size:.82rem;color:var(--clr-muted);text-align:center;pointer-events:none}
body.page-create-work-order .wo-file-drop-text strong{color:var(--clr-primary)}
body.page-create-work-order .wo-file-list{display:flex;flex-direction:column;gap:4px;margin-top:8px}
body.page-create-work-order .wo-file-item{display:flex;align-items:center;gap:8px;font-size:.8rem;background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:.4rem;padding:.3rem .6rem}
body.page-create-work-order .wo-file-item-name{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
body.page-create-work-order .wo-file-item-size{color:var(--clr-muted);flex-shrink:0}
body.page-create-work-order .wo-file-item-rm{background:none;border:0;cursor:pointer;color:var(--clr-muted);font-size:1rem;line-height:1;padding:0;flex-shrink:0}
body.page-create-work-order .wo-file-item-rm:hover{color:#dc2626}
body.page-create-work-order .wo-submit{background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:1.25rem;padding:16px 18px;display:flex;gap:10px;align-items:center}
body.page-create-work-order .wo-submit .btn{min-height:44px}
body.page-create-work-order .prio-opt-urgente{color:#dc2626}
body.page-create-work-order .prio-opt-alta{color:#d97706}
@media(max-width:980px){
  body.page-create-work-order .wo-layout{grid-template-columns:1fr}
  body.page-create-work-order .wo-right{order:-1}
  body.page-create-work-order .wo-row--location{grid-template-columns:1fr}
}
@media(max-width:600px){body.page-create-work-order .wo-row{grid-template-columns:1fr}}
@media(max-width:560px){
  body.page-create-work-order .wo-listing-modal{align-items:flex-end;padding:10px}
  body.page-create-work-order .wo-listing-modal-grid{grid-template-columns:1fr}
  body.page-create-work-order .wo-listing-modal-card{width:100%;max-width:100%;max-height:88dvh;border-radius:22px 22px 16px 16px}
}

body.page-people-teams .pt-page {
  --pt-bg: #f5f7fb;
  --pt-card: #ffffff;
  --pt-border: #dbe4f0;
  --pt-border-soft: #e8eef7;
  --pt-text: #0f172a;
  --pt-muted: #64748b;
  --pt-muted-2: #94a3b8;
  --pt-blue: #0f6fff;
  --pt-blue-dark: #0b5bd3;
  --pt-blue-soft: #eff6ff;
  --pt-green: #16a34a;
  --pt-green-soft: #ecfdf5;
  --pt-purple: #7c3aed;
  --pt-purple-soft: #f3e8ff;
  color: var(--pt-text);
  display:flex;
  flex-direction:column;
  gap:18px;
}
body.page-people-teams .pt-topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:0;}
body.page-people-teams .pt-topbar .eyebrow{color:#718096;font-size:12px;font-weight:900;letter-spacing:.1em;text-transform:uppercase;margin-bottom:2px;}
body.page-people-teams .pt-topbar h2{margin:2px 0 0;color:var(--pt-text);font-size:24px;line-height:1.15;font-weight:900;}
body.page-people-teams .pt-tabs{display:flex;gap:16px;align-items:center;flex-wrap:wrap;border-bottom:1px solid var(--pt-border);margin-bottom:0;overflow:visible;}
body.page-people-teams .pt-tab{position:relative;display:inline-flex;align-items:center;gap:8px;min-height:46px;padding:0 14px;color:#52637a;text-decoration:none;font-size:14px;font-weight:800;border-radius:12px 12px 0 0;white-space:nowrap;border:0;}
body.page-people-teams .pt-tab:hover{color:var(--pt-blue);background:rgba(15,111,255,.045);}
body.page-people-teams .pt-tab.active{color:var(--pt-blue);background:#fff;}
body.page-people-teams .pt-tab.active::after{content:"";position:absolute;left:12px;right:12px;bottom:-1px;height:3px;border-radius:999px;background:var(--pt-blue);}
body.page-people-teams .pt-tab-panel{background:linear-gradient(180deg,#fff 0%,#fbfdff 100%);border:1px solid var(--pt-border);border-radius:18px;padding:18px;box-shadow:0 18px 45px rgba(15,23,42,.065);max-width:100%;min-width:0;overflow:visible;}
body.page-people-teams .pt-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:16px!important;}
body.page-people-teams .pt-stat{min-height:88px;background:#fff;border:1px solid var(--pt-border-soft);border-radius:18px;padding:18px;box-shadow:0 10px 26px rgba(15,23,42,.045);}
body.page-people-teams .pt-stat-link{display:grid;grid-template-columns:52px 1fr auto;align-items:center;gap:16px;color:inherit;text-decoration:none;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease;}
body.page-people-teams .pt-stat-link:hover{transform:translateY(-1px);border-color:#bfdbfe;box-shadow:0 16px 34px rgba(37,99,235,.08);}
body.page-people-teams .pt-stat-icon{width:52px;height:52px;display:grid;place-items:center;border-radius:16px;font-size:22px;font-weight:900;}
body.page-people-teams .pt-stat-icon.blue{color:var(--pt-blue);background:var(--pt-blue-soft);}
body.page-people-teams .pt-stat-icon.green{color:var(--pt-green);background:var(--pt-green-soft);}
body.page-people-teams .pt-stat-icon.purple{color:var(--pt-purple);background:var(--pt-purple-soft);}
body.page-people-teams .pt-stat .s-label{color:#334155;font-size:13px;font-weight:900;letter-spacing:0;text-transform:none;margin:0;}
body.page-people-teams .pt-stat .s-val{margin-top:3px;color:var(--pt-text);font-size:30px;line-height:1;font-weight:950;}
body.page-people-teams .pt-stat .s-val small{font-size:13px;font-weight:800;}
body.page-people-teams .pt-stat .s-help{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin-top:8px;color:var(--pt-muted);font-size:12px;font-weight:700;}
body.page-people-teams .text-ok{color:var(--pt-green);}
body.page-people-teams .dot{width:4px;height:4px;border-radius:999px;background:#94a3b8;display:inline-flex;flex:0 0 auto;}
body.page-people-teams .pt-stat-arrow{color:#64748b;font-size:24px;line-height:1;}
body.page-people-teams .pt-search-row{display:grid;grid-template-columns:minmax(260px,1.7fr) repeat(3,minmax(128px,.9fr)) minmax(108px,.62fr) minmax(118px,.68fr);gap:12px;align-items:end;margin-bottom:12px;padding:12px;background:#fff;border:1px solid var(--pt-border-soft);border-radius:16px;box-shadow:0 8px 22px rgba(15,23,42,.035);max-width:100%;min-width:0;overflow:visible;}
body.page-people-teams .pt-search-field{position:relative;min-width:0;}
body.page-people-teams .pt-field-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:#64748b;font-size:18px;pointer-events:none;}
body.page-people-teams .pt-search-field input{width:100%;height:44px;border:1px solid var(--pt-border);border-radius:12px;background:#fff;padding:0 14px 0 42px;color:var(--pt-text);font-size:14px;outline:none;box-sizing:border-box;}
body.page-people-teams .pt-filter-field{display:grid;gap:4px;min-width:0;}
body.page-people-teams .pt-filter-field>span{padding-left:6px;color:var(--pt-muted);font-size:11px;font-weight:800;}
body.page-people-teams .pt-filter-field select{width:100%;height:44px;border:1px solid var(--pt-border);border-radius:12px;background:#fff;padding:0 12px;color:var(--pt-text);font-size:13px;font-weight:700;outline:none;}
body.page-people-teams .pt-search-field input:focus,body.page-people-teams .pt-filter-field select:focus{border-color:#93c5fd;box-shadow:0 0 0 4px rgba(59,130,246,.12);}
body.page-people-teams .pt-filter-btn,body.page-people-teams .pt-create-btn{height:44px;min-width:0;width:100%;white-space:nowrap;border-radius:12px;justify-content:center;}
body.page-people-teams .pt-filter-btn,body.page-people-teams .pt-create-btn{grid-column:auto;}
body.page-people-teams .pt-filter-btn{box-shadow:0 10px 22px rgba(15,111,255,.18);}
body.page-people-teams .pt-list-hint{display:inline-flex;align-items:center;gap:8px;min-height:28px;margin-bottom:8px;padding:0 10px;color:#64748b;background:#fff;border:1px solid var(--pt-border-soft);border-radius:999px;font-size:12px;font-weight:700;}
body.page-people-teams .pt-info-dot{width:16px;height:16px;display:grid;place-items:center;border-radius:999px;color:var(--pt-blue);background:var(--pt-blue-soft);font-size:11px;font-weight:900;}
body.page-people-teams .pt-user-list{display:grid;gap:8px;max-width:100%;min-width:0;}
body.page-people-teams .pt-user-row{position:relative;z-index:1;overflow:visible;display:grid;grid-template-columns:54px minmax(190px,1.15fr) minmax(150px,.75fr) minmax(200px,.85fr) minmax(128px,auto);gap:14px;align-items:center;min-height:74px;padding:12px 14px;background:#fff;border:1px solid var(--pt-border-soft);border-radius:15px;box-shadow:0 7px 18px rgba(15,23,42,.035);transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease;max-width:100%;min-width:0;}
body.page-people-teams .pt-user-row:hover{transform:translateY(-1px);border-color:#bfdbfe;box-shadow:0 14px 28px rgba(37,99,235,.075);}
body.page-people-teams .pt-avatar-wrap{position:relative;width:46px;height:46px;}
body.page-people-teams .pt-avatar{width:46px;height:46px;display:grid;place-items:center;border-radius:16px;background:linear-gradient(135deg,#2563eb 0%,#60a5fa 100%);color:#fff;font-size:15px;font-weight:950;box-shadow:inset 0 -8px 16px rgba(15,23,42,.12);}
body.page-people-teams .pt-presence{position:absolute;right:-2px;bottom:-2px;width:13px;height:13px;border:2px solid #fff;border-radius:999px;background:#94a3b8;}
body.page-people-teams .pt-presence.online{background:var(--pt-green);}
body.page-people-teams .pt-user-info{min-width:0;}
body.page-people-teams .pt-user-name{display:inline-flex;align-items:center;gap:6px;color:var(--pt-blue-dark);text-decoration:none;font-size:14px;line-height:1.2;font-weight:950;}
body.page-people-teams .pt-user-name:hover{color:var(--pt-blue);text-decoration:underline;text-underline-offset:3px;}
body.page-people-teams .pt-user-name span{font-size:18px;line-height:1;}
body.page-people-teams .pt-user-meta{margin-top:3px;color:#52637a;font-size:12px;font-weight:700;overflow-wrap:anywhere;}
body.page-people-teams .pt-user-submeta{margin-top:2px;color:#64748b;font-size:12px;}
body.page-people-teams .pt-user-tags{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin-top:0;}
body.page-people-teams .pt-user-tag{display:inline-flex;align-items:center;min-height:24px;padding:0 10px;border:1px solid #bfdbfe;border-radius:8px;background:var(--pt-blue-soft);color:var(--pt-blue-dark);font-size:12px;font-weight:900;}
body.page-people-teams .pt-user-tag.team{border-color:#bbf7d0;background:var(--pt-green-soft);color:#047857;}
body.page-people-teams .pt-access-warning{font-size:11px;font-weight:800;padding:2px 8px;border-radius:999px;background:#fff7ed;color:#c2410c;border:1px solid #fed7aa;}
body.page-people-teams .pt-activity{min-width:0;padding-left:16px;border-left:1px solid var(--pt-border-soft);}
body.page-people-teams .pt-activity-main{display:flex;align-items:center;gap:8px;color:#334155;font-size:13px;font-weight:850;}
body.page-people-teams .pt-activity.online .pt-activity-main{color:#047857;}
body.page-people-teams .pt-status-dot{width:8px;height:8px;border-radius:999px;background:var(--pt-green);box-shadow:0 0 0 4px rgba(22,163,74,.12);}
body.page-people-teams .pt-clock{color:#64748b;font-size:14px;}
body.page-people-teams .pt-activity-sub{margin-top:4px;color:var(--pt-muted);font-size:12px;font-weight:650;}
body.page-people-teams .pt-user-actions{display:inline-flex;align-items:center;justify-self:end;gap:8px;position:relative;min-width:0;flex-wrap:wrap;}
body.page-people-teams .btn.small,body.page-people-teams .pt-more-btn{height:38px;border-radius:11px;font-size:13px;font-weight:900;}
body.page-people-teams .pt-edit-action{min-width:100px;justify-content:center;color:var(--pt-blue-dark);}
body.page-people-teams .pt-more-wrap{position:relative;}
body.page-people-teams .pt-more-btn{width:38px;display:grid;place-items:center;border:1px solid var(--pt-border);background:#fff;color:#0f172a;cursor:pointer;}
body.page-people-teams .pt-more-btn:hover,body.page-people-teams .pt-edit-action:hover{border-color:#bfdbfe;background:#f8fbff;}
body.page-people-teams .pt-more-menu{position:absolute;right:0;top:calc(100% + 8px);min-width:190px;max-width:min(260px,calc(100vw - 28px));display:none;padding:8px;background:#fff;border:1px solid var(--pt-border);border-radius:14px;box-shadow:0 20px 45px rgba(15,23,42,.16);z-index:1400;}
body.page-people-teams .pt-more-menu.is-positioned{position:fixed !important;right:auto;top:auto;z-index:17050 !important;}
body.page-people-teams .pt-more-menu.is-portaled{z-index:17050 !important;pointer-events:auto;}
body.page-people-teams .pt-more-menu.is-open{display:grid;gap:2px;}
body.page-people-teams .pt-more-menu a,body.page-people-teams .pt-more-menu button{display:flex;width:100%;align-items:center;min-height:34px;padding:0 10px;border:0;border-radius:10px;background:transparent;color:#0f172a;text-align:left;text-decoration:none;font-size:13px;font-weight:750;cursor:pointer;}
body.page-people-teams .pt-more-menu a:hover,body.page-people-teams .pt-more-menu button:hover{background:#f1f5f9;}
body.page-people-teams .pt-page,body.page-people-teams .pt-tab-panel,body.page-people-teams .pt-user-list{overflow:visible;}
body.page-people-teams .pt-user-row.is-menu-open{z-index:1200;}
body.page-people-teams .pt-more-wrap{position:relative;z-index:2;}
body.page-people-teams .pt-user-row.is-menu-open .pt-more-wrap{z-index:1300;}
body.page-people-teams .pt-more-form{margin:0;padding:0;}
body.page-people-teams .pt-more-menu .pt-danger-action{color:#b91c1c;}
body.page-people-teams .pt-more-menu .pt-danger-action:hover{background:#fef2f2;}
body.page-people-teams .pt-more-menu .pt-success-action{color:#047857;}
body.page-people-teams .pt-more-menu .pt-success-action:hover{background:#ecfdf5;}
body.page-people-teams .pt-user-row.is-disabled{border-color:#fecaca;background:linear-gradient(180deg,#fff 0%,#fff7f7 100%);}
body.page-people-teams .pt-user-row.is-deactivated-feedback{box-shadow:0 0 0 3px rgba(220,38,38,.12),0 14px 28px rgba(220,38,38,.10);}
body.page-people-teams .pt-user-row.is-activated-feedback{box-shadow:0 0 0 3px rgba(22,163,74,.12),0 14px 28px rgba(22,163,74,.10);}
body.page-people-teams .pt-presence.disabled{background:#ef4444;box-shadow:0 0 0 4px rgba(239,68,68,.14);}
body.page-people-teams .pt-user-tag.danger{border-color:#fecaca;background:#fef2f2;color:#b91c1c;}
body.page-people-teams .pt-activity.disabled .pt-activity-main{color:#b91c1c;}
body.page-people-teams .pt-activity.disabled .pt-clock{color:#ef4444;}
body.page-people-teams .modal-backdrop[data-modal-backdrop="1"]{position:fixed;inset:0;z-index:15000;display:flex;align-items:center;justify-content:center;padding:16px;overflow:auto;background:rgba(15,23,42,.52);backdrop-filter:blur(6px);}
body.page-people-teams .modal-backdrop[data-modal-backdrop="1"] .modal-card,body.page-people-teams .modal-card.modal-user-editor,body.page-people-teams .modal-card.modal-user-editor-xl{position:relative;z-index:15001;width:min(980px,calc(100vw - 24px));max-width:980px;max-height:calc(100dvh - 28px);overflow:hidden;display:flex;flex-direction:column;}
body.page-people-teams .modal-user-editor .modal-actions-sticky,body.page-people-teams .modal-user-editor .modal-actions{position:sticky;bottom:0;z-index:3;background:#fff;}
body.page-people-teams .modal-user-editor .role-select-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px;overflow:visible;margin-top:10px;}
body.page-people-teams .modal-user-editor .role-select-grid .select-card{display:flex;visibility:visible;opacity:1;}
body.page-people-teams .modal-user-editor #roles,body.page-people-teams .modal-user-editor #teams,body.page-people-teams .modal-user-editor #status{scroll-margin-top:18px;}

body.page-people-teams .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;cursor:pointer;border:1px solid transparent;}
body.page-people-teams .btn.ghost{background:#fff;border-color:var(--pt-border);color:#0f172a;}
body.page-people-teams .btn.primary{min-height:44px;padding:0 18px;border:1px solid var(--pt-blue) !important;border-radius:12px;background:linear-gradient(135deg,var(--pt-blue) 0%,#155eef 100%) !important;color:#fff !important;font-weight:900;line-height:1;box-shadow:0 10px 22px rgba(15,111,255,.22);appearance:none;}
body.page-people-teams .btn.primary:hover{background:linear-gradient(135deg,var(--pt-blue-dark) 0%,#124bd5 100%) !important;border-color:var(--pt-blue-dark) !important;color:#fff !important;}
body.page-people-teams .modal-user-editor .modal-actions .btn.primary{background:#fff !important;border-color:#cbd5e1 !important;color:#0f172a !important;box-shadow:0 8px 18px rgba(15,23,42,.06);}
body.page-people-teams .modal-user-editor .modal-actions .btn.primary:hover{background:#f8fafc !important;border-color:#94a3b8 !important;color:#0f172a !important;}
body.page-people-teams .modal-user-editor .modal-actions .btn.primary:focus-visible{outline:3px solid rgba(59,130,246,.22);outline-offset:2px;}
body.page-people-teams .pt-list-footer{margin-top:14px;color:var(--pt-muted);text-align:center;font-size:12px;font-weight:700;}
body.page-people-teams .pt-role-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;}
body.page-people-teams .pt-role-card{border:1px solid var(--pt-border-soft);border-radius:16px;padding:16px;background:#fff;display:flex;flex-direction:column;gap:8px;}
body.page-people-teams .pt-role-card .role-name{font-size:15px;font-weight:800;}
body.page-people-teams .pt-role-card .role-desc{font-size:12px;color:var(--pt-muted);}
body.page-people-teams .pt-perm-chips{display:flex;flex-wrap:wrap;gap:5px;margin-top:4px;}
body.page-people-teams .pt-perm-chip{font-size:10px;font-weight:700;padding:3px 8px;border-radius:999px;background:#f1f5f9;color:var(--pt-text);border:1px solid var(--pt-border-soft);}
body.page-people-teams .pt-team-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;}
body.page-people-teams .pt-team-card{border:1px solid var(--pt-border-soft);border-radius:16px;padding:16px;background:#fff;display:flex;flex-direction:column;gap:8px;min-height:176px;}
body.page-people-teams .pt-team-card .team-name{font-size:15px;font-weight:800;}
body.page-people-teams .pt-team-card .team-desc{font-size:12px;color:var(--pt-muted);}
body.page-people-teams .pt-members-badge{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:700;background:#eff6ff;color:#1d4ed8;border-radius:999px;padding:3px 10px;border:0;cursor:pointer;}
body.page-people-teams .pt-members-badge:hover{background:#dbeafe;}
body.page-people-teams .pt-team-members-modal{display:none;position:fixed;inset:0;background:rgba(15,23,42,.42);z-index:1000;align-items:center;justify-content:center;padding:18px;}
body.page-people-teams .pt-team-members-modal.is-visible{display:flex;}
body.page-people-teams .pt-team-members-card{width:min(460px,96vw);background:#fff;border:1px solid var(--pt-border);border-radius:20px;box-shadow:0 24px 70px rgba(15,23,42,.24);padding:18px;}
body.page-people-teams .pt-team-members-list{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px;}
body.page-people-teams .pt-section-head{font-size:15px;font-weight:800;color:var(--pt-text);margin:0 0 16px;}
body.page-people-teams .pt-section-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px;}
body.page-people-teams .pt-section-row .pt-section-head{margin:0;}
body.page-people-teams .pt-perm-module{margin-bottom:20px;}
body.page-people-teams .pt-perm-module .mod-label{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.07em;color:var(--pt-muted);margin-bottom:8px;}
body.page-people-teams .pt-perm-table{width:100%;border-collapse:collapse;}
body.page-people-teams .pt-perm-table th{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--pt-muted);padding:6px 10px;border-bottom:1px solid var(--pt-border-soft);text-align:left;}
body.page-people-teams .pt-perm-table th:last-child{text-align:right;}
body.page-people-teams .pt-perm-table td{padding:8px 10px;border-bottom:1px solid #f1f5f9;font-size:13px;vertical-align:middle;}
body.page-people-teams .pt-perm-table td:last-child{text-align:right;white-space:nowrap;}
body.page-people-teams code.perm-code{background:#f1f5f9;border-radius:6px;padding:2px 8px;font-size:11px;font-family:ui-monospace,monospace;color:#475569;border:1px solid #e2e8f0;}
body.page-people-teams .pt-team-members{display:flex;flex-wrap:wrap;gap:5px;margin-top:2px;max-height:54px;overflow:hidden;}
body.page-people-teams .pt-team-card .action-row{margin-top:auto;}
body.page-people-teams .pt-member-chip{font-size:11px;font-weight:700;padding:3px 8px;border-radius:999px;background:#f8fafc;border:1px solid var(--pt-border-soft);color:var(--pt-text);}
body.page-people-teams .pt-member-chip.empty{color:#b45309;background:#fffbeb;border-color:#fde68a;}
body.page-people-teams .pt-readonly-note{background:#f8fafc;border:1px solid var(--pt-border-soft);border-radius:14px;padding:10px 12px;color:var(--pt-muted);font-size:13px;margin-bottom:14px;}
@media(max-width:1280px){body.page-people-teams .pt-search-row{grid-template-columns:repeat(3,minmax(0,1fr));}body.page-people-teams .pt-search-field{grid-column:1/-1;}body.page-people-teams .pt-filter-btn,body.page-people-teams .pt-create-btn{grid-column:auto;}}
@media(max-width:1100px){body.page-people-teams .pt-stats{grid-template-columns:1fr;}body.page-people-teams .pt-search-row{grid-template-columns:1fr 1fr;}body.page-people-teams .pt-filter-btn,body.page-people-teams .pt-create-btn{grid-column:auto;width:100%;}body.page-people-teams .pt-user-row{grid-template-columns:46px minmax(0,1fr);}body.page-people-teams .pt-user-tags,body.page-people-teams .pt-activity,body.page-people-teams .pt-user-actions{grid-column:2/-1;}body.page-people-teams .pt-activity{padding-left:0;border-left:0;}body.page-people-teams .pt-user-actions{justify-self:start;}}
@media(max-width:680px){body.page-people-teams .pt-tab-panel{padding:12px;border-radius:16px;}body.page-people-teams .pt-search-row{grid-template-columns:1fr;}body.page-people-teams .pt-filter-btn,body.page-people-teams .pt-create-btn{grid-column:auto;}body.page-people-teams .pt-stat-link{grid-template-columns:46px 1fr auto;}body.page-people-teams .pt-stat-icon{width:46px;height:46px;}body.page-people-teams .pt-list-hint{border-radius:14px;align-items:flex-start;flex-wrap:wrap;padding:8px 10px;}body.page-people-teams .pt-user-actions{width:100%;}body.page-people-teams .pt-edit-action{flex:1;}body.page-people-teams .pt-more-menu{left:0;right:auto;top:calc(100% + 8px);z-index:1400;}body.page-people-teams .modal-backdrop[data-modal-backdrop="1"]{align-items:flex-end;padding:10px;}body.page-people-teams .modal-card.modal-user-editor,body.page-people-teams .modal-card.modal-user-editor-xl{width:100%;max-width:100%;max-height:94dvh;border-radius:22px 22px 16px 16px;}}

.settings-page{max-width:900px;margin:0 auto;}
.settings-section-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:22px 24px;display:flex;flex-direction:column;gap:16px;}
.settings-section-label{display:flex;align-items:center;gap:10px;margin-bottom:2px;}
.settings-section-label .s-icon{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;font-size:17px;flex-shrink:0;}
.settings-section-label strong{font-size:.97rem;font-weight:800;}
.settings-section-label .muted{font-size:.78rem;}
.s-icon--general{background:#eff6ff;}
.s-icon--brand{background:#f0fdf4;}
.s-grid{display:grid;gap:12px;grid-template-columns:1fr 1fr;}
.s-grid .full{grid-column:1/-1;}
.s-field{display:flex;flex-direction:column;gap:5px;}
.s-field label{font-size:12px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;}
.s-field input,.s-field select{width:100%;padding:9px 11px;border-radius:11px;border:1px solid var(--line);font:inherit;background:#fff;font-size:14px;box-sizing:border-box;}
.s-field input:focus,.s-field select:focus{outline:2px solid #bfdbfe;border-color:#93c5fd;}
.s-checkrow{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:11px;cursor:pointer;background:#fafbff;}
.s-checkrow input[type=checkbox]{width:16px;height:16px;flex-shrink:0;cursor:pointer;}
.s-checkrow span{font-size:13px;font-weight:600;}
.s-divider{height:1px;background:var(--line);margin:4px 0;}
.preview-row{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.preview-box{border:1px solid var(--line);border-radius:14px;padding:14px;background:#f8fafc;}
.preview-box .preview-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:10px;}
.preview-inner{display:flex;align-items:center;gap:12px;}
.preview-inner img{height:40px;max-width:80px;object-fit:contain;border-radius:8px;background:#fff;border:1px solid var(--line);}
.settings-save-row{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding-top:4px;}
.version-badge{font-size:11px;font-weight:800;background:#f1f5f9;color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:3px 10px;}
@media(max-width:700px){.s-grid,.preview-row{grid-template-columns:1fr;}}

body.page-tickets #ticketsFilterPanel{
  max-width:100%;
  box-sizing:border-box;
}
body.page-tickets #ticketsFilterPanel .tickets-filter-grid,
body.page-tickets #ticketsFilterPanel .request-filter-grid,
body.page-tickets #ticketsFilterPanel .grid-4.compact-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:9px;
  align-items:stretch;
  width:100%;
  max-width:100%;
}
body.page-tickets #ticketsFilterPanel .field-box{
  min-width:0;
  min-height:78px;
  height:auto;
  gap:5px;
  padding:9px 10px 10px !important;
  border-radius:14px;
  font-size:11px;
  line-height:1.2;
  font-weight:800;
  letter-spacing:.01em;
  color:#475569;
  background:linear-gradient(180deg,#ffffff,#f7fafc);
  border-color:#dbe5ef;
  box-shadow:0 8px 18px rgba(15,23,42,.035);
  overflow:visible;
}
body.page-tickets #ticketsFilterPanel .field-box--location{grid-column:span 2}
body.page-tickets #ticketsFilterPanel .field-box--wide{grid-column:span 2}
body.page-tickets #ticketsFilterPanel .field-box input,
body.page-tickets #ticketsFilterPanel .field-box select{
  min-height:36px !important;
  height:36px;
  padding:0 10px;
  border-radius:10px;
  font-size:12px;
  font-weight:600;
  color:#0f172a;
  border-color:#d6e1ec;
  background:#fff;
  box-shadow:none;
}
body.page-tickets #ticketsFilterPanel .field-box input::placeholder{
  color:#94a3b8;
  font-weight:500;
}
body.page-tickets #ticketsFilterPanel .input-with-action{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:6px;
  align-items:stretch;
  width:100%;
}
body.page-tickets #ticketsFilterPanel .input-with-action .btn{
  min-height:36px;
  height:36px;
  padding:0 11px;
  border-radius:10px;
  font-size:12px;
  white-space:nowrap;
}
body.page-tickets #ticketsFilterPanel .location-suggest{
  max-width:100%;
  box-sizing:border-box;
  font-size:12px;
}
body.page-tickets .tickets-list-panel{
  overflow:hidden;
  background:var(--card,#fff);
  border:1px solid var(--line,#e5e7eb);
  border-radius:20px;
  box-shadow:var(--shadow,0 16px 40px rgba(15,23,42,.08));
  padding:0;
  max-width:100%;
  box-sizing:border-box;
}
body.page-tickets .tickets-list-panel .compact-table-head{
  border-radius:0;
  padding:12px 14px 10px;
  background:#fff;
  border-bottom:1px solid var(--line,#e5e7eb);
}
body.page-tickets .tickets-list-panel .table-wrap{
  border-radius:0;
  max-width:100%;
  overflow:auto;
  box-sizing:border-box;
}
body.page-tickets .tickets-list-panel .request-pagination{
  margin:12px 14px 14px;
  width:auto;
}
@media (max-width:1100px){
  body.page-tickets #ticketsFilterPanel .tickets-filter-grid,
  body.page-tickets #ticketsFilterPanel .request-filter-grid,
  body.page-tickets #ticketsFilterPanel .grid-4.compact-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  body.page-tickets #ticketsFilterPanel .field-box--location,
  body.page-tickets #ticketsFilterPanel .field-box--wide{grid-column:span 2}
}
@media (max-width:760px){
  body.page-tickets #ticketsFilterPanel{
    width:100%;
    max-width:100%;
    margin:10px 0 12px;
    padding:12px;
    border-radius:20px;
    box-sizing:border-box;
    overflow:visible;
  }
  body.page-tickets #ticketsFilterPanel:not(.dt-filter-open){display:none !important}
  body.page-tickets #ticketsFilterPanel.dt-filter-open{display:block !important}
  body.page-tickets #ticketsFilterPanel .filter-toolbar{
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:8px;
    margin-bottom:10px;
  }
  body.page-tickets #ticketsFilterPanel .tickets-filter-grid,
  body.page-tickets #ticketsFilterPanel .request-filter-grid,
  body.page-tickets #ticketsFilterPanel .grid-4.compact-grid{
    grid-template-columns:minmax(0,1fr) !important;
    gap:9px !important;
  }
  body.page-tickets #ticketsFilterPanel .field-box,
  body.page-tickets #ticketsFilterPanel .field-box--wide,
  body.page-tickets #ticketsFilterPanel .field-box--location{
    grid-column:1 / -1 !important;
    width:100%;
    min-width:0;
    max-width:100%;
    min-height:auto;
    padding:9px 10px !important;
    box-sizing:border-box;
    overflow:visible;
  }
  body.page-tickets #ticketsFilterPanel input,
  body.page-tickets #ticketsFilterPanel select{
    width:100%;
    max-width:100%;
    min-width:0;
    box-sizing:border-box;
  }
  body.page-tickets #ticketsFilterPanel .input-with-action{
    grid-template-columns:minmax(0,1fr) !important;
    gap:7px;
  }
  body.page-tickets #ticketsFilterPanel .input-with-action .btn{
    width:100%;
    justify-content:center;
  }
  body.page-tickets #ticketsFilterPanel .location-suggest{
    position:static !important;
    width:100%;
    max-width:100%;
    max-height:220px;
    overflow:auto;
    margin-top:8px;
    box-sizing:border-box;
  }
  body.page-tickets #ticketsFilterPanel .filter-actions{
    display:grid;
    grid-template-columns:1fr;
    gap:8px;
    width:100%;
    margin-top:10px;
  }
  body.page-tickets #ticketsFilterPanel .filter-actions .btn{
    width:100%;
    justify-content:center;
  }
  body.page-tickets .tickets-list-panel{
    background:transparent;
    border:0;
    box-shadow:none;
    border-radius:0;
    padding:0;
    overflow:visible;
  }
  body.page-tickets .tickets-list-panel .compact-table-head{
    background:#fff;
    border:1px solid var(--line,#e5e7eb);
    border-radius:16px;
    padding:10px 11px;
    margin-bottom:8px;
    box-shadow:0 10px 24px rgba(15,23,42,.06);
  }
  body.page-tickets .tickets-list-panel .request-pagination{
    margin:10px 0 calc(96px + env(safe-area-inset-bottom,0px));
    overflow-x:auto;
  }
}

.panel--admin-modules .sysdev-log-table-wrap{border:1px solid rgba(148,163,184,.28);border-radius:18px;overflow:auto;background:linear-gradient(180deg,#ffffff,#f8fafc);box-shadow:0 16px 36px rgba(15,23,42,.06)}
.panel--admin-modules .sysdev-log-table{border-collapse:separate;border-spacing:0;min-width:980px;margin:0;background:transparent}
.panel--admin-modules .sysdev-log-table thead th{background:#f1f5f9;border-bottom:1px solid rgba(148,163,184,.35);padding:13px 14px;color:#475569;font-size:.72rem;font-weight:900;letter-spacing:.09em;text-transform:uppercase}
.panel--admin-modules .sysdev-log-table tbody tr.sysdev-log-row{position:relative;background:#fff;transition:background .16s ease,box-shadow .16s ease,transform .16s ease}
.panel--admin-modules .sysdev-log-table tbody tr.sysdev-log-row:not(.sysdev-log-row--empty):hover{background:#f8fbff;box-shadow:inset 3px 0 0 var(--primary,#2563eb)}
.panel--admin-modules .sysdev-log-table tbody tr.sysdev-log-row:not(:last-child) td{border-bottom:1px solid rgba(226,232,240,.92)}
.panel--admin-modules .sysdev-log-table td{padding:14px;line-height:1.35;color:#1f2937}
.panel--admin-modules .sysdev-log-date{font-weight:800;color:#0f172a;white-space:nowrap;font-variant-numeric:tabular-nums}
.panel--admin-modules .sysdev-log-action,.panel--admin-modules .sysdev-log-result{white-space:nowrap}
.panel--admin-modules .sysdev-log-module{display:inline-flex;align-items:center;min-height:28px;padding:4px 9px;border:1px solid rgba(37,99,235,.14);border-radius:999px;background:#eff6ff;color:#1d4ed8;font-weight:800;font-size:.78rem}
.panel--admin-modules .sysdev-log-details{max-width:360px;color:#64748b}
.panel--admin-modules .sysdev-log-agent{max-width:360px;word-break:break-word;color:#64748b}
.panel--admin-modules .sysdev-ip-chip{display:inline-flex;align-items:center;max-width:100%;padding:4px 8px;border:1px solid rgba(148,163,184,.35);border-radius:999px;background:#f8fafc;color:#334155;font-size:.76rem;font-weight:900;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.2;white-space:nowrap}
.panel--admin-modules .sysdev-log-row--login.is-warn{background:#fffdf7}
.panel--admin-modules .sysdev-log-row--login.is-warn:hover{box-shadow:inset 3px 0 0 #f59e0b}
.panel--admin-modules .sysdev-log-row--login.is-ok:hover{box-shadow:inset 3px 0 0 #16a34a}
@media (max-width:760px){
  .panel--admin-modules .sysdev-log-table-wrap{border-radius:16px;overflow:visible;background:transparent;box-shadow:none;border:0}
  .panel--admin-modules .sysdev-log-table{min-width:0;border-spacing:0 10px;display:block;background:transparent}
  .panel--admin-modules .sysdev-log-table thead{display:none}
  .panel--admin-modules .sysdev-log-table tbody{display:block}
  .panel--admin-modules .sysdev-log-table tbody tr.sysdev-log-row{display:block;border:1px solid rgba(148,163,184,.28);border-radius:16px;box-shadow:0 12px 28px rgba(15,23,42,.06);overflow:hidden;margin-bottom:10px}
  .panel--admin-modules .sysdev-log-table tbody tr.sysdev-log-row:not(:last-child) td{border-bottom:1px solid rgba(226,232,240,.75)}
  .panel--admin-modules .sysdev-log-table td{display:grid;grid-template-columns:112px minmax(0,1fr);gap:10px;padding:11px 12px;border:0!important}
  .panel--admin-modules .sysdev-log-table td::before{content:attr(data-label);font-size:.69rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:#64748b}
  .panel--admin-modules .sysdev-log-details,.panel--admin-modules .sysdev-log-agent{max-width:none}
  .panel--admin-modules .sysdev-log-date{white-space:normal}
}

.panel--admin-modules .sysdev-log-filter-panel{
  margin-top:14px;
  border:1px solid rgba(148,163,184,.26);
  border-radius:22px;
  padding:14px;
  background:linear-gradient(135deg,#ffffff 0%,#f8fbff 55%,#eef6ff 100%);
  box-shadow:0 16px 38px rgba(15,23,42,.06);
}
.panel--admin-modules .sysdev-filter-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  padding:4px 4px 12px;
  border-bottom:1px solid rgba(226,232,240,.9);
}
.panel--admin-modules .sysdev-filter-head strong{
  display:block;
  color:#0f172a;
  font-size:1rem;
  line-height:1.2;
}
.panel--admin-modules .sysdev-filter-head p{margin:3px 0 0;}
.panel--admin-modules .sysdev-filter-summary{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:6px;
  min-width:max-content;
}
.panel--admin-modules .sysdev-filter-grid{
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr));
  gap:10px;
  margin-top:12px;
}
.panel--admin-modules .sysdev-filter-field{
  grid-column:span 3;
  display:flex;
  flex-direction:column;
  gap:6px;
  min-width:0;
  margin:0;
  padding:10px;
  border:1px solid rgba(226,232,240,.9);
  border-radius:16px;
  background:rgba(255,255,255,.86);
  box-shadow:0 8px 22px rgba(15,23,42,.035);
}
.panel--admin-modules .sysdev-filter-field--search{grid-column:span 5;}
.panel--admin-modules .sysdev-filter-field--type{grid-column:span 4;}
.panel--admin-modules .sysdev-filter-field--limit{grid-column:span 2;}
.panel--admin-modules .sysdev-filter-field>span{
  color:#475569;
  font-size:.7rem;
  font-weight:900;
  letter-spacing:.08em;
  line-height:1;
  text-transform:uppercase;
}
.panel--admin-modules .sysdev-filter-field input,
.panel--admin-modules .sysdev-filter-field select{
  min-height:42px;
  width:100%;
  border:1px solid rgba(148,163,184,.34);
  border-radius:12px;
  background:#fff;
  color:#0f172a;
  font-weight:750;
  outline:0;
  box-shadow:none;
}
.panel--admin-modules .sysdev-filter-field input:focus,
.panel--admin-modules .sysdev-filter-field select:focus{
  border-color:rgba(37,99,235,.55);
  box-shadow:0 0 0 3px rgba(37,99,235,.12);
}
.panel--admin-modules .sysdev-filter-actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:8px;
  margin-top:12px;
  padding-top:12px;
  border-top:1px solid rgba(226,232,240,.9);
}
.panel--admin-modules .sysdev-log-table thead tr.sysdev-log-head-row{
  background:linear-gradient(180deg,#f8fafc,#eef2f7);
}
.panel--admin-modules .sysdev-log-table thead th.sysdev-th{
  position:sticky;
  top:0;
  z-index:2;
  border-bottom:1px solid rgba(148,163,184,.38);
  border-right:1px solid rgba(226,232,240,.75);
  background:linear-gradient(180deg,#f8fafc,#eef2f7);
  color:#334155;
  font-size:.68rem;
  font-weight:950;
  letter-spacing:.105em;
  text-transform:uppercase;
  white-space:nowrap;
}
.panel--admin-modules .sysdev-log-table thead th.sysdev-th:last-child{border-right:0;}
.panel--admin-modules .sysdev-log-table thead th.sysdev-th--date{min-width:150px;}
.panel--admin-modules .sysdev-log-table thead th.sysdev-th--details{min-width:260px;}
.panel--admin-modules .sysdev-log-table thead th.sysdev-th--agent{min-width:230px;}
.panel--admin-modules .sysdev-log-table thead th.sysdev-th--ip{min-width:135px;}
@media(max-width:980px){
  .panel--admin-modules .sysdev-filter-field,
  .panel--admin-modules .sysdev-filter-field--type,
  .panel--admin-modules .sysdev-filter-field--search,
  .panel--admin-modules .sysdev-filter-field--limit{grid-column:span 6;}
}
@media(max-width:620px){
  .panel--admin-modules .sysdev-log-filter-panel{padding:12px;border-radius:18px;}
  .panel--admin-modules .sysdev-filter-head{display:block;}
  .panel--admin-modules .sysdev-filter-summary{justify-content:flex-start;margin-top:10px;min-width:0;}
  .panel--admin-modules .sysdev-filter-grid{grid-template-columns:1fr;}
  .panel--admin-modules .sysdev-filter-field,
  .panel--admin-modules .sysdev-filter-field--type,
  .panel--admin-modules .sysdev-filter-field--search,
  .panel--admin-modules .sysdev-filter-field--limit{grid-column:1/-1;}
  .panel--admin-modules .sysdev-filter-actions{display:grid;grid-template-columns:1fr;}
  .panel--admin-modules .sysdev-filter-actions .btn{width:100%;justify-content:center;}
}

.panel--admin-modules .sysdev-log-datagrid-tools{
  margin-top:14px;
  border:1px solid rgba(148,163,184,.26);
  border-radius:22px;
  background:linear-gradient(180deg,#ffffff 0%,#f8fafc 100%);
  box-shadow:0 18px 42px rgba(15,23,42,.07);
  padding:14px;
}
.panel--admin-modules .sysdev-log-tools-main{
  display:grid;
  grid-template-columns:minmax(190px,260px) minmax(280px,1fr) minmax(90px,120px) auto;
  gap:10px;
  align-items:end;
}
.panel--admin-modules .sysdev-tool-field,
.panel--admin-modules .sysdev-col-filter{
  display:flex;
  flex-direction:column;
  gap:6px;
  min-width:0;
}
.panel--admin-modules .sysdev-tool-field span,
.panel--admin-modules .sysdev-col-filter span{
  color:#64748b;
  font-size:.68rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.panel--admin-modules .sysdev-tool-field input,
.panel--admin-modules .sysdev-tool-field select,
.panel--admin-modules .sysdev-col-filter input,
.panel--admin-modules .sysdev-col-filter select{
  width:100%;
  min-height:42px;
  border:1px solid rgba(148,163,184,.34);
  border-radius:14px;
  background:#fff;
  color:#0f172a;
  padding:9px 12px;
  font-weight:700;
  outline:none;
  transition:border-color .15s ease, box-shadow .15s ease, transform .15s ease;
}
.panel--admin-modules .sysdev-tool-field input:focus,
.panel--admin-modules .sysdev-tool-field select:focus,
.panel--admin-modules .sysdev-col-filter input:focus,
.panel--admin-modules .sysdev-col-filter select:focus{
  border-color:rgba(37,99,235,.55);
  box-shadow:0 0 0 4px rgba(37,99,235,.10);
}
.panel--admin-modules .sysdev-log-tool-actions{
  display:flex;
  gap:8px;
  justify-content:flex-end;
  align-items:center;
  flex-wrap:wrap;
}
.panel--admin-modules .sysdev-log-column-filters{
  margin-top:12px;
  padding-top:12px;
  border-top:1px solid rgba(226,232,240,.95);
  display:grid;
  grid-template-columns:repeat(5,minmax(145px,1fr));
  gap:10px;
}
.panel--admin-modules .sysdev-log-tools-meta{
  margin-top:12px;
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}
.panel--admin-modules .sysdev-log-table-wrap{
  border-radius:20px;
  border:1px solid rgba(148,163,184,.30);
  box-shadow:0 20px 46px rgba(15,23,42,.08);
}
.panel--admin-modules .sysdev-log-table thead th.sysdev-th{
  position:sticky;
  top:0;
  z-index:2;
  background:linear-gradient(180deg,#f8fafc,#eef2f7);
  color:#334155;
  border-bottom:1px solid rgba(148,163,184,.42);
  vertical-align:middle;
}
.panel--admin-modules .sysdev-log-table thead th.th-sortable{
  cursor:pointer!important;
  user-select:none;
}
.panel--admin-modules .sysdev-log-table thead th.th-sortable span,
.panel--admin-modules .sysdev-log-table thead th.th-sortable b{
  pointer-events:none;
}
.panel--admin-modules .sysdev-log-table thead th.sysdev-th span{
  display:inline-flex;
  align-items:center;
  gap:7px;
}
.panel--admin-modules .sysdev-log-table thead th.sysdev-th b{
  display:inline-grid;
  place-items:center;
  width:20px;
  height:20px;
  margin-left:6px;
  border-radius:999px;
  background:rgba(148,163,184,.16);
  color:#64748b;
  font-size:.78rem;
  font-style:normal;
  line-height:1;
}
.panel--admin-modules .sysdev-log-table thead th.th-sortable:hover,
.panel--admin-modules .sysdev-log-table thead th.th-sortable[aria-sort="ascending"],
.panel--admin-modules .sysdev-log-table thead th.th-sortable[aria-sort="descending"]{
  color:#1d4ed8;
  background:linear-gradient(180deg,#eff6ff,#e8f0ff);
}
.panel--admin-modules .sysdev-log-table thead th.th-sortable:hover b,
.panel--admin-modules .sysdev-log-table thead th.th-sortable[aria-sort="ascending"] b,
.panel--admin-modules .sysdev-log-table thead th.th-sortable[aria-sort="descending"] b{
  background:#dbeafe;
  color:#1d4ed8;
}
@media (max-width:980px){
  .panel--admin-modules .sysdev-log-tools-main{grid-template-columns:1fr 1fr;}
  .panel--admin-modules .sysdev-tool-field--search{grid-column:1/-1;}
  .panel--admin-modules .sysdev-log-tool-actions{grid-column:1/-1;justify-content:flex-start;}
  .panel--admin-modules .sysdev-log-column-filters{grid-template-columns:1fr 1fr;}
}
@media (max-width:720px){
  .panel--admin-modules .sysdev-log-datagrid-tools{padding:12px;border-radius:18px;}
  .panel--admin-modules .sysdev-log-tools-main,
  .panel--admin-modules .sysdev-log-column-filters{grid-template-columns:1fr;}
  .panel--admin-modules .sysdev-log-tool-actions{display:grid;grid-template-columns:1fr;}
  .panel--admin-modules .sysdev-log-tool-actions .btn{width:100%;justify-content:center;}
}

.quick-notes-page{display:flex;flex-direction:column;gap:18px;padding-bottom:42px}.qn-hero{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:22px;border:1px solid var(--border,#dfe4ed);border-radius:22px;background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(244,247,252,.92));box-shadow:0 16px 36px rgba(15,23,42,.08)}.qn-hero h2{margin:.1rem 0 .35rem;font-size:clamp(1.45rem,2.5vw,2.1rem)}.qn-hero p{margin:0;color:var(--mut,#64748b);max-width:780px}.qn-layout{display:grid;grid-template-columns:minmax(280px,360px) minmax(0,1fr);gap:18px;align-items:start}.qn-card,.qn-list-panel{border:1px solid var(--border,#dfe4ed);border-radius:22px;background:#fff;box-shadow:0 14px 34px rgba(15,23,42,.07)}.qn-card{padding:18px}.qn-create-card{display:flex;flex-direction:column;gap:14px}.qn-create-head,.qn-detail-head,.qn-head-actions,.qn-actions,.qn-tools,.qn-mini-row{display:flex;align-items:center;gap:12px}.qn-create-head,.qn-detail-head{justify-content:space-between}.qn-create-head span,.qn-detail-head p,.qn-file-row small,.qn-note-item small{display:block;color:var(--mut,#64748b);font-size:.86rem}.qn-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.qn-create-card label,.qn-convert-card label,.qn-status-form label{display:flex;flex-direction:column;gap:7px;font-weight:700;color:#263244}.qn-create-card input,.qn-create-card textarea,.qn-create-card select,.qn-convert-card input,.qn-convert-card textarea,.qn-convert-card select,.qn-filter input,.qn-filter select,.qn-status-form select{width:100%;border:1px solid var(--border,#dfe4ed);border-radius:14px;background:#fff;padding:11px 12px;font:inherit;min-height:44px}.qn-tools{flex-wrap:wrap;align-items:stretch}.qn-recorder{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px;border:1px dashed var(--border,#dfe4ed);border-radius:16px;background:#f8fafc}.qn-rec-state{color:var(--mut,#64748b);font-size:.88rem}.qn-file-drop{padding:11px 14px;border:1px dashed var(--border,#dfe4ed);border-radius:16px;background:#f8fafc;cursor:pointer}.qn-file-drop input{display:block;margin-top:6px;padding:0;border:0;min-height:auto}.qn-list-panel{position:sticky;top:88px;overflow:hidden}.qn-filter{display:grid;grid-template-columns:1fr;gap:10px;padding:14px;border-bottom:1px solid var(--border,#dfe4ed);background:#f8fafc}.qn-note-list{display:flex;flex-direction:column;max-height:72vh;overflow:auto}.qn-note-item{display:flex;flex-direction:column;gap:6px;padding:14px 16px;color:inherit;text-decoration:none;border-bottom:1px solid #eef2f7;transition:background .16s ease, transform .16s ease}.qn-note-item:hover,.qn-note-item.active{background:#f4f7fc}.qn-note-item.active{box-shadow:inset 4px 0 0 var(--primary,#2563eb)}.qn-code{font-size:.74rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--primary,#2563eb)}.qn-mini-row{justify-content:space-between}.qn-detail-card{display:flex;flex-direction:column;gap:16px}.qn-head-actions{justify-content:flex-end;flex-wrap:wrap}.qn-text-block{padding:14px;border-radius:16px;background:#f8fafc;border:1px solid #eef2f7;line-height:1.55}.qn-meta-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.qn-meta-grid>div{padding:13px;border:1px solid #eef2f7;border-radius:16px;background:#fbfdff}.qn-meta-grid span{display:block;color:var(--mut,#64748b);font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;font-weight:800}.qn-meta-grid strong{display:block;margin-top:4px;word-break:break-word}.qn-files{display:flex;flex-direction:column;gap:10px}.qn-files h4,.qn-events h4{margin:0 0 4px}.qn-file-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px;border:1px solid #eef2f7;border-radius:16px;background:#fff}.qn-file-row audio{max-width:280px}.qn-file-row img{width:82px;height:62px;object-fit:cover;border-radius:12px;border:1px solid #e2e8f0}.qn-status-form{padding-top:4px;border-top:1px solid #eef2f7}.qn-convert-card{display:flex;flex-direction:column;gap:12px;margin-top:18px;border-color:#bfdbfe;background:linear-gradient(180deg,#fff,#f8fbff)}.qn-events{margin-top:18px}.qn-event{display:grid;grid-template-columns:150px minmax(0,1fr) minmax(160px,.7fr);gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid #eef2f7}.qn-event:last-child{border-bottom:0}.qn-event span,.qn-event small{color:var(--mut,#64748b);font-size:.84rem}.empty-detail,.empty{text-align:center;color:var(--mut,#64748b)}.badge.info{background:#dbeafe;color:#1d4ed8}.badge.muted{background:#e5e7eb;color:#374151}@media(max-width:980px){.qn-layout{grid-template-columns:1fr}.qn-list-panel{position:relative;top:auto}.qn-note-list{max-height:none}.qn-form-grid,.qn-meta-grid{grid-template-columns:1fr}.qn-hero,.qn-detail-head{align-items:flex-start;flex-direction:column}.qn-file-row{grid-template-columns:1fr}.qn-event{grid-template-columns:1fr;gap:4px}.qn-file-row audio{max-width:100%;width:100%}}

body.qn-modal-open{overflow:hidden}.qn-modal[hidden],.qn-image-modal[hidden]{display:none!important}.qn-modal{position:fixed;inset:0;z-index:12000;display:grid;place-items:center;padding:18px}.qn-modal-backdrop,.qn-image-modal__backdrop{position:absolute;inset:0;background:rgba(15,23,42,.56);backdrop-filter:blur(8px)}.qn-modal .qn-create-card{position:relative;z-index:1;width:min(1120px,100%);max-height:min(90vh,980px);overflow:auto;border-radius:26px;box-shadow:0 30px 90px rgba(15,23,42,.28)}.qn-create-head{position:sticky;top:0;z-index:2;margin:-18px -18px 4px;padding:18px;border-bottom:1px solid #e8edf5;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-radius:26px 26px 0 0}.qn-live-box{display:grid;gap:10px;padding:14px;border:1px solid #bfdbfe;border-radius:18px;background:linear-gradient(180deg,#eff6ff,#fff)}.qn-live-box>div{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}.qn-live-box span{color:#64748b;font-size:.86rem}.qn-live-box p{margin:0;padding:12px;border-radius:14px;background:#fff;border:1px solid #dbeafe;line-height:1.5;color:#1e293b}.qn-selected-files{display:flex;flex-wrap:wrap;gap:8px;padding:10px;border-radius:16px;background:#f8fafc;border:1px dashed #d7dee9}.qn-selected-files span{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border-radius:999px;background:#fff;border:1px solid #e5eaf2;color:#334155;font-size:.86rem}.qn-selected-files strong{color:#2563eb}.qn-transcript-block{background:#fff7ed;border-color:#fed7aa}.qn-card-lite{padding:14px;border:1px solid #eef2f7;border-radius:18px;background:#fbfdff}.qn-add-files-form{display:grid;gap:10px}.qn-add-files-grid{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;align-items:end}.qn-add-files-grid label{display:grid;gap:6px;font-weight:700;color:#263244}.qn-add-files-grid input{width:100%;border:1px solid #dfe4ed;border-radius:14px;background:#fff;padding:10px}.qn-file-row{grid-template-columns:minmax(0,1fr) minmax(260px,auto)}.qn-file-info strong{word-break:break-word}.qn-file-preview{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.qn-image-thumb{appearance:none;border:0;background:transparent;padding:0;cursor:pointer;border-radius:14px}.qn-image-thumb img{display:block;width:92px;height:70px;object-fit:cover;border-radius:14px;border:1px solid #dfe7f2;box-shadow:0 8px 20px rgba(15,23,42,.08);transition:transform .16s ease,box-shadow .16s ease}.qn-image-thumb:hover img{transform:translateY(-1px) scale(1.02);box-shadow:0 12px 26px rgba(15,23,42,.14)}.btn.danger,.btn.ghost.danger{color:#b91c1c;border-color:#fecaca;background:#fff5f5}.btn.ghost.danger:hover{background:#fee2e2}.qn-delete-file-form{margin:0}.qn-image-modal{position:fixed;inset:0;z-index:13000;display:grid;place-items:center;padding:18px}.qn-image-modal__panel{position:relative;z-index:1;display:grid;gap:12px;width:min(980px,100%);max-height:90vh;padding:16px;border-radius:24px;background:#fff;box-shadow:0 30px 90px rgba(15,23,42,.32)}.qn-image-modal__panel img{max-width:100%;max-height:72vh;object-fit:contain;border-radius:18px;background:#f8fafc;border:1px solid #edf2f7}.qn-image-modal__panel .btn{justify-self:end}@media(max-width:760px){.qn-modal{padding:10px;place-items:end center}.qn-modal .qn-create-card{width:100%;max-height:94vh;border-radius:22px 22px 0 0}.qn-create-head{border-radius:22px 22px 0 0}.qn-add-files-grid{grid-template-columns:1fr}.qn-file-row{grid-template-columns:1fr}.qn-file-preview{justify-content:flex-start}.qn-image-thumb img{width:110px;height:82px}}

.qn-recorded-list{display:grid;gap:10px;width:100%;margin-top:8px}.qn-recorded-item{display:grid;grid-template-columns:auto minmax(220px,1fr) auto;align-items:center;gap:8px 10px;padding:10px;border:1px solid #e6edf6;border-radius:14px;background:#fff;box-shadow:0 8px 18px rgba(15,23,42,.04)}.qn-recorded-item strong{font-size:.82rem;color:#1e293b;white-space:nowrap}.qn-recorded-item audio{width:100%;max-width:380px}.qn-recorded-item small{grid-column:1/-1;color:#64748b;font-size:.78rem;word-break:break-word}.qn-recorded-remove{min-height:36px;padding:7px 10px;border-radius:12px}.qn-geo-state{display:inline-flex;align-items:center;min-height:38px;padding:8px 11px;border-radius:999px;background:#eef6ff;border:1px solid #d9e9ff;color:#1d4ed8;font-size:.84rem;font-weight:700}
@media(max-width:760px){
  .quick-notes-page{gap:12px}.qn-hero{padding:16px;border-radius:18px;gap:12px}.qn-hero h2{font-size:1.35rem}.qn-hero p{font-size:.9rem;line-height:1.45}.qn-hero .btn{width:100%;justify-content:center}
  .qn-modal{padding:0;place-items:stretch}.qn-modal .qn-create-card{width:100%;height:100dvh;max-height:100dvh;border-radius:0;padding:12px;gap:10px;box-shadow:none}.qn-create-head{margin:-12px -12px 2px;padding:12px;border-radius:0;align-items:center}.qn-create-head strong{font-size:1rem}.qn-create-head span{font-size:.78rem}.qn-create-head .btn{min-height:38px;padding:8px 10px}
  .qn-create-card label{font-size:.86rem;gap:5px}.qn-create-card input,.qn-create-card textarea,.qn-create-card select{min-height:40px;padding:9px 10px;border-radius:12px;font-size:16px}.qn-create-card textarea{rows:auto;min-height:88px;max-height:140px}.qn-form-grid{gap:8px}.qn-live-box{padding:10px;border-radius:14px;gap:8px}.qn-live-box p{max-height:90px;overflow:auto;padding:9px;border-radius:12px;font-size:.9rem}.qn-live-box .btn{width:100%;justify-content:center}
  .qn-tools{display:grid;grid-template-columns:1fr;gap:8px}.qn-recorder{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:9px;border-radius:14px}.qn-recorder .qn-rec-state{grid-column:1/-1}.qn-recorded-list{grid-column:1/-1}.qn-recorded-item{grid-template-columns:1fr;gap:7px}.qn-recorded-item audio{max-width:none}.qn-recorded-remove{width:100%;justify-content:center}.qn-file-drop{padding:10px 11px;border-radius:14px}.qn-file-drop input{font-size:.82rem}.qn-geo-state{justify-content:center;border-radius:14px;text-align:center}.qn-selected-files{max-height:96px;overflow:auto;padding:8px}.qn-selected-files span{width:100%;justify-content:space-between;border-radius:12px;font-size:.8rem}.qn-actions .btn,.qn-actions{width:100%}.qn-actions{display:grid}.qn-actions .btn{justify-content:center;min-height:44px}
  .qn-layout{gap:12px}.qn-list-panel,.qn-card{border-radius:18px}.qn-filter{padding:10px}.qn-note-item{padding:12px}.qn-detail-card{gap:12px}.qn-detail-head{gap:10px}.qn-head-actions{width:100%;justify-content:flex-start}.qn-meta-grid{gap:8px}.qn-meta-grid>div{padding:10px;border-radius:14px}.qn-file-row{padding:10px;border-radius:14px}.qn-file-preview{gap:8px}.qn-file-preview audio{width:100%;max-width:none}.qn-image-modal{padding:0}.qn-image-modal__panel{height:100dvh;max-height:100dvh;border-radius:0;padding:12px}.qn-image-modal__panel img{max-height:82dvh}
}
.qn-rec-timer{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:8px 11px;border-radius:999px;background:#fff7ed;border:1px solid #fed7aa;color:#9a3412;font-size:.84rem;font-weight:800}.qn-user-note{padding:10px 12px;border-radius:16px;background:#f8fafc;border:1px solid #e6edf6;color:#475569;font-size:.9rem;line-height:1.45}.qn-file-info strong{font-size:.95rem}.qn-event small{word-break:break-word}.qn-recorder.is-recording{border-color:#fecaca;background:#fff7f7}.qn-recorder.is-recording .qn-rec-state{color:#b91c1c;font-weight:800}.qn-recorder.is-paused{border-color:#fed7aa;background:#fff7ed}.qn-recorder.is-paused .qn-rec-state{color:#9a3412;font-weight:800}@media(max-width:760px){.qn-rec-timer{grid-column:1/-1;border-radius:14px;width:100%}.qn-user-note{font-size:.84rem;padding:9px 10px}.qn-create-card{overscroll-behavior:contain}.qn-tools .btn{width:100%;justify-content:center}.qn-recorder{align-items:stretch}.qn-recorder .btn{min-height:42px}.qn-recorded-item small{display:none}.qn-live-box>div{display:grid}.qn-live-box>div strong{font-size:.9rem}.qn-live-box span{font-size:.78rem}.qn-file-info strong{font-size:.9rem}.qn-event small{font-size:.78rem}.qn-meta-grid strong{font-size:.92rem}}

.qn-wave-wrap{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;width:100%;padding:10px 12px;border-radius:16px;background:linear-gradient(180deg,#ffffff,#f8fbff);border:1px solid #dbeafe;box-shadow:inset 0 1px 0 rgba(255,255,255,.8)}
.qn-wave-wrap[hidden]{display:none!important}
.qn-wave-wrap canvas{width:100%;height:58px;display:block;border-radius:14px;background:linear-gradient(180deg,#eff6ff,#ffffff);border:1px solid #e0ecff}
.qn-wave-wrap span{font-size:.78rem;font-weight:900;letter-spacing:.05em;text-transform:uppercase;color:#2563eb;white-space:nowrap}
.qn-recorder.is-recording .qn-wave-wrap{border-color:#bfdbfe;background:linear-gradient(180deg,#fff,#eff6ff)}
@media(max-width:760px){.qn-wave-wrap{grid-template-columns:1fr;padding:8px;border-radius:14px}.qn-wave-wrap canvas{height:46px}.qn-wave-wrap span{text-align:center;font-size:.72rem}.qn-recorder{grid-template-columns:1fr!important}}

body:not(.login-page) .quick-notes-page,
body:not(.login-page) .quick-notes-page *,
.qn-modal,
.qn-modal *,
.qn-image-modal,
.qn-image-modal *{
  box-sizing:border-box;
}
body:not(.login-page) .quick-notes-page{
  width:100%;
  max-width:100%;
  min-width:0;
  margin-inline:auto;
  overflow-x:clip;
  padding-bottom:42px;
}
.quick-notes-page button,
.quick-notes-page a,
.quick-notes-page input,
.quick-notes-page select,
.quick-notes-page textarea,
.quick-notes-page label{
  touch-action:manipulation;
}
.quick-notes-page input,
.quick-notes-page select,
.quick-notes-page textarea{
  font-size:16px;
}
.qn-layout,
.qn-list-panel,
.qn-detail-panel,
.qn-card,
.qn-tools,
.qn-recorder,
.qn-selected-files,
.qn-recorded-list{
  min-width:0;
  max-width:100%;
}
body.qn-modal-open{
  overflow:hidden;
}
body.qn-modal-open .sidebar,
body.qn-modal-open #mobileBottomNav.mobile-bottom-nav{
  pointer-events:none;
}
.qn-modal{
  overflow:hidden;
}
.qn-modal .qn-create-card{
  max-width:1120px;
  overflow-x:hidden;
  overscroll-behavior:contain;
}
.qn-rec-timer{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:38px;
  padding:8px 11px;
  border-radius:999px;
  background:#fff7ed;
  border:1px solid #fed7aa;
  color:#9a3412;
  font-size:.84rem;
  font-weight:800;
  font-variant-numeric:tabular-nums;
}
.qn-waveform{
  display:block;
  width:100%;
  height:58px;
  max-width:520px;
  border-radius:18px;
  background:#eff6ff;
  border:1px solid #dbeafe;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.82);
}
.qn-recorder.is-recording{
  border-color:#bfdbfe;
  background:#f8fbff;
}
.qn-recorder.is-recording .qn-waveform{
  border-color:#93c5fd;
  background:#eef6ff;
}
.qn-recorded-list{
  display:grid;
  gap:10px;
  width:100%;
  margin-top:8px;
}
.qn-recorded-item{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:10px;
  align-items:center;
  padding:10px;
  border:1px solid #e6edf6;
  border-radius:16px;
  background:#fff;
  box-shadow:0 8px 18px rgba(15,23,42,.04);
  min-width:0;
}
.qn-recorded-item audio{
  display:block;
  width:100%;
  max-width:100%;
  min-width:0;
}
.qn-recorded-item .btn{
  white-space:nowrap;
}
.qn-selected-files{
  overflow:hidden;
}
.qn-selected-files span{
  max-width:100%;
  overflow:hidden;
}
.qn-selected-files span>:last-child{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.qn-create-card .qn-actions{
  z-index:4;
}

.qn-geo-state{
  display:block;
  width:100%;
  padding:9px 11px;
  border-radius:14px;
  background:#fff7ed;
  border:1px solid #fed7aa;
  color:#9a3412;
  font-size:.86rem;
  font-weight:700;
  text-align:center;
}
.qn-geo-state[hidden]{display:none!important;}
@media (max-width:980px){
  body:not(.login-page) .quick-notes-page{
    width:100%;
    max-width:100%;
    overflow-x:clip;
    padding-left:0;
    padding-right:0;
    padding-bottom:calc(var(--dt-mobile-nav-height,76px) + 34px + env(safe-area-inset-bottom,0px));
  }
  body:not(.login-page) nav#mobileBottomNav.mobile-bottom-nav[data-mobile-nav="canonical"]{
    display:flex !important;
  }
  body.qn-modal-open nav#mobileBottomNav.mobile-bottom-nav[data-mobile-nav="canonical"]{
    display:none !important;
  }
}
@media(max-width:760px){
  html,
  body{
    max-width:100%;
    overflow-x:hidden;
  }
  .quick-notes-page{
    width:100%;
    max-width:100%;
    margin:0 auto;
    gap:12px;
    overflow-x:clip;
  }
  .quick-notes-page .qn-hero,
  .quick-notes-page .qn-layout,
  .quick-notes-page .qn-list-panel,
  .quick-notes-page .qn-detail-panel,
  .quick-notes-page .qn-card{
    width:100%;
    max-width:100%;
    min-width:0;
    overflow-x:hidden;
  }
  .qn-hero{
    padding:16px;
    border-radius:18px;
    gap:12px;
  }
  .qn-hero h2{font-size:1.35rem;}
  .qn-hero p{font-size:.9rem;line-height:1.45;}
  .qn-hero .btn{width:100%;justify-content:center;}
  .qn-modal{
    display:flex;
    align-items:center;
    justify-content:center;
    padding:10px;
    background:rgba(15,23,42,.54);
  }
  .qn-modal .qn-create-card{
    width:min(100%, calc(100vw - 20px));
    max-width:calc(100vw - 20px);
    height:auto;
    max-height:calc(100dvh - 20px);
    margin:0 auto;
    padding:12px;
    border-radius:20px;
    overflow:auto;
    overflow-x:hidden;
    -webkit-overflow-scrolling:touch;
    box-shadow:0 22px 60px rgba(15,23,42,.28);
  }
  .qn-create-head{
    position:sticky;
    top:-12px;
    margin:-12px -12px 10px;
    padding:12px;
    border-radius:20px 20px 0 0;
    align-items:center;
  }
  .qn-create-head strong{font-size:1rem;}
  .qn-create-head span{display:none!important;}
  .qn-create-head .btn{min-height:38px;padding:8px 10px;}
  .qn-create-card label{font-size:.86rem;gap:5px;}
  .qn-create-card input,
  .qn-create-card textarea,
  .qn-create-card select{
    min-height:40px;
    padding:9px 10px;
    border-radius:12px;
    font-size:16px;
  }
  .qn-create-card textarea{min-height:88px;max-height:140px;}
  .qn-form-grid,
  .qn-tools{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
  }
  .qn-live-box{padding:10px;border-radius:14px;gap:8px;}
  .qn-live-box p{max-height:90px;overflow:auto;padding:9px;border-radius:12px;font-size:.9rem;}
  .qn-live-box .btn{width:100%;justify-content:center;}
  .qn-recorder{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
    align-items:stretch;
    padding:10px;
    border-radius:18px;
    width:100%;
    max-width:100%;
    overflow:hidden;
  }
  .qn-recorder .btn,
  .qn-file-drop{
    width:100%;
    justify-content:center;
    text-align:center;
  }
  .qn-rec-state{text-align:center;}
  .qn-recorder .qn-rec-state,
  .qn-recorder .qn-rec-timer,
  .qn-recorder .qn-waveform,
  .qn-recorder .qn-recorded-list{
    grid-column:1/-1;
  }
  .qn-rec-timer{width:100%;border-radius:14px;}
  .qn-waveform{
    height:48px;
    max-width:100%;
    border-radius:14px;
  }
  .qn-recorded-item{
    grid-template-columns:1fr;
    gap:8px;
    padding:9px;
    border-radius:14px;
  }
  .qn-recorded-item .btn{
    width:100%;
    white-space:normal;
  }
  .qn-file-drop{padding:10px 11px;border-radius:14px;}
  .qn-file-drop input{font-size:.82rem;}
  .qn-selected-files{
    display:grid;
    max-height:120px;
    overflow:auto;
    padding:8px;
  }
  .qn-selected-files span{
    display:grid;
    grid-template-columns:auto minmax(0,1fr);
    align-items:center;
    width:100%;
    border-radius:12px;
    font-size:.8rem;
  }
  .qn-actions{
    position:sticky;
    bottom:-12px;
    margin:10px -12px -12px;
    padding:10px 12px 12px;
    display:grid;
    width:auto;
    background:rgba(255,255,255,.98);
    border-top:1px solid #e8edf5;
    backdrop-filter:blur(10px);
  }
  .qn-actions .btn{
    width:100%;
    min-height:44px;
    justify-content:center;
  }
  .qn-layout{gap:12px;}
  .qn-list-panel,
  .qn-card{border-radius:18px;}
  .qn-filter{padding:10px;}
  .qn-note-item{padding:12px;}
  .qn-detail-card{gap:12px;}
  .qn-detail-head{gap:10px;}
  .qn-head-actions{width:100%;justify-content:flex-start;}
  .qn-meta-grid{gap:8px;}
  .qn-meta-grid>div{padding:10px;border-radius:14px;}
  .qn-file-row{padding:10px;border-radius:14px;}
  .qn-file-preview{gap:8px;}
  .qn-file-preview audio{width:100%;max-width:none;}
  .qn-image-modal{padding:0;}
  .qn-image-modal__panel{height:100dvh;max-height:100dvh;border-radius:0;padding:12px;}
  .qn-image-modal__panel img{max-height:82dvh;}
}
@media(max-width:420px){
  .qn-modal{padding:8px;}
  .qn-modal .qn-create-card{
    width:min(100%, calc(100vw - 16px));
    max-width:calc(100vw - 16px);
    max-height:calc(100dvh - 16px);
    padding:10px;
    border-radius:18px;
  }
  .qn-create-head{top:-10px;margin:-10px -10px 8px;padding:10px;}
  .qn-actions{bottom:-10px;margin:8px -10px -10px;padding:9px 10px 10px;}
  .qn-waveform{height:42px;}
}

.quick-notes-page input[type="file"]{max-width:100%;min-width:0;}
@media(max-width:760px){.quick-notes-page{padding-inline:0!important;}.qn-layout,.qn-list-panel,.qn-detail-panel{margin-inline:0!important;}.qn-waveform{min-width:0!important;}}

.qn-mobile-detail-close{display:none!important}
.qn-location-card{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px;border:1px solid #dbeafe;border-radius:18px;background:linear-gradient(180deg,#eff6ff,#ffffff);box-shadow:0 10px 24px rgba(15,23,42,.05)}
.qn-location-card>div{display:grid;gap:6px;min-width:0}.qn-location-card span{font-size:.76rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em;color:#2563eb}.qn-location-card strong{font-size:1rem;color:#172033;word-break:break-word}.qn-location-data{display:flex;flex-wrap:wrap;gap:6px 12px}.qn-location-data small{display:inline-flex;align-items:center;gap:4px;color:#64748b;line-height:1.35}.qn-location-data b{color:#334155}.qn-location-card .btn{white-space:nowrap}.qn-location-card--convert{margin:4px 0 8px;background:linear-gradient(180deg,#fff7ed,#ffffff);border-color:#fed7aa}.qn-location-card--convert span{color:#c2410c}
body.qn-detail-open #mobileBottomNav.mobile-bottom-nav{display:none!important}
@media(max-width:760px){
  .qn-mobile-detail-close{display:inline-flex!important}
  .quick-notes-page{position:relative;overflow-x:hidden}
  .quick-notes-page .qn-detail-panel:not(.is-open){display:none!important}
  .quick-notes-page .qn-detail-panel.is-open{position:fixed;inset:0;z-index:11800;width:100%;height:100dvh;max-width:100%;padding:10px;background:#f6f8fb;overflow:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}
  .quick-notes-page .qn-detail-panel.is-open .qn-detail-card{border-radius:22px;margin:0 auto 12px;width:100%;max-width:560px;box-shadow:0 18px 48px rgba(15,23,42,.16)}
  .quick-notes-page .qn-detail-panel.is-open .qn-convert-card,.quick-notes-page .qn-detail-panel.is-open .qn-events{width:100%;max-width:560px;margin-left:auto;margin-right:auto}
  .quick-notes-page .qn-detail-panel.is-open .qn-detail-head{position:sticky;top:0;z-index:4;margin:-18px -18px 8px;padding:12px;border-radius:22px 22px 0 0;background:rgba(255,255,255,.96);border-bottom:1px solid #e8edf5;backdrop-filter:blur(10px)}
  .quick-notes-page .qn-detail-panel.is-open .qn-detail-head h3{font-size:1.12rem;margin:.15rem 0}.quick-notes-page .qn-detail-panel.is-open .qn-detail-head p{font-size:.78rem}.quick-notes-page .qn-detail-panel.is-open .qn-head-actions{gap:8px}.quick-notes-page .qn-detail-panel.is-open .qn-head-actions .btn,.quick-notes-page .qn-detail-panel.is-open .qn-head-actions .badge{min-height:36px;font-size:.82rem}
  .qn-location-card{display:grid;grid-template-columns:1fr;gap:10px;padding:12px;border-radius:16px}.qn-location-card .btn{width:100%;justify-content:center}.qn-location-card strong{font-size:.95rem}.qn-location-data{display:grid;gap:5px}.qn-location-data small{font-size:.8rem}
}

.geo-user-rules{
  margin-top:16px;
  display:grid;
  gap:14px;
}
.geo-user-rules select[multiple]{
  width:100%;
  min-height:190px;
  border:1px solid var(--line, #d9e2ef);
  border-radius:16px;
  padding:10px;
  background:var(--card, #fff);
  color:var(--text, #111827);
  font:inherit;
  outline:none;
}
.geo-user-rules select[multiple]:focus{
  border-color:var(--primary, #2563eb);
  box-shadow:0 0 0 3px rgba(37,99,235,.12);
}
.geo-user-rules option{
  padding:8px 10px;
  border-radius:10px;
}
@media (max-width:760px){
  .geo-user-rules select[multiple]{min-height:160px;}
}
.geo-dual-picker{
  display:grid;
  grid-template-columns:minmax(220px,1fr) auto minmax(260px,1.25fr);
  gap:14px;
  align-items:stretch;
}
.geo-drag-hint{
  grid-column:1/-1;
  display:flex;
  align-items:center;
  gap:8px;
  min-height:38px;
  padding:9px 12px;
  border:1px dashed var(--line,#d9e2ef);
  border-radius:14px;
  background:#f8fafc;
  color:#64748b;
  font-size:.82rem;
  line-height:1.35;
}
.geo-dual-column,.geo-rule-box{
  display:grid;
  gap:10px;
  min-width:0;
  padding:12px;
  border:1px solid var(--line,#d9e2ef);
  border-radius:18px;
  background:linear-gradient(180deg,#ffffff,#f8fafc);
  box-shadow:0 10px 24px rgba(15,23,42,.04);
}
.geo-dual-column--rules{
  padding:0;
  border:0;
  background:transparent;
  box-shadow:none;
}
.geo-rule-box--required{border-color:#bfdbfe;background:linear-gradient(180deg,#eff6ff,#ffffff)}
.geo-rule-box--bypass{border-color:#fed7aa;background:linear-gradient(180deg,#fff7ed,#ffffff)}
.geo-dual-head{display:grid;gap:3px}
.geo-dual-head strong{font-size:.92rem;color:#172033}
.geo-dual-head small{font-size:.78rem;color:#64748b;line-height:1.35}
.geo-dual-search{
  width:100%;
  min-height:40px;
  border:1px solid var(--line,#d9e2ef);
  border-radius:14px;
  padding:8px 11px;
  font:inherit;
  background:#fff;
  color:var(--text,#111827);
}
.geo-dual-actions{
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:8px;
  min-width:142px;
}
.geo-dual-actions .btn{width:100%;justify-content:center;min-height:38px;white-space:nowrap}
.geo-dual-picker select[multiple]{
  width:100%;
  min-height:180px;
  border:1px solid var(--line,#d9e2ef);
  border-radius:16px;
  padding:8px;
  background:#fff;
  color:var(--text,#111827);
  font:inherit;
  outline:none;
}
.geo-dual-picker select[multiple]:focus,.geo-dual-search:focus{
  border-color:var(--primary,#2563eb);
  box-shadow:0 0 0 3px rgba(37,99,235,.12);
}
.geo-dual-picker select[multiple].is-drop-target{
  border-color:var(--primary,#2563eb);
  background:#eff6ff;
  box-shadow:0 0 0 3px rgba(37,99,235,.12);
}
.geo-dual-picker select[multiple].is-drag-source{opacity:.86}
.geo-dual-picker option{padding:8px 10px;border-radius:10px}
.geo-dual-picker option[draggable="true"]{cursor:grab}
.geo-dual-picker option[draggable="true"]:active{cursor:grabbing}
.geo-dual-picker option:checked{background:#dbeafe;color:#0f172a}
@media(max-width:900px){
  .geo-dual-picker{grid-template-columns:1fr;gap:12px}
  .geo-dual-actions{display:grid;grid-template-columns:1fr 1fr;min-width:0}
}
@media(max-width:760px){
  .geo-drag-hint{font-size:.78rem;padding:8px 10px}
}
@media(max-width:520px){
  .geo-dual-actions{grid-template-columns:1fr}
  .geo-dual-picker select[multiple]{min-height:150px}
}

.geo-dual-picker .geo-native-select{
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0;
}
.geo-card-list{
  min-height:190px;
  max-height:260px;
  overflow:auto;
  display:grid;
  align-content:start;
  gap:8px;
  padding:8px;
  border:1px solid var(--line,#d9e2ef);
  border-radius:16px;
  background:#fff;
  transition:border-color .18s, box-shadow .18s, background .18s;
}
.geo-card-list.is-drop-target{
  border-color:var(--primary,#2563eb);
  background:#eff6ff;
  box-shadow:0 0 0 3px rgba(37,99,235,.12);
}
.geo-user-card{
  width:100%;
  border:1px solid #e2e8f0;
  border-radius:13px;
  background:linear-gradient(180deg,#fff,#f8fafc);
  color:#172033;
  padding:9px 10px;
  text-align:left;
  cursor:grab;
  display:grid;
  gap:2px;
  font:inherit;
  transition:transform .15s, border-color .15s, box-shadow .15s, background .15s;
  touch-action:none;
}
.geo-user-card span{font-size:.86rem;font-weight:700;line-height:1.25}
.geo-user-card small{font-size:.72rem;color:#64748b;line-height:1.2}
.geo-user-card:hover,
.geo-user-card.is-selected{
  border-color:var(--primary,#2563eb);
  background:#eff6ff;
  box-shadow:0 8px 18px rgba(37,99,235,.11);
}
.geo-user-card.is-dragging{opacity:.55;transform:scale(.985);cursor:grabbing}
.geo-card-empty{
  min-height:70px;
  display:grid;
  place-items:center;
  color:#94a3b8;
  font-size:.82rem;
  text-align:center;
  border:1px dashed #d9e2ef;
  border-radius:13px;
  background:#f8fafc;
}
@media(max-width:520px){
  .geo-card-list{min-height:150px;max-height:220px}
  .geo-user-card{padding:8px 9px}
}

.sysdev-page-head {
  display: grid;
  gap: 18px;
  margin-bottom: 26px;
}
.sysdev-hero {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 18px 20px;
  border: 1px solid #cfe1ff;
  border-radius: 18px;
  background:
    radial-gradient(circle at top left, rgba(37, 99, 235, .08), transparent 34%),
    linear-gradient(180deg, #f8fbff, #eef6ff);
  box-shadow: 0 16px 40px rgba(15, 23, 42, .05);
}
.sysdev-title-block {
  min-width: 260px;
  display: block;
}
.sysdev-kicker {
  margin-bottom: 6px;
  color: #7c8da8;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.sysdev-title-block h1 {
  margin: 0;
  color: #0f172a;
  font-size: 26px;
  line-height: 1.05;
  font-weight: 900;
}
.sysdev-title-block p {
  margin: 6px 0 0;
  color: #53657d;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.35;
}
.sysdev-stats {
  display: grid;
  grid-template-columns: repeat(4, minmax(110px, 1fr));
  gap: 10px;
  width: min(620px, 100%);
}
.sysdev-stat {
  min-height: 56px;
  padding: 12px 14px;
  border: 1px solid #e2e8f0;
  border-radius: 14px;
  background: rgba(255, 255, 255, .88);
  box-shadow: 0 10px 28px rgba(15, 23, 42, .04);
}
.sysdev-stat span {
  display: block;
  color: #64748b;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .05em;
  text-transform: uppercase;
}
.sysdev-stat strong {
  display: block;
  margin-top: 2px;
  color: #0b4a91;
  font-size: 23px;
  line-height: 1;
  font-weight: 950;
}
.sysdev-info {
  padding: 15px 18px;
  border: 1px solid #e2e8f0;
  border-radius: 16px;
  background: #ffffff;
  color: #334155;
  font-size: 14px;
  line-height: 1.5;
  box-shadow: 0 12px 32px rgba(15, 23, 42, .04);
}
.sysdev-info strong {
  color: #0f172a;
  font-weight: 900;
}
.sysdev-info span {
  color: #475569;
}
.sysdev-module-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
  gap: 12px;
  margin-bottom: 28px;
}
.sysdev-module-card {
  position: relative;
  display: flex;
  align-items: flex-start;
  gap: 12px;
  min-height: 82px;
  padding: 16px 15px;
  border: 1px solid #dbe3ef;
  border-radius: 16px;
  background: linear-gradient(180deg, #ffffff, #f8fafc);
  color: #334155;
  text-decoration: none;
  box-shadow: 0 12px 28px rgba(15, 23, 42, .04);
  transition: transform .16s ease, border-color .16s ease, box-shadow .16s ease, background .16s ease;
  min-width: 0;
}
.sysdev-module-card:hover {
  transform: translateY(-2px);
  border-color: #bfdbfe;
  box-shadow: 0 18px 42px rgba(15, 23, 42, .08);
  background: linear-gradient(180deg, #ffffff, #eff6ff);
}
.sysdev-module-card.active {
  border-color: #93c5fd;
  background:
    radial-gradient(circle at top right, rgba(37, 99, 235, .12), transparent 42%),
    linear-gradient(180deg, #ffffff, #eff6ff);
  box-shadow: 0 20px 48px rgba(37, 99, 235, .14);
}
.sysdev-module-card.active::after {
  content: "";
  position: absolute;
  left: 16px;
  right: 16px;
  bottom: -1px;
  height: 3px;
  border-radius: 999px 999px 0 0;
  background: #2563eb;
}
.sysdev-module-icon {
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  border-radius: 11px;
  background: #f1f5f9;
  font-size: 17px;
}
.sysdev-module-card.active .sysdev-module-icon {
  background: #dbeafe;
}
.sysdev-module-text {
  display: grid;
  align-content: start;
  gap: 5px;
  min-width: 0;
}
.sysdev-module-text strong {
  color: #334155;
  font-size: 14px;
  line-height: 1.15;
  font-weight: 900;
  white-space: normal;
  overflow: visible;
  text-overflow: clip;
}
.sysdev-module-card.active .sysdev-module-text strong {
  color: #1d4ed8;
}
.sysdev-module-text small {
  color: #64748b;
  font-size: 12px;
  line-height: 1.25;
  font-weight: 700;
  white-space: normal;
  overflow: visible;
  text-overflow: clip;
}
@media (max-width: 1180px) {
  .sysdev-hero { align-items: stretch; flex-direction: column; }
  .sysdev-stats { width: 100%; }
}
@media (max-width: 760px) {
  .sysdev-page-head { gap: 14px; margin-bottom: 20px; }
  .sysdev-hero { padding: 16px; }
  .sysdev-title-block { min-width: 0; }
  .sysdev-title-block h1 { font-size: 23px; }
  .sysdev-title-block p { font-size: 13px; }
  .sysdev-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sysdev-stat { min-height: 52px; padding: 10px 12px; }
  .sysdev-stat strong { font-size: 20px; }
  .sysdev-module-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; }
  .sysdev-module-card { min-height: 76px; padding: 13px; }
  .sysdev-info { font-size: 13px; padding: 14px; }
}
@media (max-width: 430px) {
  .sysdev-stats,
  .sysdev-module-grid { grid-template-columns: 1fr; }
}

.geo-geocode-shell {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(360px, 0.9fr);
  gap: 18px;
  align-items: start;
  margin-top: 18px;
}
.geo-geocode-flash { grid-column: 1 / -1; margin: 0; }
.geo-card {
  background: #fff;
  border: 1px solid #dbe3ef;
  border-radius: 18px;
  padding: 24px;
  box-shadow: 0 18px 45px rgba(15, 23, 42, 0.06);
  min-width: 0;
}
.geo-card-header {
  display: flex;
  align-items: center;
  gap: 16px;
}
.geo-card-icon {
  width: 52px;
  height: 52px;
  display: grid;
  place-items: center;
  border-radius: 14px;
  background: linear-gradient(180deg, #eff6ff, #f8fafc);
  border: 1px solid #dbeafe;
  font-size: 24px;
  flex: 0 0 auto;
}
.geo-card-header h2 {
  margin: 0;
  color: #0f172a;
  font-size: 24px;
  line-height: 1.1;
  font-weight: 800;
}
.geo-card-header p {
  margin: 6px 0 0;
  color: #64748b;
  font-size: 15px;
}
.geo-divider {
  height: 1px;
  background: #e2e8f0;
  margin: 22px 0;
}
.geo-form {
  display: grid;
  gap: 18px;
}
.geo-grid {
  display: grid;
  gap: 16px;
}
.geo-grid.two {
  grid-template-columns: 1fr 220px;
}
.geo-card--test .geo-grid.two {
  grid-template-columns: 1fr 1fr;
}
.geo-field {
  display: grid;
  gap: 8px;
  min-width: 0;
}
.geo-field span {
  color: #334155;
  font-size: 14px;
  font-weight: 700;
}
.geo-field input,
.geo-field select {
  width: 100%;
  min-height: 48px;
  border: 1px solid #d5deea;
  border-radius: 12px;
  background: #fff;
  color: #0f172a;
  font-size: 15px;
  font-weight: 600;
  padding: 0 14px;
  outline: none;
  box-sizing: border-box;
  transition: border-color .18s ease, box-shadow .18s ease;
}
.geo-field input:focus,
.geo-field select:focus {
  border-color: #2563eb;
  box-shadow: 0 0 0 4px rgba(37, 99, 235, 0.12);
}
.geo-option-row {
  display: flex;
  align-items: center;
  gap: 14px;
  min-height: 70px;
  padding: 14px;
  border: 1px solid #dbe3ef;
  border-radius: 14px;
  background: #f8fafc;
  cursor: pointer;
}
.geo-option-row input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}
.geo-toggle {
  width: 48px;
  height: 28px;
  border-radius: 999px;
  background: #cbd5e1;
  position: relative;
  flex: 0 0 auto;
  transition: background .18s ease;
}
.geo-toggle::after {
  content: "";
  position: absolute;
  width: 22px;
  height: 22px;
  top: 3px;
  left: 3px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 2px 8px rgba(15, 23, 42, .18);
  transition: transform .18s ease;
}
.geo-option-row input:checked + .geo-toggle { background: #2563eb; }
.geo-option-row input:checked + .geo-toggle::after { transform: translateX(20px); }
.geo-option-row strong {
  display: block;
  color: #0f172a;
  font-size: 15px;
  font-weight: 800;
}
.geo-option-row small {
  display: block;
  margin-top: 4px;
  color: #64748b;
  font-size: 14px;
}
.geo-status-row {
  min-height: 48px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  border: 1px solid #dbe3ef;
  border-radius: 12px;
  padding: 0 14px;
  background: #f8fafc;
  min-width: 0;
}
.geo-status-row.is-configured {
  border-color: #bbf7d0;
  background: #f0fdf4;
}
.geo-status-row.is-missing {
  border-color: #fed7aa;
  background: #fff7ed;
}
.geo-status-ok {
  color: #15803d;
  font-weight: 800;
  font-size: 14px;
}
.geo-status-row.is-missing .geo-status-ok { color: #c2410c; }
.geo-badge {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 0 12px;
  border-radius: 999px;
  font-size: 13px;
  font-weight: 800;
}
.geo-badge.muted {
  background: #e9eef6;
  color: #334155;
  border: 1px solid #d5deea;
}
.geo-badge.ok {
  background: #dcfce7;
  color: #166534;
  border: 1px solid #bbf7d0;
}
.geo-alert {
  display: flex;
  align-items: center;
  gap: 14px;
  min-height: 58px;
  border-radius: 14px;
  padding: 0 16px;
  margin-bottom: 22px;
}
.geo-alert.soft-warning {
  background: #fff7ed;
  border: 1px solid #fed7aa;
  color: #475569;
}
.geo-alert.soft-ok {
  background: #f0fdf4;
  border: 1px solid #bbf7d0;
  color: #475569;
}
.geo-alert strong { color: #c2410c; }
.geo-alert.soft-ok strong { color: #15803d; }
.geo-alert strong::before {
  content: "⚠️";
  margin-right: 8px;
}
.geo-alert.soft-ok strong::before { content: "✓"; }
.geo-alert span {
  padding-left: 14px;
  border-left: 1px solid #fdba74;
  font-weight: 600;
}
.geo-alert.soft-ok span { border-left-color: #86efac; }
.geo-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-top: 4px;
}
.geo-actions.left { justify-content: flex-start; }
.geo-btn {
  min-height: 48px;
  border: 0;
  border-radius: 12px;
  padding: 0 18px;
  font-size: 15px;
  font-weight: 800;
  cursor: pointer;
  transition: transform .15s ease, box-shadow .15s ease, background .15s ease;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  line-height: 1;
}
.geo-btn:hover { transform: translateY(-1px); }
.geo-btn.primary {
  color: #fff;
  background: linear-gradient(180deg, #2f80ed, #1d4ed8);
  box-shadow: 0 12px 24px rgba(37, 99, 235, .22);
}
.geo-btn.secondary {
  background: #fff;
  color: #0f172a;
  border: 1px solid #d5deea;
}
.geo-btn.danger-light {
  background: #fff;
  color: #334155;
  border: 1px solid #d5deea;
}
.geo-btn.danger-light::before {
  content: "🗑️";
  margin-right: 8px;
}
.geo-help-warning {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin-top: 30px;
  padding: 18px 20px;
  border-radius: 15px;
  border: 1px solid #fb923c;
  background: #fff7ed;
}
.geo-help-warning strong {
  color: #c2410c;
  font-size: 15px;
}
.geo-help-warning strong::before {
  content: "🛡️";
  margin-right: 8px;
}
.geo-help-warning p {
  margin: 0;
  color: #475569;
  font-size: 14px;
  line-height: 1.45;
}
.geo-geocode-result {
  display: grid;
  gap: 5px;
  margin-top: 18px;
  padding: 15px 16px;
  border-radius: 14px;
  border: 1px solid #dbe3ef;
  background: #f8fafc;
}
.geo-geocode-result.is-ok {
  border-color: #bbf7d0;
  background: #f0fdf4;
}
.geo-geocode-result.is-warn {
  border-color: #fed7aa;
  background: #fff7ed;
}
.geo-geocode-result strong { color: #0f172a; }
.geo-geocode-result span,
.geo-geocode-result small { color: #475569; }
@media (max-width: 980px) {
  .geo-geocode-shell { grid-template-columns: 1fr; }
  .geo-grid.two,
  .geo-card--test .geo-grid.two { grid-template-columns: 1fr; }
  .geo-actions { flex-direction: column; align-items: stretch; }
  .geo-btn { width: 100%; }
}
@media (max-width: 560px) {
  .geo-geocode-shell {
    width: 100%;
    max-width: 100%;
    margin-top: 14px;
    overflow-x: hidden;
  }
  .geo-card {
    width: 100%;
    max-width: 100%;
    padding: 16px;
    border-radius: 16px;
    box-sizing: border-box;
  }
  .geo-card-header { align-items: flex-start; gap: 12px; }
  .geo-card-icon { width: 42px; height: 42px; font-size: 19px; border-radius: 12px; }
  .geo-card-header h2 { font-size: 20px; }
  .geo-card-header p { font-size: 13px; }
  .geo-divider { margin: 16px 0; }
  .geo-form { gap: 14px; }
  .geo-field input,
  .geo-field select { min-height: 46px; font-size: 16px; }
  .geo-option-row { min-height: 64px; padding: 12px; align-items: flex-start; }
  .geo-option-row small { font-size: 13px; }
  .geo-alert { align-items: flex-start; flex-direction: column; padding: 14px 16px; margin-bottom: 16px; }
  .geo-alert span { border-left: 0; padding-left: 0; }
  .geo-status-row { align-items: flex-start; flex-direction: column; padding: 12px 14px; }
  .geo-badge { max-width: 100%; overflow-wrap: anywhere; }
  .geo-help-warning { margin-top: 20px; padding: 15px 16px; }
}
@media (max-width: 430px) {
  .geo-card { padding: 14px; }
  .geo-card-header { gap: 10px; }
  .geo-card-icon { width: 38px; height: 38px; font-size: 18px; }
  .geo-card-header h2 { font-size: 18px; }
  .geo-option-row { gap: 11px; }
  .geo-toggle { width: 44px; height: 26px; }
  .geo-toggle::after { width: 20px; height: 20px; }
  .geo-option-row input:checked + .geo-toggle::after { transform: translateX(18px); }
}
.qn-generated-workorders,.qn-origin-wo-list,.qn-convert-file-picker{display:grid;gap:10px}.qn-origin-wo-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 0;border-top:1px solid #eef2f7}.qn-origin-wo-row:first-of-type{border-top:0}.qn-origin-wo-row span{font-weight:700;color:#334155;min-width:0;overflow-wrap:anywhere}.qn-origin-wo-row a{font-weight:800;color:var(--primary,#2563eb);text-decoration:none}.qn-file-picker-list{display:grid;gap:8px;margin-top:4px}.qn-file-check{display:grid!important;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:10px;padding:10px 12px;border:1px solid #e5eaf2;border-radius:14px;background:#fff;font-weight:600!important;cursor:pointer}.qn-file-check input{width:auto!important;min-height:auto!important;margin-top:3px}.qn-file-check span{display:grid;gap:2px;min-width:0}.qn-file-check b{overflow-wrap:anywhere;color:#1e293b}.qn-file-check small{color:#64748b;font-weight:600}.qn-convert-file-picker>small{color:#64748b}.qn-location-card .qn-location-data small{overflow-wrap:anywhere}@media(max-width:760px){.qn-origin-wo-row{display:grid;gap:6px}.qn-file-check{grid-template-columns:auto 1fr;padding:10px}.qn-convert-file-picker{padding:12px}}

#tk-page .tk-file-card--media,
#tk-page .tk-file-card--document{grid-column:span 2}
#tk-page .tk-file-media,
#tk-page .tk-file-doc-frame{background:var(--c-bg);border-bottom:1px solid var(--c-bd)}
#tk-page .tk-file-media video{width:100%;max-height:360px;display:block;background:#000}
#tk-page .tk-file-audio{padding:14px;background:var(--c-bg);border-bottom:1px solid var(--c-bd)}
#tk-page .tk-file-audio audio{width:100%}
#tk-page .tk-file-doc-frame iframe{width:100%;height:360px;border:0;display:block;background:#fff}
.qn-video-preview{width:100%;max-width:520px;max-height:340px;display:block;border-radius:12px;background:#000;border:1px solid var(--c-bd)}
.qn-doc-preview{width:100%;max-width:620px;height:360px;border:1px solid var(--c-bd);border-radius:12px;background:#fff;display:block}
@media (max-width: 720px){
  #tk-page .tk-file-card--media,
  #tk-page .tk-file-card--document{grid-column:1/-1}
  #tk-page .tk-file-media video{max-height:280px}
  #tk-page .tk-file-doc-frame iframe,.qn-doc-preview{height:300px}
}

.tk-geo-label{
  grid-column:1 / -1;
  padding:8px 10px;
  border:1px solid #dbeafe;
  border-radius:12px;
  background:#eff6ff;
  color:#1e3a8a;
  font-size:.84rem;
  font-weight:750;
}

.visit-card{margin-bottom:18px;max-width:100%;min-width:0;overflow-wrap:anywhere;box-sizing:border-box}
.visit-card .section-title{font-weight:800;margin-bottom:12px}
.visit-card .form-grid,.grid.two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.visit-card textarea,.visit-card select,.visit-card input[type="text"],.visit-card input[type="file"]{width:100%;min-width:0;box-sizing:border-box}
.visit-card .table-wrap{overflow:auto}.visit-card table{width:100%;border-collapse:collapse}.visit-card th,.visit-card td{padding:10px 12px;border-bottom:1px solid var(--c-border,#e5e7eb);text-align:left}
.visit-card .filters,.visit-filter-row{display:flex;gap:10px;align-items:end;flex-wrap:wrap;margin-bottom:14px}
.visit-form-warning{margin:0 0 12px;padding:10px 12px;border:1px solid #fecaca;border-radius:14px;background:#fef2f2;color:#991b1b;font-weight:750;line-height:1.35}
.visit-card label.is-invalid select,.visit-card label.is-invalid textarea,.visit-card label.is-invalid input{border-color:#ef4444;box-shadow:0 0 0 3px rgba(239,68,68,.12)}

.visit-list{display:grid;gap:10px;max-height:min(58vh,540px);overflow-y:auto;overflow-x:hidden;padding-right:4px;scrollbar-gutter:stable;min-height:0}
.visit-history-card{display:flex;flex-direction:column;max-height:min(72vh,760px);overflow:hidden;min-height:0;}
.visit-history-card .section-title,.visit-history-card .visit-filter-row{flex:0 0 auto;}
.visit-history-card .visit-list{flex:1 1 auto;min-height:0;overflow-y:auto;}

.visit-list-item{display:grid;grid-template-columns:1fr;gap:11px;align-items:start;padding:13px;border:1px solid var(--c-border,#e5e7eb);border-radius:16px;background:linear-gradient(180deg,#ffffff,#fbfdff);min-width:0;max-width:100%;box-sizing:border-box;box-shadow:0 12px 26px rgba(15,23,42,.045)}
.visit-list-item.qn-table-card{border-color:rgba(213,224,238,.92);border-radius:18px;background:rgba(255,255,255,.98);box-shadow:0 14px 34px rgba(15,23,42,.058)}
.visit-list-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;min-width:0;padding:0 0 10px;border-bottom:1px solid #edf2f8;background:transparent}.visit-list-title-block{min-width:0}.visit-list-head .eyebrow{display:block;margin:0 0 3px;color:#64748b;font-size:.68rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.visit-list-head h3{margin:0;color:#172033;font-size:1rem;font-weight:900;line-height:1.2;letter-spacing:-.02em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.visit-list-head p{margin:3px 0 0;font-size:.78rem;font-weight:750;line-height:1.35;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.visit-list-head .badge{flex:0 0 auto;margin-top:1px}
.visit-list-main{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:start;min-width:0}
.visit-list-main strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#172033}.visit-list-main .muted{font-weight:750;color:#64748b;white-space:nowrap}
.visit-list-meta{display:block;min-width:0;white-space:nowrap;overflow:visible;text-overflow:initial}
.visit-list-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-top:0}
.visit-list-fields>div{min-width:0;padding:8px 10px;border:1px solid #e5edf6;border-radius:12px;background:#f8fafc}.visit-list-fields span{display:block;font-size:.68rem;color:#64748b;font-weight:800;text-transform:uppercase;letter-spacing:.035em;line-height:1.2}.visit-list-fields strong{display:block;margin-top:2px;color:#172033;font-size:.84rem;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.visit-list-summary{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:8px;align-items:stretch;margin:0}.visit-list-summary>div{display:flex;align-items:center;justify-content:space-between;gap:9px;min-width:0;padding:7px 10px;border:1px solid #e5edf6;border-radius:14px;background:#f8fafc}.visit-list-summary span{flex:0 0 auto;font-size:.68rem;color:#64748b;font-weight:850;text-transform:uppercase;letter-spacing:.035em;line-height:1}.visit-list-summary strong{min-width:0;color:#172033;font-size:.84rem;line-height:1.18;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.visit-list-summary>div:first-child strong{max-width:92px}.visit-list-summary>div:nth-child(2) strong{max-width:100%;text-align:right}.visit-observation{margin:0;padding:10px 11px;border:1px solid #edf2f8;border-radius:14px;background:#f8fafc;color:#334155;min-width:0}.visit-observation span{display:block;margin-bottom:4px;color:#64748b;font-size:.68rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase;line-height:1}.visit-observation p{margin:0;color:#334155;font-size:.9rem;line-height:1.42;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.visit-list-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin-top:0;padding-top:2px}.visit-list-actions .badge{margin-right:auto}.inline-action-form{display:inline-flex;margin:0}

.qn-recorder,.visit-recorder{max-width:100%;min-width:0;overflow:hidden;box-sizing:border-box}
.visit-card .visit-recorder{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,auto) minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;margin:14px 0;padding:10px;border:1px dashed var(--border,#dfe4ed);border-radius:16px;background:#f8fafc;clear:both}
.qn-recorder .btn[hidden],.visit-recorder .btn[hidden]{display:none!important}
.qn-recorder.is-recording #qnRecordBtn,.qn-recorder.is-paused #qnRecordBtn,.visit-recorder.is-recording [data-visit-record-start],.visit-recorder.is-paused [data-visit-record-start]{display:none!important}
.qn-recorder.has-audio-ready,.visit-recorder.has-audio-ready{border-color:#bbf7d0;background:#f7fff9}.qn-recorder.is-recording,.visit-recorder.is-recording{border-color:#bfdbfe;background:#f8fbff}.qn-recorder.is-paused,.visit-recorder.is-paused{border-color:#fed7aa;background:#fff7ed}
.qn-recorder .qn-rec-timer,.visit-recorder .qn-rec-timer{font-variant-numeric:tabular-nums;max-width:100%;white-space:nowrap}.visit-recorder .qn-rec-timer{justify-self:end}.qn-recorder.is-recording .qn-rec-timer,.visit-recorder.is-recording .qn-rec-timer{color:#dc2626;border-color:#fecaca;background:#fff7f7}.qn-recorder.is-paused .qn-rec-timer,.visit-recorder.is-paused .qn-rec-timer{color:#9a3412;border-color:#fed7aa;background:#fff7ed}
.visit-recorder .btn{min-width:0;white-space:nowrap}.visit-recorder .qn-rec-state{min-width:0;color:var(--mut,#64748b);font-size:.88rem;overflow-wrap:anywhere}.visit-recorder .visit-speech-help,.visit-recorder .qn-waveform,.visit-recorder .qn-live-transcript,.visit-recorder .qn-recorded-list{grid-column:1/-1}
.visit-recorder .visit-speech-help{color:#64748b;font-size:.82rem;line-height:1.35}.visit-recorder .qn-live-transcript{width:100%;min-width:0;max-height:92px;overflow:auto;overflow-wrap:anywhere}.visit-recorder .qn-recorded-list{width:100%;min-width:0}
.qn-recorder .qn-waveform,.visit-recorder .qn-waveform,.visit-waveform{max-width:100%;min-width:0;overflow:hidden;box-sizing:border-box}.visit-waveform{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;padding:9px 10px;border:1px solid #dbeafe;border-radius:14px;background:#f8fbff;margin:0}
.qn-recorder canvas,.visit-recorder canvas,.visit-waveform canvas{display:block;width:100%;max-width:100%;min-width:0;height:54px;box-sizing:border-box;border-radius:10px;background:linear-gradient(180deg,#fff,#eff6ff)}.visit-waveform span{font-size:.76rem;font-weight:800;color:#64748b;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.qn-recorded-item audio,.qn-file-row audio{width:100%;max-width:100%}

.visit-detail-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;max-width:100%;min-width:0}.visit-detail-layout>.card,.visit-detail-card,.visit-related-wo-card{max-width:100%;min-width:0;box-sizing:border-box;overflow-wrap:anywhere}.visit-detail-card p{margin:8px 0}.visit-detail-summary{display:grid;gap:4px}.visit-related-wo-card{display:grid;gap:8px}.visit-related-wo-card p{margin:0}
.visit-detail-title-row,.visit-location-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap;min-width:0}.visit-detail-title-row h3{margin:.2rem 0 0;overflow-wrap:anywhere}
.visit-summary-strip,.visit-audit-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;min-width:0}.visit-summary-strip>div,.visit-audit-grid>div{padding:11px 12px;border:1px solid #e8eef7;border-radius:14px;background:#fbfdff;min-width:0}.visit-summary-strip span,.visit-audit-grid span,.visit-location-row span{display:block;color:#64748b;font-size:.76rem;text-transform:uppercase;letter-spacing:.04em;font-weight:800}.visit-summary-strip strong,.visit-audit-grid strong,.visit-location-row strong{display:block;margin-top:3px;overflow-wrap:anywhere}.visit-location-row small{display:block;margin-top:4px;color:#64748b}
.visit-observation-box{padding:13px 14px;border:1px solid #e8eef7;border-radius:16px;background:#f8fafc;line-height:1.55;overflow-wrap:anywhere}.visit-audit-box{display:flex;flex-direction:column;gap:14px;margin-top:12px;padding:10px 12px;border:1px solid #e5e7eb;border-radius:14px;background:#f8fafc;color:#334155;font-size:.84rem;line-height:1.45}.visit-audit-section{display:flex;flex-direction:column;gap:9px}.visit-audit-box strong{display:block;margin-bottom:4px;color:#0f172a}

.qn-audit-card{padding:12px;border:1px solid #e5edf6;border-radius:16px;background:#fbfdff;display:flex;flex-direction:column;gap:10px}.qn-audit-card h4{margin:0;color:#0f172a;font-size:.95rem}.qn-audit-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.qn-audit-head span{color:#7b8ca4;font-size:.72rem;font-weight:750}.qn-audit-section{display:flex;flex-direction:column;gap:7px}.qn-audit-section-title{color:#3f5878;font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.qn-audit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.qn-audit-grid>div{min-width:0;padding:8px 9px;border:1px solid #e8eef7;border-radius:12px;background:linear-gradient(180deg,#fff,#fbfdff)}.qn-audit-grid span{display:block;color:#71839b;font-size:.66rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;line-height:1.2}.qn-audit-grid strong{display:block;margin-top:3px;color:#25324a;font-size:.82rem;font-weight:760;line-height:1.26;overflow-wrap:anywhere}.qn-audit-pill{display:inline-flex!important;align-items:center;width:max-content;max-width:100%;min-height:22px;padding:3px 7px;border-radius:999px;background:#eef2f7;color:#475569;font-size:.72rem!important;font-weight:850!important}.qn-audit-pill--granted{background:#dcfce7;color:#166534}.qn-audit-pill--not_requested,.qn-audit-pill--not-requested{background:#eef2f7;color:#475569}.qn-audit-pill--denied,.qn-audit-pill--permission_denied,.qn-audit-pill--permission-denied{background:#fee2e2;color:#991b1b}.qn-audit-pill--unavailable,.qn-audit-pill--not_supported,.qn-audit-pill--not-supported{background:#fef3c7;color:#92400e}.visit-audit-map-actions,.qn-audit-map-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding-top:6px}.visit-audit-map-actions strong,.qn-audit-map-actions strong{margin-right:auto;color:#0f172a;font-size:.86rem}.qn-location-card--simple{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap;min-width:0}.qn-location-card--simple strong{overflow-wrap:anywhere}

.ticket-image-modal__head small{display:block;margin-top:4px;color:#64748b;font-size:.82rem;font-weight:700}.ticket-image-modal__body{position:relative}.ticket-image-modal .image-nav{position:absolute;top:50%;transform:translateY(-50%);z-index:3;width:44px;height:44px;border-radius:999px;background:#fff;color:#0f172a;border:1px solid #cbd5e1;box-shadow:0 14px 32px rgba(15,23,42,.22);font-size:2rem}.ticket-image-modal .image-nav.prev{left:14px}.ticket-image-modal .image-nav.next{right:14px}.ticket-image-modal .image-nav:disabled{opacity:.35;cursor:not-allowed}

.loc2-stats-row,.loc2-list-stats{grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch}.loc2-stat{min-width:0;overflow:hidden}.loc2-stat-label,.loc2-stat-action{white-space:normal;overflow-wrap:anywhere}

@media(max-width:1100px){.visit-list-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.visit-list-summary>div{justify-content:space-between}.visit-list-main{grid-template-columns:1fr}.visit-list-main .muted{white-space:normal}.visit-list-head{display:grid;grid-template-columns:1fr;gap:8px}.visit-list-head .badge{justify-self:start}.visit-list-head h3,.visit-list-head p{white-space:normal}}
@media(max-width:900px){.visit-summary-strip,.visit-audit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:820px){.visit-card .form-grid,.grid.two{grid-template-columns:1fr}}
@media(max-width:760px){
  .visit-card{overflow:hidden;padding-inline:14px}.visit-history-card{max-height:none;overflow:visible}.visit-list{max-height:none;overflow:visible;padding-right:0}.visit-list-item{padding:12px;gap:10px}.visit-list-main strong{white-space:normal}.visit-list-fields,.visit-detail-layout,.visit-summary-strip,.visit-audit-grid,.qn-audit-grid{grid-template-columns:1fr!important;gap:8px}.visit-list-summary{display:grid;grid-template-columns:1fr}.visit-list-summary>div{justify-content:space-between}.visit-list-actions{justify-content:stretch}.visit-list-actions .badge{margin-right:0}.visit-list-actions .btn{width:100%;justify-content:center}
  .visit-card .visit-recorder,.qn-recorder{display:grid!important;grid-template-columns:1fr!important;align-items:stretch;gap:8px;width:100%;max-width:100%;overflow:hidden}.visit-recorder .btn,.visit-recorder .qn-rec-state,.visit-recorder .qn-rec-timer,.visit-recorder .visit-speech-help,.visit-recorder .qn-waveform,.visit-recorder .qn-live-transcript,.visit-recorder .qn-recorded-list,.qn-recorder .btn,.qn-recorder .qn-rec-state,.qn-recorder .qn-rec-timer,.qn-recorder .qn-waveform,.qn-recorder .qn-recorded-list{grid-column:1/-1;width:100%;max-width:100%;justify-content:center;text-align:center}.visit-recorder .qn-rec-timer{justify-self:stretch}.visit-waveform{grid-template-columns:1fr;padding:8px;border-radius:14px}.visit-waveform canvas{height:46px}.visit-waveform span{text-align:center;font-size:.72rem}
  .visit-card input,.visit-card select,.visit-card textarea{font-size:16px;max-width:100%}.visit-card .request-btn-row,.visit-card .filters,.visit-filter-row,.visit-recorder .qn-record-controls{display:grid;grid-template-columns:1fr;gap:8px;width:100%;align-items:stretch}.visit-card .request-btn-row .btn,.visit-card .filters .btn,.visit-filter-row .btn,.visit-recorder .qn-record-controls .btn,.visit-location-row .btn,.visit-audit-map-actions .btn,.qn-audit-map-actions .btn,.qn-location-card--simple .btn{width:100%;justify-content:center}
  .visit-detail-title-row,.visit-location-row,.visit-audit-map-actions,.qn-audit-map-actions{display:grid;grid-template-columns:1fr;align-items:stretch}.qn-file-row audio{max-width:100%}.ticket-image-modal .image-nav{width:40px;height:40px}.ticket-image-modal .image-nav.prev{left:8px}.ticket-image-modal .image-nav.next{right:8px}.loc2-stats-row,.loc2-list-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
}
@media(max-width:420px){.loc2-stats-row,.loc2-list-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.loc2-stat-num{font-size:1.1rem}.loc2-stat-label{font-size:.72rem}}

.visit-card,.visit-detail-card,.visit-related-wo-card,.visit-list-item{min-width:0;max-width:100%;box-sizing:border-box;overflow-wrap:anywhere;}
.visit-recorder{position:relative!important;inset:auto!important;float:none!important;width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box;overflow:hidden;}
.visit-recorder .qn-rec-timer{position:static!important;inset:auto!important;float:none!important;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;}
.visit-recorder .visit-speech-help,.visit-recorder .qn-waveform,.visit-recorder .qn-live-transcript,.visit-recorder .qn-recorded-list{min-width:0;max-width:100%;box-sizing:border-box;}
.visit-recorder .qn-waveform canvas,.visit-waveform canvas{width:100%!important;max-width:100%!important;min-width:0!important;}
.visit-related-option{display:flex;align-items:center;gap:10px;width:100%;max-width:100%;min-width:0;box-sizing:border-box;padding:9px 11px;border:1px solid #d7e3f0;border-radius:12px;background:#fff;cursor:pointer;overflow:hidden;line-height:1.2;}
.visit-related-option input{width:16px;height:16px;margin:0;flex:0 0 auto;}
.visit-related-option span{display:flex;flex-direction:column;gap:1px;min-width:0;max-width:100%;overflow-wrap:anywhere;}
.visit-related-option strong{font-size:.9rem;line-height:1.18;}
.visit-related-option small{font-size:.76rem;color:#64748b;font-weight:600;line-height:1.25;}
.visit-filter-row{grid-template-columns:minmax(160px,1fr) minmax(220px,1.4fr) auto auto;align-items:end;}
.visit-filter-note{margin:6px 0 10px;padding:8px 10px;border:1px solid #dbeafe;border-radius:12px;background:#eff6ff;color:#1e3a8a;font-size:.86rem;}
.visit-audit-section>strong{font-size:.92rem;letter-spacing:.01em;color:#0f172a;}
.loc2-stats-row,.loc2-list-stats{grid-template-columns:repeat(4,minmax(0,1fr));}

.loc2-stat--wo{border-color:var(--loc2-border);background:var(--loc2-surface2);color:inherit;}
.loc2-stat--wo .loc2-stat-num{color:var(--loc2-red,#dc2626);}
.loc2-stat--wo .loc2-stat-label{color:var(--loc2-muted);}
.loc2-stat--wo .loc2-stat-action{color:var(--loc2-teal);}
.loc2-stat--wo:hover,.loc2-stat--wo:focus-visible{border-color:var(--loc2-border2);box-shadow:0 6px 18px rgba(15,23,42,.08);}

.loc2-stat-label,.loc2-stat-action{line-height:1.18;}
@media(max-width:760px){
  .visit-card{padding:13px!important;border-radius:18px;overflow:hidden;}
  .visit-recorder{display:grid!important;grid-template-columns:1fr!important;gap:8px!important;padding:10px!important;border-radius:16px!important;}
  .visit-recorder .btn,.visit-recorder .qn-rec-state,.visit-recorder .qn-rec-timer,.visit-recorder .visit-speech-help,.visit-recorder .qn-waveform,.visit-recorder .qn-live-transcript,.visit-recorder .qn-recorded-list{grid-column:1/-1!important;width:100%!important;max-width:100%!important;justify-content:center;text-align:center;}
  .visit-recorder .qn-rec-timer{justify-self:stretch!important;border-radius:14px;}
  .visit-waveform{grid-template-columns:1fr!important;gap:6px!important;}
  .visit-waveform span{text-align:center;white-space:normal;}
  .visit-filter-row{grid-template-columns:1fr!important;}
  .visit-related-option{padding:8px 10px;gap:9px;align-items:center;}
  .visit-related-option strong{font-size:.86rem;}
  .visit-related-option small{font-size:.72rem;}
  .loc2-stats-row,.loc2-list-stats{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}

.quick-notes-page.qn-page-modern{
  --qn-bg:#f6faff;
  --qn-surface:#ffffff;
  --qn-soft:#f8fbff;
  --qn-line:var(--border,#dfe7f2);
  --qn-line-strong:#cfdced;
  --qn-text:var(--c-text,#0f172a);
  --qn-muted:var(--mut,#60718c);
  --qn-muted-2:#8796ad;
  --qn-blue:var(--primary,#155bd5);
  --qn-blue-2:#0b47bd;
  --qn-shadow:0 16px 38px rgba(15,23,42,.06);
  --qn-shadow-soft:0 9px 24px rgba(15,23,42,.04);
  width:min(1580px,100%);
  max-width:100%;
  margin:0 auto;
  padding:0 0 30px;
  overflow-x:hidden;
  background:transparent;
}
.quick-notes-page .btn{transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease,background .16s ease;color .16s ease}
.quick-notes-page .btn:hover{transform:translateY(-1px)}
.quick-notes-page .qn-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:13px;margin-bottom:16px}
.quick-notes-page .metric-card{display:flex;align-items:center;gap:13px;min-height:78px;padding:14px 15px;border:1px solid rgba(213,224,238,.96);border-radius:17px;background:rgba(255,255,255,.94);box-shadow:var(--qn-shadow-soft);transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}
.quick-notes-page .metric-card:hover{transform:translateY(-1px);border-color:#c8d7ea;box-shadow:0 16px 34px rgba(15,23,42,.072)}
.quick-notes-page .metric-card p{margin:0 0 3px;color:var(--qn-muted);font-size:.75rem;font-weight:850;letter-spacing:.01em;line-height:1.2}
.quick-notes-page .metric-card strong{display:block;color:var(--qn-text);font-size:1.38rem;line-height:.98;letter-spacing:-.04em}
.quick-notes-page .metric-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;flex:0 0 auto;box-shadow:inset 0 0 0 1px rgba(255,255,255,.56)}
.quick-notes-page .metric-icon svg{width:21px;height:21px;display:block;stroke:currentColor;stroke-width:1.85;stroke-linecap:round;stroke-linejoin:round;fill:none}
.quick-notes-page .metric-blue{background:#eaf2ff;color:#155bd5}.quick-notes-page .metric-green{background:#eafaf1;color:#178a4b}.quick-notes-page .metric-orange{background:#fff4df;color:#b76a00}.quick-notes-page .metric-purple{background:#f1ebff;color:#6c3bd1}
.quick-notes-page .filter-panel.qn-filter-panel{display:grid;grid-template-columns:minmax(220px,1.55fr) minmax(112px,.78fr) minmax(118px,.8fr) minmax(118px,.8fr) minmax(118px,.8fr) minmax(108px,.72fr) auto;gap:9px;align-items:end;margin-bottom:14px;padding:13px;border:1px solid rgba(217,228,241,.92);border-radius:19px;background:linear-gradient(180deg,rgba(255,255,255,.97),rgba(248,251,255,.94));box-shadow:0 10px 26px rgba(15,23,42,.045);backdrop-filter:blur(6px)}
.quick-notes-page .filter-panel .field{display:flex;flex-direction:column;gap:5px;min-width:0;font-weight:720;color:#42526a}
.quick-notes-page .filter-panel .field span{color:#7b8ca4;font-size:.66rem;text-transform:uppercase;letter-spacing:.07em;font-weight:820;line-height:1.15}
.quick-notes-page .filter-panel input,.quick-notes-page .filter-panel select{width:100%;min-width:0;max-width:100%;min-height:37px;padding:7px 9px;border:1px solid #dce7f3;border-radius:11px;background:#fbfdff;font:inherit;font-size:.82rem;color:#24344e;outline:none;box-shadow:inset 0 1px 0 rgba(255,255,255,.82);transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}
.quick-notes-page .filter-panel input[type="date"]{min-width:0;max-width:100%;padding-inline:8px;font-size:.79rem;letter-spacing:-.015em;}
.quick-notes-page .filter-panel input:focus,.quick-notes-page .filter-panel select:focus{border-color:#94b8ff;background:#fff;box-shadow:0 0 0 3px rgba(21,91,213,.12)}
.quick-notes-page .filter-panel .field-search{position:relative}
.quick-notes-page .filter-panel .field-search input{padding-left:35px}
.quick-notes-page .filter-panel .field-search::after{content:"";position:absolute;left:12px;bottom:10px;width:16px;height:16px;background:no-repeat center/16px 16px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%237c8da7' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-3.5-3.5'/%3E%3C/svg%3E");pointer-events:none}
.quick-notes-page .filter-actions{display:flex;gap:8px;align-items:center;justify-content:flex-end;flex-wrap:wrap}.quick-notes-page .filter-actions .btn{min-height:38px;padding:7px 12px;border-radius:11px;font-size:.84rem;white-space:nowrap}.quick-notes-page .filter-actions .btn.ghost{background:#fff;border-color:#dbe5f1;color:#46566f}
.quick-notes-page .workspace.qn-workspace{display:grid;grid-template-columns:minmax(0,1.62fr) minmax(335px,.84fr);gap:14px;align-items:start}
.quick-notes-page .table-card.qn-table-card,.quick-notes-page .qn-detail-panel{min-width:0;border:1px solid rgba(213,224,238,.92);border-radius:20px;background:rgba(255,255,255,.97);box-shadow:0 14px 34px rgba(15,23,42,.058);overflow:hidden}
.quick-notes-page .section-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 16px;border-bottom:1px solid #edf2f8;background:linear-gradient(180deg,#fbfdff,#fff)}.quick-notes-page .section-head h3{margin:0;font-size:.95rem;letter-spacing:-.01em;color:#172033}.quick-notes-page .section-head span{color:var(--qn-muted);font-weight:800;font-size:.8rem}
.quick-notes-page .qn-table-scroll{overflow:auto;max-height:min(70vh,740px);scrollbar-width:thin;scrollbar-color:#c9d6e6 transparent}
.quick-notes-page .notes-table{width:100%;border-collapse:collapse;border-spacing:0;min-width:0;table-layout:fixed;background:#fff}
.quick-notes-page .notes-table th{position:sticky;top:0;z-index:2;text-align:left;padding:8px 10px;border-bottom:1px solid #e5ebf4;background:#f8fbff;color:#64748b;font-size:.65rem;text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;font-weight:850}
.quick-notes-page .notes-table td{padding:8px 10px;border-bottom:1px solid #eef2f7;vertical-align:middle;color:#26344c;font-size:.84rem;line-height:1.32;background:#fff;transition:background .15s ease,color .15s ease;min-width:0;overflow-wrap:anywhere}
.quick-notes-page .notes-table tr:hover td{background:#f7faff}
.quick-notes-page .notes-table tr[data-href]{cursor:pointer}
.quick-notes-page .notes-table tr[data-href]:focus-visible td{background:#eef6ff;outline:0}
.quick-notes-page .notes-table tr.is-selected td{background:#f2f7ff;box-shadow:none}
.quick-notes-page .notes-table tr.is-selected td:first-child{box-shadow:inset 3px 0 0 var(--qn-blue)}
.quick-notes-page .notes-table tr.is-selected td:not(:first-child){border-left:0;outline:0}
.quick-notes-page .notes-table td strong{display:block;color:#0f172a;font-size:.87rem;letter-spacing:-.01em;line-height:1.22}.quick-notes-page .notes-table td small{display:-webkit-box;margin-top:2px;color:var(--qn-muted);max-width:100%;white-space:normal;overflow:hidden;text-overflow:ellipsis;font-size:.75rem;line-height:1.3;-webkit-line-clamp:2;-webkit-box-orient:vertical}

.quick-notes-page .notes-table th:nth-child(1),.quick-notes-page .notes-table td:nth-child(1){width:136px;white-space:nowrap}
.quick-notes-page .notes-table th:nth-child(2),.quick-notes-page .notes-table td:nth-child(2){width:23%}
.quick-notes-page .notes-table th:nth-child(3),.quick-notes-page .notes-table td:nth-child(3){width:20%;white-space:normal;word-break:normal;overflow-wrap:break-word;color:#52627a;font-size:.8rem}
.quick-notes-page .notes-table th:nth-child(4),.quick-notes-page .notes-table td:nth-child(4){width:116px;white-space:normal;color:#52627a;font-size:.8rem}
.quick-notes-page .notes-table th:nth-child(5),.quick-notes-page .notes-table td:nth-child(5){width:150px}
.quick-notes-page .notes-table th:nth-child(6),.quick-notes-page .notes-table td:nth-child(6){width:98px;white-space:nowrap}
.quick-notes-page .notes-table th:nth-child(7),.quick-notes-page .notes-table td:nth-child(7){width:112px;white-space:nowrap}
.quick-notes-page .notes-table th:nth-child(8),.quick-notes-page .notes-table td:nth-child(8){width:72px;white-space:nowrap;text-align:right}
.quick-notes-page .qn-code{font-size:.78rem;font-weight:900;letter-spacing:.025em;color:var(--qn-blue);text-decoration:none}.quick-notes-page .qn-code:hover{text-decoration:underline;text-underline-offset:3px}
.quick-notes-page .status-badge{display:inline-flex;align-items:center;justify-content:center;min-height:23px;padding:3px 8px;border-radius:999px;font-size:.7rem;font-weight:850;background:#e5e7eb;color:#334155;white-space:nowrap}.quick-notes-page .status-badge.info{background:#dbeafe;color:#1d4ed8}.quick-notes-page .status-badge.ok,.quick-notes-page .status-badge.success{background:#dcfce7;color:#166534}.quick-notes-page .status-badge.warn{background:#fff7ed;color:#9a3412}.quick-notes-page .status-badge.muted{background:#e5e7eb;color:#374151}
.quick-notes-page .evidence-chips{display:flex;gap:5px;flex-wrap:wrap}.quick-notes-page .evidence-chip{display:inline-flex;align-items:center;min-height:20px;padding:3px 6px;border-radius:999px;background:#eef2f7;color:#334155;font-size:.67rem;font-weight:820;white-space:nowrap}.quick-notes-page .evidence-chip--audio{background:#eef2ff;color:#3730a3}.quick-notes-page .evidence-chip--image{background:#ecfdf5;color:#047857}.quick-notes-page .evidence-chip--location{background:#e0f2fe;color:#0369a1}.quick-notes-page .evidence-chip--wo{background:#fef3c7;color:#92400e}
.quick-notes-page .notes-table .btn.small,.quick-notes-page .notes-table .btn{min-height:30px;padding:5px 9px;border-radius:9px;font-size:.76rem;font-weight:820}
.quick-notes-page .qn-detail-close{display:inline-grid;place-items:center;width:32px;height:32px;border-radius:999px;border:1px solid #dbe5f1;background:#fff;color:#52627a;text-decoration:none;font-size:1.15rem;font-weight:800;line-height:1;transition:background .15s ease,border-color .15s ease,color .15s ease,transform .15s ease}
.quick-notes-page .qn-detail-close:hover{background:#f3f7fc;border-color:#cbd9ea;color:#172033;transform:translateY(-1px)}
.quick-notes-page .qn-detail-panel{position:sticky;top:84px;max-height:calc(100dvh - 104px);overflow:auto;padding:0;scrollbar-width:thin;scrollbar-color:#c9d6e6 transparent}.quick-notes-page .qn-detail-panel .empty-detail{margin:0;border:0;box-shadow:none;min-height:150px;display:grid;place-items:center;text-align:center;padding:18px}.quick-notes-page .qn-detail-panel .empty-detail h3{margin:0 0 6px;font-size:1.02rem}.quick-notes-page .qn-detail-panel .empty-detail p{margin:0;color:var(--qn-muted);font-size:.88rem;line-height:1.42}.quick-notes-page .qn-detail-panel .qn-detail-card{border:0;border-radius:0;box-shadow:none;padding:13px;gap:10px}.quick-notes-page .qn-detail-head{padding-bottom:12px;border-bottom:1px solid #eef2f7}.quick-notes-page .qn-detail-head .qn-code{display:inline-flex;margin-bottom:5px}.quick-notes-page .qn-detail-head h3{font-size:1.1rem;margin:0 0 5px;line-height:1.18;letter-spacing:-.02em}.quick-notes-page .qn-detail-head p{margin:0;color:var(--qn-muted);font-size:.82rem}.quick-notes-page .qn-head-actions .btn,.quick-notes-page .qn-head-actions .badge{min-height:34px;font-size:.8rem;border-radius:10px}.quick-notes-page .qn-text-block,.quick-notes-page .qn-location-card,.quick-notes-page .qn-audit-card,.quick-notes-page .qn-card-lite{border-radius:15px;border:1px solid #e8eef7;background:#fbfdff}.quick-notes-page .qn-text-block,.quick-notes-page .qn-location-card,.quick-notes-page .qn-card-lite{padding:10px}.quick-notes-page .qn-file-row{border-radius:14px;background:#fff;padding:9px 10px}.quick-notes-page .qn-file-preview{display:flex;gap:8px;align-items:center;justify-content:flex-end;flex-wrap:wrap;min-width:0}.quick-notes-page .qn-file-preview audio{width:min(300px,100%)}.quick-notes-page .qn-meta-grid>div{padding:10px;border-radius:13px}.quick-notes-page .qn-meta-grid span{font-size:.68rem}.quick-notes-page .qn-meta-grid strong{font-size:.86rem}
.quick-notes-page .qn-recorder{width:100%;min-width:0;display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:9px;border-radius:14px;background:#f8fbff;border:1px dashed var(--qn-line);overflow:hidden}.quick-notes-page .qn-recorder .btn{min-height:35px;padding:7px 11px;border-radius:11px;font-size:.86rem}.quick-notes-page .qn-rec-state{font-size:.82rem;color:var(--qn-muted)}.quick-notes-page .qn-rec-timer{margin-left:auto;font-weight:850;color:#0f172a;font-size:.82rem}.quick-notes-page .qn-waveform{display:block;max-width:100%;min-width:0;flex:1 1 240px;border-radius:11px;background:#eef6ff}.quick-notes-page .qn-live-box,.quick-notes-page .qn-recorded-list{width:100%}

.quick-notes-page .qn-audit-card{padding:9px 10px;border-radius:14px;gap:8px;background:linear-gradient(180deg,#fbfdff,#f9fbff);border-color:#eaf0f8;box-shadow:0 8px 18px rgba(15,23,42,.035)}
.quick-notes-page .qn-audit-head{gap:8px;padding-bottom:1px}
.quick-notes-page .qn-audit-head h4{font-size:.86rem;letter-spacing:-.005em;font-weight:850;color:#172033}
.quick-notes-page .qn-audit-head span{font-size:.64rem;color:#8d9caf;font-weight:700;line-height:1.25}
.quick-notes-page .qn-audit-section{gap:5px}
.quick-notes-page .qn-audit-section + .qn-audit-section{padding-top:3px;border-top:1px solid rgba(231,238,247,.78)}
.quick-notes-page .qn-audit-section-title{font-size:.62rem;color:#607894;letter-spacing:.07em;font-weight:850}
.quick-notes-page .qn-audit-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}
.quick-notes-page .qn-audit-grid>div{min-width:0;padding:6px 7px;border-radius:10px;background:rgba(255,255,255,.82);border-color:#edf3fa;box-shadow:none}
.quick-notes-page .qn-audit-grid span{font-size:.58rem;color:#8090a5;font-weight:760;letter-spacing:.045em;line-height:1.15}
.quick-notes-page .qn-audit-grid strong{margin-top:2px;font-size:.74rem;font-weight:650;color:#26354b;line-height:1.22;overflow-wrap:anywhere;word-break:break-word}
.quick-notes-page .qn-audit-pill{min-height:18px;padding:2px 6px;font-size:.66rem!important;font-weight:780!important}
.quick-notes-page .qn-audit-map-actions{margin-top:1px;padding:7px;border:1px solid #edf3fa;border-radius:12px;background:rgba(255,255,255,.72);gap:6px}
.quick-notes-page .qn-audit-map-actions strong{font-size:.66rem;color:#7c8ca2;text-transform:uppercase;letter-spacing:.065em;font-weight:850;margin-right:auto}
.quick-notes-page .qn-audit-map-actions .btn{min-height:28px;padding:4px 8px;border-radius:9px;font-size:.72rem;font-weight:800}
.quick-notes-page .qn-location-card small,.quick-notes-page .qn-text-block,.quick-notes-page .qn-detail-head p{color:#6f7f94}
.quick-notes-page .evidence-chip--text{background:#fff7ed;color:#9a3412}
@media(max-width:1320px){.quick-notes-page .qn-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.quick-notes-page .filter-panel.qn-filter-panel{grid-template-columns:repeat(3,minmax(0,1fr))}.quick-notes-page .filter-panel .field-search{grid-column:span 2}.quick-notes-page .filter-actions{justify-content:flex-start}}
@media(max-width:1100px){.quick-notes-page .workspace.qn-workspace{grid-template-columns:1fr}.quick-notes-page .qn-detail-panel{position:relative;top:auto;max-height:none}.quick-notes-page .qn-table-scroll{max-height:none}}
@media(max-width:760px){.quick-notes-page.qn-page-modern{padding-inline:0;background:transparent}.quick-notes-page .qn-actions--top,.quick-notes-page .qn-metrics{grid-template-columns:1fr;gap:8px}.quick-notes-page .metric-card{min-height:66px;padding:12px}.quick-notes-page .metric-icon{width:36px;height:36px;border-radius:12px}.quick-notes-page .filter-panel.qn-filter-panel{grid-template-columns:1fr;padding:12px;border-radius:18px;gap:9px}.quick-notes-page .filter-panel .field-search{grid-column:auto}.quick-notes-page .filter-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}.quick-notes-page .filter-actions .btn{width:100%;justify-content:center}.quick-notes-page .table-card.qn-table-card,.quick-notes-page .qn-detail-panel{border-radius:18px}.quick-notes-page .notes-table{min-width:0}.quick-notes-page .section-head{padding:11px 12px}.quick-notes-page .qn-recorder{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center}.quick-notes-page .qn-recorder .btn{width:100%;justify-content:center}.quick-notes-page .qn-recorder .qn-waveform,.quick-notes-page .qn-recorder .qn-recorded-list{grid-column:1 / -1}.quick-notes-page .qn-rec-timer{margin-left:0;text-align:right}.quick-notes-page .qn-audit-card{padding:8px}.quick-notes-page .qn-audit-grid{grid-template-columns:1fr!important;gap:5px}.quick-notes-page .qn-audit-grid>div{padding:6px 7px}.quick-notes-page .qn-audit-map-actions{display:flex!important;align-items:center;gap:6px}.quick-notes-page .qn-audit-map-actions .btn{width:auto!important;flex:1 1 130px;justify-content:center}.quick-notes-page .qn-audit-map-actions strong{flex:1 0 100%;margin:0}.quick-notes-page .qn-detail-panel.is-open{position:fixed;inset:0;z-index:11800;width:100%;height:100dvh;max-height:100dvh;padding:10px;background:#f6f8fb;overflow:auto}}

.quick-notes-page .notes-table{table-layout:auto;min-width:620px}
.quick-notes-page .notes-table th,.quick-notes-page .notes-table td{overflow-wrap:break-word;word-break:normal;hyphens:auto}
.quick-notes-page .notes-table th:nth-child(1),.quick-notes-page .notes-table td:nth-child(1){width:150px;white-space:nowrap}
.quick-notes-page .notes-table th:nth-child(2),.quick-notes-page .notes-table td:nth-child(2){width:34%;min-width:170px}
.quick-notes-page .notes-table th:nth-child(3),.quick-notes-page .notes-table td:nth-child(3){width:132px;white-space:normal;color:#52627a;font-size:.8rem}
.quick-notes-page .notes-table th:nth-child(4),.quick-notes-page .notes-table td:nth-child(4){width:160px;white-space:normal}
.quick-notes-page .notes-table th:nth-child(5),.quick-notes-page .notes-table td:nth-child(5){width:118px;white-space:nowrap}

.quick-notes-page .notes-table th:nth-child(n+8),.quick-notes-page .notes-table td:nth-child(n+8){width:auto}
.quick-notes-page .qn-event{grid-template-columns:minmax(105px,.7fr) minmax(0,1fr);gap:6px 10px;padding:8px 0;align-items:start}
.quick-notes-page .qn-event small{grid-column:2;color:#7a8aa1;line-height:1.25;overflow-wrap:anywhere}
.quick-notes-page .qn-event strong{font-size:.86rem;color:#22314a;line-height:1.25}
.quick-notes-page .qn-events{overflow:hidden}
@media(max-width:760px){
  .quick-notes-page .qn-table-scroll{overflow:visible;max-height:none}
  .quick-notes-page .notes-table{display:block;min-width:0;width:100%}
  .quick-notes-page .notes-table thead{display:none}
  .quick-notes-page .notes-table tbody{display:grid;gap:10px;width:100%}
  .quick-notes-page .notes-table tr{display:grid;grid-template-columns:1fr;gap:7px;padding:11px;border:1px solid #e5edf7;border-radius:14px;background:#fff;box-shadow:0 8px 20px rgba(15,23,42,.045);min-width:0}
  .quick-notes-page .notes-table tr.is-selected{background:#f5f9ff;border-color:#cfe1ff;box-shadow:inset 3px 0 0 var(--qn-blue),0 8px 20px rgba(15,23,42,.045)}
  .quick-notes-page .notes-table tr.is-selected td,.quick-notes-page .notes-table tr:hover td{background:transparent!important;box-shadow:none!important}
  .quick-notes-page .notes-table td{display:grid;grid-template-columns:minmax(82px,.42fr) minmax(0,1fr);gap:8px;align-items:start;width:100%!important;max-width:100%;padding:0;border:0;background:transparent!important;text-align:left!important;font-size:.82rem;white-space:normal!important;min-width:0;overflow-wrap:anywhere}
  .quick-notes-page .notes-table td::before{content:"";color:#7c8ca4;font-size:.62rem;font-weight:900;text-transform:uppercase;letter-spacing:.07em;line-height:1.2;padding-top:2px}
  .quick-notes-page .notes-table td:nth-child(1)::before{content:"Código"}
  .quick-notes-page .notes-table td:nth-child(2)::before{content:"Resumen"}
  .quick-notes-page .notes-table td:nth-child(3)::before{content:"Creado por"}
  .quick-notes-page .notes-table td:nth-child(4)::before{content:"Evidencia"}
  .quick-notes-page .notes-table td:nth-child(5)::before{content:"Work Order"}

  .quick-notes-page .notes-table .qn-code{white-space:normal;overflow-wrap:anywhere}
  .quick-notes-page .notes-table .evidence-chips{justify-content:flex-start}
  .quick-notes-page .qn-events{padding:12px}
  .quick-notes-page .qn-event{grid-template-columns:1fr;gap:3px;padding:8px 0}
  .quick-notes-page .qn-event small{grid-column:auto}
}

.quick-notes-page .workspace.qn-workspace.is-list-only{
  grid-template-columns: minmax(0, 1fr);
}
.quick-notes-page .qn-detail-panel.is-empty{
  display:none !important;
}
.quick-notes-page .notes-table tr[data-href]{
  cursor:pointer;
}
.quick-notes-page .notes-table tr[data-href] td{
  user-select:none;
}
.quick-notes-page .notes-table tr[data-href] a.qn-code{
  position:relative;
  z-index:2;
}
.quick-notes-page .notes-table tr[data-href]:focus-visible{
  outline:2px solid rgba(37,99,235,.35);
  outline-offset:-2px;
}
.quick-notes-page .notes-table tr[data-href]:focus-visible td{
  background:#eef6ff;
}
@media(max-width:760px){
  .quick-notes-page .workspace.qn-workspace.is-list-only{display:block;}
  .quick-notes-page .notes-table tr[data-href] td{user-select:auto;}
}

.quick-notes-page .qn-list-head{align-items:center;flex-wrap:wrap;gap:10px}
.quick-notes-page .qn-list-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap;min-width:0}
.quick-notes-page .qn-list-actions .btn{min-height:32px;padding:6px 10px;border-radius:10px;font-size:.78rem;font-weight:850}
.quick-notes-page .filter-panel input::placeholder{color:#9aa8ba}
.quick-notes-page .filter-actions .btn{white-space:nowrap}
body:not(.login-page):has(.quick-notes-page){background:#f4f8fc!important}
body:not(.login-page):has(.quick-notes-page)::before{display:none!important}
body:not(.login-page):has(.quick-notes-page) .main{background:linear-gradient(180deg,#f7fafd 0%,#eef5fb 100%)!important}
.visit-page-tools{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin:0 0 14px;min-width:0}
.visit-page-tools .visit-nav-btn{min-height:34px;padding:7px 12px;border-radius:11px;font-size:.84rem;font-weight:850;box-shadow:0 8px 18px rgba(15,23,42,.045)}
@media(max-width:760px){
  .quick-notes-page .qn-list-head{align-items:flex-start}
  .quick-notes-page .qn-list-actions{width:100%;justify-content:space-between}
  .quick-notes-page .qn-list-actions .btn{flex:0 0 auto}
  .quick-notes-page .filter-panel input[type="date"]{font-size:16px}
  .visit-page-tools{justify-content:stretch;margin-bottom:10px}
  .visit-page-tools .btn{width:100%;justify-content:center}
}

#tk-page .tk-file-section{padding:14px 24px 0}
#tk-page .tk-file-section + .tk-file-section{padding-top:18px}
#tk-page .tk-file-section-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}
#tk-page .tk-file-section-head h4{margin:0;font-size:15px;font-weight:900;color:var(--c-text)}
#tk-page .tk-file-section-head span{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:24px;padding:0 8px;border-radius:999px;background:var(--c-bg);border:1px solid var(--c-bd);color:var(--c-muted);font-size:12px;font-weight:900}
#tk-page .tk-file-section .tk-files-grid{padding:0!important}
#tk-page .tk-file-actions{margin-top:2px!important;gap:8px!important}
@media (max-width: 720px){#tk-page .tk-file-section{padding:12px 16px 0}}

.ticket-pdf-modal .ticket-pdf-modal__card{width:min(94vw,980px)!important;height:min(92vh,820px)!important}
.ticket-pdf-modal .ticket-pdf-modal__body{padding:0!important;background:#f8fafc!important;align-items:stretch!important;justify-content:stretch!important;position:relative}
.ticket-pdf-modal [data-ticket-pdf-frame]{width:100%;height:100%;min-height:62vh;border:0;background:#fff}

.ticket-pdf-modal__loading{position:absolute;inset:auto 18px 18px 18px;display:flex;align-items:center;justify-content:center;padding:12px 14px;border-radius:14px;border:1px solid #dbeafe;background:#eff6ff;color:#1d4ed8;font-weight:700;box-shadow:0 16px 34px rgba(15,23,42,.12)}
.ticket-pdf-modal__loading[hidden]{display:none!important}
.ticket-pdf-modal__fallback{position:absolute;left:18px;right:18px;bottom:18px;display:flex;flex-direction:column;gap:4px;padding:12px 14px;border-radius:14px;border:1px solid #fde68a;background:#fffbeb;color:#92400e;box-shadow:0 16px 34px rgba(15,23,42,.14)}
.ticket-pdf-modal__fallback[hidden]{display:none!important}
@media (max-width:720px){.ticket-pdf-modal .ticket-pdf-modal__card{width:100%!important;height:88dvh!important}.ticket-pdf-modal [data-ticket-pdf-frame]{min-height:55vh}.ticket-pdf-modal__fallback{left:12px;right:12px;bottom:12px}}
#tk-page .tk-file-thumb--video video{width:100%!important;height:100%!important;max-height:190px!important;object-fit:cover!important;display:block!important;background:#0f172a!important}
#tk-page .tk-file-card--video{min-width:0!important}
#tk-page .tk-file-thumb--action{appearance:none;border:0;padding:0;cursor:pointer;position:relative;text-align:inherit}
#tk-page .tk-file-thumb--action:focus-visible{outline:3px solid rgba(37,99,235,.35);outline-offset:3px}
#tk-page .tk-video-play-badge{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:46px;height:46px;border-radius:999px;display:flex;align-items:center;justify-content:center;background:rgba(15,23,42,.72);color:#fff;font-size:18px;font-weight:900;box-shadow:0 14px 34px rgba(15,23,42,.24);pointer-events:none}
.ticket-video-modal .ticket-video-modal__card{width:min(94vw,980px)!important;max-height:92vh!important}
.ticket-video-modal .ticket-video-modal__body{padding:0!important;background:#020617!important;align-items:center!important;justify-content:center!important;position:relative}
.ticket-video-modal [data-ticket-video-player]{width:100%;max-height:72vh;display:block;background:#020617}
.ticket-video-modal__fallback{position:absolute;left:18px;right:18px;bottom:18px;display:flex;flex-direction:column;gap:4px;padding:12px 14px;border-radius:14px;border:1px solid #fde68a;background:#fffbeb;color:#92400e;box-shadow:0 16px 34px rgba(15,23,42,.14)}
.ticket-video-modal__fallback[hidden]{display:none!important}
@media (max-width:720px){.ticket-video-modal .ticket-video-modal__card{width:100%!important;max-height:88dvh!important}.ticket-video-modal [data-ticket-video-player]{max-height:62dvh}.ticket-video-modal__fallback{left:12px;right:12px;bottom:12px}}

#tk-page .tk-files-grid--images{
  align-items:stretch!important;
}
#tk-page .tk-files-grid--images .tk-file-card{
  display:flex!important;
  flex-direction:column!important;
  height:100%!important;
  min-height:248px!important;
  min-width:0!important;
}
#tk-page .tk-files-grid--images .tk-file-thumb{
  height:150px!important;
  aspect-ratio:auto!important;
  flex:0 0 150px!important;
  display:block!important;
  overflow:hidden!important;
  background:#0f172a!important;
}
#tk-page .tk-files-grid--images .tk-file-thumb img,
#tk-page .tk-files-grid--images .tk-file-thumb video{
  width:100%!important;
  height:100%!important;
  max-height:none!important;
  object-fit:cover!important;
  display:block!important;
}
#tk-page .tk-files-grid--images .tk-file-meta{
  flex:1 1 auto!important;
  min-height:92px!important;
}
#tk-page .tk-files-grid--images .tk-file-name{
  display:-webkit-box!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
  word-break:break-word!important;
}
#tk-page .tk-files-grid--images .tk-file-actions,
#tk-page .tk-files-grid--images .tk-file-meta > .btn{
  margin-top:auto!important;
}
#tk-page .tk-files-grid--images .tk-file-actions{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
}
#tk-page .tk-files-grid--images .tk-file-actions .btn{
  flex:1 1 auto!important;
  justify-content:center!important;
}
@media (max-width:720px){
  #tk-page .tk-files-grid--images .tk-file-card{min-height:238px!important;}
  #tk-page .tk-files-grid--images .tk-file-thumb{height:140px!important;flex-basis:140px!important;}
}
@media (max-width:420px){
  #tk-page .tk-files-grid--images .tk-file-thumb{height:132px!important;flex-basis:132px!important;}
}

.visit-geostamp-detail{display:flex;flex-direction:column;gap:12px}
.visit-geostamp-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;min-width:0}
.visit-geostamp-card{display:flex;flex-direction:column;gap:10px;min-width:0;padding:12px;border:1px solid #e8eef7;border-radius:16px;background:linear-gradient(180deg,#fff,#fbfdff)}
.visit-geostamp-card-head span,.visit-geostamp-meta span{display:block;color:#64748b;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;font-weight:850}
.visit-geostamp-card-head strong,.visit-geostamp-meta strong{display:block;margin-top:3px;color:#0f172a;overflow-wrap:anywhere}
.visit-geostamp-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;min-width:0}
.visit-geostamp-meta>div{min-width:0;padding:8px 9px;border:1px solid #edf2f8;border-radius:12px;background:#fff}
.visit-files-card{display:flex;flex-direction:column;gap:12px}
.visit-files-card .tk-file-section{padding:0!important}
.visit-files-card .tk-file-section + .tk-file-section{padding-top:4px!important}
.visit-files-card .tk-file-section-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}
.visit-files-card .tk-file-section-head h4{margin:0;font-size:15px;font-weight:900;color:#0f172a}
.visit-files-card .tk-file-section-head span{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:24px;padding:0 8px;border-radius:999px;background:#f8fafc;border:1px solid #e2e8f0;color:#64748b;font-size:12px;font-weight:900}
.visit-files-grid{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(170px,1fr))!important;gap:10px!important;padding:0!important;align-items:stretch!important}
.visit-file-card{border:1px solid #e2e8f0!important;border-radius:14px!important;overflow:hidden!important;background:#fff!important;display:flex!important;flex-direction:column!important;min-width:0!important;height:100%!important;transition:box-shadow .14s,transform .14s!important}
.visit-file-card:hover{box-shadow:0 18px 45px rgba(15,23,42,.10)!important;transform:translateY(-2px)!important}
.visit-files-grid--media .visit-file-card{min-height:248px!important}
.visit-files-grid--media .tk-file-thumb{height:150px!important;flex:0 0 150px!important;display:block!important;overflow:hidden!important;background:#0f172a!important;aspect-ratio:auto!important;border:0!important;padding:0!important}
.visit-files-grid--media .tk-file-thumb img,.visit-files-grid--media .tk-file-thumb video{width:100%!important;height:100%!important;max-height:none!important;object-fit:cover!important;display:block!important;background:#0f172a!important}
.visit-file-card .tk-file-meta{padding:9px 11px!important;display:flex!important;flex-direction:column!important;gap:6px!important;flex:1 1 auto!important;min-height:92px!important}
.visit-file-card .tk-file-name{display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;word-break:break-word!important;font-size:.78rem!important;font-weight:700!important;color:#0f172a!important;line-height:1.35!important}
.visit-file-card .tk-file-actions{margin-top:auto!important;display:flex!important;flex-wrap:wrap!important;gap:8px!important;align-items:center!important}
.visit-file-card .tk-file-actions .btn{flex:1 1 auto!important;justify-content:center!important}
.visit-file-card .tk-file-doc-frame{background:#f8fafc;border-bottom:1px solid #e2e8f0;height:260px;overflow:hidden}
.visit-file-card .tk-file-doc-frame iframe{width:100%;height:100%;border:0;display:block;background:#fff}
.visit-file-card .tk-file-audio{padding:14px;background:#f8fafc;border-bottom:1px solid #e2e8f0}
.visit-file-card .tk-file-audio audio{width:100%}
@media(max-width:900px){.visit-geostamp-grid{grid-template-columns:1fr}.visit-geostamp-meta{grid-template-columns:1fr}}
@media(max-width:720px){.visit-files-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))!important}.visit-files-grid--media .visit-file-card{min-height:238px!important}.visit-files-grid--media .tk-file-thumb{height:140px!important;flex-basis:140px!important}.visit-file-card .tk-file-doc-frame{height:300px}.visit-file-card .tk-file-actions .btn{width:100%}}
@media(max-width:420px){.visit-files-grid{grid-template-columns:1fr!important}.visit-files-grid--media .tk-file-thumb{height:132px!important;flex-basis:132px!important}}

.visit-location-row--simple{align-items:center}
.visit-location-row--simple strong{font-size:.98rem;line-height:1.35}
.visit-audio-list{display:grid;gap:10px;min-width:0}
.visit-audio-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,420px) auto;align-items:center;gap:10px 12px;padding:12px;border:1px solid #e8eef7;border-radius:16px;background:#fff;box-shadow:0 10px 24px rgba(15,23,42,.04);min-width:0}
.visit-audio-main{display:flex;align-items:center;gap:10px;min-width:0}
.visit-audio-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:#eef2ff;color:#3730a3;flex:0 0 auto}
.visit-audio-copy{display:grid;gap:2px;min-width:0}
.visit-audio-copy strong{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;color:#0f172a;font-size:.86rem;line-height:1.28;word-break:break-word}
.visit-audio-copy span{color:#64748b;font-size:.78rem;font-weight:700}
.visit-audio-card audio{width:100%;min-width:180px;max-width:420px}
@media(max-width:820px){.visit-audio-card{grid-template-columns:1fr}.visit-audio-card audio{max-width:none;min-width:0}.visit-audio-card .tk-file-actions .btn{width:100%;justify-content:center}}

.visit-filter-card{margin-bottom:14px;padding:12px 14px;border-radius:18px;overflow:visible}.visit-filter-bar{display:grid;grid-template-columns:minmax(150px,.8fr) minmax(260px,1.35fr) auto auto;gap:10px;align-items:end;margin:0}.visit-filter-bar label{display:grid;gap:5px;min-width:0;margin:0}.visit-filter-bar label span{color:#64748b;font-size:.68rem;font-weight:900;letter-spacing:.055em;text-transform:uppercase}.visit-filter-bar select{width:100%;min-width:0;min-height:38px;border-radius:12px;border:1px solid #dbe4ef;background:#fff;color:#172033;font-weight:700}.visit-filter-bar .btn{min-height:38px;white-space:nowrap}
.visit-history{display:grid;gap:10px;min-width:0}.visit-history-head{margin:2px 0 2px;padding:0;background:transparent}.visit-history-head h2{margin:1px 0 0;color:#172033;font-size:1.02rem;font-weight:900;letter-spacing:-.02em}.visit-history .visit-list{max-height:none;overflow:visible;padding-right:0;display:grid;gap:12px}.visit-list-item.qn-table-card{padding:14px 15px;gap:12px;border-color:#dce6f2;border-radius:20px;background:linear-gradient(180deg,#fff,#fbfdff);box-shadow:0 12px 30px rgba(15,23,42,.055)}.visit-list-head{padding-bottom:11px;border-bottom:1px solid #eef3f8}.visit-list-head h3{font-size:1.04rem}.visit-list-head p{font-size:.8rem}.visit-list-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.visit-list-summary>div{display:grid;gap:3px;justify-content:start;align-content:start;padding:9px 11px;border-radius:14px;background:#f8fafc}.visit-list-summary span,.visit-location-row--list span{font-size:.67rem;font-weight:900;color:#64748b;text-transform:uppercase;letter-spacing:.055em}.visit-list-summary strong{font-size:.88rem;white-space:normal;overflow:visible;text-overflow:clip}.visit-location-row--list{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 11px;border:1px solid #e5edf6;border-radius:15px;background:#f8fafc;min-width:0}.visit-location-row--list strong{display:-webkit-box;margin-top:3px;color:#172033;font-size:.88rem;font-weight:850;line-height:1.32;overflow:hidden;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow-wrap:anywhere}.visit-location-row--list .btn{white-space:nowrap;align-self:center}.visit-observation{background:#fff;border-color:#e8eef7}.visit-observation p{font-size:.9rem;line-height:1.45;color:#334155}.visit-observation p:only-child{margin:0}.visit-list-actions{padding-top:0}.visit-list-actions .btn{min-height:34px}
@media(max-width:900px){.visit-filter-bar{grid-template-columns:1fr 1fr auto auto}.visit-location-row--list{grid-template-columns:1fr}}
@media(max-width:760px){.visit-filter-bar .btn,.visit-location-row--list .btn{width:100%;justify-content:center}.visit-filter-card{padding:12px}.visit-filter-bar{grid-template-columns:1fr}.visit-list-item.qn-table-card{padding:13px}.visit-list-summary{grid-template-columns:1fr}.visit-location-row--list{gap:8px}.visit-list-head .badge{justify-self:start}}

.visit-list-item--compact,
.visit-list-item.qn-table-card{padding:11px 12px;gap:8px;border-radius:17px}
.visit-list-item .visit-list-head{padding-bottom:8px;gap:10px}
.visit-list-item .visit-list-head .eyebrow{margin-bottom:2px;font-size:.64rem}
.visit-list-item .visit-list-head h3{font-size:.98rem;line-height:1.16}
.visit-list-item .visit-list-head p{margin-top:2px;font-size:.76rem;line-height:1.25}
.visit-list-summary--compact{display:grid;grid-template-columns:minmax(118px,170px) minmax(0,1fr);gap:8px;align-items:stretch;margin:0}
.visit-summary-chip,
.visit-list-summary--compact>.visit-location-row--list{min-width:0;border:1px solid #e5edf6;border-radius:13px;background:#f8fafc;padding:8px 10px}
.visit-summary-chip{display:grid;gap:3px;align-content:center}
.visit-summary-chip span,
.visit-list-summary--compact .visit-location-row--list span{font-size:.64rem;font-weight:900;color:#64748b;text-transform:uppercase;letter-spacing:.052em;line-height:1}
.visit-summary-chip strong{font-size:.84rem;line-height:1.18;color:#172033;white-space:nowrap}
.visit-list-summary--compact .visit-location-row--list{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;margin:0}
.visit-list-summary--compact .visit-location-row--list strong{display:-webkit-box;margin-top:3px;color:#172033;font-size:.84rem;font-weight:850;line-height:1.25;overflow:hidden;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow-wrap:anywhere}
.visit-list-summary--compact .visit-location-row--list .btn{min-height:30px;padding:6px 10px;white-space:nowrap}
.visit-list-item .visit-observation{padding:8px 10px;border-radius:13px}
.visit-list-item .visit-observation span{margin-bottom:3px;font-size:.64rem}
.visit-list-item .visit-observation p{font-size:.86rem;line-height:1.34;-webkit-line-clamp:2}
.visit-list-item .visit-list-actions{padding-top:0;margin-top:-1px}
.visit-list-item .visit-list-actions .btn{min-height:32px;padding:7px 11px}
@media(max-width:760px){
  .visit-list-summary--compact{grid-template-columns:1fr}
  .visit-list-summary--compact .visit-location-row--list{grid-template-columns:1fr;gap:7px}
  .visit-list-summary--compact .visit-location-row--list strong{-webkit-line-clamp:2}
  .visit-list-item.qn-table-card{padding:12px;gap:9px}
}

.visit-filter-card--compact{margin-bottom:12px;padding:10px 12px;border-radius:16px}
.visit-filter-shell{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end}
.visit-filter-card--compact .visit-filter-bar{grid-template-columns:minmax(140px,.75fr) minmax(240px,1.35fr) auto auto;gap:8px}
.visit-filter-card--compact .visit-nav-btn{min-height:38px;white-space:nowrap}
.visit-summary-chip--duration{background:linear-gradient(180deg,#f8fbff,#eef6ff)!important;border-color:#d8e8fb!important}
.visit-location-row--highlight{background:linear-gradient(180deg,#f9fffc,#eefaf3)!important;border-color:#d9f0e2!important}
.visit-observation--highlight{background:linear-gradient(180deg,#fffdf8,#fff7e8)!important;border-color:#f4e4c4!important}
.visit-list-item .visit-summary-chip--duration span,
.visit-list-item .visit-location-row--highlight span,
.visit-list-item .visit-observation--highlight span{color:#475569}
.visit-list-item .visit-summary-chip--duration strong,
.visit-list-item .visit-location-row--highlight strong{color:#0f172a}
.visit-list-item .visit-observation--highlight p{color:#263447}
@media(max-width:900px){.visit-filter-shell{grid-template-columns:1fr}.visit-filter-card--compact .visit-nav-btn{justify-self:start}.visit-filter-card--compact .visit-filter-bar{grid-template-columns:1fr 1fr auto auto}}
@media(max-width:760px){.visit-filter-card--compact .visit-filter-bar{grid-template-columns:1fr}.visit-filter-card--compact .visit-nav-btn{width:100%;justify-content:center}}

.visit-history .visit-list{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
  align-items:start;
}
.visit-history .visit-list .empty-state{
  grid-column:1 / -1;
}
.visit-history .visit-list-item.qn-table-card{
  height:auto;
  min-width:0;
  max-width:100%;
}
@media(min-width:980px){
  .visit-history .visit-list{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
  }
}
@media(min-width:1500px){
  .visit-history .visit-list{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}
@media(max-width:760px){
  .visit-history .visit-list{
    grid-template-columns:1fr;
    gap:12px;
  }
}

.visit-list-item .visit-list-title-block{min-width:0;flex:1 1 auto}
.visit-list-item .visit-list-head{align-items:flex-start}
.visit-list-item .visit-list-head .visit-list-meta{display:block!important;max-width:100%;white-space:nowrap!important;overflow:visible!important;text-overflow:initial!important;overflow-wrap:normal;word-break:normal;line-height:1.35!important}
.visit-list-item .visit-list-head .badge{flex:0 0 auto}
@media(min-width:901px){.visit-list-item .visit-list-head .visit-list-meta{white-space:nowrap!important}}
@media(max-width:700px){.visit-list-item .visit-list-head .visit-list-meta{white-space:normal!important;overflow-wrap:break-word}.visit-list-item .visit-list-head .badge{margin-top:2px}}

body.page-people-teams .create-team-modal .request-btn-row.create-team-actions,
body.page-people-teams .create-team-modal .create-team-actions{
  position:static !important;
  bottom:auto !important;
  z-index:auto !important;
  display:flex !important;
  justify-content:flex-end !important;
  align-items:center !important;
  gap:10px !important;
  flex-wrap:wrap !important;
  width:100%;
  margin-top:18px !important;
  padding-top:14px !important;
  border-top:1px solid var(--line) !important;
  background:transparent !important;
}
body.page-people-teams .create-team-modal .create-team-actions .btn{
  position:static !important;
  flex:0 0 auto !important;
  width:auto !important;
  min-width:132px;
  justify-content:center;
}
body.page-people-teams .create-team-modal .create-team-actions .btn.ghost{
  background:#fff !important;
  border-color:#cbd5e1 !important;
  color:#0f172a !important;
  box-shadow:0 8px 18px rgba(15,23,42,.06);
}
body.page-people-teams .create-team-modal .create-team-actions .btn.ghost:hover{
  background:#f8fafc !important;
  border-color:#94a3b8 !important;
  color:#0f172a !important;
}
body.page-people-teams .create-team-modal .create-team-actions .btn.primary{
  background:linear-gradient(135deg,var(--pt-blue) 0%,#155eef 100%) !important;
  border-color:var(--pt-blue) !important;
  color:#fff !important;
}
@media(max-width:640px){
  body.page-people-teams .create-team-modal .request-btn-row.create-team-actions,
  body.page-people-teams .create-team-modal .create-team-actions{
    flex-direction:column !important;
    align-items:stretch !important;
  }
  body.page-people-teams .create-team-modal .create-team-actions .btn{
    width:100% !important;
    min-width:0;
  }
}

.sysdev-actions form{margin:0;display:inline-flex;align-items:center;}
.sysdev-actions .badge,.sysdev-actions .muted,.sysdev-actions .btn{white-space:nowrap;}
@media(max-width:700px){.sysdev-actions form,.sysdev-actions .btn{width:100%;}.sysdev-actions .btn{justify-content:center;}}

.settings-inline-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 14px}.settings-inline-actions .btn{min-height:34px}.settings-inline-actions .muted{line-height:1.35}
.qn-convert-attachment-section{display:grid;gap:10px;margin-top:14px}.qn-convert-attachment-section h3{display:flex;align-items:center;gap:8px;margin:0;color:#0f172a;font-size:.92rem;font-weight:900}.qn-convert-attachment-section h3 span{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:22px;padding:0 7px;border-radius:999px;background:#eef6ff;border:1px solid #dbeafe;color:#1d4ed8;font-size:.74rem;font-weight:900}.qn-file-picker-list{display:grid;gap:10px}.qn-file-picker-list--images{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.qn-file-check--image,.qn-file-check--audio,.qn-file-check--document{min-width:0;border:1px solid #e5eaf2;border-radius:16px;background:linear-gradient(180deg,#fff,#f8fbff);box-shadow:0 8px 18px rgba(15,23,42,.035);transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.qn-file-check--image:hover,.qn-file-check--audio:hover,.qn-file-check--document:hover{border-color:#cbdaf0;box-shadow:0 12px 24px rgba(15,23,42,.07)}.qn-file-check--image,.qn-file-check--audio,.qn-file-check--document{display:grid!important;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:11px;padding:12px}.qn-file-check--image{grid-template-columns:auto 112px minmax(0,1fr);align-items:center;min-height:116px}.qn-file-check--document{grid-template-columns:auto 42px minmax(0,1fr);align-items:center}.qn-file-check--audio{align-items:start}.qn-file-check--image input,.qn-file-check--audio input,.qn-file-check--document input{width:18px!important;height:18px!important;margin:2px 0 0!important;accent-color:var(--primary,#2563eb)}.qn-file-thumb{display:block;width:112px;height:88px;border-radius:14px;overflow:hidden;background:#f1f5f9;border:1px solid #dbe4ef;box-shadow:inset 0 0 0 1px rgba(255,255,255,.65)}.qn-file-thumb img{width:100%;height:100%;display:block;object-fit:cover}.qn-file-thumb{cursor:zoom-in}.qn-file-meta{display:grid;gap:4px;min-width:0;align-content:center}.qn-file-meta b{display:-webkit-box;color:#1e293b;overflow:hidden;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow-wrap:anywhere;line-height:1.25}.qn-file-meta small{color:#64748b;font-weight:700}.qn-file-check--audio audio{width:100%;max-width:420px;margin-top:6px}.qn-file-doc-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:#f8fafc;border:1px solid #e5eaf2;font-size:1.1rem;text-decoration:none}.qn-file-doc-icon:hover{background:#eef6ff;border-color:#bfdbfe}@media(max-width:640px){.settings-inline-actions{align-items:stretch}.settings-inline-actions .btn{width:100%;justify-content:center}.qn-file-picker-list--images{grid-template-columns:1fr}.qn-file-check--image{grid-template-columns:auto 86px minmax(0,1fr);min-height:96px}.qn-file-thumb{width:86px;height:68px}.qn-file-check--audio audio{max-width:100%}}

.settings-pdf-logo-panel{
  display:grid;
  grid-template-columns:minmax(140px,220px) minmax(0,1fr);
  gap:16px;
  align-items:center;
  padding:14px;
  border:1px solid #e5eaf2;
  border-radius:18px;
  background:#f8fafc;
}
.settings-pdf-logo-preview{
  min-height:96px;
  display:grid;
  place-items:center;
  border:1px dashed #cbd5e1;
  border-radius:16px;
  background:#0f2749;
  overflow:hidden;
}
.settings-pdf-logo-preview img{
  display:block;
  max-width:190px;
  max-height:84px;
  width:auto;
  height:auto;
  object-fit:contain;
}
.settings-pdf-logo-placeholder{
  color:#cbd5e1;
  font-size:.82rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.settings-pdf-logo-copy{
  display:grid;
  gap:9px;
}
.settings-pdf-logo-copy strong{
  color:#172033;
  font-size:.98rem;
}
.settings-pdf-logo-copy p{
  margin:0;
  color:#64748b;
  font-size:.86rem;
  line-height:1.45;
}
.settings-pdf-logo-meta{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}
.settings-pdf-logo-meta span{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:3px 9px;
  border-radius:999px;
  background:#eef6ff;
  color:#1e3a8a;
  font-size:.76rem;
  font-weight:800;
}
@media(max-width:760px){
  .settings-pdf-logo-panel{
    grid-template-columns:1fr;
  }
  .settings-pdf-logo-preview img{
    max-width:220px;
  }
}

.visit-list-actions--pdf{align-items:center;gap:8px}.visit-pdf-inline-form{display:inline-flex;margin:0}.visit-pdf-config-hint{margin:3px 0 0;text-align:right;overflow-wrap:anywhere}.settings-visit-pdf-summary{display:grid;gap:6px;margin:0 0 14px;padding:12px 14px;border:1px solid #e5eaf2;border-radius:14px;background:#f8fafc}.settings-visit-pdf-summary strong{color:#172033}.settings-visit-pdf-summary span{display:block;color:#475569;font-size:.86rem;line-height:1.45;overflow-wrap:anywhere}@media(max-width:760px){.visit-pdf-inline-form{width:100%}.visit-pdf-inline-form .btn{width:100%;justify-content:center}.visit-pdf-config-hint{text-align:left}.settings-visit-pdf-summary{padding:11px}}

.visit-list-actions--pdf{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  flex-wrap:wrap;
}
.visit-list-actions--pdf .inline-form,
.visit-list-actions--pdf .visit-pdf-inline-form{
  display:inline-flex;
  align-items:center;
  margin:0;
  width:auto;
}
.visit-list-actions--pdf .btn{
  white-space:nowrap;
}
.visit-location-row--link{
  color:inherit;
  text-decoration:none;
  cursor:pointer;
}
.visit-location-row--link:hover strong,
.visit-location-row--link:focus-visible strong{
  text-decoration:underline;
}
.visit-location-row--link::after{
  content:"↗";
  font-size:12px;
  opacity:.58;
  margin-left:auto;
  align-self:center;
}
.visit-list-summary--compact .visit-location-row--link{
  grid-template-columns:minmax(0,1fr) auto;
}
.visit-pdf-send-modal__card{
  max-width:min(640px, calc(100vw - 24px));
}
.visit-pdf-send-form{
  display:grid;
  gap:14px;
  padding:0 18px 18px;
}
.visit-pdf-send-notice{
  padding:11px 13px;
  border:1px solid #dbeafe;
  border-radius:14px;
  background:#eff6ff;
  color:#1e3a8a;
  font-size:.88rem;
  line-height:1.45;
  overflow-wrap:anywhere;
}
.visit-pdf-send-notice.is-warning{
  border-color:#fed7aa;
  background:#fff7ed;
  color:#9a3412;
}
.visit-pdf-send-form .field-block{
  display:grid;
  gap:6px;
}
.visit-pdf-send-form .field-block span{
  font-size:.78rem;
  font-weight:900;
  color:#475569;
  text-transform:uppercase;
  letter-spacing:.045em;
}
.visit-pdf-send-form .field-block small{
  color:#64748b;
  font-size:.78rem;
}
.visit-pdf-send-actions{
  justify-content:flex-end;
  margin-top:2px;
}
@media(max-width:760px){
  .visit-list-actions--pdf{
    justify-content:stretch;
  }
  .visit-list-actions--pdf .inline-form,
  .visit-list-actions--pdf .visit-pdf-inline-form,
  .visit-list-actions--pdf .btn{
    width:100%;
  }
  .visit-location-row--link::after{
    margin-left:0;
    justify-self:end;
  }
  .visit-pdf-send-form{
    padding:0 14px 14px;
  }
  .visit-pdf-send-actions{
    display:grid;
    grid-template-columns:1fr;
    align-items:stretch;
  }
  .visit-pdf-send-actions .btn{
    width:100%;
    justify-content:center;
  }
}

.visit-files-card .visit-upload-form{padding:12px 0 14px!important;border-bottom:1px solid #e2e8f0!important;margin:0 0 4px!important}
.visit-files-card .visit-dropzone{border:2px dashed #cbd5e1!important;border-radius:16px!important;padding:22px 16px!important;text-align:center!important;background:#f8fafc!important;cursor:pointer!important;transition:border-color .14s,background .14s,box-shadow .14s!important;display:flex!important;flex-direction:column!important;align-items:center!important;gap:8px!important}
.visit-files-card .visit-dropzone:hover,.visit-files-card .visit-dropzone.is-drag{border-color:#2563eb!important;background:#eff6ff!important;box-shadow:0 14px 34px rgba(37,99,235,.10)!important}
.visit-files-card .visit-dropzone .tk-dz-title{font-weight:900;color:#0f172a;font-size:15px}
.visit-files-card .visit-dropzone .tk-dz-sub{font-size:.82rem;color:#64748b;max-width:620px;line-height:1.4}
.visit-files-card .visit-upload-actions{display:flex!important;justify-content:flex-end!important;align-items:center!important;gap:8px!important;margin-top:12px!important}
.visit-files-card .visit-file-pending-item span:first-child{display:flex;flex-direction:column;gap:2px;min-width:0}
.visit-files-card .visit-file-pending-item strong{font-size:.85rem;color:#0f172a;word-break:break-word}
.visit-files-card .visit-file-pending-item small{font-size:.74rem;color:#64748b;font-weight:700;text-transform:uppercase;letter-spacing:.03em}
.visit-files-card .visit-upload-readonly{margin-bottom:6px!important}
@media(max-width:640px){.visit-files-card .visit-upload-actions{display:grid!important;grid-template-columns:1fr!important}.visit-files-card .visit-upload-actions .btn{width:100%;justify-content:center}.visit-files-card .visit-dropzone{padding:18px 12px!important}}

.qn-recorder .voice-pause-control,
.visit-recorder .voice-pause-control{order:1}
.qn-recorder .voice-finish-control,
.visit-recorder .voice-finish-control{order:2}
.qn-recorder.is-recording .voice-finish-control,
.qn-recorder.is-paused .voice-finish-control,
.visit-recorder.is-recording .voice-finish-control,
.visit-recorder.is-paused .voice-finish-control{display:inline-flex!important;visibility:visible!important}
.qn-recorder.is-recording .voice-pause-control,
.qn-recorder.is-paused .voice-pause-control,
.visit-recorder.is-recording .voice-pause-control,
.visit-recorder.is-paused .voice-pause-control{display:inline-flex!important;visibility:visible!important}
@media(max-width:760px){
  .qn-recorder .voice-pause-control,
  .qn-recorder .voice-finish-control,
  .visit-recorder .voice-pause-control,
  .visit-recorder .voice-finish-control{width:100%;justify-content:center}
}

.error-logs-page{
  display:grid;
  gap:14px;
}
.error-logs-hero{
  padding:18px;
  background:linear-gradient(135deg,#ffffff 0%,#f8fbff 58%,#eef6ff 100%);
}
.error-logs-hero__main{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
}
.error-logs-hero h2{
  margin:2px 0 6px;
  font-size:clamp(1.45rem,2vw,2rem);
  letter-spacing:-.03em;
  color:#0f172a;
}
.error-logs-hero p{
  max-width:760px;
  line-height:1.5;
  margin:0;
}
.error-logs-topnav{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  flex-wrap:wrap;
  flex:0 0 auto;
}
.error-metric-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}
.error-metric-card{
  display:grid;
  gap:3px;
  min-height:96px;
  padding:14px 15px;
  border:1px solid #e5edf7;
  border-radius:18px;
  background:#fff;
  box-shadow:0 12px 30px rgba(15,23,42,.06);
  text-decoration:none;
  color:#0f172a;
  transition:transform .14s ease,box-shadow .14s ease,border-color .14s ease;
}
.error-metric-card:hover,
.error-metric-card:focus-visible{
  transform:translateY(-1px);
  box-shadow:0 16px 38px rgba(15,23,42,.09);
  border-color:#cbdff6;
}
.error-metric-card span{
  font-size:.78rem;
  font-weight:900;
  color:#475569;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.error-metric-card strong{
  font-size:2rem;
  line-height:1;
  letter-spacing:-.05em;
}
.error-metric-card small{
  color:#64748b;
  font-size:.78rem;
  font-weight:700;
}
.error-metric-card--active{background:linear-gradient(180deg,#fff 0%,#fff7ed 100%)}
.error-metric-card--reopened{background:linear-gradient(180deg,#fff 0%,#fef2f2 100%)}
.error-metric-card--verified{background:linear-gradient(180deg,#fff 0%,#eff6ff 100%)}
.error-metric-card--resolved{background:linear-gradient(180deg,#fff 0%,#ecfdf5 100%)}
.error-log-filter-card{
  padding:14px 16px;
}
.error-log-filter-card__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:10px;
}
.error-log-filter-card__head h3{
  margin:1px 0 0;
  color:#0f172a;
  letter-spacing:-.02em;
}
.error-log-filter-bar{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}
.error-log-list-card,
.error-log-detail-card{
  overflow:hidden;
}
.error-log-table-head{
  background:#fbfdff;
}
.error-log-table-wrap{
  border-radius:0 0 18px 18px;
}
.error-log-table{
  min-width:1040px;
}
.error-log-table thead th{
  font-size:.74rem;
  text-transform:uppercase;
  letter-spacing:.06em;
  color:#475569;
  background:#f8fbff;
  border-bottom:1px solid #e2e8f0;
}
.error-log-table tbody tr:nth-child(even) td{
  background:#fbfdff;
}
.error-log-table tbody tr:hover td{
  background:#f3f8ff;
}
.error-log-table td{
  vertical-align:middle;
}
.error-log-count{
  text-align:center;
  font-weight:900;
  color:#0f172a;
}
.error-log-route{
  display:inline-block;
  max-width:210px;
  color:#334155;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.error-log-summary{
  min-width:260px;
  color:#334155;
  line-height:1.45;
}
.error-log-empty-state{
  margin:4px;
  min-height:116px;
  justify-content:center;
}
.error-log-detail-head{
  padding:18px;
  border-bottom:1px solid #e2e8f0;
}
.error-log-detail-head h2{
  margin:2px 0 6px;
  color:#0f172a;
  letter-spacing:-.03em;
}
.error-log-actions{
  justify-content:flex-end;
}
.error-detail-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  padding:14px 16px;
}
.error-detail-item{
  display:grid;
  gap:5px;
  min-width:0;
  padding:12px;
  border:1px solid #e7edf5;
  border-radius:16px;
  background:#fbfdff;
}
.error-detail-item span{
  font-size:.72rem;
  font-weight:900;
  color:#64748b;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.error-detail-item strong{
  min-width:0;
  color:#0f172a;
  font-size:.92rem;
  overflow-wrap:anywhere;
}
.error-detail-item small{
  color:#64748b;
  font-weight:700;
}
.error-detail-item code,
.error-detail-item pre,
.error-log-technical-summary pre{
  max-width:100%;
  overflow:auto;
  white-space:pre-wrap;
  overflow-wrap:anywhere;
  word-break:break-word;
}
.error-detail-item--wide{
  grid-column:span 2;
}
.error-detail-item--full{
  grid-column:1 / -1;
}
.error-log-validation-note{
  margin:0 16px 14px;
}
.error-log-technical-summary{
  display:grid;
  gap:8px;
  margin:0 16px 16px;
  padding:14px;
  border:1px solid #e7edf5;
  border-radius:16px;
  background:#fff;
}
.error-log-technical-summary pre,
.error-detail-item pre{
  margin:0;
  padding:10px;
  border-radius:12px;
  background:#0f172a;
  color:#e2e8f0;
  font-size:.78rem;
  line-height:1.5;
}
.error-log-occurrence-head{
  padding:0 16px 12px;
  border-top:1px solid #e2e8f0;
  padding-top:16px;
}
.error-log-occurrence-detail-row td{
  background:#f8fafc;
}
.error-detail-grid--technical{
  padding:4px;
  grid-template-columns:1fr;
}
@media(max-width:1100px){
  .error-metric-grid,
  .error-detail-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:760px){
  .error-logs-hero__main,
  .error-log-filter-card__head,
  .error-log-detail-head{
    display:grid;
    grid-template-columns:1fr;
  }
  .error-logs-topnav,
  .error-log-actions,
  .error-log-filter-bar{
    justify-content:flex-start;
  }
  .error-logs-topnav .btn,
  .error-log-filter-bar .btn,
  .error-log-actions .btn,
  .error-log-actions form{
    width:100%;
  }
  .error-logs-topnav .btn,
  .error-log-filter-bar .btn,
  .error-log-actions .btn{
    justify-content:center;
  }
  .error-metric-grid,
  .error-detail-grid{
    grid-template-columns:1fr;
  }
  .error-detail-item--wide,
  .error-detail-item--full{
    grid-column:auto;
  }
}

body.dt-after-login:not(.login-page) .app-shell{align-items:flex-start}
body.dt-after-login:not(.login-page) .sidebar{align-self:flex-start;margin-top:0}
body.dt-after-login:not(.login-page) .main{margin-top:0}

.visit-pdf-send-notice.is-success{
  border-color:#bbf7d0;
  background:#f0fdf4;
  color:#166534;
}
.visit-pdf-send-form .btn[aria-busy="true"]{
  cursor:wait;
  opacity:.82;
}
.visit-pdf-send-form textarea:focus{
  outline:0;
  border-color:#2563eb;
  box-shadow:0 0 0 3px rgba(37,99,235,.12);
}
.qn-recorder.is-recording,.qn-recorder.is-paused{
  border-color:#bfdbfe;
  background:#eff6ff;
}
.qn-recorder.is-processing{
  opacity:.92;
}

body.page-admin-modules .sysdev-sidebar-visibility-form{margin-top:16px;}
body.page-admin-modules .sysdev-sidebar-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:12px;background:#eef4ff;color:#1d4ed8;font-size:18px;flex:0 0 auto;}
body.page-admin-modules .sysdev-sidebar-copy{display:block;min-width:0;}
body.page-admin-modules .sysdev-sidebar-copy strong{display:block;color:#0f172a;font-size:.92rem;font-weight:900;line-height:1.2;}
body.page-admin-modules .sysdev-sidebar-copy small{display:block;margin-top:3px;color:#64748b;font-size:.76rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
body.page-admin-modules .sysdev-module-visibility-head{border-color:rgba(37,99,235,.24);background:linear-gradient(180deg,#f8fbff,#ffffff);}
body.page-admin-modules .sysdev-visibility-switch{display:inline-grid;grid-template-columns:auto auto;align-items:center;gap:8px;min-width:82px;padding:5px 8px;border:1px solid rgba(148,163,184,.34);border-radius:999px;background:#f8fafc;color:#64748b;font-size:.72rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase;box-shadow:inset 0 1px 0 rgba(255,255,255,.72);}
body.page-admin-modules .sysdev-visibility-switch .switch-track{position:relative;display:block;width:34px;height:20px;border-radius:999px;background:#cbd5e1;transition:background .16s ease;}
body.page-admin-modules .sysdev-visibility-switch .switch-knob{position:absolute;top:3px;left:3px;width:14px;height:14px;border-radius:999px;background:#fff;box-shadow:0 1px 4px rgba(15,23,42,.22);transition:transform .16s ease;}
body.page-admin-modules .sysdev-visibility-switch .switch-off{display:inline;}
body.page-admin-modules .sysdev-visibility-switch .switch-on{display:none;color:#1d4ed8;}
body.page-admin-modules .sysdev-visibility-switch.is-locked{border-color:rgba(220,38,38,.28);background:#fff1f2;color:#be123c;min-width:104px;}
body.page-admin-modules .sysdev-visibility-switch.is-locked .switch-track{background:#be123c;}
body.page-admin-modules .sysdev-visibility-switch.is-locked .switch-knob{transform:translateX(14px);}

body.page-admin-modules .sysdev-module-visibility-debug{margin-top:14px;}
body.page-admin-modules .sysdev-module-visibility-debug summary{cursor:pointer;display:flex;align-items:center;gap:8px;}
body.page-admin-modules .sysdev-module-visibility-debug-table{margin-top:12px;}
body.page-admin-modules .sysdev-module-visibility-debug .table--modules{min-width:1120px;}

body.page-admin-modules .sysdev-access-panel{margin-top:16px;padding:0;border:0;background:transparent;}
body.page-admin-modules .sysdev-access-hero{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;padding:18px;border:1px solid rgba(148,163,184,.26);border-radius:22px;background:linear-gradient(135deg,#ffffff 0%,#f8fbff 55%,#eef6ff 100%);box-shadow:0 16px 34px rgba(15,23,42,.06);}
body.page-admin-modules .sysdev-access-hero h2{margin:2px 0 6px;color:#0f172a;font-size:1.35rem;line-height:1.15;font-weight:950;}
body.page-admin-modules .sysdev-access-hero p{max-width:860px;margin:0;color:#475569;font-size:.9rem;line-height:1.5;}
body.page-admin-modules .sysdev-access-hero code{font-size:.78rem;}
body.page-admin-modules .sysdev-access-summary{display:grid;grid-template-columns:repeat(2,minmax(90px,1fr));gap:8px;min-width:240px;}
body.page-admin-modules .sysdev-access-summary span{display:block;padding:10px 12px;border:1px solid rgba(148,163,184,.26);border-radius:16px;background:rgba(255,255,255,.72);box-shadow:inset 0 1px 0 rgba(255,255,255,.9);}
body.page-admin-modules .sysdev-access-summary strong{display:block;color:#0f172a;font-size:1.15rem;font-weight:950;line-height:1;}
body.page-admin-modules .sysdev-access-summary small{display:block;margin-top:4px;color:#64748b;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.035em;}
body.page-admin-modules .sysdev-access-legend{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:14px 0 10px;}
body.page-admin-modules .sysdev-access-note{margin:0 0 12px;}
body.page-admin-modules .sysdev-access-switch{display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;user-select:none;border:0;background:transparent;padding:4px 3px;border-radius:999px;font:inherit;color:inherit;appearance:none;-webkit-appearance:none;}
body.page-admin-modules .sysdev-access-slider{position:relative;width:38px;height:22px;border-radius:999px;background:#cbd5e1;box-shadow:inset 0 1px 2px rgba(15,23,42,.16);transition:background .16s ease;}
body.page-admin-modules .sysdev-access-slider::after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:999px;background:#fff;box-shadow:0 1px 4px rgba(15,23,42,.24);transition:transform .16s ease;}
body.page-admin-modules .sysdev-access-switch.is-on .sysdev-access-slider{background:#2563eb;}
body.page-admin-modules .sysdev-access-switch.is-on .sysdev-access-slider::after{transform:translateX(16px);}
body.page-admin-modules .sysdev-access-state{min-width:28px;color:#64748b;font-size:.72rem;font-weight:950;letter-spacing:.04em;}
body.page-admin-modules .sysdev-access-switch.is-on .sysdev-access-state{color:#1d4ed8;}
body.page-admin-modules .sysdev-access-locked{display:inline-grid;gap:2px;padding:6px 8px;border:1px solid rgba(37,99,235,.22);border-radius:999px;background:#eff6ff;color:#1d4ed8;min-width:82px;}
body.page-admin-modules .sysdev-access-locked b{font-size:.68rem;line-height:1;text-transform:uppercase;letter-spacing:.04em;}
body.page-admin-modules .sysdev-access-locked small{font-size:.65rem;color:#64748b;line-height:1;}
body.page-admin-modules .sysdev-access-locked.is-muted{border-color:rgba(148,163,184,.24);background:#f8fafc;color:#64748b;}
body.page-admin-modules .sysdev-label-maintenance{margin-top:14px;border:1px solid rgba(148,163,184,.24);border-radius:18px;background:#fff;padding:12px 14px;}
body.page-admin-modules .sysdev-label-maintenance summary{cursor:pointer;color:#0f172a;font-weight:900;}
body.page-admin-modules .sysdev-label-maintenance[open] summary{margin-bottom:12px;}
body.page-admin-modules .sysdev-access-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap;margin-top:14px;}
body.page-admin-modules .sysdev-access-actions .muted{max-width:600px;text-align:right;}
@media(max-width:980px){body.page-admin-modules .sysdev-access-hero{display:block;}body.page-admin-modules .sysdev-access-summary{margin-top:12px;min-width:0;}body.page-admin-modules .sysdev-access-actions{justify-content:stretch;}body.page-admin-modules .sysdev-access-actions .btn{width:100%;}body.page-admin-modules .sysdev-access-actions .muted{text-align:left;}}

.role-select-grid.has-error {
  border: 1px solid rgba(220, 38, 38, 0.32);
  border-radius: 16px;
  padding: 10px;
  background: rgba(254, 242, 242, 0.72);
}
[data-pt-role-error].is-error {
  color: #b91c1c;
  font-weight: 700;
  margin-top: 6px;
}
.modal-form--user-editor .is-invalid {
  border-color: #dc2626 !important;
  box-shadow: 0 0 0 3px rgba(220, 38, 38, 0.12) !important;
}

body.page-admin-modules .panel--admin-modules{
  width:100%;
  max-width:100%;
  min-width:0;
  overflow:visible;
  box-sizing:border-box;
}
body.page-admin-modules .sysdev-page-head,
body.page-admin-modules .sysdev-admin-modules-shell,
body.page-admin-modules .sysdev-control-guide,
body.page-admin-modules .sysdev-tab-content-card{
  width:min(1480px, calc(100% - 32px));
  max-width:1480px;
  min-width:0;
  box-sizing:border-box;
  position:relative;
  clear:both;
  margin-left:auto;
  margin-right:auto;
}
body.page-admin-modules .sysdev-admin-modules-shell{
  margin-top:16px;
  margin-bottom:16px;
  padding:18px;
  border:1px solid rgba(148,163,184,.22);
  border-radius:24px;
  background:#fff;
  box-shadow:0 14px 34px rgba(15,23,42,.06);
}
body.page-admin-modules .sysdev-admin-modules-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  min-width:0;
  margin-bottom:12px;
}
body.page-admin-modules .sysdev-admin-modules-head h2{margin:0 0 4px;font-size:1.35rem;color:#0f172a;}
body.page-admin-modules .sysdev-admin-modules-head p{margin:0;color:#475569;line-height:1.45;}
body.page-admin-modules .sysdev-control-guide{
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(280px,.9fr);
  gap:14px;
  margin-top:14px;
  margin-bottom:16px;
  padding:14px;
  border:1px solid rgba(37,99,235,.18);
  border-radius:22px;
  background:linear-gradient(135deg,#ffffff 0%,#f8fbff 62%,#eff6ff 100%);
  box-shadow:0 12px 28px rgba(15,23,42,.045);
}
body.page-admin-modules .sysdev-control-guide-main{min-width:0;}
body.page-admin-modules .sysdev-control-guide-main strong{display:block;color:#0f172a;font-size:1rem;font-weight:950;line-height:1.2;}
body.page-admin-modules .sysdev-control-guide-main p{margin:6px 0;color:#334155;font-size:.9rem;line-height:1.48;}
body.page-admin-modules .sysdev-control-flow{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;align-self:stretch;min-width:0;}
body.page-admin-modules .sysdev-control-flow span{display:block;min-width:0;padding:10px 11px;border:1px solid rgba(148,163,184,.24);border-radius:16px;background:rgba(255,255,255,.76);font-size:.76rem;line-height:1.25;}
body.page-admin-modules .sysdev-control-flow b{color:#0f172a;font-weight:950;}
body.page-admin-modules .sysdev-control-flow small{display:block;margin-top:4px;color:#64748b;}
body.page-admin-modules .sysdev-admin-tabs{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  margin-top:14px;
  padding:6px;
  border:1px solid rgba(148,163,184,.22);
  border-radius:18px;
  background:#f1f5f9;
}
body.page-admin-modules .sysdev-admin-tabs a{display:block;min-width:0;padding:11px 13px;border:1px solid transparent;border-radius:14px;background:transparent;box-shadow:none;text-decoration:none;}
body.page-admin-modules .sysdev-admin-tabs a strong{display:block;color:#334155;font-size:.92rem;line-height:1.15;}
body.page-admin-modules .sysdev-admin-tabs a small{display:block;margin-top:3px;color:#64748b;font-size:.74rem;line-height:1.25;}
body.page-admin-modules .sysdev-admin-tabs a.active{background:#0f172a;border-color:#0f172a;box-shadow:0 10px 22px rgba(15,23,42,.16);}
body.page-admin-modules .sysdev-admin-tabs a.active strong,
body.page-admin-modules .sysdev-admin-tabs a.active small{color:#fff;}
body.page-admin-modules .sysdev-tab-content-card{
  display:block;
  margin-top:16px;
  margin-bottom:0;
  padding:16px;
  border:1px solid rgba(148,163,184,.22);
  border-radius:22px;
  background:#fff;
  box-shadow:0 12px 28px rgba(15,23,42,.05);
  overflow:visible;
  z-index:1;
}
body.page-admin-modules .sysdev-tab-content-card + .sysdev-tab-content-card{margin-top:18px;}
body.page-admin-modules .sysdev-tab-section-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:12px 0 10px;padding:10px 12px;border:1px solid rgba(226,232,240,.9);border-radius:16px;background:#f8fafc;}
body.page-admin-modules .sysdev-tab-section-title strong{color:#0f172a;font-size:.92rem;font-weight:950;}
body.page-admin-modules .sysdev-tab-section-title span{color:#64748b;font-size:.78rem;font-weight:750;line-height:1.35;}
body.page-admin-modules .sysdev-access-panel{padding:16px;}
body.page-admin-modules .sysdev-access-hero{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;min-width:0;padding:0 0 12px;border:0;border-bottom:1px solid rgba(148,163,184,.18);border-radius:0;background:transparent;box-shadow:none;}
body.page-admin-modules .sysdev-access-hero h2{font-size:1.2rem;margin:0 0 4px;}
body.page-admin-modules .sysdev-access-hero p{font-size:.86rem;color:#475569;}
body.page-admin-modules .sysdev-access-summary{display:flex;flex-wrap:wrap;gap:6px;min-width:0;justify-content:flex-end;}
body.page-admin-modules .sysdev-access-summary span{min-width:82px;padding:8px 9px;border-radius:12px;background:#f8fafc;border-color:rgba(148,163,184,.20);}
body.page-admin-modules .sysdev-access-summary strong{font-size:1rem;}
body.page-admin-modules .sysdev-access-summary small{font-size:.62rem;}
body.page-admin-modules .sysdev-access-legend{margin:10px 0;gap:6px;}
body.page-admin-modules .sysdev-access-note{margin:0 0 10px;background:#f8fafc;border-color:rgba(148,163,184,.18);}
body.page-admin-modules .sysdev-access-feedback-inline{margin:0;padding:8px 10px;border-radius:12px;font-size:.78rem;font-weight:850;}
body.page-admin-modules .sysdev-access-toggle-cell.is-saving{background:#f8fafc;}
body.page-admin-modules .sysdev-access-switch.is-saving{opacity:.66;cursor:wait;}
body.page-admin-modules .sysdev-access-switch.is-saving .sysdev-access-slider::before{content:"";position:absolute;inset:5px auto auto 11px;width:10px;height:10px;border-radius:999px;border:2px solid rgba(255,255,255,.75);border-top-color:transparent;animation:sysdevSpin .7s linear infinite;}
body.page-admin-modules .sysdev-access-switch:focus-visible{outline:3px solid rgba(37,99,235,.24);outline-offset:2px;}
@keyframes sysdevSpin{to{transform:rotate(360deg);}}

body.page-admin-modules .sysdev-table-scroll{display:block;width:100%;max-width:100%;overflow-x:auto;overflow-y:visible;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;border:1px solid rgba(148,163,184,.24);border-radius:18px;background:#fff;box-shadow:0 10px 24px rgba(15,23,42,.045);}
body.page-admin-modules .sysdev-access-matrix{width:max-content;min-width:1288px;table-layout:auto;border-collapse:separate;border-spacing:0;margin:0;}
body.page-admin-modules .sysdev-access-matrix th,
body.page-admin-modules .sysdev-access-matrix td{box-sizing:border-box;vertical-align:middle;overflow:visible;white-space:normal;}
body.page-admin-modules .sysdev-access-matrix thead th{position:sticky;top:0;z-index:5;background:#f8fafc;border-bottom:1px solid rgba(148,163,184,.28);color:#334155;font-size:.76rem;letter-spacing:.035em;text-align:center;text-transform:uppercase;}
body.page-admin-modules .sysdev-access-matrix tbody tr:hover td,
body.page-admin-modules .sysdev-access-matrix tbody tr:hover th{background:#f8fbff;}
body.page-admin-modules .sysdev-access-matrix tbody tr.is-access-critical td,
body.page-admin-modules .sysdev-access-matrix tbody tr.is-access-critical th{box-shadow:inset 3px 0 0 rgba(37,99,235,.28);}
body.page-admin-modules .sysdev-access-matrix .sysdev-access-module-th,
body.page-admin-modules .sysdev-access-matrix .sysdev-access-module-cell{display:table-cell;min-width:320px;width:320px;max-width:320px;position:sticky;left:0;z-index:4;background:#fff;text-align:left;box-shadow:8px 0 16px -16px rgba(15,23,42,.5);}
body.page-admin-modules .sysdev-access-matrix thead .sysdev-access-module-th{z-index:7;background:#f8fafc;}
body.page-admin-modules .sysdev-access-matrix tbody tr:hover .sysdev-access-module-cell{background:#f8fbff;}
body.page-admin-modules .sysdev-access-matrix .sysdev-access-source-th,
body.page-admin-modules .sysdev-access-matrix .sysdev-access-source-cell{min-width:150px;width:150px;max-width:150px;text-align:center;}
body.page-admin-modules .sysdev-access-matrix .sysdev-access-role-th,
body.page-admin-modules .sysdev-access-matrix .sysdev-access-toggle-cell{min-width:140px;width:140px;max-width:140px;text-align:center;}
body.page-admin-modules .sysdev-access-role-th span{display:block;color:#0f172a;font-size:.82rem;font-weight:900;letter-spacing:0;text-transform:none;}
body.page-admin-modules .sysdev-access-role-th small{display:block;margin-top:2px;color:#64748b;font-size:.68rem;font-weight:800;letter-spacing:0;text-transform:none;}
body.page-admin-modules .sysdev-module-cell{display:flex;align-items:center;gap:12px;min-width:0;width:100%;overflow:hidden;}
body.page-admin-modules .sysdev-module-icon{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border-radius:12px;background:#eef4ff;color:#1d4ed8;font-size:17px;}
body.page-admin-modules .sysdev-module-copy{display:block;min-width:0;flex:1 1 auto;overflow:hidden;}
body.page-admin-modules .sysdev-module-copy strong,
body.page-admin-modules .sysdev-module-copy small{display:block;max-width:248px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
body.page-admin-modules .sysdev-module-copy strong{color:#0f172a;font-size:.9rem;font-weight:950;line-height:1.2;}
body.page-admin-modules .sysdev-module-copy small{margin-top:3px;color:#64748b;font-size:.72rem;}
body.page-admin-modules .sysdev-access-source-cell .badge,
body.page-admin-modules .sysdev-access-source-cell small,
body.page-admin-modules .sysdev-access-cell-note,
body.page-admin-modules .sysdev-access-locked b,
body.page-admin-modules .sysdev-access-locked small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
body.page-admin-modules .sysdev-access-source-cell .badge{display:inline-flex;justify-content:center;max-width:116px;}
body.page-admin-modules .sysdev-access-source-cell small{display:block;max-width:124px;margin:5px auto 0;color:#64748b;font-size:.72rem;line-height:1.25;}
body.page-admin-modules .sysdev-access-toggle-cell{padding-left:10px;padding-right:10px;}
body.page-admin-modules .sysdev-access-switch{display:inline-flex;align-items:center;justify-content:center;gap:7px;width:90px;max-width:90px;min-height:34px;margin:0 auto;padding:5px 7px;white-space:nowrap;}
body.page-admin-modules .sysdev-access-state{min-width:26px;max-width:30px;white-space:nowrap;}
body.page-admin-modules .sysdev-access-locked{display:inline-grid;place-items:center;width:112px;max-width:112px;margin:0 auto;padding:6px 8px;border-radius:13px;white-space:nowrap;}
body.page-admin-modules .sysdev-access-locked b,
body.page-admin-modules .sysdev-access-locked small{display:block;max-width:96px;}
body.page-admin-modules .sysdev-access-cell-note{display:block;max-width:116px;margin:4px auto 0;color:#64748b;font-size:.67rem;font-weight:750;line-height:1.2;}

body.page-admin-modules .sysdev-system-diagnostics{display:grid;grid-template-columns:1fr;gap:16px;align-items:start;overflow:visible;}
body.page-admin-modules .sysdev-diagnostic-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px;min-width:0;}
body.page-admin-modules .sysdev-diagnostic-card{display:grid;gap:10px;min-width:0;padding:14px;border:1px solid rgba(148,163,184,.28);border-radius:18px;background:rgba(255,255,255,.96);box-shadow:0 14px 30px rgba(15,23,42,.06);}
body.page-admin-modules .sysdev-diagnostic-card.is-hidden{background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(248,250,252,.96));}
body.page-admin-modules .sysdev-diagnostic-card.is-recovery{border-color:rgba(59,130,246,.22);background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(239,246,255,.72));}
body.page-admin-modules .sysdev-diagnostic-card header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;min-width:0;}
body.page-admin-modules .sysdev-diagnostic-card header div,
body.page-admin-modules .sysdev-diagnostic-card header strong,
body.page-admin-modules .sysdev-diagnostic-card header small{display:block;min-width:0;}
body.page-admin-modules .sysdev-diagnostic-card header small{max-width:260px;color:#64748b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
body.page-admin-modules .sysdev-diagnostic-flags{display:flex;flex-wrap:wrap;gap:6px;}
body.page-admin-modules .sysdev-diagnostic-card p{margin:0;color:#334155;font-size:.88rem;line-height:1.45;}
body.page-admin-modules .sysdev-diagnostic-roles{display:grid;gap:4px;min-width:0;color:#64748b;font-size:.78rem;}
body.page-admin-modules .sysdev-diagnostic-roles span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
body.page-admin-modules .sysdev-diagnostic-roles .is-warning{color:#92400e;}
body.page-admin-modules .sysdev-diagnostic-split-state,
body.page-admin-modules .sysdev-diagnostic-role-grid{display:grid;gap:6px;min-width:0;}
body.page-admin-modules .sysdev-diagnostic-split-state{padding:9px 10px;border:1px solid rgba(148,163,184,.22);border-radius:14px;background:#f8fafc;color:#334155;font-size:.78rem;}
body.page-admin-modules .sysdev-diagnostic-split-state span,
body.page-admin-modules .sysdev-diagnostic-role-grid span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
body.page-admin-modules .sysdev-diagnostic-role-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));font-size:.74rem;}
body.page-admin-modules .sysdev-diagnostic-role-grid span{padding:5px 8px;border:1px solid rgba(148,163,184,.22);border-radius:999px;background:#fff;color:#64748b;}
body.page-admin-modules .sysdev-diagnostic-role-grid span.is-visible{border-color:rgba(22,101,52,.18);background:#f0fdf4;color:#166534;}
body.page-admin-modules .sysdev-diagnostic-role-grid span.is-hidden{background:#f8fafc;color:#64748b;}
body.page-admin-modules .sysdev-route-candidate-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px;}
body.page-admin-modules .sysdev-route-candidate-list span{display:inline-flex;flex-direction:column;gap:2px;max-width:240px;padding:8px 10px;border:1px solid rgba(148,163,184,.24);border-radius:12px;background:rgba(248,250,252,.88);}
body.page-admin-modules .sysdev-route-candidate-list small{color:#64748b;font-size:.72rem;}
body.page-admin-modules .sysdev-module-status-panel{
  display:block;
  width:100%;
  max-width:100%;
  min-width:0;
  box-sizing:border-box;
  padding:0;
  background:#fff;
  overflow:visible;
}
body.page-admin-modules .sysdev-module-status-summary{
  box-sizing:border-box;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:16px 18px;
  border-bottom:1px solid rgba(226,232,240,.92);
  background:linear-gradient(180deg,#f8fafc,#ffffff);
  border-radius:22px 22px 0 0;
}
body.page-admin-modules .sysdev-module-status-summary > div{min-width:0;}
body.page-admin-modules .sysdev-module-status-summary strong{display:block;color:#0f172a;font-size:1.02rem;font-weight:950;line-height:1.16;}
body.page-admin-modules .sysdev-module-status-summary span:not(.badge){display:block;margin-top:4px;color:#64748b;font-size:.8rem;font-weight:750;line-height:1.35;}
body.page-admin-modules .sysdev-module-status-panel > .admin-module-note,
body.page-admin-modules .sysdev-module-status-panel > .sysdev-module-status-feedback,
body.page-admin-modules .sysdev-module-status-panel > .sysdev-module-status-grid{margin:14px 16px 0;}
body.page-admin-modules .sysdev-module-status-panel > .sysdev-module-status-grid{margin-bottom:16px;}
body.page-admin-modules .sysdev-module-status-grid{
  box-sizing:border-box;
  display:flex;
  flex-direction:column;
  gap:14px;
  width:auto;
  max-width:100%;
  min-width:0;
}
body.page-admin-modules .sysdev-module-status-group{
  box-sizing:border-box;
  display:block;
  width:100%;
  min-width:0;
  overflow:visible;
  border:1px solid rgba(148,163,184,.22);
  border-radius:18px;
  background:#fff;
  box-shadow:0 10px 24px rgba(15,23,42,.045);
}
body.page-admin-modules .sysdev-module-status-group-head{
  box-sizing:border-box;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  width:100%;
  min-width:0;
  padding:10px 12px;
  border-bottom:1px solid rgba(226,232,240,.9);
  background:#f8fafc;
}
body.page-admin-modules .sysdev-module-status-group-head strong{display:block;min-width:0;color:#0f172a;font-size:.92rem;font-weight:950;line-height:1.15;}
body.page-admin-modules .sysdev-module-status-group-head span{flex:0 0 auto;color:#64748b;font-size:.72rem;font-weight:850;text-transform:uppercase;letter-spacing:.035em;}
body.page-admin-modules .sysdev-module-status-list{
  box-sizing:border-box;
  display:flex;
  flex-direction:column;
  gap:8px;
  width:100%;
  max-width:100%;
  min-width:0;
  padding:12px;
}
body.page-admin-modules .sysdev-module-status-row{
  box-sizing:border-box;
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(150px,max-content) auto;
  align-items:center;
  gap:12px 16px;
  width:100%;
  max-width:100%;
  min-width:0;
  min-height:auto;
  padding:13px 16px;
  border:1px solid rgba(226,232,240,.88);
  border-radius:16px;
  overflow:visible;
  background:#fff;
  box-shadow:0 5px 14px rgba(15,23,42,.025);
  transition:background .15s ease,opacity .15s ease,border-color .15s ease,box-shadow .15s ease;
}
body.page-admin-modules .sysdev-module-status-row:hover{background:#f8fbff;border-color:rgba(147,197,253,.55);box-shadow:0 8px 18px rgba(15,23,42,.04);}
body.page-admin-modules .sysdev-module-status-row.is-off{background:linear-gradient(180deg,#fff,#fffaf5);}
body.page-admin-modules .sysdev-module-status-row.is-saving{opacity:.72;cursor:wait;}
body.page-admin-modules .sysdev-module-status-row.is-locked{background:linear-gradient(180deg,#fff,#fffaf5);}
body.page-admin-modules .sysdev-module-status-main{display:flex;align-items:center;gap:12px;min-width:0;max-width:100%;overflow:visible;}
body.page-admin-modules .sysdev-module-status-main .sysdev-sidebar-icon{flex:0 0 32px;width:32px;height:32px;min-width:32px;border-radius:10px;}
body.page-admin-modules .sysdev-module-status-copy{display:block;min-width:0;max-width:100%;overflow:hidden;padding-inline-start:0;}
body.page-admin-modules .sysdev-module-status-copy strong{display:block;color:#0f172a;font-size:.88rem;font-weight:950;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
body.page-admin-modules .sysdev-module-status-copy small{display:block;max-width:100%;margin-top:3px;color:#64748b;font-size:.72rem;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
body.page-admin-modules .sysdev-module-status-copy code{font-size:.72rem;background:transparent;padding:0;color:#475569;}
body.page-admin-modules .sysdev-module-status-meta{display:flex;min-width:0;max-width:100%;align-items:center;justify-content:flex-start;gap:6px;color:#64748b;overflow:hidden;}
body.page-admin-modules .sysdev-module-status-meta .badge{display:inline-flex;flex:0 0 auto;width:max-content;max-width:112px;font-size:.6rem;line-height:1;padding:3px 6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
body.page-admin-modules .sysdev-module-status-meta small{display:inline-flex;align-items:center;min-width:0;max-width:160px;color:#64748b;font-size:.72rem;font-weight:850;text-align:left;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
body.page-admin-modules .sysdev-module-status-meta small[data-module-effective-state]{color:#0f172a;font-weight:950;}
body.page-admin-modules .sysdev-module-status-meta small[data-module-sidebar-state]::before{content:"·";margin-right:6px;color:#94a3b8;font-weight:900;}
body.page-admin-modules .sysdev-module-status-side{display:flex;gap:8px;justify-content:flex-end;align-items:center;min-width:0;white-space:nowrap;}
body.page-admin-modules .sysdev-module-status-label{display:none !important;}
body.page-admin-modules .sysdev-module-status-input{position:absolute;opacity:0;pointer-events:none;}
body.page-admin-modules .sysdev-module-status-side .sysdev-visibility-switch{min-width:76px;padding:4px 7px;gap:7px;font-size:.66rem;line-height:1;}
body.page-admin-modules .sysdev-module-status-side .sysdev-visibility-switch.is-locked{min-width:86px;}
body.page-admin-modules .sysdev-module-status-side .sysdev-visibility-switch .switch-track{width:30px;height:18px;}
body.page-admin-modules .sysdev-module-status-side .sysdev-visibility-switch .switch-knob{top:3px;left:3px;width:12px;height:12px;}
body.page-admin-modules .sysdev-module-status-row.is-on .sysdev-visibility-switch{border-color:rgba(37,99,235,.34);background:#eff6ff;color:#1d4ed8;}
body.page-admin-modules .sysdev-module-status-row.is-on .sysdev-visibility-switch .switch-track{background:#2563eb;}
body.page-admin-modules .sysdev-module-status-row.is-on .sysdev-visibility-switch .switch-knob{transform:translateX(12px);}
body.page-admin-modules .sysdev-module-status-row.is-on .sysdev-visibility-switch .switch-on{display:inline;}
body.page-admin-modules .sysdev-module-status-row.is-on .sysdev-visibility-switch .switch-off{display:none;}
body.page-admin-modules .sysdev-module-status-row.is-off .sysdev-visibility-switch .switch-on{display:none;}
body.page-admin-modules .sysdev-module-status-row.is-off .sysdev-visibility-switch .switch-off{display:inline;}
body.page-admin-modules .sysdev-module-status-toggle,
body.page-admin-modules .sysdev-sidebar-toggle-control{display:inline-flex;align-items:center;justify-content:center;cursor:pointer;}
body.page-admin-modules .sysdev-diagnostic-action{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:10px 0 6px;padding:10px 12px;border:1px solid rgba(249,115,22,.22);border-radius:16px;background:#fff7ed;}
body.page-admin-modules .sysdev-diagnostic-action small{color:#9a3412;font-weight:800;line-height:1.25;}
body.page-admin-modules .sysdev-sidebar-row.is-disabled .sysdev-mini-action,
body.page-admin-modules .sysdev-module-status-row.is-off .sysdev-mini-action{margin-top:4px;}
body.page-admin-modules .sysdev-critical-tools{display:grid;gap:12px;padding:14px;border:1px solid rgba(59,130,246,.18);border-radius:18px;background:linear-gradient(180deg,rgba(239,246,255,.76),rgba(255,255,255,.96));}
body.page-admin-modules .sysdev-critical-tools > header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;min-width:0;}
body.page-admin-modules .sysdev-critical-tools > header strong,
body.page-admin-modules .sysdev-critical-tools > header span{display:block;}
body.page-admin-modules .sysdev-critical-tools > header span{color:#475569;font-size:.82rem;line-height:1.35;}
body.page-admin-modules .sysdev-critical-tools-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px;}
body.page-admin-modules .sysdev-critical-tool-card{display:grid;gap:8px;min-width:0;padding:12px;border:1px solid rgba(148,163,184,.24);border-radius:16px;background:#fff;}
body.page-admin-modules .sysdev-critical-tool-card strong,
body.page-admin-modules .sysdev-critical-tool-card small{display:block;min-width:0;}
body.page-admin-modules .sysdev-critical-tool-card small{color:#64748b;font-size:.76rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
body.page-admin-modules .sysdev-critical-tool-badges{display:flex;flex-wrap:wrap;gap:6px;}
body.page-admin-modules .sysdev-critical-tool-card p{margin:0;color:#334155;font-size:.8rem;line-height:1.35;}

@media(max-width:1180px){
  body.page-admin-modules .sysdev-control-guide{grid-template-columns:1fr;}
  body.page-admin-modules .sysdev-control-flow{grid-template-columns:repeat(2,minmax(0,1fr));}
  body.page-admin-modules .sysdev-sidebar-row{grid-template-columns:minmax(0,1fr) auto;}
  body.page-admin-modules .sysdev-sidebar-meta,
  body.page-admin-modules .sysdev-effective-roles{grid-column:1 / -1;align-items:flex-start;}
}
@media(max-width:900px){
  body.page-admin-modules .sysdev-access-matrix{min-width:1190px;}
  body.page-admin-modules .sysdev-access-matrix .sysdev-access-module-th,
  body.page-admin-modules .sysdev-access-matrix .sysdev-access-module-cell{min-width:300px;width:300px;max-width:300px;}
  body.page-admin-modules .sysdev-module-copy strong,
  body.page-admin-modules .sysdev-module-copy small{max-width:228px;}
}
@media(max-width:720px){
  body.page-admin-modules .sysdev-page-head,
  body.page-admin-modules .sysdev-admin-modules-shell,
  body.page-admin-modules .sysdev-control-guide,
  body.page-admin-modules .sysdev-tab-content-card{width:min(100% - 20px, 1480px);padding:12px;border-radius:18px;}
  body.page-admin-modules .sysdev-admin-modules-head,
  body.page-admin-modules .sysdev-access-hero,
  body.page-admin-modules .sysdev-critical-tools > header{display:block;}
  body.page-admin-modules .sysdev-admin-tabs,
  body.page-admin-modules .sysdev-control-flow,
  body.page-admin-modules .sysdev-sidebar-row{grid-template-columns:1fr;}
  body.page-admin-modules .sysdev-module-status-row{grid-template-columns:1fr;align-items:start;padding:12px 14px;gap:10px;border-radius:15px;}
  body.page-admin-modules .sysdev-access-summary{justify-content:flex-start;margin-top:10px;}
  body.page-admin-modules .sysdev-tab-section-title{display:block;}
  body.page-admin-modules .sysdev-access-matrix{min-width:1160px;}
  body.page-admin-modules .sysdev-access-matrix .sysdev-access-module-th,
  body.page-admin-modules .sysdev-access-matrix .sysdev-access-module-cell{min-width:285px;width:285px;max-width:285px;}
  body.page-admin-modules .sysdev-module-copy strong,
  body.page-admin-modules .sysdev-module-copy small{max-width:212px;}
  body.page-admin-modules .sysdev-sidebar-card-side{justify-self:start;}
  body.page-admin-modules .sysdev-module-status-side{justify-items:start;align-self:flex-start;}
  body.page-admin-modules .sysdev-module-status-main,
  body.page-admin-modules .sysdev-module-status-meta,
  body.page-admin-modules .sysdev-module-status-side{width:100%;min-width:0;max-width:100%;}
  body.page-admin-modules .sysdev-module-status-meta{align-items:flex-start;}
  body.page-admin-modules .sysdev-module-status-meta{flex-wrap:wrap;gap:5px;}
  body.page-admin-modules .sysdev-module-status-copy small,
  body.page-admin-modules .sysdev-module-status-meta small{max-width:100%;text-align:left;white-space:normal;}
  body.page-admin-modules .sysdev-module-status-meta small[data-module-sidebar-state]::before{content:"";margin:0;}
  body.page-admin-modules .sysdev-diagnostic-grid{grid-template-columns:minmax(0,1fr);}
  body.page-admin-modules .sysdev-diagnostic-card header{align-items:stretch;}
  body.page-admin-modules .sysdev-diagnostic-roles span,
  body.page-admin-modules .sysdev-diagnostic-split-state span,
  body.page-admin-modules .sysdev-diagnostic-role-grid span{white-space:normal;}
  body.page-admin-modules .sysdev-diagnostic-action{align-items:flex-start;flex-direction:column;}
  body.page-admin-modules .sysdev-mini-action{width:100%;}
  body.page-admin-modules .sysdev-critical-tool-card small{white-space:normal;}
}

:root{
  --rv-radius:16px;
  --rv-radius-sm:12px;
  --rv-navy-1:#0f2a5c;
  --rv-navy-2:#153b74;
  --rv-blue:#1876bc;
  --rv-shadow-sm:0 1px 2px rgba(15,23,42,.06),0 1px 3px rgba(15,23,42,.05);
  --rv-shadow-md:0 6px 18px rgba(15,23,42,.09);
  --rv-shadow-lg:0 14px 34px rgba(15,23,42,.14);
  --rv-ring:0 0 0 3px rgba(37,99,235,.16);
}

body.page-admin-modules .sysdev-page-head{
  position:relative;
  background:linear-gradient(130deg,var(--rv-navy-1) 0%,var(--rv-navy-2) 48%,var(--rv-blue) 100%);
  border:1px solid rgba(255,255,255,.06);
  border-radius:20px;
  padding:26px 28px;
  color:#fff;
  overflow:hidden;
  box-shadow:var(--rv-shadow-md);
}
body.page-admin-modules .sysdev-page-head::after{
  content:"";
  position:absolute;
  right:-120px;top:-120px;
  width:340px;height:340px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(46,160,214,.35),transparent 70%);
  pointer-events:none;
}
body.page-admin-modules .sysdev-page-head h1{color:#fff;margin:4px 0 6px;letter-spacing:-.02em}
body.page-admin-modules .sysdev-page-head p{color:rgba(255,255,255,.78);max-width:760px}
body.page-admin-modules .sysdev-page-head .eyebrow,
body.page-admin-modules .sysdev-kicker{color:#9dd3f2;font-weight:800;letter-spacing:.14em;font-size:11px}
body.page-admin-modules .sysdev-hero{display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;align-items:flex-start;position:relative;z-index:1}
body.page-admin-modules .sysdev-stats{display:flex;gap:10px;flex-wrap:wrap}
body.page-admin-modules .sysdev-stat{
  min-width:96px;
  background:rgba(255,255,255,.09);
  border:1px solid rgba(255,255,255,.16);
  border-radius:14px;
  padding:10px 14px;
  display:flex;flex-direction:column;gap:2px;
  backdrop-filter:blur(6px);
}
body.page-admin-modules .sysdev-stat span{color:rgba(255,255,255,.66);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}
body.page-admin-modules .sysdev-stat strong{color:#fff;font-size:22px;line-height:1.1}
body.page-admin-modules .sysdev-page-head .sysdev-info,
body.page-admin-modules .sysdev-page-head .admin-module-note{
  position:relative;z-index:1;
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.13);
  border-radius:12px;
  color:rgba(255,255,255,.85);
  padding:10px 14px;
  box-shadow:none;
}
body.page-admin-modules .sysdev-page-head .sysdev-info strong,
body.page-admin-modules .sysdev-page-head .admin-module-note strong{color:#fff}

body.page-admin-modules .admin-modules-page .sysdev-page-head h1{margin-bottom:6px}

body.page-admin-modules .admin-module-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(240px,1fr));
  gap:14px;
}
body.page-admin-modules .admin-module-card{
  position:relative;
  display:flex;flex-direction:column;gap:6px;
  background:var(--card,#fff);
  border:1px solid var(--line,#e5e7eb);
  border-radius:var(--rv-radius);
  padding:18px 18px 16px;
  text-decoration:none;
  color:var(--text,#0f172a);
  box-shadow:var(--rv-shadow-sm);
  transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease;
}
body.page-admin-modules .admin-module-card:hover{
  transform:translateY(-3px);
  border-color:rgba(37,99,235,.45);
  box-shadow:var(--rv-shadow-md);
}
body.page-admin-modules .admin-module-card strong{font-size:15px}
body.page-admin-modules .admin-module-card small{color:var(--muted,#64748b);line-height:1.45}
body.page-admin-modules .admin-module-icon{
  width:38px;height:38px;
  display:inline-flex;align-items:center;justify-content:center;
  border-radius:11px;
  background:linear-gradient(135deg,#eff6ff,#dbeafe);
  color:#1d4ed8;
  font-size:17px;font-weight:800;
  margin-bottom:4px;
}

body.page-admin-modules .sysdev-module-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(200px,1fr));
  gap:10px;
}
body.page-admin-modules .sysdev-module-card{
  display:flex;align-items:center;gap:11px;
  background:var(--card,#fff);
  border:1px solid var(--line,#e5e7eb);
  border-radius:14px;
  padding:12px 14px;
  text-decoration:none;
  color:var(--text,#0f172a);
  transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease,background .15s ease;
  box-shadow:var(--rv-shadow-sm);
}
body.page-admin-modules .sysdev-module-card:hover{
  transform:translateY(-2px);
  border-color:rgba(37,99,235,.4);
  box-shadow:var(--rv-shadow-md);
}
body.page-admin-modules .sysdev-module-card.active{
  border-color:var(--acc,#2563eb);
  background:linear-gradient(180deg,#eff6ff,#fff 80%);
  box-shadow:inset 0 0 0 1px rgba(37,99,235,.25),var(--rv-shadow-sm);
}
body.page-admin-modules .sysdev-module-icon{
  width:36px;height:36px;flex:0 0 36px;
  display:inline-flex;align-items:center;justify-content:center;
  border-radius:10px;
  background:#f1f5f9;
  font-size:17px;
}
body.page-admin-modules .sysdev-module-card.active .sysdev-module-icon{background:#dbeafe}
body.page-admin-modules .sysdev-module-text{display:flex;flex-direction:column;gap:1px;min-width:0}
body.page-admin-modules .sysdev-module-text strong{font-size:13.5px;line-height:1.25}
body.page-admin-modules .sysdev-module-text small{color:var(--muted,#64748b);font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

body.page-admin-modules .sysdev-admin-tabs{
  display:flex;gap:8px;flex-wrap:wrap;
  background:#f1f5f9;
  border:1px solid var(--line,#e5e7eb);
  border-radius:14px;
  padding:6px;
}
body.page-admin-modules .sysdev-admin-tabs a{
  flex:1 1 220px;
  display:flex;flex-direction:column;gap:2px;
  border-radius:10px;
  padding:10px 14px;
  text-decoration:none;
  color:var(--text,#0f172a);
  border:1px solid transparent;
  transition:background .15s ease,border-color .15s ease,box-shadow .15s ease;
}
body.page-admin-modules .sysdev-admin-tabs a:hover{background:rgba(255,255,255,.7)}
body.page-admin-modules .sysdev-admin-tabs a.active{
  background:#fff;
  border-color:rgba(37,99,235,.35);
  box-shadow:var(--rv-shadow-sm);
}
body.page-admin-modules .sysdev-admin-tabs a strong{font-size:13.5px;color:inherit}
body.page-admin-modules .sysdev-admin-tabs a.active strong{color:var(--acc,#2563eb)}
body.page-admin-modules .sysdev-admin-tabs a small{color:var(--muted,#64748b);font-size:11.5px}

body.page-admin-modules .sysdev-control-guide{
  background:linear-gradient(180deg,#f8fafc,#fff);
  border:1px solid var(--line,#e5e7eb);
  border-radius:var(--rv-radius);
  padding:16px 18px;
}
body.page-admin-modules .sysdev-control-flow{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px;margin-top:12px}
body.page-admin-modules .sysdev-control-flow span{
  display:flex;flex-direction:column;gap:2px;
  background:#fff;
  border:1px solid var(--line,#e5e7eb);
  border-left:3px solid #cbd5e1;
  border-radius:10px;
  padding:9px 12px;
  font-size:12.5px;
}
body.page-admin-modules .sysdev-control-flow span:first-child{border-left-color:var(--ok,#16a34a)}
body.page-admin-modules .sysdev-control-flow span:last-child{border-left-color:var(--danger,#ef4444)}
body.page-admin-modules .sysdev-control-flow small{color:var(--muted,#64748b)}

body.page-admin-modules .sysdev-sidebar-group-card{
  background:var(--card,#fff);
  border:1px solid var(--line,#e5e7eb);
  border-radius:var(--rv-radius);
  overflow:hidden;
  box-shadow:var(--rv-shadow-sm);
}
body.page-admin-modules .sysdev-sidebar-group-head{
  display:flex;justify-content:space-between;align-items:center;
  padding:12px 16px;
  background:#f8fafc;
  border-bottom:1px solid var(--line,#e5e7eb);
}
body.page-admin-modules .sysdev-sidebar-group-head strong{font-size:13px;text-transform:uppercase;letter-spacing:.06em;color:#334155}
body.page-admin-modules .sysdev-sidebar-group-head span{font-size:12px;color:var(--muted,#64748b)}
body.page-admin-modules .sysdev-sidebar-row{
  border-left:3px solid transparent;
  transition:background .15s ease,border-color .15s ease;
}
body.page-admin-modules .sysdev-sidebar-row:hover{background:#f8fafc}
body.page-admin-modules .sysdev-sidebar-row.is-on{border-left-color:var(--ok,#16a34a)}
body.page-admin-modules .sysdev-sidebar-row.is-off{border-left-color:#cbd5e1;background:#fcfcfd}
body.page-admin-modules .sysdev-sidebar-row.is-locked{border-left-color:var(--danger,#ef4444)}
body.page-admin-modules .sysdev-sidebar-icon{
  width:32px;height:32px;flex:0 0 32px;
  display:inline-flex;align-items:center;justify-content:center;
  border-radius:9px;background:#f1f5f9;font-size:15px;
}

body.page-admin-modules .table th{
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.07em;
  color:#475569;
  background:#f8fafc;
  position:sticky;top:0;z-index:2;
}
body.page-admin-modules .table tbody tr{transition:background .12s ease}
body.page-admin-modules .table tbody tr:hover{background:#f8fafc}
body.page-admin-modules .table code,
body.page-admin-modules .sysdev-sidebar-copy code{
  background:#f1f5f9;
  border:1px solid #e2e8f0;
  border-radius:6px;
  padding:1px 6px;
  font-size:11.5px;
  color:#334155;
}

body.page-admin-modules .sysdev-diagnostic-card,
body.page-admin-modules .sysdev-critical-tool-card{
  background:var(--card,#fff);
  border:1px solid var(--line,#e5e7eb);
  border-radius:14px;
  box-shadow:var(--rv-shadow-sm);
  transition:box-shadow .15s ease,border-color .15s ease;
}
body.page-admin-modules .sysdev-diagnostic-card:hover,
body.page-admin-modules .sysdev-critical-tool-card:hover{
  border-color:#cbd5e1;
  box-shadow:var(--rv-shadow-md);
}
body.page-admin-modules .sysdev-diagnostic-card.is-visible{border-top:3px solid var(--ok,#16a34a)}
body.page-admin-modules .sysdev-diagnostic-card.is-hidden{border-top:3px solid #cbd5e1}
body.page-admin-modules .sysdev-diagnostic-card.is-recovery{border-top:3px solid var(--danger,#ef4444)}

body.page-admin-modules .sysdev-tab-content-card{
  background:var(--card,#fff);
  border:1px solid var(--line,#e5e7eb);
  border-radius:var(--rv-radius);
  padding:18px;
  box-shadow:var(--rv-shadow-sm);
}

.error-logs-page{display:flex;flex-direction:column;gap:16px}

.error-logs-page .error-logs-hero{
  position:relative;
  background:linear-gradient(130deg,var(--rv-navy-1) 0%,var(--rv-navy-2) 52%,var(--rv-blue) 100%);
  border:1px solid rgba(255,255,255,.06);
  border-radius:20px;
  padding:22px 26px;
  overflow:hidden;
  box-shadow:var(--rv-shadow-md);
}
.error-logs-page .error-logs-hero::after{
  content:"";
  position:absolute;right:-100px;top:-110px;
  width:300px;height:300px;border-radius:50%;
  background:radial-gradient(circle,rgba(46,160,214,.32),transparent 70%);
  pointer-events:none;
}
.error-logs-page .error-logs-hero h2{color:#fff;margin:4px 0 6px;letter-spacing:-.02em}
.error-logs-page .error-logs-hero .eyebrow{color:#9dd3f2;letter-spacing:.14em}
.error-logs-page .error-logs-hero p.muted{color:rgba(255,255,255,.75);max-width:720px}
.error-logs-page .error-logs-hero__main{display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;align-items:flex-start;position:relative;z-index:1}
.error-logs-page .error-logs-topnav{display:flex;gap:8px;flex-wrap:wrap}
.error-logs-page .error-logs-topnav .btn.ghost{
  background:rgba(255,255,255,.09);
  border-color:rgba(255,255,255,.22);
  color:#fff;
}
.error-logs-page .error-logs-topnav .btn.ghost:hover{background:rgba(255,255,255,.18)}

.error-logs-page .error-metric-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px}
.error-logs-page .error-metric-card{
  display:flex;flex-direction:column;gap:2px;
  background:var(--card,#fff);
  border:1px solid var(--line,#e5e7eb);
  border-top:3px solid #cbd5e1;
  border-radius:14px;
  padding:14px 16px;
  text-decoration:none;
  color:var(--text,#0f172a);
  box-shadow:var(--rv-shadow-sm);
  transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease;
}
.error-logs-page .error-metric-card:hover{transform:translateY(-3px);box-shadow:var(--rv-shadow-md)}
.error-logs-page .error-metric-card span{font-size:11.5px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--muted,#64748b)}
.error-logs-page .error-metric-card strong{font-size:26px;line-height:1.15}
.error-logs-page .error-metric-card small{color:var(--muted,#64748b)}
.error-logs-page .error-metric-card--active{border-top-color:var(--acc,#2563eb)}
.error-logs-page .error-metric-card--active strong{color:var(--acc,#2563eb)}
.error-logs-page .error-metric-card--reopened{border-top-color:var(--danger,#ef4444)}
.error-logs-page .error-metric-card--reopened strong{color:var(--danger,#ef4444)}
.error-logs-page .error-metric-card--verified{border-top-color:#7c3aed}
.error-logs-page .error-metric-card--verified strong{color:#7c3aed}
.error-logs-page .error-metric-card--resolved{border-top-color:var(--ok,#16a34a)}
.error-logs-page .error-metric-card--resolved strong{color:var(--ok,#16a34a)}

.error-logs-page .error-log-filter-bar{
  display:flex;flex-wrap:wrap;gap:6px;
  background:#f1f5f9;
  border:1px solid var(--line,#e5e7eb);
  border-radius:999px;
  padding:5px;
  width:fit-content;
  max-width:100%;
}
.error-logs-page .error-log-filter-bar .btn{
  border-radius:999px;
  border-color:transparent;
  box-shadow:none;
}
.error-logs-page .error-log-filter-bar .btn.ghost{background:transparent}
.error-logs-page .error-log-filter-bar .btn.ghost:hover{background:#fff}
.error-logs-page .error-log-filter-bar .btn.primary{box-shadow:var(--rv-shadow-sm)}

.error-logs-page .table-card{
  background:var(--card,#fff);
  border:1px solid var(--line,#e5e7eb);
  border-radius:var(--rv-radius);
  box-shadow:var(--rv-shadow-sm);
}

.error-logs-page .error-log-table th{
  font-size:11px;text-transform:uppercase;letter-spacing:.07em;
  color:#475569;background:#f8fafc;
  position:sticky;top:0;z-index:2;
  white-space:nowrap;
}
.error-logs-page .error-log-table tbody tr{transition:background .12s ease}
.error-logs-page .error-log-table tbody tr:hover{background:#f8fafc}
.error-logs-page .error-log-table tr.row-clickable{cursor:default}
.error-logs-page .error-log-table code{
  background:#f1f5f9;border:1px solid #e2e8f0;border-radius:6px;
  padding:1px 6px;font-size:11.5px;color:#334155;
}
.error-logs-page .error-log-count{font-weight:800;font-variant-numeric:tabular-nums}

.error-logs-page .error-detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px}
.error-logs-page .error-detail-item{
  display:flex;flex-direction:column;gap:3px;
  background:#f8fafc;
  border:1px solid var(--line,#e5e7eb);
  border-radius:12px;
  padding:10px 12px;
  min-width:0;
}
.error-logs-page .error-detail-item span{font-size:10.5px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--muted,#64748b)}
.error-logs-page .error-detail-item strong{font-size:14px}
.error-logs-page .error-detail-item small{color:var(--muted,#64748b)}
.error-logs-page .error-detail-item--wide{grid-column:span 2}
.error-logs-page .error-detail-item--full{grid-column:1 / -1}
.error-logs-page .error-detail-item code{overflow-wrap:anywhere;background:transparent;border:0;padding:0}

.error-logs-page pre{
  background:#0f172a;
  color:#dbeafe;
  border:1px solid #1e293b;
  border-radius:12px;
  padding:12px 14px;
  font-size:12px;
  line-height:1.55;
  overflow:auto;
  max-height:340px;
}
.error-logs-page .error-log-technical-summary{display:flex;flex-direction:column;gap:8px}
.error-logs-page details > summary{
  cursor:pointer;
  font-weight:700;
  color:var(--acc,#2563eb);
  font-size:12.5px;
}
.error-logs-page details[open] > summary{margin-bottom:8px}

body.page-settings .settings-page{gap:18px}
body.page-settings .rv-settings-head{
  display:flex;justify-content:space-between;align-items:flex-start;gap:12px;
  background:linear-gradient(130deg,var(--rv-navy-1) 0%,var(--rv-navy-2) 52%,var(--rv-blue) 100%);
  border-radius:18px;
  padding:20px 24px;
  color:#fff;
  box-shadow:var(--rv-shadow-md);
}
body.page-settings .rv-settings-head .eyebrow{color:#9dd3f2;letter-spacing:.14em}
body.page-settings .rv-settings-head h2{color:#fff;margin:2px 0 0;letter-spacing:-.02em}
body.page-settings .rv-settings-head .version-badge{
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.24);
  color:#fff;
  border-radius:999px;
  padding:4px 12px;
  font-weight:700;font-size:12px;
}

body.page-settings .settings-section-card{
  border-radius:var(--rv-radius);
  box-shadow:var(--rv-shadow-sm);
  transition:box-shadow .15s ease,border-color .15s ease;
}
body.page-settings .settings-section-card:focus-within{
  border-color:rgba(37,99,235,.4);
  box-shadow:var(--rv-shadow-md);
}
body.page-settings .settings-section-label{display:flex;align-items:center;gap:12px}
body.page-settings .settings-section-label strong{font-size:15px}
body.page-settings .s-icon{
  width:40px;height:40px;flex:0 0 40px;
  display:inline-flex;align-items:center;justify-content:center;
  border-radius:12px;font-size:18px;
  background:linear-gradient(135deg,#eff6ff,#dbeafe);
  box-shadow:inset 0 0 0 1px rgba(37,99,235,.12);
}
body.page-settings .s-icon--brand{background:linear-gradient(135deg,#fdf4ff,#fae8ff);box-shadow:inset 0 0 0 1px rgba(168,85,247,.14)}
body.page-settings .s-field label{font-size:12px;font-weight:700;color:#475569}
body.page-settings .s-field input[type=text],
body.page-settings .s-field select,
body.page-settings .s-field textarea{
  border-radius:10px;
  border:1.5px solid var(--line,#e5e7eb);
  transition:border-color .14s ease,box-shadow .14s ease;
}
body.page-settings .s-field input[type=text]:focus,
body.page-settings .s-field select:focus,
body.page-settings .s-field textarea:focus{
  outline:none;
  border-color:var(--acc,#2563eb);
  box-shadow:var(--rv-ring);
}
body.page-settings .s-checkrow{
  display:flex;align-items:center;gap:10px;
  background:#f8fafc;
  border:1px solid var(--line,#e5e7eb);
  border-radius:10px;
  padding:9px 12px;
  cursor:pointer;
  transition:border-color .14s ease,background .14s ease;
}
body.page-settings .s-checkrow:hover{border-color:rgba(37,99,235,.35);background:#eff6ff}
body.page-settings .s-checkrow input[type=checkbox]{accent-color:var(--acc,#2563eb);width:16px;height:16px}
body.page-settings .rv-label-spacer{visibility:hidden}

body.page-settings .preview-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px}
body.page-settings .preview-box{
  background:#f8fafc;
  border:1px dashed #cbd5e1;
  border-radius:12px;
  padding:12px 14px;
}
body.page-settings .preview-label{font-size:10.5px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--muted,#64748b);margin-bottom:8px}

body.page-settings .settings-pdf-logo-panel{
  display:flex;gap:16px;flex-wrap:wrap;
  background:#f8fafc;
  border:1px solid var(--line,#e5e7eb);
  border-radius:12px;
  padding:14px;
}
body.page-settings .settings-visit-pdf-summary{
  display:flex;flex-direction:column;gap:2px;
  background:#f8fafc;
  border-left:3px solid var(--acc,#2563eb);
  border-radius:0 10px 10px 0;
  padding:9px 12px;
  font-size:12.5px;
}
body.page-settings .settings-visit-pdf-summary strong{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:#475569}

body.page-settings .settings-save-row{
  position:sticky;
  bottom:12px;
  z-index:30;
  display:flex;justify-content:flex-end;gap:10px;
  background:rgba(255,255,255,.92);
  backdrop-filter:blur(10px);
  border:1px solid var(--line,#e5e7eb);
  border-radius:14px;
  padding:12px 16px;
  box-shadow:var(--rv-shadow-lg);
}

body.page-board .kanban-head{gap:8px}
body.page-board .kanban-head > span:first-child{
  font-size:12.5px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.05em;
  color:#334155;
  display:inline-flex;align-items:center;gap:8px;
  min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
body.page-board .kanban-head > span:first-child::before{
  content:"";
  width:9px;height:9px;flex:0 0 9px;
  border-radius:3px;
  background:var(--rv-col-accent,#94a3b8);
}
body.page-board .kanban-col{--rv-col-accent:#64748b}
body.page-board .kanban-col:nth-of-type(6n+1){--rv-col-accent:#2563eb}
body.page-board .kanban-col:nth-of-type(6n+2){--rv-col-accent:#7c3aed}
body.page-board .kanban-col:nth-of-type(6n+3){--rv-col-accent:#f59e0b}
body.page-board .kanban-col:nth-of-type(6n+4){--rv-col-accent:#0ea5e9}
body.page-board .kanban-col:nth-of-type(6n+5){--rv-col-accent:#16a34a}
body.page-board .kanban-col:nth-of-type(6n+6){--rv-col-accent:#64748b}
body.page-board .kanban-col[data-column-status="Resuelto"],
body.page-board .kanban-col[data-column-status="Cerrado"],
body.page-board .kanban-col[data-column-status="Completado"]{--rv-col-accent:#16a34a}
body.page-board .kanban-col[data-column-status="Cancelado"],
body.page-board .kanban-col[data-column-status="Rechazado"]{--rv-col-accent:#ef4444}
body.page-board .kanban-head .count{
  background:color-mix(in srgb,var(--rv-col-accent) 14%,#fff);
  color:var(--rv-col-accent);
}

body.page-board .kanban-card{
  border-left:4px solid #cbd5e1 !important;
  border-radius:13px !important;
  box-shadow:var(--rv-shadow-sm);
  display:flex;flex-direction:column;gap:7px;
  transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease;
}
body.page-board .kanban-card:hover{
  transform:translateY(-2px);
  border-color:#cbd5e1;
  box-shadow:var(--rv-shadow-md);
}
body.page-board .kanban-card[data-priority="Urgente"]{border-left-color:var(--danger,#ef4444) !important}
body.page-board .kanban-card[data-priority="Alta"]{border-left-color:var(--warn,#f59e0b) !important}
body.page-board .kanban-card[data-priority="Media"]{border-left-color:var(--acc,#2563eb) !important}
body.page-board .kanban-card[data-priority="Baja"]{border-left-color:#94a3b8 !important}
body.page-board .kanban-card.dragging{
  opacity:.9;
  transform:rotate(1.6deg) scale(1.02);
  box-shadow:var(--rv-shadow-lg);
  cursor:grabbing;
}
body.page-board .kanban-card .eyebrow{
  font-family:ui-monospace,SFMono-Regular,Menlo,monospace;
  font-size:10.5px;
  letter-spacing:.04em;
  color:#64748b;
  background:#f1f5f9;
  border-radius:6px;
  padding:2px 7px;
  width:fit-content;
}
body.page-board .kanban-card .ticket-title{
  font-size:13.5px;
  line-height:1.35;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
body.page-board .kanban-card .ticket-meta-line{
  margin:0;font-size:12px;color:#475569;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
body.page-board .kanban-card .ticket-meta-line.subtle{color:#94a3b8;font-size:11.5px}

body.page-board .rv-assignee{
  display:inline-flex;align-items:center;gap:7px;
  font-size:11.5px;color:#475569;
  min-width:0;
}
body.page-board .rv-assignee .rv-avatar{
  width:22px;height:22px;flex:0 0 22px;
  display:inline-flex;align-items:center;justify-content:center;
  border-radius:50%;
  background:linear-gradient(135deg,#dbeafe,#e0e7ff);
  color:#1d4ed8;
  font-size:9.5px;font-weight:800;letter-spacing:.02em;
}
body.page-board .rv-assignee.rv-assignee--none .rv-avatar{background:#f1f5f9;color:#94a3b8}
body.page-board .rv-assignee > span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

body.page-board .kanban-card .card-dates{
  display:flex;gap:12px;flex-wrap:wrap;
  font-size:11px;color:#64748b;
  padding-top:2px;
}
body.page-board .kanban-card .card-date-label{
  display:block;
  font-size:9.5px;font-weight:800;text-transform:uppercase;letter-spacing:.07em;
  color:#94a3b8;
}
body.page-board .kanban-card .card-date-item--closed .card-date-label{color:var(--ok,#16a34a)}

body.page-board .kanban-card .card-last-comment{
  background:#f8fafc;
  border-left:3px solid #cbd5e1;
  border-radius:0 8px 8px 0;
  padding:6px 9px;
  font-size:11.5px;
  color:#475569;
  line-height:1.4;
}
body.page-board .kanban-card .card-comment-time{font-size:10px;color:#94a3b8;margin-top:3px}

body.page-board .kanban-card .card-foot{display:flex;align-items:center;justify-content:space-between;gap:8px}
body.page-board .kanban-card .quick-status{
  border-radius:9px;
  border:1.5px solid var(--line,#e5e7eb);
  font-size:12px;
  padding:5px 8px;
  background:#fff;
  transition:border-color .14s ease,box-shadow .14s ease;
}
body.page-board .kanban-card .quick-status:focus{outline:none;border-color:var(--acc,#2563eb);box-shadow:var(--rv-ring)}

body.page-board .kanban-drop.drop-over{
  outline:2px dashed var(--acc,#2563eb);
  outline-offset:-4px;
  background:rgba(37,99,235,.05);
  border-radius:14px;
}
body.page-board .kanban-empty{
  border:1.5px dashed #cbd5e1;
  border-radius:12px;
  padding:22px 12px;
  color:#94a3b8;
  font-size:12.5px;
  background:#fbfdff;
}

body.page-board .rv-col-toggle{
  flex:0 0 auto;
  width:24px;height:24px;
  display:inline-flex;align-items:center;justify-content:center;
  border:1px solid var(--line,#e5e7eb);
  border-radius:7px;
  background:#fff;
  color:#64748b;
  font-size:12px;line-height:1;
  cursor:pointer;
  transition:border-color .14s ease,color .14s ease,background .14s ease;
}
body.page-board .rv-col-toggle:hover{border-color:var(--acc,#2563eb);color:var(--acc,#2563eb);background:#eff6ff}
@media (max-width:768px){body.page-board .rv-col-toggle{display:none}}

@media (min-width:769px){
  body.page-board .kanban-col.rv-collapsed{
    flex:0 0 56px !important;
    width:56px !important;
    min-width:56px !important;
    max-width:56px !important;
  }
  body.page-board .kanban-col.rv-collapsed .kanban-drop{display:none !important}
  body.page-board .kanban-col.rv-collapsed .kanban-head{
    flex-direction:column !important;
    justify-content:flex-start !important;
    gap:12px;
    height:100%;
    padding:12px 6px !important;
  }
  body.page-board .kanban-col.rv-collapsed .kanban-head > span:first-child{
    writing-mode:vertical-rl;
    transform:rotate(180deg);
    white-space:nowrap;
    overflow:visible;
    order:2;
  }
  body.page-board .kanban-col.rv-collapsed .kanban-head > span:first-child::before{
    width:9px;height:9px;
  }
  body.page-board .kanban-col.rv-collapsed .kanban-head .count{order:1}
  body.page-board .kanban-col.rv-collapsed .rv-col-toggle{order:0}
}

body.page-board .dt-kanban.compact-mode .kanban-card{gap:5px}
body.page-board .dt-kanban.compact-mode .card-last-comment{display:none}
body.page-board .dt-kanban.compact-mode .card-dates{display:none}

body.page-admin-modules .sysdev-page-head .sysdev-hero{background:none !important;border:0 !important;box-shadow:none !important;padding:0 !important}
body.page-admin-modules .sysdev-page-head .sysdev-title-block h1{color:#fff !important}
body.page-admin-modules .sysdev-page-head .sysdev-title-block p{color:rgba(255,255,255,.82) !important}
body.page-admin-modules .sysdev-page-head .sysdev-kicker{color:#9dd3f2 !important}
body.page-admin-modules .sysdev-stat{background:rgba(8,20,48,.38) !important;border:1px solid rgba(255,255,255,.2) !important;box-shadow:none !important}
body.page-admin-modules .sysdev-stat span{color:rgba(255,255,255,.72) !important}
body.page-admin-modules .sysdev-stat strong{color:#fff !important}
body.page-admin-modules .sysdev-page-head .sysdev-info,
body.page-admin-modules .sysdev-page-head .admin-module-note{background:rgba(8,20,48,.38) !important;border:1px solid rgba(255,255,255,.16) !important;color:rgba(255,255,255,.92) !important;box-shadow:none !important}
body.page-admin-modules .sysdev-page-head .sysdev-info strong,
body.page-admin-modules .sysdev-page-head .admin-module-note strong{color:#fff !important}
body.page-admin-modules .sysdev-page-head .sysdev-info span,
body.page-admin-modules .sysdev-page-head .admin-module-note span{color:rgba(255,255,255,.88) !important}
body.page-admin-modules .sysdev-page-head .admin-module-note .badge{border:0}

body.page-admin-modules .sysdev-page-head .admin-module-note .badge{box-shadow:none}
body.page-admin-modules .sysdev-page-head .admin-module-note .badge.info{color:#1d4ed8 !important;background:#dbeafe !important}
body.page-admin-modules .sysdev-page-head .admin-module-note .badge.warn{color:#92400e !important;background:#fef3c7 !important}
body.page-admin-modules .sysdev-page-head .admin-module-note .badge.danger{color:#b91c1c !important;background:#fee2e2 !important}
body.page-admin-modules .sysdev-page-head .admin-module-note .badge.soft{color:#334155 !important;background:#e2e8f0 !important}
body.page-admin-modules .sysdev-page-head .admin-module-note .badge.ok{color:#166534 !important;background:#dcfce7 !important}

.error-logs-page .error-logs-hero.table-card,
.error-logs-page .error-logs-hero{
  background:linear-gradient(130deg,#0f2a5c 0%,#153b74 52%,#1876bc 100%) !important;
  border:1px solid rgba(255,255,255,.06) !important;
}
.error-logs-page .error-logs-hero h2{color:#fff !important}
.error-logs-page .error-logs-hero .eyebrow{color:#9dd3f2 !important}
.error-logs-page .error-logs-hero p,
.error-logs-page .error-logs-hero .muted{color:rgba(255,255,255,.78) !important}

body.page-admin-modules .sysdev-module-status-copy{
  flex:1 1 auto;
  width:auto;
  min-width:0;
  max-width:100%;
  overflow:visible;
  border-radius:0;
  font-weight:inherit;
  line-height:1.2;
}
body.page-admin-modules .sysdev-module-status-copy strong,
body.page-admin-modules .sysdev-module-status-copy small,
body.page-admin-modules .sysdev-module-status-copy code{
  max-width:100%;
  min-width:0;
}
body.page-admin-modules .sysdev-module-status-copy strong{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
body.page-admin-modules .sysdev-module-status-copy small{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
body.page-admin-modules .sysdev-critical-tools,
body.page-admin-modules .sysdev-critical-tools-grid,
body.page-admin-modules .sysdev-critical-tool-card,
body.page-admin-modules .sysdev-critical-tool-card > div,
body.page-admin-modules .sysdev-critical-tool-badges,
body.page-admin-modules .sysdev-critical-tool-card p{
  box-sizing:border-box;
  min-width:0;
  max-width:100%;
}
body.page-admin-modules .sysdev-critical-tools-grid{
  grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));
  width:100%;
  overflow:hidden;
}
body.page-admin-modules .sysdev-critical-tool-card{
  width:100%;
  grid-template-columns:minmax(0,1fr);
  overflow:hidden;
}
body.page-admin-modules .sysdev-critical-tool-card > div:first-child{
  overflow:hidden;
}
body.page-admin-modules .sysdev-critical-tool-card strong,
body.page-admin-modules .sysdev-critical-tool-card small{
  max-width:100%;
  overflow:hidden;
  text-overflow:ellipsis;
}
body.page-admin-modules .sysdev-critical-tool-badges{
  overflow:hidden;
}
body.page-admin-modules .sysdev-critical-tool-badges .badge{
  max-width:100%;
  overflow:hidden;
  text-overflow:ellipsis;
}
body.page-admin-modules .sysdev-critical-tool-card p{
  overflow-wrap:anywhere;
}

/* Admin / System Developer module navigation validation switcher */
body.page-admin-modules .sysdev-module-grid{
  width:100%;
  max-width:100%;
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:8px;
  margin:0 0 18px;
  padding:10px;
  box-sizing:border-box;
  border:1px solid rgba(226,232,240,.9);
  border-radius:18px;
  background:linear-gradient(180deg,#f8fafc,#eef4fb);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 10px 24px rgba(15,23,42,.04);
  overflow:visible;
}
body.page-admin-modules .sysdev-module-card{
  position:relative;
  min-width:0;
  max-width:100%;
  min-height:48px;
  height:auto;
  display:grid;
  grid-template-columns:32px minmax(0,1fr);
  align-items:center;
  gap:10px;
  padding:9px 12px;
  box-sizing:border-box;
  border-radius:14px;
  border:1px solid rgba(226,232,240,.92);
  background:rgba(255,255,255,.86);
  color:#334155;
  box-shadow:none;
  overflow:visible;
  text-decoration:none;
  transition:background .15s ease,border-color .15s ease,box-shadow .15s ease,transform .15s ease;
}
body.page-admin-modules .sysdev-module-card:hover{
  transform:translateY(-1px);
  background:#fff;
  border-color:#bfdbfe;
  box-shadow:0 8px 18px rgba(15,23,42,.06);
}
body.page-admin-modules .sysdev-module-card.active{
  background:#ffffff;
  border-color:#2563eb;
  box-shadow:0 0 0 2px rgba(37,99,235,.10),0 8px 18px rgba(37,99,235,.08);
}
body.page-admin-modules .sysdev-module-card.active::after{
  content:"";
  position:absolute;
  left:0;
  top:10px;
  bottom:10px;
  width:3px;
  border-radius:0 999px 999px 0;
  background:#2563eb;
}
body.page-admin-modules .sysdev-module-icon{
  width:32px;
  height:32px;
  flex:0 0 32px;
  display:grid;
  place-items:center;
  border-radius:10px;
  font-size:16px;
  background:#eef2ff;
}
body.page-admin-modules .sysdev-module-card.active .sysdev-module-icon{
  background:#dbeafe;
}
body.page-admin-modules .sysdev-module-text{
  display:block;
  min-width:0;
  max-width:100%;
  overflow:visible;
}
body.page-admin-modules .sysdev-module-text strong{
  display:block;
  width:100%;
  max-width:100%;
  color:#0f172a;
  font-size:13.5px;
  font-weight:850;
  line-height:1.25;
  white-space:normal;
  overflow:visible;
  text-overflow:clip;
  word-break:normal;
  overflow-wrap:break-word;
}
body.page-admin-modules .sysdev-module-card.active .sysdev-module-text strong{
  color:#1d4ed8;
}
body.page-admin-modules .sysdev-module-text small{
  display:none !important;
}

@media (max-width:760px){
  body.page-admin-modules .sysdev-module-grid{
    grid-template-columns:1fr;
    padding:8px;
  }
  body.page-admin-modules .sysdev-module-card{
    min-height:46px;
    padding:9px 11px;
  }
}

/* Property Visits — observation-first voice + evidence cleanup */
body.page-location-visits .visit-card form[data-visit-voice-form="1"]{
  display:grid;
  gap:14px;
}
body.page-location-visits .visit-observation-field{
  display:grid;
  gap:8px;
  min-width:0;
  width:100%;
  box-sizing:border-box;
}
body.page-location-visits .visit-observation-field label{
  display:grid;
  gap:8px;
  min-width:0;
  font-weight:800;
}
body.page-location-visits .visit-observation-field textarea[data-visit-observation]{
  min-height:156px;
  width:100%;
  resize:vertical;
  line-height:1.5;
  border-radius:16px;
  padding:13px 14px;
  box-sizing:border-box;
}
body.page-location-visits .visit-observation-field.is-invalid textarea[data-visit-observation]{
  border-color:#ef4444;
  box-shadow:0 0 0 3px rgba(239,68,68,.12);
}
body.page-location-visits .visit-speech-preview,
body.page-location-visits [data-visit-live-box],
body.page-location-visits [data-visit-use-transcript]{
  display:none!important;
}
body.page-location-visits .visit-recorder{
  margin:0!important;
  padding:9px!important;
  border:1px solid #e5e7eb!important;
  border-radius:14px!important;
  background:#f8fafc!important;
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  align-items:center!important;
  overflow:visible!important;
}
body.page-location-visits .visit-recorder .btn{
  min-height:38px!important;
  border-radius:999px!important;
  padding:0 14px!important;
  font-size:14px!important;
  white-space:nowrap!important;
}
body.page-location-visits .visit-recorder [data-visit-record-start]{
  flex:1 1 auto;
  justify-content:center;
}
body.page-location-visits .visit-recorder [data-visit-record-pause],
body.page-location-visits .visit-recorder [data-visit-record-stop]{
  flex:0 0 auto;
}
body.page-location-visits .visit-recorder .qn-rec-timer{
  min-width:76px;
  min-height:34px;
  display:none;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:#fff7ed;
  border:1px solid #fed7aa;
  font-size:13px;
  font-weight:800;
  color:#c2410c;
  margin-left:auto;
}
body.page-location-visits .visit-recorder .qn-rec-state,
body.page-location-visits .visit-recorder .visit-speech-help{
  width:100%;
  display:none;
  font-size:12px;
  color:#64748b;
  text-align:center;
  line-height:1.35;
}
body.page-location-visits .visit-recorder .qn-waveform,
body.page-location-visits .visit-recorder .visit-waveform{
  display:none!important;
}
body.page-location-visits .visit-recorder.is-recording,
body.page-location-visits .visit-recorder.is-paused,
body.page-location-visits .visit-recorder.is-processing{
  border-color:#93c5fd!important;
  background:#eff6ff!important;
}
body.page-location-visits .visit-recorder.is-paused{
  border-color:#fed7aa!important;
  background:#fff7ed!important;
}
body.page-location-visits .visit-recorder.is-recording .qn-rec-timer,
body.page-location-visits .visit-recorder.is-paused .qn-rec-timer,
body.page-location-visits .visit-recorder.is-processing .qn-rec-timer{
  display:inline-flex;
}
body.page-location-visits .visit-recorder.is-recording .qn-rec-state,
body.page-location-visits .visit-recorder.is-paused .qn-rec-state,
body.page-location-visits .visit-recorder.is-processing .qn-rec-state{
  display:block;
}
body.page-location-visits .visit-recorder.has-audio-ready .qn-recorded-list{
  width:100%;
}
body.page-location-visits .visit-recorder .qn-recorded-list{
  width:100%;
  gap:8px;
}
body.page-location-visits .visit-recorder .qn-recorded-item{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:8px;
  align-items:center;
  padding:8px;
  border:1px solid #e2e8f0;
  border-radius:12px;
  background:#fff;
}
body.page-location-visits .visit-evidence-field{
  display:grid;
  gap:8px;
  margin-top:0;
  padding:14px;
  border:1px dashed #cbd5e1;
  border-radius:16px;
  background:#f8fafc;
  box-sizing:border-box;
  cursor:pointer;
}
body.page-location-visits .visit-evidence-title{
  font-size:14px;
  font-weight:850;
  color:#0f172a;
}
body.page-location-visits .visit-evidence-picker{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  width:max-content;
  max-width:100%;
  min-height:40px;
  padding:0 14px;
  border-radius:999px;
  background:#fff;
  border:1px solid #bfdbfe;
  color:#1d4ed8;
  font-size:14px;
  font-weight:850;
  box-shadow:0 8px 18px rgba(37,99,235,.08);
}
body.page-location-visits .visit-evidence-field small{
  font-size:12px;
  color:#64748b;
  line-height:1.35;
}
body.page-location-visits .visit-evidence-field [data-visit-file-input]{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  opacity:0!important;
  overflow:hidden!important;
  pointer-events:none!important;
}
body.page-location-visits .visit-file-selection{
  display:flex;
  gap:6px;
  flex-wrap:wrap;
  min-width:0;
}
body.page-location-visits .visit-file-selection[hidden]{display:none!important;}
body.page-location-visits .visit-file-selection span{
  max-width:100%;
  padding:5px 8px;
  border-radius:999px;
  background:#fff;
  border:1px solid #e2e8f0;
  color:#334155;
  font-size:12px;
  font-weight:700;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
body.page-location-visits .visit-geostamp-status{
  margin-top:-4px;
}
body.page-location-visits .visit-submit-row{
  margin-top:0;
}
@media(max-width:760px){
  body.page-location-visits .visit-observation-field textarea[data-visit-observation]{
    min-height:170px;
  }
  body.page-location-visits .visit-recorder{
    display:grid!important;
    grid-template-columns:1fr 1fr;
  }
  body.page-location-visits .visit-recorder [data-visit-record-start],
  body.page-location-visits .visit-recorder .qn-rec-timer,
  body.page-location-visits .visit-recorder .qn-rec-state,
  body.page-location-visits .visit-recorder .visit-speech-help,
  body.page-location-visits .visit-recorder .qn-recorded-list{
    grid-column:1/-1;
    width:100%;
  }
  body.page-location-visits .visit-recorder [data-visit-record-pause],
  body.page-location-visits .visit-recorder [data-visit-record-stop]{
    width:100%;
    justify-content:center;
  }
  body.page-location-visits .visit-evidence-picker{
    width:100%;
  }
  body.page-location-visits .visit-recorder .qn-recorded-item{
    grid-template-columns:1fr;
  }
}


/* Property Visits — v4 dictation-first observation + mobile evidence card */
body.page-location-visits .visit-observation-field{
  display:grid!important;
  gap:10px!important;
  min-width:0!important;
  width:100%!important;
  box-sizing:border-box!important;
}
body.page-location-visits .visit-observation-head{
  display:grid;
  gap:3px;
  min-width:0;
}
body.page-location-visits .visit-observation-head strong{
  color:#0f172a;
  font-size:14px;
  font-weight:900;
  line-height:1.2;
}
body.page-location-visits .visit-observation-head small{
  color:#64748b;
  font-size:12px;
  line-height:1.35;
}
body.page-location-visits .visit-observation-textarea{
  display:grid!important;
  gap:0!important;
  min-width:0!important;
  font-weight:400!important;
}
body.page-location-visits .visit-observation-sr{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
}
body.page-location-visits .visit-observation-field textarea[data-visit-observation]{
  min-height:158px!important;
  border-radius:16px!important;
  padding:14px 15px!important;
  line-height:1.5!important;
  resize:vertical!important;
}
body.page-location-visits .visit-dictation-card,
body.page-location-visits .visit-recorder.visit-dictation-card{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:8px!important;
  margin:0!important;
  padding:12px!important;
  border:1px solid #e5e7eb!important;
  border-radius:16px!important;
  background:linear-gradient(180deg,#ffffff 0%,#f8fafc 100%)!important;
  box-shadow:0 8px 24px rgba(15,23,42,.05)!important;
  overflow:visible!important;
}
body.page-location-visits .visit-dictation-main,
body.page-location-visits .visit-recorder [data-visit-record-start].visit-dictation-main{
  width:100%!important;
  min-height:48px!important;
  border-radius:14px!important;
  font-weight:850!important;
  justify-content:center!important;
  white-space:normal!important;
}
body.page-location-visits .visit-dictation-actions{
  display:none;
  grid-template-columns:1fr 1fr auto;
  gap:8px;
  align-items:center;
  width:100%;
  min-width:0;
}
body.page-location-visits .visit-recorder.is-recording .visit-dictation-actions,
body.page-location-visits .visit-recorder.is-paused .visit-dictation-actions,
body.page-location-visits .visit-recorder.is-processing .visit-dictation-actions{
  display:grid;
}
body.page-location-visits .visit-dictation-actions .btn{
  min-height:40px!important;
  border-radius:12px!important;
  padding:0 12px!important;
}
body.page-location-visits .visit-dictation-actions .qn-rec-timer{
  display:none;
  min-width:74px;
  min-height:40px;
  margin:0!important;
  border-radius:12px;
}
body.page-location-visits .visit-recorder.is-recording .visit-dictation-actions .qn-rec-timer,
body.page-location-visits .visit-recorder.is-paused .visit-dictation-actions .qn-rec-timer,
body.page-location-visits .visit-recorder.is-processing .visit-dictation-actions .qn-rec-timer{
  display:inline-flex;
}
body.page-location-visits .visit-dictation-status{
  display:flex!important;
  align-items:center;
  gap:7px;
  min-height:18px;
  color:#64748b;
  font-size:12px;
  line-height:1.35;
}
body.page-location-visits .visit-dictation-dot{
  flex:0 0 auto;
  width:8px;
  height:8px;
  border-radius:999px;
  background:#94a3b8;
}
body.page-location-visits .visit-recorder.is-recording .visit-dictation-dot{background:#22c55e;box-shadow:0 0 0 3px rgba(34,197,94,.12)}
body.page-location-visits .visit-recorder.is-paused .visit-dictation-dot{background:#f59e0b;box-shadow:0 0 0 3px rgba(245,158,11,.12)}
body.page-location-visits .visit-recorder.is-processing .visit-dictation-dot{background:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.12)}
body.page-location-visits .visit-recorder .qn-rec-state{
  display:inline!important;
  width:auto!important;
  text-align:left!important;
  color:inherit!important;
  font-size:12px!important;
  line-height:1.35!important;
}
body.page-location-visits .visit-recorder .visit-speech-help,
body.page-location-visits .visit-recorder .qn-waveform,
body.page-location-visits .visit-recorder .visit-waveform,
body.page-location-visits .visit-recorder .qn-live-transcript,
body.page-location-visits [data-visit-live-box],
body.page-location-visits [data-visit-use-transcript]{
  display:none!important;
}
body.page-location-visits .visit-evidence-field{
  display:grid!important;
  gap:10px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  cursor:pointer!important;
}
body.page-location-visits .visit-evidence-title{
  font-size:14px!important;
  font-weight:900!important;
  color:#0f172a!important;
  line-height:1.2!important;
}
body.page-location-visits .visit-evidence-card{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:center;
  gap:12px;
  padding:15px;
  border:1px solid #e5e7eb;
  border-radius:16px;
  background:#fff;
  box-shadow:0 8px 24px rgba(15,23,42,.045);
  min-width:0;
  transition:border-color .15s ease, box-shadow .15s ease, transform .15s ease;
}
body.page-location-visits .visit-evidence-field:hover .visit-evidence-card{
  border-color:#cbd5e1;
  box-shadow:0 12px 30px rgba(15,23,42,.07);
  transform:translateY(-1px);
}
body.page-location-visits .visit-evidence-icon{
  width:44px;
  height:44px;
  display:grid;
  place-items:center;
  border-radius:15px;
  background:#f8fafc;
  border:1px solid #e2e8f0;
  color:#1d4ed8;
  font-size:24px;
  font-weight:900;
}
body.page-location-visits .visit-evidence-copy{
  display:grid;
  gap:3px;
  min-width:0;
}
body.page-location-visits .visit-evidence-copy strong{
  color:#0f172a;
  font-size:15px;
  line-height:1.2;
}
body.page-location-visits .visit-evidence-copy small{
  color:#64748b;
  font-size:12px;
  line-height:1.35;
}
body.page-location-visits .visit-evidence-actions{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
}
body.page-location-visits .visit-evidence-actions span{
  min-height:36px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  padding:0 10px;
  border:1px solid #e5e7eb;
  border-radius:12px;
  background:#f8fafc;
  color:#334155;
  font-size:12px;
  font-weight:800;
  white-space:nowrap;
}
body.page-location-visits .visit-file-summary{
  color:#64748b;
  font-size:12px;
  line-height:1.35;
}
body.page-location-visits .visit-file-selection{
  display:grid!important;
  gap:7px!important;
  min-width:0!important;
}
body.page-location-visits .visit-file-selection[hidden]{display:none!important;}
body.page-location-visits .visit-file-selection span{
  display:flex!important;
  align-items:center;
  gap:8px;
  max-width:100%;
  min-width:0;
  padding:8px 10px!important;
  border-radius:12px!important;
  background:#fff!important;
  border:1px solid #e5e7eb!important;
  color:#334155!important;
  font-size:12px!important;
  font-weight:750!important;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
body.page-location-visits .visit-file-selection b{
  flex:0 0 auto;
  font-size:14px;
}
@media(max-width:760px){
  body.page-location-visits .visit-dictation-actions{grid-template-columns:1fr 1fr;}
  body.page-location-visits .visit-dictation-actions .qn-rec-timer{grid-column:1/-1;width:100%;justify-content:center;}
  body.page-location-visits .visit-observation-field textarea[data-visit-observation]{min-height:170px!important;}
  body.page-location-visits .visit-evidence-actions{grid-template-columns:1fr;}
  body.page-location-visits .visit-evidence-card{padding:14px;}
}

/* Property Visits — v5 inline observation tool + simplified evidence upload */
body.page-location-visits .visit-observation-field{
  display:grid!important;
  gap:9px!important;
}
body.page-location-visits .visit-observation-head{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:start!important;
  gap:10px 12px!important;
  width:100%!important;
  min-width:0!important;
}
body.page-location-visits .visit-observation-copy{
  display:grid!important;
  gap:3px!important;
  min-width:0!important;
}
body.page-location-visits .visit-dictation-inline,
body.page-location-visits .visit-recorder.visit-dictation-inline{
  display:grid!important;
  grid-template-columns:auto!important;
  justify-items:end!important;
  align-items:start!important;
  gap:6px!important;
  width:auto!important;
  min-width:min(100%,220px)!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
}
body.page-location-visits .visit-recorder.visit-dictation-inline [data-visit-record-start].visit-dictation-main{
  width:auto!important;
  min-width:0!important;
  min-height:38px!important;
  padding:0 13px!important;
  border-radius:999px!important;
  font-size:13px!important;
  font-weight:850!important;
  white-space:nowrap!important;
}
body.page-location-visits .visit-recorder.visit-dictation-inline .visit-dictation-actions{
  display:none!important;
  grid-template-columns:auto auto auto!important;
  justify-content:end!important;
  align-items:center!important;
  gap:6px!important;
  width:auto!important;
  max-width:100%!important;
}
body.page-location-visits .visit-recorder.visit-dictation-inline.is-recording .visit-dictation-actions,
body.page-location-visits .visit-recorder.visit-dictation-inline.is-paused .visit-dictation-actions,
body.page-location-visits .visit-recorder.visit-dictation-inline.is-processing .visit-dictation-actions{
  display:grid!important;
}
body.page-location-visits .visit-recorder.visit-dictation-inline .visit-dictation-actions .btn{
  min-height:34px!important;
  padding:0 10px!important;
  border-radius:999px!important;
  font-size:12px!important;
}
body.page-location-visits .visit-recorder.visit-dictation-inline .visit-dictation-actions .qn-rec-timer{
  min-width:62px!important;
  min-height:34px!important;
  padding:0 10px!important;
  border-radius:999px!important;
  font-size:12px!important;
}
body.page-location-visits .visit-recorder.visit-dictation-inline .visit-dictation-status{
  justify-self:end!important;
  max-width:100%!important;
  font-size:11px!important;
  color:#64748b!important;
  white-space:nowrap!important;
}
body.page-location-visits .visit-recorder.visit-dictation-inline .visit-speech-help,
body.page-location-visits .visit-recorder.visit-dictation-inline .qn-waveform,
body.page-location-visits .visit-recorder.visit-dictation-inline .visit-waveform,
body.page-location-visits .visit-recorder.visit-dictation-inline .qn-live-transcript,
body.page-location-visits .visit-recorder.visit-dictation-inline .qn-recorded-list,
body.page-location-visits .visit-speech-preview,
body.page-location-visits [data-visit-live-box],
body.page-location-visits [data-visit-use-transcript]{
  display:none!important;
}
body.page-location-visits .visit-observation-field textarea[data-visit-observation]{
  margin-top:0!important;
}
body.page-location-visits .visit-evidence-title,
body.page-location-visits .visit-evidence-actions{
  display:none!important;
}
body.page-location-visits .visit-evidence-field{
  display:grid!important;
  gap:8px!important;
  width:100%!important;
  min-width:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
}
body.page-location-visits .visit-evidence-card{
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr)!important;
  align-items:center!important;
  gap:12px!important;
  width:100%!important;
  min-width:0!important;
  padding:14px!important;
  border:1px solid #e5e7eb!important;
  border-radius:16px!important;
  background:linear-gradient(180deg,#fff,#f8fafc)!important;
  box-shadow:0 8px 20px rgba(15,23,42,.045)!important;
}
body.page-location-visits .visit-evidence-copy strong{
  font-size:15px!important;
  font-weight:900!important;
  line-height:1.2!important;
}
body.page-location-visits .visit-evidence-copy small{
  font-size:12px!important;
  color:#64748b!important;
  line-height:1.35!important;
}
body.page-location-visits .visit-file-summary{
  padding-left:2px!important;
}
@media(max-width:760px){
  body.page-location-visits .visit-observation-head{
    grid-template-columns:1fr!important;
  }
  body.page-location-visits .visit-dictation-inline,
  body.page-location-visits .visit-recorder.visit-dictation-inline{
    justify-items:stretch!important;
    width:100%!important;
    min-width:0!important;
  }
  body.page-location-visits .visit-recorder.visit-dictation-inline [data-visit-record-start].visit-dictation-main,
  body.page-location-visits .visit-recorder.visit-dictation-inline .visit-dictation-actions{
    width:100%!important;
  }
  body.page-location-visits .visit-recorder.visit-dictation-inline .visit-dictation-actions{
    grid-template-columns:1fr 1fr auto!important;
    justify-content:stretch!important;
  }
  body.page-location-visits .visit-recorder.visit-dictation-inline .visit-dictation-status{
    justify-self:start!important;
  }
}

/* Property Visits — v6 containment, clean dictation controls, removable evidence files */
body.page-location-visits,
body.page-location-visits .main,
body.page-location-visits .visit-card,
body.page-location-visits .visit-card form,
body.page-location-visits .visit-observation-field,
body.page-location-visits .visit-observation-head,
body.page-location-visits .visit-observation-textarea,
body.page-location-visits .visit-evidence-field,
body.page-location-visits .visit-evidence-card,
body.page-location-visits .visit-file-selection,
body.page-location-visits .request-btn-row{
  box-sizing:border-box!important;
  max-width:100%!important;
  min-width:0!important;
}
body.page-location-visits .main{
  overflow-x:hidden!important;
}
body.page-location-visits .visit-card{
  width:100%!important;
  overflow:hidden!important;
}
body.page-location-visits .visit-card form{
  width:100%!important;
  overflow:visible!important;
}
body.page-location-visits .form-grid,
body.page-location-visits .form-grid > label{
  min-width:0!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}
body.page-location-visits .visit-recorder.visit-dictation-inline [data-visit-record-start].visit-dictation-main{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  visibility:visible!important;
  opacity:1!important;
  background:#fff!important;
  color:#0f172a!important;
  border:1px solid #dbe4ef!important;
  box-shadow:0 6px 14px rgba(15,23,42,.045)!important;
}
body.page-location-visits .visit-recorder.visit-dictation-inline [data-visit-record-start].visit-dictation-main.primary{
  background:linear-gradient(180deg,#ffffff,#f8fafc)!important;
  color:#0f172a!important;
}
body.page-location-visits .visit-recorder.visit-dictation-inline .visit-dictation-actions{
  grid-template-columns:auto auto auto!important;
  grid-auto-flow:column!important;
  justify-content:end!important;
  align-items:center!important;
  gap:7px!important;
  padding:6px!important;
  border:1px solid #e5e7eb!important;
  border-radius:999px!important;
  background:#ffffff!important;
  box-shadow:0 8px 18px rgba(15,23,42,.045)!important;
}
body.page-location-visits .visit-recorder.visit-dictation-inline .visit-dictation-actions .qn-rec-timer{
  order:1!important;
  min-width:68px!important;
  min-height:32px!important;
  border-radius:999px!important;
  background:#fff7ed!important;
  border:1px solid #fed7aa!important;
  color:#c2410c!important;
}
body.page-location-visits .visit-recorder.visit-dictation-inline .visit-dictation-actions [data-visit-record-pause]{order:2!important;}
body.page-location-visits .visit-recorder.visit-dictation-inline .visit-dictation-actions [data-visit-record-stop]{order:3!important;}
body.page-location-visits .visit-recorder.visit-dictation-inline .visit-dictation-actions .btn{
  min-height:32px!important;
  padding:0 12px!important;
  border-radius:999px!important;
  white-space:nowrap!important;
}
body.page-location-visits .visit-evidence-card{
  box-sizing:border-box!important;
  width:100%!important;
  max-width:100%!important;
  grid-template-columns:46px minmax(0,1fr)!important;
  overflow:hidden!important;
}
body.page-location-visits .visit-evidence-copy,
body.page-location-visits .visit-evidence-copy strong,
body.page-location-visits .visit-evidence-copy small{
  min-width:0!important;
  max-width:100%!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
body.page-location-visits .visit-file-selection{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:8px!important;
  width:100%!important;
  max-width:100%!important;
}
body.page-location-visits .visit-file-selection[hidden]{display:none!important;}
body.page-location-visits .visit-file-selection .visit-file-chip{
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:8px!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
  padding:8px 8px 8px 10px!important;
  border:1px solid #e5e7eb!important;
  border-radius:12px!important;
  background:#fff!important;
  color:#334155!important;
  overflow:hidden!important;
}
body.page-location-visits .visit-file-selection .visit-file-name{
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  font-size:12px!important;
  font-weight:750!important;
}
body.page-location-visits .visit-file-remove{
  width:28px!important;
  height:28px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  border:1px solid #fecaca!important;
  border-radius:999px!important;
  background:#fff7f7!important;
  color:#b91c1c!important;
  font-size:18px!important;
  line-height:1!important;
  cursor:pointer!important;
}
body.page-location-visits .visit-file-remove:hover{
  background:#fee2e2!important;
}
@media(max-width:760px){
  body.page-location-visits .main{padding-left:14px!important;padding-right:14px!important;}
  body.page-location-visits .visit-recorder.visit-dictation-inline .visit-dictation-actions{
    width:100%!important;
    grid-template-columns:auto 1fr 1fr!important;
    border-radius:16px!important;
  }
  body.page-location-visits .visit-recorder.visit-dictation-inline .visit-dictation-actions .qn-rec-timer{
    grid-column:auto!important;
    width:auto!important;
  }
  body.page-location-visits .visit-evidence-card{padding:13px!important;}
}
body.page-location-visits .visit-file-selection .visit-file-name{
  display:block!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:inherit!important;
}


/* Property Visits — v7 voice warning containment + single-line recording controls */
body.page-location-visits{
  overflow-x:hidden!important;
}
body.page-location-visits .main,
body.page-location-visits .main *{
  box-sizing:border-box;
}
body.page-location-visits .visit-observation-head{
  max-width:100%!important;
  overflow:hidden!important;
}
body.page-location-visits .visit-recorder.visit-dictation-inline{
  max-width:100%!important;
  min-width:0!important;
  overflow:hidden!important;
  align-self:start!important;
}
body.page-location-visits .visit-recorder.visit-dictation-inline [data-visit-record-start].visit-dictation-main{
  max-width:100%!important;
  flex:0 1 auto!important;
  min-width:0!important;
}
body.page-location-visits .visit-recorder.visit-dictation-inline .visit-dictation-actions{
  display:none!important;
  grid-template-columns:auto auto auto!important;
  grid-auto-flow:column!important;
  align-items:center!important;
  justify-content:end!important;
  gap:0!important;
  max-width:100%!important;
  overflow:hidden!important;
  padding:4px!important;
  border:1px solid #e5e7eb!important;
  border-radius:999px!important;
  background:#fff!important;
  box-shadow:0 8px 18px rgba(15,23,42,.045)!important;
}
body.page-location-visits .visit-recorder.visit-dictation-inline.is-recording .visit-dictation-actions,
body.page-location-visits .visit-recorder.visit-dictation-inline.is-paused .visit-dictation-actions,
body.page-location-visits .visit-recorder.visit-dictation-inline.is-processing .visit-dictation-actions{
  display:grid!important;
}
body.page-location-visits .visit-recorder.visit-dictation-inline .visit-dictation-actions > *{
  min-width:0!important;
  margin:0!important;
  box-shadow:none!important;
}
body.page-location-visits .visit-recorder.visit-dictation-inline .visit-dictation-actions > * + *{
  border-left:1px solid #e5e7eb!important;
}
body.page-location-visits .visit-recorder.visit-dictation-inline .visit-dictation-actions .qn-rec-timer,
body.page-location-visits .visit-recorder.visit-dictation-inline .visit-dictation-actions .btn{
  height:32px!important;
  min-height:32px!important;
  border:0!important;
  border-radius:0!important;
  background:#fff!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  white-space:nowrap!important;
  font-size:12px!important;
  line-height:1!important;
}
body.page-location-visits .visit-recorder.visit-dictation-inline .visit-dictation-actions .qn-rec-timer{
  order:1!important;
  min-width:64px!important;
  padding:0 10px!important;
  color:#c2410c!important;
  font-weight:900!important;
  font-variant-numeric:tabular-nums!important;
}
body.page-location-visits .visit-recorder.visit-dictation-inline .visit-dictation-actions [data-visit-record-pause]{
  order:2!important;
  padding:0 12px!important;
  color:#334155!important;
}
body.page-location-visits .visit-recorder.visit-dictation-inline .visit-dictation-actions [data-visit-record-stop]{
  order:3!important;
  padding:0 12px!important;
  color:#1d4ed8!important;
  font-weight:850!important;
}
body.page-location-visits .visit-recorder.visit-dictation-inline .visit-dictation-status{
  max-width:min(100%,260px)!important;
  min-width:0!important;
  overflow:hidden!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:6px!important;
  white-space:normal!important;
}
body.page-location-visits .visit-recorder.visit-dictation-inline .qn-rec-state{
  min-width:0!important;
  max-width:100%!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  overflow-wrap:normal!important;
  font-size:11px!important;
  line-height:1.25!important;
  text-align:right!important;
}
body.page-location-visits .visit-recorder.visit-dictation-inline.is-recording .qn-rec-state,
body.page-location-visits .visit-recorder.visit-dictation-inline.is-paused .qn-rec-state,
body.page-location-visits .visit-recorder.visit-dictation-inline.is-processing .qn-rec-state{
  max-width:190px!important;
}
body.page-location-visits .visit-recorder.visit-dictation-inline .visit-speech-help{
  display:none!important;
}
@media(max-width:760px){
  body.page-location-visits .visit-observation-head{
    overflow:visible!important;
  }
  body.page-location-visits .visit-recorder.visit-dictation-inline{
    width:100%!important;
    justify-items:stretch!important;
  }
  body.page-location-visits .visit-recorder.visit-dictation-inline .visit-dictation-actions{
    width:100%!important;
    grid-template-columns:minmax(62px,.72fr) minmax(0,1fr) minmax(0,1fr)!important;
    border-radius:16px!important;
  }
  body.page-location-visits .visit-recorder.visit-dictation-inline .visit-dictation-status{
    max-width:100%!important;
    justify-content:flex-start!important;
  }
  body.page-location-visits .visit-recorder.visit-dictation-inline .qn-rec-state{
    text-align:left!important;
  }
}


/* Property Visits — v8 stable inline recorder row */
body.page-location-visits{
  overflow-x:hidden!important;
}
body.page-location-visits .visit-observation-field,
body.page-location-visits .visit-observation-head,
body.page-location-visits .visit-recorder.visit-dictation-inline,
body.page-location-visits .visit-dictation-actions,
body.page-location-visits .visit-dictation-status{
  box-sizing:border-box!important;
  min-width:0!important;
  max-width:100%!important;
}
body.page-location-visits .visit-observation-head{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,max-content)!important;
  align-items:start!important;
  gap:8px 12px!important;
  width:100%!important;
  overflow:visible!important;
}
body.page-location-visits .visit-recorder.visit-dictation-inline{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  justify-items:end!important;
  align-items:start!important;
  gap:5px!important;
  width:auto!important;
  max-width:min(100%,330px)!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
}
body.page-location-visits .visit-recorder.visit-dictation-inline [data-visit-record-start].visit-dictation-main{
  width:auto!important;
  max-width:100%!important;
  min-width:0!important;
  min-height:38px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
body.page-location-visits .visit-recorder.visit-dictation-inline.is-recording [data-visit-record-start].visit-dictation-main,
body.page-location-visits .visit-recorder.visit-dictation-inline.is-paused [data-visit-record-start].visit-dictation-main,
body.page-location-visits .visit-recorder.visit-dictation-inline.is-processing [data-visit-record-start].visit-dictation-main{
  display:none!important;
  visibility:hidden!important;
  width:0!important;
  min-width:0!important;
  height:0!important;
  padding:0!important;
  border:0!important;
  overflow:hidden!important;
}
body.page-location-visits .visit-recorder.visit-dictation-inline .visit-dictation-actions{
  display:none!important;
  align-items:center!important;
  justify-content:flex-end!important;
  flex-wrap:nowrap!important;
  gap:0!important;
  width:auto!important;
  max-width:100%!important;
  min-width:0!important;
  padding:4px!important;
  border:1px solid #e5e7eb!important;
  border-radius:999px!important;
  background:#fff!important;
  box-shadow:0 8px 18px rgba(15,23,42,.045)!important;
  overflow:hidden!important;
  white-space:nowrap!important;
}
body.page-location-visits .visit-recorder.visit-dictation-inline.is-recording .visit-dictation-actions,
body.page-location-visits .visit-recorder.visit-dictation-inline.is-paused .visit-dictation-actions{
  display:inline-flex!important;
}
body.page-location-visits .visit-recorder.visit-dictation-inline .visit-dictation-actions > *{
  flex:0 0 auto!important;
  margin:0!important;
  min-width:0!important;
  box-shadow:none!important;
}
body.page-location-visits .visit-recorder.visit-dictation-inline .visit-dictation-actions > * + *{
  border-left:1px solid #e5e7eb!important;
}
body.page-location-visits .visit-recorder.visit-dictation-inline .visit-dictation-actions .qn-rec-timer,
body.page-location-visits .visit-recorder.visit-dictation-inline .visit-dictation-actions .btn{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  height:32px!important;
  min-height:32px!important;
  border:0!important;
  border-radius:0!important;
  background:#fff!important;
  white-space:nowrap!important;
  line-height:1!important;
  font-size:12px!important;
}
body.page-location-visits .visit-recorder.visit-dictation-inline .visit-dictation-actions .qn-rec-timer{
  order:1!important;
  min-width:64px!important;
  padding:0 10px!important;
  color:#c2410c!important;
  font-weight:900!important;
  font-variant-numeric:tabular-nums!important;
}
body.page-location-visits .visit-recorder.visit-dictation-inline .visit-dictation-actions [data-visit-record-pause]{
  order:2!important;
  padding:0 12px!important;
  color:#334155!important;
}
body.page-location-visits .visit-recorder.visit-dictation-inline .visit-dictation-actions [data-visit-record-stop]{
  order:3!important;
  padding:0 12px!important;
  color:#1d4ed8!important;
  font-weight:850!important;
}
body.page-location-visits .visit-recorder.visit-dictation-inline .visit-dictation-status{
  width:auto!important;
  max-width:min(100%,220px)!important;
  justify-self:end!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:6px!important;
  overflow:hidden!important;
}
body.page-location-visits .visit-recorder.visit-dictation-inline .qn-rec-state{
  min-width:0!important;
  max-width:100%!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  font-size:11px!important;
  line-height:1.25!important;
  text-align:right!important;
}
@media(max-width:760px){
  body.page-location-visits .visit-observation-head{
    grid-template-columns:1fr!important;
  }
  body.page-location-visits .visit-recorder.visit-dictation-inline{
    width:100%!important;
    max-width:100%!important;
    justify-items:stretch!important;
  }
  body.page-location-visits .visit-recorder.visit-dictation-inline .visit-dictation-actions{
    width:100%!important;
    display:none!important;
    border-radius:16px!important;
  }
  body.page-location-visits .visit-recorder.visit-dictation-inline.is-recording .visit-dictation-actions,
  body.page-location-visits .visit-recorder.visit-dictation-inline.is-paused .visit-dictation-actions{
    display:grid!important;
    grid-template-columns:minmax(62px,.7fr) minmax(0,1fr) minmax(0,1fr)!important;
  }
  body.page-location-visits .visit-recorder.visit-dictation-inline .visit-dictation-status{
    max-width:100%!important;
    justify-self:start!important;
    justify-content:flex-start!important;
  }
  body.page-location-visits .visit-recorder.visit-dictation-inline .qn-rec-state{
    text-align:left!important;
  }
}

/* Property Visits — v9 dictation controls hard lock
   Goal: active state must render exactly timer | pause | finish, not a single finish button. */
body.page-location-visits .visit-recorder.visit-dictation-inline.is-recording,
body.page-location-visits .visit-recorder.visit-dictation-inline.is-paused{
  justify-items:end!important;
  overflow:visible!important;
}
body.page-location-visits .visit-recorder.visit-dictation-inline.is-recording [data-visit-record-start].visit-dictation-main,
body.page-location-visits .visit-recorder.visit-dictation-inline.is-paused [data-visit-record-start].visit-dictation-main{
  display:none!important;
  visibility:hidden!important;
  width:0!important;
  height:0!important;
  min-width:0!important;
  min-height:0!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  pointer-events:none!important;
}
body.page-location-visits .visit-recorder.visit-dictation-inline.is-recording .visit-dictation-actions,
body.page-location-visits .visit-recorder.visit-dictation-inline.is-paused .visit-dictation-actions{
  display:grid!important;
  grid-template-columns:72px 82px 96px!important;
  align-items:center!important;
  justify-content:end!important;
  width:250px!important;
  max-width:100%!important;
  min-width:250px!important;
  gap:0!important;
  padding:4px!important;
  border:1px solid #e5e7eb!important;
  border-radius:999px!important;
  background:#fff!important;
  box-shadow:0 8px 18px rgba(15,23,42,.045)!important;
  overflow:visible!important;
}
body.page-location-visits .visit-recorder.visit-dictation-inline.is-recording .visit-dictation-actions .qn-rec-timer,
body.page-location-visits .visit-recorder.visit-dictation-inline.is-recording .visit-dictation-actions [data-visit-record-pause],
body.page-location-visits .visit-recorder.visit-dictation-inline.is-recording .visit-dictation-actions [data-visit-record-stop],
body.page-location-visits .visit-recorder.visit-dictation-inline.is-paused .visit-dictation-actions .qn-rec-timer,
body.page-location-visits .visit-recorder.visit-dictation-inline.is-paused .visit-dictation-actions [data-visit-record-pause],
body.page-location-visits .visit-recorder.visit-dictation-inline.is-paused .visit-dictation-actions [data-visit-record-stop]{
  display:inline-flex!important;
  visibility:visible!important;
  opacity:1!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  height:32px!important;
  min-height:32px!important;
  margin:0!important;
  padding:0 10px!important;
  border:0!important;
  border-radius:0!important;
  background:#fff!important;
  box-shadow:none!important;
  font-size:12px!important;
  line-height:1!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
body.page-location-visits .visit-recorder.visit-dictation-inline.is-recording .visit-dictation-actions .qn-rec-timer,
body.page-location-visits .visit-recorder.visit-dictation-inline.is-paused .visit-dictation-actions .qn-rec-timer{
  order:1!important;
  color:#c2410c!important;
  font-weight:900!important;
  font-variant-numeric:tabular-nums!important;
}
body.page-location-visits .visit-recorder.visit-dictation-inline.is-recording .visit-dictation-actions [data-visit-record-pause],
body.page-location-visits .visit-recorder.visit-dictation-inline.is-paused .visit-dictation-actions [data-visit-record-pause]{
  order:2!important;
  color:#334155!important;
  border-left:1px solid #e5e7eb!important;
}
body.page-location-visits .visit-recorder.visit-dictation-inline.is-recording .visit-dictation-actions [data-visit-record-stop],
body.page-location-visits .visit-recorder.visit-dictation-inline.is-paused .visit-dictation-actions [data-visit-record-stop]{
  order:3!important;
  color:#1d4ed8!important;
  font-weight:850!important;
  border-left:1px solid #e5e7eb!important;
}
@media(max-width:760px){
  body.page-location-visits .visit-recorder.visit-dictation-inline.is-recording .visit-dictation-actions,
  body.page-location-visits .visit-recorder.visit-dictation-inline.is-paused .visit-dictation-actions{
    width:100%!important;
    min-width:0!important;
    grid-template-columns:minmax(64px,.8fr) minmax(72px,1fr) minmax(86px,1fr)!important;
    border-radius:16px!important;
  }
}

/* Property Visits — v10 final recorder row + local warning
   Active state is hard-locked to: timer | pause | finish. */
body.page-location-visits .visit-recorder.visit-dictation-inline{
  max-width:100%!important;
  min-width:0!important;
}
body.page-location-visits .visit-recorder.visit-dictation-inline.is-recording,
body.page-location-visits .visit-recorder.visit-dictation-inline.is-paused{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  justify-items:end!important;
  gap:6px!important;
}
body.page-location-visits .visit-recorder.visit-dictation-inline.is-recording [data-visit-record-start].visit-dictation-main,
body.page-location-visits .visit-recorder.visit-dictation-inline.is-paused [data-visit-record-start].visit-dictation-main{
  display:none!important;
  visibility:hidden!important;
  opacity:0!important;
  width:0!important;
  min-width:0!important;
  height:0!important;
  min-height:0!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  overflow:hidden!important;
  pointer-events:none!important;
}
body.page-location-visits .visit-recorder.visit-dictation-inline.is-recording .visit-dictation-actions,
body.page-location-visits .visit-recorder.visit-dictation-inline.is-paused .visit-dictation-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  flex-wrap:nowrap!important;
  gap:0!important;
  width:auto!important;
  max-width:100%!important;
  min-width:0!important;
  padding:4px!important;
  border:1px solid #e5e7eb!important;
  border-radius:999px!important;
  background:#fff!important;
  box-shadow:0 8px 18px rgba(15,23,42,.045)!important;
  overflow:hidden!important;
}
body.page-location-visits .visit-recorder.visit-dictation-inline.is-recording .visit-dictation-actions .qn-rec-timer,
body.page-location-visits .visit-recorder.visit-dictation-inline.is-recording .visit-dictation-actions [data-visit-record-pause],
body.page-location-visits .visit-recorder.visit-dictation-inline.is-recording .visit-dictation-actions [data-visit-record-stop],
body.page-location-visits .visit-recorder.visit-dictation-inline.is-paused .visit-dictation-actions .qn-rec-timer,
body.page-location-visits .visit-recorder.visit-dictation-inline.is-paused .visit-dictation-actions [data-visit-record-pause],
body.page-location-visits .visit-recorder.visit-dictation-inline.is-paused .visit-dictation-actions [data-visit-record-stop]{
  display:inline-flex!important;
  visibility:visible!important;
  opacity:1!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 auto!important;
  height:32px!important;
  min-height:32px!important;
  margin:0!important;
  padding:0 12px!important;
  border:0!important;
  border-radius:0!important;
  background:#fff!important;
  box-shadow:none!important;
  line-height:1!important;
  font-size:12px!important;
  white-space:nowrap!important;
}
body.page-location-visits .visit-recorder.visit-dictation-inline.is-recording .visit-dictation-actions .qn-rec-timer,
body.page-location-visits .visit-recorder.visit-dictation-inline.is-paused .visit-dictation-actions .qn-rec-timer{
  order:1!important;
  min-width:68px!important;
  color:#c2410c!important;
  font-weight:900!important;
  font-variant-numeric:tabular-nums!important;
}
body.page-location-visits .visit-recorder.visit-dictation-inline.is-recording .visit-dictation-actions [data-visit-record-pause],
body.page-location-visits .visit-recorder.visit-dictation-inline.is-paused .visit-dictation-actions [data-visit-record-pause]{
  order:2!important;
  min-width:74px!important;
  color:#334155!important;
  border-left:1px solid #e5e7eb!important;
}
body.page-location-visits .visit-recorder.visit-dictation-inline.is-recording .visit-dictation-actions [data-visit-record-stop],
body.page-location-visits .visit-recorder.visit-dictation-inline.is-paused .visit-dictation-actions [data-visit-record-stop]{
  order:3!important;
  min-width:88px!important;
  color:#1d4ed8!important;
  font-weight:850!important;
  border-left:1px solid #e5e7eb!important;
}
body.page-location-visits .visit-recorder.visit-dictation-inline .visit-dictation-status{
  display:flex!important;
  align-items:center!important;
  gap:6px!important;
  max-width:100%!important;
  min-width:0!important;
  overflow:hidden!important;
}
body.page-location-visits .visit-recorder.visit-dictation-inline[data-visit-voice-status="warn"] .visit-dictation-status{
  width:100%!important;
  justify-content:flex-start!important;
  padding:7px 10px!important;
  border:1px solid #fed7aa!important;
  border-radius:12px!important;
  background:#fff7ed!important;
  color:#9a3412!important;
}
body.page-location-visits .visit-recorder.visit-dictation-inline[data-visit-voice-status="warn"] .visit-dictation-dot{
  background:#f97316!important;
  box-shadow:0 0 0 3px rgba(249,115,22,.12)!important;
}
body.page-location-visits .visit-recorder.visit-dictation-inline[data-visit-voice-status="warn"] .qn-rec-state{
  color:#9a3412!important;
  font-weight:750!important;
  white-space:normal!important;
  text-align:left!important;
  overflow:visible!important;
  text-overflow:clip!important;
}
@media(max-width:760px){
  body.page-location-visits .visit-recorder.visit-dictation-inline.is-recording .visit-dictation-actions,
  body.page-location-visits .visit-recorder.visit-dictation-inline.is-paused .visit-dictation-actions{
    width:100%!important;
    border-radius:16px!important;
  }
  body.page-location-visits .visit-recorder.visit-dictation-inline.is-recording .visit-dictation-actions .qn-rec-timer,
  body.page-location-visits .visit-recorder.visit-dictation-inline.is-paused .visit-dictation-actions .qn-rec-timer{
    min-width:62px!important;
    padding:0 8px!important;
  }
  body.page-location-visits .visit-recorder.visit-dictation-inline.is-recording .visit-dictation-actions [data-visit-record-pause],
  body.page-location-visits .visit-recorder.visit-dictation-inline.is-paused .visit-dictation-actions [data-visit-record-pause]{
    min-width:0!important;
    flex:1 1 auto!important;
  }
  body.page-location-visits .visit-recorder.visit-dictation-inline.is-recording .visit-dictation-actions [data-visit-record-stop],
  body.page-location-visits .visit-recorder.visit-dictation-inline.is-paused .visit-dictation-actions [data-visit-record-stop]{
    min-width:0!important;
    flex:1 1 auto!important;
  }
}

/* Property Visits — v11 recorder mobile-safe row + evidence previews */
body.page-location-visits{overflow-x:hidden!important;}
body.page-location-visits .visit-observation-field,
body.page-location-visits .visit-observation-head,
body.page-location-visits .visit-recorder.visit-dictation-inline,
body.page-location-visits .visit-dictation-actions,
body.page-location-visits .visit-evidence-field,
body.page-location-visits .visit-evidence-card,
body.page-location-visits .visit-file-selection,
body.page-location-visits .visit-file-preview-item{box-sizing:border-box!important;min-width:0!important;max-width:100%!important;}
body.page-location-visits .visit-observation-head{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(286px,max-content)!important;align-items:start!important;gap:10px 14px!important;overflow:visible!important;width:100%!important;}
body.page-location-visits .visit-recorder.visit-dictation-inline{display:grid!important;grid-template-columns:minmax(0,1fr)!important;justify-items:end!important;align-items:start!important;gap:6px!important;width:auto!important;max-width:min(100%,360px)!important;overflow:visible!important;}
body.page-location-visits .visit-recorder.visit-dictation-inline [data-visit-record-start].visit-dictation-main{justify-self:end!important;width:auto!important;max-width:100%!important;min-width:0!important;}
body.page-location-visits .visit-recorder.visit-dictation-inline.is-recording,
body.page-location-visits .visit-recorder.visit-dictation-inline.is-paused{justify-items:end!important;}
body.page-location-visits .visit-recorder.visit-dictation-inline.is-recording [data-visit-record-start].visit-dictation-main,
body.page-location-visits .visit-recorder.visit-dictation-inline.is-paused [data-visit-record-start].visit-dictation-main{display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important;width:0!important;height:0!important;min-width:0!important;min-height:0!important;padding:0!important;margin:0!important;border:0!important;}
body.page-location-visits .visit-recorder.visit-dictation-inline .visit-dictation-actions{display:none!important;align-items:center!important;gap:0!important;min-width:0!important;max-width:100%!important;overflow:hidden!important;padding:4px!important;border:1px solid #e5e7eb!important;border-radius:999px!important;background:#fff!important;box-shadow:0 8px 18px rgba(15,23,42,.045)!important;}
body.page-location-visits .visit-recorder.visit-dictation-inline.is-recording .visit-dictation-actions,
body.page-location-visits .visit-recorder.visit-dictation-inline.is-paused .visit-dictation-actions{display:grid!important;grid-template-columns:76px 86px 102px!important;width:auto!important;justify-content:end!important;}
body.page-location-visits .visit-recorder.visit-dictation-inline.is-recording .visit-dictation-actions .qn-rec-timer,
body.page-location-visits .visit-recorder.visit-dictation-inline.is-recording .visit-dictation-actions [data-visit-record-pause],
body.page-location-visits .visit-recorder.visit-dictation-inline.is-recording .visit-dictation-actions [data-visit-record-stop],
body.page-location-visits .visit-recorder.visit-dictation-inline.is-paused .visit-dictation-actions .qn-rec-timer,
body.page-location-visits .visit-recorder.visit-dictation-inline.is-paused .visit-dictation-actions [data-visit-record-pause],
body.page-location-visits .visit-recorder.visit-dictation-inline.is-paused .visit-dictation-actions [data-visit-record-stop]{display:inline-flex!important;visibility:visible!important;opacity:1!important;align-items:center!important;justify-content:center!important;width:100%!important;height:34px!important;min-height:34px!important;margin:0!important;padding:0 10px!important;border:0!important;border-radius:0!important;background:#fff!important;box-shadow:none!important;font-size:12px!important;line-height:1!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
body.page-location-visits .visit-recorder.visit-dictation-inline .visit-dictation-actions .qn-rec-timer{order:1!important;color:#c2410c!important;font-weight:900!important;font-variant-numeric:tabular-nums!important;}
body.page-location-visits .visit-recorder.visit-dictation-inline .visit-dictation-actions [data-visit-record-pause]{order:2!important;color:#334155!important;border-left:1px solid #e5e7eb!important;}
body.page-location-visits .visit-recorder.visit-dictation-inline .visit-dictation-actions [data-visit-record-stop]{order:3!important;color:#1d4ed8!important;font-weight:850!important;border-left:1px solid #e5e7eb!important;}
body.page-location-visits .visit-recorder.visit-dictation-inline .visit-dictation-status{display:flex!important;align-items:center!important;gap:6px!important;max-width:100%!important;min-width:0!important;justify-self:end!important;overflow:hidden!important;}
body.page-location-visits .visit-recorder.visit-dictation-inline[data-visit-voice-status="warn"] .visit-dictation-status{justify-self:stretch!important;width:100%!important;padding:8px 10px!important;border:1px solid #fed7aa!important;border-radius:13px!important;background:#fff7ed!important;color:#9a3412!important;box-shadow:0 8px 18px rgba(249,115,22,.07)!important;}
body.page-location-visits .visit-recorder.visit-dictation-inline[data-visit-voice-status="warn"] .visit-dictation-dot{background:#f97316!important;box-shadow:0 0 0 3px rgba(249,115,22,.13)!important;}
body.page-location-visits .visit-recorder.visit-dictation-inline[data-visit-voice-status="warn"] .qn-rec-state{color:#9a3412!important;font-weight:780!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;text-align:left!important;}
body.page-location-visits .visit-file-selection{display:grid!important;gap:9px!important;width:100%!important;margin-top:8px!important;}
body.page-location-visits .visit-file-selection[hidden]{display:none!important;}
body.page-location-visits .visit-file-preview-item{display:grid!important;grid-template-columns:58px minmax(0,1fr) 32px!important;align-items:center!important;gap:10px!important;width:100%!important;padding:8px!important;border:1px solid #e5e7eb!important;border-radius:14px!important;background:#fff!important;box-shadow:0 6px 14px rgba(15,23,42,.035)!important;overflow:hidden!important;}
body.page-location-visits .visit-file-thumb{display:flex!important;align-items:center!important;justify-content:center!important;width:58px!important;height:46px!important;border-radius:12px!important;background:#f8fafc!important;overflow:hidden!important;border:1px solid #edf2f7!important;}
body.page-location-visits .visit-file-preview{max-width:100%!important;max-height:100%!important;border:0!important;background:transparent!important;color:#1d4ed8!important;font-size:12px!important;font-weight:800!important;cursor:pointer!important;}
body.page-location-visits img.visit-file-preview--image{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important;}
body.page-location-visits video.visit-file-preview--video{width:100%!important;height:100%!important;display:block!important;}
body.page-location-visits audio.visit-file-preview--audio{width:100%!important;min-width:0!important;height:34px!important;}
body.page-location-visits .visit-file-preview--document{padding:6px 8px!important;border-radius:999px!important;background:#eff6ff!important;color:#1d4ed8!important;}
body.page-location-visits .visit-file-info{display:grid!important;gap:2px!important;min-width:0!important;}
body.page-location-visits .visit-file-info .visit-file-name{display:block!important;min-width:0!important;max-width:100%!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;font-size:13px!important;font-weight:800!important;color:#0f172a!important;}
body.page-location-visits .visit-file-info small{font-size:11px!important;color:#64748b!important;}
body.page-location-visits .visit-file-remove{justify-self:end!important;}
@media(max-width:760px){
  body.page-location-visits .visit-observation-head{grid-template-columns:1fr!important;}
  body.page-location-visits .visit-recorder.visit-dictation-inline{width:100%!important;max-width:100%!important;justify-items:stretch!important;}
  body.page-location-visits .visit-recorder.visit-dictation-inline [data-visit-record-start].visit-dictation-main{justify-self:stretch!important;width:100%!important;}
  body.page-location-visits .visit-recorder.visit-dictation-inline.is-recording .visit-dictation-actions,
  body.page-location-visits .visit-recorder.visit-dictation-inline.is-paused .visit-dictation-actions{width:100%!important;grid-template-columns:minmax(66px,76px) minmax(82px,1fr) minmax(96px,1fr)!important;justify-content:stretch!important;border-radius:16px!important;}
  body.page-location-visits .visit-recorder.visit-dictation-inline .visit-dictation-status{justify-self:stretch!important;justify-content:flex-start!important;}
}
@media(max-width:380px){
  body.page-location-visits .visit-recorder.visit-dictation-inline.is-recording .visit-dictation-actions,
  body.page-location-visits .visit-recorder.visit-dictation-inline.is-paused .visit-dictation-actions{grid-template-columns:1fr 1fr!important;gap:0!important;}
  body.page-location-visits .visit-recorder.visit-dictation-inline.is-recording .visit-dictation-actions .qn-rec-timer,
  body.page-location-visits .visit-recorder.visit-dictation-inline.is-paused .visit-dictation-actions .qn-rec-timer{grid-column:1/-1!important;border-bottom:1px solid #e5e7eb!important;}
  body.page-location-visits .visit-recorder.visit-dictation-inline .visit-dictation-actions [data-visit-record-pause]{border-left:0!important;}
  body.page-location-visits .visit-file-preview-item{grid-template-columns:50px minmax(0,1fr) 30px!important;gap:8px!important;}
  body.page-location-visits .visit-file-thumb{width:50px!important;height:42px!important;}
}

/* Property Visits — v12 same-screen previews + voice playback validation */
body.page-location-visits .visit-recorder.visit-dictation-inline.has-audio-ready .qn-recorded-list{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:8px!important;
  width:100%!important;
  max-width:100%!important;
  margin-top:6px!important;
}
body.page-location-visits .visit-recorder.visit-dictation-inline .qn-recorded-list[hidden]{display:none!important;}
body.page-location-visits .visit-recorder.visit-dictation-inline.has-audio-ready .qn-recorded-list:not([hidden]){display:grid!important;}
body.page-location-visits .visit-recorded-audio-item{
  display:grid!important;
  grid-template-columns:minmax(64px,auto) minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:8px!important;
  padding:8px!important;
  border:1px solid #e5e7eb!important;
  border-radius:14px!important;
  background:#fff!important;
  box-shadow:0 6px 14px rgba(15,23,42,.035)!important;
  min-width:0!important;
  max-width:100%!important;
  overflow:hidden!important;
}
body.page-location-visits .visit-recorded-audio-item strong{
  font-size:12px!important;
  color:#334155!important;
  white-space:nowrap!important;
}
body.page-location-visits .visit-recorded-audio-item audio{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  height:34px!important;
}
body.page-location-visits .visit-recorded-audio-actions{
  display:flex!important;
  align-items:center!important;
  gap:6px!important;
  flex-wrap:nowrap!important;
}
body.page-location-visits .visit-recorded-audio-actions .btn{
  min-height:32px!important;
  padding:0 10px!important;
  border-radius:999px!important;
  font-size:12px!important;
  white-space:nowrap!important;
}
body.page-location-visits .visit-file-preview--image{
  width:100%!important;
  height:100%!important;
  padding:0!important;
  border:0!important;
  border-radius:10px!important;
  overflow:hidden!important;
  background:#f8fafc!important;
  cursor:pointer!important;
}
body.page-location-visits .visit-file-preview--image img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  display:block!important;
}
body.page-location-visits .visit-file-preview--video-trigger{
  width:100%!important;
  height:100%!important;
  display:grid!important;
  place-items:center!important;
  border-radius:10px!important;
  background:#eff6ff!important;
  color:#1d4ed8!important;
  font-size:18px!important;
}
.visit-preview-modal{
  position:fixed;
  inset:0;
  z-index:14000;
  display:none;
  align-items:center;
  justify-content:center;
  padding:18px;
  background:rgba(15,23,42,.58);
  backdrop-filter:blur(5px);
  box-sizing:border-box;
}
.visit-preview-modal.is-open{display:flex!important;}
.visit-preview-dialog{
  width:min(920px,calc(100vw - 28px));
  max-height:calc(100dvh - 28px);
  display:flex;
  flex-direction:column;
  overflow:hidden;
  border-radius:22px;
  background:#fff;
  border:1px solid rgba(226,232,240,.95);
  box-shadow:0 28px 90px rgba(15,23,42,.28);
}
.visit-preview-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:12px 14px;
  border-bottom:1px solid #e5e7eb;
  background:#f8fafc;
}
.visit-preview-head strong{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:14px;
  color:#0f172a;
}
.visit-preview-close{
  width:36px;
  height:36px;
  border-radius:999px;
  border:1px solid #e5e7eb;
  background:#fff;
  color:#0f172a;
  cursor:pointer;
  font-size:22px;
  line-height:1;
}
.visit-preview-body{
  min-height:180px;
  max-height:calc(100dvh - 112px);
  overflow:auto;
  display:grid;
  place-items:center;
  padding:14px;
  background:#0f172a;
}
.visit-preview-media{
  max-width:100%;
  max-height:calc(100dvh - 150px);
  border-radius:14px;
  background:#000;
}
.visit-preview-media--image{
  object-fit:contain;
  background:#0f172a;
}
.visit-preview-audio{
  width:min(560px,100%);
}
.visit-preview-frame{
  width:100%;
  height:min(74vh,760px);
  border:0;
  border-radius:12px;
  background:#fff;
}
.visit-preview-fallback{
  display:grid;
  gap:10px;
  justify-items:center;
  color:#fff;
  text-align:center;
  padding:24px;
}
.visit-preview-fallback span{font-size:34px;}
@media(max-width:760px){
  body.page-location-visits .visit-recorded-audio-item{
    grid-template-columns:1fr!important;
  }
  body.page-location-visits .visit-recorded-audio-actions{
    width:100%!important;
    display:grid!important;
    grid-template-columns:1fr 1fr 1fr!important;
  }
  body.page-location-visits .visit-recorded-audio-actions .btn{
    width:100%!important;
    justify-content:center!important;
  }
  .visit-preview-modal{padding:10px;align-items:flex-end;}
  .visit-preview-dialog{width:100%;max-height:94dvh;border-radius:22px 22px 14px 14px;}
  .visit-preview-body{max-height:calc(94dvh - 70px);padding:10px;}
}

/* Property Visits — v13 evidence preview scope + audio playback fix */
body.page-location-visits .visit-recorder.visit-dictation-inline .qn-recorded-list,
body.page-location-visits .visit-recorder.visit-dictation-inline.has-audio-ready .qn-recorded-list,
body.page-location-visits .visit-recorder.visit-dictation-inline .qn-recorded-list:not([hidden]){
  display:none!important;
  visibility:hidden!important;
  width:0!important;
  height:0!important;
  overflow:hidden!important;
  margin:0!important;
  padding:0!important;
}
body.page-location-visits .visit-evidence-field [data-visit-file-list]{
  display:grid!important;
  gap:10px!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
}
body.page-location-visits .visit-evidence-field [data-visit-file-list][hidden]{display:none!important;}
body.page-location-visits .visit-file-preview-item.is-audio{
  grid-template-columns:48px minmax(0,1fr) 32px!important;
  align-items:center!important;
}
body.page-location-visits .visit-file-preview--audio-icon{
  display:grid!important;
  place-items:center!important;
  width:100%!important;
  height:100%!important;
  border-radius:10px!important;
  background:#eef2ff!important;
  color:#3730a3!important;
  font-size:19px!important;
}
body.page-location-visits .visit-file-audio-player{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  height:34px!important;
  margin-top:6px!important;
}
body.page-location-visits .visit-file-playback-note{
  display:block!important;
  margin-top:5px!important;
  color:#b45309!important;
  font-size:11px!important;
  line-height:1.25!important;
  white-space:normal!important;
}
body.page-location-visits .visit-file-playback-note[hidden]{display:none!important;}
.visit-preview-note{
  margin:10px 0 0!important;
  color:#e2e8f0!important;
  font-size:12px!important;
  text-align:center!important;
  line-height:1.35!important;
}
@media(max-width:520px){
  body.page-location-visits .visit-file-preview-item,
  body.page-location-visits .visit-file-preview-item.is-audio{
    grid-template-columns:44px minmax(0,1fr) 30px!important;
    gap:8px!important;
  }
  body.page-location-visits .visit-file-audio-player{height:32px!important;}
}

/* Property Visits — v14 evidence DOM containment + real audio error guard */
body.page-location-visits .visit-evidence-field{
  display:grid!important;
  gap:9px!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
  overflow:visible!important;
}
body.page-location-visits .visit-evidence-picker{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:inherit!important;
  cursor:pointer!important;
  box-sizing:border-box!important;
}
body.page-location-visits .visit-evidence-card,
body.page-location-visits .visit-file-summary,
body.page-location-visits .visit-file-selection{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
}
body.page-location-visits .visit-file-selection{
  display:grid!important;
  gap:10px!important;
  margin-top:0!important;
  overflow:visible!important;
}
body.page-location-visits .visit-file-selection[hidden]{display:none!important;}
body.page-location-visits .visit-file-preview-item{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
}
body.page-location-visits .visit-file-info,
body.page-location-visits .visit-file-info *{
  min-width:0!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}
body.page-location-visits .visit-file-audio-player{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
}
body.page-location-visits .visit-recorder.visit-dictation-inline .qn-recorded-list,
body.page-location-visits [data-visit-recorded-list]{
  display:none!important;
}


/* Property Visits — audio evidence preview fallback without native Error UI */
body.page-location-visits .visit-file-audio-player.is-unavailable,
body.page-location-visits .visit-preview-audio.is-unavailable{
  display:none!important;
}
body.page-location-visits .visit-file-playback-note.is-visible{
  display:block!important;
  padding:8px 10px!important;
  margin-top:6px!important;
  border:1px solid #fed7aa!important;
  border-radius:12px!important;
  background:#fff7ed!important;
  color:#9a3412!important;
  font-size:12px!important;
  line-height:1.35!important;
}

/* Property Visits — v15 evidence audio card layout: keep player inside evidence card, never over title/remove */
body.page-location-visits .visit-file-preview-item,
body.page-location-visits .visit-file-preview-item *{
  box-sizing:border-box!important;
}
body.page-location-visits .visit-file-preview-item{
  position:relative!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  overflow:hidden!important;
}
body.page-location-visits .visit-file-preview-item.is-audio{
  display:grid!important;
  grid-template-columns:48px minmax(0,1fr) 34px!important;
  grid-template-areas:
    "thumb info remove"
    "media media media"!important;
  align-items:center!important;
  gap:9px 10px!important;
  padding:10px!important;
}
body.page-location-visits .visit-file-preview-item.is-audio .visit-file-thumb{
  grid-area:thumb!important;
  width:48px!important;
  height:44px!important;
}
body.page-location-visits .visit-file-preview-item.is-audio .visit-file-info{
  grid-area:info!important;
  min-width:0!important;
  overflow:hidden!important;
}
body.page-location-visits .visit-file-preview-item.is-audio .visit-file-remove{
  grid-area:remove!important;
  align-self:start!important;
  justify-self:end!important;
}
body.page-location-visits .visit-file-preview-item.is-audio .visit-file-media{
  grid-area:media!important;
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  overflow:hidden!important;
  padding-top:8px!important;
  border-top:1px solid #eef2f7!important;
}
body.page-location-visits .visit-file-preview-item.is-audio .visit-file-audio-player{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  height:42px!important;
  margin:0!important;
  overflow:hidden!important;
}
body.page-location-visits .visit-file-preview-item.is-audio .visit-file-playback-note{
  margin:0!important;
  max-width:100%!important;
}
body.page-location-visits .visit-file-preview-item:not(.is-audio) .visit-file-media{
  display:none!important;
}
@media(max-width:520px){
  body.page-location-visits .visit-file-preview-item.is-audio{
    grid-template-columns:44px minmax(0,1fr) 32px!important;
    gap:8px!important;
    padding:9px!important;
  }
  body.page-location-visits .visit-file-preview-item.is-audio .visit-file-thumb{
    width:44px!important;
    height:40px!important;
  }
  body.page-location-visits .visit-file-preview-item.is-audio .visit-file-audio-player{
    height:38px!important;
  }
}

/* Property Visits — v16 evidence list scroll container + mobile preview safety */
body.page-location-visits .visit-evidence-field,
body.page-location-visits .visit-evidence-field *{
  box-sizing:border-box!important;
}
body.page-location-visits .visit-evidence-field{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  overflow:visible!important;
  cursor:default!important;
}
body.page-location-visits .visit-evidence-picker,
body.page-location-visits .visit-evidence-card{
  cursor:pointer!important;
}
body.page-location-visits .visit-file-selection{
  display:grid!important;
  gap:10px!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  max-height:min(42vh, 360px)!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  padding:2px 6px 2px 2px!important;
  margin-top:0!important;
  overscroll-behavior:contain!important;
  scrollbar-gutter:stable!important;
}
body.page-location-visits .visit-file-selection[hidden]{display:none!important;}
body.page-location-visits .visit-file-selection::-webkit-scrollbar{width:8px!important;}
body.page-location-visits .visit-file-selection::-webkit-scrollbar-thumb{background:#cbd5e1!important;border-radius:999px!important;}
body.page-location-visits .visit-file-selection::-webkit-scrollbar-track{background:#f8fafc!important;border-radius:999px!important;}
body.page-location-visits .visit-file-preview-item{
  display:grid!important;
  grid-template-columns:58px minmax(0,1fr) 34px!important;
  grid-template-areas:"thumb info remove"!important;
  align-items:center!important;
  gap:10px!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  overflow:hidden!important;
}
body.page-location-visits .visit-file-preview-item .visit-file-thumb{grid-area:thumb!important;}
body.page-location-visits .visit-file-preview-item .visit-file-info{
  grid-area:info!important;
  min-width:0!important;
  max-width:100%!important;
  overflow:hidden!important;
  align-self:center!important;
}
body.page-location-visits .visit-file-preview-item .visit-file-remove{grid-area:remove!important;justify-self:end!important;align-self:center!important;}
body.page-location-visits .visit-file-preview-item .visit-file-name{
  display:block!important;
  min-width:0!important;
  max-width:100%!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
@media (max-width:760px){
  body.page-location-visits .visit-file-selection{
    max-height:min(48vh, 420px)!important;
    padding-right:4px!important;
  }
  body.page-location-visits .visit-file-preview-item{
    grid-template-columns:52px minmax(0,1fr) 32px!important;
    grid-template-areas:"thumb info remove"!important;
    gap:8px!important;
  }
  body.page-location-visits .visit-file-thumb{
    width:52px!important;
    height:44px!important;
  }
  body.page-location-visits .visit-file-info,
  body.page-location-visits .visit-file-info .visit-file-name,
  body.page-location-visits .visit-file-info small{
    min-width:0!important;
    max-width:100%!important;
    overflow:hidden!important;
  }
}

/* Property Visits — v17 evidence scroll without squashing + preview navigation */
body.page-location-visits .visit-evidence-field{
  overflow:visible!important;
}
body.page-location-visits .visit-file-selection{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  grid-auto-rows:auto!important;
  align-content:start!important;
  gap:10px!important;
  width:100%!important;
  max-width:100%!important;
  max-height:min(44vh, 420px)!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  padding:8px!important;
  border:1px solid #e5e7eb!important;
  border-radius:16px!important;
  background:#f8fafc!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.75)!important;
  scrollbar-gutter:stable!important;
}
body.page-location-visits .visit-file-selection[hidden]{display:none!important;}
body.page-location-visits .visit-file-preview-item{
  display:grid!important;
  grid-template-columns:66px minmax(0,1fr) 36px!important;
  grid-template-areas:"thumb info remove"!important;
  align-items:center!important;
  gap:12px!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  min-height:78px!important;
  padding:10px 12px!important;
  border:1px solid #e2e8f0!important;
  border-radius:16px!important;
  background:#fff!important;
  box-shadow:0 6px 16px rgba(15,23,42,.04)!important;
  overflow:hidden!important;
}
body.page-location-visits .visit-file-preview-item .visit-file-thumb{
  grid-area:thumb!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:66px!important;
  height:56px!important;
  min-width:66px!important;
  min-height:56px!important;
  border-radius:14px!important;
  border:1px solid #e5e7eb!important;
  background:#f8fafc!important;
  overflow:hidden!important;
}
body.page-location-visits .visit-file-preview-item .visit-file-preview,
body.page-location-visits .visit-file-preview-item .visit-file-preview--image{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  height:100%!important;
  min-width:0!important;
  min-height:0!important;
  padding:0!important;
  border:0!important;
  border-radius:12px!important;
  background:transparent!important;
  overflow:hidden!important;
}
body.page-location-visits .visit-file-preview-item .visit-file-preview--image img,
body.page-location-visits .visit-file-preview-item img{
  width:100%!important;
  height:100%!important;
  display:block!important;
  object-fit:cover!important;
}
body.page-location-visits .visit-file-preview-item .visit-file-info{
  grid-area:info!important;
  display:grid!important;
  gap:4px!important;
  align-self:center!important;
  min-width:0!important;
  max-width:100%!important;
  overflow:hidden!important;
}
body.page-location-visits .visit-file-selection .visit-file-name,
body.page-location-visits .visit-file-preview-item .visit-file-name{
  display:block!important;
  min-width:0!important;
  max-width:100%!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:#0f172a!important;
  font-size:13px!important;
  font-weight:850!important;
  line-height:1.25!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
body.page-location-visits .visit-file-preview-item .visit-file-info small{
  display:block!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  color:#64748b!important;
  font-size:12px!important;
  line-height:1.25!important;
}
body.page-location-visits .visit-file-preview-item .visit-file-remove{
  grid-area:remove!important;
  justify-self:end!important;
  align-self:center!important;
  width:34px!important;
  height:34px!important;
  min-width:34px!important;
  border-radius:999px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 auto!important;
}
body.page-location-visits .visit-file-preview-item.is-audio{
  grid-template-columns:58px minmax(0,1fr) 36px!important;
  grid-template-areas:"thumb info remove" "media media media"!important;
  min-height:128px!important;
  align-items:center!important;
}
body.page-location-visits .visit-file-preview-item.is-audio .visit-file-thumb{
  width:58px!important;
  height:52px!important;
  min-width:58px!important;
  min-height:52px!important;
}
body.page-location-visits .visit-file-preview-item.is-audio .visit-file-media{
  grid-area:media!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  padding-top:8px!important;
  border-top:1px solid #eef2f7!important;
  overflow:hidden!important;
}
body.page-location-visits .visit-file-preview-item.is-audio .visit-file-audio-player{
  width:100%!important;
  max-width:100%!important;
  height:38px!important;
  display:block!important;
}
.visit-preview-head-actions{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  flex:0 0 auto!important;
}
.visit-preview-nav,
.visit-preview-close{
  width:36px!important;
  height:36px!important;
  border-radius:999px!important;
  border:1px solid #e2e8f0!important;
  background:#fff!important;
  color:#0f172a!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-size:22px!important;
  font-weight:900!important;
  line-height:1!important;
  cursor:pointer!important;
}
.visit-preview-nav:hover,
.visit-preview-close:hover{background:#f8fafc!important;border-color:#cbd5e1!important;}
.visit-preview-nav[hidden]{display:none!important;}
.visit-preview-head strong{
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
@media (max-width:760px){
  body.page-location-visits .visit-file-selection{
    max-height:min(50vh, 440px)!important;
    padding:7px!important;
  }
  body.page-location-visits .visit-file-preview-item{
    grid-template-columns:58px minmax(0,1fr) 34px!important;
    min-height:74px!important;
    gap:9px!important;
    padding:9px!important;
  }
  body.page-location-visits .visit-file-preview-item .visit-file-thumb{
    width:58px!important;
    height:52px!important;
    min-width:58px!important;
    min-height:52px!important;
  }
  body.page-location-visits .visit-file-preview-item.is-audio{
    min-height:126px!important;
  }
  .visit-preview-dialog{width:min(96vw, 820px)!important;}
  .visit-preview-head{gap:10px!important;}
  .visit-preview-nav,
  .visit-preview-close{width:34px!important;height:34px!important;}
}
@media (max-width:420px){
  body.page-location-visits .visit-file-preview-item{
    grid-template-columns:52px minmax(0,1fr) 32px!important;
  }
  body.page-location-visits .visit-file-preview-item .visit-file-thumb{
    width:52px!important;
    height:48px!important;
    min-width:52px!important;
    min-height:48px!important;
  }
  body.page-location-visits .visit-file-selection .visit-file-name,
  body.page-location-visits .visit-file-preview-item .visit-file-name{
    font-size:12px!important;
  }
}

/* Property Visits — v18 evidence scroll viewport containment (no card squashing) */
body.page-location-visits,
body.page-location-visits .app-shell,
body.page-location-visits .main{
  max-width:100%!important;
  overflow-x:hidden!important;
}
body.page-location-visits .main{
  height:100dvh!important;
  min-height:0!important;
  overflow-y:auto!important;
  padding-bottom:32px!important;
  scroll-padding-bottom:32px!important;
}
body.page-location-visits .visit-card,
body.page-location-visits .visit-card form,
body.page-location-visits .visit-evidence-field{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  min-height:0!important;
  overflow:visible!important;
  box-sizing:border-box!important;
}
body.page-location-visits .visit-evidence-field{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:9px!important;
}
body.page-location-visits .visit-file-selection{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  grid-auto-rows:auto!important;
  align-content:start!important;
  gap:10px!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  max-height:clamp(220px,32dvh,300px)!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  padding:8px!important;
  border:1px solid #e5e7eb!important;
  border-radius:16px!important;
  background:#f8fafc!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.75)!important;
  overscroll-behavior:contain!important;
  scrollbar-gutter:stable!important;
}
body.page-location-visits .visit-file-selection[hidden]{display:none!important;}
body.page-location-visits .visit-file-preview-item{
  display:grid!important;
  grid-template-columns:66px minmax(0,1fr) 36px!important;
  grid-template-areas:"thumb info remove"!important;
  align-items:center!important;
  gap:12px!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  min-height:78px!important;
  height:auto!important;
  padding:10px 12px!important;
  border:1px solid #e2e8f0!important;
  border-radius:16px!important;
  background:#fff!important;
  box-shadow:0 6px 16px rgba(15,23,42,.04)!important;
  overflow:hidden!important;
}
body.page-location-visits .visit-file-preview-item.is-audio{
  grid-template-columns:58px minmax(0,1fr) 36px!important;
  grid-template-areas:"thumb info remove" "media media media"!important;
  min-height:128px!important;
}
body.page-location-visits .visit-file-thumb{
  grid-area:thumb!important;
  width:66px!important;
  height:56px!important;
  min-width:66px!important;
  min-height:56px!important;
  overflow:hidden!important;
  border-radius:14px!important;
}
body.page-location-visits .visit-file-info{
  grid-area:info!important;
  min-width:0!important;
  max-width:100%!important;
  overflow:hidden!important;
  align-self:center!important;
}
body.page-location-visits .visit-file-name{
  display:block!important;
  max-width:100%!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
body.page-location-visits .visit-file-remove{
  grid-area:remove!important;
  justify-self:end!important;
  align-self:center!important;
  flex:0 0 auto!important;
}
body.page-location-visits .visit-file-media{
  grid-area:media!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  overflow:hidden!important;
}
body.page-location-visits .visit-file-audio-player,
body.page-location-visits .visit-file-video-player{
  width:100%!important;
  max-width:100%!important;
}
@media (max-width:760px){
  body.page-location-visits .main{
    padding-bottom:calc(96px + env(safe-area-inset-bottom,0px))!important;
  }
  body.page-location-visits .visit-file-selection{
    max-height:clamp(240px,38dvh,340px)!important;
    padding:7px!important;
  }
  body.page-location-visits .visit-file-preview-item{
    grid-template-columns:58px minmax(0,1fr) 34px!important;
    min-height:74px!important;
    gap:9px!important;
    padding:9px!important;
  }
  body.page-location-visits .visit-file-thumb{
    width:58px!important;
    height:52px!important;
    min-width:58px!important;
    min-height:52px!important;
  }
}


/* Property Visits — v19 keep evidence previews inside visit card + modal overlay isolation */
body.page-location-visits .visit-card{
  position:relative!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
}
body.page-location-visits .visit-card form{
  display:block!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
}
body.page-location-visits .visit-evidence-field{
  position:relative!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:9px!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
  overflow:visible!important;
}
body.page-location-visits .visit-evidence-picker,
body.page-location-visits .visit-evidence-card,
body.page-location-visits .visit-evidence-preview-wrap{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
}
body.page-location-visits .visit-evidence-preview-wrap{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:8px!important;
  position:relative!important;
  overflow:visible!important;
}
body.page-location-visits .visit-file-summary{
  display:block!important;
  max-width:100%!important;
  min-width:0!important;
  color:#64748b!important;
  font-size:12px!important;
  font-weight:700!important;
}
body.page-location-visits .visit-file-selection{
  position:relative!important;
  inset:auto!important;
  transform:none!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  grid-auto-rows:auto!important;
  align-content:start!important;
  gap:10px!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  max-height:clamp(220px,34dvh,340px)!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  padding:8px!important;
  margin:0!important;
  border:1px solid #e5e7eb!important;
  border-radius:16px!important;
  background:#f8fafc!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.75)!important;
  overscroll-behavior:contain!important;
  scrollbar-gutter:stable!important;
  box-sizing:border-box!important;
}
body.page-location-visits .visit-file-selection[hidden]{display:none!important;}
body.page-location-visits .visit-file-preview-item{
  position:relative!important;
  display:grid!important;
  grid-template-columns:66px minmax(0,1fr) 36px!important;
  grid-template-areas:"thumb info remove"!important;
  align-items:center!important;
  gap:12px!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  min-height:78px!important;
  height:auto!important;
  padding:10px 12px!important;
  border:1px solid #e2e8f0!important;
  border-radius:16px!important;
  background:#fff!important;
  box-shadow:0 6px 16px rgba(15,23,42,.04)!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
}
body.page-location-visits .visit-file-preview-item.is-audio{
  grid-template-columns:58px minmax(0,1fr) 36px!important;
  grid-template-areas:"thumb info remove" "media media media"!important;
  min-height:128px!important;
}
body.page-location-visits .visit-file-thumb{grid-area:thumb!important;}
body.page-location-visits .visit-file-info{grid-area:info!important;min-width:0!important;max-width:100%!important;overflow:hidden!important;}
body.page-location-visits .visit-file-remove{grid-area:remove!important;justify-self:end!important;align-self:center!important;}
body.page-location-visits .visit-file-media{grid-area:media!important;width:100%!important;max-width:100%!important;min-width:0!important;overflow:hidden!important;}
body.page-location-visits .visit-preview-modal,
body.page-location-visits .ticket-image-modal{
  position:fixed!important;
  inset:0!important;
  z-index:14000!important;
  margin:0!important;
  width:100vw!important;
  height:100dvh!important;
  max-width:none!important;
  max-height:none!important;
  box-sizing:border-box!important;
}
body.page-location-visits .visit-preview-modal[hidden]{display:none!important;}
body.page-location-visits .visit-preview-modal.is-open{display:flex!important;}
body.page-location-visits .visit-preview-modal{
  align-items:center!important;
  justify-content:center!important;
  padding:18px!important;
  background:rgba(15,23,42,.58)!important;
  backdrop-filter:blur(5px)!important;
}
body.page-location-visits .ticket-image-modal__body{
  position:relative!important;
}
@media (max-width:760px){
  body.page-location-visits .visit-file-selection{
    max-height:clamp(230px,40dvh,360px)!important;
    padding:7px!important;
  }
  body.page-location-visits .visit-file-preview-item{
    grid-template-columns:58px minmax(0,1fr) 34px!important;
    gap:9px!important;
    min-height:74px!important;
    padding:9px!important;
  }
  body.page-location-visits .visit-file-preview-item.is-audio{
    min-height:122px!important;
  }
  body.page-location-visits .visit-preview-modal{
    align-items:flex-end!important;
    padding:10px!important;
  }
}

/* Property Visits — v20 evidence list containment + submit actions protection */
body.page-location-visits .visit-card{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  grid-template-rows:auto minmax(0,1fr)!important;
  max-height:calc(100dvh - 104px)!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
}
body.page-location-visits .visit-card > .section-title{
  min-width:0!important;
}
body.page-location-visits .visit-card form[data-visit-voice-form="1"]{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  grid-auto-rows:max-content!important;
  gap:14px!important;
  min-height:0!important;
  max-height:100%!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  padding-right:6px!important;
  padding-bottom:0!important;
  overscroll-behavior:contain!important;
  box-sizing:border-box!important;
}
body.page-location-visits .visit-evidence-field{
  contain:layout!important;
  overflow:visible!important;
  margin-bottom:0!important;
}
body.page-location-visits .visit-evidence-preview-wrap{
  min-height:0!important;
  max-width:100%!important;
  overflow:visible!important;
}
body.page-location-visits .visit-file-selection{
  max-height:clamp(190px,26dvh,260px)!important;
  min-height:0!important;
  margin:0 0 6px!important;
  z-index:1!important;
}
body.page-location-visits .visit-submit-row{
  position:sticky!important;
  bottom:0!important;
  z-index:8!important;
  margin:0!important;
  padding:12px 0 2px!important;
  background:linear-gradient(180deg,rgba(255,255,255,.92),#fff 34%)!important;
  border-top:1px solid rgba(226,232,240,.88)!important;
  box-shadow:0 -10px 22px rgba(255,255,255,.86)!important;
  align-self:end!important;
}
body.page-location-visits .visit-submit-row .btn{
  position:relative!important;
  z-index:2!important;
}
@media (max-width:760px){
  body.page-location-visits .visit-card{
    max-height:none!important;
    overflow:visible!important;
  }
  body.page-location-visits .visit-card form[data-visit-voice-form="1"]{
    max-height:none!important;
    overflow:visible!important;
    padding-right:0!important;
  }
  body.page-location-visits .visit-file-selection{
    max-height:clamp(220px,36dvh,320px)!important;
  }
  body.page-location-visits .visit-submit-row{
    position:relative!important;
    bottom:auto!important;
    box-shadow:none!important;
    background:#fff!important;
  }
}

/* Property Visits — keep preview navigation inside modal overlay only */
body.page-location-visits > button.visit-preview-nav,
body.page-location-visits > [data-visit-preview-prev],
body.page-location-visits > [data-visit-preview-next]{
  display:none!important;
  visibility:hidden!important;
  width:0!important;
  height:0!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  pointer-events:none!important;
}
body.page-location-visits .visit-preview-modal[hidden],
body.page-location-visits .visit-preview-modal:not(.is-open){
  display:none!important;
  pointer-events:none!important;
}
body.page-location-visits .visit-preview-modal.is-open{
  display:flex!important;
  pointer-events:auto!important;
}
body.page-location-visits .visit-preview-modal .visit-preview-head-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:8px!important;
  flex:0 0 auto!important;
}
body.page-location-visits .visit-preview-modal .visit-preview-nav,
body.page-location-visits .visit-preview-modal .visit-preview-close{
  position:relative!important;
  inset:auto!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 36px!important;
  width:36px!important;
  height:36px!important;
  margin:0!important;
  padding:0!important;
  z-index:1!important;
}
body.page-location-visits .visit-preview-modal .visit-preview-nav[hidden]{
  display:none!important;
}
body.page-location-visits .visit-preview-modal .visit-preview-body{
  position:relative!important;
  min-width:0!important;
  max-width:100%!important;
  overflow:auto!important;
}

/* Property Visits — preview arrows inside media body + additive evidence selection */
body.page-location-visits .visit-preview-modal .visit-preview-head-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:8px!important;
}
body.page-location-visits .visit-preview-modal .visit-preview-body{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:320px!important;
  overflow:hidden!important;
  padding:12px!important;
}
body.page-location-visits .visit-preview-modal .visit-preview-content{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  max-height:100%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:auto!important;
}
body.page-location-visits .visit-preview-modal .visit-preview-body > .visit-preview-nav{
  position:absolute!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  z-index:4!important;
  width:42px!important;
  height:42px!important;
  flex:0 0 42px!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.94)!important;
  border:1px solid rgba(203,213,225,.95)!important;
  box-shadow:0 10px 26px rgba(15,23,42,.18)!important;
  color:#0f172a!important;
}
body.page-location-visits .visit-preview-modal .visit-preview-body > .visit-preview-nav--prev{
  left:14px!important;
}
body.page-location-visits .visit-preview-modal .visit-preview-body > .visit-preview-nav--next{
  right:14px!important;
}
body.page-location-visits .visit-preview-modal .visit-preview-body > .visit-preview-nav[hidden]{
  display:none!important;
}
body.page-location-visits .visit-preview-modal .visit-preview-content .visit-preview-media,
body.page-location-visits .visit-preview-modal .visit-preview-content .visit-preview-frame,
body.page-location-visits .visit-preview-modal .visit-preview-content .visit-preview-audio{
  max-width:100%!important;
  max-height:calc(86dvh - 132px)!important;
}
body.page-location-visits .visit-preview-modal .visit-preview-content .visit-preview-media--image{
  object-fit:contain!important;
}
@media (max-width:760px){
  body.page-location-visits .visit-preview-modal .visit-preview-body{
    min-height:260px!important;
    padding:10px!important;
  }
  body.page-location-visits .visit-preview-modal .visit-preview-body > .visit-preview-nav{
    width:38px!important;
    height:38px!important;
    flex-basis:38px!important;
  }
  body.page-location-visits .visit-preview-modal .visit-preview-body > .visit-preview-nav--prev{left:10px!important;}
  body.page-location-visits .visit-preview-modal .visit-preview-body > .visit-preview-nav--next{right:10px!important;}
}

/* Property Visits — v22 clean form revamp: readable card, contained evidence previews */
body.page-location-visits .main{
  overflow-y:auto!important;
  overflow-x:hidden!important;
  min-width:0!important;
  padding-bottom:28px!important;
}
body.page-location-visits .visit-card{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  padding:20px!important;
  overflow:visible!important;
  border-radius:24px!important;
  background:#fff!important;
  border:1px solid #e5e7eb!important;
  box-shadow:0 18px 46px rgba(15,23,42,.08)!important;
  box-sizing:border-box!important;
}
body.page-location-visits .visit-card > .section-title{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  margin:0 0 16px!important;
  padding:0!important;
  font-size:12px!important;
  letter-spacing:.09em!important;
  text-transform:uppercase!important;
  font-weight:850!important;
  color:#153b74!important;
}
body.page-location-visits .visit-card form[data-visit-voice-form="1"]{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:16px!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  max-height:none!important;
  overflow:visible!important;
  padding:0!important;
  box-sizing:border-box!important;
}
body.page-location-visits .visit-card .form-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:14px!important;
  align-items:end!important;
  min-width:0!important;
}
body.page-location-visits .visit-card .form-grid label,
body.page-location-visits .visit-observation-field,
body.page-location-visits .visit-evidence-field{
  min-width:0!important;
  box-sizing:border-box!important;
}
body.page-location-visits .visit-card .form-grid label{
  display:grid!important;
  gap:7px!important;
  font-size:13px!important;
  font-weight:800!important;
  color:#334155!important;
}
body.page-location-visits .visit-card select,
body.page-location-visits .visit-card textarea{
  max-width:100%!important;
  box-sizing:border-box!important;
}
body.page-location-visits .visit-observation-field,
body.page-location-visits .visit-evidence-field{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:12px!important;
  width:100%!important;
  max-width:100%!important;
  padding:14px!important;
  border:1px solid #e5e7eb!important;
  border-radius:20px!important;
  background:linear-gradient(180deg,#ffffff 0%,#f8fafc 100%)!important;
  box-shadow:0 10px 26px rgba(15,23,42,.045)!important;
  overflow:visible!important;
  contain:none!important;
}
body.page-location-visits .visit-observation-head{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:12px!important;
  min-width:0!important;
}
body.page-location-visits .visit-observation-copy{
  display:grid!important;
  gap:3px!important;
  min-width:0!important;
}
body.page-location-visits .visit-observation-copy strong,
body.page-location-visits .visit-evidence-copy strong{
  font-size:14px!important;
  line-height:1.2!important;
  color:#0f172a!important;
}
body.page-location-visits .visit-observation-copy small,
body.page-location-visits .visit-evidence-copy small{
  font-size:12px!important;
  line-height:1.35!important;
  color:#64748b!important;
}
body.page-location-visits .visit-dictation-inline{
  flex:0 0 auto!important;
  width:auto!important;
  max-width:100%!important;
  min-width:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  margin:0!important;
}
body.page-location-visits .visit-dictation-main{
  min-height:38px!important;
  padding:0 14px!important;
  border-radius:999px!important;
  white-space:nowrap!important;
}
body.page-location-visits .visit-dictation-status{
  width:100%!important;
  margin-top:6px!important;
  justify-content:flex-end!important;
  text-align:right!important;
  font-size:11px!important;
}
body.page-location-visits .visit-speech-help,
body.page-location-visits .visit-waveform,
body.page-location-visits .visit-speech-preview,
body.page-location-visits [data-visit-live-box],
body.page-location-visits [data-visit-use-transcript]{
  display:none!important;
}
body.page-location-visits .visit-observation-textarea{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
}
body.page-location-visits [data-visit-observation]{
  display:block!important;
  width:100%!important;
  min-height:168px!important;
  border-radius:18px!important;
  line-height:1.55!important;
  background:#fff!important;
}
body.page-location-visits .visit-evidence-picker{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  cursor:pointer!important;
}
body.page-location-visits .visit-evidence-card{
  display:grid!important;
  grid-template-columns:46px minmax(0,1fr)!important;
  align-items:center!important;
  gap:12px!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  min-height:74px!important;
  padding:14px!important;
  border-radius:18px!important;
  border:1px dashed #cbd5e1!important;
  background:#fff!important;
  box-shadow:none!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
}
body.page-location-visits .visit-evidence-card:hover{
  border-color:#93c5fd!important;
  background:#f8fbff!important;
}
body.page-location-visits .visit-evidence-icon{
  display:grid!important;
  place-items:center!important;
  width:46px!important;
  height:46px!important;
  border-radius:16px!important;
  background:#eff6ff!important;
  color:#1d4ed8!important;
  font-size:24px!important;
  font-weight:850!important;
}
body.page-location-visits .visit-evidence-preview-wrap{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:8px!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  overflow:visible!important;
}
body.page-location-visits .visit-file-summary{
  font-size:12px!important;
  color:#64748b!important;
  font-weight:800!important;
  padding:0 2px!important;
}
body.page-location-visits .visit-file-selection{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  grid-auto-rows:auto!important;
  gap:10px!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  max-height:clamp(230px,32dvh,330px)!important;
  height:auto!important;
  margin:0!important;
  padding:10px!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  border:1px solid #e5e7eb!important;
  border-radius:18px!important;
  background:#f8fafc!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.8)!important;
  overscroll-behavior:contain!important;
  scrollbar-gutter:stable both-edges!important;
  box-sizing:border-box!important;
  z-index:auto!important;
}
body.page-location-visits .visit-file-selection[hidden]{display:none!important;}
body.page-location-visits .visit-file-preview-item{
  display:grid!important;
  grid-template-columns:72px minmax(0,1fr) 36px!important;
  grid-template-areas:"thumb info remove" "media media media"!important;
  align-items:center!important;
  gap:10px 12px!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  min-height:82px!important;
  padding:10px 12px!important;
  border-radius:16px!important;
  border:1px solid #e2e8f0!important;
  background:#fff!important;
  box-shadow:0 8px 18px rgba(15,23,42,.045)!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
}
body.page-location-visits .visit-file-thumb{
  grid-area:thumb!important;
  width:72px!important;
  height:58px!important;
  min-width:72px!important;
  border-radius:14px!important;
  overflow:hidden!important;
  background:#eef2f7!important;
}
body.page-location-visits .visit-file-info{
  grid-area:info!important;
  display:grid!important;
  gap:3px!important;
  min-width:0!important;
  max-width:100%!important;
  overflow:hidden!important;
}
body.page-location-visits .visit-file-name{
  display:block!important;
  min-width:0!important;
  max-width:100%!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  font-size:13px!important;
  line-height:1.25!important;
  font-weight:800!important;
}
body.page-location-visits .visit-file-info small{
  font-size:12px!important;
  color:#64748b!important;
}
body.page-location-visits .visit-file-remove{
  grid-area:remove!important;
  width:34px!important;
  height:34px!important;
  justify-self:end!important;
  align-self:center!important;
  border-radius:12px!important;
}
body.page-location-visits .visit-file-media{
  grid-area:media!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  padding-top:6px!important;
  border-top:1px solid #eef2f7!important;
  overflow:hidden!important;
}
body.page-location-visits .visit-file-media:empty{
  display:none!important;
}
body.page-location-visits .visit-submit-row{
  position:static!important;
  display:flex!important;
  justify-content:flex-end!important;
  gap:10px!important;
  margin:0!important;
  padding:4px 0 0!important;
  background:transparent!important;
  border-top:0!important;
  box-shadow:none!important;
  z-index:auto!important;
}
@media (max-width:760px){
  body.page-location-visits .visit-card{
    padding:14px!important;
    border-radius:20px!important;
  }
  body.page-location-visits .visit-card .form-grid{
    grid-template-columns:1fr!important;
  }
  body.page-location-visits .visit-observation-head{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
  }
  body.page-location-visits .visit-dictation-inline{
    width:100%!important;
  }
  body.page-location-visits .visit-dictation-main{
    width:100%!important;
  }
  body.page-location-visits .visit-dictation-status{
    justify-content:flex-start!important;
    text-align:left!important;
  }
  body.page-location-visits .visit-file-selection{
    max-height:clamp(240px,42dvh,380px)!important;
    padding:8px!important;
  }
  body.page-location-visits .visit-file-preview-item{
    grid-template-columns:64px minmax(0,1fr) 34px!important;
    min-height:78px!important;
    padding:9px!important;
    gap:9px!important;
  }
  body.page-location-visits .visit-file-thumb{
    width:64px!important;
    height:54px!important;
    min-width:64px!important;
  }
  body.page-location-visits .visit-submit-row{
    display:grid!important;
    grid-template-columns:1fr!important;
  }
  body.page-location-visits .visit-submit-row .btn{
    width:100%!important;
  }
}

/* Property Visits — v23 bounded evidence/form containment
   Keeps large evidence batches inside the visit card without covering submit actions. */
body.page-location-visits .main{
  min-height:0!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  padding-bottom:24px!important;
}
body.page-location-visits .visit-card{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  grid-template-rows:auto minmax(0,1fr)!important;
  width:100%!important;
  max-width:100%!important;
  max-height:calc(100dvh - 48px)!important;
  min-height:0!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
}
body.page-location-visits .visit-card > .section-title{
  flex:0 0 auto!important;
}
body.page-location-visits .visit-card form[data-visit-voice-form="1"]{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  grid-auto-rows:max-content!important;
  gap:14px!important;
  min-height:0!important;
  max-height:100%!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  padding:0 4px 2px 0!important;
  box-sizing:border-box!important;
  overscroll-behavior:contain!important;
}
body.page-location-visits .visit-evidence-field{
  min-height:0!important;
  overflow:hidden!important;
}
body.page-location-visits .visit-evidence-preview-wrap{
  min-height:0!important;
  overflow:hidden!important;
}
body.page-location-visits .visit-file-selection{
  max-height:clamp(180px,24dvh,250px)!important;
  min-height:0!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  overscroll-behavior:contain!important;
}
body.page-location-visits .visit-submit-row{
  position:sticky!important;
  bottom:0!important;
  z-index:5!important;
  display:flex!important;
  justify-content:flex-end!important;
  gap:10px!important;
  margin:2px 0 0!important;
  padding:12px 0 0!important;
  background:linear-gradient(180deg,rgba(255,255,255,.72),#fff 46%)!important;
  border-top:1px solid #eef2f7!important;
  box-shadow:0 -8px 18px rgba(255,255,255,.92)!important;
}
body.page-location-visits .visit-submit-row .btn{
  flex:0 0 auto!important;
}
@media (max-width:760px){
  body.page-location-visits .visit-card{
    max-height:none!important;
    overflow:visible!important;
  }
  body.page-location-visits .visit-card form[data-visit-voice-form="1"]{
    overflow:visible!important;
    max-height:none!important;
    padding-right:0!important;
  }
  body.page-location-visits .visit-evidence-field,
  body.page-location-visits .visit-evidence-preview-wrap{
    overflow:visible!important;
  }
  body.page-location-visits .visit-file-selection{
    max-height:clamp(220px,38dvh,340px)!important;
  }
  body.page-location-visits .visit-submit-row{
    position:static!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    background:transparent!important;
    border-top:0!important;
    box-shadow:none!important;
    padding-top:4px!important;
  }
}


/* My Visits — compact filters + non-overlapping preview navigation */
body.page-my-visits .visit-history-head{
  display:none!important;
}
body.page-my-visits .visit-filter-card--compact{
  margin-bottom:14px!important;
  padding:12px 14px!important;
  border-radius:18px!important;
  overflow:visible!important;
}
body.page-my-visits .visit-filter-shell{
  display:flex!important;
  align-items:flex-end!important;
  justify-content:space-between!important;
  gap:14px!important;
  flex-wrap:wrap!important;
  min-width:0!important;
}
body.page-my-visits .visit-filter-card--compact .visit-filter-bar{
  display:flex!important;
  align-items:flex-end!important;
  gap:12px!important;
  flex-wrap:wrap!important;
  flex:1 1 720px!important;
  min-width:0!important;
  margin:0!important;
}
body.page-my-visits .visit-filter-card--compact .visit-filter-bar label{
  display:grid!important;
  gap:5px!important;
  min-width:160px!important;
  max-width:230px!important;
  flex:0 1 210px!important;
  margin:0!important;
}
body.page-my-visits .visit-filter-card--compact .visit-filter-bar label:nth-child(2){
  min-width:260px!important;
  max-width:420px!important;
  flex:1 1 320px!important;
}
body.page-my-visits .visit-filter-card--compact .visit-filter-bar label span{
  font-size:.68rem!important;
  line-height:1!important;
  font-weight:900!important;
  letter-spacing:.055em!important;
  text-transform:uppercase!important;
  color:#64748b!important;
}
body.page-my-visits .visit-filter-card--compact .visit-filter-bar select{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  min-height:38px!important;
  border-radius:12px!important;
  text-overflow:ellipsis!important;
}
body.page-my-visits .visit-filter-card--compact .visit-filter-bar .btn{
  min-height:38px!important;
  white-space:nowrap!important;
}
body.page-my-visits .visit-filter-card--compact .visit-nav-btn{
  min-height:38px!important;
  white-space:nowrap!important;
  margin-left:auto!important;
  flex:0 0 auto!important;
}
body.page-my-visits .ticket-image-modal__body,
body.page-my-visits .visit-preview-modal .visit-preview-body{
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr) auto!important;
  align-items:center!important;
  justify-items:center!important;
  gap:14px!important;
  padding:16px!important;
  overflow:hidden!important;
}
body.page-my-visits .ticket-image-modal__body > img,
body.page-my-visits .visit-preview-modal .visit-preview-content{
  grid-column:2!important;
  min-width:0!important;
  max-width:100%!important;
  max-height:100%!important;
}
body.page-my-visits .ticket-image-modal .image-nav,
body.page-my-visits .visit-preview-modal .visit-preview-body > .visit-preview-nav{
  position:relative!important;
  top:auto!important;
  left:auto!important;
  right:auto!important;
  bottom:auto!important;
  transform:none!important;
  z-index:1!important;
  flex:0 0 44px!important;
  width:44px!important;
  height:44px!important;
  margin:0!important;
  border-radius:999px!important;
  background:#fff!important;
  border:1px solid #cbd5e1!important;
  box-shadow:0 10px 24px rgba(15,23,42,.16)!important;
}
body.page-my-visits .ticket-image-modal .image-nav.prev,
body.page-my-visits .visit-preview-modal .visit-preview-body > .visit-preview-nav--prev{
  grid-column:1!important;
}
body.page-my-visits .ticket-image-modal .image-nav.next,
body.page-my-visits .visit-preview-modal .visit-preview-body > .visit-preview-nav--next{
  grid-column:3!important;
}
body.page-my-visits .ticket-image-modal .image-nav[hidden],
body.page-my-visits .visit-preview-modal .visit-preview-body > .visit-preview-nav[hidden]{
  display:none!important;
}
body.page-my-visits .ticket-image-modal__body img,
body.page-my-visits .visit-preview-modal .visit-preview-content .visit-preview-media,
body.page-my-visits .visit-preview-modal .visit-preview-content .visit-preview-frame,
body.page-my-visits .visit-preview-modal .visit-preview-content .visit-preview-audio{
  max-width:100%!important;
  max-height:calc(86dvh - 168px)!important;
  object-fit:contain!important;
}
@media(max-width:760px){
  body.page-my-visits .visit-filter-card--compact{padding:12px!important;}
  body.page-my-visits .visit-filter-shell{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;}
  body.page-my-visits .visit-filter-card--compact .visit-filter-bar{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;flex:none!important;}
  body.page-my-visits .visit-filter-card--compact .visit-filter-bar label,
  body.page-my-visits .visit-filter-card--compact .visit-filter-bar label:nth-child(2){min-width:0!important;max-width:100%!important;flex:none!important;}
  body.page-my-visits .visit-filter-card--compact .visit-filter-bar .btn,
  body.page-my-visits .visit-filter-card--compact .visit-nav-btn{width:100%!important;justify-content:center!important;margin-left:0!important;}
  body.page-my-visits .ticket-image-modal__body,
  body.page-my-visits .visit-preview-modal .visit-preview-body{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    grid-template-areas:"media media" "prev next"!important;
    gap:10px!important;
    padding:12px!important;
  }
  body.page-my-visits .ticket-image-modal__body > img,
  body.page-my-visits .visit-preview-modal .visit-preview-content{grid-area:media!important;grid-column:auto!important;}
  body.page-my-visits .ticket-image-modal .image-nav.prev,
  body.page-my-visits .visit-preview-modal .visit-preview-body > .visit-preview-nav--prev{grid-area:prev!important;grid-column:auto!important;justify-self:end!important;}
  body.page-my-visits .ticket-image-modal .image-nav.next,
  body.page-my-visits .visit-preview-modal .visit-preview-body > .visit-preview-nav--next{grid-area:next!important;grid-column:auto!important;justify-self:start!important;}
  body.page-my-visits .ticket-image-modal .image-nav,
  body.page-my-visits .visit-preview-modal .visit-preview-body > .visit-preview-nav{width:40px!important;height:40px!important;flex-basis:40px!important;}
  body.page-my-visits .ticket-image-modal__body img,
  body.page-my-visits .visit-preview-modal .visit-preview-content .visit-preview-media,
  body.page-my-visits .visit-preview-modal .visit-preview-content .visit-preview-frame,
  body.page-my-visits .visit-preview-modal .visit-preview-content .visit-preview-audio{max-height:calc(86dvh - 220px)!important;}
}

/* My Visits — stable filter grid + scoped location suggest anchor */
body.page-my-visits .visit-filter-card--compact{
  overflow:visible!important;
}
body.page-my-visits .visit-filter-shell{
  display:flex!important;
  align-items:flex-end!important;
  justify-content:space-between!important;
  gap:14px!important;
  flex-wrap:wrap!important;
  min-width:0!important;
}
body.page-my-visits .visit-filter-card--compact .visit-filter-bar{
  display:block!important;
  flex:1 1 720px!important;
  min-width:0!important;
  margin:0!important;
}
body.page-my-visits .visit-filter-grid{
  display:grid!important;
  grid-template-columns:minmax(160px,220px) minmax(260px,420px) auto!important;
  align-items:end!important;
  gap:12px!important;
  min-width:0!important;
  max-width:100%!important;
}
body.page-my-visits .visit-filter-field{
  display:grid!important;
  gap:5px!important;
  min-width:0!important;
  max-width:100%!important;
  margin:0!important;
}
body.page-my-visits .visit-filter-field--location{
  position:relative!important;
  min-width:0!important;
  max-width:420px!important;
}
body.page-my-visits .visit-filter-label{
  display:block!important;
  min-width:0!important;
  max-width:100%!important;
  margin:0!important;
  font-size:.68rem!important;
  line-height:1!important;
  font-weight:900!important;
  letter-spacing:.055em!important;
  text-transform:uppercase!important;
  color:#64748b!important;
}
body.page-my-visits .visit-filter-field select,
body.page-my-visits .visit-filter-field input{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  min-height:38px!important;
  border-radius:12px!important;
  text-overflow:ellipsis!important;
}
body.page-my-visits .visit-filter-actions{
  display:flex!important;
  align-items:end!important;
  gap:8px!important;
  min-width:0!important;
  white-space:nowrap!important;
}
body.page-my-visits .visit-filter-actions .btn,
body.page-my-visits .visit-nav-btn{
  min-height:38px!important;
  white-space:nowrap!important;
}
body.page-my-visits .visit-nav-btn{
  flex:0 0 auto!important;
  margin-left:auto!important;
}
body.page-my-visits .visit-filter-field--location .location-suggest{
  position:absolute!important;
  left:0!important;
  right:0!important;
  top:calc(100% + 6px)!important;
  z-index:30!important;
  width:auto!important;
  max-height:260px!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  margin:0!important;
}
body.page-my-visits .visit-filter-field--location .location-suggest[hidden],
body.page-my-visits .location-suggest[hidden]{
  display:none!important;
}
@media(max-width:760px){
  body.page-my-visits .visit-filter-shell{
    display:grid!important;
    grid-template-columns:1fr!important;
    align-items:stretch!important;
    gap:10px!important;
  }
  body.page-my-visits .visit-filter-card--compact .visit-filter-bar{
    flex:none!important;
    width:100%!important;
  }
  body.page-my-visits .visit-filter-grid{
    grid-template-columns:1fr!important;
    gap:10px!important;
  }
  body.page-my-visits .visit-filter-field--location{
    max-width:100%!important;
  }
  body.page-my-visits .visit-filter-actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
    white-space:normal!important;
  }
  body.page-my-visits .visit-filter-actions .btn,
  body.page-my-visits .visit-nav-btn{
    width:100%!important;
    justify-content:center!important;
    margin-left:0!important;
  }
}

/* Tickets/My Visits location suggest hidden-state fix — keep hidden dropdowns out of layout */
.location-suggest[hidden],
.board-location-suggest[hidden],
body.page-tickets #ticketsFilterPanel .location-suggest[hidden],
body.page-my-visits .location-suggest[hidden]{
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
}
body.page-tickets #ticketsFilterPanel .field-box--location,
body.page-tickets #ticketsFilterPanel .js-location-autocomplete{
  position:relative!important;
  min-width:0!important;
}
body.page-tickets #ticketsFilterPanel .field-box--location .location-suggest:not([hidden]){
  display:flex!important;
  position:absolute!important;
  left:0!important;
  right:0!important;
  top:calc(100% + 8px)!important;
  width:auto!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}
@media(max-width:760px){
  body.page-tickets #ticketsFilterPanel .field-box--location .location-suggest:not([hidden]){
    position:static!important;
    width:100%!important;
    margin-top:8px!important;
  }
}

/* PDF preview mobile fallback — keep desktop modal, open full PDF cleanly on mobile */
.ticket-pdf-modal .ticket-pdf-modal__card{
  max-height:92dvh!important;
}
.ticket-pdf-modal .ticket-pdf-modal__body{
  overflow:auto!important;
  max-height:calc(100dvh - 190px)!important;
}
.ticket-pdf-modal [data-ticket-pdf-frame]{
  display:block!important;
  width:100%!important;
  height:min(78dvh, 820px)!important;
  min-height:62vh!important;
  border:0!important;
  background:#fff!important;
}
.ticket-pdf-modal__foot{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:10px!important;
  flex-wrap:wrap!important;
}
.ticket-pdf-modal__mobile-note{
  flex:1 1 280px!important;
  margin:0!important;
  color:#64748b!important;
  font-size:12px!important;
  line-height:1.35!important;
  font-weight:700!important;
}
@media (max-width:760px){
  .ticket-pdf-modal .ticket-pdf-modal__card{
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    max-height:92dvh!important;
    border-radius:20px 20px 0 0!important;
  }
  .ticket-pdf-modal .ticket-pdf-modal__body{
    max-height:62dvh!important;
  }
  .ticket-pdf-modal [data-ticket-pdf-frame]{
    height:62dvh!important;
    min-height:52dvh!important;
  }
  .ticket-pdf-modal__foot{
    align-items:stretch!important;
    justify-content:stretch!important;
  }
  .ticket-pdf-modal__foot .btn,
  .ticket-pdf-modal__foot button{
    width:100%!important;
    justify-content:center!important;
  }
  .ticket-pdf-modal__mobile-note{
    flex:1 1 100%!important;
    text-align:center!important;
  }
}

/* Visit detail PDF flow cleanup — desktop inline preview, mobile direct actions */
body.page-location-visit-detail .visit-file-card .pdf-inline-preview{
  position:relative!important;
  display:block!important;
  height:260px!important;
  overflow:hidden!important;
  background:#f8fafc!important;
  border-bottom:1px solid #e2e8f0!important;
}
body.page-location-visit-detail .visit-file-card .pdf-inline-preview iframe[data-pdf-inline-frame]{
  display:block!important;
  width:100%!important;
  height:100%!important;
  border:0!important;
  background:#fff!important;
}
body.page-location-visit-detail .pdf-inline-preview__placeholder{
  position:absolute!important;
  inset:0!important;
  display:grid!important;
  place-items:center!important;
  align-content:center!important;
  gap:5px!important;
  padding:18px!important;
  text-align:center!important;
  color:#475569!important;
  background:linear-gradient(180deg,#ffffff 0%,#f8fafc 100%)!important;
  z-index:1!important;
}
body.page-location-visit-detail .pdf-inline-preview__placeholder span{font-size:28px!important;line-height:1!important}
body.page-location-visit-detail .pdf-inline-preview__placeholder strong{font-size:13px!important;color:#0f172a!important;font-weight:900!important;text-transform:uppercase!important;letter-spacing:.04em!important}
body.page-location-visit-detail .pdf-inline-preview__placeholder small{font-size:12px!important;line-height:1.35!important;color:#64748b!important;font-weight:700!important}
body.page-location-visit-detail .pdf-inline-preview.is-loaded .pdf-inline-preview__placeholder{display:none!important}
body.page-location-visit-detail .visit-file-card .pdf-action-open{display:none!important}

@media (max-width:760px), (pointer:coarse){
  body.page-location-visit-detail .visit-file-card .pdf-inline-preview{
    display:none!important;
  }
  body.page-location-visit-detail .visit-file-card .pdf-action-preview{
    display:none!important;
  }
  body.page-location-visit-detail .visit-file-card .pdf-action-open{
    display:inline-flex!important;
  }
}

@media (min-width:761px) and (pointer:fine){
  body.page-location-visit-detail .visit-file-card .pdf-action-preview{
    display:inline-flex!important;
  }
}

/* System Developer — PDF Email Logs review action clarity */
.error-logs-page .pdf-email-review-card{
  display:grid;
  gap:6px;
  min-width:260px;
  max-width:420px;
  padding:12px 13px;
  border:1px solid rgba(245,158,11,.28);
  border-radius:14px;
  background:linear-gradient(180deg,rgba(255,251,235,.98),rgba(255,247,237,.94));
  color:#78350f;
  box-shadow:0 10px 24px rgba(146,64,14,.08);
}
.error-logs-page .pdf-email-review-card strong{
  font-size:13px;
  line-height:1.25;
  font-weight:900;
  color:#7c2d12;
}
.error-logs-page .pdf-email-review-card span,
.error-logs-page .pdf-email-review-card small{
  font-size:12px;
  line-height:1.38;
  font-weight:700;
}
.error-logs-page .pdf-email-review-card small{color:#92400e;}
.error-logs-page .pdf-email-action-row{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
  margin-top:10px;
}
.error-logs-page .pdf-email-action-row .inline-form{display:inline-flex;margin:0;}
.error-logs-page .pdf-email-advanced-note{
  margin:10px 0;
  padding:10px 12px;
  border:1px solid rgba(148,163,184,.25);
  border-radius:12px;
  background:#f8fafc;
  color:#334155;
  font-size:12px;
  line-height:1.45;
  font-weight:700;
}
@media (max-width: 760px){
  .error-logs-page .pdf-email-review-card{min-width:0;max-width:100%;}
  .error-logs-page .pdf-email-action-row{align-items:stretch;}
  .error-logs-page .pdf-email-action-row .inline-form,
  .error-logs-page .pdf-email-action-row .btn{width:100%;justify-content:center;}
}

/* System Developer — grouped Visit PDF Email diagnostics */
body.page-system-error-logs .pdf-diag-badges{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  align-items:center;
  max-width:520px;
}
body.page-system-error-logs .pdf-diag-detail-note{
  margin:10px 0;
  padding:10px 12px;
  border:1px solid rgba(148,163,184,.28);
  border-radius:12px;
  background:#f8fafc;
  color:#475569;
  font-size:12px;
  line-height:1.45;
}
body.page-system-error-logs .pdf-diag-timeline{
  display:grid;
  gap:10px;
  margin-top:10px;
}
body.page-system-error-logs .pdf-diag-timeline-item{
  display:grid;
  gap:5px;
  padding:10px;
  border:1px solid rgba(148,163,184,.24);
  border-radius:12px;
  background:#fff;
}
body.page-system-error-logs .pdf-diag-timeline-item span{
  color:#64748b;
  font-size:12px;
  font-weight:700;
}
body.page-system-error-logs .pdf-diag-timeline-item pre{
  max-height:260px;
  overflow:auto;
  margin:4px 0 0;
}
.error-logs-page .pdf-diag-badges{display:flex;flex-wrap:wrap;gap:6px;align-items:center;max-width:520px;}
.error-logs-page .pdf-diag-detail-note{margin:10px 0;padding:10px 12px;border:1px solid rgba(148,163,184,.28);border-radius:12px;background:#f8fafc;color:#475569;font-size:12px;line-height:1.45;}
.error-logs-page .pdf-diag-timeline{display:grid;gap:10px;margin-top:10px;}
.error-logs-page .pdf-diag-timeline-item{display:grid;gap:5px;padding:10px;border:1px solid rgba(148,163,184,.24);border-radius:12px;background:#fff;}
.error-logs-page .pdf-diag-timeline-item span{color:#64748b;font-size:12px;font-weight:700;}
.error-logs-page .pdf-diag-timeline-item pre{max-height:260px;overflow:auto;margin:4px 0 0;}

/* System Developer — Visit PDF Email diagnostics related attempt clarity */
body.page-system-error-logs .pdf-diag-related-log,
.error-logs-page .pdf-diag-related-log{
  display:grid;
  gap:5px;
  margin:10px 0;
  padding:10px 12px;
  border:1px solid rgba(14,165,233,.22);
  border-radius:12px;
  background:linear-gradient(180deg,#f0f9ff 0%,#ffffff 100%);
  color:#0f172a;
  font-size:12px;
  line-height:1.45;
}
body.page-system-error-logs .pdf-diag-related-log strong,
.error-logs-page .pdf-diag-related-log strong{font-size:12px;color:#075985;}
body.page-system-error-logs .pdf-diag-related-log span,
.error-logs-page .pdf-diag-related-log span{color:#334155;font-weight:700;}
body.page-system-error-logs .pdf-diag-related-log small,
.error-logs-page .pdf-diag-related-log small{color:#64748b;font-weight:600;}
body.page-system-error-logs .pdf-diag-related-log.is-empty,
.error-logs-page .pdf-diag-related-log.is-empty{border-color:rgba(148,163,184,.28);background:#f8fafc;}

/* System Error Logs recovery/search — scoped, null-safe diagnostics UI */
body.page-system-error-logs .system-error-log-recovery-note{
  display:grid;
  gap:4px;
  margin:0 0 16px;
}
body.page-system-error-logs .system-error-log-recovery-note strong,
body.page-system-error-logs .system-error-log-recovery-note span,
body.page-system-error-logs .system-error-log-recovery-note small{
  display:block;
}
body.page-system-error-logs .system-error-log-search{
  display:grid;
  grid-template-columns:minmax(260px,1fr) auto auto;
  align-items:end;
  gap:10px;
  margin:12px 0;
  min-width:0;
}
body.page-system-error-logs .system-error-log-search label{
  display:grid;
  gap:6px;
  min-width:0;
}
body.page-system-error-logs .system-error-log-search label > span{
  font-size:12px;
  font-weight:800;
  color:#475569;
}
body.page-system-error-logs .system-error-log-search input[type="search"]{
  width:100%;
  min-width:0;
}
@media (max-width:760px){
  body.page-system-error-logs .system-error-log-search{
    grid-template-columns:1fr;
  }
  body.page-system-error-logs .system-error-log-search .btn{
    width:100%;
  }
}

/* My Visits — advanced filters + real pagination */
body.page-my-visits .visit-filter-card--compact{
  padding:16px!important;
  overflow:visible!important;
}
body.page-my-visits .visit-filter-shell{
  display:block!important;
  min-width:0!important;
}
body.page-my-visits .visit-filter-card--compact .visit-filter-bar{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:12px!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
}
body.page-my-visits .visit-filter-topline{
  display:grid!important;
  grid-template-columns:minmax(260px,1fr) auto!important;
  gap:12px!important;
  align-items:end!important;
  min-width:0!important;
}
body.page-my-visits .visit-filter-search{
  display:grid!important;
  gap:5px!important;
  min-width:0!important;
}
body.page-my-visits .visit-filter-search input,
body.page-my-visits .visit-filter-field input,
body.page-my-visits .visit-filter-field select{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  min-height:40px!important;
  margin:0!important;
  border-radius:12px!important;
}
body.page-my-visits .visit-filter-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(150px,1fr))!important;
  gap:12px!important;
  align-items:end!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
}
body.page-my-visits .visit-filter-field{
  display:grid!important;
  gap:5px!important;
  min-width:0!important;
  max-width:none!important;
  margin:0!important;
}
body.page-my-visits .visit-filter-field--location{
  position:relative!important;
  grid-column:span 2!important;
  max-width:none!important;
  min-width:0!important;
}
body.page-my-visits .visit-filter-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:8px!important;
  flex-wrap:wrap!important;
  min-width:0!important;
  white-space:normal!important;
}
body.page-my-visits .visit-filter-actions .btn,
body.page-my-visits .visit-filter-actions .visit-nav-btn{
  min-height:40px!important;
  width:auto!important;
  margin:0!important;
  white-space:nowrap!important;
}
body.page-my-visits .visit-filter-summary{
  display:flex!important;
  align-items:center!important;
  gap:8px 12px!important;
  flex-wrap:wrap!important;
  margin-top:12px!important;
  padding-top:12px!important;
  border-top:1px solid #e5e7eb!important;
  color:#64748b!important;
  font-size:.86rem!important;
}
body.page-my-visits .visit-filter-chip{
  display:inline-flex!important;
  align-items:center!important;
  min-height:28px!important;
  padding:4px 9px!important;
  border:1px solid #dbe3ec!important;
  border-radius:999px!important;
  background:#f8fafc!important;
  color:#334155!important;
  font-weight:750!important;
}
body.page-my-visits .visit-filter-alert{
  margin-top:10px!important;
  padding:9px 11px!important;
  border:1px solid #fde68a!important;
  border-radius:12px!important;
  background:#fffbeb!important;
  color:#92400e!important;
  font-size:.86rem!important;
  font-weight:700!important;
}
body.page-my-visits .visit-filter-field--location .location-suggest:not([hidden]){
  display:flex!important;
  position:absolute!important;
  left:0!important;
  right:0!important;
  top:calc(100% + 6px)!important;
  z-index:40!important;
  width:auto!important;
  max-height:260px!important;
  overflow:auto!important;
}
body.page-my-visits .location-suggest[hidden]{
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
}
body.page-my-visits .visit-pagination{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  flex-wrap:wrap!important;
  margin-top:16px!important;
  padding:14px!important;
  border:1px solid #e5e7eb!important;
  border-radius:16px!important;
  background:#fff!important;
}
body.page-my-visits .visit-pagination-summary{
  color:#64748b!important;
  font-size:.86rem!important;
}
body.page-my-visits .visit-pagination-links{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:6px!important;
  flex-wrap:wrap!important;
}
body.page-my-visits .visit-page-link{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:38px!important;
  min-height:38px!important;
  padding:6px 10px!important;
  border:1px solid #dbe3ec!important;
  border-radius:10px!important;
  background:#fff!important;
  color:#334155!important;
  font-weight:800!important;
  text-decoration:none!important;
}
body.page-my-visits .visit-page-link:hover{
  border-color:#94a3b8!important;
  background:#f8fafc!important;
}
body.page-my-visits .visit-page-link.is-current{
  border-color:#1d4ed8!important;
  background:#1d4ed8!important;
  color:#fff!important;
}
body.page-my-visits .visit-page-gap{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:24px!important;
  color:#94a3b8!important;
}
body.page-my-visits .visit-pagination .is-disabled{
  opacity:.48!important;
  pointer-events:none!important;
}
@media(max-width:980px){
  body.page-my-visits .visit-filter-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  body.page-my-visits .visit-filter-field--location{
    grid-column:span 1!important;
  }
}
@media(max-width:760px){
  body.page-my-visits .visit-filter-card--compact{
    padding:12px!important;
  }
  body.page-my-visits .visit-filter-topline,
  body.page-my-visits .visit-filter-grid{
    grid-template-columns:1fr!important;
  }
  body.page-my-visits .visit-filter-field--location{
    grid-column:auto!important;
  }
  body.page-my-visits .visit-filter-actions{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    justify-content:stretch!important;
  }
  body.page-my-visits .visit-filter-actions .visit-nav-btn{
    grid-column:1/-1!important;
  }
  body.page-my-visits .visit-filter-actions .btn,
  body.page-my-visits .visit-filter-actions .visit-nav-btn{
    width:100%!important;
    min-height:44px!important;
    justify-content:center!important;
  }
  body.page-my-visits .visit-pagination{
    align-items:stretch!important;
  }
  body.page-my-visits .visit-pagination-summary{
    width:100%!important;
    text-align:center!important;
  }
  body.page-my-visits .visit-pagination-links{
    width:100%!important;
    justify-content:center!important;
  }
}
@media(max-width:480px){
  body.page-my-visits .visit-filter-actions{
    grid-template-columns:1fr!important;
  }
  body.page-my-visits .visit-filter-actions .visit-nav-btn{
    grid-column:auto!important;
  }
  body.page-my-visits .visit-pagination-links .btn{
    flex:1 1 120px!important;
    justify-content:center!important;
  }
}

/* My Visits — search selector pattern, collapsible filters and user page size */
body.page-my-visits .visit-filter-card--compact[data-my-visits-filter]{
  position:relative!important;
  margin:0 0 16px!important;
  padding:0!important;
  overflow:visible!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body.page-my-visits [data-my-visits-filter] [hidden]{display:none!important}
body.page-my-visits .visit-filter-shell{display:block!important;min-width:0!important}
body.page-my-visits .visit-filter-card--compact .visit-filter-bar{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:12px!important;
  width:100%!important;
  margin:0!important;
}
body.page-my-visits .visit-search-layout{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:12px!important;
  align-items:center!important;
  min-width:0!important;
}
body.page-my-visits .visit-search-console{
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr) 44px 50px!important;
  align-items:stretch!important;
  min-width:0!important;
  min-height:54px!important;
  border:1px solid #dce5ef!important;
  border-radius:16px!important;
  background:#fff!important;
  box-shadow:0 10px 28px rgba(15,23,42,.055)!important;
  overflow:visible!important;
}
body.page-my-visits .visit-search-scope{
  position:relative!important;
  display:flex!important;
  align-items:stretch!important;
  min-width:0!important;
}
body.page-my-visits .visit-search-scope-toggle{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  min-width:132px!important;
  min-height:52px!important;
  padding:0 16px!important;
  border:0!important;
  border-right:1px solid #e8edf3!important;
  border-radius:16px 0 0 16px!important;
  background:#fff!important;
  color:#475569!important;
  font:800 .78rem/1 Inter,system-ui,sans-serif!important;
  cursor:pointer!important;
}
body.page-my-visits .visit-search-scope-toggle:hover,
body.page-my-visits .visit-search-scope-toggle[aria-expanded="true"]{
  background:#f8fafc!important;
  color:#0f172a!important;
}
body.page-my-visits .visit-search-caret,
body.page-my-visits .visit-filter-toggle-caret{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-size:1rem!important;
  transition:transform .18s ease!important;
}
body.page-my-visits .visit-search-scope-toggle[aria-expanded="true"] .visit-search-caret,
body.page-my-visits .visit-filter-toggle[aria-expanded="true"] .visit-filter-toggle-caret{
  transform:rotate(180deg)!important;
}
body.page-my-visits .visit-search-scope-menu{
  position:absolute!important;
  z-index:80!important;
  top:calc(100% + 9px)!important;
  left:0!important;
  display:grid!important;
  gap:7px!important;
  width:245px!important;
  max-width:min(88vw,245px)!important;
  padding:12px!important;
  border:1px solid #dce5ef!important;
  border-radius:15px!important;
  background:#fff!important;
  box-shadow:0 20px 46px rgba(15,23,42,.16)!important;
}
body.page-my-visits .visit-search-scope-menu>strong{
  padding:2px 3px 6px!important;
  color:#334155!important;
  font-size:.78rem!important;
}
body.page-my-visits .visit-search-scope-menu label{
  display:flex!important;
  align-items:center!important;
  gap:9px!important;
  min-width:0!important;
  padding:7px 8px!important;
  border-radius:10px!important;
  color:#475569!important;
  font-size:.82rem!important;
  font-weight:700!important;
  cursor:pointer!important;
}
body.page-my-visits .visit-search-scope-menu label:hover{background:#f8fafc!important;color:#0f172a!important}
body.page-my-visits .visit-search-scope-menu input{
  width:18px!important;
  height:18px!important;
  margin:0!important;
  accent-color:#2563eb!important;
}
body.page-my-visits .visit-search-scope-menu small{
  padding:4px 3px 0!important;
  color:#94a3b8!important;
  font-size:.7rem!important;
}
body.page-my-visits .visit-search-entry{
  display:flex!important;
  align-items:center!important;
  align-content:center!important;
  gap:7px!important;
  min-width:0!important;
  padding:7px 10px!important;
  overflow:hidden!important;
}
body.page-my-visits .visit-search-scope-chips{
  display:flex!important;
  align-items:center!important;
  gap:6px!important;
  flex:0 1 auto!important;
  max-width:58%!important;
  min-width:0!important;
  overflow-x:auto!important;
  scrollbar-width:none!important;
}
body.page-my-visits .visit-search-scope-chips::-webkit-scrollbar{display:none!important}
body.page-my-visits .visit-search-scope-chip{
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
  flex:0 0 auto!important;
  min-height:30px!important;
  padding:5px 9px!important;
  border:1px solid #4f75e8!important;
  border-radius:8px!important;
  background:#5b7fea!important;
  color:#fff!important;
  font:800 .72rem/1 Inter,system-ui,sans-serif!important;
  box-shadow:0 3px 8px rgba(37,99,235,.18)!important;
  cursor:pointer!important;
}
body.page-my-visits .visit-search-scope-chip:hover{background:#4268da!important}
body.page-my-visits .visit-search-entry input[type="search"]{
  flex:1 1 180px!important;
  width:auto!important;
  min-width:120px!important;
  max-width:none!important;
  min-height:38px!important;
  padding:0 6px!important;
  border:0!important;
  border-radius:0!important;
  outline:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:#0f172a!important;
  font-size:.92rem!important;
}
body.page-my-visits .visit-search-entry input[type="search"]::placeholder{color:#94a3b8!important}
body.page-my-visits .visit-search-clear,
body.page-my-visits .visit-search-submit{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:44px!important;
  min-height:52px!important;
  padding:0!important;
  border:0!important;
  border-left:1px solid #e8edf3!important;
  background:#fff!important;
  color:#94a3b8!important;
  cursor:pointer!important;
}
body.page-my-visits .visit-search-clear{font-size:1.45rem!important;font-weight:300!important}
body.page-my-visits .visit-search-submit{border-radius:0 16px 16px 0!important}
body.page-my-visits .visit-search-clear:hover,
body.page-my-visits .visit-search-submit:hover{background:#f8fafc!important;color:#2563eb!important}
body.page-my-visits .visit-search-submit svg{
  width:20px!important;
  height:20px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.8!important;
  stroke-linecap:round!important;
}
body.page-my-visits .visit-search-utilities{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:8px!important;
  min-width:0!important;
}
body.page-my-visits .visit-filter-toggle,
body.page-my-visits .visit-search-utilities .visit-nav-btn{
  min-height:48px!important;
  white-space:nowrap!important;
}
body.page-my-visits .visit-filter-toggle{
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
}
body.page-my-visits .visit-filter-count{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:22px!important;
  min-height:22px!important;
  padding:2px 6px!important;
  border-radius:999px!important;
  background:#e8eefc!important;
  color:#1d4ed8!important;
  font-size:.72rem!important;
  font-weight:900!important;
}
body.page-my-visits .visit-active-filter-chips{
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  flex-wrap:wrap!important;
  padding:0 2px!important;
}
body.page-my-visits .visit-active-filter-chips>span{
  display:inline-flex!important;
  align-items:center!important;
  min-height:28px!important;
  padding:5px 9px!important;
  border:1px solid #dbe4ef!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.82)!important;
  color:#475569!important;
  font-size:.72rem!important;
  font-weight:800!important;
}
body.page-my-visits .visit-filter-panel{
  display:grid!important;
  gap:14px!important;
  padding:16px!important;
  border:1px solid #dce5ef!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 12px 30px rgba(15,23,42,.045)!important;
}
body.page-my-visits .visit-filter-panel-head{
  display:flex!important;
  align-items:flex-end!important;
  justify-content:space-between!important;
  gap:14px!important;
  padding-bottom:12px!important;
  border-bottom:1px solid #eef2f7!important;
}
body.page-my-visits .visit-filter-panel-head>div{display:grid!important;gap:3px!important}
body.page-my-visits .visit-filter-panel-head .eyebrow{font-size:.66rem!important}
body.page-my-visits .visit-filter-panel-head strong{color:#0f172a!important;font-size:.95rem!important}
body.page-my-visits .visit-filter-panel-head small{color:#64748b!important;font-size:.76rem!important;text-align:right!important}
body.page-my-visits .visit-filter-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(145px,1fr))!important;
  gap:12px!important;
  align-items:end!important;
  width:100%!important;
  min-width:0!important;
}
body.page-my-visits .visit-filter-field{
  display:grid!important;
  gap:6px!important;
  min-width:0!important;
  margin:0!important;
}
body.page-my-visits .visit-filter-field--location{position:relative!important;grid-column:span 2!important}
body.page-my-visits .visit-filter-label{
  color:#64748b!important;
  font-size:.68rem!important;
  font-weight:900!important;
  letter-spacing:.055em!important;
  text-transform:uppercase!important;
}
body.page-my-visits .visit-filter-field input,
body.page-my-visits .visit-filter-field select{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  min-height:42px!important;
  margin:0!important;
  border:1px solid #dbe4ef!important;
  border-radius:11px!important;
  background:#fff!important;
  color:#172033!important;
  box-shadow:none!important;
}
body.page-my-visits .visit-filter-field input:focus,
body.page-my-visits .visit-filter-field select:focus{
  border-color:#7da0ee!important;
  box-shadow:0 0 0 3px rgba(37,99,235,.10)!important;
}
body.page-my-visits .visit-filter-field--per-page small{
  color:#94a3b8!important;
  font-size:.68rem!important;
}
body.page-my-visits .visit-filter-panel-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:8px!important;
  padding-top:2px!important;
}
body.page-my-visits .visit-filter-panel-actions .btn{min-height:42px!important}
body.page-my-visits .visit-filter-summary{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:8px 14px!important;
  flex-wrap:wrap!important;
  margin-top:10px!important;
  padding:0 4px!important;
  border:0!important;
  color:#64748b!important;
  font-size:.82rem!important;
}
body.page-my-visits .visit-filter-alert{
  margin-top:10px!important;
  padding:9px 11px!important;
  border:1px solid #fde68a!important;
  border-radius:12px!important;
  background:#fffbeb!important;
  color:#92400e!important;
  font-size:.84rem!important;
  font-weight:700!important;
}
body.page-my-visits .visit-filter-field--location .location-suggest:not([hidden]){
  display:flex!important;
  position:absolute!important;
  z-index:70!important;
  top:calc(100% + 7px)!important;
  left:0!important;
  right:0!important;
  width:auto!important;
  max-height:260px!important;
  overflow:auto!important;
}
body.page-my-visits .location-suggest[hidden]{display:none!important;visibility:hidden!important;pointer-events:none!important}
@media(max-width:1040px){
  body.page-my-visits .visit-search-layout{grid-template-columns:1fr!important}
  body.page-my-visits .visit-search-utilities{justify-content:flex-end!important}
  body.page-my-visits .visit-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  body.page-my-visits .visit-filter-field--location{grid-column:span 1!important}
}
@media(max-width:700px){
  body.page-my-visits .visit-search-console{
    grid-template-columns:minmax(0,1fr) 42px 46px!important;
  }
  body.page-my-visits .visit-search-scope{
    grid-column:1/-1!important;
    border-bottom:1px solid #e8edf3!important;
  }
  body.page-my-visits .visit-search-scope-toggle{
    width:100%!important;
    min-width:0!important;
    min-height:44px!important;
    border-right:0!important;
    border-radius:16px 16px 0 0!important;
  }
  body.page-my-visits .visit-search-entry{grid-column:1/2!important;min-height:52px!important}
  body.page-my-visits .visit-search-clear,
  body.page-my-visits .visit-search-submit{min-height:52px!important}
  body.page-my-visits .visit-search-scope-chips{max-width:54%!important}
  body.page-my-visits .visit-search-scope-menu{top:calc(100% + 7px)!important;width:min(92vw,280px)!important}
  body.page-my-visits .visit-search-utilities{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    width:100%!important;
  }
  body.page-my-visits .visit-search-utilities .btn{width:100%!important;min-height:44px!important;justify-content:center!important}
  body.page-my-visits .visit-filter-panel{padding:13px!important}
  body.page-my-visits .visit-filter-panel-head{align-items:flex-start!important;flex-direction:column!important;gap:6px!important}
  body.page-my-visits .visit-filter-panel-head small{text-align:left!important}
  body.page-my-visits .visit-filter-grid{grid-template-columns:1fr!important}
  body.page-my-visits .visit-filter-panel-actions{display:grid!important;grid-template-columns:1fr 1fr!important}
  body.page-my-visits .visit-filter-panel-actions .btn{width:100%!important;min-height:44px!important;justify-content:center!important}
}
@media(max-width:440px){
  body.page-my-visits .visit-search-scope-chips{max-width:48%!important}
  body.page-my-visits .visit-search-scope-chip{padding:5px 7px!important;font-size:.68rem!important}
  body.page-my-visits .visit-search-entry input[type="search"]{min-width:92px!important}
  body.page-my-visits .visit-search-utilities,
  body.page-my-visits .visit-filter-panel-actions{grid-template-columns:1fr!important}
}

/* My Visits — unified search, results surface and non-floating cards */
body.page-my-visits .my-visits-workspace{
  display:grid!important;
  gap:0!important;
  width:100%!important;
  min-width:0!important;
  padding:14px!important;
  border:1px solid #dbe5ef!important;
  border-radius:24px!important;
  background:linear-gradient(180deg,#fbfdff 0%,#f4f8fc 100%)!important;
  box-shadow:0 14px 38px rgba(15,23,42,.055)!important;
  overflow:visible!important;
}
body.page-my-visits .my-visits-workspace .visit-filter-card--compact[data-my-visits-filter]{
  margin:0!important;
  padding:0 0 13px!important;
  border-bottom:1px solid #e3eaf2!important;
}
body.page-my-visits .my-visits-workspace .visit-search-layout{
  gap:10px!important;
}
body.page-my-visits .my-visits-workspace .visit-search-console{
  min-height:52px!important;
  border-color:#d7e1eb!important;
  border-radius:14px!important;
  box-shadow:none!important;
}
body.page-my-visits .my-visits-workspace .visit-search-scope-toggle{
  min-width:130px!important;
  min-height:50px!important;
  border-radius:14px 0 0 14px!important;
  color:#334155!important;
}
body.page-my-visits .my-visits-workspace .visit-search-entry{
  min-height:50px!important;
  padding:6px 12px!important;
}
body.page-my-visits .my-visits-workspace .visit-search-entry input[type="search"]{
  min-height:36px!important;
  font-size:.9rem!important;
}
body.page-my-visits .my-visits-workspace .visit-search-clear,
body.page-my-visits .my-visits-workspace .visit-search-submit{
  min-height:50px!important;
  background:transparent!important;
}
body.page-my-visits .my-visits-workspace .visit-search-submit{
  border-radius:0 14px 14px 0!important;
}
body.page-my-visits .my-visits-workspace .visit-search-utilities .btn{
  min-height:50px!important;
  border-radius:13px!important;
}
body.page-my-visits .my-visits-workspace .visit-search-scope-chips:empty{
  display:none!important;
}
body.page-my-visits .my-visits-workspace .visit-search-scope-chip{
  border-color:#4d70df!important;
  background:#5b7bea!important;
  box-shadow:none!important;
}
body.page-my-visits .my-visits-workspace .visit-active-filter-chips{
  padding-top:2px!important;
}
body.page-my-visits .my-visits-workspace .visit-active-filter-chips>span{
  border-color:#cbdafb!important;
  background:#eef4ff!important;
  color:#3157b7!important;
}
body.page-my-visits .my-visits-workspace .visit-filter-panel{
  border-color:#dce5ee!important;
  border-radius:16px!important;
  background:rgba(255,255,255,.9)!important;
  box-shadow:none!important;
}
body.page-my-visits .my-visits-workspace .visit-filter-field--location{
  grid-column:span 2!important;
}
body.page-my-visits .my-visits-workspace .visit-history{
  gap:12px!important;
  padding-top:12px!important;
  background:transparent!important;
}
body.page-my-visits .visit-results-toolbar{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:8px 14px!important;
  flex-wrap:wrap!important;
  min-height:34px!important;
  padding:0 3px!important;
  color:#64748b!important;
  font-size:.8rem!important;
}
body.page-my-visits .visit-results-toolbar strong{
  color:#334155!important;
}
body.page-my-visits .my-visits-workspace .visit-history .visit-list{
  gap:12px!important;
}
body.page-my-visits .my-visits-workspace .visit-list-item.qn-table-card{
  border:1px solid #dce5ee!important;
  border-radius:16px!important;
  background:#fff!important;
  box-shadow:none!important;
  transition:border-color .16s ease,transform .16s ease!important;
}
body.page-my-visits .my-visits-workspace .visit-list-item.qn-table-card:hover{
  border-color:#c6d4e3!important;
  transform:translateY(-1px)!important;
}
body.page-my-visits .my-visits-workspace .visit-pagination{
  margin:4px -14px -14px!important;
  padding:14px!important;
  border:0!important;
  border-top:1px solid #dfe7f0!important;
  border-radius:0 0 23px 23px!important;
  background:rgba(255,255,255,.78)!important;
  box-shadow:none!important;
}
@media(max-width:1040px){
  body.page-my-visits .my-visits-workspace .visit-filter-field--location{grid-column:span 1!important}
}
@media(max-width:700px){
  body.page-my-visits .my-visits-workspace{
    padding:10px!important;
    border-radius:18px!important;
  }
  body.page-my-visits .my-visits-workspace .visit-filter-card--compact[data-my-visits-filter]{padding-bottom:10px!important}
  body.page-my-visits .my-visits-workspace .visit-search-console{border-radius:14px!important}
  body.page-my-visits .my-visits-workspace .visit-search-scope-toggle{border-radius:14px 14px 0 0!important}
  body.page-my-visits .visit-results-toolbar{align-items:flex-start!important;padding:0 2px!important}
  body.page-my-visits .my-visits-workspace .visit-pagination{
    margin:2px -10px -10px!important;
    border-radius:0 0 17px 17px!important;
  }
}

/* My Visits — inline active filter chips + data-backed locality options */
body.page-my-visits .my-visits-workspace .visit-search-entry{
  flex-wrap:nowrap!important;
  overflow:hidden!important;
}
body.page-my-visits .my-visits-workspace .visit-active-filter-chips,
body.page-my-visits .my-visits-workspace .visit-search-scope-chips{
  display:flex!important;
  align-items:center!important;
  gap:6px!important;
  flex:0 1 auto!important;
  min-width:0!important;
  max-width:46%!important;
  padding:0!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scrollbar-width:none!important;
}
body.page-my-visits .my-visits-workspace .visit-active-filter-chips::-webkit-scrollbar,
body.page-my-visits .my-visits-workspace .visit-search-scope-chips::-webkit-scrollbar{
  display:none!important;
}
body.page-my-visits .my-visits-workspace .visit-active-filter-chips:empty,
body.page-my-visits .my-visits-workspace .visit-search-scope-chips:empty{
  display:none!important;
}
body.page-my-visits .my-visits-workspace .visit-filter-chip,
body.page-my-visits .my-visits-workspace .visit-search-scope-chip{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  flex:0 0 auto!important;
  min-height:30px!important;
  max-width:150px!important;
  padding:5px 10px!important;
  border:1px solid #4d70df!important;
  border-radius:9px!important;
  background:#5b7bea!important;
  color:#fff!important;
  font:800 .72rem/1 Inter,system-ui,sans-serif!important;
  text-decoration:none!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  box-shadow:none!important;
  cursor:pointer!important;
}
body.page-my-visits .my-visits-workspace .visit-filter-chip:hover,
body.page-my-visits .my-visits-workspace .visit-search-scope-chip:hover{
  border-color:#3159d0!important;
  background:#4268da!important;
  color:#fff!important;
}
body.page-my-visits .my-visits-workspace .visit-filter-chip>span:first-child,
body.page-my-visits .my-visits-workspace .visit-search-scope-chip>span:first-child{
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
body.page-my-visits .my-visits-workspace .visit-search-entry input[type="search"]{
  flex:1 1 180px!important;
  min-width:120px!important;
}
@media(max-width:700px){
  body.page-my-visits .my-visits-workspace .visit-search-entry{
    flex-wrap:wrap!important;
    align-items:center!important;
    gap:7px!important;
    padding:8px 10px!important;
  }
  body.page-my-visits .my-visits-workspace .visit-active-filter-chips,
  body.page-my-visits .my-visits-workspace .visit-search-scope-chips{
    flex:1 1 100%!important;
    width:100%!important;
    max-width:100%!important;
    flex-wrap:wrap!important;
    overflow:visible!important;
  }
  body.page-my-visits .my-visits-workspace .visit-filter-chip,
  body.page-my-visits .my-visits-workspace .visit-search-scope-chip{
    max-width:min(100%,180px)!important;
  }
  body.page-my-visits .my-visits-workspace .visit-search-entry input[type="search"]{
    flex:1 1 100%!important;
    width:100%!important;
    min-width:100%!important;
  }
}

/* My Visits — AJAX search console, distinct active filters and overlay popover */
body.page-my-visits .my-visits-workspace{
  position:relative!important;
}
body.page-my-visits .my-visits-workspace.is-loading::after{
  content:"Actualizando visitas…";
  position:absolute;
  z-index:140;
  top:76px;
  left:50%;
  transform:translateX(-50%);
  padding:8px 13px;
  border:1px solid #dbe5ef;
  border-radius:999px;
  background:rgba(255,255,255,.96);
  color:#475569;
  box-shadow:0 10px 28px rgba(15,23,42,.12);
  font-size:.76rem;
  font-weight:800;
  pointer-events:none;
}
body.page-my-visits .my-visits-workspace.is-loading .visit-history{
  opacity:.56!important;
  pointer-events:none!important;
  transition:opacity .14s ease!important;
}
body.page-my-visits .visit-filter-card--compact[data-my-visits-filter]{
  position:relative!important;
  z-index:30!important;
  overflow:visible!important;
}
body.page-my-visits .visit-filter-card--compact .visit-filter-bar{
  position:relative!important;
  overflow:visible!important;
}
body.page-my-visits .visit-search-console{
  grid-template-columns:auto minmax(0,1fr) 52px!important;
}
body.page-my-visits .visit-search-entry{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  min-width:0!important;
  overflow:hidden!important;
}
body.page-my-visits .visit-search-scope-chips,
body.page-my-visits [data-my-visits-scope-chips]{
  display:none!important;
}
body.page-my-visits .visit-active-filter-chips{
  display:flex!important;
  align-items:center!important;
  gap:6px!important;
  flex:0 1 auto!important;
  min-width:0!important;
  max-width:58%!important;
  padding:0!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  flex-wrap:nowrap!important;
  scrollbar-width:none!important;
}
body.page-my-visits .visit-active-filter-chips::-webkit-scrollbar{display:none!important}
body.page-my-visits .visit-active-filter-chips:empty{display:none!important}
body.page-my-visits .my-visits-workspace .visit-filter-chip{
  display:inline-flex!important;
  align-items:center!important;
  gap:7px!important;
  flex:0 0 auto!important;
  min-height:31px!important;
  max-width:240px!important;
  padding:6px 10px!important;
  border:1px solid #456bdc!important;
  border-radius:9px!important;
  background:#5579e8!important;
  color:#fff!important;
  font:800 .72rem/1 Inter,system-ui,sans-serif!important;
  text-decoration:none!important;
  white-space:nowrap!important;
  box-shadow:none!important;
}
body.page-my-visits .my-visits-workspace .visit-filter-chip>span:first-child{
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
body.page-my-visits .my-visits-workspace .visit-filter-chip:hover,
body.page-my-visits .my-visits-workspace .visit-filter-chip:focus-visible{
  border-color:#3159ce!important;
  background:#4268d7!important;
  color:#fff!important;
}
body.page-my-visits .visit-search-entry input[type="search"]{
  flex:1 1 180px!important;
  min-width:120px!important;
  padding-right:40px!important;
}
body.page-my-visits .visit-search-clear{
  position:absolute!important;
  z-index:3!important;
  top:50%!important;
  right:7px!important;
  transform:translateY(-50%)!important;
  display:flex!important;
  width:32px!important;
  min-width:32px!important;
  height:32px!important;
  min-height:32px!important;
  padding:0!important;
  border:0!important;
  border-radius:50%!important;
  background:transparent!important;
  color:#94a3b8!important;
  font-size:1.22rem!important;
  line-height:1!important;
}
body.page-my-visits .visit-search-clear:hover{background:#f1f5f9!important;color:#334155!important}
body.page-my-visits .visit-search-clear[hidden]{display:none!important}
body.page-my-visits .visit-search-submit{
  min-width:52px!important;
  border-left:1px solid #e8edf3!important;
}
body.page-my-visits .visit-filter-panel{
  position:absolute!important;
  z-index:120!important;
  top:calc(100% + 10px)!important;
  right:0!important;
  left:auto!important;
  width:min(920px,calc(100vw - 48px))!important;
  max-height:min(720px,calc(100vh - 150px))!important;
  overflow:auto!important;
  margin:0!important;
  padding:16px!important;
  border:1px solid #d8e1ee!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 22px 54px rgba(15,23,42,.17)!important;
}
body.page-my-visits .visit-filter-panel[hidden]{display:none!important}
body.page-my-visits .visit-filter-card--compact.is-filter-panel-open{
  z-index:130!important;
}
body.page-my-visits .visit-filter-card--compact.is-filter-panel-open::after{
  content:"";
  position:fixed;
  z-index:110;
  inset:0;
  background:rgba(15,23,42,.06);
  pointer-events:auto;
}
body.page-my-visits .visit-filter-panel,
body.page-my-visits .visit-search-scope-menu,
body.page-my-visits .visit-filter-toggle,
body.page-my-visits .visit-search-scope-toggle{
  isolation:isolate!important;
}
body.page-my-visits .location-suggest[hidden]{display:none!important}

@media(max-width:900px){
  body.page-my-visits .visit-active-filter-chips{max-width:48%!important}
  body.page-my-visits .visit-filter-panel{
    width:min(760px,calc(100vw - 28px))!important;
  }
}
@media(max-width:700px){
  body.page-my-visits .visit-search-console{
    grid-template-columns:1fr 52px!important;
    border-radius:14px!important;
  }
  body.page-my-visits .visit-search-scope{
    grid-column:1 / -1!important;
  }
  body.page-my-visits .visit-search-scope-toggle{
    width:100%!important;
    min-height:44px!important;
    border-right:0!important;
    border-bottom:1px solid #e8edf3!important;
    border-radius:14px 14px 0 0!important;
  }
  body.page-my-visits .visit-search-entry{
    grid-column:1 / 2!important;
    min-height:54px!important;
    flex-wrap:wrap!important;
    padding:8px 10px!important;
    overflow:visible!important;
  }
  body.page-my-visits .visit-active-filter-chips{
    flex:1 1 100%!important;
    width:100%!important;
    max-width:100%!important;
    flex-wrap:wrap!important;
    overflow:visible!important;
  }
  body.page-my-visits .my-visits-workspace .visit-filter-chip{
    max-width:min(100%,230px)!important;
  }
  body.page-my-visits .visit-search-entry input[type="search"]{
    flex:1 1 100%!important;
    width:100%!important;
    min-width:100%!important;
    min-height:40px!important;
  }
  body.page-my-visits .visit-search-clear{
    top:auto!important;
    bottom:12px!important;
    transform:none!important;
  }
  body.page-my-visits .visit-search-submit{
    grid-column:2 / 3!important;
    grid-row:2 / 3!important;
    min-height:54px!important;
    border-radius:0 0 14px 0!important;
  }
  body.page-my-visits .visit-filter-panel{
    position:fixed!important;
    z-index:220!important;
    top:78px!important;
    right:12px!important;
    left:12px!important;
    width:auto!important;
    max-height:calc(100vh - 96px)!important;
    border-radius:18px!important;
  }
  body.page-my-visits .visit-filter-card--compact.is-filter-panel-open::after{
    z-index:210!important;
    background:rgba(15,23,42,.24)!important;
    pointer-events:auto!important;
  }
}

/* My Visits — vNext integrated filter icon, opaque popover and single clear control */
body.page-my-visits .my-visits-workspace .visit-search-layout{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:10px!important;
  align-items:stretch!important;
}
body.page-my-visits .my-visits-workspace .visit-search-console{
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr) 50px 50px!important;
  align-items:stretch!important;
  width:100%!important;
  min-width:0!important;
  overflow:visible!important;
  border:1px solid #d7e1ec!important;
  border-radius:15px!important;
  background:#fff!important;
  box-shadow:0 5px 16px rgba(15,23,42,.035)!important;
}
body.page-my-visits .my-visits-workspace .visit-search-entry{
  min-height:52px!important;
  padding:0 42px 0 10px!important;
  overflow:hidden!important;
}
body.page-my-visits .my-visits-workspace .visit-search-entry input[type="text"]{
  flex:1 1 180px!important;
  width:auto!important;
  min-width:140px!important;
  min-height:50px!important;
  padding:0!important;
  border:0!important;
  outline:0!important;
  background:#fff!important;
  box-shadow:none!important;
}
/* Defensive: browsers must never add a second native search clear control. */
body.page-my-visits .my-visits-workspace .visit-search-entry input::-webkit-search-cancel-button,
body.page-my-visits .my-visits-workspace .visit-search-entry input::-webkit-search-decoration{
  display:none!important;
  -webkit-appearance:none!important;
}
body.page-my-visits .my-visits-workspace .visit-search-clear{
  right:7px!important;
  display:grid!important;
  place-items:center!important;
}
body.page-my-visits .my-visits-workspace .visit-search-clear[hidden]{display:none!important}
body.page-my-visits .my-visits-workspace .visit-search-filter-toggle,
body.page-my-visits .my-visits-workspace .visit-search-submit{
  position:relative!important;
  display:grid!important;
  place-items:center!important;
  min-width:50px!important;
  min-height:52px!important;
  padding:0!important;
  border:0!important;
  border-left:1px solid #e7edf4!important;
  border-radius:0!important;
  background:#fff!important;
  color:#6b7f99!important;
  cursor:pointer!important;
}
body.page-my-visits .my-visits-workspace .visit-search-submit{
  border-radius:0 14px 14px 0!important;
}
body.page-my-visits .my-visits-workspace .visit-search-filter-toggle:hover,
body.page-my-visits .my-visits-workspace .visit-search-filter-toggle[aria-expanded="true"],
body.page-my-visits .my-visits-workspace .visit-search-submit:hover{
  background:#f5f8fc!important;
  color:#2563eb!important;
}
body.page-my-visits .my-visits-workspace .visit-search-filter-toggle svg,
body.page-my-visits .my-visits-workspace .visit-search-submit svg{
  width:19px!important;
  height:19px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.8!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}
body.page-my-visits .my-visits-workspace .visit-search-filter-toggle .visit-filter-count{
  position:absolute!important;
  top:5px!important;
  right:5px!important;
  min-width:17px!important;
  min-height:17px!important;
  padding:1px 4px!important;
  border:2px solid #fff!important;
  background:#315fe8!important;
  color:#fff!important;
  font-size:.6rem!important;
  line-height:1!important;
}
body.page-my-visits .my-visits-workspace .visit-search-utilities{
  display:flex!important;
  align-items:stretch!important;
}
body.page-my-visits .my-visits-workspace .visit-search-utilities .visit-nav-btn{
  min-height:54px!important;
  padding-inline:18px!important;
  border-radius:14px!important;
}
body.page-my-visits .my-visits-workspace .visit-active-filter-chips{
  max-width:min(62%,720px)!important;
  padding:0!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  flex-wrap:nowrap!important;
}
body.page-my-visits .my-visits-workspace .visit-filter-chip{
  max-width:210px!important;
  min-height:32px!important;
  padding:6px 9px!important;
  font-size:.69rem!important;
}
/* The popover is a fully opaque surface. No cards/text can bleed through it. */
body.page-my-visits .my-visits-workspace .visit-filter-panel{
  position:absolute!important;
  z-index:240!important;
  top:calc(100% + 10px)!important;
  right:0!important;
  left:0!important;
  width:100%!important;
  max-width:none!important;
  max-height:min(690px,calc(100vh - 145px))!important;
  overflow:auto!important;
  opacity:1!important;
  filter:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  background:#fff!important;
  background-image:none!important;
  border:1px solid #d5e0ec!important;
  border-radius:18px!important;
  box-shadow:0 24px 70px rgba(15,23,42,.24)!important;
  isolation:isolate!important;
}
body.page-my-visits .my-visits-workspace .visit-filter-panel::before{
  content:"";
  position:absolute;
  z-index:-1;
  inset:0;
  border-radius:inherit;
  background:#fff;
}
body.page-my-visits .my-visits-workspace .visit-filter-panel-head{
  position:sticky!important;
  z-index:3!important;
  top:-16px!important;
  margin:-16px -16px 4px!important;
  padding:16px!important;
  background:#fff!important;
  border-radius:18px 18px 0 0!important;
  border-bottom:1px solid #e8eef5!important;
}
body.page-my-visits .my-visits-workspace .visit-filter-panel-head strong{
  font-size:1rem!important;
}
body.page-my-visits .my-visits-workspace .visit-filter-panel-head small{
  max-width:520px!important;
  line-height:1.35!important;
}
body.page-my-visits .my-visits-workspace .visit-filter-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:13px!important;
}
body.page-my-visits .my-visits-workspace .visit-filter-field--location{
  grid-column:span 2!important;
}
body.page-my-visits .my-visits-workspace .visit-filter-field input,
body.page-my-visits .my-visits-workspace .visit-filter-field select{
  min-height:46px!important;
  border-radius:12px!important;
  background:#fff!important;
}
body.page-my-visits .my-visits-workspace .visit-filter-panel-actions{
  position:sticky!important;
  z-index:3!important;
  bottom:-16px!important;
  margin:4px -16px -16px!important;
  padding:13px 16px!important;
  border-top:1px solid #e8eef5!important;
  border-radius:0 0 18px 18px!important;
  background:#fff!important;
}
body.page-my-visits .my-visits-workspace .visit-search-scope-menu{
  z-index:260!important;
  opacity:1!important;
  background:#fff!important;
  box-shadow:0 18px 45px rgba(15,23,42,.18)!important;
}
body.page-my-visits .my-visits-workspace .visit-filter-card--compact.is-filter-panel-open::after{
  z-index:220!important;
  background:rgba(15,23,42,.18)!important;
  backdrop-filter:blur(1px)!important;
}

@media(max-width:900px){
  body.page-my-visits .my-visits-workspace .visit-filter-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  body.page-my-visits .my-visits-workspace .visit-filter-field--location{grid-column:span 2!important}
  body.page-my-visits .my-visits-workspace .visit-active-filter-chips{max-width:52%!important}
}
@media(max-width:700px){
  body.page-my-visits .my-visits-workspace .visit-search-layout{
    grid-template-columns:1fr!important;
  }
  body.page-my-visits .my-visits-workspace .visit-search-console{
    grid-template-columns:auto minmax(0,1fr) 44px 44px!important;
  }
  body.page-my-visits .my-visits-workspace .visit-search-scope{
    grid-column:auto!important;
  }
  body.page-my-visits .my-visits-workspace .visit-search-scope-toggle{
    width:auto!important;
    min-height:52px!important;
    padding-inline:11px!important;
    border-right:1px solid #e7edf4!important;
    border-bottom:0!important;
    border-radius:14px 0 0 14px!important;
  }
  body.page-my-visits .my-visits-workspace .visit-search-entry{
    grid-column:auto!important;
    min-height:52px!important;
    padding:5px 38px 5px 8px!important;
    flex-wrap:wrap!important;
    overflow:hidden!important;
  }
  body.page-my-visits .my-visits-workspace .visit-active-filter-chips{
    flex:1 1 100%!important;
    width:100%!important;
    max-width:100%!important;
    flex-wrap:nowrap!important;
    overflow-x:auto!important;
  }
  body.page-my-visits .my-visits-workspace .visit-search-entry input[type="text"]{
    flex:1 1 100%!important;
    width:100%!important;
    min-width:100%!important;
    min-height:38px!important;
  }
  body.page-my-visits .my-visits-workspace .visit-search-clear{
    top:auto!important;
    bottom:8px!important;
    right:5px!important;
    transform:none!important;
  }
  body.page-my-visits .my-visits-workspace .visit-search-filter-toggle,
  body.page-my-visits .my-visits-workspace .visit-search-submit{
    min-width:44px!important;
    min-height:52px!important;
  }
  body.page-my-visits .my-visits-workspace .visit-search-submit{
    border-radius:0 14px 14px 0!important;
  }
  body.page-my-visits .my-visits-workspace .visit-search-utilities .visit-nav-btn{
    width:100%!important;
    justify-content:center!important;
  }
  body.page-my-visits .my-visits-workspace .visit-filter-panel{
    position:fixed!important;
    z-index:320!important;
    top:68px!important;
    right:10px!important;
    left:10px!important;
    width:auto!important;
    max-height:calc(100vh - 80px)!important;
    background:#fff!important;
  }
  body.page-my-visits .my-visits-workspace .visit-filter-grid{
    grid-template-columns:1fr!important;
  }
  body.page-my-visits .my-visits-workspace .visit-filter-field--location{grid-column:auto!important}
  body.page-my-visits .my-visits-workspace .visit-filter-panel-head{
    align-items:flex-start!important;
    flex-direction:column!important;
  }
  body.page-my-visits .my-visits-workspace .visit-filter-panel-actions{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
  }
  body.page-my-visits .my-visits-workspace .visit-filter-panel-actions .btn{
    width:100%!important;
    justify-content:center!important;
  }
  body.page-my-visits .my-visits-workspace .visit-filter-card--compact.is-filter-panel-open::after{
    z-index:300!important;
    background:rgba(15,23,42,.32)!important;
  }
}
body.page-my-visits .my-visits-workspace .visit-search-filter-toggle .visit-filter-count[hidden]{display:none!important}

/* My Visits — compact filter badge and readable popover sizing */
body.page-my-visits .my-visits-workspace .visit-search-console{
  grid-template-columns:auto minmax(0,1fr) 56px 50px!important;
}
body.page-my-visits .my-visits-workspace .visit-search-filter-toggle{
  min-width:56px!important;
}
body.page-my-visits .my-visits-workspace .visit-search-filter-toggle svg{
  transform:translateX(-5px)!important;
}
body.page-my-visits .my-visits-workspace .visit-search-filter-toggle .visit-filter-count{
  z-index:2!important;
  top:3px!important;
  right:3px!important;
  min-width:16px!important;
  min-height:16px!important;
  height:16px!important;
  padding:0 4px!important;
  border-width:1.5px!important;
  font-size:.58rem!important;
  line-height:14px!important;
  box-shadow:0 2px 5px rgba(37,99,235,.22)!important;
  pointer-events:none!important;
}
body.page-my-visits .my-visits-workspace .visit-filter-panel{
  right:0!important;
  left:auto!important;
  width:min(860px,calc(100vw - 40px))!important;
  max-width:860px!important;
  max-height:min(560px,calc(100vh - 135px))!important;
  padding:14px!important;
  gap:12px!important;
  border-radius:16px!important;
  background:#fff!important;
  box-shadow:0 20px 52px rgba(15,23,42,.20)!important;
}
body.page-my-visits .my-visits-workspace .visit-filter-panel-head{
  top:-14px!important;
  margin:-14px -14px 2px!important;
  padding:14px!important;
  border-radius:16px 16px 0 0!important;
}
body.page-my-visits .my-visits-workspace .visit-filter-panel-actions{
  bottom:-14px!important;
  margin:2px -14px -14px!important;
  padding:12px 14px!important;
  border-radius:0 0 16px 16px!important;
}
body.page-my-visits .my-visits-workspace .visit-filter-grid{
  gap:11px!important;
}

@media(max-width:900px){
  body.page-my-visits .my-visits-workspace .visit-filter-panel{
    width:min(760px,calc(100vw - 28px))!important;
    max-width:760px!important;
    max-height:min(560px,calc(100vh - 120px))!important;
  }
}
@media(max-width:700px){
  body.page-my-visits .my-visits-workspace .visit-search-console{
    grid-template-columns:auto minmax(0,1fr) 48px 44px!important;
  }
  body.page-my-visits .my-visits-workspace .visit-search-filter-toggle{
    min-width:48px!important;
  }
  body.page-my-visits .my-visits-workspace .visit-search-filter-toggle svg{
    transform:translateX(-4px)!important;
  }
  body.page-my-visits .my-visits-workspace .visit-search-filter-toggle .visit-filter-count{
    top:3px!important;
    right:2px!important;
    min-width:15px!important;
    min-height:15px!important;
    height:15px!important;
    padding:0 3px!important;
    font-size:.55rem!important;
    line-height:13px!important;
  }
  body.page-my-visits .my-visits-workspace .visit-filter-panel{
    top:72px!important;
    right:10px!important;
    left:10px!important;
    width:auto!important;
    max-width:none!important;
    max-height:calc(100vh - 88px)!important;
  }
}


/* My Visits — compact date range, cleaner filter copy, single-row desktop actions */
body.page-my-visits .my-visits-workspace .visit-filter-panel-head{
  align-items:center!important;
  grid-template-columns:1fr!important;
  min-height:auto!important;
}
body.page-my-visits .my-visits-workspace .visit-filter-panel-head>div{
  gap:2px!important;
}
body.page-my-visits .my-visits-workspace .visit-filter-panel-head strong{
  line-height:1.3!important;
}
body.page-my-visits .my-visits-workspace .visit-filter-field--date-range{
  min-width:0!important;
}
body.page-my-visits .my-visits-workspace .visit-date-range{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)!important;
  align-items:end!important;
  gap:7px!important;
  min-width:0!important;
}
body.page-my-visits .my-visits-workspace .visit-date-range-control{
  display:grid!important;
  gap:4px!important;
  min-width:0!important;
  margin:0!important;
}
body.page-my-visits .my-visits-workspace .visit-date-range-control>span{
  color:#64748b!important;
  font-size:.67rem!important;
  font-weight:800!important;
  line-height:1!important;
  text-transform:uppercase!important;
  letter-spacing:.045em!important;
}
body.page-my-visits .my-visits-workspace .visit-date-range-control input{
  width:100%!important;
  min-width:0!important;
}
body.page-my-visits .my-visits-workspace .visit-date-range-separator{
  display:grid!important;
  place-items:center!important;
  min-height:44px!important;
  color:#94a3b8!important;
  font-weight:800!important;
}
@media(min-width:761px){
  body.page-my-visits .visit-list-actions--pdf{
    display:flex!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:5px!important;
    width:100%!important;
    min-width:0!important;
  }
  body.page-my-visits .visit-list-actions--pdf .inline-form,
  body.page-my-visits .visit-list-actions--pdf .visit-pdf-inline-form{
    display:contents!important;
  }
  body.page-my-visits .visit-list-actions--pdf .btn{
    flex:0 1 auto!important;
    width:auto!important;
    min-width:0!important;
    min-height:34px!important;
    padding:6px 8px!important;
    font-size:.72rem!important;
    line-height:1.1!important;
    white-space:nowrap!important;
  }
}
@media(max-width:700px){
  body.page-my-visits .my-visits-workspace .visit-date-range{
    grid-template-columns:1fr!important;
    gap:8px!important;
  }
  body.page-my-visits .my-visits-workspace .visit-date-range-separator{
    display:none!important;
  }
}

/* My Visits — final fit fix for advanced filters and PDF viewer */
body.page-my-visits .my-visits-workspace .visit-filter-panel{
  box-sizing:border-box!important;
  right:0!important;
  left:auto!important;
  width:min(860px,calc(100vw - 24px))!important;
  max-width:calc(100vw - 24px)!important;
  max-height:none!important;
  overflow:hidden!important;
  padding:14px!important;
}
body.page-my-visits .my-visits-workspace .visit-filter-panel,
body.page-my-visits .my-visits-workspace .visit-filter-panel *{
  box-sizing:border-box!important;
}
body.page-my-visits .my-visits-workspace .visit-filter-grid{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:11px 12px!important;
  min-width:0!important;
  width:100%!important;
}
body.page-my-visits .my-visits-workspace .visit-filter-field,
body.page-my-visits .my-visits-workspace .visit-filter-field select,
body.page-my-visits .my-visits-workspace .visit-filter-field input{
  min-width:0!important;
  max-width:100%!important;
  width:100%!important;
}
body.page-my-visits .my-visits-workspace .visit-filter-field--location{
  grid-column:span 2!important;
}
body.page-my-visits .my-visits-workspace .visit-filter-field--date-range{
  grid-column:span 2!important;
}
body.page-my-visits .my-visits-workspace .visit-date-range{
  grid-template-columns:minmax(0,1fr) 18px minmax(0,1fr)!important;
  width:100%!important;
  min-width:0!important;
}
body.page-my-visits .my-visits-workspace .visit-date-range-control,
body.page-my-visits .my-visits-workspace .visit-date-range-control input{
  min-width:0!important;
  max-width:100%!important;
  width:100%!important;
}
body.page-my-visits .my-visits-workspace .visit-filter-panel-head,
body.page-my-visits .my-visits-workspace .visit-filter-panel-actions{
  position:static!important;
  margin:0!important;
  padding-left:0!important;
  padding-right:0!important;
}
body.page-my-visits .my-visits-workspace .visit-filter-panel-head{
  padding-top:0!important;
  padding-bottom:11px!important;
}
body.page-my-visits .my-visits-workspace .visit-filter-panel-actions{
  padding-top:12px!important;
  padding-bottom:0!important;
}

/* The PDF iframe is the only flexible item in the preview body. */
.ticket-pdf-modal .ticket-pdf-modal__card{
  width:min(94vw,980px)!important;
  height:min(92dvh,820px)!important;
  max-width:94vw!important;
  max-height:92dvh!important;
}
.ticket-pdf-modal .ticket-pdf-modal__body{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  grid-template-rows:minmax(0,1fr)!important;
  flex:1 1 auto!important;
  width:100%!important;
  min-width:0!important;
  min-height:0!important;
  max-height:none!important;
  padding:0!important;
  overflow:hidden!important;
  align-items:stretch!important;
  justify-items:stretch!important;
  background:#eef3f8!important;
}
.ticket-pdf-modal [data-ticket-pdf-frame]{
  grid-area:1 / 1!important;
  display:block!important;
  align-self:stretch!important;
  justify-self:stretch!important;
  flex:1 1 100%!important;
  width:100%!important;
  min-width:100%!important;
  max-width:100%!important;
  height:100%!important;
  min-height:0!important;
  border:0!important;
  background:#fff!important;
}
.ticket-pdf-modal__loading,
.ticket-pdf-modal__fallback{
  grid-area:1 / 1!important;
  align-self:end!important;
  z-index:2!important;
}

@media(max-width:960px) and (min-width:701px){
  body.page-my-visits .my-visits-workspace .visit-filter-panel{
    width:calc(100vw - 20px)!important;
    max-width:calc(100vw - 20px)!important;
    right:calc((100% - 100vw) / 2 + 10px)!important;
  }
  body.page-my-visits .my-visits-workspace .visit-filter-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  body.page-my-visits .my-visits-workspace .visit-filter-field--location,
  body.page-my-visits .my-visits-workspace .visit-filter-field--date-range{
    grid-column:span 2!important;
  }
}

@media(max-width:700px){
  body.page-my-visits .my-visits-workspace .visit-filter-panel{
    top:72px!important;
    right:10px!important;
    left:10px!important;
    width:auto!important;
    max-width:none!important;
    max-height:calc(100dvh - 84px)!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
  }
  body.page-my-visits .my-visits-workspace .visit-filter-grid{
    grid-template-columns:1fr!important;
  }
  body.page-my-visits .my-visits-workspace .visit-filter-field--location,
  body.page-my-visits .my-visits-workspace .visit-filter-field--date-range{
    grid-column:auto!important;
  }
  body.page-my-visits .my-visits-workspace .visit-date-range{
    grid-template-columns:1fr!important;
  }
  .ticket-pdf-modal .ticket-pdf-modal__card{
    width:100%!important;
    max-width:100%!important;
    height:92dvh!important;
  }
  .ticket-pdf-modal .ticket-pdf-modal__body{
    display:none!important;
  }
}

/* My Visits — final search simplification + full-width PDF viewer */
body.page-my-visits .my-visits-workspace .visit-search-scope,
body.page-my-visits .my-visits-workspace .visit-search-scope-menu,
body.page-my-visits .my-visits-workspace [data-my-visits-scope-toggle],
body.page-my-visits .my-visits-workspace [data-my-visits-scope-menu]{
  display:none!important;
}
body.page-my-visits .my-visits-workspace .visit-search-console{
  grid-template-columns:minmax(0,1fr) 56px 50px!important;
}
body.page-my-visits .my-visits-workspace .visit-search-entry{
  min-width:0!important;
  min-height:52px!important;
  border-radius:14px 0 0 14px!important;
  padding:6px 40px 6px 12px!important;
}
body.page-my-visits .my-visits-workspace .visit-search-entry input[type="text"]{
  flex:1 1 220px!important;
  width:auto!important;
  min-width:150px!important;
  min-height:38px!important;
  padding:0 4px!important;
  border:0!important;
  outline:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:#0f172a!important;
  font-size:.92rem!important;
}
body.page-my-visits .my-visits-workspace .visit-search-entry input[type="text"]::placeholder{
  color:#94a3b8!important;
}
body.page-my-visits .my-visits-workspace .visit-search-clear{
  position:absolute!important;
  top:50%!important;
  right:7px!important;
  width:30px!important;
  min-width:30px!important;
  height:30px!important;
  min-height:30px!important;
  transform:translateY(-50%)!important;
  border:0!important;
  border-radius:8px!important;
  background:transparent!important;
  color:#94a3b8!important;
}
body.page-my-visits .my-visits-workspace .visit-search-clear[hidden]{
  display:none!important;
}
body.page-my-visits .my-visits-workspace .visit-search-filter-toggle{
  border-left:1px solid #e8edf3!important;
}

/* Native PDF viewer fills the complete modal body and starts fitted to width. */
.ticket-pdf-modal .ticket-pdf-modal__card{
  width:min(96vw,1180px)!important;
  max-width:96vw!important;
  height:min(94dvh,900px)!important;
  max-height:94dvh!important;
}
.ticket-pdf-modal .ticket-pdf-modal__body{
  position:relative!important;
  display:block!important;
  flex:1 1 auto!important;
  width:100%!important;
  min-width:0!important;
  min-height:0!important;
  max-height:none!important;
  padding:0!important;
  overflow:hidden!important;
  background:#e9eef4!important;
}
.ticket-pdf-modal [data-ticket-pdf-frame]{
  position:absolute!important;
  inset:0!important;
  display:block!important;
  width:100%!important;
  min-width:100%!important;
  max-width:100%!important;
  height:100%!important;
  min-height:100%!important;
  max-height:100%!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:#fff!important;
}
.ticket-pdf-modal__loading,
.ticket-pdf-modal__fallback{
  position:absolute!important;
  z-index:3!important;
  left:50%!important;
  bottom:18px!important;
  transform:translateX(-50%)!important;
  max-width:min(90%,560px)!important;
}
@media(max-width:700px){
  body.page-my-visits .my-visits-workspace .visit-search-console{
    grid-template-columns:minmax(0,1fr) 48px 48px!important;
  }
  body.page-my-visits .my-visits-workspace .visit-search-entry{
    grid-column:auto!important;
    min-height:52px!important;
    padding:6px 38px 6px 10px!important;
    flex-wrap:wrap!important;
  }
  body.page-my-visits .my-visits-workspace .visit-search-entry input[type="text"]{
    flex:1 1 100%!important;
    width:100%!important;
    min-width:100%!important;
  }
  .ticket-pdf-modal .ticket-pdf-modal__card{
    width:100%!important;
    max-width:100%!important;
    height:92dvh!important;
    max-height:92dvh!important;
  }
}

/* PDF preview — balanced modal and readable native-viewer defaults */
.ticket-pdf-modal .ticket-pdf-modal__card{
  width:min(94vw,980px)!important;
  max-width:94vw!important;
  height:min(92dvh,820px)!important;
  max-height:92dvh!important;
}
.ticket-pdf-modal .ticket-pdf-modal__body{
  width:100%!important;
  min-width:0!important;
  min-height:0!important;
  overflow:hidden!important;
}
.ticket-pdf-modal [data-ticket-pdf-frame]{
  width:100%!important;
  height:100%!important;
  min-width:0!important;
  min-height:0!important;
}
@media(max-width:700px){
  .ticket-pdf-modal .ticket-pdf-modal__card{
    width:100%!important;
    max-width:100%!important;
    height:92dvh!important;
    max-height:92dvh!important;
  }
}


/* PDF preview — keep the native viewer's right-side actions fully visible */
@media (min-width:701px){
  .ticket-pdf-modal .ticket-pdf-modal__card{
    width:min(96vw,1080px)!important;
    max-width:calc(100vw - 28px)!important;
  }
  .ticket-pdf-modal .ticket-pdf-modal__body{
    box-sizing:border-box!important;
    min-width:0!important;
  }
  .ticket-pdf-modal [data-ticket-pdf-frame]{
    box-sizing:border-box!important;
    min-width:0!important;
  }
}
