:root{color-scheme:light;--ink:#203b36;--muted:#77837d;--green:#164c43;--paper:#f5f6f1;--line:#e2e8df;--gray-bg:#edf0ec;--gray-ink:#667169;--green-bg:#dfeee2;--green-ink:#32624c;--red-bg:#f4dfda;--red-ink:#9a5147;--yellow-bg:#f5ebc9;--yellow-ink:#80621f;font-family:-apple-system,BlinkMacSystemFont,'PingFang SC','Microsoft YaHei',sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-size:15px;line-height:1.5}button,input,select{font:inherit}button,input,select,a{-webkit-tap-highlight-color:transparent}button{border:0;cursor:pointer;touch-action:manipulation;min-height:44px;padding:9px 14px;border-radius:11px;font-weight:600;color:var(--green)}button:disabled{opacity:.45;cursor:not-allowed}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #9cab6d;outline-offset:2px}input:not([type=checkbox]),select{width:100%;min-width:0;min-height:44px;padding:9px 12px;border:1px solid var(--line);border-radius:10px;background:#fafbf8;color:var(--ink);font-size:16px}input[type=checkbox]{width:19px;height:19px;accent-color:var(--green);flex-shrink:0}label{display:block;font-weight:500;margin:12px 0 5px}.shell{max-width:520px;margin:auto;padding:16px 16px calc(12px + env(safe-area-inset-bottom))}.shell.signed-in{height:100vh;height:100dvh;min-height:0;display:flex;flex-direction:column;padding:max(10px,env(safe-area-inset-top)) 14px max(10px,env(safe-area-inset-bottom));gap:8px}header,.brand,.section-heading,.today-top,.detail-heading,.dialog-actions{display:flex;align-items:center;justify-content:space-between;gap:10px}header{flex:0 0 42px}.brand{justify-content:flex-start;gap:10px}.brand-icon{display:grid;place-items:center;flex-shrink:0;width:36px;height:36px;border-radius:12px;background:var(--green);color:#e9f1cf;font-size:24px}h1,h2,h3,p{margin:0}h1{font-size:22px;line-height:1.2}h2{font-size:20px;line-height:1.3}h3{font-size:18px}.card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:14px;box-shadow:0 2px 9px #203b3604}.primary{background:var(--green);color:white;display:flex;align-items:center;justify-content:space-between;width:100%;font-size:16px;min-height:46px}.secondary{background:#edf2e9;color:var(--green)}.quiet{background:transparent;padding:6px 9px;font-size:13px}.small{font-size:12px}.muted{color:var(--muted)}.check{display:flex;align-items:center;gap:8px;font-weight:400;font-size:13px}.notice{padding:12px;border-radius:12px;background:#e6f0e9;overflow-wrap:anywhere;font-size:13px}.signed-in>.notice{flex:none;max-height:46px;overflow:auto}.warning,.notice.error{background:#fff2df;color:#805b1c;border-color:#eddfc0}#workspace{flex:1;display:flex;flex-direction:column;min-height:0;gap:8px}.tabs{display:flex;flex:0 0 40px;background:#e7ebe2;padding:4px;border-radius:12px;gap:4px}.tabs button{flex:1;min-height:32px;background:transparent;border-radius:9px;color:#6b7e74;padding:3px 10px;font-size:15px}.tabs button[aria-selected=true]{background:#fff;color:var(--green);box-shadow:0 1px 4px #203b3608}#today-panel{display:flex;flex-direction:column;gap:8px;min-height:0}.today-card{flex:none}.today-top{margin-bottom:8px}.today-date{font-size:28px;line-height:1.22;letter-spacing:-.6px;font-weight:650;color:#54615a;font-variant-numeric:tabular-nums;white-space:nowrap}.live-time{font-size:20px;font-weight:600;line-height:1.4;color:var(--green);font-variant-numeric:tabular-nums}.person{max-width:40%;text-align:right;min-width:0}.person h2{font-size:16px;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.person .quiet{font-size:11px;min-height:32px;padding:5px 0}.status-row{display:grid;grid-template-columns:minmax(48px,1fr) minmax(76px,1fr) auto;align-items:center;gap:8px;padding:9px 0;border-top:1px solid var(--line);min-height:39px}.status-row strong{font-size:14px;font-weight:600}.record-time{font-size:17px;font-weight:500;font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.badge{display:inline-block;padding:4px 8px;border-radius:8px;font-size:11px;white-space:nowrap;background:var(--gray-bg);color:var(--gray-ink)}.badge.done,.badge.tone-green{background:var(--green-bg);color:var(--green-ink)}.badge.tone-gray,.badge.waiting{background:var(--gray-bg);color:var(--gray-ink)}.badge.tone-red{background:var(--red-bg);color:var(--red-ink)}.badge.tone-yellow{background:var(--yellow-bg);color:var(--yellow-ink)}.updated{font-size:9px;text-align:right;margin-top:1px;line-height:1.2}.checkin-action{flex:none}.checkin-action .primary{position:relative;justify-content:center;font-size:17px;min-height:46px}.button-arrow{position:absolute;right:18px;top:50%;transform:translateY(-50%);font-size:23px;font-weight:400}.location-card{flex:none}.section-heading{margin-bottom:7px;min-height:26px}.section-heading h2{font-size:19px}.section-heading .quiet{font-size:11px;min-height:26px;padding:3px 0;font-weight:400}.field-row{display:grid;grid-template-columns:64px minmax(0,1fr);gap:8px;align-items:center;margin:6px 0}.field-row label{margin:0;font-size:13px}.field-row input:not([type=checkbox]){height:40px;min-height:40px;padding:7px 10px}.location-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:10px}.location-actions button{font-size:12px;font-weight:500;min-height:42px;padding:7px 5px;background:#f2f5ed;border:1px solid var(--line)}#choose-location{display:flex;align-items:center;justify-content:center;gap:12px}#position-hint{font-size:10px;line-height:1.4;margin-top:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#uncertain{display:grid;grid-template-columns:1fr auto;gap:4px 8px;padding:9px 12px;align-items:center;font-size:11px}#uncertain .check{font-size:11px;margin:0}#uncertain button{font-size:11px;min-height:28px;padding:3px 8px}#uncertain input{width:16px;height:16px}.login-card{max-width:420px;margin:clamp(35px,12vh,120px) auto 28px;padding:32px 26px 24px}.login-brand{display:flex;align-items:center;justify-content:center;gap:14px;margin:6px 0 28px}.login-brand .brand-icon{width:54px;height:54px;font-size:33px}.login-brand h1{font-size:28px}.login-card .primary{margin-top:24px}.remember{margin-top:15px}#remember-status{font-size:10px;margin:4px 0 0 27px}footer{text-align:center;color:var(--muted);font-size:11px}footer summary{cursor:pointer;min-height:32px;padding:6px}.signed-in footer{display:none}#history-panel{flex:1;min-height:0;display:flex;flex-direction:column}.history-card{height:100%;display:flex;flex-direction:column;min-height:0;gap:6px;padding:12px}.month-toolbar{display:grid;grid-template-columns:40px 1fr 40px 40px;gap:4px;align-items:center;flex:none}.month-toolbar button{min-height:40px}.month-trigger{font-size:18px;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}.month-toolbar #prev-month,.month-toolbar #next-month{font-size:27px;font-weight:400}.refresh-month{font-size:25px;font-weight:400}#history-status{font-size:10px;line-height:1.3;flex:none}#history-status:empty{display:none}.weekdays,.calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.weekdays{flex:none;font-size:11px;text-align:center;color:var(--muted);line-height:18px}.calendar{flex:1;min-height:0;grid-auto-rows:minmax(0,1fr);align-items:stretch}.calendar button{position:relative;min-height:0;border-radius:9px;padding:2px 0;font-size:15px;line-height:1.1;font-weight:500;font-variant-numeric:tabular-nums}.calendar .day-empty{background:var(--gray-bg);color:var(--gray-ink)}.calendar .day-complete{background:var(--green-bg);color:var(--green-ink)}.calendar .day-missing{background:var(--red-bg);color:var(--red-ink)}.calendar .day-partial{background:var(--yellow-bg);color:var(--yellow-ink)}.calendar .selected{outline:2px solid var(--green);outline-offset:-2px;font-weight:700}.calendar .today{font-weight:800}.calendar small{display:block;font-size:9px;line-height:1.1;margin-top:2px}.calendar-legend{display:grid;grid-template-columns:1fr 1.35fr;gap:4px 8px;flex:none;font-size:10px;color:var(--muted);padding:4px 0;line-height:14px}.calendar-legend span{display:flex;align-items:center;gap:5px;white-space:nowrap}.dot{display:inline-block;width:9px;height:9px;border-radius:50%;flex:none}.dot.gray{background:#a8b0a9}.dot.green{background:#7eae8c}.dot.red{background:#cc8e80}.dot.yellow{background:#d3b86b}.day-detail{flex:none;border-top:1px solid var(--line);padding-top:7px}.detail-heading h3{font-size:18px;line-height:1.25;font-variant-numeric:tabular-nums}.detail-heading .quiet{font-size:11px;min-height:28px;padding:3px 0}.day-detail .status-row{min-height:36px;padding:7px 0}.day-detail .record-time{font-size:15px}.day-detail .status-row strong{font-size:13px}.day-detail .badge{font-size:10px;padding:3px 7px}dialog{border:1px solid var(--line);border-radius:22px;padding:24px;max-width:420px;width:calc(100% - 32px);color:var(--ink);background:white;max-height:85dvh;overflow:auto;box-shadow:0 10px 70px #163c3633}dialog::backdrop{background:#18383077;backdrop-filter:blur(3px)}dialog h2{margin-bottom:14px}dialog p{margin:10px 0}dialog .primary{margin-top:20px}.result-dialog{text-align:center;max-width:350px;padding:28px 24px}.result-dialog p{white-space:pre-wrap;overflow-wrap:anywhere;font-size:15px;line-height:1.8;color:#5f7068}.result-dialog .primary,.centered{justify-content:center}.position-box{white-space:pre-line;font-size:13px;background:#f2f6ec;border-radius:10px;padding:13px;overflow-wrap:anywhere}.location-sheet{position:fixed;inset:auto 0 0;margin:0 auto;max-width:520px;width:100%;max-height:80dvh;border-radius:22px 22px 0 0;padding:12px 20px max(18px,env(safe-area-inset-bottom))}.sheet-handle{width:38px;height:4px;border-radius:8px;background:#d4d9d1;margin:0 auto 15px}.location-sheet h2{margin-bottom:3px}.location-sheet>p{margin:0 0 10px}.location-option{display:block;text-align:left;width:100%;padding:12px 10px;min-height:60px;background:#fff;border-radius:9px;border-top:1px solid #edf0e9;font-size:14px;font-weight:500}.location-option small{display:block;color:var(--muted);font-size:11px;font-weight:400;margin-top:2px}.location-option:hover,.location-option:focus-visible{background:#edf4e8}.sheet-cancel{width:100%;margin-top:12px}.month-selects{display:grid;grid-template-columns:1fr 1fr;gap:12px}.month-selects label{font-size:13px}.month-selects select{display:block;margin-top:8px}.dialog-actions{margin-top:20px}.dialog-actions button{flex:1;justify-content:center}.dialog-actions .primary{margin:0}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}[hidden]{display:none!important}@media(max-height:740px){.shell.signed-in{gap:6px;padding-top:max(6px,env(safe-area-inset-top));padding-bottom:max(6px,env(safe-area-inset-bottom))}header{flex-basis:36px}.brand-icon{width:32px;height:32px;font-size:22px}h1{font-size:20px}.tabs{flex-basis:36px}#workspace,#today-panel{gap:6px}.card{padding:11px}.today-date{font-size:25px}.live-time{font-size:18px}.today-top{margin-bottom:5px}.person h2{font-size:14px}.person .quiet{min-height:28px;font-size:10px}.status-row{min-height:34px;padding:7px 0}.record-time{font-size:16px}.status-row strong{font-size:13px}.updated{font-size:8px}.section-heading{margin-bottom:3px;min-height:24px}.section-heading h2{font-size:18px}.field-row{margin:5px 0}.location-actions{margin-top:7px}#position-hint{margin-top:6px}.history-card{padding:10px;gap:4px}.month-toolbar button{min-height:36px}.day-detail{padding-top:5px}.day-detail .status-row{min-height:33px;padding:5px 0}.calendar-legend{font-size:9px;gap:2px 6px}.detail-heading h3{font-size:16px}}@media(max-height:600px){.shell.signed-in{padding-left:12px;padding-right:12px;gap:4px}header{flex-basis:32px}.brand-icon{width:29px;height:29px;font-size:20px}.tabs{flex-basis:32px}.tabs button{min-height:26px;font-size:13px}#workspace,#today-panel{gap:5px}.card{padding:9px}.today-date{font-size:23px}.live-time{font-size:16px}.today-top{margin-bottom:3px}.status-row{min-height:29px;padding:4px 0}.updated{display:none}.checkin-action .primary{min-height:40px;font-size:16px}.field-row{margin:4px 0}.field-row input:not([type=checkbox]){height:36px;min-height:36px;padding:5px 9px}.field-row label{font-size:12px}.location-actions{margin-top:6px}.location-actions button{min-height:38px;font-size:11px}.section-heading{min-height:22px}.section-heading .quiet{min-height:22px}#position-hint{margin-top:5px;font-size:9px}.history-card{padding:8px;gap:3px}.day-detail .status-row{min-height:30px;padding:4px 0}.calendar-legend{padding:2px 0}.month-toolbar button{min-height:32px}.month-trigger{font-size:16px}.weekdays{line-height:15px}.calendar{gap:4px}.calendar button{font-size:13px}.day-detail .badge{font-size:9px}.detail-heading .quiet{min-height:24px}}@media(max-height:490px){.shell.signed-in{height:auto;min-height:100dvh}#today-panel{min-height:max-content}#history-panel{min-height:450px}}@media(min-width:700px){.shell.signed-in{max-height:900px}.location-sheet{bottom:20px;border-radius:22px;padding-bottom:20px}}
.signed-in>#feedback,.signed-in>#offline{position:fixed;left:50%;transform:translateX(-50%);width:calc(100% - 28px);max-width:492px;z-index:50;box-shadow:0 4px 20px #203b3615}.signed-in>#feedback{top:max(10px,env(safe-area-inset-top))}.signed-in>#offline{bottom:max(10px,env(safe-area-inset-bottom))}

/* 固定装饰与可移动内容分层；不拦截页面操作。 */
body{isolation:isolate;background:var(--paper)}
.fixed-decoration{position:fixed;inset:0;z-index:0;pointer-events:none;background:var(--paper) url('./botanical-bg.svg') center/cover no-repeat}
.footer-emblem{position:absolute;bottom:calc(7px + env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);width:140px;height:70px;opacity:.75;display:flex;align-items:center;flex-direction:column}
.footer-emblem .leaf-mark{display:block;width:42px;height:42px;object-fit:contain}
.creator-credit{display:flex;align-items:center;justify-content:center;gap:7px;height:28px}
.creator-credit span{color:#658175;font-size:9px;letter-spacing:.5px;white-space:nowrap}
.footer-emblem .signature-mark{display:block;width:28px;height:28px;object-fit:contain}
.shell{position:relative;z-index:1;padding-top:calc(24px + env(safe-area-inset-top));padding-bottom:calc(82px + env(safe-area-inset-bottom))}
.shell.signed-in{padding-top:calc(20px + env(safe-area-inset-top));padding-bottom:calc(80px + env(safe-area-inset-bottom))}
#workspace{position:relative;overflow:visible}
#workspace.tab-sliding{overflow:hidden}
.today-card{min-height:clamp(210px,38dvh,330px);display:flex;flex-direction:column;padding:18px}
.today-top{flex:none;margin-bottom:12px;align-items:flex-start}
.today-date{color:var(--green);font-size:31px}
.live-time{color:#77817a;font-size:19px;font-weight:500;margin-top:3px}
.today-card .status-row{min-height:58px;padding:10px 0}
.today-card #records{flex:1;display:flex;flex-direction:column;justify-content:center}
.today-card #records .status-row{flex:1}
.card,.history-card,.location-card,.login-card{background:#ffffffb3}
.brand-icon{border-radius:50%;background:linear-gradient(145deg,#7b9e88 0%,#245c50 52%,#164c43 100%);box-shadow:inset 0 1px 2px #ffffff50;color:#fff}
.status-row{grid-template-columns:76px minmax(65px,1fr) auto;column-gap:14px}
.status-row .status-label strong{font-size:22px;line-height:1.2}
.record-time{font-size:19px}
.day-detail .status-row strong{font-size:20px}.day-detail .record-time{font-size:17px}
.today-card .updated{margin-top:6px}
.login-brand{flex-direction:column;gap:10px;margin:0 0 24px}
.login-leaf{width:94px;height:94px;object-fit:contain}
.login-card{margin-top:clamp(20px,7dvh,70px);padding:24px}
.status-label{display:flex;flex-direction:column;gap:2px}
.scheduled-time{display:block;font-size:10px;color:var(--muted);font-weight:400;white-space:nowrap}
.checkin-action .primary{min-height:66px;font-size:21px;border-radius:15px;box-shadow:0 3px 9px #164c4312}
.location-card{padding:10px 13px;background:#ffffffb3;border-color:#e2e8dfb0;box-shadow:none}
.place-row{display:grid;grid-template-columns:64px minmax(0,1fr);align-items:center;gap:8px;font-size:12px}
#choose-location{display:flex;justify-content:space-between;text-align:left;width:100%;min-height:40px;gap:8px;border:1px solid var(--line);background:#fafbf8;padding:7px 10px;font-size:13px;font-weight:400}
#location-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.location-actions{display:flex;justify-content:space-between;align-items:center;margin:3px 0 0;gap:8px}
.location-actions button{width:auto;background:transparent;border:0;font-size:12px;min-height:36px;padding:5px 0}
.location-actions #show-details{font-weight:400;color:var(--muted)}
.location-card .field-row{grid-template-columns:48px minmax(0,1fr);margin:4px 0}
.location-card .field-row input{height:36px;min-height:36px;font-size:16px;padding:5px 9px}
#distance-hint{font-size:10px;margin-top:2px;color:var(--muted)}
#position-hint{font-size:9px;margin-top:2px;white-space:normal}
.expand-area{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .28s ease,opacity .2s ease}
.expand-area.expanded{grid-template-rows:1fr;opacity:1}
.expand-inner{overflow:hidden;min-height:0}
.history-card{height:auto;max-height:100%;flex:none;background:#ffffffb3}
.calendar{flex:none;grid-auto-rows:clamp(30px,5dvh,43px)}
.calendar button{font-size:13px}
.login-card{background:#ffffffb3}
#auto-login-panel{text-align:center;padding:28px 0 16px}
#saved-name{font-size:24px;color:var(--green);margin-bottom:12px}
#auto-login-status{margin-bottom:16px}
#switch-user{min-height:44px;text-decoration:underline;text-underline-offset:5px}
@media(max-height:740px){
 .shell.signed-in{padding-top:calc(16px + env(safe-area-inset-top));padding-bottom:calc(55px + env(safe-area-inset-bottom))}
 .today-card{min-height:clamp(155px,26dvh,190px);padding:12px}
 .today-date{font-size:28px}.live-time{font-size:17px}
 .today-top{margin-bottom:5px}.today-card .status-row{min-height:47px;padding:6px 0}
 .status-row{grid-template-columns:72px minmax(65px,1fr) auto;column-gap:10px}.status-row .status-label strong{font-size:21px}.record-time{font-size:18px}
 .day-detail .status-row{grid-template-columns:60px minmax(65px,1fr) auto;column-gap:10px}.day-detail .status-row strong{font-size:18px}
 .login-leaf{width:74px;height:74px}.login-card{padding:20px;margin-top:20px}.login-brand{margin-bottom:16px}
 .checkin-action .primary{min-height:56px;font-size:19px}
 .location-card{padding:7px 11px}#choose-location{min-height:36px}
 .location-actions button{min-height:32px}.location-card .field-row input{height:34px;min-height:34px}
 .footer-emblem{height:48px;bottom:calc(4px + env(safe-area-inset-bottom))}.footer-emblem .leaf-mark{height:26px;width:26px}.creator-credit{height:22px;gap:5px}.creator-credit span{font-size:8px}.footer-emblem .signature-mark{height:22px;width:22px}
 .calendar{grid-auto-rows:clamp(28px,5dvh,36px)}
}
@media(max-height:600px){
 .shell.signed-in{height:auto;min-height:100dvh;padding-top:calc(12px + env(safe-area-inset-top));padding-bottom:calc(48px + env(safe-area-inset-bottom))}
 #workspace{flex:none}.today-card{min-height:145px}.today-date{font-size:25px}.live-time{font-size:16px}
 .today-card .status-row{min-height:42px;padding:4px 0}.checkin-action .primary{min-height:50px}
 .scheduled-time{font-size:9px}.calendar{grid-auto-rows:28px}
 .status-row{grid-template-columns:65px minmax(65px,1fr) auto;column-gap:9px}.status-row .status-label strong{font-size:20px}.record-time{font-size:17px}
 .login-card{margin-top:8px;padding:16px}.login-leaf{width:48px;height:48px}.login-brand{gap:5px;margin-bottom:10px}
}
@media(prefers-reduced-motion:reduce){.expand-area{transition:none}}

/* 登录下移、主Logo放大；标题仅从登录页隐藏。 */
.login-card{margin:clamp(70px,14dvh,135px) auto 16px;padding:0;background:transparent;border:0;box-shadow:none}
.login-brand{margin:0 0 24px;gap:0}.login-brand h1{display:none}
.login-leaf{width:170px;height:170px}
#login-form,#auto-login-panel{background:#ffffffb3;border:1px solid var(--line);border-radius:20px;padding:22px}
#auto-login-panel{padding:30px 22px 20px;max-width:310px;margin:auto}
#automation-entry[role=button]{cursor:pointer;touch-action:manipulation}
#automation-entry:focus-visible{outline:2px solid #7eae8c;outline-offset:5px;border-radius:12px}
#automation-dialog{max-width:370px;background:#f9fbf6f5;padding:24px}
#automation-title{outline:none}
.schedule-row{display:grid;grid-template-columns:1fr 150px;align-items:center;gap:16px;margin:16px 0}
.schedule-row .check{margin:0;font-size:17px;font-weight:500;min-height:48px;gap:12px}
.schedule-row input[type=time]{text-align:center;font-size:21px;min-height:48px;letter-spacing:1px;background:#ffffffa8}
.schedule-place{margin:18px 0}.schedule-place label{font-size:14px;margin:0 0 8px}.schedule-place select{font-size:14px;background:#ffffffa8}
.schedule-push{justify-content:space-between;margin:18px 0;font-size:16px;font-weight:500;min-height:44px}
.schedule-push input{appearance:none;-webkit-appearance:none;width:44px;height:26px;border-radius:20px;background:#c7d0c7;position:relative;cursor:pointer;margin:0;transition:background .2s}
.schedule-push input:before{content:'';position:absolute;width:22px;height:22px;background:#fff;border-radius:50%;top:2px;left:2px;box-shadow:0 1px 3px #203b3630;transition:transform .2s}
.schedule-push input:checked{background:#39795b}.schedule-push input:checked:before{transform:translateX(18px)}
.schedule-note{text-align:center;border-top:1px solid var(--line);padding-top:13px}
#automation-status{font-size:11px;line-height:1.5;min-height:32px;margin:10px 0 0;overflow-wrap:anywhere}
#automation-dialog{width:calc(100% - 28px);max-width:370px;max-height:calc(100dvh - 40px);padding:20px;overflow-x:hidden}
.schedule-slot{min-width:0;padding:10px 0 12px;border-bottom:1px solid var(--line)}
.schedule-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}
.schedule-heading .check{margin:0 0 10px;font-size:16px;font-weight:600}
.schedule-heading .random-check{font-size:12px;font-weight:400;color:var(--muted);gap:5px}
.schedule-heading .random-check input{width:16px;height:16px}
.schedule-times{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;min-width:0}
.schedule-times.is-random{grid-template-columns:repeat(2,minmax(0,1fr))}
.schedule-times label{min-width:0;margin:0;font-size:11px;color:var(--muted)}
.schedule-times input[type=time]{display:block;appearance:none;-webkit-appearance:none;box-sizing:border-box;width:100%;max-width:100%;min-width:0;height:44px;min-height:44px;margin-top:4px;padding:8px 6px;text-align:center;font-size:18px;font-variant-numeric:tabular-nums;background:#ffffffa8}
.schedule-times input[type=time]::-webkit-date-and-time-value{min-width:0;text-align:center;margin:0}
.schedule-times input[type=time]::-webkit-datetime-edit{padding:0;min-width:0}
#automation-dialog .schedule-place{min-width:0;margin:14px 0 8px}
#automation-dialog .schedule-place select{max-width:100%;min-width:0;text-overflow:ellipsis}
#automation-dialog .schedule-push{margin:8px 0}
#automation-dialog .schedule-note{font-size:10px;margin:8px 0 0;padding-top:8px}
#automation-dialog .dialog-actions{margin-top:12px}
@media(max-width:360px){#automation-dialog{padding:16px}.schedule-times{gap:8px}.schedule-times input[type=time]{font-size:16px}}
@media(max-height:740px){.login-card{margin-top:55px}.login-leaf{width:135px;height:135px}.login-brand{margin-bottom:20px}#login-form{padding:18px}}
@media(max-height:600px){.login-card{margin-top:30px}.login-leaf{width:110px;height:110px}.login-brand{margin-bottom:15px}#login-form{padding:16px}}
.login-card:has(#login-form:not([hidden])){margin-top:clamp(45px,8dvh,70px)}
.login-card:has(#login-form:not([hidden])) .login-leaf{width:140px;height:140px}
.login-card:has(#login-form:not([hidden])) .login-brand{margin-bottom:18px}
#login-form{padding:18px}#login-form>label:not(.check){margin:8px 0 4px}#login-form .primary{margin-top:16px}#login-form .check{margin-top:10px}
@media(max-height:740px){.login-card:has(#login-form:not([hidden])){margin-top:30px}.login-card:has(#login-form:not([hidden])) .login-leaf{width:110px;height:110px}}



