:root{--g-arrow-color: #1f2937;--g-bar-color: #fff;--g-bar-border: #fff;--g-tick-color-thick: #ededed;--g-tick-color: #f3f3f3;--g-actions-background: #f3f3f3;--g-border-color: #ebeff2;--g-text-muted: #7c7c7c;--g-text-light: #fff;--g-text-dark: #171717;--g-progress-color: #dbdbdb;--g-handle-color: #37352f;--g-weekend-label-color: #dcdce4;--g-expected-progress: #c4c4e9;--g-header-background: #fff;--g-row-color: #fdfdfd;--g-row-border-color: #c7c7c7;--g-today-highlight: #37352f;--g-popup-actions: #ebeff2;--g-weekend-highlight-color: #f7f7f7}html[data-theme=dark]{--g-arrow-color: #e5e5e5;--g-bar-color: #2a2a2a;--g-bar-border: #3a3a3a;--g-tick-color-thick: #1a1a1a;--g-tick-color: #0a0a0a;--g-actions-background: #1a1a1a;--g-border-color: #2a2a2a;--g-text-muted: #999999;--g-text-light: #ffffff;--g-text-dark: #f5f5f5;--g-progress-color: #4a4a4a;--g-handle-color: #d0d0d0;--g-weekend-label-color: #3a3a3a;--g-expected-progress: #5a5a5a;--g-header-background: #0a0a0a;--g-row-color: #141414;--g-row-border-color: #2a2a2a;--g-today-highlight: #999999;--g-popup-actions: #1a1a1a;--g-weekend-highlight-color: #0f0f0f}.gantt-container{line-height:14.5px;position:relative;overflow:auto;font-size:12px;height:var(--gv-grid-height);width:100%;border-radius:8px;isolation:isolate}.gantt-container .popup-wrapper{position:absolute;top:0;left:0;background:var(--g-header-background);box-shadow:0 10px 24px -3px #0003;padding:10px;border-radius:5px;width:max-content;z-index:1000}.gantt-container .popup-wrapper .title{margin-bottom:2px;color:var(--g-text-dark);font-size:.85rem;font-weight:650;line-height:15px}.gantt-container .popup-wrapper .subtitle{color:var(--g-text-dark);font-size:.8rem;margin-bottom:5px}.gantt-container .popup-wrapper .details{color:var(--g-text-muted);font-size:.7rem}.gantt-container .popup-wrapper .actions{margin-top:10px;margin-left:3px}.gantt-container .popup-wrapper .action-btn{border:none;padding:5px 8px;background-color:var(--g-popup-actions);border-right:1px solid var(--g-border-color)}.gantt-container .popup-wrapper .action-btn:hover{filter:brightness(97%)}.gantt-container .popup-wrapper .action-btn:first-child{border-top-left-radius:4px;border-bottom-left-radius:4px}.gantt-container .popup-wrapper .action-btn:last-child{border-right:none;border-top-right-radius:4px;border-bottom-right-radius:4px}.gantt-container .grid-header{height:calc(var(--gv-lower-header-height) + var(--gv-upper-header-height) + 10px);background-color:var(--g-header-background);position:sticky;top:0;left:0;border-bottom:1px solid var(--g-row-border-color);z-index:1000}.gantt-container .lower-text,.gantt-container .upper-text{text-anchor:middle}.gantt-container .upper-header{height:var(--gv-upper-header-height)}.gantt-container .lower-header{height:var(--gv-lower-header-height)}.gantt-container .lower-text{font-size:12px;position:absolute;width:calc(var(--gv-column-width) * .8);height:calc(var(--gv-lower-header-height) * .8);margin:0 calc(var(--gv-column-width) * .1);align-content:center;text-align:center;color:var(--g-text-muted)}.gantt-container .upper-text{position:absolute;width:fit-content;font-weight:500;font-size:14px;color:var(--g-text-dark);height:calc(var(--gv-lower-header-height) * .66)}.gantt-container .current-upper{position:sticky;left:0!important;padding-left:17px;background:var(--g-header-background)}.gantt-container .side-header{position:sticky;top:0;right:0;float:right;z-index:1000;line-height:20px;font-weight:400;width:max-content;margin-left:auto;padding-right:10px;padding-top:10px;background:var(--g-header-background);display:flex}.gantt-container .side-header *{transition-property:background-color;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;background-color:var(--g-actions-background);border-radius:.5rem;border:none;padding:5px 8px;color:var(--g-text-dark);font-size:14px;letter-spacing:.02em;font-weight:420;box-sizing:content-box;margin-right:5px}.gantt-container .side-header *:last-child{margin-right:0}.gantt-container .side-header *:hover{filter:brightness(97.5%)}.gantt-container .side-header select{width:60px;padding-top:2px;padding-bottom:2px}.gantt-container .side-header select:focus{outline:none}.gantt-container .date-range-highlight{background-color:var(--g-progress-color);border-radius:12px;height:calc(var(--gv-lower-header-height) - 6px);top:calc(var(--gv-upper-header-height) + 5px);position:absolute}.gantt-container .current-highlight{position:absolute;background:var(--g-today-highlight);width:1px;z-index:999}.gantt-container .current-ball-highlight{position:absolute;background:var(--g-today-highlight);z-index:1001;border-radius:50%}.gantt-container .current-date-highlight{background:var(--g-today-highlight);color:var(--g-text-light);border-radius:5px}.gantt-container .holiday-label{position:absolute;top:0;left:0;opacity:0;z-index:1000;background:var(--g-weekend-label-color);border-radius:5px;padding:2px 5px}.gantt-container .holiday-label.show{opacity:100}.gantt-container .extras{position:sticky;left:0}.gantt-container .extras .adjust{position:absolute;left:8px;top:calc(var(--gv-grid-height) - 60px);background-color:var(--g-actions-background);color:var(--g-text-light);border:none;padding:8px;border-radius:3px}.gantt-container .hide{display:none}.gantt{user-select:none;-webkit-user-select:none;position:absolute}.gantt .grid-background{fill:none}.gantt .grid-row{fill:var(--g-row-color)}.gantt .row-line{stroke:var(--g-border-color)}.gantt .tick{stroke:var(--g-tick-color);stroke-width:.4}.gantt .tick.thick{stroke:var(--g-tick-color-thick);stroke-width:.7}.gantt .arrow{fill:none;stroke:var(--g-arrow-color);stroke-width:1.5}.gantt .bar-wrapper .bar{fill:var(--g-bar-color);stroke:var(--g-bar-border);stroke-width:0;transition:stroke-width .3s ease}.gantt .bar-progress{fill:var(--g-progress-color);border-radius:4px}.gantt .bar-expected-progress{fill:var(--g-expected-progress)}.gantt .bar-invalid{fill:transparent;stroke:var(--g-bar-border);stroke-width:1;stroke-dasharray:5}:is(.gantt .bar-invalid)~.bar-label{fill:var(--g-text-light)}.gantt .bar-label{fill:var(--g-text-dark);dominant-baseline:central;font-family:Helvetica;font-size:13px;font-weight:400}.gantt .bar-label.big{fill:var(--g-text-dark);text-anchor:start}.gantt .handle{fill:var(--g-handle-color);opacity:0;transition:opacity .3s ease}.gantt .handle.active,.gantt .handle.visible{cursor:ew-resize;opacity:1}.gantt .handle.progress{fill:var(--g-text-muted)}.gantt .bar-wrapper{cursor:pointer}.gantt .bar-wrapper .bar{outline:1px solid var(--g-row-border-color);border-radius:3px}.gantt .bar-wrapper:hover .bar{transition:transform .3s ease}.gantt .bar-wrapper:hover .date-range-highlight{display:block}.gantt .grid-column{fill:transparent;pointer-events:all}.gantt .grid-column:hover{fill:var(--g-weekend-highlight-color);transition:fill .1s ease}:root{font-family:Inter,PingFang SC,Microsoft YaHei,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;color:var(--text);background:var(--canvas);font-synthesis:none;text-rendering:optimizeLegibility;--accent: #0891b2;--accent-hover: #0e7490;--accent-soft: rgb(8 145 178 / 10%);--accent-soft-hover: rgb(8 145 178 / 18%);--accent-line: #67e8f9;--accent-ring: rgb(8 145 178 / 14%);--accent-glow: rgb(8 145 178 / 22%);--accent-contrast: #ffffff;--accent-panel-bg: #f0fafd;--accent-panel-border: #c8ecf5;--text: #0f172a;--text-soft: #334155;--muted: #64748b;--line: #e2e8f0;--line-strong: #cbd5e1;--line-soft: #f1f5f9;--surface: #ffffff;--surface-raised: #ffffff;--surface-hover: #f1f5f9;--surface-muted: #f6f8fa;--surface-veil: rgb(255 255 255 / 60%);--backdrop: rgb(15 23 42 / 20%);--canvas: #f8fafc;--stripe: #f8fafc;--green: #059669;--green-text: #065f46;--green-soft: rgb(5 150 105 / 12%);--green-line: rgb(5 150 105 / 32%);--amber: #d97706;--amber-text: #92400e;--amber-soft: rgb(217 119 6 / 12%);--amber-soft-hover: rgb(217 119 6 / 18%);--amber-line: rgb(217 119 6 / 32%);--coral: #e11d48;--coral-text: #9f1239;--coral-soft: rgb(225 29 72 / 10%);--coral-line: rgb(225 29 72 / 30%);--slate: #64748b;--slate-text: #334155;--slate-soft: rgb(100 116 139 / 12%);--focus-ring: #22d3ee;--switch-track: #cbd5e1;--switch-knob: #ffffff;--option-chip-fg: #ffffff;--option-chip-fg-strong: #0f172a;--shadow-soft: rgb(15 23 42 / 10%);--shadow-medium: rgb(15 23 42 / 16%);--shadow-strong: rgb(15 23 42 / 24%);--shadow-drawer: -12px 0 36px rgb(15 23 42 / 14%);--gantt-bar: #67e8f9;--gantt-bar-conflict: #b45309;--gantt-label: #1e293b;--gantt-label-stroke: rgb(255 255 255 / 94%);--gantt-handle-fill: rgb(255 255 255 / 18%);--gantt-handle-stroke: rgb(255 255 255 / 90%);--gantt-rest-day: rgb(217 119 6 / 8%);--gantt-today-rest-marker-bg: #0f172a;--gantt-today-rest-marker-fg: #ffffff}*{box-sizing:border-box}html,body,#root{min-width:320px;min-height:100%;margin:0}body{min-height:100vh;background:var(--canvas)}button,input,select,textarea{font:inherit}@media(pointer:coarse){input,select,textarea{font-size:max(16px,1em)!important}.field input[type=datetime-local]{padding-inline:0}}@media(pointer:coarse)and (max-width:640px){.editor-drawer .field:not(.toggle-field)>span,.editor-drawer .form-section legend,.editor-drawer .more-info-toggle,.editor-drawer .form-error{font-size:18px}.editor-drawer .field small,.editor-drawer .status-mode-help small,.editor-drawer .recurrence-summary,.editor-drawer .participant-conflict-hint,.editor-drawer .participant-conflict-unavailable{font-size:17px}.editor-drawer .goal-option{font-size:13px}}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}svg:not(.gantt):not(.brand-mark){width:18px;height:18px;stroke-width:1.8}.app-shell{height:100vh;min-height:0;display:grid;grid-template-columns:226px minmax(0,1fr);overflow:hidden;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}.sidebar{position:sticky;top:0;z-index:20;height:100%;display:flex;flex-direction:column;background:var(--surface);border-right:1px solid var(--line)}.sidebar-brand{height:68px;display:flex;align-items:center;gap:11px;padding:0 22px;border-bottom:1px solid var(--line);font-size:19px}.brand-mark{width:30px;height:30px;display:inline-grid;place-items:center;border-radius:8px;box-shadow:0 6px 14px var(--accent-glow)}.sidebar-nav{display:grid;gap:5px;padding:22px 12px}.nav-item{min-height:46px;display:flex;align-items:center;gap:12px;padding:0 13px;color:var(--text-soft);text-decoration:none;border-radius:7px;font-size:14px;transition:background .16s ease,color .16s ease}.nav-item:hover{background:var(--surface-hover)}.nav-item.active{background:var(--accent-soft);color:var(--accent);font-weight:650}.sidebar-footer{margin-top:auto;display:grid;grid-template-columns:34px minmax(0,1fr) 34px 34px;align-items:center;gap:8px 6px;padding:16px 10px;border-top:1px solid var(--line)}.user-chip{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:var(--accent);color:var(--accent-contrast);font-weight:650}.user-meta{min-width:0;display:grid}.user-meta strong{overflow:hidden;text-overflow:ellipsis;font-size:13px}.user-meta span{color:var(--muted);font-size:11px}.signout-button{grid-column:1 / -1;min-height:38px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--text-soft);cursor:pointer;font-size:13px;font-weight:600}.signout-button:hover{border-color:var(--coral-line);background:var(--coral-soft);color:var(--coral-text)}.sidebar-collapse{height:43px;display:flex;align-items:center;gap:8px;padding:0 23px;background:var(--surface);border:0;border-top:1px solid var(--line);cursor:pointer;color:var(--text-soft);font-size:13px}.app-shell.sidebar-collapsed{grid-template-columns:76px minmax(0,1fr)}.sidebar-collapsed .sidebar-brand{justify-content:center;padding:0}.sidebar-collapsed .sidebar-brand strong,.sidebar-collapsed .nav-item span,.sidebar-collapsed .user-meta,.sidebar-collapsed .sidebar-collapse span{display:none}.sidebar-collapsed .sidebar-nav{padding-inline:10px}.sidebar-collapsed .nav-item{justify-content:center;padding:0}.sidebar-collapsed .sidebar-footer{grid-template-columns:1fr;justify-items:center}.sidebar-collapsed .sidebar-footer .signout-button{grid-column:auto;width:38px;padding:0}.sidebar-collapsed .sidebar-footer .signout-button span{display:none}.sidebar-collapsed .sidebar-collapse{justify-content:center;padding:0}.app-main{width:100%;height:100%;min-width:0;min-height:0;overflow:auto}.work-plans-page,.content-page{padding:25px 28px 30px}.work-plans-page{width:100%;height:100%;min-width:0;min-height:0;display:flex;flex-direction:column;overflow:hidden}.content-page{min-height:100%}.content-page{max-width:1440px;margin:0 auto}.narrow-page{max-width:1080px}.page-header{min-height:62px;display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:19px}.page-header h1{margin:0;font-size:28px;line-height:1.16;letter-spacing:-.035em;font-weight:750}.page-header p{margin:7px 0 0;color:var(--muted);font-size:13px}.header-actions{display:flex;gap:10px;align-items:center}.work-plan-header-actions{flex-wrap:wrap;justify-content:flex-end}.work-plan-header-actions>select{height:38px;max-width:190px;padding:0 32px 0 11px;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--text);font-size:12px}.spreadsheet-transfer-message{margin:-10px 0 12px;color:var(--muted);text-align:right;font-size:12px}.read-only-hint{margin:-8px 0 12px;padding:7px 11px;border:1px solid var(--line-soft);border-radius:6px;background:var(--surface);color:var(--muted);font-size:12px}.primary-button,.secondary-button,.danger-button,.text-button,.icon-button{min-height:38px;border-radius:7px;border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 15px;cursor:pointer;font-size:13px;font-weight:600;text-decoration:none;transition:background .15s ease,border-color .15s ease,transform .15s ease}.primary-button{background:var(--accent);color:var(--accent-contrast);box-shadow:0 5px 12px var(--accent-glow)}.primary-button:hover{background:var(--accent-hover)}.secondary-button{background:var(--surface);border-color:var(--line);color:var(--text-soft)}.secondary-button:hover{background:var(--surface-hover);border-color:var(--line-strong)}.danger-button{background:var(--surface);border-color:var(--coral-line);color:var(--coral-text)}.danger-button:hover{background:var(--coral-soft)}.text-button{background:transparent;color:var(--muted);padding-inline:9px}.text-button:hover{color:var(--text)}.icon-button{width:38px;padding:0;background:var(--surface);border-color:var(--line)}.icon-button:hover{background:var(--surface-hover)}.auto-theme-toggle.active{border-color:var(--accent-line);background:var(--accent-soft);color:var(--accent)}.primary-button:disabled,.secondary-button:disabled,.danger-button:disabled{cursor:not-allowed;opacity:.55}.secondary-button.disabled{cursor:not-allowed;opacity:.55}.full-width{width:100%}.compact-button{min-width:auto}.toast-region{position:fixed;z-index:200;top:calc(20px + env(safe-area-inset-top));right:calc(24px + env(safe-area-inset-right));width:min(360px,calc(100vw - 32px - env(safe-area-inset-left) - env(safe-area-inset-right)));display:grid;gap:9px;pointer-events:none}.success-toast{min-height:48px;display:grid;grid-template-columns:20px minmax(0,1fr) 28px;align-items:center;gap:10px;padding:9px 9px 9px 13px;border:1px solid var(--green-line);border-radius:9px;background:var(--surface);color:var(--text);box-shadow:0 14px 36px var(--shadow-medium);font-size:13px;font-weight:600;pointer-events:auto;animation:toast-in .18s ease-out}.success-toast>svg{color:var(--green)}.success-toast button{width:28px;height:28px;display:grid;place-items:center;padding:0;border:0;border-radius:6px;background:transparent;color:var(--muted);cursor:pointer}.success-toast button:hover{background:var(--green-soft);color:var(--text)}.success-toast button svg{width:15px;height:15px}.error-toast{min-height:48px;display:grid;grid-template-columns:20px minmax(0,1fr) 28px;align-items:center;gap:10px;padding:9px 9px 9px 13px;border:1px solid var(--coral-line);border-radius:9px;background:var(--surface);color:var(--text);box-shadow:0 14px 36px var(--shadow-medium);font-size:13px;font-weight:600;pointer-events:auto;animation:toast-in .18s ease-out}.error-toast>svg{color:var(--coral)}.error-toast button{width:28px;height:28px;display:grid;place-items:center;padding:0;border:0;border-radius:6px;background:transparent;color:var(--muted);cursor:pointer}.error-toast button:hover{background:var(--coral-soft);color:var(--text)}.error-toast button svg{width:15px;height:15px}@keyframes toast-in{0%{transform:translateY(-8px);opacity:0}}.update-prompt{position:fixed;z-index:210;inset-inline:env(safe-area-inset-left) env(safe-area-inset-right);bottom:calc(24px + env(safe-area-inset-bottom));margin-inline:auto;transform:none;display:grid;grid-template-columns:20px minmax(0,1fr) auto 28px;align-items:center;gap:10px;width:min(420px,calc(100vw - 32px - env(safe-area-inset-left) - env(safe-area-inset-right)));min-height:48px;padding:9px 9px 9px 13px;border:1px solid var(--accent-line);border-radius:9px;background:var(--surface);color:var(--text);box-shadow:0 14px 36px var(--shadow-medium);font-size:13px;font-weight:600;animation:toast-in .18s ease-out}.update-prompt>svg{color:var(--accent)}.update-prompt-reload{min-height:30px;padding:0 13px;border:0;border-radius:6px;background:var(--accent);color:var(--accent-contrast);cursor:pointer;font-size:12px;font-weight:650}.update-prompt-reload:hover{background:var(--accent-hover)}.update-prompt-close{width:28px;height:28px;display:grid;place-items:center;padding:0;border:0;border-radius:6px;background:transparent;color:var(--muted);cursor:pointer}.update-prompt-close:hover{background:var(--accent-soft);color:var(--text)}.update-prompt-close svg{width:15px;height:15px}.offline-banner{position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:center;gap:9px;padding:9px 13px;border-bottom:1px solid var(--amber-line);background:var(--amber-soft);color:var(--amber-text);font-size:13px;font-weight:600}.filter-toolbar{min-height:50px;display:flex;align-items:center;gap:10px;margin-bottom:13px}.plan-create-split{position:relative;z-index:32;display:inline-flex;flex:0 0 auto;margin-left:auto;box-shadow:0 5px 12px var(--accent-glow);border-radius:7px}.plan-create-split .primary-button{box-shadow:none;white-space:nowrap}.plan-create-split.with-import>.primary-button:first-child{border-radius:7px 0 0 7px}.plan-create-menu-wrap{position:relative;display:inline-flex}.plan-create-arrow{border-radius:0 7px 7px 0;padding:0 9px;border-left:1px solid rgb(255 255 255 / 32%)}.plan-create-arrow svg{transition:transform .15s ease}.plan-create-arrow[aria-expanded=true]{background:var(--accent-hover)}.plan-create-arrow[aria-expanded=true] svg{transform:rotate(180deg)}.plan-create-menu{position:absolute;right:0;top:calc(100% + 6px);z-index:31;min-width:200px;padding:5px;border:1px solid var(--line);border-radius:9px;background:var(--surface-raised);box-shadow:0 18px 50px var(--shadow-strong)}.plan-create-menu-item{display:flex;align-items:center;gap:9px;padding:9px 11px;border-radius:6px;color:var(--text);font-size:13px;font-weight:600;cursor:pointer}.plan-create-menu-item:hover{background:var(--surface-hover)}.plan-create-menu-item svg{width:16px;height:16px;color:var(--muted)}.plan-create-menu-item.disabled{cursor:not-allowed;opacity:.55}.secondary-button.selected{border-color:var(--accent-line);background:var(--accent-soft);color:var(--accent)}.advanced-filter-panel{min-height:50px;display:flex;align-items:center;gap:10px;margin:-5px 0 13px;padding:8px 11px;border:1px solid var(--accent-panel-border);border-radius:7px;background:var(--accent-panel-bg)}.advanced-filter-panel strong{margin-right:4px;font-size:12px}.advanced-filter-panel select,.advanced-filter-panel input{height:34px;min-width:170px;padding:0 10px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--text);font-size:12px}.advanced-filter-panel .filter-secondary-summary{max-width:220px;overflow:hidden;color:var(--muted);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.advanced-filter-panel .filter-reset-button{min-height:34px;flex:0 0 auto}.filter-toolbar select,.search-control{height:38px;background:var(--surface);border:1px solid var(--line);border-radius:7px}.filter-toolbar select{min-width:138px;padding:0 34px 0 12px;color:var(--text-soft)}.search-control{width:min(280px,30vw);display:flex;align-items:center;gap:8px;padding:0 11px}.search-control svg{color:var(--muted)}.search-control input{min-width:0;flex:1;border:0;outline:0;background:transparent;color:var(--text)}.search-control input::placeholder{color:var(--muted)}.planner-panel{width:100%;min-width:0;min-height:0;flex:1 1 auto;display:grid;grid-template-columns:minmax(0,var(--planner-list-width, 44%)) 8px minmax(0,1fr);grid-template-rows:54px minmax(0,1fr) minmax(46px,auto);overflow:hidden;background:var(--surface);border:1px solid var(--line);border-radius:8px;box-shadow:0 2px 6px var(--shadow-soft)}.planner-table{position:relative;z-index:2;grid-column:1;grid-row:2 / span 2;min-width:0;min-height:0;display:grid;grid-template-rows:subgrid;background:var(--surface)}.planner-divider{position:relative;z-index:6;grid-column:2;grid-row:2 / span 2;min-width:8px;height:100%;padding:0;border:0;outline:0;background:var(--surface);cursor:col-resize;touch-action:none}.planner-divider:before{content:"";position:absolute;inset:0 3px;background:var(--line);transition:background .15s ease,inset .15s ease}.planner-divider:after{content:"";position:absolute;top:50%;left:50%;width:3px;height:30px;border-radius:999px;background:var(--muted);transform:translate(-50%,-50%);transition:background .15s ease,width .15s ease}.planner-divider:hover:before,.planner-divider:focus-visible:before,.planner-panel.resizing .planner-divider:before{inset-inline:2px;background:var(--accent-line)}.planner-divider:hover:after,.planner-divider:focus-visible:after,.planner-panel.resizing .planner-divider:after{width:4px;background:var(--accent)}.planner-divider:focus-visible{box-shadow:inset 0 0 0 2px var(--accent-ring)}.planner-panel.resizing,.planner-panel.resizing *{cursor:col-resize!important;user-select:none}.table-toolbar{grid-column:1 / -1;grid-row:1;z-index:7;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 14px;border-bottom:1px solid var(--line);background:var(--surface)}.table-toolbar-left{display:flex;align-items:center;gap:12px}.table-toolbar-center{position:relative;grid-column:2;display:inline-flex;align-items:center}.table-toolbar-center>strong{font-size:14px;font-weight:650;white-space:nowrap}.plan-type-table{grid-template-columns:32px minmax(140px,1.4fr) minmax(96px,.9fr) 56px 56px 84px 152px}.plan-type-color-dot{display:inline-block;width:12px;height:12px;border-radius:50%;box-shadow:inset 0 0 0 1px #0000002e}.field-row-actions svg.filled{fill:currentColor}.option-color-field .option-color-picker{padding-top:4px}.gantt-legend{grid-column:1;grid-row:2;justify-self:stretch;align-self:stretch;z-index:1;display:grid;grid-template-columns:minmax(max-content,1fr) minmax(0,auto) minmax(max-content,1fr);align-items:center;gap:6px;min-width:0;padding:7px 14px;container-type:inline-size;color:var(--muted);font-size:12px}.gantt-legend-action{min-height:30px;padding:0 10px;border:1px solid var(--line-strong);border-radius:6px;background:var(--surface-raised);color:var(--text);cursor:pointer;font-size:12px;font-weight:650;white-space:nowrap;transition:background .15s ease,border-color .15s ease,color .15s ease,transform .15s ease}.gantt-legend-action:hover{border-color:var(--accent-line);background:var(--accent-soft);color:var(--accent)}.gantt-legend-action:active{transform:translateY(1px)}.gantt-legend-mobile-actions{display:none}.gantt-legend-hide-all-desktop{grid-column:1;justify-self:start}.gantt-legend-show-all-desktop{grid-column:3;justify-self:end}.gantt-legend-items{grid-column:2;min-width:0;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:2px 12px}.gantt-legend-item{display:inline-flex;align-items:center;gap:5px;background:none;border:1px solid transparent;border-radius:6px;padding:2px 6px;font:inherit;color:inherit;cursor:pointer}.gantt-legend-item:hover{background:var(--surface-hover)}.gantt-legend-item-hidden{border-color:var(--coral)}.gantt-legend-dot{width:10px;height:10px;border-radius:50%;background:var(--gantt-bar);border:2px solid transparent;box-shadow:inset 0 0 0 1px #0000002e}.gantt-legend-item-hidden .gantt-legend-dot{background:transparent;border-color:var(--gantt-bar);box-shadow:none}@container (max-width: 440px){.gantt-legend{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto auto;row-gap:6px}.gantt-legend-mobile-actions{grid-column:1 / -1;grid-row:1;display:flex;align-items:center;justify-content:space-between}.gantt-legend-hide-all-desktop,.gantt-legend-show-all-desktop{display:none}.gantt-legend-items{grid-column:1 / -1;grid-row:2}}.gantt-fullscreen-toggle{position:absolute;left:calc(100% + 10px);top:50%;transform:translateY(-50%);width:32px;min-height:32px}.range-controls{display:flex;gap:6px;align-items:center}.table-toolbar-left .range-controls{margin-inline:auto}.range-controls .icon-button{width:32px;min-height:32px}.range-controls .today-button{min-height:32px;padding-inline:11px}.table-toolbar-actions{grid-column:3;justify-self:stretch;display:flex;align-items:center;gap:6px}.table-toolbar-actions .view-switch{margin-inline:auto}.planner-collapse-button{justify-self:start}.planner-panel.planner-collapsed{grid-template-columns:0 0 minmax(0,1fr)}.planner-collapsed .planner-table,.planner-collapsed .planner-divider,.planner-collapsed .list-column-settings{display:none}.view-switch{display:flex;padding:3px;border:1px solid var(--line);border-radius:7px;background:var(--surface-muted)}.view-switch button{min-height:28px;padding:0 11px;border:0;border-radius:5px;background:transparent;color:var(--muted);cursor:pointer;font-size:12px}.view-switch button.active{background:var(--surface-raised);color:var(--accent);font-weight:650;box-shadow:0 1px 4px var(--shadow-soft)}.column-settings-wrap{position:relative}.column-settings-button{width:34px;min-height:34px}.column-settings-button.selected{border-color:var(--accent-line);background:var(--accent-soft);color:var(--accent)}.column-settings-popover{position:absolute;z-index:30;top:calc(100% + 8px);right:0;width:286px;max-height:min(430px,calc(100vh - 210px));overflow:auto;border:1px solid var(--line);border-radius:8px;background:var(--surface-raised);box-shadow:0 16px 40px var(--shadow-strong)}.column-settings-popover>header{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 12px 10px;border-bottom:1px solid var(--line-soft);background:var(--surface-raised)}.column-settings-popover>header>div{display:grid;gap:2px}.column-settings-popover>header strong{font-size:13px}.column-settings-popover>header small{color:var(--muted);font-size:10px}.column-settings-popover>header .text-button{min-height:28px;padding:0 5px;font-size:11px}.column-settings-popover>header .text-button svg{width:14px;height:14px}.column-settings-list{padding:5px}.column-setting-row{min-height:38px;display:grid;grid-template-columns:minmax(0,1fr) auto 54px;align-items:center;gap:5px;padding:0 6px;border-radius:6px}.column-setting-row:hover{background:var(--surface-hover)}.column-setting-row.fixed{grid-template-columns:minmax(0,1fr) auto;color:var(--muted)}.column-setting-row>label,.column-setting-row.fixed{display:flex;align-items:center;gap:8px;font-size:12px}.column-setting-row label span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.column-setting-row>small{color:var(--muted);font-size:9px}.column-order-actions{display:flex;justify-content:flex-end;gap:2px}.column-order-actions button{width:25px;height:25px;display:grid;place-items:center;padding:0;border:0;border-radius:5px;background:transparent;color:var(--muted);cursor:pointer}.column-order-actions button:hover:not(:disabled){background:var(--accent-soft);color:var(--accent)}.column-order-actions button:disabled{cursor:default;opacity:.25}.column-order-actions svg{width:13px;height:13px}.gantt-popover-section{border-top:1px solid var(--line-soft);margin-top:4px;padding-top:3px}.gantt-popover-section-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 12px 5px}.gantt-popover-section-head>div{display:grid;gap:2px}.gantt-popover-section-head strong{font-size:12px}.gantt-popover-section-head small{color:var(--muted);font-size:10px}.gantt-popover-section-head .text-button{min-height:28px;padding:0 5px;font-size:11px}.gantt-popover-section-head .text-button svg{width:14px;height:14px}.plan-grid-scroll{min-width:0;min-height:0;display:grid;grid-template-rows:46px minmax(0,1fr);overflow-x:auto;overflow-y:hidden}.planner-columns,.plan-row{min-width:var(--plan-grid-min-width);display:grid;grid-template-columns:var(--plan-grid-template);align-items:center}.planner-columns{overflow:hidden;scrollbar-gutter:stable;border-bottom:1px solid var(--line);color:var(--muted);font-size:12px;font-weight:600}.planner-columns span{height:100%;display:flex;align-items:center;justify-content:center;text-align:center;padding:0 10px;border-right:1px solid var(--line-soft)}.plan-rows{position:relative;min-width:min-content;min-height:0;overflow-x:hidden;overflow-y:auto;overflow-anchor:none;scrollbar-gutter:stable}.planner-panel.view-month .planner-columns,.planner-panel.view-month .plan-rows{scrollbar-width:none;-ms-overflow-style:none}.planner-panel.view-month .planner-columns::-webkit-scrollbar,.planner-panel.view-month .plan-rows::-webkit-scrollbar{display:none;width:0;height:0}.plan-row{position:relative;min-height:58px;border-bottom:1px solid var(--line-soft);font-size:12px;background:var(--surface);transition:background .15s ease,box-shadow .15s ease}.plan-row:hover,.plan-row.gantt-row-hovered{background:var(--surface-hover)}.plan-row.plan-row-conflict{background:var(--amber-soft)}.plan-row.plan-row-conflict:hover,.plan-row.plan-row-conflict.gantt-row-hovered{background:var(--amber-soft-hover)}.plan-row>*{min-width:0}.plan-title-button{min-width:0;height:100%;display:flex;flex-direction:column;justify-content:center;gap:3px;padding:0 10px;border:0;background:transparent;text-align:left;cursor:pointer}.plan-title-button strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:620}.plan-title-button span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:10px}.plan-row time{padding:0 8px;color:var(--text-soft);white-space:nowrap;font-variant-numeric:tabular-nums}.plan-cell{overflow:hidden;padding:0 9px;color:var(--text-soft);text-overflow:ellipsis;white-space:nowrap}.plan-cell-centered{display:flex;align-items:center;justify-content:center;text-align:center}.status-badge{width:fit-content;max-width:calc(100% - 8px);min-height:25px;display:inline-flex;align-items:center;gap:5px;padding:0 7px;border-radius:4px;white-space:nowrap;font-size:11px;font-weight:550}.status-badge i{width:6px;height:6px;border-radius:50%}.status-pending{color:var(--amber-text);background:var(--amber-soft)}.status-pending i{background:var(--amber)}.status-in_progress{color:var(--green-text);background:var(--green-soft)}.status-in_progress i{background:var(--green)}.status-completed{color:var(--slate-text);background:var(--slate-soft)}.status-completed i{background:var(--slate)}.status-cancelled{color:var(--coral-text);background:var(--coral-soft)}.status-cancelled i{background:var(--coral)}.plan-meta-pills{display:inline-flex;align-items:center;gap:4px;margin-right:6px;vertical-align:1px}.owner-badge,.risk-badge{display:inline-flex;align-items:center;gap:4px;min-height:15px;padding:0 5px;border-radius:8px;white-space:nowrap;font-size:9px;font-weight:620}.owner-badge i,.risk-badge i{width:5px;height:5px;border-radius:50%}.owner-badge{color:var(--slate-text);background:var(--slate-soft)}.owner-badge i{background:var(--slate)}.owner-badge-unassigned{color:var(--muted);background:transparent;border:1px dashed var(--line-strong)}.risk-acceptable{color:var(--slate-text);background:var(--slate-soft)}.risk-acceptable i{background:var(--slate)}.risk-low{color:var(--green-text);background:var(--green-soft)}.risk-low i{background:var(--green)}.risk-medium{color:var(--amber-text);background:var(--amber-soft)}.risk-medium i{background:var(--amber)}.risk-high{color:var(--coral-text);background:var(--coral-soft)}.risk-high i{background:var(--coral)}.risk-unknown{color:var(--muted);background:var(--surface-muted)}.risk-unknown i{background:var(--muted)}.plan-list-empty{min-height:230px;display:grid;place-items:center;color:var(--muted);font-size:13px}.timeline-empty{position:absolute;z-index:2;inset:46px 0 0;display:grid;place-items:center;min-height:0;color:var(--muted);font-size:13px;pointer-events:none}.table-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 17px;border-top:1px solid var(--line);color:var(--muted);font-size:12px}.table-footer-actions{display:flex;align-items:center;gap:12px}.schedule-refresh-notice{display:inline-flex;align-items:center;gap:6px;color:var(--amber-text);font-size:11px;white-space:nowrap}.table-footer .column-settings-wrap{position:static}.table-footer .column-settings-popover{top:auto;right:17px;bottom:54px;width:min(286px,calc(100% - 34px));max-height:min(430px,calc(100% - 64px))}.timeline-range-loading{position:absolute;z-index:5;inset:46px 0 0;display:grid;place-items:center;min-height:0;background:var(--surface-veil);color:var(--muted);font-size:13px;pointer-events:none}.timeline-swipe-hint{position:absolute;z-index:6;top:50%;display:flex;align-items:center;gap:4px;transform:translateY(-50%);padding:6px 10px;border:1px solid var(--accent-line);border-radius:999px;background:var(--surface);box-shadow:0 4px 12px var(--shadow-medium);color:var(--accent);font-size:12px;font-weight:650;white-space:nowrap;pointer-events:none;transition:opacity .12s linear}.timeline-swipe-hint.edge-left{left:10px}.timeline-swipe-hint.edge-right{right:10px}.timeline-swipe-hint-arrow{font-size:16px;line-height:1}@media(prefers-reduced-motion:reduce){.timeline-swipe-hint{transition:none}}.planner-timeline{position:relative;grid-column:3;grid-row:2 / span 2;min-width:0;min-height:0;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:subgrid;overflow:hidden}.planner-timeline:after{content:"";grid-column:1;grid-row:2;border-top:1px solid var(--line);background:var(--surface)}.gantt-shell{position:relative;grid-row:1;width:100%;height:100%;min-height:0;overflow:hidden;background:var(--surface)}.gantt-mount{min-width:100%;height:100%;min-height:0}.gantt-mount .gantt-container{height:100%;overflow:auto;border-radius:0;scrollbar-width:none;-ms-overflow-style:none}.gantt-mount .gantt-container{touch-action:pan-y pinch-zoom}.gantt-mount .gantt-container::-webkit-scrollbar{display:none;width:0;height:0}.gantt-mount .gantt{min-width:100%}.gantt-mount .grid-header{fill:var(--surface);stroke:var(--line)}.gantt-mount .grid-row{fill:var(--surface)}.gantt-mount .grid-row:nth-child(2n){fill:var(--stripe)}.timeline-create-hover-cell{position:absolute;z-index:3;display:none;border:1px solid var(--accent-line);border-radius:2px;background:var(--accent-soft);pointer-events:none}.timeline-create-hover-cell.visible{display:block}.timeline-create-hover-hint{position:absolute;z-index:1;width:max-content;max-width:220px;padding:5px 8px;border:1px solid var(--accent-line);border-radius:5px;background:var(--surface);box-shadow:0 4px 12px var(--shadow-medium);color:var(--accent);font-size:11px;line-height:1.2;white-space:nowrap}.gantt-mount .row-line,.gantt-mount .tick{stroke:var(--line-soft)}.gantt-mount .tick.thick{stroke:var(--line)}.gantt-mount .lower-text,.gantt-mount .upper-text{fill:var(--muted);font-family:inherit;font-size:11px}.gantt-mount .upper-text{display:none}.gantt-mount .bar{fill:var(--gantt-bar-fill, var(--gantt-bar))!important;stroke:none;rx:4px}.gantt-mount .bar-label,.gantt-mount .bar-label.big{fill:var(--gantt-label)!important;stroke:var(--gantt-label-stroke);stroke-width:2.4px;stroke-linejoin:round;paint-order:stroke fill;text-anchor:middle;font-family:inherit;font-size:11px;font-weight:650;pointer-events:none}.gantt-mount .bar-wrapper{cursor:grab}.gantt-mount .bar-wrapper.schedule-dragging{cursor:grabbing}.gantt-mount .bar-wrapper.schedule-saving .bar,.gantt-mount .bar-wrapper.schedule-refreshing .bar{opacity:.62}.gantt-mount .bar-wrapper.schedule-unknown .bar{stroke:var(--amber-text)!important;stroke-width:2px}.gantt-mount .gantt-schedule-status{fill:var(--amber-text);font-size:10px;font-weight:650;pointer-events:none}.gantt-mount .handle{fill:var(--gantt-handle-fill);stroke:var(--gantt-handle-stroke);stroke-width:1px;opacity:.88;cursor:ew-resize}.gantt-mount .handle.active,.gantt-mount .handle.visible{opacity:1}.gantt-mount .gantt-conflict .bar{fill:var(--gantt-bar-conflict)!important}.gantt-mount .popup-wrapper{font-family:inherit;border:1px solid var(--line);box-shadow:0 10px 30px var(--shadow-medium);pointer-events:none}.gantt-mount .popup-wrapper .gantt-conflict-block{margin-top:6px;padding-top:5px;border-top:1px solid var(--amber-line)}.gantt-mount .popup-wrapper .gantt-conflict-owner{color:var(--amber-text);font-weight:650}.gantt-mount .lower-text:has(.timeline-calendar-day-button){display:grid;grid-template-rows:minmax(0,1fr)}.gantt-mount .lower-text:has(.timeline-calendar-day-marker),.gantt-mount .lower-text:has(.timeline-reminder-bell){grid-template-rows:minmax(0,1fr) 14px}.gantt-mount .lower-text:has(.timeline-calendar-day-button.rest):not(:has(.timeline-reminder-bell)){grid-template-rows:minmax(0,1fr)}.gantt-mount .lower-text:has(.timeline-calendar-day-button.makeup):not(:has(.timeline-reminder-bell)){grid-template-rows:minmax(0,1fr)}.gantt-mount .lower-text:has(.timeline-calendar-day-number:only-child):not(:has(.timeline-reminder-bell)),.gantt-mount .lower-text:has(.timeline-calendar-day-button.rest):not(:has(.timeline-reminder-bell)),.gantt-mount .lower-text:has(.timeline-calendar-day-button.makeup):not(:has(.timeline-reminder-bell)){font-size:13px}.gantt-mount .timeline-reminder-bell{display:block;width:100%;margin:0;padding:0;border:0;background:none;color:var(--amber);line-height:0;text-align:center;cursor:pointer}.gantt-mount .timeline-reminder-bell:hover{color:var(--accent)}.gantt-mount .timeline-reminder-bell:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px;border-radius:4px}.gantt-mount .timeline-reminder-bell[aria-disabled=true]{cursor:default}.gantt-mount .timeline-reminder-bell svg{width:14px;height:14px;stroke-width:1.8}.gantt-mount .timeline-reminder-tooltip{position:absolute;z-index:1002;display:none;width:max-content;max-width:280px;padding:8px 10px;border:1px solid var(--line);border-radius:6px;background:var(--surface);box-shadow:0 10px 30px var(--shadow-medium);color:var(--text);font-family:inherit;font-size:12px;line-height:1.45;pointer-events:none}.gantt-mount .timeline-reminder-tooltip.visible{display:block}.gantt-mount .timeline-reminder-tooltip .title{color:var(--text);font-size:12px;font-weight:650}.gantt-mount .timeline-reminder-tooltip .title+.details{margin-top:2px}.gantt-mount .timeline-reminder-tooltip .details{color:var(--muted);font-size:11px}.gantt-mount .timeline-reminder-tooltip .title+.details~.title{margin-top:6px}.gantt-mount .timeline-reminder-tooltip .details+.title{margin-top:6px}.drawer-backdrop,.modal-backdrop{position:fixed;inset:0;z-index:80;border:0;background:var(--backdrop);cursor:default}.editor-drawer{position:fixed;z-index:90;inset:0 0 0 auto;width:min(440px,100vw);display:grid;grid-template-rows:auto minmax(0,1fr);padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);background:var(--surface-raised);box-shadow:var(--shadow-drawer);animation:drawer-in .2s ease-out}.batch-edit-drawer{position:fixed;z-index:90;inset:0 0 0 auto;width:min(480px,100vw);display:grid;grid-template-rows:auto minmax(0,1fr) auto;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);background:var(--surface-raised);box-shadow:var(--shadow-drawer);animation:drawer-in .2s ease-out}.batch-edit-form{min-height:0;display:grid;grid-template-columns:1fr 1fr;align-content:start;gap:16px 13px;padding:18px 20px 0;overflow-y:auto}.batch-edit-form>.full{grid-column:1 / -1}.batch-edit-preview{grid-column:1 / -1;width:100%;box-sizing:border-box;display:grid;gap:6px;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--surface-veil);color:var(--text-soft)}.batch-edit-preview>strong{color:var(--text)}.batch-edit-preview-items{display:grid;gap:6px;margin-top:4px}.batch-edit-preview-items>strong{color:var(--text)}.batch-edit-preview-item{display:grid;grid-template-columns:minmax(100px,.42fr) minmax(0,1fr);gap:8px;padding:8px 10px;border:1px solid var(--line-soft);border-radius:7px;background:var(--surface)}.batch-edit-preview-item>strong{min-width:0;color:var(--text);overflow-wrap:anywhere}.batch-edit-preview-item>span{min-width:0;color:var(--text-soft);overflow-wrap:anywhere}.batch-edit-preview-item.unchanged>span{color:var(--muted)}.batch-edit-preview-item.blocked{border-color:var(--coral-line);background:var(--coral-soft)}.batch-edit-preview-item.blocked>span{color:var(--coral-text)}.batch-edit-blockers{display:grid;gap:4px;color:var(--coral-text)}.batch-edit-blockers p,.batch-edit-warning{margin:0}.batch-edit-warning{color:var(--amber-text)}.batch-selection-controls{display:inline-flex;align-items:center;flex-wrap:wrap;gap:10px;min-width:0}.batch-selection-summary{display:inline-flex;align-items:center;gap:7px;color:var(--text-soft);font-size:12px;white-space:nowrap}.plan-select-header,.plan-select-cell{display:flex!important;align-items:center;justify-content:center!important;padding-inline:0!important}.plan-select-cell input,.plan-select-header input{width:16px;height:16px;accent-color:var(--accent)}.editor-drawer,.batch-edit-drawer{-webkit-text-size-adjust:none;text-size-adjust:none}@keyframes drawer-in{0%{transform:translate(24px);opacity:.5}}.drawer-header{min-height:72px;display:flex;align-items:center;justify-content:space-between;padding:14px 20px;border-bottom:1px solid var(--line)}.drawer-header h2{margin:0;font-size:17px}.drawer-header span{display:block;margin-top:3px;color:var(--muted);font-size:11px}.drawer-form{min-height:0;display:grid;grid-template-columns:1fr 1fr;align-content:start;gap:16px 13px;padding:18px 20px 0;overflow-y:auto}.field{min-width:0;display:grid;align-content:start;gap:7px;color:var(--text-soft);font-size:12px;font-weight:560}.field.full,.drawer-form>.full{grid-column:1 / -1}.field b{color:var(--coral)}.field input,.field select,.field textarea,.inline-form input{width:100%;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--text);padding:0 10px;font-size:13px;font-weight:400}.field input,.field select,.inline-form input{height:38px}.field textarea{min-height:76px;padding-block:9px;resize:vertical;line-height:1.5}.field select[multiple]{height:76px;padding-block:5px}.field input:hover,.field select:hover,.field textarea:hover{border-color:var(--line-strong)}.field input:focus,.field select:focus,.field textarea:focus,.inline-form input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:0}.field small{color:var(--muted);font-size:10px;font-weight:400}.status-field{min-width:0;display:grid;gap:3px}.status-mode-help{min-height:24px;display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--muted)}.status-mode-help small{font-size:10px;line-height:1.45}.status-mode-help .text-button{min-height:24px;flex:0 0 auto;padding:0 4px;font-size:10px}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 12px}.field-grid .field-hint{margin-top:-8px}.field-grid>.full{grid-column:1 / -1}.field-grid.compact{gap:10px}.custom-field-list{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}.more-info-section{padding:0}.more-info-toggle{display:flex;width:100%;align-items:center;gap:7px;padding:12px 14px;border:0;border-radius:7px;background:transparent;color:var(--text-soft);font-size:12px;font-weight:650;cursor:pointer}.more-info-toggle:hover{color:var(--text)}.more-info-toggle svg{width:15px;height:15px;color:var(--accent);transition:transform .16s ease}.more-info-toggle[aria-expanded=true] svg{transform:rotate(180deg)}.more-info-section>.custom-field-list{padding:0 14px 14px}.participant-conflict-zone{display:grid;gap:14px;padding:8px;margin:-9px;border:1px solid transparent;border-radius:8px}.participant-conflict-zone.participant-conflict-active{border-color:var(--amber-line)}.participant-conflict-hint,.participant-conflict-unavailable{margin:0;color:var(--amber-text);font-size:10px;line-height:1.5;font-weight:400}.multi-select-option-conflict{margin-left:auto;color:var(--amber-text);font-size:10px;font-weight:650;white-space:nowrap}.multi-select-option-hint{color:var(--amber-text);font-size:10px;font-weight:650;white-space:nowrap}.form-section{min-width:0;margin:0;padding:14px;border:1px solid var(--line);border-radius:7px}.form-section legend{display:flex;align-items:center;gap:7px;padding:0 7px;color:var(--text-soft);font-size:12px;font-weight:650}.form-section legend svg{width:15px;height:15px;color:var(--accent)}.recurrence-section{border-color:var(--accent-panel-border);background:var(--accent-panel-bg)}.recurrence-section legend{color:var(--accent)}.recurrence-summary{margin:10px 0 0;color:var(--muted);font-size:10px;line-height:1.5}.toggle-field{display:flex;align-items:center;justify-content:space-between}.switch{width:38px;height:22px;padding:2px;border:0;border-radius:11px;background:var(--switch-track);cursor:pointer}.switch i{display:block;width:18px;height:18px;border-radius:50%;background:var(--switch-knob);box-shadow:0 1px 3px var(--shadow-soft);transition:transform .16s ease}.switch.on{background:var(--accent)}.switch.on i{transform:translate(16px)}.form-error{padding:9px 11px;border:1px solid var(--coral-line);border-radius:6px;background:var(--coral-soft);color:var(--coral-text);font-size:12px}.bark-settings-form{display:grid;grid-template-columns:minmax(200px,1.4fr) minmax(140px,.9fr) auto;align-items:end;gap:10px;margin-top:16px}.bark-settings-form label{display:grid;gap:6px;color:var(--muted);font-size:11px;font-weight:600}.bark-settings-form input{min-width:0;width:100%;height:38px;padding:0 10px;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--text)}.bark-settings-actions{display:flex;flex-wrap:wrap;gap:9px}.bark-settings-actions button{white-space:nowrap}.bark-settings-error{margin-top:12px}.bark-test-result{margin-top:12px;padding:9px 11px;border-radius:6px;font-size:12px}.bark-test-result.ok{border:1px solid var(--green-line);background:var(--green-soft);color:var(--green-text)}.bark-test-result.error{border:1px solid var(--coral-line);background:var(--coral-soft);color:var(--coral-text)}.bark-business-reminders{grid-column:1 / -1;display:grid;gap:9px;padding-top:4px}.bark-business-reminders-heading{display:grid;gap:3px}.bark-business-reminders-heading strong{color:var(--text-soft);font-size:12px}.bark-business-reminders-heading small{color:var(--muted);font-size:11px;font-weight:400}.bark-reminder-list{display:grid;gap:8px}.bark-reminder-item{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(148px,auto);align-items:center;gap:12px;min-width:0;padding:10px 11px;border:1px solid var(--line);border-radius:7px;background:var(--surface-muted)}.bark-reminder-item>span{display:grid;min-width:0;gap:3px}.bark-reminder-item>span strong{color:var(--text-soft);font-size:11px}.bark-reminder-item>span small{color:var(--muted);font-size:10px;font-weight:400;line-height:1.35}.bark-reminder-item .switch:disabled{cursor:not-allowed;opacity:.45}.bark-reminder-lead{display:flex!important;align-items:center;justify-content:flex-end;gap:7px!important;white-space:nowrap}.bark-settings-form .bark-reminder-lead input{width:76px;height:34px;padding:0 8px;text-align:center}.bark-reminder-lead span{color:var(--muted);font-size:11px}.bark-platform-events{grid-column:1 / -1;display:grid;gap:9px;padding-top:4px}.bark-platform-events-heading{display:grid;gap:3px}.bark-platform-events-heading strong{color:var(--text-soft);font-size:12px}.bark-platform-events-heading small{color:var(--muted);font-size:11px;font-weight:400}.bark-platform-event-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.bark-platform-event-item{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0;padding:10px 11px;border:1px solid var(--line);border-radius:7px;background:var(--surface-muted)}.bark-platform-event-item>span{display:grid;min-width:0;gap:3px}.bark-platform-event-item strong{color:var(--text-soft);font-size:11px}.bark-platform-event-item small{color:var(--muted);font-size:10px;font-weight:400;line-height:1.35}.bark-platform-event-item .switch:disabled{cursor:not-allowed;opacity:.45}.drawer-actions{position:sticky;bottom:0;display:flex;justify-content:space-between;align-items:center;margin:3px -20px 0;padding:14px 20px;border-top:1px solid var(--line);background:var(--surface)}.drawer-actions>div{display:flex;gap:9px}.batch-edit-drawer>.drawer-actions{margin-inline:0}.drawer-secondary-actions:empty{min-width:1px}.content-page .settings-panel,.settings-section{background:var(--surface);border:1px solid var(--line);border-radius:8px}.settings-panel{overflow:hidden}.settings-panel-header{height:55px;display:flex;align-items:center;justify-content:space-between;padding:0 17px;border-bottom:1px solid var(--line)}.settings-panel-header>div{display:flex;align-items:center;gap:9px}.settings-panel-header>div svg{color:var(--accent)}.settings-panel-header>span{color:var(--muted);font-size:12px}.settings-panel-header-actions{display:flex;align-items:center;gap:12px}.settings-panel-header-actions>span{color:var(--muted);font-size:12px}.settings-panel-header-actions .primary-button{min-height:34px}.fields-table{min-height:55px;display:grid;grid-template-columns:32px minmax(150px,1.5fr) minmax(120px,1fr) 100px 70px 70px minmax(100px,1fr) 152px;align-items:center;gap:8px;padding:0 15px;border-bottom:1px solid var(--line-soft);background:var(--surface);font-size:12px}.fields-table.table-head{min-height:42px;background:var(--surface-muted);color:var(--muted);font-weight:650}.field-sort-handle{width:28px;height:38px;display:grid;place-items:center;padding:0;border:0;background:transparent;color:var(--muted);cursor:grab;touch-action:none}.field-sort-handle:active{cursor:grabbing}.field-sort-handle:disabled{opacity:.3;cursor:not-allowed}.field-sort-handle svg{width:16px}.fields-table code{width:fit-content;padding:3px 5px;border-radius:4px;background:var(--surface-muted);color:var(--text-soft);font-size:11px}.fields-table strong{display:block;font-size:13px}.fields-table small{display:block;margin-top:2px;color:var(--amber-text)}.fields-table.archived{opacity:.58;background:var(--surface-muted)}.fields-table.dragging{position:relative;z-index:10;box-shadow:0 9px 24px var(--shadow-medium)}.field-row-actions{display:flex;justify-content:flex-end;gap:3px}.field-row-actions .icon-button{width:32px;min-height:32px;padding:0}.field-row-actions .icon-button:disabled{cursor:default;opacity:.25}.field-row-actions svg{width:15px}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.empty-state{min-height:260px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--muted);text-align:center}.empty-state>svg{width:30px;height:30px;margin-bottom:10px;color:var(--muted)}.empty-state h3{margin:0;color:var(--text-soft);font-size:15px}.empty-state p{max-width:360px;margin:7px 0 0;font-size:12px;line-height:1.5}.modal-layer{position:fixed;z-index:100;inset:0;display:grid;place-items:center;padding:calc(20px + env(safe-area-inset-top)) calc(20px + env(safe-area-inset-right)) calc(20px + env(safe-area-inset-bottom)) calc(20px + env(safe-area-inset-left))}.field-dialog{position:relative;z-index:110;width:min(620px,100%);max-height:min(90vh,calc(100vh - 40px - env(safe-area-inset-top) - env(safe-area-inset-bottom)));overflow-x:hidden;overflow-y:auto;border-radius:9px;background:var(--surface-raised);box-shadow:0 22px 70px var(--shadow-strong)}.field-dialog>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:20px 22px 15px;border-bottom:1px solid var(--line)}.field-dialog h2{margin:0;font-size:18px}.field-dialog p{margin:5px 0 0;color:var(--muted);font-size:12px}.field-dialog>.field-grid{padding:20px 22px}.field-dialog>.form-error{margin:0 22px}.field-dialog>footer{display:flex;justify-content:flex-end;gap:9px;padding:14px 22px;border-top:1px solid var(--line)}.field input:disabled,.field select:disabled{background:var(--surface-muted);color:var(--muted);cursor:not-allowed}.derived-field input[readonly]{background:var(--surface-muted);color:var(--text-soft);cursor:text}.option-editor{gap:8px}.option-editor-header{display:flex;align-items:center;justify-content:space-between}.option-editor-header .text-button{min-height:30px}.option-editor-header svg{width:14px}.option-editor-list{display:grid;gap:7px}.option-editor-list>.option-row{display:grid;grid-template-columns:28px minmax(0,1fr) 36px 36px 36px;align-items:center;gap:7px}.option-row.archived{opacity:.58}.option-row.dragging{z-index:1}.option-row-actions{grid-column:3 / -1;display:flex;justify-content:flex-end;gap:4px}.option-editor-list .icon-button{width:36px;min-height:36px;padding:0}.option-editor-list svg{width:15px}.option-row.with-color{grid-template-rows:auto auto}.option-color-picker{grid-column:2 / -1;display:flex;align-items:center;flex-wrap:wrap;gap:6px}.color-swatch{width:22px;height:22px;border-radius:50%;border:2px solid transparent;box-shadow:inset 0 0 0 1px #0000002e;padding:0;cursor:pointer}.color-swatch.selected{border-color:var(--text)}.color-swatch:disabled{cursor:default;opacity:.45}.color-swatch-none{background:transparent;box-shadow:inset 0 0 0 1px var(--line-strong);position:relative}.color-swatch-none:after{content:"";position:absolute;inset:4px;background:linear-gradient(to top right,transparent calc(50% - 1px),currentColor calc(50% - 1px),currentColor calc(50% + 1px),transparent calc(50% + 1px))}.settings-tabbar{position:sticky;top:0;z-index:15;margin:0 0 16px;background:var(--canvas)}.settings-tablist{display:flex;gap:2px;border-bottom:1px solid var(--line)}.settings-tab{appearance:none;margin-bottom:-1px;padding:8px 13px 11px;border:0;border-bottom:2px solid transparent;border-radius:7px 7px 0 0;background:transparent;color:var(--muted);cursor:pointer;font-size:13px;font-weight:600;white-space:nowrap}.settings-tab:hover{background:var(--surface);color:var(--text)}.settings-tab.active{border-bottom-color:var(--accent);color:var(--accent)}.settings-tabpanel[hidden]{display:none}.settings-stack{display:grid;gap:14px}.settings-stack>*{min-width:0}.settings-section{padding:18px}.settings-section>header{display:flex;justify-content:space-between;align-items:center;gap:16px}.settings-section>header>div{display:flex;align-items:center;gap:12px}.settings-section>header svg{color:var(--accent)}.settings-section>header span{display:grid;gap:3px}.settings-section>header strong{font-size:14px}.settings-section>header small{color:var(--muted);font-size:11px}.about-version-row{min-height:38px;display:flex;align-items:center;justify-content:space-between;gap:16px}.about-version-label{color:var(--muted);font-size:13px}.about-version-copy{min-height:38px;display:inline-flex;align-items:center;gap:10px;padding:0 9px;border:0;border-radius:6px;background:transparent;color:var(--text-soft);cursor:pointer}.about-version-copy:hover:not(:disabled){background:var(--surface-hover)}.about-version-copy:disabled{color:var(--muted);cursor:default}.about-version-copy code{font:13px ui-monospace,SFMono-Regular,Menlo,monospace}.about-version-copy svg{width:15px;height:15px;color:var(--muted)}.about-version-feedback{display:grid;gap:10px;margin-top:10px;color:var(--muted);font-size:12px;line-height:1.6}.about-version-fallback{width:100%;min-height:38px;padding:8px 10px;border:1px solid var(--line);border-radius:6px;background:var(--canvas);color:var(--text);font:11px ui-monospace,SFMono-Regular,Menlo,monospace}.inline-form{display:flex;gap:9px;margin-top:17px}.inline-form input{flex:1}.token-secret{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;margin-top:13px;padding:10px 12px;border:1px solid var(--accent-line);border-radius:6px;background:var(--accent-soft);font-size:11px}.token-secret code{min-width:0;overflow:hidden;text-overflow:ellipsis}.token-secret button{border:0;background:transparent;color:var(--accent);cursor:pointer}.token-list{margin-top:10px}.token-list>div{min-height:54px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line-soft)}.token-list span{display:grid;gap:3px}.token-list strong{font-size:12px}.token-list small{color:var(--muted);font-size:10px}.account-create-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(110px,.55fr) minmax(130px,.6fr) minmax(150px,.95fr) auto;align-items:end;gap:10px;margin-top:16px}.account-create-form label,.account-password-form label,.account-token-form label{display:grid;gap:6px;color:var(--muted);font-size:11px}.account-create-form input,.account-create-form select,.account-password-form input,.account-token-form input{width:100%;height:38px;padding:0 10px;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--text)}.account-list{display:grid;gap:10px;margin-top:16px}.account-card{padding:13px 14px;border:1px solid var(--line-soft);border-radius:7px;background:var(--surface)}.account-card>header{display:flex;align-items:center;justify-content:space-between;gap:12px}.account-card>header>span:first-child{display:grid;gap:3px}.account-card>header strong{font-size:13px}.account-card>header small,.empty-token-note{color:var(--muted);font-size:10px}.account-card-actions{display:flex;align-items:center;gap:8px}.account-status{padding:3px 7px;border-radius:999px;font-size:10px}.account-status.active{color:var(--green-text);background:var(--green-soft)}.account-status.disabled{color:var(--coral-text);background:var(--coral-soft)}.account-password-form,.account-token-form{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;margin-top:10px;padding-top:10px;border-top:1px solid var(--line-soft)}.token-secret small{grid-column:2 / -1;color:var(--muted)}.settings-actions{display:flex;align-items:center;gap:9px;margin-top:16px}.settings-actions>span{color:var(--muted);font-size:12px}.file-button{position:relative}.file-button input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.file-button:focus-within{outline:2px solid var(--accent);outline-offset:2px}.file-button.disabled{cursor:not-allowed;opacity:.55}.env-config-import{display:grid;gap:12px;margin-top:16px;padding-top:16px;border-top:1px solid var(--line-soft)}.env-config-paste{display:grid;gap:7px;color:var(--muted);font-size:11px;font-weight:600}.env-config-paste textarea{width:100%;min-height:132px;resize:vertical;padding:10px 11px;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--text);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px;line-height:1.55}.env-config-import-controls{display:flex;align-items:end;gap:9px;flex-wrap:wrap}.env-config-import-controls>label:not(.file-button){display:grid;gap:6px;color:var(--muted);font-size:11px;font-weight:600}.env-config-import-controls select{min-width:150px;height:38px;padding:0 30px 0 10px;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--text)}.env-config-error{margin-top:12px}.env-config-preview{display:grid;gap:10px;margin-top:18px}.env-config-preview>h3,.env-config-result>h3{margin:0;color:var(--text);font-size:13px}.env-config-preview-section{overflow:hidden;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.env-config-preview-section>header{min-height:39px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 11px;background:var(--canvas)}.env-config-preview-section>header label{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:650;cursor:pointer}.env-config-preview-section>header input{accent-color:var(--accent)}.env-config-preview-section>header span{color:var(--muted);font-size:10px}.env-config-plan-list,.env-config-option-list,.env-config-result ul{margin:0;padding:0;list-style:none}.env-config-plan-list>li+li{border-top:1px solid var(--line-soft)}.env-config-option-list{margin:0 10px 9px 26px;border-left:2px solid var(--line)}.env-config-option-list>li{margin-top:6px;padding-left:8px}.env-config-plan-row{min-height:42px;display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:6px 8px;padding:7px 10px;border-left:3px solid transparent}.env-config-plan-row strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}.env-config-plan-row .env-config-action,.env-config-plan-row .env-config-grade{padding:3px 7px;border-radius:999px;font-size:10px;font-weight:650}.env-config-plan-row small{grid-column:1 / -1;color:var(--text-soft);font-size:10px}.env-config-plan-row.safe{border-left-color:var(--green);background:var(--green-soft)}.env-config-plan-row.safe .env-config-grade{color:var(--green-text);background:var(--surface)}.env-config-plan-row.destructive{border-left-color:var(--coral);background:var(--coral-soft);color:var(--coral-text)}.env-config-plan-row.destructive .env-config-grade{background:var(--surface);color:var(--coral-text)}.env-config-plan-row.skipped:not(.destructive){border-left-color:var(--slate);background:var(--slate-soft)}.env-config-plan-row.skipped:not(.destructive) .env-config-grade{background:var(--surface);color:var(--muted)}.env-config-plan-row .env-config-action{background:var(--surface-veil);color:var(--text)}.env-config-empty-section{margin:0;padding:12px;color:var(--muted);font-size:10px}.env-config-execute{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px}.env-config-destructive-confirm{display:inline-flex;align-items:center;gap:8px;color:var(--coral-text);font-size:11px;font-weight:650;cursor:pointer}.env-config-destructive-confirm input{accent-color:var(--coral)}.env-config-result{display:grid;gap:8px;margin-top:14px;padding:12px;border:1px solid var(--green-line);border-radius:8px;background:var(--green-soft)}.env-config-result ul{display:grid;gap:5px;color:var(--text);font-size:10px}.mapping-count{flex:0 0 auto;color:var(--muted);font-size:11px}.mapping-coverage{min-height:38px;display:flex;align-items:center;gap:10px;margin-top:16px;padding:8px 10px;border:1px solid var(--amber-line);border-radius:7px;background:var(--amber-soft);color:var(--amber-text);font-size:11px}.mapping-coverage>strong{flex:0 0 auto;font-size:11px}.mapping-coverage>span{display:flex;flex-wrap:wrap;gap:6px}.mapping-coverage button{min-height:24px;padding:0 8px;border:1px solid var(--amber-line);border-radius:999px;background:var(--surface);color:var(--amber-text);cursor:pointer;font-size:10px}.mapping-coverage-complete{border-color:var(--green-line);background:var(--green-soft);color:var(--green-text)}.mapping-coverage-error{border-color:var(--coral-line);background:var(--coral-soft);color:var(--coral-text)}.owner-mapping-create{display:grid;grid-template-columns:minmax(150px,.8fr) minmax(240px,1.35fr) auto;align-items:end;gap:10px;margin-top:14px}.owner-mapping-create label{display:grid;gap:6px;color:var(--muted);font-size:11px;font-weight:600}.owner-mapping-create input,.owner-mapping-edit input{min-width:0;width:100%;height:38px;padding:0 10px;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--text)}.owner-mapping-error{margin-top:10px}.owner-mapping-table-wrap{margin-top:14px;overflow-x:auto;border:1px solid var(--line);border-radius:8px}.owner-mapping-table{width:100%;min-width:700px;border-collapse:collapse;table-layout:fixed}.owner-mapping-table th{height:38px;padding:0 12px;background:var(--canvas);color:var(--muted);text-align:left;font-size:10px;font-weight:650}.owner-mapping-table th:nth-child(1){width:22%}.owner-mapping-table th:nth-child(2){width:38%}.owner-mapping-table th:nth-child(3){width:24%}.owner-mapping-table th:nth-child(4){width:116px;text-align:right}.owner-mapping-table td{height:52px;padding:7px 12px;border-top:1px solid var(--line-soft);font-size:12px}.owner-mapping-table td:last-child{text-align:right}.owner-mapping-table td>strong{font-size:12px}.mapping-account{color:var(--text-soft);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px}.mapping-status{display:inline-flex;padding:3px 7px;border-radius:999px;font-size:10px}.mapping-status.linked{background:var(--green-soft);color:var(--green-text)}.mapping-status.detached{background:var(--slate-soft);color:var(--muted)}.owner-mapping-row-actions{display:inline-flex;align-items:center;justify-content:flex-end;gap:6px}.owner-mapping-row-actions .icon-button{width:31px;min-height:31px}.owner-mapping-row-actions .icon-button svg{width:14px;height:14px}.owner-mapping-row-actions .danger-icon-button{color:var(--coral)}.owner-mapping-row-actions .danger-icon-button:hover{border-color:var(--coral-line);background:var(--coral-soft)}.owner-mapping-edit{display:grid;grid-template-columns:minmax(150px,.8fr) minmax(240px,1.35fr) auto;align-items:center;gap:10px}.owner-mapping-edit .compact-button{min-height:34px;padding-inline:10px;font-size:11px}.owner-mapping-edit .compact-button svg{width:14px;height:14px}.owner-mapping-note{margin-top:12px;color:var(--muted);font-size:10px;line-height:1.6}.owner-account-mapping-section .empty-state{min-height:110px}.export-template-editor{display:grid;gap:16px;margin-top:18px}.export-template-basics{display:grid;grid-template-columns:minmax(150px,.9fr) minmax(180px,1.2fr) minmax(150px,.9fr);gap:12px}.export-template-basics label{display:grid;gap:7px;color:var(--muted);font-size:11px;font-weight:600}.export-template-basics input,.export-template-basics select{min-width:0;height:38px;padding:0 10px;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--text)}.export-column-list{overflow:hidden;border:1px solid var(--line);border-radius:8px}.export-column-head,.export-column-row{min-height:48px;display:grid;grid-template-columns:32px 52px minmax(140px,1fr) minmax(170px,1.15fr) 72px;align-items:center;gap:8px;padding:0 12px}.export-column-head{min-height:38px;background:var(--canvas);color:var(--muted);font-size:10px;font-weight:650}.export-column-row{border-top:1px solid var(--line-soft);background:var(--surface)}.export-column-row>input[type=checkbox]{justify-self:center}.export-column-row>span:not(.export-column-actions){min-width:0;display:grid;gap:2px}.export-column-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.export-column-row small{color:var(--muted);font-size:9px}.export-column-row small.export-column-warning{color:var(--amber-text)}.export-column-row>input:not([type=checkbox]){min-width:0;height:32px;padding:0 9px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--text);font-size:11px}.export-column-row>input:disabled{background:var(--canvas);color:var(--muted);opacity:.7}.export-column-actions{display:flex;justify-content:flex-end;gap:3px}.export-column-actions button{width:29px;height:29px;display:grid;place-items:center;padding:0;border:0;border-radius:5px;background:transparent;color:var(--muted);cursor:pointer}.export-column-actions button:hover:not(:disabled){background:var(--accent-soft);color:var(--accent)}.export-column-actions button:disabled{cursor:default;opacity:.25}.export-column-actions svg{width:14px;height:14px}.export-column-row.dragging{position:relative;z-index:10;box-shadow:0 9px 24px var(--shadow-medium)}.export-template-editor>footer{display:flex;align-items:center;justify-content:space-between;gap:12px}.template-ready,.template-warning{font-size:11px}.template-ready{color:var(--green)}.template-warning{color:var(--amber)}.export-popover-wrap{position:relative}.export-popover-backdrop{position:fixed;inset:0;z-index:30}.export-popover{position:absolute;right:0;top:calc(100% + 8px);z-index:31;width:330px;display:grid;gap:12px;padding:14px;border:1px solid var(--line);border-radius:9px;background:var(--surface-raised);box-shadow:0 18px 50px var(--shadow-strong)}.export-popover>header{display:grid;gap:3px}.export-popover>header strong{font-size:13px}.export-popover>header small{color:var(--muted);font-size:10px}.export-ignored-note{margin:0;color:var(--amber-text);font-size:10px;line-height:1.55}.export-attribute-list{max-height:240px;overflow-y:auto;display:grid;gap:2px}.export-attribute-list label{min-height:34px;display:flex;align-items:center;gap:9px;padding:0 8px;border-radius:6px;font-size:12px;cursor:pointer}.export-attribute-list label:hover{background:var(--accent-soft)}.export-attribute-list input{accent-color:var(--accent)}.export-attribute-row{min-height:34px;display:flex;align-items:center;gap:4px;padding-right:4px;border-radius:6px}.export-attribute-row:hover{background:var(--accent-soft)}.export-attribute-row label{flex:1;min-width:0;min-height:34px;display:flex;align-items:center;gap:9px;padding:0 8px;border-radius:6px;font-size:12px;cursor:pointer}.export-attribute-row .export-column-actions button{width:26px;height:26px}.export-popover>footer{display:flex;align-items:center;justify-content:space-between;gap:10px}.export-save-as{min-width:0;flex:1 1 auto;display:flex;align-items:center;gap:6px}.export-save-as input{min-width:0;width:0;flex:1 1 auto;height:32px;padding:0 9px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--text);font-size:11px}.export-popover>footer .secondary-button,.export-popover>footer .primary-button{flex:0 0 auto;min-height:34px;padding-inline:10px;font-size:12px;line-height:1;white-space:nowrap}.export-popover>footer .secondary-button svg{width:15px;height:15px}.export-popover .form-error{margin:0;font-size:11px}.summary-rail{display:grid;grid-template-columns:repeat(4,1fr);margin-bottom:20px;border:1px solid var(--line);border-radius:8px;background:var(--surface);overflow:hidden}.summary-rail>div{min-height:104px;display:flex;align-items:center;gap:14px;padding:18px 22px;border-right:1px solid var(--line)}.summary-rail>div:last-child{border-right:0}.summary-rail svg{width:25px;height:25px;color:var(--accent)}.summary-rail span{display:grid}.summary-rail strong{font-size:25px;line-height:1}.summary-rail small{margin-top:7px;color:var(--muted);font-size:11px}.upcoming-section{border:1px solid var(--line);border-radius:8px;background:var(--surface);overflow:hidden}.upcoming-section>header{min-height:67px;display:flex;align-items:center;justify-content:space-between;padding:0 20px;border-bottom:1px solid var(--line)}.upcoming-section h2{margin:0;font-size:16px}.upcoming-section p{margin:4px 0 0;color:var(--muted);font-size:11px}.upcoming-section>header a{display:flex;align-items:center;gap:6px;color:var(--accent);text-decoration:none;font-size:12px}.upcoming-list>a{min-height:72px;display:grid;grid-template-columns:48px 1fr auto 26px;align-items:center;gap:14px;padding:9px 18px;border-bottom:1px solid var(--line-soft);color:inherit;text-decoration:none}.upcoming-list>a:hover{background:var(--surface-hover)}.upcoming-date{min-height:46px;display:grid;place-content:center;border-left:3px solid var(--accent);background:var(--surface-muted);text-align:center}.upcoming-date strong{font-size:16px}.upcoming-date small{color:var(--muted);font-size:9px}.status-rail-in_progress{border-color:var(--green)}.status-rail-pending{border-color:var(--amber)}.upcoming-title{display:grid;gap:5px}.upcoming-title strong{font-size:13px}.upcoming-title small{color:var(--muted);font-size:10px}.upcoming-list>a>svg{color:var(--muted)}.overview-panels{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(480px,100%),1fr));gap:20px;align-items:start}.reminder-list>a{min-height:72px;display:grid;grid-template-columns:auto 1fr 26px;align-items:center;gap:14px;padding:9px 18px;border-bottom:1px solid var(--line-soft);color:inherit;text-decoration:none}.reminder-list>a:hover{background:var(--surface-hover)}.reminder-type{display:inline-flex;align-items:center;min-height:26px;padding:0 10px;border-radius:13px;font-size:10px;font-weight:650;white-space:nowrap}.reminder-type-work-order{background:var(--amber-soft);color:var(--amber-text)}.reminder-type-plan-submission{background:var(--accent-soft);color:var(--accent)}.reminder-list>a>svg{color:var(--muted)}.auth-screen{min-height:100vh;display:grid;grid-template-columns:1.05fr .95fr;background:var(--surface)}.auth-intro{display:flex;flex-direction:column;justify-content:space-between;padding:42px 7vw 10vh;background:var(--accent-panel-bg);border-right:1px solid var(--accent-panel-border)}.auth-brand{display:flex;align-items:center;gap:11px;font-size:20px}.auth-intro>div:last-child{max-width:540px}.auth-intro>div:last-child>.auth-hero-mark{width:46px;height:46px}.auth-intro h1{margin:22px 0 12px;font-size:clamp(34px,4vw,54px);line-height:1.08;letter-spacing:-.05em}.auth-intro p{max-width:470px;margin:0;color:var(--muted);font-size:16px;line-height:1.7}.auth-panel{display:grid;place-items:center;padding:35px}.auth-form{width:min(390px,100%)}.auth-form h2{margin:0;font-size:26px}.auth-form>p{margin:9px 0 27px;color:var(--muted);font-size:13px;line-height:1.6}.auth-form>label{display:grid;gap:7px;margin-bottom:16px;color:var(--text-soft);font-size:12px;font-weight:600}.auth-form small{color:var(--muted);font-weight:400}.input-with-icon{height:42px;display:flex;align-items:center;gap:9px;padding:0 11px;border:1px solid var(--line);border-radius:7px;background:var(--surface)}.input-with-icon:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.input-with-icon svg{color:var(--muted)}.input-with-icon input{min-width:0;flex:1;border:0;outline:0;background:transparent}.auth-form .form-error{margin-bottom:13px}.boot-screen{min-height:100vh;display:grid;place-content:center;justify-items:center;gap:14px;background:var(--surface)}.boot-screen .brand-mark{width:42px;height:42px}.boot-screen p,.page-loading{color:var(--muted);font-size:13px}.page-loading{padding:40px}:root[data-theme=dark]{color-scheme:dark;color:var(--text);background:var(--canvas);--accent: #22d3ee;--accent-hover: #67e8f9;--accent-soft: rgb(34 211 238 / 14%);--accent-soft-hover: rgb(34 211 238 / 24%);--accent-line: rgb(34 211 238 / 45%);--accent-ring: rgb(34 211 238 / 25%);--accent-glow: rgb(34 211 238 / 30%);--accent-contrast: #020617;--accent-panel-bg: #0b2c39;--accent-panel-border: #1d5468;--text: #e2e8f0;--text-soft: #cbd5e1;--muted: #94a3b8;--line: #1e293b;--line-strong: #334155;--line-soft: #18202f;--surface: #0f172a;--surface-raised: #1e293b;--surface-hover: #1e293b;--surface-muted: #162032;--surface-veil: rgb(2 6 23 / 50%);--backdrop: rgb(0 0 0 / 55%);--canvas: #020617;--stripe: #131c2f;--green: #34d399;--green-text: #6ee7b7;--green-soft: rgb(52 211 153 / 13%);--green-line: rgb(52 211 153 / 38%);--amber: #fbbf24;--amber-text: #fcd34d;--amber-soft: rgb(251 191 36 / 13%);--amber-soft-hover: rgb(251 191 36 / 20%);--amber-line: rgb(251 191 36 / 35%);--coral: #fb7185;--coral-text: #fda4af;--coral-soft: rgb(251 113 133 / 12%);--coral-line: rgb(251 113 133 / 38%);--slate: #94a3b8;--slate-text: #cbd5e1;--slate-soft: rgb(148 163 184 / 14%);--focus-ring: #22d3ee;--switch-track: #334155;--switch-knob: #f8fafc;--option-chip-fg: #ffffff;--option-chip-fg-strong: #0f172a;--shadow-soft: rgb(0 0 0 / 35%);--shadow-medium: rgb(0 0 0 / 42%);--shadow-strong: rgb(0 0 0 / 52%);--shadow-drawer: -12px 0 36px rgb(0 0 0 / 45%);--gantt-bar: #22d3ee;--gantt-bar-conflict: #d97706;--gantt-label: #f1f5f9;--gantt-label-stroke: rgb(2 6 23 / 70%);--gantt-handle-fill: rgb(255 255 255 / 18%);--gantt-handle-stroke: rgb(255 255 255 / 90%);--gantt-rest-day: rgb(251 191 36 / 9%);--gantt-today-rest-marker-bg: #020617;--gantt-today-rest-marker-fg: #f1f5f9}.gantt-mount .current-date-highlight{background:var(--accent);color:var(--accent-contrast)}.gantt-mount .current-highlight,.gantt-mount .current-ball-highlight{background:var(--accent)}.gantt-mount .current-date-highlight .timeline-reminder-bell{color:var(--accent-contrast)}.gantt-mount .current-date-highlight .timeline-reminder-bell:hover{opacity:.72}html.work-plans-active,html.work-plans-active body,html.work-plans-active #root{height:100%;min-height:0;overflow:hidden;overscroll-behavior:none}html.work-plans-active body{position:fixed;inset:0;width:100%}html.work-plans-active .app-shell{height:100vh;height:100dvh;display:grid;grid-template-rows:minmax(0,1fr)}html.work-plans-active .app-main{height:auto;display:flex;flex-direction:column;overflow:hidden}html.work-plans-active .offline-banner{flex:none}html.work-plans-active .work-plans-page{height:auto;flex:1}html.work-plans-active .gantt-container,html.work-plans-active .plan-rows{overscroll-behavior-y:contain}@media(max-width:720px){html.work-plans-active:not(.gantt-fullscreen) .app-shell{grid-template-columns:minmax(0,1fr);grid-template-rows:60px minmax(0,1fr)}}html.gantt-fullscreen .app-shell{grid-template-columns:minmax(0,1fr)}html.gantt-fullscreen .sidebar,html.gantt-fullscreen .offline-banner{display:none}html.gantt-fullscreen .work-plans-page{padding:0}html.gantt-fullscreen .work-plans-page .page-header,html.gantt-fullscreen .work-plans-page .read-only-hint,html.gantt-fullscreen .work-plans-page .spreadsheet-transfer-message:not(.query-error-message),html.gantt-fullscreen .work-plans-page .filter-toolbar{display:none}html.gantt-fullscreen .work-plans-page .query-error-message{margin:0 14px 10px;text-align:left}html.gantt-fullscreen .planner-panel{border:0;border-radius:0;box-shadow:none}@media(max-width:720px){.about-version-copy,.about-version-fallback{min-height:44px}}@media(max-width:1120px){.app-shell{grid-template-columns:76px minmax(0,1fr)}.sidebar-brand{justify-content:center;padding:0}.sidebar-brand strong,.nav-item span,.user-meta,.sidebar-collapse{display:none}.sidebar-nav{padding-inline:10px}.nav-item{justify-content:center;padding:0}.sidebar-footer{grid-template-columns:1fr;justify-items:center}.sidebar-footer .signout-button{grid-column:auto;width:38px;padding:0}.sidebar-footer .signout-button span{display:none}.work-plans-page{overflow:hidden}.table-toolbar .range-controls{gap:4px}.table-toolbar .range-controls .icon-button{width:28px;min-height:28px}.table-toolbar .range-controls .today-button{min-height:28px;padding-inline:9px}}@media(max-width:900px){.bark-settings-form{grid-template-columns:minmax(200px,1.4fr) minmax(140px,.9fr)}.bark-settings-actions{grid-column:1 / -1;justify-content:flex-end}.bark-reminder-item{grid-template-columns:minmax(0,1fr) auto;gap:9px}.bark-reminder-lead{grid-column:1 / -1;justify-content:flex-start}.bark-platform-event-list{grid-template-columns:1fr}}@media(max-width:900px){html:not(.gantt-fullscreen) .table-toolbar-actions{justify-self:end}html:not(.gantt-fullscreen) .table-toolbar-actions .view-switch{margin-inline:0}}@media(max-width:720px){.app-shell{display:block}.app-main{height:calc(100vh - 60px - env(safe-area-inset-top) - env(safe-area-inset-bottom))}.sidebar{position:sticky;top:0;width:100%;height:60px;flex-direction:row;align-items:center;border-right:0;border-bottom:1px solid var(--line)}.sidebar-brand{width:62px;height:59px;border:0}.sidebar-brand .brand-mark{width:30px}.sidebar-nav{flex:1;display:flex;justify-content:space-around;padding:0 6px}.nav-item{width:44px;min-height:44px}.sidebar-collapse{display:none}.sidebar-footer{width:58px;margin-top:0;padding:0 10px;border-top:0;border-left:1px solid var(--line)}.sidebar-footer .user-chip,.sidebar-footer .user-meta,.sidebar-footer .theme-toggle,.sidebar-footer .auto-theme-toggle{display:none}.sidebar-footer .signout-button{display:inline-flex}.work-plans-page,.content-page{padding:18px 16px}.work-plans-page{height:100%}.page-header{flex-direction:row;align-items:center;gap:10px}.page-header h1{font-size:24px;white-space:nowrap}.page-header p{display:none}.monthly-goals-page .header-actions{flex-wrap:nowrap;gap:6px}.monthly-goals-page .header-actions .secondary-button{padding-inline:9px}.monthly-goals-page .header-actions .toolbar-button-label{display:none}.work-plans-page .page-header{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);align-items:center;gap:8px;margin-bottom:13px}.work-plans-page .page-header>div:first-child,.work-plans-page .work-plan-header-actions{min-width:0}.work-plans-page .work-plan-header-actions{width:100%;flex-wrap:nowrap;justify-content:flex-end;gap:6px}.work-plans-page .work-plan-header-actions>select{width:0;min-width:0;flex:1 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.work-plans-page .work-plan-header-actions>.export-popover-wrap,.work-plans-page .work-plan-header-actions>.export-popover-wrap>.secondary-button{flex:0 0 auto}.work-plans-page .work-plan-header-actions>.export-popover-wrap>.secondary-button{padding-inline:9px;white-space:nowrap}.work-plans-page .work-plan-header-actions .export-popover{max-width:calc(100vw - 32px)}.primary-button{padding-inline:11px}.filter-toolbar{flex-shrink:0;flex-wrap:wrap;padding-bottom:3px}.search-control{flex:1 1 40px;min-width:0}.filter-toolbar select{flex:0 0 130px}.filter-toolbar .compact-button{padding-inline:9px}.filter-toolbar .compact-button .toolbar-button-label{display:none}.filter-toolbar .compact-button,.filter-toolbar .text-button{flex:0 0 auto;white-space:nowrap}.filter-toolbar .batch-selection-controls{order:1;flex:1 0 100%;justify-content:flex-end}.advanced-filter-panel{overflow-x:auto}.advanced-filter-panel strong{flex:0 0 auto}.planner-panel{grid-template-columns:minmax(0,var(--planner-list-width, 44%)) 8px minmax(0,1fr)}.gantt-legend-items-six{display:grid;grid-template-columns:repeat(4,max-content);justify-content:center;gap:2px 12px}.gantt-legend-items-six .gantt-legend-item:nth-child(5){grid-column:2}.planner-panel{grid-template-rows:auto minmax(0,1fr) minmax(46px,auto)}.planner-panel .table-toolbar{display:grid;grid-template-columns:repeat(4,auto);grid-template-rows:auto auto;justify-content:space-between;align-items:center;row-gap:6px;padding-block:6px}.planner-panel .table-toolbar-left,.planner-panel .table-toolbar-actions{display:contents}.planner-panel .table-toolbar-center{position:static;grid-column:1 / -1;grid-row:1;justify-self:center;margin-inline:0;gap:8px}.planner-panel .gantt-fullscreen-toggle{position:static;transform:none}.planner-panel .planner-collapse-button{grid-column:1;grid-row:2}.planner-panel .table-toolbar-left .range-controls{grid-column:2;grid-row:2;margin-inline:0}.planner-panel .table-toolbar-actions .view-switch{grid-column:3;grid-row:2;margin-inline:0}.planner-panel .table-toolbar-actions .column-settings-wrap{grid-column:4;grid-row:2}.editor-drawer,.batch-edit-drawer{width:100vw}.batch-edit-form{grid-template-columns:1fr}.batch-edit-form>*,.batch-edit-form>.full{grid-column:1}.drawer-form{grid-template-columns:1fr}.drawer-form>*,.field.full,.drawer-form>.full{grid-column:1}.field-grid,.auth-screen{grid-template-columns:1fr}.auth-intro{display:none}.auth-panel{padding:26px}.fields-table{min-width:780px}.settings-panel{overflow-x:auto}.plan-type-table{min-width:560px}.settings-panel-header{height:auto;min-height:55px;flex-wrap:wrap;align-items:center;gap:8px;padding-block:10px}.settings-panel-header>div strong,.settings-panel-header-actions>span,.settings-panel-header-actions .primary-button{white-space:nowrap}.plan-type-panel .settings-panel-header-actions{flex-wrap:wrap;justify-content:flex-end;row-gap:6px;margin-left:auto}.settings-section>header{align-items:flex-start}.settings-actions,.inline-form,.env-config-import-controls,.env-config-execute{align-items:stretch;flex-direction:column}.token-secret{grid-template-columns:1fr}.token-secret small{grid-column:auto}.account-create-form,.account-password-form,.account-token-form,.owner-mapping-create,.bark-settings-form{grid-template-columns:1fr}.mapping-coverage{align-items:flex-start;flex-direction:column}.settings-tablist{overflow-x:auto;flex-wrap:nowrap;scrollbar-width:none}.settings-tablist::-webkit-scrollbar{display:none}.env-config-import-controls select{width:100%}.env-config-plan-row{grid-template-columns:minmax(0,1fr) auto}.env-config-plan-row .env-config-grade{justify-self:start}.env-config-option-list{margin-left:14px}.env-config-execute>.primary-button{width:100%}.export-template-basics{grid-template-columns:1fr}.export-column-list{overflow-x:auto}.export-column-head,.export-column-row{min-width:650px}.summary-rail{grid-template-columns:1fr 1fr}.summary-rail>div:nth-child(2){border-right:0}.summary-rail>div{border-bottom:1px solid var(--line)}.upcoming-list>a{grid-template-columns:44px 1fr 24px}.upcoming-list .status-badge{display:none}.toast-region{top:calc(12px + env(safe-area-inset-top));right:calc(16px + env(safe-area-inset-right))}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}.plan-row-title-cell{min-width:0;align-self:stretch;display:flex;flex-direction:column;justify-content:center;gap:3px;padding:7px 10px}.plan-row-title-cell .plan-title-button{height:auto;padding:0}.plan-row-goal-chips{display:flex;flex-wrap:nowrap;gap:4px;min-width:0;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}.plan-row-goal-chips::-webkit-scrollbar{display:none;width:0;height:0}.goal-chip{flex:0 0 auto;max-width:128px;padding:1px 6px;border-radius:4px;background:var(--accent-soft);color:var(--accent);font-size:10px;line-height:1.5;text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.goal-chip:hover{background:var(--accent-soft-hover);color:var(--accent-hover)}.month-toolbar{display:flex;align-items:end;gap:12px;margin-bottom:14px}.month-selector{display:grid;gap:6px;color:var(--muted);font-size:11px;font-weight:600}.month-selector select{min-width:108px;height:38px;padding:0 30px 0 10px;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--text)}.monthly-goals-summary{margin-left:auto;color:var(--muted);font-size:12px}.compact-check{min-height:38px;padding:0 13px;font-size:12px;font-weight:600;cursor:pointer}.compact-check input{display:none}.monthly-goals-page .settings-panel{overflow-x:auto}.goals-table{min-width:1300px;min-height:55px;display:grid;grid-template-columns:minmax(170px,1.4fr) 96px 92px minmax(120px,1fr) minmax(150px,1.3fr) 140px 140px 168px;align-items:center;gap:8px;padding:0 15px;border-bottom:1px solid var(--line-soft);background:var(--surface);font-size:12px}.goals-table.table-head{min-height:42px;background:var(--surface-muted);color:var(--muted);font-weight:650}.goal-plan-time{white-space:nowrap;font-variant-numeric:tabular-nums}.goal-time-sort{display:inline-flex;align-items:center;gap:6px;justify-self:start;padding:6px 0;border:0;background:transparent;color:inherit;font:inherit;cursor:pointer}.goal-time-sort:hover{color:var(--accent)}.goal-time-sort:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:3px}.goals-table strong{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.goals-table small{display:block;margin-top:2px;color:var(--amber-text)}.goals-table.archived{opacity:.58;background:var(--surface-muted)}.goals-table .truncate{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-soft)}.goal-linked-plan{min-width:0;display:flex;align-items:center;gap:8px}.goal-linked-plan .truncate{min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-soft)}.goal-unlinked{color:var(--muted)}.goal-multi-select{display:grid;gap:6px;max-height:190px;overflow-y:auto}@media(pointer:coarse){.goal-multi-select{max-height:none;overflow:visible}}.goal-option{display:flex;align-items:center;gap:8px;padding:7px 9px;border:1px solid var(--line-soft);border-radius:7px;background:var(--surface);font-size:12px;cursor:pointer}.goal-option input{accent-color:var(--accent)}.goal-option span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.goal-option.disabled{opacity:.55;cursor:not-allowed}.goal-link-picker{padding:18px 22px;display:grid;gap:12px}.goal-link-current{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 11px;border:1px solid var(--line-soft);border-radius:7px;background:var(--canvas);font-size:12px}.goal-link-current .truncate{min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.goal-link-search{width:100%}.goal-link-toolbar{display:flex;align-items:center;gap:8px}.goal-link-toolbar .goal-link-search{flex:1;width:auto}.goal-link-create{display:grid;gap:10px;padding:12px;border:1px solid var(--line-soft);border-radius:7px;background:var(--canvas)}.goal-link-create-times{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}.goal-link-create-actions{display:flex;justify-content:flex-end;gap:8px}.goal-link-list{max-height:320px;overflow-y:auto;border:1px solid var(--line-soft);border-radius:7px}.goal-link-option{min-height:44px;width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 11px;border:0;border-bottom:1px solid var(--line-soft);background:var(--surface);color:var(--text);font-size:12px;text-align:left;cursor:pointer}.goal-link-option:last-child{border-bottom:0}.goal-link-option>.goal-link-option-title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.goal-link-option .status-badge{flex:none}.goal-link-option:hover:not(:disabled){background:var(--surface-hover)}.goal-link-option.disabled,.goal-link-option:disabled{opacity:.55;cursor:not-allowed}.goal-link-empty{padding:22px;color:var(--muted);text-align:center;font-size:12px}.goal-link-hint{margin:0;color:var(--muted);font-size:11px}.goal-recurrence-summary{display:flex;align-items:center;justify-content:space-between;gap:12px}.goal-recurrence-summary>span{min-width:0;color:var(--muted);font-size:12px}.series-dialog{width:min(560px,100%)}.series-dialog .field-grid.compact{padding:18px 22px}.series-dialog-meta{margin-top:2px;color:var(--muted);font-size:11px}.series-instance-list{max-height:240px;overflow-y:auto;border:1px solid var(--line-soft);border-radius:7px}.series-instance{min-height:40px;display:grid;grid-template-columns:96px minmax(0,1fr) auto;align-items:center;gap:10px;padding:0 11px;border-bottom:1px solid var(--line-soft);font-size:12px}.series-instance:last-child{border-bottom:0}.series-instance>span:first-child{color:var(--muted)}.series-instance .truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.series-instance small{color:var(--coral-text);font-size:10px}.series-instance.archived{opacity:.58}.field-dialog-footer{display:flex;align-items:center;justify-content:space-between;gap:9px;padding:14px 22px;border-top:1px solid var(--line)}.field-dialog-footer>div{display:flex;gap:9px}.series-dialog .field-dialog-footer>div:first-child{flex-wrap:wrap}.series-dissolve-layer{z-index:120}.series-dissolve-dialog{width:min(680px,100%)}.dissolve-preview{display:grid;gap:16px;padding:18px 22px 0}.dissolve-summary{display:grid;gap:4px;padding:12px 14px;border:1px solid var(--line);border-radius:8px;background:var(--surface-muted)}.dissolve-summary strong{color:var(--text);font-size:13px}.dissolve-summary span{color:var(--muted);font-size:12px}.dissolve-group{display:grid;gap:8px}.dissolve-group h3{margin:0;color:var(--text);font-size:13px}.dissolve-group.danger-zone h3{color:var(--coral-text)}.dissolve-instance-list{max-height:180px;overflow-y:auto;border:1px solid var(--line-soft);border-radius:7px}.dissolve-instance{min-height:44px;display:grid;grid-template-columns:100px minmax(0,1fr) auto;align-items:center;gap:10px;padding:7px 11px;border-bottom:1px solid var(--line-soft);font-size:12px}.dissolve-instance:last-child{border-bottom:0}.dissolve-instance>span,.dissolve-instance small{color:var(--muted)}.dissolve-instance strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dissolve-instance.delete small{color:var(--coral-text)}.dissolve-confirm{grid-column:1 / -1}.dissolve-warning{margin:-8px 0 0;color:var(--coral-text);font-size:11px}.dissolve-preview>.field-dialog-footer{margin:0 -22px}.annual-quick-edit-layer{padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}.annual-quick-edit-dialog{position:relative;z-index:110;width:100%;height:100%;display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;overflow:hidden;border-radius:0;background:var(--surface);box-shadow:0 22px 70px var(--shadow-strong)}.annual-quick-edit-dialog>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:20px 24px 15px;border-bottom:1px solid var(--line)}.annual-quick-edit-dialog h2{display:flex;align-items:center;gap:8px;margin:0;font-size:18px}.annual-quick-edit-dialog h2 svg{width:18px;color:var(--accent)}.annual-quick-edit-dialog p{margin:5px 0 0;color:var(--muted);font-size:12px}.annual-quick-edit-toolbar{display:flex;align-items:end;gap:14px;padding:14px 24px;border-bottom:1px solid var(--line)}.annual-quick-edit-toolbar .month-selector select{min-width:112px}.annual-quick-edit-hint{margin-bottom:10px;color:var(--muted);font-size:11px}.annual-quick-edit-actions{display:flex;align-items:center;gap:8px;margin-left:auto}.annual-quick-edit-actions button{white-space:nowrap}.annual-quick-edit-table-scroll{min-height:0;overflow:auto;padding:0 24px}.annual-quick-edit-table{width:100%;min-width:840px;border-collapse:separate;border-spacing:0;table-layout:fixed;font-size:12px}.annual-quick-edit-table th,.annual-quick-edit-table td{height:58px;padding:7px 5px;border-bottom:1px solid var(--line-soft);text-align:center}.annual-quick-edit-table thead th{position:sticky;top:0;z-index:3;height:42px;background:var(--canvas);color:var(--muted);font-weight:650}.annual-quick-edit-table thead th:first-child,.annual-quick-edit-table tbody th{position:sticky;left:0;z-index:2;width:250px;min-width:250px;text-align:left}.annual-quick-edit-table thead th:first-child{z-index:4}.annual-quick-edit-table thead th:last-child,.annual-quick-edit-table tbody td:last-child{width:42px;min-width:42px}.annual-quick-edit-table tbody th{background:var(--surface)}.annual-quick-edit-name-cell input{width:100%;height:36px;padding:0 9px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--text);font-size:13px}.annual-quick-edit-name-cell input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:0}.annual-quick-edit-table td input{width:22px;height:22px;cursor:pointer;accent-color:var(--accent)}.annual-quick-edit-row-error{display:block;margin-top:4px;color:var(--coral-text);font-size:10px;font-weight:400}.annual-quick-edit-row-actions .icon-button{width:30px;min-height:30px;padding:0}.annual-quick-edit-row-actions svg{width:15px}.annual-quick-edit-message{display:flex;align-items:center;gap:10px;padding:14px 24px 0}.annual-quick-edit-message .form-error{flex:1}.annual-quick-edit-copy-status{flex:1 1 100%;order:4;color:var(--muted);font-size:12px}.annual-quick-edit-loading{display:grid;min-height:220px;place-items:center;color:var(--muted);font-size:13px}.annual-quick-edit-error{margin:0 24px 12px}.annual-quick-edit-dialog>footer{display:flex;justify-content:flex-end;gap:9px;padding:14px 24px;border-top:1px solid var(--line);background:var(--surface)}.annual-quick-edit-search{display:flex;align-items:center;gap:6px;flex:0 1 240px;min-width:180px;height:38px;padding:0 8px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.annual-quick-edit-search svg{width:15px;color:var(--muted)}.annual-quick-edit-search input{flex:1;min-width:0;height:32px;border:0;background:transparent;color:var(--text);font-size:13px}.annual-quick-edit-search input:focus{outline:0}.annual-quick-edit-search input::-webkit-search-cancel-button{display:none}.annual-quick-edit-search:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.annual-quick-edit-search .icon-button{width:26px;min-height:26px;padding:0}.annual-quick-edit-search-status{flex:1 1 100%;order:5;color:var(--muted);font-size:11px}.annual-quick-edit-search-empty{justify-content:center}@media(min-width:721px){.annual-quick-edit-search-status,.annual-quick-edit-copy-status{flex:1 1 auto}}@media(max-width:900px){.annual-quick-edit-toolbar{flex-wrap:wrap}}.annual-quick-edit-name-row{display:flex;align-items:center;gap:6px}.annual-quick-edit-handle{width:26px;height:36px;display:grid;place-items:center;flex:0 0 auto;padding:0;border:0;border-radius:6px;background:transparent;color:var(--muted);cursor:grab;touch-action:none}.annual-quick-edit-handle svg{width:15px}.annual-quick-edit-handle:not(:disabled):active{cursor:grabbing}.annual-quick-edit-handle:not(:disabled):hover{color:var(--accent);background:var(--accent-soft)}.annual-quick-edit-handle:disabled{opacity:.45;cursor:not-allowed}.annual-quick-edit-row.dragging{position:relative;z-index:6}.annual-quick-edit-row.dragging>th,.annual-quick-edit-row.dragging>td{background:var(--accent-soft);box-shadow:0 9px 24px var(--shadow-medium)}@media(max-width:720px){.annual-quick-edit-layer{padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}.annual-quick-edit-dialog{width:100%;height:100%;border-radius:0}.annual-quick-edit-dialog>header,.annual-quick-edit-toolbar,.annual-quick-edit-table-scroll,.annual-quick-edit-dialog>footer{padding-inline:16px}.annual-quick-edit-toolbar{align-items:flex-start;flex-wrap:wrap}.annual-quick-edit-search{flex:1 1 200px;align-self:end}.annual-quick-edit-hint{flex:1 1 100%;order:3;margin:0}.annual-quick-edit-actions{margin-left:auto;align-self:end}.annual-quick-edit-table{min-width:820px}.annual-quick-edit-table thead th:first-child,.annual-quick-edit-table tbody th{width:190px;min-width:190px}.annual-quick-edit-message{padding-inline:16px}}.sort-panel{display:block;flex:0 0 auto;margin:-5px 0 13px;padding:10px 14px}.sort-panel-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.sort-panel-head small{display:block;margin-top:2px;color:var(--muted);font-size:11px}.sort-panel-actions{display:flex;align-items:center;gap:6px}.sort-panel-hint{margin:6px 0 0;color:var(--muted);font-size:11px}.sort-item-list{margin:8px 0 0;padding:0;list-style:none}.sort-item-row{display:flex;align-items:center;gap:8px;padding:5px 0;border-bottom:1px solid var(--line-soft);font-size:12px}.sort-item-row:last-child{border-bottom:0}.sort-item-rank{width:18px;height:18px;display:grid;place-items:center;border-radius:50%;background:var(--accent);color:var(--accent-contrast);font-size:10px;font-weight:650}.sort-item-label{flex:0 0 8em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sort-item-row button{display:inline-flex;align-items:center;gap:3px;min-height:26px;padding:0 7px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--text);font-size:11px;cursor:pointer}.sort-item-row button:disabled{opacity:.45;cursor:not-allowed}.sort-item-row button svg{width:12px}.sort-item-row .column-order-actions{margin-left:auto;display:flex;gap:4px}.sort-item-row .column-order-actions button{width:auto;min-width:25px}.sort-add-row{display:flex;align-items:center;gap:8px;margin-top:9px}.sort-add-row select{height:32px;min-width:180px;padding:0 9px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--text);font-size:12px}.sort-add-row small{color:var(--muted);font-size:11px}.multi-select-editor{position:relative;display:flex;flex-wrap:wrap;align-items:center;gap:6px;min-height:38px;padding:4px 8px;border:1px solid var(--line);border-radius:6px;background:var(--surface)}.multi-select-editor:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.multi-select-editor .multi-select-input-row{flex:1 1 120px;display:flex;min-width:96px}.multi-select-editor input{width:100%;min-width:0;border:0;background:transparent;color:var(--text);font-size:13px;height:28px}.multi-select-editor input:focus{outline:0;box-shadow:none}.multi-select-editor input::placeholder{color:var(--muted)}.multi-select-editor.read-only{padding-block:6px}.multi-select-empty{color:var(--muted)}.multi-select-chip{display:inline-flex;align-items:center;gap:3px;max-width:100%;padding:2px 6px 2px 9px;border-radius:999px;font-size:12px;font-weight:560;line-height:1.6;white-space:nowrap}.multi-select-chip.colored{color:var(--option-chip-fg)}.multi-select-chip.dark-text{color:var(--option-chip-fg-strong)}.multi-select-chip.neutral{background:var(--surface-muted);color:var(--text-soft);border:1px solid var(--line-strong);padding-right:9px}.multi-select-chip-remove{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border:0;border-radius:999px;padding:0;background:transparent;color:inherit;cursor:pointer;opacity:.72}.multi-select-chip-remove:hover{opacity:1}.multi-select-chip .multi-select-chip-remove svg{width:11px;height:11px}.multi-select-options{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:30;margin:0;padding:4px;list-style:none;max-height:208px;overflow-y:auto;background:var(--surface-raised);border:1px solid var(--line);border-radius:6px;box-shadow:0 8px 20px var(--shadow-medium)}.multi-select-options li+li{margin-top:1px}.multi-select-option{display:flex;align-items:center;gap:8px;width:100%;padding:8px 9px;border:0;border-radius:5px;background:transparent;color:var(--text);font-size:13px;text-align:left;cursor:pointer}.multi-select-option:hover,.multi-select-option.active{background:var(--surface-hover)}.multi-select-option-dot{flex:0 0 auto;width:9px;height:9px;border-radius:999px;background:var(--line-strong)}.multi-select-option.create-entry{color:var(--accent)}.multi-select-option.empty-hint{color:var(--muted);cursor:default}.multi-select-option.empty-hint:hover{background:transparent}.multi-select-error{width:100%;margin:0;color:var(--coral-text);font-size:11px}.advanced-filter-panel .multi-select-editor{flex:0 1 260px;min-width:170px;min-height:34px;padding:3px 8px}.advanced-filter-panel .multi-select-editor input{height:26px;font-size:12px}.advanced-filter-panel .multi-select-chip{font-size:11px}.multi-select-cell{display:flex;flex-wrap:wrap;align-items:flex-start;gap:3px;overflow:hidden;min-width:0}.multi-select-cell .multi-select-chip.compact{display:inline-block;max-width:128px;vertical-align:top;font-size:11px;line-height:1.7;padding:0 7px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.multi-select-cell .multi-select-chip.compact.neutral{padding-right:7px}@media(max-width:720px){.advanced-filter-panel{overflow-x:visible;flex-wrap:wrap;row-gap:8px}.advanced-filter-panel select{flex:0 1 auto;min-width:0}.advanced-filter-panel .multi-select-editor{flex:1 1 100%;min-width:0}}.gantt-mount .working-calendar-rest-column{fill:var(--gantt-rest-day);pointer-events:none}.gantt-mount .holiday-highlight{fill:transparent;pointer-events:none}.gantt-mount .timeline-calendar-day-button{display:inline-flex;align-items:center;justify-content:center;gap:2px;width:100%;height:100%;min-width:0;padding:0;border:0;background:transparent;color:inherit;font:inherit;cursor:pointer}.gantt-mount .timeline-calendar-day-button:hover{color:var(--accent)}.gantt-mount .timeline-calendar-day-button:focus-visible{position:relative;z-index:1;outline:2px solid var(--focus-ring);outline-offset:-2px;border-radius:4px}.gantt-mount .timeline-calendar-day-button.rest{background:var(--gantt-rest-day)}.gantt-mount .current-date-highlight .timeline-calendar-day-button.rest{background:transparent}.gantt-mount .timeline-calendar-day-marker{flex:0 0 auto;padding:1px 3px;border-radius:4px;color:var(--amber-text);background:var(--amber-soft);font-size:9px;font-weight:700;line-height:1.2}.gantt-mount .timeline-calendar-day-button.makeup .timeline-calendar-day-marker{color:var(--green-text);background:var(--green-soft)}.gantt-mount .current-date-highlight .timeline-calendar-day-button.rest:hover{color:var(--accent-contrast)}.gantt-mount .current-date-highlight .timeline-calendar-day-button.rest .timeline-calendar-day-marker{color:var(--gantt-today-rest-marker-fg);background:var(--gantt-today-rest-marker-bg)}.timeline-calendar-status{position:absolute;z-index:5;top:8px;right:10px;max-width:min(360px,calc(100% - 20px));padding:6px 9px;border:1px solid var(--line);border-radius:6px;background:var(--surface-veil);color:var(--muted);font-size:11px}.timeline-calendar-status.failed{display:flex;align-items:center;gap:8px;border-color:var(--coral-line);color:var(--coral-text);background:var(--surface)}.timeline-calendar-status button{padding:0;border:0;background:transparent;color:var(--accent);cursor:pointer;font:inherit;font-weight:650}.calendar-day-dialog{width:min(440px,calc(100vw - 28px))}.calendar-day-dialog>header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.calendar-day-dialog>header>div{display:grid;gap:4px}.calendar-day-dialog h2{margin:0;font-size:18px}.calendar-day-dialog>header p{margin:0;color:var(--muted);font-size:12px}.calendar-day-detail{display:grid;gap:8px;margin:16px 0;padding:12px;border-radius:7px;background:var(--surface-muted);font-size:12px}.calendar-day-dialog>.calendar-day-detail{margin-inline:22px}.calendar-day-detail>div{display:flex;justify-content:space-between;gap:12px}.calendar-day-detail span{color:var(--muted)}.calendar-day-warning{margin:0;color:var(--amber-text);font-size:11px;line-height:1.5}.calendar-day-dialog>.calendar-day-warning,.calendar-day-dialog>.calendar-day-error{margin:0 22px 12px}.calendar-day-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:8px;padding:0 22px 20px}.calendar-day-error{margin:0 0 12px}.working-calendar-settings{display:grid;gap:16px;padding-bottom:17px;scroll-margin-top:82px}.working-calendar-settings>:not(.settings-panel-header){margin-inline:17px}.working-calendar-intro{display:grid;gap:7px;color:var(--muted);font-size:12px;line-height:1.55}.working-calendar-intro p{margin:0}.working-calendar-import-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.working-calendar-import-card{display:grid;align-content:start;gap:9px;min-width:0;padding:14px;border:1px solid var(--line-soft);border-radius:8px;background:var(--surface)}.working-calendar-import-card h3,.working-calendar-schedules>h3{display:flex;align-items:center;gap:7px;margin:0;font-size:13px}.working-calendar-import-card h3 svg{width:16px;height:16px;color:var(--accent)}.working-calendar-import-card p{margin:0;color:var(--muted);font-size:11px;line-height:1.5}.working-calendar-year-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:4px}.working-calendar-year-row label{color:var(--muted);font-size:11px}.working-calendar-year-row input{width:100px;height:36px;padding:0 8px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--text)}.working-calendar-file-button{position:relative;justify-self:start;margin-top:4px}.working-calendar-file-button input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.working-calendar-file-button:focus-within{outline:2px solid var(--focus-ring);outline-offset:2px}.working-calendar-preview{display:grid;gap:12px;padding:14px;border:1px solid var(--accent-line);border-radius:8px;background:var(--accent-soft)}.working-calendar-preview-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.working-calendar-preview-heading>div:first-child{display:grid;gap:4px;min-width:0}.working-calendar-preview-heading strong{font-size:13px}.working-calendar-preview-heading small,.working-calendar-source-url{color:var(--muted);font-size:10px;overflow-wrap:anywhere}.working-calendar-preview-actions{display:flex;flex:0 0 auto;gap:8px}.working-calendar-preview-stats{display:flex;flex-wrap:wrap;gap:6px}.working-calendar-preview-stats span{padding:4px 7px;border:1px solid var(--line);border-radius:5px;background:var(--surface);color:var(--text-soft);font-size:10px}.working-calendar-papers{display:grid;gap:4px;font-size:11px}.working-calendar-papers a{overflow-wrap:anywhere;color:var(--accent)}.working-calendar-warning{margin:0;color:var(--amber-text);font-size:11px;line-height:1.5}.working-calendar-schedules{display:grid;gap:9px}.working-calendar-schedules>p{margin:0;color:var(--muted);font-size:11px}.working-calendar-schedule-list{display:grid;border:1px solid var(--line-soft);border-radius:7px;background:var(--surface)}.working-calendar-schedule-row{display:grid;grid-template-columns:70px minmax(130px,1fr) minmax(130px,1fr) minmax(130px,.9fr);align-items:center;gap:10px;min-height:42px;padding:8px 11px;font-size:11px}.working-calendar-schedule-row+.working-calendar-schedule-row{border-top:1px solid var(--line-soft)}.working-calendar-schedule-row small,.working-calendar-schedule-row span{color:var(--muted)}.working-calendar-note{padding:12px 14px;color:var(--muted);font-size:10px;line-height:1.55}@media(max-width:760px){.working-calendar-import-grid{grid-template-columns:1fr}.working-calendar-preview-heading{flex-direction:column}.working-calendar-schedule-row{grid-template-columns:60px 1fr;gap:4px 9px}.working-calendar-schedule-row span:nth-of-type(2),.working-calendar-schedule-row small{grid-column:2}.calendar-day-actions{display:grid;grid-template-columns:1fr 1fr}.calendar-day-actions>button:last-child{grid-column:1 / -1}}
