body{font-family:system-ui,Arial,sans-serif;background:#f6f7f9;margin:0;color:#222}header{background:#1f2937;color:white;padding:1rem 2rem}.header-title-row{display:flex;align-items:center;justify-content:space-between;gap:1rem}header h1{margin:.2rem 0}.app-version{font-weight:700;background:#374151;border:1px solid #6b7280;border-radius:999px;padding:.25rem .7rem}nav a{color:white;margin-right:1rem}main{max-width:1400px;margin:1rem auto;padding:0 1rem}.card,.folder,.task{background:white;border:1px solid #ddd;border-radius:8px;padding:1rem;margin:1rem 0}.folder{border-left:6px solid #64748b}.task{border-left:6px solid #16a34a}label{display:block;margin:.5rem 0}input,select,textarea,button{font:inherit;padding:.45rem;margin:.15rem}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}.primary{background:#2563eb;color:#fff;border:1px solid #1d4ed8;border-radius:5px}.danger{background:#fee2e2;border:1px solid #ef4444}.inline{display:inline}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.5rem}table{width:100%;border-collapse:collapse;margin:.5rem 0}td,th{border:1px solid #ddd;padding:.4rem;text-align:left}.late,.error{color:#b91c1c;font-weight:bold}.ok{color:#166534;font-weight:bold}.row{background:white;border:1px solid #ddd;padding:.7rem;margin:.5rem 0;border-radius:6px}.tasks-layout{display:grid;grid-template-columns:minmax(250px,32%) minmax(0,1fr);gap:1rem;align-items:start}.folder-pane,.events-pane{min-width:0}.folder-pane{background:white;border:1px solid #d1d5db;border-radius:8px;padding:.75rem;position:sticky;top:1rem}.full-width{box-sizing:border-box;width:100%;margin:.2rem 0}.folder-tree{margin:.75rem 0;max-height:70vh;overflow:auto;border-top:1px solid #e5e7eb;border-bottom:1px solid #e5e7eb;padding:.4rem 0}.folder-node-link{display:flex;align-items:center;gap:.35rem;color:#1f2937;text-decoration:none;padding:.42rem .5rem;border-radius:5px;margin:.08rem 0}.folder-node-link:hover{background:#eff6ff}.folder-node-link.active{background:#dbeafe;color:#1d4ed8;font-weight:700}.folder-node .folder-node{margin-left:1.15rem;border-left:1px dotted #9ca3af;padding-left:.35rem}.folder-icon{width:1.3rem}.events-header{display:flex;justify-content:space-between;align-items:center;gap:1rem;background:white;border:1px solid #ddd;border-radius:8px;padding:1rem}.events-header h2,.events-header p{margin:.1rem 0}.empty-state{text-align:center;color:#6b7280}.folder-dialog{border:0;border-radius:10px;padding:0;box-shadow:0 20px 60px rgba(0,0,0,.35);width:min(560px,calc(100% - 2rem))}.folder-dialog::backdrop{background:rgba(15,23,42,.55)}.folder-dialog form{padding:1.25rem}.folder-dialog input:not([type=radio]),.folder-dialog select{box-sizing:border-box;width:100%;margin:.25rem 0}.dialog-actions{display:flex;justify-content:flex-end;gap:.5rem;margin-top:1rem}.rename-folder-button{background:#facc15;color:#422006;border:1px solid #ca8a04;border-radius:5px;font-weight:700}.trash-folder-button{background:#dc2626;color:#fff;border:1px solid #991b1b;border-radius:5px;font-weight:700}.task-toolbar{display:flex;justify-content:flex-end;align-items:center;gap:.4rem}.add-task-button{background:#16a34a;color:#fff;border:1px solid #15803d;border-radius:5px;font-weight:700}.cancel-button{background:#facc15;color:#422006;border:1px solid #ca8a04;border-radius:5px;font-weight:700}.add-task-panel[hidden]{display:none}.add-task-submit{display:flex;align-items:flex-end;justify-content:flex-end}.task-collapsible{padding:0}.task-summary{display:flex;align-items:center;gap:.55rem;padding:1rem;cursor:pointer;font-size:1.08rem;font-weight:700;list-style:none}.task-summary::-webkit-details-marker{display:none}.task-summary:hover{background:#f8fafc}.task-triangle{display:inline-flex;width:1rem;color:#334155}.task-details{padding:0 1rem 1rem}.task-action-form{display:flex;flex-wrap:wrap;align-items:center;gap:.2rem}.status-cell{font-weight:700}.status-done{background:#86efac;color:#14532d}.status-not_done{background:#fca5a5;color:#7f1d1d}.status-skipped{background:#d1d5db;color:#374151}.status-in_progress{background:#fde047;color:#713f12}.schedule-row.overdue-not-done td{border-top:3px solid #f97316;border-bottom:3px solid #f97316}.schedule-row.overdue-not-done td:first-child{border-left:3px solid #f97316}.schedule-row.overdue-not-done td:last-child{border-right:3px solid #f97316}.trash-choice{display:flex;align-items:flex-start;gap:.65rem;border:1px solid #d1d5db;border-radius:8px;padding:.8rem;margin:.7rem 0}.trash-choice input{margin-top:.25rem}.trash-choice small{color:#4b5563}
@media(max-width:800px){.tasks-layout{grid-template-columns:1fr}.folder-pane{position:static}.folder-tree{max-height:40vh}.events-header{align-items:flex-start;flex-direction:column}.task-toolbar{width:100%;justify-content:flex-end}table{display:block;overflow-x:auto}}

.move-folder-button{background:#2563eb;color:#fff;border:1px solid #1d4ed8;border-radius:5px;font-weight:700}.task-add-form{display:grid;gap:.8rem}.task-name-field input,.rich-text-editor,.rich-text-area{box-sizing:border-box;width:100%}.task-schedule-row{display:grid;grid-template-columns:minmax(180px,1fr) minmax(220px,1.4fr) minmax(90px,.5fr);gap:.75rem;align-items:end}.task-schedule-row input,.task-schedule-row select{box-sizing:border-box;width:100%}.rich-text-label{margin-bottom:-.55rem}.rich-text-editor{border:1px solid #cbd5e1;border-radius:6px;background:#fff}.rich-text-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.25rem;padding:.4rem;border-bottom:1px solid #cbd5e1;background:#f8fafc}.rich-text-toolbar button{padding:.3rem .55rem}.rich-color-control{display:flex;align-items:center;gap:.35rem;margin:0}.rich-color-control input{width:2.5rem;height:2rem;padding:0}.rich-text-area{min-height:150px;padding:.75rem;outline:none;overflow:auto}.rich-text-area:focus{box-shadow:inset 0 0 0 2px #93c5fd}.task-notes-display{margin:.5rem 0 1rem}.move-folder-dialog{width:min(680px,calc(100% - 2rem))}.move-tree{max-height:55vh;overflow:auto;border:1px solid #d1d5db;border-radius:8px;padding:.6rem;background:#fff}.move-node{display:flex;align-items:center;gap:.45rem;padding:.4rem;border-radius:5px;margin:0}.move-node:hover{background:#eff6ff}.move-node.invalid-target{opacity:.45}.move-tree-branch summary{cursor:pointer;list-style:disclosure-closed}.move-tree-branch[open]>summary{list-style:disclosure-open}.move-tree-branch summary .move-node{display:inline-flex}.move-tree-children{margin-left:1.4rem;border-left:1px dotted #94a3b8;padding-left:.45rem}.move-cancel-button{background:#dc2626;color:#fff;border:1px solid #991b1b;border-radius:5px;font-weight:700}.move-confirm-button{background:#16a34a;color:#fff;border:1px solid #15803d;border-radius:5px;font-weight:700}.move-confirm-button:disabled{background:#86efac}.task-toolbar{display:flex;justify-content:flex-end;align-items:center;gap:.4rem}
@media(max-width:800px){.task-schedule-row{grid-template-columns:1fr}.rich-text-toolbar{align-items:flex-start}}

/* V009 task editing and accomplishment workflow */
.task-summary{justify-content:space-between}.task-summary-main{display:flex;align-items:center;gap:.55rem;min-width:0}.task-edit-button{margin-left:auto;background:#2563eb;color:#fff;border:1px solid #1d4ed8;border-radius:5px;font-weight:700}.task-edit-panel{border:1px solid #93c5fd;border-radius:8px;background:#eff6ff;padding:1rem;margin:.5rem 0 1rem}.task-edit-panel[hidden]{display:none}.task-edit-form{display:grid;gap:.8rem}.task-edit-actions{display:flex;justify-content:flex-end;gap:.5rem}.task-edit-save-button,.orphan-save-button{background:#16a34a;color:#fff;border:1px solid #15803d;border-radius:5px;font-weight:700}.task-edit-save-button.save-dirty{animation:saveGlow 1.2s ease-in-out infinite}@keyframes saveGlow{0%,100%{box-shadow:0 0 0 0 rgba(34,197,94,.25)}50%{box-shadow:0 0 0 5px rgba(34,197,94,.55)}}.task-inline-message,.row-save-message{margin:.25rem 0;font-size:.9rem}.task-schedule-table th:nth-child(1){width:18%}.task-schedule-table th:nth-child(2){width:16%}.task-schedule-table th:nth-child(3){width:46%}.task-schedule-table th:nth-child(4){width:20%}.row-save-button{background:#2563eb;color:#fff;border:1px solid #1d4ed8;border-radius:5px;font-weight:700}.row-save-button.initially-hidden{display:none}.orphaned-accomplishments{margin:1rem 0;padding:1rem;border:2px solid #f59e0b;border-radius:8px;background:#fffbeb}.orphaned-accomplishments[hidden]{display:none}.orphaned-accomplishments h3{margin-top:0}.orphaned-list{display:grid;gap:.55rem}.orphan-row{display:grid;grid-template-columns:minmax(130px,.6fr) minmax(190px,1fr) auto minmax(0,.6fr);align-items:center;gap:.5rem;background:#fff;border:1px solid #fcd34d;border-radius:6px;padding:.55rem}.orphan-date{font-weight:700}.task-action-form input[name="notes"]{min-width:150px}@media(max-width:800px){.orphan-row{grid-template-columns:1fr}.task-schedule-table th:nth-child(n){width:auto}}

/* V010 Tasks layout and task-display refinements */
.tasks-layout{transition:grid-template-columns .2s ease}.tasks-layout.folders-collapsed{grid-template-columns:48px minmax(0,1fr)}
.folder-pane-top{display:flex;align-items:center;gap:.35rem}.folder-pane-top .full-width{flex:1}
.folder-collapse-button{background:#e2e8f0;color:#1e293b;border:1px solid #94a3b8;border-radius:5px;font-weight:800;min-width:36px}
.folder-collapse-bottom{display:block;margin:.45rem 0 .1rem auto}
.folder-collapsed-label{display:none;writing-mode:vertical-rl;transform:rotate(180deg);font-weight:800;letter-spacing:.08em;color:#475569;margin:auto;padding:1rem 0}
.folder-pane.collapsed{padding:.35rem;overflow:hidden}.folder-pane.collapsed>*:not(.folder-pane-top):not(.folder-collapsed-label):not(.folder-collapse-bottom){display:none}
.folder-pane.collapsed .folder-pane-top .primary{display:none}.folder-pane.collapsed .folder-pane-top{justify-content:center}.folder-pane.collapsed .folder-collapsed-label{display:block}
.folder-pane.collapsed .folder-collapse-bottom{margin:.25rem auto}
.task-edit-button[hidden]{display:none}.task-compact-fields{display:flex;flex-wrap:wrap;gap:.35rem 1.25rem;padding:.35rem .1rem;font-size:.9rem}
.compact-label{color:#4b5563;font-weight:700}.task-notes-display{display:flex;gap:.4rem;align-items:flex-start;margin:.2rem 0 .7rem;font-size:.9rem}.task-notes-content{min-width:0}.task-notes-content p:first-child{margin-top:0}.task-notes-content p:last-child{margin-bottom:0}
.schedule-notes-row td{padding:.35rem .5rem .6rem}.schedule-notes-row label{display:flex;align-items:center;gap:.5rem;margin:0;color:#4b5563;font-weight:700}.schedule-notes-row input{box-sizing:border-box;flex:1;width:100%;margin:0;background:#fff}
.today-marker-row td{background:#fde047;color:#713f12;text-align:center;font-weight:800;border:2px solid #eab308}
.schedule-main-row.overdue-not-done td{border-bottom:1px solid #ddd}.schedule-notes-row.overdue-not-done td{border-bottom:3px solid #f97316;border-left:3px solid #f97316;border-right:3px solid #f97316}.schedule-main-row.overdue-not-done td:first-child{border-left:3px solid #f97316}.schedule-main-row.overdue-not-done td:last-child{border-right:3px solid #f97316}
@media(max-width:800px){.tasks-layout.folders-collapsed{grid-template-columns:42px minmax(0,1fr)}.task-compact-fields{display:grid;grid-template-columns:1fr}.task-notes-display{display:block}.schedule-notes-row label{display:block}}

/* V011 logo, navigation, trash, and dashboard calendar */
.site-header{padding:.65rem 1rem}.site-header-row{display:flex;align-items:center;justify-content:space-between;gap:1rem}.brand-navigation{display:flex;align-items:center;gap:.8rem;min-width:0;flex:1}.brand-navigation h1{white-space:nowrap;font-size:1.35rem}.navbar-logo{display:flex;align-items:center;justify-content:center;flex:0 0 auto;background:#fff;border-radius:8px;padding:.25rem;min-width:52px;min-height:52px}.navbar-logo img{display:block;max-width:150px;max-height:62px;width:auto;height:auto;object-fit:contain}.main-navigation{display:flex;align-items:center;flex-wrap:wrap;gap:.45rem;margin-left:.25rem}.nav-button{display:inline-flex;align-items:center;justify-content:center;color:#fff;text-decoration:none;background:#374151;border:1px solid #6b7280;border-radius:6px;padding:.5rem .75rem;font-weight:700;margin:0}.nav-button:hover,.nav-button:focus{background:#4b5563}.logout-button{background:#7f1d1d;border-color:#b91c1c}.logout-button:hover,.logout-button:focus{background:#991b1b}.header-meta{display:flex;flex-direction:column;align-items:flex-end;gap:.25rem;flex:0 0 auto}.current-username{font-size:.9rem;color:#e5e7eb;font-weight:700;max-width:240px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.login-card{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(300px,1fr);align-items:center;gap:2rem;max-width:900px;margin:3rem auto}.login-logo-panel{display:flex;align-items:center;justify-content:center;min-height:280px}.login-logo-panel img{display:block;max-width:100%;max-height:360px;width:auto;height:auto;object-fit:contain}.login-form-panel{width:100%;max-width:430px;justify-self:center}.login-form-panel input{box-sizing:border-box;width:100%}
.logo-settings{display:grid;gap:.75rem}.current-logo{display:flex;flex-direction:column;align-items:flex-start;gap:.45rem;border:1px solid #d1d5db;border-radius:8px;padding:.75rem;background:#f8fafc}.current-logo span{font-weight:700;color:#4b5563}.current-logo img{display:block;max-width:min(100%,520px);max-height:280px;width:auto;height:auto;object-fit:contain;background:#fff;border:1px solid #e5e7eb}.logo-upload-form{display:grid;gap:.55rem;max-width:720px}.logo-upload-form input[type=file]{box-sizing:border-box;width:100%;background:#fff;border:1px solid #cbd5e1;border-radius:6px}.logo-upload-form small{color:#4b5563}.logo-upload-form button{justify-self:start}
.trash-empty-state{display:flex;align-items:center;justify-content:center;min-height:55vh;text-align:center;color:#6b7280;font-size:1.5rem;font-weight:700;background:#fff;border:1px dashed #cbd5e1;border-radius:10px}
main.dashboard-main{max-width:none;margin:0;padding:1rem}.dashboard-shell{width:100%;min-height:calc(100vh - 115px);overflow-x:auto}.calendar-toolbar{display:grid;grid-template-columns:auto auto minmax(220px,1fr) auto auto;align-items:center;gap:.55rem;background:#fff;border:1px solid #d1d5db;border-radius:10px 10px 0 0;padding:.75rem}.calendar-toolbar h2{margin:0;text-align:center}.calendar-nav-button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;background:#2563eb;color:#fff;border:1px solid #1d4ed8;border-radius:6px;padding:.5rem .7rem;font-weight:700;white-space:nowrap}.calendar-nav-button:hover,.calendar-nav-button:focus{background:#1d4ed8}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(125px,1fr));min-width:875px}.calendar-weekdays{background:#1f2937;color:#fff;font-weight:700;text-align:center}.calendar-weekdays>div{padding:.55rem;border-right:1px solid #4b5563}.month-calendar{background:#fff;border-left:1px solid #cbd5e1;border-bottom:1px solid #cbd5e1;min-height:calc(100vh - 230px)}.calendar-day{min-height:130px;border-top:1px solid #cbd5e1;border-right:1px solid #cbd5e1;padding:.4rem;background:#fff;overflow:hidden}.calendar-day.other-month{background:#f1f5f9;color:#64748b}.calendar-day.calendar-today{background:#fde047;color:#422006}.calendar-date-number{font-weight:800;text-align:right;margin-bottom:.3rem}.calendar-events{display:grid;gap:.25rem}.calendar-event{display:flex;flex-direction:column;text-decoration:none;border-radius:5px;padding:.3rem .4rem;font-size:.82rem;line-height:1.15;border:1px solid transparent;overflow:hidden}.calendar-event span{font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calendar-event small{font-size:.72rem}.calendar-event-not-done{background:#fee2e2;color:#7f1d1d;border-color:#fca5a5}.calendar-event-in-progress{background:#fef3c7;color:#713f12;border-color:#facc15}.calendar-event-done{background:#dcfce7;color:#14532d;border-color:#86efac}.calendar-event-skipped{background:#e5e7eb;color:#374151;border-color:#9ca3af}
.dashboard-status-list{max-width:1400px;margin:1rem auto;padding:0 1rem}.dashboard-status-list>h2{margin-bottom:.2rem}.dashboard-range-note{margin-top:0;color:#4b5563}.dashboard-status-group{background:#fff;border:1px solid #d1d5db;border-radius:8px;margin:1rem 0;padding:.75rem}.dashboard-status-group h3{margin:.1rem 0 .65rem}.status-count{display:inline-flex;align-items:center;justify-content:center;min-width:1.7rem;height:1.7rem;border-radius:999px;background:#e2e8f0;font-size:.85rem}.dashboard-text-list{display:grid;gap:.35rem}.dashboard-list-row{display:grid;grid-template-columns:110px minmax(180px,1fr) minmax(130px,.65fr) auto auto;align-items:center;gap:.65rem;padding:.5rem;border:1px solid #e5e7eb;border-radius:6px}.dashboard-list-row time{font-variant-numeric:tabular-nums;font-weight:700}.dashboard-list-row>a{font-weight:700;color:#1d4ed8}.dashboard-folder-name{color:#4b5563}.dashboard-status-badge{border-radius:999px;padding:.22rem .55rem;font-size:.82rem;font-weight:800;white-space:nowrap}.dashboard-badge-overdue{background:#fed7aa;color:#9a3412}.dashboard-badge-in_progress{background:#fef08a;color:#713f12}.dashboard-badge-future{background:#dbeafe;color:#1e40af}.dashboard-badge-done{background:#bbf7d0;color:#14532d}.dashboard-completed-date{font-size:.85rem;color:#166534;white-space:nowrap}
@media(max-width:900px){.site-header-row{align-items:flex-start}.brand-navigation{align-items:flex-start;flex-wrap:wrap}.main-navigation{width:100%;margin-left:0}.navbar-logo img{max-width:110px;max-height:52px}.login-card{grid-template-columns:1fr;gap:.75rem}.login-logo-panel{min-height:160px}.login-logo-panel img{max-height:220px}.calendar-toolbar{grid-template-columns:1fr 1fr}.calendar-toolbar h2{grid-column:1/-1;grid-row:1}.dashboard-list-row{grid-template-columns:100px minmax(160px,1fr);align-items:start}.dashboard-folder-name,.dashboard-status-badge,.dashboard-completed-date{grid-column:2}}
@media(max-width:600px){.site-header-row{display:grid;grid-template-columns:1fr auto}.brand-navigation h1{font-size:1.1rem}.nav-button{padding:.4rem .55rem;font-size:.9rem}.calendar-toolbar{grid-template-columns:1fr 1fr}.calendar-nav-button{font-size:.85rem}.dashboard-status-list{padding:0}.dashboard-list-row{grid-template-columns:1fr}.dashboard-folder-name,.dashboard-status-badge,.dashboard-completed-date{grid-column:auto}.header-meta{align-self:start}}

/* V012 scheduled-event blocks and configurable status colors */
.schedule-event-main td{border-top:2px solid #94a3b8;border-bottom:0}
.schedule-event-main td:first-child{border-left:2px solid #94a3b8}
.schedule-event-main td:last-child{border-right:2px solid #94a3b8}
.schedule-event-notes td{border-top:0;border-right:2px solid #94a3b8;border-bottom:2px solid #94a3b8;border-left:2px solid #94a3b8;padding:.35rem .5rem .6rem}
.schedule-event-main.schedule-event-overdue td{border-top-color:#f97316}
.schedule-event-main.schedule-event-overdue td:first-child{border-left-color:#f97316}
.schedule-event-main.schedule-event-overdue td:last-child{border-right-color:#f97316}
.schedule-event-notes.schedule-event-overdue td{border-right-color:#f97316;border-bottom-color:#f97316;border-left-color:#f97316}
.status-done,.calendar-event-done,.dashboard-status-badge.status-done{background:var(--status-color-done,#86efac);color:var(--status-text-done,#111827)}
.status-not-done,.calendar-event-not-done,.dashboard-status-badge.status-not-done{background:var(--status-color-not-done,#fca5a5);color:var(--status-text-not-done,#111827)}
.status-skipped,.calendar-event-skipped,.dashboard-status-badge.status-skipped{background:var(--status-color-skipped,#bfdbfe);color:var(--status-text-skipped,#111827)}
.status-in-progress,.calendar-event-in-progress,.dashboard-status-badge.status-in-progress{background:var(--status-color-in-progress,#fde047);color:var(--status-text-in-progress,#111827)}
.status-upcoming,.calendar-event-upcoming,.dashboard-status-badge.status-upcoming{background:var(--status-color-upcoming,#fef08a);color:var(--status-text-upcoming,#111827)}
.status-overdue,.calendar-event-overdue,.dashboard-status-badge.status-overdue{background:var(--status-color-overdue,#fdba74);color:var(--status-text-overdue,#111827)}
.status-far-future,.calendar-event-far-future,.dashboard-status-badge.status-far-future{background:var(--status-color-far-future,#d1d5db);color:var(--status-text-far-future,#111827)}
.calendar-event-done,.calendar-event-not-done,.calendar-event-skipped,.calendar-event-in-progress,.calendar-event-upcoming,.calendar-event-overdue,.calendar-event-far-future{border-color:rgba(15,23,42,.28)}
.trash-task-button{background:#991b1b;color:#fff;border:1px solid #7f1d1d;border-radius:5px;font-weight:700}
.trash-task-button:hover,.trash-task-button:focus{background:#7f1d1d}
.status-color-settings{display:grid;gap:.7rem}.status-color-settings h3,.status-color-settings p{margin-top:0}.status-color-form{display:grid;gap:1rem}.status-color-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:.7rem}.status-color-control{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:.65rem;margin:0;border:1px solid #d1d5db;border-radius:7px;padding:.65rem;background:#f8fafc}.status-color-control span{font-weight:700}.status-color-control input[type=color]{width:52px;height:38px;padding:2px;border:1px solid #94a3b8;border-radius:5px;background:#fff}.status-color-control code{font-size:.85rem;color:#475569}
.nav-button.active-page{background:#2563eb;border-color:#93c5fd;animation:activeNavGlow 1.35s ease-in-out infinite}
@keyframes activeNavGlow{0%,100%{box-shadow:0 0 0 1px rgba(147,197,253,.45),0 0 7px rgba(59,130,246,.55)}50%{box-shadow:0 0 0 4px rgba(147,197,253,.65),0 0 18px rgba(59,130,246,.95)}}
@media (prefers-reduced-motion:reduce){.nav-button.active-page{animation:none;box-shadow:0 0 0 3px rgba(147,197,253,.7)}}
@media(max-width:700px){.status-color-control{grid-template-columns:1fr auto}.status-color-control code{grid-column:1/-1}}

/* V013 save feedback, dashboard deep links, year calendar, logo removal, and hierarchical Trash */
.navbar-brand{display:inline-flex;align-items:center;justify-content:center;min-width:120px;max-width:220px;min-height:48px;text-decoration:none;color:#fff;flex:0 0 auto}
.navbar-brand img{display:block;max-width:180px;max-height:64px;width:auto;height:auto;object-fit:contain}
.navbar-brand-text,.login-brand-text{font-size:1.35rem;font-weight:900;letter-spacing:.02em;color:#fff;white-space:nowrap}
.login-brand-text{font-size:2rem;color:#1f2937;text-align:center}
.remove-logo-form{margin-top:.25rem}.remove-logo-button{background:#b91c1c;color:#fff;border:1px solid #7f1d1d;border-radius:6px;font-weight:800}.remove-logo-button:hover,.remove-logo-button:focus{background:#991b1b}
.task-summary-actions{display:flex;align-items:center;justify-content:flex-end;gap:.3rem;margin-left:auto;flex-wrap:wrap}
.task-bulk-button{background:#92400e;color:#fff;border:1px solid #78350f;border-radius:5px;font-weight:750;font-size:.85rem}
.task-bulk-button:hover,.task-bulk-button:focus{background:#78350f}
.row-save-button{background:#16a34a;color:#fff;border:1px solid #15803d;border-radius:5px;font-weight:800}
.row-save-button:hover,.row-save-button:focus{background:#15803d}
.row-save-button.save-dirty{animation:saveGlow 1.05s ease-in-out infinite}
.saved-ribbon{position:fixed;left:0;right:0;bottom:0;z-index:5000;display:flex;align-items:center;justify-content:center;height:24px;background:#15803d;color:#fff;font-size:.82rem;font-weight:900;letter-spacing:.04em;transform:translateY(105%);opacity:0;transition:transform .18s ease,opacity .18s ease;box-shadow:0 -2px 8px rgba(21,128,61,.35);pointer-events:none}
.saved-ribbon.visible{transform:translateY(0);opacity:1}
.schedule-event-focus td{border-color:#2563eb!important;position:relative;z-index:1}
.schedule-event-main.schedule-event-focus td{box-shadow:0 -3px 10px rgba(37,99,235,.8)}
.schedule-event-notes.schedule-event-focus td{box-shadow:0 5px 14px rgba(37,99,235,.9)}
.schedule-event-main.schedule-event-focus td:first-child{border-top-left-radius:10px}
.schedule-event-main.schedule-event-focus td:last-child{border-top-right-radius:10px}
.schedule-event-notes.schedule-event-focus td{border-bottom-left-radius:10px;border-bottom-right-radius:10px}
.dashboard-focused-task{box-shadow:0 0 0 3px rgba(37,99,235,.25)}
.calendar-title-controls{display:flex;align-items:center;justify-content:center;gap:1rem;min-width:0;flex-wrap:wrap}.calendar-title-controls h2{margin:0}
.calendar-jump-form{display:flex;align-items:flex-end;justify-content:center;gap:.45rem;flex-wrap:wrap}.calendar-jump-form label{display:grid;gap:.15rem;margin:0;font-size:.78rem;font-weight:700;color:#475569}.calendar-jump-form input,.calendar-jump-form select{margin:0;padding:.35rem}
.calendar-selected-date{outline:4px solid #2563eb;outline-offset:-4px;position:relative;z-index:2}
.year-calendar{display:grid;grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:1rem;padding:1rem;background:#e2e8f0}.year-month{background:#fff;border:1px solid #94a3b8;border-radius:9px;overflow:hidden;box-shadow:0 2px 7px rgba(15,23,42,.12)}.year-month h3{text-align:center;margin:0;padding:.5rem;background:#334155;color:#fff}.compact-weekdays,.compact-calendar{min-width:0}.compact-weekdays>div{padding:.3rem;font-size:.74rem}.compact-calendar{min-height:0}.compact-calendar .calendar-day{min-height:76px;padding:.2rem;font-size:.78rem}.compact-calendar .calendar-event{padding:.18rem .25rem;font-size:.7rem}.compact-calendar .calendar-event small{display:none}.compact-calendar .calendar-date-number{margin-bottom:.12rem}
.trash-tree{display:grid;gap:.55rem}.trash-item{margin-left:calc(var(--trash-depth,0) * 2rem);background:#fff;border:1px solid #cbd5e1;border-radius:8px;padding:.75rem;box-shadow:0 1px 3px rgba(15,23,42,.06)}.trash-folder-item{border-left:6px solid #64748b}.trash-task-item{border-left:6px solid #16a34a}.trash-item-heading{display:flex;align-items:center;gap:.45rem;font-size:1.02rem}.trash-item-icon{font-size:1.15rem}.trash-item-details{display:flex;align-items:center;gap:.8rem 1.2rem;flex-wrap:wrap;margin:.45rem 0;color:#475569;font-size:.9rem}.trash-item-details b{color:#374151}.trash-restore-form{display:flex;align-items:center;justify-content:flex-end;gap:.75rem;flex-wrap:wrap}.include-children{display:flex;align-items:center;gap:.35rem;margin:0 auto 0 0;font-weight:700}.restore-button{background:#16a34a;color:#fff;border:1px solid #15803d;border-radius:6px;font-weight:800}.restore-button:hover,.restore-button:focus{background:#15803d}
@media(max-width:1000px){.calendar-toolbar{grid-template-columns:1fr 1fr}.calendar-title-controls{grid-column:1/-1;grid-row:1}.year-calendar{grid-template-columns:1fr}.task-summary{align-items:flex-start}.task-summary-actions{max-width:50%}}
@media(max-width:700px){.task-summary{flex-direction:column}.task-summary-actions{max-width:none;width:100%;justify-content:flex-start}.trash-item{margin-left:calc(var(--trash-depth,0) * .8rem)}.calendar-jump-form{width:100%}.navbar-brand{min-width:auto}.navbar-brand img{max-width:115px;max-height:52px}}
@media (prefers-reduced-motion:reduce){.row-save-button.save-dirty{animation:none;box-shadow:0 0 0 4px rgba(34,197,94,.55)}.saved-ribbon{transition:none}}

/* V014 scheduled rows, people, permissions, user management, and stronger dashboard focus */
.schedule-event-notes input[name="notes"]{box-sizing:border-box;width:100%;border:1px solid #cbd5e1;border-radius:5px;background:#fbfdff;color:#334155;box-shadow:inset 0 1px 2px rgba(15,23,42,.04)}
.schedule-event-notes input[name="notes"]:focus{border-color:#93c5fd;outline:2px solid rgba(59,130,246,.18)}
.schedule-event-spacer td{height:7px;padding:0;border:0;background:transparent}
.orphaned-header{display:grid;grid-template-columns:minmax(130px,.6fr) minmax(260px,1.6fr);gap:.5rem;padding:.15rem .55rem;font-weight:800;color:#475569}
.orphan-row{grid-template-columns:minmax(130px,.6fr) minmax(260px,1.6fr) minmax(0,.5fr)}
.orphan-apply-control{display:flex;align-items:flex-end;gap:.45rem}.orphan-apply-control label{display:flex;align-items:center;gap:.45rem;margin:0;flex:1}.orphan-apply-control select{min-width:180px;flex:1}
.task-people-summary{display:flex;align-items:center;gap:.6rem 1.3rem;flex-wrap:wrap;margin:.45rem 0 .8rem;padding:.55rem .7rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:7px}.assigned-to-summary{flex:1;min-width:220px}.assignment-edit-button{background:#2563eb;color:#fff;border:1px solid #1d4ed8;border-radius:5px;font-weight:750}.task-assignment-panel{margin:.5rem 0 1rem;padding:.85rem;border:1px solid #93c5fd;border-radius:8px;background:#eff6ff}.task-assignment-panel[hidden]{display:none}.task-assignment-panel h4{margin:.1rem 0 .6rem}.assignment-user-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.45rem}.assignment-user-grid label{display:flex;align-items:center;gap:.35rem;margin:0;padding:.45rem;background:#fff;border:1px solid #dbeafe;border-radius:5px}.assignment-user-grid small{color:#64748b}
.folder-permissions-button{background:#1e3a8a;color:#fff;border:1px solid #172554;border-radius:5px;font-weight:750}.folder-permissions-button:hover,.folder-permissions-button:focus{background:#172554}.folder-permissions-dialog{width:min(700px,calc(100% - 2rem))}.folder-permission-grid{display:grid;gap:.5rem;max-height:55vh;overflow:auto}.folder-permission-grid label{display:grid;grid-template-columns:minmax(160px,1fr) minmax(180px,1fr);align-items:center;gap:.7rem;margin:0;padding:.55rem;border:1px solid #d1d5db;border-radius:6px;background:#f8fafc}.folder-permission-grid span{font-weight:750}
.user-management-settings{display:grid;gap:1rem}.user-management-grid{display:grid;grid-template-columns:minmax(300px,.85fr) minmax(420px,1.4fr);gap:1rem}.user-management-grid>section,.group-management{border:1px solid #cbd5e1;border-radius:8px;padding:1rem;background:#f8fafc}.user-management-grid h4,.group-management h4{margin-top:0}.user-editor-form{display:grid;gap:.6rem}.user-fields-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}.user-fields-grid label{margin:0}.user-fields-grid input,.user-fields-grid select{box-sizing:border-box;width:100%}.membership-checkboxes{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.35rem}.membership-checkboxes label{display:flex;align-items:center;gap:.35rem;margin:0}.current-users{display:grid;gap:.5rem}.user-management-row{background:#fff;border:1px solid #cbd5e1;border-radius:7px;padding:.6rem}.user-management-row summary{cursor:pointer;display:flex;align-items:center;gap:.45rem;flex-wrap:wrap}.role-badge,.system-group-badge{display:inline-flex;align-items:center;border-radius:999px;padding:.15rem .5rem;font-size:.78rem;font-weight:800}.role-administrator{background:#fee2e2;color:#991b1b}.role-user{background:#dbeafe;color:#1e40af}.role-read_only{background:#e5e7eb;color:#374151}.system-group-badge{background:#ede9fe;color:#5b21b6}.user-form-actions{display:flex;align-items:center;justify-content:flex-end;gap:.5rem;flex-wrap:wrap}.delete-user-button{background:#b91c1c;color:#fff;border:1px solid #7f1d1d;border-radius:5px;font-weight:800}.remove-user-button{background:#ff7a00;color:#fff;border:1px solid #c2410c;border-radius:5px;font-weight:800}.remove-user-button:hover,.remove-user-button:focus{background:#ea580c}.group-management-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;flex-wrap:wrap}.add-group-form{display:flex;align-items:flex-end;gap:.4rem}.add-group-form label{margin:0}.group-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:.75rem}.group-card{background:#fff;border:1px solid #cbd5e1;border-radius:8px;padding:.75rem}.group-card-title{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.rename-group-form,.add-group-member-form{display:flex;align-items:flex-end;gap:.4rem;flex-wrap:wrap;margin:.55rem 0}.rename-group-form input{flex:1;min-width:140px}.add-group-member-form label{flex:1;margin:0}.add-group-member-form select{box-sizing:border-box;width:100%}.group-member-list{display:grid;gap:.35rem;margin:.7rem 0}.group-member-list h5{margin:.15rem 0}.group-member{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.4rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:5px}
.schedule-event-focus td{border-width:4px!important;animation:focusedEventGlow 1.05s ease-in-out infinite}.schedule-event-main.schedule-event-focus td{box-shadow:0 -5px 20px rgba(37,99,235,.95)}.schedule-event-notes.schedule-event-focus td{box-shadow:0 7px 22px rgba(37,99,235,.98)}
@keyframes focusedEventGlow{0%,100%{filter:drop-shadow(0 0 3px rgba(37,99,235,.7))}50%{filter:drop-shadow(0 0 12px rgba(37,99,235,1))}}
.calendar-today{animation:todayCalendarGlow 1.2s ease-in-out infinite;outline:4px solid #f59e0b;outline-offset:-4px;position:relative;z-index:3}
@keyframes todayCalendarGlow{0%,100%{box-shadow:inset 0 0 0 2px rgba(245,158,11,.7),0 0 6px rgba(245,158,11,.55)}50%{box-shadow:inset 0 0 0 5px rgba(245,158,11,1),0 0 18px rgba(245,158,11,.95)}}
@media(max-width:900px){.user-management-grid{grid-template-columns:1fr}.user-fields-grid{grid-template-columns:1fr}.orphaned-header{display:none}.orphan-row{grid-template-columns:1fr}.orphan-apply-control{align-items:stretch;flex-direction:column}.folder-permission-grid label{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.schedule-event-focus td,.calendar-today{animation:none}.schedule-event-focus td{box-shadow:0 0 0 4px rgba(37,99,235,.6)!important}.calendar-today{box-shadow:inset 0 0 0 4px rgba(245,158,11,.9)}}
.assignment-user-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:.45rem}.assignment-user-option{display:flex;align-items:center;justify-content:space-between;gap:.4rem;padding:.4rem;background:#fff;border:1px solid #dbeafe;border-radius:5px}.assignment-user-option label{display:flex;align-items:center;gap:.35rem;margin:0;min-width:0}.assignment-remove-user{font-size:.78rem;padding:.3rem .45rem;white-space:nowrap}

/* V015 task assignments, search/sort, user settings, notifications, profile photos, and week calendar */
.site-header-row{display:flex;align-items:center;gap:1rem}.brand-navigation{display:flex;align-items:center;gap:.8rem;min-width:0;flex:1}.header-right-zone{display:flex;align-items:center;justify-content:flex-end;gap:.7rem;margin-left:auto}.main-navigation-primary{display:flex;align-items:center;gap:.45rem}.main-navigation-secondary{display:flex;align-items:center;gap:.45rem;margin-left:auto}.main-navigation .nav-button{margin:0}.navbar-profile-photo{width:52px;height:52px;object-fit:cover;border-radius:50%;border:2px solid #93c5fd;box-shadow:0 0 0 2px rgba(255,255,255,.18)}
.folder-heading-area{display:grid;gap:.65rem;min-width:0;flex:1}.folder-title-line{display:flex;align-items:center;gap:.55rem;flex-wrap:wrap}.folder-title-line h2{margin:0}.selected-folder-icon{font-size:1.65rem}.folder-group-badges{display:flex;align-items:center;gap:.35rem;flex-wrap:wrap}.folder-group-badge{display:inline-flex;align-items:center;border-radius:999px;padding:.24rem .6rem;font-size:.78rem;font-weight:800;border:1px solid transparent}.folder-group-badge.role-administrator{background:#fee2e2;color:#991b1b;border-color:#fecaca}.folder-group-badge.role-user{background:#dbeafe;color:#1e40af;border-color:#bfdbfe}.folder-group-badge.role-read_only{background:#e5e7eb;color:#374151;border-color:#d1d5db}.folder-group-badge.no-groups{background:#f1f5f9;color:#64748b;border-color:#cbd5e1}.task-search-row{display:grid;grid-template-columns:auto minmax(220px,1fr) auto auto;align-items:center;gap:.45rem}.task-search-row label{margin:0;font-weight:800;color:#475569}.task-search-row input{box-sizing:border-box;width:100%;margin:0}.task-search-row button{margin:0;background:#e2e8f0;border:1px solid #94a3b8;border-radius:5px}.task-search-row span{font-size:.85rem;color:#64748b;white-space:nowrap}.task-sort-control{display:flex;align-items:center;gap:.35rem;margin:0;font-weight:800;color:#475569;white-space:nowrap}.task-sort-control select{margin:0}.task-list{display:grid;gap:.1rem}.task[hidden]{display:none!important}
.task-summary{display:grid;grid-template-columns:minmax(180px,1fr) minmax(250px,auto) auto;align-items:center}.task-due-badge{display:inline-flex;justify-content:center;align-items:center;max-width:420px;border-radius:999px;padding:.35rem .72rem;font-size:.82rem;font-weight:900;border:1px solid rgba(15,23,42,.25);line-height:1.2;text-align:center}.task-summary-actions{display:flex;align-items:center;justify-content:flex-end;gap:.3rem;flex-wrap:wrap}.task-assignment-choices{display:grid;grid-template-columns:1fr 1fr;gap:.85rem}.task-assignment-choices>div{border:1px solid #cbd5e1;border-radius:7px;padding:.65rem;background:#fff}.task-assignment-choices h5{margin:.1rem 0 .55rem;color:#334155}.assignment-choice{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:.4rem;margin:0!important;padding:.45rem!important}.assignment-choice input{flex:0 0 auto}.assignment-subsection-title,.new-task-assignment-section h3{margin:.35rem 0;color:#1e3a8a}.new-task-assignment-section{border:1px solid #93c5fd;background:#eff6ff;border-radius:8px;padding:.8rem}.new-task-assignment-section>p{margin:.1rem 0 .75rem;color:#475569}
.task-schedule-table th:nth-child(1){width:15%}.task-schedule-table th:nth-child(2){width:9%;text-align:center}.task-schedule-table th:nth-child(3){width:25%}.task-schedule-table th:nth-child(4){width:26%}.task-schedule-table th:nth-child(5){width:25%}.days-cell{text-align:center;font-weight:900;font-variant-numeric:tabular-nums;border-radius:3px}.days-overdue{background:#dc2626!important;color:#fff}.days-upcoming{background:#fb923c!important;color:#431407}.days-done{background:#22c55e!important;color:#052e16}.days-skipped{background:#e2e8f0!important;color:#475569}.today-marker-row td{padding:1rem .6rem!important;border-top:10px solid transparent!important;border-bottom:10px solid transparent!important;background:linear-gradient(90deg,#ffb000 0%,#ff8a00 55%,#e66b00 100%)!important;color:#3b1900!important;font-weight:950;text-align:center;box-shadow:0 5px 12px rgba(124,45,18,.35),0 -3px 9px rgba(249,115,22,.22);background-clip:padding-box!important}.schedule-event-spacer td{height:9px}.schedule-event-notes input[name="notes"]{border-color:#d8dee8;background:#fcfdff}
.settings-main-title{font-size:1.75rem;color:#1e3a8a;margin-bottom:1rem}.settings-page{display:grid;gap:1rem}.settings-section{margin:0}.settings-section>h3{display:flex;align-items:center;gap:.55rem;margin:0 0 .75rem;color:#1d4ed8;font-size:1.35rem;border-bottom:2px solid #bfdbfe;padding-bottom:.55rem}.settings-section-icon{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:8px;background:#dbeafe}.settings-ajax-message{position:sticky;top:.4rem;z-index:20;border-radius:6px;padding:.45rem .7rem;min-height:1px}.settings-ajax-message:empty{display:none}.settings-ajax-message.working{display:block;background:#dbeafe;color:#1e3a8a;font-weight:800}.color-profile-toolbar{display:flex;align-items:flex-end;gap:.5rem;flex-wrap:wrap}.inline-form{display:flex;align-items:flex-end;gap:.4rem;flex-wrap:wrap}.inline-form label{margin:0}.profile-name-field{max-width:420px}.global-default-form{margin-top:.8rem;padding-top:.8rem;border-top:1px solid #cbd5e1}.settings-field-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:.6rem}.settings-field-grid input,.settings-field-grid select{box-sizing:border-box;width:100%}.checkbox-label{display:flex;align-items:center;gap:.4rem}.checkbox-label input{width:auto}.profile-photo-preview{display:flex;align-items:center;justify-content:center;width:150px;height:150px;border:1px solid #cbd5e1;border-radius:10px;background:#f8fafc;overflow:hidden;margin:.6rem 0}.profile-photo-preview img{width:100%;height:100%;object-fit:cover}.user-profile-form{display:grid;gap:.7rem}.notification-form{display:grid;gap:.8rem}.notification-rule-list{display:grid;gap:.45rem}.notification-rule{display:grid;grid-template-columns:minmax(220px,1.4fr) minmax(80px,.4fr) minmax(110px,.6fr) auto;gap:.45rem;align-items:center;background:#f8fafc;border:1px solid #cbd5e1;border-radius:7px;padding:.55rem}.notification-rule input,.notification-rule select{box-sizing:border-box;width:100%;margin:0}.notification-methods{display:grid;gap:.45rem}.notification-methods label{display:flex;align-items:center;gap:.4rem;margin:0}.timeout-controls{display:flex;align-items:end;gap:.75rem;flex-wrap:wrap}.timeout-controls label{margin:0}.timeout-controls input,.timeout-controls select{box-sizing:border-box;min-width:120px}
.calendar-day{overflow:visible;height:auto;min-height:130px}.calendar-event span{white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere}.month-calendar{grid-auto-rows:minmax(130px,auto);align-items:stretch}.week-calendar{display:grid;gap:.75rem;padding:.8rem;background:#e2e8f0}.week-calendar-day{display:grid;grid-template-columns:minmax(180px,.32fr) minmax(0,1fr);gap:.75rem;min-height:105px;background:#fff;border:1px solid #94a3b8;border-radius:9px;padding:.75rem}.week-day-heading{display:flex;flex-direction:column;gap:.25rem;border-right:1px solid #cbd5e1;padding-right:.75rem}.week-day-heading strong{font-size:1.2rem;color:#1e3a8a}.week-day-heading time{font-weight:700;color:#475569}.week-day-events{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.45rem;align-content:start}.week-calendar-day.calendar-today{background:#fde047;outline:5px solid #f59e0b;animation:todayCalendarGlow 1.2s ease-in-out infinite}.week-calendar .calendar-event{font-size:.9rem;padding:.55rem}
.kiosk-notification-overlay{position:fixed;inset:0;z-index:10000;background:rgba(15,23,42,.72);display:flex;align-items:center;justify-content:center;padding:1rem}.kiosk-notification-card{width:min(620px,100%);background:#fff;border-radius:14px;padding:1.5rem;box-shadow:0 25px 80px rgba(0,0,0,.5);border:4px solid #f59e0b}.kiosk-notification-card h2{margin-top:0;color:#1e3a8a}.kiosk-notification-actions{display:flex;justify-content:flex-end;gap:.5rem;flex-wrap:wrap}.kiosk-notification-actions a{display:inline-flex;align-items:center;text-decoration:none;padding:.5rem .8rem}
@media(max-width:1050px){.site-header-row{align-items:flex-start}.header-right-zone{flex-wrap:wrap}.task-summary{grid-template-columns:1fr}.task-due-badge{justify-self:start}.task-summary-actions{justify-content:flex-start}.task-assignment-choices{grid-template-columns:1fr}.events-header{align-items:stretch}.task-toolbar{justify-content:flex-start;flex-wrap:wrap}.task-search-row{grid-template-columns:1fr auto}.task-search-row label,.task-search-row span{grid-column:1/-1}.notification-rule{grid-template-columns:1fr 100px 120px auto}}
@media(max-width:700px){.site-header-row{display:grid;grid-template-columns:1fr}.header-right-zone{width:100%;justify-content:flex-start}.main-navigation-primary,.main-navigation-secondary{flex-wrap:wrap}.navbar-profile-photo{margin-left:auto}.task-search-row{grid-template-columns:1fr}.task-search-row>*{grid-column:1}.notification-rule{grid-template-columns:1fr}.week-calendar-day{grid-template-columns:1fr}.week-day-heading{border-right:0;border-bottom:1px solid #cbd5e1;padding:0 0 .5rem}.settings-field-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.week-calendar-day.calendar-today{animation:none}.task-due-badge{transition:none}}
.task-schedule-table th:nth-child(1){width:16%}.task-schedule-table th:nth-child(2){width:8%}.task-schedule-table th:nth-child(3){width:32%}.task-schedule-table th:nth-child(4){width:18%}.task-schedule-table th:nth-child(5){width:26%}

/* V016 */
.settings-save-dirty{animation:saveGlow 1.05s ease-in-out infinite!important}
.email-settings-form{display:grid;gap:1rem}.email-template-fields{display:grid;gap:.7rem}.email-template-fields>label input{box-sizing:border-box;width:100%}.email-rich-text-editor{width:100%}.email-body-editor{min-height:220px}.email-variable-panel{border:1px solid #bfdbfe;border-radius:8px;background:#eff6ff;padding:.75rem}.email-variable-panel p{margin:.25rem 0 .6rem;color:#475569}.email-variable-buttons{display:flex;flex-wrap:wrap;gap:.4rem}.email-variable-buttons button{background:#fff;color:#1d4ed8;border:1px solid #93c5fd;border-radius:999px;font-family:monospace;font-weight:700}.email-variable-buttons button:hover{background:#dbeafe}.email-settings-actions{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;flex-wrap:wrap}.test-email-controls{display:flex;align-items:flex-end;gap:.5rem;flex-wrap:wrap}.test-email-controls label{margin:0}.test-email-controls input{min-width:260px}.test-email-button{background:#2563eb;color:#fff;border:1px solid #1d4ed8;font-weight:700}.test-email-button:disabled{background:#94a3b8;border-color:#64748b;cursor:not-allowed}.test-email-result{max-width:440px;font-weight:700}.test-email-result.working{color:#1d4ed8}.test-email-result.ok{color:#166534}.test-email-result.error{color:#b91c1c}
.status-profile-manage-form{border:1px solid #cbd5e1;border-radius:8px;background:#f8fafc;padding:.75rem;margin:.75rem 0}.status-profile-manage-form h4{margin:0 0 .55rem;color:#334155}.status-profile-manage-row{display:flex;align-items:flex-end;gap:.5rem;flex-wrap:wrap}.status-profile-manage-row label{margin:0}.status-profile-manage-row select,.status-profile-manage-row input{min-width:210px}.trash-profile-button{background:#991b1b;color:#fff;border:1px solid #7f1d1d;font-weight:700}
.notification-rule{transition:border-color .2s,box-shadow .2s,background .2s}.notification-rule-highlight{animation:notificationRuleHighlight 1s ease-in-out 3;border-color:#2563eb!important;background:#dbeafe!important}@keyframes notificationRuleHighlight{0%,100%{box-shadow:0 0 0 1px rgba(37,99,235,.35)}50%{box-shadow:0 0 0 5px rgba(37,99,235,.55),0 0 14px rgba(37,99,235,.7)}}.browser-notification-test{border-top:1px solid #cbd5e1;padding-top:.75rem;margin-top:.25rem}.browser-notification-test h4{margin:.1rem 0}.browser-notification-test p{margin:.3rem 0 .65rem;color:#475569}.browser-notification-test [data-browser-test-result]{margin-left:.55rem;font-weight:700}
@media(max-width:700px){.email-settings-actions,.test-email-controls,.status-profile-manage-row{align-items:stretch;flex-direction:column}.test-email-controls input,.status-profile-manage-row select,.status-profile-manage-row input{min-width:0;width:100%}}
@media(prefers-reduced-motion:reduce){.settings-save-dirty,.notification-rule-highlight{animation:none!important}.settings-save-dirty{box-shadow:0 0 0 4px rgba(34,197,94,.55)}.notification-rule-highlight{box-shadow:0 0 0 4px rgba(37,99,235,.45)}}

/* V017 */
.task-reminders-section{margin-top:.9rem;padding:.85rem;border:1px solid #c4b5fd;border-radius:9px;background:#f5f3ff}.task-reminders-section h4{margin:.05rem 0;color:#5b21b6}.task-reminders-section>p{margin:.25rem 0 .75rem;color:#5b5563}.task-notification-rule-list{margin-bottom:.55rem}.task-reminders-section .notification-rule{background:#fff;border-color:#c4b5fd}
.login-security-form{display:grid;gap:.8rem}.security-toggle-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:.45rem;padding:.7rem;border:1px solid #bfdbfe;border-radius:8px;background:#eff6ff}.security-number-grid{margin-top:.25rem}.security-block-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1rem}.security-block-grid>section{border:1px solid #cbd5e1;border-radius:9px;background:#f8fafc;padding:.8rem}.security-block-grid h4{margin:.1rem 0 .65rem;color:#334155}.security-block-card{display:grid;gap:.35rem;background:#fff;border:1px solid #f59e0b;border-left:5px solid #dc2626;border-radius:8px;padding:.7rem;margin:.55rem 0}.security-block-card details{margin:.25rem 0}.security-block-card ul{margin:.4rem 0;padding-left:1.25rem}.security-block-card code,.security-audit code{overflow-wrap:anywhere}.security-unban-button{background:#16a34a;color:#fff;border:1px solid #15803d;border-radius:5px;font-weight:800}.security-audit{margin-top:1rem;border:1px solid #94a3b8;border-radius:8px;padding:.7rem;background:#fff}.security-audit>summary{cursor:pointer;font-weight:800;color:#1e3a8a}.security-audit-table-wrap{overflow:auto;margin:.7rem 0}.security-audit table{min-width:780px}.security-audit td,.security-audit th{font-size:.9rem}.login-security-settings .settings-section-icon{background:#fee2e2}
@media(max-width:900px){.security-block-grid{grid-template-columns:1fr}}


/* V019 compact tasks, configurable application colors, magenta Today bar, and >30-day colors */
body{background:var(--app-page-background,#f6f7f9);color:var(--app-text,#222)}
.site-header,header{background:var(--app-header-background,#1f2937);color:var(--app-header-text,#fff)}
.card,.folder,.task,.events-header,.folder-pane,.calendar-day,.week-calendar-day,.year-month,.trash-item{background:var(--app-surface,#fff);border-color:var(--app-border,#d1d5db);color:var(--app-text,#222)}
.task-details,.task-people-summary,.settings-field-grid input,.settings-field-grid select,input,select,textarea,.rich-text-area{color:var(--app-text,#222)}
.task-people-summary,.task-assignment-panel,.task-edit-panel,.notification-rule,.status-color-control,.task-reminders-section,.security-block-grid>section{background:var(--app-surface-alt,#f8fafc);border-color:var(--app-border,#d1d5db)}
.compact-label,.task-search-row label,.task-sort-control,.settings-section p,.task-inline-message,.dashboard-range-note{color:var(--app-muted-text,#475569)}
.nav-button,.navbar-brand-text,.header-meta{color:var(--app-header-text,#fff)}
.task-list{gap:0}
.task-collapsible{margin:.28rem 0;border-radius:6px}
.task-collapsible:not([open]){padding:0}
.task-collapsible:not([open]) .task-summary{padding:.42rem .62rem;min-height:34px;font-size:.96rem;gap:.35rem}
.task-collapsible:not([open]) .task-due-badge{padding:.24rem .55rem;font-size:.76rem;max-width:360px}
.task-collapsible:not([open]) .task-summary-actions button{padding:.28rem .45rem;font-size:.76rem;margin:.05rem}
.task-collapsible[open]{margin:.5rem 0 .65rem}
.today-marker-row td{background:var(--status-color-today-bar,#d946ef)!important;color:var(--status-text-today-bar,#fff)!important;border-color:var(--status-color-today-bar,#d946ef)!important;box-shadow:0 5px 14px color-mix(in srgb,var(--status-color-today-bar,#d946ef) 48%,transparent),0 -3px 10px color-mix(in srgb,var(--status-color-today-bar,#d946ef) 30%,transparent)!important}
.today-marker-gap td{height:18px;padding:0!important;border:0!important;background:transparent!important}
.days-future-thirty,.days-cell.status-future-thirty{background:var(--status-color-future-days,#1e3a8a)!important;color:var(--status-text-future-days,#fff)!important}
.status-cell.status-future-thirty{background:var(--status-color-future-status,#1d4ed8)!important;color:var(--status-text-future-status,#fff)!important}
.task-page-message{margin:.55rem 0;padding:.65rem .8rem;border-radius:7px}.task-warning{background:#fff7ed;border:1px solid #fb923c;color:#9a3412;font-weight:750}
.color-profile-toolbar{padding:.65rem;border:1px solid var(--app-border,#d1d5db);border-radius:8px;background:var(--app-surface-alt,#f8fafc)}
.color-profile-toolbar .global-default-form{margin:0;padding:0;border:0}
.color-profile-save-top{display:flex;justify-content:flex-end;margin:.1rem 0 .2rem}
@media(max-width:1050px){.task-collapsible:not([open]) .task-summary{grid-template-columns:1fr}.task-collapsible:not([open]) .task-summary-actions{justify-content:flex-start}}
@media(prefers-reduced-motion:reduce){.today-marker-row td{box-shadow:0 0 0 3px color-mix(in srgb,var(--status-color-today-bar,#d946ef) 50%,transparent)!important}}
/* V019 dark-profile contrast coverage */
input,select,textarea,.rich-text-area,.rich-text-editor,.folder-dialog,.move-tree,.assignment-choice,.task-assignment-choices>div,.security-block-card,.group-card,.user-management-row,.dashboard-list-row{background:var(--app-surface,#fff);color:var(--app-text,#222);border-color:var(--app-border,#d1d5db)}
td,th,table,.folder-tree,.task-schedule-table{border-color:var(--app-border,#d1d5db);color:var(--app-text,#222)}
.folder-node-link,.task-name,.task-notes-content,.task-compact-fields,.task-people-summary,.calendar-date-number,.dashboard-list-row a{color:var(--app-text,#222)}
.folder-node-link:hover,.task-summary:hover{background:var(--app-surface-alt,#f8fafc)}
.folder-node-link.active{background:color-mix(in srgb,var(--app-surface-alt,#f8fafc) 72%,#2563eb 28%);color:var(--app-text,#222)}
.rich-text-toolbar,.year-month h3,.settings-section-icon{border-color:var(--app-border,#d1d5db)}
.empty-state,.task-search-row span,.task-assignment-choices h5,.notification-rule small{color:var(--app-muted-text,#475569)}

/* V020 comprehensive color-profile coverage and calendar/task fixes */
:root{
  --app-glow:#0dff00;
  --app-calendar-today:#fde047;
  --app-section-title:#2bff00;
}
html,body{background:var(--app-page-background,#f6f7f9);color:var(--app-text,#222)}
main,.settings-page,.dashboard-shell,.events-pane{color:var(--app-text,#222)}
.site-header,header{background:var(--app-header-background,#1f2937);color:var(--app-header-text,#fff)}
.site-header a,.header-meta,.app-version,.navbar-brand-text{color:var(--app-header-text,#fff)}

/* Primary application surfaces */
.card,.folder,.task,.folder-pane,.events-header,.calendar-toolbar,.calendar-day,.week-calendar-day,.year-month,
.trash-item,.login-card,.folder-dialog,.move-folder-dialog,.folder-permissions-dialog,.kiosk-notification-card,
.security-audit,.dashboard-list-row,.row{
  background:var(--app-surface,#fff);
  color:var(--app-text,#222);
  border-color:var(--app-border,#d1d5db);
}

/* Secondary/nested surfaces and all data-entry controls */
.current-logo,.logo-action-row,.status-profile-manage-form,.color-profile-toolbar,.color-swatch-section,
.task-edit-panel,.task-assignment-panel,.task-people-summary,.task-reminders-section,.task-assignment-choices>div,
.notification-rule,.email-variable-panel,.browser-notification-test,.security-toggle-grid,.security-block-grid>section,
.security-block-card,.user-management-grid>section,.user-management-row,.group-card,.profile-photo-preview,
.orphaned-accomplishments,.orphan-row,.trash-choice,.move-tree,.rich-text-editor,.rich-text-toolbar,
.settings-field-grid,.membership-checkboxes,.folder-permission-grid,.dashboard-status-group{
  background:var(--app-surface-alt,#f8fafc);
  color:var(--app-text,#222);
  border-color:var(--app-border,#d1d5db);
}
input,select,textarea,.rich-text-area,.email-body-editor,
.folder-dialog input,.folder-dialog select,.move-folder-dialog input,.move-folder-dialog select{
  background:var(--app-surface-alt,#f8fafc);
  color:var(--app-text,#222);
  border-color:var(--app-border,#d1d5db);
}
input::placeholder,textarea::placeholder{color:var(--app-muted-text,#475569);opacity:.9}
fieldset,legend,table,td,th,.folder-tree,.task-schedule-table,.week-day-heading,.rich-text-toolbar{
  border-color:var(--app-border,#d1d5db);
}
th,.calendar-weekdays,.year-month h3{background:var(--app-surface-alt,#f8fafc);color:var(--app-text,#222)}
td{background:var(--app-surface,#fff);color:var(--app-text,#222)}

/* Text hierarchy */
.settings-section>h3,.settings-section-icon,.color-swatch-section>h4{
  color:var(--app-section-title,#2bff00);
}
.settings-section>h3{font-size:1.35rem;font-weight:900;letter-spacing:.01em}
.settings-section p,.settings-section small,.settings-section .empty-state,.settings-section .compact-label,
.settings-section .task-inline-message,.settings-section .browser-notification-test p,
.trash-item-details,.dashboard-range-note,.task-search-row span,.notification-rule small{
  color:var(--app-muted-text,#475569);
}
.settings-section label,.settings-section strong,.settings-section h4,.settings-section h5,
.current-logo>span,.status-profile-manage-form h4,.group-card-title,.security-audit>summary{
  color:var(--app-text,#222);
}

/* Logo section uses the Secondary panels and inputs color for nested panels. */
.current-logo{display:grid;gap:.45rem;padding:.75rem;border:1px solid var(--app-border,#d1d5db);border-radius:8px}
.current-logo-image{display:flex;align-items:center;justify-content:flex-start;min-height:76px;padding:.6rem;border:1px solid var(--app-border,#d1d5db);border-radius:7px;background:var(--app-surface-alt,#f8fafc)}
.current-logo img{max-width:min(420px,100%);max-height:160px;object-fit:contain}
.logo-action-row{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin-top:.75rem;padding:.75rem;border:1px solid var(--app-border,#d1d5db);border-radius:8px}
.logo-upload-form{display:flex;align-items:flex-end;gap:.65rem;flex-wrap:wrap;flex:1;margin:0}
.logo-upload-form label{flex:1 1 320px;margin:0}.logo-upload-form small{flex:0 0 auto;margin-bottom:.62rem}
.logo-upload-form button{flex:0 0 auto}.remove-logo-form{margin:0 0 0 auto;flex:0 0 auto}

/* Color editor grouping */
.color-swatch-section{margin:.85rem 0;padding:.85rem;border:1px solid var(--app-border,#d1d5db);border-radius:9px}
.color-swatch-section>h4{margin:.05rem 0 .7rem;font-size:1.12rem}
.status-color-control{background:var(--app-surface,#fff);color:var(--app-text,#222);border-color:var(--app-border,#d1d5db)}
.status-color-control code{color:var(--app-muted-text,#475569);background:var(--app-surface-alt,#f8fafc);border-radius:4px;padding:.15rem .3rem}
.system-profile-save{display:flex;justify-content:center;margin:.8rem 0}
.system-default-save-button{background:#166534;color:#fff;border:1px solid #22c55e;border-radius:999px;padding:.6rem 1.1rem;font-weight:900}
.system-default-save-button:hover,.system-default-save-button:focus{background:#15803d}

/* Calendar theme and richer event details */
.month-calendar,.week-calendar,.year-calendar{background:var(--app-page-background,#f6f7f9);border-color:var(--app-border,#d1d5db)}
.calendar-day.other-month{background:var(--app-surface-alt,#f8fafc);color:var(--app-muted-text,#475569)}
.calendar-day.calendar-today,.week-calendar-day.calendar-today{
  background:var(--app-calendar-today,#fde047)!important;
  color:var(--status-text-calendar-today,#111827)!important;
  outline-color:var(--app-glow,#0dff00)!important;
}
.calendar-event{gap:.12rem;white-space:normal;overflow:visible}
.calendar-event-title{font-weight:900;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;overflow-wrap:anywhere}
.calendar-event-status,.calendar-event-assignment{display:block;white-space:normal;overflow-wrap:anywhere;line-height:1.25}
.calendar-event-status{font-weight:800}
.calendar-event-assignment{font-size:.7rem;opacity:.94}
.calendar-status-icon{display:inline-flex;align-items:center;justify-content:center;margin-right:.28rem;font-weight:1000}
.calendar-status-done{color:#16a34a}.calendar-status-overdue{color:#facc15;text-shadow:0 1px 1px rgba(0,0,0,.5)}
.compact-calendar .calendar-event-assignment{display:none}

/* Configurable glow/pulse color */
@keyframes saveGlow{
  0%,100%{box-shadow:0 0 0 1px color-mix(in srgb,var(--app-glow,#0dff00) 28%,transparent),0 0 4px color-mix(in srgb,var(--app-glow,#0dff00) 35%,transparent)}
  50%{box-shadow:0 0 0 5px color-mix(in srgb,var(--app-glow,#0dff00) 62%,transparent),0 0 18px color-mix(in srgb,var(--app-glow,#0dff00) 90%,transparent)}
}
@keyframes activeNavGlow{
  0%,100%{box-shadow:0 0 0 1px color-mix(in srgb,var(--app-glow,#0dff00) 36%,transparent),0 0 7px color-mix(in srgb,var(--app-glow,#0dff00) 55%,transparent)}
  50%{box-shadow:0 0 0 4px color-mix(in srgb,var(--app-glow,#0dff00) 70%,transparent),0 0 18px var(--app-glow,#0dff00)}
}
@keyframes focusedEventGlow{
  0%,100%{filter:drop-shadow(0 0 3px color-mix(in srgb,var(--app-glow,#0dff00) 68%,transparent))}
  50%{filter:drop-shadow(0 0 12px var(--app-glow,#0dff00))}
}
@keyframes todayCalendarGlow{
  0%,100%{box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--app-glow,#0dff00) 68%,transparent),0 0 6px color-mix(in srgb,var(--app-glow,#0dff00) 55%,transparent)}
  50%{box-shadow:inset 0 0 0 5px var(--app-glow,#0dff00),0 0 20px var(--app-glow,#0dff00)}
}
.nav-button.active-page{border-color:var(--app-glow,#0dff00)}
.schedule-event-main.schedule-event-focus td,.schedule-event-notes.schedule-event-focus td,.dashboard-focused-task{border-color:var(--app-glow,#0dff00)!important}
.notification-rule-highlight{border-color:var(--app-glow,#0dff00)!important;background:color-mix(in srgb,var(--app-surface-alt,#f8fafc) 82%,var(--app-glow,#0dff00) 18%)!important}

/* Remaining page-specific dark-theme coverage */
.folder-node-link,.task-name,.task-notes-content,.task-compact-fields,.task-people-summary,
.calendar-date-number,.dashboard-list-row a,.week-day-heading strong,.week-day-heading time,
.trash-item-details b,.security-audit>summary{color:var(--app-text,#222)}
.folder-node-link:hover,.task-summary:hover,.move-node:hover{background:var(--app-surface-alt,#f8fafc)}
.folder-node-link.active{background:color-mix(in srgb,var(--app-surface-alt,#f8fafc) 72%,#2563eb 28%);color:var(--app-text,#222)}
.task-edit-panel,.task-assignment-panel,.task-reminders-section,.orphaned-accomplishments{box-shadow:none}
.task-warning{background:color-mix(in srgb,var(--app-surface-alt,#f8fafc) 78%,#f97316 22%);border-color:#f97316;color:var(--app-text,#222)}
.email-variable-panel,.security-toggle-grid{background:color-mix(in srgb,var(--app-surface-alt,#f8fafc) 88%,#2563eb 12%)}
.kiosk-notification-overlay{background:color-mix(in srgb,var(--app-page-background,#0f172a) 78%,transparent)}

@media(max-width:760px){
  .logo-action-row,.logo-upload-form{align-items:stretch;flex-direction:column}
  .remove-logo-form{margin-left:0;align-self:flex-end}
}
@media(prefers-reduced-motion:reduce){
  .nav-button.active-page,.task-edit-save-button.save-dirty,.row-save-button.save-dirty,.settings-save-dirty,
  .schedule-event-focus td,.calendar-today{animation:none!important;box-shadow:0 0 0 4px color-mix(in srgb,var(--app-glow,#0dff00) 62%,transparent)!important}
}

/* V020 final specificity overrides for nested panels and dark-theme readability */
.settings-main-title{color:var(--app-section-title,#2bff00)!important}
.settings-section>h3{border-bottom-color:var(--app-border,#d1d5db)!important}
.settings-section-icon{
  background:var(--app-surface-alt,#f8fafc)!important;
  color:var(--app-section-title,#2bff00)!important;
  border:1px solid var(--app-border,#d1d5db)!important;
}
.current-logo-image img,.current-logo img{
  background:transparent!important;
  border-color:var(--app-border,#d1d5db)!important;
}
.logo-upload-form input[type="file"]{
  background:var(--app-surface-alt,#f8fafc)!important;
  color:var(--app-text,#222)!important;
  border-color:var(--app-border,#d1d5db)!important;
}
.schedule-event-notes input[name="notes"],.schedule-notes-row input{
  background:var(--app-surface-alt,#f8fafc)!important;
  color:var(--app-text,#222)!important;
  border-color:color-mix(in srgb,var(--app-border,#d1d5db) 65%,transparent)!important;
}
.schedule-event-notes input[name="notes"]:focus,.schedule-notes-row input:focus{
  border-color:var(--app-glow,#0dff00)!important;
  outline-color:color-mix(in srgb,var(--app-glow,#0dff00) 30%,transparent)!important;
}
.new-task-assignment-section,.folder-permission-grid label,.assignment-user-option,
.task-reminders-section,.security-audit,.kiosk-notification-card{
  background:var(--app-surface-alt,#f8fafc)!important;
  color:var(--app-text,#222)!important;
  border-color:var(--app-border,#d1d5db)!important;
}
.new-task-assignment-section h3,.assignment-subsection-title,.task-assignment-choices h5,
.task-reminders-section h4,.security-block-grid h4{
  color:var(--app-section-title,#2bff00)!important;
}
.new-task-assignment-section>p,.task-reminders-section>p,.schedule-notes-row label{
  color:var(--app-muted-text,#475569)!important;
}
.trash-empty-state,.year-calendar,.calendar-grid,.month-calendar,.week-calendar{
  background:var(--app-page-background,#f6f7f9)!important;
  color:var(--app-text,#222)!important;
  border-color:var(--app-border,#d1d5db)!important;
}
.security-audit table td,.security-audit table th,.user-management-settings table td,.user-management-settings table th{
  background:var(--app-surface,#fff)!important;
  color:var(--app-text,#222)!important;
  border-color:var(--app-border,#d1d5db)!important;
}

/* V022 interface text scaling and collapsible Settings sections */
html.text-scale-1{font-size:100%}
html.text-scale-1-25{font-size:125%}
html.text-scale-1-5{font-size:150%}
html.text-scale-1-75{font-size:175%}
html.text-scale-2{font-size:200%}
html.text-scale-2-5{font-size:250%}
html.text-scale-3{font-size:300%}
.calendar-jump-form label:last-child{min-width:6.25rem}
.interface-settings-form{display:flex;align-items:flex-end;gap:.65rem;flex-wrap:wrap}
.interface-settings-form label{margin:0}
.interface-settings-form select{min-width:6rem}
.settings-section{position:relative}
.settings-section>h3{padding-right:3.25rem}
.settings-section-toggle{position:absolute;right:.7rem;top:.58rem;display:inline-flex;align-items:center;justify-content:center;width:2.35rem;height:2.35rem;margin:0;padding:0;border:1px solid var(--app-border,#94a3b8);border-radius:7px;background:var(--app-surface-alt,#f8fafc);color:var(--app-text,#1f2937);font-size:1.15rem;font-weight:900;line-height:1;z-index:2}
.settings-section-toggle:hover,.settings-section-toggle:focus{box-shadow:0 0 0 3px color-mix(in srgb,var(--app-glow,#0dff00) 45%,transparent);outline:none}
.settings-section.settings-collapsed>:not(h3){display:none!important}
.settings-section.settings-collapsed>h3{margin-bottom:0;border-bottom-color:transparent!important;padding-bottom:0}
@media(max-width:900px){html.text-scale-3 .calendar-toolbar,html.text-scale-2-5 .calendar-toolbar,html.text-scale-2 .calendar-toolbar,html.text-scale-1-75 .calendar-toolbar,html.text-scale-1-5 .calendar-toolbar{grid-template-columns:1fr}.settings-section-toggle{top:.45rem;right:.5rem}}


/* V023 task attachments, fractional text scaling, and Settings page controls */
.settings-page-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.settings-page-heading .settings-main-title{margin:0}
.settings-page-actions{display:flex;align-items:center;justify-content:flex-end;gap:.55rem;margin-left:auto}
.settings-expand-all-button,.settings-collapse-all-button{border:1px solid var(--app-border,#64748b);border-radius:8px;padding:.55rem .8rem;font-weight:800;cursor:pointer;color:var(--app-text,#1f2937);background:var(--app-surface-alt,#f8fafc)}
.settings-expand-all-button:hover,.settings-collapse-all-button:hover,.settings-expand-all-button:focus,.settings-collapse-all-button:focus{box-shadow:0 0 0 3px color-mix(in srgb,var(--app-glow,#0dff00) 45%,transparent);outline:none}

.task-attachments-summary,.task-attachments-editor{margin-top:.8rem;border:1px solid var(--app-border,#cbd5e1);border-radius:10px;background:var(--app-surface-alt,#f8fafc);color:var(--app-text,#1f2937);padding:.8rem}
.task-attachments-summary>h4,.task-attachments-editor>h4{margin:.05rem 0 .55rem;color:var(--app-section-title,#2bff00)}
.task-attachments-editor>p,.attachment-empty,.task-attachment-drop-hint{color:var(--app-muted-text,#475569)}
.attachment-count{display:inline-flex;align-items:center;justify-content:center;min-width:1.55rem;height:1.55rem;margin-left:.35rem;padding:0 .35rem;border-radius:999px;background:var(--app-header-background,#1f2937);color:var(--app-header-text,#fff);font-size:.82rem}
.task-attachment-list{display:grid;gap:.55rem}
.task-attachment-item{display:grid;grid-template-columns:72px minmax(0,1fr) auto;align-items:center;gap:.7rem;padding:.55rem;border:1px solid var(--app-border,#cbd5e1);border-radius:8px;background:var(--app-surface,#fff);color:var(--app-text,#1f2937)}
.task-attachment-preview{display:flex;align-items:center;justify-content:center;width:72px;height:58px;border:1px solid var(--app-border,#cbd5e1);border-radius:7px;background:var(--app-surface-alt,#f8fafc);overflow:hidden}
.task-attachment-preview img{display:block;width:100%;height:100%;object-fit:cover}
.task-attachment-file-icon{display:inline-flex;align-items:center;justify-content:center;font-size:2rem;line-height:1}
.task-attachment-meta{display:grid;gap:.18rem;min-width:0}
.task-attachment-name{font-weight:800;color:var(--app-text,#1d4ed8);overflow-wrap:anywhere}
.task-attachment-meta small{color:var(--app-muted-text,#475569);overflow-wrap:anywhere}
.task-attachment-remove{display:flex;align-items:center;gap:.35rem;margin:0;padding:.4rem .55rem;border-radius:7px;background:color-mix(in srgb,#dc2626 13%,var(--app-surface,#fff));color:var(--app-text,#1f2937);font-weight:700;white-space:nowrap}
.task-attachment-remove input{width:auto;margin:0}
.task-attachment-upload-box{display:grid;gap:.55rem;margin-top:.65rem;padding:.8rem;border:2px dashed var(--app-border,#94a3b8);border-radius:10px;background:var(--app-surface,#fff);transition:border-color .15s ease,box-shadow .15s ease}
.task-attachment-upload-box.drag-active{border-color:var(--app-glow,#0dff00);box-shadow:0 0 0 4px color-mix(in srgb,var(--app-glow,#0dff00) 35%,transparent)}
.task-attachment-picker{display:flex;align-items:center;gap:.75rem;margin:0;font-weight:800;color:var(--app-text,#1f2937)}
.task-attachment-picker>span{display:inline-flex;align-items:center;justify-content:center;padding:.5rem .8rem;border-radius:7px;background:#2563eb;color:#fff}
.task-attachment-picker input{width:100%;margin:0;color:var(--app-text,#1f2937)}
.task-attachment-staging{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:.45rem}
.task-attachment-staged-item{display:grid;grid-template-columns:52px minmax(0,1fr);align-items:center;gap:.5rem;padding:.45rem;border:1px solid var(--app-border,#cbd5e1);border-radius:7px;background:var(--app-surface-alt,#f8fafc);color:var(--app-text,#1f2937);overflow-wrap:anywhere}
.task-attachment-staged-item img{width:52px;height:44px;object-fit:cover;border-radius:5px;border:1px solid var(--app-border,#cbd5e1)}
.existing-task-attachments>h5{margin:.35rem 0 .5rem;color:var(--app-text,#1f2937)}

@media(max-width:720px){.task-attachment-item{grid-template-columns:58px minmax(0,1fr)}.task-attachment-preview{width:58px;height:52px}.task-attachment-remove{grid-column:1/-1;justify-self:start}.settings-page-actions{width:100%}.settings-page-actions button{flex:1}}


/* V024 calendar add controls, section-container toggles, navigation icons, and theme cleanup */
.saved-ribbon[hidden]{display:none!important}
.nav-button{gap:.38rem}
.nav-button .nav-icon{display:inline-flex;align-items:center;justify-content:center;color:var(--app-navigation-icons,#fff);font-style:normal;line-height:1;flex:0 0 auto}
.calendar-event-title,.calendar-event-status,.calendar-event-assignment,.calendar-date-number,.week-day-heading,.calendar-title-controls h2{text-shadow:var(--app-calendar-text-shadow-value,none)}
.calendar-shadow-options{margin:.8rem 0 0;padding:.75rem;border:1px solid var(--app-border,#d1d5db);border-radius:8px;background:var(--app-surface-alt,#f8fafc);color:var(--app-text,#222)}
.calendar-shadow-options legend{padding:0 .35rem;color:var(--app-section-title,#2bff00);font-weight:850}
.calendar-shadow-toggle{display:flex;align-items:center;gap:.4rem;margin:.1rem 0 .6rem;font-weight:750}
.calendar-shadow-toggle input{width:auto;margin:0}
.calendar-shadow-number-grid{display:grid;grid-template-columns:repeat(3,minmax(150px,1fr));gap:.55rem}
.calendar-shadow-number-grid label{display:flex;align-items:center;gap:.35rem;margin:0;color:var(--app-text,#222)}
.calendar-shadow-number-grid input{box-sizing:border-box;width:5.25rem;margin:0;background:var(--app-surface,#fff);color:var(--app-text,#222);border-color:var(--app-border,#d1d5db)}
.calendar-day,.week-calendar-day{position:relative}
.calendar-add-date{position:absolute;top:.28rem;left:.28rem;z-index:8;display:flex;align-items:center;justify-content:center;width:1.65rem;height:1.65rem;padding:0;margin:0;border:2px solid #16a34a;border-radius:50%;background:#16a34a;color:#fff;text-decoration:none;font-size:1.18rem;font-weight:950;line-height:1;opacity:0;transform:scale(.82);transition:opacity .14s ease,transform .14s ease,box-shadow .14s ease}
.calendar-day:hover>.calendar-add-date,.calendar-day:focus-within>.calendar-add-date,.week-calendar-day:hover>.calendar-add-date,.week-calendar-day:focus-within>.calendar-add-date,.calendar-add-date:focus{opacity:1;transform:scale(1)}
.calendar-add-date:hover,.calendar-add-date:focus{background:#15803d;color:#fff;box-shadow:0 0 0 4px color-mix(in srgb,var(--app-glow,#0dff00) 42%,transparent);outline:none}
.compact-calendar .calendar-add-date{width:1.25rem;height:1.25rem;top:.12rem;left:.12rem;font-size:.86rem;border-width:1px}
.week-add-date{top:.55rem;left:.55rem}
.week-calendar-day .week-day-heading{padding-left:2.2rem}
.calendar-next-actions{display:flex;align-items:center;gap:.4rem}
.calendar-add-button{display:inline-flex;align-items:center;justify-content:center;gap:.28rem;text-decoration:none;background:#16a34a;color:#fff;border:1px solid #15803d;border-radius:6px;padding:.5rem .72rem;font-weight:800;white-space:nowrap}
.calendar-add-button:hover,.calendar-add-button:focus{background:#15803d;color:#fff;box-shadow:0 0 0 3px color-mix(in srgb,var(--app-glow,#0dff00) 38%,transparent);outline:none}
.settings-section{cursor:pointer}
.settings-section:not(.settings-collapsed) form,.settings-section:not(.settings-collapsed) input,.settings-section:not(.settings-collapsed) select,.settings-section:not(.settings-collapsed) textarea,.settings-section:not(.settings-collapsed) button,.settings-section:not(.settings-collapsed) label,.settings-section:not(.settings-collapsed) details,.settings-section:not(.settings-collapsed) summary,.settings-section:not(.settings-collapsed) fieldset{cursor:auto}
.settings-section.settings-collapsed{cursor:pointer}
.settings-section.settings-collapsed:hover{box-shadow:0 0 0 2px color-mix(in srgb,var(--app-glow,#0dff00) 24%,transparent)}
.add-task-panel .task-assignment-choices>div,.task-edit-panel .task-assignment-choices>div{background:var(--app-surface-alt,#f8fafc)!important;color:var(--app-text,#222)!important;border-color:var(--app-border,#d1d5db)!important}
.add-task-panel .assignment-choice,.task-edit-panel .assignment-choice,.add-task-panel .assignment-user-option,.task-edit-panel .assignment-user-option{background:var(--app-surface,#fff)!important;color:var(--app-text,#222)!important;border-color:var(--app-border,#d1d5db)!important}
.add-task-panel .assignment-choice small,.task-edit-panel .assignment-choice small{color:var(--app-muted-text,#475569)!important}
.add-task-panel .task-reminders-section,.task-edit-panel .task-reminders-section{background:var(--app-surface-alt,#f8fafc)!important;color:var(--app-text,#222)!important;border-color:var(--app-border,#d1d5db)!important}
.add-task-panel .task-reminders-section .notification-rule,.task-edit-panel .task-reminders-section .notification-rule{background:var(--app-surface,#fff)!important;color:var(--app-text,#222)!important;border-color:var(--app-border,#d1d5db)!important}
.add-task-panel .task-reminders-section select,.add-task-panel .task-reminders-section input,.task-edit-panel .task-reminders-section select,.task-edit-panel .task-reminders-section input{background:var(--app-surface-alt,#f8fafc)!important;color:var(--app-text,#222)!important;border-color:var(--app-border,#d1d5db)!important}
@media(max-width:900px){.calendar-next-actions{justify-content:stretch}.calendar-next-actions>*{flex:1}.calendar-shadow-number-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.calendar-add-date{transition:none}}


/* V025 Dashboard folder filtering, interface defaults, and Tasks background cleanup */
html,body{min-height:100%;background:var(--app-page-background,#f6f7f9)}
main.tasks-page-main{max-width:1400px;min-height:calc(100vh - 130px);background:var(--app-page-background,#f6f7f9)}
.tasks-page-main .tasks-layout,.tasks-page-main .events-pane{background:var(--app-page-background,#f6f7f9)}
.tasks-page-main::after{content:"";display:block;min-height:1px;background:var(--app-page-background,#f6f7f9)}
.calendar-toolbar{grid-template-columns:auto auto minmax(200px,auto) minmax(240px,1fr) auto auto}
.calendar-folder-filter{display:flex;flex-direction:column;gap:.18rem;margin:0;color:var(--app-text,#222);font-weight:800;min-width:200px}
.calendar-folder-filter select{box-sizing:border-box;width:100%;margin:0;background:var(--app-surface-alt,#f8fafc);color:var(--app-text,#222);border-color:var(--app-border,#d1d5db)}
.dashboard-calendar-loading{opacity:.62;pointer-events:none;transition:opacity .15s ease}
.calendar-event,.week-calendar .calendar-event,.compact-calendar .calendar-event{font-size:var(--app-calendar-event-font-size,12.5pt)}
.calendar-event small{font-size:.82em}
.calendar-event-assignment{font-size:.78em}
.interface-settings-form,.calendar-font-settings-form{display:grid;grid-template-columns:minmax(260px,1fr) auto;align-items:end;gap:.75rem;margin:.55rem 0;padding:.75rem;border:1px solid var(--app-border,#d1d5db);border-radius:8px;background:var(--app-surface-alt,#f8fafc)}
.interface-settings-form label,.calendar-font-settings-form label{margin:0}
.interface-save-actions{display:flex;align-items:center;justify-content:flex-end;gap:.5rem;flex-wrap:wrap}
.interface-save-all-button{background:#0ea5e9;color:#fff;border:1px solid #0284c7;border-radius:6px;font-weight:850}
.interface-save-all-button:hover,.interface-save-all-button:focus{background:#0284c7;box-shadow:0 0 0 3px color-mix(in srgb,var(--app-glow,#0dff00) 38%,transparent);outline:none}
@media(max-width:1100px){.calendar-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-title-controls{grid-column:1/-1}.calendar-folder-filter{min-width:0}.interface-settings-form,.calendar-font-settings-form{grid-template-columns:1fr}.interface-save-actions{justify-content:flex-start}}

/* V026 attachment processing, timezone controls, and complete dark-surface coverage */
html,body{min-height:100%;background-color:var(--app-page-background,#f6f7f9)!important}
body{min-height:100vh}
main.tasks-page-main{box-sizing:border-box;min-height:calc(100vh - 105px);margin-bottom:0;padding-bottom:1rem}
.tasks-page-main .tasks-layout{min-height:calc(100vh - 145px)}
.tasks-page-main .folder-pane,.tasks-page-main .events-pane{align-self:stretch}

.task-attachment-staged-item{grid-template-columns:auto 72px minmax(0,1fr)}
.task-attachment-item--selectable{grid-template-columns:auto 72px minmax(0,1fr)}
.task-attachment-select{display:flex;align-items:center;justify-content:center;margin:0;padding:.25rem}
.task-attachment-select input{width:1.15rem;height:1.15rem;margin:0}
.task-attachment-generated-thumbnail{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100%;background:linear-gradient(145deg,var(--app-surface-alt,#f8fafc),color-mix(in srgb,var(--app-surface-alt,#f8fafc) 72%,#2563eb 28%));color:var(--app-text,#222);text-align:center}
.task-attachment-generated-thumbnail b{font-size:1rem;line-height:1}.task-attachment-generated-thumbnail small{margin-top:.2rem;font-size:.65rem;color:var(--app-muted-text,#475569)}
.attachment-processing-controls{display:grid;grid-template-columns:auto auto repeat(4,minmax(145px,1fr));align-items:end;gap:.55rem;margin-top:.75rem;padding:.75rem;border:1px solid var(--app-border,#d1d5db);border-radius:9px;background:var(--app-surface-alt,#f8fafc);color:var(--app-text,#222)}
.attachment-processing-controls label{margin:0}.attachment-processing-controls input,.attachment-processing-controls select{box-sizing:border-box;width:100%;margin:.12rem 0 0;background:var(--app-surface,#fff);color:var(--app-text,#222);border-color:var(--app-border,#d1d5db)}
.attachment-processing-controls .checkbox-label{align-self:center;min-width:250px}.attachment-processing-controls .checkbox-label input{width:auto}
.attachment-remove-selected{background:#b91c1c;color:#fff;border:1px solid #7f1d1d;border-radius:6px;font-weight:850;white-space:nowrap}
.attachment-compress-selected{background:#2563eb;color:#fff;border:1px solid #1d4ed8;border-radius:6px;font-weight:850;white-space:nowrap}
.attachment-processing-message{grid-column:1/-1;min-height:1.2em;color:var(--app-muted-text,#475569);font-weight:750}.attachment-processing-message.ok{color:#16a34a}.attachment-processing-message.error{color:#ef4444}
.compressed-label{font-weight:850;color:#16a34a}
.sr-only{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}

.application-settings-form{display:grid;gap:.8rem}.application-settings-subsection{padding:.8rem;border:1px solid var(--app-border,#d1d5db);border-radius:9px;background:var(--app-surface-alt,#f8fafc);color:var(--app-text,#222)}
.application-settings-subsection h4{margin:.05rem 0 .65rem}.timezone-controls{display:flex;align-items:flex-end;gap:.8rem;flex-wrap:wrap}.timezone-controls label{margin:0}.timezone-controls select{min-width:190px}.timezone-help{flex:1 1 320px;margin:.2rem 0!important;color:var(--app-muted-text,#475569)!important}

/* User Management nested panels must follow the active color profile. */
.user-management-settings .user-management-grid>section,.user-management-settings .group-management,.user-management-settings .group-card,.user-management-settings .user-management-row,.user-management-settings .group-member-list,.user-management-settings .group-member,.user-management-settings .membership-checkboxes,.user-management-settings fieldset{background:var(--app-surface-alt,#f8fafc)!important;color:var(--app-text,#222)!important;border-color:var(--app-border,#d1d5db)!important}
.user-management-settings .group-member,.user-management-settings .rename-group-form,.user-management-settings .add-group-member-form,.user-management-settings .add-group-form{background:var(--app-surface,#fff)!important;color:var(--app-text,#222)!important;border-color:var(--app-border,#d1d5db)!important}
.user-management-settings input,.user-management-settings select{background:var(--app-surface,#fff)!important;color:var(--app-text,#222)!important;border-color:var(--app-border,#d1d5db)!important}
.user-management-settings .empty-state,.user-management-settings small{color:var(--app-muted-text,#475569)!important}

@media(max-width:1200px){.attachment-processing-controls{grid-template-columns:repeat(2,minmax(0,1fr))}.attachment-processing-controls .checkbox-label{min-width:0}}
@media(max-width:720px){.task-attachment-staged-item,.task-attachment-item{grid-template-columns:auto 58px minmax(0,1fr)}.attachment-processing-controls{grid-template-columns:1fr}.attachment-processing-message{grid-column:1}.timezone-controls{align-items:stretch;flex-direction:column}.timezone-controls select{width:100%}}

/* V028 Keep the Add Task interface inside the right Tasks column. */
.events-pane,.add-task-panel,.task-add-form{box-sizing:border-box;min-width:0;max-width:100%}
.task-add-form{grid-template-columns:minmax(0,1fr);overflow-wrap:anywhere}
.task-add-form>* ,
.task-add-form section,
.task-add-form fieldset,
.task-add-form div,
.task-add-form label{box-sizing:border-box;min-width:0;max-width:100%}
.add-task-panel input:not([type="checkbox"]):not([type="radio"]):not([type="color"]),
.add-task-panel select,
.add-task-panel textarea{box-sizing:border-box;min-width:0;max-width:100%;margin-left:0;margin-right:0}
.add-task-panel .task-assignment-choices{grid-template-columns:repeat(2,minmax(0,1fr))}
.add-task-panel .assignment-user-grid{min-width:0}
.add-task-panel .assignment-choice span{min-width:0;overflow-wrap:anywhere}
.add-task-panel .notification-rule{grid-template-columns:minmax(0,1.4fr) minmax(70px,.4fr) minmax(90px,.6fr) auto}
.add-task-panel .task-attachments-editor,
.add-task-panel .task-attachment-upload-box,
.add-task-panel .task-attachment-staging,
.add-task-panel .attachment-processing-controls{width:100%;min-width:0;max-width:100%}
.add-task-panel .task-attachment-picker{min-width:0;max-width:100%;flex-wrap:wrap}
.add-task-panel .task-attachment-picker input[type="file"]{box-sizing:border-box;width:100%;min-width:0;max-width:100%}
.add-task-panel .attachment-processing-controls{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}
.add-task-panel .attachment-processing-controls>*{box-sizing:border-box;min-width:0;max-width:100%}
.add-task-panel .attachment-processing-controls .checkbox-label{min-width:0;overflow-wrap:anywhere}
@media(max-width:1050px){
  .add-task-panel .task-assignment-choices{grid-template-columns:minmax(0,1fr)}
  .add-task-panel .notification-rule{grid-template-columns:minmax(0,1fr)}
}
.add-task-panel .attachment-processing-controls button{white-space:normal;overflow-wrap:anywhere}
@media(max-width:1200px){
  .tasks-layout{grid-template-columns:minmax(0,1fr)}
  .folder-pane{position:static}
  .folder-tree{max-height:40vh}
  .events-header{align-items:flex-start;flex-direction:column}
  .task-toolbar{width:100%;justify-content:flex-end;flex-wrap:wrap}
  .task-schedule-row{grid-template-columns:minmax(0,1fr)}
}


/* V029 Add Task submission controls */
.add-task-top-actions{display:flex;justify-content:flex-end;align-items:center;margin:0 0 .55rem}
.add-task-submit-button.add-task-dirty{animation:saveGlow 1.05s ease-in-out infinite}
@media(prefers-reduced-motion:reduce){
  .add-task-submit-button.add-task-dirty{animation:none!important;box-shadow:0 0 0 4px color-mix(in srgb,var(--app-glow,#0dff00) 62%,transparent)!important}
}


/* V030 attachment preview and compact metadata layout. */
.task-attachments-summary{overflow:hidden}
.task-attachment-list{grid-template-columns:minmax(0,1fr);gap:.45rem}
.task-attachment-item{box-sizing:border-box;grid-template-columns:88px minmax(0,1fr);width:100%;min-width:0;max-width:100%;align-items:center;padding:.45rem .55rem}
.task-attachment-item--selectable{grid-template-columns:auto 88px minmax(0,1fr)}
.task-attachment-preview{box-sizing:border-box;width:88px;height:66px;min-width:88px}
.task-attachment-preview a{display:flex;width:100%;height:100%;align-items:center;justify-content:center}
.task-attachment-preview img{width:100%;height:100%;object-fit:contain;background:var(--app-surface-alt,#f8fafc)}
.task-attachment-meta{min-width:0;line-height:1.25}
.task-attachment-meta small{display:block}
@media(max-width:720px){
  .task-attachment-item{grid-template-columns:64px minmax(0,1fr)}
  .task-attachment-item--selectable{grid-template-columns:auto 64px minmax(0,1fr)}
  .task-attachment-preview{width:64px;height:52px;min-width:64px}
}
