:root{--void:#0a0e14;--surface:#131a22;--surface-raised:#1b242e;--surface-hairline:#17202a;--border:#2a3441;--border-soft:#1e2732;--ink:#edeff2;--ink-muted:#8d97a5;--ink-faint:#5b6572;--accent:#d6a24c;--accent-hover:#e3b15e;--accent-ink:#1a1408;--checkbox-check:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3.5 8.5l3 3 6-6.5' fill='none' stroke='%231a1408' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");--accent-soft:#322817;--accent-line:#d6a24c59;--good:#5fae85;--good-soft:#5fae851f;--good-line:#5fae8559;--warning:#c97a3d;--warning-soft:#c97a3d1f;--warning-line:#c97a3d59;--critical:#c15c5c;--critical-soft:#c15c5c1f;--critical-line:#c15c5c59;--surface-overlay:#131a22eb;--surface-overlay-active:#322817eb;--scrim:#0a0e14b8;--scrim-strong:#0a0e14e0;--shadow-color:#0009;--space-2xs:4px;--space-xs:6px;--space-sm:8px;--space-md:12px;--space-lg:16px;--space-xl:24px;--control-h-sm:28px;--control-h-md:32px;--control-h-lg:40px;--radius-sm:3px;--radius-md:4px;--radius-lg:6px;--serif:"Iowan Old Style", "Palatino Linotype", "Book Antiqua", Georgia, serif;--sans:-apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mono:"SF Mono", "Cascadia Code", "Consolas", "Roboto Mono", ui-monospace, monospace;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=dark]{--space-2xs:4px;--space-xs:6px;--space-sm:8px;--space-md:12px;--space-lg:16px;--space-xl:24px;--control-h-sm:28px;--control-h-md:32px;--control-h-lg:40px;--radius-sm:3px;--radius-md:4px;--radius-lg:6px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=light]{--void:#f5f7fa;--surface:#fff;--surface-raised:#f0f4f8;--surface-hairline:#e2e8f0;--border:#cbd5e1;--border-soft:#e2e8f0;--ink:#0f172a;--ink-muted:#475569;--ink-faint:#94a3b8;--accent:#8f5c12;--accent-hover:#714810;--accent-ink:#fff;--checkbox-check:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3.5 8.5l3 3 6-6.5' fill='none' stroke='%23ffffff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");--accent-soft:#fef3c7;--accent-line:#8f5c1259;--good:#15803d;--good-soft:#15803d1a;--good-line:#15803d59;--warning:#b45309;--warning-soft:#b453091a;--warning-line:#b4530959;--critical:#b91c1c;--critical-soft:#b91c1c1a;--critical-line:#b91c1c59;--surface-overlay:#fffffff0;--surface-overlay-active:#fef3c7f2;--scrim:#0f172a73;--scrim-strong:#0f172aa6;--shadow-color:#0f172a2e;--space-2xs:4px;--space-xs:6px;--space-sm:8px;--space-md:12px;--space-lg:16px;--space-xl:24px;--control-h-sm:28px;--control-h-md:32px;--control-h-lg:40px;--radius-sm:3px;--radius-md:4px;--radius-lg:6px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body,#root{width:100%;height:100%;margin:0;padding:0}body{background:var(--void);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}::selection{background:var(--accent-soft);color:var(--ink)}.mono,.tnum{font-family:var(--mono);font-variant-numeric:tabular-nums}.brand-mark{border:1.5px solid var(--accent);border-radius:50%;flex-shrink:0;width:20px;height:20px;position:relative}.brand-mark:after{content:"";background:var(--accent);border-radius:50%;position:absolute;inset:6px}.brand-mark:before{content:"";background:var(--accent);transform-origin:bottom;width:1.5px;height:7px;position:absolute;top:-1.5px;left:50%;transform:translate(-50%)rotate(38deg)}button.btn-accent,.ui-button-primary,button.btn-secondary,.ui-button-secondary,button.danger,.ui-button-danger,.ui-button,.ui-button-quiet{justify-content:center;align-items:center;gap:var(--space-2xs);min-height:var(--control-h-md);padding:0 var(--space-md);border-radius:var(--radius-md);font:inherit;cursor:pointer;border:1px solid #0000;font-size:13px;font-weight:600;line-height:1.2;text-decoration:none;transition:background-color .15s,border-color .15s,color .15s;display:inline-flex}button.btn-accent,.ui-button-primary{background:var(--accent);color:var(--accent-ink)}button.btn-secondary,.ui-button-secondary{background:var(--surface);border-color:var(--border);color:var(--ink-muted)}.ui-button-quiet{color:var(--ink-muted);background:0 0}button.danger:not(.profile-dropdown-item):not(.link-button),.ui-button-danger{border-color:var(--critical-line);color:var(--critical);background:0 0}.ui-button:hover:not(:disabled),.ui-button-primary:hover:not(:disabled),button.btn-accent:hover:not(:disabled){background:var(--accent-hover)}.ui-button-secondary:hover:not(:disabled),button.btn-secondary:hover:not(:disabled){background:var(--surface-raised);border-color:var(--ink-faint);color:var(--ink)}.ui-button-quiet:hover:not(:disabled){background:var(--surface-raised);color:var(--ink)}.ui-button-danger:hover:not(:disabled),button.danger:not(.profile-dropdown-item):not(.link-button):hover:not(:disabled){background:var(--critical-soft)}.ui-button:disabled,.ui-button-primary:disabled,.ui-button-secondary:disabled,.ui-button-quiet:disabled,.ui-button-danger:disabled{cursor:not-allowed;opacity:.4}.ui-button-primary:disabled{background:var(--surface-raised);border-color:var(--border);color:var(--ink-muted);opacity:1}button.icon-btn,.ui-icon-button{width:var(--control-h-md);height:var(--control-h-md);border-radius:var(--radius-md);color:var(--ink-muted);cursor:pointer;font:inherit;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;padding:0;display:inline-flex}button.icon-btn:hover:not(:disabled),.ui-icon-button:hover:not(:disabled){background:var(--surface-raised);border-color:var(--border);color:var(--ink)}.ui-icon-button.is-danger:hover:not(:disabled){background:var(--critical-soft);border-color:var(--critical-line);color:var(--critical)}.ui-field{min-height:var(--control-h-lg);padding:0 var(--space-sm);border:1px solid var(--border);border-radius:var(--radius-md);background-color:var(--void);color:var(--ink);font:inherit}select.ui-field{padding-right:28px}textarea.ui-field{min-height:80px;padding-block:var(--space-sm);resize:vertical}.ui-field:disabled{cursor:not-allowed;opacity:.55}.ui-button-sm{white-space:nowrap;min-height:var(--control-h-sm);padding:0 var(--space-sm);font-size:12.5px}.action-menu{display:inline-flex;position:relative}.action-menu-panel{z-index:950;background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-md);min-width:200px;box-shadow:0 20px 44px -16px var(--shadow-color);padding:6px;position:absolute;top:calc(100% + 4px);right:0}.action-menu-item{border-radius:var(--radius-sm);width:100%;min-height:36px;color:var(--ink-muted);font:inherit;text-align:left;white-space:nowrap;cursor:pointer;background:0 0;border:none;align-items:center;padding:0 10px;font-size:12.5px;display:flex}.action-menu-item:hover:not(:disabled),.action-menu-item:focus-visible{background:var(--surface);color:var(--ink);outline:none}.action-menu-item.is-danger{color:var(--critical)}.action-menu-item:disabled{cursor:not-allowed;opacity:.45}@media (pointer:coarse){.action-menu-item{min-height:44px}}.assignee-avatar{color:#fff;background:var(--surface);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;font-size:10.5px;font-weight:700;display:inline-flex;overflow:hidden}.assignee-avatar.is-empty{border:1px dashed var(--ink-faint)}.assignee-avatar img{object-fit:cover;width:100%;height:100%}.ui-empty-state{padding:var(--space-xl);text-align:center}.ui-empty-state.is-compact{padding:var(--space-lg)}.ui-empty-title{margin:0 0 var(--space-sm);color:var(--ink);font-size:15px;font-weight:600}.ui-empty-text{max-width:480px;margin:0 auto var(--space-lg);color:var(--ink-muted)}.ui-empty-actions{flex-wrap:wrap;justify-content:center}.ui-empty-status{margin-top:var(--space-md)}.ui-button-group.is-end{justify-content:flex-end}.ui-button-group.is-wrap{flex-wrap:wrap}.ui-alert{align-items:flex-start;gap:var(--space-sm);margin-bottom:var(--space-md);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);color:var(--ink);border-left-width:3px;padding:10px 12px;font-size:13px;line-height:1.45;display:flex}.ui-alert:before{content:"";width:16px;height:16px;-webkit-mask:var(--alert-icon) center / contain no-repeat;-webkit-mask:var(--alert-icon) center / contain no-repeat;mask:var(--alert-icon) center / contain no-repeat;background:currentColor;flex-shrink:0;margin-top:1px}.ui-alert-error{--alert-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7.5v5.5M12 16.5v.01'/%3E%3C/svg%3E");background:var(--critical-soft);border-color:var(--critical-line);color:var(--critical)}.ui-alert-warning{--alert-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3.5 2.5 20h19z'/%3E%3Cpath d='M12 10v4.5M12 17.5v.01'/%3E%3C/svg%3E");background:var(--warning-soft);border-color:var(--warning);color:var(--warning)}.ui-alert-success{--alert-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='m8 12.5 2.8 2.8L16 10'/%3E%3C/svg%3E");background:var(--good-soft);border-color:var(--good);color:var(--good)}.ui-alert-info{--alert-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 11v5.5M12 7.5v.01'/%3E%3C/svg%3E");border-left-color:var(--accent);color:var(--ink-muted)}input[type=checkbox][type=checkbox]{appearance:none;box-sizing:border-box;vertical-align:middle;border:1px solid var(--ink-faint);border-radius:var(--radius-sm);background:var(--void) center / 14px 14px no-repeat;cursor:pointer;flex-shrink:0;width:16px;height:16px;margin:0;padding:0;transition:background-color .12s,border-color .12s;display:inline-block}input[type=checkbox][type=checkbox]:hover:not(:disabled){border-color:var(--accent)}input[type=checkbox][type=checkbox]:checked{background-color:var(--accent);background-image:var(--checkbox-check);border-color:var(--accent)}input[type=checkbox][type=checkbox]:focus-visible{outline:2px solid var(--accent);outline-offset:2px}input[type=checkbox][type=checkbox]:disabled{cursor:not-allowed;opacity:.5}@media (prefers-reduced-motion:reduce){input[type=checkbox][type=checkbox]{transition:none}}.ui-select{min-width:0;display:inline-flex;position:relative}.ui-select-field{min-width:12rem;display:flex}.ui-select .ui-select-trigger{align-items:center;gap:var(--space-xs);width:100%;min-width:0;font:inherit;color:var(--ink);cursor:pointer;text-align:left;display:inline-flex}.ui-select-field .ui-select-trigger{min-height:var(--control-h-md);background:var(--void);border:1px solid var(--border);border-radius:var(--radius-md);padding:0 10px}.ui-select-field .ui-select-trigger:hover:not(:disabled){border-color:var(--ink-faint)}.ui-select-quiet .ui-select-trigger{min-height:var(--control-h-sm);padding:0 var(--space-xs);border-radius:var(--radius-md);background:0 0;border:1px solid #0000;font-weight:600}.ui-select-quiet .ui-select-trigger:hover:not(:disabled){background:var(--surface)}.ui-select .ui-select-trigger:disabled{cursor:not-allowed;opacity:.55}.ui-select .ui-select-trigger>svg:last-child{color:var(--ink-faint);flex-shrink:0;margin-left:auto}.ui-select-value{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.ui-select-value.is-placeholder{color:var(--ink-faint)}.ui-select-popover{z-index:950;background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-md);width:max-content;min-width:max(100%,160px);max-width:min(420px,100vw - 32px);box-shadow:0 20px 44px -16px var(--shadow-color);padding:6px;position:absolute;top:calc(100% + 6px);left:0}.ui-select-popover.is-up{top:auto;bottom:calc(100% + 6px)}.ui-select-search{box-sizing:border-box;width:100%;margin-bottom:6px}.ui-select-list{outline:none;max-height:280px;margin:0;padding:0;list-style:none;overflow-y:auto}.ui-select-option{border-radius:var(--radius-sm);min-height:44px;color:var(--ink-muted);cursor:pointer;align-items:center;gap:8px;padding:0 10px;font-size:12.5px;display:flex}.ui-select-option.is-active{background:var(--surface);color:var(--ink)}.ui-select-option.is-disabled{opacity:.45;cursor:not-allowed}.ui-select-option.is-selected{color:var(--ink);font-weight:600}.ui-select-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.ui-select-hint{color:var(--ink-faint);font-size:11px;font-weight:400}.ui-select-check{color:var(--accent);flex-shrink:0}.ui-select-separator{background:var(--border);height:1px;margin:4px 2px}.ui-select-empty{color:var(--ink-faint);padding:10px 8px;font-size:12.5px}.ui-select-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.ui-toolbar,.ui-button-group{align-items:center;gap:var(--space-sm);display:flex}.ui-toolbar{flex-wrap:wrap;justify-content:space-between}.ui-stack{gap:var(--space-sm);flex-wrap:wrap;display:flex}.ui-stack--wrap{flex-wrap:wrap}.ui-stack--nowrap{flex-wrap:nowrap}.ui-stack--col{flex-direction:column}.ui-hidden-mobile,.ui-hidden-tablet{display:initial}.ui-tabs{gap:var(--space-2xs);margin-bottom:var(--space-lg);border-bottom:1px solid var(--border-soft);scrollbar-width:none;display:flex;overflow-x:auto}.ui-tab{align-items:center;gap:var(--space-xs);min-height:var(--control-h-lg);padding:0 var(--space-md);font:inherit;color:var(--ink-muted);white-space:nowrap;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;border-radius:0;flex-shrink:0;font-size:13px;font-weight:500;transition:color .15s,border-color .15s;display:inline-flex}.ui-tab:hover{color:var(--ink)}.ui-tab.is-active{color:var(--accent);border-bottom-color:var(--accent);font-weight:600}.ui-tab:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}@media (width<=768px){.ui-tab{min-height:44px}}.ui-segmented{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);flex-shrink:0;display:inline-flex;overflow:hidden}.ui-segment{min-height:26px;color:var(--ink-muted);font:inherit;white-space:nowrap;cursor:pointer;background:0 0;border:none;border-radius:0;justify-content:center;align-items:center;padding:2px 9px;font-size:12px;font-weight:500;text-decoration:none;display:inline-flex}.ui-segment+.ui-segment{border-left:1px solid var(--border)}.ui-segment:hover:not(.is-active){color:var(--ink)}.ui-segment.is-active{background:var(--accent-soft);color:var(--accent);font-weight:600}.ui-segment:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}@media (pointer:coarse){.ui-segment{min-width:44px;min-height:44px}.ui-select .ui-select-trigger{min-height:44px}}.ui-overflow-menu{position:relative}.ui-overflow-menu__trigger{min-height:var(--control-h-md);padding:0 var(--space-sm);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);color:var(--ink-muted);cursor:pointer;font:inherit}.ui-dialog-sheet{background:var(--scrim);z-index:5000;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.ui-dialog-sheet__content{background:var(--surface-raised);border-top-left-radius:var(--radius-lg);border-top-right-radius:var(--radius-lg);border:1px solid var(--border);width:100%;max-height:90vh;padding:var(--space-lg);border-bottom:none;overflow:auto}.ui-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg)}.ui-state{border-radius:var(--radius-sm)}.ui-state-success{color:var(--good)}.ui-state-warning{color:var(--warning)}.ui-state-error{color:var(--critical)}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}select{font-family:inherit;font-size:inherit;color:var(--ink);background-color:var(--void);border:1px solid var(--border);appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5 6 6.5 11 1.5' fill='none' stroke='%238D97A5' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 9px center;background-repeat:no-repeat;background-size:10px 7px;border-radius:4px;padding:7px 26px 7px 10px}:where(input:not([type=checkbox],[type=radio],[type=range],[type=file],[type=color]),textarea){font:inherit;color:var(--ink);background-color:var(--void);border:1px solid var(--border);border-radius:var(--radius-md);padding:6px 10px}:where(button.small){min-height:var(--control-h-sm,28px);padding:0 var(--space-sm);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);color:var(--ink-muted);font:inherit;cursor:pointer;font-size:12.5px;font-weight:600}:where(button.small):hover:not(:disabled){background:var(--surface-raised);color:var(--ink)}:where(button.small):disabled{cursor:not-allowed;opacity:.5}th .link-button{color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit}select:hover{border-color:var(--ink-faint)}select option{background:var(--surface-raised);color:var(--ink)}@media (width<=768px){.ui-button,.ui-button-primary,.ui-button-secondary,.ui-button-quiet,.ui-button-danger,a.ui-button,a.ui-button-primary,a.ui-button-secondary,a.ui-button-quiet,a.ui-button-danger,.ui-icon-button,.ui-field{min-height:44px}.ui-icon-button{width:44px}.ui-hidden-mobile{display:none!important}.ui-stack{gap:var(--space-md);flex-direction:column}.ui-stack--wrap{flex-wrap:wrap}.ui-toolbar{gap:var(--space-md)}.ui-toolbar--mobile-stack{flex-direction:column;align-items:stretch}.ui-button-group{gap:var(--space-xs);flex-wrap:wrap}.ui-card{border-radius:var(--radius-md)}.ui-field{width:100%;min-height:44px;font-size:16px}.ui-overflow-menu{display:block}.ui-dialog-sheet{align-items:flex-end}.ui-dialog-sheet__content{padding:var(--space-lg) var(--space-md);border-radius:12px 12px 0 0}}@media (width>=769px) and (width<=1024px){.ui-hidden-tablet{display:none!important}.ui-stack,.ui-toolbar{gap:var(--space-md)}.ui-button-group{gap:var(--space-sm)}.ui-card{border-radius:var(--radius-md)}.ui-field{min-height:44px;font-size:16px}.ui-dialog-sheet__content{border-radius:var(--radius-lg);max-width:640px;padding:var(--space-xl);margin:0 auto}}@media (prefers-reduced-motion:reduce){:not(.pending-ai-spinner):not(.ui-loading-spinner){transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.crash-screen{justify-content:center;align-items:center;gap:var(--space-md);min-height:100vh;padding:var(--space-xl);background:var(--void);color:var(--ink);text-align:center;flex-direction:column;display:flex}.crash-screen h1{font-family:var(--serif);margin:0;font-size:26px;font-weight:500}.crash-screen p{max-width:480px;color:var(--ink-muted);margin:0}.scan-dialog{text-align:center}.scan-qr{margin:var(--space-md) auto;display:block}.scan-valid{color:var(--ink-muted);font-size:13px}.ui-loading{justify-content:center;align-items:center;gap:var(--space-sm);color:var(--ink-muted);flex-direction:column;font-size:13px;animation:.16s ease-out .2s both ui-loading-in;display:flex}.ui-loading-block{min-height:200px}.ui-loading-page{min-height:100dvh}.ui-loading-inline{flex-direction:row;justify-content:flex-start}.ui-loading-spinner{border:2.5px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:26px;height:26px;animation:.8s linear infinite ui-loading-spin}.ui-loading-inline .ui-loading-spinner{border-width:2px;width:14px;height:14px}@keyframes ui-loading-in{0%{opacity:0}to{opacity:1}}@keyframes ui-loading-spin{to{transform:rotate(360deg)}}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}input[type=date],input[type=datetime-local],input[type=time]{min-height:var(--control-h-md);font-variant-numeric:tabular-nums}input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.6}input[type=datetime-local]::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.6}input[type=time]::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.6}input[type=date]::-webkit-calendar-picker-indicator:hover{opacity:1}input[type=datetime-local]::-webkit-calendar-picker-indicator:hover{opacity:1}input[type=time]::-webkit-calendar-picker-indicator:hover{opacity:1}.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;top:0;left:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:0 0}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{-webkit-transform-origin:0 0;width:1600px;height:1600px}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{width:auto;padding:0;max-width:none!important;max-height:none!important}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:#33b5e566}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{box-sizing:border-box;z-index:800;width:0;height:0}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{z-index:800;pointer-events:visiblePainted;pointer-events:auto;position:relative}.leaflet-top,.leaflet-bottom{z-index:1000;pointer-events:none;position:absolute}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{outline-offset:1px;background:#ddd}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{background:#ffffff80;border:2px dotted #38f}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:.75rem;line-height:1.5}.leaflet-bar{border-radius:4px;box-shadow:0 1px 5px #000000a6}.leaflet-bar a{text-align:center;color:#000;background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;text-decoration:none;display:block}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom:none;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.leaflet-bar a.leaflet-disabled{cursor:default;color:#bbb;background-color:#f4f4f4}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-right-radius:2px;border-bottom-left-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{text-indent:1px;font:700 18px Lucida Console,Monaco,monospace}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{background:#fff;border-radius:5px;box-shadow:0 1px 5px #0006}.leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{color:#333;background:#fff;padding:6px 10px 6px 6px}.leaflet-control-layers-scrollbar{padding-right:5px;overflow:hidden scroll}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{font-size:1.08333em;display:block}.leaflet-control-layers-separator{border-top:1px solid #ddd;height:0;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=)}.leaflet-container .leaflet-control-attribution{background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{color:#333;padding:0 5px;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{width:1em;height:.6669em;vertical-align:baseline!important;display:inline!important}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{white-space:nowrap;box-sizing:border-box;text-shadow:1px 1px #fff;background:#fffc;border:2px solid #777;border-top:none;padding:2px 5px 1px;line-height:1.1}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{background-clip:padding-box;border:2px solid #0003}.leaflet-popup{text-align:center;margin-bottom:20px;position:absolute}.leaflet-popup-content-wrapper{text-align:left;border-radius:12px;padding:1px}.leaflet-popup-content{min-height:1px;margin:13px 24px 13px 20px;font-size:1.08333em;line-height:1.3}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{pointer-events:none;width:40px;height:20px;margin-top:-1px;margin-left:-20px;position:absolute;left:50%;overflow:hidden}.leaflet-popup-tip{pointer-events:auto;width:17px;height:17px;margin:-10px auto 0;padding:1px;transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{color:#333;background:#fff;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{text-align:center;color:#757575;background:0 0;border:none;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;text-decoration:none;position:absolute;top:0;right:0}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";width:24px;filter:progid:DXImageTransform.Microsoft.Matrix(M11=.707107, M12=.707107, M21=-.707107, M22=.707107);margin:0 auto}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{color:#222;white-space:nowrap;-webkit-user-select:none;user-select:none;pointer-events:none;background-color:#fff;border:1px solid #fff;border-radius:3px;padding:6px;position:absolute;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{pointer-events:none;content:"";background:0 0;border:6px solid #0000;position:absolute}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{margin-left:-6px;left:50%}.leaflet-tooltip-top:before{border-top-color:#fff;margin-bottom:-12px;bottom:0}.leaflet-tooltip-bottom:before{border-bottom-color:#fff;margin-top:-12px;margin-left:-6px;top:0}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{margin-top:-6px;top:50%}.leaflet-tooltip-left:before{border-left-color:#fff;margin-right:-12px;right:0}.leaflet-tooltip-right:before{border-right-color:#fff;margin-left:-12px;left:0}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.app{width:100vw;height:100vh;font-family:var(--sans);background:var(--void);color:var(--ink);flex-direction:column;display:flex}.app-header{background:var(--surface);border-bottom:1px solid var(--border);flex-wrap:nowrap;align-items:center;gap:14px;min-width:0;padding:10px 18px;display:flex}.app-brand{width:302px;min-width:0;font-family:var(--serif);color:var(--ink);white-space:nowrap;cursor:pointer;flex-shrink:1;align-items:center;gap:9px;font-size:16px;text-decoration:none;display:flex;overflow:hidden}.app-brand:hover{color:var(--accent)}.case-indicator{background:var(--surface-raised);border:1px solid var(--border);color:var(--ink);text-overflow:ellipsis;white-space:nowrap;border-radius:4px;flex-shrink:1;align-items:center;min-width:0;max-width:260px;padding:7px 12px;font-size:12.5px;font-weight:600;display:flex;overflow:hidden}.case-tag{font-family:var(--mono);color:var(--accent);background:var(--accent-soft);border-radius:2px;flex-shrink:0;padding:2px 6px;font-size:10.5px}.icon-cluster{align-items:center;gap:4px;display:flex}.icon-divider{background:var(--border);flex-shrink:0;width:1px;height:20px;margin:0 4px}.icon-btn{width:32px;height:32px;color:var(--ink-muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:4px;justify-content:center;align-items:center;font-size:15px;line-height:1;text-decoration:none;transition:background .15s,color .15s,border-color .15s;display:flex}.icon-btn:hover:not(:disabled){background:var(--surface-raised);color:var(--ink);border-color:var(--border)}.icon-btn.is-active{background:var(--accent-soft);color:var(--accent);border-color:var(--accent-line)}.icon-btn:disabled{opacity:.35;cursor:not-allowed}.icon-btn.is-disabled{opacity:.35;cursor:not-allowed;pointer-events:none}.icon-btn.nav-action{white-space:nowrap;gap:6px;width:auto;padding:0 10px;font-family:inherit;font-size:13px;display:inline-flex}.nav-action-icon{justify-content:center;align-items:center;font-size:15px;display:inline-flex}@media (width<=1000px){.app-brand{flex-shrink:0;width:auto}}@media (width<=1280px){.icon-btn.nav-action{width:32px;padding:0}.nav-action-label{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}.app-header-brand{color:var(--ink);letter-spacing:.01em;flex-shrink:0;align-items:center;gap:9px;font-size:14px;font-weight:600;text-decoration:none;display:flex}.app-header-brand:hover{color:var(--accent)}.app-header-brand:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:var(--radius-sm)}.app-header-sep{color:var(--ink-faint);-webkit-user-select:none;user-select:none}@media (width<=768px){.app-header-wordmark,.app-header-sep{display:none}.app-header-brand{justify-content:center;min-width:44px;min-height:44px}}.app-header-spacer{flex:1}.app-header-title{font-family:var(--sans);color:var(--ink);text-overflow:ellipsis;white-space:nowrap;min-width:0;margin:0;font-size:14px;font-weight:500;overflow:hidden}.app-header-back{color:var(--ink-muted);border:1px solid var(--border);white-space:nowrap;border-radius:4px;padding:7px 13px;font-size:12.5px;text-decoration:none}.app-header-back:hover{color:var(--ink)}.presence-bar{align-items:center;margin-right:4px;display:flex}.presence-bar .presence-avatar{border:2px solid var(--surface);background:var(--surface-raised);cursor:pointer;border-radius:50%;flex-shrink:0;width:26px;height:26px;margin-left:-8px;padding:0;overflow:hidden}.presence-bar .presence-avatar:first-child{margin-left:0}.presence-bar .presence-avatar:hover:not(:disabled){border-color:var(--accent)}.presence-bar .presence-avatar:disabled{cursor:default;opacity:.6}.presence-bar .presence-avatar img{object-fit:cover;width:100%;height:100%}.presence-avatar-fallback{width:100%;height:100%;color:var(--ink);background:var(--surface-raised);justify-content:center;align-items:center;font-size:11px;font-weight:700;display:flex}.case-active-users{border-radius:13px;margin-right:0;display:inline-flex;position:relative}.case-active-users:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.case-active-users:hover:after,.case-active-users:focus-visible:after{content:attr(data-names);z-index:5;background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:0 8px 20px -8px var(--shadow-color);color:var(--ink);white-space:nowrap;padding:4px 8px;font-size:12px;font-weight:400;position:absolute;top:calc(100% + 6px);left:0}.case-active-users .presence-avatar{cursor:default}.case-active-users .presence-avatar:hover{border-color:var(--surface)}.case-active-users-overflow{color:var(--ink-muted);background:var(--surface-raised);justify-content:center;align-items:center;font-size:10.5px;font-weight:700;display:flex}.profile-menu-wrap{position:relative}.profile-menu{border:1px solid var(--border);background:var(--surface-raised);cursor:pointer;color:var(--ink);border-radius:20px;align-items:center;gap:9px;padding:5px 12px 5px 5px;display:flex}.profile-menu:hover{border-color:var(--ink-faint)}.profile-menu:focus-visible,.profile-menu-panel .profile-dropdown-item:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.profile-menu-chevron{color:var(--ink-faint);display:flex}@media (width<=600px){.profile-name{display:none}.profile-menu{padding-right:8px}}.profile-avatar{background:linear-gradient(135deg, var(--accent), #a9782f);width:24px;height:24px;color:var(--accent-ink);object-fit:cover;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:10.5px;font-weight:700;display:flex;overflow:hidden}.profile-avatar img{object-fit:cover;width:100%;height:100%}.profile-name{white-space:nowrap;font-size:12.5px}.profile-backdrop{z-index:900;position:fixed;inset:0}.profile-dropdown{background:var(--surface-raised);border:1px solid var(--border);width:280px;max-width:calc(100vw - 16px);box-shadow:0 20px 44px -16px var(--shadow-color);z-index:901;border-radius:6px;padding:8px;position:absolute;top:calc(100% + 8px);right:0}.help-fab-wrap{flex-shrink:0;position:relative}.help-fab-wrap .help-fab{width:var(--control-h-md);height:var(--control-h-md);border:1px solid var(--border);background:var(--surface-raised);color:var(--ink-muted);cursor:pointer;font-size:14px;font-weight:700;line-height:1;font-family:var(--sans);border-radius:50%;justify-content:center;align-items:center;padding:0;display:flex}.help-fab-wrap .help-fab:hover{border-color:var(--ink-faint);color:var(--ink)}.help-fab-wrap .help-fab.is-active{border-color:var(--accent-line);background:var(--accent-soft);color:var(--accent)}.help-fab-wrap .help-fab:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.help-popover{background:var(--surface-raised);border:1px solid var(--border);width:340px;max-width:calc(100vw - 48px);box-shadow:0 20px 44px -16px var(--shadow-color);z-index:951;font-family:var(--sans);border-radius:6px;padding:14px 16px;position:absolute;top:calc(100% + 8px);right:0}@media (width<=600px){.help-popover{width:auto;max-width:none;position:fixed;top:72px;left:12px;right:12px}}.help-popover-header{border-bottom:1px solid var(--border-soft);color:var(--ink);justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;padding-bottom:10px;font-size:13.5px;display:flex}.help-popover-body{color:var(--ink-muted);font-size:12.5px;line-height:1.6}.help-popover-body p{margin:0 0 10px}.help-popover-body p:last-child{margin-bottom:0}.help-popover-body strong{color:var(--ink)}.profile-dropdown-head{border-bottom:1px solid var(--border-soft);align-items:center;gap:10px;margin-bottom:6px;padding:8px 10px 12px;display:flex}.profile-dropdown-head .profile-avatar{width:32px;height:32px;font-size:13px}.profile-dropdown-head .name{color:var(--ink);font-size:13px}.profile-dropdown-head .email{color:var(--ink-faint);font-size:11px}.profile-dropdown-item{text-align:left;width:100%;color:var(--ink-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:space-between;align-items:center;gap:8px;padding:9px 10px;font-family:inherit;font-size:12.5px;text-decoration:none;display:flex}.profile-dropdown-item:hover{background:var(--surface);color:var(--ink)}.profile-dropdown-item:disabled{opacity:.4;cursor:not-allowed}.profile-dropdown-item:disabled:hover{color:var(--ink-muted);background:0 0}.profile-dropdown-item-label{align-items:center;gap:9px;min-width:0;display:flex}.profile-dropdown-item-icon{background:var(--accent-soft);width:22px;height:22px;color:var(--accent);border-radius:5px;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;display:flex}.profile-dropdown-item-icon-download{background:var(--good-soft);color:var(--good)}.profile-dropdown-divider{background:var(--border-soft);height:1px;margin:6px 4px}.profile-dropdown-item.danger{color:var(--critical)}.profile-dropdown-head .profile-avatar{width:36px;height:36px}.profile-dropdown-identity{flex:1;min-width:0}.profile-dropdown-identity>div{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.profile-dropdown-head .name{font-weight:600}.profile-dropdown-badge{border-radius:var(--radius-md);border:1px solid var(--accent-line);background:var(--accent-soft);color:var(--accent);flex-shrink:0;padding:2px 8px;font-size:11px;font-weight:600}.profile-dropdown-label{letter-spacing:.04em;text-transform:uppercase;color:var(--ink-faint);padding:8px 10px 4px;font-size:11px;font-weight:600}.profile-menu-panel .profile-dropdown-item,.profile-dropdown-row{min-height:40px;color:var(--ink);padding:6px 10px;font-size:13px}.profile-dropdown-row{justify-content:space-between;align-items:center;gap:8px;display:flex}.profile-menu-panel .profile-dropdown-item-icon{background:var(--surface);color:var(--ink-muted)}.profile-menu-panel .profile-dropdown-item:hover:not(:disabled) .profile-dropdown-item-icon{color:var(--accent)}.profile-menu-panel .profile-dropdown-item.danger,.profile-menu-panel .danger .profile-dropdown-item-icon{color:var(--critical)}.profile-menu-panel .danger .profile-dropdown-item-icon{background:var(--critical-soft)}.profile-dropdown-hint{color:var(--ink-faint);white-space:nowrap;font-size:11px}.profile-menu-panel [role=group]+[role=group]{border-top:1px solid var(--border);margin-top:6px;padding-top:2px}.profile-menu-panel .profile-dropdown-head{border-color:var(--border)}.profile-menu-panel .profile-dropdown-divider{background:var(--border);margin:6px 0}.profile-dropdown-row .profile-dropdown-item-label{flex-shrink:0}@media (pointer:coarse){.profile-menu-panel .profile-dropdown-item,.profile-dropdown-row{min-height:44px}}.app-body{flex:1;min-height:0;display:flex}.sidebar{border-right:1px solid var(--border);background:var(--surface-hairline);flex-direction:column;flex-shrink:0;width:320px;min-height:0;display:flex}.sidebar-collapsed{width:28px}@media (width<=768px){.app-body{position:relative}.sidebar:not(.sidebar-collapsed){z-index:1000;width:min(320px,88vw);box-shadow:0 12px 32px var(--shadow-color);position:absolute;inset:0 auto 0 0}.sidebar-collapsed{width:44px}.sidebar-toggle{min-height:44px}}.sidebar-toggle{border:none;border-bottom:1px solid var(--border);color:var(--ink-faint);cursor:pointer;background:0 0;flex-shrink:0;justify-content:center;align-items:center;padding:8px 0;font-size:12px;display:flex}.sidebar-toggle:hover{color:var(--ink);background:var(--surface-raised)}.sidebar-search{border-bottom:1px solid var(--border);flex-direction:column;flex-shrink:0;gap:6px;padding:10px 12px;display:flex}.sidebar-search input,.sidebar-search select{box-sizing:border-box;background:var(--void);border:1px solid var(--border);width:100%;color:var(--ink);font-size:13px;font-family:var(--sans);border-radius:4px;padding:7px 10px;display:block}.sidebar-search select{color:var(--ink-muted)}.sidebar-search input:focus,.sidebar-search select:focus{border-color:var(--accent)}.timeline{flex:1;min-height:0;overflow-y:auto}.sidebar-pagination{border-top:1px solid var(--border);color:var(--ink-muted);flex-wrap:wrap;flex-shrink:0;justify-content:center;align-items:center;gap:5px;padding:8px 10px;font-size:11.5px;display:flex}.sidebar-pagination button{border:1px solid var(--border);color:var(--ink-muted);cursor:pointer;background:0 0;border-radius:4px;flex-shrink:0;padding:5px 9px;font-size:11.5px}.sidebar-pagination button:hover:not(:disabled){color:var(--ink);border-color:var(--ink-faint)}.sidebar-pagination button:disabled{opacity:.4;cursor:default}.sidebar-pagination-jump{white-space:nowrap;align-items:center;gap:5px;display:flex}.sidebar-pagination-jump input{background:var(--void);border:1px solid var(--border);width:44px;color:var(--ink);font-size:11.5px;font-family:var(--mono);text-align:center;border-radius:4px;padding:4px 5px}.sidebar-pagination-jump input:focus{border-color:var(--accent)}.sidebar-pagination-jump input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.sidebar-pagination-jump input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.sidebar-pagination-jump input[type=number]{-moz-appearance:textfield}.sidebar-pagination-total{font-family:var(--mono);color:var(--ink-faint)}.map-area{isolation:isolate;flex:1;position:relative}.cluster-bubble{color:#fff;width:100%;height:100%;font-weight:600;font-family:var(--sans);border:2px solid #ffffff40;border-radius:50%;justify-content:center;align-items:center;display:flex;box-shadow:0 0 0 4px #131a2259}.cluster-sm{background:color-mix(in srgb, var(--accent) 75%, var(--void));width:32px;height:32px;font-size:11px}.cluster-md{background:color-mix(in srgb, var(--accent) 88%, #b34700);width:38px;height:38px;font-size:12px}.cluster-lg{background:#b34700;width:44px;height:44px;font-size:13px}.detail-panel{border-left:1px solid var(--border);background:var(--surface-hairline);box-sizing:border-box;width:320px;padding:18px;overflow-y:auto}.timeline-item{border-left:3px solid #0000;border-bottom:1px solid var(--border-soft);cursor:pointer;gap:10px;padding:9px 14px;transition:background .12s;display:flex}.timeline-item:hover{background:var(--surface-raised)}.timeline-item.selected{background:var(--accent-soft);border-left-color:var(--accent)}.timeline-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px;margin-top:6px}.timeline-body{flex:1;min-width:0}.timeline-time{font-family:var(--mono);color:var(--ink-faint);font-size:10.5px}.timeline-item.selected .timeline-time{color:var(--accent)}.timeline-title{color:var(--ink);align-items:center;gap:6px;font-size:13px;font-weight:600;display:flex}.timeline-tags{gap:3px;display:inline-flex}.timeline-note{color:var(--ink-muted);white-space:pre-wrap;word-break:break-word;margin-top:6px;padding-left:22px;font-size:12px;line-height:1.45}.badge{background:var(--accent-soft);color:var(--accent);text-transform:uppercase;letter-spacing:.04em;border-radius:2px;padding:1px 5px;font-size:10px}.timeline-title .badge{color:var(--ink-faint);background:0 0;padding:0;font-weight:500}.ai-confidence-row{margin-top:4px;display:block}.ai-confidence-page{flex-wrap:wrap;flex-shrink:0;align-items:center;gap:8px;display:inline-flex}.ai-confidence-page .ai-confidence-row{margin-top:0}.suggestions-page-text{color:var(--ink-muted);font-size:12px;font-family:var(--mono);font-variant-numeric:tabular-nums;text-align:left}.ai-confidence-badge{font-size:10px;font-weight:600;font-family:var(--mono);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;border-radius:3px;align-items:center;padding:2px 6px;line-height:1.2;display:inline-flex}.ai-confidence-badge.ai-confidence-high{background:var(--good-soft,#2ea04326);color:var(--good,#2ea043);border:1px solid var(--good-soft,#2ea0434d)}.ai-confidence-badge.ai-confidence-medium{background:var(--warning-soft,#d2992226);color:var(--warning,#d29922);border:1px solid var(--warning-soft,#d299224d)}.ai-confidence-badge.ai-ocr-badge{background:var(--surface-raised);color:var(--ink-muted);border:1px solid var(--border);margin-left:4px}.ai-confidence-badge.ai-confidence-low{background:var(--critical-soft,#f8514926);color:var(--critical,#f85149);border:1px solid var(--critical-soft,#f851494d)}.timeline-media-badge{color:var(--ink-faint);font-size:10px;font-family:var(--mono);white-space:nowrap}.timeline-entity-icon{flex-shrink:0;width:16px;font-size:12px;line-height:1}.empty-hint{color:var(--ink-faint);padding:20px;font-size:13px}.map-toolbar{z-index:500;flex-wrap:wrap;gap:8px;max-width:calc(100% - 72px);display:flex;position:absolute;top:14px;left:14px}.mode-hint{z-index:500;background:var(--surface-raised);border:1px solid var(--accent-line);color:var(--ink);box-shadow:0 12px 30px -12px var(--shadow-color);white-space:nowrap;pointer-events:none;border-radius:20px;padding:8px 16px;font-size:12.5px;position:absolute;bottom:24px;left:50%;transform:translate(-50%)}.mode-hint-inline{width:fit-content;margin:16px auto 0;display:block;position:static;left:auto;transform:none}.map-chip-group{gap:8px;display:flex;position:relative}.map-chip{background:var(--surface-overlay);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--border);border-radius:var(--radius-md,6px);color:var(--ink-muted);cursor:pointer;min-height:var(--control-h-md,32px);box-sizing:border-box;align-items:center;gap:6px;padding:7px 13px;font-size:12px;transition:all .15s;display:flex}.map-chip:hover{color:var(--ink);border-color:var(--ink-faint)}.map-chip.is-active{color:var(--accent);border-color:var(--accent-line);background:var(--surface-overlay-active)}.options-backdrop{z-index:900;position:fixed;inset:0}.options-panel{background:var(--surface-overlay);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--border);border-radius:var(--radius-md,6px);width:270px;box-shadow:0 12px 32px var(--shadow-color);z-index:901;color:var(--ink);padding:14px 16px;position:absolute;top:calc(100% + 6px);left:0}.map-style-panel{width:248px;margin:0}.map-style-panel>legend{float:left;width:100%;padding:0}.map-style-grid{clear:both;grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.map-style-option{border:1px solid var(--border);border-radius:var(--radius-md);color:var(--ink-muted);cursor:pointer;flex-direction:column;gap:6px;padding:4px;font-size:12.5px;display:flex;position:relative}.map-style-option:hover{border-color:var(--ink-faint);color:var(--ink)}.map-style-option input{opacity:0;pointer-events:none;position:absolute}.map-style-option:has(input:checked){border-color:var(--accent);box-shadow:0 0 0 1px var(--accent);color:var(--ink);font-weight:600}.map-style-option:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.map-style-preview{border-radius:var(--radius-sm);width:100%;height:48px;display:block}.map-style-name{padding:0 2px 2px}@media (width<=768px){.map-style-option,.map-chip-group>.map-chip{min-height:44px}}.options-section-title{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);margin:14px 0 8px;font-size:10.5px;font-weight:600}.options-section-title:first-child{margin-top:0}.options-checkbox{cursor:pointer;color:var(--ink-muted);align-items:center;gap:8px;margin-bottom:10px;font-size:13px;display:flex}.options-checkbox input{accent-color:var(--accent);margin:0}.options-field{color:var(--ink-muted);margin-bottom:12px;font-size:12px;font-weight:600;display:block}.options-field input,.options-field select{box-sizing:border-box;background:var(--void);border:1px solid var(--border);width:100%;color:var(--ink);border-radius:4px;margin-top:5px;padding:7px 9px;font-family:inherit;font-size:13px;display:block}.options-hint{color:var(--ink-faint);margin-top:4px;font-size:11px;font-weight:400;display:block}.options-entity-types{margin-bottom:14px}.options-entity-types>.options-hint{color:var(--ink-muted);margin:0 0 8px;font-size:12px;font-weight:600}.options-entity-types .options-checkbox{margin-bottom:6px}.upload-panel{align-items:center;gap:8px;display:flex}.download-link{color:var(--ink-muted);text-decoration:none}.error-text{color:var(--critical);font-size:12px}.error-banner{background:var(--critical-soft);color:var(--critical);border-bottom:1px solid var(--critical-line);padding:8px 18px;font-size:13px}.legend{z-index:500;background:var(--surface-overlay);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--border);border-radius:var(--radius-md,6px);box-shadow:0 8px 24px var(--shadow-color);color:var(--ink);max-width:240px;max-height:40%;padding:10px 14px;font-size:12px;position:absolute;bottom:24px;left:14px;overflow-y:auto}.legend-collapsed{max-height:none;padding:6px 10px;overflow:visible}.legend-toggle{width:100%;color:var(--ink-muted);cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;gap:10px;margin:0 0 4px;padding:0;font-size:12px;font-weight:600;display:flex}.legend-collapsed .legend-toggle{margin:0}.legend-toggle:hover{color:var(--ink)}.legend-toggle-arrow{color:var(--ink-faint);font-size:10px}.legend-row{align-items:center;gap:7px;padding:3px 0;display:flex}.legend-dot{border:1px solid #ffffff26;border-radius:50%;flex-shrink:0;width:9px;height:9px}.legend-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--ink-muted);flex:1;overflow:hidden}.legend-gradient-row{margin-top:4px}.legend-gradient-bar{background:linear-gradient(to right, #4c7fd6, var(--accent));border:1px solid #ffffff26;border-radius:3px;flex-shrink:0;width:28px;height:7px}.legend-subtitle{border-top:1px solid var(--border-soft);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-faint);margin-top:6px;padding-top:5px;font-size:10px}.legend-dash{border-top:3px dashed;flex-shrink:0;width:18px}.legend-solid{border-top:3px solid;flex-shrink:0;width:18px}.node-panel label{letter-spacing:.02em;color:var(--ink-faint);margin-bottom:12px;font-size:11px;font-weight:600;display:block}.node-panel input,.node-panel textarea,.node-panel select{box-sizing:border-box;background:var(--void);border:1px solid var(--border);width:100%;color:var(--ink);font-size:13px;font-family:var(--sans);border-radius:4px;margin-top:6px;padding:8px 10px;display:block}.node-panel select{padding-right:28px}.node-panel label>.ui-select{margin-top:6px;font-size:13px}.node-panel input:focus,.node-panel textarea:focus{border-color:var(--accent)}.tag-chips{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.tag-chip{color:var(--ink);border-radius:2px;align-items:center;gap:4px;padding:3px 6px 3px 10px;font-size:11.5px;font-weight:600;display:inline-flex}.tag-chip-remove{color:inherit;cursor:pointer;opacity:.75;background:0 0;border:none;padding:0 2px;font-size:14px;line-height:1}.tag-chip-remove:hover{opacity:1}.tag-input-row{margin-top:8px;position:relative}.tag-suggestions{background:var(--surface-raised);border:1px solid var(--border);z-index:10;border-radius:4px;max-height:160px;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto;box-shadow:0 12px 28px -10px #0000008c}.tag-suggestion{text-align:left;width:100%;color:var(--ink);cursor:pointer;background:0 0;border:none;align-items:center;gap:8px;padding:7px 9px;font-size:12px;font-weight:400;display:flex}.tag-suggestion:hover{background:var(--surface)}.tag-suggestion-dot{border-radius:50%;flex-shrink:0;width:9px;height:9px}.tag-suggestion-create{color:var(--accent);border-top:1px solid var(--border-soft);font-weight:600}.media-grid{grid-template-columns:repeat(3,1fr);gap:6px;margin-top:6px;display:grid}.media-thumb{aspect-ratio:1;border:1px solid var(--border);background:var(--void);cursor:pointer;border-radius:4px;padding:0;position:relative;overflow:hidden}.media-thumb:hover{border-color:var(--ink-faint)}.media-thumb img,.media-thumb video{object-fit:cover;width:100%;height:100%;display:block}.media-thumb-play{color:#fff;text-shadow:0 1px 3px #000000b3;background:#00000040;justify-content:center;align-items:center;font-size:16px;display:flex;position:absolute;inset:0}.media-kind-icon{vertical-align:-.15em;flex-shrink:0;display:inline-block}.media-thumb-audio{justify-content:center;align-items:center;font-size:22px;display:flex;position:absolute;inset:0}.media-upload-row{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.media-upload-row button{background:var(--surface-raised);border:1px solid var(--border);color:var(--ink-muted);cursor:pointer;border-radius:4px;padding:7px 10px;font-size:12px}.media-upload-row button:hover:not(:disabled){color:var(--ink);border-color:var(--ink-faint)}.media-upload-row button:disabled{opacity:.5;cursor:default}.media-error{color:var(--critical);margin-top:6px;font-size:12px;font-weight:400}.node-panel-section{border-top:1px solid var(--border-soft);margin-top:12px;padding-top:12px}.node-panel-section-title{text-transform:uppercase;letter-spacing:.05em;color:var(--accent);margin-bottom:10px;font-size:11.5px;font-weight:700}.link-button{color:var(--accent);cursor:pointer;background:0 0;border:none;padding:0;font-size:12px;text-decoration:none}.link-button:hover{color:var(--accent-hover)}.page-chip{border:1px solid var(--accent-line);border-radius:var(--radius-sm);background:var(--accent-soft);min-height:28px;color:var(--accent);white-space:nowrap;vertical-align:middle;cursor:pointer;align-items:center;gap:5px;padding:0 10px;font-size:12px;font-style:normal;font-weight:600;transition:background .15s,color .15s;display:inline-flex}.page-chip:hover{background:var(--accent);color:var(--accent-ink)}@media (width<=768px){.page-chip{min-height:44px}}.coords{font-family:var(--mono);color:var(--ink-faint);margin-bottom:12px;font-size:12px}.coords-inputs{gap:10px;margin-bottom:4px;display:flex}.coords-inputs label{flex:1}.viewed-by-others{background:var(--warning-soft);color:var(--warning);border:1px solid var(--warning-line);border-radius:4px;margin-bottom:14px;padding:7px 9px;font-size:12px}.node-panel-actions{z-index:2;align-items:center;gap:var(--space-sm);background:var(--surface-raised);border-top:1px solid var(--border);margin:14px -18px 0;padding:12px 18px;display:flex;position:sticky;bottom:-18px}.node-panel-actions .ui-button{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.node-panel .options-hint{margin:4px 0 12px}.node-panel-actions .node-delete-btn{flex:none}.node-pick-btn{gap:6px;margin-top:2px;display:inline-flex}.btn-accent{background:var(--accent);color:var(--accent-ink);cursor:pointer;border:1px solid #0000;border-radius:3px;padding:9px 18px;font-family:inherit;font-size:13px;font-weight:600}.btn-accent:hover:not(:disabled){background:var(--accent-hover)}.btn-accent:disabled{opacity:.4;cursor:not-allowed}.btn-secondary{border:1px solid var(--border);background:var(--surface);color:var(--ink-muted);cursor:pointer;border-radius:3px;padding:9px 18px;font-family:inherit;font-size:13px;font-weight:600}.btn-secondary:hover:not(:disabled){color:var(--ink);border-color:var(--ink-faint);background:var(--surface-raised)}.btn-secondary:disabled{opacity:.4;cursor:not-allowed}.node-panel-actions button.danger,button.danger{color:var(--critical);border-color:var(--critical-line);background:0 0}.node-panel-actions button.danger:hover:not(:disabled),button.danger:hover:not(:disabled){background:var(--critical-soft)}button.danger.small{padding:5px 9px;font-size:12px}.confirm-overlay{z-index:4000;background:var(--scrim);justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.confirm-dialog{background:var(--surface-raised);border:1px solid var(--border);width:100%;max-width:380px;box-shadow:0 24px 60px -20px var(--shadow-color);border-radius:6px;padding:22px 24px}.confirm-dialog p{color:var(--ink);margin:0 0 20px;font-size:14px;line-height:1.6}.confirm-actions{justify-content:flex-end;gap:10px;display:flex}.confirm-actions button:not(.ui-button){border-radius:var(--radius-md,4px);border:1px solid var(--border);background:var(--surface);color:var(--ink-muted);cursor:pointer;padding:8px 16px;font-family:inherit;font-size:13px;transition:all .15s}.confirm-actions button:not(.ui-button):hover:not(:disabled){color:var(--ink);border-color:var(--ink-faint)}.confirm-actions button:not(.ui-button):disabled{opacity:.5;cursor:not-allowed}.collab-field{display:block;position:relative}.collab-field:after{content:"";border:2px solid var(--collab-color);pointer-events:none;border-radius:5px;position:absolute;inset:-2px}.collab-field-avatars{z-index:2;flex-direction:row-reverse;display:flex;position:absolute;top:-9px;right:-9px}.collab-field-avatar{box-sizing:border-box;border:2px solid var(--surface);border-radius:50%;flex-shrink:0;width:18px;height:18px;margin-right:-6px;overflow:hidden}.collab-field-avatar:first-child{margin-right:0}.collab-field-avatar img{object-fit:cover;width:100%;height:100%}.collab-field-avatar-fallback{color:#fff;justify-content:center;align-items:center;width:100%;height:100%;font-size:8px;font-weight:700;display:flex}@media print{.print-hide{display:none!important}}.narrative-list{margin:0;padding:0;list-style:none}.narrative-entry{gap:var(--space-md);padding:var(--space-lg) 0;border-top:1px solid var(--border-soft);grid-template-columns:28px minmax(0,1fr);display:grid}.narrative-entry:first-child{padding-top:var(--space-xs);border-top:none}.narrative-entry-num{border:1px solid var(--border);background:var(--surface-raised);width:26px;height:26px;color:var(--ink-muted);font-family:var(--mono);border-radius:50%;justify-content:center;align-items:center;margin-top:3px;font-size:12px;display:flex}.narrative-entry-head{min-height:var(--control-h-md);flex-wrap:wrap;align-items:center;gap:4px 10px;display:flex}.narrative-entry-title{color:var(--ink);overflow-wrap:anywhere;font-size:14px;font-weight:600;text-decoration:none}a.narrative-entry-title:hover{color:var(--accent);text-decoration:underline}.narrative-entry-title.is-missing{color:var(--ink-muted);font-style:italic;font-weight:400}.narrative-entry-time,.testimony-entry-time{color:var(--ink-muted);font-family:var(--mono);font-size:12px}.narrative-entry-controls{gap:2px;margin-left:auto;display:flex}.narrative-entry-commentary{box-sizing:border-box;width:100%;margin-top:8px;font-size:13px;line-height:1.5;display:block}.narrative-entry-status{min-height:16px;color:var(--ink-muted);margin:4px 0 0;font-size:12px}.narrative-entry-commentary-print,.testimony-statement{white-space:pre-wrap;overflow-wrap:anywhere;max-width:80ch;margin:8px 0 0;font-size:13.5px;line-height:1.6}.narrative-entry-media-picker{flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;display:flex}.narrative-entry-media-label{color:var(--ink-muted);font-size:12px}.narrative-entry-media-option{max-width:220px;min-height:var(--control-h-md);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--ink-muted);cursor:pointer;align-items:center;gap:6px;padding:0 8px;font-size:12px;display:flex}.narrative-entry-media-option:hover{border-color:var(--ink-faint);color:var(--ink)}.narrative-entry-media-option img{object-fit:cover;border-radius:3px;flex-shrink:0;width:24px;height:24px}.narrative-entry-media-option-icon{flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;display:flex}.narrative-entry-media-option-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.narrative-entry-media-print{flex-wrap:wrap;gap:10px;margin-top:10px;display:flex}.narrative-entry-media-print-img{object-fit:contain;border:1px solid var(--border-soft);border-radius:4px;max-width:220px;max-height:220px}.narrative-entry-media-print-caption{color:var(--ink-muted);font-size:12px;font-style:italic}.narrative-entry .discussion-thread-box{margin-top:8px}.testimony-list{gap:var(--space-md);flex-direction:column;display:flex}.testimony-entry{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);border-left-width:3px;padding:12px 14px}.testimony-entry.has-contradiction{border-left-color:var(--critical)}.testimony-entry.has-proof{border-left-color:var(--good)}.testimony-entry.is-editing{border-top-color:var(--accent-line);border-right-color:var(--accent-line);border-bottom-color:var(--accent-line)}.testimony-entry-head{min-height:var(--control-h-md);flex-wrap:wrap;align-items:center;gap:6px 8px;display:flex}.testimony-entry-head-end{flex-wrap:wrap;align-items:center;gap:8px;margin-left:auto;display:flex}.testimony-entry-title{color:var(--ink);overflow-wrap:anywhere;font-size:14px;font-weight:600}.testimony-chip{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-raised);min-height:22px;color:var(--ink-muted);white-space:nowrap;align-items:center;gap:6px;padding:0 8px;font-family:inherit;font-size:12px;font-weight:600;display:inline-flex}.testimony-chip.contradicts,.testimony-chip.supports{color:var(--ink)}.testimony-chip.contradicts:before,.testimony-chip.supports:before{content:"";background:var(--critical);border-radius:50%;width:6px;height:6px}.testimony-chip.contradicts{border-color:var(--critical-line);background:var(--critical-soft)}.testimony-chip.supports{border-color:var(--good-line);background:var(--good-soft)}.testimony-chip.supports:before{background:var(--good)}button.testimony-chip.is-button{cursor:pointer}button.testimony-chip.is-button:hover{border-color:var(--ink-faint)}.testimony-person-info{color:var(--ink-muted);font-size:12px}.testimony-link-rows{border-top:1px solid var(--border-soft);margin-top:10px}.testimony-link-row{border-bottom:1px solid var(--border-soft);flex-wrap:wrap;align-items:center;gap:4px 8px;padding:8px 0;font-size:13px;display:flex}.testimony-link-row:last-child{border-bottom:none;padding-bottom:0}.testimony-link-point{text-align:left;overflow-wrap:anywhere;padding:0;font-size:13px;font-weight:600}.testimony-link-note{color:var(--ink-muted);white-space:pre-wrap;flex-basis:100%;font-size:12.5px}.testimony-source-input{flex:1;min-width:160px;font-weight:600}.testimony-person-fields,.testimony-add-form{grid-template-columns:1fr 1fr;gap:10px 14px;margin:10px 0;display:grid}.testimony-person-fields label,.testimony-add-form label{color:var(--ink-muted);flex-direction:column;gap:4px;font-size:12px;display:flex}.testimony-person-notes-label,.testimony-statement-label,.testimony-add-actions{grid-column:1/-1}.testimony-add-actions{justify-content:flex-end}.testimony-disclosure svg{transition:transform .15s;transform:rotate(-90deg)}.testimony-disclosure[aria-expanded=true] svg{transform:none}.testimony-statement-input{box-sizing:border-box;width:100%;line-height:1.5;display:block}.testimony-links-section{border-top:1px solid var(--border-soft);margin-top:12px;padding-top:10px}.testimony-links-heading{color:var(--ink-muted);margin-bottom:8px;font-size:12px;font-weight:600}.testimony-link-list{flex-direction:column;gap:8px;margin-bottom:10px;display:flex}.testimony-link-item{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-raised);flex-direction:column;gap:6px;padding:10px 12px;display:flex}.testimony-link-head{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.testimony-link-title{color:var(--ink);flex:1;font-size:13px;font-weight:600}textarea.testimony-link-note-input{box-sizing:border-box;width:100%;min-height:56px;font-size:13px}.testimony-add-link-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.testimony-add-link-row .testimony-point-select{flex:220px;min-width:0}.testimony-entry-actions{border-top:1px solid var(--border-soft);margin-top:14px;padding-top:12px}@media (width<=640px){.testimony-person-fields,.testimony-add-form{grid-template-columns:1fr}.testimony-entry-head-end{margin-left:0}}@media (pointer:coarse){.narrative-entry-controls .ui-icon-button,.testimony-link-head .ui-icon-button{width:44px;height:44px}.narrative-entry-media-option,button.testimony-chip.is-button{min-height:44px}}@media print{.narrative-entry,.testimony-entry{break-inside:avoid}}.csv-import-dialog{background:var(--surface-raised);border:1px solid var(--border);width:100%;max-width:640px;max-height:85vh;box-shadow:0 24px 60px -20px var(--shadow-color);border-radius:6px;padding:22px 24px;overflow-y:auto}.csv-import-target{color:var(--ink-muted);margin:0 0 14px;font-size:13px}.csv-import-mapping-grid{grid-template-columns:repeat(3,1fr);gap:10px 14px;margin:14px 0;display:grid}.csv-import-preview-table-wrap{border:1px solid var(--border);border-radius:4px;max-height:220px;margin:14px 0;overflow:auto}.csv-import-row-count{color:var(--ink-faint);padding:6px 10px;font-size:11px}.media-gallery-overlay{z-index:3000;background:var(--scrim-strong);justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.media-gallery-overlay-top{z-index:4100}.media-gallery{background:var(--surface-raised);border:1px solid var(--border);width:100%;max-width:960px;height:100%;max-height:760px;box-shadow:0 24px 60px -20px var(--shadow-color);border-radius:6px;flex-direction:column;display:flex;overflow:hidden}.media-gallery-header{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.media-gallery-actions{flex-shrink:1;justify-content:flex-end;align-items:center;gap:12px;min-width:0;display:inline-flex}.media-gallery-close{flex-shrink:0}.media-gallery-header .analysis-status{text-overflow:ellipsis;white-space:nowrap;max-width:40ch;overflow:hidden}.media-gallery-filename{color:var(--ink-muted);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:13px;overflow:hidden}.media-gallery-body{flex:1;align-items:center;gap:8px;min-height:0;padding:12px;display:flex}.media-gallery-nav{border:1px solid var(--border);background:var(--surface);width:36px;height:36px;color:var(--ink-muted);cursor:pointer;border-radius:50%;flex-shrink:0;font-size:18px}.media-gallery-nav:hover:not(:disabled){color:var(--ink);border-color:var(--ink-faint)}.media-gallery-nav:disabled{opacity:.3;cursor:default}.media-gallery-stage{flex:1;justify-content:center;align-items:center;min-width:0;height:100%;display:flex}.media-gallery-stage img,.media-gallery-stage video{object-fit:contain;max-width:100%;max-height:100%}.media-gallery-stage-document{align-items:stretch}.media-gallery-stage audio{width:min(420px,90%)}.media-gallery-footer{border-top:1px solid var(--border);flex-shrink:0;align-items:center;gap:14px;padding:10px 16px;display:flex}.media-gallery-position{font-family:var(--mono);color:var(--ink-faint);font-size:11px}.media-gallery-meta{color:var(--ink-muted);flex:1;font-size:12px}.leaflet-popup.map-popup .leaflet-popup-content-wrapper{background:var(--surface-raised);color:var(--ink);border:1px solid var(--border);box-shadow:0 20px 44px -16px var(--shadow-color);border-radius:6px}.leaflet-popup.map-popup .leaflet-popup-tip{background:var(--surface-raised)}.leaflet-popup.map-popup .leaflet-popup-close-button{color:var(--ink-faint)}.leaflet-popup.map-popup .leaflet-popup-close-button:hover{color:var(--ink)}.map-note-form{min-width:200px;font-family:var(--sans);flex-direction:column;gap:8px;display:flex}.map-note-form textarea{resize:vertical;width:100%;font:inherit;box-sizing:border-box;background:var(--void);color:var(--ink);border:1px solid var(--border);border-radius:4px;padding:8px 10px;font-size:13px}.map-note-form textarea:focus{border-color:var(--accent);outline:none}.map-note-form select{width:100%;font:inherit;padding:7px 26px 7px 10px;font-size:12.5px}.map-note-readonly-text{white-space:pre-wrap;word-break:break-word;margin:0;font-size:13px}.map-note-meta{color:var(--ink-faint);font-size:11px}.map-note-form-actions{justify-content:flex-end;align-items:center;gap:14px;display:flex}.node-list-view{flex-direction:column;flex:1;min-height:0;display:flex}.node-list-filters{background:var(--surface);border-bottom:1px solid var(--border);color:var(--ink);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:8px;padding:8px 12px;font-size:13px;display:flex}.node-list-chips{flex-wrap:wrap;gap:4px;display:flex}.node-list-chip{border:1px solid var(--border);background:var(--surface);min-height:28px;color:var(--ink-muted);cursor:pointer;border-radius:999px;align-items:center;gap:5px;padding:2px 10px;font-size:12px;display:inline-flex}.node-list-chip[aria-pressed=true]{background:var(--accent-soft);border-color:var(--accent);color:var(--ink)}.node-list-sort{color:inherit;font:inherit;cursor:pointer;background:0 0;border:none;padding:0}.node-list-scroll{background:var(--surface);flex:1;min-height:0;overflow-y:auto}.node-list{border-collapse:collapse;width:100%;color:var(--ink);font-size:13px}.node-list th{background:var(--surface-raised);border-bottom:1px solid var(--border);text-align:left;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-muted);padding:8px 12px;font-size:11.5px;font-weight:600;position:sticky;top:0}.node-list td{border-bottom:1px solid var(--border);vertical-align:top;padding:8px 12px}.node-list tbody tr{cursor:pointer}.node-list tbody tr:hover{background:var(--surface-raised)}.node-list tbody tr.is-selected{background:var(--accent-soft)}.node-list-time{font-family:var(--mono);white-space:nowrap}.node-list-files{white-space:nowrap}.node-list-files span+span{margin-left:4px}.node-list-empty{color:var(--ink-faint);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;display:flex}.map-area.is-list{flex-direction:column;min-width:0;display:flex}.map-area.is-list .map-toolbar{background:var(--surface);border-bottom:1px solid var(--border);max-width:none;padding:10px 14px;position:static}.attached-files{margin:8px 0 0;padding:0;font-size:12px;list-style:none}.attached-files li{justify-content:space-between;align-items:center;gap:8px;padding:3px 0;display:flex}.files-overview-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md,8px);flex-direction:column;gap:14px;margin-bottom:20px;padding:16px;display:flex}.files-overview-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.files-head-summary{flex-wrap:wrap;align-items:center;gap:10px;margin:0;display:flex}.files-summary-total-count{color:var(--ink-muted);margin-right:4px;font-size:13px;font-weight:600}.files-stats{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:0;display:flex}.files-stat{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm,4px);align-items:center;gap:6px;min-width:0;padding:3px 9px;display:inline-flex}button.files-stat{cursor:pointer;font-family:inherit;transition:border-color .15s,background-color .15s}button.files-stat:hover{background:var(--surface-raised);border-color:var(--ink-faint)}button.files-stat.is-active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent-line)}.files-stat-value{font-variant-numeric:tabular-nums;color:var(--ink);font-size:12.5px;font-weight:600}.files-stat-label{color:var(--ink-muted);align-items:center;gap:4px;font-size:12px;display:inline-flex}.files-archive{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md,4px);align-items:center;gap:8px;margin-bottom:0;padding:4px 10px;display:inline-flex}.files-archive-label{text-transform:uppercase;font-size:11px;font-family:var(--mono);letter-spacing:.05em;color:var(--ink-faint)}.files-archive-name{text-overflow:ellipsis;white-space:nowrap;max-width:180px;font-size:12.5px;font-weight:500;overflow:hidden}.files-archive-size{font-family:var(--mono);color:var(--ink-muted);font-size:11.5px}.files-recent{border-top:1px solid var(--border-soft);margin-top:12px;margin-bottom:0;padding-top:12px}.files-recent-title{text-transform:uppercase;letter-spacing:.04em;color:var(--ink-faint);margin-bottom:6px;font-size:11px;font-weight:600}.files-recent ul{color:var(--ink-muted);flex-wrap:wrap;gap:6px 12px;margin:0;padding:0;font-size:12px;list-style:none;display:flex}.files-recent li{background:var(--surface-raised);border-radius:var(--radius-sm,3px);border:1px solid var(--border-soft);cursor:pointer;align-items:center;gap:4px;padding:2px 8px;transition:border-color .15s,color .15s;display:inline-flex}.files-recent li:hover{border-color:var(--ink-faint);color:var(--ink)}.files-recent li .files-name{white-space:nowrap;display:inline}.files-selection-bar,.files-actions{background:var(--surface-raised);border:1px solid var(--accent-line);border-radius:var(--radius-md,4px);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;padding:8px 12px;display:flex}.files-selected-count{font-variant-numeric:tabular-nums;color:var(--ink);margin-right:4px;font-size:13px;font-weight:600}.files-toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px;display:flex}.files-toolbar>.ui-button-group{flex-wrap:wrap;width:100%}.files-search{flex:200px;min-width:200px}.ui-segment.seg-conf-high{color:var(--good)}.ui-segment.seg-conf-high.is-active{background:var(--good-soft);color:var(--good);box-shadow:inset 0 0 0 1px var(--good-line)}.ui-segment.seg-conf-medium{color:var(--warning)}.ui-segment.seg-conf-medium.is-active{background:var(--warning-soft);color:var(--warning);box-shadow:inset 0 0 0 1px var(--warning-line)}.ui-segment.seg-conf-low{color:var(--critical)}.ui-segment.seg-conf-low.is-active{background:var(--critical-soft);color:var(--critical);box-shadow:inset 0 0 0 1px var(--critical-line)}.files-table-container{width:100%;overflow-x:hidden}.files-table{table-layout:fixed;border-collapse:collapse;width:100%;font-size:13px}.files-table th,.files-table td{vertical-align:middle;min-width:0;padding:10px}.files-table th{text-transform:uppercase;letter-spacing:.04em;color:var(--ink-muted);background:var(--surface-raised);border-bottom:1px solid var(--border);-webkit-user-select:none;user-select:none;white-space:nowrap;font-size:11.5px;font-weight:600}.files-col-select{text-align:center;width:38px;padding-left:6px!important;padding-right:6px!important}.files-col-kind{text-align:center;width:34px;padding-left:4px!important;padding-right:4px!important}.files-col-filename{width:38%}.files-col-node{width:28%}.files-col-date{white-space:nowrap;width:115px}.files-col-ai{white-space:nowrap;width:145px}.files-na-pill{color:var(--ink-faint);font-family:var(--mono)}.files-row{cursor:pointer;border-bottom:1px solid var(--border-soft);transition:background .1s}.files-row:last-child{border-bottom:none}.files-row:hover td{background:var(--surface-raised)}.files-name{color:var(--ink);-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;font-weight:500;line-height:1.35;display:-webkit-box;overflow:hidden}.files-node-name{-webkit-line-clamp:2;overflow-wrap:anywhere;color:var(--ink-muted);-webkit-box-orient:vertical;font-size:12.5px;line-height:1.35;display:-webkit-box;overflow:hidden}.files-node-link{color:var(--accent);-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;font-weight:500;line-height:1.35;text-decoration:none;display:-webkit-box;overflow:hidden}.files-node-link:hover{text-decoration:underline}.files-uploader{text-overflow:ellipsis;white-space:nowrap;color:var(--ink-muted);font-size:12.5px;overflow:hidden}.files-date{color:var(--ink-muted);font-size:12px}.files-size{color:var(--ink);font-size:12px;font-weight:500}.files-row-actions{white-space:nowrap;justify-content:flex-end;align-items:center;gap:8px;display:inline-flex}.files-suggestion-pill{background:var(--accent-soft);color:var(--accent);border:1px solid var(--accent-line);cursor:pointer;white-space:nowrap;border-radius:12px;align-items:center;gap:5px;padding:3px 8px;font-size:11.5px;font-weight:600;text-decoration:none;transition:all .15s;display:inline-flex}.files-suggestion-pill:hover{background:var(--accent);color:var(--accent-ink)}.suggestions-table{table-layout:fixed;width:100%}.suggestions-col-file{width:20%}.suggestions-file-btn{text-align:left;max-width:100%;color:var(--ink);align-items:flex-start;gap:6px;display:inline-flex}button.suggestions-file-btn:hover .files-name{color:var(--accent);text-decoration:underline}.suggestions-file-btn svg{flex-shrink:0;margin-top:2px}.suggestions-col-type{white-space:nowrap;width:116px}.suggestions-type-badge{border-radius:var(--radius-sm,4px);background:var(--surface-raised);border:1px solid var(--border);color:var(--ink-muted);align-items:center;padding:2px 7px;font-size:11.5px;font-weight:500;display:inline-flex}.suggestions-col-title{width:24%}.suggestions-title-text{color:var(--ink);-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;font-weight:600;line-height:1.35;display:-webkit-box;overflow:hidden}.suggestions-place-text{color:var(--ink-muted);-webkit-line-clamp:1;overflow-wrap:anywhere;-webkit-box-orient:vertical;margin-top:2px;font-size:12px;display:-webkit-box;overflow:hidden}.suggestions-col-confidence{text-align:center;white-space:nowrap;width:126px}.suggestions-col-quote{width:25%;color:var(--ink-muted);font-size:12.5px}.suggestions-quote-text{-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;line-height:1.38;display:-webkit-box;overflow:hidden}.suggestions-actions-cell{text-align:right;white-space:nowrap;width:184px}.suggestions-toolbar-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-left:auto;display:flex}.suggestions-status-msg{font-size:13px;font-weight:500}.suggestions-status-msg.is-scan{color:var(--accent)}.suggestions-status-msg.is-error{color:var(--critical)}.suggestions-status-msg.is-reset{color:var(--good)}.confirm-dialog.suggestion-detail-dialog{background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-lg,6px);flex-direction:column;gap:16px;width:100%;max-width:580px;max-height:calc(100vh - 40px);padding:20px 24px;display:flex;overflow:hidden auto}.suggestion-detail-header{border-bottom:1px solid var(--border-soft);justify-content:space-between;align-items:center;gap:12px;padding-bottom:12px;display:flex}.suggestion-detail-header h2{color:var(--ink);margin:0;font-size:16px;font-weight:600}.suggestion-detail-context{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius-md,4px);flex-direction:column;gap:10px;padding:12px 14px;display:flex}.suggestion-detail-source{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;display:flex}.suggestion-detail-file{min-width:0;color:var(--ink);flex:180px;align-items:center;gap:6px;font-size:13px;font-weight:600;display:inline-flex}.suggestion-detail-file svg{color:var(--ink-muted);flex-shrink:0}.suggestion-quote-context{background:var(--void);border-radius:var(--radius-sm,3px);border-left:3px solid var(--accent);color:var(--ink);overflow-wrap:anywhere;margin:0;padding:8px 12px;font-size:13px;font-style:italic;line-height:1.5}.suggestion-detail-form{flex-direction:column;gap:12px;display:flex}.suggestion-detail-form label{min-width:0;color:var(--ink-muted);flex-direction:column;gap:5px;font-size:12px;font-weight:500;display:flex}.suggestion-detail-form .ui-field{width:100%;min-height:36px;color:var(--ink);font-size:13px;font-weight:400}.suggestion-detail-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.suggestion-detail-footer{border-top:1px solid var(--border-soft);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding-top:14px;display:flex}.suggestion-detail-actions-right{flex-wrap:wrap;align-items:center;gap:8px;margin-left:auto;display:flex}@media (width<=520px){.confirm-dialog.suggestion-detail-dialog{padding:16px}.suggestion-detail-grid{grid-template-columns:1fr}}.app-page-body.wide.suggestions-page-body{max-width:1120px}.files-status-pill{background:var(--surface-raised);border:1px solid var(--border-soft);color:var(--ink-muted);white-space:nowrap;border-radius:10px;align-items:center;gap:4px;padding:2px 7px;font-size:11px;display:inline-flex}.files-status-pill.is-failed{color:var(--critical);background:var(--critical-soft);border-color:var(--critical-line)}.files-to-node-btn{color:var(--ink-muted);border:1px solid var(--border-soft);background:var(--surface);border-radius:4px;padding:3px 8px;font-size:12px;text-decoration:none;transition:all .15s}.files-to-node-btn:hover{color:var(--ink);background:var(--surface-raised);border-color:var(--border)}.move-node-list{border:1px solid var(--border-soft);border-radius:4px;max-height:260px;margin:12px 0;padding:0;list-style:none;overflow-y:auto}.move-node-list button{text-align:left;border:0;border-bottom:1px solid var(--border-soft);width:100%;color:var(--ink);cursor:pointer;background:0 0;padding:8px 10px;font-family:inherit;font-size:13px}.move-node-list button:last-child{border-bottom:none}.move-node-list button:hover:not(:disabled){background:var(--surface-raised)}.analysis-control{white-space:nowrap;align-items:center;gap:.5rem;font-weight:400;display:inline-flex}.analysis-control .link-button{background:var(--accent-soft);color:var(--accent);border:1px solid var(--accent-line);white-space:nowrap;border-radius:12px;align-items:center;padding:3px 8px;font-size:11.5px;font-weight:600;text-decoration:none;transition:all .15s;display:inline-flex}.analysis-control .link-button:hover{background:var(--accent);color:var(--accent-ink)}.files-actions-cell{text-align:right;white-space:nowrap}.files-row-actions{justify-content:flex-end;align-items:center;gap:.75rem;display:inline-flex}.analysis-status{opacity:.8;font-size:.85em}.analysis-failed{color:var(--danger,#c0392b);opacity:1}.suggestions-panel{z-index:2500;box-sizing:border-box;background:var(--surface-raised);border-left:1px solid var(--border);width:min(440px,100vw);box-shadow:-20px 0 44px -16px var(--shadow-color);padding:18px;position:fixed;top:0;bottom:0;right:0;overflow-y:auto}.suggestions-panel-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.suggestions-panel-header h2{margin:0;font-size:16px}.suggestions-panel-file{font-family:var(--mono);color:var(--ink-faint);word-break:break-all;margin-top:4px;font-size:12px}.suggestions-panel-toolbar{align-items:center;gap:12px;margin:14px 0 8px;display:flex}.suggestions-panel-result{color:var(--ink-muted);font-size:12px}.suggestions-list{flex-direction:column;gap:14px;margin:0;padding:0;list-style:none;display:flex}.suggestion-card{border:1px solid var(--border);background:var(--surface-hairline);border-radius:6px;padding:12px}.suggestion-card .ai-confidence-row{margin-bottom:8px}.suggestion-quote{color:var(--ink-muted);margin:0 0 12px;font-size:13px;font-style:italic}.testimony-check-all{flex-wrap:wrap;align-items:center;gap:8px;margin-left:auto;font-size:13px;display:flex}.testimony-check-all label{color:var(--ink-muted);align-items:center;gap:6px;display:inline-flex}.testimony-check{border-top:1px solid var(--border-soft);margin-top:10px;padding-top:10px}.testimony-check-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.testimony-check-toggle{font-size:13px}.testimony-findings{margin-top:8px}.testimony-findings-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.testimony-finding{border:1px solid var(--border);border-left:3px solid var(--good);background:var(--surface);border-radius:4px;padding:10px 12px}.testimony-finding .ai-confidence-row{margin-bottom:6px}.testimony-finding.is-contradicts{border-left-color:var(--critical)}.testimony-finding-head{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.testimony-finding-node{min-width:0;color:var(--accent);flex-wrap:wrap;gap:6px;font-size:13px;text-decoration:none;display:inline-flex}.testimony-finding-node-label{overflow-wrap:anywhere;font-weight:600}a.testimony-finding-node:hover .testimony-finding-node-label{text-decoration:underline}.testimony-finding-node-time{color:var(--ink-faint);font-family:var(--mono);font-size:12px}.testimony-finding-node.is-gone{color:var(--ink-faint);font-style:italic}.testimony-finding-reasoning{color:var(--ink);overflow-wrap:anywhere;margin:8px 0 4px;font-size:13px}.testimony-finding-quote{color:var(--ink-muted);overflow-wrap:anywhere;margin:0 0 8px;font-size:13px}.testimony-finding-quote mark{background:var(--warning-line);color:var(--ink);padding:0 1px}.testimony-finding-actions{gap:8px;display:flex}.connections-section{border-top:1px solid var(--border);margin-top:18px;padding-top:14px}.connections-title{text-transform:uppercase;letter-spacing:.05em;color:var(--accent);margin-bottom:10px;font-size:11.5px;font-weight:700;display:block}.connections-list{flex-direction:column;gap:8px;margin:0 0 10px;padding:0;list-style:none;display:flex}.connection-row{border:1px solid var(--border);background:var(--surface);border-radius:4px;padding:8px 10px}.connection-row-head{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.connection-kind-badge{border:1px solid var(--border);color:var(--ink);white-space:nowrap;border-left-width:4px;border-radius:3px;padding:1px 6px;font-size:11px}.connection-other{min-width:0;color:var(--accent);text-align:left;cursor:pointer;background:0 0;border:none;flex-wrap:wrap;gap:6px;padding:0;font-size:13px;display:inline-flex}.connection-other-label{overflow-wrap:anywhere;font-weight:600}.connection-other:hover .connection-other-label{text-decoration:underline}.connection-other-time{color:var(--ink-faint);font-family:var(--mono);font-size:12px}.connection-note{color:var(--ink-muted);white-space:pre-wrap;overflow-wrap:anywhere;margin:6px 0 0;font-size:13px}.connection-row-actions{gap:12px;margin-top:6px;display:flex}.link-button.danger-link{color:var(--critical)}.connection-form{flex-direction:column;margin-top:8px;display:flex}.connection-form>label{margin-bottom:4px}.connection-form>input{margin-top:0;margin-bottom:8px}.connection-results{border:1px solid var(--border);border-radius:4px;max-height:220px;margin:0 0 8px;padding:0;list-style:none;overflow-y:auto}.connection-results li+li{border-top:1px solid var(--border)}.connection-results .connection-other{width:100%;padding:6px 8px}.connection-target{color:var(--ink-muted);margin-bottom:10px;font-size:13px}.connection-kind-row{align-items:flex-end;gap:10px;display:flex}.connection-kind-row>label{flex:1}.connection-kind-row>.link-button{white-space:nowrap;margin-bottom:20px}.connection-direction{color:var(--ink-muted);flex-wrap:wrap;align-items:center;gap:6px 10px;margin:0 0 10px;font-size:13px;display:flex}.connection-inline-check{color:var(--ink);cursor:pointer;align-items:center;gap:6px;margin-bottom:0;font-size:13px;font-weight:400;display:inline-flex}.connection-inline-check input{width:auto;margin:0;display:inline-block}.connection-kind-form{border:1px solid var(--border);border-radius:4px;flex-direction:column;gap:8px;margin-bottom:12px;padding:10px;display:flex}.connection-kind-form-row{gap:10px;display:flex}.connection-kind-form-row>label{flex:1;margin-bottom:0}.connection-kind-form-row>.connection-kind-color{flex:0 0 72px}.connection-kind-color input{height:36px;padding:2px}.connection-form-actions{gap:8px;display:flex}.connections-add{align-self:flex-start}.leaflet-marker-icon.connection-arrow{pointer-events:none;background:0 0;border:none}.leaflet-pane.leaflet-route-halos-pane{mix-blend-mode:multiply;pointer-events:none}.connection-popup{min-width:200px;font-family:var(--sans);flex-direction:column;gap:5px;display:flex}.connection-popup-kind{border:1.5px solid;border-radius:10px;align-self:flex-start;padding:1px 7px;font-size:12px;font-weight:600}.connection-popup-point{flex-direction:column;gap:1px;font-size:12px;display:flex}.connection-popup-role{color:var(--ink-faint);letter-spacing:.06em;text-transform:uppercase;font-size:10px}.connection-popup-label{overflow-wrap:anywhere;font-weight:600}.connection-popup-time{color:var(--ink-muted);font-size:11px}.connection-popup-note{color:var(--ink-muted);white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px}.connection-hidden{color:var(--ink-faint);font-size:12px;font-style:italic}.connection-other:disabled{color:var(--ink-faint);cursor:not-allowed}.connection-other:disabled:hover .connection-other-label{text-decoration:none}.connection-suggest{border-top:1px dashed var(--border);margin-top:14px;padding-top:12px}.connection-suggest-row{flex-wrap:wrap;align-items:center;gap:8px 10px;display:flex}.connection-suggest-window,.node-panel .connection-suggest-window{color:var(--ink-muted);align-items:center;gap:6px;margin:0;font-size:12px;font-weight:400;display:inline-flex}.node-panel .connection-suggest-window>.ui-select,.testimony-check-all .window-select{min-width:0;margin:0;font-size:12px}.connection-suggest-window select,.node-panel .connection-suggest-window select{width:auto;margin:0;padding:4px 24px 4px 8px;font-size:12px;display:inline-block}.connection-suggest-toggle{margin-top:10px;font-size:13px;display:block}.connection-suggestions{flex-direction:column;gap:8px;margin:8px 0 0;padding:0;list-style:none;display:flex}.connection-suggestion{border:1px solid var(--border);border-left:3px solid var(--border);background:var(--surface);border-radius:4px;padding:8px 10px}.connection-suggestion-reasoning{color:var(--ink);overflow-wrap:anywhere;margin:6px 0 8px;font-size:13px}.connection-suggestion .ai-confidence-row{margin-bottom:6px}.connection-suggestion-actions{gap:8px;display:flex}.connection-other.is-gone{color:var(--ink-faint);cursor:default;font-style:italic}.case-connections-panel{box-sizing:border-box;width:min(400px,100vw - 28px);max-height:calc(100vh - 160px);overflow-y:auto}.case-connections-head{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.case-connections-panel .case-connections-head .options-section-title{margin:0}.case-connections-panel .options-hint{margin:8px 0 10px}.case-connections-start{margin-top:10px}.case-connections-message{margin-top:8px}.case-connections-progress{flex-wrap:wrap;align-items:center;gap:8px;margin:12px 0 4px;display:flex}.case-connections-progress progress{height:6px;accent-color:var(--accent);flex:100%}.case-connections-panel .options-section-title{margin-top:16px}.map-area.is-list .map-toolbar{position:relative;top:0;left:0}@media (width<=640px){:is(.map-chip-group:has(>.case-connections-panel),.map-chip-group:has(>.map-style-panel)){position:static}.case-connections-panel{width:min(400px,100vw - 72px)}}.connection-other-case{color:var(--ink-muted);font-size:12px}a.connection-other{text-decoration:none}a.connection-other:hover .connection-other-label{text-decoration:underline}.connection-popup-case{color:var(--ink-muted);font-size:11px}.connection-form>.connection-case-select{margin-bottom:8px;display:flex}.graph-view{background:var(--void);flex:1;min-height:0;position:relative}.graph-canvas{position:absolute;inset:0}.graph-canvas:focus{outline:none}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.graph-bar{z-index:2;pointer-events:none;flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex;position:absolute;top:12px;left:14px;right:14px}.graph-toggle,.graph-rearrange,.graph-notice{pointer-events:auto}.graph-toggle{gap:8px}.graph-notice{border-radius:var(--radius-md,6px);border:1px solid var(--warning-line);background:var(--warning-soft);color:var(--ink);align-items:center;padding:6px 12px;font-size:12px;display:inline-flex}.graph-status{z-index:1;text-align:center;color:var(--ink-muted);pointer-events:none;justify-content:center;align-items:center;padding:0 24px;font-size:14px;display:flex;position:absolute;inset:0}.graph-status.is-error{color:var(--critical)}.graph-legend{z-index:3}.legend-line{flex-shrink:0}.legend-dot-faded{background:var(--ink-faint);opacity:.6;border:1px dashed var(--ink-muted)}.timeline-journey{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.legend-icon-button{width:20px;height:20px;color:var(--ink-muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.legend-icon-button:hover:not(:disabled){color:var(--ink);border-color:var(--border)}.legend-route-edit{border-top:1px solid var(--border-soft);border-bottom:1px solid var(--border-soft);flex-direction:column;gap:6px;margin:4px 0;padding:6px 0;display:flex}.legend-route-edit label{color:var(--ink-muted);justify-content:space-between;align-items:center;gap:8px;display:flex}.legend-route-edit input:not([type=color]){width:140px;min-width:0}.legend-route-edit input[type=color]{width:36px;height:22px;padding:0}.legend-route-actions{gap:6px;display:flex}.legend-route-error{white-space:normal;max-width:220px}.connection-kinds-dialog{width:100%;max-width:460px;max-height:85vh;overflow-y:auto}.connection-kinds-dialog h3{color:var(--ink);margin:0 0 16px;font-size:15px;font-weight:600}.connection-kinds-dialog-list{flex-direction:column;gap:6px;margin:0 0 20px;padding:0;list-style:none;display:flex}.connection-kinds-dialog-row{background:var(--surface);border:1px solid var(--border-soft);border-radius:4px;flex-direction:column;padding:8px 10px;display:flex}.connection-kinds-dialog-row-main{align-items:center;gap:10px;min-height:24px;display:flex}.connection-kinds-dialog-row-main .connection-kind-name{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:13px;overflow:hidden}.connection-kind-directed-badge{flex-shrink:0;font-size:10px}.connection-kind-actions{flex-shrink:0;align-items:center;gap:4px;display:flex}.connection-kinds-dialog-edit{flex-direction:column;gap:8px;display:flex}@media (width<=768px){.breadcrumb-link,.profile-menu,.icon-btn.nav-action,a.case-nav-subview-btn,.legend-toggle,.legend-manage-kinds,.legend-icon-button,.node-list-chip,.node-list-sort,.sidebar-pagination button,.recent-see-all,.files-stat,.files-kind-chip,.files-search,.files-node-link,.settings-card-toggle,.link-button,button.btn-secondary,button.btn-accent,button.small,input:not([type=checkbox],[type=radio],[type=range],[type=file],[type=color]),select{min-height:44px}.breadcrumb-link,.link-button,.recent-see-all,.files-node-link{align-items:center;display:inline-flex}.leaflet-touch .leaflet-bar a,.leaflet-bar a{width:44px;height:44px;line-height:44px}.help-fab-wrap .help-fab{width:44px;height:44px}}.suggestions-table .ai-confidence-row{flex-direction:column;align-items:center;gap:2px;display:flex}.suggestions-table .ai-confidence-badge.ai-ocr-badge{margin:0}.map-area.is-drawing .leaflet-container,.map-area.is-drawing .leaflet-grab,.map-area.is-drawing .leaflet-dragging .leaflet-grab,.map-area.is-drawing .leaflet-interactive{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath d='M3 21l3.5-.8L19 7.7 16.3 5 3.8 17.5z' fill='%23fff' stroke='%23000' stroke-width='1.5' stroke-linejoin='round'/%3E%3Cpath d='M16.3 5l1.4-1.4a1.9 1.9 0 012.7 2.7L19 7.7z' fill='%23000'/%3E%3C/svg%3E") 3 21,crosshair}.draw-color-popup{z-index:500;background:var(--surface-raised);border:1px solid var(--accent-line);width:fit-content;box-shadow:0 12px 30px -12px var(--shadow-color);border-radius:12px;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;margin:0 auto;padding:8px;display:flex;position:absolute;bottom:88px;left:14px;right:14px}.draw-color-option,.draw-color-custom{border:2px solid var(--shadow-color);cursor:pointer;appearance:none;background:0 0;border-radius:50%;width:32px;height:32px;padding:0;overflow:hidden}.draw-color-custom::-webkit-color-swatch-wrapper{padding:0}.draw-color-custom::-webkit-color-swatch{border:none;border-radius:50%}.draw-color-custom::-moz-color-swatch{border:none;border-radius:50%}.draw-color-option[aria-pressed=true]{border-color:var(--ink)}.draw-eraser[aria-pressed=true]{background:var(--accent-soft);color:var(--accent)}.draw-color-option:focus-visible,.draw-color-custom:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (pointer:coarse){.draw-color-option,.draw-color-custom{width:44px;height:44px}}.case-select-col{text-align:center}.confirm-dialog.is-wide{max-width:600px}.attach-search{width:100%;margin-bottom:8px}.ui-button.is-danger-text{color:var(--critical)}.case-file-btn{gap:6px}@media (width<=760px){.case-file-btn-label{display:none}}.node-panel-topbar{justify-content:space-between;align-items:center;gap:8px;margin:-4px 0 10px;display:flex}.node-panel-kind{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);align-items:center;gap:6px;font-size:10.5px;font-weight:600;display:inline-flex}.node-panel-topbar-actions{align-items:center;gap:2px;display:flex}.node-panel-nav-position{text-align:center;min-width:44px;color:var(--ink-faint);font-variant-numeric:tabular-nums;font-size:11.5px}.node-panel-hero{margin-bottom:6px}.node-panel .node-panel-title-field{margin:0}.node-panel input.node-panel-title-input{width:calc(100% + 7px);font-family:var(--serif);color:var(--ink);background:0 0;border:1px solid #0000;margin:0 0 0 -7px;padding:4px 6px;font-size:20px;font-weight:500}.node-panel input.node-panel-title-input:hover{border-color:var(--border)}.node-panel input.node-panel-title-input:focus{border-color:var(--accent);background:var(--void)}.node-panel-summary{color:var(--ink-muted);flex-wrap:wrap;gap:4px 12px;font-size:12px;display:flex}.node-panel-summary>span+span:before{content:"·";color:var(--ink-faint);margin-right:12px}.node-panel-summary-warn{color:var(--warning)}.node-panel details.node-panel-section{margin-top:10px;padding-top:0}.node-panel details.node-panel-section>summary{cursor:pointer;align-items:center;gap:8px;min-height:36px;margin:0;padding-top:6px;list-style:none;display:flex}.node-panel details.node-panel-section>summary::-webkit-details-marker{display:none}.node-panel details.node-panel-section>summary:after{content:"";border-right:1.5px solid var(--ink-faint);border-bottom:1.5px solid var(--ink-faint);width:7px;height:7px;margin-left:auto;transition:transform .15s;transform:rotate(-45deg)}.node-panel details.node-panel-section[open]>summary:after{transform:rotate(45deg)}.node-panel details.node-panel-section>summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.node-panel-count{background:var(--surface);color:var(--ink-muted);letter-spacing:0;border-radius:999px;padding:0 6px;font-size:10.5px}.node-panel-section-value{text-overflow:ellipsis;white-space:nowrap;letter-spacing:0;text-transform:none;min-width:0;color:var(--ink-muted);font-size:12px;font-weight:400;overflow:hidden}details[open]>summary>.node-panel-section-value{display:none}.node-panel-section-body{padding-top:4px}.node-panel-location{flex-wrap:wrap;align-items:center;gap:6px 10px;margin-bottom:8px;display:flex}.node-panel-location .options-hint{margin:0}.node-panel-sub>summary{color:var(--ink-muted);cursor:pointer;margin-bottom:8px;font-size:12px}@media (prefers-reduced-motion:reduce){.node-panel details.node-panel-section>summary:after{transition:none}}.node-panel-header{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.node-panel-header strong{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);font-size:10.5px;font-weight:600}.timeline-title-text{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.timeline-meta{min-width:0;color:var(--ink-faint);align-items:center;gap:4px 10px;margin-top:3px;padding-left:22px;font-size:11px;display:flex}.timeline-meta>span+span:before{content:"·";margin-right:10px}.timeline-tag-dot{border-radius:50%;width:8px;height:8px}.timeline-note-flag{color:var(--ink-faint);display:inline-flex}.node-list-search{min-height:var(--control-h-md);flex:0 260px}.node-list-filter-menu{position:relative}.node-list-filter-menu>summary{gap:6px;list-style:none}.node-list-filter-menu>summary::-webkit-details-marker{display:none}.node-list-filter-count{background:var(--accent);color:var(--accent-ink);border-radius:999px;padding:0 6px;font-size:10.5px;font-weight:700}.node-list-filter-panel{z-index:950;background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-md);width:min(420px,100vw - 32px);box-shadow:0 20px 44px -16px var(--shadow-color);gap:14px;padding:14px;display:grid;position:absolute;top:calc(100% + 6px);left:0}.node-list-filter-group{gap:6px;display:grid}.node-list-filter-label{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);font-size:10.5px;font-weight:600}.node-list-pill{border:1px solid var(--accent-line);background:var(--accent-soft);min-height:26px;color:var(--ink);font:inherit;cursor:pointer;border-radius:999px;align-items:center;gap:4px;padding:0 10px;font-size:12px;display:inline-flex}.node-list-pill:hover{border-color:var(--accent)}@media (pointer:coarse){.node-list-pill,.node-list-chip{min-height:44px}}.auth-page{background:var(--void);width:100%;min-height:100vh;font-family:var(--sans);box-sizing:border-box;justify-content:center;align-items:center;padding:24px;display:flex}.auth-card{background:var(--surface);border:1px solid var(--border);box-sizing:border-box;border-radius:6px;width:100%;max-width:380px;padding:30px 28px 26px;box-shadow:0 24px 60px -20px #0009}.auth-card h1{font-family:var(--serif);color:var(--ink);margin:0 0 6px;font-size:21px;font-weight:500}.auth-subtitle{color:var(--ink-muted);margin:0 0 22px;font-size:13px;line-height:1.55}.auth-field{letter-spacing:.02em;color:var(--ink-faint);margin-bottom:16px;font-size:11.5px;font-weight:600;display:block}.auth-field .ui-segmented{width:fit-content;margin-top:6px;display:flex}.auth-field input,.auth-field select{box-sizing:border-box;background:var(--void);border:1px solid var(--border);width:100%;color:var(--ink);border-radius:4px;margin-top:6px;padding:9px 11px;font-family:inherit;font-size:14px;display:block}.auth-field select{padding-right:30px}.auth-field input:hover:not(:disabled),.auth-field select:hover:not(:disabled){border-color:var(--ink-faint)}.auth-field input:focus,.auth-field select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.auth-field input:disabled{opacity:.6;cursor:not-allowed}.auth-actions{margin-top:20px}.auth-actions button{background:var(--accent);width:100%;color:var(--accent-ink);letter-spacing:.01em;cursor:pointer;border:1px solid #0000;border-radius:3px;padding:11px;font-size:13.5px;font-weight:600}.auth-actions button:hover:not(:disabled){background:var(--accent-hover)}.auth-actions button:disabled{background:var(--surface-raised);border-color:var(--border);color:var(--ink-muted);cursor:not-allowed}.auth-sso-btn{box-sizing:border-box;background:var(--accent);width:100%;color:var(--accent-ink);letter-spacing:.01em;text-align:center;cursor:pointer;border:1px solid #0000;border-radius:3px;padding:11px;font-size:13.5px;font-weight:600;text-decoration:none;display:block}.auth-sso-btn:hover{background:var(--accent-hover)}.auth-sso-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.auth-divider{color:var(--ink-faint);text-transform:uppercase;letter-spacing:.06em;align-items:center;gap:10px;margin:20px 0;font-size:11.5px;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--border);flex:1;height:1px}.auth-notice{background:var(--surface-raised);color:var(--ink-muted);border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:4px;margin-top:16px;padding:9px 11px;font-size:13px;line-height:1.5}.auth-hint{color:var(--ink-faint);text-align:center;margin-top:16px;font-size:12px}.auth-qr{justify-content:center;margin:14px 0;display:flex}.auth-qr img{border:1px solid var(--border);background:#fff;border-radius:4px;width:176px;height:176px;padding:6px}.auth-secret{font-family:var(--mono);text-align:center;background:var(--void);border:1px solid var(--border);word-break:break-all;color:var(--ink);border-radius:4px;margin-bottom:16px;padding:9px;font-size:13px}.recovery-codes-grid{font-family:var(--mono);background:var(--void);border:1px solid var(--border);color:var(--ink);border-radius:4px;grid-template-columns:1fr 1fr;gap:7px;margin:16px 0;padding:14px;font-size:13px;display:grid}.app-page{box-sizing:border-box;width:100%;min-height:100vh;font-family:var(--sans);background:var(--void);color:var(--ink)}.app-page-header{background:var(--surface);border-bottom:1px solid var(--border);align-items:center;gap:16px;padding:12px 20px;display:flex}.app-page-header h1{font-family:var(--sans);color:var(--ink);flex:1;margin:0;font-size:16px;font-weight:600}.app-page-header a,.app-page-header button{color:var(--ink-muted);border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:4px;padding:7px 13px;font-family:inherit;font-size:12.5px;text-decoration:none}.app-page-header a:hover,.app-page-header button:hover{color:var(--ink);border-color:var(--ink-faint)}.app-page-body{max-width:720px;margin:0 auto;padding:32px 20px 70px}.app-page-body.wide{max-width:1120px}.settings-card{background:var(--surface);border:1px solid var(--border);border-radius:6px;margin-bottom:20px;padding:22px 24px}.settings-card h2{font-family:var(--sans);color:var(--ink);margin:0 0 16px;font-size:15px;font-weight:600}.settings-card .auth-field{max-width:360px}.profile-page-body .settings-card{box-shadow:0 1px 0 var(--border-soft);border-radius:10px;transition:border-color .15s}.profile-page-body .settings-card:hover{border-color:var(--ink-faint)}.profile-page-body .settings-card .auth-actions button{border-radius:6px;width:auto;min-width:140px;padding:9px 18px}.settings-row{border-bottom:1px solid var(--border-soft);color:var(--ink-muted);justify-content:space-between;align-items:center;gap:12px;padding:9px 0;font-size:13px;display:flex}.settings-row:last-child{border-bottom:none}.online-users-list{margin:4px 0 0;padding:0;list-style:none}.online-users-list li{border-bottom:1px solid var(--border-soft);color:var(--ink);justify-content:space-between;align-items:center;gap:12px;padding:8px 0;font-size:13px;display:flex}.online-users-list li:last-child{border-bottom:none}.online-users-time{font-family:var(--mono);color:var(--ink-faint);font-size:11px}.pill{font-family:var(--mono);letter-spacing:.03em;background:var(--surface-raised);color:var(--ink-muted);border:1px solid var(--border);white-space:nowrap;border-radius:2px;padding:2.5px 9px;font-size:10.5px;display:inline-block}.pill.on{background:var(--good-soft);color:var(--good);border-color:var(--good-line)}.pill.off{background:var(--critical-soft);color:var(--critical);border-color:var(--critical-line)}.data-table{border-collapse:collapse;width:100%;font-size:13px}.data-table th,.data-table td{text-align:left;border-bottom:1px solid var(--border-soft);padding:9px 11px}.data-table th{color:var(--ink-muted);letter-spacing:.04em;text-transform:uppercase;font-size:11.5px;font-weight:600}.data-table td{color:var(--ink)}.sortable-th{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.sortable-th:hover{color:var(--ink-muted)}.sortable-th.active{color:var(--accent)}.sort-arrow{width:10px;margin-left:4px;font-size:9px;display:inline-block}.table-search{background:var(--void);border:1px solid var(--border);color:var(--ink);border-radius:4px;min-width:200px;padding:6px 10px;font-family:inherit;font-size:13px}.table-search:focus{border-color:var(--accent)}.audit-log-toolbar{justify-content:flex-end;align-items:center;gap:8px;margin-bottom:14px;display:flex}.data-table tr.inactive{opacity:.45}.settings-card-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.settings-card-head h2{margin:0}.settings-card-head-actions{align-items:center;gap:16px;display:flex}.settings-card-collapsed .settings-card-head{margin-bottom:0}.cases-head{min-height:var(--control-h-md);margin-bottom:14px}.cases-summary{color:var(--ink-muted);margin:0;font-size:13px}.cases-actions-right{align-items:center;gap:10px;display:flex}.cases-toolbar{gap:10px;margin-bottom:12px}.cases-toolbar .ui-button-group{flex-wrap:wrap}.case-assignee{white-space:nowrap;align-items:center;gap:7px;display:inline-flex}@media (width>=769px){.cases-table .case-name-link{white-space:nowrap}}.case-assignee-avatar{width:20px;height:20px;color:var(--ink);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:10.5px;font-weight:700;display:inline-flex;overflow:hidden}.case-assignee-avatar img{object-fit:cover;width:100%;height:100%}.case-active-cell{align-items:center;gap:8px;display:flex}.page-action-btn{background:var(--accent);color:var(--accent-ink);cursor:pointer;letter-spacing:.01em;border:1px solid #0000;border-radius:3px;padding:8px 14px;font-family:inherit;font-size:13px;font-weight:600}.page-action-btn:hover:not(:disabled){background:var(--accent-hover)}.page-action-btn:disabled{opacity:.45;cursor:not-allowed}.settings-card-toggle{color:var(--ink-faint);cursor:pointer;background:0 0;border:none;padding:2px 4px;font-size:11px;line-height:1}.settings-card-toggle:hover{color:var(--ink-muted)}.date-range-field{color:var(--ink-muted);white-space:nowrap;align-items:center;gap:6px;font-size:12px;display:flex}.date-range-field input[type=date]{background:var(--void);border:1px solid var(--border);color:var(--ink);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;border-radius:4px;padding:5px 8px;font-family:inherit;font-size:12.5px}.data-table th.case-select-col,.data-table td.case-select-col{text-align:center;vertical-align:middle;width:100px;min-width:100px;max-width:100px;padding:6px 8px}.case-select-col .ui-button,.case-select-col .link-button{white-space:nowrap;text-overflow:ellipsis;width:90px;min-width:90px;max-width:90px;height:26px;min-height:26px;padding:0 4px;font-size:11.5px;display:inline-flex;overflow:hidden}.case-select-indicator{border:1px solid var(--border);width:18px;height:18px;color:var(--accent-ink);border-radius:4px;justify-content:center;align-items:center;font-size:11px;font-weight:700;display:inline-flex}.case-row-selectable{cursor:pointer}.case-row-selectable:hover{background:var(--surface-raised)}.case-row-selectable.selected{background:var(--accent-soft)}.case-row-selectable.selected .case-select-indicator{background:var(--accent);border-color:var(--accent)}.scroll-table{border:1px solid var(--border-soft);border-radius:4px;max-height:420px;overflow:auto}.scroll-table .data-table{margin:0}.scroll-table .data-table th{background:var(--surface);z-index:1;position:sticky;top:0}.audit-compact{max-height:none;overflow:hidden}.audit-compact .data-table{table-layout:fixed}.audit-compact .data-table th,.audit-compact .data-table td{text-overflow:ellipsis;white-space:nowrap;padding:6px 10px;overflow:hidden}.audit-compact .data-table th:first-child{width:176px}.audit-compact .data-table th:nth-child(2){width:16%}.audit-compact .data-table th:nth-child(3),.audit-compact .data-table th:nth-child(4){width:21%}@media (width<=768px){.audit-compact{overflow-x:auto}.audit-compact .data-table{min-width:640px}}.sessions-table td{white-space:nowrap}.audit-event-badge{border-radius:var(--radius-sm);background:var(--surface-raised);border:1px solid var(--border);color:var(--ink-muted);white-space:nowrap;padding:2px 7px;font-size:11px;display:inline-block}.audit-event-badge.is-auth{background:var(--accent-soft);color:var(--accent);border-color:#0000}.audit-event-badge.is-data{background:var(--good-soft);color:var(--good);border-color:#0000}.audit-event-badge.is-danger{background:var(--critical-soft);color:var(--critical);border-color:#0000}.audit-integrity{align-items:center;gap:var(--space-md);margin-bottom:var(--space-md);padding:var(--space-md) var(--space-lg);border-left:3px solid var(--good);display:flex}.audit-integrity.is-invalid{border-left-color:var(--critical)}.audit-integrity strong{color:var(--ink);font-size:14px;display:block}.audit-integrity p{color:var(--ink-muted);margin:2px 0 0;font-size:12.5px}.audit-integrity-icon{background:var(--good-soft);color:var(--good);border-radius:50%;padding:9px;display:inline-flex}.audit-integrity.is-invalid .audit-integrity-icon{background:var(--critical-soft);color:var(--critical)}.audit-toolbar{justify-content:space-between;align-items:center;gap:var(--space-sm);margin-bottom:var(--space-md);flex-wrap:wrap;display:flex}.audit-search{flex:260px;max-width:420px}.audit-actor{align-items:center;gap:8px;display:inline-flex}.audit-actor.is-system{color:var(--ink-faint)}.inline-actions{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.inline-actions button:not(.ui-select-trigger,.ui-segment){border:1px solid var(--border);background:var(--surface-raised);color:var(--ink-muted);cursor:pointer;white-space:nowrap;border-radius:4px;padding:5px 10px;font-family:inherit;font-size:12px}@media (width<=768px){.inline-actions button:not(.ui-select-trigger,.ui-segment){align-items:center;min-height:44px;padding:8px 12px;display:inline-flex}}.inline-actions button:not(.ui-select-trigger,.ui-segment):hover{color:var(--ink);border-color:var(--ink-faint)}.inline-actions button:not(.ui-select-trigger,.ui-segment).danger{background:var(--critical-soft);border-color:var(--critical-line);color:var(--critical)}.case-name-link{color:var(--ink);cursor:pointer;text-align:left;background:0 0;border:none;padding:0;font-family:inherit;font-size:13px;font-weight:600}.case-name-link:hover{color:var(--accent);text-decoration:underline}.data-table input{background:var(--void);border:1px solid var(--accent);color:var(--ink);border-radius:4px;padding:5px 8px;font-family:inherit;font-size:13px}.node-meta{font-family:var(--mono);color:var(--ink-faint);margin-bottom:14px;font-size:11px;line-height:1.6}.avatar-row{align-items:center;gap:18px;margin-bottom:14px;display:flex}.avatar-badge{border:2px solid var(--accent);background:var(--surface);border-radius:50%;flex-shrink:0;padding:3px}.avatar-badge img.avatar-preview{display:block}.profile-identity{flex-direction:column;align-items:flex-start;gap:4px;min-width:0;display:flex}.profile-identity-name{color:var(--ink);font-size:16px;font-weight:600}.profile-identity-email{color:var(--ink-muted);word-break:break-all;font-size:12.5px}.profile-role-pill{color:var(--accent);background:var(--accent-soft);border-color:var(--accent);margin-top:4px}.avatar-actions{border-bottom:1px solid var(--border-soft);flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:18px;padding-bottom:18px;display:flex}.avatar-hint{color:var(--ink-faint);font-size:11.5px}.avatar-preview{object-fit:cover;background:var(--surface-raised);border:1px solid var(--border);border-radius:50%;flex-shrink:0;width:72px;height:72px}.avatar-placeholder{font-family:var(--serif);color:var(--ink-muted);justify-content:center;align-items:center;font-size:24px;font-weight:500;display:flex}.account-avatar{object-fit:cover;vertical-align:middle;border-radius:50%;width:24px;height:24px}.global-upload-indicator{z-index:2000;width:320px;position:fixed;bottom:20px;right:20px}.global-upload-indicator.global-upload-error{background:var(--surface-overlay);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--critical-line);color:var(--critical);border-radius:var(--radius-md,8px);box-shadow:0 20px 44px -16px var(--shadow-color);padding:13px 16px;font-size:12.5px}.global-upload-error{justify-content:space-between;align-items:center;gap:12px;display:flex}.global-upload-indicator .link-button{color:var(--ink-muted)}.global-dropzone-overlay{z-index:3000;pointer-events:none;background:#0a0e14d1;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.global-dropzone-box{border:1.5px dashed var(--accent);background:var(--surface-raised);color:var(--ink);text-align:center;border-radius:10px;padding:40px 64px}.global-dropzone-icon{background:var(--accent-soft);width:56px;height:56px;color:var(--accent);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 16px;font-size:24px;display:flex}.global-dropzone-title{font-family:var(--serif);margin-bottom:6px;font-size:18px}.global-dropzone-hint{color:var(--ink-muted);font-size:13px}.dropzone{border:1.5px dashed var(--border);background:var(--surface);text-align:center;cursor:pointer;border-radius:8px;padding:32px 24px;transition:border-color .15s,background .15s}.dropzone:hover:not(.is-disabled){border-color:var(--ink-faint)}.dropzone.is-dragging{border-color:var(--accent);background:var(--accent-soft)}.dropzone.is-disabled{cursor:not-allowed;opacity:.5}.dropzone-icon{background:var(--accent-soft);width:44px;height:44px;color:var(--accent);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 12px;font-size:19px;display:flex}.dropzone-title{color:var(--ink);margin-bottom:4px;font-size:14px}.dropzone-hint{color:var(--ink-muted);font-size:12px;line-height:1.5}.dropzone-browse{color:var(--accent);margin-top:8px;font-size:12px;text-decoration:underline}.file-chip{background:var(--surface-raised);border:1px solid var(--border);border-radius:8px;align-items:flex-start;gap:11px;margin-bottom:14px;padding:11px 12px;display:flex;box-shadow:0 20px 44px -16px #0009}.file-chip-icon{background:var(--accent-soft);width:34px;height:34px;color:var(--accent);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;font-size:15px;display:flex}.file-chip-icon-csv{background:var(--good-soft);color:var(--good)}.file-chip-body{flex:1;min-width:0}.file-chip-name{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;overflow:hidden}.file-chip-meta{color:var(--ink-faint);gap:8px;margin-top:2px;font-size:11px;display:flex}.file-chip-progress-track{background:var(--border);border-radius:2px;height:4px;margin-top:8px;overflow:hidden}.file-chip-progress-fill{background:var(--accent);height:100%;transition:width .2s}.file-chip-status-icon{background:var(--good-soft);width:20px;height:20px;color:var(--good);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;display:flex}.file-chip-status-icon-error{background:var(--critical-soft);color:var(--critical)}.file-chip-remove{width:22px;height:22px;color:var(--ink-faint);cursor:pointer;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:15px;line-height:1;display:flex}.file-chip-remove:hover{background:var(--surface);color:var(--ink)}.drop-error-toast{z-index:3500;background:var(--surface-raised);border:1px solid var(--critical-line);color:var(--critical);border-radius:6px;padding:9px 15px;font-size:12.5px;position:fixed;top:18px;left:50%;transform:translate(-50%);box-shadow:0 20px 44px -16px #0009}.admin-metrics-bar{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-bottom:20px;display:grid}.admin-metric-card{background:var(--surface);border:1px solid var(--border);border-radius:6px;flex-direction:column;gap:8px;padding:16px 18px;display:flex}.admin-metric-top{justify-content:space-between;align-items:center;display:flex}.admin-metric-icon{color:var(--ink-faint);display:inline-flex}.admin-metric-value{color:var(--ink);font-variant-numeric:tabular-nums;font-size:26px;font-weight:700}.admin-metric-label{color:var(--ink-muted);font-size:12px;font-weight:500}.admin-toolbar{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;display:flex}.admin-toolbar-field{color:var(--ink-muted);align-items:center;gap:8px;font-size:12px;display:flex}.admin-toolbar-field select{background:var(--void);border:1px solid var(--border);color:var(--ink);border-radius:4px;padding:6px 10px;font-family:inherit;font-size:13px}.admin-toolbar-field select:focus{border-color:var(--accent)}.admin-toolbar-count{font-family:var(--mono);color:var(--ink-faint);margin-left:auto;font-size:11px}.admin-user-table{border-collapse:separate;border-spacing:0}.admin-user-table th{background:var(--surface-raised);border-bottom:1px solid var(--border);padding:11px 12px}.admin-user-table td{vertical-align:top;padding:12px}.admin-user-table tbody tr:hover td{background:var(--surface-raised)}.admin-user-table tbody tr:last-child td{border-bottom:none}.role-pill,.status-badge{font-family:var(--mono);letter-spacing:.03em;border:1px solid var(--border);background:var(--surface-raised);color:var(--ink-muted);white-space:nowrap;border-radius:999px;padding:2.5px 9px;font-size:10.5px;display:inline-block}.role-pill.admin{color:var(--accent);background:var(--accent-soft);border-color:var(--accent)}.role-pill.superadmin{color:var(--accent);background:var(--accent-soft);border-color:var(--accent);font-weight:700}.status-badge.active{background:var(--good-soft);color:var(--good);border-color:var(--good-line)}.status-badge.inactive{background:var(--critical-soft);color:var(--critical);border-color:var(--critical-line)}.cases-attention{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin-bottom:14px;display:grid}.cases-attention-icon{color:var(--ink-faint);align-self:center;display:flex}.cases-attention-item[aria-pressed=true] .cases-attention-icon{color:var(--accent)}.cases-attention-item{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);min-height:44px;color:var(--ink-muted);font:inherit;text-align:left;cursor:pointer;align-items:baseline;gap:10px;padding:12px 16px;font-size:13px;display:flex}.cases-attention-item strong{color:var(--ink);font-size:20px}.cases-attention-item:hover{border-color:var(--ink-faint)}.cases-attention-item[aria-pressed=true]{border-color:var(--accent-line);background:var(--accent-soft)}.cases-empty{text-align:center;padding:32px 16px}.cases-empty h3{color:var(--ink);margin:0 0 6px;font-size:16px}.cases-empty p{color:var(--ink-muted);margin:0 0 16px;font-size:13px}.cases-empty .ui-button-group{justify-content:center}.case-row-link{cursor:pointer}.case-row-link:hover td{background:var(--surface-raised)}.case-row-sub{color:var(--ink-faint);margin-top:2px;font-size:12px}.case-count-badge{border:1px solid var(--warning-line);background:var(--warning-soft);min-width:22px;color:var(--warning);text-align:center;border-radius:10px;padding:1px 7px;font-size:12px;font-weight:600;display:inline-block}.case-ai-running{color:var(--accent);white-space:nowrap;font-size:12px}.case-row-menu{min-width:var(--control-h-md);padding:0}.profile-dropdown-item.danger{text-align:left;background:0 0;border:none;justify-content:flex-start}@media (width<=768px){.cases-table .case-col-optional{display:none}.cases-table th,.cases-table td{white-space:normal;padding-inline:6px}.case-ai-running{white-space:normal}.cases-table .case-name-link,.case-row-menu{min-height:44px}.case-row-menu{min-width:44px}}.support-steps{margin:var(--space-md) 0 0;gap:var(--space-xs);padding-left:1.25em;display:grid}.support-diagnostics{width:100%;height:auto;margin:var(--space-md) 0;resize:vertical;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12.5px;display:block}.admin-user-name{color:var(--ink);align-items:center;gap:8px;font-weight:600;display:inline-flex}.admin-reset-row,.admin-add-row{align-items:center;gap:var(--space-sm);flex-wrap:wrap;display:flex}.admin-reset-row{margin-top:var(--space-xs)}.admin-reset-row .ui-field{min-height:var(--control-h-sm);flex:140px}.admin-add-row{margin-top:var(--space-md);padding-top:var(--space-md);border-top:1px solid var(--border)}.admin-add-row>.ui-field{min-height:var(--control-h-md);flex:200px}.admin-row-alert{margin:var(--space-xs) 0 0}.admin-create-form{align-items:end;gap:var(--space-md);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));display:grid}.admin-create-form .auth-field{margin:0}.admin-create-actions{display:flex}.admin-create-actions .ui-button{width:100%;min-height:40px}.admin-user-table td{vertical-align:middle}.audit-time{white-space:nowrap}.login-page{grid-template-columns:minmax(0,1.1fr) minmax(360px,1fr);align-items:stretch;padding:0;display:grid}.login-brand{justify-content:space-between;gap:var(--space-xl);background:radial-gradient(120% 80% at 0% 0%, var(--accent-soft), transparent 60%), var(--surface);border-right:1px solid var(--border);flex-direction:column;padding:40px 48px 0;display:flex;position:relative;overflow:hidden}.login-brand-top{align-items:center;gap:10px;display:flex}.login-brand-name{font-family:var(--serif);color:var(--ink);font-size:20px}.login-brand-eyebrow{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--accent);margin:0 0 10px;font-size:11px}.login-brand-title{max-width:460px;font-family:var(--serif);color:var(--ink);margin:0 0 22px;font-size:clamp(26px,3vw,36px);line-height:1.15}.login-brand-points{color:var(--ink-muted);gap:10px;margin:0;padding:0;font-size:14px;list-style:none;display:grid}.login-brand-points li{align-items:center;gap:10px;display:flex}.login-brand-points li:before{content:"";background:var(--accent);border-radius:50%;flex-shrink:0;width:6px;height:6px}.login-brand-shot{border:1px solid var(--border);border-radius:var(--radius-lg) 0 0 0;width:calc(100% + 48px);max-width:none;box-shadow:0 -20px 60px -30px var(--shadow-color);border-bottom:none;margin-bottom:-2px;display:block}.login-card{place-self:center;margin:32px}.login-card .auth-actions .ui-button{width:100%;min-height:42px}@media (width<=900px){.login-page{grid-template-columns:1fr;padding:24px 16px}.login-brand{display:none}.login-card{margin:0}}.leaflet-cluster-anim .leaflet-marker-icon,.leaflet-cluster-anim .leaflet-marker-shadow{-webkit-transition:-webkit-transform .3s ease-out,opacity .3s ease-in;-o-transition:-o-transform .3s ease-out, opacity .3s ease-in;-moz-transition:-moz-transform .3s ease-out,opacity .3s ease-in;transition:transform .3s ease-out,opacity .3s ease-in}.leaflet-cluster-spider-leg{-webkit-transition:-webkit-stroke-dashoffset .3s ease-out,-webkit-stroke-opacity .3s ease-in;-o-transition:-o-stroke-dashoffset .3s ease-out, -o-stroke-opacity .3s ease-in;-moz-transition:-moz-stroke-dashoffset .3s ease-out,-moz-stroke-opacity .3s ease-in;transition:stroke-dashoffset .3s ease-out,stroke-opacity .3s ease-in}.marker-cluster-small{background-color:#b5e28c99}.marker-cluster-small div{background-color:#6ecc3999}.marker-cluster-medium{background-color:#f1d35799}.marker-cluster-medium div{background-color:#f0c20c99}.marker-cluster-large{background-color:#fd9c7399}.marker-cluster-large div{background-color:#f1801799}.leaflet-oldie .marker-cluster-small{background-color:#b5e28c}.leaflet-oldie .marker-cluster-small div{background-color:#6ecc39}.leaflet-oldie .marker-cluster-medium{background-color:#f1d357}.leaflet-oldie .marker-cluster-medium div{background-color:#f0c20c}.leaflet-oldie .marker-cluster-large{background-color:#fd9c73}.leaflet-oldie .marker-cluster-large div{background-color:#f18017}.marker-cluster{background-clip:padding-box;border-radius:20px}.marker-cluster div{text-align:center;border-radius:15px;width:30px;height:30px;margin-top:5px;margin-left:5px;font:12px Helvetica Neue,Arial,Helvetica,sans-serif}.marker-cluster span{line-height:30px}.mention-textarea-wrap{width:100%;position:relative}.mention-textarea{box-sizing:border-box;resize:vertical;width:100%;font-family:inherit;font-size:13px}.mention-suggestions{background:var(--bg-card,#1e293b);border:1px solid var(--border-soft,#334155);border-radius:var(--radius-sm,6px);z-index:100;min-width:200px;margin:0 0 4px;padding:4px 0;list-style:none;position:absolute;bottom:100%;left:0;box-shadow:0 4px 12px #0006}.mention-suggestion-item{color:var(--ink-primary,#f1f5f9);cursor:pointer;align-items:center;min-height:44px;padding:8px 12px;font-size:13px;display:flex}.mention-suggestion-item:hover,.mention-suggestion-item.selected{background:var(--bg-hover,#38bdf826);color:var(--accent,#38bdf8)}.discussion-thread-box{border-top:1px solid var(--border-subtle,#ffffff0d);margin-top:10px;padding-top:8px}.discussion-toggle-btn{align-items:center;gap:6px;font-size:12px;display:inline-flex}.discussion-content{background:var(--bg-hover,#00000026);border-radius:var(--radius-sm,6px);margin-top:8px;padding:10px}.discussion-comment-list{flex-direction:column;gap:8px;display:flex}.discussion-comment-item{background:var(--bg-card,#1e293b);border:1px solid var(--border-soft,#334155);border-radius:var(--radius-sm,6px);padding:8px 10px}.discussion-comment-meta{color:var(--ink-faint,#64748b);justify-content:space-between;margin-bottom:4px;font-size:11px;display:flex}.discussion-comment-meta strong{color:var(--ink-primary,#f1f5f9)}.discussion-comment-body{color:var(--ink-primary,#f1f5f9);white-space:pre-wrap;font-size:13px;line-height:1.4}.mention-pill{color:var(--accent,#38bdf8);background:#38bdf826;border-radius:4px;margin:0 2px;padding:0 4px;font-weight:500;display:inline-block}.discussion-reply-form{flex-direction:column;gap:8px;margin-top:6px;display:flex}.discussion-reply-form button{align-self:flex-end}.comment-reactions{align-items:center;gap:var(--space-2xs);margin-top:var(--space-xs);flex-wrap:wrap;display:flex}.reaction-picker{gap:var(--space-2xs);flex-wrap:wrap;display:inline-flex}.reaction-chip{border:1px solid var(--border);background:var(--surface);min-width:36px;min-height:28px;color:var(--ink-muted);font:inherit;cursor:pointer;border-radius:999px;justify-content:center;align-items:center;gap:4px;padding:0 8px;font-size:12px;display:inline-flex}.reaction-chip:hover:not(:disabled){border-color:var(--ink-faint);color:var(--ink)}.reaction-chip[aria-pressed=true]{border-color:var(--accent-line);background:var(--accent-soft);color:var(--accent)}.reaction-chip:disabled{cursor:default}.reaction-chip:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (pointer:coarse){.reaction-chip{min-width:44px;min-height:44px}}.notif-bell-container{align-items:center;display:inline-flex;position:relative}.notif-bell-btn{border-radius:var(--radius-md);min-width:44px;min-height:44px;color:var(--ink-muted);cursor:pointer;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;padding:8px;transition:background-color .15s,color .15s;display:inline-flex;position:relative}.notif-bell-btn:hover{background:var(--surface-raised);color:var(--ink)}.notif-bell-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.notif-badge{background:var(--accent);color:var(--accent-ink);text-align:center;border-radius:10px;min-width:16px;padding:1px 5px;font-size:11px;font-weight:600;line-height:14px;position:absolute;top:4px;right:4px}.notif-dropdown{background:var(--surface-raised);border:1px solid var(--border-soft);border-radius:var(--radius-md);width:320px;max-width:90vw;box-shadow:0 12px 28px -8px var(--shadow-color);z-index:1000;flex-direction:column;margin-top:6px;display:flex;position:absolute;top:100%;right:0;overflow:hidden}.notif-dropdown-header{border-bottom:1px solid var(--border-soft);justify-content:space-between;align-items:center;padding:12px 14px;display:flex}.notif-dropdown-title{color:var(--ink);font-size:13px;font-weight:600}.notif-mark-all-btn{color:var(--accent);cursor:pointer;background:0 0;border:none;align-items:center;min-height:44px;padding:4px 6px;font-size:12px;display:inline-flex}.notif-mark-all-btn:hover{text-decoration:underline}.notif-dropdown-list{max-height:360px;overflow-y:auto}.notif-empty{text-align:center;color:var(--ink-faint);padding:24px;font-size:13px}.notif-item{border-bottom:1px solid var(--border-soft);min-height:44px;padding:12px 14px;text-decoration:none;transition:background-color .15s;display:block}.notif-item:hover{background:var(--surface)}.notif-item.unread{background:var(--accent-soft)}.notif-item-text{color:var(--ink);margin:0;font-size:13px;line-height:1.4}.notif-item-text strong{color:var(--ink)}.confirm-dialog.coc-dialog{flex-direction:column;gap:12px;max-width:820px;max-height:calc(100vh - 40px);display:flex}.coc-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.coc-header h2{color:var(--ink);margin:0;font-size:17px}.coc-subtitle,.coc-intro{color:var(--ink-muted);margin:2px 0 0;font-size:13px}.coc-intro{margin:0}.coc-close,.coc-export,.coc-copy{border:1px solid var(--border);background:var(--surface);color:var(--ink-muted);cursor:pointer;border-radius:4px;font-size:13px}.coc-close,.coc-export{padding:6px 12px}.coc-close:hover,.coc-export:hover:not(:disabled),.coc-copy:hover{color:var(--ink);border-color:var(--accent-line,var(--border))}.coc-export:disabled{opacity:.5;cursor:default}.coc-toolbar{border-bottom:1px solid var(--border-soft,var(--border));flex-wrap:wrap;align-items:center;gap:12px;padding-bottom:10px;display:flex}.coc-toolbar label{color:var(--ink-muted);align-items:center;gap:6px;font-size:12px;display:flex}.coc-count{color:var(--ink-faint);font-size:12px}.coc-export{margin-left:auto}.coc-body{min-height:120px;padding-left:6px;overflow-y:auto}.coc-timeline{border-left:2px solid var(--border-soft,var(--border));margin:0;padding:0 0 0 14px;list-style:none}.coc-event{padding:0 0 14px 12px;position:relative}.coc-event:before{content:"";background:var(--surface-raised);border:2px solid var(--accent);border-radius:50%;width:10px;height:10px;position:absolute;top:6px;left:-20px}.coc-event-head{flex-wrap:wrap;align-items:center;gap:8px;font-size:13px;display:flex}.coc-chip{background:var(--accent-soft);color:var(--accent-ink,var(--ink));border-radius:999px;padding:2px 8px;font-size:12px;font-weight:600;display:inline-block}.coc-chip-media{background:var(--good-soft);color:var(--good)}.coc-chip-case{background:var(--warning-soft);color:var(--warning)}.coc-bdsg{letter-spacing:.02em;text-transform:uppercase;color:var(--ink-faint);background:0 0;border:1px solid;border-radius:4px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-block}.coc-bdsg-collection{color:var(--good)}.coc-bdsg-alteration{color:var(--warning)}.coc-bdsg-consultation{color:var(--accent)}.coc-bdsg-disclosure,.coc-bdsg-erasure{color:var(--danger,#c0392b)}.coc-bdsg-combination{color:var(--ink)}.coc-legal{color:var(--ink-faint);flex-wrap:wrap;gap:4px 16px;margin:6px 0 0;font-size:12px;display:flex}.coc-legal-item strong{color:var(--ink);font-weight:600}.coc-time{color:var(--ink);font-family:var(--mono);font-size:12px}.coc-actor{color:var(--ink)}.coc-ip{color:var(--ink-faint);font-family:var(--mono);font-size:12px}.coc-detail-text{color:var(--ink-muted);word-break:break-word;margin:6px 0 0;font-size:12px}.coc-diff{border-collapse:collapse;width:100%;margin-top:6px;font-size:12px}.coc-diff caption{text-align:left;color:var(--ink-faint);text-transform:uppercase;letter-spacing:.04em;padding-bottom:2px;font-size:11px}.coc-diff th,.coc-diff td{text-align:left;border-bottom:1px solid var(--border-soft,var(--border));vertical-align:top;word-break:break-word;padding:3px 8px}.coc-diff thead th{color:var(--ink-faint);font-weight:500}.coc-diff tbody th{color:var(--ink-muted);white-space:nowrap;font-weight:500}.coc-before{color:var(--critical);text-decoration:line-through;-webkit-text-decoration-color:var(--critical-line,currentColor);text-decoration-color:var(--critical-line,currentColor)}.coc-after{color:var(--good)}.coc-fields{gap:2px;margin:6px 0 0;font-size:12px;display:grid}.coc-field{gap:8px;display:flex}.coc-field dt{min-width:120px;color:var(--ink-faint)}.coc-field dd{color:var(--ink-muted);word-break:break-word;min-width:0;margin:0}.coc-hash{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.coc-hash-value{font-family:var(--mono);word-break:break-all;color:var(--ink);font-size:11px}.coc-copy{justify-content:center;align-items:center;padding:3px;display:inline-flex}.coc-copy-status{color:var(--good);font-size:11px}.case-nav-bar{background:var(--surface);border-bottom:1px solid var(--border);flex-direction:column;flex-shrink:0;width:100%;display:flex}.case-nav-top{border-bottom:1px solid var(--border-soft);justify-content:space-between;align-items:center;gap:16px;min-height:48px;padding:10px 18px;display:flex}.case-nav-breadcrumbs{color:var(--ink-muted);text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:8px;min-width:0;font-size:13px;display:flex;overflow:hidden}.case-nav-breadcrumbs .brand-mark{margin-right:8px}.breadcrumb-link{color:var(--ink-muted);align-items:center;font-weight:500;text-decoration:none;transition:color .15s;display:inline-flex}.breadcrumb-link:hover{color:var(--ink)}.breadcrumb-cases{font-weight:600}.breadcrumb-case-name{text-overflow:ellipsis;white-space:nowrap;max-width:280px;overflow:hidden}.breadcrumb-separator{color:var(--border);-webkit-user-select:none;user-select:none}.breadcrumb-current{color:var(--ink);font-weight:600}.case-nav-actions{flex-shrink:0;align-items:center;display:flex}.case-nav-tabs-wrap{background:var(--surface);border-bottom:1px solid var(--border-soft);justify-content:space-between;align-items:center;gap:12px;width:100%;padding-right:16px;display:flex;position:relative}.case-nav-tabs{scrollbar-width:none;-webkit-overflow-scrolling:touch;background:0 0;flex:1;align-items:center;gap:4px;padding:0 16px;display:flex;overflow-x:auto}.case-nav-tabs::-webkit-scrollbar{display:none}.case-nav-tab{color:var(--ink-muted);white-space:nowrap;border-bottom:2px solid #0000;align-items:center;gap:7px;padding:9px 13px;font-size:12.5px;font-weight:500;text-decoration:none;transition:color .15s,border-color .15s;display:inline-flex}.case-nav-tab:hover{color:var(--ink)}.case-nav-tab.is-active{color:var(--accent);border-bottom-color:var(--accent);font-weight:600}.case-toolbar-actions,.case-nav-action-group{align-items:center;gap:12px;display:flex}.case-toolbar-btn-group{background:var(--surface-raised);border:1px solid var(--border);border-radius:4px;align-items:center;gap:4px;padding:2px 4px;display:inline-flex}.case-toolbar-btn-group .nav-action{background:0 0;border:none;border-radius:3px}.case-toolbar-btn-group .nav-action:hover{background:var(--surface)}.case-toolbar-btn-group .nav-action.is-active{background:var(--surface-hairline);color:var(--accent)}.case-nav-tab-icon{opacity:.8;justify-content:center;align-items:center;display:inline-flex}.case-nav-tab.is-active .case-nav-tab-icon{opacity:1}.case-nav-tutorial-btn{white-space:nowrap;padding:4px 10px;font-size:12px}.case-nav-reference{border:1px solid var(--border);color:var(--ink-faint);white-space:nowrap;border-radius:4px;margin-left:8px;padding:1px 6px;font-size:11px}.case-nav-readonly-badge{border:1px solid var(--border);color:var(--ink-muted);background:var(--surface-hover);white-space:nowrap;border-radius:4px;margin-left:6px;padding:1px 6px;font-size:11px;font-weight:500}@media (width<=768px){.case-nav-top{flex-direction:column;align-items:stretch;gap:8px;padding:12px 14px}.case-nav-breadcrumbs{white-space:normal;overflow:visible}.breadcrumb-case-name{min-width:0;max-width:100%}.case-nav-reference{flex-shrink:0;margin-left:0}.case-nav-actions{flex-wrap:wrap;gap:8px}.case-nav-tabs{-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;padding:0 12px}.case-nav-tab{flex-shrink:0;min-height:44px;padding:10px 12px;font-size:13px}}@media (width>=769px) and (width<=1024px){.case-nav-top{gap:12px;padding:10px 16px}.case-nav-actions{flex-wrap:nowrap}.case-nav-tabs{padding:0 14px}.case-nav-tab{min-height:40px;font-size:12.5px}}.case-nav-tab.starts-group{margin-left:10px;position:relative}.case-nav-tab.starts-group:before{content:"";background:var(--border);width:1px;height:16px;position:absolute;top:50%;left:-7px;transform:translateY(-50%)}@media (width<=1180px){.case-nav-tab.is-secondary:not(.is-active) .case-nav-tab-label{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}.tutorial-overlay{z-index:2000;box-sizing:border-box;background:var(--surface-raised);width:min(380px,100vw - 32px);color:var(--ink);border:1px solid var(--accent-line);border-radius:10px;padding:18px 20px;position:fixed;bottom:20px;right:20px;box-shadow:0 12px 40px #0009}.tutorial-overlay__header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.tutorial-overlay__counter{font-family:var(--mono);color:var(--accent);letter-spacing:.04em;font-size:12px}.tutorial-overlay__dots{gap:5px;display:flex}.tutorial-overlay__dot{background:var(--border);border-radius:50%;width:8px;height:8px}.tutorial-overlay__dot.is-done{background:var(--accent-line)}.tutorial-overlay__dot.is-current{background:var(--accent)}.tutorial-overlay__title{font-family:var(--serif);color:var(--ink);margin:0 0 8px;font-size:18px;font-weight:600}.tutorial-overlay__body{color:var(--ink);margin:0 0 16px;font-size:14px;line-height:1.5}.tutorial-overlay__actions{align-items:center;gap:8px;display:flex}.tutorial-overlay__spacer{flex:1}.tutorial-overlay__btn,.tutorial-overlay__skip{font:inherit;cursor:pointer;border-radius:6px;padding:7px 14px;font-size:13px}.tutorial-overlay__btn{color:var(--ink);border:1px solid var(--border);background:0 0}.tutorial-overlay__btn:hover{border-color:var(--accent-line)}.tutorial-overlay__btn--primary{background:var(--accent);color:var(--accent-ink);border-color:var(--accent);font-weight:600}.tutorial-overlay__btn--primary:hover{background:var(--accent-hover)}.tutorial-overlay__skip{color:var(--ink-muted);background:0 0;border:none;padding-left:0;text-decoration:underline}.tutorial-overlay__skip:hover{color:var(--ink)}.tutorial-overlay button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (width<=520px){.tutorial-overlay{width:auto;bottom:16px;left:16px;right:16px}}.simulation-banner{z-index:4500;background:var(--warning);color:var(--void);font-family:var(--sans);text-align:center;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 16px;padding:8px 16px;font-size:13px;font-weight:600;line-height:1.4;display:flex;position:sticky;top:0}.simulation-banner-exit{color:inherit;font:inherit;cursor:pointer;background:0 0;border:1px solid;border-radius:4px;padding:4px 12px}.simulation-banner-exit:hover:not(:disabled){background:#0000001f}.simulation-banner-exit:disabled{opacity:.6;cursor:default}.is-simulating .app,.llm-locked .app{height:calc(100vh - var(--simulation-banner-height,0px) - var(--llm-banner-height,0px))}.llm-unavailable-banner{top:var(--simulation-banner-height,0px);z-index:4499;position:sticky}.llm-unavailable-inner{background:var(--warning-soft);border-bottom:1px solid var(--warning);color:var(--warning);font-family:var(--sans);justify-content:center;align-items:center;gap:10px;padding:5px 44px 5px 16px;font-size:12.5px;display:flex;position:relative}.llm-unavailable-inner p{text-align:center;margin:0}.llm-unavailable-dismiss{border-radius:var(--radius-sm);width:28px;height:28px;color:inherit;cursor:pointer;background:0 0;border:none;font-size:18px;line-height:1;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.llm-unavailable-dismiss:hover{background:var(--warning-soft)}.llm-unavailable-dismiss:focus-visible{outline:2px solid var(--accent);outline-offset:1px}@media (pointer:coarse){.llm-unavailable-dismiss{width:44px;height:44px}}.case-dashboard-page{background:var(--void);flex-direction:column;min-height:100vh;display:flex}.case-dashboard-body{flex-direction:column;gap:24px;width:100%;max-width:1200px;margin:0 auto;padding:24px 28px 48px;display:flex}.dashboard-case-header{background:var(--surface);border:1px solid var(--border);border-radius:6px;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:24px;padding:20px 24px;display:flex}.case-header-primary{flex-direction:column;flex:1;gap:10px;min-width:280px;display:flex}.case-header-title-row{align-items:center;gap:12px;display:flex}.case-title{color:var(--ink);margin:0;font-size:22px;font-weight:700;line-height:1.25}.case-rename-btn{font-size:11.5px}.case-rename-btn:hover{border-color:var(--border);color:var(--ink)}.case-rename-form{align-items:center;gap:var(--space-xs);flex-wrap:wrap;display:flex}.case-rename-input{background:var(--surface-raised);border:1px solid var(--accent);color:var(--ink);border-radius:4px;padding:4px 8px;font-size:18px;font-weight:600}.case-meta-label{color:var(--ink-faint);font-weight:500}.case-header-tags{flex-direction:column;align-items:flex-end;gap:8px;min-width:200px;display:flex}.case-tags-header{align-items:center;gap:8px;display:flex}.case-tags-header .case-meta-label{font-size:13px}.case-tags-list{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.case-no-tags{color:var(--ink-faint);font-size:12px;font-style:italic}.case-tag-badge{border:1px solid;border-radius:3px;align-items:center;padding:3px 8px;font-size:11.5px;font-weight:600;display:inline-flex}.case-tag-badge.is-large{padding:5px 10px;font-size:13px}.metrics-bar{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;display:grid}.metric-card{background:var(--surface);border:1px solid var(--border);border-radius:6px;flex-direction:column;gap:8px;padding:16px 18px;text-decoration:none;transition:transform .15s,border-color .15s,background-color .15s;display:flex}.metric-card:hover{border-color:var(--accent);background:var(--surface-raised);transform:translateY(-1px)}.metric-card-top{justify-content:space-between;align-items:center;display:flex}.metric-icon{color:var(--ink-faint)}.metric-card:hover .metric-icon{color:var(--accent)}.metric-value{color:var(--ink);font-variant-numeric:tabular-nums;font-size:26px;font-weight:700}.metric-label{color:var(--ink-muted);font-size:12px;font-weight:500}.dashboard-section{flex-direction:column;gap:12px;display:flex}.section-title{color:var(--ink);margin:0;font-size:15px;font-weight:600}.pending-ai-clean-card{background:var(--surface);border:1px solid var(--border-soft);color:var(--ink-muted);border-radius:6px;align-items:center;gap:12px;padding:16px 20px;font-size:13px;display:flex}.pending-ai-clean-card .clean-icon{color:#2ea043;background:#2ea04326;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;font-size:13px;font-weight:700;display:flex}.pending-ai-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:14px;display:grid}.pending-ai-card{background:var(--surface);border:1px solid var(--border);border-radius:6px;flex-direction:column;gap:10px;padding:18px 20px;display:flex}.pending-ai-card.is-active{background:#d6a24c0a;border-color:#d6a24c66;grid-column:1/-1}.ai-job-list{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px;margin:2px 0 0;padding:0;list-style:none;display:grid}.ai-job{background:var(--surface);border:1px solid var(--border-soft);border-radius:6px;grid-template-rows:auto 6px auto;gap:10px;min-width:0;padding:12px 14px;display:grid}.ai-job.is-queued{opacity:.8}.ai-job-head{grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.ai-job-icon{width:28px;height:28px;color:var(--accent);background:#d6a24c1f;border-radius:6px;justify-content:center;align-items:center;display:flex}.ai-job-names{flex-direction:column;min-width:0;line-height:1.3;display:flex}.ai-job-title{color:var(--ink);font-size:13px;font-weight:600}.ai-job-label{color:var(--ink-muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.ai-job-head-actions{align-items:center;gap:6px;display:flex}.ai-job-status{border:1px solid var(--border);color:var(--ink-muted);white-space:nowrap;border-radius:10px;padding:2px 8px;font-size:11px;font-weight:600}.ai-job-cancel-btn{width:20px;height:20px;color:var(--ink-muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:4px;justify-content:center;align-items:center;padding:0;font-size:15px;line-height:1;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.ai-job-cancel-btn:hover{color:#ff7849;background:#e056241f;border-color:#e0562459}.ai-job-cancel-btn:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.ai-job-status.is-running{color:var(--accent);background:#d6a24c1f;border-color:#d6a24c80}.ai-job-track{background:var(--surface-raised);border-radius:3px;height:6px;position:relative;overflow:hidden}.ai-job-fill{background:var(--accent);border-radius:3px;width:0;height:100%;transition:width .4s}.ai-job.is-queued .ai-job-fill{background:var(--ink-faint)}.ai-job-track.is-indeterminate .ai-job-fill{width:35%;animation:1.4s ease-in-out infinite ai-job-slide;position:absolute}.ai-job.is-queued .ai-job-track.is-indeterminate .ai-job-fill{width:0;animation:none}@keyframes ai-job-slide{0%{left:-35%}to{left:100%}}@media (prefers-reduced-motion:reduce){.ai-job-track.is-indeterminate .ai-job-fill{opacity:.35;width:100%;animation:none;left:0}}.ai-job-foot{color:var(--ink-muted);font-variant-numeric:tabular-nums;justify-content:space-between;font-size:11.5px;display:flex}.ai-job-percent{color:var(--ink);font-weight:600}.pending-ai-spinner{border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:18px;height:18px;animation:.8s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.pending-ai-card.is-alert{background:#e056240a;border-color:#e0562466}.pending-ai-badge-row{justify-content:space-between;align-items:center;display:flex}.pending-ai-actions-wrap{align-items:center;gap:8px;display:flex}.pending-cancel-all-btn{border:1px solid var(--border);color:var(--ink-muted);cursor:pointer;background:0 0;border-radius:4px;padding:2px 8px;font-size:11px;transition:all .15s}.pending-cancel-all-btn:hover{color:var(--danger,#e05624);border-color:var(--danger,#e05624);background:#e0562414}.pending-ai-icon{color:var(--accent)}.pending-count-badge{background:var(--surface-raised);border:1px solid var(--border);color:var(--ink);border-radius:12px;padding:2px 8px;font-size:13px;font-weight:700}.pending-count-badge.is-alert{color:#ff7849;background:#e0562433;border-color:#e05624}.pending-card-title{color:var(--ink);margin:0;font-size:14px;font-weight:600}.pending-card-desc{color:var(--ink-muted);flex:1;margin:0;font-size:12.5px;line-height:1.4}.pending-card-link{align-self:flex-start;margin-top:4px;text-decoration:none}.recent-activity-columns{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px;display:grid}.recent-col{background:var(--surface);border:1px solid var(--border);border-radius:6px;flex-direction:column;gap:12px;padding:16px;display:flex}.recent-col-header{border-bottom:1px solid var(--border-soft);justify-content:space-between;align-items:center;padding-bottom:8px;display:flex}.recent-col-header h3{color:var(--ink);margin:0;font-size:13.5px;font-weight:600}.recent-see-all{color:var(--ink-muted);font-size:14px;text-decoration:none;transition:color .15s}.recent-see-all:hover{color:var(--accent)}.recent-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.recent-item{background:var(--surface-raised);border-radius:4px;justify-content:space-between;align-items:center;gap:12px;padding:8px 10px;font-size:12.5px;display:flex}.recent-item-main{align-items:center;gap:8px;min-width:0;display:flex;overflow:hidden}.recent-node-label,.recent-file-name{color:var(--ink);white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.recent-node-type{color:var(--ink-faint);background:var(--surface);border:1px solid var(--border-soft);border-radius:3px;padding:1px 6px;font-size:11px}.recent-item-time{color:var(--ink-faint);white-space:nowrap;font-variant-numeric:tabular-nums;font-size:11.5px}.recent-file-meta{flex-shrink:0;align-items:center;gap:8px;display:flex}.recent-status-pill{text-transform:capitalize;border-radius:10px;padding:2px 6px;font-size:10.5px;font-weight:600}.recent-status-pill.is-success{color:#3fb950;background:#2ea04326}.recent-status-pill.is-warning{color:#d29922;background:#d2992226}.recent-status-pill.is-error{color:#f85149;background:#f8514926}.recent-status-pill.is-muted{background:var(--surface);color:var(--ink-faint);border:1px solid var(--border-soft)}.recent-empty{color:var(--ink-faint);margin:12px 0;font-size:12.5px;font-style:italic}.dialog-backdrop{z-index:999;background:#000000a6;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.dialog-card{background:var(--surface);border:1px solid var(--border);border-radius:6px;flex-direction:column;gap:16px;width:90%;max-width:480px;padding:20px;display:flex;box-shadow:0 16px 36px #00000080}.dialog-header{justify-content:space-between;align-items:center;display:flex}.dialog-header h2{color:var(--ink);margin:0;font-size:16px;font-weight:600}.dialog-close{color:var(--ink-muted);cursor:pointer;background:0 0;border:none;font-size:20px;line-height:1}.dialog-desc{color:var(--ink-muted);margin:0 0 12px;font-size:12.5px}.dialog-tags-flow{flex-wrap:wrap;gap:8px;display:flex}.dialog-footer{justify-content:flex-end;display:flex}.case-legal-form{gap:8px;max-width:560px;display:grid}.case-legal-form label{gap:2px;display:grid}.case-legal-actions{align-items:center;gap:var(--space-xs);display:flex}@media (width<=768px){.dashboard-case-header{gap:12px;padding:14px}.case-header-title-row{flex-wrap:wrap}.case-header-primary{flex-direction:column;gap:8px}.case-header-tags{align-items:flex-start;width:100%;min-width:0}.case-tags-list{justify-content:flex-start}}@media (width>=769px) and (width<=1024px){.dashboard-case-header{gap:16px;padding:16px}.case-header-title-row{flex-wrap:wrap}.case-header-tags{align-items:flex-end;min-width:200px}.case-tags-list{justify-content:flex-end}.case-rename-btn,.case-legal-edit-btn{min-height:44px}}.case-assignment-editor{align-items:center;gap:6px;display:inline-flex}.case-facts{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px 24px;margin:14px 0 0;display:grid}.case-fact{min-width:0}.case-fact dt{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:3px;font-size:10.5px}.case-fact dd{overflow-wrap:anywhere;color:var(--ink);margin:0;font-size:13px}.case-fact .assignee-avatar+span{font-size:13px}.case-fact-empty{color:var(--ink-faint)}.case-facts-edit{margin-top:10px}.case-fact .ui-select-quiet .ui-select-trigger{margin-left:-6px}.landing{--landing-max:1120px;--landing-pad:clamp(16px, 4vw, 40px);background:var(--void);color:var(--ink);font-family:var(--sans);min-height:100vh;font-size:16px;line-height:1.6}.landing h1,.landing h2,.landing h3{font-family:var(--serif);text-wrap:balance;margin:0;font-weight:500}.landing p{margin:0}.landing a:not(.ui-button):not(.ui-button-primary):not(.ui-button-secondary){color:inherit}.landing section[id]{scroll-margin-top:72px}.landing .eyebrow{margin:0 0 var(--space-md);font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted);font-size:12px}.landing-nav{z-index:40;background:var(--surface-overlay);border-bottom:1px solid var(--border-soft);position:sticky;top:0}.landing-nav-inner{align-items:center;gap:var(--space-xl);max-width:var(--landing-max);padding:var(--space-md) var(--landing-pad);margin:0 auto;display:flex}.landing-brand{min-height:44px;color:var(--ink);font-family:var(--serif);align-items:center;gap:10px;margin-right:auto;font-size:20px;font-weight:600;text-decoration:none;display:inline-flex}.nav-links{align-items:center;gap:var(--space-lg);display:flex}.nav-links a{min-height:44px;padding:0 var(--space-xs);color:var(--ink-muted);align-items:center;font-size:14px;text-decoration:none;display:inline-flex}.nav-links a:hover{color:var(--ink)}.nav-lang-select{min-height:var(--control-h-md);font-size:13px}.nav-cta{align-items:center;gap:var(--space-sm);display:flex}.nav-menu-toggle{display:none}.hero{max-width:var(--landing-max);padding:clamp(48px, 8vw, 88px) var(--landing-pad) clamp(40px, 6vw, 64px);margin:0 auto}.hero-copy{max-width:760px}.hero h1{font-size:clamp(36px,5.4vw,60px);line-height:1.08}.landing .hero-sub{margin-top:var(--space-lg);max-width:640px;color:var(--ink-muted);font-size:18px}.hero-actions{margin-top:var(--space-xl);flex-wrap:wrap}.product-shot{border:1px solid var(--border);border-radius:var(--radius-md);width:100%;height:auto;box-shadow:0 24px 56px -28px var(--shadow-color);display:block}.hero-shot{margin-top:clamp(32px,5vw,56px)}.landing-section{max-width:var(--landing-max);padding:clamp(48px, 7vw, 80px) var(--landing-pad);border-top:1px solid var(--border-soft);margin:0 auto}.section-head{max-width:720px;margin-bottom:clamp(28px,4vw,44px)}.section-head h2,.demo h2{font-size:clamp(26px,3.4vw,36px);line-height:1.2}.problem-grid{gap:var(--space-xl);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.problem-grid h3,.feature-row h3{margin-bottom:var(--space-sm);font-size:21px}.problem-grid p,.feature-row p,.workflow-strip p,.landing-details p{color:var(--ink-muted)}.feature-rows{gap:clamp(48px,7vw,80px);display:grid}.feature-row{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:center;gap:clamp(24px,5vw,56px);display:grid}.feature-row:nth-child(2n)>:first-child{order:2}.feature-list{gap:var(--space-xl);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;display:grid}.feature-list dt{font-family:var(--serif);color:var(--ink);font-size:18px}.feature-list dd{margin:var(--space-2xs) 0 0;color:var(--ink-muted);font-size:15px}.workflow-strip{gap:var(--space-lg);grid-template-columns:repeat(5,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.workflow-strip h3{margin:var(--space-2xs) 0;font-size:17px}.workflow-strip p{font-size:14px}.step-num{font-family:var(--mono);color:var(--accent);font-size:12px}.landing-details{border-bottom:1px solid var(--border-soft)}.landing-details summary{min-height:44px;padding:var(--space-sm) 0;cursor:pointer;align-items:center;font-weight:600;display:flex}.landing-details summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.landing-details>p{max-width:720px;padding-bottom:var(--space-md)}.it-details{margin-top:var(--space-xl);border-top:1px solid var(--border-soft)}.it-details .feature-list{padding:var(--space-md) 0 var(--space-lg)}.demo{background:var(--surface);border-top:1px solid var(--border-soft);scroll-margin-top:72px}.demo-inner{max-width:var(--landing-max);padding:clamp(48px, 7vw, 80px) var(--landing-pad);grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,6vw,72px);margin:0 auto;display:grid}.demo-inner>div>p{margin-top:var(--space-md);color:var(--ink-muted)}.demo-form{gap:var(--space-md);grid-template-columns:repeat(2,minmax(0,1fr));display:grid;position:relative}.demo-form label{gap:var(--space-2xs);color:var(--ink-muted);font-size:13px;font-weight:600;display:grid}.demo-form .ui-field{box-sizing:border-box;width:100%}.demo-form-wide{grid-column:1/-1}.demo-hp{position:absolute;left:-9999px}.demo-privacy{color:var(--ink-muted);font-size:13px}.demo-error{color:var(--critical);font-size:14px}.demo-sent{font-family:var(--serif);align-self:center;font-size:21px}.landing-footer{border-top:1px solid var(--border-soft);background:var(--surface)}.footer-inner{justify-content:space-between;align-items:center;gap:var(--space-md);max-width:var(--landing-max);padding:var(--space-lg) var(--landing-pad);flex-wrap:wrap;margin:0 auto;display:flex}.footer-inner .landing-brand{font-size:16px}.footer-links{gap:var(--space-lg);display:flex}.footer-links a{min-height:44px;color:var(--ink-muted);align-items:center;font-size:14px;text-decoration:none;display:inline-flex}.footer-links a:hover{color:var(--ink);text-decoration:underline}.legal-page{max-width:720px;padding:clamp(40px, 6vw, 72px) var(--landing-pad);margin:0 auto}.legal-page h1{margin-bottom:32px;font-size:clamp(28px,4vw,40px)}.legal-section{padding:var(--space-xl) 0;border-top:1px solid var(--border-soft)}.legal-section h2{margin-bottom:var(--space-md);font-size:20px}.legal-section p+p{margin-top:var(--space-md)}.legal-section a{color:var(--ink)}@media (width<=960px){.problem-grid,.feature-row,.demo-inner{grid-template-columns:minmax(0,1fr)}.feature-row:nth-child(2n)>:first-child{order:0}.workflow-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.nav-menu-toggle{display:inline-flex}.landing-nav-inner{position:relative}.nav-links{padding:var(--space-sm) var(--landing-pad) var(--space-lg);background:var(--surface);border-bottom:1px solid var(--border);box-shadow:0 8px 16px var(--shadow-color);flex-direction:column;align-items:stretch;gap:0;display:none;position:absolute;top:100%;left:0;right:0}.nav-links.open{display:flex}.nav-links a{border-bottom:1px solid var(--border-soft);padding:0;font-size:16px}.nav-lang-select{margin-top:var(--space-md);width:100%}.feature-list{grid-template-columns:1fr}.workflow-strip,.demo-form{grid-template-columns:minmax(0,1fr)}.demo-signin a{align-items:center;min-height:44px;display:inline-flex}}.scan-page{gap:var(--space-md);box-sizing:border-box;max-width:480px;min-height:100vh;padding:var(--space-xl) var(--space-md);background:var(--void);color:var(--ink);flex-direction:column;margin:0 auto;display:flex}.scan-page h1{font-family:var(--serif);margin:0;font-size:26px;font-weight:500}.scan-page p{margin:0}.scan-count{color:var(--ink-muted)}.scan-preview{object-fit:contain;border:1px solid var(--border);border-radius:var(--radius-md);width:100%;max-height:50vh}.scan-actions{gap:var(--space-sm);margin-top:auto;display:grid}.scan-actions .ui-button{min-height:48px}.discussions-toolbar{align-items:center;gap:var(--space-md);margin-bottom:var(--space-md);flex-wrap:wrap;display:flex}.discussions-heading{align-items:center;gap:var(--space-xs);color:var(--ink);margin:0 auto 0 0;font-size:18px;display:flex}.discussions-count{border-radius:var(--radius-sm);background:var(--accent-soft);min-width:22px;color:var(--accent);border:1px solid var(--accent-line);text-align:center;padding:1px 7px;font-size:12px;font-weight:600}.discussions-error{margin:0 0 var(--space-md);padding:var(--space-xs) var(--space-md);border:1px solid var(--warning-line);border-radius:var(--radius-sm);background:var(--warning-soft);color:var(--warning);font-size:13px}@media (width<=768px){.discussions-filters{width:100%}.discussions-filter{flex:1}}.discussions-filter:focus-visible,.forum-topic:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.discussions-status{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--ink-muted);white-space:nowrap;padding:0 6px;font-size:12px}.discussions-status.is-open{border-color:var(--accent-line);background:var(--accent-soft);color:var(--accent)}.forum-topics{padding:0;overflow:hidden}.forum-topics ul{margin:0;padding:0;list-style:none}.forum-topic-row{align-items:center;gap:var(--space-md);padding:var(--space-xs) var(--space-md);grid-template-columns:minmax(0,1fr) 110px 170px;display:grid}.forum-topics-head{border-bottom:1px solid var(--border);background:var(--surface-raised);color:var(--ink-muted);font-size:12px;font-weight:600}.forum-topic{min-height:56px;color:var(--ink);text-decoration:none}.forum-topics li+li .forum-topic{border-top:1px solid var(--border)}.forum-topic:hover{background:var(--surface-raised)}.forum-topic-main{flex-direction:column;gap:4px;min-width:0;display:flex}.forum-topic-main strong{overflow-wrap:anywhere;font-size:14px}.forum-topic-meta{align-items:center;gap:var(--space-xs);color:var(--ink-muted);flex-wrap:wrap;font-size:12px;display:flex}.forum-topic-posts,.forum-topic-last{color:var(--ink-muted);font-size:12px}.forum-topic-last{overflow-wrap:anywhere;flex-direction:column;gap:2px;min-width:0;display:flex}.forum-back{margin-bottom:var(--space-md);text-decoration:none}.forum-thread-header{justify-content:space-between;align-items:flex-start;gap:var(--space-md);margin-bottom:var(--space-md);flex-wrap:wrap;display:flex}.forum-thread-header h1{margin:0 0 var(--space-2xs);color:var(--ink);overflow-wrap:anywhere;font-size:20px}.forum-thread-meta{align-items:center;gap:var(--space-xs);color:var(--ink-muted);flex-wrap:wrap;margin:0;font-size:12px;display:flex}.forum-posts{margin:0 0 var(--space-md);gap:var(--space-xs);flex-direction:column;padding:0;list-style:none;display:flex}.forum-post{grid-template-columns:170px minmax(0,1fr);padding:0;display:grid;overflow:hidden}.forum-post-author{align-items:flex-start;gap:var(--space-2xs);padding:var(--space-md);border-right:1px solid var(--border);background:var(--surface-raised);color:var(--ink);overflow-wrap:anywhere;flex-direction:column;font-size:13px;display:flex}.forum-post-role{color:var(--ink-muted);font-size:11px}.forum-post-main{min-width:0;padding:var(--space-md)}.forum-post-meta{justify-content:space-between;gap:var(--space-xs);margin-bottom:var(--space-xs);padding-bottom:var(--space-xs);border-bottom:1px solid var(--border-soft);color:var(--ink-muted);font-size:12px;display:flex}.forum-post-body{color:var(--ink);white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px;line-height:1.55}.discussion-avatar{background:var(--accent-soft);width:32px;height:32px;color:var(--accent);border:1px solid var(--accent-line);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:13px;font-weight:600;display:inline-flex;overflow:hidden}.discussion-avatar img{object-fit:cover;width:100%;height:100%}.forum-reply{gap:var(--space-xs);padding:var(--space-md);flex-direction:column;display:flex}.forum-reply h2{color:var(--ink);margin:0;font-size:14px}.forum-reply button{align-self:flex-end}@media (width<=768px){.forum-topics-head{display:none}.forum-topic-row{gap:var(--space-2xs) var(--space-md);grid-template-columns:1fr auto}.forum-topic-main{grid-column:1/-1}.forum-post{grid-template-columns:1fr}.forum-post-author{padding:var(--space-xs) var(--space-md);border-right:0;border-bottom:1px solid var(--border);flex-direction:row;align-items:center}}.discussion-new-thread-form{gap:var(--space-md);padding:var(--space-md);margin-bottom:var(--space-md);flex-direction:column;display:flex}.discussion-new-thread-form label{gap:var(--space-2xs);color:var(--ink-muted);flex-direction:column;font-size:13px;display:flex}.discussion-form-actions{justify-content:flex-end;gap:var(--space-xs);display:flex}.discussions-empty{padding:var(--space-xl) var(--space-md);text-align:center;color:var(--ink-muted);font-size:13px}
