:root{font-family:DM Sans,system-ui,sans-serif;color:#172d29;background:#edf3f0;color-scheme:light}*{box-sizing:border-box}body{margin:0}header{background:#102f28;color:#fff;padding:1rem max(1rem,calc((100vw - 68rem)/2));display:flex;align-items:center;justify-content:space-between;gap:1rem}.brand,.actions,nav,.task-heading,.overview-heading{display:flex;align-items:center;gap:.75rem}.brand-mark{display:grid;place-items:center;width:2.6rem;height:2.6rem;border-radius:.8rem;background:#c8eed9;color:#10382c;font-weight:800}header strong{letter-spacing:.07em}.profile-chip,.account-menu summary{display:flex;align-items:center;gap:.6rem;border:1px solid #ffffff38;background:#ffffff0f}.profile-chip{border-radius:100px;padding:.25rem .8rem .25rem .3rem}.profile-chip strong{font-size:.875rem;letter-spacing:0;overflow-wrap:anywhere}.profile-avatar{display:grid;place-items:center;flex:none;width:2.55rem;height:2.55rem;border:2px solid #ffffff52;border-radius:50%;overflow:hidden;color:#17392c;background:#d0f4df;font-weight:800}.profile-avatar img{width:100%;height:100%;object-fit:cover}.account-menu{position:relative}.account-menu summary{margin:0;padding:.65rem .85rem;border-radius:.65rem;list-style:none;font-weight:650}.account-menu summary::-webkit-details-marker{display:none}.account-menu[open] summary{background:#fff2}.account-panel{position:absolute;z-index:5;inset-inline-end:0;top:calc(100% + .55rem);width:min(19rem,calc(100vw - 2rem));display:grid;gap:.65rem;padding:1rem;border:1px solid #d8e5de;border-radius:.85rem;background:#fff;color:#172d29;box-shadow:0 12px 32px #102f2838}.account-panel input{width:100%}.account-panel p{margin:0;font-size:.85rem}.account-panel p:empty{display:none}.account-panel .sign-out{background:#963d45;border-color:#963d45}@media(max-width:620px){header{flex-wrap:wrap;position:relative}header .actions{width:100%;min-width:0;flex-wrap:nowrap;justify-content:flex-end}header .actions>:is(button,select,.profile-chip){min-height:2.75rem}.profile-chip{min-width:0;flex:0 1 auto;padding-inline-end:.5rem}.profile-chip strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profile-avatar{width:2rem;height:2rem}.account-menu{position:static;flex:none;order:-1;margin-inline-end:auto}.account-label{display:none}.account-menu summary{display:grid;place-items:center;width:2.75rem;height:2.75rem;padding:0}.account-panel{inset-inline:1rem;top:calc(100% + .35rem);width:auto;max-width:none;max-height:65dvh;overflow-y:auto}.account-panel input[type=file]{display:block;max-width:100%}}small{display:block;color:#c5ddd5;margin-top:.1rem}main{max-width:70rem;margin:auto;padding:1.25rem 1rem 3rem}nav{margin-bottom:1.25rem}nav button[aria-pressed=false]{background:transparent;color:#274b40;border-color:transparent}.overview{border-radius:1.4rem;color:#fff;background:radial-gradient(ellipse at 95% 0%,#347c65,transparent 69%),#153c32;padding:clamp(1.25rem,4vw,2.5rem);box-shadow:0 12px 30px #153c3220}.overview-heading,.task-heading{justify-content:space-between;flex-wrap:wrap}.overview h1{font-size:clamp(1.9rem,5vw,3rem);margin:0;letter-spacing:-.045em}.overview p{color:#d3e8df;margin:.45rem 0 0}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem;margin:1.5rem 0 0}.metrics div{background:#ffffff14;padding:.9rem;border:1px solid #ffffff38;border-radius:.85rem}.metrics dt{font-size:.875rem;color:#e1f1e9}.metrics dd{font-size:1.7rem;font-weight:750;margin:.25rem 0 0;font-variant-numeric:tabular-nums}section{background:#fff;border:1px solid #d8e5de;padding:1.35rem;border-radius:1rem;margin:1rem 0}h1,h2{margin:0 0 .75rem}h2{font-size:1.2rem}.task-heading h2{margin:0;overflow-wrap:anywhere}.task-card{--accent: #607a71;--tint: #f1f6f3;padding:clamp(1rem,3vw,1.55rem);border-inline-start:4px solid var(--accent);background:linear-gradient(125deg,var(--tint),white 70%);box-shadow:0 6px 22px #153c3210}.task-in_progress{--accent: #3c76aa;--tint: #f2f8fe}.task-card h2{font-size:clamp(1.15rem,3vw,1.55rem);letter-spacing:-.025em}.task-card .status:before{content:"";display:inline-block;width:.45rem;height:.45rem;margin-inline-end:.4rem;border-radius:50%;background:currentColor;vertical-align:.1em}.task-facts{display:flex;flex-wrap:wrap;gap:.55rem;margin:1rem 0}.task-facts div{min-width:7rem;max-width:100%;padding:.55rem .8rem;border-radius:.65rem;background:#fff;border:1px solid #dce8e1}.task-facts dt{font-size:.76rem;color:#426157}.task-facts dd{margin:.15rem 0 0;font-weight:700;overflow-wrap:anywhere}.task-description{white-space:pre-wrap;overflow-wrap:anywhere;margin:0 0 1rem}.card-disclosure{margin-top:.5rem}.card-disclosure summary{display:flex;align-items:center;gap:.55rem;margin:0;padding:.45rem .65rem;border-radius:.65rem;background:#edf5f0;color:#214a3c;font-weight:700;list-style:none}.card-disclosure summary::-webkit-details-marker{display:none}.card-disclosure summary:after{content:"›";margin-inline-start:auto;font-size:1.3rem;line-height:1}.card-disclosure[open] summary:after{transform:rotate(90deg)}.detail-icon,.activity-count{display:inline-grid;place-items:center;min-width:1.5rem;height:1.5rem;border-radius:.45rem;background:#d9ece1}.activity-count{font-size:.75rem;padding-inline:.3rem}.activity-list{list-style:none;padding-inline-start:.8rem}.activity-list li{border-inline-start:2px solid #bfd9ca;padding-inline-start:.7rem}.activity-list time{margin-inline-start:.55rem;color:#426157;font-size:.85rem}.activity-list p{margin:.25rem 0 .5rem;overflow-wrap:anywhere}.status{border-radius:2rem;padding:.25rem .65rem;font-size:.85rem;font-weight:700;background:#e8ecf8;color:#404b75}.status.in_progress{background:#e0effc;color:#1b4d78}.status.review{background:#fff1cd;color:#6c4900}.status.completed{background:#eee3ff;color:#593190}.empty{text-align:center;padding:2rem}.empty p{margin:0;color:#426157}form,label{display:grid;gap:.5rem}form{gap:1rem}label{font-weight:650}input,select,textarea,button{font:inherit;border-radius:.6rem;padding:.65rem .8rem;border:1px solid #9cb2a8;min-width:0}textarea{min-height:6rem}button{background:#17654f;color:#fff;border-color:#17654f;cursor:pointer;width:fit-content;font-weight:650}button.primary{background:#d0f4df;color:#163d32;border-color:transparent}button:disabled{opacity:.55;cursor:wait}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #569b84;outline-offset:2px}nav,.actions{flex-wrap:wrap}summary{cursor:pointer;margin-top:.75rem}.error{color:#9d2828}li+li{margin-top:.5rem}.photo-panel{margin-top:.85rem}.photos{display:grid;grid-template-columns:repeat(auto-fill,minmax(8rem,1fr));gap:.65rem}.photos:not(:empty){margin-bottom:1rem}.photos img{display:block;width:100%;aspect-ratio:4 / 3;object-fit:cover;border-radius:.6rem}.calendar{padding:0;overflow:hidden;box-shadow:0 12px 32px #173e3014}.calendar-header,.calendar-toolbar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.85rem;padding:1rem clamp(.85rem,3vw,1.6rem)}.calendar-header{background:linear-gradient(120deg,#153c32,#285d4d);color:#fff;padding-block:1.35rem}.calendar-header h1,.calendar-toolbar h2{margin:0}.calendar-toolbar h2{text-transform:capitalize}.view-switch{display:flex;background:#102f28;border-radius:.75rem;padding:.25rem}.view-switch button{background:transparent;border-color:transparent}.view-switch button[aria-pressed=true]{background:#d0f4df;color:#163d32}.calendar-toolbar button,.calendar-date{color:#215b48;background:#f0f7f3;border-color:#d8e5de}.calendar-grid{display:grid;gap:1px;background:#dee9e3;border-top:1px solid #dee9e3}.calendar-grid.month,.calendar-grid.week{grid-template-columns:repeat(7,minmax(0,1fr))}.weekday{background:#eef5f1;color:#426157;text-align:center;padding:.65rem .15rem;font-size:.8rem;font-weight:700}.calendar-day{background:#fff;min-height:6rem;min-width:0;padding:clamp(.2rem,1vw,.7rem)}.calendar-day.outside{background:#f4f7f5}.calendar-date{border-color:transparent;padding:.2rem .43rem;font-size:.875rem}.calendar-date[aria-current=date]{background:#17654f;color:#fff}.calendar-task{display:grid;gap:.1rem;margin-top:.3rem;padding:.35rem .45rem;border-radius:.4rem;overflow-wrap:anywhere;font-size:.78rem}.calendar-task span{font-weight:500}.calendar-grid.day .calendar-day{padding:1rem}.assignment-composer{padding:0;overflow:hidden;box-shadow:0 16px 36px #173e3017}.composer-header{display:flex;align-items:center;gap:.85rem;padding:1.2rem clamp(1rem,4vw,2rem);background:linear-gradient(125deg,#e0f4ea,#f3f9f6);border-bottom:1px solid #d8e5de}.composer-header h2{margin:0;font-size:1.35rem;letter-spacing:-.025em}.composer-icon{display:grid;place-items:center;width:2.35rem;height:2.35rem;border-radius:.7rem;background:#17654f;color:#fff;font-size:1.4rem}.assignment-composer form{gap:1.35rem;padding:clamp(1rem,4vw,2rem)}.composer-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;min-width:0;margin:0;padding:.85rem 0 0;border:0}.composer-fields legend{width:100%;padding:0 0 .55rem;border-bottom:1px solid #d8e5de;color:#284b40;font-weight:750}.composer-fields label{font-size:.9rem}.composer-fields input,.composer-fields select,.composer-fields textarea{width:100%;background:#f8fbf9;border-color:#adc3b8;font-size:1rem}.composer-fields textarea{resize:vertical}.full-width{grid-column:1 / -1}.recipient-options{display:flex;flex-wrap:wrap;gap:.55rem}.recipient-options label{display:flex;align-items:center;padding:.65rem .85rem;border:1px solid #b9cec3;border-radius:.65rem;cursor:pointer}.recipient-options label:has(:checked){background:#e4f5eb;border-color:#599680;color:#174e3e}.recipient-options input{width:auto;margin:0;accent-color:#17654f}.recipient-note{margin:0;font-size:.875rem;color:#426157}.instruction-editor{display:grid;gap:.55rem}.instruction-tools{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem}.instruction-tools label{display:flex;align-items:center;gap:.5rem}.instruction-tools select{width:auto;padding-block:.45rem}.dictate{background:#e4f5eb;color:#174e3e;border-color:#adc3b8}.composer-footer{display:flex;justify-content:flex-end;padding-top:.85rem;border-top:1px solid #d8e5de}.composer-footer button{padding-inline:1.2rem}.member-directory{padding:clamp(1rem,4vw,2rem);display:grid;gap:.75rem}.member-row{border:1px solid var(--line);background:var(--field);border-radius:.85rem;padding:1rem;min-width:0}.member-heading{display:flex;align-items:center;justify-content:space-between;gap:.65rem;margin-bottom:.55rem}.member-heading strong{overflow-wrap:anywhere}.assignment-composer .member-row form{padding:0;grid-template-columns:repeat(2,minmax(0,1fr)) auto;align-items:end;gap:.65rem}@media(max-width:580px){.assignment-composer .member-row form{grid-template-columns:repeat(2,minmax(0,1fr))}.member-row form button{grid-column:1 / -1;width:100%}}@media(max-width:580px){.composer-fields{grid-template-columns:1fr}.composer-footer button{width:100%}.calendar-grid.week{grid-template-columns:1fr}.calendar-grid.week .calendar-day{min-height:3.5rem;padding:.65rem}.calendar-grid.month .calendar-task{font-size:.65rem;padding:.2rem}.calendar-grid.month .calendar-task span{display:none}}@media(max-width:580px){.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}header .actions{gap:.35rem}header button{padding-inline:.5rem;font-size:.875rem}.brand{gap:.5rem}header strong{font-size:.875rem}}.theme-select{width:auto;background:#ffffff12;color:#fff;border-color:#ffffff50;color-scheme:dark}.theme-select option{background:#173c32;color:#fff}:root{--page: #edf3f0;--surface: #fff;--field: #f8fbf9;--ink: #172d29;--muted: #426157;--line: #d8e5de;--soft: #edf5f0}:root[data-theme=dark]{color-scheme:dark}@media(prefers-color-scheme:dark){:root[data-theme=system]{color-scheme:dark}}:root[data-theme=dark],:root[data-theme=system]{--dark-page: #101917;--dark-surface: #1b2824}:root{background:var(--page);color:var(--ink)}section,.account-panel,.calendar-day,.task-facts div{background:var(--surface);border-color:var(--line)}.account-panel{color:var(--ink)}.task-facts dt,.activity-list time,.recipient-note,.empty p,.weekday{color:var(--muted)}.composer-fields input,.composer-fields select,.composer-fields textarea{background:var(--field);color:var(--ink);border-color:var(--line)}.composer-fields legend,.composer-footer,.calendar-grid{border-color:var(--line)}.card-disclosure summary,.weekday,.calendar-day.outside{background:var(--soft)}.task-card{background:linear-gradient(125deg,var(--tint),var(--surface) 70%)}@media(max-width:580px){.theme-select{padding:.5rem;font-size:.875rem}}:root[data-theme=dark]{--page: var(--dark-page);--surface: var(--dark-surface);--field: #131f1b;--ink: #ebf4ef;--muted: #b4c9bf;--line: #40574d;--soft: #253a32}:root[data-theme=dark] .composer-fields legend,:root[data-theme=dark] nav button[aria-pressed=false],:root[data-theme=dark] .card-disclosure summary{color:#dceee5}:root[data-theme=dark] .composer-header{background:linear-gradient(125deg,#23483b,#1c3029);border-color:var(--line)}:root[data-theme=dark] .detail-icon,:root[data-theme=dark] .activity-count{background:#36574a}:root[data-theme=dark] .calendar-grid{background:var(--line)}:root[data-theme=dark] .calendar-toolbar button,:root[data-theme=dark] .calendar-date{background:#253a32;color:#e1f2e9;border-color:var(--line)}:root[data-theme=dark] .calendar-date[aria-current=date]{background:#17654f}:root[data-theme=dark] .task-card{--tint: #24332e}:root[data-theme=dark] .task-in_progress{--tint: #203641}:root[data-theme=dark] .task-review{--tint: #382f22}:root[data-theme=dark] .error{color:#ffa9a5}@media(prefers-color-scheme:dark){:root[data-theme=system]{--page: var(--dark-page);--surface: var(--dark-surface);--field: #131f1b;--ink: #ebf4ef;--muted: #b4c9bf;--line: #40574d;--soft: #253a32}:root[data-theme=system] .composer-fields legend,:root[data-theme=system] nav button[aria-pressed=false],:root[data-theme=system] .card-disclosure summary{color:#dceee5}:root[data-theme=system] .composer-header{background:linear-gradient(125deg,#23483b,#1c3029);border-color:var(--line)}:root[data-theme=system] .detail-icon,:root[data-theme=system] .activity-count{background:#36574a}:root[data-theme=system] .calendar-grid{background:var(--line)}:root[data-theme=system] .calendar-toolbar button,:root[data-theme=system] .calendar-date{background:#253a32;color:#e1f2e9;border-color:var(--line)}:root[data-theme=system] .calendar-date[aria-current=date]{background:#17654f}:root[data-theme=system] .task-card{--tint: #24332e}:root[data-theme=system] .task-in_progress{--tint: #203641}:root[data-theme=system] .task-review{--tint: #382f22}:root[data-theme=system] .task-completed{--tint: #34284e}:root[data-theme=system] .error{color:#ffa9a5}}:root{--page: #f0f2f9;--surface: #fff;--field: #f8f9fe;--ink: #202544;--muted: #505b7e;--line: #dce1f0;--soft: #edf0fa;--dark-page: #111428;--dark-surface: #1b2038}header{background:#1e2349}header small{color:#c7cdea}.brand-mark{display:inline-flex;align-items:center;justify-content:center;flex:none;width:auto;height:auto;padding-inline-end:.16em;border-radius:0;background:transparent;color:#f5f6ff;font-family:Archivo Black,Arial Black,system-ui,sans-serif;font-size:clamp(1.95rem,5vw,2.65rem);font-weight:950;letter-spacing:-.16em;line-height:1}.brand strong{white-space:nowrap}.brand-works{color:#dce3ff}.theme-select option{background:#272d54}header .actions>button,.theme-select{background:#ffffff10;border-color:#ffffff40}.overview,.calendar-header{background:radial-gradient(ellipse at 94% 0%,#505da6,transparent 68%),#242a55}.overview p,.metrics dt{color:#e0e5ff}button{background:#404c93;border-color:#404c93}button.primary,.view-switch button[aria-pressed=true]{background:#dfe5ff;color:#252e61}nav button[aria-pressed=false],.composer-fields legend,.card-disclosure summary{color:#394572}.view-switch{background:#1b2043}.calendar-toolbar button,.calendar-date,.dictate{background:#eef1fe;color:#364378;border-color:#d8dff5}.calendar-date[aria-current=date],.composer-icon{background:#404c93;color:#fff}.composer-header{background:linear-gradient(125deg,#e4e8ff,#f7f8ff);border-color:var(--line)}.profile-avatar,.detail-icon,.activity-count{background:#dfe5ff;color:#293466}.recipient-options label{border-color:var(--line)}.recipient-options label:has(:checked){background:#e9edff;border-color:#848fc6;color:#2c376c}.recipient-options input{accent-color:#404c93}.task-card{--accent: #7884bc;--tint: #eef0fc;box-shadow:0 6px 22px #242a5514}.task-in_progress{--accent: #4b77b6;--tint: #edf5ff}.task-review{--accent: #a87619;--tint: #fff9ec}.task-completed{--accent: #8c66d4;--tint: #f3edff}.activity-list li{border-color:#c6cfee}.calendar-grid{background:var(--line)}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline-color:#8291df}.dictate[aria-pressed=true]{background:#8c322f;color:#fff;border-color:#8c322f}:root[data-theme=dark]{--dark-page: #111428;--dark-surface: #1b2038;--field: #151a30;--ink: #eef0ff;--muted: #bfc8e8;--line: #3d456b;--soft: #282f51}:root[data-theme=dark] .composer-fields legend,:root[data-theme=dark] nav button[aria-pressed=false],:root[data-theme=dark] .card-disclosure summary{color:#e0e5ff}:root[data-theme=dark] .composer-header{background:linear-gradient(125deg,#303966,#212842)}:root[data-theme=dark] .detail-icon,:root[data-theme=dark] .activity-count{background:#414c7e;color:#edf0ff}:root[data-theme=dark] .calendar-toolbar button,:root[data-theme=dark] .calendar-date{background:#282f51;color:#e0e5ff;border-color:var(--line)}:root[data-theme=dark] .calendar-date[aria-current=date]{background:#404c93}:root[data-theme=dark] .task-card{--tint: #272e50}:root[data-theme=dark] .task-in_progress{--tint: #202f4b}:root[data-theme=dark] .task-review{--tint: #382f2d}:root[data-theme=dark] .task-completed{--tint: #34284e}@media(prefers-color-scheme:dark){:root[data-theme=system]{--dark-page: #111428;--dark-surface: #1b2038;--field: #151a30;--ink: #eef0ff;--muted: #bfc8e8;--line: #3d456b;--soft: #282f51}:root[data-theme=system] .composer-fields legend,:root[data-theme=system] nav button[aria-pressed=false],:root[data-theme=system] .card-disclosure summary{color:#e0e5ff}:root[data-theme=system] .composer-header{background:linear-gradient(125deg,#303966,#212842)}:root[data-theme=system] .detail-icon,:root[data-theme=system] .activity-count{background:#414c7e;color:#edf0ff}:root[data-theme=system] .calendar-toolbar button,:root[data-theme=system] .calendar-date{background:#282f51;color:#e0e5ff;border-color:var(--line)}:root[data-theme=system] .calendar-date[aria-current=date]{background:#404c93}:root[data-theme=system] .task-card{--tint: #272e50}:root[data-theme=system] .task-in_progress{--tint: #202f4b}:root[data-theme=system] .task-review{--tint: #382f2d}:root[data-theme=system] .task-completed{--tint: #34284e}}
