:root{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#213a35;background:#f5f6f2;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer;border:0}button:disabled{cursor:default;opacity:.5}main{max-width:580px;margin:auto;padding:28px 22px max(28px,env(safe-area-inset-bottom))}header{display:flex;justify-content:space-between;align-items:center}.brand{font-size:25px;letter-spacing:-1.4px;font-weight:750}.brand span{font-size:8px;letter-spacing:2px;display:block;margin-top:3px;color:#8a9891}.connection{font-size:11px;padding:7px 10px;border:1px solid #d9e3dc;border-radius:20px;color:#5c7768}.connection.online{background:#e4eee4;border-color:transparent;color:#36744e}h1{font-size:29px;font-weight:550;letter-spacing:-1.2px;line-height:1.15;margin:35px 0 8px}h2{font-size:25px;letter-spacing:-.6px;margin:12px 0 8px;font-weight:550}h3{font-size:15px;font-weight:600;margin:0}.subtitle{font-size:13px;color:#819087;margin:0 0 26px}nav{display:flex;background:#e9ede7;border-radius:14px;padding:4px;margin-bottom:22px}.tab{width:50%;padding:12px;background:transparent;border-radius:10px;color:#829084;font-size:13px}.tab.active{background:white;box-shadow:0 2px 6px #1b3d2410;color:#274339}.hero{overflow:hidden;position:relative;min-height:290px;background:#dde8dc;border-radius:24px;padding:25px}.eyebrow{font-size:9px;letter-spacing:2px;color:#75917b}.hero h2{max-width:68%;position:relative;z-index:1}.hero p{font-size:11px;color:#718775;max-width:60%;line-height:1.5}.hero-bottom{position:absolute;bottom:21px;left:25px;right:25px;display:flex;justify-content:space-between;align-items:center;font-size:10px;color:#6c846f}.pill{background:#ffffff80;padding:7px 10px;border-radius:20px;color:#48775c}.robot{position:absolute;width:174px;height:174px;border-radius:50%;background:linear-gradient(145deg,#fff,#ecefe9);right:30px;top:84px;box-shadow:7px 18px 25px #587d4925,inset 0 0 0 7px #f7f8f3,inset 0 0 0 8px #d6ded3;transform:rotate(-25deg)}.robot i{position:absolute;top:28px;left:64px;width:48px;height:48px;border-radius:50%;background:linear-gradient(130deg,#fff,#dce0d7);box-shadow:2px 5px 8px #354e4220,inset 0 0 0 3px #e7eae2}.robot b{position:absolute;top:103px;left:71px;font-size:10px;color:#b8bfb4}.robot b:after{content:'dreame';font-size:8px;letter-spacing:-.5px}.robot em{position:absolute;bottom:19px;left:68px;width:40px;height:3px;background:#d4dbd0;border-radius:3px}.primary{background:#224e40;color:#fff;border-radius:15px;padding:17px;font-size:14px;display:flex;align-items:center;gap:15px;width:100%;justify-content:center}#clean{margin:16px 0 12px;justify-content:flex-start}#clean .arrow{margin-left:auto;color:#abc8b1;font-size:20px}.actions{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:22px}.actions button{background:white;border:1px solid #e4e9e1;border-radius:15px;padding:15px 8px;font-size:11px;color:#466351}.actions button span{display:block;font-size:25px;margin-bottom:6px}.card,.map-card{padding:20px;border-radius:20px;background:#fff;border:1px solid #e5eae1;margin-bottom:16px}.card-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:15px}.card-heading>span{font-size:9px;color:#8f9b90}.modes{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.modes button{border:1px solid #e4e9e0;padding:12px 5px;border-radius:10px;background:#fafbf8;color:#748476;font-size:11px}.modes button.selected{color:#315c42;background:#e9f1e4;border-color:#b8d0ad}.hint{font-size:11px;color:#859185;line-height:1.7;margin:12px 0 0}.centered{text-align:center}.text-button{display:block;margin:18px auto 0;background:transparent;font-size:12px;color:#53745c}.small-button{font-size:10px;color:#618067;background:#f1f5ed;padding:8px;border-radius:8px}.map-card{padding:18px}#mapStage{position:relative;height:300px;background:#f0f3ed;border-radius:14px;margin:16px 0;overflow:hidden;display:grid;place-items:center}canvas{max-width:100%;max-height:100%;width:100%;height:300px}#mapEmpty{position:absolute;color:#91a18e;font-size:12px}.legend{display:flex;gap:15px;color:#83907f;font-size:9px}.legend i{display:inline-block;width:7px;height:7px;border-radius:2px;margin-right:4px}.floor-dot{background:#bdd5b5}.wall-dot{background:#4a705d}.badge{padding:5px 7px;background:#f3f1e7;border-radius:5px;color:#9b946e!important}.disabled-button{width:100%;border:1px dashed #bec9b6;border-radius:10px;background:#f6f8f3;color:#677d5d;font-size:12px;padding:12px;margin-top:15px}.secondary{width:100%;padding:13px;border:1px solid #c3d4bb;background:#eff4e9;border-radius:12px;color:#497142;font-size:12px;margin-top:14px}footer{display:flex;justify-content:space-between;margin-top:26px;color:#9aa594;font-size:9px}.notice{padding:20px;background:#e6eddf;border-radius:18px;line-height:1.7;font-size:14px}.notice a{color:#3b7155}#toast{position:fixed;bottom:28px;left:20px;right:20px;max-width:530px;margin:auto;background:#213e34;color:white;padding:17px 20px;border-radius:14px;box-shadow:0 8px 30px #0002;font-size:13px;line-height:1.5;z-index:10}dialog{border:0;border-radius:23px;padding:26px;max-width:380px;width:calc(100% - 40px);color:#294637}dialog::backdrop{background:#1a302477;backdrop-filter:blur(3px)}dialog h2{font-size:22px}dialog p{font-size:13px;line-height:1.6;color:#75816e}.dialog-actions{display:flex;gap:10px;margin-top:25px}.dialog-actions button{width:50%;border-radius:12px;font-size:13px}.dialog-actions #cancel{background:#eef2e9;color:#64795b}[hidden]{display:none!important}button:focus-visible,a:focus-visible{outline:3px solid #a5bc80;outline-offset:3px}@media(max-width:360px){main{padding:20px 15px}.robot{right:12px;width:150px;height:150px}.hero{min-height:275px}.hero h2{font-size:23px}.brand{font-size:23px}}
nav .tab{width:auto;flex:1;font-size:12px}.schedule-entry .card-heading{margin-bottom:18px}.toggle-label{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:14px;font-weight:550;flex:1}.toggle-label input{width:19px;height:19px;accent-color:#315c42}.remove-schedule{font-size:10px;color:#9a8275;background:#f7f3ec;border-radius:7px;padding:7px}.weekdays{display:flex;gap:5px;margin-bottom:16px}.weekdays button{flex:1;padding:10px 0;background:#f2f5ee;border:1px solid transparent;border-radius:9px;color:#8b9784;font-size:11px}.weekdays button.chosen{background:#e4eddd;color:#416d41;border-color:#bdd0ae}.schedule-fields{display:grid;grid-template-columns:1fr 1.5fr;gap:14px}.schedule-fields label,.quiet-times label{display:flex;flex-direction:column;gap:7px;font-size:10px;color:#83907b}input[type=time],select{width:100%;min-width:0;background:#f7f9f4;color:#3c5c40;border:1px solid #dce5d5;border-radius:10px;padding:11px 8px;font:inherit;font-size:13px}.quiet-card{margin-top:22px}.quiet-times{display:flex;gap:16px;margin-top:16px}.quiet-times label{flex:1}.run-history{margin-top:22px}.history-row{display:flex;justify-content:space-between;gap:14px;padding:12px 0;border-bottom:1px solid #edf0e8;font-size:10px;line-height:1.5;color:#7c8c73}.history-row span:last-child{text-align:right}
input[type=text]{width:100%;min-width:0;background:#f7f9f4;color:#3c5c40;border:1px solid #dce5d5;border-radius:10px;padding:11px 8px;font:inherit;font-size:12px}.access-save{margin-top:20px}.access-entry .schedule-fields{grid-template-columns:1.3fr 1fr}nav .tab{font-size:11px;padding:12px 5px}
.extra-actions{display:flex;gap:8px;flex-wrap:wrap}.extra-actions button{flex:1;min-width:125px;padding:12px 8px;font-size:11px;background:#e8eee2;border-radius:12px;color:#547246}.extra-actions button:disabled{opacity:.45}
.care-card{margin-top:18px}.care-card summary{cursor:pointer;font-size:14px;font-weight:550}
