/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial}}}@layer theme{:host,:root{--font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,::backdrop,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.block{display:block}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.capitalize{text-transform:capitalize}}:root{--paper:#fcfefd;--control-padding:12px 16px;--cell-padding:16px;--font-sans:"Nunito Sans","Segoe UI",system-ui,sans-serif;--font-display:"Pacifico",cursive;--ink:#203a48;--muted:#617884;--green:#087f70;--border:#deeeea;--border-width:1px;--radius-sm:7px;--radius-md:12px;--radius-lg:19px;--text-action:#08734f;--text-danger:#b42323}*{box-sizing:border-box}html{scrollbar-gutter:stable}body{background:var(--paper);color:var(--ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;margin:0;font-size:15px}button,input,select,textarea{font:inherit}a,button,input,select,summary,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer;border-radius:var(--radius-sm);background:var(--green);color:#fff;padding:var(--control-padding);border:1px solid #0000;font-weight:500;transition:all .2s}button:hover{background:#066757}button:disabled{opacity:.55;cursor:wait}a:focus-visible,button:focus-visible,summary:focus-visible{outline-offset:3px;outline:3px solid #93b194}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}h1{font-family:var(--font-sans);font-size:42px;font-weight:650;line-height:1.2}h2{font-size:28px}h2,h3{font-weight:500}h3{font-size:15px}p{line-height:1.65}.app-shell{min-height:100vh;display:flex}.sidebar{border-right:1px solid var(--border);background:#ecfbf6;flex-direction:column;width:245px;padding:39px 23px 25px;display:flex;position:fixed;inset:0 auto 0 0}.brand{align-items:center;gap:7px;padding:0 7px;font-size:34px;font-weight:650;display:flex}.brand svg{color:#14b895;width:32px;height:32px}.brand>span{align-self:flex-start;margin:8px 0 0 -2px;font-size:15px}.home-label{border-bottom:1px solid #d1ece2;align-items:center;gap:10px;padding:29px 5px 26px;font-size:15px;display:flex}.home-label small{color:var(--muted);margin-top:5px;font-size:15px;display:block}.home-avatar{border-radius:var(--radius-sm);background:#d4f5e9;border:1px solid #bcead9;place-items:center;width:34px;height:36px;font-size:24px;display:grid}.sidebar nav{flex-direction:column;gap:8px;margin-top:25px;display:flex}.sidebar nav button{color:var(--ink);text-align:left;background:0 0;align-items:center;gap:13px;padding:13px 15px;font-size:15px;display:flex}.sidebar nav button.active{color:var(--text-action);background:#bff3df;font-weight:600}.sidebar nav button:hover{background:#ddf7ed}.nav-count{border-radius:var(--radius-sm);background:#f6fffb;margin-left:auto;padding:2px 6px;font-size:15px}.sidebar-bottom{margin-top:auto;padding:30px 10px 0}.main{width:calc(100% - 245px);max-width:1550px;margin-left:245px;padding:0 54px}.topbar{border-bottom:1px solid var(--border);height:92px;color:var(--muted);justify-content:flex-end}.topbar,.topbar>span:last-child{align-items:center;font-size:15px;display:flex}.topbar>span:last-child{gap:18px}.profile{width:32px;height:32px;color:var(--muted);background:#d9f7ed;border:3px solid #fff;border-radius:50%;place-items:center;font-size:15px;display:grid}.page-heading{justify-content:space-between;align-items:center;gap:20px;margin:45px 0 31px;display:flex}.eyebrow{color:var(--muted);font-size:15px;font-weight:600}.page-heading h1{margin-top:13px}.page-heading p{color:var(--muted);margin-top:13px;font-size:15px}.page-heading>button{white-space:nowrap;margin-top:28px;font-size:15px}.today-overview{border-radius:var(--radius-sm);background:#e0faf0;border:1px solid #bdebd8;align-items:center;gap:30px;min-height:208px;padding:30px 32px;display:flex;position:relative;overflow:hidden}.today-stat{border-right:1px solid #b4e4d0;min-width:165px;padding-right:30px}.today-stat>div{align-items:baseline;gap:8px;margin-top:8px;display:flex}.today-stat strong{font-family:var(--font-sans);font-size:64px;font-weight:500;line-height:1.1}.today-stat>div>span{color:var(--muted);font-size:18px}.today-stat p{color:var(--muted);margin-top:10px;font-size:15px}.overview-copy{z-index:1;max-width:390px}.badge{border-radius:var(--radius-sm);text-transform:capitalize;color:#245985;background:#e3f1ff;padding:4px 7px;font-size:15px;line-height:1;display:inline-block}.badge.soft{background:#c0f2da;padding:6px 8px;font-size:15px}.overview-copy h2{font-family:var(--font-sans);margin:13px 0 9px;font-size:28px}.overview-copy p{max-width:335px;line-height:1.7}.done-note,.overview-copy p{color:var(--muted);font-size:15px}.done-note{margin-top:16px;display:block}.plant{align-self:end;width:130px;min-width:95px;margin-left:auto;transform:translateY(10px)}.plant svg{width:100%;height:155px}.section-heading{justify-content:space-between;align-items:center;gap:15px;margin:33px 0 20px;display:flex}.section-heading h2{font-family:var(--font-sans);font-size:28px}.section-heading>span{color:var(--muted);font-size:15px}.group-heading{justify-content:space-between;align-items:center;gap:10px;margin:20px 0 5px;display:flex}.group-heading h3{color:var(--muted);font-size:15px}.group-heading h2{font-size:28px}.group-heading h2 span,.group-heading h3 span{border-radius:var(--radius-sm);background:#e8f2ef;margin-left:5px;padding:2px 5px;font-size:15px}.group-heading>span{color:var(--muted);font-size:15px}.routine-section{margin-bottom:22px}.routine{border-bottom:1px solid var(--border);align-items:center;gap:17px;min-height:110px;padding:22px 4px 22px 0;display:flex}.level-line{border-radius:var(--radius-sm);background:#58a6e7;flex-shrink:0;align-self:flex-start;width:3px;height:34px}.level-line.medium{background:#7375db}.level-line.full{background:#b275d0}.level-line.maintenance{background:#7c899d}.routine-main{flex:1;min-width:0}.routine-heading{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.routine-heading h3{font-size:15px;line-height:1.4}.meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:0;margin-top:8px;font-size:15px;line-height:1.6;display:flex}.meta>span+span:before{content:"·";color:var(--muted);padding:0 8px}.meta .late{color:#ae642e}.badge.medium{color:#494aa0;background:#eaeaff}.badge.full{color:#82459b;background:#f3e7fa}.badge.maintenance{color:var(--muted);background:#e9edf3}details{color:var(--muted);margin-top:9px;font-size:15px}summary{cursor:pointer;list-style:none}summary:before{content:"＋";margin-right:4px}details[open] summary:before{content:"−"}details p{max-width:560px;color:var(--muted);white-space:pre-line;padding:10px 0 0}.routine-time{justify-content:center;align-items:baseline;gap:4px;min-width:71px;display:flex}.routine-time strong{font-family:var(--font-sans);font-size:26px;font-weight:500}.routine-time span{color:var(--muted);font-size:15px}.routine-actions{flex-direction:row;flex-shrink:0;align-items:center;gap:9px;display:flex}.routine-actions button{white-space:nowrap;min-height:38px}.routine-actions .secondary{background:#fff;border-color:#a8cfc3}.routine-actions .secondary:hover{background:#e4faf0;border-color:#6faf9b}.small{padding:var(--control-padding);font-size:15px}.complete{color:#fff;background:var(--green);border:1px solid var(--green)}.complete:hover{background:#066757;border-color:#066757}.complete span{margin-right:5px}.text-button{border:0;padding:0;font-size:15px}.text-button,.text-button:hover{color:var(--text-action);background:0 0}.text-button:hover{text-decoration:underline}.upcoming-heading{margin-top:35px}.footnote{text-align:center;margin:32px 0;line-height:1.8}.footnote,footer{color:var(--muted);font-size:15px}footer{border-top:1px solid var(--border);justify-content:space-between;margin-top:52px;padding:22px 0 28px;font-weight:600;display:flex}footer span{font-size:15px;font-weight:500}.toolbar{align-items:center;gap:13px;margin-bottom:32px;display:flex}.toolbar .search{flex:1;max-width:430px}.toolbar>span{color:var(--muted);margin-left:auto;font-size:15px}input,select,textarea{border-radius:var(--radius-sm);color:var(--ink);padding:var(--control-padding);background:#fff;border:1px solid #cfe8e0;outline:none;width:100%}input:focus,select:focus,textarea:focus{border-color:#10a487;box-shadow:0 0 0 3px #d4f8e5}input::placeholder,textarea::placeholder{color:var(--muted)}select{text-transform:capitalize;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23203a48' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 16px center;background-repeat:no-repeat;background-size:16px;padding-right:44px}select[name=destination_area]{text-transform:none}label{color:var(--ink);font-size:15px;display:block}label input,label select,label textarea{margin-top:7px;display:block}label span{color:var(--muted)}.area-row{border-bottom:1px solid var(--border);align-items:center;gap:22px;padding:27px 0;display:flex}.area-number{color:var(--muted);font-family:var(--font-sans);font-size:31px}.area-row p{color:var(--muted);margin-top:6px;font-size:15px}.area-actions{align-items:center;gap:18px;margin-left:auto;display:flex}.secondary{color:var(--text-action);background:#fff;border:1px solid #a8cfc3}.secondary:hover{background:#e4faf0}.insights-intro{text-align:center;border-radius:var(--radius-lg);border:var(--border-width) solid var(--border);background:#f3faf7;padding:20px 34px}.metrics{text-align:center;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr);gap:20px;margin:14px 0 0;display:grid}.metrics>div+div{border-left:0;padding-left:0}.metrics strong{font-family:var(--font-sans);font-size:36px;font-weight:500;line-height:1.4;display:block}.metrics span{margin-top:7px;display:block}.insights-intro p,.metrics span{color:var(--muted);font-size:15px}.insights-intro .insights-caption{text-align:center;margin:14px 0 0}.breakdowns{grid-template-columns:1fr 1fr;gap:50px;display:grid}.breakdowns .section-heading>span{font-size:15px}.bar-row{margin:24px 0}.bar-row>div:first-child{justify-content:space-between;margin-bottom:12px;font-size:15px;display:flex}.bar-row strong{font-weight:500}.bar-row small{color:var(--muted);font-size:15px}.bar-track{background:#e8f2ef;height:7px;overflow:hidden}.bar,.bar-track{border-radius:var(--radius-sm)}.bar{background:#58a6e7;height:100%}.bar.medium{background:#7375db}.bar.full{background:#b275d0}.bar.maintenance{background:#7c899d}.area-bar{background:#35bca4}.capitalize{text-transform:capitalize}.insight{border-radius:var(--radius-sm);border:1px solid #cce9df;gap:22px;margin-top:25px;padding:24px;display:flex}.insight>span{color:var(--muted);font-size:35px}.insight p{color:var(--muted);max-width:650px;margin:7px 0 12px;font-size:15px}.alert,.notice{border-radius:var(--radius-sm);color:#8b4933;background:#fff0e5;justify-content:space-between;align-items:center;gap:15px;margin-top:15px;padding:14px 18px;font-size:15px;line-height:1.5;display:flex}.alert{color:#a32121;background:#ffe3e3;border:1px solid #efa6a6}.notice{color:var(--text-action);background:#d4f8e5}.alert button,.notice button{color:inherit;background:0 0;padding:3px 8px}.empty{text-align:center;color:var(--ink);border-radius:var(--radius-sm);border:1px dashed #cce9df;padding:45px 20px}.empty p{font-size:15px;font-family:var(--font-sans);margin-top:8px}.empty p,.muted{color:var(--muted)}.welcome{max-width:530px;padding:70px 0}.welcome h1{margin:15px 0}.welcome p{color:var(--muted);margin-bottom:28px}.welcome form{max-width:380px}.welcome form button{margin-top:16px}.welcome form small{color:var(--muted);margin-top:14px;display:block}dialog{border-radius:var(--radius-md);color:var(--ink);background:var(--paper);border:1px solid #c8e9dc;width:480px;max-width:calc(100vw - 28px);max-height:90dvh;margin:auto;padding:28px;box-shadow:0 25px 100px #23342133}dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#25312266}.modal-heading{justify-content:space-between;align-items:center;margin-bottom:22px;display:flex}.modal-heading h2{font-family:var(--font-sans);font-size:28px}.close{color:var(--ink);background:0 0;padding:4px 9px;font-size:25px}.close:hover{background:#dcf7e9}dialog label{margin:15px 0}dialog .completion-routine-title{font-family:var(--font-sans);color:var(--ink);font-size:19px;font-weight:600}dialog .completion-routine-title span{color:var(--muted);white-space:nowrap;font-size:14px;font-weight:400}dialog p{color:var(--muted);font-size:15px}.form-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.form-grid label{margin-bottom:0}.form-help{margin:12px 0;line-height:1.7;font-size:15px!important}.modal-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:24px;display:flex}.danger{color:#fff;background:#c53030;border-color:#c53030}.danger:hover{background:#a32222;border-color:#a32222}.edit-outline{color:var(--text-action);background:#effbf4;border-color:#a9d9bd}.edit-outline:hover{background:#dcf5e5;border-color:#76bd94}.danger-outline{color:var(--text-danger);background:#fff1f1;border-color:#edb4b4}.danger-outline:hover{background:#ffe0e0;border-color:#db8181}.modal-actions.edit-actions{justify-content:flex-start}.delete-action{margin-left:auto}.loading{font-family:var(--font-sans);padding:60px}.sr-only{clip:rect(0,0,0,0);width:1px;height:1px;position:absolute;overflow:hidden}@media (min-width:1600px){.main{margin-left:max(245px,50vw - 405px);margin-right:auto}}@media (max-width:1150px){.sidebar{width:215px;padding-left:18px;padding-right:18px}.main{width:calc(100% - 215px);margin-left:215px;padding:0 32px}.plant{display:none}.today-overview{gap:25px;padding:27px}.page-heading h1{font-size:35px}.metrics strong{font-size:36px}.breakdowns{gap:28px}}@media (max-width:760px){.sidebar{border-right:0;border-top:1px solid var(--border);z-index:10;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ecfbf6f5;width:100%;height:73px;padding:0;inset:auto 0 0}.brand,.home-label,.sidebar-bottom{display:none}.sidebar nav{height:100%;padding:5px 5px max(5px,env(safe-area-inset-bottom));grid-template-columns:repeat(5,1fr);gap:0;margin:0;display:grid}.sidebar nav button{border-radius:var(--radius-sm);flex-direction:column;justify-content:center;gap:4px;padding:8px 3px;font-size:15px;position:relative}.nav-count{padding:1px 4px;font-size:15px;position:absolute;top:3px;right:20%}.main{width:100%;margin:0;padding:0 22px 80px}.topbar{height:68px;font-size:15px}.topbar>span:last-child{gap:10px;font-size:15px}.page-heading{flex-wrap:wrap;gap:0;margin:29px 0 25px}.page-heading h1{font-size:33px}.page-heading p{max-width:300px;font-size:15px;line-height:1.7}.page-heading>button{padding:var(--control-padding);margin-top:19px;font-size:15px}.today-overview{gap:18px;min-height:180px;padding:23px 20px}.today-stat{min-width:103px;padding-right:17px}.today-stat .eyebrow{font-size:15px}.today-stat strong{font-size:50px}.today-stat p,.today-stat>div>span{font-size:15px}.today-stat p{max-width:100px}.overview-copy h2{margin-top:0;font-size:28px;line-height:1.25}.overview-copy p{font-size:15px;line-height:1.65}.badge.soft{display:none}.done-note{font-size:15px}.section-heading>span{text-align:right;max-width:135px;font-size:15px}.section-heading h2{font-size:28px}.group-heading>span{text-align:right;max-width:170px;font-size:15px}.routine{flex-wrap:wrap;gap:12px;padding:20px 0;position:relative}.routine-main{flex:1;min-width:190px}.routine-heading{gap:6px}.routine-heading h3{font-size:15px}.routine-time{min-width:48px}.routine-time strong{font-size:24px}.routine-time span{font-size:15px}.routine-actions{flex-direction:row;flex-basis:100%;justify-content:flex-start;gap:18px;margin-left:15px}.routine-actions .small{padding:var(--control-padding);font-size:15px}.badge,.meta{font-size:15px}.toolbar{flex-wrap:wrap;gap:8px}.toolbar input,.toolbar select{font-size:15px}.toolbar .search{min-width:175px;max-width:100%}.toolbar>span{font-size:15px}.area-row{flex-wrap:wrap;gap:14px}.area-number{font-size:25px}.area-row h2{font-size:28px}.area-row p{font-size:15px}.area-actions{gap:12px}.insights-intro{padding:16px 20px}.metrics{gap:8px;margin:12px 0 0}.metrics>div+div{padding-left:0}.metrics strong{font-size:28px}.metrics span{line-height:1.5}.insights-intro .eyebrow,.insights-intro p,.metrics span{font-size:15px}.breakdowns{grid-template-columns:1fr;gap:0}.insight{gap:15px;padding:20px}.footnote,.insight p{font-size:15px}.footnote{margin:26px 0}footer{margin-top:34px}dialog{padding:23px}.modal-heading h2{font-size:28px}}@media (prefers-reduced-motion:reduce){*{transition:none!important}}@media (max-width:420px){.topbar{gap:12px}.topbar>span:first-child{max-width:48%;line-height:1.5}.topbar>span:last-child{flex-shrink:0}.today-overview{flex-direction:column;align-items:stretch;gap:20px}.today-stat{border-bottom:1px solid #b4e4d0;border-right:0;grid-template-columns:1fr 1fr;gap:6px 16px;padding:0 0 16px;display:grid}.today-stat .eyebrow{grid-column:1/-1}.today-stat>div{margin:0}.today-stat p{align-self:center;margin:0}.overview-copy,.today-stat p{max-width:none}.overview-copy p{font-size:15px}.done-note{margin-top:12px}}.today-heading{justify-content:flex-end;margin:24px 0}.today-heading>button{margin-top:0}.brand,.modal-heading h2,.overview-copy h2,.section-heading h2,h1,h2,h3{font-family:var(--font-display)}.brand,h1{font-weight:700}.action-spacer{visibility:hidden;pointer-events:none}.routine-register table,.summary-table{border-collapse:collapse;text-align:left;width:100%;font-size:15px}.routine-register{margin-top:6px}.routine-register td,.routine-register th,.summary-table td,.summary-table th{padding:var(--cell-padding);border-bottom:1px solid var(--border);vertical-align:middle}.routine-register thead,.summary-table thead{color:var(--ink);background:#ecfbf6}.routine-register th,.summary-table th{font-weight:600}.register-title{min-width:150px;position:relative}.register-marker{background:#58a6e7;border-radius:3px;width:3px;height:26px;position:absolute;top:18px;left:0}.register-marker.medium{background:#7375db}.register-marker.full{background:#b275d0}.register-marker.maintenance{background:#7c899d}.register-details{width:30%;min-width:170px;color:var(--muted);white-space:pre-line;line-height:1.5}.register-due{display:inline-block}.register-due small{font-size:inherit;margin-top:4px;display:block}.register-actions{text-align:right}.summary-table tfoot{background:#e0faf0;font-weight:600}.summary-scroll{overflow-x:auto}.summary-table{min-width:580px}.summary-table td:last-child,.summary-table th:last-child{text-align:right}.summary-scroll:focus-visible{outline:2px solid var(--green);outline-offset:3px}@media (max-width:1100px){.routine-register table,.routine-register tbody{display:block}.routine-register thead{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.routine-register tr{border-bottom:1px solid var(--border);grid-template-columns:1fr 1fr;gap:16px;padding:20px 0;display:grid}.routine-register td,.routine-register th{border:0;min-width:0;padding:0;display:block}.register-actions,.register-details,.routine-register .register-title{grid-column:1/-1}.routine-register .register-title{padding:0}.register-marker{height:23px;top:0}.register-details{width:auto}.routine-register td[data-label]:before{content:attr(data-label);color:var(--muted);margin-bottom:5px;font-size:15px;display:block}.register-actions{text-align:left}}.due-status{border-radius:var(--radius-sm);padding:5px 9px;font-size:15px;line-height:1.5;display:inline-block}.due-status.overdue{color:#8a3c00;background:#ffdfbd}.due-status.slightly-overdue{color:#6d5700;background:#fff2a8}.due-status.on-track{color:#256437;background:#d8f3de}.due-status.unscheduled{color:var(--muted);background:#edf0f2}.meta .due-status{margin-left:10px}.meta .due-status:before{content:none}.register-action-buttons{justify-content:flex-end;gap:9px;display:flex}@media (max-width:1100px){.register-action-buttons{justify-content:flex-start}}.area-breakdown{width:100%}.routine-toolbar{flex-wrap:nowrap;align-items:stretch;gap:13px}.routine-toolbar .search{flex:1;min-width:0}.routine-toolbar .search input{height:100%;margin-top:0}.routine-toolbar>button{flex-shrink:0}.routine-modal{width:640px}.routine-modal form{gap:20px;display:grid}.routine-modal .modal-actions,.routine-modal .modal-heading,.routine-modal label{margin:0}.routine-timing{grid-template-columns:minmax(0,2fr) repeat(2,minmax(0,1fr));align-items:end}.minutes-label-mobile{display:none}.minutes-label-desktop,.minutes-label-mobile{color:inherit}.routine-repeat{border:0;grid-column:span 2;min-width:0;margin:0;padding:0}.routine-repeat legend{padding:0;font-size:15px}.routine-timing label{min-width:0}.routine-description{color:var(--muted);white-space:pre-line;margin-top:10px;font-weight:400;line-height:1.5}.routine-register .register-title{width:35%}.routine{border:1px solid var(--border);border-radius:var(--radius-md);background:#fff;margin-bottom:16px;padding:20px}@media (max-width:1100px){.routine-register .register-title{width:auto}}.routine-identity{grid-template-columns:minmax(0,2fr) minmax(0,1fr);align-items:end}.routine-identity label{min-width:0}.main.today-content{padding-top:39px}.today-content>.section-heading:first-of-type{margin-top:0}@media (max-width:1100px){.routine-register tbody td,.routine-register tbody th{text-align:left}.routine-register tbody{gap:16px;display:grid}.routine-register tbody tr{border:3px solid var(--border);border-radius:var(--radius-md);background:#fff;grid-template-columns:repeat(2,minmax(0,1fr));row-gap:6px;padding:14px 16px}.routine-register tbody .register-title{margin-bottom:10px}.routine-register tbody .register-actions{margin-top:10px}.routine-register td[data-label]{grid-template-columns:max-content minmax(0,1fr);align-items:baseline;column-gap:8px;display:grid}.routine-register td[data-label]:before{margin-bottom:0}.routine-register td[data-label=Duration]{grid-area:2/1}.routine-register td[data-label=Frequency]{grid-area:3/1}.routine-register td[data-label=Last\ done]{grid-area:2/2}.routine-register td[data-label=Next\ due]{grid-area:3/2}.routine-register .register-due{justify-self:start}}@media (max-width:760px){.main.today-content{padding-top:24px}}.today-content .routine-heading h3{font-size:19px}.routine-section>.group-heading h2,.section-heading h2{color:var(--ink);font-size:28px;font-weight:700;line-height:1.3}.routine-register thead th,.summary-table thead th{font-weight:400}.register-routine-name,.today-content .routine-heading h3{color:var(--ink);font-size:19px;font-weight:600;line-height:1.3}.today-content .routine-description{font-size:14px}.routine-register .routine-description,.today-content .routine-description{margin-top:4px}.today-content .routine{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px 20px;min-height:0;padding:14px 16px 44px;display:grid;position:relative}.today-content .routine-main{grid-area:1/1;min-width:0}.today-content .routine-time{white-space:nowrap;color:var(--ink);grid-area:1/2;font-size:19px;font-weight:500}.today-content .routine-actions{grid-area:1/2;gap:9px;margin:0}.today-content .card-due-tag{align-items:center;gap:10px;margin:0;display:flex;position:absolute;bottom:10px;left:16px}.today-content .card-edit-link{color:var(--muted);text-underline-offset:3px;background:0 0;border:0;border-radius:0;padding:0;font-size:13px;line-height:1.4;text-decoration:underline}.today-content .card-edit-link:hover{color:var(--ink);background:0 0}.routine-register .register-due,.today-content .card-due-tag .due-status{color:#08736b;background:#d9f5ef;padding:2px 7px;font-size:13px;line-height:1.4}.today-content .complete{color:#08736b;background:#d9f5ef;border-color:#a8ddd3}.today-content .complete:hover{background:#c5eee5;border-color:#7fc9bb}@media (max-width:760px){.today-content .routine{grid-template-columns:minmax(0,1fr);gap:12px;padding-bottom:14px}.today-content .routine-main{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:0 12px;padding-bottom:0;display:grid;position:relative}.today-content .routine-heading{grid-area:1/1;min-width:0;margin-top:1px}.today-content .routine-description{grid-column:1/-1}.today-content .routine .card-due-tag{flex-wrap:wrap;grid-area:1/2;justify-content:flex-end;margin-bottom:0;position:static}.today-content .routine-actions{grid-area:2/1/auto/-1}.today-content .routine-actions .complete{justify-content:center;width:100%}}.icon-button{justify-content:center;align-items:center;gap:10px;display:inline-flex}.complete.icon-button span{margin-right:0}.today-content .routine-duration{color:var(--muted);white-space:nowrap;font-size:15px;font-weight:400}.today-totals{gap:16px;margin-bottom:16px;display:flex}.today-total{border:1px solid var(--border);border-radius:var(--radius-md);background:#ecfbf6;flex-wrap:wrap;flex-basis:0;align-items:baseline;gap:6px 10px;min-width:180px;padding:8px 16px;display:flex}.total-label{font-family:var(--font-sans);color:var(--ink);font-size:16px;font-weight:600;line-height:1.3}@media (max-width:600px){.today-totals{flex-direction:column}.today-total{min-width:0}}.routine-register .register-due.overdue,.routine-register .register-due.slightly-overdue,.today-content .card-due-tag .due-status.overdue,.today-content .card-due-tag .due-status.slightly-overdue{color:#92400e;background:#fef3c7}.routine-modal .last-done-field{grid-area:2/1;justify-self:start;width:100%}.routine-timing{row-gap:20px}@media (max-width:760px){.routine-identity{grid-template-columns:minmax(0,3fr) minmax(0,2fr)}.routine-timing{grid-template-columns:repeat(3,minmax(0,1fr));container-type:inline-size}.routine-repeat>.form-grid{grid-template-columns:minmax(0,1fr) minmax(0,calc(40cqw - 6.4px))}.minutes-label-desktop{display:none}.minutes-label-mobile{display:inline}.routine-modal .last-done-field{grid-column:1/-1;width:calc(50% - 8px)}}.routine-disclosure{margin:0}.routine-disclosure summary{align-items:center;gap:10px;display:flex}.routine-disclosure summary:before{content:none}.routine-disclosure summary::marker{content:none}.routine-disclosure summary::-webkit-details-marker{display:none}.routine-disclosure .disclosure-arrow{flex-shrink:0}.routine-disclosure .routine-description{padding:0}.routine-disclosure summary:before,.routine-disclosure[open] summary:before{content:none;display:none}.routine-disclosure[open] .disclosure-arrow{transform:none}.routine-register th.register-title{vertical-align:top}*,:after,:before{transition:all .2s}@media (prefers-reduced-motion:reduce){*,:after,:before{transition:none!important}}.routine-register .routine-description,.routine-register tbody td,.routine-register tbody th{color:var(--ink);font-size:14px}.routine-register .register-routine-name{color:var(--ink);font-size:19px}.routine-register .register-due{font-size:14px}.routine-disclosure .disclosure-toggle{text-align:left;background:0 0;border:0;border-radius:0;align-items:center;gap:10px;padding:0;font-weight:600;display:flex}.routine-details-panel{opacity:0;grid-template-rows:0fr;transition:grid-template-rows .2s,opacity .2s;display:grid}.routine-details-panel.is-open{opacity:1;grid-template-rows:1fr}.routine-details-panel>div{min-height:0;overflow:hidden}@media (min-width:1101px){.routine-register tbody td,.routine-register tbody th{vertical-align:top}.routine-register th.register-title{padding-top:27px}.routine-register td[data-label]{padding-top:29px}.routine-register td[data-label=Next\ due]{padding-top:27px}}.routine-register .routine-description{color:var(--muted)}.routine-register td,.routine-register th:not(:first-child){text-align:center}.routine-register .register-action-buttons{justify-content:center}.area-register tbody .register-title{font-size:19px}.area-register tbody .register-title,.brand,.register-routine-name,h1,h2,h3{font-family:var(--font-display);font-synthesis:none}.area-register tbody .register-title,.routine-register .register-routine-name,.today-content .routine-heading h3{font-family:var(--font-sans)}.routine-register .register-due.overdue,.today-content .card-due-tag .due-status.overdue{color:#9a4310;background:#ffdfbd}.due-status.very-overdue,.routine-register .register-due.very-overdue,.today-content .card-due-tag .due-status.very-overdue{color:#a32121;background:#ffe3e3}.main.today-content{padding-bottom:96px}@media (max-width:760px){.main.today-content{padding-bottom:144px}}.today-totals .total-due{background:#fff3cc;border-color:#fae8b1}.due-sun{width:40px;height:26px;display:block}.total-empty-completed{flex-basis:100%;align-items:baseline;gap:10px;display:flex}.today-content .routine.is-completed{background:#ecfbf6;padding-left:64px}.card-completed-check{color:#08736b;font-size:36px;line-height:1;position:absolute;top:50%;left:18px;transform:translateY(-50%)}.today-content .is-completed .card-due-tag{left:64px}@media (max-width:760px){.today-content .routine.is-completed{padding-left:16px}.today-content .is-completed .routine-main{padding-left:48px}.today-content .is-completed .card-due-tag{left:auto}.today-content .card-completed-check{top:14px;transform:none}}.today-totals .total-completed{background:#ecfbf6}.today-content .routine,.today-totals .today-total{border-width:3px}.total-empty-completed{flex-basis:auto;justify-content:flex-end;margin-left:auto}.today-total.total-completed,.today-total.total-due{align-content:center;align-items:center;min-height:0;padding-left:64px;position:relative}.completed-total-smile,.completion-celebration,.due-sun{font-size:26px;line-height:1;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.completed-total-smile,.completion-celebration svg{color:#08736b;width:40px;height:26px;display:block;overflow:visible}.completed-total-smile{height:25px}.brand svg{overflow:visible;transform:translate(-14px,-11px)}.total-empty-completed,.total-pair{white-space:nowrap;flex-wrap:nowrap;flex-shrink:0;align-items:baseline;gap:10px;display:inline-flex}.today-totals{flex-wrap:wrap}.today-totals .today-total{min-width:min-content}.today-totals .routine-duration{font-size:13px}.today-totals .total-pair{position:relative;top:1px}.today-totals.totals-combined{--progress-blend:min(5%,var(--completed-share),calc(100% - var(--completed-share)));border-radius:var(--radius-md);background:linear-gradient(to right,#ffe5a3 calc(var(--completed-share) - var(--progress-blend)),#fff3cc calc(var(--completed-share) + var(--progress-blend))) padding-box,linear-gradient(to right,#efc76c calc(var(--completed-share) - var(--progress-blend)),#fae8b1 calc(var(--completed-share) + var(--progress-blend))) border-box;border:3px solid #0000;flex-direction:row;align-items:center;gap:8px 12px;padding:8px 0}.today-totals.totals-combined .today-total{background:0 0;border:0;border-radius:0;flex:0 auto;min-width:0;max-width:100%;padding-top:0;padding-bottom:0}.today-totals.totals-combined.all-completed .total-completed{flex:100%}@media (min-width:601px){.today-totals.totals-combined{flex-wrap:nowrap}.today-totals.totals-combined:not(.all-completed) .total-completed{flex:0 1 calc(var(--completed-share) - 12px);min-width:max-content}.today-totals.totals-combined .total-due{flex:none}}.routine-register .sort-heading{color:inherit;font:inherit;white-space:nowrap;background:0 0;border:0;align-items:center;gap:8px;padding:0;display:inline-flex}.routine-register .sort-heading:hover{color:var(--text-action)}.sort-heading span{font-size:14px}.routine-register .sort-heading{text-decoration:none}.main.history-content{padding-top:39px;padding-bottom:96px}.history-screen>.section-heading{margin-top:0}.history-day{margin-top:28px}.history-day h3{font-family:var(--font-sans);border-bottom:1px solid var(--border);margin-bottom:12px;padding-bottom:12px;font-size:15px;font-weight:600}.history-list{margin:0;padding:0;list-style:none}.history-entry{grid-template-columns:minmax(0,1fr) 90px 90px;align-items:center;gap:16px;padding:16px;display:grid}.history-routine{gap:4px;min-width:0;display:grid}.history-routine strong{font-size:15px;font-weight:600}.history-entry>time,.history-routine span{color:var(--muted);font-size:14px}.history-duration{text-align:right;white-space:nowrap;font-size:15px}@media (max-width:760px){.main.history-content{padding-top:24px;padding-bottom:144px}.history-entry{grid-template-columns:minmax(0,1fr) auto;gap:8px 16px}.history-routine{grid-area:1/1/3}.history-entry>time{text-align:right}.history-duration{grid-column:2}}@keyframes modal-enter{0%{opacity:0;transform:translateY(8px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes modal-exit{0%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(8px)scale(.98)}}@keyframes backdrop-enter{0%{opacity:0}to{opacity:1}}@keyframes backdrop-exit{0%{opacity:1}to{opacity:0}}dialog[open]{animation:modal-enter .2s both}dialog[open]::backdrop{animation:backdrop-enter .2s both}dialog[open].modal-closing{pointer-events:none;animation:modal-exit .2s both}dialog[open].modal-closing::backdrop{animation:backdrop-exit .2s both}@media (prefers-reduced-motion:reduce){dialog[open],dialog[open]::backdrop{animation:none}}@media (min-width:761px){.today-content .routine{padding-top:14px;padding-bottom:14px}.today-content .routine-main{padding-bottom:30px}.today-content .routine-actions{align-self:center}}.completion-message{text-align:right;margin-left:auto;padding-right:6px;font-family:Pacifico,cursive;font-size:18px;font-weight:400;line-height:1.15}.main,.main.history-content,.main.today-content{padding-top:39px}.screen-heading{justify-content:space-between;align-items:flex-end;gap:20px;margin:0 0 20px;display:flex}.screen-heading h1{color:var(--ink);margin:0;font-size:36px;font-weight:700;line-height:1.5}.screen-heading .create-button{flex-shrink:0;align-self:flex-end;margin-bottom:8px}.screen-heading+.area-register{margin-top:0}.screen-heading+.routine-section>.group-heading{margin-top:-4px}.routine-section>.group-heading{align-items:flex-end}.routine-section>.group-heading h2{margin:0}.area-add-button{padding:6px 14px;font-size:24px;line-height:1}.history-day:first-of-type{margin-top:0}.mobile-completion-detail{display:none}.heading-actions{display:contents}.mobile-account,.mobile-sort{display:none}@media (max-width:760px){.main,.main.history-content,.main.today-content{padding-top:24px}.screen-heading{flex-wrap:wrap;align-items:flex-start;gap:12px;min-height:44px}.screen-heading .create-button{align-self:flex-start;margin-bottom:0}.mobile-sort{flex-shrink:0;align-self:flex-start;align-items:center;height:44px;margin:0;display:inline-flex;position:static}.mobile-sort-trigger{place-items:center;width:44px;height:44px;padding:0;display:grid}.mobile-sort-dropdown{z-index:65;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--paper);width:220px;max-width:calc(100vw - 44px);padding:8px;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 8px 24px #203a4818}.mobile-sort-heading{align-items:center;gap:8px;padding:8px;font-weight:700;display:flex}.mobile-sort-options{border:0;min-width:0;margin:0;padding:0}.mobile-sort-option{border-radius:var(--radius-sm);cursor:pointer;justify-content:space-between;align-items:center;min-height:44px;padding:8px;display:flex;position:relative}.mobile-sort-option input{opacity:0;width:1px;height:1px;position:absolute}.mobile-sort-option:has(input:checked),.mobile-sort-option:hover{background:#ecfbf6}.mobile-sort-option:has(input:focus-visible){outline-offset:-3px;outline:3px solid #93b194}.mobile-sort-directions{border-top:1px solid var(--border);gap:8px;margin-top:8px;padding-top:8px;display:flex}.mobile-sort-directions button{background:var(--paper);min-height:44px;color:var(--ink);border:1px solid var(--border);flex:1;padding:8px}.mobile-sort-directions button[aria-pressed=true]{border-color:var(--green);color:var(--green);background:#ecfbf6}.create-button .create-button-label{display:none}.screen-heading .create-button{width:44px;height:44px;padding:0;font-size:24px}.page-heading h1,.screen-heading h1,.welcome h1,h1{font-size:32px}.screen-heading h1{line-height:1.3}.today-totals.totals-combined .today-total{padding-inline:46px 8px}.today-totals .completed-total-smile,.today-totals .completion-celebration,.today-totals .due-sun{left:10px}.today-totals .completed-total-smile,.today-totals .completion-celebration svg,.today-totals .due-sun{width:26px}.today-totals .mobile-completion-detail{display:inline}.today-totals.totals-combined .total-completed{flex:100%}.today-totals .total-completed~.total-due,.today-totals.all-completed .completed-total-smile,.today-totals.all-completed .total-pair{display:none}.today-totals.all-completed .total-completed{min-height:20.8px}.today-totals .completion-message{text-align:right;white-space:normal;flex:1;margin-left:0;padding-right:0;position:relative;top:-1px}}.brand{font-size:36px;line-height:1.5}.history-entry{grid-template-columns:minmax(0,1fr) auto;gap:6px 16px;padding:8px 16px}.history-routine{flex-wrap:wrap;grid-row:auto;align-items:baseline;gap:6px;display:flex}.history-entry>time,.history-routine span{white-space:nowrap}@media (max-width:600px){.history-entry{grid-template-columns:minmax(0,1fr)}.history-entry>time{text-align:left}}.history-entry{grid-template-columns:minmax(0,1fr) 32px}.history-actions{position:relative}.history-menu-trigger{width:32px;height:32px;color:var(--ink);background:0 0;padding:0;font-size:18px;line-height:1}.history-menu-trigger:hover{background:#ecfbf6}.history-action-menu{z-index:20;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--paper);min-width:120px;padding:4px;display:grid;position:absolute;top:36px;right:0;box-shadow:0 6px 20px #203a4814}.history-action-menu button{text-align:left;color:var(--ink);background:0 0;padding:8px 12px}.history-action-menu button:hover{background:#ecfbf6}.history-action-menu .history-delete{color:var(--text-danger)}@media (max-width:600px){.history-entry{grid-template-columns:minmax(0,1fr) 32px}.history-entry>time{grid-area:2/1}.history-actions{grid-area:1/2}}.history-rewards{border:var(--border-width) solid var(--border);border-radius:var(--radius-lg);background:#f3faf7;grid-template-columns:minmax(150px,1fr) minmax(160px,1fr) minmax(300px,1.7fr);gap:20px;margin-bottom:30px;padding:20px 24px;display:grid}.history-reward{text-align:center;min-width:0}.history-reward-label{margin-bottom:4px;font-size:16px;font-weight:700;display:block}.history-reward-value{justify-content:center;align-items:center;gap:8px;min-height:58px;display:flex}.history-reward-value strong{font-size:48px;font-weight:700;line-height:1.1}.history-reward-value>span{color:inherit;font-size:14px;font-weight:700}.history-reward-value:has(>svg){align-items:baseline}.history-reward-value>svg{fill:url(#history-fire);stroke:none;flex-shrink:0;align-self:flex-end;width:52px;height:58px;transform:translate(10px,-3px)}.history-reward.is-active .history-reward-value{color:var(--green)}.history-reward-value.history-completion-total{align-items:center}.history-reward-value>.history-total-icon{fill:#c7efdf;width:42px;height:42px;stroke:var(--green);stroke-width:1.5px;align-self:center;transform:translateY(-2px)}.history-total-icon .history-smile-face{fill:url(#history-aqua);stroke:none}.history-total-icon .history-smile-eye,.history-total-icon .history-smile-mouth{fill:#075b64;stroke:none}.history-badges{justify-content:center;align-items:center;gap:20px;min-height:58px;margin:0;padding:0;list-style:none;display:flex}.history-badge{color:var(--muted);justify-items:center;gap:3px;font-size:13px;display:grid}.history-badge svg{fill:#edf1ef;stroke:#9cafa6;stroke-width:1.2px;stroke-linejoin:round;width:36px;height:36px}.history-badge .badge-check{fill:none;stroke-width:1.8px;stroke-linecap:round}.history-badge.is-unlocked{color:#80550b;font-weight:700}.history-badge.is-unlocked svg{fill:#ffe7a2;stroke:#956615}@media (max-width:1050px){.history-rewards{grid-template-columns:repeat(2,minmax(0,1fr))}.history-milestones{grid-column:1/-1}.history-badges{justify-content:center;gap:24px}}@media (max-width:480px){.history-rewards{gap:16px;padding:16px}.history-badges{justify-content:space-between;gap:6px}}.history-entry{grid-template-columns:16px minmax(0,1fr) 32px;column-gap:10px;padding-top:2px;padding-bottom:2px;padding-left:0}.history-entry-check{color:var(--green);grid-area:1/1;font-size:15px}.history-entry .history-routine{grid-area:1/2}.history-entry .history-actions{grid-area:1/3}.history-dates{grid-template-columns:minmax(0,1fr);align-items:start;gap:28px 36px;display:grid}.history-dates .history-day{min-width:0;margin-top:0}@media (min-width:1100px){.history-dates{grid-template-columns:repeat(2,minmax(0,1fr))}}.metrics>.metric-equals{color:var(--muted);margin:0;font-size:24px;line-height:50.4px}@media (max-width:760px){.metrics>.metric-equals{font-size:20px;line-height:39.2px}}.auth-screen{background:#f3faf7;place-items:center;min-height:100dvh;padding:32px 20px;display:grid}.auth-panel{border:var(--border-width) solid var(--border);border-radius:var(--radius-lg);background:var(--paper);width:min(100%,420px);padding:28px}.brand.auth-brand{width:fit-content;margin-bottom:28px;text-decoration:none;display:inline-flex}.auth-panel h1{margin-bottom:20px;font-size:28px}@media (max-width:760px){.auth-panel h1{font-size:32px}}.auth-panel fieldset,.auth-panel form{gap:20px;display:grid}.auth-panel fieldset{border:0;min-width:0;margin:0;padding:0}.auth-panel label{margin:0;display:block}.auth-submit{width:100%;margin-top:0}.auth-links{flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:20px;display:flex}.auth-panel .text-button{padding:4px 0}.account-menu{position:relative}.account-menu .account-trigger{place-items:center;width:44px;height:44px;padding:0;display:grid}.account-trigger-label{display:none}.sidebar .account-trigger{width:auto;height:auto;padding:var(--control-padding)}.sidebar .account-trigger svg{display:none}.sidebar .account-trigger-label{display:inline}.account-popover{border:var(--border-width) solid var(--border);background:var(--paper);border-radius:var(--radius-md);z-index:60;gap:12px;width:240px;max-width:calc(100vw - 32px);padding:16px;display:grid;position:absolute;bottom:calc(100% + 8px);left:0;box-shadow:0 8px 24px #203a4818}.account-email{overflow-wrap:anywhere;font-size:14px}.account-error{color:var(--text-danger);font-size:14px}@media (max-width:760px){.sidebar .sidebar-bottom:has(.account-menu){display:none}.heading-actions{align-items:flex-start;gap:8px;margin-left:auto;display:flex;position:relative}.heading-actions:empty,.today-content .heading-actions{display:none}.mobile-account{display:block}.mobile-account .account-popover{top:calc(100% + 8px);bottom:auto}.account-popover{left:auto;right:0}.auth-panel{padding:23px}}.local-import-banner{border:var(--border-width) solid var(--border);border-radius:var(--radius-md);background:#f3faf7;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:24px;padding:16px;display:flex}@media (min-width:761px){.main,.main.history-content,.main.today-content,.sidebar{padding-top:39px}.screen-heading h1,.sidebar .brand{font-size:36px;line-height:1.5}.main>.screen-heading{align-items:flex-start;min-height:54px;margin-bottom:20px;position:relative}.screen-heading:has(.create-button) h1{max-width:calc(100% - 210px)}.screen-heading .create-button{margin-bottom:0;position:absolute;bottom:8px;right:0}.screen-heading+.area-register{margin-top:0}}.household-optimizer{border:1px solid var(--border);border-radius:var(--radius-lg);margin-top:36px;margin-bottom:32px;padding:28px}.household-optimizer h2{align-items:center;gap:10px;display:flex}.household-optimizer h2 svg{color:var(--green);flex-shrink:0}.optimizer-actions{flex-wrap:wrap;gap:10px;margin-top:20px;display:flex}.optimizer-actions button{white-space:normal}.optimizer-response{border-top:1px solid var(--border);min-height:160px;margin-top:24px;padding-top:24px}.optimizer-status{color:var(--muted)}.optimizer-results{overflow-wrap:anywhere}.optimizer-results h3{margin:0 0 12px;font-size:1rem}.optimizer-results ul{margin:0;padding-left:20px}.optimizer-results li{padding-left:4px;line-height:1.6}.optimizer-results li+li{margin-top:12px}.optimizer-error{color:var(--text-danger)}@media (max-width:600px){.household-optimizer{padding:20px}.optimizer-actions{flex-direction:column}.optimizer-actions button{text-align:left;width:100%}}.screen-heading .today-heading{flex:1;min-width:0;position:relative}.today-heading-measure{visibility:hidden;pointer-events:none;position:absolute;inset:0;overflow:hidden}.today-heading-probe{white-space:nowrap;display:inline-block}@media (max-width:760px){.modal-actions.edit-actions .modal-cancel{display:none}}.settings-content{gap:24px;max-width:600px;display:grid}.settings-section{border-bottom:1px solid var(--border);gap:16px;padding-bottom:28px;display:grid}.settings-section fieldset{border:0;gap:20px;min-width:0;margin:0;padding:0;display:grid}.settings-section label{grid-template-columns:minmax(0,165px) minmax(0,1fr);align-items:center;gap:16px;margin:0;display:grid}.settings-section label input{min-width:0;margin-top:0}.settings-section button{justify-self:start}.areas-navigation{align-items:flex-end;min-height:44px;margin-bottom:-4px;padding-bottom:8px;display:flex}.screen-heading:has(.manage-areas-button) .heading-actions{align-self:flex-start;align-items:flex-start;gap:8px;margin-left:auto;display:flex}.screen-heading:has(.manage-areas-button) .create-button{margin-bottom:0;position:static}.screen-heading:has(.manage-areas-button) h1{max-width:none}.manage-areas-button{flex-shrink:0}.manage-areas-button svg{display:none}@media (min-width:761px){.screen-heading:has(.manage-areas-button) .heading-actions{position:absolute;bottom:8px;right:0}.screen-heading:has(.manage-areas-button) h1{max-width:calc(100% - 330px)}}@media (max-width:760px){.manage-areas-button{width:44px;height:44px;padding:0}.manage-areas-button svg{display:block}.manage-areas-button span{display:none}}.routine-area-heading{justify-content:space-between;align-items:center;gap:16px;display:flex}.routine-area-title{flex-wrap:wrap;align-items:baseline;gap:12px;min-width:0;display:flex}.routine-area-title h2{overflow-wrap:anywhere}.routine-area-title>span{white-space:nowrap;font-size:14px;position:relative;top:-1px}.routine-area-controls{flex-shrink:0;align-items:center;gap:8px;display:flex;position:relative;top:6px}.area-options>button,.routine-area-controls>button{width:44px;height:44px;color:var(--ink);box-shadow:none;background:0 0;border:0;padding:0;font-size:18px;line-height:1}.routine-area-controls>button{place-items:center;display:grid}.area-options>button:hover,.routine-area-controls>button:hover{color:var(--ink);background:#ecfbf6;text-decoration:none}.routine-area-controls>button:disabled{cursor:default;background:0 0}.area-options{position:relative}.area-options-popover{z-index:5;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--paper);width:170px;padding:6px;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 8px 24px #203a4818}.area-options-popover button{text-align:left;width:100%;color:var(--ink);background:0 0;display:block}.area-options-popover button:hover{background:#ecfbf6}.settings-logout{justify-self:start;align-items:center;gap:8px;display:inline-flex}@media (max-width:600px){.settings-section label{grid-template-columns:110px minmax(0,1fr);gap:12px}}.area-register .area-drag-cell{vertical-align:middle;width:32px;padding:0}.area-drag-handle{width:32px;height:44px;color:var(--muted);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;background:0 0;place-items:center;padding:0;display:grid}.area-drag-handle:hover{background:0 0}.area-drag-handle.is-dragging{cursor:grabbing}.area-drag-handle:disabled{cursor:default}.area-register .area-drop-target{outline:2px solid var(--green);outline-offset:-2px;background:#ecfbf6}@media (max-width:1100px){.area-register tbody tr{padding-right:64px;position:relative}.area-register .area-drag-cell{width:48px;position:absolute;top:50%;right:4px;transform:translateY(-50%)}.area-register .area-drag-handle{width:48px;height:48px}.area-register td.area-order-cell{display:none}.area-register tbody th.register-title{text-align:left;grid-area:1/1/auto/-1}}.routine-dates{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end}.routine-dates label{min-width:0}.routine-dates input:disabled{opacity:.55;cursor:not-allowed;background:#f3f6f5}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}