/*! tailwindcss v4.2.1 | 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;--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:host,:root{--font-sans:ui-sans-serif,system-ui,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;--spacing:.25rem;--shadow-sm:0 1px 3px 0 #0000001a,0 1px 2px -1px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--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,ui-sans-serif,system-ui,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{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}.absolute{position:absolute}.fixed{position:fixed}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.table{display:table}.shrink{flex-shrink:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.flex-wrap{flex-wrap:wrap}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.blur{--tw-blur:blur(8px)}.blur,.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--radius-small:8px;--radius-control:12px;--radius-group:16px;--radius-card:20px;--radius-dialog:28px;--radius-pill:999px;--radius-circle:50%;--paper:#f6f5f0;--surface:#fff;--ink:#243139;--muted:#6d7b82;--blue:#466779;--blue-soft:#e9f0f2;--line:#cdd9de;--line-strong:#9eb3bd;--amber-soft:#fff5da;--green:#2f7655;--green-soft:#e9f5ee;--red:#a9443f;--red-soft:#fbecea}*{box-sizing:border-box}body{background:var(--paper);margin:0;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,PingFang SC,Noto Sans SC,Microsoft YaHei,sans-serif}button,input,select,textarea{font:inherit}button{color:inherit}.app-frame{min-height:100vh}.route-progress{z-index:100;background:#46677924;height:3px;position:fixed;inset:0 0 auto;overflow:hidden}.route-progress span{background:var(--blue);width:38%;height:100%;animation:route-progress 1s ease-in-out infinite;display:block}.sidebar{border-right:1px solid var(--line);z-index:20;background:#eef2f1;flex-direction:column;width:232px;padding:30px 18px 22px;display:flex;position:fixed;inset:0 auto 0 0}.brand{align-items:center;gap:11px;padding:0 10px 28px;display:flex}.brand-mark{border-radius:var(--radius-circle);background:var(--blue);color:#fff;place-items:center;width:37px;height:37px;font-size:22px;font-weight:700;display:grid}.brand small,.brand strong{display:block}.brand strong{font-size:18px}.brand small{color:var(--muted);margin-top:1px;font-size:12px}.nav-list{gap:6px;display:grid}.nav-list a{border-radius:var(--radius-control);color:#58676e;border:1px solid #0000;align-items:center;gap:13px;font-size:14px;text-decoration:none;display:flex}.nav-list a:hover{border-color:var(--line);background:#ffffff8c}.nav-list a.active{border-color:var(--line-strong);color:var(--ink);background:#fff;font-weight:650}.bottom-nav svg,.nav-list svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:19px;height:19px}.sidebar-foot{border-top:1px solid var(--line);color:var(--muted);padding:16px 10px 0;font-size:12px;line-height:1.7}.online-dot{border-radius:var(--radius-circle);background:#4b9b6f;width:7px;height:7px;margin-right:7px;display:inline-block}.main-surface{min-height:100vh;margin-left:232px;transition:opacity .12s}.page-wrap{max-width:1120px;margin:0 auto;padding:46px 42px 100px}.page-header{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:24px;display:flex}.eyebrow{color:var(--blue);letter-spacing:.08em;margin:0 0 8px;font-size:13px;font-weight:700}.page-header h1{letter-spacing:-.03em;margin:0;font-size:34px;line-height:1.18}.page-header p:not(.eyebrow){color:var(--muted);margin:10px 0 0;font-size:15px}.day-progress{background:var(--surface);border:1px solid var(--line-strong);text-align:right;min-width:124px;padding:14px 16px}.day-progress strong{font-size:27px;display:block}.day-progress small{color:var(--muted);margin-top:7px}.privacy-note{background:var(--amber-soft);border:1px solid #ead49d;align-items:flex-start;gap:13px;margin-bottom:17px;padding:13px 15px;font-size:13px;line-height:1.55;display:flex}.privacy-note strong{white-space:nowrap;color:#735a21}.privacy-note span{color:#725f36}.sync-message{z-index:50;color:#fff;border-radius:var(--radius-small);background:#26383f;padding:10px 15px;font-size:13px;position:fixed;top:20px;right:24px;box-shadow:0 8px 24px #1f31392e}.task-grid{border-top:1px solid var(--line-strong);border-left:1px solid var(--line-strong);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.routine-card{background:var(--surface);border-right:1px solid var(--line-strong);border-bottom:1px solid var(--line-strong);padding:20px 21px 18px;transition:background .15s;position:relative}.routine-top{justify-content:space-between;gap:10px;margin-bottom:18px;display:flex}.category-tag,.time-tag{border:1px solid var(--line);color:var(--muted);padding:6px 8px;font-size:11px;line-height:1}.category-tag{background:var(--blue-soft);color:var(--blue);border-color:#c7d8df;font-weight:700}.routine-card h2{margin:0 0 7px}.routine-card p{min-height:38px;color:var(--muted);margin:0 0 19px;font-size:13px;line-height:1.55}.routine-control{align-items:center;min-height:44px;display:flex}.number-control{border:1px solid var(--line-strong);background:#fff;align-items:center;display:flex}.number-control button{cursor:pointer;background:#f0f4f4;border:0;width:43px;height:43px;font-size:20px}.number-control button:first-child{border-right:1px solid var(--line)}.number-control button:nth-of-type(2){border-left:1px solid var(--line)}.number-control input{text-align:center;border:0;outline:none;width:62px;height:43px;font-size:17px;font-weight:700}.number-control span{color:var(--muted);padding:0 11px;font-size:12px}.check-control{cursor:pointer;background:#fff;align-items:center;gap:10px;height:44px;padding:0 17px 0 10px;font-weight:650;display:flex}.check-control,.check-control span{border:1px solid var(--line-strong)}.check-control span{place-items:center;width:25px;height:25px;font-size:16px;display:grid}.check-control.checked{background:var(--green-soft);color:var(--green);border-color:#91bda5}.check-control.checked span{background:var(--green);border-color:var(--green);color:#fff}.segment-control{border:1px solid var(--line-strong);display:flex}.segment-control button{border:0;border-right:1px solid var(--line);cursor:pointer;background:#fff;height:43px;padding:0 17px}.segment-control button:last-child{border-right:0}.segment-control button.selected{background:var(--green-soft);color:var(--green);font-weight:700}.segment-control button.selected.danger{background:var(--red-soft);color:var(--red)}.saving{color:var(--muted);font-size:11px;position:absolute;bottom:17px;right:18px}.page-signature{text-align:right;color:#8b979b;letter-spacing:.04em;margin-top:25px;font-size:11px}.bottom-nav{display:none}@keyframes route-progress{0%{transform:translate(-110%)}55%{transform:translate(140%)}to{transform:translate(300%)}}@media (prefers-reduced-motion:reduce){.route-progress span{width:100%;animation:none}.main-surface{transition:none}}.primary-button,.secondary-button,.small-button{border:1px solid var(--line-strong);cursor:pointer;background:#fff;justify-content:center;align-items:center;padding:10px 15px;text-decoration:none;display:inline-flex}.primary-button{background:var(--blue);border-color:var(--blue);font-weight:700}.secondary-button:hover,.small-button:hover{background:#edf2f3}.small-button{padding:8px 12px}.wide{width:100%;margin-top:10px}.link-button{font-size:14px}.inline-message{background:var(--green-soft);color:var(--green);border:1px solid #a8c9b6;margin:-8px 0 16px;padding:11px 14px;font-size:13px}.form-panel,.panel{border:1px solid var(--line-strong);background:#fff;padding:22px}.form-panel h2,.panel h2{margin:0 0 18px;font-size:20px}.field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.field-grid label{color:var(--muted);gap:7px;font-size:12px;font-weight:650;display:grid}.field-grid .span-2{grid-column:span 2}.field-grid input,.field-grid select,.field-grid textarea,.month-picker,.settings-table input,.settings-table select{border:1px solid var(--line-strong);width:100%;color:var(--ink);background:#fff;outline:none;padding:10px}.field-grid textarea{resize:vertical;min-height:82px}.field-grid input:focus,.field-grid select:focus,.field-grid textarea:focus,.settings-table input:focus,.settings-table select:focus{border-color:var(--blue);box-shadow:0 0 0 2px var(--blue-soft)}.form-actions{gap:10px;margin-top:16px;display:flex}.filter-row{gap:0;margin-bottom:17px;display:flex}.filter-row button{cursor:pointer;background:#fff;border:1px solid var(--line-strong);border-right:0;padding:9px 15px}.filter-row button:last-child{border-right:1px solid var(--line-strong)}.filter-row button.active{background:var(--blue);color:#fff}.task-list{gap:12px;display:grid}.key-task{background:#fff;border:1px solid var(--line-strong);border-left-width:4px}.key-task summary{cursor:pointer;justify-content:space-between;gap:18px;padding:19px;list-style:none;display:flex}.key-task summary::-webkit-details-marker{display:none}.key-task h2{margin:9px 0 5px;font-size:18px}.key-task summary p{color:var(--muted);margin:0;font-size:13px}.task-meta{text-align:right;white-space:nowrap;align-content:start;gap:7px;font-size:13px;display:grid}.task-meta span{color:var(--muted);font-size:12px}.task-detail{border-top:1px solid var(--line);padding:20px}.empty-state{border:1px dashed var(--line-strong);color:var(--muted);text-align:center;padding:28px}.settings-table{border-top:1px solid var(--line-strong);border-left:1px solid var(--line-strong);overflow-x:auto}.settings-table>div{grid-template-columns:70px 1.3fr 120px 120px 1.4fr 80px;align-items:center;min-width:900px;display:grid}.settings-table>div>*{border:0;border-right:1px solid var(--line-strong);border-bottom:1px solid var(--line-strong);border-radius:0;height:100%;min-height:52px}.settings-table>div>input,.settings-table>div>select{padding:9px}.settings-table .settings-head>*{color:#56676e;background:#e8eeee;padding:12px;font-size:12px;font-weight:700}.settings-table .disabled{opacity:.48}.switch{place-items:center;display:grid}.switch input{width:18px;height:18px}.metric-grid{border-top:1px solid var(--line-strong);border-left:1px solid var(--line-strong);grid-template-columns:repeat(4,1fr);margin-bottom:20px;display:grid}.metric{border-right:1px solid var(--line-strong);border-bottom:1px solid var(--line-strong);background:#fff;padding:20px}.metric p{color:var(--muted);margin:0 0 15px;font-size:12px}.metric strong{font-size:32px}.metric strong span{color:var(--muted);margin-left:5px;font-size:13px;font-weight:500}.progress-layout{grid-template-columns:minmax(0,1.6fr) minmax(280px,.8fr);gap:20px;display:grid}.panel-title{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.panel-title h2{margin:0 0 18px}.status-badge{background:var(--green-soft);color:var(--green);border:1px solid #a8c9b6;padding:7px 10px;font-size:11px}.status-badge.danger{background:var(--red-soft);color:var(--red);border-color:#deb3af}.calendar-grid,.calendar-head{border-left:1px solid var(--line);border-top:1px solid var(--line);grid-template-columns:repeat(7,1fr);display:grid}.calendar-head span{text-align:center;color:var(--muted);background:#edf1f1;font-size:11px}.calendar-grid>.blank,.calendar-grid>div,.calendar-head span{border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:8px}.calendar-grid>.blank,.calendar-grid>div{min-height:72px}.calendar-grid div{flex-direction:column;justify-content:space-between;display:flex}.calendar-grid strong{font-size:13px}.calendar-grid small{color:var(--muted);font-size:10px}.attention-list{display:grid}.attention-list>div{border-bottom:1px solid var(--line);gap:11px;padding:14px 0;display:flex}.attention-list>div:last-child{border-bottom:0}.attention-list strong{font-size:14px}.attention-list p{color:var(--muted);margin:5px 0 0;font-size:12px;line-height:1.5}.alert-dot,.info-dot{border-radius:var(--radius-circle);background:var(--red);flex:none;width:9px;height:9px;margin-top:5px}.info-dot{background:var(--blue)}.month-picker{width:auto;min-width:150px}.report-layout{grid-template-columns:minmax(0,1.5fr) 310px;align-items:start;gap:22px;display:grid}.report-preview{border:1px solid var(--line-strong);color:#26363d;background:#f7f5ed;padding:37px 38px;box-shadow:0 12px 36px #28383f14}.report-brand{letter-spacing:.08em;color:var(--blue);justify-content:space-between;align-items:center;font-size:11px;font-weight:700;display:flex}.report-brand small{color:var(--muted);letter-spacing:0;font-weight:500}.report-preview>h2{letter-spacing:-.02em;margin:34px 0 7px;font-size:28px}.report-lead{color:var(--muted);margin:0 0 28px}.report-metrics{border-top:1px solid var(--line-strong);border-left:1px solid var(--line-strong);grid-template-columns:repeat(4,1fr);display:grid}.report-metrics>div{border-right:1px solid var(--line-strong);border-bottom:1px solid var(--line-strong);background:#fff;padding:15px 12px}.report-metrics small,.report-metrics strong{display:block}.report-metrics strong{color:var(--blue);font-size:25px}.report-metrics strong span{margin-left:3px;font-size:11px}.report-metrics small{color:var(--muted);margin-top:6px;font-size:10px}.report-section h3{border-bottom:1px solid var(--line-strong);margin:0;padding-bottom:10px;font-size:17px}.report-section ol,.report-section ul{margin:14px 0;padding-left:22px}.report-section li{padding:7px 0;font-size:13px;line-height:1.5}.report-section li p{color:var(--muted);margin:4px 0 0}.report-empty{color:var(--muted);font-size:13px}.report-preview footer{color:#839096;margin-top:35px;font-size:10px}.report-actions{position:sticky;top:24px}.radio-row{border-top:1px solid var(--line);cursor:pointer;align-items:flex-start;gap:10px;padding:13px 0;display:flex}.radio-row input{margin-top:3px}.radio-row small,.radio-row span,.radio-row strong{display:block}.radio-row strong{font-size:14px}.radio-row small{color:var(--muted);margin-top:4px;line-height:1.4}.action-note{color:var(--muted);font-size:11px;line-height:1.5}.report-actions .eyebrow{margin-bottom:6px}@media (max-width:760px){.sidebar{display:none}.main-surface{margin-left:0}.page-wrap{padding:24px 15px 92px}.page-header{align-items:flex-start}.page-header h1{font-size:27px}.page-header p:not(.eyebrow){font-size:13px}.day-progress{min-width:88px;padding:11px}.day-progress strong{font-size:22px}.day-progress small{font-size:10px}.privacy-note{display:block}.privacy-note strong{margin-bottom:4px;display:block}.task-grid{grid-template-columns:1fr}.routine-card{min-height:190px;padding:18px}.routine-card p{min-height:auto}.bottom-nav{border-top:1px solid var(--line-strong);z-index:30;padding-bottom:env(safe-area-inset-bottom);background:#fafaf8f5;grid-template-columns:repeat(4,1fr);display:grid;position:fixed;inset:auto 0 0}.bottom-nav a{color:#718087;flex-direction:column;justify-content:center;align-items:center;gap:3px;height:61px;font-size:10px;text-decoration:none;display:flex}.bottom-nav a.active{color:var(--blue);font-weight:700}.bottom-nav svg{width:20px;height:20px}.sync-message{text-align:center;top:12px;left:15px;right:15px}.page-header>.primary-button{white-space:nowrap}.field-grid{grid-template-columns:1fr}.field-grid .span-2{grid-column:auto}.key-task summary{display:block}.task-meta{text-align:left;margin-top:12px}.metric-grid{grid-template-columns:repeat(2,1fr)}.progress-layout,.report-layout{grid-template-columns:1fr}.calendar-grid>.blank,.calendar-grid>div{min-height:54px;padding:5px}.calendar-grid small{font-size:8px}.report-preview{padding:24px 18px}.report-preview>h2{font-size:23px}.report-metrics{grid-template-columns:repeat(2,1fr)}.report-actions{position:static}.month-picker{min-width:132px}.settings-table{margin-right:-15px}}.primary-button:disabled{opacity:.55;cursor:wait}.account-row{justify-content:space-between;align-items:center;margin-top:3px;display:flex}.account-row button{color:var(--blue);cursor:pointer;background:0 0;border:0;padding:2px;font-size:11px}.auth-page{background:linear-gradient(145deg,#eef2f1,#f8f6ef 58%,#edf2f3);place-items:center;min-height:100vh;padding:24px;display:grid}.auth-card{border:1px solid var(--line-strong);background:#fff;width:min(100%,420px);padding:34px 34px 28px;box-shadow:0 22px 65px #2a3b431c}.auth-brand{align-items:center;gap:10px;padding-bottom:30px;display:flex}.auth-brand small,.auth-brand strong{display:block}.auth-brand small{color:var(--muted);margin-top:2px;font-size:11px}.auth-card h1{letter-spacing:-.03em;margin:0;font-size:28px}.auth-card>p:not(.eyebrow){color:var(--muted);margin:10px 0 23px;font-size:13px;line-height:1.6}.auth-card form{gap:14px;display:grid}.auth-card label{color:var(--muted);gap:7px;font-size:12px;font-weight:650;display:grid}.auth-card input{border:1px solid var(--line-strong);outline:none;width:100%;padding:12px}.auth-card input:focus{border-color:var(--blue);box-shadow:0 0 0 2px var(--blue-soft)}.auth-error{background:var(--red-soft);color:var(--red);border:1px solid #ddb5b1;padding:10px 12px;font-size:12px;line-height:1.5}.auth-card footer{border-top:1px solid var(--line);color:var(--muted);text-align:center;margin-top:24px;padding-top:15px;font-size:10px}.panel-copy{color:var(--muted);margin:-9px 0 18px;font-size:13px}.settings-security{margin-top:-74px;padding-top:0}.password-panel{margin-bottom:0}.password-panel .inline-message{margin:0 0 12px}@media (max-width:760px){.auth-card{padding:28px 22px}.auth-card h1{font-size:24px}.settings-security{margin-top:-92px;padding-top:0}.account-row{display:none}}:root{--paper:#edf4f8;--surface:#fcfdffe0;--ink:#142630;--muted:#647780;--blue:#1f6f9f;--blue-soft:#d0ebfa9e;--line:#698b9c38;--line-strong:#5e819361;--amber-soft:#fff4cdc7;--green:#287653;--green-soft:#def6e9d1;--red:#a44343;--red-soft:#fce7e8d6;--glass:#f5fbff94;--glass-strong:#f8fcffc2;--content:#fdfeffe6;--shadow-sm:0 10px 28px #2c4e6014,inset 0 1px 0 #ffffffd1;--shadow-lg:0 24px 70px #2c4e6026,inset 0 1px 0 #ffffffeb}body,html{background:#fcfcfc}body{isolation:isolate;min-height:100vh;color:var(--ink);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,SF Pro Text,PingFang SC,Noto Sans SC,Microsoft YaHei,sans-serif}.ambient-background{z-index:-1;pointer-events:none;background:linear-gradient(145deg,#fff,#fcfcfd 55%,#f8fafb);height:100lvh;position:fixed;inset:0;overflow:hidden}.ambient-background canvas{width:100%;height:100%;display:block}@media (prefers-reduced-motion:reduce){.ambient-background canvas{visibility:hidden}}.ambient-background:after{content:"";background:radial-gradient(at 50% 42%,#ffffff38,#0000 72%);position:absolute;inset:0}.app-frame{isolation:isolate;position:relative}.sidebar{border-radius:var(--radius-dialog);width:238px;box-shadow:var(--shadow-lg),inset 0 0 0 1px #6394ae1a;-webkit-backdrop-filter:blur(30px)saturate(180%);backdrop-filter:blur(30px)saturate(180%);background:linear-gradient(145deg,#ffffffb8,#e0f0f980);border:1px solid #ffffffdb;padding:20px 14px 16px;inset:16px auto 16px 16px;overflow:hidden}.sidebar:before{content:"";pointer-events:none;background:radial-gradient(circle,#ffffffdb,#0000 68%);height:210px;position:absolute;inset:-35% -45% auto;transform:rotate(-10deg)}.brand,.nav-list,.sidebar-foot{z-index:1;position:relative}.brand{gap:12px;padding:3px 9px 25px}.brand-mark{background:linear-gradient(145deg,#aee3fa,#72c6ec 64%,#91d5f3);border:1px solid #ffffffc7;width:42px;height:42px;font-size:23px;font-weight:760;box-shadow:0 10px 25px #4ba9d73d,inset 0 1px 1px #ffffffad}.brand-glyph{line-height:1;display:block;transform:translateY(-1px)}.brand strong{letter-spacing:-.025em;font-size:19px}.brand small{letter-spacing:.08em;text-transform:uppercase;color:#6b7f8a;font-size:11px}.nav-list{gap:7px}.nav-list a{color:#58707d;min-height:47px;padding:12px 13px;font-weight:560;transition:transform .18s,background .18s,border-color .18s,color .18s,box-shadow .18s}.nav-list a:hover{background:#ffffff2e;border-color:#ffffff9e;transform:translateY(-1px)}.nav-list a.active{color:#154d70;background:linear-gradient(145deg,#ffffff61,#d6ecf92e);border-color:#ffffffb3;font-weight:700;box-shadow:0 9px 24px #31648121,inset 0 1px #fff,inset 0 0 0 1px #548caa1a}.bottom-nav svg,.nav-list svg{stroke-width:1.85px}.sidebar-foot{border-radius:var(--radius-group);color:#657985;background:#ffffff54;border:1px solid #ffffffad;margin-top:auto;padding:14px 13px 11px;box-shadow:inset 0 1px #ffffffb3}.online-dot{background:#32a66c;width:8px;height:8px;box-shadow:0 0 0 4px #32a66c1f}.account-row{margin-top:5px}.account-row button{color:#1f6f9f;font-weight:650}.main-surface{margin-left:270px;position:relative}.page-wrap{max-width:1180px;padding:48px 38px 110px}.page-header{grid-template-columns:minmax(0,1fr) auto;align-items:start;margin-bottom:28px;display:grid}.page-heading{min-width:0}.page-header h1{letter-spacing:-.045em;color:#102a38;font-size:38px;font-weight:760;line-height:1.08}.page-heading h1{align-items:center;width:148px;min-width:148px;height:44px;line-height:1;display:flex}.page-header p:not(.eyebrow){color:#657983;max-width:680px;margin-top:11px;line-height:1.55}.page-header .page-context{letter-spacing:.04em;color:#657983;margin:9px 0 0;font-size:12px;font-weight:650}.header-action{border-radius:var(--radius-control);white-space:nowrap;width:148px;min-width:148px;height:44px;min-height:44px;padding:0 15px;font-size:14px;font-weight:700}.eyebrow{color:#276f97;letter-spacing:.13em;text-transform:uppercase;margin-bottom:9px;font-size:11px;font-weight:760}.route-progress{border-radius:var(--radius-pill);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffff85;border:1px solid #fffc;width:min(320px,52vw);height:4px;inset:10px auto auto 50%;transform:translate(-50%);box-shadow:0 7px 20px #285b771f}.route-progress span{border-radius:var(--radius-pill);background:linear-gradient(90deg,#5ac8fa,#0a84ff,#bf5af2)}.route-loading .main-surface{opacity:.9}.task-grid{border:0;gap:15px}.day-progress,.empty-state,.form-panel,.key-task,.metric,.panel,.privacy-note,.report-preview,.routine-card,.settings-table{background:linear-gradient(155deg,var(--content),#f4f9fcd6);box-shadow:var(--shadow-sm),inset 0 0 0 1px #648ea11f;border:1px solid #fffffff0}.routine-card{border-radius:var(--radius-card);min-height:218px;padding:21px 22px 19px;transition:transform .2s,box-shadow .2s,background .2s;overflow:hidden}.routine-card:hover{transform:translateY(-2px);box-shadow:0 16px 36px #2c4e601f,inset 0 1px #ffffffeb}.routine-card.done{background:linear-gradient(155deg,#f9fffcf0,#daf6e7d6)}.routine-card h2{letter-spacing:-.018em;color:#18323f;font-size:19px}.category-tag,.status-badge,.time-tag{border-radius:var(--radius-pill);background:#e9f3f8b8;border-color:#648ea133}.category-tag{color:#1e6d98;background:#d0ebfab3}.day-progress{isolation:isolate;border-radius:var(--radius-control);text-align:center;background:#f2efff;border-color:#fffffff5;justify-content:center;align-items:center;gap:9px;width:148px;min-width:148px;height:44px;min-height:44px;padding:0 16px;display:flex;position:relative;overflow:hidden;box-shadow:0 15px 34px #7e8dbf29,0 0 26px #ffdaf42e,inset 0 1px 1px #fffffffa,inset 0 0 0 1px #7e97c717}.day-progress:before{content:"";z-index:-2;filter:blur(7px)saturate(112%);background:radial-gradient(circle at 18% 28%,#deeaff 0 27%,#0000 58%) 0 25%/138% 152%,radial-gradient(circle at 82% 68%,#ffeaf9 0 32%,#0000 61%) 100% 72%/172% 136%,linear-gradient(118deg,#deeaff 0 42%,#ffeaf9 58% 100%) 50%/190% 165%;animation:day-progress-flow 8s ease-in-out infinite alternate;position:absolute;inset:-48%}.day-progress:after{content:"";z-index:-1;border-radius:calc(var(--radius-control) - 1px);pointer-events:none;background:linear-gradient(145deg,#ffffff6b,#ffffff0d 52%,#ffffff40);position:absolute;inset:1px}.day-progress small,.day-progress strong{z-index:1;text-align:center;position:relative}.day-progress strong{letter-spacing:-.04em;align-items:baseline;font-size:21px;line-height:1;display:flex}.day-progress strong span{color:#4752709e;font-size:13px}.day-progress small{color:#394863b3;margin:0;font-size:12px;font-weight:650;display:block}@keyframes day-progress-flow{0%{background-position:2% 18%,96% 82%,42%;background-size:124% 148%,186% 132%,178% 164%;transform:translate(-10%,-7%)scale(1.03)rotate(-3deg)}48%{background-position:32% 64%,70% 30%,62% 46%;background-size:182% 126%,132% 184%,232% 138%;transform:translate(8%,5%)scale(1.15)rotate(2deg)}to{background-position:78% 76%,22% 20%,54% 58%;background-size:148% 190%,194% 146%,154% 228%;transform:translate(-3%,9%)scale(1.08)rotate(5deg)}}.form-panel,.panel{border-radius:var(--radius-card);margin-bottom:20px;padding:24px}.form-panel h2,.panel h2{letter-spacing:-.025em;font-size:21px}.metric-grid{border:0;gap:13px;margin-bottom:21px}.metric{border-radius:var(--radius-card);padding:21px}.metric.warn{background:linear-gradient(155deg,#fffcf2f5,#ffefc4c7)}.metric p{margin-bottom:17px}.metric strong{letter-spacing:-.04em;color:#163b4e;font-size:34px}.key-task{border-radius:var(--radius-card);border-left-width:1px;overflow:hidden}.key-task .task-detail{background:#ffffff5c;border-color:#ffffff94}.key-task summary{padding:20px 21px}.task-detail{background:#f2f7fa94}.privacy-note{border-radius:var(--radius-group);background:linear-gradient(155deg,#fffceff0,#fff1cbc2);border-color:#dab65c47}.empty-state{border-radius:var(--radius-group);border-style:solid}.settings-table{border-radius:var(--radius-card);border:1px solid #ffffffeb;overflow:auto}.settings-table>div>*{border-color:#688b9d33}.settings-table .settings-head>*{color:#506a77;background:#dcebf3b8}.calendar-grid,.calendar-head{border-color:#688b9d3d;overflow:hidden}.calendar-head{border-radius:var(--radius-group) var(--radius-group) 0 0}.calendar-grid{border-radius:0 0 var(--radius-group) var(--radius-group)}.calendar-head span{background:#e0edf4ad;border-color:#688b9d38}.calendar-grid>.blank,.calendar-grid>div{background:#ffffff8c;border-color:#688b9d2e}.calendar-grid div.has-work{background:#d7f4e5c2}.attention-list>div{border-color:#688b9d2e}.report-preview{border-radius:var(--radius-card);background:linear-gradient(155deg,var(--content),#ecf6fbe0);box-shadow:var(--shadow-sm),inset 0 0 0 1px #648ea11f;overflow:hidden}.report-brand{color:#276f97;display:block}.report-brand small,.report-lead{display:none}.report-preview>h2{letter-spacing:-.03em;color:#142630;margin:30px 0 25px}.report-metrics{border:0;gap:11px}.report-metrics>div{border-radius:var(--radius-group);background:linear-gradient(150deg,#ffffffdb,#dceff8a8);border:1px solid #ffffffe6;box-shadow:0 8px 22px #2c4e6012,inset 0 0 0 1px #648ea11a}.report-section{margin-top:30px}.report-section h3{color:#18323f;border:0;padding:0}.report-section ol,.report-section ul{margin-top:13px}.report-preview footer{margin-top:38px}.report-actions{top:18px}.month-control{z-index:12;position:relative}.month-trigger{justify-content:center}.month-trigger-content{justify-content:center;align-items:center;gap:10px;height:20px;line-height:20px;display:inline-flex}.month-trigger-label{font-variant-numeric:tabular-nums}.month-trigger-icon{flex:0 0 16px;place-items:center;width:16px;height:16px;display:grid;transform:translateY(1px)}.month-trigger-icon svg{transform-origin:50%;transition:transform .16s;display:block}.month-trigger[aria-expanded=true] .month-trigger-icon svg{transform:rotate(180deg)}.month-popover{border-radius:var(--radius-card);-webkit-backdrop-filter:blur(24px)saturate(175%);backdrop-filter:blur(24px)saturate(175%);background:linear-gradient(155deg,#fdfefff7,#e5f2f9f0);border:1px solid #fffffff0;width:284px;padding:14px;position:absolute;top:calc(100% + 10px);right:0;box-shadow:0 22px 58px #25495d33,inset 0 1px #fffffffa}.month-popover-head{grid-template-columns:38px 1fr 38px;align-items:center;height:38px;margin-bottom:9px;display:grid}.month-popover-head strong{text-align:center;color:#18323f;font-size:15px}.month-grid button,.month-popover-head button{cursor:pointer;color:#315569;background:0 0;border:0}.month-popover-head button{border-radius:var(--radius-control);place-items:center;width:34px;height:34px;line-height:1;display:grid}.year-arrow{width:16px;height:16px;display:block}.year-arrow.previous{transform:rotate(90deg)}.year-arrow.next{transform:rotate(-90deg)}.month-grid button:hover,.month-popover-head button:hover{background:#ffffffc7}.month-grid{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.month-grid button{border-radius:var(--radius-control);height:38px;font-size:13px;font-weight:650}.month-grid button.active{color:#225f43;background:linear-gradient(145deg,#f4fff9fa,#b7e7cfe0);box-shadow:inset 0 0 0 1px #3e926726,0 6px 15px #3d91651f}.month-popover button:focus-visible,.month-trigger:focus-visible{outline-offset:2px;outline:3px solid #318fc640}.check-control,.filter-row,.number-control,.primary-button,.secondary-button,.segment-control,.small-button{border-radius:var(--radius-control);box-shadow:0 7px 19px #2a536a17,inset 0 1px #ffffffe0}.primary-button,.secondary-button,.small-button{-webkit-backdrop-filter:blur(14px)saturate(160%);backdrop-filter:blur(14px)saturate(160%);background:linear-gradient(145deg,#fffc,#e0eff8a3);border-color:#ffffffd1;min-height:42px;transition:transform .16s,box-shadow .16s,filter .16s}.primary-button{color:#fff;background:linear-gradient(145deg,#3d94c4,#176795 68%,#31578d);border-color:#ffffff7a;box-shadow:0 11px 26px #19669440,inset 0 1px 1px #ffffff6b}.primary-button:hover{filter:brightness(1.045);transform:translateY(-1px)}.primary-button.soft-action-button{color:#225f43;text-shadow:0 1px #ffffffb8;background:linear-gradient(145deg,#f4fff9f7,#beebd3db 66%,#a0dabbcc);border-color:#ffffffeb;box-shadow:0 11px 28px #3d916533,0 0 22px #98e5bb33,inset 0 1px 1px #fffffffa,inset 0 0 0 1px #3e92671f}.primary-button.soft-action-button:hover{filter:brightness(1.025)saturate(1.04);transform:translateY(-1px);box-shadow:0 14px 32px #3d91653b,0 0 26px #98e5bb40,inset 0 1px 1px #fffffffa}.secondary-button:hover,.small-button:hover{background:linear-gradient(145deg,#fffffff0,#daedf8c7);transform:translateY(-1px)}.primary-button:active,.secondary-button:active,.small-button:active{transform:scale(.98)}.number-control,.segment-control{background:#ffffff8f;border-color:#648b9e42;overflow:hidden}.number-control button,.segment-control button{background:#f6fbfec7}.check-control{isolation:isolate;-webkit-backdrop-filter:blur(16px)saturate(155%);backdrop-filter:blur(16px)saturate(155%);background:linear-gradient(145deg,#ffffffd6,#deeff89e);border-color:#648b9e3d;transition:transform .18s,background .24s,border-color .24s,box-shadow .24s,color .24s;position:relative;overflow:hidden;box-shadow:0 8px 20px #2a536a1a,inset 0 1px #fffffff5}.check-control>*{z-index:2;position:relative}.check-control:hover{border-color:#539ec357;transform:translateY(-1px);box-shadow:0 12px 27px #2a638226,inset 0 1px #fff}.check-control .check-box{border-radius:var(--radius-small);width:26px;height:26px;box-shadow:none;border:1px solid #507d9457;flex:0 0 26px;place-items:center;transition:background .22s,border-color .22s,filter .22s;display:grid;position:relative;overflow:hidden}.check-control .check-box svg{fill:none;stroke:#fff;stroke-width:2.6px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.check-control .check-box path{stroke-dasharray:24;stroke-dashoffset:24px;transition:stroke-dashoffset .24s 50ms}.check-control .check-label,.check-control.checked .check-label{width:auto;height:auto;box-shadow:none;color:inherit;font-size:inherit;background:0 0;border:0;border-radius:0}.check-control.checked{color:#226849;background:linear-gradient(145deg,#f5fffaf0,#c7eedac7);border-color:#338f6052;box-shadow:0 10px 25px #338f6024,inset 0 1px #fffffffa}.check-control.checked .check-box{box-shadow:none;background:linear-gradient(145deg,#61c992,#208459 72%);border-color:#23855280}.check-control.checked .check-box path{stroke-dashoffset:0}.routine-card.edge-card{--edge-x:50%;--edge-y:50%;--edge-mid:#53c9fff0;--edge-fade:#7bdaff38}.routine-card.edge-card.done{--edge-mid:#62e69df5;--edge-fade:#74e5aa38}.routine-card.edge-card>*{z-index:1;position:relative}.routine-card.edge-card:after{content:"";z-index:4;border-radius:inherit;background:radial-gradient(54px circle at var(--edge-x) var(--edge-y),#fff 0,var(--edge-mid) 20%,var(--edge-fade) 48%,transparent 76%);opacity:0;pointer-events:none;filter:drop-shadow(0 0 4px var(--edge-fade));padding:1.5px;transition:opacity .1s;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.routine-card.edge-card.edge-active:after,.routine-card.edge-card:focus-within:after{opacity:1}.routine-card.edge-card.stamping:after{animation:card-edge-confirm .34s ease-out both}.routine-card.completing{animation:periodic-complete .42s forwards}.completed-routines{border-radius:var(--radius-card);box-shadow:var(--shadow-sm),inset 0 1px 0 #fffffff2;background:linear-gradient(145deg,#ffffffb8,#e2f1f89e);border:1px solid #fffffff0;margin-top:17px;overflow:hidden}.completed-routines summary{cursor:pointer;justify-content:space-between;align-items:center;min-height:62px;padding:0 20px;list-style:none;display:flex}.completed-routines summary::-webkit-details-marker{display:none}.completed-routines summary span{align-items:baseline;gap:9px;display:flex}.completed-routines summary strong{font-size:15px}.completed-routines summary small{color:var(--muted)}.completed-routines summary i{color:var(--muted);font-size:20px;font-style:normal;transition:transform .18s}.completed-routines[open] summary i{transform:rotate(180deg)}.completed-routine-groups{border-top:1px solid #648b9e24;padding:0 20px 19px}.completed-routine-groups>section{padding-top:17px}.completed-routine-groups h2{color:#5b727e;letter-spacing:.04em;margin:0 0 8px;font-size:12px}.completed-routine-groups article{border-top:1px solid #648b9e21;justify-content:space-between;align-items:center;gap:16px;min-height:55px;padding:9px 2px;display:flex}.completed-routine-groups article:first-child{border-top:0}.completed-routine-groups article span{gap:4px;display:grid}.completed-routine-groups article strong{font-size:14px}.completed-routine-groups article small{color:var(--muted);font-size:11px}.completed-routine-groups article button{border-radius:var(--radius-control);color:#276f97;cursor:pointer;background:#ffffffad;border:1px solid #39799733;min-width:58px;height:32px;transition:transform .16s,background .16s}.completed-routine-groups article button:hover{background:#fffffff0;transform:translateY(-1px)}@keyframes periodic-complete{0%,62%{opacity:1;transform:translateY(-2px)scale(1)}to{opacity:0;transform:translateY(-8px)scale(.985)}}@keyframes check-path-write{0%,12%{stroke-dashoffset:24px;opacity:.2}to{stroke-dashoffset:0;opacity:1}}@keyframes check-soft-breathe{0%{filter:brightness()}62%{filter:brightness(1.14)}to{filter:brightness()}}@keyframes card-edge-confirm{0%{opacity:1;filter:drop-shadow(0 0 4px var(--edge-fade))}58%{opacity:1;filter:brightness(1.32) drop-shadow(0 0 6px var(--edge-mid))}to{opacity:1;filter:drop-shadow(0 0 4px var(--edge-fade))}}.filter-row{background:#deebf3a8;border:1px solid #fffc;gap:3px;padding:4px;display:inline-flex}.filter-row button{border-radius:var(--radius-control);background:0 0;border:0!important}.filter-row button.active{color:#1b648e;background:#ffffffe6;box-shadow:0 5px 13px #365b6f1a}.auth-card input,.field-grid input,.field-grid select,.field-grid textarea,.month-picker,.settings-table input,.settings-table select{border-radius:var(--radius-control);background:#ffffffb8;border-color:#63899c47;box-shadow:inset 0 1px 1px #294b5c09,0 1px #fffc}.auth-card input:focus,.field-grid input:focus,.field-grid select:focus,.field-grid textarea:focus,.settings-table input:focus,.settings-table select:focus{border-color:#1f6f9fb8;box-shadow:0 0 0 4px #318fc61f,inset 0 1px 1px #294b5c08}:is(.task-fields,.standard-fields){--task-field-height:44px;--task-field-radius:var(--radius-control)}.task-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}:is(.task-fields,.standard-fields) label{grid-template-columns:minmax(0,1fr);align-content:start;min-width:0}.task-fields input,.task-fields select,.task-fields textarea{box-sizing:border-box;border-radius:var(--radius-control);border:1px solid #63899c47;width:100%;min-width:0;max-width:100%;margin:0;padding:10px 12px;display:block}.task-fields input,.task-fields select{height:44px;min-height:44px;line-height:20px}.task-fields textarea{resize:vertical;height:112px;min-height:112px;line-height:1.55}:is(.task-fields,.standard-fields) .task-field-control{box-sizing:border-box;width:100%;min-width:0;max-width:100%;height:var(--task-field-height);border-radius:var(--task-field-radius);background:#ffffffb8;border:1px solid #63899c47;display:block;position:relative;box-shadow:inset 0 1px 1px #294b5c09,0 1px #fffc}:is(.task-fields,.standard-fields) .task-field-control>input,:is(.task-fields,.standard-fields) .task-field-control>select{appearance:none;box-sizing:border-box;width:100%;inline-size:100%;min-width:0;min-inline-size:0;max-width:100%;border-radius:inherit;max-inline-size:100%;height:100%;min-height:0;box-shadow:none;color:var(--ink);font:inherit;background:0 0;border:0;margin:0;padding:10px 12px;line-height:20px;display:block;position:absolute;inset:0}:is(.task-fields,.standard-fields) .task-field-control:focus-within{border-color:#1f6f9fb8;box-shadow:0 0 0 4px #318fc61f,inset 0 1px 1px #294b5c08}:is(.task-fields,.standard-fields) .task-field-select>select{padding-right:38px}:is(.task-fields,.standard-fields) .task-field-chevron{pointer-events:none;width:16px;height:16px;color:var(--muted);position:absolute;top:50%;right:12px;transform:translateY(-50%)}:is(.task-fields,.standard-fields) .task-field-date>input::-webkit-date-and-time-value{text-align:left;min-width:0}:is(.task-fields,.standard-fields) .task-field-date>input::-webkit-datetime-edit{min-width:0;padding:0}.sync-message{-webkit-backdrop-filter:blur(20px)saturate(150%);backdrop-filter:blur(20px)saturate(150%);background:#1b323fc2;border:1px solid #ffffff47;box-shadow:0 12px 32px #18324033,inset 0 1px #ffffff38}.inline-message{border-radius:var(--radius-group);background:#def6e9d1;border-color:#338f6042}.status-badge{padding:7px 11px}.auth-page{background:0 0}.auth-card{border-radius:var(--radius-dialog);box-shadow:var(--shadow-lg),inset 0 0 0 1px #5c8ba31a;-webkit-backdrop-filter:blur(32px)saturate(175%);backdrop-filter:blur(32px)saturate(175%);background:linear-gradient(145deg,#ffffffc2,#e8f3f99e);border:1px solid #ffffffe6}.auth-card h1{color:#122e3c;font-size:30px;font-weight:760}.login-card{padding-block:30px 27px}.login-card .auth-brand{padding-bottom:25px}.login-card>p:not(.eyebrow){margin-bottom:20px}.auth-error{border-radius:var(--radius-control)}@media (max-width:1000px) and (min-width:761px){.sidebar{width:218px;inset:12px auto 12px 12px}.main-surface{margin-left:245px}.page-wrap{padding-inline:26px}}@media (max-width:760px){.main-surface{margin-left:0}.page-wrap{padding:29px 15px 126px}.page-header{gap:14px;margin-bottom:22px}.page-header h1{letter-spacing:-.04em;font-size:30px}.page-heading h1{width:128px;min-width:128px;height:40px;line-height:1}.page-header p:not(.eyebrow){font-size:13px;line-height:1.5}.day-progress,.header-action{width:128px;min-width:128px;height:40px;min-height:40px}.header-action{padding-inline:13px;font-size:13px}.day-progress{gap:7px;padding-inline:12px}.day-progress strong{font-size:19px}.day-progress small,.day-progress strong span{font-size:11px}.month-trigger{gap:8px}.month-popover{width:min(284px,100vw - 30px);padding:12px}.bottom-nav{inset:auto 12px calc(10px + env(safe-area-inset-bottom));border-radius:var(--radius-dialog);-webkit-backdrop-filter:blur(28px)saturate(185%);backdrop-filter:blur(28px)saturate(185%);background:linear-gradient(145deg,#ffffffb8,#dcedf791);border:1px solid #ffffffe6;padding:6px;display:grid;overflow:hidden;box-shadow:0 18px 44px #25495d30,inset 0 1px #fffffff2,inset 0 0 0 1px #568ba614}.bottom-nav a{border-radius:var(--radius-group);color:#667d88;height:55px;transition:background .16s,color .16s,transform .16s}.bottom-nav a:active{transform:scale(.94)}.bottom-nav a.active{color:#155f8d;background:linear-gradient(145deg,#ffffff61,#d3ebf933);box-shadow:0 7px 18px #2e5d7821,inset 0 1px #fff}.bottom-nav svg{width:21px;height:21px}.task-grid{gap:12px}.routine-card{border-radius:var(--radius-card);min-height:190px;padding:19px}.routine-card p{min-height:38px}.metric-grid{gap:10px}.metric{border-radius:var(--radius-group);padding:17px}.metric strong{font-size:30px}.form-panel,.panel{border-radius:var(--radius-card);padding:19px}.report-preview{border-radius:var(--radius-card);padding:25px 19px}.auth-card{border-radius:var(--radius-dialog);padding:29px 23px}.login-card{padding:25px 22px 23px}.login-card .auth-brand{padding-bottom:22px}.route-progress{width:46vw;top:7px}.sync-message{top:14px;left:18px;right:18px}}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.auth-card,.bottom-nav,.sidebar{background:#f1f8fcf5}.primary-button,.secondary-button,.small-button{background-color:#f4f8fb}}@media (prefers-contrast:more){:root{--line-strong:#375d709e}.auth-card,.bottom-nav,.sidebar{background:#f7fbfdeb}}@media (prefers-reduced-motion:reduce){.bottom-nav a,.nav-list a,.primary-button,.routine-card,.secondary-button,.small-button{transition:none}.primary-button:hover,.routine-card:hover,.secondary-button:hover,.small-button:hover{transform:none}.day-progress:before{background-position:20% 40%,80% 60%,50%;background-size:150% 150%,150% 150%,100% 100%;animation:none;transform:none}.check-control,.check-control .check-box,.check-control .check-box path,.completed-routines summary i,.routine-card.completing,.routine-card.edge-card:after,.routine-card.stamping .check-control .check-box{transition:none;animation:none}}.call-card{grid-column:1/-1;min-height:218px}.call-heading{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.call-heading>div{min-width:0}.call-heading h2{margin-bottom:7px}.call-heading p{min-height:38px;margin-bottom:19px}.call-heading>strong{color:#176795;letter-spacing:-.05em;white-space:nowrap;align-items:baseline;gap:4px;font-size:34px;line-height:1;display:flex}.call-heading>strong span{color:var(--muted);letter-spacing:0;font-size:13px}.call-card .soft-action-button{height:44px}.call-list{border-top:1px solid #688b9d2e;gap:8px;margin-top:16px;padding-top:14px;display:grid}.call-row{border-radius:var(--radius-control);text-align:left;cursor:pointer;background:#fff9;border:1px solid #63899c33;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:11px;width:100%;padding:10px 11px;display:grid}.call-row:hover{background:#ffffffdb;border-color:#1f6f9f59}.call-status{border-radius:var(--radius-pill);white-space:nowrap;padding:5px 8px;font-size:10px;font-weight:720}.call-status.open{background:var(--amber-soft);color:#795a18}.call-status.closed{background:var(--green-soft);color:var(--green)}.call-summary{min-width:0}.call-summary small,.call-summary strong{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.call-summary strong{font-size:13px}.call-summary small{margin-top:4px}.call-row time,.call-summary small{color:var(--muted);font-size:11px}.call-row b{color:var(--blue);font-size:11px}.call-overlay{z-index:90;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#10253147;place-items:center;padding:22px;display:grid;position:fixed;inset:0}.call-sheet{border-radius:var(--radius-dialog);background:linear-gradient(150deg,#fdfefff5,#e7f3faed);border:1px solid #ffffffeb;width:min(620px,100%);max-height:min(820px,100vh - 44px);padding:25px;overflow:auto;box-shadow:0 28px 90px #15354645,inset 0 1px #fff}.call-sheet-head{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:20px;display:flex}.call-sheet-head h2{letter-spacing:-.035em;margin:0;font-size:25px}.call-sheet-head .eyebrow{margin-bottom:6px}.call-sheet-head>button{border-radius:var(--radius-circle);width:36px;height:36px;color:var(--muted);cursor:pointer;background:#ffffffa3;border:1px solid #63899c33;flex:0 0 36px;place-items:center;margin:0;padding:0;line-height:1;display:grid}.call-sheet-head>button:focus-visible{outline-offset:2px;outline:3px solid #1f6f9f47}.call-form{gap:14px;display:grid}.call-form label{color:var(--muted);gap:7px;font-size:12px;font-weight:650;display:grid}.call-form input,.call-form textarea{border-radius:var(--radius-control);width:100%;color:var(--ink);background:#ffffffc7;border:1px solid #63899c47;outline:none;padding:11px 12px;font-size:16px}.call-form textarea{resize:vertical;min-height:78px}.call-form input:focus,.call-form textarea:focus{border-color:#1f6f9fb8;box-shadow:0 0 0 4px #318fc61f}.call-form fieldset{border:0;margin:0;padding:0}.call-form legend{color:var(--muted);margin-bottom:8px;font-size:12px;font-weight:650}.call-status-options{flex-wrap:wrap;gap:7px;display:flex}.call-status-options button{border-radius:var(--radius-control);cursor:pointer;background:#fff9;border:1px solid #63899c40;padding:8px 11px;font-size:12px}.call-status-options button.selected{background:var(--blue-soft);color:#155f8d;border-color:#1f6f9f7a;font-weight:720;box-shadow:inset 0 1px #ffffffd1}.call-follow-fields{border-radius:var(--radius-group);background:#fff7dd99;border:1px solid #cda64433;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:14px;display:grid}.call-follow-fields .span-2{grid-column:span 2}.call-error{border-radius:var(--radius-control);background:var(--red-soft);color:var(--red);border:1px solid #ddb5b1;margin-top:14px;padding:10px 12px;font-size:12px}.call-sheet-actions{justify-content:flex-end;gap:9px;margin-top:20px;display:flex}.call-sheet-actions button{min-width:104px}.call-action-spacer{flex:1}.delete-button{border-radius:var(--radius-control);min-height:42px;color:var(--red);cursor:pointer;background:#ffffffa3;border:1px solid #a9443f4d;padding:10px 15px;font-weight:700}.delete-button.confirm{background:var(--red);border-color:var(--red);color:#fff}.delete-button:disabled{opacity:.55;cursor:wait}@media (max-width:760px){.call-card{grid-column:auto;min-height:190px}.call-row{grid-template-columns:auto minmax(0,1fr) auto}.call-row time{display:none}.call-row b{grid-area:1/3}.call-overlay{background:#1025313d;place-items:end center;padding:0}.call-sheet{width:100%;max-width:100vw;max-height:100dvh;padding:22px 17px calc(20px + env(safe-area-inset-bottom));border-radius:var(--radius-dialog) var(--radius-dialog) 0 0;overscroll-behavior:contain}.call-follow-fields{grid-template-columns:1fr}.call-follow-fields .span-2{grid-column:auto}.call-sheet-actions{background:linear-gradient(#eef7fc00,#eef7fcfa 32%);flex-wrap:wrap;margin:18px -4px -4px;padding:9px 4px 4px;position:sticky;bottom:0}.call-sheet-actions .primary-button,.call-sheet-actions .secondary-button{flex:1}.call-sheet-actions .delete-button{order:3;width:100%}.call-action-spacer{display:none}}.primary-button.auth-submit-button,.primary-button.form-action-button,.secondary-button.form-action-button{box-sizing:border-box;border-radius:var(--radius-control);white-space:nowrap;justify-content:center;align-items:center;height:44px;min-height:44px;max-height:44px;padding:0 12px;font-size:14px;line-height:20px;display:inline-flex}.primary-button.form-action-button,.secondary-button.form-action-button{flex:0 0 128px;width:128px;min-width:128px;max-width:128px}.primary-button.auth-submit-button{width:100%;min-width:0}.form-actions{flex-wrap:wrap}.metric-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));grid-auto-rows:1fr;align-items:stretch}.metric-grid>.metric{box-sizing:border-box;border-radius:var(--radius-card);text-align:left;border:1px solid #fffffff0;grid-template-rows:minmax(18px,auto) 41px 15px;align-content:start;gap:4px;width:100%;min-width:0;min-height:124px;margin:0;padding:18px;display:grid}.metric-grid>.metric>p{align-self:start;margin:0;line-height:18px}.metric-grid>.metric>strong{align-self:start;line-height:41px;display:block}.metric-grid>.metric>small{align-self:start;margin:0;line-height:15px}.metric-button{text-align:left;width:100%;font:inherit;color:inherit;cursor:pointer;border-top:0;border-left:0;transition:transform .18s,box-shadow .18s,border-color .18s;position:relative}.metric-button small{color:var(--blue);margin-top:8px;font-size:10px;font-weight:700;display:block}.metric-button:hover{border-color:#2d6f934d;transform:translateY(-2px);box-shadow:0 12px 28px #224b601f}.calendar-day:focus-visible,.metric-button:focus-visible{outline-offset:2px;outline:3px solid #1f6f9f47}.calendar-grid>.calendar-day{border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:72px;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:#ffffff8c;border-radius:0;flex-direction:column;justify-content:space-between;padding:8px;transition:background .16s,box-shadow .16s;display:flex}.calendar-grid>.calendar-day.has-work{background:#d7f4e5c2}.calendar-grid>.calendar-day:hover{background:var(--blue-soft);box-shadow:inset 0 0 0 1px #1f6f9f38}.record-overlay{z-index:95;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#1025314d;place-items:center;padding:22px;display:grid;position:fixed;inset:0}.record-sheet{border-radius:var(--radius-dialog);background:linear-gradient(150deg,#fdfefffa,#e7f3faf5);border:1px solid #ffffffeb;width:min(650px,100%);max-height:min(820px,100vh - 44px);padding:25px;overflow:auto;box-shadow:0 28px 90px #15354645,inset 0 1px #fff}.record-sheet-head{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:20px;display:flex}.record-sheet-head h2{letter-spacing:-.035em;margin:0 0 6px;font-size:25px}.record-sheet-head .eyebrow{margin-bottom:6px}.record-sheet-head p:last-child{color:var(--muted);margin:0;font-size:12px}.record-sheet-head>button{border-radius:var(--radius-circle);width:36px;height:36px;color:var(--muted);cursor:pointer;background:#ffffffa3;border:1px solid #63899c33;flex:0 0 36px;place-items:center;margin:0;padding:0;line-height:1;display:grid}.record-close-icon{width:16px;height:16px;display:block;position:relative}.record-close-icon:after,.record-close-icon:before{content:"";background:currentColor;border-radius:1px;width:16px;height:2px;position:absolute;top:50%;left:50%}.record-close-icon:before{transform:translate(-50%,-50%)rotate(45deg)}.record-close-icon:after{transform:translate(-50%,-50%)rotate(-45deg)}.record-sheet-head>button:focus-visible{outline-offset:2px;outline:3px solid #1f6f9f47}.record-groups{gap:20px;display:grid}.record-date{color:var(--muted);justify-content:space-between;align-items:center;margin-bottom:8px;font-size:12px;display:flex}.record-date time{color:var(--ink);font-size:14px;font-weight:750}.record-list{border-radius:var(--radius-group);background:#ffffff9e;border:1px solid #688b9d2e;overflow:hidden}.record-list article{border-bottom:1px solid #688b9d29;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px;display:grid}.record-list article:last-child{border-bottom:0}.record-list article strong{font-size:14px}.record-list article p{color:var(--muted);margin:4px 0 0;font-size:11px}.record-list article>b{border-radius:var(--radius-circle);background:var(--green-soft);width:25px;height:25px;color:var(--green);place-items:center;font-size:13px;display:grid}.record-empty{border-radius:var(--radius-group);text-align:center;color:var(--muted);border:1px dashed #688b9d59;padding:42px 20px}.record-empty strong{color:var(--ink);font-size:15px;display:block}.record-empty p{margin:8px 0 0;font-size:12px}@media (max-width:760px){.calendar-grid>.calendar-day{min-height:54px;padding:5px}.record-overlay{place-items:end center;padding:0}.record-sheet{width:100%;max-width:100vw;max-height:100dvh;padding:22px 17px calc(20px + env(safe-area-inset-bottom));border-radius:var(--radius-dialog) var(--radius-dialog) 0 0}.record-list article{grid-template-columns:auto minmax(0,1fr) auto;gap:9px;padding:12px}.record-list .category-tag{padding:5px 7px;font-size:9px}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.metric-grid>.metric{border-radius:var(--radius-group);grid-template-rows:minmax(18px,auto) 36px 15px;min-height:116px;padding:16px}.metric-grid>.metric>strong{line-height:36px}.task-fields{grid-template-columns:minmax(0,1fr)}.task-fields .span-2{grid-column:auto}}@media (prefers-reduced-motion:reduce){.month-trigger-icon svg{transition:none}}.settings-table>div{grid-template-columns:44px 56px minmax(180px,1.2fr) 100px minmax(150px,1fr) 112px minmax(240px,1.5fr);align-items:stretch}.settings-table .settings-head>*{text-align:center;place-items:center;min-height:58px;padding:11px 9px;font-size:14px;font-weight:750;line-height:1.2;display:grid}.settings-row{transition:opacity .16s,box-shadow .16s,background .16s;position:relative}.settings-table .settings-row>input,.settings-table .settings-row>select{width:100%;min-width:0;height:auto;min-height:58px;box-shadow:none;color:var(--ink);background:#ffffff70;border:1px solid #688b9d33;border-top:0;border-left:0;border-radius:0;outline:none;padding:11px 12px}.settings-table .settings-row>select{text-align:center;text-align-last:center;cursor:pointer}.settings-table .settings-row>input:last-of-type{padding-right:66px}.settings-table .settings-row>input:hover,.settings-table .settings-row>select:hover{background:#eff7fbc2}.settings-table .settings-row>input:focus,.settings-table .settings-row>select:focus{z-index:2;background:#e0f1fad1;border-color:#1f6f9f66;border-radius:0;position:relative;box-shadow:inset 0 0 0 2px #1f6f9f3d}.settings-table .drag-handle,.settings-table .switch{width:100%;height:auto;min-height:58px;box-shadow:none;background:#ffffff57;border:1px solid #688b9d33;border-top:0;border-left:0;border-radius:0;place-items:center;margin:0;padding:0;display:grid}.settings-table .drag-handle{color:#8297a2;cursor:grab;touch-action:none}.settings-table .drag-handle:active{cursor:grabbing}.settings-table .drag-handle:focus-visible{z-index:3;outline-offset:-4px;outline:3px solid #1f6f9f4d;position:relative}.drag-dots{grid-template-columns:repeat(2,4px);gap:4px;display:grid}.drag-dots i{border-radius:var(--radius-circle);background:currentColor;width:4px;height:4px}.settings-table .switch input{width:20px;height:20px;min-height:0;box-shadow:none;accent-color:var(--blue);background:#fff;border:1px solid #5e819380;border-radius:5px;place-self:center;margin:0;padding:0;display:block}.settings-table .settings-row.dragging{z-index:4;background:#e2f2fbf5;box-shadow:inset 0 3px #1f6f9fb3,0 12px 30px #28587129;opacity:.86!important}.settings-table .settings-row.save-error{background:#fce7e87a}.settings-table .row-save-status{z-index:5;border-radius:var(--radius-small);white-space:nowrap;width:auto;height:auto;min-height:0;box-shadow:none;border:0;padding:4px 7px;font-size:10px;line-height:1.2;position:absolute;top:50%;right:9px;transform:translateY(-50%)}.row-save-status.saving-state{color:var(--muted);background:#f0f6f9eb}.row-save-status.saved-state{border-radius:var(--radius-circle);background:var(--green-soft);width:23px;height:23px;color:var(--green);place-items:center;padding:0;font-size:13px;font-weight:800;display:grid}.row-save-status.error-state{background:var(--red-soft);color:var(--red);cursor:pointer;font-weight:750}@media (prefers-reduced-motion:reduce){.settings-row{transition:none}}.sync-message{color:#244756;white-space:nowrap;border-radius:var(--radius-pill);background:#f4fbfdc7;border:1px solid #ffffffe0;align-items:center;gap:7px;max-width:min(320px,100vw - 32px);min-height:32px;padding:6px 13px;font-size:12px;font-weight:650;animation:sync-toast-in .2s ease-out both;display:flex;top:16px;left:calc(50vw + 116px);right:auto;transform:translate(-50%);box-shadow:0 8px 24px #284e621f,inset 0 1px #ffffffeb}.sync-message>i{border-radius:var(--radius-circle);background:#45a06f;flex:0 0 8px;width:8px;height:8px;box-shadow:0 0 0 3px #45a06f1a}.sync-message[data-tone=warning]{color:#755b22;background:#fff9e8e0;border-color:#fffffff0}.sync-message[data-tone=warning]>i{background:#d49a32;box-shadow:0 0 0 3px #d49a321f}.save-status{height:22px;color:var(--muted);pointer-events:none;align-items:center;gap:6px;font-size:11px;line-height:1;animation:save-status-in .16s ease-out both;display:flex;bottom:17px;right:18px;z-index:3!important;position:absolute!important}.save-status i{place-items:center;width:12px;height:12px;font-style:normal;display:grid}.save-status.saving i{border-radius:var(--radius-circle);border:1.5px solid #3a789738;border-top-color:#2d80aa;animation:save-spin .72s linear infinite}.save-status.saved{color:#32805b}.save-status.saved i{border-radius:var(--radius-circle);background:#439f6c21;font-size:9px;font-weight:800}.check-control{min-width:126px;transition:transform .16s cubic-bezier(.2,.75,.25,1),background .24s,border-color .24s,box-shadow .24s,color .24s}.routine-card .today-action{box-sizing:border-box;border-radius:var(--radius-control);flex:none;width:132px;min-width:0;max-width:100%;height:44px;min-height:44px;max-height:44px}.routine-card button.today-action{white-space:nowrap;justify-content:center;padding:0 12px}.routine-card .number-control.today-action{grid-template-rows:minmax(0,1fr);grid-template-columns:40px minmax(0,1fr) 40px;padding:0;display:grid}.routine-card .segment-control.today-action{grid-template-rows:minmax(0,1fr);grid-template-columns:repeat(3,minmax(0,1fr));padding:0;display:grid}.routine-card .number-control.today-action>button,.routine-card .segment-control.today-action>button{place-items:center;width:100%;min-width:0;height:100%;margin:0;padding:0;line-height:1;display:grid}.routine-card .number-control.today-action .number-value{min-width:0;height:100%;font-size:17px;font-weight:700;position:relative}.routine-card .number-control.today-action .number-value>input{text-align:center;width:100%;min-width:0;height:100%;margin:0;padding:0;display:block}.routine-card .check-control.today-action{justify-content:space-between;gap:0;width:101px;padding:0 8px}.attention-list>.follow-up-reminder{align-items:center}.attention-list>.follow-up-reminder>.info-dot{flex:0 0 9px;align-self:center;width:9px;height:9px;margin:0;display:block}.attention-list>.follow-up-reminder>div{overflow-wrap:anywhere;min-width:0}.check-control .check-label,.check-control.checked .check-label{white-space:nowrap;align-items:center;width:3em;height:1.5em;line-height:1.5;display:inline-flex}.check-label .roll-window{flex:0 0 1em;width:1em}.roll-window{vertical-align:middle;perspective:100px;height:1.5em;font-style:normal;line-height:1.5;display:inline-block;position:relative;overflow:hidden}.roll-window i{font:inherit;font-style:normal;display:block}.roll-static{white-space:pre}.roll-concealed{visibility:hidden}.roll-cycle,.roll-in,.roll-out{pointer-events:none;position:absolute;inset:0}.roll-cycle{perspective:100px}.roll-in,.roll-out{text-align:center;backface-visibility:hidden;transform-origin:center center -.55em;animation-duration:.2s;animation-timing-function:cubic-bezier(.2,.75,.25,1);animation-fill-mode:both}.roll-up{--roll-exit:72deg;--roll-enter:-72deg}.roll-down{--roll-exit:-72deg;--roll-enter:72deg}.roll-out{animation-name:roll-out}.roll-in{animation-name:roll-in}@keyframes roll-out{0%{opacity:1;transform:rotateX(0)}to{transform:rotateX(var(--roll-exit));opacity:0}}@keyframes roll-in{0%{transform:rotateX(var(--roll-enter));opacity:0}to{opacity:1;transform:rotateX(0)}}.number-value>.roll-window{pointer-events:none;align-items:center;height:100%;display:grid;position:absolute;inset:0}.number-value .roll-cycle{height:1.5em;top:50%;bottom:auto;transform:translateY(-50%)}.number-value.number-rolling:not(:focus-within)>input{color:#0000;-webkit-text-fill-color:transparent}.number-value:focus-within>.roll-window{display:none}@media (prefers-reduced-motion:reduce){.roll-cycle{display:none}.roll-concealed{visibility:visible}.number-value>.roll-window{display:none}.number-value.number-rolling:not(:focus-within)>input{color:var(--ink);-webkit-text-fill-color:currentColor}}.check-control:active{transform:translateY(1px)scale(.975)}.check-control .check-box{background:linear-gradient(155deg,#ffffffe6,#ddeef6b8);transition:border-color .22s,filter .22s}.check-control .check-box:before{content:"";border-radius:calc(var(--radius-small) - 1px);opacity:0;background:linear-gradient(145deg,#61c992,#208459 72%);transition:opacity .18s,transform .24s cubic-bezier(.2,.8,.25,1);position:absolute;inset:0;transform:scale(.68)}.check-control .check-box svg{z-index:1;position:relative}.check-control .check-box path{transition:stroke-dashoffset .22s}.check-control.checked .check-box{background:0 0}.check-control.checked .check-box:before{opacity:1;transform:scale(1)}.task-grid>.routine-card{min-height:184px;padding:18px 20px 16px}.task-grid>.routine-card .routine-top{margin-bottom:12px}.task-grid>.routine-card h2{margin-bottom:6px}.task-grid>.routine-card p{min-height:0;margin-bottom:10px}.completed-routines summary .completed-chevron{flex:0 0 20px;place-items:center;width:20px;height:20px;line-height:1;display:grid}.completed-chevron svg{width:16px;height:16px;display:block}.password-panel .password-fields{grid-template-columns:repeat(3,minmax(0,1fr))}.password-fields label{grid-template-columns:minmax(0,1fr);align-content:start;min-width:0}.password-fields input{box-sizing:border-box;appearance:none;border-radius:var(--radius-control);width:100%;min-width:0;max-width:100%;height:44px;margin:0;padding:10px 12px;line-height:20px;display:block}.password-fields .span-2{grid-column:1/-1}.report-metrics{grid-template-columns:repeat(auto-fit,minmax(min(100%,90px),1fr))}.report-metrics>div{min-width:0}@media (max-width:760px){.task-grid>.routine-card{min-height:176px;padding:16px 18px}.password-panel .password-fields{grid-template-columns:minmax(0,1fr)}.report-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.report-metrics>div:first-child{grid-column:1/-1}}.routine-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.standard-fields textarea{box-sizing:border-box;min-width:0;max-width:100%}.call-form .task-field-control{font-size:16px}.call-form .call-follow-fields,.call-form.standard-fields{min-width:0}.call-form .call-follow-fields{grid-template-columns:repeat(2,minmax(0,1fr))}:is(.task-fields,.standard-fields) .task-field-control>:is(input,select):focus{box-shadow:none;border:0}@media (max-width:760px){.routine-fields{grid-template-columns:minmax(0,1fr)}.routine-fields .span-2{grid-column:auto}.call-form .call-follow-fields{grid-template-columns:minmax(0,1fr)}}@media (hover:none) and (pointer:coarse),(max-width:760px){.password-fields input,.standard-fields textarea,.task-fields textarea,:is(.task-fields,.standard-fields) .task-field-control>input,:is(.task-fields,.standard-fields) .task-field-control>select{font-size:16px}}.routine-card.stamping .check-control .check-box{animation:check-settle .36s cubic-bezier(.2,.78,.25,1) both}.routine-card.stamping .check-control .check-box:before{animation:check-fill-in .3s cubic-bezier(.16,.82,.24,1) both}.routine-card.stamping .check-control .check-box path{animation:check-path-refined .34s cubic-bezier(.2,.74,.2,1) 60ms both}@keyframes check-path-refined{0%{stroke-dashoffset:24px;opacity:.2}to{stroke-dashoffset:0;opacity:1}}@keyframes check-fill-in{0%{opacity:.2;transform:scale(.68)}72%{opacity:1;transform:scale(1.045)}to{opacity:1;transform:scale(1)}}@keyframes check-settle{0%{transform:translateY(-1px)}52%{transform:translateY(1px)scale(.97)}to{transform:none}}@keyframes save-spin{to{transform:rotate(1turn)}}@keyframes save-status-in{0%{opacity:0;transform:translateY(2px)}to{opacity:1;transform:none}}@keyframes sync-toast-in{0%{opacity:0;transform:translate(-50%,-5px)scale(.98)}to{opacity:1;transform:translate(-50%)scale(1)}}@media (max-width:1000px) and (min-width:761px){.sync-message{left:calc(50vw + 122.5px)}}@media (max-width:760px){.sync-message{left:50%;right:auto;top:calc(10px + env(safe-area-inset-top));max-width:calc(100vw - 32px)}}@media (prefers-reduced-motion:reduce){.check-control,.check-control .check-box,.check-control .check-box path,.check-control .check-box:before,.routine-card.stamping .check-control .check-box,.routine-card.stamping .check-control .check-label,.save-status,.save-status.saving i,.sync-message{transition:none;animation:none}}.bottom-nav .tab-icon,.nav-list .tab-icon{stroke:none;fill:none;pointer-events:none;flex:0 0 28px;width:28px;height:28px;display:block}.receipt-print-overlay{z-index:120;-webkit-backdrop-filter:blur(14px)saturate(85%);backdrop-filter:blur(14px)saturate(85%);background:#1a2e4061;place-items:center;padding:14px;animation:receipt-overlay-in .22s ease-out both;display:grid;position:fixed;inset:0;overflow-y:auto}.receipt-printer-scene{isolation:isolate;border-radius:var(--radius-dialog);background:radial-gradient(at 50% 20%,#f8fcff 0,#eaf2f8 48%,#d7e4ee 100%);border:1px solid #fffc;width:min(430px,100%);height:min(680px,100dvh - 28px);min-height:450px;padding:58px 24px 82px;position:relative;overflow:hidden;box-shadow:0 32px 90px #142e3b40,inset 0 1px #fff}.receipt-printer-scene:focus{outline:none}.call-share-close,.receipt-print-close{z-index:8;border-radius:var(--radius-circle);color:#577a92;cursor:pointer;background:#ffffff85;border:1px solid #87abc333;place-items:center;width:34px;height:34px;padding:0;transition:background .2s,box-shadow .2s;display:grid;position:absolute;top:16px;right:17px;box-shadow:inset 0 1px #fff}.call-share-close:hover,.receipt-print-close:hover{background:#fff;box-shadow:0 3px 9px #5278971a,inset 0 1px #fff}.call-share-close:focus-visible,.receipt-print-close:focus-visible{outline-offset:3px;outline:2px solid #4a8db6}.receipt-print-close:disabled{opacity:.4;cursor:default}.receipt-printer-stage{--receipt-paper-width:80cqw;--receipt-slot-width:87.43cqw;--receipt-slot-top:31.43cqw;--receipt-feed-top:34.86cqw;width:min(350px,100%,max(190px,65.7895dvh - 105.263px));height:100%;margin:0 auto;position:relative;container-type:inline-size}.receipt-printer-shadow{z-index:0;border-radius:var(--radius-circle);filter:blur(13px);background:#285d8430;height:9.143cqw;position:absolute;top:42cqw;left:3.429cqw;right:3.429cqw}.receipt-printer{z-index:2;transform-origin:50% 80%;background:linear-gradient(120deg,#bfe9ff9e,#7fc7ed61 54%,#52a5d67a);border:1px solid #5ea7cc73;border-radius:7.143cqw 7.143cqw 5.143cqw 5.143cqw;height:46.857cqw;position:absolute;inset:0 0 auto;box-shadow:0 13px 24px #386d8d26,inset 0 2px 1px #ffffffed,inset 5px 0 8px #ffffff70,inset -4px -5px 9px #438eb02b}.receipt-printer:after{content:"";background:linear-gradient(#b8e5ff20,#5299c238);border-bottom:2px solid #77aac780;border-radius:0 0 4.857cqw 4.857cqw;height:11.143cqw;position:absolute;inset:auto 1.429cqw 1.429cqw;box-shadow:inset 0 -1px #e9f8ffb3}.receipt-printer-top{background:linear-gradient(155deg,#ffffffb3,#d0eeff66 42%,#92cdee38);border-bottom:1px solid #84bad16b;border-radius:6.857cqw 6.857cqw 2.571cqw 2.571cqw;height:19.429cqw;position:absolute;inset:0 0 auto;box-shadow:inset 0 2px 1px #fff,inset 0 -2px 3px #4d8fac1f,0 1px #ffffff9c}.receipt-printer-top>span{color:#3b7396;letter-spacing:.18em;text-shadow:0 1px #fff;font-size:4.286cqw;font-weight:750;line-height:1;position:absolute;top:7.2cqw;left:7.714cqw}.receipt-printer-seam{z-index:1;background:linear-gradient(90deg,#0000,#609bb54d 10% 90%,#0000);height:.286cqw;position:absolute;top:20.286cqw;left:4.571cqw;right:4.571cqw;box-shadow:0 1px #fff9}.receipt-printer-controls{z-index:5;justify-content:flex-end;align-items:center;gap:2.571cqw;height:5.429cqw;display:flex;position:absolute;top:23.143cqw;left:7.714cqw;right:7.429cqw}.receipt-printer-controls i{border-radius:var(--radius-circle);background:#8dcca6;border:1px solid #4d967a;width:1.714cqw;height:1.714cqw;display:block;box-shadow:0 0 0 3px #a9b69c20,inset 0 1px 1px #effff2,0 0 6px #65c29455}.receipt-printer-controls b{color:#f4ffff;letter-spacing:.07em;background:linear-gradient(#e2f6ffbd,#80bbdf99);border:1px solid #629bb582;border-radius:1.429cqw;place-items:center;width:8.857cqw;height:5.143cqw;font:6px ui-monospace,monospace;display:grid;box-shadow:inset 0 1px #fff,0 2px 3px #417a9a26}.receipt-printer-front{z-index:1;background:linear-gradient(#72b3d326,#dcf4ff20);border-top:1px solid #6197b34d;border-radius:0 0 2cqw 2cqw;height:6.571cqw;position:absolute;bottom:4cqw;left:6.286cqw;right:6.286cqw}.receipt-printer-feet{z-index:-1;justify-content:space-between;display:flex;position:absolute;bottom:-2cqw;left:9.143cqw;right:9.143cqw}.receipt-printer-feet i{background:linear-gradient(#6c9eb6,#47748d);border-radius:0 0 1.714cqw 1.714cqw;width:11.143cqw;height:3.429cqw;box-shadow:0 3px 4px #283c3830}.receipt-paper-window{z-index:4;left:0;right:0;top:var(--receipt-feed-top);pointer-events:none;height:calc(100% + 90px);position:absolute;overflow:hidden}.receipt-paper{width:var(--receipt-paper-width);transform-origin:50% 0;will-change:transform,opacity;pointer-events:auto;background:#fffefa;margin:0 auto;padding:1.143cqw .857cqw 1.714cqw;position:relative;transform:translateY(calc(-100% - 12px));box-shadow:0 3px 5px #385c7a14,0 15px 24px -8px #32567633}.receipt-paper:before{content:"";z-index:2;pointer-events:none;background:linear-gradient(90deg,#767f7210,#0000 3% 97%,#767f7210);position:absolute;inset:0}.receipt-paper:after{content:"";background:linear-gradient(135deg,#fffefa 50%,#0000 0) 0 0/4px 4px repeat-x;height:3px;position:absolute;bottom:-2px;left:0;right:0}.receipt-paper-window:after{content:"";z-index:2;width:var(--receipt-paper-width);pointer-events:none;background:linear-gradient(#18364a52,#355e7820 35%,#0000);height:5.143cqw;top:0}.receipt-paper-window:after,.receipt-printer-lip{position:absolute;left:50%;transform:translate(-50%)}.receipt-printer-lip{z-index:5;top:var(--receipt-slot-top);width:var(--receipt-slot-width);background:linear-gradient(#63879b,#2b4b60 65%,#183244);border:1px solid #5e8ba3;border-bottom:0;border-radius:2.286cqw 2.286cqw 0 0;height:3.429cqw;box-shadow:inset 0 2px 3px #10283d99}.receipt-paper img{background:#fff;width:100%;height:auto;display:block}.receipt-printer-slot{z-index:3;width:var(--receipt-slot-width);left:50%;top:var(--receipt-slot-top);background:linear-gradient(#587c93,#243f52 40%,#182e3f 67%,#597d94);border:1px solid #5e8ba3;border-radius:2.286cqw;height:6.857cqw;position:absolute;transform:translate(-50%);box-shadow:inset 0 3px 5px #10283dcc,0 1px #edfaff,0 4px 6px #35596f2b}.receipt-printer-slot span{background:repeating-linear-gradient(90deg,#152631 0 3px,#294152 3px 5px);border-radius:.571cqw;height:2cqw;position:absolute;top:2.286cqw;left:3.143cqw;right:3.143cqw;box-shadow:0 1px #a8cbdc66}.receipt-printer-slot i{background:linear-gradient(#91b4c7,#4a6e85);border-radius:.857cqw;width:1.714cqw;height:2.571cqw;position:absolute;top:2cqw;box-shadow:inset 0 1px 1px #b6dae966}.receipt-printer-slot i:first-child{left:1.714cqw}.receipt-printer-slot i:nth-child(3){right:1.714cqw}.receipt-printer-cutter{transform-origin:50% 0;background:repeating-linear-gradient(135deg,#bfd8e5 0 2px,#7e9cad 2px 4px);height:.571cqw;position:absolute;top:3.143cqw;left:3.143cqw;right:3.143cqw;box-shadow:0 1px 2px #17354a70}.receipt-print-footer{z-index:7;text-align:center;position:absolute;bottom:20px;left:20px;right:20px}.receipt-print-actions{justify-content:center;min-height:42px;display:flex}.receipt-print-actions button{border-radius:var(--radius-control);min-width:144px;height:42px;margin:0;animation:receipt-actions-in .25s ease-out both}.receipt-print-message{color:#756047;margin:8px 0 0;font-size:12px}.receipt-print-overlay.is-printing .receipt-printer{animation:receipt-printer-hum .14s steps(2) .4s 18}.receipt-print-overlay.is-printing .receipt-printer-controls i{animation:receipt-status-blink .6s ease-in-out infinite}.receipt-print-overlay.is-printing .receipt-paper{animation:receipt-paper-out var(--receipt-print-duration) linear forwards}.receipt-print-overlay.is-printing .receipt-printer-slot span{animation:receipt-roller-feed .16s linear .4s 16}.receipt-print-overlay.is-printing .receipt-printer-cutter{animation:receipt-cutter-stroke var(--receipt-print-duration) linear both}.receipt-print-overlay.is-ready .receipt-paper{transform:translateY(0)}.receipt-print-overlay.is-saving .receipt-paper{animation:receipt-paper-pull var(--receipt-pull-duration) cubic-bezier(.4,0,.7,.25) forwards}.receipt-print-overlay.is-saving .receipt-printer{animation:receipt-printer-release .32s ease-out both}@keyframes receipt-overlay-in{0%{opacity:0}to{opacity:1}}@keyframes receipt-actions-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes receipt-printer-hum{0%,to{transform:translateY(0)}50%{transform:translateY(.35px)}}@keyframes receipt-printer-release{0%,to{transform:none}40%{transform:translateY(-1px)}}@keyframes receipt-status-blink{0%,to{opacity:.45}50%{opacity:1}}@keyframes receipt-roller-feed{to{background-position:5px 0}}@keyframes receipt-cutter-stroke{0%,89%,to{filter:brightness();transform:translateY(0)}93%,96%{filter:brightness(1.3);transform:translateY(4px)}}@keyframes receipt-paper-out{0%,12%{transform:translateY(calc(-100% - 12px))}17%{transform:translateY(-93%)}34%{transform:translateY(-69%)}37%{transform:translateY(-69%)}54%{transform:translateY(-43%)}57%{transform:translateY(-43%)}73%{transform:translateY(-19%)}76%{transform:translateY(-19%)}89%,96%{transform:translateY(-2px)}to{transform:translateY(0)}}@keyframes receipt-paper-pull{0%{opacity:1;transform:translateY(0)}20%{opacity:1;transform:translateY(8px)rotate(-.6deg)}55%{opacity:1}to{opacity:0;transform:translateY(75%)rotate(-4deg)}}@media (max-width:760px){.receipt-printer-scene{border-radius:var(--radius-dialog);width:min(390px,100%);padding-left:20px;padding-right:20px}.receipt-printer-top>span{left:6.571cqw}.receipt-printer-controls{left:6.571cqw;right:6.571cqw}}@media (max-height:600px){.receipt-printer-scene{padding-top:58px}.receipt-print-footer{bottom:14px}}@media (prefers-reduced-motion:reduce){.receipt-print-actions button,.receipt-print-overlay,.receipt-print-overlay.is-printing .receipt-paper,.receipt-print-overlay.is-printing .receipt-printer,.receipt-print-overlay.is-printing .receipt-printer-controls i,.receipt-print-overlay.is-printing .receipt-printer-cutter,.receipt-print-overlay.is-printing .receipt-printer-slot span,.receipt-print-overlay.is-saving .receipt-paper,.receipt-print-overlay.is-saving .receipt-printer{animation:none}.receipt-print-overlay.is-printing .receipt-paper{transform:translateY(0)}.receipt-print-overlay.is-saving .receipt-paper{opacity:0}}.matters-page{max-width:1200px;margin:0 auto;padding:28px 28px 0}.matters-tabs{border:1px solid var(--line,#dbe4e9);border-radius:var(--radius-group);background:#e9f2f8cc;gap:6px;max-width:420px;margin-bottom:24px;padding:5px;display:flex}.matters-tabs button{border-radius:var(--radius-control);min-height:44px;font:inherit;color:#637984;cursor:pointer;background:0 0;border:0;flex:1}.matters-tabs button[aria-selected=true]{color:#1f6f9f;background:#fff;font-weight:700;box-shadow:0 2px 8px #28495d12}.matters-page .page-wrap{padding:0}.call-items-section{padding-bottom:40px}.call-item{padding:22px}.call-item h2{margin:14px 0 8px}.call-item p{overflow-wrap:anywhere}.call-item-heading{color:#647780;flex-wrap:wrap;align-items:center;gap:12px;font-size:13px;display:flex}.review-tag{color:#98601e}.legacy-call-details dd,.preserve-lines{white-space:pre-wrap;overflow-wrap:anywhere}.call-history,.legacy-call-details{color:#536975;margin-top:16px;font-size:14px}.call-history summary,.legacy-call-details summary{cursor:pointer;min-height:36px}.legacy-call-details dl>div{margin:12px 0}.legacy-call-details dt{font-weight:600}.legacy-call-details dd{margin:4px 0}.call-history ul{padding-left:20px}.call-history li{margin:8px 0}.call-item-fields input,.call-item-fields select,.call-item-fields textarea{width:100%;min-width:0;font-size:16px}.call-item-fields textarea{min-height:100px}.call-item-fields .review-confirm{align-items:center;gap:8px;display:flex}.review-confirm input{flex:none;width:20px}.call-report-summary{color:#647780;margin:18px 0;font-size:13px;line-height:1.7}@media (max-width:760px){.matters-page{padding:18px 16px 0}.matters-tabs{max-width:none;margin-bottom:20px}.call-item{padding:18px}.call-item .form-actions{flex-wrap:wrap}.call-item .form-actions button{flex:1;min-width:120px}.call-item-fields{grid-template-columns:minmax(0,1fr)}.call-item-fields .span-2{grid-column:auto}}.task-delete-button{color:var(--red);border-color:#a9443f4d}.task-delete-button:hover{background:var(--red-soft)}.matters-page .filter-row{grid-template-columns:repeat(3,minmax(0,1fr));width:100%;max-width:420px;display:grid}.matters-page .filter-row button{text-align:center;width:100%;min-width:0}@media (max-width:760px){.matters-page .filter-row{max-width:none}}.quick-notes-trigger{cursor:pointer;flex-direction:column;gap:3px}.quick-notes-trigger:hover{filter:brightness(1.03)}.quick-notes-trigger:focus-visible{outline:3px solid var(--blue);outline-offset:3px}.quick-notes-trigger strong{letter-spacing:0;font-size:16px}.quick-notes-panel{border-radius:var(--radius-card);box-shadow:var(--shadow-sm);background:linear-gradient(145deg,#ffffffe0,#e7f2fad9);border:1px solid #fffffff0;margin-bottom:22px;padding:20px}.quick-notes-panel[hidden]{display:none}.quick-notes-heading{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:14px;display:flex}.quick-notes-heading h2{margin:0;font-size:18px}.quick-notes-empty,.quick-notes-heading span{color:var(--muted);font-size:12px}.quick-notes-create{gap:10px;display:flex}.quick-notes-create input,.quick-notes-edit input{border:1px solid var(--line-strong);border-radius:var(--radius-control);background:#fff;outline:none;flex:1;min-width:0;min-height:44px;padding:10px 12px}.quick-notes-create input:focus,.quick-notes-edit input:focus{border-color:var(--blue);box-shadow:0 0 0 2px var(--blue-soft)}.quick-notes-create button{border-radius:var(--radius-control);min-width:76px}.quick-notes-list{margin:14px 0 0;padding:0;list-style:none}.quick-notes-list li{border-bottom:1px solid #648b9e29;align-items:center;gap:10px;min-height:54px;padding:8px 0;display:flex}.quick-notes-list li:last-child{border-bottom:0}.quick-notes-list li>span{overflow-wrap:anywhere;flex:1;min-width:0;font-size:14px}.quick-notes-check{border:1px solid var(--line-strong);border-radius:var(--radius-small);width:30px;height:30px;color:var(--green);cursor:pointer;background:#fff;flex:none;font-size:20px;line-height:1}.quick-notes-actions,.quick-notes-edit{align-items:center;gap:6px;display:flex}.quick-notes-actions button,.quick-notes-completed li>button:last-child,.quick-notes-edit button{border:1px solid var(--line-strong);border-radius:var(--radius-small);cursor:pointer;min-height:32px;color:var(--blue);background:#fffc;padding:5px 9px;font-size:12px}.quick-notes-edit{flex:1;min-width:0}.quick-notes-completed{border-top:1px solid var(--line);margin-top:15px;padding-top:12px}.quick-notes-completed summary{cursor:pointer;color:var(--muted);font-size:13px}.quick-notes-completed li>span{color:var(--muted);text-decoration:line-through}@media (max-width:760px){.quick-notes-panel{padding:15px}.quick-notes-list li{flex-wrap:wrap;align-items:flex-start}.quick-notes-actions{width:100%;padding-left:40px}.quick-notes-edit{flex-wrap:wrap}}.quick-notes-heading .quick-notes-count{border-radius:var(--radius-pill);color:#1e6d98;background:#e9f3f8b8;border:1px solid #648ea133;place-items:center;min-width:27px;height:27px;padding:0 7px;font-size:12px;font-weight:700;line-height:1;display:grid}.quick-notes-create .task-field-control{flex:1;width:auto;min-width:0;height:44px}.quick-notes-create .task-field-control>input{font-size:16px}.quick-notes-create .primary-button.soft-action-button{white-space:nowrap;flex:0 0 74px;width:74px;min-width:74px;max-width:74px;height:44px;padding:0 8px}.quick-notes-create .primary-button.soft-action-button:disabled{opacity:.55;cursor:not-allowed;transform:none}@media (max-width:760px){.quick-notes-create .primary-button.soft-action-button{flex-basis:64px;width:64px;min-width:64px;max-width:64px}}.bottom-nav,.sidebar{-webkit-backdrop-filter:blur(5px)saturate(135%);backdrop-filter:blur(5px)saturate(135%);background:linear-gradient(125deg,#fff3,#ffffff09 38%,#def1fb11 72%,#ffffff2b);border:1px solid #5974873d;box-shadow:0 12px 30px #2041551f,0 2px 4px #2041550d,inset 0 1px 1px #fffffffa,inset 0 -1px 1px #ffffffbd,inset 1px 0 1px #ffffffd9,inset -1px 0 1px #ffffff9e}.bottom-nav:before,.sidebar:before{content:"";border-radius:inherit;pointer-events:none;background:linear-gradient(168deg,#ffffff45,#0000 22% 78%,#ffffff29);height:auto;position:absolute;inset:0;transform:none;box-shadow:inset 0 0 0 1px #ffffff5c}.bottom-nav a,.nav-list a{isolation:isolate;color:#294858;text-shadow:0 1px 3px #fffffff2;-webkit-tap-highlight-color:transparent;border:1px solid #0000;position:relative}.bottom-nav a{z-index:1}.bottom-nav a:before{content:"";z-index:-1;border-radius:inherit;pointer-events:none;opacity:0;background:linear-gradient(#ffffff47,#ffffff0a 48%,#ffffff24);transition:opacity .18s;position:absolute;inset:0;box-shadow:inset 0 1px 1px #ffffffc2,inset 0 -1px 1px #ffffff6b}.bottom-nav a.active,.nav-list a.active{color:#006eaa;font-weight:750}.nav-list a.active{text-shadow:none;background:#ffffff29;border-color:#ffffff85;box-shadow:inset 0 1px #fff6,0 2px 5px #2f516a09}.bottom-nav a.active{background:#ffffff13;border-color:#7391a33b;box-shadow:0 2px 5px #2f516a14}.bottom-nav a.active:before{opacity:1}.bottom-nav a:hover,.nav-list a:hover{background:#ffffff29;border-color:#ffffff5c}.bottom-nav a:focus-visible,.nav-list a:focus-visible{outline-offset:-4px;outline:2px solid #23668c}.nav-list a{border-radius:var(--radius-group)}.sidebar-foot{box-shadow:none;background:#ffffff14;border-color:#ffffff3d}.today-sync-error{z-index:45;border-radius:var(--radius-group);color:#705323;background:#fff8e8;border:1px solid #dec991;align-items:center;gap:12px;width:max-content;max-width:calc(100vw - 310px);padding:12px 16px;font-size:13px;display:flex;position:fixed;bottom:24px;left:calc(50% + 135px);transform:translate(-50%);box-shadow:0 8px 28px #32414b29}.today-sync-error span{overflow-wrap:anywhere;min-width:0}.today-sync-error a,.today-sync-error button{flex-shrink:0}.today-sync-error a{color:inherit}@media (max-width:760px){.bottom-nav{border-radius:var(--radius-pill);background:linear-gradient(#ffffff2b,#ffffff0d 50%,#ffffff21);grid-template-columns:repeat(4,minmax(0,1fr));gap:2px;padding:5px;box-shadow:0 4px 12px #2041550f,inset 0 1px 1px #ffffffe6,inset 0 -1px 1px #fff9}.bottom-nav:before{background:linear-gradient(#ffffff29,#0000 30% 75%,#ffffff1a);box-shadow:inset 0 0 0 1px #ffffff47}.bottom-nav a{border-radius:var(--radius-pill);gap:2px;min-width:0;height:58px;padding:0;font-size:11px}.today-sync-error{left:16px;right:16px;bottom:calc(90px + env(safe-area-inset-bottom));flex-wrap:wrap;width:auto;max-width:none;transform:none}.page-wrap{padding-bottom:calc(110px + env(safe-area-inset-bottom))}}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.bottom-nav,.sidebar{background:#edf4f8}}@media (prefers-contrast:more),(prefers-reduced-transparency:reduce){.bottom-nav,.sidebar{background:#edf4f8}.bottom-nav a.active,.nav-list a.active{text-shadow:none;background:#d3e6f1}.bottom-nav a:after,.nav-list a:after{display:none}}@media (prefers-reduced-motion:reduce){.bottom-nav a:after,.bottom-nav a:before,.nav-list a:after,.nav-list a:before{transition:none}}.metric-grid>.metric,.report-actions.panel,.report-metrics>div,.report-preview{-webkit-backdrop-filter:blur(1.5px)saturate(135%);backdrop-filter:blur(1.5px)saturate(135%);background:#ffffff14;border:1px solid #59748733;box-shadow:0 8px 24px #20415514,0 2px 4px #20415509,inset 0 1px 1px #fffffffa,inset 0 -1px 1px #ffffffbd,inset 1px 0 1px #ffffffd9,inset -1px 0 1px #ffffff9e}.report-metrics>div{border-radius:var(--radius-control)}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.metric-grid>.metric,.report-actions.panel,.report-metrics>div,.report-preview{background:#edf4f8}}@media (prefers-contrast:more),(prefers-reduced-transparency:reduce){.metric-grid>.metric,.report-actions.panel,.report-metrics>div,.report-preview{background:#edf4f8}}.completed-routines,.quick-notes-panel,.task-grid>.routine-card{-webkit-backdrop-filter:blur(1.5px)saturate(135%);backdrop-filter:blur(1.5px)saturate(135%);background:#ffffff14;border:1px solid #59748733;box-shadow:0 8px 24px #20415514,0 2px 4px #20415509,inset 0 1px 1px #fffffffa,inset 0 -1px 1px #ffffffbd,inset 1px 0 1px #ffffffd9,inset -1px 0 1px #ffffff9e}.task-grid>.routine-card.done{background:#e4faee1f}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.completed-routines,.quick-notes-panel,.task-grid>.routine-card{background:#edf4f8}}@media (prefers-contrast:more),(prefers-reduced-transparency:reduce){.completed-routines,.quick-notes-panel,.task-grid>.routine-card{background:#edf4f8}.task-grid>.routine-card.done{background:#e5f3eb}}.matters-page .key-task,.overview-side>.panel,.progress-layout>.panel{-webkit-backdrop-filter:blur(1.5px)saturate(135%);backdrop-filter:blur(1.5px)saturate(135%);background:#ffffff14;border:1px solid #59748733;box-shadow:0 8px 24px #20415514,0 2px 4px #20415509,inset 0 1px 1px #fffffffa,inset 0 -1px 1px #ffffffbd,inset 1px 0 1px #ffffffd9,inset -1px 0 1px #ffffff9e}.filter-row,.matters-tabs{-webkit-backdrop-filter:blur(5px)saturate(135%);backdrop-filter:blur(5px)saturate(135%);background:linear-gradient(125deg,#fff3,#ffffff09 38%,#def1fb11 72%,#ffffff2b);border-color:#5974873d;border-radius:20px;padding:5px;box-shadow:0 12px 30px #2041551f,0 2px 4px #2041550d,inset 0 1px 1px #fffffffa,inset 0 -1px 1px #ffffffbd,inset 1px 0 1px #ffffffd9,inset -1px 0 1px #ffffff9e}.filter-row button,.matters-tabs button{color:#294858;text-shadow:0 1px 3px #fffffff2;border-radius:14px}.filter-row button.active,.matters-tabs button[aria-selected=true]{color:#006eaa;text-shadow:none;background:#ffffff4d;box-shadow:inset 0 1px #ffffffe6,inset 0 0 0 1px #588fac29,0 3px 9px #2f516a17}.filter-row button:hover,.matters-tabs button:hover{background:#ffffff29}.filter-row button:focus-visible,.matters-tabs button:focus-visible{outline-offset:-2px;outline:2px solid #23668c}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.filter-row,.matters-page .key-task,.matters-tabs,.overview-side>.panel,.progress-layout>.panel{background:#edf4f8}}@media (prefers-contrast:more),(prefers-reduced-transparency:reduce){.filter-row,.matters-page .key-task,.matters-tabs,.overview-side>.panel,.progress-layout>.panel{background:#edf4f8}.filter-row button.active,.matters-tabs button[aria-selected=true]{background:#d3e6f1}}.filter-row button.active:hover,.matters-tabs button[aria-selected=true]:hover{background:#ffffff4d}.sliding-selection{isolation:isolate}.sliding-selection:not(.bottom-nav){position:relative}.sliding-selection[data-slide-draggable=true]{touch-action:pan-y pinch-zoom;-webkit-user-select:none;user-select:none}.sliding-selection>a,.sliding-selection>button{z-index:1;position:relative}.sliding-selection[data-pointer-focus=true]>a:focus,.sliding-selection[data-pointer-focus=true]>button:focus{outline:none}.sliding-selection>.selection-indicator{z-index:0;visibility:hidden;position:absolute;top:0;left:0}.sliding-selection .selection-glass,.sliding-selection>.selection-indicator{pointer-events:none;box-sizing:border-box;transform-origin:50%;min-width:0;margin:0;padding:0;display:block}.sliding-selection .selection-glass{border-radius:inherit;background:linear-gradient(#ffffff47,#ffffff0a 48%,#ffffff24),#ffffff13;border:1px solid #7391a33b;width:100%;height:100%;position:relative;box-shadow:0 2px 5px #2f516a14,inset 0 1px 1px #ffffffc2,inset 0 -1px 1px #ffffff6b}.sliding-selection .selection-glass:after{content:"";border-radius:inherit;pointer-events:none;opacity:0;background:linear-gradient(160deg,#ffffff38,#0000 55%,#ffffff1a);transition:opacity .14s;position:absolute;inset:0;box-shadow:0 4px 10px #2f516a17,inset 0 1px 1px #ffffffbf}.sliding-selection[data-selection-ready=true]>.selection-indicator{visibility:visible}.sliding-selection[data-pressed=true] .selection-glass:after{opacity:1}.sliding-selection[data-animating=true] .selection-glass,.sliding-selection[data-animating=true]>.selection-indicator{will-change:transform}.bottom-nav.sliding-selection{overflow:visible}.sliding-selection[data-dragging=true],.sliding-selection[data-dragging=true]>a,.sliding-selection[data-dragging=true]>button{cursor:grabbing}.sliding-selection[data-selection-ready=true]>a.active,.sliding-selection[data-selection-ready=true]>button.active,.sliding-selection[data-selection-ready=true]>button[aria-selected=true]{box-shadow:none;background:0 0;border-color:#0000}.sliding-selection[data-dragging=true]>a:hover,.sliding-selection[data-dragging=true]>button:hover{background:0 0}.sliding-selection[data-selection-ready=true]>a.active:before{opacity:0}.nav-list.sliding-selection .selection-glass{background:#ffffff29;border-color:#ffffff85;box-shadow:inset 0 1px #fff6,0 2px 5px #2f516a09}.bottom-nav.sliding-selection>a:active,.nav-list.sliding-selection>a:hover{transform:none}@media (prefers-reduced-motion:reduce){.sliding-selection .selection-glass:after{opacity:0;transition:none}}@media (prefers-contrast:more),(prefers-reduced-transparency:reduce){.sliding-selection[data-selection-ready=true] .selection-glass{box-shadow:none;background:#d3e6f1;border-color:#6f91a6}.sliding-selection[data-selection-ready=true] .selection-glass:after{display:none}}.call-item .call-item-heading{gap:10px;font-size:12px}.call-item-heading time{color:#647780;white-space:nowrap;margin-left:auto}.call-item-heading .review-tag{flex-basis:100%}.call-item h2{overflow-wrap:anywhere;margin:18px 0 8px;font-size:18px;line-height:1.55}.call-item .call-item-caller{color:#647780;white-space:pre-wrap;margin:0;font-size:13px;line-height:1.6}.call-item-response{margin-top:22px}.call-response-heading{color:#547063;justify-content:space-between;align-items:center;gap:12px;font-size:12px;line-height:1.6;display:flex}.call-response-heading>span:first-child{font-weight:650}.call-item-response.pending .call-response-heading{color:#84642e}.call-response-date,.call-response-heading time{color:#647780;font-weight:400}.call-item-response p{margin:6px 0 0;font-size:14px;font-weight:400;line-height:1.75}.call-item-response .call-followup-date,.call-item-response .call-response-empty{color:#647780;font-size:12px}.call-item-response .call-followup-date.overdue{color:#a04444}.call-item .call-history{margin-top:18px;font-size:12px}.call-item .call-history summary,.call-item .call-more summary{color:#536975;justify-content:flex-start;align-items:center;gap:8px;min-height:44px;padding:0;font-size:13px;list-style:none;display:flex}.call-disclosure{font-size:20px;transition:transform .15s;display:inline-block}.call-history[open] .call-disclosure{transform:rotate(90deg)}.call-item .call-history ul{margin:0 0 8px;padding-left:18px;line-height:1.7}.call-item .call-history>p{margin:0 0 8px}.call-item-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;margin-top:10px;display:flex}.call-item-actions>.soft-action-button{flex-shrink:0;min-height:44px;padding:10px 22px;font-size:14px}.call-item-actions>.soft-action-button.call-supplement{border-radius:10px;align-self:center;height:36px;min-height:36px;padding:0 14px;font-size:13px;position:relative;box-shadow:0 4px 12px #3d91651f,inset 0 1px 1px #fffffff2}.call-supplement:after{content:"";position:absolute;inset:-4px 0}.call-item .call-more{text-align:right;min-width:0;max-width:100%;margin-left:auto}.call-item .call-more summary{cursor:pointer;justify-content:flex-end}.call-more-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:4px 12px;margin-top:0;display:flex}.call-more-actions button{text-align:center;white-space:nowrap;cursor:pointer;color:#536975;background:0 0;border:0;min-width:44px;min-height:44px;padding:10px 0;font-size:13px}.call-more-actions .task-delete-button{color:#a04444}.call-more-trigger{color:#536975;cursor:pointer;background:0 0;border:0;justify-content:flex-end;align-items:center;gap:8px;min-height:44px;padding:0;font-size:13px;display:flex}.call-more .call-more-actions{margin-top:0}.call-more-actions .call-delete-action{color:#a04444;background:0 0}.call-more-actions .call-delete-action:active,.call-more-actions .call-delete-action:focus,.call-more-actions .call-delete-action:hover{background:0 0}.call-more-actions .call-more-collapse{color:#647780;place-items:center;width:44px;min-width:44px;padding:0;font-size:20px;display:grid}.call-share-dialog{color:#142630;background:#f8fbfd;border:1px solid #d9e4ea;border-radius:22px;width:min(600px,100vw - 32px);max-height:calc(100dvh - 40px);margin:auto;padding:22px;overflow:auto;box-shadow:0 24px 80px #142e3b33}.call-share-dialog::backdrop{background:#10253166}.call-share-header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.call-share-header h2{margin:0;font-size:18px}.call-share-header h2:focus{outline:none}.call-share-close{border:0;outline:none;flex-shrink:0;position:relative;top:auto;right:auto}.call-share-close:focus-visible{outline-offset:3px;outline:2px solid #647780}.call-share-preview{background:#fff;min-height:120px}.call-share-preview img{width:100%;height:auto;display:block}.call-share-preview>p{text-align:center;color:#647780;margin:0;padding:40px 16px}.call-share-footer{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:20px;display:flex}.call-share-footer button{min-height:44px}.call-share-message{color:#a04444;font-size:14px;line-height:1.6}.duty-share-dialog[open]{flex-direction:column;display:flex;overflow:hidden}.duty-share-dialog .call-share-footer,.duty-share-dialog .call-share-header{flex-shrink:0}.duty-share-dialog .duty-share-preview{overscroll-behavior:contain;min-height:120px;overflow:auto}.duty-share-notice{color:var(--muted);flex-shrink:0;margin:0 0 12px;font-size:13px;line-height:1.7}.duty-share-dialog .call-share-message{flex-shrink:0;margin:12px 0 0}.duty-share-dialog .duty-share-preview+.duty-share-notice{margin:12px 0 0}.duty-share-dialog .duty-share-close{border-radius:50%;flex-shrink:0;width:44px;height:44px;min-height:44px;padding:0;font-size:25px;line-height:1}.duty-share-dialog button:disabled{opacity:.45;cursor:default}.call-share-dialog button:not(.call-share-close):focus-visible{outline-offset:3px;outline:2px solid #23668c}@media (max-width:760px){.call-share-dialog{width:calc(100vw - 24px);padding:16px}.call-share-footer button{flex:1;min-width:100px}}.call-item-actions button:disabled{opacity:.5;cursor:default}.call-item summary:focus-visible,.call-item-actions button:focus-visible{outline-offset:3px;border-radius:8px;outline:2px solid #23668c}@media (max-width:760px){.call-item{padding:18px}.call-item h2{font-size:17px}.call-item-response{margin-top:20px}.matters-page{padding-bottom:calc(110px + env(safe-area-inset-bottom))}.matters-page .call-items-section{padding-bottom:0}.call-item-actions{column-gap:6px}.call-item-actions>.soft-action-button.call-register{border-radius:10px;align-self:center;height:36px;min-height:36px;padding:0 14px;font-size:13px;position:relative;box-shadow:0 4px 12px #3d91651f,inset 0 1px 1px #fffffff2}.call-register:after{content:"";position:absolute;inset:-4px 0}.call-more-actions{column-gap:8px}.matters-page .call-item-actions button,.matters-page .call-more,.matters-page .form-actions button{scroll-margin-bottom:calc(110px + env(safe-area-inset-bottom))}}.overview-toolbar{justify-content:flex-end;margin:-4px 0 20px;display:flex}.overview-metrics{grid-template-columns:repeat(5,minmax(0,1fr))}.overview-layout{align-items:start}.overview-side{min-width:0}.overview-note{color:var(--muted);margin:0;font-size:12px;line-height:1.6}.overview-side .panel-title{flex-wrap:wrap;gap:6px 12px;margin-bottom:14px}.overview-side .panel-title h2{margin:0}.overview-results{margin:0 0 14px;padding-left:20px}.overview-results li{overflow-wrap:anywhere;padding:8px 0;font-size:14px}.overview-results strong{font-weight:600}.overview-results time{color:var(--muted);margin-top:4px;font-size:12px;display:block}.overview-text-link{color:var(--blue);padding:12px 0 0;font-size:13px;display:inline-block}.overview-report .report-section>.overview-note{margin-top:10px}.overview-metrics .metric{min-width:0}@media (max-width:1000px){.overview-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.overview-layout{grid-template-columns:1fr}}@media (max-width:760px){.bottom-nav{grid-template-columns:repeat(4,minmax(0,1fr))}.overview-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.overview-toolbar{margin-top:0}.overview-layout{gap:0}.overview-page .panel-title{flex-wrap:wrap;gap:8px}}.overview-count{border-radius:var(--radius-pill);color:#1e6d98;background:#e9f3f8b8;border:1px solid #648ea133;flex:none;place-items:center;min-width:27px;height:27px;padding:0 7px;font-size:12px;font-weight:700;line-height:1;display:grid}.report-summary{max-width:960px;margin:0 auto;padding:32px}.report-summary>h2{margin:22px 0 28px}.report-summary .report-six-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.report-summary .report-six-metrics>div{flex-direction:column;grid-column:auto;justify-content:center;min-height:134px;padding:24px;display:flex}.report-summary .report-six-metrics strong{font-variant-numeric:tabular-nums;overflow-wrap:anywhere;font-size:34px;line-height:1.15}.report-summary .report-six-metrics strong span{white-space:nowrap;margin-left:6px;font-size:13px}.report-summary .report-six-metrics small{margin-top:12px;font-size:12px}.report-export-actions{border-top:1px solid var(--line);justify-content:flex-end;gap:12px;margin-top:28px;padding-top:24px;display:flex}.report-export-actions>a,.report-export-actions>button{min-height:44px}@media (max-width:760px){.report-summary{padding:24px 18px}.report-summary>h2{margin:20px 0 24px;font-size:22px}.report-summary .report-six-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.report-summary .report-six-metrics>div{min-height:118px;padding:18px 14px}.report-summary .report-six-metrics strong{font-size:30px}.report-export-actions{grid-template-columns:1fr;gap:10px;margin-top:24px;padding-top:20px;display:grid}}.receipt-printer{background:linear-gradient(120deg,#fff,#f6f6f3 54%,#e6e8e7);border-color:#ced2d3;box-shadow:0 13px 24px #343d4126,inset 0 2px 1px #fff,inset 5px 0 8px #fff,inset -4px -5px 9px #8a92952b}.receipt-printer:after{background:linear-gradient(#ffffff20,#bcc3c538);border-bottom-color:#b9bfc180;box-shadow:inset 0 -1px #ffffffb3}.receipt-printer-top{background:linear-gradient(155deg,#fff,#f9f9f6 42%,#e8eae8);border-bottom-color:#bdc3c56b;box-shadow:inset 0 2px 1px #fff,inset 0 -2px 3px #757d811f,0 1px #ffffff9c}.receipt-printer-top>span{color:#747c7f}.receipt-printer-seam{background:linear-gradient(90deg,#0000,#8d969c4d 10% 90%,#0000)}.receipt-printer-controls b{color:#778184;background:linear-gradient(#fff,#e3e7e6);border-color:#b1b9bc82;box-shadow:inset 0 1px #fff,0 2px 3px #57626926}.receipt-printer-front{background:linear-gradient(#aeb6b726,#fff8);border-top-color:#98a1a34d}.receipt-printer-feet i{background:linear-gradient(#b4bbbd,#858e91)}.receipt-printer-lip{background:linear-gradient(#929c9f,#4f595d 65%,#353d41);border-color:#919a9e;box-shadow:inset 0 2px 3px #252d3099}.receipt-printer-slot{background:linear-gradient(#8c9699,#505b60 40%,#30393d 67%,#8c9599);border-color:#919a9e;box-shadow:inset 0 3px 5px #242c30cc,0 1px #fff,0 4px 6px #5862692b}.receipt-printer-slot span{background:repeating-linear-gradient(90deg,#30383b 0 3px,#485156 3px 5px);box-shadow:0 1px #c1c8ca66}.receipt-printer-slot i{background:linear-gradient(#cbd0d1,#8c969b);box-shadow:inset 0 1px 1px #eef1f166}.receipt-printer-cutter{background:repeating-linear-gradient(135deg,#e2e6e7 0 2px,#a4afb4 2px 4px)}.display-setting-row{justify-content:space-between;align-items:center;gap:20px;min-height:44px;display:flex}.display-setting-row strong{font-size:14px;font-weight:600}.display-setting-row p{color:var(--muted);margin:5px 0 0;font-size:12px;line-height:1.5}.display-switch{cursor:pointer;--switch-color:#a8b6be;background:0 0;border:0;flex:none;width:52px;height:44px;padding:0;position:relative}.display-switch:before{content:"";border-radius:var(--radius-pill);background:var(--switch-color);transition:background .18s;position:absolute;inset:8px 0;box-shadow:inset 0 1px 3px #14263018}.display-switch>span{border-radius:var(--radius-circle);background:#fff;width:20px;height:20px;transition:transform .18s;position:absolute;top:12px;left:4px;box-shadow:0 1px 4px #14263026}.display-switch[aria-checked=true]{--switch-color:var(--blue)}.display-switch[aria-checked=true]>span{transform:translate(24px)}.display-switch:focus-visible{outline:2px solid var(--blue);outline-offset:3px;border-radius:var(--radius-control)}@media (prefers-reduced-motion:reduce){.display-switch:before,.display-switch>span{transition:none}}.tools-page{padding-bottom:24px}.tools-settings{max-width:1180px;margin:0 auto 100px;padding:0 38px}.tools-settings>summary{cursor:pointer;border-top:1px solid var(--line);padding:20px 0;font-weight:650}.tools-settings>summary span{color:var(--muted);margin-left:12px;font-size:12px;font-weight:400;display:inline-block}.tools-settings .page-wrap{padding-left:0;padding-right:0}.tools-settings .settings-security{margin-top:0;padding-top:0}.duty-planner{min-width:0}.duty-intro{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:24px;display:flex}.duty-help,.duty-intro p{color:var(--muted);margin:8px 0 16px;font-size:13px;line-height:1.7}.duty-save-state{border:1px solid var(--line);white-space:nowrap;border-radius:20px;padding:8px 12px;font-size:12px}.duty-toolbar{flex-wrap:wrap;align-items:flex-end;gap:10px;margin-bottom:18px;display:flex}.duty-planner label{color:var(--muted);gap:7px;min-width:0;font-size:12px;display:grid}.duty-planner input:not([type=checkbox]),.duty-planner select,.duty-planner textarea{box-sizing:border-box;border:1px solid var(--line-strong);width:100%;min-width:0;color:var(--ink);font:inherit;background:#ffffffb3;border-radius:10px;min-height:44px;padding:10px 12px;font-size:14px}.duty-planner button:focus-visible,.duty-planner input:focus-visible,.duty-planner select:focus-visible,.duty-planner textarea:focus-visible{outline:2px solid var(--blue);outline-offset:2px}.duty-planner button{min-height:44px}.duty-planner button:disabled{opacity:.45;cursor:default}.duty-toolbar>label{width:180px}.duty-fields{border:0;min-width:0;margin:0;padding:0}.duty-card{border:1px solid var(--line);background:#ffffff4d;border-radius:20px;margin:0 0 20px;padding:24px}.duty-card h3{margin:0 0 10px;font-size:17px}.duty-results-heading{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.duty-results-heading>button{flex-shrink:0}.duty-group-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.duty-group{border:1px solid var(--line);border-radius:14px;gap:12px;min-width:0;padding:16px;display:grid}.duty-group-top{justify-content:space-between;align-items:center;font-size:13px;display:flex}.duty-compact-button{min-width:44px;padding:6px 10px;font-size:13px}.duty-rotation-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.duty-rotation{border:1px solid var(--line);background:#e5f2fa40;border-radius:14px;padding:18px}.duty-rotation.holiday{background:#fff4d947}.duty-rotation h4{margin:0 0 14px;font-size:15px}.duty-order{margin:14px 0;padding:0;list-style:none}.duty-order li{border-top:1px solid var(--line);overflow-wrap:anywhere;justify-content:space-between;align-items:center;gap:8px;font-size:14px;display:flex}.duty-order li>div{flex-shrink:0;gap:6px;display:flex}.duty-generate{align-items:flex-end;gap:16px;margin-top:20px;display:flex}.duty-generate>label{flex:1}.duty-generate>button{flex-shrink:0}.duty-error,.duty-message{overflow-wrap:anywhere;border-radius:10px;padding:12px 16px;font-size:13px;line-height:1.6}.duty-error{background:var(--red-soft);color:var(--red)}.duty-message{background:var(--blue-soft);color:var(--ink)}.duty-empty{color:var(--muted);padding:24px 0;font-size:14px;line-height:1.7}.duty-check{white-space:nowrap;flex-direction:row;align-items:center;min-height:44px;gap:8px!important;display:flex!important}.duty-check input{width:18px;height:18px;accent-color:var(--blue);flex-shrink:0}.duty-counts{grid-template-columns:repeat(auto-fill,minmax(128px,1fr));gap:8px;margin:0 0 20px;display:grid}.duty-counts>article{border:1px solid var(--line);border-radius:10px;grid-template-rows:auto auto;gap:9px;min-width:0;padding:10px 12px;display:grid}.duty-counts strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:650;line-height:18px;overflow:hidden}.duty-count-metrics{grid-template-columns:1fr 1fr;gap:8px;display:grid}.duty-count-metrics>span{white-space:nowrap;color:var(--muted);justify-content:space-between;align-items:baseline;gap:4px;font-size:10px;line-height:18px;display:flex}.duty-count-metrics b{font-variant-numeric:tabular-nums;color:var(--ink);font-size:13px;font-weight:600}.duty-days{gap:12px;display:grid}.duty-day{border:1px solid var(--line);border-radius:14px;grid-template-columns:85px minmax(0,1fr) 60px;align-items:start;gap:20px;padding:18px;display:grid}.duty-day.holiday{border-left:3px solid #d9b86b}.duty-day.is-locked{background:#e4f0ea4d}.duty-date{flex-direction:column;gap:5px;display:flex}.duty-date>strong{font-variant-numeric:tabular-nums;font-size:28px;font-weight:550;line-height:1.15}.duty-date>span{color:var(--muted);font-size:12px}.duty-date small{margin-top:5px;font-size:10px;display:block}.duty-assignees{grid-template-columns:1fr 1fr;gap:12px;display:grid}.duty-day-content{gap:12px;min-width:0;display:grid}.duty-roster{overflow-wrap:anywhere;margin:0;font-size:12px;line-height:1.8}.duty-roster span,.duty-roster strong{display:block}.duty-warning{color:#9a5b20;margin:0;font-size:12px;line-height:1.6}@media (max-width:1100px){.duty-group-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:760px){.tools-page{padding-bottom:20px}.tools-settings{margin-bottom:100px;padding:0 15px}.tools-settings>summary span{margin:8px 0 0 16px;display:block}.duty-intro{display:block}.duty-intro h2{font-size:23px}.duty-save-state{display:inline-block}.duty-toolbar{grid-template-columns:1fr 1fr;display:grid}.duty-toolbar>label{width:100%}.duty-card{border-radius:16px;padding:16px}.duty-group-grid,.duty-rotation-grid{grid-template-columns:1fr}.duty-results-heading{flex-direction:column;gap:0;margin-bottom:14px}.duty-results-heading>button{width:100%}.duty-day{grid-template-columns:46px minmax(0,1fr);gap:12px;padding:12px}.duty-assignees{grid-template-columns:1fr}.duty-date>strong{font-size:25px}.duty-lock{grid-column:2;justify-self:end}.duty-generate{flex-direction:column;align-items:stretch}.duty-generate>button{width:100%}.duty-group{padding:14px}.duty-toolbar button{padding-left:8px;padding-right:8px;font-size:13px}}.duty-month-control{width:180px;min-width:0;color:var(--muted);gap:7px;font-size:12px;display:grid}.duty-month-control .month-trigger{width:100%;min-height:44px}.duty-month-control .month-popover{box-sizing:border-box;width:min(284px,100vw - 30px);left:0;right:auto}@media (max-width:760px){.duty-month-control{width:100%}}.duty-intro{align-items:center;margin-bottom:20px}.duty-intro h2{letter-spacing:-.02em;margin:0;font-size:20px}.duty-card.duty-section{padding:0;overflow:clip}.duty-section .duty-section-heading{margin:0}.duty-section-heading>button{width:100%;min-height:70px;color:var(--ink);font:inherit;text-align:left;cursor:pointer;box-shadow:none;background:0 0;border:0;border-radius:20px;align-items:center;gap:12px;padding:18px 24px;font-weight:650;display:flex}.duty-section-count{color:var(--muted);white-space:nowrap;margin-left:auto;font-size:12px;font-weight:400}.duty-section-chevron{flex-shrink:0;width:18px;height:18px;transition:transform .15s;transform:rotate(-90deg)}.duty-section-heading>button[aria-expanded=true] .duty-section-chevron{transform:rotate(0)}.duty-section-content{padding:0 24px 24px}.duty-section-content[hidden]{display:none}.duty-section-heading>button:focus-visible{outline-offset:-4px}@media (max-width:760px){.duty-intro{gap:10px;display:flex}.duty-intro h2{font-size:19px}.duty-section-heading>button{gap:8px;min-height:62px;padding:14px 16px;font-size:15px}.duty-section-count{font-size:11px}.duty-section-content{padding:0 16px 16px}}@media (prefers-reduced-motion:reduce){.duty-section-chevron{transition:none}}.duty-results-heading>.duty-add-group{white-space:nowrap;align-self:flex-end;width:auto;min-height:44px;padding:0 12px;font-size:13px}.duty-results-heading.duty-group-toolbar{flex-direction:row;align-items:center;gap:12px;margin-bottom:16px}.duty-chief-settings{border-bottom:1px solid var(--line);margin-bottom:20px;padding:0 0 20px}.duty-chief-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.duty-chief-person{align-items:flex-end;gap:8px;min-width:0;display:flex}.duty-chief-person>label{flex:1}.duty-chief-person>button{flex-shrink:0}@media (max-width:900px){.duty-chief-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:520px){.duty-chief-grid{grid-template-columns:1fr}}.duty-order li{min-height:60px;padding:8px 0}.duty-order li>.duty-order-move{cursor:default;border-radius:12px;gap:0;width:88px;height:44px;min-height:44px;padding:0;display:flex;position:relative;overflow:hidden;transform:none}.duty-order-move:after{content:"";background:var(--line);pointer-events:none;width:1px;height:18px;position:absolute;top:12px;left:50%}.duty-order-move>button{width:44px;height:44px;min-height:44px;color:var(--blue);cursor:pointer;background:0 0;border:0;flex:1;place-items:center;padding:0;display:grid}.duty-order-move>button:hover:not(:disabled){background:#cfe8f78c}.duty-order-move>button:disabled{opacity:.25}.duty-order-move>button:focus-visible{outline-offset:-4px;border-radius:10px}.duty-order-move svg{stroke-width:1.8px;width:16px;height:16px}.duty-order-up{transform:rotate(180deg)}.duty-calendar-table{table-layout:fixed;border-collapse:collapse;border:1px solid var(--line);width:100%;font-size:12px}.duty-calendar-table th{height:36px;color:var(--muted);border-bottom:1px solid var(--line);background:#ecf4f980;font-size:12px;font-weight:500}.duty-calendar-table td{vertical-align:top;border:1px solid var(--line);overflow-wrap:anywhere;background:#ffffff59;padding:0}.duty-calendar-table .holiday{background:#e8f2f959}.duty-calendar-table .duty-calendar-blank{background:#f2f6f859}.duty-calendar-table .duty-calendar-date{text-align:left;width:100%;min-width:0;min-height:190px;color:var(--ink);cursor:pointer;overflow-wrap:anywhere;background:0 0;border:0;border-radius:0;flex-direction:column;align-items:stretch;gap:7px;padding:10px;font-size:12px;display:flex}.duty-calendar-table .duty-calendar-date:hover:not(:disabled){background:var(--green-soft)}.duty-calendar-table .duty-calendar-date:focus-visible{outline-offset:-3px}.duty-calendar-date-head{justify-content:space-between;align-items:center;gap:3px;display:flex}.duty-calendar-date-head strong{font-variant-numeric:tabular-nums;font-size:17px;font-weight:600}.duty-calendar-kind{color:var(--muted);font-size:10px}.duty-calendar-empty{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.duty-calendar-leader{font-size:12px;font-weight:650;line-height:1.5}.duty-calendar-leader>span{color:var(--muted);font-weight:400}.duty-calendar-staff{color:#536975;flex-wrap:wrap;gap:2px 6px;font-size:11px;line-height:1.7;display:flex}.duty-calendar-staff>span{white-space:nowrap;text-overflow:ellipsis;max-width:100%;overflow:hidden}.duty-calendar-staff-count{display:none}.duty-calendar-flags{min-height:14px;color:var(--muted);flex-wrap:wrap;align-items:center;gap:4px;margin-top:auto;display:flex}.duty-calendar-flags small{font-size:9px}.duty-calendar-flags .duty-calendar-alert{color:#96601e;background:#fbefd7;border-radius:50%;place-items:center;width:14px;height:14px;font-size:10px;font-weight:700;display:grid}.duty-calendar-table .is-filtered .duty-calendar-date{opacity:.2}.duty-date-dialog{border:1px solid var(--line);width:min(540px,100vw - 32px);max-height:calc(100dvh - 40px);color:var(--ink);background:#fcfdfe;border-radius:22px;margin:auto;padding:24px;overflow:auto;box-shadow:0 24px 80px #142e3b33}.duty-date-dialog::backdrop{background:#10253159}.duty-date-dialog-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.duty-date-dialog-head h3{outline:none;margin:0;font-size:20px}.duty-date-dialog-head p{color:var(--muted);margin:7px 0 0;font-size:12px}.duty-date-dialog-head .duty-date-close{border-radius:50%;flex-shrink:0;width:44px;height:44px;padding:0}.duty-date-form{grid-template-columns:1fr 1fr;gap:12px;display:grid}.duty-date-roster{border-bottom:1px solid var(--line);margin:10px 0;padding:15px 0}.duty-date-roster p{overflow-wrap:anywhere;grid-template-columns:70px minmax(0,1fr);gap:12px;margin:0 0 12px;font-size:14px;line-height:1.8;display:grid}.duty-date-roster p:last-child{margin:0}.duty-date-roster p>span{color:var(--muted);font-size:12px}.duty-date-note{margin:18px 0}.duty-date-dialog-actions{justify-content:space-between;align-items:center;gap:16px;margin-top:20px;display:flex}.duty-date-dialog-actions>button{min-width:88px}@media (max-width:760px){.duty-calendar-table th{height:30px;font-size:10px}.duty-calendar-table .duty-calendar-date{gap:5px;min-height:108px;padding:6px 3px}.duty-calendar-date-head{justify-content:center}.duty-calendar-date-head strong{font-size:14px}.duty-calendar-kind,.duty-calendar-leader>span,.duty-calendar-staff{display:none}.duty-calendar-empty{text-align:center;font-size:9px}.duty-calendar-leader{text-align:center;font-size:10px;line-height:1.4}.duty-calendar-staff-count{text-align:center;color:var(--muted);font-size:9px;display:block}.duty-calendar-flags{justify-content:center;gap:2px}.duty-calendar-flags small{font-size:8px}.duty-calendar-flags .duty-calendar-alert{width:11px;height:11px;font-size:8px}.duty-date-dialog{border-radius:18px;width:calc(100vw - 24px);max-height:calc(100dvh - 24px);padding:18px}.duty-date-dialog-head h3{font-size:18px}.duty-date-form{grid-template-columns:1fr}.duty-date-roster p{grid-template-columns:58px minmax(0,1fr);gap:10px;font-size:13px}.duty-counts{grid-template-columns:repeat(2,minmax(0,1fr))}}.duty-planner>.duty-error,.duty-planner>.duty-message{margin:0 0 20px;padding:14px 18px}.duty-group-toolbar{align-items:center;margin-bottom:20px}.duty-group-toolbar .duty-help{margin:0}.duty-group-toolbar>.duty-add-group{align-self:center}@media (max-width:760px){.duty-group-toolbar{align-items:stretch;gap:12px;margin-bottom:18px}.duty-group-toolbar>.duty-add-group{align-self:flex-end}}@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}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}