:root{--ds-bg-base: #111318;--ds-bg-surface: #1a1d23;--ds-bg-elevated: #242830;--ds-bg-hover: #2e333d;--ds-accent: #8a9bae;--ds-accent-muted: #6b7a8a;--ds-accent-bg: rgba(138, 155, 174, .12);--ds-text: #e2e8f0;--ds-text-muted: #8a9bae;--ds-text-dim: #5a6a7a;--ds-border: #2a2e36;--ds-border-hover: #3a4050;--ds-success: #5a9a7a;--ds-success-bg: rgba(90, 154, 122, .15);--ds-danger: #c45c5c;--ds-danger-bg: rgba(196, 92, 92, .15);--ds-warning: #c9a227;--ds-warning-bg: rgba(201, 162, 39, .15);--ds-info: #5a8ab4;--ds-info-bg: rgba(90, 138, 180, .15);--ds-space-xs: .25rem;--ds-space-sm: .5rem;--ds-space-md: 1rem;--ds-space-lg: 1.5rem;--ds-space-xl: 2rem;--ds-radius-sm: 6px;--ds-radius-md: 8px;--ds-radius-lg: 12px;--ds-shadow: 0 4px 12px rgba(0, 0, 0, .4);--ds-shadow-lg: 0 8px 24px rgba(0, 0, 0, .5);--ds-transition: .15s ease}body{background:var(--ds-bg-base);color:var(--ds-text);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button{font-family:inherit;font-weight:500;cursor:pointer;transition:all var(--ds-transition);border:none;background:transparent}.btn-primary{background:#5a8ab4;border:none;color:#fff;padding:.6rem 1rem;border-radius:var(--ds-radius-sm)}.btn-primary:hover:not(:disabled){background:#4a7a9e}.btn-secondary{background:var(--ds-bg-elevated);border:1px solid var(--ds-border-hover);color:var(--ds-text);padding:.6rem 1rem;border-radius:var(--ds-radius-sm)}.btn-secondary:hover:not(:disabled){background:var(--ds-bg-hover);border-color:var(--ds-accent-muted)}.btn-success{background:#5a9a7a;border:none;color:#fff;padding:.6rem 1rem;border-radius:var(--ds-radius-sm)}.btn-success:hover:not(:disabled){background:#4a8a6a}.btn-danger{background:#c45c5c;border:none;color:#fff;padding:.6rem 1rem;border-radius:var(--ds-radius-sm)}.btn-danger:hover:not(:disabled){background:#a84a4a}.btn-ghost{background:transparent;border:none;color:var(--ds-text-muted);padding:.5rem;border-radius:var(--ds-radius-sm)}.btn-ghost:hover:not(:disabled){background:var(--ds-bg-hover);color:var(--ds-text)}.btn-sm{padding:.35rem .6rem;font-size:.8rem}.btn-icon{width:32px;height:32px;padding:0;display:flex;align-items:center;justify-content:center;border-radius:var(--ds-radius-sm);background:var(--ds-bg-elevated);border:1px solid var(--ds-border-hover);color:var(--ds-text)}.btn-icon:hover:not(:disabled){background:var(--ds-bg-hover);border-color:var(--ds-accent-muted)}.btn-warning{background:#c9a227;border:none;color:#fff;padding:.6rem 1rem;border-radius:var(--ds-radius-sm)}.btn-warning:hover:not(:disabled){background:#a8891f}.btn-teal{background:#4a9a8a;border:none;color:#fff;padding:.6rem 1rem;border-radius:var(--ds-radius-sm)}.btn-teal:hover:not(:disabled){background:#3a8a7a}.btn-outline-primary{background:transparent;border:1px solid #5a8ab4;color:#5a8ab4;padding:.6rem 1rem;border-radius:var(--ds-radius-sm)}.btn-outline-primary:hover:not(:disabled){background:#5a8ab426}.btn-outline-danger{background:transparent;border:1px solid #c45c5c;color:#c45c5c;padding:.6rem 1rem;border-radius:var(--ds-radius-sm)}.btn-outline-danger:hover:not(:disabled){background:#c45c5c26}.btn-lg{padding:.75rem 1.5rem;font-size:1rem}.btn-block{width:100%}.btn-purple{background:#7a6a9a;border:none;color:#fff;padding:.6rem 1rem;border-radius:var(--ds-radius-sm)}.btn-purple:hover:not(:disabled){background:#6a5a8a}.btn-secondary-light{background:#4a5060;border:1px solid #5a6070;color:#fff;padding:.6rem 1rem;border-radius:var(--ds-radius-sm)}.btn-secondary-light:hover:not(:disabled){background:#5a6070;border-color:#6a7080}.sidebar-btn{display:flex;align-items:center;justify-content:center;gap:.3rem;font-size:.75rem;font-weight:500;padding:.35rem .4rem}.btn-badge{background:#fff3;padding:.1rem .4rem;border-radius:8px;font-size:.7rem;font-weight:700}.btn-primary,.btn-secondary,.btn-secondary-light,.btn-success,.btn-danger,.btn-warning,.btn-teal,.btn-purple,.btn-ghost,.btn-outline-primary,.btn-outline-danger{display:inline-flex;align-items:center;justify-content:center;gap:.5rem}.welcome-btn{padding:.9rem 1.25rem;font-size:.95rem;font-weight:500}.welcome-btn-sm{padding:.6rem .8rem;font-size:.85rem}button:disabled{opacity:.4;cursor:not-allowed}.card{background:var(--ds-bg-surface);border:1px solid var(--ds-border);border-radius:var(--ds-radius-lg);padding:var(--ds-space-lg)}.card-elevated{background:var(--ds-bg-elevated);box-shadow:var(--ds-shadow)}input,select,textarea{background:var(--ds-bg-elevated);border:1px solid var(--ds-border);border-radius:var(--ds-radius-sm);color:var(--ds-text);padding:.5rem .75rem;font-size:.9rem;transition:border-color var(--ds-transition)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--ds-accent-muted)}input::placeholder{color:var(--ds-text-dim)}.tabs{display:flex;gap:0;border-bottom:none}.tabs button{padding:.75rem 1.25rem;color:var(--ds-text-muted);border-bottom:2px solid transparent;margin-bottom:-1px;background:transparent;border-radius:0}.tabs button:hover{color:var(--ds-text);background:var(--ds-bg-hover)}.tabs button.active{color:var(--ds-accent);border-bottom-color:var(--ds-accent)}.badge{display:inline-flex;align-items:center;padding:.15rem .5rem;border-radius:10px;font-size:.7rem;font-weight:600}.badge-accent{background:var(--ds-accent-bg);color:var(--ds-accent)}.badge-success{background:var(--ds-success-bg);color:var(--ds-success)}.badge-danger{background:var(--ds-danger-bg);color:var(--ds-danger)}.badge-warning{background:var(--ds-warning-bg);color:var(--ds-warning)}header{background:var(--ds-bg-surface);border-bottom:1px solid var(--ds-border);padding:.4rem var(--ds-space-xl) 0}header h1{color:var(--ds-text);font-size:1rem;font-weight:600;margin-bottom:0}header p{color:var(--ds-text-muted);font-size:.9rem}.sidebar{background:var(--ds-bg-surface);border:none;border-radius:0;padding:var(--ds-space-md)}.sidebar h3,.sidebar h4{color:var(--ds-text-muted);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--ds-space-sm)}.sidebar label{color:var(--ds-text-muted);font-size:.8rem}.settings-table{width:100%;border-collapse:collapse}.settings-table th{background:var(--ds-bg-elevated);color:var(--ds-text-muted);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;padding:.75rem;text-align:left;border-bottom:1px solid var(--ds-border)}.settings-table td{padding:.5rem .75rem;border-bottom:1px solid var(--ds-border);color:var(--ds-text)}.settings-table tr:hover{background:var(--ds-bg-hover)}.rdg{--rdg-background-color: var(--ds-bg-surface) !important;--rdg-header-background-color: var(--ds-bg-elevated) !important;--rdg-row-hover-background-color: var(--ds-bg-hover) !important;--rdg-selection-color: transparent !important;--rdg-border-color: var(--ds-border) !important;--rdg-color: var(--ds-text) !important;border:1px solid var(--ds-border);border-radius:var(--ds-radius-md);padding-bottom:32px}.rdg-cell[aria-selected=true]{outline:none!important;box-shadow:none!important}.rdg-cell:focus,.rdg-cell:focus-within{outline:none!important;box-shadow:none!important}.rdg-header-row{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:var(--ds-text-muted)}.modal-overlay{background:#000000bf;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content{background:var(--ds-bg-surface);border:1px solid var(--ds-border);border-radius:var(--ds-radius-lg);box-shadow:var(--ds-shadow-lg)}.modal-content h3{color:var(--ds-text);font-size:1.1rem;font-weight:600}.validation-ok{background:var(--ds-success-bg);border:1px solid rgba(74,222,128,.2);color:var(--ds-success);border-radius:var(--ds-radius-sm);padding:.5rem .75rem}.validation-warning{background:var(--ds-warning-bg);border:1px solid rgba(251,191,36,.2);color:var(--ds-warning);border-radius:var(--ds-radius-sm);padding:.5rem .75rem}.validation-error{background:var(--ds-danger-bg);border:1px solid rgba(248,113,113,.2);color:var(--ds-danger);border-radius:var(--ds-radius-sm);padding:.5rem .75rem}::-webkit-scrollbar{width:10px;height:16px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--ds-border);border-radius:8px}::-webkit-scrollbar-thumb:hover{background:var(--ds-text-dim)}.text-muted{color:var(--ds-text-muted)}.text-accent{color:var(--ds-accent)}.text-success{color:var(--ds-success)}.text-danger{color:var(--ds-danger)}.text-warning{color:var(--ds-warning)}.bg-surface{background:var(--ds-bg-surface)}.bg-elevated{background:var(--ds-bg-elevated)}.border{border:1px solid var(--ds-border)}.rounded{border-radius:var(--ds-radius-md)}.shadow{box-shadow:var(--ds-shadow)}@media(max-width:768px){input,select,textarea{font-size:16px}button{min-height:36px}table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}thead,tbody,tr{display:table;width:100%;table-layout:auto}[style*=gridTemplateColumns]{grid-template-columns:1fr!important}}@layer rdg{@layer Defaults,FocusSink,CheckboxInput,CheckboxIcon,CheckboxLabel,Cell,HeaderCell,SummaryCell,EditCell,Row,HeaderRow,SummaryRow,GroupedRow,Root;}@layer rdg.MeasuringCell{.mlln6zg7-0-0-beta-47{contain:strict;grid-row:1;visibility:hidden}}@layer rdg.Cell{.cj343x07-0-0-beta-47{position:relative;padding-block:0;padding-inline:8px;border-inline-end:1px solid var(--rdg-border-color);border-block-end:1px solid var(--rdg-border-color);grid-row-start:var(--rdg-grid-row-start);align-content:center;background-color:inherit;white-space:nowrap;overflow:clip;text-overflow:ellipsis;outline:none}.cj343x07-0-0-beta-47[aria-selected=true]{outline:2px solid var(--rdg-selection-color);outline-offset:-2px}}@layer rdg.Cell{.csofj7r7-0-0-beta-47{position:sticky;z-index:1}.csofj7r7-0-0-beta-47:nth-last-child(1 of.csofj7r7-0-0-beta-47){box-shadow:var(--rdg-cell-frozen-box-shadow)}}@layer rdg.CheckboxInput{.c1bn88vv7-0-0-beta-47{display:block;margin:auto;inline-size:20px;block-size:20px}.c1bn88vv7-0-0-beta-47:focus-visible{outline:2px solid var(--rdg-checkbox-focus-color);outline-offset:-3px}.c1bn88vv7-0-0-beta-47:enabled{cursor:pointer}}@layer rdg.GroupCellContent{.g1s9ylgp7-0-0-beta-47{outline:none}}@layer rdg.GroupCellCaret{.cz54e4y7-0-0-beta-47{margin-inline-start:4px;stroke:currentColor;stroke-width:1.5px;fill:transparent;vertical-align:middle}.cz54e4y7-0-0-beta-47>path{transition:d .1s}}@layer rdg.DragHandle{.c1w9bbhr7-0-0-beta-47{--rdg-drag-handle-size: 8px;z-index:0;cursor:move;inline-size:var(--rdg-drag-handle-size);block-size:var(--rdg-drag-handle-size);background-color:var(--rdg-selection-color);place-self:end}.c1w9bbhr7-0-0-beta-47:hover{--rdg-drag-handle-size: 16px;border:2px solid var(--rdg-selection-color);background-color:var(--rdg-background-color)}}@layer rdg.DragHandle{.c1creorc7-0-0-beta-47{z-index:1;position:sticky}}@layer rdg.EditCell{.cis5rrm7-0-0-beta-47{padding:0}}@layer rdg.SortableHeaderCell{.h44jtk67-0-0-beta-47{display:flex}}@layer rdg.SortableHeaderCellName{.hcgkhxz7-0-0-beta-47{flex-grow:1;overflow:clip;text-overflow:ellipsis}}@layer rdg.HeaderCell{.c6l2wv17-0-0-beta-47{cursor:pointer}}@layer rdg.HeaderCell{.c1kqdw7y7-0-0-beta-47{touch-action:none}}@layer rdg.HeaderCell{.r1y6ywlx7-0-0-beta-47{cursor:col-resize;position:absolute;inset-block-start:0;inset-inline-end:0;inset-block-end:0;inline-size:10px}}.c1bezg5o7-0-0-beta-47{opacity:.5}.c1vc96037-0-0-beta-47{background-color:var(--rdg-header-draggable-background-color)}@layer rdg.Row{.r1upfr807-0-0-beta-47{display:contents;background-color:var(--rdg-background-color)}.r1upfr807-0-0-beta-47:hover{background-color:var(--rdg-row-hover-background-color)}.r1upfr807-0-0-beta-47[aria-selected=true]{background-color:var(--rdg-row-selected-background-color)}.r1upfr807-0-0-beta-47[aria-selected=true]:hover{background-color:var(--rdg-row-selected-hover-background-color)}}@layer rdg.FocusSink{.r190mhd37-0-0-beta-47{outline:2px solid var(--rdg-selection-color);outline-offset:-2px}}@layer rdg.FocusSink{.r139qu9m7-0-0-beta-47:before{content:"";display:inline-block;block-size:100%;position:sticky;inset-inline-start:0;border-inline-start:2px solid var(--rdg-selection-color)}}@layer rdg.HeaderRow{.h10tskcx7-0-0-beta-47{display:contents;background-color:var(--rdg-header-background-color);font-weight:700}.h10tskcx7-0-0-beta-47>.cj343x07-0-0-beta-47{z-index:2;position:sticky}.h10tskcx7-0-0-beta-47>.csofj7r7-0-0-beta-47{z-index:3}}@layer rdg.Cell{.c6ra8a37-0-0-beta-47{background-color:#ccf}}@layer rdg.Cell{.cq910m07-0-0-beta-47{background-color:#ccf}.cq910m07-0-0-beta-47.c6ra8a37-0-0-beta-47{background-color:#99f}}@layer rdg.SortIcon{.a3ejtar7-0-0-beta-47{fill:currentColor}.a3ejtar7-0-0-beta-47>path{transition:d .1s}}@layer rdg.Defaults{.rnvodz57-0-0-beta-47 *,.rnvodz57-0-0-beta-47 *:before,.rnvodz57-0-0-beta-47 *:after{box-sizing:inherit}}@layer rdg.Root{.rnvodz57-0-0-beta-47{--rdg-color: #000;--rdg-border-color: #ddd;--rdg-summary-border-color: #aaa;--rdg-background-color: hsl(0deg 0% 100%);--rdg-header-background-color: hsl(0deg 0% 97.5%);--rdg-header-draggable-background-color: hsl(0deg 0% 90.5%);--rdg-row-hover-background-color: hsl(0deg 0% 96%);--rdg-row-selected-background-color: hsl(207deg 76% 92%);--rdg-row-selected-hover-background-color: hsl(207deg 76% 88%);--rdg-checkbox-focus-color: hsl(207deg 100% 69%);--rdg-selection-color: #66afe9;--rdg-font-size: 14px;--rdg-cell-frozen-box-shadow: 2px 0 5px -2px rgba(136, 136, 136, .3);display:grid;color-scheme:var(--rdg-color-scheme, light dark);accent-color:light-dark(hsl(207deg 100% 29%),hsl(207deg 100% 79%));contain:content;content-visibility:auto;block-size:350px;border:1px solid var(--rdg-border-color);box-sizing:border-box;overflow:auto;background-color:var(--rdg-background-color);color:var(--rdg-color);font-size:var(--rdg-font-size)}.rnvodz57-0-0-beta-47:dir(rtl){--rdg-cell-frozen-box-shadow: -2px 0 5px -2px rgba(136, 136, 136, .3)}.rnvodz57-0-0-beta-47:before{content:"";grid-column:1/-1;grid-row:1/-1}.rnvodz57-0-0-beta-47.rdg-dark{--rdg-color-scheme: dark;--rdg-color: #ddd;--rdg-border-color: #444;--rdg-summary-border-color: #555;--rdg-background-color: hsl(0deg 0% 13%);--rdg-header-background-color: hsl(0deg 0% 10.5%);--rdg-header-draggable-background-color: hsl(0deg 0% 17.5%);--rdg-row-hover-background-color: hsl(0deg 0% 9%);--rdg-row-selected-background-color: hsl(207deg 76% 42%);--rdg-row-selected-hover-background-color: hsl(207deg 76% 38%);--rdg-checkbox-focus-color: hsl(207deg 100% 89%)}.rnvodz57-0-0-beta-47.rdg-light{--rdg-color-scheme: light}@media(prefers-color-scheme:dark){.rnvodz57-0-0-beta-47:not(.rdg-light){--rdg-color: #ddd;--rdg-border-color: #444;--rdg-summary-border-color: #555;--rdg-background-color: hsl(0deg 0% 13%);--rdg-header-background-color: hsl(0deg 0% 10.5%);--rdg-header-draggable-background-color: hsl(0deg 0% 17.5%);--rdg-row-hover-background-color: hsl(0deg 0% 9%);--rdg-row-selected-background-color: hsl(207deg 76% 42%);--rdg-row-selected-hover-background-color: hsl(207deg 76% 38%);--rdg-checkbox-focus-color: hsl(207deg 100% 89%)}}.rnvodz57-0-0-beta-47>:nth-last-child(1 of.rdg-top-summary-row)>.cj343x07-0-0-beta-47{border-block-end:2px solid var(--rdg-summary-border-color)}.rnvodz57-0-0-beta-47>:nth-child(1 of.rdg-bottom-summary-row)>.cj343x07-0-0-beta-47{border-block-start:2px solid var(--rdg-summary-border-color)}}@layer rdg.Root{.vlqv91k7-0-0-beta-47{-webkit-user-select:none;user-select:none}.vlqv91k7-0-0-beta-47 .r1upfr807-0-0-beta-47{cursor:move}}@layer rdg.FocusSink{.f1lsfrzw7-0-0-beta-47{grid-column:1/-1;pointer-events:none;z-index:1}}@layer rdg.FocusSink{.f1cte0lg7-0-0-beta-47{z-index:3}}@layer rdg.SummaryCell{.s8wc6fl7-0-0-beta-47{inset-block-start:var(--rdg-summary-row-top);inset-block-end:var(--rdg-summary-row-bottom)}}@layer rdg.SummaryRow{.skuhp557-0-0-beta-47>.cj343x07-0-0-beta-47{position:sticky}}@layer rdg.SummaryRow{.tf8l5ub7-0-0-beta-47>.cj343x07-0-0-beta-47{z-index:2}.tf8l5ub7-0-0-beta-47>.csofj7r7-0-0-beta-47{z-index:3}}@layer rdg.GroupedRow{.g1yxluv37-0-0-beta-47:not([aria-selected=true]){background-color:var(--rdg-header-background-color)}.g1yxluv37-0-0-beta-47>.cj343x07-0-0-beta-47:not(:last-child,.csofj7r7-0-0-beta-47),.g1yxluv37-0-0-beta-47>:nth-last-child(n+2 of.csofj7r7-0-0-beta-47){border-inline-end:none}}@layer rdg.TextEditor{.t7vyx3i7-0-0-beta-47{-webkit-appearance:none;-moz-appearance:none;appearance:none;box-sizing:border-box;inline-size:100%;block-size:100%;padding-block:0;padding-inline:6px;border:2px solid #ccc;vertical-align:top;color:var(--rdg-color);background-color:var(--rdg-background-color);font-family:inherit;font-size:var(--rdg-font-size)}.t7vyx3i7-0-0-beta-47:focus{border-color:var(--rdg-selection-color);outline:none}.t7vyx3i7-0-0-beta-47::placeholder{color:#999;opacity:1}}*{margin:0;padding:0;box-sizing:border-box}.app{min-height:100vh}.container{display:flex;gap:0;padding:0;min-height:calc(100vh - 100px)}.sidebar{width:170px;flex-shrink:0;transition:width .3s ease;background:var(--ds-bg-surface);border-right:1px solid var(--ds-border);padding:.5rem;min-height:100%;border-radius:0}.sidebar.collapsed{width:36px;padding:.3rem}.sidebar.collapsed:hover{background:var(--ds-bg-elevated)}.sidebar-toggle{width:100%;padding:.5rem;margin-bottom:.5rem;background:#2d3139;border:none;color:#888;cursor:pointer;border-radius:4px;font-size:.8rem;display:flex;align-items:center;justify-content:center;gap:.5rem}.sidebar-toggle:hover{background:#3d4149;color:#e0e0e0}.card h3{margin-bottom:1rem;color:var(--ds-text)}.card h4{margin:1rem 0 .5rem;color:var(--ds-text-muted)}label{display:block;margin:1rem 0 .5rem;color:var(--ds-text-muted);font-size:.9rem}select{width:100%;max-height:none}select option{padding:.5rem;background:var(--ds-bg-elevated)}select[multiple]{height:120px}.limit-box{background:var(--ds-accent-bg);border:1px solid rgba(94,234,212,.2);padding:1rem;border-radius:var(--ds-radius-sm);margin:1rem 0;color:var(--ds-accent)}hr{border:none;border-top:1px solid var(--ds-border);margin:1rem 0}.sidebar button{width:100%;margin-top:.5rem}.message{margin-top:1rem;padding:.75rem;border-radius:var(--ds-radius-sm);background:var(--ds-bg-elevated);border:1px solid var(--ds-border);font-size:.9rem;color:var(--ds-text-muted)}.settings-view{width:100%}.tabs{display:flex;gap:0;margin-bottom:0;border-bottom:2px solid #2d3139;align-items:center}.tabs button{padding:.4rem .75rem;background:transparent;border:none;color:#888;cursor:pointer;font-size:.8rem;border-bottom:2px solid transparent;margin-bottom:-2px;transition:all .2s}.tabs button:hover{color:#e0e0e0}.tabs button.active{color:#5a8ab4;border-bottom-color:#5a8ab4}.settings-section{background:var(--ds-bg-surface);padding:1.5rem;border-radius:var(--ds-radius-lg);border:1px solid var(--ds-border)}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.section-header h3{margin:0;color:var(--ds-text)}.table-container{overflow-x:auto;max-height:calc(100vh - 300px);overflow-y:auto}.settings-table input,.settings-table select{width:100%;padding:.4rem;font-size:.85rem}.settings-table input:disabled,.settings-table select:disabled{background:transparent;border-color:transparent;cursor:default}.settings-table tr.editing{background:var(--ds-bg-hover)}.btn-sm{padding:.3rem .6rem;font-size:.8rem;margin:0 .2rem;width:auto}.btn-sm.btn-success{background:#5a9a7a;border:none;color:#fff}.btn-sm.btn-success:hover{background:#4a8a6a}.btn-sm.btn-danger{background:#c45c5c;border:none;color:#fff}.btn-sm.btn-danger:hover{background:#a84a4a}button.btn-sm:not(.btn-success):not(.btn-danger):not(.btn-warning):not(.btn-primary):not(.btn-secondary):not(.btn-ghost){background:var(--ds-bg-elevated);border:1px solid var(--ds-border-hover);color:#5a8ab4}button.btn-sm:not(.btn-success):not(.btn-danger):not(.btn-warning):not(.btn-primary):not(.btn-secondary):not(.btn-ghost):hover{background:var(--ds-bg-hover);border-color:#5a8ab4}.content{flex:1;overflow-x:auto;padding:.5rem 1rem}.content h2{color:var(--ds-text);margin-bottom:1.5rem}.table-container-full{background:var(--ds-bg-surface);border-radius:var(--ds-radius-lg);padding:1.5rem;border:1px solid var(--ds-border);overflow:hidden}.rdg-cell{padding:0!important;-webkit-user-select:text;user-select:text}.rdg-cell.day-shift{background-color:#d4a84b!important;color:#000!important}.rdg-cell.night-shift{background-color:#6b8cba!important;color:#000!important}.saved-schedules-view{width:100%}.saved-schedules-view h2{color:var(--ds-text)}.saved-schedules-view textarea{width:100%;padding:.5rem;font-family:inherit;resize:vertical}.rdg-cell.week-separator,.rdg-header-row .week-separator-header{border-left:3px solid var(--ds-accent-muted)!important}.rdg-cell.month-separator,.rdg-header-row .month-separator-header{border-left:5px solid #7b4fa2!important}.holiday-header{background-color:var(--ds-danger-bg)!important}.non-preferred-schedule{font-weight:700;color:var(--ds-danger)!important}.schedule-legend{display:flex;gap:1.5rem;padding:.75rem 1rem;background:var(--ds-bg-surface);border:1px solid var(--ds-border);border-radius:var(--ds-radius-sm);margin-bottom:1rem;font-size:.85rem;flex-wrap:wrap;align-items:center}.schedule-legend-item{display:flex;align-items:center;gap:.5rem;color:var(--ds-text-muted)}.legend-color{width:20px;height:20px;border-radius:4px;border:1px solid var(--ds-border)}.legend-day{background:#d4a84b}.legend-night{background:#6b8cba}.legend-holiday{background:var(--ds-danger-bg);border-color:var(--ds-danger)}.legend-shutdown{background:var(--ds-info-bg);border-color:var(--ds-info)}.legend-week-sep{background:transparent;border-left:3px solid var(--ds-accent-muted);width:10px}.legend-month-sep{background:transparent;border-left:5px solid #7b4fa2;width:10px}.legend-non-pref{background:#d4a84b;color:var(--ds-danger);font-weight:700;font-size:.7rem;display:flex;align-items:center;justify-content:center}.legend-sspot-error{background:var(--ds-danger-bg)}.schedule-header-bar{background:var(--ds-bg-surface);border-radius:var(--ds-radius-md);margin-bottom:.5rem;overflow:visible;border:1px solid var(--ds-border)}.schedule-header-row{display:flex;align-items:center;justify-content:space-between;padding:.3rem 1rem;min-height:34px;gap:2rem}.schedule-header-left{display:flex;align-items:center;gap:.75rem}.schedule-header-title{font-family:Inter,sans-serif;font-weight:600;font-size:.875rem;color:#fff;white-space:nowrap}.schedule-header-btn{display:flex;align-items:center;gap:4px;padding:4px 10px;background:var(--ds-bg-elevated);border:none;border-radius:4px;color:#fff;font-size:.75rem;font-weight:400;cursor:pointer;transition:background var(--ds-transition)}.schedule-header-btn:hover{background:var(--ds-bg-hover)}.schedule-header-btn-chevron{color:#9999a6;font-size:.625rem}.schedule-header-version{display:flex;align-items:center;gap:4px;font-size:.75rem;color:var(--ds-info);background:var(--ds-bg-elevated);padding:4px 10px;border-radius:4px}.schedule-header-legend{display:flex;align-items:center;gap:14px}.schedule-header-notifications{display:flex;align-items:center;position:relative;margin-left:auto}.schedule-header-legend-item{display:flex;align-items:center;gap:5px}.schedule-header-legend-item span{font-size:.6875rem;color:#fff;font-weight:400;white-space:nowrap}.schedule-header-legend-dot{width:12px;height:12px;border-radius:2px;flex-shrink:0}.schedule-header-legend-outline{background:transparent;border:1.5px solid #fff}.schedule-header-separator{height:1px;background:var(--ds-border);width:100%}.schedule-header-warning{display:flex;align-items:center;justify-content:space-between;padding:.2rem 1rem;background:#f2c40f;min-height:24px;border-radius:0 0 var(--ds-radius-md) var(--ds-radius-md)}.schedule-header-warning-content{display:flex;align-items:center;gap:.4rem;color:#4d400d;font-size:.625rem;font-weight:400}.schedule-header-warning-actions{display:flex;align-items:center}.rules-panel{background:var(--ds-bg-surface);border-radius:var(--ds-radius-md);margin-bottom:1rem;border:1px solid var(--ds-border)}.rules-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:var(--ds-bg-elevated);border-radius:var(--ds-radius-md);font-size:.9rem;color:var(--ds-text-muted);cursor:pointer}.rules-header:hover{background:var(--ds-bg-hover);color:var(--ds-text)}.rules-badge{background:var(--ds-info);color:#fff;padding:.15rem .5rem;border-radius:10px;font-size:.75rem;font-weight:700}.rules-content{padding:1rem;border-top:1px solid var(--ds-border)}.rules-templates{margin-bottom:1rem}.templates-header{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;font-size:.85rem;color:var(--ds-text-muted)}.templates-actions{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}.template-chip{display:flex;align-items:center;gap:.3rem;background:var(--ds-bg-elevated);border:1px solid var(--ds-border);padding:.3rem .6rem;border-radius:var(--ds-radius-sm);font-size:.8rem;cursor:pointer}.template-chip:hover{background:var(--ds-bg-hover);border-color:var(--ds-border-hover)}.template-chip span:first-child{color:var(--ds-text)}.template-chip svg{color:var(--ds-text-dim);cursor:pointer}.template-chip svg:hover{color:var(--ds-danger)}.btn-small{display:flex;align-items:center;gap:.3rem;padding:.3rem .6rem;background:#5a8ab4;border:none;color:#fff;border-radius:var(--ds-radius-sm);font-size:.8rem;cursor:pointer;width:auto;margin:0}.btn-small:hover{background:#4a7a9e}.rules-list{display:flex;flex-direction:column;gap:.75rem}.rule-item{background:var(--ds-bg-elevated);border-radius:var(--ds-radius-sm);border:1px solid var(--ds-border);overflow:hidden}.rule-item.disabled{opacity:.5}.rule-header{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;background:var(--ds-bg-hover)}.rule-name-input{background:transparent;border:none;color:var(--ds-text);font-size:.9rem;font-weight:500;padding:.25rem;flex:1}.rule-name-input:focus{outline:none;background:var(--ds-bg-surface);border-radius:var(--ds-radius-sm)}.rule-actions{display:flex;gap:.3rem}.btn-toggle,.btn-delete{width:28px;height:28px;padding:0;margin:0;display:flex;align-items:center;justify-content:center;background:var(--ds-bg-surface);border:1px solid var(--ds-border);border-radius:var(--ds-radius-sm);cursor:pointer;color:var(--ds-text-muted)}.btn-toggle:hover{background:#5a8ab4;border-color:#5a8ab4;color:#fff}.btn-toggle.active{color:var(--ds-success)}.btn-delete:hover{background:var(--ds-danger-bg);border-color:#f871714d;color:var(--ds-danger)}.rule-row{display:flex;align-items:flex-start;gap:.75rem;margin-bottom:.5rem;font-size:.85rem;flex-wrap:wrap}.rule-row>label{width:90px;flex-shrink:0;color:var(--ds-text-muted);margin:0;padding-top:.3rem}.rule-body{padding:.75rem}.rule-body .rule-row{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.rule-scope-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1rem;margin-top:.5rem}.scope-section{background:var(--ds-bg-base);border:1px solid var(--ds-border);border-radius:var(--ds-radius-sm);padding:.5rem}.scope-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.4rem;font-size:.8rem;color:var(--ds-text-muted)}.scope-btns{display:flex;gap:.25rem}.scope-btns button{padding:.15rem .4rem;font-size:.7rem;background:var(--ds-bg-elevated);border:1px solid var(--ds-border);color:var(--ds-text-muted);border-radius:3px;cursor:pointer;margin:0;width:auto}.scope-btns button:hover{background:var(--ds-bg-hover);color:var(--ds-text)}.scope-checkbox-list{max-height:120px;overflow-y:auto;display:flex;flex-direction:column;gap:.15rem}.scope-checkbox-item{display:flex;align-items:center;gap:.4rem;font-size:.8rem;color:var(--ds-text-muted);cursor:pointer;padding:.15rem .25rem;border-radius:3px;margin:0}.scope-checkbox-item:hover{background:var(--ds-bg-hover);color:var(--ds-text)}.scope-checkbox-item input{width:14px;height:14px;margin:0;cursor:pointer}.rule-select,.rule-input{padding:.4rem .5rem;background:var(--ds-bg-surface);border:1px solid var(--ds-border);border-radius:var(--ds-radius-sm);color:var(--ds-text);font-size:.85rem}.rule-select:focus,.rule-input:focus{outline:none;border-color:var(--ds-accent-muted)}.rule-time-range{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.rule-scope{display:flex;flex-direction:column;gap:.5rem;flex:1}.scope-row{display:flex;align-items:center;gap:.5rem}.scope-row label{width:80px;margin:0;padding:0}.rule-multiselect{width:200px;height:80px;background:var(--ds-bg-surface);border:1px solid var(--ds-border);border-radius:var(--ds-radius-sm);color:var(--ds-text);font-size:.8rem}.rule-multiselect-small{width:150px;height:60px;background:var(--ds-bg-surface);border:1px solid var(--ds-border);border-radius:var(--ds-radius-sm);color:var(--ds-text);font-size:.8rem}.scope-multiselect{margin-top:.3rem}.btn-add-rule{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.6rem;background:transparent;border:1px dashed var(--ds-accent-muted);color:var(--ds-text-muted);border-radius:var(--ds-radius-sm);cursor:pointer;font-size:.85rem;margin-top:.75rem}.btn-add-rule:hover{background:var(--ds-bg-hover);border-style:solid;color:var(--ds-text)}.rules-validation{margin-top:.75rem;display:flex;flex-direction:column;gap:.3rem}.modal-content h3{margin-bottom:1rem}.modal-input{width:100%;padding:.6rem;margin-bottom:.75rem}.modal-textarea{width:100%;padding:.6rem;margin-bottom:1rem;min-height:80px;resize:vertical;font-family:inherit}.modal-actions{display:flex;gap:.75rem;justify-content:flex-end}.modal-actions button{width:auto;padding:.5rem 1rem}.notifications-panel{background:var(--ds-bg-surface);border-radius:var(--ds-radius-md);padding:1rem;margin-top:1rem;border:1px solid var(--ds-border)}.notifications-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem;color:var(--ds-warning);font-size:.9rem}.notification-item{display:flex;align-items:flex-start;gap:.5rem;padding:.5rem;background:var(--ds-bg-elevated);border-radius:var(--ds-radius-sm);margin-bottom:.5rem;font-size:.85rem}.notification-item.error{border-left:3px solid var(--ds-danger)}.notification-item.warning{border-left:3px solid var(--ds-warning)}.notification-item.info{border-left:3px solid var(--ds-info)}.rules-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000}.rules-modal{background:var(--ds-bg-surface);border-radius:var(--ds-radius-lg);width:900px;max-width:95vw;max-height:85vh;display:flex;flex-direction:column;box-shadow:var(--ds-shadow-lg);border:1px solid var(--ds-border)}.rules-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;background:var(--ds-bg-elevated);border-radius:var(--ds-radius-lg) var(--ds-radius-lg) 0 0;border-bottom:1px solid var(--ds-border);color:var(--ds-text);font-weight:500}.rules-modal-close{width:32px;height:32px;padding:0;margin:0;display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:var(--ds-text-muted);cursor:pointer;border-radius:var(--ds-radius-sm)}.rules-modal-close:hover{background:var(--ds-bg-hover);color:var(--ds-text)}.rules-modal-content{padding:1.25rem;overflow-y:auto;flex:1}.rules-badge-inline{background:var(--ds-info);color:#fff;padding:.1rem .45rem;border-radius:8px;font-size:.75rem;font-weight:700}.notifications-panel-compact{background:var(--ds-bg-surface);border-radius:var(--ds-radius-md);margin-top:1rem;border:1px solid var(--ds-border)}.notifications-groups{max-height:400px;overflow-y:auto}.notification-group{border-bottom:1px solid var(--ds-border)}.notification-group:last-child{border-bottom:none}.notification-group-header{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;cursor:pointer;color:var(--ds-warning);font-size:.85rem;background:var(--ds-bg-elevated)}.notification-group-header:hover{background:var(--ds-bg-hover)}.notification-group-header.manual{color:var(--ds-success)}.notification-group-header.critical{color:var(--ds-danger)}.notification-group-count{background:var(--ds-bg-hover);color:var(--ds-text-muted);padding:.1rem .4rem;border-radius:6px;font-size:.7rem;margin-left:auto}.notification-group-count.critical{background:var(--ds-danger-bg);color:var(--ds-danger)}.notification-group-items{padding:.25rem 1rem .5rem 2.5rem;background:var(--ds-bg-base)}.notification-item{font-size:.75rem;color:var(--ds-text-muted);padding:.15rem 0}.notification-item.manual{color:var(--ds-success)}.notification-item.critical{color:var(--ds-danger)}.notification-item strong{color:var(--ds-text)}.notification-item-more{font-size:.75rem;color:var(--ds-text-dim);font-style:italic;padding-top:.25rem}.notifications-panel-inline{background:var(--ds-bg-surface);border-radius:var(--ds-radius-md);border:1px solid var(--ds-border);position:relative;min-width:280px}.notifications-panel-inline .notifications-header{padding:.5rem .75rem;border-radius:var(--ds-radius-md);border-bottom:none}.notifications-panel-inline .notifications-groups{position:absolute;top:100%;right:0;background:var(--ds-bg-surface);border:1px solid var(--ds-border);border-radius:var(--ds-radius-md);min-width:350px;max-height:400px;overflow-y:auto;z-index:100;box-shadow:var(--ds-shadow-lg)}.notification-types-count{background:var(--ds-info);color:#fff;padding:.1rem .4rem;border-radius:6px;font-size:.7rem;font-weight:700;margin-left:.5rem}.notifications-chips-container{display:flex;flex-direction:column;gap:.5rem;position:relative;height:100%}.notifications-chips-bar{display:flex;gap:.35rem;flex-wrap:wrap;align-items:stretch;flex:1}.notification-chip{display:flex;align-items:center;gap:.35rem;padding:.3rem .6rem;background:var(--ds-bg-surface);border:1.5px solid var(--chip-color, var(--ds-border));border-radius:6px;cursor:pointer;transition:all var(--ds-transition);font-size:.75rem;color:var(--chip-color, var(--ds-text-muted));font-weight:500;align-self:stretch}.notification-chip:hover{background:var(--ds-bg-elevated)}.notification-chip.expanded{background:var(--chip-color, var(--ds-text-muted));color:#fff}.notification-chip.expanded .chip-count{background:#ffffff40;color:#fff}.chip-label{font-weight:500;white-space:nowrap}.chip-count{background:var(--chip-color, var(--ds-bg-elevated));padding:.1rem .4rem;border-radius:4px;font-size:.7rem;font-weight:700;color:#fff;min-width:18px;text-align:center}.notifications-details{position:absolute;top:100%;right:0;background:var(--ds-bg-surface);border-radius:var(--ds-radius-md);border:1px solid var(--ds-border);max-height:350px;min-width:540px;overflow-y:auto;z-index:100;box-shadow:var(--ds-shadow-lg);margin-top:.5rem}.notification-detail-group{border-bottom:1px solid var(--ds-border)}.notification-detail-group:last-child{border-bottom:none}.notification-detail-group .detail-header{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:var(--ds-bg-elevated);font-size:.85rem;font-weight:500;color:var(--ds-text-muted)}.notification-detail-group.critical .detail-header{color:var(--ds-danger)}.notification-detail-group.rules .detail-header{color:var(--ds-warning)}.notification-detail-group.validation .detail-header{color:var(--ds-danger)}.notification-detail-group.manual .detail-header{color:var(--ds-info)}.notification-detail-group .detail-items{padding:.35rem .75rem .5rem 2rem}.notification-detail-group .detail-item{font-size:.8rem;color:var(--ds-text);padding:.2rem 0;line-height:1.4}.notification-detail-group .detail-item strong{color:var(--ds-text)}.notification-detail-group .detail-item.more{color:var(--ds-text-muted);font-style:italic}.notification-detail-group .detail-item.clickable{cursor:pointer;border-radius:var(--ds-radius-sm);padding:.2rem .4rem;margin:.1rem -.4rem}.notification-detail-group .detail-item.clickable:hover{background:var(--ds-bg-hover)}.notification-detail-group.critical .detail-item{color:#fca5a5}.notification-detail-group.manual .detail-item{color:#93c5fd}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spin{animation:spin 1s linear infinite}@media(max-width:768px){.container{flex-direction:column}.sidebar{width:100%!important;min-height:auto;border-right:none;border-bottom:1px solid var(--ds-border);padding:.75rem}.sidebar.collapsed{width:100%!important;padding:.5rem}header{padding:.75rem 1rem 0;position:relative}header h1{font-size:1.1rem}header [style*="position: absolute"]{position:static!important;top:auto!important;right:auto!important}.tabs{overflow-x:auto;-webkit-overflow-scrolling:touch;flex-wrap:nowrap!important;scrollbar-width:none;gap:0!important}.tabs::-webkit-scrollbar{display:none}.tabs button{white-space:nowrap;flex-shrink:0;padding:.6rem .75rem;font-size:.8rem}.card{padding:.75rem}.table-container,.table-container-full{max-height:none}table{font-size:.8rem}.rule-scope-grid{grid-template-columns:1fr!important}.container>div:last-child{min-width:0;overflow-x:auto}}@media(max-width:480px){header h1{font-size:.95rem}.btn-sm{padding:.25rem .4rem;font-size:.75rem}.card{padding:.5rem;border-radius:8px}}
