/* Apple Home-inspired shell. Existing controls and private house geometry stay authoritative. */
.home-boot{position:fixed;inset:0;z-index:1000;display:grid;place-content:center;justify-items:center;gap:22px;background:#101519;color:#eff5f3;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;pointer-events:none}.home-boot-mark{position:relative;display:grid;place-items:center;width:88px;height:88px;border-radius:28px;background:linear-gradient(145deg,#ffffff17,#ffffff04);border:1px solid #ffffff26;box-shadow:0 20px 70px #0003,inset 0 1px 0 #ffffff25;animation:home-mark-in .7s cubic-bezier(.16,1,.3,1) both}.home-boot-mark svg{width:40px;height:40px;stroke:#c5e1d6;fill:none;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}.home-boot-word{font-size:17px;letter-spacing:.28em;padding-left:.28em;font-weight:500;animation:home-word-in .7s .1s both}.home-boot-line{width:100px;height:2px;border-radius:3px;background:#ffffff10;overflow:hidden}.home-boot-line:after{content:'';display:block;height:100%;width:40%;background:#b4d4c5;border-radius:3px;animation:home-loading 1.2s ease-in-out infinite}.home-boot small{font-size:11px;letter-spacing:.03em;color:#8daba0}.home-boot.leaving{animation:home-boot-out .48s ease forwards}
.room-mode{--p-bg:#14191e;--p-card:#242c32a6;--p-raised:#ffffff0b;--p-line:#ffffff1b;--p-line-strong:#ffffff2a;--p-ink:#f4f6f8;--p-muted:#acb8c2;--p-green:#c1dbc9;background:radial-gradient(ellipse at 80% 4%,#34485b 0,transparent 48%),radial-gradient(ellipse at 3% 85%,#433f3a 0,transparent 55%),linear-gradient(145deg,#17252d,#15191c 70%);background-attachment:fixed}.room-mode .topbar{height:calc(64px + env(safe-area-inset-top,0px));padding-top:env(safe-area-inset-top,0px);background:#17222c55;border:0}.room-mode .room-client{max-width:1600px;margin-inline:auto}.room-mode .room-client-top{opacity:.65;margin-bottom:22px}.room-mode #room-picker .greeting-card h1{font-weight:650;letter-spacing:-1.5px;font-size:clamp(30px,4vw,46px)}.room-mode .greeting-card p{font-size:14px;color:#c1cbd2}.room-mode .greeting-card small{display:block;font-size:11px;color:#9daeb9}.room-mode .overview-chips{display:flex;gap:10px;flex-wrap:wrap}.room-mode .status-chip{border-radius:100px;padding:10px 16px;background:#ffffff09;border-color:#ffffff13;grid-template-columns:auto auto;gap:2px 10px;backdrop-filter:blur(16px);flex:1;min-width:130px}.room-mode .status-chip .pill-icon{font-size:21px}.room-mode .status-chip small{font-size:11px}.room-mode .scene-pill{border-radius:20px;background:#e5ecf0e8;color:#21313a;border-color:#fff5;box-shadow:inset 0 1px 0 #fff9,0 9px 22px #0001;min-height:74px;padding:14px 16px}.room-mode .scene-pill small{color:#5c6b77}.room-mode .scene-pill .pill-icon{color:#b37d20}.room-mode .scene-pill.night{background:#7c8ea72b;color:#edf1f7;border-color:#ffffff20}.room-mode .scene-pill.night small{color:#a7b8c8}.room-mode .scene-pill.night .pill-icon{color:#bac9e9}.room-mode .room-row{background:#64758324;border:1px solid #ffffff22;border-radius:22px;min-height:157px;padding:18px;box-shadow:inset 0 1px 0 #ffffff12,0 8px 20px #00000009;transition:background .25s,border-color .25s,transform .25s}.room-mode .room-row:hover{transform:translateY(-2px);border-color:#ffffff40}.room-mode .room-row:has([aria-checked=true]){background:#f1f4f5ee;border-color:#fff8;box-shadow:inset 0 1px 0 #fff9,0 10px 26px #0001}.room-mode .room-row:has([aria-checked=true]) .room-open{color:#26323a}.room-mode .room-row:has([aria-checked=true]) .room-open small{color:#65737d}.room-mode .room-row:has([aria-checked=true]) .room-dot{color:#c48e38}.room-mode .room-dot{color:#d5dfe4;margin-bottom:12px}.room-mode .room-open strong{font-size:15px;letter-spacing:-.3px}.room-mode .light-toggle[aria-checked=true]{background:#d9b56d}.room-mode .light-toggle[aria-checked=true]:after{background:#fff}.room-mode .section-heading h2{font-size:24px;font-weight:600;letter-spacing:-.7px}.room-mode .overview-stage .model-card,.room-mode #room-map-section .model-card{border:1px solid #ffffff1c;background:radial-gradient(ellipse at center,#344b5144,#18222b99);box-shadow:inset 0 1px 0 #ffffff10,0 20px 60px #0001;border-radius:26px}.room-mode .room-hero,.room-mode .room-client .device-card{background:linear-gradient(140deg,#d4e0ea12,#ffffff02),#26313c88;box-shadow:inset 0 1px 0 #ffffff1a,0 12px 25px #0001;border-color:#ffffff20}.room-mode .room-hero h2{font-weight:600}.room-mode .room-section-nav{border-radius:18px;background:#24323e70}.room-mode .room-section-nav button{border-radius:13px}.room-mode .device-card:has(.device-power-toggle[aria-checked=true]){background:#eef3f1ed;color:#26352f}.room-mode .device-card:has(.device-power-toggle[aria-checked=true]) .device-info h3{color:#26352f}.room-mode .device-card:has(.device-power-toggle[aria-checked=true]) .device-subtitle,.room-mode .device-card:has(.device-power-toggle[aria-checked=true]) .state-line{color:#5c6f65}.room-mode .device-card:has(.device-power-toggle[aria-checked=true]) .device-power-toggle{background:#dec88f;color:#3a3423;border-color:#b8a66d}.room-mode .device-card:has(.device-power-toggle[aria-checked=true]) .device-symbol{color:#ac792e}.room-mode .device-card:has(.device-power-toggle[aria-checked=true]) .control-field label,.room-mode .device-card:has(.device-power-toggle[aria-checked=true]) .screen-sync-control .button,.room-mode .device-card:has(.device-power-toggle[aria-checked=true]) .device-details summary{color:#425c50}
@media(min-width:950px){.room-mode .topbar{padding-inline:36px}.room-mode .topbar>.brand{visibility:hidden}.room-mode .room-client{padding:22px 36px 0}.room-mode #room-picker.overview{grid-template-columns:minmax(0,1.1fr) minmax(260px,.9fr);grid-template-areas:'side side' 'chips chips' 'stage rooms';gap:28px}.room-mode .overview-side{grid-template-columns:1fr minmax(260px,360px)}.room-mode #room-picker .room-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.room-mode .overview-stage .model-card{height:535px}.room-mode .overview-rooms .section-heading>span{display:none}}
@media(min-width:1500px){.room-mode #room-picker.overview{grid-template-columns:minmax(0,1fr) minmax(420px,1fr)}.room-mode #room-picker .room-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:600px){.room-mode .topbar{padding-inline:20px}.room-mode .room-client{padding:24px 18px 0}.room-mode .overview-chips{display:grid;grid-template-columns:1fr 1fr}.room-mode .status-chip{min-width:0;padding:12px;border-radius:18px}.room-mode .room-row{padding:15px;min-height:150px}.room-mode .scene-pill{padding:13px;min-height:74px}.room-mode .greeting-card small{font-size:10px}.room-mode .overview-stage .model-card{height:360px!important}}
@keyframes home-mark-in{from{opacity:0;transform:scale(.78) translateY(12px);filter:blur(5px)}to{opacity:1;transform:none;filter:blur(0)}}@keyframes home-word-in{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes home-loading{from{transform:translateX(-100%)}to{transform:translateX(350%)}}@keyframes home-boot-out{to{opacity:0;transform:scale(1.025);filter:blur(5px)}}@media(prefers-reduced-motion:reduce){.home-boot-mark,.home-boot-word,.home-boot-line:after,.home-boot.leaving{animation:none!important}.home-boot.leaving{display:none}.room-mode .room-row{transition:none!important}}

.office-pc-entry{display:flex;align-items:center;gap:18px;padding:22px;margin:20px 0;border:1px solid #ffffff2a;border-radius:22px;background:linear-gradient(120deg,#a9c9e624,#ffffff08);box-shadow:inset 0 1px 0 #ffffff18}.office-pc-entry[hidden]{display:none}.office-pc-entry-icon{display:grid;place-items:center;width:54px;height:54px;flex:none;border-radius:16px;background:#c6dcef1a;color:#d1e8fa;font-size:32px}.office-pc-entry h2{margin:0 0 5px;font-size:20px}.office-pc-entry p{margin:0 0 6px;color:#d1dde5;font-size:14px}.office-pc-entry small{color:#9eb0be;font-size:11px}.office-pc-entry .button{margin-left:auto;white-space:nowrap;min-height:48px}#room-pc-section{scroll-margin-top:90px}@media(max-width:480px){.office-pc-entry{flex-wrap:wrap;gap:14px;padding:18px}.office-pc-entry .button{width:100%;margin:0;justify-content:space-between}}

/* Shared navigation (life-os.js): tab bar below 950px, sidebar above. Life areas open beside it, never over it. */
.shain-nav{display:none;position:fixed;z-index:90;color:#eef3f5;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;background:#16212bd9;backdrop-filter:blur(28px) saturate(140%);-webkit-backdrop-filter:blur(28px) saturate(140%)}body>.shain-nav{display:flex}.model-expanded .shain-nav,body:has(#login-screen:not([hidden])) .shain-nav,body:has(#startup:not([hidden])) .shain-nav{display:none}
.shain-nav-item{display:flex;align-items:center;background:transparent;border:1px solid transparent;border-radius:12px;color:#aebdc7;font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background .2s,color .2s}.shain-nav-item[aria-current=page]{color:#fff}.shain-nav-item:focus-visible{outline:2px solid #b8dacb;outline-offset:2px}.shain-nav-item span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#life-finance-panel{position:fixed;inset:0;z-index:300;background:inherit;background-attachment:fixed;overflow:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding-top:env(safe-area-inset-top,0px)}
@media(max-width:949px){:root{--shain-nav-h:calc(60px + env(safe-area-inset-bottom,0px))}.shain-nav{left:0;right:0;bottom:0;height:var(--shain-nav-h);padding:5px max(6px,env(safe-area-inset-right,0px)) env(safe-area-inset-bottom,0px) max(6px,env(safe-area-inset-left,0px));border-top:1px solid #ffffff14}.shain-nav-brand,.shain-nav-rooms,.shain-nav-footer{display:none}.shain-nav-items{display:flex;width:100%;max-width:720px;margin:0 auto;overflow-x:auto;scrollbar-width:none}.shain-nav-items::-webkit-scrollbar{display:none}.shain-nav-item{flex:1 1 0;min-width:0;flex-direction:column;justify-content:center;gap:3px;min-height:50px;padding:4px 2px;font-size:10px;letter-spacing:.01em}.shain-nav-item .icon{width:23px;height:23px}.shain-nav-item[aria-current=page]{color:#c9eedc}@media(max-width:360px){.shain-nav-item{font-size:9px;letter-spacing:-.01em}}body{padding-bottom:var(--shain-nav-h)}#life-finance-panel{bottom:var(--shain-nav-h)}.toast,.screen-sync-indicator{bottom:calc(var(--shain-nav-h) + 14px)}}
@media(min-width:950px){.shain-nav{inset:0 auto 0 0;width:218px;flex-direction:column;padding:calc(34px + env(safe-area-inset-top,0px)) 16px 24px;border-right:1px solid #ffffff12;overflow-y:auto}body{padding-left:218px}#life-finance-panel{left:218px}.shain-nav-brand{display:grid;grid-template-columns:40px 1fr;align-items:center;gap:3px 10px;padding:0 12px 32px}.shain-nav-brand svg{grid-row:1/3;width:31px;height:31px;stroke:#d8e3e8}.shain-nav-brand strong{font-size:18px;letter-spacing:2px;font-weight:600}.shain-nav-brand small{font-size:11px;color:#99aebc}.shain-nav-items{display:flex;flex-direction:column;gap:4px}.shain-nav-item{width:100%;min-height:43px;gap:12px;padding:10px 12px;text-align:left;font-size:13px;color:#bfcdd5}.shain-nav-item .icon{width:20px;height:20px}.shain-nav-item:hover{background:#ffffff0a}.shain-nav-item[aria-current=page]{background:#ffffff19;border-color:#ffffff0c;box-shadow:inset 0 1px 0 #ffffff0c}.shain-nav-caption{font-size:9px;letter-spacing:1.4px;text-transform:uppercase;color:#8099aa;margin:26px 12px 12px}.shain-nav-rooms{display:flex;flex-direction:column;gap:4px}.shain-nav-footer{margin-top:auto;padding:24px 12px 0;color:#8da3b3;font-size:11px;line-height:1.8}}
