:root{--bg:#f5f5f9;--surface:#fff;--text:#3f3c56;--muted:#6d6a84;--accent:#7367f0;--accent-strong:#5b4ee0;--accent-soft:#eceaff;--brand-blue:#7367f0;--brand-blue-strong:#5b4ee0;--danger:#b42318;--border:#e6e6f1;--shadow:0 8px 20px rgba(44,39,56,.08);--shadow-soft:0 6px 16px rgba(44,39,56,.07)}*{box-sizing:border-box}body{margin:0;font-family:Manrope,Segoe UI,Tahoma,Geneva,Verdana,sans-serif;color:var(--text);background:radial-gradient(circle at 10% -8%,#efedff 0,transparent 42%),radial-gradient(circle at 120% 20%,#eef2ff 0,transparent 35%),var(--bg);animation:fadeIn .32s ease-out}a{color:inherit;text-decoration:none}.container{max-width:1200px;margin:0 auto;padding:24px}.dash-layout{min-height:100vh;display:grid;grid-template-columns:270px 1fr;background:linear-gradient(180deg,#f7f7fb,#f5f5f9);transition:grid-template-columns .18s ease}.dash-layout.is-collapsed{grid-template-columns:86px 1fr}.dash-layout.is-collapsed .dash-brand{justify-content:center}.dash-layout.is-collapsed .dash-collapse-btn{padding:7px 0}.dash-layout.is-collapsed .dash-nav-item{justify-content:center;padding:8px 0}.dash-sidebar{position:-webkit-sticky;position:sticky;top:0;height:100vh;border-right:1px solid #3f4361;background:linear-gradient(180deg,#2f3349,#2b3045);color:#d8dbf1;padding:14px 12px;display:grid;grid-template-rows:auto auto 1fr;grid-gap:10px;gap:10px}.dash-brand{display:flex;align-items:center;gap:10px;padding:6px 4px}.dash-brand strong{font-size:14px;line-height:1.3;color:#f3f4ff}.dash-lock-btn{margin-left:auto;border:none;background:transparent;color:#d8dbf1;font-size:18px;line-height:1;padding:2px 4px;cursor:pointer}.dash-lock-btn.locked{color:var(--accent)}.dash-brand-badge{width:28px;height:22px;background:linear-gradient(135deg,#8b7dff 0,var(--accent) 100%);-webkit-clip-path:polygon(0 0,74% 0,100% 40%,58% 100%,28% 100%,0 58%);clip-path:polygon(0 0,74% 0,100% 40%,58% 100%,28% 100%,0 58%)}.dash-collapse-btn{border:1px solid #4b4f6d;background:hsla(0,0%,100%,.03);color:#d8dbf1;border-radius:8px;width:100%;padding:7px 10px;cursor:pointer;font-weight:700}.dash-nav{display:grid;grid-auto-rows:min-content;align-content:start;grid-gap:6px;gap:6px}.dash-nav-title{margin:10px 8px 4px;font-size:12px;text-transform:uppercase;letter-spacing:.6px;color:#aab0ce;font-weight:700}.dash-separator{height:1px;margin:8px 14px;background:#474b68}.dash-nav-item{display:flex;align-items:center;gap:10px;color:#d8dbf1;border-radius:10px;padding:9px 10px;font-size:15px;font-weight:600;transition:background-color .14s ease,transform .14s ease}.dash-nav-item:hover{background:#3d415d;transform:translateX(1px)}.dash-nav-item.active{background:#444a67}.dash-nav-icon{width:32px;height:32px;border-radius:10px;display:grid;place-items:center;font-size:15px;line-height:1;background:#4b5070;color:#f2f4ff}.dash-nav-arrow{margin-left:auto;color:#bec3df;font-size:20px;line-height:1}.dash-nav-group{display:grid;grid-gap:4px;gap:4px}.dash-nav-group-toggle{width:100%;border:none;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}.dash-nav-chevron{margin-left:auto;color:#bec3df;font-size:12px;line-height:1;transition:transform .14s ease}.dash-nav-chevron.open{transform:rotate(180deg)}.dash-subnav{margin:0 0 2px 42px;padding-left:10px;border-left:1px solid #4b5070;display:grid;grid-gap:3px;gap:3px}.dash-subnav-item{border-radius:8px;color:#d8dbf1;font-size:13px;font-weight:600;padding:6px 10px;transition:background-color .12s ease,color .12s ease}.dash-subnav-item:hover{background:#3d415d}.dash-subnav-item.active{background:#4a4f6d;color:#f2f4ff}.dash-main{min-width:0;padding:16px 18px;flex-direction:column}.dash-header,.dash-main{display:flex;align-items:center}.dash-header{position:-webkit-sticky;position:sticky;top:0;z-index:24;justify-content:space-between;gap:12px;background:rgba(245,245,249,.9);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);padding:6px 0 14px;width:min(100%,1390px)}.dash-search{flex:1 1;min-width:280px;border-radius:12px;border:1px solid var(--border);background:#fff;padding:11px 14px}.dash-search-wrap{position:relative;flex:1 1;min-width:280px}.dash-search-wrap .dash-search{min-width:100%}.dash-search-results{position:absolute;z-index:30;left:0;right:0;top:calc(100% + 6px);border:1px solid var(--border);border-radius:12px;background:#fff;box-shadow:var(--shadow-soft);max-height:280px;overflow-y:auto}.dash-search-item{width:100%;border:none;background:#fff;text-align:left;padding:10px 12px;display:grid;grid-gap:2px;gap:2px;cursor:pointer}.dash-search-item strong{font-size:13px;color:var(--text)}.dash-search-item span{font-size:12px;color:var(--muted)}.dash-search-item:hover{background:color-mix(in srgb,var(--accent) 8%,#fff)}.dash-search-item.muted{cursor:default}.dash-search-item.muted:hover{background:#fff}.dash-header-actions{display:flex;align-items:center;gap:10px}.dash-content{width:min(100%,1390px)}.card{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:16px;box-shadow:var(--shadow);transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.card:hover{transform:translateY(-1px);box-shadow:var(--shadow-soft)}.grid{display:grid;grid-gap:16px;gap:16px}.grid.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}@media (max-width:900px){.grid.cols-2,.grid.cols-4{grid-template-columns:1fr}}table{width:100%;border-collapse:collapse}td,th{border-bottom:1px solid var(--border);text-align:left;padding:10px}.top-nav{position:-webkit-sticky;position:sticky;top:0;z-index:20;background:rgba(245,245,249,.92);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:10px 0;display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;animation:slideDown .26s ease-out}.pill{background:var(--accent-soft);color:var(--accent);border-radius:999px;padding:4px 10px;font-size:12px;font-weight:600}.nav-links{display:flex;gap:10px;align-items:center}.nav-link{padding:8px 10px;border-radius:8px;color:var(--muted);font-weight:600;transition:background-color .14s ease,color .14s ease}.nav-link:hover{background:var(--accent-soft);color:var(--accent-strong)}.filters{position:-webkit-sticky;position:sticky;top:72px;z-index:10;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-gap:10px;gap:10px;margin-bottom:16px}.field{display:grid;grid-gap:6px;gap:6px}.field-input-wrap{position:relative}.field label{font-size:12px;color:var(--muted);font-weight:600}input:not([type=checkbox]),select{width:100%;border:1px solid var(--border);border-radius:10px;padding:10px 12px;background:#fff}input:not([type=checkbox]):focus,select:focus{outline:2px solid color-mix(in srgb,var(--accent) 30%,transparent);border-color:var(--accent)}.field-input-wrap input:not([type=checkbox]){padding-right:34px}.field-clear-btn{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:18px;height:18px;border-radius:50%;border:1px solid var(--border);background:#fff;color:var(--muted);cursor:pointer;line-height:1;padding:0;font-size:12px}.field-clear-btn:hover{border-color:var(--accent);color:var(--accent)}.btn{border:none;border-radius:10px;padding:10px 14px;font-weight:700;cursor:pointer;transition:transform .14s ease,box-shadow .14s ease,background-color .14s ease,color .14s ease}.btn:disabled{opacity:.6;cursor:not-allowed}.btn:not(:disabled):hover{transform:translateY(-1px)}.btn.primary{background:var(--accent);color:#fff;box-shadow:0 8px 18px rgba(115,103,240,.32)}.btn.primary:hover{background:var(--accent-strong)}.btn.secondary{background:transparent;color:var(--accent);border:1px solid var(--accent)}.btn.secondary:hover{background:color-mix(in srgb,var(--accent) 9%,#fff)}@media (max-width:900px){.dash-layout,.dash-layout.is-collapsed{grid-template-columns:1fr}.dash-sidebar{position:relative;height:auto;border-right:none;border-bottom:1px solid #2d4a42}.dash-collapse-btn,.dash-lock-btn{display:none}.dash-header{flex-direction:column;align-items:stretch}.dash-header-actions{justify-content:space-between}.filters{grid-template-columns:1fr 1fr;top:116px}}.table-wrap{width:100%;overflow-x:auto}.origin-bottom-head{display:flex;justify-content:space-between;align-items:center;gap:12px}.origin-direction-filter{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-size:13px}.origin-direction-filter select{min-width:140px}.origin-tabs{display:inline-flex;gap:8px;flex-wrap:wrap}.origin-controls-block{display:flex;flex-direction:column;align-items:flex-end;gap:8px}.origin-tab-btn{border:1px solid var(--border);background:#fff;color:var(--text);border-radius:999px;padding:6px 12px;font-size:12px;font-weight:700;cursor:pointer}.origin-tab-btn.active{border-color:var(--accent);color:var(--accent)}.origin-rankby-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.origin-insight-actions{margin-top:14px;display:flex;gap:10px;flex-wrap:wrap}.modal-backdrop{position:fixed;inset:0;background:rgba(15,23,42,.45);display:flex;align-items:center;justify-content:center;padding:18px;z-index:1200}.modal-card{width:min(640px,100%);max-height:88vh;overflow:auto;background:#fff;border:1px solid var(--border);border-radius:12px;padding:16px}.insight-modal-card{width:min(900px,100%)}.insight-content h4{margin-top:14px;margin-bottom:8px}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:14px}.origin-bottom-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:12px;gap:12px}.origin-bottom-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);grid-gap:12px;gap:12px}.origin-distance-col{border:1px solid var(--border);border-radius:12px;padding:10px;background:#fff}.origin-distance-col h4{margin:0 0 4px}.origin-right-grid{display:grid;grid-template-columns:1fr;grid-gap:10px;gap:10px}.origin-distance-subcol{border:1px solid var(--border);border-radius:10px;padding:10px;background:#fff}.origin-distance-subcol h4{margin:0 0 4px}.origin-scroll-5{max-height:248px;overflow-y:auto}.muted{color:var(--muted)}.review-summary-card{display:grid;grid-template-columns:1fr 1.4fr;grid-gap:16px;gap:16px;align-items:center}.review-summary-left h2{margin:0;font-size:42px;line-height:1}.review-summary-left p{margin:8px 0 0}.review-star-row{display:grid;grid-template-columns:64px 1fr 42px;grid-gap:10px;gap:10px;align-items:center;margin-bottom:10px}.review-star-row:last-child{margin-bottom:0}.review-star-track{height:6px;border-radius:999px;background:color-mix(in srgb,var(--accent) 16%,#fff)}.review-star-fill{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--accent),var(--accent-strong))}.review-stats-card h3{margin-top:0;margin-bottom:12px}.review-stats-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.review-chip{border-radius:999px;padding:4px 10px;font-size:12px;font-weight:700}.review-chip.up{color:#0f7a39;background:#ddf7e7}.review-chip.down{color:#9f1239;background:#ffe4ea}.review-mini-bars{height:68px;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-gap:8px;gap:8px;align-items:end;margin:12px 0}.review-mini-item{height:100%;display:grid;align-items:end}.review-mini-item span{display:block;width:8px;margin:0 auto;border-radius:999px;background:linear-gradient(180deg,#7dd3ae,#34a853)}.review-table-toolbar{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px}.review-table-toolbar input{max-width:360px}.review-table-toolbar-right{display:flex;align-items:center;gap:10px}.review-table-toolbar-right label{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:13px}.settings-section+.settings-section{margin-top:16px}.settings-accordion>details{display:grid;grid-gap:12px;gap:12px}.settings-accordion-summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:10px}.settings-accordion-summary::-webkit-details-marker{display:none}.settings-accordion-title{font-size:20px;font-weight:700;color:var(--text)}.settings-accordion-icon{font-size:12px;color:var(--muted);transition:transform .2s ease}.settings-accordion>details[open] .settings-accordion-icon{transform:rotate(180deg)}.settings-accordion-body,.settings-form{display:grid;grid-gap:10px;gap:10px}.settings-form{max-width:640px}.settings-note{margin:0;font-size:12px}.settings-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.settings-ok{color:#067647}.settings-error,.settings-ok{font-weight:600;font-size:13px}.settings-error{color:var(--danger)}.settings-integrations-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);grid-gap:14px;gap:14px}.settings-integration-table{table-layout:fixed}.settings-integration-table td,.settings-integration-table th{vertical-align:top}.settings-integration-table td:first-child,.settings-integration-table td:nth-child(2),.settings-integration-table th:first-child,.settings-integration-table th:nth-child(2){width:120px}.settings-integration-table td:nth-child(3),.settings-integration-table th:nth-child(3){width:82px}.settings-integration-table td:nth-child(4),.settings-integration-table th:nth-child(4){width:210px}.settings-integration-table td:nth-child(5),.settings-integration-table th:nth-child(5){width:170px}.settings-integration-table td:nth-child(6),.settings-integration-table th:nth-child(6){width:112px}.settings-int-col-event,.settings-int-col-last,.settings-int-col-name,.settings-int-col-secret code{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.settings-int-col-secret code{display:inline-block;max-width:100%;font-size:12px}.settings-int-actions{display:grid;grid-gap:6px;gap:6px}.settings-int-actions .btn{padding:6px 10px;font-size:12px}.settings-integration-form{border:1px solid var(--border);border-radius:12px;padding:12px;background:#fff}.settings-checkbox{gap:8px;color:var(--text);font-weight:600;font-size:13px}.settings-checkbox,.settings-status{display:inline-flex;align-items:center}.settings-status{border-radius:999px;padding:2px 10px;font-size:12px;font-weight:700}.settings-status.active{background:#d9fce9;color:#067647}.settings-status.inactive{background:#fde9e9;color:#b42318}.settings-role-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:10px;gap:10px}.settings-role-item{border:1px solid var(--border);border-radius:12px;padding:12px;background:#fff}.settings-role-item p{margin-bottom:0}.settings-role-stats{margin-top:10px;display:flex;gap:6px;flex-wrap:wrap}.settings-role-legend{margin-top:12px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.settings-role-matrix-wrap{margin-top:10px}.settings-role-matrix td,.settings-role-matrix th{vertical-align:top;white-space:nowrap}.settings-role-matrix td:first-child,.settings-role-matrix th:first-child{min-width:220px}.settings-role-matrix td:nth-child(2),.settings-role-matrix th:nth-child(2){min-width:280px;white-space:normal}.settings-access-chip{display:inline-flex;align-items:center;border-radius:999px;padding:2px 10px;font-size:12px;font-weight:700}.settings-access-chip.manage{background:#e4f4ff;color:#175cd3}.settings-access-chip.view{background:#d9fce9;color:#067647}.settings-access-chip.none{background:#f2f4f7;color:#475467}.settings-users-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);grid-gap:14px;gap:14px}.settings-users-filter{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.9fr) minmax(0,.9fr) minmax(0,.9fr) auto;grid-gap:8px;gap:8px;margin-bottom:10px}.settings-users-table td,.settings-users-table th{white-space:nowrap;vertical-align:top}.settings-users-pagination{margin-top:10px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.settings-users-form{border:1px solid var(--border);border-radius:12px;padding:12px;background:#fff}.settings-users-form h3{margin-top:0;margin-bottom:8px}.sop-filter-card{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:10px;gap:10px}.sop-kpi-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:12px;gap:12px}.sop-kpi-card p{margin:0;color:var(--muted);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.3px}.sop-kpi-card h3{margin:8px 0 0;font-size:28px;line-height:1}.sop-kpi-card small{display:block;margin-top:8px;color:var(--muted);font-size:12px}.sop-kpi-card.sop-kpi-wide{grid-column:span 1}.sop-list-card h3{margin-top:0;margin-bottom:10px}.sop-scroll-list{max-height:220px;overflow-y:auto;display:grid;grid-gap:8px;gap:8px}.sop-list-item{border:1px solid var(--border);border-radius:10px;padding:10px;display:grid;grid-gap:3px;gap:3px;background:#fff}.sop-list-item span,.sop-status{font-size:12px}.sop-status{display:inline-flex;align-items:center;border-radius:999px;padding:2px 10px;font-weight:700}.sop-status.pending{background:#f5ecff;color:#6941c6}.sop-status.valid{background:#d9fce9;color:#067647}.sop-status.flagged{background:#fff3d6;color:#b54708}.sop-status.rejected{background:#fde9e9;color:#b42318}.sop-detail-modal{width:min(980px,100%)}.sop-detail-meta{margin:10px 0}.sop-detail-meta p{margin:6px 0}.sop-gallery h4{margin-bottom:8px}.sop-gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));grid-gap:8px;gap:8px}.sop-thumb-btn{border:1px solid var(--border);border-radius:10px;padding:0;overflow:hidden;background:#fff;cursor:pointer;height:88px}.sop-thumb-image{width:100%;height:100%;object-fit:cover;display:block}.sop-photo-modal{width:min(1080px,100%)}.sop-photo-large{width:100%;max-height:74vh;object-fit:contain;border-radius:10px;border:1px solid var(--border);background:#fff}.audit-metadata-preview{display:inline-block;max-width:420px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.table-sort-btn{border:none;background:transparent;padding:0;margin:0;font:inherit;font-weight:700;color:inherit;cursor:pointer}.review-pagination{margin-top:12px;display:flex;justify-content:space-between;align-items:center;gap:10px}.page-enter{animation:pageEnter .26s ease-out}.card-enter{animation:cardEnter .32s ease-out}.auth-card{max-width:440px;margin:64px auto;background:linear-gradient(180deg,#fff,#fcfffe)}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:24px;position:relative;overflow:hidden}.auth-shape{position:absolute;border:1px solid color-mix(in srgb,var(--accent) 20%,transparent);background:color-mix(in srgb,var(--accent-soft) 35%,#fff);z-index:0}.auth-shape-top{width:200px;height:200px;top:56px;left:calc(50% - 380px);border-radius:26px}.auth-shape-bottom{width:180px;height:180px;bottom:56px;right:calc(50% - 360px);border-radius:28px;border-style:dashed}.auth-card{position:relative;z-index:1;width:min(100%,470px);padding:28px}.auth-logo{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;font-weight:800;letter-spacing:.5px;color:#fff;background:linear-gradient(135deg,var(--accent),var(--brand-blue));margin-bottom:18px}.auth-title{margin:0 0 8px}.auth-subtitle{margin:0 0 18px;color:var(--muted);line-height:1.5}.auth-form{display:grid;grid-gap:10px;gap:10px}.auth-label{margin-top:4px;font-size:13px;color:var(--muted);font-weight:700}.password-wrap{position:relative}.password-wrap input{padding-right:72px}.password-toggle{position:absolute;right:8px;top:50%;transform:translateY(-50%);border:none;background:transparent;color:var(--accent-strong);font-size:12px;font-weight:700;cursor:pointer;padding:6px 8px;border-radius:8px}.password-toggle:hover{background:color-mix(in srgb,var(--accent) 10%,#fff)}.auth-row{margin-top:4px;display:flex;justify-content:space-between;align-items:center}.remember-me{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-size:14px}.remember-me input{width:16px;height:16px;accent-color:var(--accent)}.auth-link{border:none;background:transparent;color:var(--accent);font-weight:700;cursor:pointer;padding:4px 6px;border-radius:8px}.auth-link:hover{background:color-mix(in srgb,var(--accent) 10%,#fff)}.auth-submit{margin-top:8px}.auth-note{margin:16px 0 8px;font-size:12px;color:var(--muted)}.auth-footer{position:relative;z-index:1;margin-top:14px;color:var(--muted);font-size:13px}.skeleton-row{height:14px;border-radius:999px;background:linear-gradient(90deg,#ececf4,#f8f8fd,#ececf4);background-size:200% 100%;animation:shimmer 1.2s linear infinite;margin-bottom:8px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes pageEnter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes cardEnter{0%{opacity:0;transform:translateY(12px) scale(.992)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (max-width:900px){.nav-links{width:100%;justify-content:flex-end;flex-wrap:wrap}.top-nav{align-items:flex-start;flex-direction:column}.auth-card{padding:22px}.review-summary-card{grid-template-columns:1fr}.origin-bottom-head{flex-direction:column;align-items:flex-start}.origin-controls-block{width:100%;align-items:flex-start}.origin-rankby-row{justify-content:flex-start}.origin-bottom-grid,.origin-bottom-layout,.origin-right-grid{grid-template-columns:1fr}.review-pagination{flex-direction:column;align-items:flex-start}.settings-integrations-grid,.settings-role-summary,.settings-users-filter,.settings-users-grid,.sop-filter-card,.sop-kpi-grid{grid-template-columns:1fr}.auth-shape-top{left:-48px;top:36px;width:140px;height:140px}.auth-shape-bottom{right:-44px;bottom:24px;width:126px;height:126px}}