@font-face{font-family:Rubik;src:url(../fonts/Rubik-VariableFont.ttf) format("truetype");font-weight:300 900;font-style:normal;font-display:swap}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #0f1117;--bg-card: #1a1d27;--bg-card-end: #1e2235;--bg-hover: #232736;--border: #2a2e3d;--text: #e4e6ed;--text-muted: #8b8fa3;--text-secondary: #aab0c0;--accent: #3a7cc5;--accent-hover: #5ba0e8;--accent-glow: rgba(74, 144, 217, .15);--success: #1d9050;--warning: #f39c12;--danger: #e74c3c;--danger-glow: rgba(231, 76, 60, .18);--radius: 8px;--tooltip-bg: #1e2130;--tooltip-shadow: rgba(0, 0, 0, .5);--alert-error-text: #f5a7a0;--alert-warn-text: #f7d794;--optim-improved: #f59e0b;--dirty-bg: #fef3cd;--dirty-text: #856404;--dirty-border: #ffc107;--code-bg: rgba(255, 255, 255, .1);--card-hover-bg: rgba(255, 255, 255, .06);--card-hover-shadow: rgba(0, 0, 0, .2);--rest-muted: #95a5a6;--dotted-border: rgba(255, 255, 255, .25);--bg-row: #252538;--bg-main: #181825;--task-cell-bg: rgba(74, 144, 217, .03);--time-cell-bg: rgba(0, 0, 0, .1);--text-inverse: #ffffff;--frozen: #00bcd4;--frozen-glow: rgba(0, 188, 212, .15);--info: #3498db;--cross-both: #8e44ad;--warn-accent: #e2b340;--rescue-action: #ff5722;--rescue-action-hover: #e64a19;--danger-hover: #c0392b;--transition-fast: .15s;--transition-normal: .25s;--transition-slow: .35s}[data-theme=light]{--bg: #eaecf2;--bg-card: #ffffff;--bg-card-end: #eef1f8;--bg-hover: #dfe2ea;--border: #d5d8e0;--text: #1a1d27;--text-muted: #5f6577;--text-secondary: #6b7280;--accent: #2d68b8;--accent-hover: #2e6bc4;--accent-glow: rgba(59, 125, 216, .12);--success: #167a3e;--warning: #d4860e;--danger: #c9302c;--danger-glow: rgba(201, 48, 44, .14);--radius: 8px;--tooltip-bg: #ffffff;--tooltip-shadow: rgba(0, 0, 0, .15);--alert-error-text: #c0392b;--alert-warn-text: #b8710a;--optim-improved: #d4860e;--dirty-bg: #fff8e1;--dirty-text: #6d5300;--dirty-border: #e6ac00;--code-bg: rgba(0, 0, 0, .06);--card-hover-bg: rgba(0, 0, 0, .03);--card-hover-shadow: rgba(0, 0, 0, .08);--rest-muted: #7f8c8d;--dotted-border: rgba(0, 0, 0, .2);--bg-row: #e8ebf3;--bg-main: #e9ecf3;--task-cell-bg: rgba(59, 125, 216, .04);--time-cell-bg: rgba(0, 0, 0, .05);--text-inverse: #ffffff;--frozen: #00838f;--frozen-glow: rgba(0, 131, 143, .12);--info: #2471a3;--cross-both: #6c3483;--warn-accent: #96700a;--rescue-action: #e64a19;--rescue-action-hover: #d84315;--danger-hover: #a32520;--transition-fast: .15s;--transition-normal: .25s;--transition-slow: .35s}.hidden{display:none!important}body{font-family:Rubik,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background:var(--bg);color:var(--text);line-height:1.6;min-height:100vh;overscroll-behavior-x:contain}html{overscroll-behavior-x:contain}body,header,#app,.card,.score-card,.template-card,.profile-card,.subteam-card,.assignment-card,.optim-card,.section,.algo-section,.preflight-panel,.blackout-panel,.snapshot-panel,.preset-panel,.sidebar-senior-panel,.live-mode-controls,.weekly-dashboard,.schedule-table-wrapper,.schedule-grid-container,.schedule-layout,.schedule-main,.participant-sidebar,.profile-view-root,.profile-topbar,.profile-grid,.gantt-container,.gantt-header,.gantt-row,.gantt-block,.tab-nav,.tab-toolbar,.day-navigator,.table,.table-responsive,.table-slots,.btn-primary,.btn-swap,.btn-sm,.btn-outline,.btn-danger-outline,.btn-danger,.btn-rescue,.btn-back,.btn-apply-plan,.btn-xs,.btn-senior-toggle,.btn-rescue-more,.btn-rescue-dismiss,.tab-btn,.day-tab,.pill,.badge,.badge-sm,.badge-outline,.rest-badge,.cross-day-badge,.frozen-label,.alert,.dirty-notice,.tooltip,.task-detail-tooltip,.participant-tooltip,.rescue-hover-tt,.theme-segmented,.sidebar-toggle,.gm-modal-dialog,.gm-modal-header,.gm-modal-body,.gm-modal-actions,.rescue-modal,.rescue-plan,.bulk-dialog,.export-modal,.gm-select-trigger,.gm-select-option,.filter-pills,.checkbox-label,input,select,textarea{transition:background-color var(--transition-slow) cubic-bezier(.4,0,.2,1),color var(--transition-slow) cubic-bezier(.4,0,.2,1),border-color var(--transition-slow) cubic-bezier(.4,0,.2,1),box-shadow var(--transition-slow) cubic-bezier(.4,0,.2,1),fill var(--transition-slow) cubic-bezier(.4,0,.2,1),stroke var(--transition-slow) cubic-bezier(.4,0,.2,1)}::view-transition-old(root),::view-transition-new(root){animation:theme-morph .5s cubic-bezier(.4,0,.2,1);mix-blend-mode:normal}::view-transition-old(root){animation-name:theme-fade-out}::view-transition-new(root){animation-name:theme-fade-in}@keyframes theme-fade-out{0%{opacity:1;filter:brightness(1)}to{opacity:0;filter:brightness(1.15)}}@keyframes theme-fade-in{0%{opacity:0;filter:brightness(.85)}to{opacity:1;filter:brightness(1)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition-duration:.01ms!important}::view-transition-old(root),::view-transition-new(root){animation-duration:.01ms!important}}#app{max-width:1400px;margin:0 auto;padding:24px}#app:focus{outline:none}.gm-skip-link{position:absolute;top:0;inset-inline-start:0;transform:translateY(-150%);transition:transform .15s ease-out;padding:.6rem 1rem;background:var(--accent, #27ae60);color:#fff;font-family:Rubik,sans-serif;font-weight:600;text-decoration:none;border-radius:0 0 6px 6px;z-index:100000}.gm-skip-link:focus{transform:translateY(0);outline:2px solid #fff;outline-offset:-4px}header{text-align:center;margin-bottom:10px;padding:8px 16px;background:linear-gradient(135deg,var(--bg-card),var(--bg-card-end));border-radius:var(--radius);border:1px solid var(--border);position:relative;overflow:hidden}header:before{content:"";position:absolute;inset-block:0;inset-inline-start:0;width:3px;background:linear-gradient(to bottom,var(--accent),transparent);border-radius:3px}.header-top{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap}.undo-redo-group{display:flex;gap:6px}.undo-redo-group button{font-size:.8rem;padding:5px 12px;white-space:nowrap}.undo-redo-group button:disabled{opacity:.35;cursor:not-allowed}header h1{font-size:1rem;font-weight:300;margin-bottom:2px;background:linear-gradient(135deg,var(--accent),#67b8f7);-webkit-background-clip:text;-webkit-text-fill-color:transparent;letter-spacing:.5px}.beta-badge{font-size:.55rem;font-weight:400;letter-spacing:.3px;vertical-align:super;margin-inline-start:6px;padding:0;border:none;color:var(--text-muted);-webkit-text-fill-color:var(--text-muted);background:transparent;opacity:.7}.subtitle{color:var(--text-muted);font-size:.75rem;margin-bottom:4px}.header-credit{display:flex;justify-content:space-between;align-items:center;margin-top:8px;padding-top:7px;border-top:1px solid rgba(128,128,128,.18)}.header-credit span{font-size:.68rem;letter-spacing:.3px;color:var(--text-secondary);opacity:.7;font-weight:400;transition:opacity var(--transition-normal)}.header-credit:hover span{opacity:.95}.credit-left{font-weight:500}.credit-right{font-style:italic;opacity:.6}.btn-primary{background:var(--accent);color:var(--text-inverse);border:none;padding:10px 24px;border-radius:6px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all var(--transition-normal)}.btn-primary:hover{background:var(--accent-hover);transform:translateY(-1px);box-shadow:0 4px 12px #4a90d94d}.btn-swap{background:transparent;border:1px solid var(--border);color:var(--text-muted);padding:4px 8px;border-radius:4px;cursor:pointer;font-size:.85rem;transition:all var(--transition-normal);margin:0 2px}.btn-swap:hover{border-color:var(--accent);color:var(--accent)}section{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:24px;margin-bottom:24px}section h2{font-size:1.2rem;font-weight:600;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:8px}.gantt-section{margin-top:32px;border-top:2px solid var(--border);padding-top:28px}.gantt-section h2{font-size:1.3rem;font-weight:700}.count{background:var(--accent);color:var(--text-inverse);font-size:.75rem;padding:2px 10px;border-radius:12px;font-weight:600;display:inline-block}.tab-toolbar h2 .count{user-select:none}@keyframes count-pulse{0%{transform:scale(1);box-shadow:0 0 0 0 var(--accent)}40%{transform:scale(1.5);box-shadow:0 0 0 10px #0000}to{transform:scale(1);box-shadow:0 0 #0000}}.count.count-pulse{animation:count-pulse .6s ease-out;will-change:transform,box-shadow}.table-responsive{overflow-x:auto}.table{width:100%;border-collapse:collapse;font-size:.88rem}.table thead th{background:#4a90d924;color:var(--text-secondary);font-weight:700;text-transform:uppercase;font-size:.75rem;letter-spacing:.05em;padding:10px 12px;text-align:start;border-bottom:2px solid var(--border);position:sticky;top:0;white-space:nowrap}[data-theme=light] .table thead th{background:#4a90d91a}.table thead th.sortable-th{cursor:pointer;user-select:none;transition:color var(--transition-fast)}.table thead th.sortable-th:hover{color:var(--primary)}.table tbody td{padding:8px 12px;border-bottom:1px solid var(--border);vertical-align:middle}.table tbody tr:hover{background:var(--bg-hover)}.table tbody tr.row-error{background:#e74c3c14}.table tbody tr.row-warning{background:#f39c1214}.task-cell{background:var(--task-cell-bg)}.schedule-table-wrapper .task-cell{background:color-mix(in srgb,var(--section-color, transparent) 5%,transparent)}.badge{display:inline-block;padding:2px 10px;border-radius:12px;font-size:.75rem;font-weight:600;color:var(--text-inverse);white-space:nowrap;position:relative;overflow:hidden;transition:transform var(--transition-normal)}.badge:after{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 30%,rgba(255,255,255,.2) 50%,transparent 70%);background-size:200% 100%;background-position:-100% 0;opacity:0;transition:opacity var(--transition-normal)}.badge:hover{transform:scale(1.05)}.badge:hover:after{opacity:1;animation:badgeShimmer .8s ease forwards}@keyframes badgeShimmer{0%{background-position:-100% 0}to{background-position:200% 0}}.badge-sm{padding:1px 8px;font-size:.7rem}.badge-md{padding:3px 12px;font-size:.78rem;border-radius:12px}.badge-status{padding:2px 10px;font-size:.75rem;font-weight:600;border-radius:12px}.badge-outline{background:transparent;border:1px solid var(--text-muted);color:var(--text-muted)}.badge-clickable{cursor:pointer}.badge-clickable:focus-visible{outline:2px solid var(--focus-ring, #66afe9);outline-offset:2px}.gm-modal-finding-list{margin:0;padding-inline-start:1.25em}.gm-modal-finding-list li+li{margin-top:.35em}.score-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px}.score-card{background:#1a1d278c;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.08);border-radius:var(--radius);padding:16px;text-align:center;transition:transform var(--transition-normal),box-shadow var(--transition-normal),background var(--transition-slow);box-shadow:inset 0 1px #ffffff0d}.score-card:hover{transform:translateY(-2px);box-shadow:inset 0 1px #ffffff0d,0 8px 32px #0000002e}.score-card.highlight{border-color:var(--accent);background:var(--accent-glow)}.score-card.status-ok{border-color:var(--success)}.score-card.status-ok .score-value{color:var(--success)}.score-card.status-error{border-color:var(--danger)}.score-card.status-error .score-value{color:var(--danger)}.score-value{font-size:1.4rem;font-weight:700;margin-bottom:4px}.score-label{font-size:.78rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.score-card.inline-badge{display:inline-flex;align-items:center;gap:6px;padding:3px 12px;font-size:.8rem;border-radius:20px;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:none;border-width:1.5px;vertical-align:middle}.score-card.inline-badge .score-value{font-size:.8rem;font-weight:700;margin-bottom:0}.score-card.inline-badge .score-label{font-size:.7rem;margin:0;opacity:.7}.score-card.inline-badge:hover{transform:none;box-shadow:none}.alert{padding:14px 18px;border-radius:var(--radius);margin-bottom:12px;font-size:.88rem}.alert ul{margin:8px 0 0 20px}.alert li{margin:4px 0}.alert code{background:var(--code-bg);padding:1px 6px;border-radius:3px;font-size:.8rem}.alert-ok{background:#27ae601a;border:1px solid rgba(39,174,96,.3);color:var(--success)}.alert-error{background:#e74c3c1a;border:1px solid rgba(231,76,60,.3);color:var(--alert-error-text)}.alert-warn{background:#f39c121a;border:1px solid rgba(243,156,18,.3);color:var(--alert-warn-text)}.rest-summary{display:flex;gap:24px;margin-bottom:16px;padding:12px 16px;background:var(--bg);border-radius:var(--radius);border:1px solid var(--border);flex-wrap:wrap}.text-danger{color:var(--danger)!important}.text-warn{color:var(--warning)!important}.text-muted{color:var(--text-muted)}.gantt-container{overflow-x:auto;font-size:.82rem}.gantt-header{display:flex;border-bottom:2px solid var(--border);padding-bottom:4px;margin-bottom:2px}.gantt-label-col{min-width:180px;max-width:180px;flex-shrink:0;padding-inline-end:12px}.gantt-timeline-col{flex:1;position:relative;min-height:28px;min-width:800px}.gantt-hour-mark{position:absolute;transform:translate(-50%);color:var(--text-muted);font-size:.78rem;font-weight:600;white-space:nowrap;letter-spacing:.02em}.gantt-gridline{position:absolute;top:100%;width:1px;height:100vh;background:var(--border);opacity:.35;pointer-events:none}.gantt-row{display:flex;border-bottom:1px solid var(--border);align-items:center;min-height:32px}.gantt-row:hover{background:var(--bg-hover)}.gantt-name{font-weight:600;font-size:.82rem;display:block}.gantt-meta{font-size:.7rem;color:var(--text-muted)}.gantt-block{position:absolute;height:22px;border-radius:3px;display:flex;align-items:center;justify-content:center;overflow:hidden;cursor:default;transition:opacity var(--transition-normal);top:3px}.gantt-block:hover{opacity:.85;z-index:2}.gantt-block.gantt-zero-load{opacity:.5}.gantt-block-text{color:var(--text-inverse);font-size:.68rem;font-weight:600;text-shadow:0 1px 2px rgba(0,0,0,.4);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0 4px}.generating{display:flex;align-items:center;justify-content:center;gap:12px;padding:40px;color:var(--text-muted)}.spinner{width:24px;height:24px;border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.tab-nav{display:flex;gap:4px;margin-bottom:24px;border-bottom:2px solid var(--border);padding-bottom:0}.tab-btn{background:transparent;border:none;color:var(--text-muted);font-size:.95rem;font-weight:600;padding:12px 20px;cursor:pointer;border-bottom:3px solid transparent;transition:all var(--transition-normal);display:flex;align-items:center;gap:8px}.tab-btn:hover{color:var(--text);background:var(--bg-hover)}.tab-btn.tab-active{color:var(--accent);border-bottom-color:var(--accent)}.tab-content{min-height:400px}.tab-toolbar{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px;flex-wrap:wrap;gap:12px}.schedule-toolbar{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:10px 16px;align-items:center}.toolbar-group{display:inline-flex;align-items:center;gap:8px}.toolbar-group:empty{display:none}.toolbar-group+.toolbar-group:not(:empty){border-inline-start:1px solid var(--border);padding-inline-start:12px;margin-inline-start:4px}.toolbar-group--generate{background:#3a7cc50f;border-radius:6px;padding:6px 12px}.toolbar-group--generate .input-scenarios{border-color:#3a7cc540}.toolbar-group--generate .input-scenarios:focus{border-color:var(--accent);box-shadow:0 0 0 2px #3a7cc526}.schedule-toolbar .btn-primary{padding:8px 20px;box-shadow:0 2px 8px #3a7cc540}.toolbar-group--state .btn-sm.btn-outline,.toolbar-group--export .btn-sm.btn-outline,.toolbar-group--day-actions .btn-sm.btn-outline{border-color:transparent}.toolbar-group--state .btn-sm.btn-outline:hover,.toolbar-group--export .btn-sm.btn-outline:hover,.toolbar-group--day-actions .btn-sm.btn-outline:hover{border-color:var(--border);background:var(--bg-hover)}.tab-toolbar h2{margin:0;border-bottom:none;padding-bottom:0}.toolbar-left{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.toolbar-right{display:flex;gap:8px;align-items:center}.scenarios-label{display:flex;align-items:center;gap:6px;font-size:.82rem;color:var(--text-muted);white-space:nowrap}.input-scenarios{width:72px;padding:4px 6px;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);color:var(--text);font-size:.85rem;text-align:center;-moz-appearance:textfield}.input-scenarios::-webkit-inner-spin-button,.input-scenarios::-webkit-outer-spin-button{opacity:1}.filter-pills{display:flex;gap:4px}.pill{background:var(--bg);border:1px solid var(--border);color:var(--text-muted);padding:4px 14px;border-radius:16px;font-size:.8rem;cursor:pointer;transition:all var(--transition-normal)}.pill:hover{border-color:var(--accent);color:var(--text)}.pill.pill-active{background:var(--accent);color:var(--text-inverse);border-color:var(--accent)}.participants-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap;flex-basis:100%}.participant-search{flex:1 1 200px;min-width:0;background:var(--bg);border:1px solid var(--border);color:var(--text);padding:6px 12px;border-radius:16px;font-size:.85rem}.participant-search:focus{outline:none;border-color:var(--accent)}.participants-mobile-controls{display:none;align-items:center;gap:8px}.participants-mobile-controls .sort-control{display:inline-flex;align-items:center;gap:6px;font-size:.8rem;color:var(--text-muted)}.row-search-hidden{display:none!important}.participant-search-empty{padding:16px;text-align:center;color:var(--text-muted);font-size:.9rem}.btn-sm{padding:5px 12px;font-size:.8rem;border-radius:4px;cursor:pointer;font-weight:600;transition:all var(--transition-normal)}.btn-outline{background:transparent;border:1px solid var(--border);color:var(--text-muted)}.btn-outline:hover{border-color:var(--accent);color:var(--accent)}.btn-danger-outline{background:transparent;border:1px solid rgba(231,76,60,.3);color:var(--danger)}.btn-danger-outline:hover{border-color:var(--danger);background:#e74c3c1a}.btn-icon{display:inline-flex;align-items:center;justify-content:center;gap:4px}.btn-icon svg{vertical-align:middle;flex-shrink:0}.tab-btn svg{vertical-align:middle}.input-sm{background:var(--bg);border:1px solid var(--border);color:var(--text);padding:5px 10px;border-radius:4px;font-size:.85rem;outline:none;transition:border-color var(--transition-normal),box-shadow var(--transition-normal),background-color var(--transition-normal)}select.input-sm{appearance:auto}.input-sm:focus,.input-sm:focus-visible,.preset-name-input:focus,.preset-desc-input:focus,.snapshot-name-input:focus,.snapshot-desc-input:focus,.gm-modal-input:focus,.gm-select-search:focus,.gm-select-trigger:focus-visible,.gm-select.open .gm-select-trigger{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}.input-sm[aria-invalid=true],.preset-name-input[aria-invalid=true],.preset-desc-input[aria-invalid=true],.snapshot-name-input[aria-invalid=true],.snapshot-desc-input[aria-invalid=true],.gm-modal-input[aria-invalid=true],.gm-select-search[aria-invalid=true],.gm-select-trigger[aria-invalid=true]{border-color:var(--danger);box-shadow:0 0 0 3px var(--danger-glow)}.time-24h{width:5.5em;text-align:center;font-variant-numeric:tabular-nums;letter-spacing:.05em}.add-form,.add-slot-form{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);padding:16px;margin-top:16px}.add-form h4,.add-slot-form h5{margin-bottom:12px}.edit-slot-form{border-color:var(--accent, #3b82f6);border-left:3px solid var(--accent, #3b82f6);margin-top:4px}.slot-row-editing>td{background:var(--bg-hover, rgba(59, 130, 246, .08))}.slot-row-error>td{background:#e74c3c1f}.slot-row-warn>td{background:#f39c121f}.slot-row-editing.slot-row-error>td,.slot-row-editing.slot-row-warn>td{background:var(--bg-hover, rgba(59, 130, 246, .08))}.slot-finding-icon{font-weight:700;margin-inline-end:4px}.slot-edit-row>td{padding:0 8px 8px!important;background:transparent}.form-row{display:flex;align-items:center;gap:12px;margin-bottom:10px;flex-wrap:wrap}.form-row label{display:flex;align-items:center;gap:6px;font-size:.85rem;color:var(--text-muted)}.checkbox-label{display:inline-flex;align-items:center;gap:4px;font-size:.82rem;cursor:pointer;color:var(--text)}.level-toggle{display:inline-flex;align-items:center;padding:3px 10px;border-radius:12px;border:2px solid var(--border);background:transparent;cursor:pointer;font-size:0;transition:opacity .15s,border-color .15s;user-select:none;-webkit-tap-highlight-color:transparent}.level-toggle[data-state=off]{opacity:.3}.level-toggle[data-state=normal]{opacity:1;border-color:var(--accent, #3498db)}.level-toggle[data-state=lowPriority]{opacity:1;border-color:#e67e22}.level-toggle .badge{pointer-events:none}.level-toggle .lp-badge{color:#e67e22;font-size:.75rem;margin-inline-start:2px;pointer-events:none}.cert-checkboxes{display:flex;gap:10px;flex-wrap:wrap}.row-editing{background:var(--accent-glow)}.col-actions{white-space:nowrap}.participant-mini-fields{display:flex;flex-direction:column;align-items:flex-start;gap:6px}.participant-mini-field{display:inline-flex;align-items:center;gap:6px;font-size:.75rem;margin:0;white-space:nowrap;width:auto}.participant-mini-field .input-sm{flex:0 0 auto}.participant-mult-input{width:56px;text-align:center;font-variant-numeric:tabular-nums;-moz-appearance:textfield;appearance:textfield}.participant-mult-input::-webkit-outer-spin-button,.participant-mult-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.workload-mult-badge{background:var(--warning, #d68910);color:#fff;font-variant-numeric:tabular-nums;cursor:help}.col-expand,.mobile-label,.btn-expand-all-mobile{display:none}.row-blackout-expansion td{padding:0!important}.blackout-panel{background:var(--bg);border-top:1px solid var(--border);padding:16px 20px}.blackout-panel h4{margin-bottom:8px}.blackout-list ul{list-style:none;padding:0;margin:0 0 12px}.blackout-list li{display:flex;align-items:center;gap:12px;padding:8px 12px;font-size:.85rem;background:var(--bg-hover);border-radius:var(--radius);margin-bottom:6px}.constraint-type{background:var(--bg-card);padding:2px 8px;border-radius:12px;font-size:.75rem;color:var(--text-secondary);border:1px solid var(--border)}.blackout-add{display:flex;align-items:center;gap:12px;flex-wrap:wrap;background:var(--bg-card);padding:12px;border-radius:var(--radius);border:1px solid var(--border)}.time-inputs-group{display:flex;align-items:center;gap:8px;background:var(--bg);padding:4px 8px;border-radius:var(--radius);border:1px solid var(--border)}.blackout-add span.time-separator{color:var(--text-muted);font-size:.85rem}.time-label{font-size:.8rem;color:var(--text-muted);white-space:nowrap}.template-list{display:flex;flex-direction:column;gap:12px}.template-card{background:#1a1d278c;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.08);border-radius:var(--radius);box-shadow:inset 0 1px #ffffff0a;transition:background var(--transition-slow),border-color var(--transition-slow);position:relative}.template-card:before{content:"";position:absolute;inset-block:0;inset-inline-start:0;width:3px;background:linear-gradient(to bottom,var(--accent),transparent);border-radius:3px;z-index:1}.template-card-error{border-color:#e74c3c80}.template-card-warn{border-color:#f39c1280}.template-header{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;cursor:pointer;transition:background var(--transition-normal)}.template-header:hover{background:var(--bg-hover)}.template-title{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.template-toggles{display:flex;align-items:center;gap:6px}.expand-arrow{color:var(--text-muted);font-size:.75rem;margin-inline-start:4px}.template-meta{display:flex;align-items:center;gap:12px;padding:0 18px 10px;font-size:.82rem;color:var(--text-muted)}.template-body{padding:0 18px 18px;border-top:1px solid var(--border)}.template-props{padding:12px 0 0;display:flex;flex-direction:column;gap:12px}.tprop-section{display:flex;flex-direction:column;gap:8px;min-width:0}.tprop-section-title{font-size:.72rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.6px;margin:0;padding-bottom:4px;border-bottom:1px solid var(--border)}.tprop-grid{display:grid;gap:10px 14px}.tprop-grid-numeric{grid-template-columns:repeat(4,minmax(0,1fr))}.tprop-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.tprop-field{display:flex;flex-direction:column;gap:4px;font-size:.82rem;color:var(--text);min-width:0}.tprop-field-label{font-size:.75rem;color:var(--text-muted);font-weight:500}.tprop-field .input-sm,.tprop-field select.input-sm{width:100%;box-sizing:border-box}.tprop-field-grow{flex:1 1 auto}.tprop-field-control{display:flex;align-items:center;gap:6px}.tprop-field-control .input-sm{flex:1 1 auto;min-width:0}.tprop-field-control .lf-controls{flex:0 0 auto;display:inline-flex;gap:4px}.tprop-toggles .checkbox-label{padding:7px 10px;background:#ffffff05;border:1px solid var(--border);border-radius:8px;transition:background var(--transition-normal),border-color var(--transition-normal)}.tprop-toggles .checkbox-label:hover{background:var(--bg-hover);border-color:#ffffff26}.tprop-toggles .checkbox-label:has(input:checked){background:var(--accent-glow);border-color:var(--accent);color:var(--text)}.tprop-footer-row{display:flex;align-items:flex-end;gap:12px;padding-top:10px;border-top:1px solid var(--border);margin-top:2px}.tprop-shift-preview{display:flex;flex-direction:column;gap:6px;margin-top:4px;padding-top:8px;border-top:1px dashed var(--border)}.tprop-shift-preview-label{font-size:.7rem;color:var(--text-muted);font-weight:600;text-transform:uppercase;letter-spacing:.5px}.tprop-shift-preview-chips{display:flex;flex-wrap:wrap;gap:6px}.tprop-shift-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 9px;border-radius:999px;background:#ffffff08;border:1px solid var(--border);font-size:.78rem;color:var(--text);line-height:1.1;transition:background var(--transition-fast),border-color var(--transition-fast)}.tprop-shift-chip:hover{background:var(--accent-glow);border-color:var(--accent)}.tprop-shift-chip-idx{font-size:.68rem;color:var(--text-muted);font-weight:700;min-width:.9em;text-align:center}.tprop-shift-chip-range{font-variant-numeric:tabular-nums;letter-spacing:.3px}[data-theme=light] .tprop-shift-chip:not(.tprop-shift-chip--selected){background:#00000008}.tprop-shift-chip--selectable{appearance:none;cursor:pointer;font-family:inherit;padding:8px 12px;min-height:36px;background:#ffffff08}.tprop-shift-chip--selectable:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.tprop-shift-chip--selected{background:var(--accent);border-color:var(--accent);color:#fff}.tprop-shift-chip--selected .tprop-shift-chip-idx,.tprop-shift-chip--selected .tprop-shift-chip-range{color:#fff}.tprop-shift-chip--selected:hover{background:var(--accent);filter:brightness(1.1)}.tprop-shift-chip-tick{font-size:.78rem;font-weight:700;line-height:1}@keyframes tr-saved-flash{0%{box-shadow:0 0 0 2px var(--success, #27ae60)}to{box-shadow:0 0 0 0 transparent}}.tr-just-saved{animation:tr-saved-flash .9s ease-out;border-radius:4px}.tprop-section--sleep-recovery.sr-collapsible{border:1px solid var(--border);border-radius:var(--radius);background:#ffffff05;overflow:hidden;gap:0;transition:border-color var(--transition-normal),background var(--transition-normal),box-shadow var(--transition-normal)}.tprop-section--sleep-recovery.sr-active{border-color:var(--accent);background:var(--accent-glow);box-shadow:0 0 0 1px var(--accent-glow)}.tprop-section--sleep-recovery.sr-open{box-shadow:0 1px 2px #00000014,0 0 0 1px var(--accent-glow)}.tprop-section--sleep-recovery.sr-open .sr-header{border-bottom:1px solid var(--border)}.tprop-section--advanced.sr-collapsible{border:1px solid var(--border);border-radius:var(--radius);background:#ffffff05;overflow:hidden;gap:0;margin-top:12px}.tprop-section--advanced.adv-open{box-shadow:0 1px 2px #00000014}.tprop-section--advanced.adv-open .sr-header{border-bottom:1px solid var(--border)}.template-actions--danger{margin-top:12px;padding-top:10px;border-top:1px solid var(--border)}.sr-header{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"title  arrow" "status status";column-gap:10px;row-gap:4px;width:100%;min-width:0;padding:10px 12px;background:transparent;border:0;color:var(--text);cursor:pointer;font-size:.88rem;font-weight:600;text-align:start;box-sizing:border-box;transition:background var(--transition-normal)}.sr-header:hover,.sr-header:focus-visible{background:var(--bg-hover);outline:none}.sr-title{grid-area:title;display:inline-flex;align-items:center;gap:8px;min-width:0}.sr-title-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.sr-icon{font-size:1rem;line-height:1;flex-shrink:0;opacity:.55;transition:opacity var(--transition-normal)}.sr-active .sr-icon{opacity:1}.sr-status{grid-area:status;justify-self:start;min-width:0;max-width:100%;display:inline-flex;align-items:center}.sr-summary-chip{display:inline-block;padding:4px 10px;border-radius:999px;background:var(--accent);color:#fff;font-size:.72rem;font-weight:600;white-space:nowrap;letter-spacing:.2px;box-shadow:0 1px 2px #0000001f;min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis}.sr-summary-off{display:inline-block;padding:3px 9px;border-radius:999px;border:1px dashed var(--border);color:var(--text-muted);font-size:.72rem;font-weight:500;letter-spacing:.2px}.sr-arrow{grid-area:arrow;align-self:center;color:var(--text-muted);font-size:.85rem;width:1em;text-align:center;transition:transform var(--transition-normal)}.sr-body{display:flex;flex-direction:column;gap:10px;padding:10px 12px 12px;background:linear-gradient(180deg,rgba(0,0,0,.04),transparent 8px)}.sr-hint{margin:4px 0 0;padding:8px 10px;border-radius:6px;background:#0000000f;border-inline-start:3px solid var(--text-muted);color:var(--text-muted);font-size:.76rem;line-height:1.4}[data-theme=light] .sr-hint{background:#00000008}.tprop-toggle-cell{display:flex;align-items:center;gap:6px}.tprop-toggle-cell .checkbox-label{flex:1 1 auto}.tprop-help-btn{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border-radius:50%;border:1px solid var(--border);background:#ffffff05;color:var(--text-muted);font-size:.85rem;font-weight:700;line-height:1;cursor:pointer}.tprop-help-btn:hover{background:var(--bg-hover);border-color:var(--accent);color:var(--accent)}.tprop-help-btn[aria-expanded=true]{background:var(--accent-glow);border-color:var(--accent);color:var(--accent)}.tprop-help-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.notwith-help-panel{margin-top:8px;border-inline-start-color:var(--accent);display:flex;flex-direction:column;align-items:flex-start;gap:4px}.notwith-help-go{align-self:flex-start;display:inline-flex;align-items:center;min-height:36px;padding:4px 0;background:none;border:none;color:var(--accent);font:inherit;font-weight:600;text-decoration:underline;text-underline-offset:2px;cursor:pointer}.notwith-help-go:hover{filter:brightness(1.08)}.notwith-help-go:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.sr-field-group{display:flex;flex-direction:column;gap:12px}.sr-field{display:flex;flex-direction:column;gap:6px}.sr-field-label{font-size:.78rem;color:var(--text-muted);font-weight:500}.sr-field-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.sr-field-row--times{flex-wrap:wrap;gap:14px;align-items:stretch}.sr-field-row--times>.sr-time-block{flex:1 1 130px}.sr-time-block{display:flex;flex-direction:column;gap:4px;flex:1 1 0;min-width:0}.sr-time-block .gm-select{min-width:0;width:100%;display:block}.sr-time-block .gm-select-trigger{width:100%;min-width:0}.sr-input-label{font-size:.72rem;color:var(--text-muted);font-weight:600;letter-spacing:.02em}.sr-select{width:100%;min-width:0}.sr-time{flex:1 1 0;min-width:0;max-width:9em;width:auto;text-align:center}.sr-hours{width:5em;text-align:center}.sr-sep{color:var(--text-muted);font-size:.82rem;flex-shrink:0}.sr-field-hint{font-size:.74rem;color:var(--text-muted);margin-top:2px}.sr-field-hint strong{color:var(--accent);font-weight:600}.sr-field-row--shift-header{justify-content:space-between;align-items:baseline;gap:8px}.sr-shift-bulk{display:inline-flex;align-items:center;gap:4px;font-size:.74rem}.sr-link-btn{background:transparent;border:0;padding:2px 4px;color:var(--accent);cursor:pointer;font:inherit;font-size:.74rem}.sr-link-btn:hover,.sr-link-btn:focus-visible{text-decoration:underline;outline:none}.sr-bulk-sep{color:var(--text-muted)}.sr-shift-chips{display:flex;flex-wrap:wrap;gap:8px}@media(max-width:479px){.sr-header{padding:12px;font-size:.92rem}.sr-summary-chip{font-size:.7rem;padding:3px 7px}.sr-body{padding:12px;gap:14px}.sr-summary-off{font-size:.7rem;padding:3px 8px}.sr-hint{font-size:.82rem}.sr-field-row{gap:10px}.sr-field-row--times{gap:12px}.sr-shift-chips{gap:10px}.tprop-shift-chip--selectable{min-height:44px;padding:10px 14px;font-size:.85rem}.sr-hours{min-height:44px;font-size:1rem;flex:0 0 auto}.sr-time,.sr-select .gm-select-trigger{min-height:44px;font-size:1rem}.sr-input-label{font-size:.8rem}.sr-field-label{font-size:.85rem}}@media(min-width:720px){.template-props{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"numeric behavior" "footer  footer";column-gap:20px;row-gap:14px}.tprop-section--numeric{grid-area:numeric}.tprop-section--behavior{grid-area:behavior}.tprop-footer-row{grid-area:footer}.tprop-grid-numeric{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:479px){.tprop-grid-numeric,.tprop-grid-2{grid-template-columns:1fr}.tprop-help-btn{width:36px;height:36px;font-size:.95rem}.tprop-footer-row{flex-direction:column;align-items:stretch}.tprop-save-btn{width:100%}}.template-actions{display:flex;gap:8px;padding-top:12px;border-top:1px solid var(--border);margin-top:12px}.subteam-card{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);padding:12px;margin-bottom:8px;box-shadow:0 1px 3px #00000014}.subteam-header{display:flex;align-items:center;gap:8px;margin-bottom:8px}.table-slots{font-size:.82rem}.table-slots td,.table-slots th{padding:6px 10px}.table-slots tbody tr:nth-child(2n){background:#4a90d90a}[data-theme=light] .table-slots tbody tr:nth-child(2n){background:#4a90d908}.lw-editor{margin:12px 0 8px}.lw-editor-header{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:4px}.lw-editor-title{margin:0;font-size:.95rem;font-weight:600}.lw-editor-count{font-size:.78rem;color:var(--text-muted);font-variant-numeric:tabular-nums}.lw-editor-help{margin:0 0 8px;font-size:.78rem;line-height:1.4}.lw-empty{grid-column:1 / -1;margin:0 0 10px;padding:10px 12px;color:var(--text-muted);font-size:.85rem;background:var(--bg);border:1px dashed var(--border);border-radius:6px}.lw-table{display:grid;grid-template-columns:minmax(0,max-content) minmax(0,max-content) minmax(0,max-content) minmax(max-content,1fr);column-gap:8px;row-gap:0}.lw-list{display:grid;grid-template-columns:subgrid;grid-column:1 / -1;margin:0 0 12px;border:1px solid var(--border);border-radius:6px;background:var(--bg)}.lw-row{display:grid;grid-template-columns:subgrid;grid-column:1 / -1;align-items:center;column-gap:8px;padding:8px 10px;border-bottom:1px solid var(--border);transition:background-color var(--transition-normal)}.lw-row:last-child{border-bottom:none}.lw-row-head{background:#4a90d90f;padding-block:6px}.lw-row-head:hover{background:#4a90d90f}.lw-row:not(.lw-row-head):hover{background:#4a90d90a}.lw-col-label{font-size:.72rem;font-weight:600;color:var(--text-muted);letter-spacing:.02em;text-transform:uppercase}.lw-col-actions{justify-self:end}.lw-time{display:inline-flex;align-items:center;gap:4px;min-width:0}.lw-time input{width:4em;padding-inline:4px;text-align:center;font-variant-numeric:tabular-nums}.lw-sep{color:var(--text-muted);font-size:.9rem;user-select:none}.lw-weight{display:inline-flex;align-items:center;gap:6px}.lw-weight-input{width:3.5em;padding-inline:4px;text-align:center;font-variant-numeric:tabular-nums}.lw-blocks{display:inline-flex;align-items:center;justify-content:center}.lw-blocks .checkbox-label{margin:0;padding:0;cursor:pointer}.lw-blocks input[type=checkbox]:disabled{cursor:not-allowed;opacity:.5}.lw-actions{display:inline-flex;align-items:center;gap:4px;justify-self:end}.lw-btn{width:26px;height:26px;padding:0;border-radius:6px;border:1px solid var(--border);background:var(--bg-card);color:var(--text);font-size:.95rem;line-height:1;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background-color var(--transition-normal),border-color var(--transition-normal),color var(--transition-normal)}.lw-save:hover{background:var(--accent);border-color:var(--accent);color:#fff}.lw-remove:hover{background:#e74c3c1f;border-color:var(--danger);color:var(--danger)}.lw-add-form{display:grid;grid-template-columns:subgrid;grid-column:1 / -1;background:var(--bg);border:1px dashed var(--border);border-radius:6px;padding:8px 0 10px}.lw-add-caption{grid-column:1 / -1;font-size:.78rem;font-weight:600;color:var(--text-muted);letter-spacing:.02em;padding-inline:10px;margin-bottom:6px}.lw-row-add{padding-block:2px;border-bottom:none;background:transparent}.lw-row-add:hover{background:transparent}.lw-mlabel{display:none}@media(max-width:479px){.lw-table,.lw-list{display:block}.lw-add-form{display:block;padding:8px 12px 12px}.lw-row.lw-row-head{display:none}.lw-row{display:flex;flex-direction:column;align-items:stretch;gap:10px;padding:12px}.lw-time,.lw-weight,.lw-blocks{display:flex;align-items:center;justify-content:flex-start;gap:10px;min-width:0}.lw-mlabel{display:inline-block;flex:0 0 auto;min-width:5.5rem;font-size:.78rem;font-weight:600;color:var(--text-muted);white-space:nowrap}.lw-time input,.lw-weight-input{min-height:36px}.lw-weight .lf-open-btn,.lw-weight .lf-info-btn{min-width:36px;height:36px;font-size:1rem;padding-inline:0}.lw-blocks .checkbox-label{min-width:36px;min-height:36px;justify-content:flex-start}.lw-blocks input[type=checkbox]{width:20px;height:20px}.lw-actions{display:flex;justify-content:flex-end}.lw-btn{width:36px;height:36px;font-size:1.05rem}.lw-add-caption{padding-inline:0}.lw-row-add{padding:0}.lw-row-add .lw-blocks{display:none}.lw-row-add .lw-actions{width:100%}.lw-row-add .lw-save{width:100%;height:44px;font-size:1.15rem;background:var(--accent);border-color:var(--accent);color:#fff}}.preflight-panel{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:20px;margin-bottom:20px;box-shadow:0 1px 3px #00000014}.preflight-panel h3{margin-bottom:12px;font-size:1.1rem}.empty-state{text-align:center;padding:60px 20px;color:var(--text-muted)}.empty-icon{font-size:3rem;margin-bottom:12px}.empty-state-actions{margin-top:16px;display:flex;gap:8px;justify-content:center;flex-wrap:wrap}.empty-poem{max-width:300px;margin:34px auto 2px;opacity:0;transform:translateY(8px);animation:emptyPoemReveal .8s ease .25s forwards}.empty-poem-flourish{display:flex;align-items:center;justify-content:center;gap:13px;margin-bottom:18px}.empty-poem-flourish:before,.empty-poem-flourish:after{content:"";flex:1;max-width:70px;height:1px;opacity:.5}.empty-poem-flourish:before{background:linear-gradient(to left,transparent,var(--text-muted))}.empty-poem-flourish:after{background:linear-gradient(to right,transparent,var(--text-muted))}.empty-poem-flourish span{font-size:.95rem;line-height:1;color:var(--accent);opacity:.75}.empty-poem-verse{margin:0;font-family:Georgia,Palatino Linotype,David,Times New Roman,serif;font-size:1.06rem;line-height:2.1;letter-spacing:.015em;text-align:center;color:var(--text-secondary)}@keyframes emptyPoemReveal{to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.empty-poem{animation:none;opacity:1;transform:none}}.slot-empty-cta{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center;padding:16px 12px;margin:4px 0 8px;border:1px dashed var(--border);border-radius:8px}.slot-empty-cta-hint{margin:0;font-size:.85rem;color:var(--text-muted)}.home{display:flex;flex-direction:column;gap:14px;max-width:620px;margin:0 auto}.home-panel{position:relative;overflow:hidden;padding:22px 22px 22px 26px;border-radius:var(--radius);border:1px solid rgba(255,255,255,.08);background:linear-gradient(135deg,#1a1d278c,#1e22358c);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}[data-theme=light] .home-panel{background:#fff9;border-color:#00000014}.home-panel:before{content:"";position:absolute;inset-block:0;inset-inline-start:0;width:3px;background:linear-gradient(to bottom,var(--accent),transparent);border-radius:3px}.home-headline{margin:0;font-size:1.7rem;font-weight:600;line-height:1.2;letter-spacing:.3px;background:linear-gradient(135deg,var(--accent),#67b8f7);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.home-sub{margin:6px 0 0;font-size:.9rem;color:var(--text-muted);font-variant-numeric:tabular-nums}.home-status{display:flex;align-items:stretch;gap:14px;margin-top:16px}.home-status .kpi-strip{flex:1 1 auto}.home-week{margin-top:18px}.home-week-row{display:flex;gap:6px}.home-week-d{flex:1 1 0;display:flex;flex-direction:column;align-items:center;gap:7px}.home-week-d i{width:100%;height:6px;border-radius:3px;background:var(--wd)}.home-week.is-planned .home-week-d i{background:var(--border)}.home-week-d b{font-size:.68rem;font-weight:700;color:var(--text-muted);font-variant-numeric:tabular-nums;letter-spacing:.4px}.home-week.is-live .home-week-d b{color:var(--text-secondary)}.home-week-cap{display:block;margin-top:8px;font-size:.72rem;color:var(--text-muted);letter-spacing:.3px}.home-cta-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:20px}.home-cta.btn-primary{flex:1 1 auto;padding:13px 26px;font-size:.95rem}.home-panel .dirty-notice{margin-top:14px;margin-bottom:0}.home-guide{margin-bottom:0}.home-guide-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.home-guide-actions .btn-sm{display:inline-flex;align-items:center;gap:6px}.home-figs{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.home-figs .score-card{padding:16px 10px}.home-links{display:flex;gap:8px}.home-link{flex:1 1 0;display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 6px;background:transparent;border:1px solid var(--border);border-radius:var(--radius);color:var(--text-muted);font-family:inherit;font-size:.78rem;font-weight:600;cursor:pointer;transition:border-color var(--transition-fast),color var(--transition-fast)}.home-link:hover{border-color:var(--accent);color:var(--text)}.home-link-icon{display:inline-flex;color:var(--accent)}.home-link:focus-visible,.home-help:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.home-welcome{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 16px;padding:14px 18px;border-radius:var(--radius);border:1px solid var(--border);background:var(--accent-glow)}.home-welcome-text{display:flex;flex-direction:column;gap:2px;flex:1 1 220px}.home-welcome-text strong{font-size:.98rem;color:var(--text)}.home-welcome-text span{font-size:.85rem;color:var(--text-muted)}.home-welcome-actions{display:flex;flex-wrap:wrap;gap:8px}.home-install-banner{display:flex;align-items:center;gap:10px;margin:0 0 12px;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-card);color:var(--text);font-size:.84rem;line-height:1.35}.home-install-icon{flex-shrink:0;color:var(--accent)}.home-install-text{flex:1 1 auto;min-width:0}.home-install-btn{flex-shrink:0}.home-install-banner-btn{width:100%;font:inherit;text-align:start;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:border-color .15s ease,background-color .15s ease,transform .06s ease}.home-install-banner-btn:hover{border-color:var(--accent)}.home-install-banner-btn:active{background:var(--bg-hover);transform:scale(.985)}.home-install-banner-btn .home-install-text{display:flex;flex-direction:column;gap:1px}.home-install-title{font-weight:600;color:var(--text)}.home-install-sub{font-size:.76rem;color:var(--text-muted)}.home-install-chevron{flex-shrink:0;color:var(--text-muted)}.ios-install-guide{display:flex;flex-direction:column;gap:14px}.ios-install-lead{margin:0;font-size:.9rem;line-height:1.5;color:var(--text)}.ios-install-steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}.ios-install-step{display:flex;align-items:flex-start;gap:10px}.ios-install-step-num{flex-shrink:0;width:26px;height:26px;border-radius:50%;background:var(--accent);color:#fff;font-size:.85rem;font-weight:700;display:flex;align-items:center;justify-content:center}.ios-install-step-text{flex:1 1 auto;min-width:0;font-size:.9rem;line-height:1.55;color:var(--text);padding-top:2px}.ios-install-inline-icon{display:inline-flex;vertical-align:middle;margin:0 2px;color:var(--accent)}.home-side{display:contents}@media(min-width:1025px){.home{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(290px,1fr);grid-template-areas:"welcome welcome" "panel   side" "guide   side";align-items:start;gap:20px;max-width:1080px}.home-welcome{grid-area:welcome}.home-panel{grid-area:panel;padding:32px 34px 32px 38px}.home-headline{font-size:2rem}.home-sub{font-size:.95rem}.home-guide{grid-area:guide}.home-side{display:flex;flex-direction:column;gap:12px;grid-area:side;position:sticky;top:24px}.home-side .home-figs{display:flex;flex-direction:column;gap:8px}.home-side .home-figs .score-card{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;text-align:start}.home-side .home-figs .score-value{font-size:1.4rem;margin:0}.home-side .home-links{flex-direction:column}.home-side .home-link{flex-direction:row;justify-content:flex-start;gap:10px;padding:12px 16px}}.gm-console-hint{max-width:560px;padding:0}.gm-console-hint-header{padding:18px 20px 14px;border-bottom:1px solid rgba(255,255,255,.08)}.gm-console-hint-title-row{display:flex;align-items:center;gap:10px}.gm-console-hint-icon{font-size:1.1rem;line-height:1}.gm-console-hint-title{margin:0;font-size:1rem;font-weight:600;color:var(--text);flex:1}.gm-console-hint-close{background:transparent;border:none;color:var(--text-muted, rgba(255, 255, 255, .55));font-size:1.5rem;line-height:1;cursor:pointer;padding:0 6px;border-radius:6px;transition:background .15s ease,color .15s ease}.gm-console-hint-close:hover{background:#ffffff14;color:var(--text)}.gm-console-hint-subtitle{margin-top:6px;font-size:.82rem;color:var(--text-muted, rgba(255, 255, 255, .55))}.gm-console-hint-list{padding:12px 14px 16px;display:flex;flex-direction:column;gap:8px}.gm-console-hint-row{display:flex;align-items:stretch;gap:8px;background:#00000052;border:1px solid rgba(255,255,255,.06);border-radius:8px;padding:10px 12px;transition:background .15s ease,border-color .15s ease}.gm-console-hint-row:hover{background:#0000006b;border-color:#7dd3fc40}.gm-console-hint-row-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.gm-console-hint-cmd{font-family:var(--font-mono, "JetBrains Mono", "Courier New", monospace);font-size:.88rem;line-height:1.4;letter-spacing:.2px;color:#7dd3fc;direction:ltr;text-align:left;white-space:nowrap;overflow-x:auto;-webkit-user-select:all;user-select:all;cursor:text}.gm-console-hint-desc{font-size:.78rem;color:var(--text-muted, rgba(255, 255, 255, .6));line-height:1.35}.gm-console-hint-copy{background:transparent;border:1px solid rgba(255,255,255,.12);color:var(--text);border-radius:6px;padding:0 10px;min-width:36px;cursor:pointer;font-size:.95rem;line-height:1;transition:background .15s ease,border-color .15s ease,color .15s ease;flex-shrink:0;align-self:center}.gm-console-hint-copy:hover{background:#7dd3fc1f;border-color:#7dd3fc59}.gm-console-hint-copy.is-copied{background:#4ade8026;border-color:#4ade8073;color:#4ade80}.gm-console-hint-copy-icon{display:inline-block}[data-theme=light] .gm-console-hint-header{border-bottom-color:#00000014}[data-theme=light] .gm-console-hint-row{background:#0000000a;border-color:#00000014}[data-theme=light] .gm-console-hint-row:hover{background:#0000000f;border-color:#0369a14d}[data-theme=light] .gm-console-hint-cmd{color:#0369a1}[data-theme=light] .gm-console-hint-copy{border-color:#0000001f}[data-theme=light] .gm-console-hint-copy:hover{background:#0369a114;border-color:#0369a14d}[data-theme=light] .gm-console-hint-copy.is-copied{background:#16a34a1f;border-color:#16a34a66;color:#16a34a}[data-theme=light] .gm-console-hint-close{color:#0000008c}[data-theme=light] .gm-console-hint-close:hover{background:#0000000f;color:#000c}.btn-primary:disabled{opacity:.4;cursor:not-allowed;transform:none!important;box-shadow:none!important}.unavail-chips{display:flex;flex-wrap:wrap;gap:3px;margin-top:3px;cursor:pointer}.unavail-chip{display:inline-block;background:#e74c3c1f;border:1px solid rgba(231,76,60,.25);color:var(--danger);padding:1px 6px;border-radius:3px;font-size:.7rem;font-weight:500;white-space:nowrap;line-height:1.4}.unavail-chip-more{background:#e74c3c0f;font-style:italic}.unavail-chips:hover .unavail-chip{background:#e74c3c33;border-color:#e74c3c66}.btn-expand-details.has-unavail-badge{position:relative}.expand-unavail-count{position:absolute;top:-4px;inset-inline-end:-4px;min-width:14px;height:14px;padding:0 3px;border-radius:7px;background:var(--danger);color:#fff;font-size:.6rem;font-weight:700;line-height:14px;text-align:center;box-shadow:0 0 0 1px var(--bg, #fff);pointer-events:none}.unavail-edit-toggle{margin-top:4px;font-size:.75rem;display:inline-flex;align-items:center;gap:4px}.unavail-toggle-active{background:#e74c3c26;border-color:var(--danger);color:var(--danger)}.avail-cell small{display:inline-block;background:#27ae601a;border:1px solid rgba(39,174,96,.2);padding:1px 6px;border-radius:3px;font-size:.75rem;margin:1px 0}@media(max-width:767px){#app{padding:12px}header h1{font-size:1.5rem}.score-grid{grid-template-columns:repeat(2,1fr)}.gantt-label-col{min-width:120px;max-width:120px}.tab-btn{padding:10px 12px;font-size:.85rem}.tab-toolbar{flex-direction:column}.template-header{flex-direction:column;align-items:flex-start;gap:8px}.schedule-layout{flex-direction:column}.participant-sidebar{min-width:unset;max-width:unset}.day-navigator{gap:0}.day-tab{min-width:50px;padding:5px 8px 4px}.weekly-dashboard{padding:12px}.kpi-group{gap:10px}.kpi{min-width:60px}.kpi-value{font-size:.9rem}.table-participants .col-certs,.table-participants .col-avail{display:none}.schedule-table-wrapper{-webkit-overflow-scrolling:touch}.col-time{width:48px;min-width:48px;font-size:.78rem}.participant-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100px;display:inline-block}}@media(max-width:480px){header h1{font-size:1.15rem;text-align:center;width:100%}.header-top{flex-direction:column;align-items:center;gap:6px}.undo-redo-group{justify-content:center;flex-wrap:wrap;gap:4px}.undo-redo-group button{font-size:.72rem;padding:4px 8px}.beta-badge{font-size:.45rem}.tab-nav{overflow-x:auto;-webkit-overflow-scrolling:touch;flex-wrap:nowrap;scrollbar-width:thin}.tab-btn{flex-shrink:0;min-width:100px;font-size:.8rem;padding:8px 10px;white-space:nowrap}.table-participants .col-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profile-card{padding:12px}.profile-card-title{font-size:.92rem}.profile-kpi-value{font-size:1rem}.profile-kpi-label{font-size:.65rem}.breakdown-row{font-size:.76rem;gap:4px}.breakdown-label{min-width:55px}.breakdown-value{font-size:.7rem;min-width:60px}}.weekly-dashboard{background:linear-gradient(135deg,#1a1d278c,#1e22358c);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.08);border-radius:var(--radius);padding:14px 18px;position:relative;overflow:hidden;margin-bottom:16px}.weekly-dashboard:before{content:"";position:absolute;inset-block:0;inset-inline-start:0;width:3px;background:linear-gradient(to bottom,var(--accent),transparent);border-radius:3px}.dashboard-row{display:grid;grid-template-columns:auto 1fr;align-items:stretch;gap:16px}.kpi-hero{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-width:96px;padding:10px 16px;border-radius:10px;border:1px solid transparent;line-height:1.1}.kpi-hero-icon{font-size:1.6rem;font-weight:700}.kpi-hero-label{font-size:.95rem;font-weight:700;letter-spacing:.3px}.kpi-hero.kpi-ok{background:#27ae6029;border-color:#27ae6059;color:var(--success)}.kpi-hero.kpi-error{background:#e74c3c29;border-color:#e74c3c59;color:var(--danger)}.kpi-hero-combined{flex-direction:row;align-items:center;gap:14px;padding:10px 20px;min-width:0}.kpi-hero-combined .kpi-hero-status,.kpi-hero-combined .kpi-hero-score{display:flex;flex-direction:column;align-items:center;gap:2px;line-height:1.1}.kpi-hero-combined .kpi-hero-divider{width:1px;align-self:stretch;background:currentColor;opacity:.25;margin-block:2px}.kpi-hero-combined .kpi-value{font-size:1.35rem;font-weight:700;color:inherit;font-variant-numeric:tabular-nums;direction:ltr;unicode-bidi:isolate;line-height:1.1}.kpi-hero-combined .kpi-label{font-size:.68rem;color:inherit;opacity:.78;text-transform:uppercase;letter-spacing:.4px}.kpi-strip{display:flex;align-items:center;justify-content:center;gap:0}.kpi-cell{flex:1 1 0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:6px 14px;position:relative;min-width:0}.kpi-cell+.kpi-cell:before{content:"";position:absolute;inset-inline-start:0;inset-block:18%;width:1px;background:#ffffff14}.kpi-value{font-size:1.35rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--text);direction:ltr;unicode-bidi:isolate;line-height:1.1}.kpi-label{font-size:.68rem;color:var(--text-muted);letter-spacing:.4px;text-transform:uppercase}.kpi-cell.kpi-error .kpi-value{color:var(--danger)}.kpi-cell.kpi-warn .kpi-value{color:var(--warn, #e0a000)}.kpi-cell-clickable{cursor:pointer;border-radius:8px;transition:background .12s ease,transform .12s ease}.kpi-cell-clickable:hover{background:#ffffff0d;transform:translateY(-1px)}.kpi-cell-clickable:focus-visible{outline:2px solid var(--warn, #e0a000);outline-offset:2px}.kpi-cell-clickable:active{transform:translateY(0)}@keyframes violations-section-pulse{0%{box-shadow:0 0 #e0a0008c}60%{box-shadow:0 0 0 10px #e0a00000}to{box-shadow:0 0 #e0a00000}}.violations-section-pulse{animation:violations-section-pulse 1.4s ease-out 1;border-radius:8px}.dashboard-meta{font-size:.75rem;color:var(--text-muted);margin-top:10px;padding-top:8px;border-top:1px solid var(--border)}.kpi-improved{animation:kpiFlashGreen .8s ease}@keyframes kpiFlashGreen{0%{background:#27ae6033;border-radius:6px}to{background:transparent}}@keyframes kpiFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.day-navigator{display:flex;gap:0;margin-bottom:12px;border-bottom:2px solid var(--border);overflow-x:auto}.day-tab{display:flex;flex-direction:column;align-items:center;padding:6px 14px 5px;background:transparent;border:none;border-bottom:3px solid transparent;color:var(--text-muted);cursor:pointer;transition:all var(--transition-normal);min-width:64px;position:relative}.day-tab:hover{background:var(--bg-hover);color:var(--text)}.day-tab.day-tab-active{color:var(--accent);border-bottom-color:var(--accent);font-weight:600}.day-tab-name{font-size:.65rem;text-transform:uppercase;letter-spacing:.5px}.day-tab-num{font-size:1.15rem;font-weight:700;line-height:1.2}.day-tab-label{font-size:.6rem;opacity:.7}.day-violation-dot{position:absolute;top:4px;inset-inline-end:4px;width:14px;height:14px;border-radius:50%;background:var(--danger);color:#fff;font-size:.6rem;font-weight:700;display:flex;align-items:center;justify-content:center;line-height:1}.day-window-text{white-space:nowrap}.day-nav-wrap{margin-bottom:12px}.day-hero{display:none}.day-hero-main{display:flex;align-items:center;gap:8px;padding:4px 8px;background:var(--bg-card, #fff);border:1px solid var(--border);border-radius:12px;box-shadow:0 1px 2px #0000000a}.day-hero-step{flex:0 0 auto;width:40px;height:40px;border:none;background:transparent;color:var(--accent);font-size:1.6rem;line-height:1;font-weight:700;border-radius:10px;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;transition:background var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast),color var(--transition-fast);-webkit-tap-highlight-color:transparent}.day-hero-step:active:not(:disabled){background:color-mix(in srgb,var(--accent) 22%,transparent);color:var(--accent);transform:scale(.85);box-shadow:0 0 0 3px var(--accent-glow)}.day-hero-step:disabled{color:var(--text-muted);opacity:.35;cursor:default}.day-hero-title{flex:1 1 auto;display:flex;align-items:center;justify-content:center;gap:6px;font-size:1.05rem;font-weight:700;color:var(--text)}.day-hero-label{letter-spacing:.2px}.day-hero-violation{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:20px;padding:0 6px;border-radius:10px;background:var(--danger);color:#fff;font-size:.7rem;font-weight:700;line-height:1}.day-hero-dots{display:flex;justify-content:center;align-items:center;gap:6px;padding:8px 4px 2px}.day-hero-dot{flex:0 0 auto;width:28px;height:28px;border-radius:50%;border:1.5px solid var(--border);background:transparent;color:var(--text-muted);font-size:.75rem;font-weight:600;line-height:1;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;transition:background var(--transition-normal),color var(--transition-normal),border-color var(--transition-normal),transform var(--transition-normal)}.day-hero-dot-num{display:block}.day-hero-dot:active{transform:scale(.92)}.day-hero-dot-active{background:var(--accent);border-color:var(--accent);color:#fff;transform:scale(1.08)}.day-hero-dot-violation{border-color:var(--danger);color:var(--danger)}.day-hero-dot-active.day-hero-dot-violation{background:var(--danger);border-color:var(--danger);color:#fff}.day-hero-dot.day-tab-frozen{border-color:#7ec4ff;color:#3b82c4;background:#7ec4ff1f}.day-hero-dot.day-tab-partial-frozen{border-color:#f0b459;color:#a06a1c;background:#f0b45924}.availability-inline{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.availability-inline .availability-time-input{min-width:96px;width:auto}.availability-time-input-wrap{display:flex;flex-direction:column;gap:4px;font-size:.78rem;color:var(--text-muted)}.availability-time-input{min-width:118px}.schedule-layout{display:flex;gap:20px}.schedule-main{flex:1;min-width:0}.participant-sidebar{min-width:300px;max-width:340px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:16px;position:sticky;top:16px;max-height:calc(100vh - 200px);overflow-y:auto}.sidebar-header{margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid var(--border)}.sidebar-header h3{font-size:.95rem;margin-bottom:4px;color:var(--text)}.sidebar-avg{font-size:.78rem;color:var(--text-muted)}.sidebar-entries{display:flex;flex-direction:column;gap:8px}.sidebar-entry{padding:6px 0;border-bottom:1px solid rgba(255,255,255,.03)}.sidebar-name{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px;font-size:.8rem;font-weight:600;color:var(--text)}.sidebar-meta{display:flex;gap:4px}.sidebar-mult-badge{display:inline-block;margin-inline-start:6px;padding:0 6px;font-size:.7rem;font-weight:600;background:var(--warning, #d68910);color:#fff;border-radius:8px;cursor:help}.sidebar-bar-row{display:flex;align-items:center;gap:6px}.sidebar-bar-bg{position:relative;flex:1;height:18px;background:#ffffff0d;border-radius:3px;overflow:hidden;cursor:help}.sidebar-bar-fill{position:absolute;top:0;inset-inline-start:0;height:100%;border-radius:3px;transition:width var(--transition-slow) ease;background:linear-gradient(90deg,#e67e22,var(--danger))}.sidebar-bar-today{position:absolute;top:0;inset-inline-start:0;height:100%;background:#ffffff2e;border-radius:3px;pointer-events:none}.sidebar-bar-label{position:absolute;top:0;inset-inline-end:4px;line-height:18px;font-size:.62rem;color:var(--text);text-shadow:0 1px 2px rgba(0,0,0,.5);white-space:nowrap}.sidebar-today-tag{font-size:.62rem;color:var(--accent);white-space:nowrap;flex-shrink:0}.sidebar-senior-divider{margin-top:12px;padding-top:8px;border-top:1px solid var(--border)}.btn-senior-toggle{display:flex;align-items:center;gap:6px;width:100%;padding:8px 10px;background:#ffffff0a;border:1px solid var(--border);border-radius:var(--radius);color:var(--text-muted);font-size:.8rem;font-weight:600;cursor:pointer;transition:background var(--transition-normal),color var(--transition-normal)}.btn-senior-toggle:hover{background:#ffffff14;color:var(--text)}.senior-toggle-arrow{margin-inline-start:auto;font-size:.7rem;transition:transform var(--transition-normal)}.sidebar-senior-panel{margin-top:8px;padding-top:4px;animation:fadeIn .2s ease}.sidebar-header-senior{margin-bottom:8px;padding-bottom:6px;border-bottom:1px solid rgba(255,255,255,.06)}.sidebar-header-senior h3{font-size:.85rem;color:var(--text-muted)}@keyframes fadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.cross-day-badge{display:inline-block;padding:1px 6px;border-radius:3px;font-size:.65rem;font-weight:600;margin-inline-start:4px;vertical-align:middle}.cross-from{background:#3498db26;color:#3498db;border:1px solid rgba(52,152,219,.3)}.cross-to{background:#f39c1226;color:#f39c12;border:1px solid rgba(243,156,18,.3)}.cross-both{background:#8e44ad26;color:#8e44ad;border:1px solid rgba(142,68,173,.3)}.gantt-cross-from{border-inline-start:3px solid #3498db}.gantt-cross-to{border-inline-end:3px solid #f39c12}.violation-section{margin-top:10px}.violation-other{opacity:.75}.violation-section>em{display:block;font-style:normal;font-weight:700;font-size:.82rem;letter-spacing:.02em;padding-inline-start:8px;border-inline-start:3px solid currentColor;margin-bottom:4px}.violation-day{margin:6px 0 6px 12px}.violation-day>em{display:block;font-style:normal;font-weight:600;font-size:.78rem;opacity:.8;margin-bottom:2px}.violation-section ul,.violation-day ul{margin:2px 0 6px;padding-inline-start:22px}.violation-category{margin-top:8px}.violation-category-toggle{display:flex;align-items:center;gap:8px;width:100%;background:none;border:1px solid currentColor;border-radius:6px;padding:6px 10px;cursor:pointer;color:inherit;text-align:start;font:inherit;opacity:.85}.violation-category-toggle:hover{opacity:1;background:#0000000a}.violation-category-label{font-weight:600}.violation-category-count{display:inline-block;min-width:1.5em;padding:0 6px;border-radius:10px;background:#0000001f;font-size:.8rem;text-align:center}.violation-category-icon{margin-inline-start:auto;font-size:.9rem;opacity:.6}.violation-category-content{padding:4px 6px 2px}.rest-badge{display:inline-block;padding:2px 8px;border-radius:3px;font-size:.75rem;font-weight:500}.rest-badge-active{background:#95a5a633;color:var(--rest-muted);border:1px solid rgba(149,165,166,.3)}.rest-badge-ok{background:#27ae601a;color:var(--success);border:1px solid rgba(39,174,96,.2)}tr.row-rest{opacity:.5;background:#95a5a60d}tr.row-rest td{color:var(--text-muted)!important}.optim-overlay{position:fixed;inset:0;background:#0f172abf;backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.optim-card{background:#1a1d27b3;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:40px 48px;text-align:center;max-width:420px;width:90%;box-shadow:inset 0 1px #ffffff0f,0 25px 50px #0006}.optim-card h3{color:var(--text);font-size:1.1rem;font-weight:600;margin:16px 0 24px}.optim-spinner{width:40px;height:40px;border:4px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite;margin:0 auto}.optim-progress-bar{width:100%;height:8px;background:var(--border);border-radius:4px;overflow:hidden;margin-bottom:16px}.optim-progress-fill{height:100%;background:var(--accent);border-radius:4px;transition:width var(--transition-slow) ease}.optim-status{color:var(--text-muted);font-size:.9rem;margin-bottom:20px}.optim-improved{color:var(--optim-improved);font-weight:600;margin-inline-start:8px;animation:pulse .5s ease}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.15)}}.optim-metrics{display:flex;gap:24px;justify-content:center}.optim-metric{display:flex;flex-direction:column;gap:4px}.optim-metric-label{color:var(--text-muted);font-size:.75rem;text-transform:uppercase;letter-spacing:.05em}.optim-metric-value{color:var(--text);font-size:1.4rem;font-weight:700;font-variant-numeric:tabular-nums}.optim-metric-value.optim-ok{color:var(--success)}.optim-metric-value.optim-warn{color:var(--danger)}.optim-actions{margin-top:18px;display:flex;gap:10px;justify-content:center;align-items:stretch}.btn-cancel-optim{padding:8px 28px;border:1px solid rgba(255,255,255,.15);border-radius:8px;background:#ffffff0f;color:var(--text-muted);font-size:.9rem;cursor:pointer;white-space:nowrap;transition:background .15s,color .15s,border-color .15s}.btn-cancel-optim:hover{background:#ffffff1f;color:var(--text);border-color:#ffffff40}.btn-accept-best{padding:8px 28px;border:1px solid rgba(74,144,217,.6);border-radius:8px;background:#4a90d940;color:#eaf3ff;font-size:.95rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .15s,color .15s,border-color .15s,opacity .15s}.btn-accept-best:hover:not(:disabled){background:#4a90d966;border-color:#4a90d9d9}.btn-accept-best:disabled{opacity:.4;cursor:not-allowed}.optim-error{text-align:center}.tune-card{max-width:560px;width:92%;text-align:start;padding:28px 32px;position:relative;overflow:hidden}.tune-card-breathing{animation:tune-breathe 4s ease-in-out infinite}@keyframes tune-breathe{0%,to{box-shadow:inset 0 1px #ffffff0f,0 25px 50px #0006,0 0 0 1px #4a90d926}50%{box-shadow:inset 0 1px #ffffff0f,0 25px 50px #0006,0 0 20px 2px #4a90d940,0 0 0 1px #4a90d959}}.tune-particles{position:absolute;inset:0;pointer-events:none;z-index:0}.tune-card>*:not(.tune-particles){position:relative;z-index:1}.tune-bubble{position:absolute;display:block;border-radius:50%;background:#4a90d91f;will-change:transform,opacity;animation:tune-float linear infinite}.tune-bubble:nth-child(1){width:10px;height:10px;left:12%;bottom:-12px;animation-duration:9s;animation-delay:0s;opacity:.5}.tune-bubble:nth-child(2){width:14px;height:14px;left:35%;bottom:-16px;animation-duration:11s;animation-delay:2s;opacity:.4}.tune-bubble:nth-child(3){width:8px;height:8px;left:58%;bottom:-10px;animation-duration:8s;animation-delay:4s;opacity:.6}.tune-bubble:nth-child(4){width:12px;height:12px;left:78%;bottom:-14px;animation-duration:10s;animation-delay:1s;opacity:.35}.tune-bubble:nth-child(5){width:6px;height:6px;left:25%;bottom:-8px;animation-duration:7s;animation-delay:3.5s;opacity:.55}.tune-bubble:nth-child(6){width:10px;height:10px;left:68%;bottom:-12px;animation-duration:12s;animation-delay:5s;opacity:.3}@keyframes tune-float{0%{transform:translateY(0) scale(1);opacity:0}10%{opacity:1}90%{opacity:1}to{transform:translateY(-420px) scale(.6);opacity:0}}.tune-card h3{text-align:center;margin:0 0 12px}.tune-fingerprint{text-align:center;color:var(--text-muted);font-size:.85rem;margin-bottom:20px;padding:8px 12px;background:#ffffff0a;border-radius:6px;direction:rtl}.tune-phase-label{font-size:.95rem;font-weight:600;color:var(--text);margin-bottom:8px;text-align:start}.tune-bracket{display:flex;justify-content:space-between;gap:4px;margin:16px 0 18px}.tune-bracket-seg{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;padding:6px 4px;border:1px solid var(--border);border-radius:6px;opacity:.45;transition:opacity .2s ease}.tune-bracket-seg.tune-bracket-done{opacity:.85;border-color:var(--success)}.tune-bracket-seg.tune-bracket-active{opacity:1;border-color:var(--accent);box-shadow:0 0 0 1px var(--accent);animation:tune-bracket-pulse 1.8s ease-in-out infinite}@keyframes tune-bracket-pulse{0%,to{box-shadow:0 0 0 1px var(--accent)}50%{box-shadow:0 0 0 3px #6366f159}}@media(prefers-reduced-motion:reduce){.tune-bracket-seg.tune-bracket-active{animation:none}}.tune-bracket-num{position:relative;display:inline-flex;align-items:center;justify-content:center;min-width:1ch;font-variant-numeric:tabular-nums;font-weight:700;font-size:.95rem;line-height:1;color:var(--text)}.tune-bracket-num-pending,.tune-bracket-num-check{display:inline-flex;align-items:center;justify-content:center}.tune-bracket-num-check{position:absolute;inset:0;opacity:0;color:var(--success)}.tune-bracket-seg.tune-bracket-done .tune-bracket-num-pending{animation:tune-num-out .35s ease forwards}.tune-bracket-seg.tune-bracket-done .tune-bracket-num-check{animation:tune-check-in .35s ease forwards}@keyframes tune-num-out{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.7)}}@keyframes tune-check-in{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@media(prefers-reduced-motion:reduce){.tune-bracket-seg.tune-bracket-done .tune-bracket-num-pending,.tune-bracket-seg.tune-bracket-done .tune-bracket-num-check{animation:none}.tune-bracket-seg.tune-bracket-done .tune-bracket-num-pending{opacity:0}.tune-bracket-seg.tune-bracket-done .tune-bracket-num-check{opacity:1}}.tune-bracket-label{font-size:.75rem;color:var(--text-muted);text-align:center}.tune-metrics{margin-top:8px}.tune-leader-diff{margin-top:12px;text-align:center;font-size:.85rem;color:var(--text);min-height:1.2em;font-variant-numeric:tabular-nums;direction:rtl}.tune-leader-diff:empty{margin:0;min-height:0}.tune-elapsed{margin-top:10px;text-align:center;font-size:.8rem;color:var(--text-muted);font-variant-numeric:tabular-nums}.tune-score-pulse{animation:pulse .5s ease}@media(prefers-reduced-motion:reduce){.tune-score-pulse{animation:none}}.tune-actions{display:flex;justify-content:center;margin-top:18px}.settings-autotune-row{display:flex;flex-direction:column;align-items:stretch;gap:6px;margin:10px 0 4px;padding:10px 12px;background:#4a90d914;border:1px dashed var(--border);border-radius:6px}.settings-autotune-hint{color:var(--text-muted);font-size:.82rem}.tune-result-modal{padding:4px 2px;direction:rtl}.tune-result-header h3{margin:0 0 6px;color:var(--text)}.tune-result-reason{color:var(--text-muted);font-size:.9rem;margin:0 0 14px}.tune-result-fingerprint{font-size:.82rem;color:var(--text-muted);background:#ffffff0a;padding:6px 10px;border-radius:6px;margin-bottom:14px}.tune-result-stats{display:flex;gap:12px;justify-content:space-between;margin-bottom:16px}.tune-stat{flex:1;display:flex;flex-direction:column;align-items:center;padding:10px 8px;background:#ffffff0a;border-radius:8px}.tune-stat-label{font-size:.72rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px}.tune-stat-value{font-variant-numeric:tabular-nums;font-size:1.3rem;font-weight:700;color:var(--text)}.tune-stat-value.tune-delta-good{color:var(--success)}.tune-stat-value.tune-delta-bad{color:var(--danger)}.tune-stat-sub{font-size:.72rem;color:var(--text-muted);margin-top:2px}.tune-diff-table{width:100%;border-collapse:collapse;margin-bottom:14px;font-size:.88rem}.tune-diff-table th{text-align:start;font-weight:600;color:var(--text-muted);padding:6px 8px;border-bottom:1px solid var(--border)}.tune-diff-table td{padding:6px 8px;border-bottom:1px solid rgba(255,255,255,.04);font-variant-numeric:tabular-nums}.tune-diff-key{color:var(--text)}.tune-diff-baseline{color:var(--text-muted)}.tune-diff-arrow{color:var(--accent);font-weight:700;text-align:center;width:1.5em}.tune-diff-tuned{color:var(--text);font-weight:600}.tune-result-note{color:var(--text-muted);font-size:.9rem;font-style:italic}.tune-result-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:10px}.optim-error h3{color:var(--danger);margin-bottom:12px}.optim-error p{color:var(--text-muted);margin-bottom:8px}.optim-error .btn-primary{margin-top:16px}.participant-hover{cursor:pointer;border-bottom:1px dotted var(--dotted-border);transition:color var(--transition-fast),text-decoration var(--transition-fast)}.participant-hover:hover{color:var(--accent);text-decoration:underline;text-underline-offset:2px}.participant-tooltip{position:fixed;z-index:99999;width:280px;background:var(--tooltip-bg);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 8px 32px var(--tooltip-shadow);padding:12px 14px;pointer-events:auto;transition:opacity var(--transition-fast) ease;color:var(--text);font-size:.82rem;line-height:1.5}.tt-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;padding-bottom:6px;border-bottom:1px solid var(--border)}.tt-name{font-size:.95rem;font-weight:600}.tt-level{display:inline-block;padding:1px 8px;border-radius:4px;color:var(--text-inverse);font-weight:700;font-size:.75rem}.tt-row{display:flex;justify-content:space-between;align-items:center;padding:2px 0}.tt-row-wrap{align-items:flex-start}.tt-row-wrap .tt-value{text-align:end}.tt-label{color:var(--text-muted);font-size:.78rem;margin-inline-end:6px}.tt-value{font-size:.8rem}.tt-bold{font-weight:700}.tt-dim{color:var(--text-muted);font-style:italic}.tt-green{color:var(--success)}.tt-orange{color:var(--warning)}.tt-red{color:var(--danger);font-weight:700}.tt-kpi{display:flex;align-items:baseline;justify-content:space-between;gap:8px;padding:6px 0 2px}.tt-kpi-main{display:flex;align-items:baseline;gap:6px;min-width:0}.tt-kpi-number{font-size:1.5rem;font-weight:700;line-height:1;color:var(--text);font-variant-numeric:tabular-nums}.tt-kpi-unit{font-size:.78rem;color:var(--text-muted)}.tt-kpi-pct{display:inline-block;padding:2px 8px;border-radius:999px;font-size:.78rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--text-inverse);white-space:nowrap}.tt-kpi-pct-ok{background:var(--success)}.tt-kpi-pct-warning{background:var(--warning)}.tt-kpi-pct-danger{background:var(--danger)}.tt-cert{display:inline-block;padding:0 6px;border-radius:3px;color:#fff;font-size:.72rem;font-weight:600;margin-inline-start:2px}.tt-divider{height:1px;background:var(--border);margin:6px 0}.tt-actions{display:inline-flex;gap:4px;margin-inline-start:auto;padding-inline-end:6px}.tt-actions button{background:none;border:1px solid var(--border);cursor:pointer;padding:2px 6px;font-size:.75rem;border-radius:3px;color:var(--text-muted);transition:all var(--transition-fast)}.tt-actions button:hover{background:var(--bg-hover);color:var(--text)}.tt-actions .btn-swap:hover{border-color:var(--accent);color:var(--accent)}.tt-actions .btn-rescue{color:var(--danger)}.tt-actions .btn-rescue:hover{background:var(--danger);color:var(--text-inverse)}.task-detail-tooltip{position:fixed;z-index:99999;width:310px;max-height:420px;overflow-y:auto;background:var(--tooltip-bg);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 8px 32px var(--tooltip-shadow);padding:12px 14px;pointer-events:auto;transition:opacity var(--transition-fast) ease;color:var(--text);font-size:.82rem;line-height:1.5}.task-tooltip-hover{cursor:default}.ttt-header{display:flex;align-items:center;gap:8px;margin-bottom:6px}.ttt-task-name{font-size:.95rem;font-weight:700}.ttt-time{display:flex;justify-content:space-between;align-items:center;color:var(--text-muted);font-size:.8rem;margin-bottom:4px}.ttt-dur{font-weight:600;color:var(--text)}.ttt-divider{height:1px;background:var(--border);margin:6px 0}.ttt-section-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);margin-bottom:6px;font-weight:600}.ttt-empty{color:var(--text-muted);font-style:italic;font-size:.8rem}.ttt-teammates{display:flex;flex-direction:column;gap:6px}.ttt-mate{padding:5px 8px;background:#ffffff0a;border-radius:4px;border-inline-start:2px solid var(--border)}.ttt-mate-main{display:flex;align-items:center;justify-content:space-between;gap:6px}.ttt-mate-name{font-weight:600;font-size:.84rem}.ttt-mate-level{display:inline-block;padding:0 6px;border-radius:3px;color:var(--text-inverse);font-weight:700;font-size:.7rem}.ttt-mate-meta{display:flex;flex-wrap:wrap;gap:3px;margin-top:3px}.ttt-slot{font-size:.72rem;color:var(--text-muted);background:#ffffff0f;padding:0 5px;border-radius:3px}.ttt-cert{display:inline-block;padding:0 5px;border-radius:3px;color:var(--text-inverse);font-size:.68rem;font-weight:600}.profile-view-root{animation:fadeIn .25s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.profile-topbar{display:grid;grid-template-columns:auto 1fr auto;grid-template-areas:"kpi identity back";column-gap:20px;row-gap:12px;padding:16px 20px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:20px}.btn-back{grid-area:back;align-self:start;display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-hover);color:var(--text);cursor:pointer;font-size:.88rem;font-weight:500;transition:background var(--transition-fast),border-color var(--transition-fast);white-space:nowrap}.btn-back:hover{background:var(--accent-glow);border-color:var(--accent);color:var(--accent)}.profile-kpi-hero{grid-area:kpi;align-self:start;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:12px 18px;min-width:96px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius)}.profile-kpi-hero .profile-kpi-value{font-size:1.6rem;font-weight:700;color:var(--accent);line-height:1.1}.profile-kpi-hero .profile-kpi-label{font-size:.72rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-top:2px}.profile-identity{grid-area:identity;min-width:0}.profile-name{font-size:1.5rem;font-weight:700;margin-bottom:6px;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-badges{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:8px}.profile-assignment{display:inline-flex;align-items:center;gap:6px;max-width:100%;margin-bottom:8px;padding:4px 10px;border-radius:12px;font-size:.85rem;font-weight:600}.profile-assignment>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-assignment>svg{flex-shrink:0;opacity:.85}.profile-assignment.status-available{background:#27ae6026;color:var(--success)}.profile-assignment.status-active{background:#4a90d926;color:var(--accent)}.profile-meta-row{display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:.82rem;color:var(--text-muted);margin-top:4px}.profile-meta-row>svg{flex-shrink:0;opacity:.65}.profile-pref-label{font-size:.78rem;color:var(--text-muted);margin-inline-end:2px}@media(max-width:959px){.profile-topbar{grid-template-columns:auto 1fr;grid-template-areas:"back kpi" "identity identity";row-gap:14px}.profile-kpi-hero{flex-direction:row;align-items:baseline;gap:6px;min-width:0;padding:6px 12px;justify-self:end}.profile-kpi-hero .profile-kpi-value{font-size:1rem}.profile-kpi-hero .profile-kpi-label{font-size:.7rem;text-transform:none;letter-spacing:0;margin-top:0}}@media(max-width:479px){.profile-topbar{padding:12px;column-gap:10px}.profile-name{font-size:1.15rem;white-space:normal}.btn-back-label{display:none}.btn-back{padding:8px}}.profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}@media(max-width:960px){.profile-grid{grid-template-columns:1fr}}.profile-left,.profile-right{display:flex;flex-direction:column;gap:20px;min-width:0}.profile-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:18px 20px}.profile-card-title{font-size:1.05rem;font-weight:700;margin-bottom:12px;color:var(--text)}.profile-card-subtitle{font-size:.82rem;color:var(--text-muted);margin:-6px 0 12px}.profile-sub-title{font-size:.88rem;font-weight:600;color:var(--text-muted);margin:10px 0 6px}.profile-list{list-style:none;padding:0}.profile-list li{padding:6px 0;border-bottom:1px solid var(--border);font-size:.88rem}.profile-list li:last-child{border-bottom:none}.profile-empty-note{font-style:italic;font-size:.88rem;padding:8px 0}.agenda-days{display:flex;flex-direction:column;gap:10px}.agenda-day{border:1px solid var(--border);border-radius:6px;overflow:hidden}.agenda-day-current{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent-glow)}.agenda-day-header{display:flex;justify-content:space-between;align-items:center;padding:7px 12px;background:var(--bg-hover);font-size:.84rem;font-weight:600}.agenda-day-label{color:var(--text)}.agenda-day-count{color:var(--text-muted);font-weight:400;font-size:.78rem}.agenda-empty{padding:8px 12px;font-size:.82rem;color:var(--text-muted);font-style:italic}.agenda-tasks{display:flex;flex-direction:column}.agenda-task{display:flex;align-items:center;gap:10px;padding:6px 12px;border-bottom:1px solid rgba(42,46,61,.5);font-size:.84rem;transition:background var(--transition-fast)}.agenda-task:last-child{border-bottom:none}.agenda-task:hover{background:var(--bg-hover)}.agenda-task-time{color:var(--text-muted);font-family:Courier New,Courier,monospace;font-size:.78rem;white-space:nowrap;min-width:100px}.agenda-task-info{display:flex;align-items:center;gap:6px;flex:1 1 auto;min-width:0}.agenda-task>.btn-rescue-profile,.agenda-task>.frozen-action-icon{margin-inline-start:auto;flex-shrink:0}.btn-rescue-profile{font-size:.85rem;line-height:1;padding:2px 6px}.metrics-summary{display:flex;flex-direction:column;gap:6px}.metric-row{display:flex;justify-content:space-between;align-items:center;padding:4px 0;font-size:.88rem}.metric-label{color:var(--text-muted)}.metric-value{font-weight:600;color:var(--text)}.metric-ok{color:var(--success)!important}.metric-warning{color:var(--warning)!important}.metric-danger{color:var(--danger)!important}.metrics-breakdown{display:flex;flex-direction:column;gap:6px}.breakdown-row{display:flex;align-items:center;gap:8px;font-size:.84rem}.breakdown-label{min-width:70px;flex-shrink:0}.breakdown-bar-bg{flex:1;height:10px;background:var(--bg);border-radius:5px;overflow:hidden}.breakdown-bar-fill{height:100%;border-radius:5px;transition:width var(--transition-slow) ease}.breakdown-value{font-size:.78rem;color:var(--text-muted);white-space:nowrap;min-width:80px;text-align:end}.col-select{width:36px;text-align:center;padding:4px 6px!important}.col-select input[type=checkbox],.cb-select-participant,#cb-select-all{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;width:18px;height:18px;border:2px solid var(--border, #555);border-radius:4px;background:var(--bg-card, #1e1e2e);position:relative;flex-shrink:0;transition:background .15s,border-color .15s}.col-select input[type=checkbox]:checked,.cb-select-participant:checked,#cb-select-all:checked{background:var(--primary, #3b82f6);border-color:var(--primary, #3b82f6)}.col-select input[type=checkbox]:checked:after,.cb-select-participant:checked:after,#cb-select-all:checked:after{content:"";position:absolute;top:2px;left:5px;width:5px;height:9px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}tr.row-selected{background:#3498db1a!important}tr.row-selected:hover{background:#3498db2e!important}.bulk-toolbar[hidden]{display:none!important}.bulk-toolbar{position:sticky;bottom:0;display:flex;align-items:center;gap:12px;padding:10px 16px;margin-top:8px;background:var(--bg-card);border:1px solid var(--border);border-radius:8px;box-shadow:0 -2px 8px #00000026;z-index:50}.bulk-toolbar .bulk-count{font-weight:600;white-space:nowrap}.participants-quote{position:relative;max-width:430px;margin:30px auto 18px;padding-inline-start:16px;padding-inline-end:2px;text-align:start}.participants-quote:before{content:"";position:absolute;inset-inline-start:0;top:3px;bottom:4px;width:3px;border-radius:3px;background:linear-gradient(to bottom,var(--accent),var(--accent-glow))}.participants-quote-text{margin:0;font-size:.82rem;line-height:1.62;font-weight:400;color:var(--text-secondary);letter-spacing:.005em}.participants-quote-author{display:block;margin-top:7px;font-size:.76rem;font-weight:600;letter-spacing:.03em;color:var(--accent)}.bulk-dialog-backdrop{position:fixed;inset:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:200}.bulk-dialog{background:var(--bg-card);border-radius:10px;padding:24px;min-width:380px;max-width:480px;box-shadow:0 8px 32px #00000038}.bulk-dialog h3{margin:0 0 16px;font-size:1.1rem}.bulk-dialog-body{display:flex;flex-direction:column;gap:12px}.bulk-dialog-body .form-row{display:flex;gap:12px;align-items:start;flex-wrap:wrap}.bulk-dialog-body label{display:flex;flex-direction:column;gap:4px;font-size:.85rem;font-weight:500}.bulk-dialog-footer{display:flex;justify-content:flex-end;gap:8px;margin-top:20px}.bulk-confirmation{background:var(--success);color:var(--text-inverse);padding:10px 18px;border-radius:6px;font-weight:500;margin-bottom:12px;animation:bulkToastIn .3s ease,bulkToastOut .3s ease 3s forwards}@keyframes bulkToastIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes bulkToastOut{0%{opacity:1}to{opacity:0}}.btn-danger{background:var(--danger);color:var(--text-inverse);border:1px solid var(--danger-hover);border-radius:4px;cursor:pointer;font-weight:600}.btn-danger:hover{background:var(--danger-hover)}.bulk-delete-dialog .bulk-delete-warning{font-size:.9rem;line-height:1.5;color:var(--text-secondary);margin:0 0 8px}.btn-generate-dirty{animation:dirtyPulse 1.5s ease-in-out infinite;box-shadow:0 0 #f39c1280}@keyframes dirtyPulse{0%{box-shadow:0 0 #f39c1280}50%{box-shadow:0 0 0 8px #f39c1200}to{box-shadow:0 0 #f39c1200}}.dirty-notice{background:var(--dirty-bg);color:var(--dirty-text);border:1px solid var(--dirty-border);border-radius:6px;padding:8px 14px;font-size:.88rem;font-weight:500;margin-bottom:12px}.row-frozen{background:var(--frozen-glow);opacity:.75}.row-frozen td{color:var(--text-muted)}.task-cell-frozen{background:#00bcd414!important}.frozen-label{display:inline-block;font-size:.7rem;color:var(--frozen);font-weight:600;margin-inline-start:4px}.frozen-action-icon{display:inline-flex;align-items:center;color:var(--frozen);opacity:.7;cursor:default}.day-tab-frozen{border-color:var(--frozen)!important;background:#00bcd41f!important;opacity:.7}.day-tab-partial-frozen{border-color:var(--warning)!important;background:#ff980014!important}.live-mode-controls{display:flex;align-items:center;gap:10px;padding:8px 14px;background:var(--frozen-glow);border:1px solid rgba(0,188,212,.2);border-radius:8px;margin-bottom:12px;flex-wrap:wrap}.live-mode-picker{display:flex;align-items:center;gap:8px}.live-mode-picker .gm-select{min-width:auto}.live-mode-picker .gm-select-dropdown{min-width:120px}.live-mode-controls label,.live-mode-controls .live-picker-label{font-weight:600;font-size:.85rem;white-space:nowrap}.btn-rescue{background:var(--rescue-action);color:var(--text-inverse);border:none;border-radius:4px;padding:2px 8px;font-size:.72rem;cursor:pointer;font-weight:600}.btn-rescue:hover{background:var(--rescue-action-hover)}.rescue-backdrop{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:9999}.rescue-modal{background:var(--bg-card, #fff);border-radius:12px;width:min(600px,92vw);max-height:85vh;overflow-y:auto;box-shadow:0 12px 40px #0000004d;padding:0}.rescue-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border, #e0e0e0)}.rescue-header h3{margin:0;font-size:1.1rem}.rescue-close{background:none;border:none;font-size:1.2rem;cursor:pointer;color:var(--text-muted, #999);padding:4px 8px;border-radius:4px}.rescue-close:hover{background:var(--bg-hover, #f0f0f0)}.rescue-context{padding:12px 20px;font-size:.88rem;color:var(--text-muted, #666)}.rescue-context p{margin:0}.rescue-plans{padding:0 20px 16px}.rescue-plan{border:1px solid var(--border, #e0e0e0);border-radius:8px;padding:12px;margin-bottom:12px;transition:border-color var(--transition-fast)}.rescue-plan:hover{border-color:var(--frozen)}.rescue-plan--recommended{border-inline-start:4px solid var(--success);background:#27ae600a}.rescue-plan--recommended:hover{border-color:var(--success);border-inline-start-color:var(--success)}.rescue-plan-header{display:flex;align-items:center;gap:12px;margin-bottom:10px}.rescue-rank{font-weight:700;font-size:1rem;color:var(--frozen);display:flex;align-items:center;gap:6px}.rescue-recommended-tag{font-size:.7rem;font-weight:600;color:var(--success);background:#27ae601f;padding:1px 7px;border-radius:8px;white-space:nowrap}.rescue-quality{font-size:.78rem;font-weight:600;padding:2px 8px;border-radius:10px}.rescue-quality--excellent{color:#1b8a4a;background:#27ae601f}.rescue-quality--fair{color:#b8860b;background:#daa5201f}.rescue-quality--significant{color:var(--danger-hover);background:#e74c3c1a}.rescue-swaps{font-size:.78rem;background:#00bcd41a;color:var(--frozen);padding:2px 8px;border-radius:10px;font-weight:600}.rescue-steps{margin:0;padding-inline-start:22px;font-size:.85rem;line-height:1.8;list-style-type:decimal}.rescue-steps li{padding:2px 0}.rescue-steps li+li{border-top:1px solid rgba(0,0,0,.04)}.rescue-plan-collapsible{margin-top:4px}.rescue-plan-expand{cursor:pointer;font-size:.8rem;color:var(--text-muted, #666);padding:4px 0;user-select:none}.rescue-plan-expand:hover{color:var(--frozen)}.btn-apply-plan{display:block;width:100%;margin-top:10px;padding:6px 0;background:var(--success);color:var(--text-inverse);border:none;border-radius:6px;font-weight:600;font-size:.85rem;cursor:pointer;transition:background var(--transition-fast)}.btn-apply-plan:hover{background:#219a52}.rescue-fallback-warning{margin-top:6px;margin-bottom:4px;padding:6px 10px;background:#e67e2214;border:1px dashed rgba(230,126,34,.5);border-radius:6px;font-size:.8rem;color:#bf6516;font-weight:500}.rescue-plan--fallback{border-inline-start:4px solid rgba(230,126,34,.55)}.rescue-empty{text-align:center;padding:24px;color:var(--text-muted);font-style:italic}.rescue-error-banner{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 16px;background:#fdecea;border-bottom:1px solid #f5c6cb;color:#a94442;font-size:.85rem;font-weight:500;border-radius:12px 12px 0 0}.rescue-error-dismiss{background:none;border:none;color:#a94442;font-size:1rem;cursor:pointer;padding:2px 6px;border-radius:4px}.rescue-error-dismiss:hover{background:#a944421a}.rescue-footer{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:12px 20px;border-top:1px solid var(--border, #e0e0e0)}.rescue-record-vacated-row{display:flex;flex-direction:column;align-items:stretch;gap:6px;padding:10px 20px 0}.rescue-record-vacated-reason{width:100%}.rescue-record-vacated-reason-input{width:100%;box-sizing:border-box}.rescue-record-vacated-label{display:flex;align-items:center;gap:8px;font-size:.85rem;color:var(--text-muted, #666);cursor:pointer;line-height:1.35}.rescue-record-vacated-label input[type=checkbox]{flex:0 0 auto;width:16px;height:16px;cursor:pointer}.rescue-record-vacated-label strong{color:var(--text, #222)}.btn-rescue-more{background:var(--frozen);color:var(--text-inverse);border:none;border-radius:6px;padding:6px 16px;font-weight:600;font-size:.85rem;cursor:pointer}.btn-rescue-more:hover{background:#00acc1}.btn-rescue-dismiss{background:var(--bg-hover, #e0e0e0);color:var(--text, #333);border:none;border-radius:6px;padding:6px 16px;font-weight:600;font-size:.85rem;cursor:pointer}.btn-rescue-dismiss:hover{background:var(--border, #ccc)}.rescue-participant-hover,.fsos-participant-hover,.swap-delta-hover{cursor:pointer;text-decoration:underline dotted;text-underline-offset:2px;transition:color var(--transition-fast)}.rescue-participant-hover:hover,.fsos-participant-hover:hover,.swap-delta-hover:hover{color:var(--frozen)}.rescue-hover-tt{position:fixed;z-index:100000;width:260px;background:var(--tooltip-bg, #1e1e2e);border:1px solid var(--border, #444);border-radius:var(--radius, 8px);box-shadow:0 8px 28px #00000059;padding:10px 12px;pointer-events:auto;color:var(--text, #e0e0e0);font-size:.8rem;line-height:1.5}.rescue-hover-tt-header{font-weight:700;font-size:.85rem;margin-bottom:6px;padding-bottom:5px;border-bottom:1px solid var(--border, #444)}.rescue-hover-tt-task{display:flex;flex-direction:column;padding:3px 0;border-bottom:1px solid rgba(255,255,255,.06);font-size:.8rem;font-weight:500}.rescue-hover-tt-task:last-child{border-bottom:none}.rescue-hover-tt-time{display:block;font-size:.72rem;color:var(--text-muted, #999);margin-top:1px}.rescue-hover-tt-task--ref{background:#3b82f626;border-right:3px solid var(--primary, #3b82f6);border-radius:3px;padding-right:6px;margin-right:-4px}.rescue-hover-tt-empty{color:var(--text-muted, #999);font-style:italic;padding:4px 0}.schedule-grid-container{display:grid;gap:8px;margin-top:8px;align-items:start}.schedule-grid-container.schedule-grid-smart{grid-template-columns:repeat(12,1fr)}@media(max-width:767px){.schedule-grid-container.schedule-grid-smart{display:flex!important;flex-direction:column}.schedule-grid-container.schedule-grid-smart>*{grid-column:unset!important;grid-row:unset!important}}.schedule-table-wrapper{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);overflow-x:auto;box-shadow:0 1px 3px #00000014}.table-title{background:var(--bg-hover);font-size:.75rem;font-weight:700;text-transform:uppercase;padding:4px 8px;border-bottom:1px solid var(--border);margin:0;color:var(--text-muted);display:flex;align-items:center;justify-content:space-between;gap:8px}.table-title-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.schedule-grid-table{width:100%;border-collapse:collapse}.schedule-grid-table th{background:var(--bg-hover);color:var(--text-muted);font-size:.7rem;font-weight:600;text-align:start;padding:3px 4px;border-bottom:1px solid var(--border)}.schedule-grid-table td{padding:3px 4px;border-bottom:1px solid var(--border);vertical-align:top}.schedule-grid-table tr:last-child td{border-bottom:none}.col-time{width:48px;text-align:center;font-weight:600;color:var(--text-muted)}.time-cell{background:var(--time-cell-bg);text-align:center;font-size:.78rem;color:var(--text-muted);vertical-align:middle}.time-cell-inspectable{cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast),box-shadow var(--transition-fast)}.time-cell-inspectable:hover,.time-cell-inspectable:focus-visible{color:var(--accent);background:#00bcd424;box-shadow:inset 0 0 0 1px #00bcd459;outline:none}.time-cell-range-start{background:#00bcd440!important;outline:2px solid var(--accent);outline-offset:-2px}.pakal-badge{margin-inline-end:4px;border-radius:4px}.pakal-edit-input{flex:1;min-width:0}.pakal-checkboxes{display:flex;flex-wrap:wrap;gap:6px 10px}.form-row-pakalim{align-items:flex-start}.pakal-def-list{display:flex;flex-direction:column;gap:.5rem;margin-bottom:.75rem}.pakal-def-item{display:flex;align-items:center;gap:.75rem;padding:.4rem .5rem;background:var(--bg-row, #252538);border:1px solid var(--border, #333);border-radius:6px}.pakal-def-item .badge{min-width:50px;text-align:center}.pakal-usage-count{flex:1;font-size:.78rem;color:var(--text-secondary, #999)}.pakal-def-item-actions{display:flex;align-items:center;gap:.25rem;flex-shrink:0}.pakal-def-item-actions .btn-icon{padding:3px 6px;min-width:0;font-size:.8rem;line-height:1;background:transparent;border:1px solid var(--border, #333);color:var(--text-secondary, #999)}.pakal-def-item-actions .btn-icon:hover{background:var(--bg-hover, rgba(255, 255, 255, .05));color:var(--text, #fff)}.pakal-add-form{padding:.5rem;background:var(--bg-row, #252538);border:1px solid var(--border, #333);border-radius:6px}.pakal-add-row{display:flex;gap:.5rem;align-items:center}.pakal-add-row input{flex:1}.availability-popover-backdrop,.availability-popover{display:none}.availability-popover-header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:10px;padding-bottom:8px;border-bottom:1px solid var(--border)}.availability-popover-header h3{margin:0;font-size:.92rem;line-height:1.3}.availability-popover-subtitle{margin-top:3px;color:var(--text-muted);font-size:.76rem}.availability-popover-margin-note{margin-top:2px;color:var(--text-muted);font-size:.72rem;font-style:italic}.availability-popover-body{display:flex;flex-direction:column;gap:10px}.availability-overview{display:flex;flex-direction:column;gap:8px}.availability-total-card{display:flex;align-items:center;gap:10px;padding:10px;border:1px solid var(--border);border-radius:var(--radius);background:linear-gradient(135deg,var(--accent-glow),rgba(0,0,0,0))}.availability-total-count{min-width:48px;height:48px;display:grid;place-items:center;padding:0 10px;border-radius:14px;background:var(--accent);color:var(--text-inverse);font-size:1.3rem;font-weight:800;line-height:1}.availability-total-copy{display:flex;flex-direction:column;gap:2px}.availability-total-copy strong{font-size:.9rem;line-height:1.25}.availability-total-copy span{color:var(--text-muted);font-size:.75rem}.availability-quick-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.availability-quick-stat{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:56px;padding:8px 6px;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-hover)}.availability-quick-stat-value{font-size:1rem;font-weight:700;color:var(--text)}.availability-quick-stat-label{font-size:.7rem;color:var(--text-muted);text-align:center;line-height:1.25}.availability-section-title{color:var(--text-muted);font-size:.72rem;font-weight:700;letter-spacing:.03em}.availability-summary-note,.availability-overlap-note,.availability-empty{color:var(--text-muted);font-size:.76rem;line-height:1.4}.availability-bucket-list,.availability-name-list{display:flex;flex-direction:column;gap:6px}.availability-bucket,.availability-overlap{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-hover);overflow:hidden}.availability-bucket summary,.availability-overlap summary,.availability-bucket-empty{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 10px;cursor:pointer;font-weight:600;font-size:.86rem;line-height:1.3}.availability-bucket-main{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.availability-bucket-label{color:var(--text)}.availability-bucket-preview{color:var(--text-muted);font-size:.74rem;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.availability-bucket[open]>summary,.availability-overlap[open]>summary{border-bottom:1px solid var(--border)}.availability-bucket-empty{cursor:default}.availability-bucket-zero{opacity:.82}.availability-bucket-count{min-width:24px;text-align:center;padding:1px 7px;border-radius:999px;background:var(--accent-glow);color:var(--accent);font-size:.74rem;font-weight:700}.availability-bucket>.availability-name-list,.availability-overlap>.availability-name-list,.availability-bucket>.availability-empty,.availability-overlap>.availability-overlap-note{padding:0 10px 10px}.availability-name-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:1px 0;font-size:.84rem}.availability-name-row .participant-hover{color:var(--text);font-weight:500}.availability-multi-tag{background:var(--accent-glow);color:var(--accent)}.availability-close{flex-shrink:0}.avail-row-level{background:var(--bg-hover);color:var(--text-muted);font-family:var(--font-mono, monospace);font-size:.72rem;padding:1px 5px;margin-inline-start:6px}.avail-row-group{font-size:.78rem;color:var(--text-muted);margin-inline-start:4px}.availability-recovery-window{font-family:var(--font-mono, monospace);font-size:.72rem;color:var(--text-muted);margin-inline-start:6px;white-space:nowrap}.avail-strip-range-error{background:color-mix(in srgb,var(--warning) 12%,transparent);color:var(--warning);border:1px solid color-mix(in srgb,var(--warning) 40%,transparent);border-radius:6px;padding:4px 10px;font-size:.78rem;margin:4px 0;display:inline-block}.avail-strip-group-tabs{display:flex;gap:4px;border-bottom:1px solid var(--border);margin-bottom:8px}.avail-strip-group-tab{background:transparent;border:0;border-bottom:2px solid transparent;padding:6px 12px;font-size:.85rem;color:var(--text-muted);cursor:pointer;font-weight:500}.avail-strip-group-tab:hover{color:var(--text)}.avail-strip-group-tab-active{color:var(--accent);border-bottom-color:var(--accent);font-weight:600}.avail-strip-chips-row{display:flex;flex-wrap:wrap;gap:12px;align-items:center;padding:6px 0}.avail-strip-chip-group{display:flex;flex-wrap:wrap;align-items:center;gap:4px}.avail-strip-chip-label{font-size:.78rem;color:var(--text-muted);margin-inline-end:2px}.avail-strip-chip{background:var(--bg-card);border:1px solid var(--border);border-radius:999px;padding:2px 10px;font-size:.78rem;color:var(--text);cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast)}.avail-strip-chip:hover{background:var(--bg-hover)}.avail-strip-chip-active{background:var(--accent);border-color:var(--accent);color:#fff}.avail-strip-chip-clear{background:transparent;border:0;color:var(--accent);font-size:.78rem;cursor:pointer;text-decoration:underline;padding:2px 4px}@media(max-width:560px){.availability-quick-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.availability-bucket-preview{max-width:180px}}.avail-strip{display:flex;align-items:center;gap:10px;margin:20px 0 4px;padding:10px 16px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:background var(--transition-normal),box-shadow var(--transition-normal);user-select:none}.avail-strip:hover{background:var(--bg-hover);box-shadow:0 2px 8px #00000014}.avail-strip-icon{font-size:1.1rem;line-height:1}.avail-strip-label{font-size:.88rem;font-weight:600;color:var(--text)}.avail-strip-arrow{margin-inline-start:auto;color:var(--text-muted);font-size:.8rem;transition:transform var(--transition-normal)}.avail-strip.avail-strip-open{flex-direction:column;align-items:stretch;cursor:default;gap:0;padding:0}.avail-strip-header{display:flex;align-items:center;gap:10px;padding:10px 16px;cursor:pointer;border-bottom:1px solid var(--border);transition:background var(--transition-normal)}.avail-strip-header:hover{background:var(--bg-hover)}.avail-strip-header .avail-strip-arrow{margin-inline-start:auto}.avail-strip-body{padding:12px 16px;display:flex;flex-direction:column;gap:12px;animation:availSlideDown .2s ease-out}@keyframes availSlideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.avail-strip-inputs{display:flex;flex-direction:column;gap:8px}.avail-strip-inputs-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.avail-strip-range-label{font-size:.82rem;font-weight:600;color:var(--text-secondary)}.avail-strip-range-sep{font-size:.9rem;color:var(--text-muted);margin:0 2px}.avail-strip-margin-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-size:.82rem}.avail-strip-margin-toggle{display:flex;align-items:center;gap:5px;cursor:pointer;user-select:none}.avail-strip-margin-toggle input[type=checkbox]{margin:0}.avail-strip-margin-fields{display:flex;align-items:center;gap:10px}.avail-strip-margin-fields label{display:flex;align-items:center;gap:4px;white-space:nowrap}.avail-margin-input{width:60px;text-align:center}.avail-strip-inputs-row .input-sm,.avail-strip-inputs-row .gm-select-trigger,.avail-strip-inputs-row .btn-sm,.avail-strip-margin-row .input-sm{height:32px!important;min-height:32px!important;box-sizing:border-box;border-radius:6px!important;font-size:.85rem!important;padding:0 10px!important;line-height:1}.avail-strip-inputs-row .gm-select{height:32px;min-width:0;flex:0 1 auto}.avail-strip-inputs-row .availability-time-input{flex:0 0 auto}.avail-strip-inputs-row .btn-sm{flex:0 0 auto;white-space:nowrap}@media(max-width:767px){.avail-strip-inputs-row .input-sm,.avail-strip-inputs-row .gm-select-trigger,.avail-strip-inputs-row .btn-sm,.avail-strip-margin-row .input-sm{height:44px!important;min-height:44px!important}.avail-strip-inputs-row .gm-select{height:44px}}.avail-strip-results .availability-overview{flex-direction:row;align-items:stretch}.avail-strip-results .availability-total-card{flex:0 0 auto;min-width:180px}.avail-strip-results .availability-quick-stats{flex:1}.avail-strip-results .availability-bucket-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:8px}.avail-strip-results .availability-popover-header h3,.avail-strip-results .availability-popover-header .availability-close{display:none}.avail-strip-results .availability-popover-header{padding:0;border:none}@media(max-width:768px){.avail-strip-results .availability-overview{flex-direction:column}.avail-strip-results .availability-bucket-list{grid-template-columns:1fr}.avail-strip-inputs,.avail-strip-inputs-row,.avail-strip-margin-row{gap:6px}}tr.now-row>td{box-shadow:inset 0 -2px #00bcd44d}tr.now-row>td.time-cell{color:var(--accent);font-weight:700;background:#00bcd41f;box-shadow:inset 3px 0 0 var(--accent)}@keyframes now-row-pulse{0%{background:#00bcd433}to{background:#00bcd41f}}tr.now-row-animate>td.time-cell{animation:now-row-pulse .8s ease-out}@keyframes swapSlotIn{0%{opacity:0;transform:translateY(-10px);background-color:#ffd24673;box-shadow:0 0 6px #ffd2464d}30%{opacity:1;transform:translateY(0);background-color:#ffd24673;box-shadow:0 0 6px #ffd2464d}to{opacity:1;transform:translateY(0);background-color:transparent;box-shadow:none}}.swap-anim-in{animation:swapSlotIn 1.2s ease-out both}.assignment-card{background:#ffffff08;border:1px solid var(--border);border-inline-start:2px solid var(--text-muted);border-radius:3px;padding:2px 4px;margin-bottom:2px;position:relative;transition:all var(--transition-normal)}.assignment-card:hover{background:var(--card-hover-bg);transform:translateY(-1px);box-shadow:0 2px 8px var(--card-hover-shadow);z-index:10}[data-theme] .assignment-card.status-conflict{border-inline-start-color:var(--danger);background:#e74c3c1a}[data-theme] .assignment-card.status-frozen{border-inline-start-color:var(--frozen);background:var(--frozen-glow);filter:saturate(.5)}.card-frozen-mark{margin-inline-start:auto;flex:0 0 auto;display:inline-flex;align-items:center;color:var(--frozen)}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:0}.participant-name{font-weight:600;font-size:.78rem;color:var(--text);cursor:pointer;line-height:1.2}.participant-name:hover{text-decoration:underline;color:var(--accent)}.card-details{display:flex;align-items:center;gap:4px;font-size:.7rem;color:var(--text-muted)}.split-badge{display:inline-flex;align-items:center;justify-content:center;font-style:normal;font-weight:600;font-size:.72rem;line-height:1;min-width:13px;padding:1px 5px;border-radius:8px;background:var(--accent-glow);color:var(--info);border:1px solid var(--border);margin-inline-start:4px;flex-shrink:0}.split-info{margin-top:6px;padding:7px 9px;border-radius:6px;background:var(--accent-glow);border-inline-start:3px solid var(--info);color:var(--text);font-size:.76rem;line-height:1.4}.split-info-title{font-weight:700;margin-bottom:4px}.split-info-row{display:flex;justify-content:space-between;gap:10px}.split-info-row+.split-info-row{margin-top:2px}.split-info-k{color:var(--text-muted);flex-shrink:0}.split-info-v{text-align:end;font-weight:600}.split-info-time{color:var(--text-muted);font-weight:400}.rescue-split-note{color:var(--text-muted);font-size:.86em}.card-split-pair{justify-content:flex-start;flex-wrap:wrap;gap:2px 5px}.split-sep{color:var(--text-muted);font-weight:400;font-size:.74rem;line-height:1.2}.split-empty{color:var(--text-muted);font-weight:600;font-size:.78rem;line-height:1.2}.empty-slot-label{font-style:italic;color:var(--text-muted);font-size:.72rem;text-align:center;padding:2px;background:var(--bg-hover);border-radius:3px}.theme-segmented{display:inline-flex;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.theme-seg-btn{display:flex;align-items:center;gap:6px;padding:.45rem 1rem;border:none;background:transparent;color:var(--text-muted);cursor:pointer;font-size:.85rem;transition:all var(--transition-normal)}.theme-seg-btn:not(:last-child){border-inline-end:1px solid var(--border)}.theme-seg-btn:hover:not(.theme-seg-active){background:var(--bg-hover);color:var(--text)}.theme-seg-btn.theme-seg-active{background:var(--accent);color:#fff;cursor:default}[data-theme=light] header h1{background:linear-gradient(135deg,#2a6cb8,#3b8ad9);-webkit-background-clip:text;-webkit-text-fill-color:transparent}[data-theme=light] .badge{text-shadow:none;filter:saturate(.9) brightness(.88)}[data-theme=light] .tab-btn.tab-active{color:var(--accent);border-color:var(--accent)}[data-theme=light] .tab-btn:hover:not(.tab-active){color:var(--text)}[data-theme=light] .assignment-card{border-color:var(--border)}[data-theme=light] .score-card{background:#fff9;border-color:#00000014;box-shadow:inset 0 1px #ffffffb3}[data-theme=light] .score-card:hover{box-shadow:inset 0 1px #ffffffb3,0 8px 32px #00000014}[data-theme=light] .template-card{background:#fff9;border-color:#00000014;box-shadow:inset 0 1px #ffffffb3}[data-theme=light] .optim-card{background:#ffffffbf;border-color:#0000001a;box-shadow:inset 0 1px #fffc,0 25px 50px #0000001f}[data-theme=light] .btn-cancel-optim{border-color:#00000026;background:#0000000a;color:var(--text-muted)}[data-theme=light] .btn-cancel-optim:hover{background:#00000014;color:var(--text);border-color:#00000040}[data-theme=light] .btn-accept-best{border-color:#4a90d980;background:#4a90d92e;color:#1b4a8a}[data-theme=light] .btn-accept-best:hover:not(:disabled){background:#4a90d94d;border-color:#4a90d9bf}[data-theme=light] .tune-card-breathing{animation-name:tune-breathe-light}@keyframes tune-breathe-light{0%,to{box-shadow:inset 0 1px #fffc,0 25px 50px #0000001f,0 0 0 1px #4a90d933}50%{box-shadow:inset 0 1px #fffc,0 25px 50px #0000001f,0 0 24px 4px #4a90d940,0 0 0 1px #4a90d966}}[data-theme=light] .tune-bubble{background:#4a90d933}[data-theme=light] .weekly-dashboard{background:#ffffff8c;border-color:#00000014}[data-theme=light] .cross-from{background:#3498db1a}[data-theme=light] .cross-to{background:#f39c121a}[data-theme=light] .cross-both{background:#8e44ad1a}[data-theme=light] .preset-dirty-badge{background:#b4860b1f}[data-theme=light] .preset-validation-error{color:var(--danger-hover)}[data-theme=light] .gantt-block{filter:saturate(.8) brightness(.92);border:1px solid rgba(0,0,0,.1)}[data-theme=light] .gantt-block-text{text-shadow:0 1px 1px rgba(0,0,0,.2)}[data-theme=light] .schedule-table-wrapper .task-cell{background:color-mix(in srgb,var(--section-color, transparent) 4%,transparent)}[data-theme=light] .schedule-table-wrapper,[data-theme=light] .card,[data-theme=light] .section,[data-theme=light] .algo-section,[data-theme=light] .subteam-card,[data-theme=light] .preflight-panel{box-shadow:0 1px 4px #0000000f}.algo-section{margin-bottom:1.5rem;padding:1rem;background:var(--bg-card, #1e1e2e);border-radius:var(--radius);border:1px solid var(--border, #333);box-shadow:0 1px 3px #00000014}.algo-section-title{margin:0 0 .25rem;font-size:1.05rem;font-weight:700;color:var(--text, #e0e0e0)}.algo-section-desc{margin:0 0 .75rem;font-size:.82rem;color:var(--text-secondary, #999)}.cert-def-list{display:flex;flex-direction:column;gap:.5rem;margin-bottom:.75rem}.cert-def-item-wrapper{display:flex;flex-direction:column;gap:.35rem}.cert-def-item{display:flex;align-items:center;gap:.75rem;padding:.4rem .5rem;background:var(--bg-row, #252538);border:1px solid var(--border, #333);border-radius:6px}.cert-color-indicator{width:20px;height:20px;min-width:20px;border-radius:50%;border:2px solid rgba(255,255,255,.3);cursor:pointer;transition:border-color .15s,transform .15s;padding:0}.cert-color-indicator:hover{border-color:#fff;transform:scale(1.15)}.cert-color-edit-palette{display:flex;gap:.35rem;flex-wrap:wrap;padding:.3rem .5rem}.cert-def-item .badge{min-width:50px;text-align:center}.cert-edit-input{flex:1;min-width:0}.cert-usage-count{flex:1;font-size:.78rem;color:var(--text-secondary, #999)}.cert-add-form{padding:.5rem;background:var(--bg-row, #252538);border:1px solid var(--border, #333);border-radius:6px}.cert-add-row{display:flex;gap:.5rem;align-items:center;margin-bottom:.5rem}.cert-add-row input{flex:1}.cert-color-palette{display:flex;gap:.4rem;flex-wrap:wrap}.cert-color-swatch{position:relative;width:24px;height:24px;border-radius:50%;border:2px solid transparent;cursor:pointer;padding:0;transition:border-color .15s,transform .15s}.cert-color-swatch:hover{transform:scale(1.15)}.cert-color-swatch.selected{border-color:#fff;box-shadow:0 0 0 2px var(--accent, #5b9bd5)}.badge-orphan{background:#7f8c8d!important;border:2px dashed #e74c3c;color:#fff}.badge-orphan-label{color:#e74c3c;font-style:italic}.badge-orphan-icon{color:#e74c3c;font-size:.85em}.cert-color-swatch.in-use:after{content:"✓";position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:700;color:#fff;text-shadow:0 0 2px rgba(0,0,0,.8),0 1px 2px rgba(0,0,0,.6);background:#00000047;border-radius:50%;pointer-events:none}.cert-color-swatch[disabled]{cursor:not-allowed}.cert-color-swatch[disabled]:hover{transform:none}.cert-color-swatch.cert-color-custom{background:conic-gradient(from 0deg,#ff4d4d,#fa3,#fe5,#6d5,#3be,#6a5acd,#c5c,#ff4d4d);display:inline-flex;align-items:center;justify-content:center}.cert-color-swatch.cert-color-custom .cert-color-custom-icon{font-size:.72rem;line-height:1;filter:drop-shadow(0 1px 1px rgba(0,0,0,.55));pointer-events:none}.cert-custom-color-input{position:absolute;width:0;height:0;padding:0;border:0;opacity:0;pointer-events:none}.cert-palette-note{font-size:.75rem;color:var(--text-secondary, #7f8c8d);margin-top:.25rem}.cert-contrast-warning{font-size:.78rem;color:#e74c3c;background:#e74c3c1f;border-inline-start:3px solid #e74c3c;padding:.3rem .5rem;border-radius:4px;margin-top:.35rem}@media(max-width:560px){.cert-color-swatch{width:32px;height:32px}.cert-add-row{flex-wrap:wrap}.cert-add-row input{flex:1 1 100%}.cert-add-row button{width:100%}}.algo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:.75rem}.algo-weight-card{background:var(--bg-row, #252538);border:1px solid var(--border, #333);border-radius:8px;padding:.75rem;transition:border-color var(--transition-normal)}.algo-weight-card.modified{border-color:var(--accent)}.algo-weight-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.4rem}.algo-weight-label{font-size:.88rem;font-weight:600;color:var(--text, #e0e0e0);cursor:help}.algo-weight-default{font-size:.75rem;color:var(--accent);cursor:default;opacity:.9}.algo-weight-controls{display:flex;align-items:center;gap:.5rem}.algo-slider{flex:1;height:6px;accent-color:var(--accent);cursor:pointer}.algo-weight-input{width:70px;text-align:end;background:var(--bg-main, #181825);color:var(--text, #e0e0e0);border:1px solid var(--border, #444);border-radius:4px;padding:4px 6px;font-size:.85rem;font-family:inherit}.algo-weight-input:focus{outline:none;border-color:var(--accent)}.algo-weight-desc{margin:.3rem 0 0;font-size:.75rem;color:var(--text-secondary, #888);line-height:1.3}.algo-toggle-list{display:flex;flex-direction:column;gap:.35rem}.algo-toggle-item{display:flex;align-items:center;gap:.5rem;padding:.4rem .6rem;border-radius:6px;cursor:pointer;transition:background var(--transition-fast)}.algo-toggle-item:hover{background:var(--bg-hover, #2a2a40)}.algo-toggle-item.disabled{opacity:.55}.algo-toggle-item input[type=checkbox]{accent-color:var(--accent);width:16px;height:16px;cursor:pointer}.algo-toggle-code{font-family:JetBrains Mono,Courier New,monospace;font-size:.74rem;font-weight:700;color:var(--accent);min-width:3.5rem;background:#4a90d91a;padding:1px 7px;border-radius:4px;border:1px solid rgba(74,144,217,.18);letter-spacing:.02em;display:inline-block;text-align:center}[data-theme=light] .algo-toggle-code{background:#3b7dd814;border-color:#3b7dd826}.algo-toggle-label{font-size:.85rem;color:var(--text, #e0e0e0)}.btn-danger{background:var(--danger);color:var(--text-inverse);border:none;border-radius:6px;padding:6px 16px;font-weight:600;font-size:.85rem;cursor:pointer;transition:opacity var(--transition-fast)}.btn-danger:hover{opacity:.85}.algo-toggle-item{align-items:flex-start}.algo-toggle-content{display:flex;flex-direction:column;gap:.15rem;min-width:0}.algo-toggle-desc{font-size:.75rem;color:var(--text-secondary, #888);line-height:1.35}.algo-toggle-warning{font-size:.73rem;color:var(--warn-accent);font-weight:600;margin-top:.1rem}.algo-toggle-item.disabled .algo-toggle-label{text-decoration:line-through;text-decoration-color:var(--text-secondary, #888)}.algo-weight-details{margin-top:.35rem;border-radius:6px;overflow:hidden}.algo-weight-details summary{font-size:.75rem;color:var(--accent);cursor:pointer;padding:.2rem 0;user-select:none;font-weight:500;list-style:none}.algo-weight-details summary::-webkit-details-marker{display:none}.algo-weight-details summary:before{content:"▸ ";display:inline;transition:transform var(--transition-fast)}.algo-weight-details[open] summary:before{content:"▾ "}.algo-weight-details p{margin:.25rem 0 0;font-size:.74rem;color:var(--text-secondary, #999);line-height:1.45;padding:.4rem .6rem;background:var(--bg-main, #181825);border-radius:4px;border-inline-start:2px solid var(--accent)}.algo-section-desc strong{color:var(--warn-accent);font-weight:600}.preset-select{padding:4px 8px;border-radius:6px;border:1px solid var(--border, #444);background:var(--bg-card, #1e1e2e);color:var(--text, #cdd6f4);font-size:.85rem;min-width:160px}.preset-select:focus{outline:2px solid var(--accent);outline-offset:-1px}.preset-dirty-badge{display:inline-block;font-size:.72rem;font-weight:600;color:var(--warn-accent);background:#e2b3401f;padding:2px 8px;border-radius:10px;text-transform:uppercase;letter-spacing:.04em}.preset-panel{background:var(--bg-card, #1e1e2e);border:1px solid var(--border, #444);border-radius:10px;padding:12px 16px;margin-bottom:14px}.preset-panel-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.preset-panel-header h3{margin:0;font-size:.95rem}.preset-panel-header .count{font-size:.8rem;margin-inline-start:4px}.preset-actions-primary{margin-bottom:10px}.preset-empty{padding:16px 0;text-align:center}.preset-list{display:flex;flex-direction:column;gap:6px}.preset-item{display:flex;flex-direction:column;gap:4px;padding:8px 12px;border-radius:8px;border:1px solid var(--border, #333);background:var(--bg, #11111b);transition:border-color var(--transition-fast)}.preset-item:hover{border-color:var(--accent)}.preset-item-active{border-color:var(--accent);background:#6c63ff0f}.preset-item-main{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.preset-item-name{font-weight:600;font-size:.88rem;color:var(--text, #cdd6f4)}.preset-item-desc{font-size:.78rem;padding-inline-start:2px}.preset-item-actions{display:flex;align-items:center;gap:4px;margin-top:2px}.preset-builtin-badge{display:inline-block;font-size:.68rem;font-weight:600;color:var(--accent);background:#6c63ff1a;padding:1px 7px;border-radius:10px;letter-spacing:.03em}.preset-inline-form{background:var(--bg, #11111b);border:1px solid var(--border, #444);border-radius:8px;padding:10px 14px;margin-bottom:10px}.preset-form-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.preset-form-row label{display:flex;align-items:center;gap:6px;font-size:.85rem;color:var(--text-muted, #a6adc8);white-space:nowrap}.preset-name-input,.preset-desc-input{padding:4px 8px;border-radius:6px;border:1px solid var(--border, #444);background:var(--bg-card, #1e1e2e);color:var(--text, #cdd6f4);font-size:.85rem}.preset-name-input{width:180px}.preset-desc-input{width:260px}.preset-validation-error{color:#f38ba8;font-size:.8rem;margin-top:6px;min-height:1.2em}.settings-accordion{margin-bottom:.75rem;background:var(--bg-card, #1e1e2e);border-radius:var(--radius);border:1px solid var(--border, #333);box-shadow:0 1px 3px #00000014;overflow:hidden}.settings-accordion-header{display:flex;align-items:center;gap:.75rem;width:100%;background:transparent;border:none;color:var(--text);padding:.75rem 1rem;cursor:pointer;font-size:inherit;font-weight:700;text-align:inherit;min-height:48px;transition:background var(--transition-fast)}.settings-accordion-header:hover{background:var(--bg-hover, #2a2a40)}.settings-accordion-header:after{content:"▾";font-size:.85rem;color:var(--text-muted);transition:transform var(--transition-normal);margin-inline-start:auto;flex-shrink:0}.settings-accordion-header[aria-expanded=true]:after{transform:rotate(180deg)}.settings-accordion-body{overflow:hidden;max-height:0;transition:max-height var(--transition-slow) ease}.settings-accordion-body.open{max-height:5000px}.settings-accordion-body-inner{padding:0 1rem 1rem}.settings-acc-icon{font-size:1.1rem;flex-shrink:0;width:1.5rem;text-align:center}.settings-acc-title{font-size:1.05rem;font-weight:700;color:var(--text)}.settings-acc-summary{font-size:.78rem;color:var(--text-secondary, #999);margin-inline-start:.5rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.settings-nested-accordion{margin-bottom:.5rem;border-radius:6px;overflow:hidden}.settings-nested-header{display:flex;align-items:center;gap:.5rem;width:100%;background:transparent;border:none;border-bottom:1px solid var(--border, #333);color:var(--text);padding:.6rem .25rem;cursor:pointer;font-size:.95rem;font-weight:600;text-align:inherit;min-height:40px;transition:background var(--transition-fast)}.settings-nested-header:hover{background:var(--bg-hover, #2a2a40)}.settings-nested-header:after{content:"▾";font-size:.8rem;color:var(--text-muted);transition:transform var(--transition-normal);margin-inline-start:auto;flex-shrink:0}.settings-nested-header[aria-expanded=true]:after{transform:rotate(180deg)}.settings-nested-header[aria-expanded=true]{border-bottom-color:transparent}.settings-nested-body{overflow:hidden;max-height:0;transition:max-height var(--transition-slow) ease}.settings-nested-body.open{max-height:5000px}.settings-nested-body-inner{padding:.25rem 0 .5rem}.settings-nested-icon{font-size:.95rem;flex-shrink:0}.settings-nested-title{font-size:.95rem;font-weight:600;color:var(--text)}.settings-nested-summary{font-size:.75rem;color:var(--text-secondary, #999);margin-inline-start:.5rem}.settings-divider{border:none;border-top:1px solid var(--border, #333);margin:1rem 0}.settings-danger-area{border-top:2px solid rgba(231,76,60,.3);padding-top:.75rem;margin-top:.75rem}.settings-danger-area .algo-section-title{color:var(--danger, #e74c3c)}.settings-preset-toolbar{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;padding:.5rem 0;margin-bottom:.5rem;border-bottom:1px solid var(--border, #333)}[data-theme=light] .settings-accordion{box-shadow:0 1px 4px #0000000f}[data-theme=light] .settings-danger-area{border-top-color:#c9302c4d}.transfer-panel{display:flex;flex-direction:column;gap:.75rem}.transfer-action-btn{display:flex;align-items:center;gap:.75rem;width:100%;padding:1rem;border:1px solid var(--border, #333);border-radius:var(--radius, 8px);background:var(--bg-card, #1e1e1e);color:var(--text, #e0e0e0);cursor:pointer;transition:background var(--transition-fast, .15s),border-color var(--transition-fast, .15s);text-align:start}.transfer-action-btn:hover{background:var(--bg-hover, #2a2a2a);border-color:var(--accent, #3a7cc5)}.transfer-action-icon{font-size:1.5rem;flex-shrink:0}.transfer-action-text{display:flex;flex-direction:column;gap:.15rem}.transfer-action-title{font-weight:600;font-size:.95rem}.transfer-action-desc{font-size:.8rem;color:var(--text-muted, #888)}.transfer-scope-list{display:flex;flex-direction:column;gap:.5rem}.transfer-scope-item{display:flex;align-items:center;gap:.75rem;width:100%;padding:.85rem 1rem;border:1px solid var(--border, #333);border-radius:var(--radius, 8px);background:var(--bg-card, #1e1e1e);color:var(--text, #e0e0e0);cursor:pointer;transition:background var(--transition-fast, .15s),border-color var(--transition-fast, .15s);text-align:start}.transfer-scope-item:hover:not([disabled]){background:var(--bg-hover, #2a2a2a);border-color:var(--accent, #3a7cc5)}.transfer-scope-item[disabled]{opacity:.45;cursor:not-allowed}.transfer-scope-icon{font-size:1.2rem;flex-shrink:0}.transfer-scope-text{display:flex;flex-direction:column;gap:.1rem}.transfer-scope-title{font-weight:600;font-size:.9rem}.transfer-scope-desc{font-size:.78rem;color:var(--text-muted, #888)}.transfer-import-summary{padding:.75rem 1rem;margin-bottom:.75rem;border-radius:var(--radius, 8px);background:#3a7cc51a;border:1px solid rgba(58,124,197,.25);font-size:.88rem;color:var(--text, #e0e0e0)}.transfer-import-options{display:flex;flex-direction:column;gap:.5rem;margin-bottom:.75rem}.transfer-import-option{display:flex;align-items:center;gap:.75rem;width:100%;padding:.85rem 1rem;border:1px solid var(--border, #333);border-radius:var(--radius, 8px);background:var(--bg-card, #1e1e1e);color:var(--text, #e0e0e0);cursor:pointer;transition:background var(--transition-fast, .15s),border-color var(--transition-fast, .15s);text-align:start}.transfer-import-option:hover{background:var(--bg-hover, #2a2a2a);border-color:var(--accent, #3a7cc5)}.transfer-import-option-icon{font-size:1.2rem;flex-shrink:0}.transfer-import-option-text{display:flex;flex-direction:column;gap:.1rem}.transfer-import-option-title{font-weight:600;font-size:.9rem}.transfer-import-option-desc{font-size:.78rem;color:var(--text-muted, #888)}.transfer-replace-section{margin-top:.5rem}.transfer-replace-label{font-size:.85rem;font-weight:600;color:var(--text-muted, #888);margin-bottom:.4rem}.transfer-replace-list{display:flex;flex-direction:column;gap:.35rem}.transfer-replace-item{display:block;width:100%;padding:.6rem 1rem;border:1px solid var(--border, #333);border-radius:var(--radius, 8px);background:var(--bg-card, #1e1e1e);color:var(--text, #e0e0e0);cursor:pointer;font-size:.85rem;text-align:start;transition:background var(--transition-fast, .15s),border-color var(--transition-fast, .15s)}.transfer-replace-item:hover{background:var(--bg-hover, #2a2a2a);border-color:var(--danger, #e74c3c)}.transfer-install-nudge{display:flex;align-items:center;gap:.6rem;padding:.7rem .85rem;border:1px solid rgba(39,174,96,.3);border-radius:var(--radius, 8px);background:#27ae601a;color:var(--text, #e0e0e0)}.transfer-install-nudge-text{flex:1;font-size:.82rem;line-height:1.35}.transfer-install-nudge-actions{display:flex;align-items:center;gap:.4rem;flex-shrink:0}.transfer-install-nudge-btn{padding:.4rem .85rem;border:none;border-radius:var(--radius, 8px);background:var(--success, #1d9050);color:#fff;font-weight:600;font-size:.85rem;cursor:pointer}.transfer-install-nudge-btn:hover{filter:brightness(1.1)}.transfer-install-nudge-x{display:flex;align-items:center;justify-content:center;width:1.8rem;height:1.8rem;padding:0;border:none;border-radius:50%;background:transparent;color:var(--text-muted, #888);font-size:.9rem;cursor:pointer}.transfer-install-nudge-x:hover{background:var(--bg-hover, #2a2a2a);color:var(--text, #e0e0e0)}.pref-eligibility-warning{display:flex;align-items:flex-start;gap:6px;margin-top:4px;padding:6px 10px;border-radius:6px;font-size:.78rem;line-height:1.4;background:#f39c121f;border-inline-start:3px solid var(--warning);color:var(--warning)}.pref-eligibility-warning .warn-icon{flex-shrink:0;font-size:.9rem}.pref-eligibility-warning.hidden{display:none}.pset-count-badge{display:inline-block;font-size:.7rem;font-weight:500;color:var(--text-muted, #a6adc8);background:#a6adc81a;padding:1px 7px;border-radius:10px}.dirty-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--warn-accent, #e2b340);margin-inline-start:4px;vertical-align:middle}.snapshot-panel{background:var(--bg-card, #1e1e2e);border:1px solid var(--border, #444);border-radius:10px;padding:12px 16px;margin-bottom:14px}.snapshot-panel-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.snapshot-panel-header h3{margin:0;font-size:.95rem}.snapshot-actions-primary{margin-bottom:10px}.snapshot-empty{padding:16px 0;text-align:center}.snapshot-list{display:flex;flex-direction:column;gap:6px}.snapshot-item{display:flex;flex-direction:column;gap:4px;padding:8px 12px;border-radius:8px;border:1px solid var(--border, #333);background:var(--bg, #11111b);transition:border-color var(--transition-fast)}.snapshot-item:hover{border-color:var(--accent)}.snapshot-item-active{border-color:var(--accent);background:#6c63ff0f}.snapshot-item-main{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.snapshot-item-name{font-weight:600;font-size:.88rem;color:var(--text, #cdd6f4);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.snapshot-item-date{font-size:.76rem;margin-inline-start:auto}.snapshot-item-desc{font-size:.78rem;padding-inline-start:2px}.snapshot-item-actions{display:flex;align-items:center;gap:4px;margin-top:2px}.snapshot-dirty-badge{display:inline-block;font-size:.68rem;font-weight:600;color:var(--warn-accent);background:#e2b3401f;padding:1px 7px;border-radius:10px;letter-spacing:.03em}.btn-xs{padding:2px 8px;font-size:.72rem;border-radius:5px;cursor:pointer;border:1px solid var(--border, #444);background:transparent;color:var(--text-muted, #a6adc8);transition:background var(--transition-fast),color var(--transition-fast)}.btn-xs:hover{background:var(--bg-card, #1e1e2e);color:var(--text, #cdd6f4)}.btn-xs.btn-primary{background:var(--accent);color:#fff;border-color:var(--accent)}.btn-xs.btn-primary:hover{filter:brightness(1.15)}.btn-xs.btn-danger-outline{color:var(--danger, #f38ba8);border-color:var(--danger, #f38ba8)}.btn-xs.btn-danger-outline:hover{background:#f38ba81a}.snapshot-inline-form{background:var(--bg, #11111b);border:1px solid var(--border, #444);border-radius:8px;padding:10px 14px;margin-bottom:10px}.snapshot-form-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.snapshot-form-row label{display:flex;align-items:center;gap:6px;font-size:.85rem;color:var(--text-muted, #a6adc8);white-space:nowrap}.snapshot-name-input,.snapshot-desc-input{padding:4px 8px;border-radius:6px;border:1px solid var(--border, #444);background:var(--bg-card, #1e1e2e);color:var(--text, #cdd6f4);font-size:.85rem}.snapshot-name-input{width:180px}.snapshot-desc-input{width:260px}.snapshot-validation-error{color:#f38ba8;font-size:.8rem;margin-top:6px;min-height:1.2em}.continuity-chip{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:12px;background:#a6e3a11f;border:1px solid var(--success, #a6e3a1);font-size:.75rem;color:var(--success, #a6e3a1);cursor:pointer;transition:background .15s;white-space:nowrap}.continuity-chip:hover{background:#a6e3a138}.continuity-chip-error{background:#f38ba81f;border-color:var(--danger, #f38ba8);color:var(--danger, #f38ba8)}.continuity-chip-error:hover{background:#f38ba838}.continuity-chip-dot{width:6px;height:6px;border-radius:50%;background:currentColor;flex-shrink:0}.continuity-chip-clear{background:none;border:none;color:inherit;cursor:pointer;font-size:.7rem;padding:0 2px;opacity:.7;line-height:1}.continuity-chip-clear:hover{opacity:1}.day-window-actions{display:flex;align-items:center;gap:8px}.availability-mobile-toggle{display:none}.gm-modal-continuity{max-width:520px}.gm-continuity-status{min-height:1.4em;margin-top:4px}.continuity-textarea{width:100%;min-height:80px;padding:8px 10px;border-radius:8px;border:1px solid var(--border, #444);background:var(--bg, #11111b);color:var(--text, #cdd6f4);font-family:Courier New,monospace;font-size:.78rem;resize:vertical;line-height:1.4}.continuity-textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px #89b4fa26}.continuity-status{font-size:.8rem}.continuity-ok{color:var(--success, #a6e3a1)}.continuity-error{color:var(--danger, #f38ba8)}.export-backdrop{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:9999}.export-modal{background:var(--bg-card, #fff);border-radius:12px;width:min(420px,92vw);box-shadow:0 12px 40px #0000004d;padding:0;direction:rtl}.export-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border, #e0e0e0)}.export-header h3{margin:0;font-size:1.1rem}.export-close{background:none;border:none;font-size:1.2rem;cursor:pointer;color:var(--text-muted, #999);padding:4px 8px;border-radius:4px}.export-close:hover{background:var(--bg-hover, #f0f0f0)}.export-body{padding:20px}.export-format-group{display:flex;flex-direction:row;gap:10px;margin-bottom:14px}.export-format-option{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 14px;border:2px solid var(--border, #e0e0e0);border-radius:8px;cursor:pointer;transition:border-color var(--transition-fast),background var(--transition-fast)}.export-format-option:hover{border-color:var(--accent)}.export-format-option.selected{border-color:var(--accent);background:#6c63ff14}.export-format-option input[type=radio]{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}.export-format-option.disabled,.export-mode-option.disabled{opacity:.45;pointer-events:none}.export-format-label{font-size:.95rem;font-weight:600}.export-mode-group{display:flex;flex-direction:column;gap:10px;margin-bottom:16px}.export-mode-option{display:flex;align-items:center;gap:10px;padding:10px 14px;border:2px solid var(--border, #e0e0e0);border-radius:8px;cursor:pointer;transition:border-color var(--transition-fast),background var(--transition-fast)}.export-mode-option:hover{border-color:var(--accent)}.export-mode-option.selected{border-color:var(--accent);background:#6c63ff14}.export-mode-option input[type=radio]{accent-color:var(--accent);width:16px;height:16px}.export-mode-label{font-size:.95rem;font-weight:600}.export-mode-desc{font-size:.8rem;color:var(--text-muted, #999);margin-top:2px}.export-day-picker{margin-top:12px;padding:10px 14px;background:var(--bg, #1a1a2e);border-radius:8px;display:flex;align-items:center;gap:10px}.export-day-picker label{font-size:.9rem;white-space:nowrap}.export-day-picker select{flex:1;padding:6px 10px;border-radius:6px;border:1px solid var(--border, #444);background:var(--bg-card, #1e1e2e);color:var(--text, #cdd6f4);font-size:.85rem}.export-footer{display:flex;align-items:center;justify-content:flex-start;gap:10px;padding:14px 20px;border-top:1px solid var(--border, #e0e0e0)}.export-status{font-size:.82rem;color:var(--text-muted, #999);margin-inline-start:auto}.cube-loader-wrapper{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;animation:cubeWrapperFadeIn .4s ease}.optim-cube{min-height:unset;margin-bottom:0}.optim-cube .cube-loader{width:64px;height:64px;margin-bottom:0}@keyframes cubeWrapperFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.cube-loader{display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);gap:3px;width:84px;height:84px;margin-bottom:24px;animation:cubeRotate 2.4s ease-in-out infinite;perspective:400px}.cube-cell{background:var(--cell-color, var(--accent));border-radius:3px;animation:cubeCellPulse 2.4s ease-in-out infinite;box-shadow:inset 0 1px 2px #ffffff40,0 2px 4px #0003}.cube-cell:nth-child(1){animation-delay:0s}.cube-cell:nth-child(2){animation-delay:.08s}.cube-cell:nth-child(3){animation-delay:.16s}.cube-cell:nth-child(4){animation-delay:.24s}.cube-cell:nth-child(5){animation-delay:.32s}.cube-cell:nth-child(6){animation-delay:.4s}.cube-cell:nth-child(7){animation-delay:.48s}.cube-cell:nth-child(8){animation-delay:.56s}.cube-cell:nth-child(9){animation-delay:.64s}@keyframes cubeRotate{0%{transform:rotate(0)}25%{transform:rotate(90deg)}50%{transform:rotate(90deg) scale(.92)}75%{transform:rotate(180deg)}to{transform:rotate(360deg)}}@keyframes cubeCellPulse{0%,to{opacity:1;transform:scale(1)}30%{opacity:.5;transform:scale(.85)}60%{opacity:1;transform:scale(1.05)}}.cube-title{font-size:1.15rem;font-weight:300;letter-spacing:.5px;background:linear-gradient(135deg,var(--accent),#67b8f7);-webkit-background-clip:text;-webkit-text-fill-color:transparent;margin-bottom:8px;animation:cubeTitleFadeIn .6s ease .3s both}[data-theme=light] .cube-title{background:linear-gradient(135deg,#2a6cb8,#3b8ad9);-webkit-background-clip:text;-webkit-text-fill-color:transparent}@keyframes cubeTitleFadeIn{0%{opacity:0;transform:translateY(8px);letter-spacing:4px}to{opacity:1;transform:translateY(0);letter-spacing:.5px}}.cube-subtitle{font-size:.8rem;color:var(--text-muted);animation:cubeSubtitlePulse 1.8s ease-in-out infinite}@keyframes cubeSubtitlePulse{0%,to{opacity:.5}50%{opacity:1}}.gm-modal-backdrop{position:fixed;inset:0;background:#0f1117b3;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1250;animation:gmModalFadeIn .2s ease}@keyframes gmModalFadeIn{0%{opacity:0}to{opacity:1}}.gm-modal-dialog{background:#1a1d27d9;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:0;max-width:460px;width:90%;box-shadow:inset 0 1px #ffffff0f,0 20px 60px #0006;animation:gmModalSlideIn .25s ease;overflow:hidden}.gm-modal-dialog-wide{max-width:640px}@keyframes gmModalSlideIn{0%{opacity:0;transform:translateY(-12px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.gm-modal-header{display:flex;align-items:center;gap:8px;padding:16px 20px 12px;border-bottom:1px solid var(--border)}.gm-modal-icon{font-size:1.2rem}.gm-modal-title{font-size:1rem;font-weight:600;color:var(--text)}.gm-modal-body{padding:16px 20px;font-size:.9rem;color:var(--text);line-height:1.6;white-space:pre-line;max-height:50vh;overflow-y:auto}.gm-modal-body p{margin-bottom:10px}.gm-modal-input{width:100%;padding:8px 12px;border-radius:6px;border:1px solid var(--border);background:var(--bg);color:var(--text);font-size:.9rem;font-family:inherit;outline:none;transition:border-color var(--transition-normal)}.gm-modal-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}.gm-modal-search{margin-bottom:8px}.gm-modal-suggestions{max-height:200px;overflow-y:auto;display:flex;flex-direction:column;gap:2px;margin-top:4px}.gm-modal-suggestion{text-align:start;padding:7px 12px;border:none;border-radius:4px;background:transparent;color:var(--text);font-size:.85rem;font-family:inherit;cursor:pointer;transition:background var(--transition-fast)}.gm-modal-suggestion:hover{background:var(--bg-hover)}.gm-modal-actions{display:flex;gap:8px;padding:12px 20px 16px;border-top:1px solid var(--border);justify-content:flex-start}.gm-save-confirm-actions{flex-wrap:wrap}.optim-card--prompt{padding:28px 28px 22px;max-width:380px}.optim-card--prompt h3{margin:14px 0 18px;font-size:1.05rem;letter-spacing:-.005em}.optim-cube--paused .cube-loader,[data-theme=light] .optim-cube--paused .cube-loader{animation-play-state:paused}.optim-continuation-summary{display:flex;flex-direction:column;align-items:center;gap:2px;margin:4px 0 18px;line-height:1}.optim-continuation-hero{font-size:3.2rem;font-weight:700;letter-spacing:-.02em;color:var(--danger);font-variant-numeric:tabular-nums;line-height:1;text-shadow:0 1px 0 rgba(0,0,0,.2)}.optim-continuation-sub{margin-top:6px;font-size:.85rem;font-weight:500;color:var(--text);opacity:.85}.optim-continuation-meta{margin-top:4px;font-size:.75rem;color:var(--text-muted);letter-spacing:.01em}.optim-continuation-hint{color:var(--text-muted);font-size:.78rem;margin:0 0 14px;padding:8px 10px;background:#f59e0b1a;border-inline-start:3px solid rgba(245,158,11,.7);border-radius:4px;text-align:start;line-height:1.5}[data-theme=light] .optim-continuation-hint{background:#f59e0b1f;border-inline-start-color:#d97706b3}.optim-continuation-tiers{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}.optim-tier{display:flex;align-items:center;gap:12px;width:100%;min-height:56px;padding:10px 14px;border:1px solid rgba(255,255,255,.1);border-radius:12px;background:#ffffff08;color:var(--text);cursor:pointer;text-align:start;font:inherit;transition:background .15s ease,border-color .15s ease,transform .12s ease}.optim-tier:hover{background:#ffffff12;border-color:#ffffff2e;transform:translateY(-1px)}.optim-tier:focus-visible{outline:2px solid rgba(74,144,217,.7);outline-offset:2px}.optim-tier:active{transform:translateY(0)}.optim-tier-icon{flex:0 0 36px;width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;background:#ffffff12}.optim-tier-icon svg{width:18px;height:18px}.optim-tier--quick .optim-tier-icon{background:#f59e0b2e;color:#fbbf24}.optim-tier--balanced .optim-tier-icon{background:#4a90d938;color:#93c5fd}.optim-tier--deep .optim-tier-icon{background:#a855f72e;color:#c4b5fd}.optim-tier-main{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px}.optim-tier-label{font-size:.95rem;font-weight:600;color:var(--text);font-variant-numeric:tabular-nums}.optim-tier-desc{font-size:.78rem;color:var(--text-muted);letter-spacing:.01em}.optim-continuation-custom{display:flex;align-items:center;gap:8px;margin:4px 0 14px;padding-top:14px;border-top:1px dashed rgba(255,255,255,.08)}.optim-continuation-custom label{flex:0 0 auto;font-size:.8rem;color:var(--text-muted)}.optim-continuation-custom input{flex:1 1 auto;min-width:0;min-height:36px;padding:6px 12px;border:1px solid rgba(255,255,255,.12);border-radius:8px;background:#ffffff0a;color:var(--text);font:inherit;text-align:center;font-variant-numeric:tabular-nums;transition:border-color .15s ease,background .15s ease}.optim-continuation-custom input::placeholder{color:var(--text-muted);opacity:.5}.optim-continuation-custom input:focus{outline:none;border-color:#4a90d999;background:#ffffff14}.optim-continuation-custom-ok{flex:0 0 auto;width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(74,144,217,.5);border-radius:8px;background:#4a90d92e;color:#eaf3ff;cursor:pointer;transition:background .15s ease,opacity .15s ease,border-color .15s ease}.optim-continuation-custom-ok svg{width:14px;height:14px}.optim-continuation-custom-ok:hover:not(:disabled){background:#4a90d952;border-color:#4a90d9cc}.optim-continuation-custom-ok:disabled{opacity:.35;cursor:not-allowed}.optim-continuation-actions{margin-top:6px;justify-content:center}.optim-continuation-dismiss{padding:6px 18px;font-size:.82rem}[data-theme=light] .optim-tier{background:#0f172a08;border-color:#0f172a1a;color:var(--text)}[data-theme=light] .optim-tier:hover{background:#0f172a0f;border-color:#0f172a2e}[data-theme=light] .optim-tier-icon{background:#0f172a0d}[data-theme=light] .optim-tier--quick .optim-tier-icon{background:#f59e0b29;color:#b45309}[data-theme=light] .optim-tier--balanced .optim-tier-icon{background:#4a90d929;color:#1d4ed8}[data-theme=light] .optim-tier--deep .optim-tier-icon{background:#a855f724;color:#7c3aed}[data-theme=light] .optim-continuation-hero{color:#b91c1c;text-shadow:none}[data-theme=light] .optim-continuation-custom{border-top-color:#0f172a14}[data-theme=light] .optim-continuation-custom input{background:#0f172a0a;border-color:#0f172a26}[data-theme=light] .optim-continuation-custom input:focus{border-color:#4a90d999;background:#0f172a0f}[data-theme=light] .optim-continuation-custom-ok{background:#4a90d924;border-color:#4a90d980;color:#1d4ed8}[data-theme=light] .optim-continuation-custom-ok:hover:not(:disabled){background:#4a90d93d}.gm-modal-btn-danger{background:var(--danger)!important}.gm-modal-btn-danger:hover{background:var(--danger-hover)!important}.gm-timepicker-row{display:flex;gap:16px;padding:8px 20px 12px;align-items:center}.gm-timepicker-label{display:flex;align-items:center;gap:6px;font-size:.9rem;color:var(--text)}.gm-timepicker-select{padding:4px 8px;border:1px solid var(--border);border-radius:6px;background:var(--bg);color:var(--text);font-size:.9rem}.gm-range-picker-dialog{min-width:420px}.gm-range-picker-row{display:flex;gap:12px;padding:8px 20px 4px;flex-wrap:wrap}.gm-range-picker-side{flex:1 1 180px;border:1px solid var(--border);border-radius:8px;padding:8px 12px 10px;display:flex;flex-direction:column;gap:6px;margin:0}.gm-range-picker-side legend{padding:0 6px;font-size:.85rem;color:var(--text-muted, #888);font-weight:600}.gm-range-picker-error{min-height:1.2em;padding:0 20px 4px;color:#e74c3c;font-size:.85rem;display:none}.fsos-modal{max-width:720px;max-height:80vh;overflow-y:auto}.fsos-confirm-list,.fsos-locked-list{list-style:none;padding:0;margin:8px 20px;display:flex;flex-direction:column;gap:6px}.fsos-confirm-list li,.fsos-locked-list li{display:flex;justify-content:space-between;gap:12px;padding:6px 10px;border-radius:6px;background:#ffffff0a;font-size:.9rem}.fsos-locked-list li{opacity:.55}.fsos-affected-day-header{padding:6px 20px 2px;font-weight:600;color:var(--text-muted, #888);font-size:.8rem}.fsos-warning-banner{margin:8px 20px;padding:10px 12px;border-radius:8px;background:#e74c3c1f;border:1px solid rgba(231,76,60,.35);color:#e74c3c;font-size:.9rem}.fsos-plan{margin:8px 20px;padding:12px;border:1px solid var(--border);border-radius:10px;background:#ffffff08}.fsos-plan--recommended{border-color:#27ae60;box-shadow:0 0 0 1px #27ae604d}.fsos-plan-header{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:6px}.fsos-plan-metrics{display:flex;gap:8px;flex-wrap:wrap;font-size:.85rem}.fsos-metric{padding:2px 8px;border-radius:12px;background:#ffffff0f}.fsos-metric--pos{background:#27ae602e;color:#2ecc71}.fsos-metric--neg{background:#e74c3c2e;color:#e74c3c}.fsos-swaps{list-style:none;padding:0;margin:6px 0;display:flex;flex-direction:column;gap:4px}.fsos-swaps li{font-size:.9rem;padding:4px 0}.fsos-participant-changes{margin:6px 0 0;font-size:.85rem;color:var(--text-muted, #aaa)}.fsos-participant-changes li{padding:2px 0}.fsos-apply-btn{margin-top:8px}.fsos-apply-btn[disabled]{opacity:.5;cursor:not-allowed}.profile-fsos-list{list-style:none;padding:0;margin:6px 0 0;display:flex;flex-direction:column;gap:4px}.profile-fsos-list li{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:6px 8px;border-radius:6px;background:#e74c3c14;font-size:.85rem}.profile-fsos-remove{background:transparent;border:1px solid var(--border);color:var(--text);border-radius:6px;padding:2px 8px;cursor:pointer;font-size:.8rem}.profile-fsos-remove:hover{background:#e74c3c26}.btn-future-sos{background:#c0392b;color:#fff;border:none;padding:6px 12px;border-radius:6px;cursor:pointer;font-size:.85rem}.btn-future-sos:hover{background:#e74c3c}.btn-cap-change{background:var(--warning);color:#fff;border:none;padding:6px 12px;border-radius:6px;cursor:pointer;font-size:.85rem}.btn-cap-change:hover{filter:brightness(1.1)}.fsos-ltr{unicode-bidi:isolate;direction:ltr;white-space:nowrap}.fsos-sticky-actions{position:sticky;bottom:0;background:linear-gradient(to top,#1a1d27fa,#1a1d27eb);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);z-index:2}.gm-range-picker-v2{min-width:auto}.gm-range-picker-v2 .gm-modal-body{padding-bottom:8px}.gm-range-picker-anchor{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:0 20px 10px;padding:8px 12px;border-radius:8px;background:#3a7cc514;border:1px solid rgba(58,124,197,.25);font-size:.85rem}.gm-range-picker-anchor-label{color:var(--text-muted, #888)}.gm-range-picker-anchor-value{font-weight:600;color:var(--text)}.gm-range-picker-anchor-btn{padding:2px 10px;background:transparent;border:1px solid var(--border);border-radius:6px;color:var(--text);font-size:.8rem;cursor:pointer;margin-inline-start:auto}.gm-range-picker-anchor-btn:hover{background:var(--bg-hover, rgba(255, 255, 255, .06))}.gm-range-picker-v2-section{padding:0 20px 10px}.gm-range-picker-v2-label{font-size:.8rem;color:var(--text-muted, #888);margin-bottom:6px;font-weight:600}.gm-range-picker-day-chips{display:flex;gap:4px;overflow-x:auto;padding-bottom:6px;margin-bottom:6px;scrollbar-width:thin}.gm-range-picker-chip{flex:0 0 auto;padding:6px 10px;background:transparent;border:1px solid var(--border);border-radius:6px;color:var(--text);font-size:.8rem;cursor:pointer;white-space:nowrap;transition:background .15s ease,border-color .15s ease,transform .1s ease}.gm-range-picker-chip:hover{background:#ffffff0a}.gm-range-picker-chip:focus-visible{outline:2px solid var(--accent, #3a7cc5);outline-offset:2px}.gm-range-picker-chip--active,.gm-range-picker-chip--active:hover,.gm-range-picker-chip--active:focus,.gm-range-picker-chip--active:active{background:var(--accent, #3a7cc5);border-color:var(--accent, #3a7cc5);color:#fff;font-weight:600}.gm-range-picker-hour-row{display:flex;gap:8px;align-items:center}.gm-range-picker-hour-label{font-size:.8rem;color:var(--text-muted, #888)}.gm-range-picker-reason-input{width:100%;box-sizing:border-box}.gm-range-picker-preview{padding:4px 20px;font-size:.85rem;color:var(--accent, #3a7cc5);min-height:1.2em;font-weight:500;display:none}.gm-range-picker-actions{justify-content:flex-end}.fsos-confirm-v2{max-width:560px}.fsos-window-sentence{padding:10px 20px;font-size:.95rem;line-height:1.5}.fsos-affected-title{padding:0 20px;margin-top:4px;margin-bottom:6px;font-size:.85rem;color:var(--text-muted, #888)}.fsos-empty-note{color:var(--text-muted, #888);font-style:italic}.fsos-confirm-groups{margin:0 20px 8px;display:flex;flex-direction:column;gap:10px}.fsos-affected-day-group{background:#ffffff05;border:1px solid var(--border);border-radius:8px;padding:4px 6px 6px}.fsos-affected-day-group .fsos-affected-day-header{padding:4px 8px}.fsos-confirm-v2 .fsos-confirm-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:2px}.fsos-confirm-v2 .fsos-confirm-list li{background:transparent;padding:6px 8px;align-items:center}.fsos-affected-check{display:flex;align-items:center;gap:8px;cursor:pointer;flex:1 1 auto;min-width:0}.fsos-affected-check input{width:18px;height:18px;accent-color:var(--accent, #3a7cc5);flex:0 0 auto}.fsos-affected-name{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fsos-infeasible-modal .fsos-infeasible-explain{margin:0 20px 12px;color:var(--text);line-height:1.5}.fsos-infeasible-section{margin:0 20px 12px;border-radius:10px;padding:8px 10px 10px;border:1px solid var(--border)}.fsos-infeasible-section--missing{background:#e74c3c14;border-color:#e74c3c59}.fsos-infeasible-section--candidate{background:#f39c121a;border-color:#f39c1266}.fsos-infeasible-section-title{margin:0 0 4px;font-size:.95rem;font-weight:600}.fsos-infeasible-section-note{margin:0 0 6px;font-size:.82rem;color:var(--text-muted, #888);line-height:1.4}.fsos-infeasible-section--missing .fsos-infeasible-section-title{color:#e74c3c}.fsos-infeasible-section--candidate .fsos-infeasible-section-title{color:#f39c12}.fsos-infeasible-section .fsos-confirm-groups{margin:0}.fsos-infeasible-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:2px}.fsos-infeasible-list li{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 8px;background:transparent}[data-theme=light] .fsos-infeasible-section--missing{background:#c0392b1a;border-color:#c0392b59}[data-theme=light] .fsos-infeasible-section--missing .fsos-infeasible-section-title{color:#a93226}[data-theme=light] .fsos-infeasible-section--candidate{background:#d689101f;border-color:#d6891066}[data-theme=light] .fsos-infeasible-section--candidate .fsos-infeasible-section-title{color:#b86d05}.fsos-locked-section{margin:6px 20px}.fsos-locked-toggle{display:flex;align-items:center;gap:6px;background:transparent;border:1px solid var(--border);border-radius:999px;padding:4px 10px;color:var(--text-muted, #888);font-size:.8rem;cursor:pointer}.fsos-locked-toggle:hover{background:#ffffff0a}.fsos-locked-chip{font-weight:500}.fsos-locked-arrow{transition:transform .2s ease}.fsos-locked-toggle[aria-expanded=true] .fsos-locked-arrow{transform:rotate(180deg)}.fsos-locked-panel{margin-top:6px;padding:4px 0}.fsos-locked-panel[hidden]{display:none}.fsos-confirm-summary{padding:8px 20px;font-size:.9rem;color:var(--text)}.fsos-confirm-summary--muted{color:var(--text-muted, #888);font-style:italic}.fsos-plans-v2{max-width:720px;max-height:92vh;display:flex;flex-direction:column}.fsos-plans-v2>.gm-modal-header,.fsos-plans-v2>.fsos-warning-banner,.fsos-plans-v2>.fsos-carousel-pager,.fsos-plans-v2>.fsos-sticky-actions{flex-shrink:0}.fsos-plans-v2>.fsos-carousel,.fsos-plans-v2>.fsos-plans-stack{flex:1 1 auto;min-height:0}.fsos-plans-stack{overflow-y:auto;overscroll-behavior:contain}.fsos-carousel{overscroll-behavior-x:contain}.fsos-plans--touch .fsos-carousel .fsos-plan-card{max-height:100%;display:flex;flex-direction:column}.fsos-plans--touch .fsos-carousel .fsos-plan-card .fsos-plan-collapsed,.fsos-plans--touch .fsos-carousel .fsos-plan-card .fsos-plan-footer{flex-shrink:0}.fsos-plans--touch .fsos-carousel .fsos-plan-card .fsos-plan-collapsed{cursor:pointer}.fsos-plans--touch .fsos-carousel .fsos-plan-card .fsos-plan-body{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain}.fsos-warning-banner{display:flex;flex-direction:column;gap:6px}.fsos-warning-banner--timeout{background:#f39c121f;border-color:#f39c1259;color:#f39c12}.fsos-narrow-btn{align-self:flex-start}.fsos-empty-state{text-align:center;padding:24px 20px;color:var(--text-muted, #888)}.fsos-empty-state-icon{font-size:2rem;margin-bottom:8px}.fsos-empty-state-title{font-size:1rem;color:var(--text);margin-bottom:4px}.fsos-empty-state-body{font-size:.85rem;margin-bottom:12px}.fsos-carousel-pager{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:8px;padding:4px 20px}.fsos-carousel-step{flex:0 0 auto;width:40px;height:40px;border:none;background:transparent;color:var(--accent);font-size:1.6rem;line-height:1;font-weight:700;border-radius:10px;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;transition:background var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast),color var(--transition-fast);-webkit-tap-highlight-color:transparent}.fsos-carousel-step:active:not(:disabled){background:color-mix(in srgb,var(--accent) 22%,transparent);transform:scale(.85);box-shadow:0 0 0 3px var(--accent-glow)}.fsos-carousel-step:disabled{color:var(--text-muted);opacity:.35;cursor:default}.fsos-carousel-step:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.fsos-carousel-counter{min-width:4ch;text-align:center;font-size:.8rem;color:var(--text-muted);font-variant-numeric:tabular-nums}.fsos-card-grabber{flex:0 0 auto;height:14px;display:flex;align-items:center;justify-content:center}.fsos-card-grabber:before{content:"";width:36px;height:4px;border-radius:2px;background:var(--border)}.fsos-plan-card:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.fsos-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0}.fsos-carousel{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;padding:0 20px 12px;scrollbar-width:thin}.fsos-carousel .fsos-plan-card{flex:0 0 92%;scroll-snap-align:start;margin:0}.fsos-plan-card{margin:8px 20px;padding:0;border:1px solid var(--border);border-radius:10px;background:#ffffff08;overflow:hidden}.fsos-plan-card--recommended{border-color:#27ae60;box-shadow:0 0 0 1px #27ae6033}.fsos-plan-collapsed{padding:12px 14px;cursor:pointer;display:flex;flex-direction:column;gap:6px;position:relative}.fsos-plan-header-main{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.fsos-plan-rank{font-weight:700}.fsos-verdict{padding:2px 10px;border-radius:999px;font-size:.8rem;font-weight:600;letter-spacing:.02em}.fsos-verdict--excellent{background:#27ae6033;color:#2ecc71}.fsos-verdict--good{background:#3a7cc533;color:#5dade2}.fsos-verdict--fair{background:#f39c1233;color:#f39c12}.fsos-partial-badge{padding:2px 10px;border-radius:999px;font-size:.75rem;font-weight:600;background:#f39c122e;color:#f39c12;border:1px dashed rgba(243,156,18,.6);letter-spacing:.02em}.fsos-focal-continuity-badge{padding:2px 10px;border-radius:999px;font-size:.75rem;font-weight:600;background:#4a90d92e;color:#4a90d9;border:1px solid rgba(74,144,217,.55);letter-spacing:.02em}.fsos-fallback-chip{padding:2px 10px;border-radius:999px;font-size:.75rem;font-weight:600;background:#e67e222e;color:#e67e22;border:1px solid rgba(230,126,34,.55);letter-spacing:.02em}.fsos-plan-disruption{font-size:.75rem;color:var(--text-muted, #888);white-space:nowrap}.fsos-plan-row-a,.fsos-plan-row-b,.fsos-plan-row-c{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.fsos-plan-daydist{display:flex;flex-wrap:wrap;gap:4px 8px}.fsos-daydist-chip{font-size:.72rem;color:var(--text-muted, #888);background:#ffffff0a;border-radius:999px;padding:1px 8px;white-space:nowrap}.fsos-plan-footer{display:flex;gap:8px;align-items:center;padding:10px 14px 12px;border-top:1px solid var(--border)}.fsos-plan-footer .fsos-plan-toggle{flex:0 0 auto;margin-inline-start:0}.fsos-plan-card .fsos-plan-footer .fsos-apply-btn{flex:1 1 auto;width:auto;margin-top:0}.fsos-plan-card .fsos-plan-footer .fsos-apply-infeasible{flex:1 1 auto;margin-top:0}.fsos-keep-note{font-size:.8rem;color:var(--text-muted, #888);margin:4px 0 8px}.fsos-plan-reason{font-size:.8rem;color:var(--text-muted, #888)}.fsos-plan-toggle{margin-inline-start:auto;background:transparent;border:1px solid var(--border);border-radius:6px;padding:2px 8px;color:var(--text-muted, #888);font-size:.75rem;cursor:pointer;display:flex;gap:4px;align-items:center}.fsos-plan-toggle:hover{background:#ffffff0a}.fsos-plan-toggle-arrow{transition:transform .2s ease}.fsos-plan-card--expanded .fsos-plan-toggle-arrow{transform:rotate(180deg)}@media(prefers-reduced-motion:reduce){.fsos-plan-toggle-arrow{transition:none}}.fsos-plan-body{padding:0 14px 12px;display:none}.fsos-plan-card--expanded .fsos-plan-body{display:block}.fsos-plan-swaps-grouped{display:flex;flex-direction:column;gap:10px;margin-top:6px}.fsos-plan-swap-day-header{font-size:.8rem;font-weight:600;color:var(--text-muted, #888);padding-bottom:2px;border-bottom:1px solid var(--border);margin-bottom:4px}.fsos-plan-swap-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:4px}.fsos-plan-swap-list li{display:flex;flex-direction:column;gap:2px;padding:6px 8px;border-radius:6px;background:#ffffff05}.fsos-plan-swap-task{font-size:.9rem;font-weight:500}.fsos-plan-swap-meta{display:flex;justify-content:space-between;gap:8px;font-size:.85rem;color:var(--text);align-items:center;flex-wrap:wrap}.fsos-plan-swap-meta .fsos-ltr{color:var(--text-muted, #888)}.fsos-plan-swap-names{direction:rtl}.fsos-plan-swap-arrow{color:var(--accent, #3a7cc5);margin:0 4px;font-weight:700}.fsos-plan-section-title{font-size:.8rem;font-weight:600;color:var(--text-muted, #888);margin:12px 0 6px;text-transform:uppercase;letter-spacing:.04em}.fsos-plan-changes{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:2px;font-size:.88rem}.fsos-plan-changes li{display:flex;justify-content:space-between;gap:8px;padding:4px 6px;border-radius:6px;background:#ffffff05}.fsos-plan-change-name{color:var(--text);font-weight:500}.fsos-plan-change-delta{color:var(--text-muted, #aaa);font-size:.82rem}.fsos-plan-change-added{color:#2ecc71}.fsos-plan-change-removed{color:#e74c3c}.fsos-apply-infeasible{margin-top:10px;padding:8px 12px;background:#e74c3c1a;border:1px solid rgba(231,76,60,.3);border-radius:6px;color:#e74c3c;font-size:.9rem;text-align:center}.fsos-plan-card .fsos-apply-btn{width:100%;margin-top:10px}.fsos-applied-strip{position:fixed;inset-inline-start:20px;bottom:20px;z-index:1400;display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:10px;background:#27ae60f2;color:#fff;box-shadow:0 6px 20px #00000040;font-size:.9rem;max-width:460px;animation:fsosAppliedIn .25s ease}@keyframes fsosAppliedIn{0%{transform:translateY(12px);opacity:0}to{transform:translateY(0);opacity:1}}.fsos-applied-strip--leaving{opacity:0;transform:translateY(12px);transition:opacity .25s ease,transform .25s ease}.fsos-applied-strip-undo{background:#ffffff29;border:1px solid rgba(255,255,255,.35);color:#fff;border-radius:6px;padding:4px 10px;font-size:.85rem;cursor:pointer}.fsos-applied-strip-undo:hover{background:#ffffff4d}.fsos-applied-strip-close{background:transparent;border:none;color:#fff;cursor:pointer;font-size:.9rem;opacity:.8}.fsos-applied-strip-close:hover{opacity:1}.profile-card-header-row{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:8px}.profile-availability-action{margin-inline-start:auto}.profile-fsos-swap-badge{display:inline-block;margin-inline-start:6px;padding:1px 8px;background:#27ae6033;color:#2ecc71;border-radius:999px;font-size:.75rem;font-weight:600}@media(max-width:767px){.gm-range-picker-v2,.fsos-confirm-v2,.fsos-plans-v2{width:100%;max-width:100%;min-width:0;border-radius:16px 16px 0 0;max-height:92vh;margin:0;animation:fsosSheetIn .25s ease}.gm-modal-backdrop:has(.gm-range-picker-v2),.gm-modal-backdrop:has(.fsos-confirm-v2),.gm-modal-backdrop:has(.fsos-plans-v2){align-items:flex-end}.fsos-plan-card{margin:6px 12px}.fsos-carousel{padding:0 12px 10px}.fsos-carousel .fsos-plan-card{flex-basis:88%}.fsos-plan-footer{padding-inline:12px}.fsos-plan-swap-meta{flex-direction:column;align-items:flex-start;gap:2px}.gm-range-picker-v2-section{padding:0 12px 8px}.gm-range-picker-anchor,.fsos-locked-section,.fsos-confirm-groups{margin-inline:12px}.fsos-window-sentence,.fsos-affected-title,.fsos-confirm-summary,.gm-range-picker-preview,.gm-modal-actions.fsos-sticky-actions{padding-inline:12px}.fsos-applied-strip{inset-inline-start:12px;inset-inline-end:12px;max-width:none}}@keyframes fsosSheetIn{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}[data-theme=light] .gm-modal-backdrop{background:#f5f6fa99}[data-theme=light] .gm-modal-dialog{background:#ffffffe6;border-color:#0000001a;box-shadow:inset 0 1px #fffc,0 20px 60px #0000001f}[data-theme=light] .fsos-plan-card,[data-theme=light] .fsos-plan-changes li{background:#00000008;border-color:#00000014}[data-theme=light] .fsos-plan-change-added{color:#1f7a43}[data-theme=light] .fsos-plan-change-removed{color:#a93226}[data-theme=light] .fsos-plan-card--recommended{background:#27ae600d}[data-theme=light] .fsos-plan-swap-list li{background:#0000000a;border:1px solid rgba(0,0,0,.05)}[data-theme=light] .fsos-plan-swap-day-header{border-bottom-color:#00000014}[data-theme=light] .fsos-affected-day-group{background:#00000005;border-color:#00000014}[data-theme=light] .fsos-confirm-v2 .fsos-confirm-list li,[data-theme=light] .fsos-locked-list li,[data-theme=light] .gm-range-picker-chip:hover,[data-theme=light] .gm-range-picker-anchor-btn:hover,[data-theme=light] .fsos-locked-toggle:hover,[data-theme=light] .fsos-plan-toggle:hover{background:#0000000a}[data-theme=light] .gm-range-picker-chip--active,[data-theme=light] .gm-range-picker-chip--active:hover,[data-theme=light] .gm-range-picker-chip--active:focus,[data-theme=light] .gm-range-picker-chip--active:active{background:var(--accent, #3a7cc5);border-color:var(--accent, #3a7cc5);color:#fff}[data-theme=light] .fsos-sticky-actions{background:linear-gradient(to top,#fffffffa,#ffffffeb)}[data-theme=light] .fsos-plan-swap-arrow{color:#2c6aa8}[data-theme=light] .fsos-plan-swap-meta .fsos-ltr{color:#5f6577}.gm-edit-sheet-v2{display:flex;flex-direction:column;max-height:min(720px,90vh);min-width:0}.gm-edit-sheet-v2 .pe-header{display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid var(--border);background:#ffffff05;position:sticky;top:0;z-index:1}.gm-edit-sheet-v2 .pe-title{flex:1 1 auto;font-size:1rem;font-weight:600;color:var(--text);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gm-edit-sheet-v2 .pe-close{flex:0 0 auto;width:36px;height:36px;border-radius:50%;background:transparent;border:1px solid transparent;color:var(--text-muted);cursor:pointer;font-size:1.1rem;line-height:1;display:flex;align-items:center;justify-content:center;transition:background .15s ease,border-color .15s ease}.gm-edit-sheet-v2 .pe-close:hover{background:var(--bg-hover);border-color:var(--border)}.gm-edit-sheet-v2 .pe-save{flex:0 0 auto}.gm-edit-sheet-v2 .pe-body{flex:1 1 auto;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding:4px 0 8px;min-height:0}.gm-edit-sheet-v2 .pe-footer{display:flex;justify-content:flex-end;gap:8px;padding:10px 16px;padding-bottom:calc(10px + env(safe-area-inset-bottom));border-top:1px solid var(--border);background:#ffffff05;position:sticky;bottom:0}.gm-edit-sheet-v2 .pe-section{padding:14px 18px;border-bottom:1px solid var(--border)}.gm-edit-sheet-v2 .pe-section:last-child{border-bottom:none}.gm-edit-sheet-v2 .pe-section-title{font-size:.75rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);margin-bottom:10px}.gm-edit-sheet-v2 .pe-field{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.gm-edit-sheet-v2 .pe-field:last-child{margin-bottom:0}.gm-edit-sheet-v2 .pe-field-label{font-size:.78rem;font-weight:600;color:var(--text-muted)}.gm-edit-sheet-v2 .pe-field-error{font-size:.78rem;color:var(--danger, #e74c3c)}.gm-edit-sheet-v2 .pe-field-help{font-size:.75rem;color:var(--text-muted)}.gm-edit-sheet-v2 .pe-field-warning{display:flex;align-items:flex-start;gap:6px;font-size:.78rem;color:var(--warning, #d68910);background:#d6891014;border:1px solid rgba(214,137,16,.25);border-radius:6px;padding:6px 8px}.gm-edit-sheet-v2 .pe-field-warning .warn-icon{flex:0 0 auto}.gm-edit-sheet-v2 .pe-input{width:100%;box-sizing:border-box}.gm-edit-sheet-v2 .pe-group-row{display:flex;flex-direction:column;gap:6px}.gm-edit-sheet-v2 .pe-level-chips{display:flex;gap:6px;flex-wrap:wrap}.gm-edit-sheet-v2 .pe-level-chip{flex:0 0 auto;min-width:52px;padding:8px 14px;border-radius:8px;border:1px solid var(--border);background:transparent;color:var(--text);font-size:.85rem;font-weight:600;cursor:pointer;transition:background .15s ease,border-color .15s ease,transform .1s ease}.gm-edit-sheet-v2 .pe-level-chip:hover{background:var(--bg-hover)}.gm-edit-sheet-v2 .pe-level-chip:focus-visible{outline:2px solid var(--accent, #3a7cc5);outline-offset:2px}.gm-edit-sheet-v2 .pe-level-chip--active,.gm-edit-sheet-v2 .pe-level-chip--active:hover,.gm-edit-sheet-v2 .pe-level-chip--active:focus,.gm-edit-sheet-v2 .pe-level-chip--active:active{background:var(--accent, #3a7cc5);border-color:var(--accent, #3a7cc5);color:#fff;font-weight:700}.gm-edit-sheet-v2 .pe-mult-row{display:flex;align-items:center;gap:8px}.gm-edit-sheet-v2 .pe-mult-step{flex:0 0 auto;width:32px;height:32px;border-radius:8px;border:1px solid var(--border);background:transparent;color:var(--text);font-size:1.1rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center}.gm-edit-sheet-v2 .pe-mult-step:hover{background:var(--bg-hover)}.gm-edit-sheet-v2 .pe-mult-input{width:80px;text-align:center;font-variant-numeric:tabular-nums;-moz-appearance:textfield;appearance:textfield}.gm-edit-sheet-v2 .pe-mult-input::-webkit-outer-spin-button,.gm-edit-sheet-v2 .pe-mult-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.gm-edit-sheet-v2 .pe-mult-help{color:var(--text-muted);font-size:.85rem;cursor:help}.gm-edit-sheet-v2 .pe-mult-warning{flex:1 1 auto;min-width:0;display:flex;align-items:flex-start;gap:4px;font-size:.72rem;line-height:1.25;color:var(--warning);text-align:start}.gm-edit-sheet-v2 .pe-mult-warning .warn-icon{flex:0 0 auto}.gm-edit-sheet-v2 .pe-mult-warning .warn-text{min-width:0;overflow-wrap:anywhere}.gm-edit-sheet-v2 .pe-checkboxes{display:flex;flex-wrap:wrap;gap:6px}.gm-edit-sheet-v2 .pe-checkbox{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:8px;border:1px solid var(--border);background:transparent;cursor:pointer;font-size:.85rem;transition:background .15s ease,border-color .15s ease}.gm-edit-sheet-v2 .pe-checkbox:hover{background:var(--bg-hover)}.gm-edit-sheet-v2 .pe-checkbox input[type=checkbox]{accent-color:var(--accent, #3a7cc5)}.gm-edit-sheet-v2 .pe-checkbox--orphan{border-color:#d6891073;color:var(--warning, #d68910)}.gm-edit-sheet-v2 .pe-notwith{display:flex;flex-direction:column;gap:8px}.gm-edit-sheet-v2 .pe-notwith-chips{display:flex;flex-wrap:wrap;gap:6px;min-height:28px}.gm-edit-sheet-v2 .pe-notwith-chip{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border-radius:6px;background:#e74c3c26;border:1px solid rgba(231,76,60,.4);font-size:.85rem;color:var(--text)}.gm-edit-sheet-v2 .pe-notwith-empty{color:var(--text-muted);font-size:.85rem;font-style:italic}.gm-edit-sheet-v2 .pe-notwith-remove{background:transparent;border:none;color:var(--text-muted);cursor:pointer;font-size:1rem;line-height:1;width:18px;height:18px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center}.gm-edit-sheet-v2 .pe-notwith-remove:hover{background:#e74c3c40;color:var(--text)}.gm-edit-sheet-v2 .pe-notwith-open{align-self:flex-start;margin-top:8px}.gm-bottom-sheet-backdrop.pp-backdrop{z-index:1300}.pp{display:flex;flex-direction:column}.pp-search{position:sticky;top:0;z-index:1;width:100%;box-sizing:border-box;margin-bottom:8px;padding:9px 11px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);font-size:.9rem;color:var(--text)}.pp-list{display:flex;flex-direction:column;gap:2px}.pp-row{display:flex;align-items:center;gap:8px;width:100%;min-height:44px;padding:6px 8px;background:transparent;border:1px solid transparent;border-radius:8px;cursor:pointer;text-align:start;color:var(--text);font-size:.9rem}.pp-row:hover{background:var(--bg-hover)}.pp-row[aria-selected=true]{background:color-mix(in srgb,var(--accent) 16%,transparent);border-color:color-mix(in srgb,var(--accent) 45%,transparent)}.pp-check{flex:0 0 20px;width:20px;height:20px;border:1.5px solid var(--border);border-radius:5px;display:inline-flex;align-items:center;justify-content:center;font-size:.8rem;color:#fff}.pp-row[aria-selected=true] .pp-check{background:var(--accent);border-color:var(--accent)}.pp-name{flex:1 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pp-hidden{display:none!important}.pp-empty,.pp-search-empty{color:var(--text-muted);font-size:.85rem;font-style:italic;padding:12px 8px;text-align:center}.pp-count{font-size:.85rem;color:var(--text-muted);align-self:center;margin-inline-end:auto}.gm-edit-sheet-v2 .pe-unavail-list{display:flex;flex-direction:column;gap:8px;margin-bottom:10px}.gm-edit-sheet-v2 .pe-unavail-empty{color:var(--text-muted);font-size:.85rem;font-style:italic;padding:12px;border:1px dashed var(--border);border-radius:8px;text-align:center}.gm-edit-sheet-v2 .pe-unavail-card{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:8px;background:#ffffff08;border:1px solid var(--border)}.gm-edit-sheet-v2 .pe-unavail-card-main{flex:1 1 auto;min-width:0}.gm-edit-sheet-v2 .pe-unavail-card-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:.9rem}.gm-edit-sheet-v2 .pe-unavail-day{font-weight:600}.gm-edit-sheet-v2 .pe-unavail-sep{color:var(--text-muted)}.gm-edit-sheet-v2 .pe-unavail-time{font-variant-numeric:tabular-nums;color:var(--text)}.gm-edit-sheet-v2 .pe-unavail-allday{background:#8e44ad2e;color:#a663cc;padding:2px 8px;border-radius:6px;font-size:.78rem;font-weight:600}.gm-edit-sheet-v2 .pe-unavail-reason{margin-top:2px;font-size:.78rem;color:var(--text-muted)}.gm-edit-sheet-v2 .pe-unavail-card-actions{display:flex;gap:4px;flex:0 0 auto}.gm-edit-sheet-v2 .pe-unavail-actions{display:flex;justify-content:flex-start;margin-top:4px}.gm-edit-sheet-v2 .pe-unavail-fsos-note{margin-top:10px;padding:8px 10px;border-radius:6px;background:#3a7cc514;border:1px solid rgba(58,124,197,.25);font-size:.8rem;color:var(--text-muted)}.gm-range-picker-allday{display:inline-flex;align-items:center;gap:8px;cursor:pointer;font-size:.9rem;color:var(--text)}.gm-range-picker-allday input[type=checkbox]{width:18px;height:18px;accent-color:var(--accent, #3a7cc5)}.gm-range-picker-hour-row--disabled{opacity:.45;pointer-events:none}.gm-range-picker-boundary-note{font-size:.75rem;color:var(--warning, #d68910);margin-inline-start:8px}.gm-range-picker-boundary-note:empty{display:none}@media(max-width:767px){.gm-edit-sheet-v2{width:100%;max-width:100%;min-width:0;border-radius:16px 16px 0 0;max-height:92vh;margin:0;animation:fsosSheetIn .25s ease}.gm-modal-backdrop:has(.gm-edit-sheet-v2){align-items:flex-end}.gm-edit-sheet-v2 .pe-section{padding:12px 14px}.gm-edit-sheet-v2 .pe-header,.gm-edit-sheet-v2 .pe-footer{padding-inline:12px}}[data-theme=light] .gm-edit-sheet-v2 .pe-section{border-bottom-color:#00000014}[data-theme=light] .gm-edit-sheet-v2 .pe-header,[data-theme=light] .gm-edit-sheet-v2 .pe-footer{background:#00000005}[data-theme=light] .gm-edit-sheet-v2 .pe-unavail-card{background:#00000008;border-color:#00000014}[data-theme=light] .gm-edit-sheet-v2 .pe-checkbox:hover,[data-theme=light] .gm-edit-sheet-v2 .pe-level-chip:not(.pe-level-chip--active):hover,[data-theme=light] .gm-edit-sheet-v2 .pe-mult-step:hover{background:#0000000a}.gm-toast-container{position:fixed;bottom:20px;inset-inline-end:20px;z-index:1300;display:flex;flex-direction:column;gap:8px;pointer-events:none;max-width:380px}.gm-toast{display:flex;align-items:center;gap:10px;padding:10px 16px;border-radius:8px;font-size:.85rem;font-weight:500;color:var(--text-inverse);pointer-events:auto;animation:gmToastIn .3s ease;box-shadow:0 4px 16px #00000040;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.gm-toast-success{background:#27ae60eb}.gm-toast-error{background:#e74c3ceb}.gm-toast-warning{background:#f39c12eb}.gm-toast-info{background:#4a90d9eb}.gm-toast-icon{font-size:1rem;font-weight:700;flex-shrink:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#fff3}.gm-toast-msg{flex:1;line-height:1.4}.gm-toast-action{background:#fff3;border:none;color:var(--text-inverse);padding:3px 10px;border-radius:4px;font-size:.8rem;font-weight:600;font-family:inherit;cursor:pointer;transition:background var(--transition-fast);white-space:nowrap}.gm-toast-action:hover{background:#ffffff59}.gm-toast-close{background:transparent;border:none;color:#fff9;font-size:.85rem;cursor:pointer;padding:2px 4px;flex-shrink:0;transition:color var(--transition-fast)}.gm-toast-close:hover{color:var(--text-inverse)}@keyframes gmToastIn{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:translate(0)}}.gm-toast-exit{animation:gmToastOut .3s ease forwards}@keyframes gmToastOut{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(40px)}}.gm-select{position:relative;display:inline-block;min-width:160px}.gm-select-trigger{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:5px 10px;border-radius:6px;border:1px solid var(--border);background:var(--bg-card);color:var(--text);font-size:.85rem;font-family:inherit;cursor:pointer;transition:border-color var(--transition-normal),box-shadow var(--transition-normal);width:100%;text-align:start}.gm-select-trigger:hover{border-color:var(--accent)}.gm-select.open .gm-select-trigger{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}.gm-select-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.gm-select-chevron{font-size:.7rem;color:var(--text-muted);transition:transform var(--transition-normal)}.gm-select.open .gm-select-chevron{transform:rotate(180deg)}.gm-select-dropdown{position:absolute;top:calc(100% + 4px);inset-inline-start:0;min-width:100%;width:max-content;background:var(--bg-card);border:1px solid var(--border);border-radius:8px;z-index:60;box-shadow:0 8px 24px #00000040;display:none;overflow:hidden;padding:4px}.gm-select.open .gm-select-dropdown,.gm-select-dropdown.gm-select-dropdown--open{display:block;animation:gmSelectOpen .15s ease}.gm-select-dropdown.gm-select-dropdown--open{z-index:100001}@keyframes gmSelectOpen{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.gm-select-search{width:100%;padding:6px 10px;border-radius:4px;border:1px solid var(--border);background:var(--bg);color:var(--text);font-size:.83rem;font-family:inherit;outline:none;margin-bottom:4px}.gm-select-search:focus{border-color:var(--accent)}.gm-select-options{max-height:300px;overflow-y:auto;display:block}.gm-select-option{display:block;width:100%;text-align:start;padding:6px 10px;border:none;border-radius:4px;background:transparent;color:var(--text);font-size:.85rem;font-family:inherit;cursor:pointer;transition:background var(--transition-fast);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gm-select-option:hover,.gm-select-option.gm-select-option--active{background:var(--bg-hover)}.gm-select-option.selected{background:var(--accent-glow);color:var(--accent);font-weight:600}.gm-select-option.gm-select-option--active{outline:2px solid var(--accent);outline-offset:-2px}[data-theme=light] .gm-select-dropdown{box-shadow:0 8px 24px #0000001a}.participant-sidebar{transition:min-width var(--transition-slow) ease,max-width var(--transition-slow) ease,padding var(--transition-slow) ease,background-color var(--transition-slow) cubic-bezier(.4,0,.2,1),color var(--transition-slow) cubic-bezier(.4,0,.2,1),border-color var(--transition-slow) cubic-bezier(.4,0,.2,1),box-shadow var(--transition-slow) cubic-bezier(.4,0,.2,1)}.sidebar-collapsed{min-width:48px!important;max-width:48px!important;padding:8px!important;display:flex;flex-direction:column;align-items:center;gap:8px}.sidebar-toggle{background:transparent;border:1px solid var(--border);color:var(--text-muted);width:32px;height:32px;border-radius:50%;cursor:pointer;font-size:.9rem;display:flex;align-items:center;justify-content:center;transition:all var(--transition-normal);flex-shrink:0}.sidebar-toggle:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-glow)}.sidebar-mini{display:flex;flex-direction:column;gap:2px;width:28px;margin-top:4px}.sidebar-mini-bar{height:4px;border-radius:2px;width:100%;background:#e67e22}.sidebar-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.manual-build-strip{display:flex;flex-direction:column;gap:6px;padding:8px 16px;background:color-mix(in srgb,var(--accent) 12%,var(--bg-card));border:1px solid var(--accent);border-radius:var(--radius);margin-bottom:8px}.manual-build-strip-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.manual-build-status{font-size:.85rem;font-weight:600;color:var(--accent)}.manual-build-progress{width:100%;height:6px;background:var(--border);border-radius:3px;overflow:hidden}.manual-build-progress-fill{height:100%;background:var(--accent);border-radius:3px;transition:width .25s ease}.manual-slot-target{cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease}.manual-slot-target:hover{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 25%,transparent)}@keyframes assignment-flash{0%{background-color:color-mix(in srgb,var(--success, #22c55e) 40%,var(--bg-card));transform:scale(1.03)}to{background-color:transparent;transform:scale(1)}}.assignment-flash{animation:assignment-flash .6s ease-out}.manual-slot-empty{border:1.5px dashed var(--text-muted);min-height:36px}.manual-slot-selected{border-color:var(--accent)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 30%,transparent)!important;background:color-mix(in srgb,var(--accent) 8%,var(--bg-card))}.manual-slot-hint{font-size:.65rem;color:var(--text-muted);margin-top:2px;display:flex;gap:3px;align-items:center;flex-wrap:wrap;justify-content:center}.manual-slot-hint .badge{font-size:.55rem;padding:1px 4px}.btn-manual-remove{font-size:.7rem;color:var(--danger);background:none;border:1px solid var(--danger);border-radius:4px;padding:1px 6px;cursor:pointer;margin-inline-start:4px;white-space:nowrap;transition:background .15s ease}.btn-manual-remove:hover{background:color-mix(in srgb,var(--danger) 15%,transparent)}.manual-warehouse{border:1px solid var(--border);border-radius:var(--radius);padding:12px;margin-bottom:12px;background:var(--bg-card);transition:box-shadow .3s ease,border-color .3s ease}.manual-warehouse.flash{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 35%,transparent)}@media(prefers-reduced-motion:reduce){.manual-warehouse{transition:none}}.warehouse-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;gap:12px}.warehouse-header h3{margin:0;font-size:.95rem}.warehouse-filter{padding:4px 10px;font-size:.85rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);color:var(--text);max-width:200px}.warehouse-pool{margin-bottom:10px}.warehouse-pool:last-child{margin-bottom:0}.warehouse-pool-header{font-size:.8rem;font-weight:600;color:var(--text-muted);margin-bottom:6px;padding-bottom:4px;border-bottom:1px solid var(--border)}.warehouse-pool-cards{display:flex;flex-wrap:wrap;gap:6px}.warehouse-card.warehouse-card-hidden{display:none}.warehouse-search-wrap{position:relative;display:inline-flex;align-items:center}.warehouse-search-wrap .warehouse-filter{padding-inline-end:30px}.warehouse-filter::-webkit-search-cancel-button,.warehouse-sheet-search::-webkit-search-cancel-button{-webkit-appearance:none;appearance:none}.warehouse-search-clear{position:absolute;inset-inline-end:4px;top:50%;transform:translateY(-50%);width:28px;height:28px;display:flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--text-muted);font-size:.9rem;line-height:1;cursor:pointer;border-radius:50%}.warehouse-search-clear:hover,.warehouse-search-clear:active{background:var(--bg-hover);color:var(--text)}.warehouse-pool-count{font-weight:600}.warehouse-empty{padding:8px 4px;text-align:center;font-size:.85rem}.warehouse-sheet-filter .warehouse-search-wrap{display:flex}.warehouse-sheet-filter .warehouse-sheet-search{padding-inline-end:40px}.warehouse-sheet-filter .warehouse-search-clear{inset-inline-end:8px;width:32px;height:32px;font-size:1rem}.warehouse-sheet-count{display:inline-block;margin-top:6px;font-size:.8rem;color:var(--text-muted)}.warehouse-sheet-count[hidden]{display:none}.warehouse-sheet-empty{padding:16px 8px;text-align:center;font-size:.9rem}.warehouse-card{display:flex;align-items:center;gap:6px;padding:5px 10px;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-card);cursor:pointer;font-size:.8rem;transition:border-color .15s ease,opacity .15s ease,background .15s ease;user-select:none;position:relative}.warehouse-card:hover{border-color:var(--accent)}.wc-name{font-weight:600;white-space:nowrap}.wc-badges{display:flex;gap:3px;align-items:center}.wc-badges .badge{font-size:.6rem;padding:1px 4px}.wc-load{background:var(--accent);color:#fff;border-radius:50%;width:18px;height:18px;display:flex;align-items:center;justify-content:center;font-size:.65rem;font-weight:700;flex-shrink:0}.wc-eligible{background:color-mix(in srgb,var(--success) 12%,var(--bg-card));border-color:var(--success)}.wc-eligible:hover{background:color-mix(in srgb,var(--success) 22%,var(--bg-card));border-color:var(--success)}.wc-ineligible{opacity:.35;cursor:not-allowed;border-color:var(--border)}.wc-ineligible:hover{border-color:var(--border)}.warehouse-sheet-header{margin-bottom:12px}.warehouse-sheet-title{font-size:1rem;font-weight:700;margin-bottom:4px}.warehouse-sheet-reqs{font-size:.8rem;color:var(--text-muted);display:flex;gap:4px;align-items:center;flex-wrap:wrap}.warehouse-sheet-reqs .badge{font-size:.65rem;padding:1px 5px}.btn-manual-remove-sheet{display:block;width:100%;padding:12px;margin-bottom:12px;font-size:.9rem;font-weight:600;color:var(--danger);background:color-mix(in srgb,var(--danger) 8%,var(--bg-card));border:1px solid var(--danger);border-radius:var(--radius);cursor:pointer;text-align:center;transition:background .15s ease}.btn-manual-remove-sheet:hover{background:color-mix(in srgb,var(--danger) 18%,var(--bg-card))}.btn-manual-split-sheet,.btn-manual-split-inline{display:block;width:100%;padding:12px;margin-bottom:12px;font-size:.9rem;font-weight:600;color:var(--accent, #4a90e2);background:color-mix(in srgb,var(--accent, #4a90e2) 8%,var(--bg-card));border:1px solid var(--accent, #4a90e2);border-radius:var(--radius);cursor:pointer;text-align:center;transition:background .15s ease}.btn-manual-split-sheet:hover,.btn-manual-split-inline:hover{background:color-mix(in srgb,var(--accent, #4a90e2) 18%,var(--bg-card))}.split-picker-header{margin-bottom:12px}.split-picker-title{font-size:1rem;font-weight:700;margin-bottom:4px}.split-picker-subtitle{font-size:.85rem;color:var(--text-muted)}.split-picker-halves{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.split-picker-half{border:1px solid var(--border-color, #d1d5db);border-radius:var(--radius);padding:10px 12px;background:var(--bg-card);cursor:pointer;transition:border-color .15s ease,background .15s ease}.split-picker-half:hover{border-color:var(--accent, #4a90e2)}.split-picker-half--active{border-color:var(--accent, #4a90e2);background:color-mix(in srgb,var(--accent, #4a90e2) 6%,var(--bg-card));box-shadow:0 0 0 2px color-mix(in srgb,var(--accent, #4a90e2) 25%,transparent)}.split-picker-half--filled{border-color:var(--success, #16a34a)}.split-picker-half-meta{display:flex;justify-content:space-between;font-size:.75rem;color:var(--text-muted);margin-bottom:6px}.split-picker-half-label{font-weight:600}.split-picker-half-body{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:28px}.split-picker-half-name{font-weight:700;font-size:1rem}.split-picker-half-placeholder{color:var(--text-muted);font-style:italic}.split-picker-half-clear{background:transparent;border:none;cursor:pointer;font-size:.9rem;color:var(--danger, #dc2626);padding:4px 8px}.split-picker-grouplock{font-size:.8rem;color:var(--text-muted);background:color-mix(in srgb,var(--accent, #4a90e2) 6%,var(--bg-card));border:1px solid color-mix(in srgb,var(--accent, #4a90e2) 25%,transparent);border-radius:var(--radius);padding:6px 10px;margin-bottom:8px}.split-picker-search-row{margin-bottom:8px}.split-picker-search{width:100%;padding:8px 10px;border:1px solid var(--border-color, #d1d5db);border-radius:var(--radius);font-size:.9rem}.split-picker-cards{display:flex;flex-direction:column;gap:4px;margin-bottom:12px}.split-picker-empty{color:var(--text-muted);font-style:italic;padding:12px;text-align:center}.split-picker-error{background:color-mix(in srgb,var(--danger, #dc2626) 8%,var(--bg-card));border:1px solid var(--danger, #dc2626);color:var(--danger, #dc2626);padding:8px 12px;border-radius:var(--radius);font-size:.85rem;margin-bottom:8px}.split-picker-actions{display:flex;gap:8px;justify-content:flex-end}.split-picker-actions .btn{min-width:100px}.warehouse-sheet-filter{margin-bottom:8px;position:sticky;top:0;z-index:1;background:var(--bg-card)}.warehouse-sheet-search{width:100%;padding:8px 12px;border:1px solid var(--border);border-radius:var(--radius);font-size:.9rem;background:var(--bg);color:var(--text);outline:none}.warehouse-sheet-search:focus{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 20%,transparent)}.warehouse-sheet-cards{display:grid;grid-template-columns:1fr 1fr;gap:8px}.warehouse-card-sheet{min-height:48px;padding:8px 10px;flex-direction:column;align-items:flex-start;gap:4px}.schedule-grid-compact{gap:4px}.schedule-grid-compact .table-title{padding:2px 6px;font-size:.7rem}.schedule-grid-compact .schedule-grid-table th{padding:2px 3px;font-size:.65rem}.schedule-grid-compact .schedule-grid-table td{padding:2px 3px}.schedule-grid-compact .assignment-card{padding:1px 3px;margin-bottom:1px}.schedule-grid-compact .participant-name{font-size:.72rem}.schedule-grid-compact .card-details{font-size:.65rem;gap:2px}.schedule-grid-compact .manual-slot-empty{min-height:28px}.schedule-grid-compact .empty-slot-label{font-size:.65rem}.schedule-grid-compact .manual-slot-hint{font-size:.58rem;margin-top:1px}.schedule-grid-compact .manual-slot-hint .badge{font-size:.5rem;padding:0 3px}.schedule-grid-compact .schedule-table-wrapper{box-shadow:none}.violations-section{margin-top:8px}.violations-toggle{display:flex;align-items:center;gap:8px;width:100%;background:none;border:1px solid var(--border);border-radius:8px;padding:8px 12px;cursor:pointer;color:var(--text);text-align:start}.violations-toggle:hover{background:var(--bg-hover)}.violations-toggle h2{margin:0;font-size:.85rem}.violations-toggle-icon{margin-inline-start:auto;font-size:.9rem;opacity:.6}.violations-content{margin-top:4px}.te-toolbar{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:8px 12px;position:sticky;top:0;z-index:10;background:var(--bg);border-bottom:1px solid var(--border);flex-wrap:wrap}.te-toolbar-left{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.te-toolbar-left h2{margin:0;font-size:1.1rem}.te-toolbar-right{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.te-change-summary{font-size:.8rem;color:var(--text-muted);background:var(--surface);padding:2px 8px;border-radius:4px}.te-validation-bar{background:#e74c3c1f;border:1px solid rgba(231,76,60,.3);border-radius:6px;padding:8px 12px;margin:8px 12px;color:#e74c3c;font-size:.85rem}.te-validation-bar strong{display:block;margin-bottom:4px}.te-error-list{margin:4px 0 0;padding-inline-start:18px;font-size:.8rem}.te-table{width:100%;border-collapse:collapse}.te-table th{font-size:.75rem;font-weight:600;text-transform:none;padding:6px 4px;border-bottom:2px solid var(--border);text-align:start;white-space:nowrap}.te-table td{padding:4px;vertical-align:top;border-bottom:1px solid var(--border)}.te-col-select{width:30px;text-align:center}.te-col-index{width:30px;text-align:center;color:var(--text-muted);font-size:.8rem}.te-col-name{min-width:120px}.te-col-group{min-width:100px}.te-col-level{width:70px}.te-col-certs{min-width:100px}.te-col-pakals{min-width:80px}.te-col-pref,.te-col-lesspref{min-width:100px}.te-col-delete{width:36px;text-align:center}.te-input{width:100%;box-sizing:border-box;font-size:.85rem}.te-row-new{border-inline-start:3px solid #27ae60}.te-row-modified{border-inline-start:3px solid #f39c12}.te-row-deleted{opacity:.45;background:#e74c3c0f}.te-row-deleted td.te-col-name{text-decoration:line-through}.te-cell-error{border-color:#e74c3c!important;box-shadow:0 0 0 1px #e74c3c66}.te-field-error{color:#e74c3c;font-size:.72rem;margin-top:2px;line-height:1.2}.te-cert-checks,.te-pakal-checks{display:flex;flex-wrap:wrap;gap:2px 6px}.te-check-label{display:inline-flex;align-items:center;gap:2px;font-size:.75rem;white-space:nowrap;cursor:pointer}.te-check-label input[type=checkbox]{margin:0}.btn-disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.te-compact-list{display:flex;flex-direction:column;gap:0;padding:0 4px}.te-compact-row{border-bottom:1px solid var(--border);padding:6px 4px;border-inline-start:3px solid transparent}.te-compact-new{border-inline-start-color:#27ae60;background:#27ae600a}.te-compact-modified{border-inline-start-color:#f39c12}.te-compact-deleted{opacity:.45;background:#e74c3c0f}.te-compact-header{display:flex;align-items:center;gap:4px}.te-compact-name{flex:1;min-width:0;border:1px solid var(--border);border-radius:4px;padding:4px 6px;font-size:.9rem;background:var(--bg);color:var(--text)}.te-compact-pill{border:1px solid var(--border);border-radius:12px;padding:2px 8px;font-size:.8rem;background:var(--surface);color:var(--text);cursor:pointer;appearance:none;-webkit-appearance:none;min-width:0;max-width:100px}.te-compact-level{max-width:50px;text-align:center}.te-compact-chevron{border:none;background:none;font-size:1rem;color:var(--text-muted);padding:4px 6px;cursor:pointer;line-height:1}.te-compact-body{display:grid;grid-template-rows:0fr;overflow:hidden;transition:grid-template-rows .2s ease}.te-compact-expanded .te-compact-body{grid-template-rows:1fr}.te-compact-body-inner{min-height:0;overflow:hidden;display:flex;flex-direction:column;gap:6px}.te-compact-expanded .te-compact-body-inner{padding:8px 0 4px 28px;border-top:1px solid var(--border);margin-top:6px}.te-compact-body-hidden{display:none!important}.te-compact-field{display:flex;flex-direction:column;gap:2px}.te-compact-label{font-size:.75rem;font-weight:600;color:var(--text-muted)}.te-compact-error{padding-inline-start:28px;font-size:.75rem}.te-compact-delete,.te-compact-more{align-self:flex-start;margin-top:4px}.te-mobile-bottom-bar{display:none}.te-quick-add{display:flex;flex-direction:column;gap:8px}.te-qa-field{display:flex;flex-direction:column;gap:2px}.te-qa-details summary{cursor:pointer;font-size:.85rem;color:var(--text-muted);padding:4px 0}.te-qa-divider{border:none;border-top:1px solid var(--border);margin:4px 0}.te-qa-input-row{display:flex;gap:6px;align-items:center}.te-qa-input-row .te-qa-name{flex:1}.te-qa-error{color:var(--error);font-size:.8rem}.te-qa-chips{display:flex;flex-wrap:wrap;gap:6px}.te-qa-chip{display:inline-flex;align-items:center;gap:4px;background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:4px 8px;font-size:.85rem}.te-qa-chip-remove{border:none;background:none;color:var(--text-muted);font-size:1rem;cursor:pointer;padding:0 2px;line-height:1}.te-qa-summary{font-size:.8rem;color:var(--text-muted);padding:4px 0}.te-bulk-hint{font-size:.8rem;color:var(--text-muted);margin:0}.te-bulk-cert-label{display:flex;align-items:center;gap:6px;padding:6px 0}.te-bulk-group-sheet{display:flex;flex-direction:column;gap:8px;padding:8px 0}.te-group-option{text-align:start}.wc-row-main{display:flex;align-items:center;gap:6px;width:100%}.wc-row-workload{display:flex;align-items:center;gap:6px;width:100%;margin-top:4px}.wc-workload-text{font-size:.7rem;color:var(--text-muted);white-space:nowrap}.wc-workload-bar{display:inline-flex;flex:1;height:6px;min-width:40px;border-radius:3px;overflow:hidden;background:color-mix(in srgb,var(--border) 50%,transparent)}.wc-workload-bar-fill{background:var(--accent);height:100%}.wc-selected{border-color:var(--accent)!important;box-shadow:0 0 0 2px var(--accent-glow)}.wc-reason{font-size:.7rem;color:var(--danger);margin-top:4px;font-style:italic;white-space:normal;line-height:1.2}.swap-picker{display:flex;flex-direction:column;gap:10px;max-height:75vh}.swap-picker-sheet .gm-bs-body{padding-bottom:0}.swap-picker-footer{display:flex;flex-direction:column;gap:8px;position:sticky;bottom:0;background:var(--bg-card);padding-top:8px;margin-top:4px;border-top:1px solid var(--border);z-index:3}.swap-picker-header{padding-bottom:8px;border-bottom:1px solid var(--border)}.swap-picker-title{font-size:1rem;font-weight:700;color:var(--text)}.swap-picker-sub{font-size:.8rem;color:var(--text-muted);margin-top:2px}.swap-picker-tabs{display:flex;gap:4px;border-bottom:1px solid var(--border)}.swap-picker-tab{flex:1;padding:8px 12px;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--text-muted);font-size:.85rem;font-weight:600;cursor:pointer;transition:color .15s ease,border-color .15s ease}.swap-picker-tab:hover{color:var(--text)}.swap-picker-tab-active{color:var(--accent);border-bottom-color:var(--accent)}.swap-picker-filters{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.swap-picker-search{flex:1 1 180px;min-width:140px;padding:8px 12px;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);color:var(--text);font-size:.85rem;outline:none}.swap-picker-search:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-glow)}.swap-picker-sort{padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);color:var(--text);font-size:.8rem;cursor:pointer}.swap-picker-chips{display:flex;flex-wrap:wrap;gap:4px;align-items:center;width:100%}.swap-picker-chip{padding:5px 10px;border:1px solid var(--border);border-radius:999px;background:var(--bg-card);color:var(--text-muted);font-size:.75rem;cursor:pointer;transition:all .15s ease}.swap-picker-chip:hover{border-color:var(--accent);color:var(--text)}.swap-picker-chip.chip-active{background:var(--accent);border-color:var(--accent);color:#fff}.swap-picker-chip-sep{width:1px;height:18px;background:var(--border);margin:0 4px}.swap-picker-list{display:flex;flex-direction:column;gap:6px;overflow-y:auto;max-height:40vh;padding-right:2px}.swap-picker-list .warehouse-card{width:100%;flex-direction:column;align-items:stretch}.swap-picker-empty,.swap-picker-empty-banner{padding:12px;font-size:.85rem;color:var(--text-muted);text-align:center;background:color-mix(in srgb,var(--warning) 10%,var(--bg-card));border:1px dashed var(--warning);border-radius:var(--radius)}.swap-trade-row{display:flex;flex-direction:column;gap:2px}.swap-trade-target{font-size:.7rem;color:var(--text-muted);padding:0 4px}.swap-preview-panel{padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius);background:color-mix(in srgb,var(--bg-card) 90%,var(--accent));font-size:.8rem;display:flex;flex-direction:column;gap:8px}.swap-preview-panel.swap-preview-empty{color:var(--text-muted);font-style:italic;text-align:center;background:var(--bg-card)}.swap-preview-panel.swap-preview-invalid{border-color:var(--danger);background:color-mix(in srgb,var(--danger) 10%,var(--bg-card))}.swap-preview-header{font-weight:600;display:flex;align-items:center;gap:6px}.swap-preview-ok{color:var(--success);font-weight:700}.swap-preview-bad{color:var(--danger);font-weight:700}.swap-preview-deltas{display:flex;flex-direction:column;gap:3px}.swap-preview-delta-row{display:flex;justify-content:space-between;gap:8px;align-items:center}.swap-preview-delta-name{font-weight:600}.swap-preview-delta-values{color:var(--text-muted);font-variant-numeric:tabular-nums}.swap-delta-up{color:var(--danger);font-weight:700}.swap-delta-down{color:var(--success);font-weight:700}.swap-delta-same{color:var(--text-muted)}.swap-preview-violations{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:3px}.swap-preview-violations li{color:var(--danger);font-size:.75rem;padding-inline-start:14px;position:relative}.swap-preview-violations li:before{content:"✖";position:absolute;inset-inline-start:0}.swap-preview-soft{display:flex;flex-direction:column;gap:2px}.swap-preview-soft-label{font-weight:600;font-size:.75rem}.swap-preview-soft-added .swap-preview-soft-label{color:var(--warning)}.swap-preview-soft-removed .swap-preview-soft-label{color:var(--success)}.swap-preview-soft ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:2px}.swap-preview-soft li{font-size:.72rem;color:var(--text-muted);padding-inline-start:12px;position:relative}.swap-preview-soft-added li:before{content:"▲";color:var(--warning);position:absolute;inset-inline-start:0}.swap-preview-soft-removed li:before{content:"✓";color:var(--success);position:absolute;inset-inline-start:0}.swap-picker-actions{display:flex;flex-direction:column;gap:8px}.swap-picker-actions-buttons{display:flex;gap:8px}.swap-picker-error{padding:8px 12px;background:#e74c3c1a;border:1px solid rgba(231,76,60,.3);border-radius:6px;color:#e74c3c;font-size:.85rem;line-height:1.4;white-space:pre-line;text-align:start}.swap-picker-record-vacated{display:flex;align-items:center;gap:8px;font-size:.85rem;color:var(--text-muted, #666);cursor:pointer;line-height:1.35}.swap-picker-record-vacated input[type=checkbox]{flex:0 0 auto;width:16px;height:16px;cursor:pointer}.swap-picker-record-vacated strong{color:var(--text, #222)}.swap-picker-record-reason{width:100%}.swap-picker-record-reason-input{width:100%;box-sizing:border-box}.swap-picker-cancel,.swap-picker-confirm{flex:1;padding:10px 14px;font-size:.9rem;font-weight:600;border-radius:var(--radius);cursor:pointer;transition:all .15s ease}.swap-picker-confirm:disabled{opacity:.4;cursor:not-allowed}.gm-egg-dialog{position:relative;max-width:520px;width:90%;padding:56px 44px 92px;text-align:center;overflow:hidden;color:#3a2610;background:radial-gradient(ellipse at 50% 100%,rgba(120,70,20,.22),transparent 62%),radial-gradient(ellipse at 0% 0%,rgba(255,232,175,.38),transparent 58%),radial-gradient(ellipse at 100% 0%,rgba(210,160,85,.28),transparent 58%),linear-gradient(160deg,#f2e5bf,#e9d5a2,#dcc382);border:1px solid rgba(120,80,30,.38);border-radius:6px 22px 4px 20px;box-shadow:inset 0 0 70px #78461452,inset 0 0 12px #5a320f38,0 32px 80px #0000008c,0 10px 22px #00000061;animation:gmEggAppear .5s cubic-bezier(.34,1.56,.64,1)}.gm-egg-dialog:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.55;background-image:radial-gradient(circle at 15% 25%,rgba(90,50,15,.09) 1.2px,transparent 2px),radial-gradient(circle at 65% 55%,rgba(130,85,30,.07) 1px,transparent 2px),radial-gradient(circle at 85% 15%,rgba(80,45,10,.08) 1.3px,transparent 2px),radial-gradient(circle at 40% 85%,rgba(110,70,25,.06) 1px,transparent 2px);background-size:90px 90px,70px 70px,110px 110px,80px 80px;mix-blend-mode:multiply}.gm-egg-dialog:after{content:"";position:absolute;top:0;bottom:0;left:50%;width:1px;background:linear-gradient(to bottom,transparent 0%,rgba(90,50,15,.1) 14%,rgba(90,50,15,.16) 50%,rgba(90,50,15,.1) 86%,transparent 100%);transform:translate(-50%);pointer-events:none}@keyframes gmEggAppear{0%{opacity:0;transform:scale(.86) rotate(-1.5deg)}60%{opacity:1}to{transform:scale(1) rotate(0)}}.gm-egg-dialog.closing{animation:gmEggDisappear .3s ease forwards}.gm-modal-backdrop.closing{animation:gmEggBackdropFade .3s ease forwards}@keyframes gmEggDisappear{to{opacity:0;transform:scale(.88) rotate(1deg)}}@keyframes gmEggBackdropFade{to{opacity:0}}.gm-egg-page{position:relative;z-index:2}.gm-egg-quote{position:relative;padding:0 18px;opacity:0;transform:translateY(10px);animation:gmEggQuoteFadeIn .55s ease forwards}.gm-egg-page>.gm-egg-quote:first-child{animation-delay:.15s}.gm-egg-page>.gm-egg-quote:last-child{animation-delay:.7s}.gm-egg-quote:before{content:"“";position:absolute;top:-44px;inset-inline-start:-6px;font-family:Georgia,Palatino Linotype,Book Antiqua,serif;font-size:110px;line-height:1;color:#78461438;font-style:italic;pointer-events:none;user-select:none;z-index:0}@keyframes gmEggQuoteFadeIn{to{opacity:1;transform:translateY(0)}}.gm-egg-quote blockquote{position:relative;font-family:Georgia,Palatino Linotype,David,Times New Roman,serif;font-size:1.1rem;line-height:1.95;color:#3a2610;font-style:italic;margin:0 0 10px;padding:0 8px;z-index:1}.gm-egg-quote cite{position:relative;display:block;font-family:Georgia,Palatino Linotype,serif;font-size:.88rem;color:#6d4418;font-style:normal;font-weight:500;letter-spacing:.02em;z-index:1}.gm-egg-ornament{display:flex;justify-content:center;gap:18px;margin:30px 0;font-family:Georgia,Palatino Linotype,serif;font-size:1.35rem;line-height:1;color:#6e41148c;opacity:0;animation:gmEggQuoteFadeIn .4s ease .5s forwards}.gm-egg-ornament span:nth-child(2){font-size:1.55rem;transform:translateY(-1px)}.gm-egg-seal-wrap{position:absolute;left:50%;bottom:14px;transform:translate(-50%);opacity:0;z-index:3;animation:gmEggSealStamp .5s cubic-bezier(.34,1.56,.64,1) 1.05s forwards}@keyframes gmEggSealStamp{0%{opacity:0;transform:translate(-50%) scale(1.7)}70%{opacity:1}to{opacity:1;transform:translate(-50%) scale(1)}}.gm-egg-seal{display:block;width:68px;height:68px;padding:0;border:2.5px solid rgba(100,55,15,.35);box-shadow:inset 0 0 0 3px #64370f1f;background:url(./icon-192-DwVF8e2r.png) center / contain no-repeat;border-radius:50%;cursor:pointer;transform:rotate(-6deg);filter:sepia(.35) saturate(.7) drop-shadow(0 5px 10px rgba(60,30,5,.38)) drop-shadow(0 2px 3px rgba(30,15,0,.35));transition:transform .25s cubic-bezier(.34,1.56,.64,1),filter .25s ease}.gm-egg-seal:hover{transform:rotate(-2deg) scale(1.08);filter:sepia(.35) saturate(.7) drop-shadow(0 8px 16px rgba(60,30,5,.45)) drop-shadow(0 2px 4px rgba(30,15,0,.4))}.gm-egg-seal:active{transform:rotate(-4deg) scale(.96);transition-duration:.1s}.gm-egg-seal:focus-visible{outline:2px solid rgba(120,70,20,.6);outline-offset:5px;border-radius:50%}#app-title{cursor:pointer;-webkit-user-select:none;user-select:none}#app-title:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:6px}.app-logo-img{display:inline-block;width:1.55em;height:1.55em;vertical-align:-.34em;margin-inline-end:.5em;flex-shrink:0;object-fit:contain;opacity:.85;-webkit-mask:radial-gradient(circle at 50% 50%,#000 48%,transparent 72%);mask:radial-gradient(circle at 50% 50%,#000 48%,transparent 72%);-webkit-user-select:none;user-select:none;transform-origin:center;transition:transform .45s cubic-bezier(.34,1.56,.64,1),filter .3s ease,opacity .3s ease;filter:drop-shadow(0 0 6px rgba(91,160,232,.35))}[data-theme=light] .app-logo-img{opacity:.78;filter:drop-shadow(0 0 5px rgba(45,104,184,.28))}#app-title:hover .app-logo-img{opacity:1;transform:rotate(-6deg) scale(1.08);filter:drop-shadow(0 0 9px rgba(103,184,247,.55))}@media(prefers-reduced-motion:reduce){.app-logo-img{transition:opacity .2s ease}#app-title:hover .app-logo-img{transform:none}}[data-theme=light] .gm-modal-backdrop{background:#c8cddc99}[data-theme=light] .gm-egg-dialog{background:radial-gradient(ellipse at 50% 100%,rgba(140,90,30,.14),transparent 62%),radial-gradient(ellipse at 0% 0%,rgba(255,242,200,.52),transparent 58%),radial-gradient(ellipse at 100% 0%,rgba(220,180,110,.3),transparent 58%),linear-gradient(160deg,#faf0d4,#f2e0b5,#e6cf93);border:1px solid rgba(120,80,30,.28);box-shadow:inset 0 0 60px #78461438,inset 0 0 10px #5a320f24,0 24px 64px #3c280a38,0 8px 18px #3c280a1f}.gm-patronus-overlay{position:fixed;inset:0;z-index:200003;pointer-events:none;overflow:hidden}.gm-patronus-veil{position:absolute;inset:0;background:radial-gradient(ellipse at 50% 42%,#0a122e4d,#0408188c);opacity:0;animation:gm-patronus-veil 5s ease-in-out forwards}@keyframes gm-patronus-veil{0%{opacity:0}12%{opacity:1}78%{opacity:1}to{opacity:0}}.gm-patronus-x{position:absolute;left:0;top:0;animation:gm-patronus-x 4.6s cubic-bezier(.32,.12,.68,.9) forwards}@keyframes gm-patronus-x{0%{transform:translate(106vw)}to{transform:translate(-34vw)}}.gm-patronus-y{animation:gm-patronus-y 4.6s ease-in-out forwards}@keyframes gm-patronus-y{0%{transform:translateY(58vh)}18%{transform:translateY(40vh)}34%{transform:translateY(48vh)}52%{transform:translateY(32vh)}70%{transform:translateY(40vh)}to{transform:translateY(24vh)}}.gm-patronus-doe{width:clamp(150px,40vw,250px);aspect-ratio:280 / 190;background-repeat:no-repeat;background-position:0% center;background-size:1200% 100%;filter:drop-shadow(0 0 9px rgba(190,230,255,.85)) drop-shadow(0 0 24px rgba(120,190,255,.55)) drop-shadow(0 0 56px rgba(90,160,255,.35));transform:scaleX(-1);opacity:0;animation-name:gm-patronus-gallop,gm-patronus-bound,gm-patronus-appear;animation-duration:.8s,.8s,4.6s;animation-timing-function:steps(12,jump-none),ease-in-out,ease-in-out;animation-iteration-count:infinite,infinite,1;animation-fill-mode:none,none,forwards}@keyframes gm-patronus-gallop{0%{background-position-x:0%}to{background-position-x:100%}}@keyframes gm-patronus-bound{0%,to{rotate:-3deg}50%{rotate:3deg}}@keyframes gm-patronus-appear{0%{opacity:0}8%{opacity:1}88%{opacity:1}to{opacity:0}}.gm-patronus-spell{position:absolute;left:50%;top:72%;transform:translate(-50%,-50%);opacity:0;animation:gm-patronus-spell 5s ease-in-out forwards;will-change:opacity,transform}.gm-patronus-spell-inner{display:flex;align-items:center;gap:10px;animation:gm-patronus-spell-float 3.2s ease-in-out infinite}@keyframes gm-patronus-spell-float{0%,to{transform:translateY(0) rotate(-.5deg)}50%{transform:translateY(-6px) rotate(.5deg)}}.gm-patronus-spell-text{position:relative;font-size:clamp(1.4rem,6.5vw,2.6rem);font-weight:600;letter-spacing:.08em;color:#eef8ff;white-space:nowrap;text-shadow:0 0 9px rgba(200,234,255,.9),0 0 22px rgba(120,190,255,.65),0 0 46px rgba(90,160,255,.45);animation:gm-patronus-spell-writein 5s ease-out forwards,gm-patronus-spell-breathe 2.6s ease-in-out .7s infinite}.gm-patronus-spell-text:after{content:attr(data-text);position:absolute;inset:0;background:linear-gradient(105deg,transparent 38%,rgba(255,255,255,.92) 50%,transparent 62%);background-size:240% 100%;background-position:130% 0;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;pointer-events:none;animation:gm-patronus-spell-shine 1.9s linear 2s infinite}@keyframes gm-patronus-spell-writein{0%,30%{clip-path:inset(-40% -16% -40% 100%)}50%,to{clip-path:inset(-40% -16% -40% -16%)}}@keyframes gm-patronus-spell-breathe{0%,to{text-shadow:0 0 9px rgba(200,234,255,.9),0 0 20px rgba(120,190,255,.6),0 0 40px rgba(90,160,255,.4)}50%{text-shadow:0 0 14px rgba(222,244,255,1),0 0 32px rgba(150,205,255,.88),0 0 64px rgba(110,180,255,.62)}}@keyframes gm-patronus-spell-shine{0%{background-position:130% 0}55%,to{background-position:-130% 0}}.gm-patronus-wand{width:clamp(50px,14vw,78px);height:auto;overflow:visible;flex-shrink:0;transform-origin:68% 78%;animation:gm-patronus-wand-cast 5s ease-out forwards}@keyframes gm-patronus-wand-cast{0%,30%{transform:rotate(0)}37%{transform:rotate(-16deg)}44%{transform:rotate(10deg)}53%{transform:rotate(0)}to{transform:rotate(0)}}.gm-patronus-wand-stick{stroke:#e8d6b4;stroke-width:3.6;stroke-linecap:round;filter:drop-shadow(0 0 2px rgba(40,26,12,.6))}.gm-patronus-wand-tip{fill:#f4fbff;filter:drop-shadow(0 0 6px rgba(220,240,255,1)) drop-shadow(0 0 16px rgba(120,190,255,.9));animation:gm-patronus-wand-tip .6s ease-in-out infinite alternate}@keyframes gm-patronus-wand-tip{0%{opacity:.65}to{opacity:1}}.gm-patronus-wand-spark{stroke:#f4fbff;stroke-width:1.4;stroke-linecap:round;transform-box:fill-box;transform-origin:center;filter:drop-shadow(0 0 5px rgba(200,234,255,.95));animation:gm-patronus-wand-spark 1.1s ease-in-out infinite}@keyframes gm-patronus-wand-spark{0%,to{opacity:.35;transform:scale(.7) rotate(0)}50%{opacity:1;transform:scale(1) rotate(45deg)}}@keyframes gm-patronus-spell{0%{opacity:0;transform:translate(-50%,-50%) scale(.9);filter:blur(4px)}26%{opacity:0;transform:translate(-50%,-50%) scale(.9);filter:blur(4px)}42%{opacity:1;transform:translate(-50%,-50%) scale(1);filter:blur(0)}82%{opacity:1;transform:translate(-50%,-50%) scale(1);filter:blur(0)}to{opacity:0;transform:translate(-50%,-50%) scale(1.04);filter:blur(2px)}}.gm-patronus-spark{position:absolute;border-radius:50%;background:radial-gradient(circle,rgba(244,251,255,.95) 0%,rgba(150,205,255,.55) 55%,transparent 75%);animation:gm-patronus-spark 1s ease-out forwards;will-change:transform,opacity}.gm-patronus-wisp{filter:blur(5px);background:radial-gradient(circle,rgba(205,233,255,.7) 0%,rgba(120,185,255,.35) 55%,transparent 78%)}@keyframes gm-patronus-spark{0%{opacity:.9;transform:translate(0) scale(1)}to{opacity:0;transform:translate(var(--dx, 40px),var(--dy, 8px)) scale(.25)}}.gm-patronus-reduced .gm-patronus-veil{animation:gm-patronus-veil 3s ease-in-out forwards}.gm-patronus-reduced .gm-patronus-x{left:50%;top:36%;animation:none;transform:translate(-50%,-50%)}.gm-patronus-reduced .gm-patronus-y{animation:none}.gm-patronus-reduced .gm-patronus-doe{background-position-x:45%;animation:gm-patronus-appear 3s ease-in-out forwards}.gm-patronus-reduced .gm-patronus-wand-tip,.gm-patronus-reduced .gm-patronus-wand-spark,.gm-patronus-reduced .gm-patronus-spell-inner,.gm-patronus-reduced .gm-patronus-wand{animation:none}.gm-patronus-reduced .gm-patronus-spell{animation:gm-patronus-appear 3s ease-in-out forwards}.gm-patronus-reduced .gm-patronus-spell-text{clip-path:none;animation:none}.gm-patronus-reduced .gm-patronus-spell-text:after{display:none}.gm-patronus-reduced .gm-patronus-spark{display:none}.beta-badge{position:relative;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.beta-badge:after{content:"";position:absolute;inset:-10px -8px}.lf-controls{display:inline-flex;gap:4px;vertical-align:middle}.lf-open-btn,.lf-info-btn{padding:2px 6px;font-size:.85rem;line-height:1.1;cursor:pointer}.lf-open-btn[disabled]{opacity:.45;cursor:not-allowed}.lf-backdrop{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:10000}.lf-modal{background:var(--bg-card, #fff);border-radius:12px;width:min(560px,94vw);max-height:90vh;display:flex;flex-direction:column;box-shadow:0 12px 40px #0000004d;color:var(--text, inherit)}.lf-header{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid var(--border, #e0e0e0);flex:0 0 auto}.lf-header h3{margin:0;font-size:1.05rem}.lf-close{background:none;border:none;font-size:1.2rem;cursor:pointer;color:var(--text-muted, #999);padding:4px 8px;border-radius:4px}.lf-close:hover{background:var(--bg-hover, #f0f0f0)}.lf-body{padding:14px 18px;display:flex;flex-direction:column;gap:12px;flex:1 1 auto;min-height:0;overflow-y:auto}.lf-target-line{margin:0;font-size:.95rem}.lf-target-equation{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:.95rem}.lf-target-stepper{display:inline-flex;align-items:center;gap:0;border:1px solid var(--border, #ccc);border-radius:6px;overflow:hidden;background:var(--bg-card, transparent);flex:0 0 auto}.lf-target-stepper .lf-stepper-btn{min-width:32px;height:32px;padding:0 10px;font-size:1.05rem;line-height:1;border:none;background:transparent;color:var(--text, inherit);cursor:pointer}.lf-target-stepper .lf-stepper-btn:hover{background:#8080801f}.lf-target-stepper .lf-stepper-input{width:44px;height:32px;text-align:center;border:none;border-left:1px solid var(--border, #ccc);border-right:1px solid var(--border, #ccc);background:transparent;color:var(--text, inherit);font-variant-numeric:tabular-nums;font-weight:600;-moz-appearance:textfield;appearance:textfield}.lf-target-stepper .lf-stepper-input::-webkit-outer-spin-button,.lf-target-stepper .lf-stepper-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.lf-target-text{flex:1 1 auto}.lf-context-bar{display:flex;align-items:center;gap:8px;font-size:.8rem;color:var(--text-muted, #888);padding:6px 8px;background:var(--bg-subtle, rgba(0, 0, 0, .03));border-radius:6px}.lf-context-label{flex:0 0 auto;white-space:nowrap}.lf-context-track{flex:1 1 auto;height:6px;background:#8080802e;border-radius:3px;overflow:hidden;position:relative}.lf-context-fill{height:100%;opacity:.55;border-radius:3px}.lf-context-value{flex:0 0 auto;font-variant-numeric:tabular-nums}.lf-bar-summary{display:flex;flex-direction:column;gap:4px}.lf-bar-number{display:flex;align-items:baseline;gap:8px}.lf-bar-number-label{font-size:.85rem;color:var(--text-muted, #888)}.lf-bar-number-value{font-size:1.6rem;font-variant-numeric:tabular-nums;color:var(--text, inherit)}.lf-bar-number-raw{font-size:.9rem;font-variant-numeric:tabular-nums;color:var(--text-muted, #888);opacity:.65}.lf-bar-number-raw[hidden]{display:none}.lf-bar-breakdown{font-family:monospace;font-size:.8rem;color:var(--text-muted, #888)}.lf-bar-breakdown[hidden]{display:none}.lf-bar-breakdown-toggle{margin-inline-start:auto;background:none;border:1px solid transparent;color:var(--text-muted, #888);font-size:.78rem;cursor:pointer;padding:2px 8px;border-radius:4px;line-height:1.4}.lf-bar-breakdown-toggle:hover{background:#ffffff0d;border-color:var(--border, rgba(255, 255, 255, .1));color:var(--text, inherit)}.lf-bar-clamp-warn{font-size:.8rem;color:var(--warning, #b87000)}.lf-stack{display:flex;flex-direction:column;gap:8px}.lf-stack-row{border:1px solid var(--border, rgba(0, 0, 0, .1));border-radius:10px;background:var(--bg-subtle, rgba(0, 0, 0, .02));padding:8px;transition:border-color .15s ease,box-shadow .15s ease}.lf-stack-row.active{border-color:var(--accent, #3a7cc5);box-shadow:0 0 0 2px #3a7cc52e}.lf-stack-row-picker{padding:10px 12px 12px;background:var(--bg-card, #fff)}.lf-stack-row-head{display:flex;align-items:center;gap:8px;margin-bottom:10px}.lf-stack-row-head-title{flex:1 1 auto;font-size:.95rem;font-weight:600;color:var(--text, inherit)}.lf-stack-row-picker .lf-stack-remove{position:static}.lf-stack-main{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.lf-stack-main>.lf-ref-chip{flex:1 1 180px;min-width:0}.lf-stack-hours{display:flex;align-items:center;gap:6px;flex:0 0 auto}.lf-stack-row-empty .lf-stack-main>.lf-ref-chip{flex:1 1 100%}.lf-stack-unit{font-size:.85rem;color:var(--text-muted, #888)}.lf-stack-eq{font-size:.9rem;color:var(--text-muted, #888);font-variant-numeric:tabular-nums;min-width:56px;text-align:end}.lf-stack-eq strong{color:var(--text, inherit);font-size:1rem}.lf-stack-remove{background:none;border:1px solid transparent;color:var(--text-muted, #888);width:26px;height:26px;border-radius:4px;cursor:pointer;font-size:.9rem;line-height:1;padding:0}.lf-stack-remove:hover{color:var(--danger, #e74c3c);border-color:var(--danger, #e74c3c)}.lf-stack-add{align-self:flex-start;background:none;border:1px dashed var(--border, rgba(0, 0, 0, .2));color:var(--text-muted, #888);padding:6px 12px;border-radius:6px;cursor:pointer;font-size:.85rem}.lf-stack-add:hover{border-color:var(--accent, #3a7cc5);color:var(--accent, #3a7cc5)}.lf-lhs-extras{display:flex;flex-direction:column;gap:6px;margin-top:2px}.lf-lhs-extras .lf-stack-row-lhs{padding:6px 8px;background:var(--bg-subtle, rgba(0, 0, 0, .02));border-style:dashed}.lf-lhs-extras .lf-stack-row-lhs .lf-stack-main{font-size:.9rem}.lf-stack-plus{font-weight:700;color:var(--accent, #3a7cc5);font-size:1rem;padding-inline-end:2px}.lf-stack-add-lhs{align-self:flex-start;font-size:.8rem;padding:4px 10px}.lf-lhs-eq-label{font-size:.85rem;color:var(--text-muted, #888);padding-top:2px}@media(max-width:520px){.lf-stack-main>.lf-ref-chip{flex:1 1 100%}.lf-stack-hours{flex:1 1 100%;justify-content:flex-end}.lf-stack-remove{position:absolute;inset-inline-end:8px;inset-block-start:8px}.lf-stack-row{position:relative;padding-inline-end:36px}}.lf-stepper{display:inline-flex;align-items:center;border:1px solid var(--border, rgba(0, 0, 0, .15));border-radius:6px;overflow:hidden;background:var(--bg-card, #fff)}.lf-stepper-btn{background:none;border:none;width:28px;height:28px;cursor:pointer;font-size:1rem;color:var(--text, inherit);line-height:1;padding:0}.lf-stepper-btn:hover{background:var(--bg-hover, rgba(0, 0, 0, .05))}.lf-stepper-input{width:44px;border:none;border-inline:1px solid var(--border, rgba(0, 0, 0, .15));background:none;color:var(--text, inherit);text-align:center;font-size:.9rem;padding:4px 2px;font-variant-numeric:tabular-nums;-moz-appearance:textfield}.lf-stepper-input::-webkit-outer-spin-button,.lf-stepper-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.lf-ref-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;border:1px solid var(--border, rgba(0, 0, 0, .15));border-radius:999px;background:var(--bg-card, #fff);color:var(--text, inherit);cursor:pointer;font-size:.85rem;min-height:28px}.lf-ref-chip:hover{border-color:var(--accent, #3a7cc5)}.lf-ref-chip.empty{border-style:dashed;color:var(--text-muted, #888)}.lf-ref-chip-swatch{width:10px;height:10px;border-radius:50%;flex:0 0 auto}.lf-ref-chip-name{font-weight:500}.lf-ref-chip-rate{color:var(--text-muted, #888);font-variant-numeric:tabular-nums;font-size:.8rem}.lf-ref-chip-caret{color:var(--text-muted, #888);font-size:.75rem;margin-inline-start:2px}.lf-picker{margin-top:10px;padding-top:10px;border-top:1px dashed var(--border, rgba(0, 0, 0, .12));display:flex;flex-direction:column;gap:10px}.lf-picker-bare{margin-top:0;padding-top:0;border-top:none}.lf-picker-title{font-size:.8rem;color:var(--text-muted, #888)}.lf-picker-empty{font-size:.85rem;color:var(--text-muted, #888);font-style:italic}.lf-chips{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:6px}.lf-chip{display:flex;align-items:center;gap:8px;padding:8px 10px;border:1px solid var(--border, rgba(0, 0, 0, .14));border-radius:8px;background:var(--bg-card, #fff);color:var(--text, inherit);cursor:pointer;font-size:.85rem;min-height:40px;border-inline-start:4px solid var(--chip-color, var(--accent, #3a7cc5));transition:border-color .12s ease,box-shadow .12s ease,background-color .12s ease,transform .12s ease}.lf-chip:hover{border-color:var(--chip-color, var(--accent, #3a7cc5));background:color-mix(in srgb,var(--chip-color, #3a7cc5) 6%,var(--bg-card, #fff));transform:translateY(-1px)}.lf-chip.selected{border-color:var(--accent, #3a7cc5);background:color-mix(in srgb,var(--chip-color, #3a7cc5) 10%,var(--bg-card, #fff));box-shadow:0 0 0 2px #3a7cc538}.lf-chip-name{flex:0 0 auto;font-weight:600;white-space:nowrap;color:var(--text, inherit)}.lf-chip-mini-bar{flex:1 1 auto;height:6px;background:#8080802e;border-radius:3px;overflow:hidden;min-width:32px}.lf-chip-mini-fill{display:block;height:100%;background:var(--chip-color, var(--accent, #3a7cc5));border-radius:3px}.lf-chip-value{flex:0 0 auto;font-variant-numeric:tabular-nums;color:var(--text-muted, #888);font-size:.78rem;font-weight:500}.lf-rate-picker{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:.8rem}.lf-rate-label{color:var(--text-muted, #888)}.lf-rate-opt{padding:3px 8px;border:1px solid var(--border, rgba(0, 0, 0, .15));border-radius:999px;background:var(--bg-card, #fff);color:var(--text, inherit);cursor:pointer;font-size:.78rem}.lf-rate-opt:hover{border-color:var(--accent, #3a7cc5)}.lf-rate-opt.selected{background:var(--accent, #3a7cc5);color:#fff;border-color:var(--accent, #3a7cc5)}.lf-validation-msg{font-size:.85rem;color:var(--danger, #e74c3c);padding:6px 10px;background:#e74c3c14;border-inline-start:3px solid var(--danger, #e74c3c);border-radius:4px}.lf-footer{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:12px 18px;border-top:1px solid var(--border, #e0e0e0);flex:0 0 auto;background:var(--bg-card, #fff)}.lf-footer-right{display:flex;gap:8px}@media(max-width:480px){.lf-stack-main{row-gap:10px}.lf-stack-eq{margin-inline-start:0}.lf-chips{grid-template-columns:1fr}}.lf-info-popover-wrap{width:min(380px,92vw)}.lf-info-popover{background:var(--bg-card, #fff);color:var(--text, inherit);border:1px solid var(--border, #d0d0d0);border-radius:8px;box-shadow:0 8px 24px #0000002e;padding:10px 12px;font-size:.9rem}.lf-info-header{font-size:.95rem}.lf-info-subheader{font-size:.8rem;color:var(--text-muted, #666);margin-bottom:6px}.lf-info-list{list-style:none;padding:0;margin:0 0 4px}.lf-info-row{padding:3px 0;font-size:.88rem;line-height:1.45}.lf-info-intro{font-size:.88rem;line-height:1.45;margin-bottom:6px}.lf-info-summary{font-size:.88rem;line-height:1.45;margin-top:6px;padding-top:6px;border-top:1px dashed var(--border, rgba(0, 0, 0, .1))}.lf-info-when{font-size:.75rem;color:var(--text-muted, #888);margin-top:6px;text-align:end}.lf-info-missing{opacity:.6}.lf-info-note{color:var(--text-muted, #888);font-style:italic}.lf-info-stale{color:var(--warning, #b87000);font-family:inherit}.lf-info-clamp{font-size:.85rem;color:var(--text-muted, #666);margin-top:4px}.lf-info-warn{margin-top:6px;padding:6px 8px;background:#ffbe001f;border-inline-start:3px solid var(--warning, #b87000);font-size:.85rem}.task-panel-view-root{animation:fadeIn .25s ease}.task-panel-trigger{-webkit-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:24px;height:24px;padding:0;background:transparent;border:1px solid transparent;border-radius:7px;color:var(--text-muted);font-size:.9rem;line-height:1;cursor:pointer;transition:background .14s ease,border-color .14s ease,color .14s ease,transform .14s ease,box-shadow .14s ease}.task-panel-trigger:hover,.task-panel-trigger:focus-visible{background:var(--accent-glow);border-color:var(--accent);color:var(--accent);outline:none;transform:translateY(-1px)}.task-panel-trigger[aria-expanded=true]{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:0 2px 8px #0d122040}.task-panel-menu-wrap{position:relative;display:inline-flex}.task-panel-menu{position:fixed;left:0;top:0;min-width:168px;max-width:min(240px,calc(100vw - 16px));max-height:320px;overflow-y:auto;background:linear-gradient(180deg,#fff,#f5f7fb);border:1px solid #c5c8d0;border-radius:14px;box-shadow:0 1px #ffffffb3 inset,0 14px 36px #0d122052,0 4px 10px #0d12202e;padding:8px;display:flex;flex-direction:column;gap:6px;z-index:1000;text-transform:none;font-weight:500;font-size:.78rem;color:#1a1d27;transform-origin:top right;animation:taskPanelMenuOpen .16s cubic-bezier(.2,.9,.3,1.2)}@keyframes taskPanelMenuOpen{0%{opacity:0;transform:translateY(-6px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.task-panel-menu .task-panel-menu-item{position:relative;width:100%;justify-content:flex-start;padding:9px 14px 9px 32px;background:#fff;border:1px solid #dde0e8;border-radius:10px;color:#1a1d27;font-weight:700;font-size:.82rem;letter-spacing:.01em;box-shadow:0 1px #ffffffe6 inset,0 1px 3px #0d122014;transition:background .14s ease,border-color .14s ease,color .14s ease,transform .14s ease,box-shadow .14s ease}.task-panel-menu .task-panel-menu-item:after{content:"←";position:absolute;inset-inline-end:12px;inset-block-start:50%;transform:translateY(-50%);font-size:.85rem;font-weight:700;color:#9aa1ae;transition:color .14s ease,transform .14s ease}.task-panel-menu .task-panel-menu-item:hover,.task-panel-menu .task-panel-menu-item:focus-visible{background:var(--accent-glow);border-color:var(--accent);color:var(--accent);transform:translate(2px);box-shadow:0 1px #ffffffe6 inset,0 4px 10px #0d122024;outline:none}.task-panel-menu .task-panel-menu-item:hover:after,.task-panel-menu .task-panel-menu-item:focus-visible:after{color:var(--accent);transform:translateY(-50%) translate(-3px)}.task-panel-menu .task-panel-menu-item:active{transform:translate(2px) scale(.98)}.task-panel-menu[hidden]{display:none}.task-panel-hover{-webkit-appearance:none;appearance:none;display:inline-flex;align-items:center;gap:4px;padding:4px 12px;background:var(--bg-card);border:1px solid var(--border);border-radius:12px;color:var(--text);font:inherit;font-size:.82rem;font-weight:600;white-space:nowrap;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast)}.task-panel-hover:hover,.task-panel-hover:focus-visible,.task-panel-hover:active{background:var(--accent-glow);border-color:var(--accent);color:var(--accent);outline:none}.task-panel-hover.task-panel-trigger{background:transparent;border:1px solid transparent;border-radius:6px;padding:0;width:22px;height:22px;justify-content:center}.task-panel-hover.task-panel-trigger:hover,.task-panel-hover.task-panel-trigger:focus-visible,.task-panel-hover.task-panel-trigger:active{background:var(--accent-glow);border-color:var(--accent);color:var(--accent)}.task-panel-topbar{display:flex;align-items:center;gap:20px;padding:16px 20px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:20px;flex-wrap:wrap}.task-panel-identity{flex:1;min-width:240px}.task-panel-name{font-size:1.5rem;font-weight:700;margin:0 0 6px;color:var(--text)}.task-panel-badges{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:6px}.task-panel-hot-summary{font-size:.82rem;color:var(--text-muted);display:flex;align-items:center;gap:6px;flex-wrap:wrap}.task-panel-kpis{display:flex;gap:12px;flex-wrap:wrap}.task-panel-kpi{display:flex;flex-direction:column;align-items:center;padding:8px 14px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);min-width:76px}.task-panel-kpi-value{font-size:1.25rem;font-weight:700;color:var(--accent);line-height:1.2}.task-panel-kpi-label{font-size:.7rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.task-panel-kpi.kpi-danger{border-color:var(--danger);background:var(--danger-glow)}.task-panel-kpi.kpi-danger .task-panel-kpi-value{color:var(--danger)}.task-panel-kpi.kpi-ok{border-color:var(--success)}.task-panel-kpi.kpi-ok .task-panel-kpi-value{color:var(--success)}.task-panel-grid{display:grid;grid-template-columns:3fr 2fr;gap:20px}@media(max-width:1100px){.task-panel-grid{grid-template-columns:1fr}}.task-panel-left,.task-panel-right{display:flex;flex-direction:column;gap:20px;min-width:0}.task-panel-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:18px 20px}.task-panel-card-title{font-size:1.05rem;font-weight:700;margin:0 0 12px;color:var(--text)}.tp-needs-attention{background:var(--danger-glow);border:1px solid var(--danger);border-radius:var(--radius);padding:12px 16px;margin-bottom:20px}.tp-needs-title{font-size:1rem;font-weight:700;color:var(--danger);margin:0 0 8px}.tp-needs-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:4px}.tp-needs-item{display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-size:.85rem;padding:4px 0}.tp-needs-day{font-weight:600;color:var(--text);min-width:60px}.tp-needs-time{color:var(--text-muted);font-variant-numeric:tabular-nums}.tp-needs-slot{color:var(--text);font-weight:500}.task-panel-timeline-card{overflow:hidden}.task-panel-timeline{display:flex;flex-direction:column;gap:8px;overflow-x:auto}.tp-timeline-ruler{position:relative;height:18px;margin-inline-start:72px;border-bottom:1px dashed var(--border)}.tp-ruler-tick{position:absolute;top:0;transform:translate(50%);font-size:.7rem;color:var(--text-muted);font-variant-numeric:tabular-nums}[dir=rtl] .tp-ruler-tick{transform:translate(-50%)}.tp-lane{display:grid;grid-template-columns:72px 1fr;align-items:stretch;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;background:var(--bg)}.tp-lane-header{display:flex;align-items:center;justify-content:center;padding:6px 8px;background:var(--bg-hover);color:var(--text);font-weight:600;font-size:.82rem;border-inline-end:1px solid var(--border);text-align:center}.tp-lane-body{position:relative;background:linear-gradient(to right,transparent 0 calc(100% / 6 - 1px),var(--border) calc(100% / 6 - 1px) calc(100% / 6)) repeat-x;background-size:calc(100% / 6) 100%;min-height:48px}.tp-hot-band{position:absolute;top:0;bottom:0;background:#f59e0b2e;border-inline-start:1px dashed rgba(245,158,11,.6);border-inline-end:1px dashed rgba(245,158,11,.6);pointer-events:none;z-index:1}.tp-shift{position:absolute;top:4px;bottom:4px;background:var(--bg-card);border:1px solid var(--border);border-inline-start:3px solid var(--tp-shift-color, var(--accent));border-radius:6px;padding:4px 6px 4px 8px;overflow:hidden;z-index:2;cursor:pointer;display:flex;flex-direction:column;gap:2px;min-width:42px;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.tp-shift:hover{transform:translateY(-1px);box-shadow:0 2px 8px #0003}.tp-shift.tp-shift-continues{opacity:.55;border-style:dashed}.tp-shift-time{font-size:.7rem;color:var(--text-muted);font-variant-numeric:tabular-nums;font-weight:600;flex:0 0 auto}.tp-shift-ghost-label{font-size:.7rem;color:var(--text-muted);font-style:italic}.tp-shift-slots{display:flex;flex-direction:column;gap:2px;overflow:hidden}.tp-slot-cell{display:flex;align-items:center;gap:4px;padding:2px 4px;border-radius:4px;font-size:.72rem;line-height:1.2;min-height:20px;overflow:hidden}.tp-slot-filled{background:var(--bg);border:1px solid var(--border);border-inline-start:2px solid var(--tp-slot-group, var(--accent))}.tp-slot-level{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:16px;padding:0 4px;border-radius:8px;font-size:.65rem;font-weight:700;color:#fff;flex:0 0 auto}.tp-slot-name{font-weight:600;color:var(--text);cursor:pointer;text-decoration:underline dotted;flex:1 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tp-slot-sublabel{font-size:.68rem;color:var(--text-muted);flex:0 0 auto}.tp-slot-actions{display:inline-flex;gap:2px;flex:0 0 auto}.tp-slot-actions .btn-icon-sm{padding:0 4px;background:transparent;border:0;cursor:pointer;font-size:.82rem;line-height:1;color:var(--text-muted)}.tp-slot-actions .btn-icon-sm:hover{color:var(--accent)}.tp-slot-unfilled{border:2px solid var(--danger);background:repeating-linear-gradient(45deg,#e74c3c14 0 6px,#e74c3c33 6px 12px);color:var(--danger);font-weight:700;animation:tp-unfilled-pulse 2s ease-in-out infinite;justify-content:center}.tp-slot-empty-label{font-weight:700;letter-spacing:.3px}@keyframes tp-unfilled-pulse{0%,to{border-color:var(--danger);box-shadow:0 0 #e74c3c00}50%{border-color:#c0392b;box-shadow:0 0 0 3px #e74c3c40}}.tp-day-stack{display:flex;flex-direction:column;gap:10px}.tp-day-card{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.tp-day-card[open]{border-color:var(--accent)}.tp-day-card-summary{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;cursor:pointer;font-weight:600;color:var(--text);background:var(--bg-hover);list-style:none;user-select:none}.tp-day-card-summary::-webkit-details-marker{display:none}.tp-day-card-title{font-size:.95rem}.tp-day-card-count{font-size:.78rem;color:var(--text-muted)}.tp-day-card-body{padding:10px 14px;display:flex;flex-direction:column;gap:10px}.tp-day-empty{margin:0;font-size:.85rem}.tp-mobile-shift{border:1px solid var(--border);border-radius:6px;padding:8px 10px;background:var(--bg-card)}.tp-mobile-shift-header{display:flex;align-items:center;gap:8px;margin-bottom:6px}.tp-mobile-shift-time{font-weight:700;font-variant-numeric:tabular-nums;color:var(--text)}.tp-shift-hot-badge{font-size:.72rem;padding:2px 8px;border-radius:10px;background:#f59e0b2e;color:#b87000;border:1px solid rgba(245,158,11,.45);font-weight:600}.tp-mobile-slots{display:flex;flex-direction:column;gap:4px}.tp-mobile-slots .tp-slot-cell{font-size:.82rem;padding:6px 8px;min-height:28px}.tp-mobile-shift-split{border-inline-start:3px solid var(--info)}.tp-split-tag{font-size:.7rem;font-weight:600;padding:1px 7px;border-radius:8px;background:var(--accent-glow);color:var(--info);border:1px solid var(--border)}.tp-split-halves{display:flex;flex-direction:column;gap:8px;margin-inline-start:10px;padding-inline-start:10px;border-inline-start:2px solid var(--border)}.tp-split-half{display:flex;flex-direction:column;gap:4px}.tp-split-half-head{display:flex;align-items:center;gap:8px}.tp-split-half-ord{font-size:.72rem;font-weight:600;color:var(--text-muted)}.tp-split-half-time{font-weight:700;font-size:.82rem;font-variant-numeric:tabular-nums;color:var(--text)}.tp-subteam-group{border:1.5px solid #2c3e50;border-radius:8px;padding:6px 8px 8px;background:#2c3e5008;position:relative;display:flex;flex-direction:column;gap:4px}.tp-subteam-label{align-self:flex-end;font-size:.72rem;font-weight:700;color:#2c3e50;background:#fff;padding:0 6px;border-radius:10px;border:1px solid #2c3e50;line-height:1.4;margin-top:-14px;margin-inline-end:4px}.tp-subteam-slots{display:flex;flex-direction:column;gap:4px}.tp-shift-slots .tp-subteam-group{padding:4px 6px 6px}.tp-shift-slots .tp-subteam-slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:4px}.tp-req-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:4px}.tp-req-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:6px 8px;border-radius:4px;background:var(--bg);font-size:.82rem}.tp-req-row+.tp-req-row{border-top:1px solid var(--border)}.tp-req-count{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:22px;padding:0 6px;border-radius:11px;background:var(--accent);color:#fff;font-weight:700;font-size:.78rem;flex:0 0 auto;font-variant-numeric:tabular-nums}.tp-req-team{font-weight:600;color:var(--text);font-size:.82rem}.tp-req-chips{display:inline-flex;align-items:center;gap:4px;flex-wrap:wrap}.tp-req-chips .badge{margin:0}.tp-cert-forbidden{position:relative;opacity:.7;text-decoration:line-through}.tp-cert-forbidden:before{content:"🚫";font-size:.7em;margin-inline-end:2px;text-decoration:none;display:inline-block}.tp-level-lowprio{opacity:.6;text-decoration:line-through dotted}.tp-meta-list{display:flex;flex-direction:column;gap:2px}.tp-meta-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:6px 0;border-bottom:1px solid var(--border);font-size:.88rem}.tp-meta-row:last-child{border-bottom:none}.tp-meta-label{color:var(--text-muted)}.tp-meta-value{font-weight:600;color:var(--text)}.tp-meta-sublabel{color:var(--text);font-weight:600;margin-inline-start:6px;font-variant-numeric:tabular-nums}.ttt-actions{display:flex;gap:6px;margin-top:8px;padding-top:8px;border-top:1px solid var(--border)}.ttt-action-open-panel{flex:1;padding:6px 10px;background:var(--accent);color:#fff;border:0;border-radius:6px;font-size:.82rem;font-weight:600;cursor:pointer;transition:background var(--transition-fast)}.ttt-action-open-panel:hover{background:var(--accent-hover)}@media(max-width:760px){.task-panel-topbar{gap:12px;padding:12px 14px}.task-panel-name{font-size:1.2rem}.task-panel-kpis{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:8px}.task-panel-kpi{padding:6px 10px;min-width:0}.task-panel-kpi-value{font-size:1.05rem}.task-panel-card{padding:12px 14px}.task-panel-timeline{display:none}}@media(min-width:761px){.tp-day-stack{display:none}}.storage-usage-section{margin-top:.25rem}.storage-usage-header{display:flex;align-items:center;gap:8px}.storage-refresh-btn{font-size:1.1rem;line-height:1;opacity:.6;transition:opacity var(--transition-fast),transform var(--transition-normal)}.storage-refresh-btn:hover{opacity:1;transform:rotate(180deg)}.storage-wedge-alert{display:flex;align-items:flex-start;gap:8px;padding:10px 14px;border-radius:var(--radius);background:var(--danger-glow);border:1px solid var(--danger);color:var(--alert-error-text);font-size:.84rem;line-height:1.5;margin-bottom:14px}.storage-wedge-icon{font-size:1.1rem;flex-shrink:0;margin-top:1px}.storage-gauge{margin:12px 0 16px}.storage-gauge-labels{display:flex;justify-content:space-between;font-size:.82rem;margin-bottom:6px}.storage-gauge-used{font-weight:600;color:var(--text)}.storage-gauge-limit{color:var(--text-muted)}.storage-gauge-track{width:100%;height:10px;background:var(--bg);border-radius:5px;overflow:hidden;box-shadow:inset 0 1px 3px #00000026}.storage-gauge-fill{height:100%;border-radius:5px;transition:width var(--transition-slow) ease}.storage-tier-ok{background:linear-gradient(90deg,#1d9050,#27ae60)}.storage-tier-warning{background:linear-gradient(90deg,#e67e22,#f39c12)}.storage-tier-danger{background:linear-gradient(90deg,#c0392b,#e74c3c)}.storage-gauge-pct{display:block;text-align:end;font-size:.78rem;color:var(--text-muted);margin-top:4px}.storage-breakdown{display:flex;flex-direction:column;gap:6px}.storage-breakdown-row{display:flex;align-items:center;gap:10px;font-size:.82rem}.storage-breakdown-label{min-width:120px;flex-shrink:0;color:var(--text);text-align:start}.storage-breakdown-bar-bg{flex:1;height:6px;background:var(--bg);border-radius:3px;overflow:hidden;min-width:60px}.storage-breakdown-bar-fill{height:100%;border-radius:3px;background:var(--accent);opacity:.75;transition:width var(--transition-slow) ease}.storage-breakdown-value{font-size:.78rem;color:var(--text-muted);white-space:nowrap;min-width:70px;text-align:end}[data-theme=light] .storage-gauge-track,[data-theme=light] .storage-breakdown-bar-bg{background:var(--border);box-shadow:inset 0 1px 2px #0000000f}[data-theme=light] .storage-tier-ok{background:linear-gradient(90deg,#167a3e,#1e9e52)}[data-theme=light] .storage-tier-warning{background:linear-gradient(90deg,#d4860e,#e9a223)}[data-theme=light] .storage-tier-danger{background:linear-gradient(90deg,#b42d29,#d44440)}.workload-popup{position:fixed;z-index:99999;width:320px;background:var(--tooltip-bg);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 12px 40px var(--tooltip-shadow);padding:14px 16px 16px;color:var(--text);font-size:.85rem;line-height:1.45}.workload-popup.workload-popup-sheet{position:static;width:auto;border:none;box-shadow:none;padding:4px 2px 8px;background:transparent}.wp-header{margin-bottom:12px}.wp-name-row{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px}.wp-name{font-size:1rem;font-weight:600;color:var(--text)}.workload-popup-sheet .wp-name{display:none}.wp-close{background:transparent;border:none;color:var(--text-muted);cursor:pointer;font-size:1rem;line-height:1;padding:2px 6px;border-radius:4px;transition:background var(--transition-fast)}.wp-close:hover{background:#ffffff0f;color:var(--text)}[data-theme=light] .wp-close:hover{background:#0000000d}.wp-badges{display:flex;gap:4px;flex-wrap:wrap}.wp-primary{background:var(--accent-glow);border-radius:6px;padding:10px 12px;margin-bottom:14px}.wp-primary-num{display:flex;align-items:baseline;gap:6px;margin-bottom:2px}.wp-big{font-size:1.7rem;font-weight:700;color:var(--accent);line-height:1.1}.wp-unit{font-size:.85rem;color:var(--text);font-weight:500}.wp-primary-sub{font-size:.78rem;color:var(--text-muted)}.wp-section-label{font-size:.72rem;color:var(--text-muted);text-transform:none;letter-spacing:.02em;margin-bottom:6px}.wp-sparkline{display:grid;gap:4px;height:84px;margin-bottom:12px}.wp-spark-col{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;min-width:0;position:relative}.wp-spark-value{font-size:.65rem;color:var(--text-muted);line-height:1;margin-bottom:3px;white-space:nowrap;opacity:.85}.wp-spark-col.today .wp-spark-value{color:var(--accent);font-weight:600;opacity:1}.wp-spark-bar-wrap{width:100%;flex:1;display:flex;align-items:flex-end;justify-content:center;background:#ffffff0a;border-radius:3px;overflow:hidden;min-height:2px}[data-theme=light] .wp-spark-bar-wrap{background:#0000000d}.wp-spark-bar{width:100%;background:linear-gradient(180deg,#e67e22,var(--danger));border-radius:3px 3px 0 0;min-height:2px;transition:height var(--transition-slow) ease}.wp-spark-col.peak .wp-spark-bar{background:linear-gradient(180deg,#f39c12,#d35400)}.wp-spark-col.today .wp-spark-bar{background:linear-gradient(180deg,var(--accent-hover),var(--accent));box-shadow:0 0 0 1px var(--accent-glow)}.wp-spark-col.zero .wp-spark-bar-wrap:after{content:"";display:block;width:60%;height:2px;background:var(--text-muted);opacity:.35;border-radius:1px;margin-bottom:1px}.wp-spark-day{font-size:.72rem;color:var(--text-muted);margin-top:4px;line-height:1}.wp-spark-col.today .wp-spark-day{color:var(--accent);font-weight:600}.wp-today-line{display:flex;justify-content:space-between;align-items:baseline;padding:8px 10px;background:#ffffff08;border-radius:6px;font-size:.8rem}[data-theme=light] .wp-today-line{background:#00000008}.wp-today-label{color:var(--text-muted)}.wp-today-value{color:var(--accent);font-weight:600}.wp-actions{margin-top:12px;display:flex}.inject-backdrop{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:9999}.inject-modal{background:var(--bg-card, #fff);border-radius:12px;width:min(720px,94vw);max-height:90vh;overflow-y:auto;box-shadow:0 12px 40px #0000004d;display:flex;flex-direction:column}.inject-header{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;border-bottom:1px solid var(--border, #e0e0e0);background:var(--bg-card, #fff);position:sticky;top:0;z-index:1}.inject-header h3{margin:0;font-size:1.1rem}.inject-close{background:none;border:none;font-size:1.2rem;cursor:pointer;color:var(--text-muted, #999);padding:4px 8px;border-radius:4px}.inject-close:hover{background:var(--bg-hover, #f0f0f0)}.inject-body{padding:16px 20px;overflow-y:auto}.inject-section{margin-bottom:18px;padding-bottom:14px;border-bottom:1px solid var(--border-light, #eee)}.inject-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.inject-section h4{margin:0 0 8px;font-size:1rem}.inject-slots-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.inject-slots-header h4{margin:0}.inject-slot-row{border:1px solid var(--border, #e0e0e0);border-radius:8px;padding:10px 12px;margin-bottom:10px;background:var(--bg-card-end, #fafafa)}.inject-slot-head{display:flex;align-items:center;gap:10px;margin-bottom:8px}.inject-slot-levels{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:6px 0}.inject-level{padding:4px 10px;border-radius:4px;border:1px solid var(--border, #d0d0d0);background:var(--bg-card, #fff);color:var(--text-muted, #888);cursor:pointer;font-size:.88rem;min-width:36px}.inject-level--on{background:var(--accent, #3498db);color:#fff;border-color:var(--accent, #3498db)}.inject-level--low{background:var(--warning, #e6ac00);color:#fff;border-color:var(--warning, #e6ac00)}.inject-level-legend{color:var(--text-muted, #999);font-size:.78rem;margin-inline-start:6px}.inject-label-hint{font-size:.85rem;color:var(--text-muted, #666);margin-inline-end:6px}.inject-slot-certs{display:flex;flex-direction:column;gap:4px;margin-top:6px}.inject-cert{display:inline-flex;align-items:center;gap:4px;padding:2px 6px;margin:0 4px 0 0;border-radius:4px;background:var(--bg-card, #fff);border:1px solid var(--border-light, #eee);font-size:.85rem}.inject-save-label{display:flex;align-items:center;gap:8px;font-size:.95rem}.inject-footer{display:flex;align-items:center;gap:10px;justify-content:flex-end;padding:12px 20px;border-top:1px solid var(--border, #e0e0e0);background:var(--bg-card, #fff);position:sticky;bottom:0}.inject-footer .btn-outline{padding:10px 24px;font-size:.9rem;font-weight:600;border-radius:6px}.inject-error{color:var(--danger, #c0392b);font-size:.9rem;margin-inline-end:auto}.inject-summary{padding:10px 14px;border-radius:6px;margin-bottom:12px;font-weight:500}.inject-summary--ok{background:#e9f7ef;color:#1e7e34;border:1px solid #c3e6cb}.inject-summary--warn{background:#fff3cd;color:#6d5300;border:1px solid #e6ac00}.inject-outcomes{display:flex;flex-direction:column;gap:6px}.inject-outcome{display:grid;grid-template-columns:auto 1fr auto 1fr;align-items:center;gap:8px;padding:8px 10px;border-radius:6px;border:1px solid var(--border-light, #eee)}.inject-outcome--ok{background:#f1f9f4}.inject-outcome--unfilled{background:#fff0ef;grid-template-columns:auto 1fr 2fr}.inject-outcome-badge{font-size:1rem}.inject-outcome-slot{font-weight:500}.inject-outcome-arrow{color:var(--text-muted, #999)}.inject-outcome-chain{grid-column:1 / -1;margin-top:4px;font-size:.85rem;color:var(--text-muted, #666)}.inject-outcome-unfilled-text{color:var(--danger, #c0392b);font-size:.9rem}.inject-summary-banner{display:flex;flex-direction:column;gap:8px;padding:12px 14px;margin-bottom:14px;border-radius:8px;background:var(--bg-soft, #f6f8fa);border:1px solid var(--border-light, #e0e0e0)}.inject-summary-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.inject-summary-rank{font-weight:700;color:var(--text-strong, #222);font-size:1.05rem}.inject-summary-fill{font-weight:500;color:var(--text, #444)}.inject-summary-delta{font-weight:700;padding:3px 9px;border-radius:6px;font-variant-numeric:tabular-nums}.inject-delta--good{background:#e8f7ec;color:#1e7e34}.inject-delta--bad{background:#fde9e7;color:#b03c2e}.inject-delta--neutral{background:#ececec;color:#555}.inject-summary-group{background:#eef3ff;color:#2c4ea0;padding:3px 9px;border-radius:6px;font-weight:600;font-size:.88rem}.inject-banner{padding:7px 11px;border-radius:6px;font-size:.9rem}.inject-banner--warn{background:#fff3cd;color:#6d5300;border:1px solid #e6ac00}.inject-banner--err{background:#fde9e7;color:#b03c2e;border:1px solid #e6948a}.inject-banner--info{background:#eef3ff;color:#2c4ea0;border:1px solid #b6c8ee}.inject-alternatives{margin-top:14px;border:1px solid var(--border-light, #e0e0e0);border-radius:8px;background:var(--bg-soft, #fafafa)}.inject-alternatives>summary{cursor:pointer;padding:10px 14px;font-weight:600;-webkit-user-select:none;user-select:none}.inject-alt-list{display:flex;flex-direction:column;gap:6px;padding:0 12px 8px}.inject-alt-card{display:flex;flex-direction:column;gap:3px;padding:8px 10px;border:1px solid var(--border-light, #e0e0e0);border-radius:6px;background:#fff;text-align:start;cursor:pointer;transition:border-color .12s ease,background .12s ease;font-family:inherit}.inject-alt-card:hover{border-color:var(--accent, #4a72c8);background:#fbfcff}.inject-alt-card--selected{border-color:var(--accent, #4a72c8);background:#eef3ff;box-shadow:0 0 0 1px var(--accent, #4a72c8) inset}.inject-alt-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.inject-alt-rank{font-weight:700;color:var(--text-strong, #222)}.inject-alt-fill{font-weight:500;color:var(--text, #444)}.inject-alt-delta{font-weight:700;padding:1px 7px;border-radius:4px;font-variant-numeric:tabular-nums;font-size:.85rem}.inject-alt-group{background:#eef3ff;color:#2c4ea0;padding:1px 7px;border-radius:4px;font-size:.78rem}.inject-alt-fb{background:#ffe7d6;color:#a04500;padding:1px 7px;border-radius:4px;font-size:.78rem}.inject-alt-partial{background:#fff3cd;color:#6d5300;padding:1px 7px;border-radius:4px;font-size:.78rem}.inject-alt-detail{font-size:.83rem;color:var(--text-muted, #666)}.inject-alt-hint{padding:4px 14px 12px;font-size:.83rem}.inject-triage{margin-bottom:12px;padding:11px 13px;background:#fde9e7;border:1px solid #e6948a;border-radius:8px;color:#6c1a13}.inject-triage-title{font-weight:700;margin-bottom:6px}.inject-triage-body{font-size:.9rem}.inject-triage-list{margin:4px 0 6px;padding-inline-start:22px}.btn-inject-task{border-color:var(--danger, #c0392b)!important;color:var(--danger, #c0392b)!important}.btn-inject-task:hover{background:var(--danger, #c0392b)!important;color:#fff!important}@media(max-width:640px){.inject-modal{width:100vw;max-height:100vh;border-radius:0}.inject-outcome{grid-template-columns:auto 1fr}.inject-outcome-arrow{display:none}}@keyframes ee-particle-fly{0%{transform:translate(-50%,-50%) scale(.4);opacity:0}15%{opacity:1}to{transform:translate(calc(-50% + var(--ee-dx, 0px)),calc(-50% + var(--ee-dy, 0px))) scale(1);opacity:0}}.ee-particle{position:fixed;width:10px;height:10px;border-radius:50%;pointer-events:none;z-index:9999;transform:translate(-50%,-50%);animation:ee-particle-fly 1.5s cubic-bezier(.2,.7,.3,1) forwards;animation-delay:var(--ee-delay, 0ms)}.ee-particle--gold{background:radial-gradient(circle,#ffe27a 0%,#d4af37 60%,transparent 100%);box-shadow:0 0 8px 2px #ffd966,0 0 16px 4px #d4af3799}.ee-particle--gold-large{width:14px;height:14px;background:radial-gradient(circle,#fff8d0 0%,#ffd966 50%,#d4af37 80%,transparent 100%);box-shadow:0 0 14px 4px #ffd966,0 0 28px 8px #ffd700b3}.ee-particle--green{width:14px;height:14px;background:radial-gradient(circle,#1aff7a 0%,#0a8d3a 60%,transparent 100%);box-shadow:0 0 12px 3px #1aff7a,0 0 24px 6px #1aff7a8c;animation-duration:1.9s}.ee-particle--warm{background:radial-gradient(circle,#ffe9b0 0%,#c9a05a 60%,transparent 100%);box-shadow:0 0 8px 2px #ffe9b0,0 0 14px 4px #c9a05a8c}.ee-particle--red{width:12px;height:12px;background:radial-gradient(circle,#ff5060 0%,#c8112a 60%,transparent 100%);box-shadow:0 0 12px 3px #ff3b50,0 0 22px 6px #c8112a80;animation-duration:1.7s}@keyframes ee-flash-white{0%{opacity:0}18%{opacity:.85}to{opacity:0}}@keyframes ee-flash-dark{0%{opacity:0}25%{opacity:.6}to{opacity:0}}.ee-flash{position:fixed;inset:0;pointer-events:none;z-index:9998}.ee-flash--white{background:radial-gradient(circle at center,#fff,#fff8d0 60%,#ffd966);animation:ee-flash-white .9s ease-out forwards}.ee-flash--dark{background:radial-gradient(circle at center,#00280fb8,#000c04f0);animation:ee-flash-dark .95s ease-out forwards}@keyframes ee-ring-expand{0%{width:0;height:0;opacity:.95;border-width:6px}to{width:1400px;height:1400px;opacity:0;border-width:1px}}.ee-ring{position:fixed;pointer-events:none;z-index:9999;border:6px solid #ffd966;border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 0 24px 6px #ffd966,inset 0 0 16px 2px #fff8d0;animation:ee-ring-expand 1.15s ease-out forwards}@keyframes ee-spell-pop{0%{transform:translate(-50%,-50%) scale(.5);opacity:0;letter-spacing:-8px}20%{opacity:1;letter-spacing:4px}60%{transform:translate(-50%,-50%) scale(1);opacity:1;letter-spacing:4px}to{transform:translate(-50%,-50%) scale(1.12);opacity:0;letter-spacing:10px}}.ee-spell-text{position:fixed;left:50%;top:38%;transform:translate(-50%,-50%);font-family:Cinzel,Trajan Pro,Georgia,serif;font-size:clamp(2rem,5vw,3.5rem);font-weight:700;letter-spacing:4px;pointer-events:none;z-index:10000;white-space:nowrap;direction:ltr;unicode-bidi:isolate;text-align:center;animation:ee-spell-pop 2.1s ease-out forwards;text-shadow:0 0 12px currentColor,0 2px 6px rgba(0,0,0,.55)}.ee-spell-text--trio{color:#ffd966}.ee-spell-text--dumbledore{color:#fff8d0;font-size:clamp(2.4rem,6vw,4.5rem);text-shadow:0 0 22px #ffd966,0 0 40px #ffd966,0 2px 8px rgba(0,0,0,.6)}.ee-spell-text--darkwizard{color:#1aff7a;text-shadow:0 0 16px #1aff7a,0 0 30px #0a8d3a,0 2px 8px #000}.ee-spell-text--professor{color:#c9a05a;font-style:italic}.ee-spell-text--sith{color:#ff5060;text-shadow:0 0 16px #ff3b50,0 0 30px rgba(180,30,50,.7),0 2px 8px #000}@keyframes ee-row-glow-pulse{0%,to{box-shadow:inset 0 0 0 0 transparent}50%{box-shadow:var(--ee-glow-mid, inset 0 0 30px rgba(255, 215, 0, .55))}}.ee-row-glow{animation:ee-row-glow-pulse 1.3s ease-in-out 2;transition:background .4s ease-out}.ee-row-glow--trio{--ee-glow-mid: inset 0 0 30px rgba(212, 30, 30, .55), inset 0 0 50px rgba(255, 215, 0, .45);background:linear-gradient(90deg,#d41e1e1a,#ffd7001a)!important}.ee-row-glow--dumbledore{--ee-glow-mid: inset 0 0 40px rgba(255, 215, 0, .7);background:#ffd70024!important}.ee-row-glow--darkwizard{--ee-glow-mid: inset 0 0 30px rgba(26, 255, 122, .55), inset 0 0 55px rgba(10, 90, 40, .4);background:#1a5a281f!important}.ee-row-glow--professor{--ee-glow-mid: inset 0 0 28px rgba(201, 160, 90, .55);background:#c9a05a1a!important}.ee-row-glow--sith{--ee-glow-mid: inset 0 0 30px rgba(255, 60, 80, .55), inset 0 0 55px rgba(120, 20, 30, .4);background:#78141e1f!important}@keyframes ee-dark-mark-summon{0%{transform:translate(-50%,-50%) scale(.78);opacity:0;filter:blur(22px) saturate(.4)}18%{opacity:.55;filter:blur(10px) saturate(.7)}38%{transform:translate(-50%,-50%) scale(1);opacity:.96;filter:blur(.6px) saturate(1)}62%{transform:translate(-50%,-50%) scale(1.018);opacity:.96;filter:blur(0px) saturate(1)}82%{transform:translate(-50%,-50%) scale(1);opacity:.85;filter:blur(2px)}to{transform:translate(-50%,-50%) scale(1.06);opacity:0;filter:blur(16px)}}@keyframes ee-dark-mark-dissolve{0%{opacity:0;filter:blur(10px)}22%{opacity:.55;filter:blur(2px)}to{opacity:0;filter:blur(20px)}}.ee-dark-mark{position:fixed;left:50%;top:42%;aspect-ratio:5 / 7;width:clamp(260px,36vw,420px);pointer-events:none;z-index:9999;transform:translate(-50%,-50%);filter:drop-shadow(0 0 14px rgba(154,214,184,.55)) drop-shadow(0 0 38px rgba(74,140,100,.4)) drop-shadow(0 6px 18px rgba(0,0,0,.7));animation:ee-dark-mark-summon 3.4s cubic-bezier(.4,0,.2,1) forwards}.ee-dark-mark--farewell{animation:ee-dark-mark-dissolve 2.2s ease-out forwards;filter:drop-shadow(0 0 12px rgba(154,214,184,.4)) drop-shadow(0 0 22px rgba(74,140,100,.25))}.ee-dark-mark svg{width:100%;height:100%;display:block}@keyframes ee-mark-vignette{0%{opacity:0}22%{opacity:1}78%{opacity:1}to{opacity:0}}.ee-mark-vignette{position:fixed;inset:0;pointer-events:none;z-index:9997;background:radial-gradient(ellipse at center,#02100800 0% 28%,#020e088c 65%,#000603eb);animation:ee-mark-vignette 3.4s ease-in-out forwards}.ee-vader-helmet{position:fixed;left:50%;top:42%;aspect-ratio:5 / 6;width:clamp(260px,36vw,420px);pointer-events:none;z-index:9999;transform:translate(-50%,-50%);filter:drop-shadow(0 0 14px rgba(255,60,80,.55)) drop-shadow(0 0 38px rgba(180,30,50,.4)) drop-shadow(0 6px 18px rgba(0,0,0,.7));animation:ee-dark-mark-summon 3.4s cubic-bezier(.4,0,.2,1) forwards}.ee-vader-helmet--farewell{animation:ee-dark-mark-dissolve 2.2s ease-out forwards;filter:drop-shadow(0 0 12px rgba(255,60,80,.4)) drop-shadow(0 0 22px rgba(120,20,30,.25))}.ee-vader-helmet svg{width:100%;height:100%;display:block}.ee-sith-vignette{position:fixed;inset:0;pointer-events:none;z-index:9997;background:radial-gradient(ellipse at center,#14040600 0% 28%,#28080c8c 65%,#080002eb);animation:ee-mark-vignette 3.4s ease-in-out forwards}@keyframes ee-feather-fall{0%{transform:translateY(-10vh) rotate(0);opacity:0}10%{opacity:1}90%{opacity:1}to{transform:translate(var(--ee-feather-drift, 0px),110vh) rotate(var(--ee-feather-spin, 360deg));opacity:0}}.ee-feather{position:fixed;top:0;width:18px;height:46px;pointer-events:none;z-index:9997;filter:drop-shadow(0 0 6px rgba(255,215,0,.7));animation:ee-feather-fall 3s ease-in forwards}.ee-feather svg{width:100%;height:100%;display:block}@keyframes ee-farewell-fade{0%{transform:translate(-50%,-40%) scale(.85);opacity:0;letter-spacing:0px}25%{transform:translate(-50%,-50%) scale(1);opacity:1;letter-spacing:3px}70%{transform:translate(-50%,-50%) scale(1);opacity:1;letter-spacing:3px}to{transform:translate(-50%,-60%) scale(.95);opacity:0;letter-spacing:8px}}.ee-farewell-text{position:fixed;left:50%;top:38%;transform:translate(-50%,-50%);font-family:Cinzel,Trajan Pro,Georgia,serif;font-weight:600;font-style:italic;font-size:clamp(1.4rem,3.5vw,2.4rem);letter-spacing:3px;pointer-events:none;z-index:10000;white-space:nowrap;direction:ltr;unicode-bidi:isolate;text-align:center;opacity:.92;animation:ee-farewell-fade 2.4s ease-out forwards;text-shadow:0 0 10px currentColor,0 2px 4px rgba(0,0,0,.55)}.ee-farewell-text--trio{color:#d4af37}.ee-farewell-text--dumbledore{color:#fff8d0;text-shadow:0 0 16px #ffd966,0 0 28px rgba(255,215,0,.6),0 2px 6px rgba(0,0,0,.6)}.ee-farewell-text--darkwizard{color:#9affb6;text-shadow:0 0 14px #1aff7a,0 0 24px rgba(10,90,40,.7),0 2px 6px #000}.ee-farewell-text--professor{color:#c9a05a}.ee-farewell-text--sith{color:#d8a0a8;text-shadow:0 0 14px #ff3b50,0 0 24px rgba(120,20,30,.7),0 2px 6px #000}.ee-particle--farewell{animation-duration:2.1s;opacity:.75}@media(prefers-reduced-motion:reduce){.ee-particle,.ee-flash,.ee-ring,.ee-spell-text,.ee-row-glow,.ee-dark-mark,.ee-mark-vignette,.ee-vader-helmet,.ee-sith-vignette,.ee-feather,.ee-farewell-text{animation:none!important}}.gm-score-breakdown{white-space:normal;font-variant-numeric:tabular-nums}.gm-score-breakdown .gm-sb-help{background:var(--bg-card);border:1px solid var(--border);border-radius:6px;padding:10px 12px;margin-bottom:12px}.gm-score-breakdown .gm-sb-help-title{font-size:.78rem;font-weight:600;color:var(--text-secondary);margin-bottom:4px;letter-spacing:.02em}.gm-score-breakdown .gm-sb-help-body{font-size:.85rem;color:var(--text);line-height:1.55}.gm-score-breakdown .gm-sb-help-body strong{color:var(--text);font-weight:600}.gm-score-breakdown .gm-sb-summary{display:flex;flex-direction:column;gap:4px;margin-bottom:14px;padding:10px 14px;background:var(--bg-card);border:1px solid var(--border);border-radius:6px}.gm-score-breakdown .gm-sb-summary-row{display:flex;justify-content:space-between;align-items:baseline;font-size:.95rem}.gm-score-breakdown .gm-sb-summary-label{color:var(--text-secondary)}.gm-score-breakdown .gm-sb-summary-value{font-weight:600;font-size:1.05rem}.gm-score-breakdown .gm-sb-summary-rewards .gm-sb-summary-value{color:var(--success)}.gm-score-breakdown .gm-sb-summary-costs .gm-sb-summary-value{color:var(--danger)}.gm-score-breakdown .gm-sb-summary-divider{height:1px;background:var(--border);margin:4px 0}.gm-score-breakdown .gm-sb-summary-total .gm-sb-summary-label{font-weight:600;color:var(--text);font-size:1rem}.gm-score-breakdown .gm-sb-summary-total .gm-sb-summary-value{font-size:1.25rem}.gm-score-breakdown .gm-sb-drift{color:var(--danger);font-size:.78rem;margin-top:6px;padding-top:6px;border-top:1px solid var(--border)}.gm-score-breakdown .gm-sb-table{display:flex;flex-direction:column;gap:1px;border:1px solid var(--border);border-radius:6px;overflow:hidden;background:var(--border)}.gm-score-breakdown .gm-sb-row{display:grid;grid-template-columns:2.4fr .8fr 1fr 1.3fr .9fr;gap:4px 10px;padding:10px 12px;background:var(--bg-card);align-items:center}.gm-score-breakdown .gm-sb-row-header{background:var(--bg-card-end);color:var(--text-secondary);font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.02em;align-items:center}.gm-score-breakdown .gm-sb-row-total{background:var(--bg-card-end);font-weight:600;align-items:center}.gm-score-breakdown .gm-sb-group{display:grid;grid-template-columns:1fr;padding:6px 12px;font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.02em}.gm-score-breakdown .gm-sb-group-reward{background:#1d90501f;color:var(--success);border-inline-start:3px solid var(--success)}.gm-score-breakdown .gm-sb-group-cost{background:#e74c3c1a;color:var(--danger);border-inline-start:3px solid var(--danger)}.gm-score-breakdown .gm-sb-cell{font-size:.88rem}.gm-score-breakdown .gm-sb-num{text-align:end;color:var(--text-secondary)}.gm-score-breakdown .gm-sb-name{color:var(--text);font-weight:500;display:flex;align-items:center;gap:6px;flex-wrap:wrap}.gm-score-breakdown .gm-sb-code{display:inline-block;font-size:.7rem;padding:1px 6px;background:var(--bg-main);border:1px solid var(--border);border-radius:999px;color:var(--text-muted);font-weight:500}.gm-score-breakdown .gm-sb-subtitle{grid-column:1 / -1;font-size:.76rem;color:var(--text-muted);line-height:1.45;padding-top:2px}.gm-score-breakdown .gm-sb-inactive{grid-column:1 / -1;font-size:.74rem;color:var(--text-muted);font-style:italic}.gm-score-breakdown .gm-sb-contrib{font-weight:600;color:var(--text)}.gm-score-breakdown .gm-sb-row-positive .gm-sb-contrib{color:var(--success)}.gm-score-breakdown .gm-sb-row-negative .gm-sb-contrib{color:var(--danger)}.gm-score-breakdown .gm-sb-row-dim{opacity:.55}.gm-score-breakdown .gm-sb-row-dim .gm-sb-contrib{color:var(--text-muted);font-weight:500}.gm-score-breakdown .gm-sb-advanced{margin-top:14px;border:1px solid var(--border);border-radius:6px;background:var(--bg-card)}.gm-score-breakdown .gm-sb-advanced>summary{cursor:pointer;padding:10px 12px;font-size:.85rem;color:var(--text-secondary);font-weight:500;-webkit-user-select:none;user-select:none}.gm-score-breakdown .gm-sb-advanced[open]>summary{border-bottom:1px solid var(--border)}.gm-score-breakdown .gm-sb-advanced-content{padding:12px;display:flex;flex-direction:column;gap:16px}.gm-score-breakdown .gm-sb-sub{display:flex;flex-direction:column;gap:2px}.gm-score-breakdown .gm-sb-sub-title{font-size:.85rem;font-weight:600;color:var(--text);margin-bottom:2px}.gm-score-breakdown .gm-sb-sub-desc{font-size:.76rem;color:var(--text-muted);margin-bottom:6px;line-height:1.45}.gm-score-breakdown .gm-sb-sub-row{display:flex;justify-content:space-between;font-size:.85rem;padding:5px 10px;background:var(--bg-main);border-radius:4px}.gm-score-breakdown .gm-sb-sub-empty{color:var(--text-muted);font-style:italic;justify-content:center}.gm-score-breakdown .gm-sb-delta{color:var(--text-muted);font-weight:400;margin-inline-start:4px}.gm-score-breakdown .gm-sb-spark{width:100%;height:60px;color:var(--success);display:block;background:var(--bg-main);border-radius:4px}.gm-score-breakdown .gm-sb-actions{display:flex;justify-content:flex-end;gap:8px}.day-tab.day-tab-day0{background:#f3f4f6;color:#6b7280;border:1px dashed #cbd5e1}.day-tab.day-tab-day0:hover{background:#e5e7eb;color:#374151}.day-tab.day-tab-day0.day-tab-active{background:#fef3c7;color:#8b6914;border-color:#f59e0b;border-style:solid}.day-hero-dot.day-hero-dot-day0{background:#f3f4f6;color:#6b7280;border:1px dashed #cbd5e1}.day-hero-dot.day-hero-dot-day0.day-hero-dot-active{background:#fef3c7;color:#8b6914;border-color:#f59e0b;border-style:solid}.day0-banner{background:#fef3c7;color:#8b6914;border:1px solid #f59e0b;border-radius:6px;padding:10px 14px;margin:8px 0 12px;font-size:.92rem;line-height:1.4}.continuity-chip.continuity-chip--frozen{background:#fef3c7;color:#8b6914;border:1px solid #f59e0b;text-decoration:none;cursor:pointer;display:inline-flex;align-items:center;gap:6px}.continuity-chip.continuity-chip--frozen:hover{background:#fde68a}.swimlane-view.swimlane-view--day0{background:#f9fafb;border-radius:6px}.swimlane-view.swimlane-view--day0 .swimlane-lane{opacity:.85;border-bottom:1px dashed #d1d5db!important}.swimlane-view.swimlane-view--day0 .swimlane-block{border:1px dashed rgba(0,0,0,.4)!important;opacity:.78}.day0-foreign-badge{display:inline-block;margin-inline-start:6px;padding:2px 6px;border-radius:4px;background:#fef3c7;color:#8b6914;border:1px dashed #f59e0b;font-size:.72rem;white-space:nowrap}.swimlane-lane.swimlane-lane--day0-foreign{background:linear-gradient(to right,#fef3c766 0 100%)}.agenda-day.agenda-day-day0{background:#f9fafb;border:1px dashed #cbd5e1}.agenda-day.agenda-day-day0 .agenda-day-label{color:#8b6914}.agenda-task.agenda-task--day0{opacity:.85;border-style:dashed!important}.wp-spark-col.wp-spark-col--day0{background:#f3f4f6;border:1px dashed #cbd5e1;border-radius:4px}.wp-spark-col.wp-spark-col--day0 .wp-spark-bar{background:#94a3b8}.wp-spark-divider{width:1px;background:#d1d5db;margin:4px 6px;align-self:stretch}.schedule-section--day0>h2{color:#8b6914}.export-day0-row{background:var(--bg-hover);border:1px dashed var(--border);border-radius:6px;padding:10px 12px;margin-top:8px}.export-day0-label{display:flex;align-items:center;gap:8px;cursor:pointer;font-weight:500}.export-day0-help{margin-top:4px;margin-inline-start:24px;font-size:.82rem;color:var(--text-muted);line-height:1.4}.point-in-time-view-root{animation:fadeIn .25s ease;padding-bottom:24px;font-size:.74rem;color:var(--text)}.pit-bar{position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:8px 14px;background:var(--frozen-glow);border:1px solid rgba(0,188,212,.2);border-radius:var(--radius);margin-bottom:8px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.pit-bar .btn-back{flex:0 0 auto;align-self:center;padding:4px 10px;font-size:.76rem}.pit-title{margin:0;font-size:.85rem;font-weight:700;color:var(--text);flex:1 1 auto;white-space:nowrap}.pit-pickers{display:inline-flex;align-items:center;gap:6px;flex:0 0 auto}.pit-picker-label{font-size:.78rem;font-weight:600;color:var(--text);white-space:nowrap}.pit-pickers .gm-select{min-width:auto}.pit-pickers .gm-select-dropdown{min-width:92px}.pit-kpi-strip{display:flex;align-items:stretch;gap:0;padding:4px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:8px;box-shadow:0 1px 3px #0000000f}.pit-kpi{flex:1 1 0;min-width:0;display:inline-flex;align-items:baseline;justify-content:center;gap:6px;padding:5px 8px;position:relative;border-radius:6px}.pit-kpi+.pit-kpi:before{content:"";position:absolute;inset-inline-start:0;inset-block:22%;width:1px;background:var(--border)}.pit-kpi-value{font-size:1rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--text);line-height:1;direction:ltr;unicode-bidi:isolate}.pit-kpi-label{font-size:.65rem;letter-spacing:.03em;color:var(--text-muted);text-transform:uppercase}.pit-kpi-assigned .pit-kpi-value{color:var(--accent)}.pit-kpi-recovery .pit-kpi-value{color:var(--frozen)}.pit-kpi-unavailable .pit-kpi-value{color:var(--danger)}.pit-banner{padding:5px 10px;margin-bottom:8px;background:var(--accent-glow);border:1px solid rgba(0,188,212,.35);border-radius:6px;color:var(--text);font-size:.74rem}.pit-grid{display:grid;grid-template-columns:1fr;gap:8px}.pit-col-secondary{display:flex;flex-direction:column;gap:8px;min-width:0}@media(min-width:980px){.pit-grid{grid-template-columns:minmax(0,7fr) minmax(0,5fr);grid-template-areas:"main secondary" "free free";align-items:start}.pit-section-assigned{grid-area:main}.pit-col-secondary{grid-area:secondary}.pit-section-free{grid-area:free}}.pit-section{position:relative;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;--pit-accent: var(--text-muted)}.pit-section:before{content:"";position:absolute;inset-block:0;inset-inline-start:0;width:3px;background:linear-gradient(to bottom,var(--pit-accent),color-mix(in srgb,var(--pit-accent) 20%,transparent));border-radius:3px;pointer-events:none}.pit-section-assigned{--pit-accent: var(--accent)}.pit-section-recovery{--pit-accent: var(--frozen)}.pit-section-unavailable{--pit-accent: var(--danger)}.pit-section-free{--pit-accent: var(--text-muted)}.pit-section[open]>summary{border-bottom:1px solid var(--border)}.pit-section>summary{display:flex;align-items:center;gap:8px;padding-inline-start:14px;padding-inline-end:10px;padding-block:5px;cursor:pointer;list-style:none;user-select:none;background:color-mix(in srgb,var(--pit-accent) 8%,transparent);transition:background .14s ease;min-height:28px}.pit-section>summary::-webkit-details-marker{display:none}.pit-section>summary:hover{background:color-mix(in srgb,var(--pit-accent) 14%,transparent)}.pit-section>summary:after{content:"▾";margin-inline-start:auto;color:var(--text-muted);font-size:.65rem;transition:transform .18s ease}.pit-section:not([open])>summary:after{transform:rotate(-90deg)}.pit-section-title{flex:0 0 auto;color:var(--pit-accent);font-size:.66rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.pit-section-count{background:var(--pit-accent);color:var(--text-inverse);font-size:.66rem;padding:0 7px;border-radius:10px;font-weight:600;display:inline-block;flex:0 0 auto;font-variant-numeric:tabular-nums}.pit-section-empty .pit-section-count{background:var(--text-muted);opacity:.5}.pit-section-body{padding:5px 7px 7px}.pit-section-body-empty{padding:12px 10px;color:var(--text-muted);font-size:.74rem;text-align:center}.pit-task-group{margin-bottom:8px;--task-color: var(--accent);background:color-mix(in srgb,var(--task-color) 4%,transparent);border:1px solid color-mix(in srgb,var(--task-color) 22%,var(--border));border-radius:6px;padding:4px 6px 6px}.pit-task-group:last-child{margin-bottom:0}.pit-task-header{display:flex;align-items:center;gap:8px;padding:2px 4px 4px;flex-wrap:wrap}.pit-task-chip{-webkit-appearance:none;appearance:none;display:inline-flex;align-items:center;padding:1px 8px;background:color-mix(in srgb,var(--task-color, var(--accent)) 22%,transparent);border:1px solid color-mix(in srgb,var(--task-color, var(--accent)) 55%,transparent);border-radius:999px;color:var(--task-color, var(--accent));font-size:.72rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .14s ease,color .14s ease,border-color .14s ease}.pit-task-chip:hover,.pit-task-chip:focus-visible{background:var(--task-color, var(--accent));color:var(--text-inverse);border-color:var(--task-color, var(--accent));outline:none}.pit-task-chip-inline{font-size:.66rem;padding:0 6px}.pit-task-time{font-size:.7rem;color:var(--text-muted);font-variant-numeric:tabular-nums;direction:ltr;unicode-bidi:isolate}.pit-task-remaining{font-size:.68rem;color:var(--text-muted);font-variant-numeric:tabular-nums}.pit-task-count{margin-inline-start:auto;font-size:.68rem;font-weight:600;color:var(--text-muted);background:var(--bg-hover);padding:0 7px;border-radius:10px;font-variant-numeric:tabular-nums}.pit-row-list{list-style:none;margin:0;padding:0}.pit-row{display:flex;align-items:center;gap:8px;padding:3px 6px;min-height:22px;border-radius:4px;cursor:pointer;position:relative;transition:background .12s ease}.pit-row:hover,.pit-row:focus-visible{background:var(--bg-hover);outline:none}.pit-row+.pit-row{border-top:1px solid var(--border)}.pit-task-group .pit-row+.pit-row{border-top-style:dotted;border-top-color:#7f8c8d4d}.pit-row-name{flex:1 1 auto;font-weight:500;color:var(--text);font-size:.78rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pit-row-meta{display:inline-flex;align-items:center;gap:5px;flex:0 0 auto;flex-wrap:wrap;justify-content:flex-end}.pit-row-reason{font-size:.7rem;color:var(--text);font-weight:500}.pit-kind-tag{display:inline-flex;align-items:center;font-size:.6rem;font-weight:600;padding:0 6px;border-radius:8px;background:var(--bg-hover);color:var(--text-muted);letter-spacing:.02em}.pit-kind-tag-sos{background:color-mix(in srgb,var(--danger) 14%,transparent);color:var(--danger)}.pit-kind-tag-rule{background:color-mix(in srgb,var(--warning) 14%,transparent);color:var(--warning)}.pit-kind-tag-avail{background:var(--bg-hover);color:var(--text-muted)}.pit-row-recovery{--task-color: var(--frozen);padding-bottom:7px}.pit-row-countdown{font-size:.68rem;color:var(--frozen);background:color-mix(in srgb,var(--frozen) 14%,transparent);padding:0 6px;border-radius:8px;font-variant-numeric:tabular-nums;font-weight:600}.pit-row-progress{position:absolute;inset-block-end:0;inset-inline:6px;height:2px;background:#ffffff0a;border-radius:1px;overflow:hidden}[data-theme=light] .pit-row-progress{background:#0000000d}.pit-row-progress-fill{height:100%;background:var(--task-color, var(--frozen));opacity:.55;transition:width .22s ease}.pit-free-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));column-gap:6px}.pit-free-grid .pit-row{border-top:1px dotted rgba(127,140,141,.25);min-height:24px;padding:3px 6px}.pit-free-grid .pit-row+.pit-row{border-top:1px dotted rgba(127,140,141,.25)}@media(max-width:720px){.pit-bar{padding:5px 10px;gap:8px}.pit-title{flex:1 1 100%;order:1;font-size:.85rem;text-align:start}.pit-bar .btn-back{order:0}.pit-pickers{order:2;flex:1 1 100%;justify-content:flex-start}.pit-pickers .gm-select-dropdown{min-width:80px}.pit-kpi{padding:4px 5px;gap:4px}.pit-kpi-value{font-size:.92rem}.pit-kpi-label{font-size:.58rem}.pit-task-header{gap:6px}.pit-task-time{font-size:.66rem}.pit-task-remaining{font-size:.64rem}.pit-row-name{font-size:.76rem}}.gse-summary{font-size:.82rem;color:var(--text-muted, #888);margin:0 0 12px;line-height:1.5}.gse-section{margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--border-light, #eee)}.gse-section:last-of-type{border-bottom:none}.gse-section-title{font-weight:600;font-size:.9rem;margin-bottom:8px}.gse-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.gse-legend{font-size:.74rem;color:var(--text-muted, #999);margin-top:6px}.gse-lvl{display:inline-flex;align-items:center;padding:6px 12px;min-height:38px;border-radius:12px;border:2px solid var(--border, #d0d0d0);background:transparent;cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;transition:opacity .15s,border-color .15s}.gse-lvl[data-state=off]{opacity:.35}.gse-lvl[data-state=normal]{border-color:var(--accent, #3498db)}.gse-lvl[data-state=low]{border-color:#e67e22}.gse-lvl[data-state=mixed]{border-style:dashed;border-color:var(--text-muted, #999)}.gse-lvl .badge{pointer-events:none}.gse-lvl-off{color:var(--text-muted, #888);font-size:.82rem}.gse-lp{color:#e67e22;font-size:.72rem;margin-inline-start:2px;pointer-events:none}.gse-mixed-mark{color:var(--text-muted, #999);font-size:.85rem;margin-inline-start:4px;pointer-events:none}.gse-cert{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;min-height:38px;border-radius:8px;border:2px solid var(--border, #d0d0d0);background:var(--bg-card, #fff);color:var(--text, #222);cursor:pointer;font-size:.85rem;-webkit-tap-highlight-color:transparent;transition:background .15s,border-color .15s,opacity .15s}.gse-cert-dot{width:10px;height:10px;border-radius:50%;flex:0 0 auto;pointer-events:none}.gse-cert[data-state=on]{border-color:var(--accent, #3498db);background:color-mix(in srgb,var(--accent, #3498db) 14%,transparent)}.gse-cert[data-state=off]{opacity:.45}.gse-cert[data-state=mixed]{border-style:dashed;border-color:var(--text-muted, #999)}.gse-cert>*{pointer-events:none}.gse-error{margin-top:12px;padding:10px 12px;border-radius:6px;background:color-mix(in srgb,var(--danger, #c0392b) 12%,transparent);color:var(--danger, #c0392b);font-size:.84rem;line-height:1.6}.touch-device button,.touch-device input,.touch-device select,.touch-device textarea,.touch-device [role=button],.touch-device a{touch-action:manipulation}.touch-device input[type=text],.touch-device input[type=number],.touch-device input[type=search],.touch-device select,.touch-device textarea{font-size:16px}.touch-device .btn-primary:hover{transform:none;box-shadow:none}.touch-device .btn-primary:active{transform:scale(.97)}.touch-device .btn-sm:hover,.touch-device .btn-outline:hover,.touch-device .btn-danger-outline:hover,.touch-device .btn-xs:hover{transform:none;box-shadow:none}.touch-device .pill:hover{border-color:inherit;color:inherit}.touch-device .pill:active{border-color:var(--accent);color:var(--text)}.touch-device .tab-btn:hover{background:inherit;color:inherit}.touch-device .table tbody tr:hover{background:inherit}.touch-device .table tbody tr:active{background:var(--bg-hover)}.touch-device .gantt-row:hover{background:inherit}.touch-device .gantt-block:hover{opacity:1;z-index:auto}.touch-device .gantt-block:active{opacity:.85}.touch-device .assignment-card:hover{background:inherit;transform:none;box-shadow:none}.touch-device .assignment-card:active{background:var(--bg-hover)}.touch-device .participant-hover:hover{text-decoration:none;color:inherit}.touch-device .participant-name:hover{text-decoration:none}.touch-device .score-card:hover{transform:none;box-shadow:none}.touch-device .template-header:hover{background:inherit}.touch-device .day-tab:hover{background:inherit;color:inherit}.touch-device .agenda-task:hover{background:inherit}.touch-device .agenda-task:active{background:var(--bg-hover)}.touch-device .rescue-plan:hover{border-color:inherit;box-shadow:none}.touch-device .time-cell-inspectable:hover{color:inherit;background:inherit}.touch-device .time-cell-inspectable:active{background:#00bcd424}.touch-device .tt-actions button:hover{background:inherit;color:inherit;border-color:inherit}.touch-device .tt-actions button:active{background:var(--bg-hover)}.touch-device .sidebar-toggle:hover{border-color:inherit;color:inherit;background:inherit}.touch-device .sidebar-toggle:active{border-color:var(--accent);color:var(--accent)}.touch-device .theme-toggle:hover,.touch-device .algo-toggle-item:hover,.touch-device .preset-item:hover,.touch-device .snapshot-item:hover{background:inherit}.touch-device .gm-select-trigger:hover{border-color:inherit}.touch-device .gm-select-option:hover{background:inherit}.touch-device .gm-select-option:active{background:var(--accent);color:#fff}.touch-device .btn-back:hover,.touch-device .settings-accordion-header:hover,.touch-device .settings-nested-header:hover{background:inherit}.gm-bottom-sheet-backdrop{position:fixed;inset:0;background:#0f111799;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:1200;display:flex;align-items:flex-end;justify-content:center;animation:gmBsBackdropIn .2s ease}@keyframes gmBsBackdropIn{0%{opacity:0}to{opacity:1}}.gm-bottom-sheet{background:var(--bg-card);border:1px solid var(--border);border-bottom:none;border-radius:16px 16px 0 0;width:100%;max-width:560px;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 -8px 40px #0000004d;animation:gmBsSlideUp .3s cubic-bezier(.32,.72,0,1);overflow:hidden}@keyframes gmBsSlideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.gm-bs-closing{animation:gmBsSlideDown .2s ease forwards}@keyframes gmBsSlideDown{0%{transform:translateY(0)}to{transform:translateY(100%)}}.gm-bs-drag-handle{display:flex;justify-content:center;padding:10px 0 4px;cursor:grab}.gm-bs-drag-handle span{width:36px;height:4px;border-radius:2px;background:var(--text-muted);opacity:.5}.gm-bs-header,.gm-bs-header-minimal{display:flex;align-items:center;padding:4px 16px 12px;border-bottom:1px solid var(--border)}.gm-bs-header{justify-content:space-between}.gm-bs-header-minimal{justify-content:flex-end;padding-top:0;border-bottom:none}.gm-bs-title{font-size:1rem;font-weight:600;color:var(--text)}.gm-bs-close{background:transparent;border:none;color:var(--text-muted);font-size:1.2rem;cursor:pointer;width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center}.gm-bs-close:active{background:var(--bg-hover)}.gm-bs-body{padding:12px 16px;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;flex:1;min-height:0}.gm-bs-actions{padding:12px 16px;padding-bottom:calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--border);display:flex;flex-direction:column;gap:8px}.gm-bs-actions button{min-height:44px;width:100%;font-size:.9rem;border-radius:var(--radius);cursor:pointer}.gm-accordion-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;background:transparent;border:none;color:var(--text);padding:10px 0;cursor:pointer;font-size:inherit;font-weight:600;text-align:inherit}.gm-accordion-toggle:after{content:"▾";font-size:.8rem;color:var(--text-muted);transition:transform var(--transition-normal)}.gm-accordion-toggle[aria-expanded=true]:after{transform:rotate(180deg)}.gm-accordion-body{overflow:hidden;max-height:0;transition:max-height var(--transition-slow) ease}.gm-accordion-body.open{max-height:2000px}@media(max-width:1024px){.participant-sidebar{min-width:180px;max-width:200px}.sidebar-toggle{width:44px;height:44px}.gantt-label-col{min-width:140px;max-width:140px}.kpi-group{flex-wrap:wrap}.day-navigator{overflow-x:auto;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;scrollbar-width:thin}.day-tab{scroll-snap-align:start}}@media(max-width:767px){html,body{scrollbar-width:none}html::-webkit-scrollbar,body::-webkit-scrollbar{display:none}.tab-nav{position:fixed;inset-inline:12px;bottom:calc(8px + env(safe-area-inset-bottom));z-index:50;display:flex;align-items:center;justify-content:space-around;gap:0;margin:0;background:var(--bg-card);border:1px solid var(--border);border-radius:28px;padding:6px 8px;min-height:64px;box-shadow:0 8px 28px #00000059,0 2px 6px #0003;overflow:visible}[data-theme=light] .tab-nav{box-shadow:0 8px 24px #0f172a1f,0 2px 6px #0f172a0f}body{padding-bottom:calc(96px + env(safe-area-inset-bottom))}.tab-content{padding-bottom:12px}.tab-nav .tab-btn{position:relative;flex:1 1 0;min-width:44px;min-height:52px;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:6px 4px;border:none;border-radius:18px;background:transparent;color:var(--text-muted);font-size:.65rem;white-space:nowrap;transition:color .15s,background .15s}.tab-nav .tab-btn .tab-icon{font-size:1.25rem;line-height:1}.tab-nav .tab-btn .tab-label{font-size:.65rem;line-height:1}.tab-nav .tab-btn.tab-active{color:var(--accent)}.tab-nav .tab-btn:active:not(.tab-fab){background:var(--bg-hover)}.tab-nav .tab-btn .tab-dot{position:absolute;bottom:2px;left:50%;transform:translate(-50%);width:4px;height:4px;border-radius:50%;background:var(--accent);opacity:0;transition:opacity .15s}.tab-nav .tab-btn.tab-active .tab-dot{opacity:1}.tab-nav .tab-badge-dot,.tab-nav .tab-badge-count{position:absolute;top:4px;inset-inline-end:calc(50% - 18px);border:2px solid var(--bg-card);box-sizing:content-box;pointer-events:none}.tab-nav .tab-badge-dot{width:8px;height:8px;border-radius:50%}.tab-nav .tab-badge-warn{background:var(--danger)}.tab-nav .tab-badge-ok{background:var(--success)}.tab-nav .tab-badge-count{min-width:14px;height:14px;padding:0 4px;border-radius:7px;background:var(--accent);color:var(--text-inverse);font-size:.55rem;line-height:14px;font-weight:600;text-align:center}.tab-nav .tab-badge-count:before{content:attr(data-count)}.tab-nav .is-hidden{display:none}.tab-nav .tab-btn.tab-fab{flex:0 0 64px;min-width:64px;align-self:stretch;overflow:visible}.tab-fab-surface{position:absolute;left:50%;top:0;transform:translate(-50%,-55%);width:60px;height:60px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--accent),#2a5d96);color:#fff;border:4px solid var(--bg-card);box-shadow:0 6px 18px #3a7cc573,0 2px 4px #0003;transition:transform .18s ease,box-shadow .18s ease}.tab-fab .tab-icon{font-size:1.6rem;color:#fff}.tab-fab .tab-icon svg{width:26px;height:26px}.tab-fab-label{position:absolute;left:50%;bottom:4px;transform:translate(-50%);color:var(--accent);font-size:.6rem;font-weight:600;display:none}.tab-btn.tab-fab.tab-active .tab-fab-surface{transform:translate(-50%,-55%) scale(1.06);box-shadow:0 8px 22px #3a7cc599,0 0 0 3px #3a7cc540}.tab-btn.tab-fab.tab-active .tab-fab-label{display:block}.tab-btn.tab-fab:active .tab-fab-surface{transform:translate(-50%,-55%) scale(.96)}.tab-fab-surface .tab-badge-ok{top:0;inset-inline-end:0;border-color:var(--bg-card)}.sidebar-fab{bottom:calc(96px + env(safe-area-inset-bottom))}header{padding:6px 10px;margin-bottom:6px}.header-top{flex-direction:row;flex-wrap:nowrap;justify-content:flex-start;gap:6px}header h1{flex:1 1 auto;font-size:.82rem;margin-bottom:0;width:auto;text-align:start;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.undo-redo-group{gap:2px;flex-shrink:0}.undo-redo-group .btn-label{display:none}.undo-redo-group button{font-size:.85rem;padding:2px;width:30px;height:30px;min-width:30px;min-height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%}header .theme-toggle{width:30px;height:30px;font-size:.9rem;flex-shrink:0}.beta-badge{font-size:.5rem;padding:1px 4px;flex-shrink:0;align-self:center}.subtitle{display:none}.header-credit{display:flex;margin-top:3px;padding-top:3px}.header-credit span{font-size:.55rem}.home-panel{padding:18px 16px 18px 20px}.home-headline{font-size:1.42rem}.home-cta.btn-primary{flex:1 1 100%;min-height:48px}.home-cta-row .btn-sm{min-height:44px}.home-link{min-height:60px}.home-help{min-height:44px}.tab-toolbar{margin-bottom:4px;gap:4px 6px}.participants-controls{width:100%;gap:6px}.participant-search{flex:1 1 100%;min-height:40px}.participants-mobile-controls{display:flex;flex-wrap:wrap;width:100%}.participants-mobile-controls .input-sm,.participants-mobile-controls .btn-sm{min-height:40px}.participants-mobile-controls .mobile-select-all-btn{margin-inline-start:auto}.schedule-toolbar .toolbar-left{display:none}.schedule-toolbar{padding:6px 8px}.toolbar-right{flex-wrap:wrap;justify-content:flex-start;gap:4px 6px;width:100%}.toolbar-group{flex-wrap:wrap}.toolbar-group+.toolbar-group:not(:empty){border-inline-start:none;padding-inline-start:0;margin-inline-start:0}.toolbar-group--generate{padding:4px 6px;width:100%;order:1}.toolbar-group--state{width:100%;order:2}.toolbar-group--day-actions{width:100%;order:3;gap:4px}.toolbar-group--day-actions:has(*){border-top:1px solid var(--border);padding-top:4px;margin-top:2px}.toolbar-right #btn-snap-toggle{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:160px}.toolbar-right .btn-primary,.toolbar-right .btn-outline,.toolbar-right .btn-sm{font-size:.65rem;padding:4px 8px;min-height:36px}.continuity-chip{font-size:.6rem;padding:2px 7px;gap:4px}.scenarios-label{font-size:.65rem;gap:3px}.input-scenarios{width:50px;padding:2px 4px;font-size:.7rem}.live-mode-controls{width:100%;padding:4px 8px;margin-bottom:0;gap:6px}.live-mode-controls label,.live-mode-controls .live-picker-label{font-size:.7rem}.live-mode-picker{flex-wrap:wrap;gap:4px}.toolbar-actions{display:flex;align-items:stretch;gap:6px;width:100%;flex-wrap:nowrap;order:2}.toolbar-actions .live-mode-toggle,.toolbar-actions #btn-manual-build{flex:1 1 0;min-width:0}.toolbar-actions .live-mode-toggle{display:flex;align-items:center;justify-content:center;gap:6px;min-height:44px;margin:0;padding:6px 10px;border:1px solid var(--border);border-radius:10px;background:var(--bg);color:var(--text);font-size:.78rem;font-weight:600;white-space:nowrap;cursor:pointer}.toolbar-actions .live-mode-toggle input{position:absolute;width:0;height:0;opacity:0;pointer-events:none}.toolbar-actions .live-mode-toggle:has(input:checked){background:var(--frozen-glow);border-color:#00bcd48c}.toolbar-actions #btn-manual-build{min-height:44px;font-size:.78rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.toolbar-actions .btn-toolbar-more{flex:0 0 auto;min-width:56px;min-height:44px;margin-inline-start:auto;font-size:.8rem;font-weight:600;white-space:nowrap}.toolbar-live-picker{width:100%;order:3}.toolbar-live-picker .live-picker-label{font-size:.7rem;white-space:nowrap}.toolbar-live-picker .live-mode-picker{flex-wrap:wrap;gap:4px}.toolbar-status{width:100%;order:4;display:flex;flex-wrap:wrap;align-items:center;gap:6px}.gm-overflow-menu{display:flex;flex-direction:column;gap:14px}.gm-overflow-group{display:flex;flex-direction:column;gap:4px}.gm-overflow-group-title{padding:0 4px 2px;font-size:.7rem;font-weight:700;color:var(--text-muted)}.gm-overflow-row{display:flex;align-items:center;gap:12px;width:100%;min-height:48px;padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:var(--bg-card);color:var(--text);font-size:.92rem;text-align:start;cursor:pointer}.gm-overflow-row:active{background:var(--bg-hover)}.gm-overflow-row-icon{flex-shrink:0;width:1.6rem;text-align:center;font-size:1.1rem}.gm-overflow-row-label{flex:1;min-width:0}.gm-overflow-row--danger{color:var(--danger, #f38ba8);border-color:#f38ba866}.weekly-dashboard{position:sticky;top:0;z-index:30;padding:8px 10px;margin-bottom:8px}.dashboard-row{grid-template-columns:auto 1fr;gap:8px}.kpi-hero-combined{flex-direction:row;align-items:center;gap:6px;padding:4px 12px;border-radius:999px}.kpi-hero-combined .kpi-hero-status,.kpi-hero-combined .kpi-hero-score{flex-direction:row;align-items:baseline;gap:4px}.kpi-hero-combined .kpi-hero-icon{font-size:.9rem}.kpi-hero-combined .kpi-hero-label{font-size:.8rem}.kpi-hero-combined .kpi-hero-divider{align-self:center;height:14px}.kpi-hero-combined .kpi-value{font-size:.85rem}.kpi-hero-combined .kpi-label{font-size:.58rem}.kpi-hero{flex-direction:row;gap:6px;min-width:0;padding:6px 12px;border-radius:999px;align-self:center}.kpi-hero-icon{font-size:1rem}.kpi-hero-label{font-size:.85rem}.kpi-strip{gap:0}.kpi-cell{flex-direction:row;align-items:baseline;gap:4px;padding:4px 10px}.kpi-value{font-size:.95rem}.kpi-label{font-size:.62rem;text-transform:none;letter-spacing:0}.dashboard-meta,.day-navigator{display:none}.day-hero{display:block;position:relative;z-index:10}.day-hero-dots{padding:6px 2px 0}.day-window-label{display:none}.schedule-main section>h2{font-size:.85rem;margin:4px 0}.dirty-notice{font-size:.65rem;padding:4px 8px;margin-bottom:4px}.schedule-grid-container{min-width:0}.schedule-grid-container>*{min-width:0}.schedule-main{min-width:0}.schedule-table-wrapper{overscroll-behavior-x:contain;position:relative;z-index:1;max-width:100%}.col-time,.time-cell{position:sticky;inset-inline-start:0;z-index:5;background:var(--bg-card)}.schedule-grid-table{table-layout:fixed;width:max(100%,calc(44px + var(--col-count, 1) * 80px))}.schedule-grid-table .col-time{width:44px}.table.schedule-grid-table thead th{padding:2px 3px;font-size:.68rem;letter-spacing:0;border-bottom-width:1px;white-space:normal}.table.schedule-grid-table tbody td{padding:2px 3px}.schedule-grid-table .participant-name{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:.73rem}.schedule-grid-table .assignment-card{min-height:28px;padding:3px 2px;margin-bottom:1px;display:flex;flex-direction:column;justify-content:center}.schedule-grid-table .card-details{flex-wrap:wrap;gap:1px 2px}.task-panel-trigger{width:40px;height:40px;font-size:1rem}.schedule-grid-table .empty-slot-label{font-size:.65rem;padding:1px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.schedule-table-wrapper .table-title{position:sticky;inset-inline-start:0}.gantt-section{position:relative;z-index:2}.participant-sidebar{position:fixed;inset:auto 0 72px;max-width:unset;min-width:unset;max-height:60vh;z-index:45;border-radius:16px 16px 0 0;box-shadow:0 -4px 24px #00000040;transform:translateY(calc(100% + 96px + env(safe-area-inset-bottom)));transition:transform var(--transition-slow) cubic-bezier(.32,.72,0,1);overscroll-behavior:contain;overflow-y:auto}.participant-sidebar.sidebar-mobile-open{transform:translateY(0)}.participant-sidebar .sidebar-toggle{display:none}.sidebar-collapsed{min-width:unset!important;max-width:unset!important;transform:translateY(calc(100% + 96px + env(safe-area-inset-bottom)))}.sidebar-fab{position:fixed;bottom:80px;right:16px;z-index:46;height:40px;padding:0 14px;gap:6px;border-radius:20px;background:var(--accent);color:#fff;border:none;box-shadow:0 4px 16px #00000040;font-size:1rem;display:flex;align-items:center;justify-content:center;cursor:pointer}.sidebar-fab-label{font-size:.72rem;font-weight:600;white-space:nowrap}.sidebar-fab:active{transform:scale(.93)}.sidebar-drawer-backdrop{position:fixed;inset:0;background:#0f111766;z-index:44;animation:gmBsBackdropIn .2s ease}.gantt-mobile-toggle{display:flex;align-items:center;gap:8px;width:100%;padding:10px 12px;margin-bottom:8px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);font-size:.85rem;font-weight:600;cursor:pointer}.gantt-mobile-toggle:after{content:"▾";margin-inline-start:auto;color:var(--text-muted);transition:transform var(--transition-normal)}.gantt-mobile-toggle[aria-expanded=true]:after{transform:rotate(180deg)}.gantt-container{overflow-x:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}.gantt-container .gantt-timeline-col{min-width:600px}.gantt-hour-mark{font-size:.55rem;letter-spacing:-.02em}.violations-section{border:1px solid var(--border);border-radius:var(--radius);margin-bottom:8px;overflow:hidden}.btn-expand-all-mobile{display:inline-flex!important;align-items:center;font-size:.75rem;padding:5px 12px!important;min-height:34px!important}.table-participants thead{display:none}.table-participants{table-layout:fixed;width:100%}.table-participants tbody{display:flex;flex-direction:column;gap:0}.table-participants tbody tr{display:flex;flex-wrap:wrap;align-items:center;gap:2px 4px;padding:4px 6px;border-bottom:1px solid var(--border);max-width:100%;overflow:hidden}.table-participants tbody tr.row-selected{background:#3498db14}.table-participants .col-select{width:24px;min-width:24px;min-height:24px;display:flex;align-items:center;justify-content:center;order:0;padding:0 2px!important}.table-participants .col-index{display:none}.table-participants .col-name{order:1;flex:1 1 auto;min-width:60px;font-size:.85rem;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.table-participants .col-group{order:2;flex-shrink:0}.table-participants .col-actions{order:3;display:flex;gap:2px;flex-shrink:0;margin-inline-start:auto}.table-participants .col-expand{display:block;order:4;flex-shrink:0;padding:0!important}.table-participants .btn-expand-details{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:1px solid var(--border);border-radius:var(--radius);background:transparent;color:var(--text-muted);cursor:pointer;transition:color .15s ease}.table-participants .btn-expand-details svg{transition:transform .2s ease}.table-participants .btn-expand-details:active{background:var(--bg-hover)}.table-participants tr.row-expanded .btn-expand-details{color:var(--accent)}.table-participants tr.row-expanded .btn-expand-details svg{transform:rotate(180deg)}.table-participants tbody td .btn-icon.btn-sm{min-height:28px;min-width:28px;padding:2px 4px}.table-participants tbody td .btn-icon svg{width:14px;height:14px}.table-participants .col-level,.table-participants .col-certs,.table-participants .col-pakals,.table-participants .col-avail,.table-participants .col-notwith,.table-participants .col-prefs{display:none!important}.table-participants tbody tr:not(.row-expanded):not(.row-editing) .unavail-chips{display:none!important}.table-participants tr.row-expanded .col-level{display:block!important;order:10;flex-shrink:0}.table-participants tr.row-expanded .col-level .badge{opacity:.85}.table-participants tr.row-expanded .col-certs{display:block!important;order:11;flex-shrink:0}.table-participants tr.row-expanded .col-pakals{display:block!important;order:12;flex-shrink:0}.table-participants tr.row-expanded .col-prefs{display:block!important;order:13;flex-shrink:0}.table-participants tr.row-expanded .col-notwith{display:block!important;order:14;flex-shrink:0}.unavail-chips{gap:2px;margin-top:2px}.unavail-chip{font-size:.6rem;padding:0 4px}.blackout-panel{padding:12px 10px}.blackout-panel h4{font-size:.85rem}.blackout-list li{flex-wrap:wrap;gap:6px;padding:6px 8px;font-size:.78rem}.blackout-add{flex-direction:column;align-items:stretch;gap:8px;padding:10px}.blackout-add select.input-sm{width:100%!important}.time-inputs-group{flex-wrap:wrap;gap:6px;width:100%}.time-inputs-group .time-24h{flex:1;min-width:60px}.blackout-add input[data-field=bo-reason]{width:100%}.table-participants .col-certs>.text-muted:only-child,.table-participants .col-pakals>.text-muted:only-child{display:none}.table-participants tbody .badge{padding:1px 5px;font-size:.63rem;line-height:1.4;vertical-align:middle}.table-participants .col-avail small,.table-participants .col-level,.table-participants .col-certs,.table-participants .col-pakals,.table-participants .col-avail{font-size:.63rem}.table-participants .mobile-label{display:inline;font-weight:600;color:var(--text-muted)}.table-participants tbody tr.row-editing .col-expand{display:none!important}.table-participants tbody tr.row-editing .col-level,.table-participants tbody tr.row-editing .col-certs,.table-participants tbody tr.row-editing .col-pakals,.table-participants tbody tr.row-editing .col-prefs,.table-participants tbody tr.row-editing .col-notwith{display:block!important}.table-participants tbody tr.row-editing td:not(.col-select):not(.col-index):not(.col-expand){flex-basis:100%;min-width:0}.table-participants tbody tr.row-editing .col-name{order:1;flex:1 1 0%!important;flex-basis:0%!important;min-width:80px}.table-participants tbody tr.row-editing .col-level{order:2;flex:0 0 auto!important;flex-basis:auto!important}.table-participants tbody tr.row-editing .col-level label{display:flex;align-items:center;gap:4px;font-size:.72rem;white-space:nowrap}.table-participants tbody tr.row-editing .col-group{order:3}.table-participants tbody tr.row-editing .col-certs{order:4}.table-participants tbody tr.row-editing .col-pakals{order:5}.table-participants tbody tr.row-editing .col-prefs{order:6}.table-participants tbody tr.row-editing .col-notwith{order:7}.table-participants tbody tr.row-editing .col-avail{order:8}.table-participants tbody tr.row-editing .col-actions{order:9}.table-participants tbody tr.row-editing .pakal-checkboxes,.table-participants tbody tr.row-editing .cert-checkboxes{gap:4px 8px}.table-participants tbody tr.row-editing .checkbox-label{font-size:.75rem}.pref-eligibility-warning{font-size:.72rem;padding:5px 8px}.table-participants tbody tr.row-editing .col-avail:before{content:"זמינות";display:block;font-weight:700;font-size:.75rem;margin-bottom:2px}.btn-sm{min-height:44px;padding:10px 16px}.bulk-toolbar{position:fixed!important;bottom:calc(112px + env(safe-area-inset-bottom));inset-inline:12px;z-index:49;display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:10px 12px;margin:0;border-radius:20px;border:1px solid var(--border, #444);background:var(--bg-card, #1e1e2e);box-shadow:0 8px 28px #00000059,0 2px 6px #0003}[data-theme=light] .bulk-toolbar{box-shadow:0 8px 24px #0f172a1f,0 2px 6px #0f172a0f}.bulk-toolbar .bulk-count{flex:1 0 100%;font-size:.82rem;font-weight:800;color:var(--accent);white-space:nowrap;text-align:start;padding-inline:2px;letter-spacing:.01em}.bulk-toolbar .btn-sm{flex:1 1 0;min-width:0;font-size:.8rem!important;font-weight:600;padding:10px 8px!important;min-height:46px!important;border-radius:12px!important;white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;gap:5px}.bulk-toolbar .btn-sm svg{width:15px;height:15px;flex-shrink:0}.bulk-toolbar [data-action=bulk-add-unavailability]{background:var(--accent)!important;border:1px solid var(--accent)!important;color:#fff!important}.bulk-toolbar [data-action=bulk-delete-participants]{background:var(--danger-glow)!important;border:1px solid var(--danger)!important;color:var(--danger)!important}.bulk-toolbar [data-action=bulk-clear-selection]{flex:0 0 auto;background:transparent!important;border:none!important;color:var(--text-muted)!important;text-decoration:underline;text-underline-offset:3px;padding-inline:6px!important}body.bulk-select-mode .tab-nav{display:none}body.bulk-select-mode .bulk-toolbar{bottom:calc(8px + env(safe-area-inset-bottom))}body.bulk-select-mode{padding-bottom:calc(124px + env(safe-area-inset-bottom))}.pill{min-height:44px;padding:8px 14px}.assignment-card{padding:4px 6px}.time-cell-inspectable{min-height:36px}input[type=text],input[type=number],input[type=search],select,textarea,.gm-select-trigger,.gm-select-option{min-height:44px}.sidebar-toggle{width:44px;height:44px}.cb-select-participant,#cb-select-all{width:20px!important;height:20px!important;min-width:20px!important;min-height:20px!important;padding:0!important}.gm-modal-backdrop{align-items:flex-end}.gm-modal-dialog{border-radius:16px 16px 0 0;max-width:100%;width:100%;animation:gmMobileModalSlideUp .3s cubic-bezier(.32,.72,0,1)}@keyframes gmMobileModalSlideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.gm-modal-body{max-height:calc(100vh - 200px)}.gm-modal-actions{padding-bottom:calc(16px + env(safe-area-inset-bottom))}.gm-modal-actions button{min-height:44px}.gm-save-confirm-actions{flex-direction:column;gap:6px}.gm-save-confirm-actions button{width:100%}.rescue-modal{width:100vw;max-height:100vh;border-radius:0}.bulk-dialog{min-width:unset;width:calc(100vw - 32px)}.export-modal{width:calc(100vw - 32px);max-width:100%}.export-format-group{gap:6px}.export-format-option{padding:9px 6px}.export-format-label{font-size:.85rem;white-space:nowrap}.gm-modal-body,.rescue-modal,.availability-popover{-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.task-inline-detail{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px;margin:4px 0;font-size:.82rem;line-height:1.5;animation:fadeIn .2s ease}.template-title>.text-muted{display:none}.onetime-card .template-title>.text-muted{display:inline}.level-toggle{min-height:36px;min-width:44px;padding:4px 12px}.gantt-desktop-title,.manual-warehouse{display:none}.manual-build-strip{padding:6px 12px;font-size:.8rem;position:sticky;top:0;z-index:10}.manual-slot-target,.manual-slot-empty{min-height:44px}.warehouse-sheet-cards{grid-template-columns:1fr 1fr;gap:6px;overflow:hidden}.warehouse-card-sheet{min-height:44px;padding:8px;min-width:0;overflow:hidden}.warehouse-card-sheet .wc-name{white-space:normal;word-break:break-word;line-height:1.25}.warehouse-card-sheet .wc-row-main{flex-wrap:wrap;gap:3px 5px}.warehouse-card-sheet .wc-badges .badge{font-size:.55rem;padding:1px 3px}.warehouse-card-sheet .wc-load{width:16px;height:16px;font-size:.6rem}.btn-manual-remove-sheet,.btn-manual-split-sheet{min-height:48px;font-size:1rem}.split-picker-half{min-height:56px;padding:12px}.split-picker-half-name{font-size:1.05rem}.split-picker-half-clear{min-height:44px;min-width:44px;font-size:1.1rem}.split-picker-search{min-height:44px;font-size:16px}.split-picker-actions .btn{min-height:48px;flex:1}.schedule-grid-compact .manual-slot-target,.schedule-grid-compact .manual-slot-empty{min-height:36px}.schedule-grid-compact .assignment-card{padding:3px 5px}.schedule-toolbar-manual .toolbar-group--generate,.schedule-toolbar-manual #btn-reset-storage,.schedule-toolbar-manual #btn-continuity-import,.schedule-toolbar-manual .continuity-chip{display:none}.settings-accordion{margin-bottom:.5rem;border-radius:6px}.settings-accordion-header{padding:.6rem .75rem}.settings-accordion-body-inner{padding:0 .75rem .75rem}.settings-acc-summary,.settings-nested-summary{display:none}.settings-nested-header{padding:.5rem .25rem}.settings-nested-body-inner{padding:.25rem 0}.settings-preset-toolbar{flex-direction:column;align-items:stretch}.transfer-action-btn{padding:.85rem}.transfer-scope-item,.transfer-import-option{padding:.75rem}.transfer-replace-item{min-height:44px}}@media(min-width:768px){.sidebar-fab,.sidebar-drawer-backdrop,.gantt-mobile-toggle{display:none}.gantt-desktop-title{display:block}}@media(max-width:767px){.avail-strip-inputs-row{flex-direction:column;align-items:stretch}.avail-strip-range-sep{display:none}.avail-strip-margin-row{flex-direction:column;align-items:flex-start}.avail-strip-margin-fields{flex-direction:column;align-items:flex-start;gap:6px}}@media(max-width:480px){.header-top{flex-direction:row;flex-wrap:nowrap;align-items:center;gap:6px}header h1{font-size:.78rem;width:auto;text-align:start}.tab-nav .tab-btn:not(.tab-active):not(.tab-fab) .tab-label{display:none}.tab-nav .tab-btn.tab-active .tab-label{font-size:.6rem}.tab-nav .tab-btn .tab-icon{font-size:1.3rem}.gantt-label-col{display:none}.gantt-block-text:before{content:attr(data-participant);margin-inline-end:4px;font-weight:600}.algo-toggle-grid{grid-template-columns:1fr}}[data-theme=light] .gm-bottom-sheet-backdrop{background:#0000004d}[data-theme=light] .gm-bottom-sheet{box-shadow:0 -8px 40px #00000026}[data-theme=light] .sidebar-fab{box-shadow:0 4px 16px #00000026}@media(max-width:767px){.te-toolbar{flex-direction:column;align-items:stretch;gap:6px;position:static}.te-toolbar-right{display:none}.te-compact-list{padding-bottom:120px}.te-mobile-add-actions{display:flex;gap:6px;padding:4px 8px 8px;border-bottom:1px solid var(--border);margin-bottom:6px}.te-mobile-add-actions .btn-sm{flex:1;min-height:40px;font-size:.9rem;white-space:nowrap}.te-mobile-bottom-bar{display:flex;justify-content:center;align-items:center;gap:8px;padding:8px 12px calc(8px + env(safe-area-inset-bottom));position:fixed;bottom:68px;left:0;right:0;z-index:49;background:var(--bg);border-top:1px solid var(--border);box-shadow:0 -2px 8px #00000026}.te-mobile-bottom-bar .btn-sm{flex:1;min-height:44px;font-size:.95rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.te-mobile-bottom-bar .te-bottom-bar-save{flex:2}.te-mobile-bulk-bar{flex-wrap:wrap}.te-mobile-bulk-bar .te-bulk-count{flex:1 1 100%;text-align:center;font-size:.85rem;font-weight:600;white-space:nowrap}.te-mobile-bulk-bar .btn-sm{padding-left:6px;padding-right:6px}.te-compact-row input[type=checkbox]{width:22px;height:22px;flex-shrink:0}.te-compact-name{min-height:38px;font-size:16px}.te-compact-pill{min-height:34px;font-size:16px}.te-compact-chevron{min-width:40px;min-height:40px;display:flex;align-items:center;justify-content:center}.te-compact-body select,.te-compact-body input[type=text]{min-height:40px;font-size:16px}.te-compact-body input[type=checkbox]{width:20px;height:20px}.te-compact-delete,.te-compact-more{min-height:44px}.te-qa-name{min-height:44px;font-size:16px}.te-qa-add-btn{min-height:44px;min-width:60px}.te-qa-chip{padding:6px 10px;font-size:.9rem}.te-qa-chip-remove{min-width:28px;min-height:28px;display:flex;align-items:center;justify-content:center}.te-qa-certs input[type=checkbox]{width:22px;height:22px}.te-validation-bar{margin:6px 8px;font-size:.8rem}}@media(max-width:767px){.swap-picker{max-height:none;gap:8px}.swap-picker-list{max-height:none}.swap-picker-tab{min-height:44px;font-size:.9rem}.swap-picker-chip{min-height:36px;padding:8px 12px;font-size:.8rem}.swap-picker-search,.swap-picker-sort{min-height:44px;font-size:16px}.swap-picker-list .warehouse-card{min-height:52px;padding:10px 12px}.swap-picker-cancel,.swap-picker-confirm{min-height:48px;font-size:.95rem}.swap-picker-footer{padding-bottom:calc(8px + env(keyboard-inset-height,0px))}}.workload-popup.workload-popup-sheet .wp-big{font-size:2rem}.workload-popup.workload-popup-sheet .wp-sparkline{height:110px;gap:6px}.workload-popup.workload-popup-sheet .wp-spark-day{font-size:.85rem;margin-top:6px}.workload-popup.workload-popup-sheet .wp-spark-value{font-size:.72rem;margin-bottom:4px}.workload-popup.workload-popup-sheet .wp-today-line{font-size:.9rem;padding:10px 12px}.swimlane-view{--swimlane-gutter: 168px;--swimlane-track-bg: rgba(255, 255, 255, .025);--swimlane-band-color: rgba(255, 90, 90, .16);--swimlane-now-color: #ffd166;--swimlane-row-h: 56px;--swimlane-block-h: 30px;--swimlane-axis-h: 32px;display:flex;flex-direction:column;gap:8px;width:100%;direction:rtl;font-size:.9rem;color:var(--text)}[data-theme=light] .swimlane-view{--swimlane-track-bg: rgba(0, 0, 0, .03);--swimlane-band-color: rgba(231, 76, 60, .14);--swimlane-now-color: #d97706}.swimlane-empty{padding:32px 12px;text-align:center;color:var(--text-muted)}.swimlane-axis{display:flex;align-items:stretch;position:sticky;top:0;z-index:4;background:var(--bg-card);border-bottom:1px solid var(--border);height:var(--swimlane-axis-h);border-radius:8px 8px 0 0}.swimlane-axis-gutter{width:var(--swimlane-gutter);flex:0 0 var(--swimlane-gutter);border-inline-start:1px solid var(--border)}.swimlane-axis-track{flex:1;position:relative}.swimlane-axis-tick{position:absolute;top:0;bottom:0;width:36px;margin-right:-18px;padding:0;background:transparent;border:none;color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}.swimlane-axis-tick:before{content:"";position:absolute;top:0;bottom:0;right:18px;width:1px;background:linear-gradient(to bottom,transparent,var(--border) 30%,var(--border) 70%,transparent);pointer-events:none}@media(hover:hover){.swimlane-axis-tick:hover:before{background:linear-gradient(to bottom,transparent,var(--accent) 30%,var(--accent) 70%,transparent)}}.swimlane-axis-tick:focus-visible:before{background:linear-gradient(to bottom,transparent,var(--accent) 30%,var(--accent) 70%,transparent)}.swimlane-axis-tick:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;border-radius:4px}.swimlane-axis-tick--end{margin-right:0;width:18px}.swimlane-axis-tick--end:before{right:0}.swimlane-axis-label{position:absolute;top:4px;right:22px;font-size:.68rem;letter-spacing:.02em;font-variant-numeric:tabular-nums;color:var(--text-muted);white-space:nowrap;pointer-events:none}@media(hover:hover){.swimlane-axis-tick:hover .swimlane-axis-label{color:var(--accent)}}.swimlane-axis-tick:focus-visible .swimlane-axis-label{color:var(--accent)}.swimlane-axis-tick--end .swimlane-axis-label{right:auto;left:4px}.swimlane-axis-now{position:absolute;top:0;bottom:0;width:0;border-inline-end:2px solid var(--swimlane-now-color);pointer-events:none}.swimlane-axis-now-pill{position:absolute;top:50%;right:4px;transform:translateY(-50%);background:var(--swimlane-now-color);color:#1a1d27;font-size:.65rem;font-weight:700;padding:1px 6px;border-radius:8px;white-space:nowrap;box-shadow:0 0 0 2px var(--bg-card)}.swimlane-group{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;overflow:hidden}.swimlane-group-header{display:flex;align-items:center;gap:8px;padding:8px 12px;background:linear-gradient(to bottom,var(--bg-hover),var(--bg-card));border-bottom:1px solid var(--border);font-weight:600;cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}@media(hover:hover){.swimlane-group-header:hover{filter:brightness(1.1)}}.swimlane-group-chevron{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;color:var(--text-muted);transition:transform .18s ease}.swimlane-group--collapsed .swimlane-group-chevron{transform:rotate(-90deg)}.swimlane-group--collapsed .swimlane-lanes{display:none}.swimlane-group--collapsed .swimlane-group-header{border-bottom:none}.swimlane-group-dot{width:10px;height:10px;border-radius:50%;flex:0 0 auto}.swimlane-group-name{flex:1;font-size:.95rem}.swimlane-group-count{font-size:.75rem;color:var(--text-muted);background:#ffffff0d;padding:2px 8px;border-radius:999px;font-variant-numeric:tabular-nums}[data-theme=light] .swimlane-group-count{background:#0000000d}.swimlane-lanes{display:flex;flex-direction:column}.swimlane-lane{display:flex;align-items:stretch;min-height:var(--swimlane-row-h);border-bottom:1px solid var(--border);position:relative;transition:background .12s ease}.swimlane-lane:last-child{border-bottom:none}@media(hover:hover){.swimlane-lane:hover{background:var(--bg-hover)}}.swimlane-lane--out{opacity:.7}.swimlane-lane--has-conflict .swimlane-identity:after{content:"";position:absolute;top:50%;right:0;transform:translateY(-50%);width:3px;height:60%;background:#e74c3c;border-radius:0 2px 2px 0}.swimlane-identity{flex:0 0 var(--swimlane-gutter);display:flex;align-items:center;gap:6px;padding:6px 10px 6px 8px;border-inline-start:1px solid var(--border);position:relative;font-size:.82rem;min-width:0}.swimlane-id-dot{width:8px;height:8px;border-radius:50%;flex:0 0 auto}.swimlane-id-name{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}.swimlane-id-level{flex:0 0 auto;font-size:.65rem;font-weight:700;letter-spacing:.02em;padding:1px 5px;border-radius:4px;color:#fff;font-variant-numeric:tabular-nums}.swimlane-id-hours{flex:0 0 auto;font-size:.72rem;color:var(--text-muted);font-variant-numeric:tabular-nums;min-width:22px;text-align:end}.swimlane-id-icons{flex:0 0 auto;display:inline-flex;align-items:center;gap:3px}.swimlane-id-icon{width:14px;height:14px;display:inline-flex;align-items:center;justify-content:center;font-size:.7rem;line-height:1}.swimlane-id-icon--conflict{color:#e74c3c}.swimlane-id-icon--frozen{color:var(--frozen)}.swimlane-id-icon--out{color:var(--text-muted)}.swimlane-id-out-chip{flex:0 0 auto;font-size:.65rem;background:#e74c3c26;color:#e74c3c;padding:1px 6px;border-radius:999px;font-weight:600}.swimlane-track{flex:1;position:relative;background:linear-gradient(to left,var(--swimlane-track-bg) 0 1px,transparent 1px) 0 0 / calc(100% / 6) 100%,var(--swimlane-track-bg);min-height:var(--swimlane-row-h)}.swimlane-view.has-now .swimlane-track:before{content:"";position:absolute;top:0;bottom:0;right:var(--swimlane-now-x);width:0;border-inline-end:2px solid var(--swimlane-now-color);pointer-events:none;z-index:3}.swimlane-band{position:absolute;top:0;bottom:0;background:repeating-linear-gradient(-45deg,var(--swimlane-band-color),var(--swimlane-band-color) 4px,transparent 4px,transparent 9px);pointer-events:none;z-index:1}.swimlane-block{position:absolute;top:50%;transform:translateY(-50%);height:var(--swimlane-block-h);border-radius:5px;display:flex;align-items:center;padding:0 6px;font-size:.7rem;color:#fff;font-weight:600;letter-spacing:.01em;overflow:hidden;white-space:nowrap;z-index:2;cursor:pointer;box-shadow:0 1px 2px #00000040,inset 0 1px #ffffff1a;transition:filter .12s ease,transform .12s ease}@media(hover:hover){.swimlane-block:hover{filter:brightness(1.1);transform:translateY(-50%) scale(1.02)}}.swimlane-block-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;text-shadow:0 1px 1px rgba(0,0,0,.35)}.swimlane-block-frozen{flex:0 0 auto;display:inline-flex;width:12px;height:12px;align-items:center;justify-content:center;margin-inline-start:4px;opacity:.85}.swimlane-block-frozen svg{width:12px;height:12px}.swimlane-block--frozen{filter:saturate(.4) brightness(.85);box-shadow:inset 0 0 0 1px #5dade259,0 1px 2px #0003}.swimlane-block--conflict{box-shadow:inset 0 2px #e74c3c,0 1px 2px #00000040}.swimlane-block--injected{border-inline-end:2px dashed rgba(255,255,255,.6)}@media(max-width:767px){.swimlane-view{--swimlane-row-h: 56px;--swimlane-block-h: 22px;--swimlane-axis-h: 30px;font-size:.85rem}.swimlane-axis{border-radius:6px 6px 0 0}.swimlane-axis-gutter{display:none}.swimlane-lane{flex-direction:column;align-items:stretch}.swimlane-identity{flex:0 0 auto;border-inline-start:none;padding:6px 10px 4px;font-size:.85rem}.swimlane-track{min-height:32px;margin-bottom:8px}.swimlane-lane--has-conflict .swimlane-identity:after{top:auto;bottom:0;right:8px;transform:none;width:24px;height:2px;border-radius:0}.swimlane-axis-tick:not(.swimlane-axis-tick--end){width:44px}}@media(min-width:768px){.gantt-section-content>.swimlane-view{margin-bottom:16px}.gantt-section-content>.swimlane-view+.gantt-chart{border-top:1px solid var(--border);padding-top:12px}}.swimlane-section-toggle{display:flex;align-items:center;gap:8px;width:100%;padding:0;background:transparent;border:none;color:inherit;cursor:pointer;text-align:start;-webkit-tap-highlight-color:transparent}.swimlane-section-toggle h2{margin:0;flex:1}.swimlane-section-chevron{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;color:var(--text-muted);transition:transform .18s ease}.swimlane-section--collapsed .swimlane-section-chevron{transform:rotate(-90deg)}.swimlane-section--collapsed .swimlane-section-body{display:none}.swimlane-bs-task-summary{padding:8px 10px;margin-bottom:10px;background:var(--bg-hover);border-radius:6px;display:flex;flex-direction:column;gap:4px}.swimlane-bs-task-time{font-variant-numeric:tabular-nums;font-weight:600;font-size:.95rem}.swimlane-bs-task-subteam{font-size:.85rem;color:var(--text-secondary)}.swimlane-bs-task-certs{display:flex;flex-wrap:wrap;gap:4px;margin-top:2px}.swimlane-bs-task-flag{font-size:.78rem;color:var(--text-muted);display:inline-flex;align-items:center;gap:4px}.swimlane-bs-task-flag svg{width:12px;height:12px}.swimlane-bs-violations{display:flex;flex-direction:column;gap:6px;margin-bottom:10px;padding:8px 10px;background:#e74c3c14;border-inline-start:3px solid #e74c3c;border-radius:4px}.swimlane-bs-violation{display:flex;flex-direction:column;gap:2px}.swimlane-bs-violation-code{font-size:.78rem;font-weight:700;color:#e74c3c}.swimlane-bs-violation-msg{font-size:.78rem;color:var(--text)}.swimlane-bs-participant{margin-top:4px}.swimlane-bs-today{margin-top:6px;display:flex;flex-direction:column;gap:4px}.swimlane-bs-today-title{font-weight:600;font-size:.85rem;color:var(--text-secondary);margin-bottom:2px}.swimlane-bs-today-row{display:flex;align-items:center;gap:8px;padding:4px 6px;background:var(--bg-hover);border-radius:4px;font-size:.85rem}.swimlane-bs-today-dot{width:8px;height:8px;border-radius:50%;flex:0 0 auto}.swimlane-bs-today-name{flex:1;font-weight:500}.swimlane-bs-today-time{font-size:.78rem;color:var(--text-muted);font-variant-numeric:tabular-nums}.swimlane-bs-axis-section{margin-bottom:12px}.swimlane-bs-axis-section:last-child{margin-bottom:0}.swimlane-bs-axis-section-title{font-weight:700;font-size:.85rem;margin-bottom:6px;display:flex;align-items:center;gap:6px}.swimlane-bs-axis-free .swimlane-bs-axis-section-title{color:#2ecc71}.swimlane-bs-axis-busy .swimlane-bs-axis-section-title{color:var(--text-secondary)}.swimlane-bs-axis-out .swimlane-bs-axis-section-title{color:var(--text-muted)}.swimlane-bs-axis-count{font-size:.72rem;background:#ffffff0f;padding:1px 7px;border-radius:999px;font-variant-numeric:tabular-nums;color:var(--text-secondary)}[data-theme=light] .swimlane-bs-axis-count{background:#0000000f}.swimlane-bs-axis-list{display:flex;flex-direction:column;gap:4px}.swimlane-bs-chip{display:flex;align-items:center;gap:8px;padding:6px 8px;background:var(--bg-hover);border-radius:6px;font-size:.85rem;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background .12s ease}@media(hover:hover){.swimlane-bs-chip:hover{background:var(--bg-card-end)}}.swimlane-bs-chip-dot{width:8px;height:8px;border-radius:50%;flex:0 0 auto}.swimlane-bs-chip-name{flex:1 1 auto;font-weight:500}.swimlane-bs-chip-level{font-size:.65rem;font-weight:700;padding:1px 5px;border-radius:4px;color:#fff;font-variant-numeric:tabular-nums}.swimlane-bs-chip-sub{font-size:.72rem;color:var(--text-muted);max-width:40%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tutorial-backdrop{position:fixed;inset:0;z-index:200000;pointer-events:auto;animation:tutorialFadeIn .2s ease}.tutorial-backdrop.tutorial-backdrop-centered{background:radial-gradient(ellipse at 50% 40%,color-mix(in srgb,var(--accent) 14%,transparent) 0%,color-mix(in srgb,var(--accent) 4%,transparent) 35%,transparent 70%),#0f111773;-webkit-backdrop-filter:blur(18px) saturate(.6) brightness(.85);backdrop-filter:blur(18px) saturate(.6) brightness(.85)}.tutorial-backdrop.tutorial-backdrop-centered:after{content:"";position:absolute;inset:0;background-color:#ffffffd9;-webkit-mask-image:url(./logo-header-Ub_5NV2r.png);-webkit-mask-mode:luminance;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center 28%;-webkit-mask-size:min(55vw,280px) auto;mask-image:url(./logo-header-Ub_5NV2r.png);mask-mode:luminance;mask-repeat:no-repeat;mask-position:center 28%;mask-size:min(55vw,280px) auto;opacity:.35;pointer-events:none}[data-theme=light] .tutorial-backdrop.tutorial-backdrop-centered{background:radial-gradient(ellipse at 50% 40%,color-mix(in srgb,var(--accent) 18%,transparent) 0%,color-mix(in srgb,var(--accent) 6%,transparent) 35%,transparent 70%),#141e3259}[data-theme=light] .tutorial-backdrop.tutorial-backdrop-centered:after{opacity:.25}.tutorial-spotlight{position:fixed;border-radius:8px;box-shadow:0 0 0 9999px #0f11178c;transition:top .25s ease,left .25s ease,width .25s ease,height .25s ease;pointer-events:none;z-index:200001}[data-theme=light] .tutorial-spotlight{box-shadow:0 0 0 9999px #141e3273}.tutorial-spotlight.tutorial-spotlight-centered{top:50%;left:50%;width:0;height:0}.tutorial-spotlight.tutorial-spotlight-pulse{animation:tutorialSpotlightPulse .55s ease}@keyframes tutorialSpotlightPulse{0%{outline:0 solid rgba(255,220,0,0)}40%{outline:4px solid rgba(255,220,0,.85)}to{outline:0 solid rgba(255,220,0,0)}}.tutorial-popover{position:fixed;z-index:200002;background:var(--bg-card);color:var(--text);border:1px solid var(--border);border-radius:12px;box-shadow:0 8px 32px #00000073;padding:16px 20px 12px;width:min(380px,calc(100vw - 32px));max-height:calc(100vh - 32px);overflow-y:auto;direction:rtl;animation:tutorialPopoverIn .2s ease}.tutorial-popover.tutorial-popover-centered{top:50%;left:50%;transform:translate(-50%,-50%)}.tutorial-step-counter{font-size:.75rem;color:var(--text-muted);margin-bottom:4px}.tutorial-tour-track{font-size:.72rem;font-weight:600;color:var(--text-muted);margin-bottom:2px}.tutorial-progress{height:3px;background:var(--border);border-radius:2px;overflow:hidden;margin:0 0 10px}.tutorial-progress-fill{height:100%;background:var(--accent);border-radius:2px;transition:width .25s ease}.tutorial-title{font-size:1.05rem;font-weight:600;margin:0 0 8px;color:var(--text);line-height:1.3}.tutorial-body{font-size:.92rem;line-height:1.55;color:var(--text);margin:0 0 12px}.tutorial-body strong{color:var(--accent);font-weight:600}.tutorial-body em{font-style:normal;color:var(--text-muted)}.tutorial-screenshot{display:block;width:100%;max-height:320px;object-fit:contain;border-radius:8px;border:1px solid var(--border);margin:8px 0 12px;background:var(--bg-hover)}@media(max-width:767px){.tutorial-screenshot{max-height:36vh}}.tutorial-action-chip{display:flex;flex-direction:column;gap:6px;align-items:stretch;padding:10px 12px;margin:0 0 12px;background:color-mix(in srgb,var(--accent) 8%,transparent);border:1px dashed color-mix(in srgb,var(--accent) 45%,var(--border));border-radius:8px}.tutorial-btn-chip{align-self:flex-start}.tutorial-action-chip-hint{font-size:.8rem;color:var(--text-muted);line-height:1.35}.tutorial-footer{display:flex;gap:8px;align-items:center;border-top:1px solid var(--border);padding-top:10px;margin-top:4px}.tutorial-btn{padding:6px 14px;font-size:.9rem;border-radius:6px;cursor:pointer;font-family:inherit;border:1px solid transparent;transition:background var(--transition-fast, .15s) ease,border-color var(--transition-fast, .15s) ease}.tutorial-btn-primary{background:var(--accent);color:#fff;border-color:var(--accent);font-weight:600}.tutorial-btn-primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.tutorial-btn-finish{background:transparent;color:var(--accent)}.tutorial-btn-finish:hover{background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent-hover)}.tutorial-btn-secondary{background:transparent;color:var(--text);border-color:var(--border)}.tutorial-btn-secondary:hover:not(:disabled){background:var(--bg-hover)}.tutorial-btn-secondary:disabled{opacity:.4;cursor:not-allowed}.tutorial-btn-ghost{background:transparent;color:var(--text-muted);border-color:transparent;margin-inline-start:auto}.tutorial-btn-ghost:hover{color:var(--danger)}@media(max-width:767px){.tutorial-popover{top:auto!important;left:0!important;right:0!important;bottom:0;transform:none!important;width:auto;max-width:100vw;max-height:60vh;border-radius:16px 16px 0 0;border-bottom:none;padding:14px 18px 16px;animation:tutorialSheetUp .25s ease}.tutorial-popover.tutorial-popover-centered{bottom:0}.tutorial-popover.tutorial-popover-lifted{bottom:var(--tutorial-popover-lift, 0)!important;left:8px!important;right:8px!important;width:auto;max-width:calc(100vw - 16px);max-height:var(--tutorial-popover-max-h, 60vh);border-radius:16px;border-bottom:1px solid var(--border);box-shadow:0 8px 32px #00000080,0 -8px 24px #00000059}.tutorial-popover:before{content:"";display:block;width:36px;height:4px;border-radius:2px;background:var(--text-muted);opacity:.35;margin:0 auto 10px}}.tutorial-banner{position:relative;display:flex;align-items:center;gap:12px;padding:8px 16px;margin:0;background:linear-gradient(270deg,color-mix(in srgb,var(--accent) 18%,var(--bg-card)) 0%,var(--bg-card) 100%);border-bottom:1px solid var(--border);z-index:1100;animation:tutorialBannerIn .25s ease;flex-wrap:wrap}.tutorial-banner-icon{font-size:1.2rem;flex-shrink:0}.tutorial-banner-text{flex:1 1 200px;font-size:.9rem;color:var(--text)}.tutorial-banner-text strong{color:var(--accent);margin-inline-end:4px}.tutorial-banner-actions{display:flex;gap:6px;flex-shrink:0}.tutorial-banner-actions .btn-sm{font-size:.85rem}.tutorial-banner-close{background:transparent;border:none;color:var(--text-muted);font-size:1.2rem;cursor:pointer;padding:0 6px;line-height:1}.tutorial-banner-close:hover{color:var(--danger)}@media(max-width:480px){.tutorial-banner{padding:8px 12px}.tutorial-banner-text{flex:1 1 100%}}.tutorial-launcher-body .tutorial-launcher-intro{font-size:.9rem;line-height:1.5;color:var(--text-muted);margin:0 0 12px}.tutorial-track-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px}.tutorial-track-btn{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 12px;background:var(--bg-card);border:1px solid var(--border);border-radius:8px;cursor:pointer;font-family:inherit;text-align:start;transition:background var(--transition-fast, .15s) ease,border-color var(--transition-fast, .15s) ease;color:var(--text)}.tutorial-track-btn:hover{background:var(--bg-hover);border-color:var(--accent)}.tutorial-track-btn--overview{border-inline-start:3px solid var(--accent)}.tutorial-track-btn-row{display:flex;align-items:center;gap:6px;width:100%}.tutorial-track-icon{font-size:1.1rem;flex-shrink:0}.tutorial-track-label{font-weight:600;font-size:.95rem;flex:1}.tutorial-track-seen{font-size:.85rem;color:var(--success);opacity:.85}.tutorial-track-warn{font-size:.85rem;color:var(--warning)}.tutorial-track-desc{font-size:.78rem;color:var(--text-muted);line-height:1.35}.tutorial-launcher-notice{display:block;margin-top:10px;font-size:.82rem;color:var(--text-muted);font-style:italic}@keyframes tutorialFadeIn{0%{opacity:0}to{opacity:1}}@keyframes tutorialPopoverIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes tutorialSheetUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes tutorialBannerIn{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.tutorial-spotlight{transition:none}.tutorial-popover,.tutorial-banner,.tutorial-backdrop{animation:none}}.gm-auth-gate{position:fixed;inset:0;z-index:100000;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:clamp(22px,6vh,48px);padding:24px;background:#0a16228c;-webkit-backdrop-filter:blur(20px) saturate(120%);backdrop-filter:blur(20px) saturate(120%);animation:gm-auth-fade-in .4s ease}.gm-auth-gate--exit{animation:gm-auth-fade-out .4s ease forwards;pointer-events:none}.gm-auth-logo{width:clamp(128px,36vw,208px);height:auto;border-radius:30px;box-shadow:0 18px 50px #00000073;user-select:none;-webkit-user-drag:none}.gm-auth-input{width:min(320px,78vw);padding:14px 18px;font-size:1.25rem;text-align:center;letter-spacing:.14em;color:#fff;background:#ffffff1f;border:1px solid rgba(255,255,255,.35);border-radius:14px;outline:none;box-shadow:0 8px 30px #0000004d;transition:border-color .18s ease,background .18s ease,box-shadow .18s ease}.gm-auth-input:focus{border-color:#ffffffd9;background:#ffffff2e;box-shadow:0 0 0 4px #5ba0e847,0 8px 30px #00000059}.gm-auth-shake{animation:gm-auth-shake .4s ease}body.gm-auth-locked{overflow:hidden}@keyframes gm-auth-fade-in{0%{opacity:0}to{opacity:1}}@keyframes gm-auth-fade-out{0%{opacity:1}to{opacity:0;visibility:hidden}}@keyframes gm-auth-shake{0%,to{transform:translate(0)}20%{transform:translate(-9px)}40%{transform:translate(8px)}60%{transform:translate(-6px)}80%{transform:translate(4px)}}@media(prefers-reduced-motion:reduce){.gm-auth-gate,.gm-auth-gate--exit,.gm-auth-shake{animation:none}}
