/* Shared task controls. Cream MY LIFE surfaces; GSD dialog colors stay contextual. */
:is(.task-manager,.task-card,.task-editor,.task-action-dialog){--task-accent:#9b536c;--task-paper:#fffdf7;--task-soft:#f7f1e7;--task-line:#e4dace;--task-ink:#332e2c;--task-muted:#746b63;color:var(--task-ink);font-family:Manrope,system-ui,sans-serif;min-width:0}
.task-manager{padding:12px 0 20px}
.task-manager-heading{display:flex;gap:18px;justify-content:space-between;align-items:center;margin:4px 0 18px}
.task-manager-heading p,.task-manager-heading small{font-size:12px;color:var(--task-muted);margin:3px 0;line-height:1.6}
.task-manager-heading h1{font:700 clamp(28px,4vw,42px)/1.2 Manrope,system-ui,sans-serif;margin:5px 0;color:var(--task-ink);letter-spacing:-1.3px}
.task-manager-heading>div:last-child{display:flex;flex-wrap:wrap;gap:8px}
:is(.task-manager,.task-card,.task-editor,.task-action-dialog) button{min-height:44px;touch-action:manipulation;font-family:Manrope,system-ui,sans-serif;font-size:12px;border:1px solid var(--task-line);border-radius:9px;background:var(--task-paper);color:var(--task-ink);padding:9px 12px;line-height:1.5;max-width:100%}
:is(.task-manager,.task-card,.task-editor,.task-action-dialog) button.primary{background:var(--task-accent);border-color:var(--task-accent);color:#fff;font-weight:700}
:is(.task-manager,.task-card,.task-editor,.task-action-dialog) :focus-visible,.task-row :focus-visible{outline:3px solid var(--task-accent,#9b536c);outline-offset:3px}
:is(.task-manager,.task-card,.task-editor,.task-action-dialog) input:not([type=checkbox]),:is(.task-manager,.task-card,.task-editor,.task-action-dialog) select,:is(.task-manager,.task-card,.task-editor,.task-action-dialog) textarea{font-family:Manrope,system-ui,sans-serif;font-size:14px;line-height:1.5;min-height:44px;border:1px solid #ccbeb1;border-radius:8px;background:var(--task-paper);color:var(--task-ink);padding:9px 10px;width:100%;max-width:100%;min-width:0;box-sizing:border-box}
:is(.task-manager,.task-card,.task-editor,.task-action-dialog) input[type=checkbox]{width:21px;height:21px;min-height:21px;flex:none;accent-color:var(--task-accent)}
:is(.task-manager,.task-card,.task-editor,.task-action-dialog) label{font-size:12px;line-height:1.6;color:var(--task-muted);display:grid;gap:6px;min-width:0;margin:0}
:is(.task-manager,.task-card,.task-editor,.task-action-dialog) .task-check{display:flex;gap:8px;align-items:center;min-height:44px;line-height:1.5;color:var(--task-ink);cursor:pointer}
:is(.task-manager,.task-card,.task-editor,.task-action-dialog) p{font-size:12px;line-height:1.7}
.task-card{padding:17px!important;background:var(--task-paper)!important;border:1px solid var(--task-line)!important;border-radius:16px;min-width:0}
.task-card-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:13px}
.task-card-heading h2{font:700 20px/1.3 Manrope,system-ui,sans-serif;margin:3px 0;color:var(--task-ink)}
.task-card-heading small{font-size:10px;letter-spacing:1px;color:var(--task-accent);font-weight:700}
.task-card-heading>div:last-child{display:flex;gap:6px;align-items:center}
.task-card-heading button{font-size:11px;padding:7px 9px;flex:none}
.task-card-note,.task-local-note{font-size:11px!important;color:var(--task-muted);line-height:1.7;margin:14px 0 0}
.task-quick-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;background:var(--task-soft);padding:11px;border:1px solid var(--task-line);border-radius:12px;margin:0 0 14px;min-width:0}
.task-quick-form>input{min-width:0}
.task-quick-form>button{background:var(--task-accent);border-color:var(--task-accent);color:#fff;font-weight:700;white-space:nowrap}
.task-quick-form>.task-form-error{grid-column:1/-1;margin:0}
.task-form-error{font-size:12px!important;color:#a12837!important;line-height:1.7;white-space:pre-wrap;overflow-wrap:anywhere;margin:10px 0}
.task-form-error:empty{display:none}
.task-visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.task-group{background:var(--task-paper);border:1px solid var(--task-line);border-radius:13px;margin:10px 0;min-width:0}
.task-group>summary{display:flex;align-items:center;gap:10px;justify-content:space-between;cursor:pointer;padding:12px 14px;min-height:46px;list-style:none;font-size:14px;font-weight:700;color:var(--task-ink)}
.task-group>summary:before{content:'›';font-size:23px;color:var(--task-accent);line-height:1;transform:rotate(0)}
.task-group[open]>summary:before{transform:rotate(90deg)}
.task-group>summary>span{flex:1}
.task-group>summary>b{font-size:11px;font-weight:700;padding:3px 8px;border-radius:20px;background:var(--task-soft);color:var(--task-muted)}
.task-group[data-task-group=overdue]>summary{color:#a13e43}
.task-group>div{padding:0 13px 7px}
.task-card .task-group>summary{font-size:13px;padding:9px 10px}
.task-card .task-group>div{padding:0 8px 6px}
.task-empty{padding:9px 1px;margin:0;color:var(--task-muted);font-size:12px;line-height:1.7}
.task-time-section>h4,.task-date-heading{font-size:10px;color:var(--task-muted);font-weight:600;margin:8px 0 5px;text-transform:none;letter-spacing:.2px}
.task-date-heading{font-size:12px;font-weight:700;color:var(--task-accent);margin-top:15px;padding-top:8px;border-top:1px solid var(--task-line)}
.task-row{--task-accent:#9b536c;--task-line:#e4dace;--task-ink:#332e2c;--task-muted:#746b63;display:grid;grid-template-columns:36px 44px minmax(0,1fr) 44px;gap:8px;align-items:start;border-top:1px solid var(--task-line);padding:10px 0;min-width:0;position:relative;font-family:Manrope,system-ui,sans-serif;color:var(--task-ink)}
.task-card .task-row,.task-row:not(:has(.task-select)){grid-template-columns:44px minmax(0,1fr) 44px}
.task-row:first-child{border-top:0}
.task-row-content{min-width:0}
.task-row .task-title{display:block;width:100%;text-align:left;font-size:13px;font-weight:700;line-height:1.65;min-height:44px;padding:4px 2px;border:0;background:none;border-radius:5px;color:var(--task-ink);white-space:normal;overflow-wrap:anywhere}
.task-row .task-toggle{width:44px;min-width:44px;min-height:44px;padding:4px;background:#fffdf8;border:1px solid #d3c4b6;border-radius:9px;font-size:23px;color:var(--task-accent)}
.task-row.is-complete .task-title{text-decoration:line-through;color:#6f7b6d}
.task-row.is-complete .task-toggle{background:#eef3e9;border-color:#a7b79d;color:#4f6947}
.task-row[data-priority=urgent]{border-left:3px solid #b94950;padding-left:7px}
.task-row[data-priority=high] .task-priority{color:#914629;background:#fae8dd}
.task-row[data-priority=urgent] .task-priority{color:#a92e42;background:#fae6e9}
.task-row .task-select{width:36px;min-height:44px;display:flex;align-items:center;justify-content:center}
.task-row .task-select input{width:22px;height:22px;accent-color:var(--task-accent)}
.task-meta{display:flex;align-items:center;gap:4px 7px;flex-wrap:wrap;margin-top:2px;font-size:10px;color:var(--task-muted);line-height:1.6}
.task-meta>span{display:inline-block;max-width:100%;overflow-wrap:anywhere}
.task-meta .task-state,.task-meta .task-priority{padding:2px 6px;border-radius:5px;background:#f3eee5;font-size:10px}
.task-meta .task-state[data-state=progress]{background:#e9f0f6;color:#325f78}
.task-meta .task-state[data-state=waiting]{background:#f6eedb;color:#826323}
.task-meta .task-state[data-state=done]{background:#e9f0e4;color:#4c6a3f}
.task-row-content>small{display:block;color:var(--task-muted);font-size:10px;line-height:1.6;margin-top:4px}
.task-row .task-child-progress{min-height:44px;padding:3px 0;border:0;background:transparent;color:var(--task-accent);font-size:11px;text-align:left}
.task-path{display:flex;align-items:center;gap:3px;flex-wrap:wrap;color:var(--task-muted);font-size:10px;line-height:1.5}
.task-path button{padding:3px 1px;min-height:30px;border:0;background:none;color:var(--task-muted);font-size:10px;overflow-wrap:anywhere;text-align:left}
.task-dependency-warning{font-size:10px!important;color:#8b641c;background:#faf3df;border-radius:6px;padding:6px 8px;margin:5px 0}
.task-row-menu{position:relative;margin:0;min-width:0}
.task-row-menu>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:center;min-height:44px;width:44px;border:1px solid #ddd0c3;border-radius:8px;background:#fffdf8;color:#6e6259;font-size:17px;letter-spacing:1px}
.task-row-menu>summary::-webkit-details-marker{display:none}
.task-row-menu>div{position:absolute;right:0;top:47px;width:205px;max-width:80vw;display:grid;padding:6px;background:#fffdf8;border:1px solid #d4c6b7;border-radius:10px;box-shadow:0 8px 22px #33220f2b;z-index:10}
.task-row-menu button{display:block;text-align:left;min-height:44px;font-size:12px;border:0;background:none;color:#332e2c;padding:8px 10px;border-radius:5px}
.task-row-menu button:hover{background:#f4eadd}
.task-search-panel{border:1px solid var(--task-line);border-radius:12px;background:var(--task-paper);padding:0 14px 14px;margin:12px 0}
.task-search-panel>summary{min-height:48px;cursor:pointer;font-size:13px;font-weight:700;line-height:1.7;align-content:center;padding:8px 0}
.task-search-panel>details{margin:12px 0;padding:9px 12px;border:1px solid var(--task-line);border-radius:8px}
.task-search-panel>details>summary{min-height:44px;align-content:center;cursor:pointer;font-size:12px}
.task-search-panel>button{margin:10px 6px 0 0}
.task-filter-grid,.task-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;min-width:0}
.task-filter-grid fieldset,.task-field-grid fieldset{min-width:0}
.task-choices{display:grid;gap:3px;max-height:280px;overflow-y:auto;scrollbar-width:thin}
.task-choices .task-check{padding:3px 2px;font-size:12px;line-height:1.6}
.task-choices .task-check span{overflow-wrap:anywhere}
.task-saved-views{display:flex;gap:9px;align-items:end;flex-wrap:wrap;margin:14px 0}
.task-saved-views>label{flex:1 1 220px;max-width:400px}
.task-saved-views>button{font-size:11px}
.task-bulk-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;background:#f5efe5;border:1px solid var(--task-line);border-radius:10px;padding:9px 11px;margin:12px 0}
.task-bulk-toolbar>strong{font-size:11px;font-weight:600;margin-right:auto}
.task-bulk-toolbar>button{font-size:11px;padding:7px 9px}
.task-focus-view,.task-trash-list{border:1px solid var(--task-line);border-radius:13px;background:var(--task-paper);padding:17px;margin:13px 0}
.task-focus-view h2,.task-trash-list h2{font:700 21px/1.4 Manrope,system-ui,sans-serif;margin:8px 0 15px;overflow-wrap:anywhere}
.task-focus-view h3{font-size:14px;margin:18px 0 9px}
.task-focus-path{display:flex;gap:5px;align-items:center;flex-wrap:wrap;font-size:11px;line-height:1.6}
.task-focus-path button{font-size:11px;min-height:44px;padding:5px 7px;max-width:100%;overflow-wrap:anywhere}
.task-editor,.task-action-dialog{padding:0;border:1px solid #b99b89;border-radius:17px;background:var(--task-paper);width:min(900px,calc(100vw - 24px));max-width:calc(100vw - 24px);max-height:min(92dvh,var(--task-dialog-height,92dvh));box-shadow:0 24px 80px #2f20173d;overflow:hidden;box-sizing:border-box}
.task-editor::backdrop,.task-action-dialog::backdrop{background:#241a1675;backdrop-filter:blur(3px)}
.task-editor[open],.task-action-dialog[open]{display:flex;flex-direction:column}
.task-editor>form,.task-action-dialog>form{display:flex;flex-direction:column;min-height:0;max-height:inherit;width:100%;margin:0}
.task-editor-heading,.task-action-dialog form>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 20px;border-bottom:1px solid var(--task-line);background:var(--task-soft);flex:none}
.task-editor-heading small{font-size:10px;color:var(--task-muted);line-height:1.5}
.task-editor-heading h2,.task-action-dialog h2{font:700 22px/1.3 Manrope,system-ui,sans-serif;margin:3px 0;color:var(--task-ink);letter-spacing:-.5px}
.task-editor-heading>button,.task-action-dialog header>button{width:44px;height:44px;padding:0;font-size:21px;flex:none}
.task-editor-tabs{display:flex;gap:5px;padding:10px 15px;border-bottom:1px solid var(--task-line);overflow-x:auto;flex:none;scrollbar-width:thin;background:var(--task-paper)}
.task-editor-tabs button{flex:1 0 auto;font-size:12px;padding:8px 12px;min-height:44px;background:var(--task-paper);border-color:var(--task-line);color:var(--task-muted)}
.task-editor-tabs [aria-selected=true]{color:#fff;background:var(--task-accent);border-color:var(--task-accent);font-weight:700}
.task-editor-body,.task-dialog-body{padding:19px 20px;overflow-y:auto;overscroll-behavior:contain;min-height:0;flex:1;scroll-padding:16px 0 24px}
.task-editor-body>label,.task-dialog-body>label{margin-bottom:14px}
.task-editor-body .task-field-grid{margin-bottom:14px}
.task-editor-body>details,.task-dialog-body>details{margin:12px 0;border:1px solid var(--task-line);border-radius:10px;padding:0 12px 12px;background:var(--task-paper)}
.task-editor-body>details>summary,.task-dialog-body>details>summary{min-height:48px;cursor:pointer;align-content:center;font-size:12px;font-weight:700;line-height:1.6;padding:8px 0}
.task-editor-body fieldset,.task-dialog-body fieldset{border:1px solid var(--task-line);border-radius:8px;padding:10px 11px;min-width:0;margin:9px 0}
.task-editor-body legend,.task-dialog-body legend{font-size:11px;color:var(--task-muted);padding:0 5px}
.task-editor-body textarea,.task-dialog-body textarea{min-height:94px;resize:vertical}
.task-editor-actions,.task-action-dialog footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px;padding:13px 18px max(13px,env(safe-area-inset-bottom));border-top:1px solid var(--task-line);background:var(--task-soft);flex:none;margin:0}
.task-editor-actions [role=status]{font-size:10px;line-height:1.5;color:var(--task-muted);flex:1 1 180px;min-width:0;margin-right:auto}
.task-editor-actions button,.task-action-dialog footer button{min-height:45px;font-size:12px}
.task-editor-body .task-waiting-fields{background:#fbf4df;padding:12px;border-radius:10px;margin-bottom:14px;border:1px solid #e9d9a6}
.task-waiting-fields>label{margin-bottom:9px}
.task-editor-conflict{font-size:12px;line-height:1.7;background:#fff0d4;color:#6f4c12;border:1px solid #cda554;padding:12px;border-radius:9px;margin-bottom:13px}
.task-editor-conflict>button{display:block;margin-top:10px}
.task-reminder-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
.task-reminder-row>button{align-self:end;font-size:11px}
.task-editor-children>article{padding:12px 0;border-bottom:1px solid var(--task-line);display:flex;gap:7px;align-items:center;flex-wrap:wrap}
.task-editor-children>article>button:first-child{flex:1 1 160px;text-align:left;font-weight:600}
.task-editor-children>article>small{font-size:11px;color:var(--task-muted);flex:1 1 150px}
.task-time-totals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:14px}
.task-time-totals>div{border:1px solid var(--task-line);background:var(--task-soft);padding:12px;border-radius:10px;min-width:0}
.task-time-totals small{display:block;color:var(--task-muted);font-size:11px;line-height:1.6}
.task-time-totals strong{display:block;font-size:17px;line-height:1.5;margin-top:7px;color:var(--task-accent);overflow-wrap:anywhere}
.task-timer-controls{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}
.task-timer-controls>button:first-child{background:var(--task-accent);color:#fff;border-color:var(--task-accent)}
.task-time-entries>article{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:12px 0;border-top:1px solid var(--task-line)}
.task-time-entries>article>div{flex:1 1 220px;min-width:0}
.task-time-entries strong{font-size:13px}
.task-time-entries small{display:block;color:var(--task-muted);font-size:10px;line-height:1.6}
.task-time-entries p{margin:3px 0;white-space:pre-wrap;overflow-wrap:anywhere}
.task-audit-list>article{border-left:2px solid #ddbdc8;padding:10px 12px;margin:10px 0;background:var(--task-soft);border-radius:0 9px 9px 0}
.task-audit-list time{display:block;font-size:10px;color:var(--task-muted);line-height:1.6}
.task-audit-list strong{display:block;font-size:12px;margin:5px 0}
.task-audit-list details{margin-top:8px}
.task-audit-list summary{min-height:44px;align-content:center;font-size:11px;cursor:pointer}
.task-audit-list pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:11px;line-height:1.7;padding:10px;background:var(--task-paper);border-radius:6px;max-width:100%;color:var(--task-ink)}
.task-delete-count{padding:10px;background:#fcf0e6;color:#7b5034;border-radius:8px;font-weight:700}
.task-view-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap;border-bottom:1px solid var(--task-line);padding:11px 0}
.task-view-row>strong{flex:1 1 170px;font-size:13px;overflow-wrap:anywhere}
.task-view-row button{font-size:11px;padding:7px 9px}
.task-bulk-field>summary label{font-weight:700;color:var(--task-ink)}
.task-bulk-field>.task-choices{margin-top:7px}
.theme-pack :is(.task-editor,.task-action-dialog){--task-paper:#131914;--task-soft:#1b241b;--task-line:#46513d;--task-ink:#f1efe2;--task-muted:#b7bea9;--task-accent:#8e804b;border-color:#8e804b}
.theme-pack :is(.task-editor,.task-action-dialog) input:not([type=checkbox]),.theme-pack :is(.task-editor,.task-action-dialog) select,.theme-pack :is(.task-editor,.task-action-dialog) textarea{border-color:#626d55;background:#10160f;color:#f1efe2}
.theme-pack .task-editor-body .task-waiting-fields{background:#292817;border-color:#6c6439}
.theme-pack .task-editor-conflict{background:#332913;color:#f6e2b7;border-color:#a08441}
.theme-pack :is(.task-editor,.task-action-dialog) .task-form-error{color:#ffb7bc!important}
.theme-pack .task-delete-count{background:#30221b;color:#f4cba7}
@media(max-width:700px){
 .task-manager-heading{align-items:flex-start;flex-direction:column;gap:10px}
 .task-manager-heading>div:last-child{width:100%;justify-content:space-between}
 .task-manager-heading h1{font-size:31px}
 .task-card{padding:13px!important}
 .task-card-heading{gap:7px;align-items:flex-start;flex-wrap:wrap}
 .task-card-heading h2{font-size:18px}
 .task-card-heading>div:last-child{margin-left:auto}
 .task-card-heading button{font-size:10px;padding:7px}
 .task-quick-form{padding:8px;gap:6px}
 .task-quick-form>button{font-size:11px;padding:8px}
 :is(.task-manager,.task-card,.task-editor,.task-action-dialog) input:not([type=checkbox]),:is(.task-manager,.task-card,.task-editor,.task-action-dialog) select,:is(.task-manager,.task-card,.task-editor,.task-action-dialog) textarea{font-size:16px}
 .task-row{grid-template-columns:28px 44px minmax(0,1fr) 44px;gap:4px}
 .task-row .task-select{width:28px}
 .task-row .task-title{font-size:12px;line-height:1.65}
 .task-row .task-toggle{width:44px;min-width:44px}
 .task-card .task-row,.task-row:not(:has(.task-select)){grid-template-columns:44px minmax(0,1fr) 44px;gap:5px}
 .task-meta{font-size:10px;gap:3px 5px}
 .task-meta .task-state,.task-meta .task-priority{font-size:9px;padding:2px 5px}
 .task-group>div{padding:0 8px 7px}
 .task-group>summary{padding:10px 11px;font-size:13px}
 .task-group .task-path button{font-size:9px}
 .task-filter-grid,.task-field-grid{grid-template-columns:minmax(0,1fr);gap:11px}
 .task-search-panel{padding:0 11px 12px}
 .task-saved-views{align-items:stretch;gap:6px}
 .task-saved-views>label{flex-basis:100%;max-width:none}
 .task-saved-views>button{flex:1;font-size:10px;padding:8px}
 .task-bulk-toolbar{padding:8px;gap:5px}
 .task-bulk-toolbar>strong{font-size:10px}
 .task-bulk-toolbar>button{font-size:10px;padding:7px}
 .task-focus-view,.task-trash-list{padding:12px}
 .task-editor,.task-action-dialog{width:calc(100vw - 12px);max-width:calc(100vw - 12px);max-height:min(96dvh,var(--task-dialog-height,96dvh));border-radius:13px}
 .task-editor-heading,.task-action-dialog form>header{padding:12px 13px;gap:8px}
 .task-editor-heading h2,.task-action-dialog h2{font-size:20px}
 .task-editor-heading small{font-size:9px}
 .task-editor-tabs{padding:8px;gap:4px}
 .task-editor-tabs button{font-size:10px;flex:1 0 auto;padding:8px;min-height:44px}
 .task-editor-body,.task-dialog-body{padding:14px 13px}
 .task-editor-actions,.task-action-dialog footer{padding:10px 11px max(10px,env(safe-area-inset-bottom));gap:6px}
 .task-editor-actions [role=status]{flex:1 1 100%;font-size:10px}
 .task-editor-actions button{font-size:11px;padding:8px 9px}
 .task-editor-actions>button[data-editor-close]{display:none}
 .task-reminder-row{grid-template-columns:minmax(0,1fr);gap:9px}
 .task-time-totals{grid-template-columns:minmax(0,1fr);gap:8px}
 .task-time-totals>div{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px}
 .task-time-totals strong{font-size:15px;margin-top:0;text-align:right}
 .task-timer-controls{gap:6px}
 .task-timer-controls button{font-size:11px;flex:1;padding:8px}
 .task-editor-children>article>button:first-child{flex-basis:100%}
 .task-time-entries>article>div{flex-basis:100%}
 .task-view-row>strong{flex-basis:100%}
}
@media(prefers-reduced-motion:reduce){
 :is(.task-manager,.task-card,.task-editor,.task-action-dialog) *{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}

.task-attachment-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:10px}
.task-attachment-row>button:first-child{flex:1 1 180px;overflow-wrap:anywhere;text-align:left}
.task-attachment-row>small{font-size:11px;color:var(--task-muted)}
.task-child-branch>summary{min-height:44px;align-content:center;cursor:pointer;font-size:13px;font-weight:700}
