.ui-btn{font-family:var(--font-sans);border:1px solid var(--rule-2);color:var(--color-text);cursor:pointer;background:#fff;border-radius:5px;align-items:center;gap:6px;padding:6px 12px;font-size:12.5px;font-weight:500;line-height:1.4;transition:background .12s,border-color .12s,box-shadow .12s,color .12s;display:inline-flex}.ui-btn:hover{border-color:var(--rule-3);background:#f7f9fc}.ui-btn:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.ui-btn:disabled{opacity:.5;cursor:not-allowed}.ui-btn--primary{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.ui-btn--primary:hover{background:var(--color-primary-hover);border-color:var(--color-primary-hover)}.ui-btn--ai{background:var(--ai-purple-soft);color:var(--ai-purple);border-color:var(--ai-purple-border)}.ui-btn--ai:hover{background:#e2d5f3;border-color:#c0aeda}.ui-btn--ghost{color:var(--color-text-secondary);background:0 0;border-color:#0000}.ui-btn--ghost:hover{color:var(--color-text);background:#0f172a0d}.ui-btn--danger{background:var(--color-danger);color:#fff;border-color:var(--color-danger)}.ui-btn--danger:hover{background:#b91c1c;border-color:#b91c1c}.ui-btn--sm{gap:4px;padding:4px 9px;font-size:11.5px}.ui-btn--lg{padding:8px 16px;font-size:13.5px}.ui-iconbtn{width:28px;height:28px;color:var(--color-text-secondary);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:5px;justify-content:center;align-items:center;transition:background .12s,color .12s,border-color .12s;display:inline-flex}.ui-iconbtn:hover{color:var(--color-text);border-color:var(--rule);background:#0f172a0d}.ui-iconbtn:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.ui-iconbtn--on{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.ui-chip{font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:.02em;border:1px solid var(--rule-2);color:var(--color-text);white-space:nowrap;background:#fff;border-radius:3px;align-items:center;gap:5px;padding:3px 8px;font-size:10.5px;line-height:1.5;display:inline-flex}.ui-chip--solid{background:var(--navy);color:#fff;border-color:var(--navy)}.ui-chip--ghost{background:0 0}.ui-chip--muted{color:var(--color-text-secondary)}.ui-chip--ai{background:var(--ai-purple-soft);color:var(--ai-purple);border-color:var(--ai-purple-border)}.ui-chip--primary{color:var(--color-primary-hover);background:#e6f0f9;border-color:#a9cce8}.ui-risk{font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:.02em;color:#000;white-space:nowrap;border:1px solid;border-radius:3px;align-items:center;gap:4px;padding:2px 7px;font-size:10.5px;font-weight:600;line-height:1.6;display:inline-flex}.ui-risk--low{background:#009300;border-color:#006d00}.ui-risk--medium{background:#ff0;border-color:#d4b800}.ui-risk--high{background:#ffad5b;border-color:#e8821a}.ui-risk--critical{background:red;border-color:#c00}.ui-risk--none{color:#64748b;background:#f1f5f9;border-color:#cbd5e1}.ui-avatar{width:22px;height:22px;font-family:var(--font-mono);letter-spacing:.02em;color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:10px;font-weight:600;display:inline-flex}.ui-avatar--sm{width:18px;height:18px;font-size:9px}.ui-avatar--lg{width:28px;height:28px;font-size:11px}.ui-status{font-family:var(--font-sans);color:var(--color-text-secondary);align-items:center;gap:5px;font-size:11.5px;display:inline-flex}.ui-status:before{content:"";background:currentColor;border-radius:50%;flex-shrink:0;width:7px;height:7px}.ui-status--draft{color:var(--color-text-secondary)}.ui-status--progress{color:var(--color-primary)}.ui-status--review{color:#b45309}.ui-status--done{color:var(--color-success)}.ui-status--crit{color:var(--color-danger)}.ui-panel{background:var(--color-bg-card);border:1px solid var(--rule);border-radius:8px;flex-direction:column;min-height:0;display:flex;box-shadow:0 1px 3px #0000000f}.ui-panel__head{border-bottom:1px solid var(--rule);align-items:center;gap:10px;padding:12px 16px;display:flex}.ui-panel__title{font-family:var(--font-sans);color:var(--color-text);margin:0;font-size:13.5px;font-weight:600}.ui-panel__actions{align-items:center;gap:6px;margin-left:auto;display:inline-flex}.ui-panel__body{flex:1;min-height:0;padding:14px 16px}.ui-panel__body--flush{padding:0}.ui-card{background:var(--color-bg-card);border:1px solid var(--rule);border-radius:8px;padding:14px 16px}.ui-mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.ui-burndown__wrap{width:100%;min-width:0}.ui-burndown{display:block;overflow:visible}.ui-burndown__axis{font-family:var(--font-mono);fill:var(--color-text-secondary);font-size:10px}.ui-countmatrix{align-items:stretch;gap:3px;display:grid}.ui-countmatrix--empty{color:var(--color-text-secondary);padding:8px 0;font-size:13px;display:block}.ui-countmatrix__head{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);white-space:nowrap;align-items:center;font-size:9.5px;display:flex}.ui-countmatrix__head--col{text-align:center;padding-bottom:2px;display:block}.ui-countmatrix__head--margin{color:var(--color-text-secondary)}.ui-countmatrix__cell{border:1px solid var(--rule);background:var(--color-bg-page);min-height:30px;color:var(--color-text-muted);font-family:var(--font-mono);font-variant-numeric:tabular-nums;border-radius:4px;justify-content:center;align-items:center;font-size:12px;display:flex}.ui-countmatrix__cell--has{border-color:var(--rule-2);color:var(--color-text);font-weight:600}.ui-countmatrix__cell--clickable{cursor:pointer}.ui-countmatrix__total{min-height:30px;font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--color-text-secondary);justify-content:center;align-items:center;font-size:12px;font-weight:600;display:flex}.ui-countmatrix__total--col{align-items:flex-start;min-height:0;padding-top:3px}.ui-countmatrix__total--grand{min-height:0;color:var(--color-text);align-items:flex-start;padding-top:3px;font-weight:700}.sm-root{font-family:var(--font-sans);gap:0;display:flex}.sm-scroll{flex:1;min-width:0;padding:4px 8px 12px;overflow-x:auto}.sm-rail{z-index:1;background:linear-gradient(90deg, var(--color-bg-card) 85%, transparent);flex-shrink:0;width:112px;position:sticky;left:0}.sm-rail-row{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted);align-items:center;font-size:10.5px;display:flex;position:absolute;left:0;right:8px}.sm-rail-row button{all:unset;cursor:pointer;border-bottom:1px dotted var(--rule-2)}.sm-rail-row button:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.sm-tree,.sm-tree ul{justify-content:center;margin:0;padding:0;list-style:none;display:flex;position:relative}.sm-tree ul{padding-top:20px}.sm-tree li{outline:none;flex-direction:column;align-items:center;padding:20px 6px 0;display:flex;position:relative}.sm-tree>li{padding-top:0}.sm-tree li:before,.sm-tree li:after{content:"";border-top:1px solid var(--rule-2);width:50%;height:20px;position:absolute;top:0;right:50%}.sm-tree li:after{border-left:1px solid var(--rule-2);left:50%;right:auto}.sm-tree>li:before,.sm-tree>li:after,.sm-tree li:only-child:before{display:none}.sm-tree li:only-child:after{border-top:0}.sm-tree li:first-child:before,.sm-tree li:last-child:after{border:0}.sm-tree li:last-child:before{border-right:1px solid var(--rule-2);border-radius:0 4px 0 0}.sm-tree li:first-child:after{border-radius:4px 0 0}.sm-tree li:only-child:after{border-radius:0}.sm-tree ul:before{content:"";border-left:1px solid var(--rule-2);height:20px;position:absolute;top:0;left:50%}.sm-skip{border-left:1px dashed var(--rule-2);width:0}.sm-card{box-sizing:border-box;background:var(--color-bg-card);border:1px solid var(--rule-2);text-align:left;cursor:pointer;border-radius:8px;width:176px;padding:8px 10px;transition:opacity .15s,box-shadow .15s,border-color .15s;position:relative;overflow:hidden}.sm-card--compact{width:150px;padding:5px 8px}.sm-card:hover{border-color:var(--rule-3)}li:focus-visible>.sm-cardwrap>.sm-card{outline:2px solid var(--color-primary);outline-offset:2px}.sm-card--selected{border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary)}.sm-card--inactive{background:var(--color-bg-page);color:var(--color-text-muted);border-style:dashed}.sm-card--disabled{cursor:not-allowed;opacity:.45}.sm-card--lit{border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary)}.sm-card--focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary);background:var(--sm-primary-light)}.sm-card--source{border-color:var(--color-primary);border-style:double;border-width:3px}.sm-card--added{border-color:var(--sm-warning);box-shadow:0 0 0 2px var(--sm-warning);background:var(--sm-warning-light);border-style:dashed}.sm-card--hover{background:var(--sm-primary-light)}.sm-card--dim{opacity:.3;border-style:dotted}.sm-name{color:var(--color-text);white-space:nowrap;text-overflow:ellipsis;padding-right:18px;font-size:12.5px;font-weight:600;overflow:hidden}.sm-card--inactive .sm-name{color:var(--color-text-muted)}.sm-meta{align-items:center;gap:4px;min-width:0;margin-top:3px;display:flex}.sm-code{font-family:var(--font-mono);color:var(--color-text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.sm-level{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.04em;background:var(--color-border-light);border:1px solid var(--color-border);color:var(--color-text-secondary);white-space:nowrap;border-radius:3px;padding:0 5px;font-size:9.5px}.sm-counts{font-family:var(--font-mono);color:var(--color-text-secondary);white-space:nowrap;text-overflow:ellipsis;font-variant-numeric:tabular-nums;margin-top:4px;font-size:10.5px;overflow:hidden}.sm-badge{color:var(--color-primary);align-items:center;gap:3px;margin-top:2px;font-size:10px;font-weight:600;display:inline-flex}.sm-menu-btn{width:20px;height:20px;color:var(--color-text-muted);cursor:pointer;background:0 0;border:0;border-radius:4px;justify-content:center;align-items:center;padding:0;display:inline-flex;position:absolute;top:4px;right:4px}.sm-menu-btn:hover,.sm-menu-btn:focus-visible{background:var(--color-border-light);color:var(--color-text)}.sm-toggle{z-index:2;border:1px solid var(--rule-2);background:var(--color-bg-card);width:18px;height:18px;color:var(--color-text-secondary);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;padding:0;font-size:10px;line-height:1;display:inline-flex;position:absolute;bottom:-9px;left:50%;transform:translate(-50%)}.sm-cardwrap{flex-direction:column;align-items:center;display:flex;position:relative}.sm-menu{z-index:20;background:var(--color-bg-card);border:1px solid var(--rule-2);text-align:left;border-radius:6px;min-width:190px;padding:4px;position:absolute;top:28px;right:-8px;box-shadow:0 8px 24px #0f172a24}.sm-menu button{width:100%;font:inherit;color:var(--color-text);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:4px;padding:6px 8px;font-size:12.5px;display:block}.sm-menu button:hover,.sm-menu button:focus-visible{background:var(--color-border-light);outline:none}.sm-menu button:disabled{color:var(--color-text-muted);cursor:not-allowed}.sm-menu hr{border:0;border-top:1px solid var(--color-border);margin:4px 0}.sm-footer{color:var(--color-text-secondary);background:var(--color-bg-page);border:1px solid var(--color-border);border-radius:6px;margin-top:10px;padding:8px 12px;font-size:12.5px}.sm-heat{white-space:nowrap;text-overflow:ellipsis;font-variant-numeric:tabular-nums;margin-top:4px;font-size:11px;overflow:hidden}.sm-heat b{font-family:var(--font-mono);font-size:12px}.sm-issues{font-family:var(--font-mono);color:var(--color-text-secondary);font-variant-numeric:tabular-nums;white-space:nowrap;flex-wrap:nowrap;align-items:center;gap:6px;margin-top:4px;font-size:10.5px;display:flex;overflow:hidden}.sm-status{font-family:var(--font-sans);color:var(--color-text);align-items:center;gap:3px;font-weight:600;display:inline-flex}.sm-dot{border-radius:50%;width:7px;height:7px;display:inline-block}.sm-legend{color:var(--color-text-secondary);flex-wrap:wrap;align-items:center;gap:6px;margin-top:8px;font-size:11.5px;display:flex}.sm-legend-swatch{border:1px solid var(--rule-2);vertical-align:-2px;border-radius:2px;width:22px;height:12px;margin-right:3px;display:inline-block}:root{--color-primary:#005ca9;--color-primary-hover:#004d91;--ws-cell-select-fill:#004d9133;--ws-cell-select-edge:#004d91;--ws-cell-select-grid:#004d9159;--color-text:#1e293b;--color-text-secondary:#64748b;--color-text-muted:#94a3b8;--color-border:#e2e8f0;--color-border-light:#f1f5f9;--color-bg-page:#f8fafc;--color-bg-card:#fff;--color-danger:#dc2626;--color-success:#16a34a;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--shadow-modal:0 20px 60px #0000004d;--modal-overlay-bg:#0000004d;--font-sans:"IBM Plex Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Helvetica Neue", sans-serif;--font-serif:"IBM Plex Serif", Georgia, "Times New Roman", serif;--font-mono:"IBM Plex Mono", "SFMono-Regular", "Consolas", "Liberation Mono", monospace;--navy:#0a2134;--navy-2:#143a5e;--navy-3:#1f4a72;--ai-purple:#5b3a8a;--ai-purple-soft:#ece4f7;--ai-purple-border:#d2c4ec;--rule:#e2e8f0;--rule-2:#cbd5e1;--rule-3:#94a3b8}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.app{height:100vh;display:flex;overflow:hidden}.sidebar{color:#fff;width:250px;font-family:var(--font-sans);background:#0a2134;flex-direction:column;flex-shrink:0;padding:20px;transition:width .2s;display:flex;position:relative}.sidebar-collapsed{width:60px;padding:20px 8px}.sidebar-collapsed .logo{flex-direction:column;align-items:center;gap:8px;margin-bottom:20px;padding-bottom:14px}.sidebar-collapsed .sidebar-toggle{margin-left:0}.sidebar-collapsed .nav-link{justify-content:center;padding:10px 0}.sidebar-collapsed .nav-count,.sidebar-collapsed .nav-badge-dot{margin-left:0}.sidebar-toggle{color:#ffffffb3;cursor:pointer;background:#ffffff1a;border:none;border-radius:6px;justify-content:center;align-items:center;margin-left:auto;padding:4px;transition:all .2s;display:flex}.sidebar-toggle:hover{color:#fff;background:#fff3}.logo{border-bottom:1px solid #ffffff1a;align-items:center;gap:12px;margin-bottom:40px;padding-bottom:20px;display:flex}.logo h1{font-size:20px;font-weight:600}.nav-links{flex-direction:column;gap:8px;display:flex}.nav-link{color:#ffffffb3;border-radius:6px;align-items:center;gap:11px;padding:9px 12px;font-size:13px;font-weight:500;text-decoration:none;transition:background .15s,color .15s;display:flex;position:relative}.nav-link:hover,.nav-link.active{color:#fff;background:#ffffff1a}.nav-link.active:before{content:"";background:#4d9fe0;border-radius:0 2px 2px 0;width:3px;height:18px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.nav-label{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;color:#fff6;padding:14px 12px 5px;font-size:10px}.nav-count{font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:#ffffff8c;background:#ffffff14;border-radius:999px;margin-left:auto;padding:1px 6px;font-size:10px}.nav-link.active .nav-count{color:#fff;background:#1f53b8}.nav-badge-dot{background:var(--color-danger);border-radius:50%;width:6px;height:6px;margin-left:auto}.main-content{background:#f5f7fa;flex-direction:column;flex:1;padding:30px;display:flex;overflow:auto}.page-header{margin-bottom:30px}.page-header h1{color:#0a2134;margin-bottom:8px;font-size:32px}.page-header p{color:#64748b;font-size:16px}.btn{cursor:pointer;border:none;border-radius:6px;align-items:center;gap:8px;padding:10px 20px;font-size:14px;font-weight:500;transition:all .2s;display:inline-flex}.btn-primary{color:#fff;background:#005ca9}.btn-primary:hover{background:#004d91}.btn-secondary{color:#64748b;background:#fff;border:1px solid #e2e8f0}.btn-secondary:hover{background:#f8fafc}.btn-danger{color:#fff;background:#ef4444}.btn-danger:hover{background:#dc2626}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-sm{gap:6px;padding:6px 14px;font-size:13px}.card{background:#fff;border-radius:8px;padding:24px;box-shadow:0 1px 3px #0000001a}.form-group{margin-bottom:20px}.form-group label{color:#334155;margin-bottom:8px;font-weight:500;display:block}.form-group input,.form-group textarea,.form-group select{border:1px solid #e2e8f0;border-radius:6px;width:100%;padding:10px 12px;font-family:inherit;font-size:14px}.form-group textarea{resize:vertical;min-height:100px}.table{border-collapse:separate;border-spacing:0;width:100%;font-size:13px}.table th,.table td{text-align:center;border-bottom:1px solid #e2e8f0;padding:10px 12px}.table th{color:#475569;white-space:nowrap;z-index:10;background:#eef2f7;font-size:12px;font-weight:600;position:sticky;top:0;box-shadow:inset 0 -2px #cbd5e1}.table thead tr{border-bottom:2px solid #e2e8f0}.table tbody tr:nth-child(odd){background:#fafbfc}.table tbody tr:nth-child(2n){background:#fff}.table tbody tr:hover{background:#e6f0f9}.table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.badge{border-radius:12px;padding:4px 12px;font-size:12px;font-weight:500;display:inline-block}.badge-draft{color:#64748b;background:#f1f5f9}.badge-open{color:#003d73;background:#cce1f1}.badge-in_progress,.badge-in-progress,.badge-review{color:#92400e;background:#fef3c7}.badge-completed{color:#065f46;background:#d1fae5}.badge-closed{color:#64748b;background:#f1f5f9}.badge-low{color:#000;background:#009300}.badge-medium{color:#000;background:#ff0}.badge-high{color:#000;background:#ffad5b}.badge-critical{color:#000;background:red}.modal-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:#fff;border-radius:8px;width:90%;max-width:600px;max-height:90vh;padding:24px;overflow:auto}.modal h2{color:#0a2134;margin-bottom:20px}.hazop-table-container{-webkit-overflow-scrolling:touch;background:#fff;border-radius:8px;flex:1;min-height:0;overflow:auto;box-shadow:0 1px 3px #0000001a}.hazop-table{border-collapse:separate;border-spacing:0;background:#fff;width:max-content;min-width:100%}.hazop-table th{color:#475569;text-align:left;z-index:10;background:#f8fafc;border:1px solid #e2e8f0;padding:12px;font-size:13px;font-weight:600;position:sticky;top:0;box-shadow:0 1px #e2e8f0}.hazop-table td{vertical-align:middle;color:#334155;background:#fff;border:1px solid #e2e8f0;padding:10px 12px;font-size:13px}.hazop-table tr:hover td{background:#f8fafc}.table-cell-with-actions{justify-content:space-between;align-items:stretch;gap:8px;display:flex}.cell-add-btn{color:#64748b;cursor:pointer;background:#fff;border:1px dashed #cbd5e1;border-radius:4px;justify-content:center;align-items:center;gap:4px;width:100%;padding:4px 8px;font-size:12px;transition:all .2s;display:flex}.cell-add-btn:hover{color:#005ca9;background:#e6f0f9;border-style:solid;border-color:#005ca9}.view-toggle-container{background:#f1f5f9;border-radius:6px;gap:4px;padding:4px;display:flex}.view-toggle-btn{color:#64748b;cursor:pointer;background:0 0;border:none;border-radius:4px;align-items:center;gap:6px;padding:6px 12px;font-size:13px;transition:all .2s;display:flex}.view-toggle-btn.active{color:#1e293b;background:#fff;box-shadow:0 1px 2px #0000001a}.view-toggle-btn:hover:not(.active){color:#334155}@media (width<=768px){.hazop-table{font-size:12px}.hazop-table th,.hazop-table td{padding:6px 8px}.view-toggle-container{padding:2px}.view-toggle-btn{padding:4px 8px;font-size:12px}.view-toggle-btn span{display:none}.settings-header-container{padding:20px 16px 0!important}.settings-tab{padding:8px 12px!important;font-size:13px!important}.org-form-grid{grid-template-columns:1fr!important}}.scrollable-tab-bar{scrollbar-width:none}.scrollable-tab-bar::-webkit-scrollbar{display:none}td.cell-highlighted{background-color:#f0f7ff!important}@keyframes cell-highlight-flash{0%{background-color:#fde68a!important}60%{background-color:#fde68a!important}to{background-color:#f0f7ff!important}}td.cell-highlighted-flash{animation:1.5s ease-out forwards cell-highlight-flash}@keyframes cell-target-pulse{0%{outline-color:#f59e0b}70%{outline-color:#f59e0b}to{outline-color:#f59e0b00}}td.cell-target-pulse{outline-offset:-2px;outline:2px solid #f59e0b;animation:1.5s ease-out forwards cell-target-pulse}td.find-match{box-shadow:inset 0 0 0 2px #9ca3af}td.find-match .ws-cell-input,td.find-match input,td.find-match textarea,td.find-match span{background-color:#f3f4f6!important}td.find-match-active{box-shadow:inset 0 0 0 2px #2563eb}td.find-match .ws-cell-display,td.find-match-active .ws-cell-display,td.find-match-active .ws-cell-input,td.find-match-active input,td.find-match-active textarea,td.find-match-active span{background-color:#dbeafe!important}.row-drag-handle{cursor:grab;color:#cbd5e1;opacity:0;-webkit-user-drag:none;-webkit-user-select:none;user-select:none;flex-shrink:0;justify-content:center;align-items:center;width:16px;transition:opacity .15s,color .15s;display:flex}.row-drag-handle svg{pointer-events:none}.table-cell-with-actions:hover .row-drag-handle{opacity:1}.row-drag-handle:hover{color:#005ca9}.autofill-drop-indicator{z-index:20;pointer-events:none;background:#005ca9;height:3px;position:absolute;box-shadow:0 0 4px #3b82f680}.autofill-drop-indicator:before{content:"";background:#005ca9;border:2px solid #fff;border-radius:50%;width:10px;height:10px;position:absolute;top:-4px;left:-4px;box-shadow:0 0 3px #3b82f699}body.autofill-dragging,body.autofill-dragging *{cursor:grabbing!important;-webkit-user-select:none!important;user-select:none!important}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes spin{to{transform:rotate(360deg)}}.fullscreen-overlay{z-index:1001;background:#f8fafc;flex-direction:column;animation:.2s ease-out fullscreen-enter;display:flex;position:fixed;inset:0}@keyframes fullscreen-enter{0%{opacity:0}to{opacity:1}}.worksheet-toolbar{background:var(--color-bg-page);border-bottom:1px solid var(--rule);z-index:10;min-height:32px;font-family:var(--font-sans);flex-shrink:0;align-items:center;gap:4px;padding:4px 8px;display:flex;position:relative}.toolbar-collapsed-strip{cursor:pointer;color:#94a3b8;background:#f8fafc;border-bottom:1px solid #e2e8f0;flex-shrink:0;justify-content:center;align-items:center;height:14px;transition:background .1s,color .1s;display:flex}.toolbar-collapsed-strip:hover{color:#64748b;background:#e2e8f0}.toolbar-group{align-items:center;gap:2px;display:flex}.toolbar-divider{background:#cbd5e1;width:1px;height:20px;margin:0 4px}.toolbar-btn{width:28px;height:26px;color:var(--color-text-secondary);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:4px;justify-content:center;align-items:center;padding:0;transition:background .12s,border-color .12s,color .12s;display:inline-flex}.toolbar-btn:hover:not(:disabled){border-color:var(--rule);color:var(--color-text);background:#0f172a0d}.toolbar-btn:disabled{opacity:.4;cursor:default}.toolbar-btn-active{color:var(--color-primary-hover);background:#e6f0f9;border-color:#a9cce8}.toolbar-text-btn{gap:3px;width:auto;padding:0 6px;font-size:11px}.toolbar-zoom-label{font-family:var(--font-mono);color:var(--color-text-secondary);text-align:center;font-variant-numeric:tabular-nums;min-width:36px;font-size:11px}.toolbar-select{color:#334155;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:3px;outline:none;height:26px;padding:0 4px;font-size:11px}.toolbar-select:disabled{opacity:.4;cursor:default}.toolbar-select:focus{border-color:#80aed4}.toolbar-select-wide{min-width:100px}.toolbar-overflow-item{color:#475569;cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:8px;width:100%;padding:6px 12px;font-size:12px;display:flex}.toolbar-overflow-item:hover{background:#f1f5f9}.column-resize-handle{cursor:col-resize;z-index:5;background:0 0;width:4px;position:absolute;top:0;bottom:0;right:0}.column-resize-handle:hover{background:#005ca9}.column-drag-over-left{box-shadow:inset 3px 0 #005ca9}.column-drag-over-right{box-shadow:inset -3px 0 #005ca9}th[draggable=true]{cursor:grab}th[draggable=true]:active{cursor:grabbing}.dragging-column{opacity:.5}.cell-selected{outline-offset:-2px;outline:2px solid #005ca9}.ws-cell-input{width:100%;font-size:inherit;font-family:inherit;font-weight:inherit;font-style:inherit;-webkit-text-decoration:inherit;text-decoration:inherit;color:#334155;background:0 0;border:1px solid #0000;border-radius:4px;padding:4px 6px;transition:border-color .15s,background-color .15s}.ws-cell-input:hover{background:#f8fafc;border-color:#cbd5e1}.ws-cell-input:focus{background:#fff;border-color:#80aed4;outline:none;box-shadow:0 0 0 1px #80aed4}textarea.ws-cell-input{resize:none;overflow:hidden}textarea.ws-cell-input.ws-cell-autosize{min-height:unset;resize:none;line-height:1.4;overflow:hidden}select.ws-cell-input{cursor:pointer;appearance:none;min-width:0}select.ws-cell-input:hover{background:#f8fafc}.ws-cell-display{color:#334155;white-space:pre-wrap;word-break:break-word;cursor:default;border:1px solid #0000;border-radius:4px;width:100%;min-height:calc(1.4em + 10px);padding:4px 6px;line-height:1.4}.ws-cell-placeholder{color:#94a3b8;font-style:italic}.ws-cell-caret{color:#cbd5e1;flex-shrink:0}.ws-cell-display-num{color:#94a3b8;flex-shrink:0;padding-top:5px;font-size:12px;font-weight:500;line-height:1.4}td[data-ws-cell]{-webkit-user-select:none;user-select:none;outline:none}td[data-ws-cell].ws-cell-editing{-webkit-user-select:text;user-select:text}td[data-ws-cell].ws-cell-selected{box-shadow:inset 0 0 0 1px var(--ws-cell-select-grid)}td[data-ws-cell].ws-cell-active{outline:2px solid var(--ws-cell-select-edge);outline-offset:-2px}td[data-ws-cell].ws-cell-editing .ws-cell-input:focus{box-shadow:none;border-color:#0000}.ws-cell-input:disabled{color:#64748b;cursor:default;background:0 0;border-color:#0000}.ws-cell-input:disabled:hover{background:0 0;border-color:#0000}.risk-class-input::placeholder{color:#cbd5e1;opacity:1}
