:root{color-scheme:dark;--bg:#15151d;--panel:#1c1c27;--line:#2c2b38;--text:#f0edf7;--muted:#a5a2b7;--accent:#c4abf8;--green:#b0d8bb;--font:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:15px/1.6 var(--font)}button,input,select,textarea{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;border:0;color:inherit}button:disabled{opacity:.45;cursor:default}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:4px}[hidden]{display:none!important}h1,h2,h3,p{margin:0}h1{font-size:clamp(30px,4vw,47px);font-weight:650;letter-spacing:-1.5px;line-height:1.2}h2{font-size:23px;letter-spacing:-.6px}h3{font-size:18px;letter-spacing:-.3px}p{color:var(--muted)}small{color:var(--muted);font-size:12px}.brand{font-size:23px;font-weight:700;letter-spacing:-1px;display:flex;align-items:center;gap:10px;white-space:nowrap}.brand-mark{display:grid;place-items:center;background:#393046;color:var(--accent);font-size:27px;line-height:1;width:40px;height:40px;border-radius:13px}.eyebrow{font-size:11px;letter-spacing:2px;color:var(--accent);font-weight:650}.pill{display:inline-flex;align-items:center;gap:7px;font-size:11px;background:#302a40;color:#d1baf9;border:1px solid #463958;border-radius:30px;padding:5px 12px}.primary,.secondary,.subtle,.danger{border-radius:11px;padding:11px 17px;font-weight:600;transition:transform .2s,background .2s}.primary{background:var(--accent);color:#282033}.primary:hover{background:#d6c2ff;transform:translateY(-1px)}.secondary{border:1px solid #454050;background:#24222f}.secondary:hover{background:#33303f}.subtle{background:#242330;color:#c1b7d5;padding:6px 11px;font-size:12px}.danger{background:#38282f;color:#edb5c1}.icon-button{background:transparent;color:var(--muted);font-size:23px;line-height:1;padding:8px}label{display:block;font-size:13px;color:#cac5d8;margin-top:17px}input,select,textarea{background:#191820;color:var(--text);border:1px solid #3b3649;border-radius:10px;padding:11px 13px;width:100%;margin-top:7px;outline:0}input:focus,textarea:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px #b89bf515}textarea{resize:vertical;min-height:90px}.login-page{min-height:100dvh;display:grid;grid-template-columns:1fr 1fr}.login-art{padding:42px 7%;display:flex;flex-direction:column;background:radial-gradient(ellipse at 45% 60%,#352b46 0,#24202f 45%,#1a1922 85%);overflow:hidden}.login-copy{margin:auto 0;position:relative}.login-copy h1{margin-top:22px;font-size:clamp(35px,4.3vw,62px);line-height:1.16}.login-copy em{font-style:normal;color:var(--accent)}.login-copy p{margin-top:20px;font-size:17px}.login-footer{font-size:12px;color:#aba0b8;margin-top:20px}.login-form-wrap{display:grid;place-items:center;padding:40px}.login-form{width:100%;max-width:380px}.login-form h2{margin:25px 0 9px;font-size:29px}.login-form p{margin-bottom:30px}.login-form .primary{width:100%;display:flex;justify-content:space-between;margin-top:24px}.login-form small{display:block;text-align:center;margin-top:23px}#login-error,#editor-error{color:#e8aabb;font-size:13px}.cozy-scene{height:260px;max-width:440px;position:relative;margin:24px 0 5px}.scene-window{position:absolute;top:12px;left:150px;width:120px;height:115px;background:linear-gradient(#202337,#363045);border:8px solid #655575;border-radius:60px 60px 5px 5px;box-shadow:0 0 60px #c4abf811}.scene-window:after{content:'';position:absolute;left:49px;top:0;height:100%;width:5px;background:#655575}.scene-window span:first-child{position:absolute;left:16px;top:23px;font-size:18px;color:#e9cb87}.scene-window span:last-child{position:absolute;right:14px;top:8px;font-size:35px;color:#ead1a3}.scene-sofa{position:absolute;left:52px;top:134px;width:280px;height:80px;border-radius:22px 22px 15px 15px;background:#8b759f;border:9px solid #9b85ad;box-shadow:0 16px 0 -10px #42344b;z-index:3}.scene-sofa:before{content:'';position:absolute;left:14px;right:14px;top:-25px;height:42px;background:#8b759f;border-radius:19px 19px 0 0;z-index:-1}.scene-sofa i{position:absolute;width:49px;height:45px;background:#bda9bc;top:0;left:22px;border-radius:10px;transform:rotate(-13deg)}.scene-sofa i:nth-child(2){left:auto;right:20px;transform:rotate(12deg);background:#c1b788}.scene-sofa b{position:absolute;left:117px;top:6px;color:#ead4f4;font-size:26px}.scene-table{position:absolute;left:315px;top:168px;width:84px;height:12px;background:#c29976;border-radius:9px;z-index:4}.scene-table:after{content:'';position:absolute;left:30px;top:10px;height:58px;width:9px;background:#86674f}.scene-table span{position:absolute;top:-38px;left:27px;font-size:31px}.scene-plant{position:absolute;left:7px;top:91px;font-size:90px;color:#a0b395;transform:rotate(-15deg);z-index:4}.scene-rug{position:absolute;top:208px;left:13px;width:395px;height:47px;border-radius:50%;background:#514354}.scene-caption{font-size:10px;letter-spacing:2px;color:#9b8da8}.sidebar{position:fixed;width:247px;inset:0 auto 0 0;border-right:1px solid var(--line);background:#181820;padding:30px 21px;display:flex;flex-direction:column;z-index:10}.sidebar-caption{font-size:8px;letter-spacing:1.4px;color:#797587;margin:15px 0 36px}.nav{width:100%;background:transparent;display:flex;align-items:center;gap:12px;text-align:left;padding:11px 12px;border-radius:10px;color:#ada7bd;margin:4px 0}.nav.active{background:#30283f;color:#d7c2fc}.nav:hover{background:#26232f}.nav>span:first-of-type{font-size:13px}.tiny-label{font-size:7px;line-height:1.4;margin-left:auto;padding:3px;background:#33333d;border-radius:3px;color:#aebfb4}.sidebar-rooms{margin-top:35px}.side-heading{color:#827c92;font-size:9px;letter-spacing:1.5px;display:flex;justify-content:space-between;align-items:center;padding:0 11px}.side-heading button{background:transparent;font-size:20px;color:#b1a4c6}.room-link{font-size:14px;padding:8px 11px;gap:10px}.room-link span:first-of-type{font-size:12px}.room-link .unlocked-dot{margin-left:auto;color:var(--green);font-size:9px}.sidebar-bottom{margin-top:auto;padding-top:25px}.soft-note{display:flex;gap:12px;border:1px solid #33313d;border-radius:12px;padding:14px;margin-bottom:14px}.soft-note span{font-size:22px}.soft-note p{font-size:12px;line-height:1.7;color:#b9b2c7}.sidebar-bottom small{font-size:8px;letter-spacing:1.7px;display:block;margin:18px 10px 0}.app-body{margin-left:247px}.topbar{height:77px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 45px;font-size:12px;color:#a8a2b7}.topbar>div{display:flex;align-items:center;gap:20px}.presence{font-size:11px;color:#b7c3b7}.presence:first-letter{color:#a4cbaa}#mobile-menu{display:none;background:transparent;font-size:22px}#content{max-width:1300px;margin:auto;padding:42px 45px 25px;min-height:calc(100dvh - 130px)}.welcome{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:27px}.welcome h1{font-size:34px;letter-spacing:-1px;margin-top:7px}.welcome p{margin-top:9px;font-size:13px}.hero{padding:31px 34px;border:1px solid #494057;border-radius:19px;background:radial-gradient(ellipse at 90% 70%,#4a3c59 0,#30283e 48%,#282332 95%);display:flex;justify-content:space-between;overflow:hidden;position:relative;min-height:235px;margin-bottom:30px}.hero-copy{z-index:1;max-width:520px}.hero h2{font-size:30px;margin:13px 0 10px}.hero p{font-size:13px;max-width:395px;color:#bfb4ce}.hero-actions{display:flex;gap:10px;margin-top:23px}.hero .cozy-scene{width:330px;height:195px;flex-shrink:0;transform:scale(.8);transform-origin:bottom right;margin:-10px -10px 0 -100px;align-self:end}.section-heading{display:flex;justify-content:space-between;align-items:center;margin:25px 0 15px}.section-heading h2{font-size:18px}.section-heading small{font-size:11px}.room-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.room-card{border:1px solid var(--line);border-radius:15px;background:var(--panel);padding:20px;position:relative;text-align:left;transition:border-color .2s,transform .2s;min-height:157px}.room-card:hover{border-color:#62506e;transform:translateY(-3px)}.room-card .room-emoji{font-size:27px;display:grid;place-items:center;width:50px;height:50px;border-radius:14px;background:#312b40;margin-bottom:14px}.room-card:nth-child(2n) .room-emoji{background:#30382f}.room-card:nth-child(3n) .room-emoji{background:#393127}.room-card h3{font-size:14px;margin-bottom:5px;padding-right:10px}.room-card p{font-size:11px}.room-card .arrow{position:absolute;right:20px;bottom:19px;color:#91839f}.room-card.unlocked{border-color:#456452}.room-card .room-tag{position:absolute;top:23px;right:14px;color:#afccab;font-size:8px;letter-spacing:1px}.bottom-note{margin-top:24px;border:1px solid #30313b;border-radius:12px;padding:17px 20px;display:flex;align-items:center;gap:15px;background:#1c1e25}.bottom-note p{font-size:12px;color:#b2b1bd}.bottom-note span{font-size:23px}footer{max-width:1300px;margin:auto;padding:20px 45px 27px;font-size:10px;color:#797486;display:flex;justify-content:space-between}.task-list{display:flex;flex-direction:column;gap:12px}.task-card{border:1px solid var(--line);border-radius:14px;background:var(--panel);padding:19px;display:flex;align-items:flex-start;gap:16px}.task-icon{font-size:20px;line-height:1.5;width:34px;text-align:center}.task-main{flex:1;min-width:0}.task-main h3{font-size:15px;overflow-wrap:anywhere}.task-main p{font-size:12px;margin-top:6px;white-space:pre-wrap;overflow-wrap:anywhere}.task-meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:9px}.task-meta span{background:#282634;color:#a9a2bb;border-radius:5px;padding:2px 7px;font-size:10px}.task-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:end}.task-actions .primary{padding:7px 12px;font-size:12px}.empty{border:1px dashed #484050;border-radius:16px;text-align:center;padding:40px 20px}.empty>span{font-size:36px}.empty h3{margin:10px 0 6px}.empty p{font-size:13px}.tabs{display:flex;gap:7px;margin:20px 0}.tabs button{background:#21202b;color:#aca3bd;border-radius:8px;padding:7px 13px;font-size:12px}.tabs button.active{background:#3b2f4b;color:#d8c5f4}.room-tools{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}.gentle-callout{border:1px solid #3c4a42;background:linear-gradient(110deg,#24332c,#22262a);border-radius:18px;padding:28px;margin:25px 0}.gentle-callout h2{color:#c6e0c9;margin:8px 0}.gentle-callout p{font-size:13px}.energy-picker{display:flex;gap:8px;flex-wrap:wrap;margin-top:20px}.energy-picker button{background:#2b3430;border:1px solid #4d6152;border-radius:9px;padding:8px 14px;color:#cad6ca;font-size:12px}.energy-picker button.active{background:#b0d8bb;color:#24352b}.rest-hero{text-align:center;background:radial-gradient(ellipse at 50% 0,#443451,#25212f 60%);border:1px solid #4c3b5b;padding:35px 25px;border-radius:20px;margin-bottom:25px}.rest-hero .rest-icon{font-size:50px;color:#dbc195}.rest-hero h1{margin:12px 0;font-size:32px}.rest-hero p{font-size:13px;max-width:500px;margin:auto}.rest-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.panel{border:1px solid var(--line);background:var(--panel);border-radius:16px;padding:25px}.panel h2{font-size:19px;margin-bottom:8px}.panel>p{font-size:12px;margin-bottom:18px}.ritual-step{display:flex;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid #302c3b;color:#ccc3da;font-size:13px}.ritual-step:last-child{border:0}.ritual-step input{width:19px;height:19px;margin:0;accent-color:#c4abf8}.ritual-step.checked span{color:#93968f;text-decoration:line-through}.recap-entry{padding:11px 0;border-bottom:1px solid #302c3b;font-size:13px;color:#d2c6df}.recap-entry small{display:block;margin-left:25px;font-size:10px}.recap-end{color:#c7b2e8;font-size:12px;margin-top:20px}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:25px}.settings-grid .primary{margin-top:20px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.settings-help{font-size:11px;margin-top:10px}dialog{background:#211e2c;color:var(--text);border:1px solid #55465f;border-radius:18px;width:min(550px,calc(100vw - 30px));padding:25px;max-height:90dvh;overflow:auto}dialog::backdrop{background:#09070dcc;backdrop-filter:blur(5px)}.dialog-top{display:flex;align-items:center;justify-content:space-between}.dialog-top h2{font-size:22px}.dialog-actions{display:flex;gap:10px;justify-content:end;margin-top:25px}.check-label{display:flex;align-items:center;gap:9px}.check-label input{width:18px;height:18px;margin:0;accent-color:var(--accent)}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);padding:14px 23px;background:#43334f;color:#f3e7ff;border:1px solid #786187;border-radius:12px;z-index:50;box-shadow:0 10px 60px #0008;font-size:13px;max-width:90vw;animation:toast-in .3s ease}@keyframes toast-in{from{opacity:0;bottom:15px}to{opacity:1;bottom:25px}}.room-detail-title{display:flex;align-items:center;gap:13px}.room-detail-title>span{font-size:32px}.shutdown-banner{padding:17px 20px;border:1px solid #69506f;background:#33263d;border-radius:14px;margin-bottom:22px;display:flex;justify-content:space-between;align-items:center;gap:15px}.shutdown-banner p{color:#d7c5e6;font-size:12px}.shutdown-banner button{white-space:nowrap}.task-card.running{border-color:#716048;background:#28251f}.running-title{font-size:10px;letter-spacing:1px;color:#d3c197;margin-bottom:3px}.day-chip{font-size:11px;color:#b0a6be;border:1px solid #3a3445;border-radius:9px;padding:8px 12px}.recurring-info{font-size:11px;color:#a6bcae;margin-top:8px}
@media(min-width:1400px){#content{padding-top:50px}.hero{min-height:260px}.hero .cozy-scene{transform:scale(.95);margin-right:20px}.room-card{min-height:174px}.room-grid{gap:20px}}
@media(max-width:1100px){.sidebar{width:215px;padding:25px 15px}.app-body{margin-left:215px}.brand{font-size:21px}.topbar{padding:0 28px}#content{padding:30px 28px}.hero .cozy-scene{opacity:.55;position:absolute;right:0;bottom:12px}.hero-copy{max-width:440px}.hero-copy p{max-width:330px}.room-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rest-grid,.settings-grid{grid-template-columns:1fr}footer{padding:15px 28px}.task-card{flex-wrap:wrap}.task-actions{width:100%;margin-left:50px;justify-content:start}}
@media(max-width:760px){.login-page{grid-template-columns:1fr}.login-art{padding:23px 25px}.login-copy{margin-top:28px}.login-copy h1{font-size:38px}.login-copy p{font-size:14px}.login-art .cozy-scene,.login-footer,.scene-caption{display:none}.login-form-wrap{padding:30px 25px 50px}.login-form h2{font-size:25px}.login-form p{margin-bottom:20px}.sidebar{transform:translateX(-100%);transition:transform .25s;width:247px;box-shadow:20px 0 80px #0009}.sidebar.open{transform:translateX(0)}.app-body{margin-left:0}.topbar{height:64px;padding:0 22px}.presence{display:none}#mobile-menu{display:block}#content{padding:25px 20px}.welcome{align-items:start}.welcome h1{font-size:27px}.welcome .day-chip{display:none}.welcome .primary{font-size:12px;white-space:nowrap;padding:9px 12px}.hero{padding:24px;min-height:220px}.hero h2{font-size:26px;max-width:260px}.hero p{max-width:290px}.hero .cozy-scene{display:none}.hero-actions{flex-wrap:wrap}.hero-actions button{font-size:12px}.room-grid{gap:11px}.room-card{padding:16px;min-height:161px}.room-card h3{font-size:13px}.room-card .room-tag{font-size:7px;top:13px;right:10px}.room-card .room-emoji{width:43px;height:43px;font-size:24px}.section-heading{gap:10px}.section-heading small{max-width:140px;text-align:right}.task-card{padding:15px;gap:10px}.task-actions{margin-left:0}.panel{padding:21px}.rest-hero h1{font-size:25px;letter-spacing:-.5px}.shutdown-banner{flex-direction:column;align-items:start}.bottom-note{padding:15px}.room-tools button{font-size:11px}.field-row{gap:10px}footer{padding:18px 20px}.gentle-callout{padding:23px}.tabs{overflow:auto}.tabs button{white-space:nowrap}.dialog-actions{justify-content:stretch}.dialog-actions button{flex:1}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
