: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:-moz-max-content;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:-moz-fit-content;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:-moz-max-content;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{-moz-user-select:none;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}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.line-through{text-decoration-line:line-through}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}:root{color:#0f172a;background:#f8fafc;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}.center-screen,.login-page{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at top left,#dbeafe,transparent 32%),#f8fafc}.login-card,.panel,.summary-card,.modal{background:#fff;border:1px solid #e2e8f0;box-shadow:0 12px 32px #0f172a14;border-radius:8px}.login-card{width:min(360px,calc(100vw - 32px));padding:40px;text-align:center}.brand-lockup,.sidebar-brand,.header-actions,.google-button,.primary-button,.ghost-button,.primary-wide,.logout-link{display:inline-flex;align-items:center;gap:8px}.brand-icon,.sidebar-brand svg{color:#2563eb}.brand-lockup h1{font-size:28px;font-weight:800}.google-button{justify-content:center;width:100%;margin:28px 0;padding:12px 16px;border:1px solid #cbd5e1;border-radius:6px;color:#0f172a;text-decoration:none}.google-mark{font-weight:800;color:#2563eb}.app-shell{display:grid;grid-template-columns:260px 1fr;min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;padding:18px 14px;border-right:1px solid #e2e8f0;background:#fff;overflow-y:auto}.sidebar-brand{font-weight:800;margin-bottom:18px}.primary-wide,.primary-button{justify-content:center;border:0;border-radius:6px;background:#2563eb;color:#fff;font-weight:700}.primary-wide{width:100%;padding:10px;margin-bottom:14px}.primary-button,.ghost-button{padding:9px 12px;text-decoration:none;white-space:nowrap}.ghost-button{border:1px solid #cbd5e1;border-radius:6px;color:#334155;background:#fff}.nav-list{display:grid;gap:4px}.nav-button{display:grid;grid-template-columns:20px 1fr;gap:8px;align-items:center;width:100%;padding:8px 10px;border:0;border-radius:6px;background:transparent;color:#334155;text-align:left}.nav-button svg{width:16px;height:16px}.nav-button.active{background:#dbeafe;color:#1d4ed8;font-weight:700}.sidebar-section{border-top:1px solid #e2e8f0;margin-top:14px;padding-top:14px}.sidebar-section h2{color:#64748b;font-size:12px;margin:0 0 8px}.logout-link{color:#64748b;margin-top:24px;text-decoration:none}.content{padding:24px;min-width:0}.page-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:22px}.page-header h1{font-size:28px;margin:0}.page-header p,.muted-text{color:#64748b;margin:4px 0 0}.view-stack{display:grid;gap:16px}.summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.summary-card{padding:18px;display:grid;gap:10px}.summary-card strong{font-size:30px}.panel{padding:16px;overflow:hidden}.danger-panel{border-color:#fecaca;background:#fff7f7}.danger-text{color:#dc2626}.tabs{display:inline-flex;gap:4px;background:#e2e8f0;padding:4px;border-radius:6px;width:-moz-fit-content;width:fit-content}.tab{border:0;border-radius:4px;padding:8px 16px;background:transparent}.tab.active{background:#fff;color:#1d4ed8;font-weight:700}.task-grid{display:grid;grid-template-columns:minmax(260px,2fr) 1fr 120px 1fr 80px 130px;gap:12px;align-items:center}.table-header{padding:10px 12px;color:#64748b;font-size:12px;border-bottom:1px solid #e2e8f0}.task-row,.simple-task-row,.portfolio-row,.result-row{width:100%;border:0;background:transparent;text-align:left;border-bottom:1px solid #e2e8f0}.task-row{padding:10px 12px}.task-row:hover,.simple-task-row:hover,.portfolio-row:hover,.result-row:hover{background:#f8fafc}.task-title{display:flex;align-items:center;gap:6px}.tree-toggle{display:inline-flex;width:18px}.done-icon{color:#16a34a}.simple-task-row{display:grid;grid-template-columns:1fr auto auto;gap:12px;align-items:center;padding:12px 4px}.tag-list{display:flex;gap:4px;flex-wrap:wrap}.tag-list b{padding:2px 8px;border-radius:999px;background:#e0f2fe;color:#0369a1;font-size:12px}.priority{display:inline-flex;justify-content:center;border-radius:999px;padding:2px 8px;font-size:12px;font-weight:700}.priority.high{color:#dc2626;background:#fee2e2}.priority.medium{color:#d97706;background:#fef3c7}.priority.low{color:#2563eb;background:#dbeafe}.progress{display:grid;grid-template-columns:1fr 42px;align-items:center;gap:8px}.progress:before{content:"";grid-column:1;grid-row:1;height:6px;border-radius:999px;background:#e2e8f0}.progress i{grid-column:1;grid-row:1;height:6px;border-radius:999px;background:#16a34a}.progress b{font-size:12px;color:#475569}.portfolio-row{display:grid;grid-template-columns:1.4fr 100px 140px 80px 70px 1.4fr;gap:12px;align-items:center;padding:14px 8px}.mini-gantt-container{position:relative;height:16px;min-width:120px;background:#f1f5f9;border-radius:4px;overflow:hidden}.mini-gantt-bar{position:absolute;top:3px;height:10px;border-radius:999px;background:#93c5fd}.mini-gantt-today{position:absolute;top:0;bottom:0;width:1px;background:#dc2626}.search-box{display:flex;gap:10px;align-items:center;padding:12px 14px;border:1px solid #cbd5e1;border-radius:8px;background:#fff}.search-box input{border:0;outline:0;width:100%}.result-row{padding:12px 4px}.gantt-toolbar{display:flex;justify-content:space-between;color:#64748b;margin-bottom:12px}.gantt-table{display:grid;border-top:1px solid #e2e8f0}.gantt-row{display:grid;grid-template-columns:240px 1fr;min-height:44px;border-bottom:1px solid #e2e8f0}.gantt-label{border:0;background:#fff;text-align:left;padding:10px}.gantt-lane{position:relative;background-image:linear-gradient(to right,#e2e8f0 1px,transparent 1px);background-size:44px 100%}.gantt-bar{position:absolute;top:10px;height:24px;border:0;border-radius:5px;background:#bfdbfe;color:#0f172a;overflow:hidden}.gantt-bar span{position:absolute;inset:0 auto 0 0;background:#2563eb}.gantt-bar b{position:relative;color:#fff;font-size:12px}.unscheduled{display:inline-block;padding:12px;color:#94a3b8}.markdown-panel{padding:12px 14px;border:1px solid #e2e8f0;background:#f8fafc;border-radius:6px}.modal-backdrop{position:fixed;inset:0;display:grid;place-items:center;padding:20px;background:#0f172a59;z-index:50}.modal{width:min(560px,100%);max-height:calc(100vh - 40px);overflow:auto}.modal header{display:flex;justify-content:space-between;align-items:center;padding:16px 18px;border-bottom:1px solid #e2e8f0}.modal header h2{margin:0}.modal header button{border:0;background:transparent;font-size:24px}.modal-body{display:grid;gap:14px;padding:18px}.modal-body label{display:grid;gap:6px;color:#334155;font-weight:700}.modal-body input,.modal-body select,.modal-body textarea{width:100%;border:1px solid #cbd5e1;border-radius:6px;padding:10px}.modal-body textarea{min-height:120px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.modal-actions{display:flex;justify-content:flex-end;gap:8px}.impact-row{display:grid;gap:4px;border:1px solid #e2e8f0;border-radius:6px;padding:10px}.error-banner{padding:10px 12px;border-radius:6px;border:1px solid #fecaca;background:#fef2f2;color:#b91c1c;margin-bottom:12px}.empty-state{display:grid;place-items:center;min-height:260px;color:#64748b}.today-nav{display:flex;align-items:center;gap:8px;margin-bottom:4px}.today-nav-date{font-weight:700;min-width:120px;text-align:center}.today-task-row{display:grid;grid-template-columns:auto 1fr auto auto;gap:10px;align-items:center;padding:10px 4px;border-bottom:1px solid #e2e8f0}.check-button{border:0;background:transparent;display:inline-flex;align-items:center;color:#64748b}.check-button:hover{color:#16a34a}.today-task-body{display:grid;gap:2px;text-align:left;border:0;background:transparent}.today-task-body small{color:#64748b;font-size:12px}.line-through{text-decoration:line-through}.nav-row{display:flex;align-items:center;gap:2px}.nav-row .nav-button{flex:1;min-width:0}.icon-button{border:0;background:transparent;display:inline-flex;align-items:center;color:#94a3b8;padding:4px;border-radius:4px;flex-shrink:0}.icon-button:hover{color:#475569;background:#f1f5f9}.danger-icon:hover{color:#dc2626!important}.danger-button{color:#dc2626!important;border-color:#fecaca!important}.sidebar-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.sidebar-section-header h2{margin:0;color:#64748b;font-size:12px}.color-picker{display:flex;gap:6px;flex-wrap:wrap;margin-top:4px}.color-swatch{width:22px;height:22px;border-radius:50%;border:2px solid transparent;cursor:pointer}.color-swatch.selected{border-color:#0f172a;outline:2px solid #ffffff;outline-offset:-3px}.drag-handle{display:inline-flex;align-items:center;color:#cbd5e1;cursor:grab;touch-action:none}.drag-handle:active{cursor:grabbing}.task-title-button{border:0;background:transparent;text-align:left;padding:0;color:inherit}.task-row-actions{display:flex;align-items:center;gap:4px}.task-inline-add{display:flex;align-items:center;gap:8px;padding:10px 12px;color:#94a3b8;border-top:1px solid #f1f5f9}.task-inline-add input{flex:1;border:0;outline:0;font:inherit;color:#0f172a}.frappe-gantt-wrapper{overflow-x:auto;min-height:200px}.frappe-gantt-wrapper svg{width:100%}.unscheduled-list{border-top:1px solid #e2e8f0;padding-top:12px;margin-top:12px}.unscheduled-list h3{font-size:12px;margin:0 0 8px}.gantt-panel{overflow:visible}.dep-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px;border:1px solid #e2e8f0;border-radius:6px}.filter-fieldset{border:1px solid #e2e8f0;border-radius:6px;padding:10px 12px}.filter-fieldset legend{padding:0 4px;font-size:12px;color:#64748b;font-weight:700}.checkbox-row{display:flex;gap:12px;flex-wrap:wrap}.checkbox-label{display:flex;align-items:center;gap:6px;font-weight:400;cursor:pointer}.date-filter-grid{display:grid;grid-template-columns:minmax(130px,1fr) repeat(2,minmax(120px,1fr));gap:8px}mark{border-radius:4px;background:#fef08a;color:#713f12;padding:0 2px}@media(max-width:900px){.task-row-actions{flex-direction:column}.mini-gantt-container{min-width:80px}.app-shell{grid-template-columns:1fr}.sidebar{position:static;height:auto}.page-header,.header-actions{align-items:stretch;flex-direction:column}.summary-grid{grid-template-columns:1fr 1fr}.task-grid,.portfolio-row,.gantt-row,.form-grid{grid-template-columns:1fr}}
