:root{--ink:#18232c;--muted:#60707b;--line:#d9e1e3;--paper:#fffefa;--canvas:#f2f4f1;--blue:#2465b1;--red:#c3464e;--green:#328461;--purple:#8057a2;--orange:#da7b35;--shadow:0 14px 42px rgba(27,42,50,.08)}
*{box-sizing:border-box}html{font-family:Inter,"Avenir Next",Avenir,"Segoe UI",sans-serif;color:var(--ink);background:var(--canvas)}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #3c87d8;outline-offset:2px}.brand{font-weight:800;letter-spacing:-.025em;text-decoration:none;color:var(--ink)}.loading,.board-error{padding:3rem;text-align:center;font-size:1.4rem}.board-error{color:var(--red)}

/* A kitchen display uses broad open lanes and large text rather than a wall of small controls. */
.display-page{background:#f4f5f0}.board-shell{height:100dvh;min-height:660px;padding:clamp(18px,2.2vw,42px);display:flex;flex-direction:column;gap:clamp(16px,1.7vw,28px);background:radial-gradient(circle at 75% 0%,#fffdf8 0,transparent 55%),#f4f5f0}.display-header{display:flex;justify-content:space-between;align-items:flex-start;gap:2rem;border-bottom:2px solid #dbe1df;padding:0 0 clamp(14px,1.4vw,24px)}.display-title .brand{font-size:clamp(15px,1vw,20px)}.display-title h1{font-family:"Trebuchet MS","Avenir Next",sans-serif;font-size:clamp(48px,4vw,82px);font-weight:800;letter-spacing:-.065em;line-height:1.05;margin:.15em 0 .1em}.display-title p{font-size:clamp(19px,1.4vw,27px);color:var(--muted);margin:0}.display-utilities{display:grid;grid-template-columns:auto auto;gap:2px 2.5rem;align-items:end;text-align:right;padding-top:.6rem}.display-date{font-size:clamp(16px,1.1vw,22px);font-weight:600;color:var(--muted)}.display-time{font-size:clamp(28px,2.5vw,50px);font-weight:750;grid-column:1}.display-weather{border-left:1px solid var(--line);padding-left:2.5rem;grid-column:2;grid-row:1/3;display:flex;flex-direction:column;align-items:flex-start;gap:.2rem;text-align:left;max-width:280px}.display-weather strong{font-size:clamp(36px,3vw,60px);line-height:1}.display-weather span{font-size:clamp(15px,1vw,19px);line-height:1.3;color:var(--muted)}
.board-columns{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(12px,1.25vw,24px);min-height:0;flex:1}.board-group{--marker:var(--ink);min-width:0;background:var(--paper);border:1px solid var(--line);border-top:5px solid var(--marker);border-radius:18px;padding:clamp(15px,1.4vw,26px);box-shadow:var(--shadow);display:flex;flex-direction:column;min-height:0}.marker-black{--marker:var(--ink)}.marker-blue{--marker:var(--blue)}.marker-red{--marker:var(--red)}.marker-green{--marker:var(--green)}.marker-purple{--marker:var(--purple)}.marker-orange{--marker:var(--orange)}.board-group-header{display:flex;justify-content:space-between;align-items:flex-start;gap:.7rem;margin-bottom:.5rem}.board-group-header h2{font-size:clamp(24px,1.7vw,34px);letter-spacing:-.04em;line-height:1.15;margin:0;color:var(--marker)}.board-group-header span{font-size:clamp(16px,1.1vw,22px);color:var(--muted);white-space:nowrap}.board-group ul{padding:0;margin:0;list-style:none;overflow:hidden}.board-task{display:grid;grid-template-columns:clamp(26px,1.6vw,34px) minmax(0,1fr) auto;align-items:start;gap:clamp(8px,.7vw,14px);padding:clamp(9px,1vw,18px) 0;border-bottom:1px solid #e5e9e8;min-height:clamp(54px,5.2vh,88px)}.board-task:last-child{border-bottom:0}.task-check{display:grid;place-items:center;border:2px solid #7c8990;border-radius:50%;width:clamp(26px,1.6vw,34px);height:clamp(26px,1.6vw,34px);font-size:22px;color:white;line-height:1}.board-task.complete .task-check{background:#30814f;border-color:#30814f}.board-task-content{min-width:0;display:flex;flex-direction:column;gap:.18rem}.board-task-title{font-size:clamp(21px,1.4vw,28px);font-weight:650;line-height:1.17;overflow-wrap:anywhere}.board-task.complete .board-task-title{text-decoration:line-through;color:#7d878a}.board-task-detail{font-size:clamp(15px,.95vw,19px);color:var(--muted);line-height:1.22;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.board-assignee{font-size:clamp(15px,.95vw,19px);font-weight:600;color:#536877;padding-top:.25em;max-width:7ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.board-empty{font-size:2rem;align-self:center;grid-column:1/-1;text-align:center;color:var(--muted)}.board-footer{display:flex;justify-content:space-between;align-items:flex-end;gap:1.5rem;background:#e9edf2;border-radius:15px;padding:clamp(14px,1.2vw,24px) clamp(18px,1.5vw,30px);min-height:120px}.reminders{display:flex;gap:1.4rem;align-items:flex-start;min-width:0}.reminders h2{font-size:clamp(21px,1.3vw,27px);color:#654d9a;margin:0;white-space:nowrap}.reminders ul{display:flex;flex-wrap:wrap;column-gap:2rem;row-gap:.45rem;margin:0;padding-left:1.2rem;font-size:clamp(17px,1.1vw,23px)}.reminders li{max-width:45ch}.reminders p{font-size:1.1rem;color:var(--muted);margin:0}.board-footer-side{display:flex;flex-direction:column;align-items:flex-end;gap:.4rem;white-space:nowrap;color:var(--muted);font-size:clamp(14px,.9vw,18px)}.board-footer-side a{font-weight:700;color:var(--blue);text-decoration:none}.stale:before{content:"Showing the last available board";position:fixed;top:0;left:50%;transform:translateX(-50%);background:#fff1cb;color:#5f4815;padding:.3rem 1rem;border-radius:0 0 8px 8px;z-index:5}

/* Administration keeps the list lightweight until a task is opened. */
.admin-page{background:#f5f7f5}.admin-shell{max-width:1180px;margin:auto;padding:clamp(18px,3vw,42px) clamp(16px,3vw,36px) 5rem}.admin-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.admin-header .brand{font-size:1rem}.admin-header h1{font-size:clamp(2.4rem,4.5vw,4.1rem);letter-spacing:-.065em;line-height:1.04;margin:.4rem 0 .25rem}.admin-header p{font-size:1.2rem;color:var(--muted);margin:0}.admin-header-actions{display:flex;gap:1.1rem;align-items:center;font-size:.9rem;font-weight:650;padding-top:.3rem}.admin-header-actions a{text-decoration:none;color:var(--blue)}.admin-header-actions form{margin:0}.admin-header-actions button{border:0;background:none;color:var(--muted);padding:.3rem}.admin-nav{display:flex;gap:.35rem;border-bottom:1px solid var(--line);margin-top:2.2rem;overflow-x:auto}.admin-nav button{border:0;background:transparent;padding:.9rem 1.2rem;font-size:1rem;font-weight:700;color:var(--muted);white-space:nowrap;border-bottom:3px solid transparent}.admin-nav button.active{color:var(--blue);border-color:var(--blue)}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:1rem;margin:2rem 0 1.3rem}.section-heading h2{font-size:2rem;letter-spacing:-.05em;margin:0}.section-heading p{color:var(--muted);margin:.3rem 0 0;line-height:1.4}.primary-button{border:0;border-radius:12px;padding:.8rem 1.1rem;background:var(--blue);color:#fff;font-weight:750;min-height:46px;white-space:nowrap}.primary-button:hover{background:#174f91}.filters{display:flex;gap:.8rem;margin-bottom:1rem}.filters label{min-width:190px;max-width:270px;font-size:.8rem;font-weight:700;color:var(--muted)}.filters select{margin-top:.3rem}.admin-page input,.admin-page select,.admin-page textarea,.login-page input{border:1px solid #cbd5d9;background:#fff;border-radius:10px;padding:.75rem .85rem;color:var(--ink);width:100%;min-height:46px}.admin-page textarea{resize:vertical;line-height:1.45}.task-list,.manage-list{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:0 9px 28px rgba(27,42,50,.035)}.admin-task{display:flex;align-items:center;gap:1rem;padding:.8rem 1rem;border-bottom:1px solid #e9eeef;min-height:78px}.admin-task:last-child{border-bottom:0}.completion{height:36px;width:36px;flex:0 0 36px;border:2px solid #74848d;border-radius:50%;background:#fff;color:#fff;font-size:1.25rem;font-weight:800;display:grid;place-items:center}.admin-task.complete .completion{background:#328461;border-color:#328461}.task-summary{flex:1;min-width:0;background:none;border:0;text-align:left;padding:.25rem 0;display:flex;flex-direction:column;gap:.2rem}.task-summary strong{font-size:1.1rem;font-weight:700;overflow-wrap:anywhere}.admin-task.complete .task-summary strong{text-decoration:line-through;color:#78868a}.task-summary span{font-size:.88rem;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.order-actions{display:flex;gap:.15rem}.order-actions button{width:42px;height:42px;border:0;background:#f2f6f8;border-radius:9px;color:#416178;font-size:1.2rem}.empty-state{padding:2rem;color:var(--muted)}.notice,.form-error{background:#e9f5e9;border:1px solid #b9daba;color:#245838;padding:.8rem 1rem;border-radius:10px}.form-error{background:#fff0ee;border-color:#eac3c0;color:#a03036}
.task-dialog{width:min(570px,100%);max-height:min(88dvh,900px);border:1px solid var(--line);border-radius:20px;padding:0;box-shadow:0 30px 80px rgba(19,33,42,.25)}.task-dialog::backdrop{background:rgba(22,33,42,.48)}.dialog-header{display:flex;justify-content:space-between;align-items:center;gap:.6rem;padding:1rem 1.3rem;border-bottom:1px solid var(--line);position:sticky;top:0;background:#fff;z-index:1}.dialog-header h2{font-size:1.2rem;letter-spacing:-.03em;margin:0}.dialog-header .primary-button{min-height:40px;padding:.55rem .9rem}.text-button{border:0;background:none;color:var(--blue);font-weight:700;min-height:42px;padding:.3rem}.dialog-fields{display:flex;flex-direction:column;gap:1.1rem;padding:1.3rem}.dialog-fields label,.simple-form label,.settings-form label{display:flex;flex-direction:column;gap:.45rem;font-weight:700;font-size:.93rem}.field-help{font-weight:400;color:var(--muted)}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}.danger-button{align-self:flex-start;background:none;border:0;color:#b23741;font-weight:700;padding:.7rem 0}.manage-section{max-width:850px}.simple-form,.settings-form{display:flex;gap:.75rem;align-items:end;background:#fff;padding:1.2rem;border:1px solid var(--line);border-radius:14px;margin-bottom:1rem}.simple-form label:first-child{flex:1}.simple-form label:nth-child(2){width:150px}.manage-row{display:flex;align-items:center;gap:.65rem;padding:.8rem 1rem;border-bottom:1px solid var(--line)}.manage-row:last-child{border:0}.manage-row input{flex:1}.manage-row select{width:130px}.manage-row button{border:0;background:#eaf1f8;color:#245e9e;border-radius:9px;padding:.6rem .75rem;min-height:44px;font-weight:700}.manage-row button.danger-text{background:transparent;color:#b23741}.group-dot{height:18px;width:18px;background:var(--marker);border-radius:50%;flex:none}.settings-form{flex-direction:column;align-items:stretch;max-width:600px}.settings-form .primary-button{align-self:flex-start}.login-page{min-height:100dvh;display:grid;place-items:center;padding:1rem}.login-panel{width:min(430px,100%);background:#fff;border:1px solid var(--line);border-radius:20px;padding:2rem;box-shadow:var(--shadow)}.login-panel h1{font-size:2.2rem;letter-spacing:-.05em;margin:2rem 0 .4rem}.login-panel p{color:var(--muted)}.login-panel form{display:flex;flex-direction:column;gap:.7rem;margin-top:1.5rem}.login-panel form label{font-weight:700}.login-panel form button{margin-top:.5rem}

@media(max-width:1000px) and (min-width:701px){.board-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.board-shell{height:auto;min-height:100dvh}.board-group ul{overflow:visible}.board-footer{margin-top:auto}}
@media(max-width:700px){.display-page{background:#f7f8f5}.board-shell{height:auto;min-height:100dvh;padding:16px 14px 28px;gap:18px}.display-header{display:block;padding-bottom:15px}.display-title .brand{font-size:14px}.display-title h1{font-size:clamp(36px,10vw,54px);margin:.35rem 0 .12rem}.display-title p{font-size:17px}.display-utilities{display:flex;align-items:baseline;gap:.8rem;text-align:left;margin-top:1rem;padding:0;flex-wrap:wrap}.display-date{font-size:15px}.display-time{font-size:22px}.display-weather{border:0;padding:0;display:flex;flex-direction:row;align-items:baseline;gap:.4rem;max-width:none}.display-weather strong{font-size:20px}.display-weather span{font-size:14px}.board-columns{display:flex;flex-direction:column;gap:12px}.board-group{padding:16px;border-radius:14px}.board-group-header h2{font-size:23px}.board-group-header span{font-size:16px}.board-group ul{overflow:visible}.board-task{grid-template-columns:28px minmax(0,1fr) auto;min-height:55px;padding:12px 0;gap:10px}.task-check{width:25px;height:25px;font-size:17px}.board-task-title{font-size:18px}.board-task-detail,.board-assignee{font-size:13px}.board-assignee{max-width:8ch}.board-footer{display:block;padding:16px;min-height:0}.reminders{display:block}.reminders h2{font-size:21px}.reminders ul{display:block;font-size:16px;margin-top:.65rem}.reminders li{margin:.25rem 0}.board-footer-side{align-items:flex-start;margin-top:.9rem;font-size:15px}.admin-shell{padding:16px 14px calc(100px + env(safe-area-inset-bottom))}.admin-header{align-items:flex-start}.admin-header .brand{font-size:14px}.admin-header h1{font-size:31px;margin:.35rem 0 .1rem}.admin-header p{font-size:15px}.admin-header-actions{font-size:13px;flex-direction:column;align-items:flex-end;gap:.3rem}.admin-header-actions button{font-size:13px}.admin-nav{margin-top:1.2rem;gap:0;justify-content:space-between}.admin-nav button{font-size:14px;padding:.75rem .55rem}.section-heading{align-items:center;margin:1.25rem 0 1rem}.section-heading h2{font-size:1.5rem}.section-heading p{display:none}.section-heading .primary-button{font-size:14px;padding:.6rem .7rem;min-height:44px}.filters{gap:.5rem}.filters label{min-width:0;flex:1;font-size:12px}.filters select{font-size:14px;padding:.5rem .35rem}.admin-task{gap:.35rem;padding:.6rem .55rem;min-height:68px}.completion{height:40px;width:40px;flex-basis:40px;font-size:17px}.task-summary strong{font-size:16px}.task-summary span{font-size:12px}.order-actions{gap:2px}.order-actions button{width:42px;height:44px;font-size:18px}.task-dialog{position:fixed;top:auto;bottom:0;left:0;right:0;margin:0;width:100%;max-width:100%;max-height:92dvh;border-radius:20px 20px 0 0;border-bottom:0}.dialog-header{padding:.75rem 1rem}.dialog-fields{padding:1rem 1rem calc(1rem + env(safe-area-inset-bottom))}.field-row{grid-template-columns:1fr 1fr}.simple-form{display:grid;grid-template-columns:1fr auto;gap:.7rem}.simple-form label:first-child{grid-column:1/-1}.simple-form label:nth-child(2){width:auto}.manage-row{flex-wrap:wrap}.manage-row input{min-width:150px}.manage-row select{width:100px}.manage-row button{font-size:13px;padding:.45rem .55rem}.settings-form{display:flex}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* Display themes live on the board shell. The unthemed display keeps its original styles. */
.theme-fall-2026{--ink:#392b27;--muted:#665a51;--line:#dfcdb5;--paper:#fffaf0;--shadow:0 12px 32px rgba(70,39,22,.1);color:var(--ink);background:radial-gradient(ellipse at 83% 0%,rgba(238,186,101,.32),transparent 34%),radial-gradient(ellipse at 4% 95%,rgba(142,75,48,.11),transparent 34%),repeating-linear-gradient(0deg,rgba(105,74,44,.018) 0,rgba(105,74,44,.018) 1px,transparent 1px,transparent 6px),#f6eddb}
.theme-fall-2026 .display-header{position:relative;border-bottom-color:#b98b66;padding-bottom:clamp(18px,1.6vw,30px)}
.theme-fall-2026 .display-header:before{content:"";position:absolute;right:23%;top:-30px;width:min(31vw,470px);height:210px;background:url('/assets/fall-2026-bough.svg') right top/contain no-repeat;opacity:.75;pointer-events:none}
.theme-fall-2026 .display-title,.theme-fall-2026 .display-utilities{position:relative;z-index:1}
.theme-fall-2026 .display-title .brand{color:#925a37;text-transform:uppercase;letter-spacing:.2em;font-size:clamp(14px,.9vw,18px)}
.theme-fall-2026 .display-title h1{font-family:Georgia,"Iowan Old Style",serif;font-weight:700;letter-spacing:-.055em;color:#4d3028;text-shadow:0 2px 0 rgba(255,255,255,.58)}
.theme-fall-2026 .display-title p{color:#765b48}
.theme-fall-2026 .display-date{text-transform:uppercase;letter-spacing:.11em;font-size:clamp(14px,.9vw,18px);color:#805b41}
.theme-fall-2026 .display-time{font-family:Georgia,"Iowan Old Style",serif;color:#4b3027}
.theme-fall-2026 .display-weather{border-left-color:#c89c73}
.theme-fall-2026 .display-weather strong{color:#774828}
.theme-fall-2026 .board-group{border-color:#e7d7bd;border-top:6px solid var(--marker);background:linear-gradient(155deg,#fffdf8,#fff8eb);box-shadow:0 13px 30px rgba(83,50,25,.1),inset 0 0 0 1px rgba(255,255,255,.75);border-radius:12px}
.theme-fall-2026 .board-group-header{border-bottom:1px solid #eadbc6;padding-bottom:.7rem;margin-bottom:0}
.theme-fall-2026 .board-group-header h2{font-family:Georgia,"Iowan Old Style",serif;letter-spacing:-.035em;color:var(--marker)}
.theme-fall-2026 .board-group-header span{color:#856e5b}
.theme-fall-2026 .board-task{border-bottom-color:#eee0cc}
.theme-fall-2026 .board-task-title{color:#332a27}
.theme-fall-2026 .board-task.complete .board-task-title{color:#766f65}
.theme-fall-2026 .board-task-detail,.theme-fall-2026 .board-assignee{color:#665a51}
.theme-fall-2026 .board-footer{background:linear-gradient(100deg,#ead5ad,#f3e2c5 60%,#ead1ac);border:1px solid #d7b98d;box-shadow:0 8px 24px rgba(83,50,25,.08)}
.theme-fall-2026 .reminders h2{font-family:Georgia,"Iowan Old Style",serif;color:#70482d}
.theme-fall-2026 .board-footer-side{color:#604d3c}
.theme-fall-2026 .board-footer-side a{color:#6c402d;text-decoration:underline;text-underline-offset:3px}
@media(max-width:700px){.theme-fall-2026 .display-header:before{width:190px;height:100px;right:0;top:-12px;opacity:.35}.theme-fall-2026 .display-weather{border:0}.theme-fall-2026 .board-group{border-radius:12px}}

/* Bulk controls are revealed only while selecting tasks. */
.task-heading-actions{display:flex;align-items:center;gap:.6rem}.secondary-button{border:1px solid #b7c8d3;border-radius:12px;background:#fff;color:#245e9e;padding:.7rem 1rem;min-height:46px;font-weight:750;white-space:nowrap}
.bulk-toolbar{background:#edf4f8;border:1px solid #c9dbe5;border-radius:14px;padding:.8rem 1rem;margin:-.2rem 0 1rem;display:flex;flex-direction:column;gap:.75rem}
.bulk-selection,.bulk-actions{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem}.bulk-selection strong{margin-right:.4rem}.bulk-toolbar button{min-height:40px;padding:.45rem .7rem;border:1px solid #bbcfdb;background:#fff;border-radius:9px;color:#265a7e;font-weight:700}.bulk-toolbar button:disabled{opacity:.45;cursor:default}.bulk-actions{border-top:1px solid #cbdde7;padding-top:.75rem}.bulk-actions label{display:flex;align-items:center;gap:.4rem;font-size:.85rem;font-weight:700;color:#465c69}.bulk-actions select,.bulk-actions input{width:150px;min-height:40px;padding:.4rem .55rem}.bulk-toolbar .bulk-delete{margin-left:auto;color:#aa3037;border-color:#dfb5b9}.admin-task.selected{background:#f2f8fc}.task-select{flex:0 0 36px;display:grid;place-items:center}.admin-page .task-select input{width:24px;height:24px;min-height:24px;accent-color:#2465b1;cursor:pointer}
@media(max-width:700px){.task-heading-actions{gap:.35rem}.task-heading-actions .secondary-button{font-size:14px;padding:.6rem .65rem;min-height:44px}.bulk-toolbar{padding:.7rem}.bulk-selection{gap:.3rem}.bulk-selection strong{width:100%}.bulk-selection button{font-size:12px}.bulk-actions{align-items:stretch}.bulk-actions>button{flex:1 1 auto}.bulk-actions label{width:100%;justify-content:space-between}.bulk-actions select,.bulk-actions input{width:min(65%,230px)}.bulk-toolbar .bulk-delete{width:100%;margin-left:0}.task-select{flex-basis:40px}}

/* Assignment controls and custom category colors. */
.board-group-header h2,.theme-fall-2026 .board-group-header h2{color:var(--marker-ink,var(--marker))}
.board-assignee{max-width:14ch;white-space:normal;overflow:visible;text-overflow:clip;line-height:1.25;text-align:right;overflow-wrap:anywhere}
.people-choices{border:1px solid var(--line);border-radius:10px;padding:.75rem;display:flex;flex-wrap:wrap;gap:.5rem 1rem;min-width:0}
.people-choices legend{font-weight:700;font-size:.93rem;padding:0 .2rem}
.people-choices label{display:inline-flex;align-items:center;flex-direction:row;gap:.35rem;font-weight:600;white-space:nowrap}
.admin-page .people-choices input{width:20px;height:20px;min-height:20px;accent-color:var(--blue)}
.color-input{display:flex;align-items:center;gap:.5rem;min-width:145px}
.admin-page .color-input input[type=color]{width:48px;min-width:48px;height:46px;padding:3px;cursor:pointer}
.admin-page .color-input input[name=color]{width:92px;min-width:92px;font-family:ui-monospace,SFMono-Regular,monospace;text-transform:uppercase;padding:.6rem}
.manage-row .color-input{flex:none}.person-count{font-size:.85rem;color:var(--muted);white-space:nowrap}
.bulk-actions .people-choices{width:100%;background:#fff}
@media(max-width:700px){.admin-nav{justify-content:flex-start}.admin-nav button{font-size:13px;padding:.75rem .58rem}.manage-row .color-input{order:3}.board-assignee{max-width:12ch;font-size:12px}}

.board-columns{grid-template-columns:repeat(var(--board-column-count,4),minmax(0,1fr))}
.board-task,.board-task:last-child{grid-template-columns:clamp(26px,1.6vw,34px) minmax(0,1fr)}
.board-assignee{display:block;max-width:none;text-align:left;padding:0;line-height:1.25;font-size:clamp(14px,.88vw,18px)}
@media(max-width:700px){.board-task{grid-template-columns:28px minmax(0,1fr)}.board-assignee{font-size:13px}}

/* Date metadata stays secondary; urgent dates also have a shape cue. */
.task-due{font-size:.85rem;color:var(--muted);line-height:1.3;display:block}
.task-due.overdue{color:#a32930;font-weight:750}
.task-due.today{color:#86500f;font-weight:750}
.board-task.overdue .task-check,.admin-task.overdue .completion{border-color:#a32930;border-radius:5px}
.board-task.today .task-check,.admin-task.today .completion{border-color:#a56a24;border-width:3px}
.board-task .task-due{font-size:clamp(14px,.9vw,18px)}
.board-task.complete .task-due{color:var(--muted);font-weight:400}
.date-help{margin:-.5rem 0 0;font-size:.8rem}
.settings-form [hidden]{display:none}
.dialog-fields input[type=date]{min-width:0;max-width:100%}
@media(max-width:700px){.board-task .task-due{font-size:13px}.task-summary .task-due{font-size:12px}.dialog-fields .field-row{grid-template-columns:1fr}}
@media(min-width:701px) and (max-width:1000px){.board-columns{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* Short kitchen screens need more vertical room for task content. */
@media(min-width:1001px) and (max-height:850px){
  .board-shell{padding:22px;gap:16px}
  .display-header,.theme-fall-2026 .display-header{padding-bottom:16px}
  .display-title .brand,.theme-fall-2026 .display-title .brand{font-size:14px}
  .display-title h1{font-size:clamp(40px,3vw,58px)}
  .display-title p{font-size:18px}
  .display-time{font-size:34px}.display-weather strong{font-size:40px}
  .board-group{padding:18px}.board-group-header h2{font-size:26px}
  .board-task{padding:10px 0}.board-task-title{font-size:23px}
  .board-footer{min-height:84px;padding:14px 20px}
}

/* Keep modal captions and controls aligned, including optional field hints. */
.dialog-header{display:grid;grid-template-columns:1fr auto 1fr}
.dialog-header .text-button{justify-self:start}.dialog-header .primary-button{justify-self:end}
.dialog-fields .field-label{display:flex;align-items:baseline;flex-wrap:wrap;gap:.45rem}
.dialog-fields .field-row select,.dialog-fields .field-row input{height:48px}
.dialog-fields .people-choices{margin:0}
