.ha-room-group.material-room-panel .material-light-control.is-fan.is-on{border-color:color-mix(in srgb,#22b8b0 48%,var(--border));background:color-mix(in srgb,#22b8b0 11%,var(--surface));color:var(--text)}.ha-room-group.material-room-panel .material-light-control.is-dimmable{touch-action:none}.ha-room-group.material-room-panel .material-light-control.is-fan .md-light-fill{background:color-mix(in srgb,#22b8b0 22%,transparent)}.ha-room-group.material-room-panel .material-light-control.is-fan .md-device-icon.blue{border:1px solid color-mix(in srgb,#22b8b0 30%,var(--border));background:color-mix(in srgb,#22b8b0 15%,var(--surface-2));color:#087d78}.ha-room-group.material-room-panel .material-light-control.is-fan .md-light-copy strong{display:-webkit-box;overflow:hidden;white-space:normal;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2}:root[data-theme=oled] .ha-room-group.material-room-panel .material-light-control.is-fan .md-device-icon.blue{color:#5ee4de}@media (prefers-color-scheme: dark){:root:not([data-theme]) .ha-room-group.material-room-panel .material-light-control.is-fan .md-device-icon.blue{color:#5ee4de}}@media (prefers-reduced-motion: reduce){.ha-room-group.material-room-panel .material-light-control.is-fan.is-adjusting{transform:none}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--sage: #6B8F71;--sage-light: #E8F0E9;--sage-dark: #3D5E42;--accent: #3D5E42;--accent-soft:#E8F0E9;--accent-muted:#8ab590;--app-bg: #F4F1EC;--surface: #ffffff;--surface-2: #F7F5F0;--soft: #FAFAFA;--input-bg: #FAFAFA;--text: #2C2C2A;--text-soft: #4a4a47;--muted: #6B6B67;--faint: #aaa;--border: rgba(0,0,0,.08);--border-soft:rgba(0,0,0,.06);--border-strong:rgba(0,0,0,.12);--danger: #8B2500;--danger-bg: #FAEAE4;--danger-border:rgba(139,37,0,.24);--shadow: 0 20px 60px rgba(0,0,0,.15);--font: -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Segoe UI", Roboto, "Noto Sans KR", "Malgun Gothic", system-ui, sans-serif;--sidebar-w: 215px;--sidebar-col: 52px;--page-gap: 12px;--header-gap: 10px;--panel-radius:12px;--control-radius:10px;--summary-gap:8px;color-scheme:light dark}.investment-page{width:100%;max-width:1280px;margin:0 auto;color:var(--text);font-variant-numeric:tabular-nums}.investment-page button,.investment-page input,.investment-page select,.investment-page textarea{font:inherit}.investment-page button{cursor:pointer}.investment-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.investment-tabs{display:flex;min-width:0;gap:4px;padding:4px;overflow-x:auto;border:.5px solid var(--border);border-radius:12px;background:var(--surface);scrollbar-width:none}.investment-tabs::-webkit-scrollbar{display:none}.investment-tabs button{display:flex;align-items:center;justify-content:center;gap:6px;flex:0 0 auto;min-height:36px;padding:0 12px;border:.5px solid transparent;border-radius:9px;background:transparent;color:var(--muted);font-size:11px;font-weight:850;white-space:nowrap}.investment-tabs button i{font-size:15px}.investment-tabs button.active{border-color:color-mix(in srgb,var(--accent) 24%,transparent);background:var(--accent-soft);color:var(--accent)}.investment-toolbar-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex:0 0 auto}.investment-primary-button,.investment-secondary-button,.investment-link-button,.investment-danger-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:38px;padding:0 12px;border-radius:10px;font-size:11px;font-weight:850;white-space:nowrap}.investment-primary-button{border:.5px solid var(--accent);background:var(--accent);color:#fff}.investment-secondary-button{border:.5px solid var(--border-strong);background:var(--surface);color:var(--text)}.investment-link-button{width:max-content;border:.5px solid color-mix(in srgb,var(--accent) 30%,transparent);background:var(--accent-soft);color:var(--accent)}.investment-danger-button{border:.5px solid var(--danger-border);background:var(--danger-bg);color:var(--danger)}.investment-primary-button:disabled,.investment-secondary-button:disabled{opacity:.48;cursor:not-allowed}.investment-primary-button:active,.investment-secondary-button:active,.investment-link-button:active{transform:translateY(1px)}.investment-primary-button:focus-visible,.investment-secondary-button:focus-visible,.investment-tabs button:focus-visible,.investment-page a:focus-visible,.investment-page input:focus-visible,.investment-page select:focus-visible,.investment-page textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.investment-privacy-note,.investment-status,.investment-alert{display:flex;align-items:center;gap:7px;min-height:34px;margin-bottom:10px;padding:7px 10px;border-radius:9px;font-size:10px;font-weight:750}.investment-privacy-note{border:.5px solid var(--border);background:var(--surface-2);color:var(--muted)}.investment-privacy-note i{color:var(--accent);font-size:13px}.investment-context-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(310px,360px);gap:8px;margin-bottom:10px}.investment-context-row .investment-privacy-note{min-width:0;margin-bottom:0}.investment-context-row .investment-privacy-note span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.investment-fx-strip{--investment-fx-warning:#B67C20;display:grid;grid-template-columns:24px auto minmax(0,1fr);align-items:center;gap:7px;min-height:34px;padding:5px 9px;border:.5px solid var(--border);border-radius:9px;background:var(--surface-2);color:var(--text)}.investment-fx-strip>i{display:grid;place-items:center;width:24px;height:24px;border-radius:7px;background:var(--surface);color:var(--accent);font-size:14px}.investment-fx-main{display:flex;align-items:baseline;gap:6px;min-width:0;white-space:nowrap}.investment-fx-main span{color:var(--muted);font-size:9px;font-weight:900}.investment-fx-main strong{color:var(--text);font-size:12px;font-weight:950;letter-spacing:-.025em}.investment-fx-main em{color:var(--muted);font-size:8px;font-style:normal;font-weight:900}.investment-fx-main em.up{color:var(--danger)}.investment-fx-main em.down{color:var(--accent)}.investment-fx-strip>small{min-width:0;overflow:hidden;color:var(--muted);font-size:8px;font-weight:750;text-align:right;text-overflow:ellipsis;white-space:nowrap}.investment-fx-strip.error{border-color:color-mix(in srgb,var(--investment-fx-warning) 38%,var(--border))}.investment-fx-strip.error>i{color:var(--investment-fx-warning)}.investment-fx-strip.loading strong{min-width:72px;color:transparent;border-radius:5px;background:var(--input-bg)}.investment-status{border:.5px solid color-mix(in srgb,var(--accent) 22%,transparent);background:var(--accent-soft);color:var(--accent)}.investment-alert{border:.5px solid var(--danger-border);background:var(--danger-bg);color:var(--danger)}.investment-alert span{flex:1}.investment-alert button{border:0;background:transparent;color:inherit;font-size:10px;font-weight:900;text-decoration:underline}.investment-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:10px}.investment-summary-card{position:relative;display:flex;align-items:flex-start;justify-content:space-between;min-width:0;min-height:98px;padding:13px;overflow:hidden;border:.5px solid var(--border);border-radius:12px;background:var(--surface);box-shadow:var(--shadow)}.investment-summary-card:before{position:absolute;inset:0 auto 0 0;width:3px;background:var(--investment-tone,#7f8a9a);content:""}.investment-summary-card.net{--investment-tone:#8B6FC8}.investment-summary-card.asset{--investment-tone:#45A675}.investment-summary-card.debt{--investment-tone:#D56A67}.investment-summary-card.interest{--investment-tone:#D39A42}.investment-summary-card>div{min-width:0}.investment-summary-card span,.investment-summary-card small{display:block;color:var(--muted)}.investment-summary-card span{margin-bottom:7px;font-size:10px;font-weight:850}.investment-summary-card strong{display:block;overflow:hidden;color:var(--text);font-size:20px;font-weight:900;letter-spacing:-.04em;text-overflow:ellipsis;white-space:nowrap}.investment-summary-card small{margin-top:5px;font-size:9px;font-weight:700}.investment-summary-card>i{flex:0 0 auto;color:var(--investment-tone);font-size:23px}.investment-summary-card.loading strong,.investment-summary-card.loading small{color:transparent;border-radius:5px;background:var(--surface-2)}.investment-overview-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(290px,.8fr);gap:10px;align-items:start}.investment-panel{min-width:0;padding:14px;border:.5px solid var(--border);border-radius:12px;background:var(--surface);box-shadow:var(--shadow)}.investment-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:12px}.investment-panel-head>div{min-width:0}.investment-panel-head h2{margin:0;color:var(--text);font-size:14px;font-weight:900;letter-spacing:-.02em}.investment-panel-head span,.investment-panel-head>small{display:block;margin-top:3px;color:var(--muted);font-size:10px;font-weight:700}.investment-panel-head>em{color:var(--muted);font-size:10px;font-style:normal;font-weight:850}.investment-panel-head>em.invalid{color:var(--danger)}.investment-allocation-panel{grid-row:span 2}.investment-segmented{display:flex;flex:0 0 auto;gap:3px;padding:3px;border-radius:9px;background:var(--surface-2)}.investment-segmented button{min-height:28px;padding:0 9px;border:0;border-radius:7px;background:transparent;color:var(--muted);font-size:9px;font-weight:850}.investment-segmented button.active{background:var(--surface);color:var(--accent);box-shadow:0 1px 4px #00000014}.investment-allocation-content{display:grid;grid-template-columns:minmax(150px,190px) minmax(0,1fr);gap:18px;align-items:center;min-height:250px}.investment-donut{display:grid;place-items:center;width:min(100%,180px);margin:auto;aspect-ratio:1;border-radius:50%}.investment-donut>div{display:flex;align-items:center;justify-content:center;flex-direction:column;width:55%;aspect-ratio:1;border-radius:50%;background:var(--surface);box-shadow:0 0 0 1px var(--border);text-align:center}.investment-donut span{color:var(--muted);font-size:9px;font-weight:750}.investment-donut strong{max-width:80%;margin-top:4px;overflow:hidden;color:var(--text);font-size:13px;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.investment-allocation-list{display:flex;flex-direction:column;min-width:0}.investment-allocation-list>div{display:grid;grid-template-columns:9px minmax(0,1fr) auto auto;align-items:center;gap:7px;min-height:34px;border-bottom:.5px solid var(--border-soft)}.investment-allocation-list>div:last-child{border-bottom:0}.investment-color-dot{width:8px;height:8px;border-radius:3px}.investment-allocation-list strong{min-width:0;overflow:hidden;color:var(--text);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.investment-allocation-list em,.investment-allocation-list small{color:var(--muted);font-size:9px;font-style:normal;font-weight:800;white-space:nowrap}.investment-health-list{display:flex;flex-direction:column;gap:7px}.investment-health-list article{display:grid;grid-template-columns:30px minmax(0,1fr);align-items:center;gap:8px;min-height:48px;padding:7px;border-radius:9px;background:var(--surface-2)}.investment-health-list article>i{display:grid;place-items:center;width:30px;height:30px;border-radius:8px;background:var(--surface);color:var(--muted);font-size:15px}.investment-health-list article.good>i{color:#3e9a6b}.investment-health-list article.warning>i{color:#c48629}.investment-health-list article strong,.investment-health-list article span{display:block;min-width:0}.investment-health-list article strong{color:var(--text);font-size:10px;font-weight:900}.investment-health-list article span{margin-top:2px;overflow:hidden;color:var(--muted);font-size:8px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.investment-preview-list{display:flex;flex-direction:column}.investment-preview-list>button{display:grid;grid-template-columns:32px minmax(0,1fr) auto 14px;align-items:center;gap:8px;width:100%;min-height:48px;padding:7px 0;border:0;border-bottom:.5px solid var(--border-soft);background:transparent;color:var(--text);text-align:left}.investment-preview-list>button:last-child{border-bottom:0}.investment-preview-list>button>span:nth-child(2){min-width:0}.investment-preview-list strong,.investment-preview-list small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.investment-preview-list strong{font-size:10px;font-weight:900}.investment-preview-list small{margin-top:3px;color:var(--muted);font-size:8px;font-weight:700}.investment-preview-list em{color:var(--text);font-size:10px;font-style:normal;font-weight:900;white-space:nowrap}.investment-preview-list>button>i{color:var(--faint);font-size:12px}.investment-item-icon{display:grid;place-items:center;flex:0 0 auto;width:32px;height:32px;border-radius:9px;background:var(--accent-soft);color:var(--accent)}.investment-item-icon i{font-size:16px}.investment-cashflow-panel{display:flex;flex-direction:column;gap:10px}.investment-cashflow-values{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1.15fr);align-items:center;gap:6px}.investment-cashflow-values>div{min-width:0;padding:10px;border-radius:9px;background:var(--surface-2)}.investment-cashflow-values>div.total{background:var(--accent-soft)}.investment-cashflow-values span,.investment-cashflow-values strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.investment-cashflow-values span{color:var(--muted);font-size:8px;font-weight:800}.investment-cashflow-values strong{margin-top:4px;color:var(--text);font-size:11px;font-weight:900}.investment-cashflow-values>i{color:var(--faint);font-size:12px}.investment-cashflow-panel>p{margin:0;color:var(--muted);font-size:9px;font-weight:700;line-height:1.45}.investment-empty{display:flex;align-items:center;justify-content:center;flex-direction:column;min-height:220px;padding:20px;color:var(--muted);text-align:center}.investment-empty.compact{min-height:120px}.investment-empty>i{margin-bottom:9px;color:var(--faint);font-size:28px}.investment-empty strong{color:var(--text);font-size:12px;font-weight:900}.investment-empty span{max-width:340px;margin-top:4px;font-size:9px;line-height:1.5}.investment-empty button{min-height:32px;margin-top:12px;padding:0 11px;border:0;border-radius:8px;background:var(--accent-soft);color:var(--accent);font-size:10px;font-weight:900}.investment-list-panel{padding:0;overflow:hidden}.investment-list-head{align-items:center;margin:0;padding:14px;border-bottom:.5px solid var(--border)}.investment-list-filters{display:flex;align-items:center;justify-content:flex-end;gap:7px}.investment-search{display:flex;align-items:center;gap:6px;min-width:230px;min-height:34px;padding:0 9px;border:.5px solid var(--border-strong);border-radius:9px;background:var(--input-bg);color:var(--muted)}.investment-search input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--text);font-size:10px}.investment-list-filters select{min-height:34px;padding:0 9px;border:.5px solid var(--border-strong);border-radius:9px;background:var(--input-bg);color:var(--text);font-size:10px}.investment-table-wrap{min-width:0}.investment-table-head,.investment-holding-row{display:grid;grid-template-columns:minmax(200px,1.35fr) minmax(130px,.9fr) minmax(120px,.8fr) minmax(110px,.75fr) minmax(90px,.62fr) 14px;align-items:center;gap:10px}.investment-table-head{padding:8px 14px;background:var(--surface-2);color:var(--muted);font-size:8px;font-weight:900}.investment-holding-row{width:100%;min-height:65px;padding:8px 14px;border:0;border-bottom:.5px solid var(--border-soft);background:transparent;color:var(--text);text-align:left}.investment-holding-row:last-child{border-bottom:0}.investment-holding-row:hover{background:var(--surface-2)}.investment-holding-name{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:9px;min-width:0}.investment-holding-name>span:last-child,.investment-account-cell,.investment-number-cell,.investment-gain-cell,.investment-update-cell{display:block;min-width:0}.investment-holding-row strong,.investment-holding-row small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.investment-holding-row strong{color:var(--text);font-size:10px;font-weight:900}.investment-holding-row small{margin-top:3px;color:var(--muted);font-size:8px;font-weight:700}.investment-gain-cell.up strong,.investment-quote-line em.up,.investment-detail-stats strong.up{color:#2f9b68}.investment-gain-cell.down strong,.investment-quote-line em.down,.investment-detail-stats strong.down{color:#d45d62}.investment-row-chevron{color:var(--faint);font-size:12px}.investment-loading-list{display:flex;flex-direction:column;gap:8px;min-height:210px;padding:14px}.investment-loading-list span{display:block;height:56px;border-radius:9px;background:linear-gradient(90deg,var(--surface-2),var(--input-bg),var(--surface-2));background-size:200% 100%;animation:investment-shimmer 1.2s infinite}@keyframes investment-shimmer{to{background-position:-200% 0}}.investment-debt-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(270px,.6fr);gap:10px;align-items:start}.investment-debt-meter{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.investment-debt-meter>div{min-width:0;padding:10px;border-radius:9px;background:var(--surface-2)}.investment-debt-meter span,.investment-debt-meter strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.investment-debt-meter span{color:var(--muted);font-size:8px;font-weight:800}.investment-debt-meter strong{margin-top:5px;color:var(--text);font-size:12px;font-weight:900}.investment-debt-summary>p,.investment-loan-compare>p{margin:10px 0 0;color:var(--muted);font-size:9px;font-weight:700;line-height:1.5}.investment-loan-compare a{display:flex;align-items:center;justify-content:center;gap:6px;min-height:38px;margin-top:12px;border:.5px solid color-mix(in srgb,var(--accent) 30%,transparent);border-radius:9px;background:var(--accent-soft);color:var(--accent);font-size:10px;font-weight:900;text-decoration:none}.investment-debt-list-panel{grid-column:1/-1}.investment-text-button{display:flex;align-items:center;gap:4px;min-height:28px;padding:0 8px;border:0;border-radius:7px;background:var(--accent-soft);color:var(--accent);font-size:9px;font-weight:900}.investment-debt-list{display:flex;flex-direction:column;gap:7px}.investment-debt-list>button{display:grid;grid-template-columns:34px minmax(180px,1fr) repeat(4,minmax(105px,.6fr)) 14px;align-items:center;gap:9px;width:100%;min-height:58px;padding:8px 10px;border:.5px solid var(--border-soft);border-radius:9px;background:var(--surface-2);color:var(--text);text-align:left}.investment-debt-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;background:var(--danger-bg);color:var(--danger)}.investment-debt-copy{min-width:0}.investment-debt-list strong,.investment-debt-list small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.investment-debt-list strong{color:var(--text);font-size:10px;font-weight:900}.investment-debt-list small{margin-bottom:3px;color:var(--muted);font-size:8px;font-weight:700}.investment-debt-list>button>i{color:var(--faint);font-size:12px}.investment-rebalance-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.34fr);gap:10px;align-items:start}.investment-target-list{display:flex;flex-direction:column;gap:8px}.investment-target-list article{padding:10px;border:.5px solid var(--border-soft);border-radius:10px;background:var(--surface-2)}.investment-target-head{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:9px}.investment-target-head>div{min-width:0}.investment-target-head strong,.investment-target-head small{display:block}.investment-target-head strong{color:var(--text);font-size:10px;font-weight:900}.investment-target-head small{margin-top:3px;color:var(--muted);font-size:8px;font-weight:700}.investment-target-head label{display:flex;align-items:center;gap:5px;color:var(--muted);font-size:8px;font-weight:800}.investment-target-head input{width:54px;height:30px;padding:0 6px;border:.5px solid var(--border-strong);border-radius:7px;background:var(--surface);color:var(--text);font-size:10px;font-weight:900;text-align:right}.investment-target-head label em{font-style:normal}.investment-target-track{position:relative;height:6px;margin-top:9px;border-radius:999px;background:var(--surface)}.investment-target-track span{display:block;height:100%;border-radius:inherit}.investment-target-track i{position:absolute;top:-3px;width:2px;height:12px;border-radius:2px;background:var(--text);transform:translate(-1px)}.investment-target-list article>p{margin:6px 0 0;font-size:8px;font-weight:850;text-align:right}.investment-target-list article>p.buy{color:#2f9b68}.investment-target-list article>p.reduce{color:#c17a24}.investment-target-list article>p.balanced{color:var(--muted)}.investment-target-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:12px}.investment-target-actions span{color:var(--muted);font-size:8px;font-weight:700}.investment-rebalance-note>i{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:var(--accent-soft);color:var(--accent);font-size:19px}.investment-rebalance-note h2{margin:11px 0 8px;color:var(--text);font-size:13px;font-weight:900}.investment-rebalance-note ul{display:flex;flex-direction:column;gap:8px;padding-left:16px;color:var(--text-soft);font-size:9px;font-weight:700;line-height:1.45}.investment-rebalance-note>p{margin:12px 0 0;padding-top:10px;border-top:.5px solid var(--border);color:var(--muted);font-size:8px;font-weight:700;line-height:1.45}.investment-modal-backdrop,.investment-drawer-backdrop{position:fixed;z-index:720;top:0;right:0;bottom:0;left:0;background:#00000085;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.investment-modal-backdrop{display:grid;place-items:center;padding:18px}.investment-editor{width:min(820px,100%);max-height:min(92dvh,900px);overflow:auto;border:.5px solid var(--border-strong);border-radius:15px;background:var(--surface);color:var(--text);box-shadow:var(--shadow)}.investment-editor>header,.investment-detail>header{position:sticky;z-index:2;top:0;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:15px;border-bottom:.5px solid var(--border);background:color-mix(in srgb,var(--surface) 96%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.investment-editor header h2,.investment-editor header p,.investment-detail header h2,.investment-detail header p{margin:0}.investment-editor header h2,.investment-detail header h2{color:var(--text);font-size:15px;font-weight:900;letter-spacing:-.02em}.investment-editor header p,.investment-detail header p{margin-top:3px;color:var(--muted);font-size:9px;font-weight:700}.investment-editor header>button,.investment-detail header>button{display:grid;place-items:center;flex:0 0 auto;width:32px;height:32px;border:0;border-radius:9px;background:var(--surface-2);color:var(--muted);font-size:16px}.investment-editor form{padding:14px}.investment-kind-toggle{display:grid;grid-template-columns:1fr 1fr;gap:4px;margin-bottom:13px;padding:4px;border-radius:10px;background:var(--surface-2)}.investment-kind-toggle button{display:flex;align-items:center;justify-content:center;gap:6px;min-height:38px;border:.5px solid transparent;border-radius:8px;background:transparent;color:var(--muted);font-size:10px;font-weight:900}.investment-kind-toggle button.active{border-color:color-mix(in srgb,var(--accent) 24%,transparent);background:var(--surface);color:var(--accent)}.investment-kind-toggle button.active.debt{color:var(--danger);border-color:var(--danger-border)}.investment-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.investment-form-grid label,.investment-market-field{display:flex;flex-direction:column;gap:5px;min-width:0;color:var(--text-soft);font-size:9px;font-weight:800}.investment-form-grid .wide{grid-column:1/-1}.investment-form-grid input,.investment-form-grid select,.investment-form-grid textarea,.investment-market-field>div:first-of-type{width:100%;min-width:0;border:.5px solid var(--border-strong);border-radius:9px;background:var(--input-bg);color:var(--text)}.investment-form-grid input,.investment-form-grid select,.investment-form-grid textarea{min-height:36px;padding:7px 9px;outline:0}.investment-form-grid textarea{resize:vertical;line-height:1.45}.investment-form-grid label>small,.investment-market-field>span small{color:var(--muted);font-size:8px;font-weight:650}.investment-market-field>div:first-of-type{display:grid;grid-template-columns:minmax(0,1fr) auto;overflow:hidden}.investment-market-field>div:first-of-type input{border:0;border-radius:0;background:transparent}.investment-market-field>div:first-of-type button{min-width:72px;border:0;border-left:.5px solid var(--border);background:var(--accent-soft);color:var(--accent);font-size:9px;font-weight:900}.investment-market-results{display:flex;flex-direction:column;max-height:210px;overflow:auto;border:.5px solid var(--border);border-radius:9px;background:var(--surface)}.investment-market-results button{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:44px;padding:7px 9px;border:0;border-bottom:.5px solid var(--border-soft);background:transparent;color:var(--text);text-align:left}.investment-market-results button:last-child{border-bottom:0}.investment-market-results span{min-width:0}.investment-market-results strong,.investment-market-results small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.investment-market-results strong{font-size:9px}.investment-market-results small{margin-top:3px;color:var(--muted);font-size:8px}.investment-market-results em{color:var(--accent);font-size:9px;font-style:normal;font-weight:900;white-space:nowrap}.investment-selected-symbol{display:flex!important;align-items:center;flex-direction:row!important;gap:6px!important;width:max-content!important;max-width:100%;min-height:28px;padding:0 7px;border:0!important;border-radius:7px!important;background:var(--accent-soft)!important;color:var(--accent)!important;font-size:8px!important}.investment-selected-symbol button{border:0;background:transparent;color:inherit;font-size:8px;font-weight:900;text-decoration:underline}.investment-form-error{display:flex;align-items:center;gap:6px;margin-top:10px;padding:8px 9px;border:.5px solid var(--danger-border);border-radius:8px;background:var(--danger-bg);color:var(--danger);font-size:9px;font-weight:800}.investment-editor form>footer{display:flex;justify-content:flex-end;gap:7px;margin-top:14px;padding-top:12px;border-top:.5px solid var(--border)}.investment-drawer-backdrop{display:flex;justify-content:flex-end}.investment-detail{width:min(500px,100%);height:100dvh;overflow-y:auto;border-left:.5px solid var(--border-strong);background:var(--surface);color:var(--text);box-shadow:-24px 0 60px #0000003d}.investment-detail-title{display:flex;align-items:center;gap:9px;min-width:0}.investment-detail-title>div{min-width:0}.investment-detail-title h2,.investment-detail-title p{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.investment-market-detail{padding:14px;border-bottom:.5px solid var(--border)}.investment-quote-line{display:flex;align-items:flex-end;justify-content:space-between;gap:10px}.investment-quote-line span{display:block;margin-bottom:3px;color:var(--muted);font-size:8px;font-weight:800}.investment-quote-line strong{display:block;color:var(--text);font-size:22px;font-weight:900;letter-spacing:-.04em}.investment-quote-line em{padding-bottom:3px;color:var(--muted);font-size:10px;font-style:normal;font-weight:900}.investment-range-tabs{display:grid;grid-template-columns:repeat(5,1fr);gap:3px;margin:12px 0 8px;padding:3px;border-radius:9px;background:var(--surface-2)}.investment-range-tabs button{min-height:28px;border:0;border-radius:7px;background:transparent;color:var(--muted);font-size:8px;font-weight:850}.investment-range-tabs button.active{background:var(--surface);color:var(--accent)}.investment-market-chart{margin:0}.investment-market-chart svg{display:block;width:100%;height:auto;min-height:210px;overflow:visible}.investment-market-chart .grid{stroke:var(--border);stroke-width:1;stroke-dasharray:3 5}.investment-market-chart figcaption{display:flex;align-items:center;justify-content:space-between;gap:6px;color:var(--muted);font-size:7px;font-weight:700}.investment-market-chart figcaption span:nth-child(2){text-align:center}.investment-chart-skeleton,.investment-chart-empty{min-height:230px;border-radius:10px;background:var(--surface-2)}.investment-chart-skeleton{background:linear-gradient(90deg,var(--surface-2),var(--input-bg),var(--surface-2));background-size:200% 100%;animation:investment-shimmer 1.2s infinite}.investment-chart-empty{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:6px;color:var(--muted);font-size:9px;font-weight:800}.investment-chart-empty i{font-size:25px}.investment-market-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:10px}.investment-market-meta span{padding:7px;border-radius:7px;background:var(--surface-2);color:var(--muted);font-size:7px;font-weight:750}.investment-market-meta strong{display:block;margin-top:3px;overflow:hidden;color:var(--text);font-size:8px;text-overflow:ellipsis;white-space:nowrap}.investment-detail-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;padding:14px;border-bottom:.5px solid var(--border)}.investment-detail-stats>div{min-width:0;padding:9px;border-radius:9px;background:var(--surface-2)}.investment-detail-stats>div:first-child{grid-column:1/-1}.investment-detail-stats span,.investment-detail-stats strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.investment-detail-stats span{color:var(--muted);font-size:8px;font-weight:800}.investment-detail-stats strong{margin-top:4px;color:var(--text);font-size:11px;font-weight:900}.investment-detail-stats>div:first-child strong{font-size:15px}.investment-detail-notes{margin:14px;padding:11px;border-radius:9px;background:var(--surface-2)}.investment-detail-notes span{display:block;color:var(--muted);font-size:8px;font-weight:800}.investment-detail-notes strong{display:block;margin-top:3px;color:var(--text);font-size:10px}.investment-detail-notes p{margin:9px 0 0;padding-top:9px;border-top:.5px solid var(--border);color:var(--text-soft);font-size:9px;line-height:1.5;white-space:pre-wrap}.investment-detail>.investment-form-error{margin:0 14px 14px}.investment-detail>footer{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:14px}.investment-delete-confirm{display:flex;align-items:center;gap:5px;min-width:0}.investment-delete-confirm span{color:var(--danger);font-size:9px;font-weight:850;white-space:nowrap}.investment-delete-confirm button{min-height:30px;padding:0 8px;border:.5px solid var(--danger-border);border-radius:8px;background:var(--danger-bg);color:var(--danger);font-size:8px;font-weight:900}@media (max-width:900px){.investment-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.investment-overview-grid,.investment-debt-layout,.investment-rebalance-layout{grid-template-columns:1fr}.investment-allocation-panel{grid-row:auto}.investment-debt-list-panel{grid-column:auto}.investment-table-head{display:none}.investment-holding-row{grid-template-columns:minmax(190px,1.3fr) minmax(120px,.8fr) minmax(110px,.7fr) minmax(90px,.55fr) 14px}.investment-update-cell{display:none}.investment-debt-list>button{grid-template-columns:34px minmax(150px,1fr) repeat(3,minmax(92px,.6fr)) 14px}.investment-debt-list>button>span:nth-of-type(6){display:none}}@media (max-width:760px){.investment-page{padding-bottom:4px}.investment-toolbar{align-items:stretch;flex-direction:column}.investment-tabs{order:2;width:100%}.investment-tabs button{flex:1 0 auto;min-height:42px}.investment-toolbar-actions{order:1}.investment-toolbar-actions>button{min-height:44px}.investment-toolbar-actions .investment-primary-button{flex:1}.investment-context-row{grid-template-columns:1fr;gap:6px}.investment-privacy-note{align-items:flex-start}.investment-context-row .investment-privacy-note span{overflow:visible;white-space:normal}.investment-fx-strip{grid-template-columns:24px minmax(0,1fr);min-height:48px}.investment-fx-main{justify-content:space-between}.investment-fx-strip>small{grid-column:2;text-align:left}.investment-summary-grid{gap:6px}.investment-summary-card{min-height:88px;padding:11px}.investment-summary-card strong{font-size:16px}.investment-summary-card>i{font-size:19px}.investment-panel{padding:12px;border-radius:11px}.investment-allocation-content{grid-template-columns:1fr;gap:13px}.investment-donut{width:156px}.investment-list-panel{padding:0}.investment-list-head{align-items:stretch;flex-direction:column;padding:12px}.investment-list-filters{align-items:stretch;flex-direction:column}.investment-search{width:100%;min-width:0;min-height:44px}.investment-list-filters select{min-height:44px}.investment-holding-row{position:relative;grid-template-columns:minmax(0,1fr) auto;gap:8px;min-height:94px;padding:10px 12px}.investment-holding-name{grid-column:1}.investment-number-cell{grid-column:2;grid-row:1;text-align:right}.investment-account-cell{grid-column:1;padding-left:43px}.investment-gain-cell{grid-column:2;grid-row:2;text-align:right}.investment-update-cell{display:none}.investment-row-chevron{position:absolute;right:4px;bottom:5px}.investment-cashflow-values{grid-template-columns:1fr auto 1fr}.investment-cashflow-values>div.total{grid-column:1/-1}.investment-cashflow-values>i:nth-of-type(2){display:none}.investment-debt-meter{grid-template-columns:repeat(2,minmax(0,1fr))}.investment-debt-list>button{position:relative;grid-template-columns:34px minmax(0,1fr) auto;min-height:92px}.investment-debt-list>button>span:nth-of-type(3),.investment-debt-list>button>span:nth-of-type(4),.investment-debt-list>button>span:nth-of-type(5),.investment-debt-list>button>span:nth-of-type(6){grid-column:auto}.investment-debt-list>button>span:nth-of-type(5),.investment-debt-list>button>span:nth-of-type(6){display:none}.investment-debt-list>button>i{display:none}.investment-target-head{grid-template-columns:32px minmax(0,1fr)}.investment-target-head label{grid-column:1/-1;justify-content:flex-end}.investment-target-actions{align-items:stretch;flex-direction:column}.investment-target-actions .investment-primary-button{min-height:44px}.investment-modal-backdrop{align-items:end;padding:0}.investment-editor{max-height:94dvh;border-right:0;border-bottom:0;border-left:0;border-radius:15px 15px 0 0}.investment-editor>header{padding:13px}.investment-editor form{padding:12px}.investment-form-grid{grid-template-columns:1fr}.investment-form-grid .wide{grid-column:auto}.investment-form-grid input,.investment-form-grid select,.investment-segmented button,.investment-range-tabs button{min-height:44px}.investment-editor form>footer .investment-primary-button,.investment-editor form>footer .investment-secondary-button{flex:1;min-height:44px}.investment-detail{width:100%;border-left:0}.investment-market-chart svg{min-height:190px}.investment-detail>footer .investment-primary-button,.investment-detail>footer .investment-danger-button{min-height:44px}}@media (max-width:380px){.investment-tabs button{min-width:88px}.investment-fx-source,.investment-tabs button i{display:none}.investment-summary-card strong{font-size:14px}.investment-summary-card>i{display:none}.investment-summary-card{min-height:82px}.investment-panel-head{align-items:stretch;flex-direction:column}.investment-segmented{width:100%}.investment-segmented button{flex:1}.investment-market-meta{grid-template-columns:1fr}.investment-market-chart figcaption span:nth-child(2){display:none}.investment-detail-stats{grid-template-columns:1fr}.investment-detail-stats>div:first-child{grid-column:auto}.investment-delete-confirm span{display:none}}.app-shell:has(.md-home-mock){--md-bg:#f7f8fb;--md-surface:#fff;--md-surface-low:#edf0f5;--md-text:#1d1b20;--md-muted:#6f6a73;--md-line:#d9dce2;background:var(--md-bg);color:var(--md-text)}.app-shell:has(.md-home-mock) .main-area,.app-shell:has(.md-home-mock) .center-col{width:100%;min-width:0;background:var(--md-bg)}.app-shell:has(.md-home-mock) .center-col{overflow-y:auto;padding:20px clamp(12px,3vw,32px) calc(96px + env(safe-area-inset-bottom))}.md-home-mock{width:min(100%,1080px);margin:0 auto;color:var(--md-text);container-type:inline-size}.md-home-header{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:76px}.md-eyebrow{display:block;margin-bottom:3px;color:#53657d;font-size:11px;font-weight:750;text-transform:uppercase}.md-home-header h1,.md-home-header p,.md-section-heading h2,.md-section-heading span{margin:0}.md-home-header h1{font-size:28px;line-height:1.1;font-weight:760;color:var(--md-text)}.md-home-header p{margin-top:5px;color:var(--md-muted);font-size:13px;font-weight:550}.md-round-button{display:grid;place-items:center;width:44px;height:44px;border:0;border-radius:50%;background:var(--md-surface-low);color:#45464c;font-size:19px;cursor:pointer}.md-room-tabs{display:flex;gap:8px;overflow-x:auto;padding:8px 0 18px;scrollbar-width:none}.md-room-tabs::-webkit-scrollbar{display:none}.md-room-tabs button{display:flex;align-items:center;justify-content:center;gap:7px;flex:0 0 auto;min-width:96px;height:44px;padding:0 14px;border:1px solid var(--md-line);border-radius:8px;background:var(--md-surface);color:#48464d;font-size:13px;font-weight:680;cursor:pointer}.md-room-tabs button.active{border-color:#a8c7fa;background:#dbe9ff;color:#174a75}.md-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:4px 0 12px}.md-section-heading>div{display:flex;align-items:baseline;gap:8px;min-width:0}.md-section-heading h2{font-size:19px;font-weight:760}.md-section-heading span{color:var(--md-muted);font-size:12px;font-weight:600}.md-section-heading>button{display:flex;align-items:center;gap:6px;min-height:44px;padding:0 12px;border:0;border-radius:8px;background:var(--md-surface-low);color:#49474e;font-size:12px;font-weight:680;cursor:pointer}.md-entity-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;align-items:start}.md-light-tile,.md-device-card{position:relative;min-width:0;border:1px solid transparent;border-radius:8px;overflow:hidden}.md-light-tile{isolation:isolate;display:flex;flex-direction:column;justify-content:space-between;min-height:116px;padding:12px;background:var(--md-surface-low);color:#414047;text-align:left;cursor:pointer;touch-action:pan-y;-webkit-user-select:none;user-select:none}.md-light-tile.is-on{border-color:#ead28d;background:#f5edda;color:#493700}.md-light-fill{position:absolute;z-index:-1;inset:0 auto 0 0;width:var(--brightness);background:#ffe49b;transition:width .16s ease}.md-light-top,.md-device-card-head{display:flex;align-items:center;gap:10px}.md-light-top{justify-content:space-between}.md-light-top>i{color:#77737b;font-size:17px}.md-light-tile.is-on .md-light-top>i{color:#634d00}.md-device-icon{flex:0 0 auto;display:grid;place-items:center;width:44px;height:44px;border:0;border-radius:50%;background:#e1e4ea;color:#55565e;font-size:20px}.md-device-icon.yellow{background:#fff1c5;color:#8a5d00}.md-device-icon.green{background:#dcefe4;color:#17623d}.md-device-icon.blue{background:#d5eaff;color:#15577c;cursor:pointer}.md-light-copy{display:flex;flex-direction:column;gap:3px;min-width:0}.md-light-copy strong,.md-device-card-head strong{color:inherit;font-size:14px;line-height:1.2;font-weight:740}.md-light-copy small,.md-device-card-head small{color:inherit;opacity:.72;font-size:11px;font-weight:600}.md-swipe-track{height:3px;margin-top:8px;border-radius:2px;background:#5c430029;overflow:hidden}.md-swipe-track i{display:block;width:var(--brightness);height:100%;background:#705500}.md-device-card{grid-column:span 2;padding:14px;background:var(--md-surface);border-color:var(--md-line);color:var(--md-text)}.md-home-mock .md-curtain-card,.md-home-mock .md-climate-card{grid-column:1 / -1}.md-device-card-head>div{min-width:0;display:flex;flex-direction:column;gap:3px}.md-state-dot{margin-left:auto;width:8px;height:8px;border-radius:50%;background:#a8abb1}.md-state-dot.green{background:#43a16e}.md-state-dot.blue{background:#3c8dc0}.md-cover-visual{position:relative;height:54px;margin:14px 0 4px;overflow:hidden;border-radius:6px;background:#d7e7f3;box-shadow:inset 0 0 0 4px #f1f3f6}.md-cover-visual .window{position:absolute;top:7px;right:18%;bottom:7px;left:18%;border-left:1px solid rgba(23,74,117,.18);border-right:1px solid rgba(23,74,117,.18)}.md-cover-visual .left,.md-cover-visual .right{position:absolute;z-index:1;top:0;bottom:0;width:max(6px,calc((100% - var(--cover-position)) / 2));background:#a9cdb8;transition:width .18s ease}.md-cover-visual .left{left:0}.md-cover-visual .right{right:0}.md-cover-visual.single-rtl .left{display:none}.md-cover-visual.single-rtl .right{width:max(8px,calc(100% - var(--cover-position)));border-left:1px solid var(--room-accent)}.md-cover-visual.bilateral .left{border-right:1px solid var(--room-accent)}.md-cover-visual.bilateral .right{border-left:1px solid var(--room-accent)}.md-cover-slider{width:100%;height:32px;margin:0;accent-color:#357254}.md-cover-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.md-cover-actions button,.md-mode-row button{min-height:44px;border:0;border-radius:8px;background:#edf0f2;color:#46474d;font-size:11px;font-weight:680;cursor:pointer}.md-cover-actions button{display:flex;align-items:center;justify-content:center;gap:5px}.md-climate-card.is-on{border-color:#b9d7eb;background:#f5faff}.md-temperature-control{display:grid;grid-template-columns:48px 1fr 48px;align-items:center;gap:8px;margin:13px 0 10px}.md-temperature-control button{display:grid;place-items:center;width:48px;height:48px;border:0;border-radius:50%;background:#e2edf6;color:#174a75;font-size:20px;cursor:pointer}.md-temperature-control button:disabled{opacity:.35;cursor:not-allowed}.md-temperature-control div{display:flex;flex-direction:column;align-items:center}.md-temperature-control strong{color:#123f5d;font-size:30px;line-height:1;font-weight:650;font-variant-numeric:tabular-nums}.md-temperature-control span{margin-top:4px;color:#69727b;font-size:10px;font-weight:650}.md-mode-row{display:grid;grid-template-columns:repeat(4,1fr);gap:5px}.md-mode-row button.active{background:#d5eaff;color:#15577c}.md-mode-row button:disabled,.md-fan-row button:disabled{opacity:.38;cursor:not-allowed}.md-fan-row{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:5px;margin-top:8px}.md-fan-row button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-width:0;min-height:52px;padding:4px 2px;border:0;border-radius:8px;background:#edf0f2;color:#62646b;cursor:pointer}.md-fan-row button i{font-size:17px}.md-fan-row button span{max-width:100%;overflow:hidden;color:inherit;font-size:9px;font-weight:650;text-overflow:ellipsis;white-space:nowrap}.md-fan-row button.active{background:#d5eaff;color:#15577c}.md-home-mock button:focus-visible,.md-home-mock input:focus-visible{outline:3px solid #2f6fca;outline-offset:2px}.md-home-mock button:active{transform:scale(.985)}@container (max-width:760px){.md-entity-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@container (max-width:560px){.md-entity-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.md-light-tile{min-height:108px}.md-device-card{grid-column:1 / -1}}@container (max-width:380px){.md-home-header p{display:none}.md-section-heading{align-items:flex-end}.md-section-heading>button{width:42px;padding:0;justify-content:center;font-size:0}.md-section-heading>button i{font-size:17px}.md-light-tile{min-height:96px;padding:10px}.md-light-tile .md-device-icon{width:36px;height:36px;font-size:18px}.md-fan-row{grid-template-columns:repeat(3,1fr)}}@media (prefers-reduced-motion:reduce){.md-home-mock *,.md-home-mock *:before,.md-home-mock *:after{transition:none!important}}.ha-room-group.material-room-panel{--md-surface:var(--surface);--md-surface-low:var(--surface-2);--md-text:var(--text);--md-muted:var(--muted);--md-line:var(--border)}.ha-room-group.material-room-panel .material-live-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;align-items:start}.ha-room-group.material-room-panel .material-cover-card,.ha-room-group.material-room-panel .material-climate-card{grid-column:1 / -1;width:100%}.ha-room-group.material-room-panel .md-light-tile{width:100%;min-height:112px;background:var(--surface-2);color:var(--text-soft)}.ha-room-group.material-room-panel .material-light-wrap{position:relative;min-width:0}.ha-room-group.material-room-panel .md-a11y-brightness{position:absolute;z-index:2;right:10px;bottom:4px;left:10px;width:calc(100% - 20px);height:22px;margin:0;opacity:0;pointer-events:none;accent-color:#705500}.ha-room-group.material-room-panel .md-a11y-brightness:focus-visible{opacity:1;outline:3px solid var(--accent);outline-offset:2px}.ha-room-group.material-room-panel .material-light-control.is-on{border-color:#ead28d;background:#f5edda;color:#493700}.ha-room-group.material-room-panel .md-light-tile:disabled{opacity:.55;cursor:not-allowed}.ha-room-group.material-room-panel .material-cover-card,.ha-room-group.material-room-panel .material-climate-card{background:var(--surface);color:var(--text);border-color:var(--border)}.ha-room-group.material-room-panel .material-climate-card.is-on{background:color-mix(in srgb,#5aa9dc 10%,var(--surface))}.ha-room-group.material-room-panel .material-cover-card .md-cover-visual{background:color-mix(in srgb,var(--accent) 11%,var(--surface-2))}.ha-room-group.material-room-panel .material-cover-card .md-cover-visual{box-shadow:inset 0 0 0 4px var(--surface-2)}.ha-room-group.material-room-panel .material-cover-card .left,.ha-room-group.material-room-panel .material-cover-card .right{background:color-mix(in srgb,#43a16e 42%,var(--surface-2))}.ha-room-group.material-room-panel .material-climate-card .ha-climate-values,.ha-room-group.material-room-panel .material-climate-card .ha-mode-buttons,.ha-room-group.material-room-panel .material-climate-card .ha-fan-control{width:100%}.ha-room-group.material-room-panel .material-climate-card .ha-mode-buttons button,.ha-room-group.material-room-panel .material-climate-card .ha-fan-buttons button,.ha-room-group.material-room-panel .material-climate-card .ha-power-button{border-radius:8px;min-height:44px}.ha-room-group.material-room-panel .md-cover-actions button{border:1px solid var(--border);background:var(--surface-2);color:var(--text-soft)}:root[data-theme=oled] .ha-room-group.material-room-panel .material-light-control.is-on{border-color:#755d14;background:#4b3900;color:#ffe08a}:root[data-theme=oled] .ha-room-group.material-room-panel .material-light-control .md-light-fill{background:#6a5000}:root[data-theme=oled] .ha-room-group.material-room-panel .material-light-control .md-swipe-track{background:#2d250e}:root[data-theme=oled] .ha-room-group.material-room-panel .material-light-control .md-swipe-track i{background:#ffe08a}@media (prefers-color-scheme:dark){:root:not([data-theme]) .ha-room-group.material-room-panel .material-light-control.is-on{border-color:#755d14;background:#4b3900;color:#ffe08a}:root:not([data-theme]) .ha-room-group.material-room-panel .material-light-control .md-light-fill{background:#6a5000}:root:not([data-theme]) .ha-room-group.material-room-panel .material-light-control .md-swipe-track{background:#2d250e}:root:not([data-theme]) .ha-room-group.material-room-panel .material-light-control .md-swipe-track i{background:#ffe08a}}@media (max-width:900px){.ha-room-group.material-room-panel .material-live-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:420px){.ha-room-group.material-room-panel .material-live-grid{gap:8px}.ha-room-group.material-room-panel .md-light-tile{min-height:98px}}@media (prefers-color-scheme: dark){:root{--app-bg: #000000;--surface: #050605;--surface-2: #0B0E0B;--soft: #070907;--input-bg: #030403;--text: #F2F5F1;--text-soft: #D5DDD3;--muted: #9EA99B;--faint: #6F796D;--border: rgba(255,255,255,.11);--border-soft:rgba(255,255,255,.07);--border-strong:rgba(255,255,255,.18);--accent: #8EEB95;--accent-soft:#071407;--accent-muted:#426E47;--danger: #FFB39E;--danger-bg: #1B0905;--danger-border:rgba(255,179,158,.28);--shadow: 0 20px 60px rgba(0,0,0,.72)}.sidebar{background:#000;border-right:.5px solid var(--border)}.calendar-grid-wrap,.right-panel,.mobile-nav,.calendar-cell{background:#000}}:root[data-theme=light]{--app-bg: #F4F1EC;--surface: #ffffff;--surface-2: #F7F5F0;--soft: #FAFAFA;--input-bg: #FAFAFA;--text: #2C2C2A;--text-soft: #4a4a47;--muted: #6B6B67;--faint: #aaa;--border: rgba(0,0,0,.08);--border-soft:rgba(0,0,0,.06);--border-strong:rgba(0,0,0,.12);--accent: #3D5E42;--accent-soft:#E8F0E9;--accent-muted:#8ab590;--danger: #8B2500;--danger-bg: #FAEAE4;--danger-border:rgba(139,37,0,.24);--shadow: 0 20px 60px rgba(0,0,0,.15);color-scheme:light}:root[data-theme=oled]{--app-bg: #000000;--surface: #050605;--surface-2: #0B0E0B;--soft: #070907;--input-bg: #030403;--text: #F2F5F1;--text-soft: #D5DDD3;--muted: #9EA99B;--faint: #6F796D;--border: rgba(255,255,255,.11);--border-soft:rgba(255,255,255,.07);--border-strong:rgba(255,255,255,.18);--accent: #8EEB95;--accent-soft:#071407;--accent-muted:#426E47;--danger: #FFB39E;--danger-bg: #1B0905;--danger-border:rgba(255,179,158,.28);--shadow: 0 20px 60px rgba(0,0,0,.72);color-scheme:dark}:root[data-theme=light] .sidebar{background:#3d5e42;border-right:0}:root[data-theme=light] .calendar-grid-wrap,:root[data-theme=light] .right-panel,:root[data-theme=light] .mobile-nav,:root[data-theme=light] .calendar-cell{background:var(--surface)}:root[data-theme=oled] .sidebar,:root[data-theme=oled] .calendar-grid-wrap,:root[data-theme=oled] .right-panel,:root[data-theme=oled] .mobile-nav,:root[data-theme=oled] .calendar-cell{background:#000}:root[data-theme=oled] .settings-segment button.active{color:#001f08}html,body,#root{height:100%;width:100%;font-family:var(--font);background:var(--app-bg);color:var(--text);-webkit-font-smoothing:antialiased;overflow:hidden}button{cursor:pointer;font-family:var(--font)}input,select,textarea{font-family:var(--font);color-scheme:inherit}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#00000026;border-radius:2px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}.animate-in{animation:fadeIn .2s ease-out}.spin{animation:spin .7s linear infinite;display:inline-block}.app-shell{display:flex;width:100%;height:100vh;height:100dvh;overflow:hidden}.sidebar{width:var(--sidebar-w);background:#3d5e42;display:flex;flex-direction:column;flex-shrink:0;overflow:hidden;transition:width .22s ease}.sidebar.collapsed{width:var(--sidebar-col)}.main-area{flex:1;display:flex;overflow:hidden;min-width:0}.center-col{flex:1;overflow-y:auto;overflow-x:hidden;padding:18px 16px;display:flex;flex-direction:column;gap:14px;min-width:0;max-width:100%}.right-panel{width:228px;flex-shrink:0;overflow-y:auto;padding:18px 14px;border-left:.5px solid var(--border);display:flex;flex-direction:column;gap:14px}.mobile-nav{display:none;position:fixed;bottom:0;left:0;right:0;z-index:200;background:var(--surface);border-top:.5px solid var(--border);padding-bottom:env(safe-area-inset-bottom)}.top-actions{display:flex;align-items:center;gap:6px;justify-content:flex-end;flex-wrap:wrap;max-width:100%}.calendar-page,.finance-page,.flightlog-page{display:flex;flex-direction:column;gap:var(--page-gap);width:100%;min-width:0}.calendar-page-header,.finance-header,.flightlog-header{display:flex;align-items:center;justify-content:space-between;gap:var(--header-gap);flex-wrap:wrap;width:100%;min-width:0}.calendar-page-tabs,.finance-tabs,.flightlog-tabs{display:flex;align-items:center;gap:4px;padding:3px;border:.5px solid var(--border);border-radius:var(--control-radius);background:var(--surface);max-width:100%;overflow-x:auto;scrollbar-width:none}.calendar-page-tabs::-webkit-scrollbar,.finance-tabs::-webkit-scrollbar,.flightlog-tabs::-webkit-scrollbar{display:none}.calendar-page-tabs button,.finance-tabs button,.flightlog-tabs button{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:flex;align-items:center;justify-content:center;gap:4px;min-height:30px;padding:6px 10px;border:0;border-radius:8px;background:transparent;color:var(--muted);font-size:11px;font-weight:600;line-height:1;white-space:nowrap}.calendar-page-tabs button.active,.finance-tabs button.active,.flightlog-tabs button.active{background:var(--accent);color:#fff}.calendar-summary-grid,.finance-summary-grid,.finance-import-summary,.flightlog-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--summary-gap)}.settings-segment{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;padding:3px;border:.5px solid var(--border);border-radius:var(--control-radius);background:var(--surface-2)}.settings-segment button{display:flex;align-items:center;justify-content:center;gap:5px;min-width:0;min-height:34px;padding:0 8px;border:0;border-radius:8px;background:transparent;color:var(--muted);font-size:11px;font-weight:800;white-space:nowrap}.settings-segment button.active{background:var(--accent);color:#fff}.calendar-page{display:flex;flex-direction:column;gap:12px;width:100%;min-width:0}.calendar-page-header{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;width:100%;min-width:0}.calendar-page-header .calendar-title-row{width:auto;justify-content:flex-start}.calendar-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;min-width:0;margin-left:auto}.calendar-page-tabs{display:flex;align-items:center;gap:4px;flex:0 1 auto;min-width:0;padding:3px;border:.5px solid var(--border);border-radius:10px;background:var(--surface);max-width:100%;overflow-x:auto;overflow-y:visible;scrollbar-width:none}.calendar-page-tabs::-webkit-scrollbar{display:none}.calendar-page-tabs button{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:flex;align-items:center;justify-content:center;gap:4px;min-height:30px;padding:6px 10px;border:0;border-radius:8px;background:transparent;color:var(--muted);font-size:11px;font-weight:600;line-height:1;white-space:nowrap}.calendar-page-tabs button.active{background:var(--accent);color:#fff}.calendar-today-button{height:26px;padding:0 9px;border-radius:7px;border:.5px solid var(--border-strong);background:var(--surface);color:var(--muted);font-size:11px;font-weight:700;white-space:nowrap}.calendar-add-button{display:flex;align-items:center;justify-content:center;gap:4px;flex:0 0 auto;height:38px;padding:0 12px;border:0;border-radius:10px;color:#fff;font-size:11px;font-weight:700;white-space:nowrap}.calendar-add-button i{font-size:14px}.calendar-tab-content{display:flex;flex-direction:column;gap:12px;width:100%;min-width:0}.calendar-tab-content>*{margin-top:0}.calendar-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.calendar-summary-card i{color:var(--accent)}.calendar-inline-status{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:13px}.calendar-panel{min-width:0;background:var(--surface);border-radius:12px;border:.5px solid var(--border);padding:20px}.calendar-panel h2{margin:0 0 16px;font-size:16px;font-weight:600;color:var(--text)}.calendar-list-panel{width:100%}.tz-selector{position:relative;flex-shrink:0}.tz-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:250;border:0;background:transparent}.tz-select-button{position:relative;z-index:270;min-height:30px;padding:5px 10px;border-radius:7px;border:.5px solid var(--border-strong);background:var(--surface);color:var(--text);display:flex;align-items:center;gap:6px;font-size:11px;font-weight:600;white-space:nowrap}.tz-select-button i{font-size:14px;color:var(--muted)}.tz-select-menu{position:absolute;top:calc(100% + 6px);right:0;z-index:260;min-width:230px;padding:7px;border:.5px solid var(--border-strong);border-radius:10px;background:var(--surface);box-shadow:var(--shadow)}.tz-select-option{width:100%;border:0;border-radius:8px;background:transparent;color:var(--text);display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 10px;text-align:left}.tz-select-option span{display:flex;flex-direction:column;gap:2px;min-width:0}.tz-select-option strong{font-size:12px;font-weight:700}.tz-select-option small{font-size:10px;color:var(--muted)}.tz-select-option.active{background:var(--accent-soft);color:var(--accent)}.tz-select-option.active small,.tz-select-option.active i{color:var(--accent)}.mobile-account-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:240;border:0;background:#00000047}.mobile-account-sheet{position:fixed;left:12px;right:12px;bottom:calc(74px + env(safe-area-inset-bottom));z-index:250;max-width:430px;max-height:min(72vh,520px);margin:0 auto;padding:12px;border:.5px solid var(--border-strong);border-radius:16px;background:var(--surface);box-shadow:var(--shadow);overflow-y:auto;overscroll-behavior:contain}.mobile-account-user{display:flex;align-items:center;gap:10px;padding:4px 4px 12px;margin-bottom:4px;border-bottom:.5px solid var(--border-soft)}.mobile-account-avatar{width:36px;height:36px;border-radius:50%;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;flex-shrink:0}.mobile-account-name{font-size:13px;font-weight:700;color:var(--text)}.mobile-account-email{margin-top:2px;font-size:11px;color:var(--muted);word-break:break-all}.mobile-account-item{width:100%;border:0;border-radius:10px;background:transparent;color:var(--text);display:flex;align-items:center;gap:10px;padding:10px;text-align:left}.mobile-account-item i{width:28px;height:28px;border-radius:8px;background:var(--surface-2);color:var(--accent);display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0}.mobile-account-item span{display:flex;flex-direction:column;gap:2px;min-width:0}.mobile-account-item strong{font-size:12px;font-weight:700}.mobile-account-item small{font-size:10px;color:var(--muted)}.mobile-account-item.danger{color:var(--danger)}.mobile-account-item.danger i{background:var(--danger-bg);color:var(--danger)}.offline-banner{display:flex;align-items:center;gap:8px;padding:10px 12px;border:.5px solid var(--border-strong);border-radius:10px;background:var(--accent-soft);color:var(--accent);font-size:12px;font-weight:600}.offline-banner span{flex:1;min-width:0}.offline-banner button{border:.5px solid var(--border-strong);border-radius:7px;background:var(--surface);color:var(--accent);padding:5px 9px;font-size:11px;font-weight:700;white-space:nowrap}.offline-banner button:disabled{opacity:.55;cursor:not-allowed}.calendar-section{min-width:0;width:100%}.calendar-list-view{display:flex;flex-direction:column;align-items:stretch;min-width:0;width:100%;margin:0;padding:0}.calendar-list-groups{display:flex;flex-direction:column;align-items:stretch;gap:10px;width:100%;min-width:0}.calendar-list-empty{width:100%;min-width:0;padding:28px 16px;border:.5px solid var(--border);border-radius:8px;background:var(--surface);color:var(--faint);font-size:13px;text-align:center}.calendar-list-day{width:100%;min-width:0;overflow:hidden;border:.5px solid var(--border);border-radius:8px;background:var(--surface)}.calendar-list-day-head{width:100%;padding:9px 12px;background:var(--surface-2);color:var(--text-soft);font-size:12px;font-weight:600}.calendar-list-event-row{width:100%;min-width:0;border:0;background:var(--surface);padding:11px 12px;display:grid;grid-template-columns:3px minmax(0,1fr) auto;gap:10px;align-items:center;text-align:left}.calendar-header{display:flex;align-items:center;gap:10px;margin-bottom:10px;min-width:0}.calendar-title-row{display:flex;align-items:center;gap:8px;min-width:0;flex-shrink:0}.calendar-title{font-size:15px;font-weight:600;color:var(--text);white-space:nowrap;margin:0}.month-picker{position:relative;min-width:0;z-index:40}.month-picker-button{height:30px;display:flex;align-items:center;justify-content:center;gap:4px;padding:0 8px;border:0;border-radius:8px;background:transparent}.month-picker-button:hover,.month-picker-button[aria-expanded=true]{background:var(--surface-2)}.month-picker-button i{color:var(--muted);font-size:13px}.month-picker-menu{position:absolute;top:calc(100% + 8px);left:0;width:236px;max-width:calc(100vw - 24px);transform:none;padding:10px;border:.5px solid var(--border-strong);border-radius:12px;background:var(--surface);box-shadow:var(--shadow);z-index:300}.month-picker-year{display:grid;grid-template-columns:32px minmax(0,1fr) 32px;gap:7px;margin-bottom:10px}.month-picker-year button,.month-picker-grid button{border:.5px solid var(--border);background:var(--surface-2);color:var(--text)}.month-picker-year button{height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center}.month-picker-year input{width:100%;height:32px;border:.5px solid var(--border-strong);border-radius:8px;background:var(--input-bg);color:var(--text);text-align:center;font-size:14px;font-weight:800}.month-picker-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.month-picker-grid button{min-height:34px;border-radius:8px;font-size:12px;font-weight:700}.month-picker-grid button.active{border-color:var(--accent);background:var(--accent);color:#fff}.calendar-legend{display:flex;align-items:center;justify-content:flex-end;gap:8px 10px;flex:1;min-width:0;flex-wrap:wrap}.calendar-legend-item{display:flex;align-items:center;gap:3px;font-size:10px;color:var(--muted);white-space:nowrap;min-width:0}.calendar-legend-swatch{width:7px;height:7px;border-radius:2px;flex-shrink:0}.calendar-grid-wrap{width:100%;min-width:0;background:var(--surface);border-radius:12px;border:.5px solid var(--border);overflow:hidden}.calendar-dow-row,.calendar-cells{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));min-width:0}.calendar-dow-row{border-bottom:.5px solid var(--border-soft)}.calendar-dow{min-width:0;text-align:center;padding:9px 0;font-size:11px;font-weight:500}.calendar-cell{min-width:0;min-height:78px;padding:6px 4px;cursor:pointer;border-right:.5px solid var(--border-soft);border-bottom:.5px solid var(--border-soft);overflow:hidden}.calendar-date{width:20px;height:20px;border-radius:50%;margin-bottom:3px;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:500}.calendar-event-chip{min-width:0;font-size:9px;padding:2px 4px;margin-bottom:1px;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media (max-width:900px){.right-panel{display:none}.sidebar{width:var(--sidebar-col)}.sidebar.expanded-mobile{width:var(--sidebar-w);position:fixed;top:0;left:0;bottom:0;z-index:300}.sidebar .lbl{display:none}.sidebar.expanded-mobile .lbl{display:inline}.sidebar .logo-full{display:none}.sidebar.expanded-mobile .logo-full{display:block}.center-col{padding:14px 12px}}@media (max-width:600px){.sidebar{display:none!important}.mobile-nav{display:flex}.center-col{padding:12px 10px 76px}.top-actions{justify-content:flex-start;gap:6px}.calendar-header{align-items:flex-start;flex-direction:column;gap:8px}.calendar-title-row{width:100%;justify-content:center}.calendar-title{flex:1;text-align:center;font-size:14px}.month-picker{flex:1}.calendar-legend{width:100%;justify-content:center;gap:5px 8px}.calendar-legend-item{font-size:9px}.calendar-dow{padding:7px 0;font-size:10px}.calendar-cell{min-height:60px;padding:4px 3px}.calendar-date{width:18px;height:18px;font-size:10px;margin-bottom:2px}.calendar-event-chip{font-size:8px;padding:1px 2px;margin-bottom:1px}.calendar-cell .calendar-event-chip:nth-of-type(n+5){display:none}}@media (max-width:420px){.center-col{padding-left:6px;padding-right:6px}.top-actions>button,.top-actions>.tz-selector>.tz-select-button{padding-left:8px!important;padding-right:8px!important}.calendar-grid-wrap{border-radius:8px}.calendar-dow{padding:6px 0;font-size:9px}.calendar-cell{min-height:50px;padding:3px 2px}.calendar-date{width:17px;height:17px;font-size:9px}.calendar-event-chip{min-height:12px;height:auto;padding:1px 2px;font-size:7.5px;line-height:1.15}.calendar-cell .calendar-event-chip:nth-of-type(n+5){display:none}}@media (max-width:360px){.center-col{padding-left:4px;padding-right:4px}.calendar-legend{justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap;padding-bottom:2px}.calendar-cell{min-height:46px}.calendar-cell .calendar-event-chip:nth-of-type(n+4){height:5px;min-height:5px;padding:0;color:transparent!important;border-left:none!important}}@media (max-width:1280px){.right-panel{display:none}.center-col{padding:16px 14px}}@media (max-width:1024px){.sidebar{display:none!important}.mobile-nav{display:flex}.main-area{width:100%}.center-col{padding:14px 12px calc(82px + env(safe-area-inset-bottom));gap:12px}.top-actions{justify-content:flex-start;align-items:center;width:100%;gap:6px}.calendar-header{align-items:stretch;flex-direction:column;gap:8px}.calendar-title-row{width:100%;justify-content:center}.calendar-title{flex:1;text-align:center;font-size:14px}.month-picker{flex:1}.calendar-legend{width:100%;justify-content:center;gap:5px 9px}.calendar-cell{min-height:70px}}@media (max-width:700px){.center-col{padding:12px 10px calc(78px + env(safe-area-inset-bottom))}.top-actions{gap:5px}.top-actions>span{width:100%}.tz-selector{flex:1 1 150px;min-width:0}.tz-select-button{width:100%;justify-content:center}.tz-backdrop{background:#0000003d}.tz-select-menu{position:fixed;top:auto;left:12px;right:12px;bottom:calc(74px + env(safe-area-inset-bottom));min-width:0;padding:10px;border-radius:16px}.month-picker-menu{position:fixed;top:64px;left:12px;right:12px;width:auto;max-width:none;transform:none}.calendar-legend{justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap;padding:1px 0 3px}.calendar-legend-item{font-size:9px}.calendar-dow{padding:7px 0;font-size:10px}.calendar-cell{min-height:60px;padding:4px 3px}.calendar-date{width:18px;height:18px;font-size:10px;margin-bottom:2px}.calendar-event-chip{font-size:8px;padding:1px 2px;margin-bottom:1px}.calendar-cell .calendar-event-chip:nth-of-type(n+5){display:none}}@media (max-width:420px){.center-col{padding-left:6px;padding-right:6px}.top-actions>button,.top-actions>.tz-selector>.tz-select-button{padding-left:8px!important;padding-right:8px!important}.calendar-grid-wrap{border-radius:8px}.calendar-dow{padding:6px 0;font-size:9px}.calendar-cell{min-height:50px;padding:3px 2px}.calendar-date{width:17px;height:17px;font-size:9px}.calendar-event-chip{min-height:12px;height:auto;padding:1px 2px;font-size:7.5px;line-height:1.15}}.finance-page{display:flex;flex-direction:column;gap:12px;min-width:0}.finance-header{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.icon-nav{width:26px;height:26px;border-radius:7px;border:.5px solid var(--border-strong);background:var(--surface);color:var(--muted);display:flex;align-items:center;justify-content:center;flex-shrink:0}.finance-today-button{height:26px;padding:0 9px;border-radius:7px;border:.5px solid var(--border-strong);background:var(--surface);color:var(--muted);font-size:11px;font-weight:700;white-space:nowrap}.finance-tabs{display:flex;align-items:center;gap:4px;padding:3px;border:.5px solid var(--border);border-radius:10px;background:var(--surface);max-width:100%;overflow-x:auto}.finance-tabs button{display:flex;align-items:center;gap:4px;min-height:30px;padding:6px 10px;border:0;border-radius:8px;background:transparent;color:var(--muted);font-size:11px;font-weight:600;white-space:nowrap}.finance-tabs button.active{background:var(--accent);color:#fff}.finance-summary-grid,.finance-import-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.finance-summary-card{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px;border:.5px solid var(--border);border-radius:10px;background:var(--surface)}.finance-summary-card span{display:block;margin-bottom:4px;font-size:10px;color:var(--muted)}.finance-summary-card strong{display:block;min-width:0;font-size:15px;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.finance-summary-card i{font-size:20px;flex-shrink:0}.finance-summary-card.green i{color:#3d5e42}.finance-summary-card.blue i{color:#2563eb}.finance-summary-card.orange i{color:#d97706}.finance-summary-card.violet i{color:#7c3aed}.finance-calendar-wrap,.finance-panel{width:100%;min-width:0;border:.5px solid var(--border);border-radius:12px;background:var(--surface);overflow:hidden}.finance-dow-row,.finance-cells{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));min-width:0}.finance-dow-row{border-bottom:.5px solid var(--border-soft)}.finance-dow{min-width:0;padding:8px 0;text-align:center;font-size:11px;font-weight:600}.finance-cell{min-width:0;min-height:70px;padding:6px 4px;border:0;border-right:.5px solid var(--border-soft);border-bottom:.5px solid var(--border-soft);background:transparent;display:flex;flex-direction:column;align-items:flex-start;gap:5px;color:var(--text);overflow:hidden}.finance-cell.selected{background:var(--accent-soft);box-shadow:inset 0 0 0 1px var(--accent)}.finance-cell.today .finance-date{background:var(--accent);color:#fff}.finance-date{width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:600}.finance-day-amount{max-width:100%;padding:2px 5px;border-radius:5px;color:#fff;font-size:10px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.finance-panel{padding:14px}.finance-panel-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.finance-panel-head h3{display:flex;align-items:center;gap:5px;min-width:0;margin:0;color:var(--text);font-size:14px;font-weight:700}.finance-panel-head span{color:var(--muted);font-size:11px;white-space:nowrap}.finance-transaction-list,.finance-groups,.finance-bars{display:flex;flex-direction:column;gap:8px}.finance-transaction{position:relative;display:grid;grid-template-columns:3px 34px minmax(0,1fr) auto;align-items:center;gap:10px;min-width:0;padding:10px;border:.5px solid var(--border-soft);border-radius:9px;background:var(--surface-2)}.finance-transaction-bar{width:3px;align-self:stretch;border-radius:2px}.finance-transaction-icon{width:34px;height:34px;border-radius:9px;display:flex;align-items:center;justify-content:center;font-size:17px}.finance-transaction-main{min-width:0}.finance-merchant{min-width:0;margin-bottom:4px;color:var(--text);font-size:13px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.finance-meta-line{display:flex;align-items:center;gap:7px;flex-wrap:wrap;color:var(--muted);font-size:10px}.finance-transaction-side{display:flex;flex-direction:column;align-items:flex-end;gap:5px}.finance-transaction-side strong{color:var(--text);font-size:13px;white-space:nowrap}.finance-transaction-side select{max-width:110px;padding:4px 7px;border:.5px solid var(--border-strong);border-radius:7px;background:var(--surface);color:var(--muted);font-size:10px}.finance-empty{padding:26px 12px;color:var(--faint);font-size:13px;text-align:center}.finance-alert{display:flex;align-items:center;gap:7px;padding:10px 12px;border:.5px solid var(--danger-border);border-radius:9px;background:var(--danger-bg);color:var(--danger);font-size:12px}.finance-alert button{margin-left:auto;border:0;background:transparent;color:inherit;font-size:12px;text-decoration:underline}.finance-stats-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.finance-period-panel{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;border:.5px solid var(--border);border-radius:12px;background:var(--surface)}.finance-period-panel>div:first-child{min-width:180px}.finance-period-panel strong{display:block;color:var(--text);font-size:14px;margin-bottom:3px}.finance-period-panel span{color:var(--muted);font-size:11px}.finance-period-tabs{display:flex;flex:0 0 auto;gap:4px;padding:3px;border-radius:10px;background:var(--surface-2)}.finance-period-tabs button{width:46px;padding:6px 0;border:0;border-radius:8px;background:transparent;color:var(--muted);font-size:11px;font-weight:700;text-align:center}.finance-period-tabs button.active{background:var(--accent);color:#fff}.finance-chart-toggle{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:154px;gap:3px;padding:3px;border-radius:9px;background:var(--surface-2)}.finance-chart-toggle button{min-width:0;padding:5px 0;border:0;border-radius:7px;background:transparent;color:var(--muted);font-size:10px;font-weight:800;white-space:nowrap}.finance-chart-toggle button.active{background:var(--accent);color:#fff}.finance-bar-row{display:flex;flex-direction:column;gap:5px}.finance-bar-label{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:12px}.finance-bar-label span{min-width:0;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.finance-bar-label span i{margin-right:5px;font-size:13px;vertical-align:-1px}.finance-bar-label strong{color:var(--muted);font-size:11px;white-space:nowrap}.finance-bar-label.merchant,.finance-bar-label.card{display:grid;grid-template-columns:minmax(0,1fr) auto auto}.finance-bar-label.merchant em,.finance-bar-label.card em{padding:2px 6px;border-radius:999px;background:var(--surface-2);font-style:normal;font-size:10px;font-weight:700;white-space:nowrap}.finance-bar-label.flight{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center}.flight-stat-badge{padding:2px 6px;border-radius:999px;font-style:normal;font-size:10px;font-weight:800;white-space:nowrap}.finance-bar-track{height:7px;overflow:hidden;border-radius:999px;background:var(--surface-2)}.finance-bar-track div{height:100%;border-radius:999px;background:var(--accent)}.finance-scroll-list{max-height:420px;overflow-y:auto;padding-right:3px}.finance-card-scroll{max-height:620px}.finance-discount-scroll{max-height:510px}.finance-card-row{display:flex;flex-direction:column;gap:6px}.finance-card-controls{display:flex;justify-content:flex-end}.finance-card-controls label{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:10px;font-weight:700}.finance-card-controls select{padding:4px 7px;border:.5px solid var(--border-strong);border-radius:7px;background:var(--surface);color:var(--text);font-size:10px}.finance-donut-layout{display:grid;grid-template-columns:168px minmax(0,1fr);gap:14px;align-items:center;min-width:0}.finance-donut{width:168px;aspect-ratio:1;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:inset 0 0 0 1px var(--border-soft)}.finance-donut>div{width:88px;aspect-ratio:1;border-radius:50%;background:var(--surface);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;box-shadow:0 0 0 1px var(--border)}.finance-donut span{color:var(--muted);font-size:10px;font-weight:700}.finance-donut strong{max-width:76px;margin-top:3px;color:var(--text);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.finance-chart-legend{max-height:220px}.finance-chart-legend div{display:grid;grid-template-columns:9px minmax(0,1fr) auto auto;align-items:center;gap:7px;padding:6px 0;border-bottom:.5px solid var(--border-soft)}.finance-chart-legend div:last-child{border-bottom:0}.finance-chart-legend span{width:9px;height:9px;border-radius:999px}.finance-chart-legend strong{min-width:0;color:var(--text);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.finance-chart-legend em{color:var(--muted);font-size:10px;font-style:normal;font-weight:800;white-space:nowrap}.finance-chart-legend small{color:var(--muted);font-size:10px;white-space:nowrap}.finance-treemap{display:flex;flex-wrap:wrap;gap:6px;min-height:230px}.finance-treemap div{min-width:90px;min-height:72px;border-radius:9px;padding:9px;color:#fff;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}.finance-treemap strong{min-width:0;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-shadow:0 1px 1px rgba(0,0,0,.18)}.finance-treemap span{font-size:11px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.finance-treemap em{font-size:10px;font-style:normal;opacity:.86}.finance-stackbar{display:flex;width:100%;height:15px;overflow:hidden;border-radius:999px;background:var(--surface-2)}.finance-stackbar span{min-width:3px;height:100%}.finance-stack-legend{display:flex;align-items:center;gap:7px;flex-wrap:wrap;color:var(--muted);font-size:10px}.finance-stack-legend span{display:flex;align-items:center;gap:4px;white-space:nowrap}.finance-stack-legend i{width:7px;height:7px;border-radius:999px}.finance-card-trends{display:flex;flex-direction:column;gap:10px}.finance-card-trend{display:flex;flex-direction:column;gap:8px;padding-bottom:8px;border-bottom:.5px solid var(--border-soft)}.finance-card-trend:last-child{border-bottom:0;padding-bottom:0}.finance-trend-bars{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(24px,1fr);align-items:end;gap:5px;height:116px;padding:7px 6px 2px;border-radius:9px;background:var(--surface-2);overflow-x:auto}.finance-trend-bars div{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:4px;min-width:24px;height:100%}.finance-trend-bars span{width:100%;min-height:3px;border-radius:5px 5px 2px 2px}.finance-trend-bars small{color:var(--muted);font-size:9px;line-height:1;white-space:nowrap}.finance-discount-list{display:flex;flex-direction:column;gap:7px}.finance-discount-item{display:grid;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:9px;padding:9px 10px;border-radius:9px;background:var(--surface-2)}.finance-discount-item>span{width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:16px}.finance-discount-item strong{display:block;color:var(--text);font-size:12px;margin-bottom:2px}.finance-discount-item small{display:block;min-width:0;color:var(--muted);font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.finance-discount-item em{color:var(--text);font-size:12px;font-style:normal;font-weight:800;white-space:nowrap}.finance-search{display:flex;align-items:center;gap:6px;min-width:220px;padding:7px 9px;border:.5px solid var(--border-strong);border-radius:9px;background:var(--input-bg);color:var(--muted)}.finance-search input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--text);font-size:12px}.finance-day-group{overflow:hidden;border:.5px solid var(--border-soft);border-radius:10px;background:var(--surface)}.finance-day-group .finance-transaction{border:0;border-radius:0;border-top:.5px solid var(--border-soft)}.finance-day-group-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 11px;background:var(--surface-2);color:var(--text-soft);font-size:12px;font-weight:700}.finance-day-group-head strong{color:var(--text);white-space:nowrap}.finance-upload-box{width:100%;min-height:145px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;border:1.5px dashed var(--border-strong);border-radius:12px;background:var(--surface-2);color:var(--text);text-align:center}.finance-upload-box i{color:var(--accent);font-size:30px}.finance-upload-box strong{max-width:100%;padding:0 12px;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.finance-upload-box span{max-width:340px;color:var(--muted);font-size:11px;line-height:1.5}.finance-preview{display:flex;flex-direction:column;gap:10px;margin-top:12px}.finance-preview-meta{display:flex;flex-wrap:wrap;gap:6px}.finance-preview-meta span{padding:4px 8px;border-radius:999px;background:var(--surface-2);color:var(--muted);font-size:10px}.finance-preview-list{display:flex;flex-direction:column;gap:5px}.finance-preview-list div{display:grid;grid-template-columns:78px minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px 10px;border-radius:8px;background:var(--surface-2);font-size:11px}.finance-preview-list div.duplicate{opacity:.48}.finance-preview-list strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.finance-preview-list em{font-style:normal;color:var(--text);font-weight:700;white-space:nowrap}.finance-preview-list small{color:var(--muted);font-size:11px;text-align:center}.finance-save-button{display:flex;align-items:center;justify-content:center;gap:7px;width:100%;padding:11px;border:0;border-radius:9px;background:var(--accent);color:#fff;font-size:13px;font-weight:700}.finance-save-button:disabled{background:var(--accent-muted);cursor:not-allowed}.flightlog-page{display:flex;flex-direction:column;gap:12px;min-width:0}.flightlog-header{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.flightlog-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;min-width:0;max-width:100%}.flightlog-tabs{display:flex;align-items:center;gap:4px;padding:3px;border:.5px solid var(--border);border-radius:10px;background:var(--surface);max-width:100%;overflow-x:auto}.flightlog-tabs button{display:flex;align-items:center;gap:4px;min-height:30px;padding:6px 10px;border:0;border-radius:8px;background:transparent;color:var(--muted);font-size:11px;font-weight:600;white-space:nowrap}.flightlog-tabs button.active{background:var(--accent);color:#fff}.flightlog-add-button{display:flex;align-items:center;justify-content:center;gap:6px;min-height:36px;padding:0 12px;border:0;border-radius:10px;background:var(--accent);color:#fff;font-size:12px;font-weight:800;white-space:nowrap}.flightlog-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.flightlog-panels{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:12px}.flight-portal-grid{display:grid;grid-template-columns:1fr;gap:12px;align-items:start}.flight-portal-list-panel,.flight-airport-panel{min-width:0}.flight-airport-head-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;min-width:0}.flight-airport-head-actions span{min-width:0;overflow:hidden;text-overflow:ellipsis}.flight-airport-head-actions button{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:28px;padding:0 9px;border:.5px solid var(--border-strong);border-radius:8px;background:var(--surface-2);color:var(--text);font-size:10px;font-weight:900;white-space:nowrap}.flight-airport-head-actions button i{color:var(--accent);font-size:14px}.flight-airport-head-actions button:disabled{opacity:.55;cursor:not-allowed}.finance-panel.livewx-apk-panel{padding:0;overflow:hidden;border-color:#ffffff14;background:#02070b}.livewx-apk-shell{min-width:0;background:#02070b;color:#e7eef7}.livewx-apk-topbar{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:50px;padding:9px 12px;border-bottom:.5px solid rgba(255,255,255,.08);background:#050a11}.livewx-apk-title{display:flex;align-items:center;gap:10px;min-width:0}.livewx-apk-title>i{display:grid;flex:0 0 auto;place-items:center;width:30px;height:30px;border-radius:999px;background:#7db6ff1f;color:#7db6ff;font-size:17px}.livewx-apk-title div,.livewx-apk-title strong,.livewx-apk-title span{min-width:0}.livewx-apk-title strong,.livewx-apk-title span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.livewx-apk-title strong{color:#f8fafc;font-size:16px;font-weight:950}.livewx-apk-title span{margin-top:1px;color:#7f93a8;font-size:10px;font-weight:850}.livewx-apk-refresh{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:32px;padding:0 10px;border:0;border-radius:999px;background:#09111b;color:#c9d6e1;font-size:10px;font-weight:950;white-space:nowrap}.livewx-apk-refresh i{color:#7fffe0;font-size:15px}.livewx-apk-refresh:disabled{opacity:.52;cursor:not-allowed}.flight-portal-briefing-stack{display:flex;flex-direction:column;gap:12px;min-width:0}.flight-day-strip{display:flex;gap:6px;max-width:100%;overflow-x:auto;padding-bottom:2px}.flight-day-strip button{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;width:48px;min-height:44px;border:.5px solid var(--border);border-radius:10px;background:var(--surface-2);color:var(--muted)}.flight-day-strip button.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.flight-day-strip strong{font-size:14px;font-weight:900;line-height:1}.flight-day-strip span{font-size:9px;font-weight:900;line-height:1}.flight-portal-selected-date{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:10px;padding:9px 10px;border-radius:9px;background:var(--surface-2)}.flight-portal-selected-date strong{min-width:0;color:var(--text);font-size:13px;font-weight:900;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.flight-portal-selected-date span{color:var(--muted);font-size:11px;font-weight:800;white-space:nowrap}.flight-portal-flight-list{display:flex;flex-direction:column;gap:8px;margin-top:10px}.flight-portal-flight-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px;border:.5px solid var(--border-soft);border-radius:10px;background:var(--surface-2)}.flight-portal-flight-card.active{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.flight-portal-flight-main{min-width:0;padding:0;border:0;background:transparent;text-align:left;color:inherit}.flight-portal-flight-main strong,.flight-portal-flight-main span,.flight-portal-flight-main em{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.flight-portal-flight-main strong{color:var(--text);font-size:13px;font-weight:900}.flight-portal-flight-main span{margin-top:3px;color:var(--text-soft);font-size:12px;font-weight:800}.flight-portal-flight-main em{margin-top:3px;color:var(--muted);font-size:10px;font-style:normal;font-weight:700}.flight-portal-flight-main em b{display:inline-block;min-width:48px;margin-right:4px;color:var(--text-soft);font-size:9px;font-weight:900}.flight-portal-flight-main em.actual{color:#059669}.flight-portal-flight-side{display:flex;flex-direction:column;align-items:flex-end;gap:6px}.flight-status-pill{display:inline-flex;align-items:center;justify-content:center;min-height:22px;padding:0 8px;border-radius:999px;background:var(--surface);color:var(--muted);font-size:10px;font-weight:900;white-space:nowrap}.flight-status-pill.logged{color:#059669;background:#05966921}.flight-status-pill.missing-log{color:#d97706;background:#d9770624}.flight-status-pill.log-only{color:#2563eb;background:#2563eb21}.flight-portal-flight-side button{min-height:28px;padding:0 10px;border:.5px solid var(--border-strong);border-radius:8px;background:var(--surface);color:var(--text);font-size:11px;font-weight:900;white-space:nowrap}.flight-portal-flight-side button:disabled{opacity:.5;cursor:not-allowed}.enroute-briefing-panel{min-width:0}.enroute-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:10px}.enroute-summary-grid div{min-width:0;padding:9px;border-radius:9px;background:var(--surface-2)}.enroute-summary-grid span{display:block;margin-bottom:4px;color:var(--faint);font-size:9px;font-weight:950}.enroute-summary-grid strong{display:block;min-width:0;color:var(--text);font-size:12px;font-weight:950;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.enroute-summary-grid small{display:block;margin-top:3px;color:var(--muted);font-size:10px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sigwx-jepp-card{min-width:0;margin-bottom:10px;padding:10px;border:.5px solid var(--border-soft);border-radius:10px;background:color-mix(in srgb,var(--surface-2) 82%,#10202a);overflow:hidden}.sigwx-jepp-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:9px}.sigwx-jepp-head>div:first-child{min-width:0}.sigwx-jepp-head span,.sigwx-jepp-head small{display:block;color:var(--muted);font-size:10px;font-weight:850;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sigwx-jepp-head>div:first-child>span{margin-bottom:2px;color:var(--faint);font-size:9px;font-weight:950;text-transform:uppercase}.sigwx-jepp-head strong{display:block;min-width:0;color:var(--text);font-size:14px;font-weight:950;letter-spacing:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sigwx-mode-toggle{flex:0 0 auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px;padding:3px;border:.5px solid var(--border);border-radius:10px;background:var(--surface)}.sigwx-mode-toggle button{display:flex;align-items:center;justify-content:center;gap:5px;min-height:30px;padding:0 9px;border:0;border-radius:8px;background:transparent;color:var(--muted);font-size:10px;font-weight:950;white-space:nowrap}.sigwx-mode-toggle button.active{background:var(--accent);color:#fff}.sigwx-console-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,.32fr);gap:10px;align-items:stretch}.sigwx-console-map-column{min-width:0;display:flex;flex-direction:column;gap:8px}.sigwx-validity-strip,.sigmet-timeline-strip{display:flex;flex-wrap:nowrap;justify-content:flex-start;gap:6px;min-width:0;max-width:100%;overflow-x:auto;padding-bottom:2px;scrollbar-width:thin}.sigwx-validity-strip button{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:58px;min-height:40px;padding:5px 9px;border:.5px solid var(--border);border-radius:9px;background:var(--surface);color:var(--muted);cursor:pointer}.sigwx-validity-strip button.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.sigwx-validity-strip button.unavailable{opacity:.45;cursor:not-allowed}.sigwx-validity-strip strong{color:inherit;font-size:12px;line-height:1.1}.sigwx-validity-strip span{margin-top:2px;color:inherit;font-size:8px;font-weight:850;opacity:.82}.sigmet-timeline-strip button{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:66px;min-height:40px;padding:5px 9px;border:.5px solid var(--border);border-radius:9px;background:var(--surface);color:var(--muted);cursor:pointer}.sigmet-timeline-strip button.active{border-color:#f43f5e;background:color-mix(in srgb,#F43F5E 13%,var(--surface));color:#f43f5e}.sigmet-timeline-strip strong{color:inherit;font-size:12px;line-height:1.1}.sigmet-timeline-strip span{margin-top:2px;color:inherit;font-size:8px;font-weight:850;opacity:.82}.sigwx-selected-validity{flex:0 0 auto;display:flex;flex-direction:column;align-items:flex-end;justify-content:center;min-width:92px;min-height:40px;padding:6px 10px;border:.5px solid var(--accent);border-radius:9px;background:var(--accent-soft);color:var(--accent)}.sigwx-selected-validity strong{color:inherit;font-size:13px;line-height:1.1}.sigwx-selected-validity span{margin-top:2px;color:inherit;font-size:9px;font-weight:850;opacity:.9}.sigwx-layer-toolbar{display:flex;flex-wrap:wrap;gap:6px}.sigwx-layer-toolbar button{--layer-color:var(--accent);display:inline-flex;align-items:center;gap:5px;min-height:32px;padding:0 9px;border:.5px solid var(--border);border-radius:999px;background:var(--surface);color:var(--muted);font-size:10px;font-weight:950;cursor:pointer}.sigwx-layer-toolbar button i{color:var(--layer-color);font-size:14px}.sigwx-layer-toolbar button.active{border-color:color-mix(in srgb,var(--layer-color),var(--border) 35%);background:color-mix(in srgb,var(--layer-color) 12%,var(--surface));color:var(--text);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--layer-color) 18%,transparent)}.sigwx-layer-toolbar button em{color:var(--layer-color);font-size:9px;font-style:normal;font-weight:950}.sigmet-hazard-chip{--layer-color:#F43F5E;display:inline-flex;align-items:center;gap:5px;min-height:32px;padding:0 9px;border:.5px solid color-mix(in srgb,var(--layer-color) 34%,var(--border));border-radius:999px;background:color-mix(in srgb,var(--layer-color) 11%,var(--surface));color:var(--text);font-size:10px;font-weight:950}.sigmet-hazard-chip i,.sigmet-hazard-chip em{color:var(--layer-color)}.sigmet-hazard-chip em{font-style:normal}.sigmet-hazard-chip.muted{--layer-color:var(--muted);opacity:.78}.sigwx-jepp-map-shell{position:relative;min-width:0;border:.5px solid var(--border-soft);border-radius:10px;background:#071018;overflow:hidden}.sigwx-jepp-map-shell .enroute-route-map{border:0;border-radius:0;min-height:430px;max-height:580px;background:transparent}.sigwx-jepp-map-note{position:absolute;right:9px;bottom:9px;display:flex;flex-direction:column;gap:1px;max-width:min(360px,calc(100% - 18px));padding:7px 9px;border:.5px solid var(--border-soft);border-radius:9px;background:color-mix(in srgb,var(--surface) 90%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 6px 16px #00000014}.sigwx-jepp-map-note strong{color:var(--text);font-size:10px;font-weight:950}.sigwx-jepp-map-note span{color:var(--muted);font-size:9px;font-weight:800;line-height:1.35}.sigwx-jepp-foot{display:flex;flex-wrap:wrap;align-items:center;gap:5px;margin-top:8px}.sigwx-jepp-foot strong{margin-right:3px;color:var(--muted);font-size:9px;font-weight:950;text-transform:uppercase}.sigwx-jepp-foot span{--layer-color:var(--accent);display:inline-flex;align-items:center;gap:5px;min-height:22px;padding:0 8px;border-radius:999px;background:color-mix(in srgb,var(--layer-color) 12%,var(--surface));color:var(--text);font-size:9px;font-weight:900}.sigwx-jepp-foot span:before{content:"";width:6px;height:6px;border-radius:999px;background:var(--layer-color)}.sigwx-layer-guide{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,170px),1fr));gap:6px;margin-top:8px}.sigwx-layer-guide div{--layer-color:var(--accent);display:grid;grid-template-columns:auto minmax(0,1fr);gap:2px 6px;align-items:start;min-width:0;padding:8px;border:.5px solid color-mix(in srgb,var(--layer-color) 20%,var(--border));border-radius:9px;background:color-mix(in srgb,var(--layer-color) 8%,var(--surface))}.sigwx-layer-guide i{grid-row:1 / 3;margin-top:1px;color:var(--layer-color);font-size:14px}.sigwx-layer-guide strong{min-width:0;color:var(--text);font-size:10px;font-weight:950;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sigwx-layer-guide span{min-width:0;color:var(--muted);font-size:9px;font-weight:800;line-height:1.35}.enroute-route-card{min-width:0;margin-bottom:10px;padding:10px;border:.5px solid var(--border-soft);border-radius:10px;background:var(--surface-2)}.enroute-route-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.enroute-route-head strong{min-width:0;color:var(--text);font-size:12px;font-weight:950;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.enroute-route-head span{color:var(--muted);font-size:10px;font-weight:900;white-space:nowrap}.enroute-route-map{display:block;width:100%;min-height:155px;max-height:230px;border:.5px solid var(--border-soft);border-radius:10px;background:var(--input-bg);overflow:hidden}.enroute-route-line{vector-effect:non-scaling-stroke;filter:drop-shadow(0 2px 4px rgba(0,0,0,.28));stroke-linecap:round;stroke-linejoin:round;pointer-events:none}.sigwx-jepp-map-shell .career-route-ocean{fill:#071018}.sigwx-jepp-map-shell .career-route-land path{fill:#1b2a29;stroke:#30434a;stroke-width:1.05;opacity:.96}.sigwx-map-layers{pointer-events:none}.sigwx-feature{--layer-color:var(--accent);vector-effect:non-scaling-stroke;stroke:var(--layer-color);stroke-linecap:round;stroke-linejoin:round}.sigwx-feature.area{fill:color-mix(in srgb,var(--layer-color) 24%,transparent);fill-opacity:.72;stroke-width:2;stroke-opacity:.95}.sigwx-feature.line{fill:none;stroke-width:3.2;stroke-opacity:.96}.sigwx-cb.area{fill:color-mix(in srgb,#DC2626 18%,transparent);stroke-width:2.7;stroke-dasharray:2 6}.sigwx-cb.line{stroke-width:3.4;stroke-dasharray:2 7;stroke-linecap:round}.sigwx-turbulence.area{fill:url(#sigwx-pattern-turbulence);stroke-width:2.3;stroke-dasharray:9 3}.sigwx-turbulence.line{stroke-width:3.4;stroke-dasharray:10 4}.sigwx-icing.area{fill:url(#sigwx-pattern-icing);stroke-width:2.1;stroke-dasharray:2 5}.sigwx-icing.line{stroke-width:3;stroke-dasharray:1 7}.sigwx-jet.line{stroke-width:4.3;marker-end:url(#sigwx-jet-arrow)}.sigwx-tropopause.line{stroke-width:2.4;stroke-dasharray:13 5 2 5}.sigwx-feature-point circle{fill:var(--layer-color);fill-opacity:.86;stroke:var(--surface);stroke-width:2;vector-effect:non-scaling-stroke}.sigwx-feature-point text{fill:var(--text);stroke:var(--surface);stroke-width:3px;paint-order:stroke;font-size:11px;font-weight:950;letter-spacing:0}.sigwx-altitude-label{fill:#111827;stroke:#fffffff0;stroke-width:5.6px;paint-order:stroke;filter:drop-shadow(0 1px 2px rgba(0,0,0,.5));font-size:16px;font-weight:950;letter-spacing:0;text-anchor:middle;dominant-baseline:middle}.sigwx-label-cb{fill:#b91c1c}.sigwx-label-turbulence{fill:#c2410c}.sigwx-label-icing{fill:#0369a1}.sigwx-label-jet{fill:#1d4ed8}.sigwx-label-tropopause{fill:#7e22ce}.sigwx-map-loading rect{fill:color-mix(in srgb,var(--surface) 88%,transparent);stroke:var(--border-soft);stroke-width:1}.sigwx-map-loading text{fill:var(--muted);font-size:12px;font-weight:900;letter-spacing:0}.enroute-route-points circle{fill:var(--surface);stroke:var(--accent);stroke-width:2.3;vector-effect:non-scaling-stroke}.enroute-route-points text{fill:var(--text);stroke:var(--surface);stroke-width:3px;paint-order:stroke;font-size:18px;font-weight:950;letter-spacing:0;pointer-events:none}.sigwx-jepp-map-shell .enroute-route-points circle{fill:#071018;stroke:#dde9b7}.sigwx-jepp-map-shell .enroute-route-points text{fill:#f8fafc;stroke:#071018}.enroute-aircraft-marker circle{fill:#14b8a638;stroke:#67e8f9;stroke-width:3;vector-effect:non-scaling-stroke;filter:drop-shadow(0 0 8px rgba(103,232,249,.44))}.enroute-aircraft-marker text{fill:#a7f3d0;stroke:#071018;stroke-width:3px;paint-order:stroke;font-size:21px;font-weight:950;text-anchor:middle;pointer-events:none}.sigmet-map-layers{pointer-events:auto}.sigmet-feature{--layer-color:#F43F5E;vector-effect:non-scaling-stroke;stroke:var(--layer-color);stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;cursor:pointer;outline:none}.sigmet-feature.area{fill:color-mix(in srgb,var(--layer-color) 24%,transparent);fill-opacity:.56}.sigmet-feature.line{fill:none;stroke-width:3.2}.sigmet-feature.selected{stroke-width:3.6;fill-opacity:.72;filter:drop-shadow(0 0 7px color-mix(in srgb,var(--layer-color) 52%,transparent))}.sigmet-feature:focus-visible,.sigmet-point:focus-visible,.sigmet-altitude-label:focus-visible{outline:2px solid #67E8F9;outline-offset:3px}.sigmet-point circle{fill:var(--layer-color);stroke:#071018;stroke-width:2;vector-effect:non-scaling-stroke;cursor:pointer}.sigmet-point text{fill:#f8fafc;stroke:#071018;stroke-width:3px;paint-order:stroke;font-size:12px;font-weight:950;pointer-events:none}.sigmet-altitude-label{fill:#f8fafc;stroke:#071018;stroke-width:5px;paint-order:stroke;font-size:15px;font-weight:950;text-anchor:middle;dominant-baseline:middle;cursor:pointer}.sigmet-altitude-label.selected{fill:#fff}.sigmet-detail-panel{min-width:0;display:flex;flex-direction:column;gap:9px;padding:10px;border:.5px solid color-mix(in srgb,var(--layer-color) 34%,var(--border-soft));border-radius:10px;background:linear-gradient(180deg,color-mix(in srgb,var(--layer-color) 9%,var(--surface)),var(--surface-2));box-shadow:inset 3px 0 0 var(--layer-color)}.sigmet-detail-head span,.sigmet-detail-head small{display:block;color:var(--muted);font-size:10px;font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sigmet-detail-head span{color:var(--faint);font-size:9px;text-transform:uppercase}.sigmet-detail-head strong{display:block;margin:3px 0;color:var(--text);font-size:15px;font-weight:950;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sigmet-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.sigmet-detail-grid div{min-width:0;padding:8px;border-radius:8px;background:var(--surface)}.sigmet-detail-grid span{display:block;margin-bottom:4px;color:var(--faint);font-size:8px;font-weight:950;text-transform:uppercase}.sigmet-detail-grid strong{display:flex;align-items:center;gap:4px;min-width:0;color:var(--text);font-size:11px;font-weight:950;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sigmet-detail-grid i{color:var(--layer-color)}.sigmet-detail-meta{display:flex;flex-wrap:wrap;gap:5px}.sigmet-detail-meta span{display:inline-flex;min-height:23px;align-items:center;padding:0 8px;border-radius:999px;background:var(--surface);color:var(--muted);font-size:9px;font-weight:900}.sigmet-raw-text{min-height:160px;max-height:260px;overflow:auto;margin:0;padding:10px;border:.5px solid var(--border-soft);border-radius:9px;background:#070b10;color:#d6e4f0;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:10px;line-height:1.45;white-space:pre-wrap;word-break:break-word}.sigmet-detail-empty{flex:1 1 auto;min-height:190px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:14px;border:.5px dashed var(--border-strong);border-radius:9px;color:var(--muted);text-align:center}.sigmet-detail-empty i{color:var(--layer-color);font-size:24px}.sigmet-detail-empty span{max-width:220px;font-size:11px;font-weight:850;line-height:1.45}.sigwx-apk-panel{padding:0;overflow:hidden;border-color:#ffffff14;background:#02070b}.finance-panel.sigwx-apk-panel{padding:0}.sigwx-apk-shell{position:relative;min-width:0;overflow:hidden;background:#02070b;color:#e7eef7}.sigwx-apk-topbar{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;min-height:48px;padding:8px 10px 8px 12px;background:#050a11;border-bottom:.5px solid rgba(255,255,255,.08)}.sigwx-apk-title{display:flex;align-items:center;gap:10px;min-width:0}.sigwx-apk-title>i{flex:0 0 auto;color:#b7c7d7;font-size:20px}.sigwx-apk-title div{min-width:0}.sigwx-apk-title strong,.sigwx-apk-title span{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sigwx-apk-title strong{color:#f8fafc;font-size:16px;font-weight:950}.sigwx-apk-title span{margin-top:1px;color:#7f93a8;font-size:10px;font-weight:800}.sigwx-apk-mode{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px;padding:3px;border:0;background:#09111b;border-radius:999px}.sigwx-apk-mode button{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:30px;min-width:62px;border:0;border-radius:999px;background:transparent;color:#7f93a8;font-size:11px;font-weight:950;letter-spacing:0}.sigwx-apk-mode button i{font-size:13px}.sigwx-apk-mode button.active{background:#102033;color:#7db6ff;box-shadow:inset 0 0 0 1px #7db6ff2e}.sigwx-apk-mode button:nth-child(2).active{color:#ff3b62;box-shadow:inset 0 0 0 1px #ff3b6238}.sigwx-apk-refresh{display:grid;place-items:center;width:32px;height:32px;border:0;border-radius:999px;background:#09111b;color:#a7b9c9;font-size:17px}.sigwx-apk-map{position:relative;min-width:0;overflow:hidden;border:0;border-radius:0;background:#02070b}.sigwx-apk-map .enroute-route-map{min-height:min(680px,calc(100dvh - 170px));max-height:none;background:#02070b}.sigwx-apk-map .career-route-ocean{fill:#06101a}.sigwx-apk-map .career-route-land path{fill:#15252c;stroke:#304050;stroke-width:.78;opacity:.96}.sigwx-apk-map .enroute-route-line{filter:drop-shadow(0 0 7px rgba(120,190,255,.25))}.sigwx-apk-map .enroute-route-points circle{fill:#06101a;stroke:#b6f0b1;stroke-width:2.4}.sigwx-apk-map .enroute-route-points text{fill:#f8fafc;stroke:#06101a;font-size:19px}.sigwx-apk-map .enroute-aircraft-marker circle{fill:#14b8a633;stroke:#7fffe0;stroke-width:3;filter:drop-shadow(0 0 12px rgba(127,255,224,.48))}.sigwx-apk-route-badge{position:absolute;left:14px;top:14px;display:flex;flex-direction:column;gap:2px;max-width:min(420px,calc(100% - 28px));padding:9px 11px;border:.5px solid rgba(255,255,255,.08);border-radius:10px;background:#02070b9e;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);pointer-events:none}.sigwx-apk-route-badge strong{color:#f8fafc;font-size:13px;font-weight:950}.sigwx-apk-route-badge span{color:#9db2c7;font-size:10px;font-weight:850}.sigwx-apk-status{position:absolute;right:12px;top:15px;max-width:min(330px,44%);padding:7px 9px;border-radius:999px;background:#02070b94;color:#9db2c7;font-size:10px;font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;pointer-events:none;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.sigwx-apk-time-card{position:absolute;left:50%;bottom:74px;z-index:4;display:grid;grid-template-columns:30px minmax(150px,auto) 30px;align-items:center;gap:7px;padding:5px 7px;border-radius:12px;background:#02070bb8;color:#f8fafc;transform:translate(-50%);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.sigwx-apk-time-card button{display:grid;place-items:center;width:30px;height:30px;border:0;border-radius:9px;background:#ffffff0f;color:#94a9bd}.sigwx-apk-time-card strong{color:#f8fafc;font-size:14px;font-weight:950;text-align:center;white-space:nowrap}.sigwx-apk-bottom{position:absolute;left:0;right:0;bottom:0;z-index:3;display:flex;flex-direction:column;gap:8px;padding:10px 14px 12px;background:linear-gradient(180deg,transparent,rgba(2,7,11,.72) 28%,rgba(2,7,11,.92))}.sigwx-apk-timeline{position:relative;display:flex;align-items:flex-end;gap:0;min-width:0;overflow-x:auto;padding:0 2px 2px;scrollbar-width:none}.sigwx-apk-timeline::-webkit-scrollbar{display:none}.sigwx-apk-timeline:before{content:"";position:absolute;left:10px;right:10px;top:11px;height:1px;background:#7db6ff47}.sigwx-apk-timeline.sigmet:before{background:#ff3b624d}.sigwx-apk-timeline button{position:relative;flex:0 0 54px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:5px;min-height:30px;border:0;background:transparent;color:#687b90;font-size:10px;font-weight:900}.sigwx-apk-timeline button:before{content:"";width:6px;height:6px;border-radius:999px;background:#50657b;box-shadow:0 0 0 2px #02070b}.sigwx-apk-timeline button.active{color:#f8fafc}.sigwx-apk-timeline button.active:before{width:9px;height:9px;background:#f8b928;box-shadow:0 0 0 3px #f8b92829,0 0 10px #f8b92880}.sigwx-apk-timeline.sigmet button.active:before{background:#ff3b62;box-shadow:0 0 0 3px #ff3b6229,0 0 10px #ff3b6280}.sigwx-apk-legend{display:flex;flex-wrap:nowrap;align-items:center;gap:8px;min-width:0;overflow-x:auto;padding-bottom:1px;scrollbar-width:none}.sigwx-apk-legend::-webkit-scrollbar{display:none}.sigwx-apk-legend button,.sigwx-apk-legend .sigmet-hazard-chip{--layer-color:#7DB6FF;flex:0 0 auto;display:inline-flex;align-items:center;gap:5px;min-height:30px;padding:0 9px 0 5px;border:.5px solid color-mix(in srgb,var(--layer-color) 24%,rgba(255,255,255,.08));border-radius:999px;background:color-mix(in srgb,var(--layer-color) 10%,rgba(2,7,11,.74));color:#c9d6e1;font-size:9px;font-weight:900;opacity:.72}.sigwx-apk-legend button.active{opacity:1;background:color-mix(in srgb,var(--layer-color) 18%,rgba(2,7,11,.76));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--layer-color) 18%,transparent)}.sigwx-apk-legend button i{display:grid;place-items:center;width:22px;height:22px;border-radius:999px;background:color-mix(in srgb,var(--layer-color) 18%,transparent);color:var(--layer-color);font-size:13px;box-shadow:0 0 8px color-mix(in srgb,var(--layer-color) 28%,transparent)}.sigwx-apk-legend .sigmet-hazard-chip i{width:9px;height:9px;border-radius:2px;background:var(--layer-color);box-shadow:0 0 8px color-mix(in srgb,var(--layer-color) 38%,transparent)}.sigwx-apk-legend .sigmet-hazard-chip em{color:#8fa4b8;font-size:8px;font-style:normal}.sigwx-apk-legend .sigmet-hazard-chip.muted{--layer-color:#6B7280}.sigmet-fl-ruler{position:absolute;left:12px;top:70px;bottom:104px;z-index:3;display:flex;flex-direction:column;align-items:center;justify-content:space-between;min-height:230px;width:42px;padding:10px 5px;border-radius:12px;background:#02070b8a;color:#62778b;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);pointer-events:none}.sigmet-fl-ruler strong,.sigmet-fl-ruler em{color:#cad7e4;font-size:10px;font-style:normal;font-weight:950}.sigmet-fl-ruler span{color:#70859a;font-size:10px;font-weight:900;line-height:1}.sigwx-apk-map .sigmet-feature.area{fill:color-mix(in srgb,var(--layer-color) 28%,transparent);fill-opacity:.44;stroke-width:2.6}.sigwx-apk-map .sigmet-feature.selected{stroke-width:3.8;fill-opacity:.62}.sigwx-apk-map .sigmet-altitude-label{font-size:12px;opacity:.9}.sigwx-apk-map .sigmet-detail-panel{position:absolute;left:0;right:0;bottom:0;z-index:5;max-height:min(45%,320px);overflow:auto;padding:14px 18px 16px;border:0;border-top:.5px solid rgba(255,255,255,.09);border-radius:18px 18px 0 0;background:linear-gradient(180deg,#0a121df5,#040910fa);box-shadow:0 -18px 40px #0000008c;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.sigwx-apk-map .sigmet-detail-head span{color:var(--layer-color);font-size:12px;text-transform:uppercase}.sigwx-apk-map .sigmet-detail-head strong{color:#f8fafc;font-size:17px}.sigwx-apk-map .sigmet-detail-head small,.sigwx-apk-map .sigmet-detail-grid span,.sigwx-apk-map .sigmet-detail-meta span{color:#8ca1b5}.sigwx-apk-map .sigmet-detail-grid div{background:#ffffff0d}.sigwx-apk-map .sigmet-detail-grid strong{color:#f8fafc}.sigwx-apk-map .sigmet-raw-text{max-height:130px;border-color:#ffffff12;background:#00000057;color:#d6e4f0}.sigwx-apk-map .sigmet-detail-empty{min-height:110px;border-color:#ffffff14;color:#9db2c7}.enroute-route-fallback{display:flex;align-items:center;justify-content:center;gap:7px;min-height:115px;border:.5px dashed var(--border-strong);border-radius:10px;color:var(--muted);font-size:11px;font-weight:800;text-align:center}.enroute-route-fallback i{color:var(--accent);font-size:20px}.airport-pair-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:10px}.livewx-airport-grid{padding:12px}.airport-briefing-card{min-width:0;overflow:hidden;padding:12px;border:.5px solid var(--border-soft);border-radius:10px;background:var(--surface-2);container-type:inline-size}.airport-briefing-card.departure{box-shadow:inset 3px 0 #2563ebbf}.airport-briefing-card.arrival{box-shadow:inset 3px 0 #059669bf}.livewx-apk-panel .airport-briefing-card{border-color:#ffffff14;border-radius:14px;background:linear-gradient(180deg,#0e1823f5,#050b12fa)}.livewx-apk-panel .airport-briefing-card.departure{box-shadow:inset 3px 0 #7db6ff}.livewx-apk-panel .airport-briefing-card.arrival{box-shadow:inset 3px 0 #7fffe0}@container (max-width:480px){.livewx-current-console{grid-template-columns:1fr}.livewx-current-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.livewx-daily-strip{grid-column:1}}.airport-card-head{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:8px}.airport-card-head>div{min-width:0}.airport-card-head span{display:flex;align-items:center;gap:5px;color:var(--muted);font-size:10px;font-weight:900}.airport-card-head strong{display:block;margin-top:4px;color:var(--text);font-size:26px;font-weight:950;line-height:1;letter-spacing:0}.airport-card-head small{display:block;margin-top:3px;color:var(--muted);font-size:10px;font-weight:900;letter-spacing:0}.airport-card-head em{flex-shrink:0;padding:4px 7px;border-radius:999px;background:var(--surface);font-size:10px;font-style:normal;font-weight:900}.livewx-apk-panel .airport-card-head span{color:#9db2c7}.livewx-apk-panel .airport-card-head strong{color:#f8fafc;font-size:30px}.livewx-apk-panel .airport-card-head small{color:#7f93a8}.airport-card-badges{display:flex;flex-direction:column;align-items:flex-end;gap:5px;flex:0 0 auto}.livewx-apk-panel .airport-card-head em{background:#09111b;color:#9db2c7}.livewx-status{display:inline-flex;align-items:center;justify-content:center;min-height:20px;padding:0 7px;border-radius:999px;background:#6b72802e;color:#9db2c7;font-size:9px;font-weight:950;line-height:1}.livewx-status.live{background:#22c55e24;color:#86efac}.livewx-status.stale{background:#f8b92821;color:#f8b928}.livewx-status.error{background:#ff3b6224;color:#ff8aa0}.airport-name-line{margin:7px 0 0;color:var(--muted);font-size:11px;font-weight:800;line-height:1.35}.livewx-apk-panel .airport-name-line{color:#9db2c7}.livewx-report-strip{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:8px}.livewx-report-strip span{display:inline-flex;align-items:center;gap:5px;min-height:22px;padding:0 7px;border-radius:999px;background:#ffffff0d;color:#8fa4b8;font-size:9px;font-weight:900;white-space:nowrap}.livewx-report-strip i{color:#7db6ff;font-size:12px}.livewx-current-console{display:grid;grid-template-columns:minmax(142px,.72fr) minmax(0,1.55fr);gap:8px;margin-top:10px;padding:9px;border:.5px solid rgba(255,255,255,.08);border-radius:10px;background:#07111b;color:#f8fafc}.livewx-current-console.unavailable{display:flex;align-items:center;gap:7px;min-height:46px;color:#7f93a8;font-size:10px;font-weight:850}.livewx-current-main{display:flex;align-items:center;gap:10px;min-width:0}.livewx-current-main>i{flex:0 0 auto;color:#7db6ff;font-size:30px}.livewx-current-console.tone-clear .livewx-current-main>i{color:#f8b928}.livewx-current-console.tone-storm .livewx-current-main>i{color:#ff6b85}.livewx-current-console.tone-rain .livewx-current-main>i{color:#55c8ff}.livewx-current-main div{min-width:0}.livewx-current-main span{display:block;color:#687b90;font-size:8px;font-weight:950}.livewx-current-main strong{display:inline-block;margin-top:3px;color:#f8fafc;font-size:26px;font-weight:950;line-height:1;font-variant-numeric:tabular-nums}.livewx-current-main em{display:block;margin-top:3px;color:#a8b8c8;font-size:9px;font-style:normal;font-weight:850}.livewx-current-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;min-width:0}.livewx-current-metrics div{min-width:0;padding:7px;border-radius:7px;background:#ffffff0e}.livewx-current-metrics i{color:#7db6ff;font-size:13px}.livewx-current-metrics span{display:block;margin-top:5px;color:#687b90;font-size:8px;font-weight:900}.livewx-current-metrics strong{display:block;margin-top:2px;overflow:hidden;color:#edf6ff;font-size:10px;font-weight:950;text-overflow:ellipsis;white-space:nowrap;font-variant-numeric:tabular-nums}.livewx-daily-strip{grid-column:1 / -1;display:flex;gap:5px;min-width:0;overflow-x:auto;padding:2px 0 1px;scrollbar-width:thin;scrollbar-color:#32485d transparent}.livewx-daily-strip>div{position:relative;flex:0 0 62px;min-height:72px;padding:7px 5px;border:.5px solid rgba(255,255,255,.06);border-radius:7px;background:#ffffff09;text-align:center}.livewx-daily-strip>div.flight-day{border-color:#f8b928;background:#f8b9281a}.livewx-daily-strip>div.flight-day:before{content:"";position:absolute;top:8px;bottom:8px;left:0;width:2px;background:#f8b928}.livewx-daily-strip span{display:block;color:#7f93a8;font-size:8px;font-weight:900}.livewx-daily-strip>div>i{display:block;margin:5px 0;color:#7db6ff;font-size:16px}.livewx-daily-strip strong{display:block;color:#f8fafc;font-size:9px;font-weight:950;white-space:nowrap}.livewx-daily-strip strong em{color:#7f93a8;font-style:normal}.livewx-daily-strip small{display:flex;align-items:center;justify-content:center;gap:2px;margin-top:4px;color:#8fa4b8;font-size:8px;font-weight:850}.airport-hazard-strip{display:flex;gap:5px;min-width:0;overflow-x:auto;margin-top:9px;scrollbar-width:none}.airport-hazard-strip::-webkit-scrollbar{display:none}.airport-hazard-strip>span{flex:0 0 auto;display:inline-flex;align-items:center;gap:5px;min-height:27px;padding:0 8px;border:.5px solid rgba(125,182,255,.2);border-radius:7px;background:#7db6ff14;color:#9dd8ff}.airport-hazard-strip>span.tone-danger{border-color:#ff3b6252;background:#ff3b621c;color:#ff8aa0}.airport-hazard-strip>span.tone-warning{border-color:#f8b9284d;background:#f8b9281a;color:#ffd66c}.airport-hazard-strip>span.tone-snow{border-color:#7dffe040;background:#7dffe014;color:#bffff0}.airport-hazard-strip>span.clear{border-color:#86efac2e;background:#22c55e12;color:#86efac}.airport-hazard-strip i{font-size:13px}.airport-hazard-strip strong{font-size:9px;font-weight:950}.airport-hazard-strip em{color:currentColor;font-size:8px;font-style:normal;font-weight:800;opacity:.72}.airport-weather-board{display:grid;grid-template-columns:repeat(auto-fit,minmax(74px,1fr));gap:6px;margin-top:10px}.airport-weather-board div{min-width:0;padding:8px 7px;border:.5px solid var(--border-soft);border-radius:9px;background:var(--surface)}.airport-weather-board span{display:block;margin-bottom:4px;color:var(--faint);font-size:9px;font-weight:950;letter-spacing:0}.airport-weather-board strong{display:block;color:var(--text);font-size:11px;font-weight:900;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.livewx-apk-panel .airport-weather-board div{border-color:#ffffff12;background:#ffffff0e}.livewx-apk-panel .airport-weather-board span{color:#687b90}.livewx-apk-panel .airport-weather-board strong{color:#f8fafc;font-size:12px}.airport-runway-picker{display:flex;flex-wrap:wrap;gap:5px;margin-top:10px}.airport-runway-picker button{min-height:26px;padding:0 9px;border:.5px solid var(--border);border-radius:999px;background:var(--surface);color:var(--muted);font-size:10px;font-weight:900}.airport-runway-picker button.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.livewx-apk-panel .airport-runway-picker button{border-color:#ffffff12;background:#09111b;color:#8fa4b8}.livewx-apk-panel .airport-runway-picker button.active{border-color:#7fffe0;background:#7fffe01f;color:#cffff7}.airport-runway-recommendation{display:flex;align-items:center;gap:7px;min-height:28px;margin-top:10px;color:#8fa4b8}.airport-runway-recommendation span{min-width:0;overflow:hidden;font-size:8px;font-weight:950;text-overflow:ellipsis;white-space:nowrap}.airport-runway-recommendation strong{margin-left:auto;color:#cffff7;font-size:12px;font-weight:950}.airport-runway-recommendation em{padding:3px 5px;border-radius:4px;background:#7fffe01a;color:#7fffe0;font-size:7px;font-style:normal;font-weight:950}@media (pointer:coarse){.sigwx-apk-mode button,.sigwx-apk-refresh,.sigwx-apk-time-card button,.sigwx-apk-timeline button,.sigwx-apk-legend button,.airport-runway-picker button,.airport-collapse-head{min-height:44px}.airport-runway-picker button{min-width:44px}}.airport-runway-visual{position:relative;height:150px;margin:12px 0;overflow:hidden;border:.5px solid var(--border);border-radius:10px;background:linear-gradient(180deg,var(--input-bg),var(--surface));color:var(--accent)}.livewx-apk-panel .airport-runway-visual{border-color:#ffffff14;background:linear-gradient(180deg,#07111b,#02070b)}.airport-runway-visual svg{display:block;width:100%;height:100%;color:var(--accent)}.airport-runway-visual.empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;color:var(--muted)}.airport-runway-visual.empty i{position:static;width:auto;height:auto;background:none;font-size:24px}.airport-runway-visual.empty span{font-size:11px;font-weight:900}.airport-runway-visual .runway-line{position:absolute;left:50%;top:50%;display:block;width:16px;height:112px;border-radius:999px;background:linear-gradient(180deg,#94a3b833,#94a3b8bf,#94a3b833);transform-origin:center}.airport-runway-visual .runway-line.primary{transform:translate(-50%,-50%) rotate(28deg)}.airport-runway-visual .runway-line.secondary{width:10px;opacity:.5;transform:translate(-50%,-50%) rotate(-38deg)}.airport-runway-visual .runway-line:after{content:"";position:absolute;left:50%;top:8px;bottom:8px;width:1px;border-left:1px dashed rgba(255,255,255,.68);transform:translate(-50%)}.airport-runway-visual .runway-compass{position:absolute;top:8px;right:8px;display:grid;place-items:center;width:24px;height:24px;border:.5px solid var(--border);border-radius:999px;background:var(--surface);color:var(--muted);font-size:10px;font-weight:900}.airport-runway-visual i{position:absolute;left:12px;bottom:12px;display:grid;place-items:center;width:32px;height:32px;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-size:18px}.runway-map-field{fill:#94a3b812;stroke:var(--border);stroke-width:.5}.livewx-apk-panel .runway-map-field{fill:#7db6ff09;stroke:#ffffff14}.runway-map-line{stroke:#94a3b8bf;stroke-width:3.5;stroke-linecap:round}.livewx-apk-panel .runway-map-line{stroke:#526274}g.active .runway-map-line{stroke:var(--accent);stroke-width:5.5}.livewx-apk-panel g.active .runway-map-line{stroke:#7fffe0}.runway-map-label{fill:var(--text);font-size:5.5px;font-weight:900;text-anchor:middle;paint-order:stroke;stroke:var(--surface);stroke-width:2px}.livewx-apk-panel .runway-map-label{fill:#ddebfa;stroke:#02070b}g.active .runway-map-label{fill:var(--accent)}.livewx-apk-panel g.active .runway-map-label{fill:#bfffef}.runway-map-wind{stroke:var(--danger);stroke-width:2.2;stroke-linecap:round;stroke-dasharray:3 2}.runway-map-north{fill:var(--muted);font-size:8px;font-weight:900;text-anchor:middle}.runway-map-wind-label{position:absolute;left:10px;bottom:9px;padding:4px 7px;border-radius:999px;background:var(--surface);color:var(--text);font-size:10px;font-weight:900}.runway-map-wind-vector{position:absolute;right:14px;bottom:10px;display:block;width:55px;height:55px;padding:0;border:0;background:transparent;color:#52ff1a;overflow:visible;pointer-events:none}.runway-map-wind-vector svg{display:block;width:100%;height:100%;overflow:visible;color:inherit;filter:drop-shadow(0 1px 2px rgba(0,0,0,.55))}.runway-map-wind-axis{stroke:currentColor;stroke-width:2.4;stroke-linecap:round;fill:none}.runway-map-wind-head,.runway-map-wind-vector circle{fill:currentColor}.runway-map-wind-vector text{fill:currentColor;font-size:12.5px;font-weight:950;paint-order:stroke;stroke:#0f172ac7;stroke-width:1.6px}.runway-map-info-stack{position:absolute;top:12px;left:12px;display:grid;gap:2px;min-width:80px;padding:7px 9px;border-radius:10px;background:#0000002e;color:var(--text);pointer-events:none}.livewx-apk-panel .runway-map-info-stack{background:#02070b94;color:#f8fafc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.runway-map-info-stack div{display:grid;grid-template-columns:26px minmax(0,1fr);align-items:center;gap:6px;min-width:0}.runway-map-info-stack span{color:var(--faint);font-size:8px;font-weight:950;line-height:1.1}.runway-map-info-stack strong{min-width:0;color:var(--text);font-size:9px;font-weight:950;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.airport-runway-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:8px}.airport-runway-summary div{min-width:0;padding:8px;border-radius:8px;background:var(--surface)}.airport-runway-summary span{display:block;margin-bottom:3px;color:var(--faint);font-size:9px;font-weight:900}.airport-runway-summary strong{display:block;color:var(--text);font-size:12px;font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.airport-time-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.airport-time-grid div{min-width:0;padding:8px;border-radius:8px;background:var(--surface)}.airport-time-grid span{display:block;margin-bottom:3px;color:var(--faint);font-size:9px;font-weight:900}.airport-time-grid strong{display:block;color:var(--text);font-size:12px;font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.livewx-apk-panel .airport-time-grid div,.livewx-apk-panel .airport-collapse-head,.livewx-apk-panel .airport-notam-panel{border-color:#ffffff12;background:#ffffff0e}.livewx-apk-panel .airport-time-grid span,.livewx-apk-panel .airport-collapse-head span,.livewx-apk-panel .airport-notam-head span{color:#8fa4b8}.livewx-apk-panel .airport-time-grid strong,.livewx-apk-panel .airport-collapse-head strong,.livewx-apk-panel .airport-notam-head strong{color:#f8fafc}.airport-weather-chips{display:flex;flex-wrap:wrap;gap:5px;margin-top:9px}.airport-weather-chips span{padding:4px 7px;border-radius:999px;background:var(--surface);color:var(--muted);font-size:10px;font-weight:800}.airport-raw-metar{margin:8px 0 0;color:var(--muted);font-size:10px;line-height:1.45;word-break:break-word}.airport-collapse-head{width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 9px;border:0;border-radius:8px;background:var(--surface);color:var(--text);text-align:left}.airport-collapse-head strong{min-width:0;font-size:11px;font-weight:950;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.airport-collapse-head span{display:flex;align-items:center;gap:5px;color:var(--muted);font-size:10px;font-weight:900;white-space:nowrap}.airport-raw-weather{display:flex;flex-direction:column;gap:6px;margin-top:8px}.airport-raw-weather-body{display:flex;flex-direction:column;gap:6px;max-height:118px;overflow-y:auto;padding-right:2px}.airport-raw-weather-body p{margin:0;padding:8px;border-radius:8px;background:var(--surface);color:var(--muted);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:10px;line-height:1.45;word-break:break-word}.airport-raw-weather-body span{display:block;margin-bottom:3px;color:var(--text);font-size:9px;font-weight:950}.livewx-apk-panel .airport-raw-weather-body p,.livewx-apk-panel .airport-notam-preview article,.livewx-apk-panel .airport-notam-list article{background:#00000047;color:#d6e4f0}.livewx-apk-panel .airport-raw-weather-body span,.livewx-apk-panel .airport-notam-preview strong,.livewx-apk-panel .airport-notam-list strong{color:#f8fafc}.livewx-apk-panel .airport-notam-preview p,.livewx-apk-panel .airport-notam-list p,.livewx-apk-panel .airport-notam-empty,.livewx-apk-panel .airport-raw-metar{color:#9db2c7}.airport-notam-panel{margin-top:8px;padding:9px;border:.5px solid var(--border-soft);border-radius:9px;background:var(--surface)}.airport-notam-head{width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 7px;padding:0;border:0;background:transparent;color:inherit;text-align:left}.airport-notam-head:last-child{margin-bottom:0}.airport-notam-head.static{cursor:default}.airport-notam-head strong{color:var(--text);font-size:11px;font-weight:950}.airport-notam-head span{display:flex;align-items:center;gap:5px;color:var(--muted);font-size:10px;font-weight:900;white-space:nowrap}.airport-notam-empty{margin:0;color:var(--muted);font-size:10px;line-height:1.45}.airport-notam-preview{display:flex;flex-direction:column;gap:5px;margin-top:2px}.airport-notam-preview article{display:grid;grid-template-columns:auto 1fr;gap:2px 8px;min-width:0;padding:7px 8px;border-radius:8px;background:var(--surface-2)}.airport-notam-preview strong{min-width:0;color:var(--text);font-size:10px;font-weight:950;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.airport-notam-preview span{color:var(--muted);font-size:9px;font-weight:800;text-align:right;white-space:nowrap}.airport-notam-preview p{grid-column:1 / -1;margin:0;color:var(--text-soft);font-size:10px;line-height:1.35;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.airport-notam-list{display:flex;flex-direction:column;gap:6px;max-height:180px;overflow-y:auto;padding-right:2px}.airport-notam-list article{padding:8px;border-radius:8px;background:var(--surface-2)}.airport-notam-list article div{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:5px}.airport-notam-list strong{min-width:0;color:var(--text);font-size:10px;font-weight:950;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.airport-notam-list span{color:var(--muted);font-size:9px;font-weight:800;white-space:nowrap}.airport-notam-list p{margin:0;color:var(--text-soft);font-size:10px;line-height:1.45;word-break:break-word}@media (max-width:820px){.finance-header,.flightlog-header{align-items:stretch;flex-direction:column}.finance-header .calendar-title-row,.flightlog-header .calendar-title-row{width:100%;justify-content:center}.finance-tabs,.flightlog-header-actions{width:100%}.flightlog-header-actions .flightlog-tabs{flex:1 1 auto;min-width:0}.flightlog-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:1100px){.sigwx-console-layout{grid-template-columns:1fr}.sigmet-detail-panel{min-height:auto}}@media (max-width:720px){.enroute-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sigwx-jepp-head{align-items:stretch;flex-direction:column}.sigwx-mode-toggle{width:100%}.sigwx-jepp-map-shell .enroute-route-map{min-height:320px}.sigmet-detail-grid{grid-template-columns:1fr}}@media (max-width:460px){.enroute-summary-grid{grid-template-columns:1fr}.sigwx-jepp-card{padding:8px}.sigwx-layer-toolbar,.sigwx-jepp-foot{flex-wrap:nowrap;overflow-x:auto;padding-bottom:2px}.sigwx-jepp-map-note{left:8px;right:8px;bottom:8px;max-width:none}}.flightlog-list,.flightlog-preview-list{display:flex;flex-direction:column;gap:8px}.flightlog-preview-list{max-height:520px;overflow-y:auto;padding-right:3px}.flightlog-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;min-width:0;padding:10px;border:.5px solid var(--border-soft);border-radius:9px;background:var(--surface-2)}.flightlog-row.duplicate{opacity:.45}.flightlog-row.schedule{grid-template-columns:minmax(0,1fr) auto}.flightlog-route{min-width:0}.flightlog-route strong{display:block;min-width:0;margin-bottom:4px;color:var(--text);font-size:13px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.flightlog-route span{display:block;min-width:0;color:var(--muted);font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.flightlog-times{display:grid;grid-template-columns:repeat(2,auto);gap:4px 7px;color:var(--muted);font-size:10px;white-space:nowrap}.flightlog-side{display:flex;flex-direction:column;align-items:flex-end;gap:4px;white-space:nowrap}.flightlog-side strong{color:var(--text);font-size:13px;font-weight:800}.flightlog-side span{color:var(--muted);font-size:10px}.flightlog-row-actions{display:flex;align-items:center;justify-content:flex-end;gap:4px}.flightlog-row-actions button{display:grid;place-items:center;width:26px;height:26px;border:.5px solid var(--border);border-radius:8px;background:var(--surface);color:var(--muted);font-size:14px}.flightlog-row-actions button:hover{color:var(--text);border-color:var(--border-strong)}.flightlog-stats-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.career-route-map-panel{min-width:0}.career-route-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:10px}.career-route-summary div{min-width:0;padding:9px 10px;border-radius:9px;background:var(--surface-2)}.career-route-summary span{display:block;margin-bottom:4px;color:var(--faint);font-size:9px;font-weight:950;text-transform:uppercase}.career-route-summary strong{display:block;min-width:0;color:var(--text);font-size:12px;font-weight:950;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.career-route-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,.32fr);gap:10px;align-items:stretch}.career-route-map-wrap{min-width:0;overflow:hidden;border:.5px solid var(--border-soft);border-radius:10px;background:linear-gradient(180deg,#7daad229,#7daad20f)}.career-route-map{display:block;width:100%;min-height:320px;max-height:520px;background:var(--input-bg)}.career-route-ocean{fill:var(--input-bg)}.career-route-land path{fill:var(--surface-2);stroke:var(--border-soft);stroke-width:.55;vector-effect:non-scaling-stroke}.career-route-lines path{fill:none;stroke-linecap:round;stroke-linejoin:round;cursor:pointer;filter:drop-shadow(0 1px 2px rgba(0,0,0,.22))}.career-route-lines path.selected{stroke-width:8px;opacity:1;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3))}.career-route-airports circle{fill:var(--surface);stroke:var(--accent);stroke-width:2.1;vector-effect:non-scaling-stroke;filter:drop-shadow(0 1px 2px rgba(0,0,0,.24))}.career-route-airports text{fill:var(--text);stroke:var(--surface);stroke-width:3px;paint-order:stroke;font-size:12px;font-weight:950;letter-spacing:0;pointer-events:none}.career-route-side{display:flex;flex-direction:column;gap:10px;min-width:0}.career-route-side>div{min-width:0;padding:10px;border-radius:10px;background:var(--surface-2)}.career-route-side h4{margin:0 0 8px;color:var(--text);font-size:11px;font-weight:950}.career-route-list{display:flex;flex-direction:column;gap:6px;max-height:242px;overflow-y:auto;padding-right:2px}.career-route-selected strong,.career-route-selected span{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.career-route-selected strong{color:var(--text);font-size:12px;font-weight:950}.career-route-selected span{margin-top:4px;color:var(--muted);font-size:10px;font-weight:850}.career-route-item{display:grid;grid-template-columns:auto minmax(0,1fr);gap:2px 7px;min-width:0;width:100%;padding:7px 8px;border:0;border-radius:8px;background:var(--surface);text-align:left}.career-route-item.selected{box-shadow:0 0 0 1.5px var(--accent-soft)}.career-route-item span{grid-row:1 / 3;width:7px;min-height:100%;border-radius:999px}.career-route-item strong{min-width:0;color:var(--text);font-size:11px;font-weight:950;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.career-route-item em{min-width:0;color:var(--muted);font-size:10px;font-style:normal;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.career-airport-chips{display:flex;flex-wrap:wrap;gap:6px}.career-airport-chips span{display:inline-flex;align-items:center;gap:5px;min-height:25px;padding:0 8px;border:.5px solid var(--border);border-radius:999px;background:var(--surface);color:var(--text);font-size:10px;font-weight:950}.career-airport-chips em{color:var(--accent);font-style:normal;font-weight:950}.career-route-note{margin:8px 0 0;color:var(--muted);font-size:10px;line-height:1.45}.career-route-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:220px;border:.5px dashed var(--border-strong);border-radius:10px;background:var(--surface-2);color:var(--muted);text-align:center}.career-route-empty i{color:var(--accent);font-size:28px}.career-route-empty strong{color:var(--text);font-size:13px;font-weight:950}.career-route-empty span{max-width:320px;color:var(--muted);font-size:11px;line-height:1.45}.flightlog-transfer-grid{display:grid;grid-template-columns:1fr;gap:12px;align-items:start}.flightlog-export-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.flightlog-export-actions button{display:flex;align-items:center;justify-content:center;gap:8px;min-height:58px;border:.5px solid var(--border-strong);border-radius:10px;background:var(--surface-2);color:var(--text);font-size:13px;font-weight:800}.flightlog-export-actions button i{color:var(--accent);font-size:20px}.flightlog-export-actions button:disabled{opacity:.55;cursor:not-allowed}.flightlog-sync-banner{display:flex;align-items:center;gap:8px;padding:10px 12px;border:.5px solid var(--border-strong);border-radius:10px;background:var(--accent-soft);color:var(--accent);font-size:12px;font-weight:800}.flightlog-sync-banner span{flex:1;min-width:0}.flightlog-sync-banner button{min-height:28px;padding:0 10px;border:.5px solid var(--border-strong);border-radius:8px;background:var(--surface);color:var(--accent);font-size:11px;font-weight:900;white-space:nowrap}.flightlog-editor-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:700;display:flex;align-items:center;justify-content:center;padding:18px;background:#0000007a}.flightlog-editor{width:min(920px,100%);max-height:min(88vh,920px);overflow:auto;border:.5px solid var(--border-strong);border-radius:14px;background:var(--surface);box-shadow:var(--shadow)}.flightlog-editor form{display:flex;flex-direction:column;gap:12px;padding:16px}.flightlog-editor-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding-bottom:8px;border-bottom:.5px solid var(--border)}.flightlog-editor-head h3{margin:0;color:var(--text);font-size:16px;font-weight:900}.flightlog-editor-head span{display:block;margin-top:3px;color:var(--muted);font-size:11px}.flightlog-editor-head button{display:grid;place-items:center;width:30px;height:30px;border:0;border-radius:9px;background:var(--surface-2);color:var(--muted);font-size:17px}.flightlog-form-section{display:flex;flex-direction:column;gap:8px}.flightlog-form-section h4{margin:0;color:var(--text);font-size:12px;font-weight:900}.flightlog-form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.flightlog-form-field{display:flex;flex-direction:column;min-width:0;gap:5px;color:var(--text-soft);font-size:10px;font-weight:700}.flightlog-form-field.wide{grid-column:1 / -1}.flightlog-form-field input,.flightlog-form-field textarea{width:100%;min-width:0;border:.5px solid var(--border-strong);border-radius:9px;background:var(--input-bg);color:var(--text);font-size:12px;padding:8px 9px;outline:none;box-sizing:border-box}.flightlog-form-field textarea{resize:vertical;line-height:1.45}.flightlog-form-field input:disabled{background:var(--surface-2);color:var(--muted);cursor:not-allowed}.flightlog-total-field{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px;align-items:center}.flightlog-total-field label{display:flex;align-items:center;gap:4px;min-height:32px;padding:0 8px;border:.5px solid var(--border);border-radius:9px;background:var(--surface-2);color:var(--muted);font-size:10px;font-weight:800;white-space:nowrap}.flightlog-total-field input[type=checkbox]{width:auto;accent-color:var(--accent)}.flightlog-time-pair{display:grid;grid-template-columns:minmax(0,1fr) minmax(92px,auto);gap:6px;align-items:stretch}.flightlog-local-time{min-width:0;min-height:34px;display:flex;flex-direction:column;justify-content:center;gap:1px;padding:5px 7px;border:.5px solid var(--border);border-radius:9px;background:var(--surface-2);box-sizing:border-box;overflow:hidden}.flightlog-local-time span{color:var(--faint);font-size:9px;font-weight:900;line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.flightlog-local-time strong{color:var(--text);font-size:11px;font-weight:900;line-height:1.05;white-space:nowrap}.flightlog-duration-use{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px;align-items:center}.flightlog-duration-use button{min-height:34px;padding:0 8px;border:.5px solid var(--border);border-radius:9px;background:var(--surface-2);color:var(--accent);font-size:10px;font-weight:900;cursor:pointer;white-space:nowrap}.flightlog-role-toggle{display:grid;grid-template-columns:1fr 1fr;gap:4px;min-height:34px;padding:3px;border:.5px solid var(--border-strong);border-radius:9px;background:var(--input-bg);box-sizing:border-box}.flightlog-role-toggle button{border:none;border-radius:7px;background:transparent;color:var(--muted);font-size:12px;font-weight:900;cursor:pointer}.flightlog-role-toggle button.active{background:var(--accent);color:#fff;box-shadow:0 4px 12px #7e57c238}.flightlog-swap-button{width:100%;min-height:34px;border:.5px solid var(--border);border-radius:9px;background:var(--surface-2);color:var(--text);font-size:12px;font-weight:900;display:flex;align-items:center;justify-content:center;gap:7px;cursor:pointer}.flightlog-photo-badge{display:inline-flex;align-items:center;gap:4px;width:max-content;margin-top:5px;padding:3px 6px;border-radius:999px;background:var(--surface);color:var(--accent);font-size:10px;font-style:normal;font-weight:900}.flightlog-photo-badge.pending{background:var(--accent-soft)}.flightlog-photo-panel{display:flex;flex-direction:column;gap:8px;min-width:0}.flightlog-photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:8px}.flightlog-photo-thumb{position:relative;display:flex;flex-direction:column;gap:5px;min-width:0;margin:0;padding:6px;border:.5px solid var(--border);border-radius:10px;background:var(--surface-2)}.flightlog-photo-thumb a,.flightlog-photo-thumb>div{display:grid;place-items:center;aspect-ratio:1 / 1;overflow:hidden;border-radius:8px;background:var(--input-bg);color:var(--muted)}.flightlog-photo-thumb img{width:100%;height:100%;object-fit:cover}.flightlog-photo-thumb.pending>div i{font-size:24px;color:var(--accent)}.flightlog-photo-thumb figcaption{min-width:0;color:var(--muted);font-size:9px;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.flightlog-photo-thumb button{position:absolute;top:4px;right:4px;display:grid;place-items:center;width:22px;height:22px;border:0;border-radius:999px;background:#0000009e;color:#fff;font-size:13px;cursor:pointer}.flightlog-photo-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.flightlog-photo-add{display:flex;align-items:center;justify-content:center;gap:7px;min-height:36px;border:.5px dashed var(--border-strong);border-radius:10px;background:var(--surface-2);color:var(--text);font-size:12px;font-weight:900;cursor:pointer}.flightlog-photo-acars{display:flex;align-items:center;justify-content:center;gap:7px;min-height:36px;border:.5px solid var(--accent);border-radius:10px;background:var(--accent-soft);color:var(--accent);font-size:12px;font-weight:900;cursor:pointer}.flightlog-photo-acars:disabled{opacity:.62;cursor:wait}.flightlog-acars-result{margin:0;padding:8px 9px;border-radius:9px;background:var(--surface-2);color:var(--muted);font-size:11px;font-weight:800;line-height:1.35;word-break:keep-all;overflow-wrap:anywhere}.flightlog-editor-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:6px}.flightlog-editor-actions button{display:flex;align-items:center;justify-content:center;gap:6px;min-height:36px;padding:0 14px;border-radius:10px;font-size:12px;font-weight:900}.flightlog-editor-cancel{border:.5px solid var(--border-strong);background:var(--surface-2);color:var(--text)}.flightlog-editor-save{border:0;background:var(--accent);color:#fff}.flightlog-editor-save:disabled{background:var(--accent-muted);cursor:not-allowed}.portal-page,.tasks-page,.media-page{display:flex;flex-direction:column;gap:var(--page-gap);width:100%;min-width:0}.portal-header{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--header-gap);width:100%;min-width:0;flex-wrap:wrap}.portal-header>div:first-child{min-width:0}.portal-header>div:first-child>span{display:block;margin-bottom:4px;color:var(--accent);font-size:11px;font-weight:950;letter-spacing:0}.portal-header h1{margin:0;color:var(--text);font-size:24px;line-height:1.16;font-weight:950;letter-spacing:0}.portal-header p{margin:5px 0 0;color:var(--muted);font-size:12px;font-weight:750;line-height:1.45}.portal-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;min-width:0;flex-wrap:wrap}.portal-header-actions button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:36px;padding:0 12px;border:.5px solid var(--border-strong);border-radius:var(--control-radius);background:var(--surface);color:var(--text);font-size:12px;font-weight:950;white-space:nowrap}.portal-header-actions button.primary{border-color:var(--accent);background:var(--accent);color:#fff}.portal-header-actions button:disabled{opacity:.58;cursor:not-allowed}:root[data-theme=oled] .portal-header-actions button.primary{color:#001f08}@media (prefers-color-scheme: dark){:root:not([data-theme=light]) .portal-header-actions button.primary{color:#001f08}}.portal-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,150px),1fr));gap:var(--summary-gap);width:100%;min-width:0}.portal-summary-card{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0;min-height:74px;padding:12px;border:.5px solid var(--border-soft);border-radius:var(--panel-radius);background:var(--surface)}.portal-summary-card div,.portal-summary-card span,.portal-summary-card strong{min-width:0}.portal-summary-card span{display:block;color:var(--muted);font-size:10px;font-weight:900;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.portal-summary-card strong{display:block;margin-top:5px;color:var(--text);font-size:18px;line-height:1.08;font-weight:950;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.portal-summary-card i{flex:0 0 auto;display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:var(--accent-soft);color:var(--accent);font-size:18px}.portal-home-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(260px,.72fr);gap:12px;width:100%;min-width:0;align-items:start}.portal-home-grid.secondary{grid-template-columns:minmax(0,1fr) minmax(260px,.55fr)}.portal-home-stack{display:flex;flex-direction:column;gap:12px;width:100%;min-width:0}.portal-side-stack{display:flex;flex-direction:column;gap:12px;min-width:0}.portal-panel{min-width:0;padding:12px;border:.5px solid var(--border-soft);border-radius:var(--panel-radius);background:var(--surface)}.portal-panel-head{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0;margin-bottom:10px}.portal-panel-head h2{display:flex;align-items:center;gap:6px;min-width:0;margin:0;color:var(--text);font-size:14px;font-weight:950;line-height:1.2}.portal-panel-head h2 i{flex:0 0 auto;color:var(--accent);font-size:17px}.portal-panel-head>span{flex:0 0 auto;color:var(--muted);font-size:11px;font-weight:850}.portal-panel-head button{flex:0 0 auto;min-height:30px;padding:0 10px;border:.5px solid var(--border-strong);border-radius:9px;background:var(--surface-2);color:var(--text);font-size:11px;font-weight:950}.portal-timeline{display:flex;flex-direction:column;gap:8px;min-width:0}.portal-timeline article{display:grid;grid-template-columns:72px minmax(0,1fr);gap:10px;min-width:0;padding:10px;border:.5px solid var(--border-soft);border-radius:10px;background:var(--surface-2)}.portal-timeline time{display:flex;flex-direction:column;gap:2px;min-width:0;color:var(--accent);font-style:normal;line-height:1.15}.portal-timeline-date,.portal-timeline-time{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.portal-timeline-date{color:var(--muted);font-size:10px;font-weight:900}.portal-timeline-time{color:var(--accent);font-size:12px;font-weight:950}.portal-timeline strong,.portal-timeline span{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis}.portal-timeline strong{color:var(--text);font-size:13px;font-weight:950;white-space:nowrap}.portal-timeline span{margin-top:3px;color:var(--muted);font-size:11px;line-height:1.35}.portal-empty-line{display:flex;align-items:center;gap:8px;min-width:0;padding:14px 12px;border:.5px dashed var(--border-strong);border-radius:10px;background:var(--surface-2);color:var(--muted);font-size:12px;font-weight:800;line-height:1.45}.portal-empty-line i{flex:0 0 auto;color:var(--accent);font-size:18px}.portal-mini-list{display:flex;flex-direction:column;gap:7px;min-width:0}.portal-mini-item{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;min-width:0;padding:9px;border-radius:10px;background:var(--surface-2)}.portal-mini-item>i{margin-top:3px;font-size:9px}.portal-mini-item.green>i,.task-tone.green,.task-detail-icon.green{color:#2f8f5b;background:#e7f6ec}.portal-mini-item.blue>i,.task-tone.blue,.task-detail-icon.blue{color:#3076c9;background:#e6f0ff}.portal-mini-item.orange>i,.task-tone.orange,.task-detail-icon.orange{color:#c46a18;background:#fff0de}.portal-mini-item.violet>i,.task-tone.violet,.task-detail-icon.violet{color:#7b5be7;background:#eee9ff}.portal-mini-item strong,.portal-mini-item span{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.portal-mini-item strong{color:var(--text);font-size:12px;font-weight:950}.portal-mini-item span{margin-top:3px;color:var(--muted);font-size:10px;font-weight:850}.portal-grocery-chips{display:flex;flex-wrap:wrap;gap:7px}.portal-grocery-chips span{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border:.5px solid var(--border);border-radius:999px;background:var(--surface-2);color:var(--text);font-size:11px;font-weight:900}.portal-link-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.portal-link-grid button{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-rows:auto auto;gap:2px 8px;min-width:0;min-height:68px;padding:10px;border:.5px solid var(--border-soft);border-radius:10px;background:var(--surface-2);text-align:left}.portal-link-grid button:disabled{opacity:.78;cursor:not-allowed}.portal-link-grid i{grid-row:1 / 3;align-self:center;color:var(--accent);font-size:21px}.portal-link-grid strong,.portal-link-grid span{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.portal-link-grid strong{color:var(--text);font-size:12px;font-weight:950}.portal-link-grid span{color:var(--muted);font-size:10px;font-weight:800}.portal-flight-strip{display:flex;flex-direction:column;gap:4px;min-width:0;padding:12px;border-radius:10px;background:var(--accent-soft)}.portal-flight-strip strong{color:var(--accent);font-size:13px;font-weight:950}.portal-flight-strip span{color:var(--muted);font-size:11px;font-weight:850;line-height:1.35}.portal-photo-placeholder{display:flex;flex-direction:column;justify-content:flex-end;gap:6px;min-height:172px;padding:14px;border:.5px dashed var(--border-strong);border-radius:10px;background:linear-gradient(180deg,#ffffff0d,#0000001a),var(--surface-2);color:var(--muted)}.portal-photo-placeholder i{color:var(--accent);font-size:28px}.portal-photo-placeholder strong{color:var(--text);font-size:13px;font-weight:950}.portal-photo-placeholder span{max-width:260px;color:var(--muted);font-size:11px;font-weight:800;line-height:1.45}.portal-photo-panel.featured .portal-photo-placeholder{min-height:220px}.portal-photo-frame{position:relative;min-width:0;min-height:260px;margin:0;overflow:hidden;border-radius:12px;background:var(--surface-2);isolation:isolate}.portal-photo-frame img{display:block;width:100%;height:min(44vh,420px);min-height:260px;object-fit:cover;background:var(--input-bg)}.portal-photo-frame:after{content:"";position:absolute;inset:auto 0 0;height:50%;background:linear-gradient(180deg,transparent,rgba(0,0,0,.72));pointer-events:none}.portal-photo-frame figcaption{position:absolute;left:0;right:0;bottom:0;z-index:1;display:flex;align-items:flex-end;justify-content:space-between;gap:12px;min-width:0;padding:16px;color:#fff}.portal-photo-frame figcaption div{min-width:0}.portal-photo-frame strong,.portal-photo-frame span{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.portal-photo-frame strong{color:#fff;font-size:18px;font-weight:950;text-shadow:0 1px 8px rgba(0,0,0,.42)}.portal-photo-frame span{margin-top:4px;color:#ffffffc7;font-size:12px;font-weight:850}.portal-photo-frame a{flex:0 0 auto;display:grid;place-items:center;width:36px;height:36px;border:.5px solid rgba(255,255,255,.28);border-radius:999px;background:#00000057;color:#fff;text-decoration:none;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.portal-media-home-card p{margin:10px 0 0;color:var(--muted);font-size:11px;font-weight:800;line-height:1.55}.portal-media-home-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;min-width:0}.portal-media-home-grid div{min-width:0;padding:10px;border:.5px solid var(--border-soft);border-radius:10px;background:var(--surface-2)}.portal-media-home-grid span,.portal-media-home-grid strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.portal-media-home-grid span{color:var(--muted);font-size:10px;font-weight:900}.portal-media-home-grid strong{margin-top:4px;color:var(--text);font-size:17px;font-weight:950}.portal-media-latest{display:grid;grid-template-columns:58px minmax(0,1fr) auto;align-items:center;gap:12px;width:100%;min-width:0;min-height:82px;padding:10px;border:.5px solid var(--border-soft);border-radius:12px;background:var(--surface-2);color:var(--text);text-align:left;cursor:pointer}.portal-media-latest>i{color:var(--muted);font-size:18px}.portal-media-latest-main,.portal-media-latest-main strong,.portal-media-latest-main small,.portal-media-latest-main em{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.portal-media-latest-main strong{color:var(--text);font-size:14px;font-weight:950}.portal-media-latest-main small{margin-top:4px;color:var(--text-soft);font-size:11px;font-weight:850}.portal-media-latest-main em{margin-top:4px;color:var(--muted);font-size:10px;font-style:normal;font-weight:800}.portal-media-poster{display:flex;flex-direction:column;align-items:center;justify-content:center;width:58px;height:72px;overflow:hidden;border:.5px solid var(--border-soft);border-radius:10px;background:var(--input-bg);color:var(--accent)}.portal-media-poster img{display:block;width:100%;height:100%;object-fit:cover}.portal-media-poster i{font-size:22px}.portal-media-poster small{margin-top:4px;color:var(--muted);font-size:8px;font-weight:950}.control-mock-page{padding-bottom:24px}.control-photo-mock{padding:12px}.control-photo-frame{display:grid;place-items:center;min-height:260px;overflow:hidden;border-radius:10px;border:.5px solid var(--border-soft);background:linear-gradient(135deg,rgba(61,94,66,.16),transparent 38%),linear-gradient(315deg,rgba(54,112,148,.16),transparent 42%),var(--surface-2)}.control-photo-frame div{display:flex;flex-direction:column;align-items:center;gap:6px;min-width:0;padding:18px;text-align:center}.control-photo-frame span{color:var(--accent);font-size:11px;font-weight:950}.control-photo-frame strong{color:var(--text);font-size:22px;line-height:1.2;font-weight:950}.control-photo-frame small{color:var(--muted);font-size:12px;font-weight:800}.home-control-center{display:flex;flex-direction:column;gap:12px}.home-control-center .portal-panel-head{margin-bottom:0}.home-control-head{align-items:flex-start}.home-control-health{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:28px;padding:0 9px;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-size:11px;font-weight:950;white-space:nowrap}.home-control-top{display:grid;grid-template-columns:minmax(220px,.85fr) minmax(0,1.6fr);gap:10px;min-width:0}.home-control-weather{display:flex;flex-direction:column;justify-content:space-between;gap:8px;min-width:0;min-height:112px;padding:13px;border:.5px solid var(--border-soft);border-radius:10px;background:var(--surface-2)}.home-control-kicker{color:var(--muted);font-size:10px;font-weight:950;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-control-weather strong{color:var(--text);font-size:32px;line-height:1;font-weight:950;letter-spacing:0}.home-control-weather small{color:var(--muted);font-size:12px;line-height:1.4;font-weight:850}.home-weather-panel{display:grid;grid-template-columns:minmax(180px,.82fr) minmax(0,1.18fr);align-items:stretch;min-height:118px;padding:14px}.home-weather-main{display:flex;flex-direction:column;justify-content:space-between;gap:8px;min-width:0}.home-weather-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;min-width:0}.home-weather-metrics span{display:flex;align-items:center;gap:7px;min-width:0;min-height:52px;padding:0 10px;border:.5px solid var(--border-soft);border-radius:10px;background:var(--surface);color:var(--text-soft);font-size:11px;font-weight:950;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-weather-metrics i{flex:0 0 auto;color:var(--accent);font-size:17px}.home-control-signals{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;min-width:0}.home-signal-tile{display:flex;flex-direction:column;justify-content:space-between;gap:7px;min-width:0;min-height:112px;padding:11px;border:.5px solid var(--border-soft);border-radius:10px;background:var(--surface-2)}.home-signal-tile i{display:grid;place-items:center;width:28px;height:28px;border-radius:8px;background:var(--surface);color:var(--accent);font-size:17px}.home-signal-tile span{color:var(--muted);font-size:10px;line-height:1.2;font-weight:950;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-signal-tile strong{color:var(--text);font-size:17px;line-height:1.1;font-weight:950}.home-control-actions{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;min-width:0}.home-action-button{display:flex;align-items:center;justify-content:center;gap:7px;min-width:0;min-height:42px;padding:0 10px;border:.5px solid var(--border-strong);border-radius:10px;background:var(--surface);color:var(--text);font-size:12px;font-weight:950;cursor:pointer}.home-action-button i{flex:0 0 auto;color:var(--accent);font-size:17px}.home-action-button span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-action-button.green{border-color:#2f8f5b47;background:#e7f6ec;color:#1f6d42}.home-action-button.blue{border-color:#3076c940;background:#e6f0ff;color:#225eaa}.home-action-button.violet{border-color:#7b5be740;background:#eee9ff;color:#6445cb}.home-action-button.danger{border-color:var(--danger-border);background:var(--danger-bg);color:var(--danger)}.home-action-button.green i,.home-action-button.blue i,.home-action-button.violet i,.home-action-button.danger i{color:currentColor}.home-primary-action-row{display:flex;align-items:center;justify-content:flex-start;min-width:0}.home-primary-action-row .home-action-button{min-width:168px;padding:0 14px}.home-room-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0;padding:10px 11px;border:.5px solid var(--border-soft);border-radius:10px;background:var(--surface-2)}.home-room-toolbar div,.home-room-toolbar strong,.home-room-toolbar span{min-width:0}.home-room-toolbar strong,.home-room-toolbar span{display:block;overflow:hidden;text-overflow:ellipsis}.home-room-toolbar strong{color:var(--text);font-size:13px;font-weight:950;line-height:1.2;white-space:nowrap}.home-room-toolbar span{margin-top:3px;color:var(--muted);font-size:10px;font-weight:850;line-height:1.3}.home-room-toolbar button{display:inline-flex;align-items:center;justify-content:center;gap:5px;flex:0 0 auto;min-height:32px;padding:0 10px;border:.5px solid var(--border-strong);border-radius:9px;background:var(--surface);color:var(--text-soft);font-size:11px;font-weight:950;white-space:nowrap}.home-room-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;min-width:0}.home-room-card{position:relative;display:flex;flex-direction:column;justify-content:space-between;gap:10px;min-width:0;min-height:154px;padding:12px;border:.5px solid var(--border-soft);border-radius:10px;background:var(--surface-2);overflow:hidden}.home-room-card:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:var(--room-accent)}.home-room-card.green{--room-accent:#2F8F5B}.home-room-card.blue{--room-accent:#3076C9}.home-room-card.violet{--room-accent:#7B5BE7}.home-room-card.orange{--room-accent:#C46A18}.home-room-card.cyan{--room-accent:#1B7F83}.home-room-grid-control{grid-template-columns:repeat(3,minmax(0,1fr))}.home-room-control-card{min-height:172px}.home-room-card-top{display:grid;grid-template-columns:30px minmax(0,1fr);align-items:center;gap:9px;min-width:0}.home-room-icon{display:grid;place-items:center;width:30px;height:30px;border-radius:10px;background:color-mix(in srgb,var(--room-accent) 14%,var(--surface));color:var(--room-accent);font-size:17px}.home-room-title,.home-room-title strong,.home-room-title small,.home-room-status-line,.home-room-status-line span{min-width:0}.home-room-title strong,.home-room-title small,.home-room-status-line span{display:block;overflow:hidden;text-overflow:ellipsis}.home-room-title strong{color:var(--text);font-size:14px;line-height:1.15;font-weight:950;white-space:nowrap}.home-room-title small{margin-top:3px;color:var(--muted);font-size:10px;line-height:1.2;font-weight:850;white-space:nowrap}.home-room-status-line{color:var(--text-soft);font-size:11px;line-height:1.35;font-weight:850}.home-room-control-rail{display:flex;flex-wrap:wrap;align-items:center;gap:7px;min-width:0;padding-top:10px;border-top:.5px solid var(--border-soft)}.home-control-chip{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:0;min-height:44px;padding:0 12px;border:.5px solid var(--border-strong);border-radius:999px;background:var(--surface);color:var(--text-soft);font-size:10px;font-weight:950;white-space:nowrap}.home-control-chip i{flex:0 0 auto;color:var(--room-accent);font-size:15px}.home-control-chip span{color:var(--muted)}.home-control-chip strong{color:var(--text);font-size:10px;font-weight:950}button.home-control-chip{cursor:pointer}.home-control-chip.active{border-color:color-mix(in srgb,var(--room-accent) 34%,var(--border-strong));background:color-mix(in srgb,var(--room-accent) 12%,var(--surface))}.home-control-chip.active,.home-control-chip.active span,.home-control-chip.active strong{color:var(--room-accent)}.home-control-chip.passive{cursor:default}.home-dimmer-control{display:grid;grid-template-columns:auto minmax(86px,1fr);align-items:center;gap:8px;flex:1 1 170px;min-width:0}.home-dimmer-control label{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:8px;min-width:0;min-height:44px}.home-dimmer-control label span{color:var(--muted);font-size:10px;font-weight:950;line-height:1.2;text-align:right}.home-dimmer-control input[type=range]{width:100%;accent-color:var(--accent)}.control-home-after{margin-top:0}:root[data-theme=oled] .home-action-button.green,:root[data-theme=oled] .home-action-button.blue,:root[data-theme=oled] .home-action-button.violet,:root[data-theme=oled] .home-action-button.danger{background:var(--surface-2)}@media (prefers-color-scheme: dark){:root:not([data-theme=light]) .home-action-button.green,:root:not([data-theme=light]) .home-action-button.blue,:root:not([data-theme=light]) .home-action-button.violet,:root:not([data-theme=light]) .home-action-button.danger{background:var(--surface-2)}:root:not([data-theme=light]) .control-photo-frame{background:linear-gradient(135deg,rgba(142,235,149,.09),transparent 38%),linear-gradient(315deg,rgba(72,135,184,.12),transparent 42%),var(--surface-2)}}.media-open-link{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:36px;padding:0 12px;border:.5px solid var(--border-strong);border-radius:var(--control-radius);background:var(--surface);color:var(--text);font-size:12px;font-weight:950;text-decoration:none;white-space:nowrap}.media-integration-pill{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:36px;padding:0 12px;border:.5px solid var(--border-strong);border-radius:var(--control-radius);background:var(--surface);color:var(--muted);font-size:12px;font-weight:950;white-space:nowrap}.media-toast{position:fixed;top:18px;right:18px;z-index:760;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;width:min(360px,calc(100vw - 32px));min-width:0;padding:12px;border:.5px solid var(--border-strong);border-radius:14px;background:var(--surface);box-shadow:var(--shadow)}.media-toast>i{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:var(--accent-soft);color:var(--accent);font-size:18px}.media-toast strong,.media-toast span{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis}.media-toast strong{color:var(--text);font-size:13px;font-weight:950}.media-toast span{margin-top:3px;color:var(--muted);font-size:11px;font-weight:800;line-height:1.35}.media-toast button{display:grid;place-items:center;width:28px;height:28px;border:0;border-radius:8px;background:var(--surface-2);color:var(--muted)}.media-season-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:770;display:flex;align-items:center;justify-content:center;padding:16px;background:#0000006b}.media-season-dialog{display:flex;flex-direction:column;width:min(560px,100%);max-height:calc(100dvh - 32px);overflow:hidden;border:.5px solid var(--border);border-radius:16px;background:var(--surface);color:var(--text);box-shadow:0 24px 70px #00000042}.media-season-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:16px 16px 12px;border-bottom:.5px solid var(--border-soft)}.media-season-title{display:flex;min-width:0;align-items:center;gap:12px}.media-season-title>div{min-width:0}.media-season-title span{color:var(--muted);font-size:11px;font-weight:950}.media-season-title h2{margin:2px 0 4px;overflow:hidden;color:var(--text);font-size:18px;font-weight:950;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.media-season-title p{margin:0;color:var(--text-soft);font-size:12px;font-weight:800}.media-season-close{flex:0 0 auto;display:grid;width:36px;height:36px;place-items:center;border:.5px solid var(--border-soft);border-radius:999px;background:var(--input-bg);color:var(--text);cursor:pointer}.media-season-tools{display:flex;flex-wrap:wrap;gap:8px;padding:12px 16px;border-bottom:.5px solid var(--border-soft)}.media-season-tools button{min-height:32px;padding:0 11px;border:.5px solid var(--border-soft);border-radius:999px;background:var(--input-bg);color:var(--text);font-size:11px;font-weight:900;cursor:pointer}.media-season-tools button:disabled{opacity:.45;cursor:not-allowed}.media-season-list{display:flex;flex:1 1 auto;flex-direction:column;gap:8px;min-height:0;overflow:auto;padding:12px 16px}.media-season-row{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:54px;padding:8px 10px;border:.5px solid var(--border-soft);border-radius:12px;background:var(--input-bg);color:var(--text);text-align:left;cursor:pointer}.media-season-row.selected{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--input-bg))}.media-season-row.disabled{cursor:not-allowed;opacity:.72}.media-season-check{display:grid;width:28px;height:28px;place-items:center;border:.5px solid var(--border-soft);border-radius:9px;background:var(--surface);color:var(--accent)}.media-season-main{display:flex;min-width:0;flex-direction:column}.media-season-main strong{color:var(--text);font-size:13px;font-weight:950}.media-season-main small{margin-top:3px;overflow:hidden;color:var(--text-soft);font-size:11px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.media-season-status{display:inline-flex;align-items:center;justify-content:center;min-height:24px;padding:0 8px;border-radius:999px;font-size:10px;font-weight:950;white-space:nowrap}.media-season-status.green{background:#e7f6ec;color:#2f8f5b}.media-season-status.blue{background:#e6f0ff;color:#3076c9}.media-season-status.cyan{background:#ddf7f7;color:#1b7f83}.media-season-empty{display:flex;flex:1 1 auto;min-height:170px;align-items:center;justify-content:center;gap:8px;padding:24px 16px;color:var(--text-soft);font-size:13px;font-weight:850}.media-season-empty.error{color:var(--danger)}.media-season-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-top:.5px solid var(--border-soft);background:var(--surface)}.media-season-footer>span{color:var(--text-soft);font-size:12px;font-weight:900}.media-season-footer>div{display:flex;gap:8px}.media-season-footer button{min-height:36px;padding:0 14px;border:.5px solid var(--border-soft);border-radius:10px;background:var(--input-bg);color:var(--text);font-size:12px;font-weight:950;cursor:pointer}.media-season-footer button.primary{border-color:transparent;background:var(--accent);color:#fff}.media-season-footer button:disabled{opacity:.45;cursor:not-allowed}:root[data-theme=oled] .media-season-status.green,:root[data-theme=oled] .media-season-status.blue,:root[data-theme=oled] .media-season-status.cyan{border:.5px solid currentColor;background:#ffffff0d}.media-search-panel{display:flex;flex-direction:column;gap:10px}.media-search-controls{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;min-width:0}.media-search-box{display:flex;align-items:center;gap:8px;min-width:0;height:40px;padding:0 12px;border:.5px solid var(--border);border-radius:11px;background:var(--input-bg);color:var(--muted)}.media-search-box input{flex:1;min-width:0;height:100%;border:0;outline:0;background:transparent;color:var(--text);font-size:13px;font-weight:850}.media-type-tabs{justify-self:end}.media-result-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));align-content:start;gap:8px;block-size:282px;min-width:0;padding-right:4px;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.media-result-list>.portal-empty-line{grid-column:1 / -1;min-height:100%}.media-result-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;min-width:0;padding:9px;border:.5px solid var(--border-soft);border-radius:11px;background:var(--surface-2)}.media-result-main{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;min-width:0;padding:0;border:0;background:transparent;color:inherit;text-align:left}.media-result-main span,.media-result-main strong,.media-result-main small,.media-result-main em{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis}.media-result-main strong{color:var(--text);font-size:13px;font-weight:950;white-space:nowrap}.media-result-main small{margin-top:3px;color:var(--text-soft);font-size:11px;font-weight:850;white-space:nowrap}.media-result-main em{display:-webkit-box;margin-top:4px;color:var(--muted);font-size:10px;font-style:normal;font-weight:800;line-height:1.35;-webkit-line-clamp:2;-webkit-box-orient:vertical;white-space:normal}.media-result-side{display:flex;align-items:center;justify-content:flex-end;min-width:0}.media-download-button{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:32px;padding:0 11px;border:0;border-radius:10px;background:var(--accent);color:#fff;font-size:11px;font-weight:950;white-space:nowrap}:root[data-theme=oled] .media-download-button{color:#001f08}.media-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;align-items:start;width:100%;min-width:0}.media-list-panel,.media-detail-panel{min-width:0}.media-tabs{margin-bottom:10px}.media-request-list{display:flex;flex-direction:column;gap:8px;min-width:0}.media-request-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;min-width:0;width:100%;padding:9px;border:.5px solid var(--border-soft);border-radius:11px;background:var(--surface-2);color:var(--text);text-align:left}.media-request-row.active{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.media-request-main,.media-request-main strong,.media-request-main small,.media-request-main em{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.media-request-main strong{color:var(--text);font-size:13px;font-weight:950}.media-request-main small{margin-top:3px;color:var(--text-soft);font-size:11px;font-weight:850}.media-request-main em{margin-top:3px;color:var(--muted);font-size:10px;font-style:normal;font-weight:800}.media-poster-tile{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;width:54px;height:68px;border:.5px solid var(--border-soft);border-radius:9px;background:var(--input-bg);color:var(--accent);overflow:hidden}.media-poster-tile.large{width:92px;height:124px;border-radius:12px}.media-poster-tile img{display:block;width:100%;height:100%;object-fit:cover;border-radius:inherit}.media-poster-fallback{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;width:100%;height:100%}.media-poster-tile i{font-size:20px}.media-poster-tile.large i{font-size:30px}.media-poster-tile small{color:var(--muted);font-size:8px;font-weight:950;letter-spacing:.4px}.media-status-pill{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-height:25px;padding:0 8px;border-radius:999px;font-size:10px;font-weight:950;white-space:nowrap}.media-status-pill.green{background:#e7f6ec;color:#2f8f5b}.media-status-pill.blue{background:#e6f0ff;color:#3076c9}.media-status-pill.orange{background:#fff0de;color:#c46a18}.media-status-pill.violet{background:#eee9ff;color:#7b5be7}.media-status-pill.cyan{background:#ddf7f7;color:#1b7f83}:root[data-theme=oled] .media-status-pill.green,:root[data-theme=oled] .media-status-pill.blue,:root[data-theme=oled] .media-status-pill.orange,:root[data-theme=oled] .media-status-pill.violet,:root[data-theme=oled] .media-status-pill.cyan{background:var(--surface-2)}.media-detail-hero{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;align-items:end;min-width:0}.media-detail-hero h2{margin:10px 0 4px;color:var(--text);font-size:20px;line-height:1.16;font-weight:950}.media-detail-hero p{margin:0;color:var(--muted);font-size:12px;font-weight:850}.media-genre-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.media-genre-row span{display:inline-flex;align-items:center;min-height:24px;padding:0 8px;border:.5px solid var(--border-soft);border-radius:999px;background:var(--surface-2);color:var(--text-soft);font-size:10px;font-weight:900}.media-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:14px}.media-detail-cell{min-width:0;padding:10px;border-radius:10px;background:var(--surface-2)}.media-detail-cell span,.media-detail-cell strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.media-detail-cell span{color:var(--muted);font-size:10px;font-weight:900}.media-detail-cell strong{margin-top:4px;color:var(--text);font-size:12px;font-weight:950}.media-timeline{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-top:14px}.media-timeline div{min-width:0;padding:8px;border:.5px solid var(--border-soft);border-radius:10px;background:var(--surface-2);color:var(--muted)}.media-timeline span{display:grid;place-items:center;width:20px;height:20px;border-radius:999px;background:var(--surface);color:inherit;font-size:10px;font-weight:950}.media-timeline strong{display:block;margin-top:6px;color:inherit;font-size:10px;font-weight:950;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.media-timeline div.done,.media-timeline div.current{color:var(--accent);border-color:var(--accent)}.media-timeline div.done span,.media-timeline div.current span{background:var(--accent);color:#fff}:root[data-theme=oled] .media-timeline div.done span,:root[data-theme=oled] .media-timeline div.current span{color:#001f08}.media-timeline.declined div{opacity:.56}.media-progress{height:7px;margin-top:10px;overflow:hidden;border-radius:999px;background:var(--surface-2)}.media-progress span{display:block;height:100%;border-radius:inherit;background:var(--accent);transition:width .3s ease}.media-note-box{display:flex;flex-direction:column;gap:6px;margin-top:12px;padding:12px;border:.5px solid var(--border-soft);border-radius:10px;background:var(--surface-2)}.media-note-box strong{color:var(--text);font-size:12px;font-weight:950}.media-note-box span{color:var(--muted);font-size:11px;font-weight:800;line-height:1.55}.media-action-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px}.media-action-row button{display:flex;align-items:center;justify-content:center;gap:6px;min-height:36px;padding:0 10px;border:.5px solid var(--border-strong);border-radius:10px;background:var(--surface);color:var(--text);font-size:11px;font-weight:950}.media-action-row button:disabled{opacity:.62;cursor:not-allowed}.tasks-tabs{display:flex;align-items:center;gap:4px;width:max-content;max-width:100%;min-width:0;padding:3px;border:.5px solid var(--border);border-radius:var(--control-radius);background:var(--surface);overflow-x:auto;scrollbar-width:none}.tasks-tabs::-webkit-scrollbar{display:none}.tasks-tabs button{display:flex;align-items:center;justify-content:center;gap:6px;min-height:32px;padding:0 12px;border:0;border-radius:8px;background:transparent;color:var(--muted);font-size:12px;font-weight:950;white-space:nowrap}.tasks-tabs button.active{background:var(--accent);color:#fff}.tasks-page-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;min-width:0}.tasks-page-toolbar .portal-header-actions{flex:0 0 auto;width:auto}.portal-panel-head>.media-api-status{min-width:0;max-width:60%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.flux-photo-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;min-width:0}:root[data-theme=oled] .tasks-tabs button.active{color:#001f08}.tasks-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.42fr);gap:12px;width:100%;min-width:0;align-items:start}.tasks-list{display:flex;flex-direction:column;gap:8px;min-width:0}.task-row{display:grid;grid-template-columns:34px 6px minmax(0,1fr) auto;align-items:center;gap:9px;min-width:0;width:100%;padding:9px;border:.5px solid var(--border-soft);border-radius:10px;background:var(--surface-2);color:inherit;text-align:left}.task-row.selected{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.task-select:focus-visible,.task-check:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.task-check{display:grid;place-items:center;width:34px;height:34px;border:.5px solid var(--border-strong);border-radius:10px;background:var(--surface);color:var(--muted)}.task-check.done{border-color:var(--accent);background:var(--accent);color:#fff}:root[data-theme=oled] .task-check.done{color:#001f08}.task-tone{display:block;width:6px;height:36px;border-radius:999px}.task-select{grid-column:3 / 5;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:9px;min-width:0;width:100%;padding:0;border:0;background:transparent;color:inherit;text-align:left}.task-main,.task-meta,.task-main strong,.task-main em,.task-meta strong,.task-meta em{display:block;min-width:0}.task-main strong{color:var(--text);font-size:13px;font-weight:950;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-main em{margin-top:3px;color:var(--muted);font-size:10px;font-style:normal;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-meta{min-width:54px;text-align:right}.task-meta strong{color:var(--text-soft);font-size:11px;font-weight:950}.task-meta em{margin-top:3px;color:var(--muted);font-size:10px;font-style:normal;font-weight:850}.task-detail-panel{position:sticky;top:0}.task-detail{display:flex;flex-direction:column;gap:10px;min-width:0}.task-detail-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;font-size:21px}.task-detail>strong{color:var(--text);font-size:17px;font-weight:950;line-height:1.25}.task-detail p{margin:0;color:var(--muted);font-size:12px;font-weight:800;line-height:1.45}.task-detail dl{display:grid;grid-template-columns:1fr;gap:6px}.task-detail dl div{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:32px;padding:0 9px;border-radius:9px;background:var(--surface-2)}.task-detail dt{color:var(--muted);font-size:10px;font-weight:900}.task-detail dd{color:var(--text);font-size:11px;font-weight:950}.task-detail>button{display:flex;align-items:center;justify-content:center;gap:7px;min-height:36px;border:0;border-radius:10px;background:var(--accent);color:#fff;font-size:12px;font-weight:950}:root[data-theme=oled] .task-detail>button{color:#001f08}.task-editor-form{display:flex;flex-direction:column;gap:10px;min-width:0}.task-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.task-form-field{display:flex;flex-direction:column;gap:5px;min-width:0}.task-form-field.wide{width:100%}.task-form-field span{color:var(--muted);font-size:10px;font-weight:950}.task-form-field input,.task-form-field select,.task-form-field textarea{width:100%;min-width:0;border:.5px solid var(--border);border-radius:9px;background:var(--input-bg);color:var(--text);font-size:12px;font-weight:850}.task-form-field input,.task-form-field select{height:36px;padding:0 10px}.task-form-field textarea{resize:vertical;min-height:96px;padding:10px;line-height:1.45}.task-editor-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;min-width:0;padding-top:2px}.task-editor-actions button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:36px;padding:0 11px;border:.5px solid var(--border-strong);border-radius:10px;background:var(--surface-2);color:var(--text);font-size:12px;font-weight:950}.task-editor-actions button.primary{border-color:var(--accent);background:var(--accent);color:#fff}.task-editor-actions button.danger{border-color:#dc262652;color:#dc2626}.task-editor-actions button:disabled{opacity:.58;cursor:not-allowed}:root[data-theme=oled] .task-editor-actions button.primary{color:#001f08}@media (max-width:1120px){.portal-summary-grid,.home-control-actions,.home-room-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:820px){.portal-header{align-items:stretch;flex-direction:column}.portal-header-actions{width:100%;justify-content:flex-end}.tasks-page-toolbar .portal-header-actions{width:auto}.portal-home-grid,.portal-home-grid.secondary,.tasks-layout,.media-layout,.media-search-controls{grid-template-columns:1fr}.media-type-tabs{justify-self:stretch;width:100%}.task-detail-panel{position:static}.portal-link-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-control-top,.home-weather-panel{grid-template-columns:1fr}.home-control-signals{grid-template-columns:repeat(4,minmax(0,1fr))}.home-room-grid,.home-room-grid-control{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:700px){.portal-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tasks-tabs{width:100%}.tasks-tabs button{flex:1;min-width:0}.tasks-page-toolbar{align-items:stretch}.tasks-page-toolbar .tasks-tabs{flex:1 1 auto;width:auto}.portal-panel{padding:12px;border-radius:10px}.home-control-signals{grid-template-columns:repeat(2,minmax(0,1fr))}.home-weather-metrics{grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible;padding-bottom:0}.home-weather-metrics span{min-height:34px;padding:0 9px;white-space:normal}.home-control-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.home-signal-tile{min-height:86px}.home-room-control-rail{display:grid;grid-template-columns:1fr}.home-control-chip{justify-content:flex-start;width:100%}.home-dimmer-control{grid-template-columns:1fr;width:100%}.home-dimmer-control label{grid-template-columns:44px minmax(0,1fr)}}@media (max-width:420px){.portal-header h1{font-size:21px}.portal-header-actions button,.media-open-link{flex:1;min-width:0;padding:0 9px}.media-integration-pill{width:100%}.media-toast{top:10px;right:10px;width:calc(100vw - 20px)}.media-season-backdrop{padding:8px}.media-season-dialog{max-height:calc(100dvh - 16px);border-radius:12px}.media-season-head{padding:12px}.media-season-title{gap:9px}.media-season-title .media-poster-tile{width:42px;height:54px}.media-season-tools,.media-season-list,.media-season-footer{padding-left:12px;padding-right:12px}.media-season-row{grid-template-columns:30px minmax(0,1fr)}.media-season-status{grid-column:2;justify-self:start}.media-season-footer{align-items:stretch;flex-direction:column}.media-season-footer>div{display:grid;grid-template-columns:1fr 1.4fr}.portal-summary-grid{gap:6px}.portal-summary-card{min-height:64px;padding:10px}.portal-summary-card i{display:none}.portal-link-grid{grid-template-columns:1fr}.portal-timeline article{grid-template-columns:62px minmax(0,1fr);gap:8px}.task-row{grid-template-columns:32px 5px minmax(0,1fr);gap:8px}.portal-media-home-grid{grid-template-columns:1fr}.portal-media-latest{grid-template-columns:48px minmax(0,1fr);gap:10px}.home-control-head{align-items:stretch;flex-direction:column}.home-control-health{align-self:flex-start}.home-control-weather{min-height:104px}.home-control-weather strong{font-size:28px}.home-action-button{justify-content:flex-start;min-height:44px}.home-primary-action-row .home-action-button{width:100%}.home-room-toolbar{align-items:stretch;flex-direction:column}.home-room-toolbar button{width:100%}.home-room-grid{grid-template-columns:1fr}.home-room-card{min-height:auto}.portal-media-latest>i{display:none}.portal-media-poster{width:48px;height:64px}.media-request-row{grid-template-columns:minmax(0,1fr) auto;gap:8px}.media-result-card{grid-template-columns:1fr}.media-result-list{grid-template-columns:1fr;block-size:402px}.media-result-side{justify-content:stretch}.media-result-side>*{width:100%}.media-request-row .media-poster-tile{display:none}.media-detail-hero{grid-template-columns:68px minmax(0,1fr);gap:10px}.media-poster-tile.large{width:68px;height:92px}.media-detail-grid,.media-action-row{grid-template-columns:1fr}.task-select{grid-column:3;grid-template-columns:minmax(0,1fr);gap:4px}.task-meta{display:flex;justify-content:space-between;text-align:left}.task-form-grid{grid-template-columns:1fr}.task-editor-actions{justify-content:stretch}.task-editor-actions button{flex:1 1 auto}}@media (prefers-color-scheme: dark){.finance-summary-card.green i{color:#8eeb95}}@media (max-width:700px){.calendar-page-header{align-items:stretch;flex-direction:column;gap:8px}.calendar-page-header .calendar-title-row{width:100%;justify-content:center}.calendar-header-actions{width:100%;margin-left:0;justify-content:flex-end}.finance-header,.flightlog-header{align-items:stretch;flex-direction:column}.flightlog-header-actions{width:100%;justify-content:flex-end}.finance-tabs,.calendar-page-tabs,.flightlog-tabs{width:100%}.flightlog-header-actions .flightlog-tabs{width:auto;flex:1 1 auto}.finance-tabs button,.calendar-page-tabs button,.flightlog-tabs button{flex:1;min-width:0;justify-content:center;padding-left:8px;padding-right:8px}.finance-period-panel{align-items:stretch;flex-direction:column}.finance-period-panel>div:first-child{min-width:0}.finance-period-tabs{width:100%}.finance-period-tabs button{flex:1;width:auto}.finance-summary-grid,.finance-import-summary,.calendar-summary-grid,.flightlog-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.finance-summary-card{padding:10px}.finance-summary-card strong{font-size:13px}.finance-cell{min-height:58px;padding:4px 3px}.finance-date{width:18px;height:18px;font-size:10px}.finance-day-amount{font-size:9px;padding:1px 3px}.finance-stats-grid,.flight-portal-grid,.flightlog-panels,.flightlog-stats-grid,.flightlog-transfer-grid,.flightlog-export-actions,.career-route-layout{grid-template-columns:1fr}.career-route-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.career-route-map{min-height:260px}.sigwx-apk-topbar{grid-template-columns:minmax(0,1fr) auto auto}.sigwx-apk-map .enroute-route-map{min-height:min(640px,calc(100dvh - 142px))}.sigwx-apk-route-badge{left:10px;right:10px;max-width:none}.sigwx-apk-status{top:auto;left:10px;right:10px;bottom:128px;max-width:none}.sigwx-apk-time-card{bottom:82px}.sigwx-apk-map .sigmet-detail-panel{max-height:50%}.airport-pair-grid{grid-template-columns:1fr}.livewx-airport-grid{padding:10px}.livewx-apk-topbar{padding:8px 10px}.finance-panel{padding:12px;border-radius:10px}.finance-panel-head{align-items:flex-start;flex-direction:column;gap:7px}.finance-chart-toggle{width:100%}.finance-donut-layout{grid-template-columns:1fr;justify-items:center}.finance-donut{width:min(190px,70vw)}.finance-chart-legend{width:100%}.finance-search{width:100%;min-width:0}.finance-transaction{grid-template-columns:3px 30px minmax(0,1fr);gap:8px}.finance-transaction-side{grid-column:3;flex-direction:row;justify-content:space-between;align-items:center;width:100%}.finance-transaction-icon{width:30px;height:30px;border-radius:8px}.finance-preview-list div{grid-template-columns:68px minmax(0,1fr)}.finance-preview-list em{grid-column:2;color:var(--muted);font-size:10px}.flightlog-row{grid-template-columns:minmax(0,1fr)}.flightlog-times{grid-template-columns:repeat(4,auto);justify-content:flex-start}.flightlog-side{align-items:flex-start;flex-direction:row;justify-content:space-between}.flightlog-row-actions{margin-left:auto}.flightlog-editor{max-height:92vh;border-radius:12px}.flightlog-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:420px){.finance-summary-grid,.finance-import-summary,.calendar-summary-grid,.flightlog-summary-grid{gap:6px}.finance-summary-card i{display:none}.portal-photo-frame,.portal-photo-frame img{min-height:220px}.portal-photo-frame img{height:260px}.portal-photo-frame figcaption{padding:12px}.portal-photo-frame strong{font-size:15px}.portal-photo-frame span{font-size:10px}.career-route-summary{grid-template-columns:1fr}.career-route-map-wrap{overflow-x:auto}.career-route-map{min-width:520px;min-height:240px}.sigwx-apk-panel,.finance-panel.livewx-apk-panel{border-radius:0;margin-left:-12px;margin-right:-12px}.livewx-apk-topbar{gap:8px}.livewx-apk-title>i{width:28px;height:28px;font-size:15px}.livewx-apk-title strong{font-size:15px}.livewx-apk-refresh{min-height:30px;padding:0 8px;font-size:9px}.livewx-airport-grid{padding:10px}.livewx-apk-panel .airport-card-head strong{font-size:24px}.livewx-report-strip span{font-size:8px}.livewx-current-console{grid-template-columns:1fr}.livewx-current-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.livewx-daily-strip{grid-column:1}.livewx-daily-strip>div{flex-basis:58px}.sigwx-apk-topbar{grid-template-columns:minmax(0,1fr) auto;gap:6px;padding:8px}.sigwx-apk-refresh{display:none}.sigwx-apk-title strong{font-size:15px}.sigwx-apk-mode button{min-width:54px;padding:0 8px;font-size:10px}.sigwx-jepp-map-shell{overflow:hidden}.sigwx-apk-map .enroute-route-map{min-width:0;min-height:min(620px,calc(100dvh - 134px))}.sigwx-apk-route-badge{top:10px;padding:7px 9px}.sigwx-apk-route-badge strong{font-size:12px}.sigwx-apk-status{display:none}.sigmet-fl-ruler{left:8px;top:64px;bottom:112px;width:36px}.sigmet-fl-ruler span{font-size:9px}.sigwx-apk-time-card{bottom:78px;grid-template-columns:28px minmax(118px,auto) 28px}.sigwx-apk-time-card strong{font-size:12px}.sigwx-apk-bottom{padding:8px 10px 10px}.sigwx-apk-timeline button{flex-basis:46px;font-size:9px}.sigwx-apk-legend{gap:6px}.sigwx-apk-legend button,.sigwx-apk-legend .sigmet-hazard-chip{font-size:8px}.sigwx-apk-map .sigmet-detail-panel{max-height:54%;padding:12px 12px 14px;border-radius:14px 14px 0 0}.sigwx-apk-map .sigmet-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sigwx-apk-map .sigmet-raw-text{max-height:96px}.finance-dow{padding:6px 0;font-size:9px}.finance-cell{min-height:48px;gap:3px}.finance-day-amount{width:100%;text-align:center}.finance-tabs button i,.calendar-page-tabs button i,.flightlog-tabs button i{display:none}.calendar-header-actions{gap:6px}.calendar-page-tabs button{font-size:11px}.calendar-add-button{padding:0 10px}.calendar-panel{padding:14px 12px}.flightlog-times{grid-template-columns:repeat(2,auto)}.flight-portal-flight-card{grid-template-columns:minmax(0,1fr)}.flight-portal-flight-side{align-items:flex-start;flex-direction:row;justify-content:space-between}.airport-card-head strong{font-size:22px}.airport-weather-board{grid-template-columns:repeat(2,minmax(0,1fr))}.airport-runway-visual{height:132px}.flightlog-header-actions{align-items:stretch;flex-direction:column}.flightlog-header-actions .flightlog-tabs,.flightlog-add-button{width:100%}.flightlog-form-grid,.flightlog-photo-actions{grid-template-columns:1fr}.flightlog-editor-backdrop{padding:10px}.flightlog-editor form{padding:12px}}@media (max-width:1024px){.calendar-page-header{align-items:stretch;flex-direction:column}.calendar-page-header .calendar-title-row{width:100%;justify-content:center}.calendar-header-actions{width:100%;margin-left:0;justify-content:flex-end}.calendar-page-tabs{flex:1 1 auto}}@media (max-width:820px){.flightlog-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:420px){.flightlog-form-grid{grid-template-columns:1fr}}.flux-home-app{background:#05050a}.flux-home-center{padding:20px;background:linear-gradient(180deg,#05050a,#070817 45%,#130826)}.flux-home-page{width:100%;max-width:1320px;margin:0 auto;color:#f7f3ff}.flux-home-page,.flux-home-page *{letter-spacing:0}.flux-home-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;min-width:0;margin-bottom:16px}.flux-home-title-block{min-width:0}.flux-home-status-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-width:0;margin-bottom:10px}.flux-home-status-row span,.flux-account-chip,.flux-chip,.flux-signal,.flux-signal-action,.flux-room-controls button,.flux-room-ok{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:0;min-height:30px;padding:0 10px;border:.5px solid rgba(255,255,255,.11);border-radius:999px;background:#ffffff14;color:#f7f3ff;font-size:11px;font-weight:850;white-space:nowrap}.flux-home-status-row span,.flux-account-chip{color:#d9d2ea}.flux-home-status-row i,.flux-account-chip i,.flux-chip i{color:#e9b6ff;font-size:14px}.flux-home-title-block h1{color:#fff;font-size:38px;line-height:1;font-weight:950}.flux-home-title-block p{margin-top:8px;color:#bdb2d2;font-size:13px;line-height:1.45;font-weight:760}.flux-home-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex:0 0 auto}.flux-icon-button,.flux-primary-button,.flux-link-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:.5px solid rgba(255,255,255,.14);background:#ffffff14;color:#fff;font-weight:900;white-space:nowrap}.flux-icon-button{width:42px;height:42px;padding:0;border-radius:14px}.flux-primary-button{min-height:42px;padding:0 15px;border-radius:14px;background:linear-gradient(135deg,#9c5afff5,#2d9dffeb);box-shadow:0 14px 34px #5b50ff47}.flux-icon-button.glass{background:#0a08166b;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.flux-home-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:14px;min-width:0}.flux-card,.flux-room-section{position:relative;min-width:0;overflow:hidden;border:.5px solid rgba(255,255,255,.1);border-radius:20px;background:linear-gradient(180deg,#ffffff1c,#ffffff0e),#0d0c1bbd;box-shadow:0 24px 70px #00000061}.flux-card{padding:16px}.flux-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;min-width:0;margin-bottom:14px}.flux-card-head div{min-width:0}.flux-kicker{display:block;margin-bottom:4px;color:#a399b8;font-size:10px;line-height:1.1;font-weight:950;text-transform:uppercase;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.flux-card h2{color:#fff;font-size:17px;line-height:1.15;font-weight:950;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.flux-chip.cyan,.flux-signal.cyan{--flux-accent:#3be8ff}.flux-chip.blue,.flux-signal.blue{--flux-accent:#4f8dff}.flux-chip.violet,.flux-signal.violet{--flux-accent:#a875ff}.flux-chip.rose,.flux-signal.rose{--flux-accent:#ff74c7}.flux-chip.amber,.flux-signal.amber{--flux-accent:#ffc247}.flux-chip.mint,.flux-signal.mint{--flux-accent:#62f1b5}.flux-chip,.flux-signal{color:var(--flux-accent, #e9b6ff);border-color:color-mix(in srgb,var(--flux-accent, #e9b6ff) 30%,rgba(255,255,255,.12));background:color-mix(in srgb,var(--flux-accent, #e9b6ff) 15%,rgba(255,255,255,.07))}.flux-photo-card{grid-column:span 7;min-height:402px;padding:0}.flux-photo-card img{display:block;width:100%;height:100%;min-height:402px;object-fit:cover;filter:saturate(1.05) contrast(1.02)}.flux-photo-card:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#05050a0a,#05050a3d 48%,#05050ab8);pointer-events:none}.flux-photo-fallback{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;width:100%;min-height:402px;padding:24px;color:#f7f3ff;text-align:center;background:radial-gradient(circle at 28% 18%,rgba(255,116,199,.24),transparent 34%),radial-gradient(circle at 82% 72%,rgba(67,231,255,.18),transparent 38%),#ffffff0d}.flux-photo-fallback i{color:#e9b6ff;font-size:34px}.flux-photo-fallback strong,.flux-photo-fallback small{max-width:100%;overflow:hidden;text-overflow:ellipsis}.flux-photo-fallback strong{color:#fff;font-size:16px;font-weight:950;white-space:nowrap}.flux-photo-fallback small{color:#c9bed8;font-size:12px;font-weight:800}.flux-photo-overlay{position:absolute;left:16px;right:16px;bottom:16px;z-index:1;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;min-width:0;padding:12px;border:.5px solid rgba(255,255,255,.14);border-radius:16px;background:#0e0c1a85;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.flux-photo-overlay div{min-width:0}.flux-photo-overlay strong,.flux-photo-overlay small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.flux-photo-overlay strong{color:#fff;font-size:17px;font-weight:950}.flux-photo-overlay small{margin-top:3px;color:#d8cfe7;font-size:12px;font-weight:800}.flux-weather-card{grid-column:span 5;min-height:402px}.flux-weather-main{display:flex;flex-direction:column;gap:7px;min-width:0}.flux-weather-main strong{color:#fff;font-size:46px;line-height:1;font-weight:950}.flux-weather-main span{color:#c9bed8;font-size:13px;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.flux-weather-chart{display:block;width:100%;height:132px;margin:18px 0 16px;overflow:visible}.flux-weather-chart path{fill:none;stroke-linecap:round;stroke-width:4}.flux-weather-chart path:first-child{stroke:#ff8f4d;filter:drop-shadow(0 0 10px rgba(255,143,77,.28))}.flux-weather-chart path:last-child{stroke:#b479ff;filter:drop-shadow(0 0 10px rgba(180,121,255,.26))}.flux-weather-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.flux-weather-metrics span{display:flex;align-items:center;justify-content:center;gap:6px;min-width:0;min-height:44px;padding:0 8px;border:.5px solid rgba(255,255,255,.1);border-radius:14px;background:#ffffff12;color:#e7def2;font-size:10px;font-weight:850;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.flux-today-card,.flux-task-card,.flux-media-card{grid-column:span 4}.flux-room-section{grid-column:span 8;padding:16px}.flux-event-list,.flux-task-list{display:flex;flex-direction:column;gap:8px;min-width:0}.flux-event-list article,.flux-task-item{display:grid;grid-template-columns:78px minmax(0,1fr);align-items:center;gap:10px;min-width:0;min-height:64px;padding:10px;border:.5px solid rgba(255,255,255,.1);border-radius:16px;background:#ffffff12}.flux-event-list time{display:flex;flex-direction:column;align-items:flex-start;gap:3px;min-width:0}.flux-event-list time span,.flux-event-list small,.flux-task-item small{color:#aa9fbb;font-size:10px;font-weight:850}.flux-event-list time strong{color:#fff;font-size:16px;line-height:1;font-weight:950}.flux-event-list div,.flux-event-list strong,.flux-event-list small,.flux-task-item span,.flux-task-item strong,.flux-task-item small{min-width:0;overflow:hidden;text-overflow:ellipsis}.flux-event-list div>strong,.flux-task-item strong{display:block;color:#fff;font-size:13px;line-height:1.22;font-weight:950;white-space:nowrap}.flux-event-list small,.flux-task-item small{display:block;margin-top:4px;white-space:nowrap}.flux-task-item{grid-template-columns:22px minmax(0,1fr);width:100%;color:#fff;text-align:left;cursor:pointer}.flux-task-item i{color:var(--task-accent);font-size:13px}.flux-task-item.amber{--task-accent:#ffc247}.flux-task-item.blue{--task-accent:#4f8dff}.flux-task-item.violet{--task-accent:#a875ff}.flux-task-item.mint{--task-accent:#62f1b5}.flux-link-button{min-height:32px;padding:0 10px;border-radius:999px;color:#ded6ed;font-size:11px;cursor:pointer}.flux-empty-state{display:flex;align-items:center;justify-content:center;gap:8px;min-height:74px;padding:12px;border:.5px dashed rgba(255,255,255,.16);border-radius:16px;background:#ffffff0b;color:#c9bed8;font-size:12px;font-weight:850;text-align:center}.flux-empty-state i{color:#e9b6ff;font-size:16px}.flux-signal-row{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;min-width:0;margin-bottom:12px}.flux-signal{flex-direction:column;align-items:flex-start;justify-content:center;min-height:72px;padding:10px;border-radius:16px}.flux-signal-action{flex-direction:column;align-items:flex-start;justify-content:center;min-height:72px;padding:10px;border-color:#ffffff1f;background:linear-gradient(135deg,#9c5afff5,#2d9dffeb);color:#fff;cursor:pointer;box-shadow:0 12px 30px #5b50ff38}.flux-signal-action i{font-size:17px}.flux-signal-action small{color:#ffffffc7;font-size:10px;font-weight:850}.flux-signal-action strong{color:#fff;font-size:15px;line-height:1.05;font-weight:950}.flux-signal i{font-size:17px}.flux-signal small{color:#c9bed8;font-size:10px;font-weight:850}.flux-signal strong{color:#fff;font-size:19px;line-height:1;font-weight:950}.flux-room-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;min-width:0}.ha-mock-summary{margin-bottom:22px}.flux-room-card{--room-accent:#79dcff;position:relative;display:flex;flex-direction:column;justify-content:space-between;gap:12px;min-width:0;min-height:186px;padding:13px;border:.5px solid color-mix(in srgb,var(--room-accent) 30%,rgba(255,255,255,.08));border-radius:18px;background:linear-gradient(150deg,color-mix(in srgb,var(--room-accent) 22%,rgba(255,255,255,.08)),#ffffff0e 62%),#ffffff0f}.flux-room-card.cyan{--room-accent:#43e7ff}.flux-room-card.blue{--room-accent:#6ea0ff}.flux-room-card.violet{--room-accent:#a875ff}.flux-room-card.rose{--room-accent:#ff74c7}.flux-room-card.amber{--room-accent:#ffc247}.flux-room-card.mint{--room-accent:#62f1b5}.flux-room-top{display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:10px;min-width:0}.flux-room-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:15px;background:#ffffff1f;color:var(--room-accent);font-size:22px}.flux-room-top div,.flux-room-top strong,.flux-room-top small,.flux-room-card p{min-width:0}.flux-room-top strong,.flux-room-top small,.flux-room-card p{display:block;overflow:hidden;text-overflow:ellipsis}.flux-room-top strong{color:#fff;font-size:15px;line-height:1.15;font-weight:950;white-space:nowrap}.flux-room-top small{margin-top:3px;color:#ded6ed;font-size:11px;font-weight:850;white-space:nowrap}.flux-room-card p{color:#d3c9e1;font-size:12px;line-height:1.35;font-weight:850;white-space:nowrap}.flux-room-controls{display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-width:0}.flux-room-controls button{min-height:38px;padding:0 11px;color:#efe7ff;cursor:pointer}.flux-room-controls button.active,.flux-room-ok{color:#061018;border-color:transparent;background:var(--room-accent)}.flux-room-dimmer{display:grid;grid-template-columns:auto minmax(90px,1fr);align-items:center;gap:8px;flex:1 1 180px;min-width:0}.flux-room-dimmer label{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:8px;min-width:0}.flux-room-dimmer label span{color:#d3c9e1;font-size:10px;font-weight:950;text-align:right}.flux-room-dimmer input{width:100%;accent-color:var(--room-accent)}.flux-media-strip{display:flex;gap:10px;min-width:0;overflow-x:auto;padding-bottom:2px}.flux-media-item{display:grid;grid-template-columns:54px minmax(0,1fr) auto;align-items:center;gap:10px;flex:0 0 220px;min-height:82px;padding:9px;border:.5px solid rgba(255,255,255,.1);border-radius:16px;background:#ffffff12;color:#fff;text-align:left;cursor:pointer}.flux-media-item img{display:block;width:54px;height:66px;border-radius:10px;object-fit:cover}.flux-media-latest{width:100%;min-height:96px}.flux-media-thumb{display:grid;place-items:center;width:54px;height:66px;border-radius:10px;background:#ffffff1a;color:#e9b6ff;font-size:24px}.flux-media-item span,.flux-media-item strong,.flux-media-item small{min-width:0;overflow:hidden;text-overflow:ellipsis}.flux-media-item strong,.flux-media-item small{display:block;white-space:nowrap}.flux-media-item strong{color:#fff;font-size:13px;line-height:1.2;font-weight:950}.flux-media-item small{margin-top:5px;color:#bfb4d2;font-size:10px;font-weight:850}@media (max-width:1180px){.flux-photo-card,.flux-weather-card,.flux-room-section,.flux-media-card{grid-column:span 12}.flux-today-card,.flux-task-card{grid-column:span 6}.flux-weather-card{min-height:0}.flux-room-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:760px){.flux-home-center{padding:14px 12px 18px}.flux-home-header{flex-direction:column;align-items:stretch}.flux-home-header-actions{justify-content:space-between}.flux-primary-button{flex:1 1 auto}.flux-home-title-block h1{font-size:32px}.flux-photo-card,.flux-photo-card img{min-height:286px}.flux-today-card,.flux-task-card{grid-column:span 12}.flux-weather-metrics,.flux-signal-row{grid-template-columns:repeat(2,minmax(0,1fr))}.flux-room-grid{grid-template-columns:1fr}.flux-photo-overlay{grid-template-columns:minmax(0,1fr) auto}.flux-photo-overlay .flux-chip{grid-column:1 / -1;justify-content:flex-start}}.ha-home-actions,.ha-control-actions{display:flex;align-items:center;gap:10px;min-width:0;margin-bottom:12px}.ha-home-actions .flux-signal-action{flex:0 0 auto;flex-direction:row;min-height:44px;padding:0 14px;border-radius:14px}.ha-home-actions .flux-signal-action strong{font-size:12px}.ha-home-actions button:disabled,.ha-control-page button:disabled,.flux-room-card button:disabled,.flux-room-card input:disabled{cursor:not-allowed;opacity:.48}.ha-expand-rooms,.ha-back-button,.ha-refresh-button,.ha-all-lights-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:0 13px;border:.5px solid rgba(255,255,255,.13);border-radius:14px;background:#ffffff12;color:#eee8f7;font-size:12px;font-weight:900}.ha-expand-rooms{margin-left:auto}.ha-inline-status,.ha-status-banner{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;min-width:0;min-height:44px;margin-bottom:12px;padding:8px 10px;border:.5px solid rgba(255,194,71,.3);border-radius:14px;background:#ffc2471a;color:#f3dfb2;font-size:11px;font-weight:800}.ha-inline-status button{display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;background:transparent;color:inherit}.ha-weather-detail{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:24px}.ha-weather-detail>span,.ha-weather-forecast>span{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:2px 7px;min-width:0;min-height:64px;padding:9px;border:.5px solid rgba(255,255,255,.1);border-radius:14px;background:#fff1}.ha-weather-detail i{grid-row:span 2;color:#79dcff;font-size:18px}.ha-weather-detail small,.ha-weather-forecast small{color:#aaa0ba;font-size:9px;font-weight:850}.ha-weather-detail strong,.ha-weather-forecast strong{color:#fff;font-size:13px;font-weight:950}.ha-weather-forecast{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;margin-top:10px}.ha-weather-forecast:empty{display:none}.ha-weather-forecast>span{display:flex;flex-direction:column;justify-content:center;min-height:70px;padding:7px 4px;text-align:center}.ha-weather-forecast i{color:#b479ff;font-size:17px}.ha-weather-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;min-height:250px;color:#c9bed8;font-size:12px;font-weight:850;text-align:center}.ha-weather-empty i{color:#79dcff;font-size:28px}.ha-device-row{display:flex;flex-direction:column;gap:9px;min-width:0;padding-top:11px;border-top:.5px solid rgba(255,255,255,.1)}.ha-device-head,.ha-device-label{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}.ha-device-head>span,.ha-device-label>span{display:flex;align-items:center;gap:7px;min-width:0;color:#f6f1fb;font-size:12px;font-weight:900}.ha-device-head>span i,.ha-device-label>span i{color:var(--room-accent);font-size:16px}.ha-device-label small{color:#c5bbd2;font-size:10px;font-weight:800}.ha-light-action{display:flex;align-items:center;justify-content:flex-end;gap:8px;min-width:0}.ha-light-action small{color:#c5bbd2;font-size:10px;font-weight:850;white-space:nowrap}.ha-power-button,.ha-cover-actions button{display:grid;place-items:center;flex:0 0 auto;width:44px;height:44px;padding:0;border:.5px solid rgba(255,255,255,.13);border-radius:13px;background:#ffffff12;color:#d7cede}.ha-power-button.active{border-color:transparent;background:var(--room-accent);color:#071016}.ha-brightness{display:grid;grid-template-columns:70px minmax(0,1fr);align-items:center;gap:8px;min-width:0}.ha-brightness span{color:#cfc5da;font-size:10px;font-weight:800}.ha-brightness strong{color:#fff;font-size:11px}.ha-brightness input{width:100%;height:44px;margin:0;accent-color:var(--room-accent)}.ha-cover-actions{display:grid;grid-template-columns:repeat(3,44px);gap:7px}.ha-climate-summary{display:flex!important;align-items:center;min-height:44px;margin:0;white-space:normal!important}.ha-climate-summary i{color:var(--room-accent);font-size:16px}.ha-climate-values{display:grid;grid-template-columns:1fr 1fr;gap:8px}.ha-climate-values>span,.ha-climate-values label{display:flex;align-items:center;justify-content:space-between;gap:7px;min-height:44px;padding:0 10px;border-radius:12px;background:#fff1;color:#cfc5da;font-size:10px;font-weight:850}.ha-climate-values strong{color:#fff;font-size:14px}.ha-climate-values input{width:66px;min-height:36px;padding:0 7px;border:0;border-radius:9px;background:#00000040;color:#fff;font-weight:900}.ha-mode-buttons{display:flex;flex-wrap:wrap;gap:7px}.ha-mode-buttons button{min-height:44px;padding:0 12px;border:.5px solid rgba(255,255,255,.12);border-radius:12px;background:#ffffff0f;color:#d9cfdf;font-size:10px;font-weight:900}.ha-mode-buttons button.active{background:var(--room-accent);color:#071016}.ha-fan-mode{display:grid;grid-template-columns:auto minmax(120px,1fr);align-items:center;gap:10px;min-height:44px}.ha-fan-mode>span{display:flex;align-items:center;gap:7px;color:#d9cfdf;font-size:11px;font-weight:900}.ha-fan-mode>span i{color:var(--room-accent);font-size:16px}.ha-fan-mode select{width:100%;min-height:44px;padding:0 34px 0 12px;border:.5px solid rgba(255,255,255,.13);border-radius:12px;background:#ffffff12;color:#f6f1fb;font-size:11px;font-weight:900}.ha-fan-mode option{background:#19171f;color:#fff}.ha-control-page{width:100%;max-width:1280px;margin:0 auto;color:#f7f3ff}.ha-control-toolbar{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;margin-bottom:12px}.ha-control-toolbar>span{color:#aaa0ba;font-size:11px;font-weight:800;text-align:right}.ha-refresh-button{width:44px;padding:0}.ha-all-lights-button{border-color:#4f8dff5c;background:#4f8dff2b;color:#dfe9ff}.ha-room-grid.full{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;min-width:0}.ha-room-grid.full .flux-room-card{min-height:230px}.ha-room-skeleton{min-height:230px;border:.5px solid rgba(255,255,255,.08);border-radius:18px;background:linear-gradient(100deg,#ffffff0d 20%,#ffffff1c,#ffffff0d 60%);background-size:220% 100%;animation:ha-skeleton 1.4s ease-in-out infinite}@keyframes ha-skeleton{to{background-position:-220% 0}}.ha-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;min-height:180px;padding:20px;border:.5px dashed rgba(255,255,255,.14);border-radius:16px;color:#aaa0ba;text-align:center}.ha-empty-state i{color:#b479ff;font-size:26px}.ha-empty-state strong{color:#fff;font-size:14px}.ha-empty-state span{font-size:11px}@media (max-width:1279px){.ha-room-grid.full{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:599px){.ha-room-grid.full,.flux-room-grid{grid-template-columns:1fr}.ha-home-actions{align-items:stretch}.ha-expand-rooms{margin-left:0}.ha-weather-detail{grid-template-columns:repeat(3,minmax(0,1fr))}.ha-weather-forecast{grid-template-columns:repeat(5,72px);overflow-x:auto}}@media (max-width:359px){.ha-home-actions{flex-direction:column}.ha-home-actions>button{width:100%}.ha-weather-detail{grid-template-columns:1fr}.ha-weather-detail>span{min-height:48px}.ha-cover-actions{grid-template-columns:repeat(3,minmax(44px,1fr))}.ha-climate-values{grid-template-columns:1fr}.ha-device-head{align-items:flex-start}.ha-light-action{gap:6px}.ha-light-action small{max-width:72px;overflow:hidden;text-overflow:ellipsis}.ha-fan-mode{grid-template-columns:1fr;gap:5px}}:root[data-theme=light] .flux-home-shell{--app-bg:#f5f4f8;--surface:#ffffff;--surface-2:#f0edf6;--soft:#f7f5fa;--input-bg:#f8f7fa;--text:#201c27;--text-soft:#47404f;--muted:#71697c;--faint:#9b93a4;--border:rgba(33,26,44,.1);--border-soft:rgba(33,26,44,.07);--border-strong:rgba(33,26,44,.16);--accent:#7552d6;--accent-soft:rgba(117,82,214,.12);--accent-muted:#8a72c7;--danger:#b33b2e;--danger-bg:#fff0ed;--danger-border:rgba(179,59,46,.22);--shadow:0 14px 38px rgba(54,43,72,.12);color-scheme:light}.app-shell.apple-home-app{min-height:100dvh;background:#060608}.apple-home-app .main-area,.apple-home-app .apple-home-center{width:100%;min-width:0;max-width:none;margin:0;padding:0}.apple-home-mock{--apple-bg:#060608;--apple-panel:rgba(27,27,32,.92);--apple-panel-solid:#1b1b20;--apple-panel-raised:#24242b;--apple-control:#2d2d35;--apple-text:#f7f7fa;--apple-soft:#d2d2d8;--apple-muted:#96969f;--apple-border:rgba(255,255,255,.1);--apple-border-strong:rgba(255,255,255,.18);--apple-blue:#6ba3ff;--apple-cyan:#58d7df;--apple-amber:#ffd15c;--apple-green:#57d49b;--apple-pink:#ff7bab;min-height:100dvh;padding:24px max(22px,env(safe-area-inset-left)) calc(34px + env(safe-area-inset-bottom));color:var(--apple-text);background:var(--apple-bg);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Noto Sans KR,sans-serif;font-size:15px;line-height:1.4;letter-spacing:0;font-optical-sizing:auto;-webkit-font-smoothing:antialiased}.apple-home-mock *,.apple-home-mock *:before,.apple-home-mock *:after{box-sizing:border-box}.apple-home-mock button{font:inherit;letter-spacing:0;-webkit-tap-highlight-color:transparent}.apple-home-mock button:focus-visible{outline:3px solid color-mix(in srgb,var(--apple-blue) 70%,white);outline-offset:3px}.apple-home-mock button:active{transform:scale(.975);transition:transform 80ms ease-out}.apple-home-header,.apple-portal-nav,.apple-dashboard-grid{width:min(1440px,100%);margin-inline:auto}.apple-home-header{display:flex;align-items:flex-end;justify-content:space-between;min-height:64px;margin-bottom:16px}.apple-home-header h1{margin:0;color:var(--apple-text);font-size:34px;font-weight:760;line-height:1.05;letter-spacing:0}.apple-home-header p{margin:7px 0 0;color:var(--apple-muted);font-size:13px;font-weight:650}.apple-home-header-actions{display:flex;align-items:center;gap:8px}.apple-icon-button,.apple-account-button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;border:1px solid var(--apple-border);border-radius:8px;color:var(--apple-text);background:var(--apple-panel-raised);cursor:pointer}.apple-icon-button{width:42px;padding:0;font-size:19px}.apple-account-button{gap:7px;padding:0 14px;font-size:13px;font-weight:750}.apple-account-button i{color:var(--apple-blue);font-size:18px}.apple-portal-nav{position:relative;z-index:5;display:flex;align-items:center;gap:4px;min-height:52px;margin-bottom:12px;padding:5px;border:1px solid var(--apple-border);border-radius:8px;background:#17171cc2;box-shadow:0 14px 36px #0000002e;backdrop-filter:blur(24px) saturate(140%);-webkit-backdrop-filter:blur(24px) saturate(140%)}.apple-portal-nav button{display:flex;align-items:center;gap:7px;min-height:40px;padding:0 15px;border:0;border-radius:6px;color:var(--apple-muted);background:transparent;cursor:pointer;font-size:12px;font-weight:750}.apple-portal-nav button:hover{color:var(--apple-text);background:#ffffff0f}.apple-portal-nav button.active{color:var(--apple-text);background:var(--apple-control);box-shadow:inset 0 0 0 1px var(--apple-border)}.apple-portal-nav button i{font-size:17px}.apple-portal-nav button small{display:grid;place-items:center;width:16px;height:16px;border-radius:50%;color:var(--apple-blue);background:color-mix(in srgb,var(--apple-blue) 15%,transparent);font-size:8px;font-weight:850}.apple-dashboard-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:12px;align-items:start}.apple-panel,.apple-room-stage{min-width:0;border:1px solid var(--apple-border);border-radius:8px;background:var(--apple-panel);box-shadow:0 18px 46px #0003;overflow:hidden}.apple-photo-panel{position:relative;grid-column:span 5;height:330px}.apple-photo-panel img{width:100%;height:100%;object-fit:cover;display:block}.apple-photo-panel:after{content:"";position:absolute;inset:auto 0 0;height:46%;background:linear-gradient(to bottom,transparent,rgba(0,0,0,.82));pointer-events:none}.apple-photo-caption{position:absolute;z-index:1;right:12px;bottom:12px;left:12px;display:flex;align-items:flex-end;justify-content:space-between;gap:12px;color:#fff}.apple-photo-caption>div{display:grid;gap:2px;min-width:0}.apple-photo-caption>div>span{display:flex;align-items:center;gap:6px;color:#ffd9e8;font-size:10px;font-weight:800;text-transform:uppercase}.apple-photo-caption strong{font-size:17px;line-height:1.2}.apple-photo-caption small{color:#ffffffb8;font-size:11px}.apple-icon-button.inverse{border-color:#fff3;color:#fff;background:#0c0c108c;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.apple-weather-panel{grid-column:span 3;height:330px;padding:17px}.apple-weather-panel>header,.apple-agenda-panel>header,.apple-todo-panel>header,.apple-media-panel>header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.apple-weather-panel header span,.apple-agenda-panel header span,.apple-todo-panel header span,.apple-media-panel header span,.apple-section-heading>div>span{color:var(--apple-muted);font-size:9px;font-weight:800;text-transform:uppercase}.apple-weather-panel h2,.apple-agenda-panel h2,.apple-todo-panel h2,.apple-media-panel h2,.apple-section-heading h2{margin:2px 0 0;color:var(--apple-text);font-size:16px;font-weight:760;line-height:1.2}.apple-weather-panel>header>i{color:var(--apple-cyan);font-size:26px}.apple-weather-now{display:flex;align-items:end;gap:12px;margin:17px 0 13px}.apple-weather-now>strong{font-size:46px;font-weight:650;line-height:.9}.apple-weather-now>span{color:var(--apple-soft);font-size:11px;font-weight:650;line-height:1.45}.apple-weather-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.apple-weather-facts>span{display:grid;grid-template-columns:18px 1fr;min-width:0;padding:8px;border-radius:6px;background:var(--apple-control)}.apple-weather-facts i{grid-row:span 2;align-self:center;color:var(--apple-cyan);font-size:15px}.apple-weather-facts b{font-size:12px;line-height:1.15}.apple-weather-facts small{color:var(--apple-muted);font-size:8px}.apple-weather-hours{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:13px;padding-top:12px;border-top:1px solid var(--apple-border)}.apple-weather-hours span{display:grid;justify-items:center;gap:4px;min-width:0;color:var(--apple-soft)}.apple-weather-hours span+span{border-left:1px solid var(--apple-border)}.apple-weather-hours small{color:var(--apple-muted);font-size:8px}.apple-weather-hours i{color:var(--apple-cyan);font-size:16px}.apple-weather-hours b{font-size:11px}.apple-day-stack{grid-column:span 4;display:grid;grid-template-rows:1fr auto;gap:12px;height:330px;min-width:0}.apple-agenda-panel,.apple-todo-panel,.apple-media-panel{padding:15px}.apple-agenda-panel>header button,.apple-todo-panel>header button,.apple-media-panel>header button{min-height:30px;padding:0 10px;border:1px solid var(--apple-border);border-radius:6px;color:var(--apple-soft);background:var(--apple-control);cursor:pointer;font-size:10px;font-weight:750}.apple-agenda-list{display:grid;gap:6px;margin-top:11px}.apple-agenda-list>button{position:relative;display:grid;grid-template-columns:58px minmax(0,1fr) 16px;align-items:center;gap:9px;min-height:49px;padding:7px 9px;border:0;border-radius:6px;color:var(--apple-text);background:var(--apple-control);cursor:pointer;text-align:left;overflow:hidden}.apple-agenda-list>button:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:var(--apple-blue)}.apple-agenda-list>button.tone-pink:before{background:var(--apple-pink)}.apple-agenda-list>button.tone-amber:before{background:var(--apple-amber)}.apple-agenda-list time,.apple-agenda-list>button>span{display:grid;gap:1px;min-width:0}.apple-agenda-list time small,.apple-agenda-list>button>span small{color:var(--apple-muted);font-size:8px}.apple-agenda-list time strong{font-size:11px}.apple-agenda-list>button>span strong{overflow:hidden;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.apple-agenda-list>button>i{color:var(--apple-muted);font-size:14px}.apple-todo-panel>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:10px}.apple-todo-panel>div>button{display:grid;grid-template-columns:22px minmax(0,1fr);align-items:center;min-height:48px;padding:7px;border:0;border-radius:6px;color:var(--apple-text);background:var(--apple-control);cursor:pointer;text-align:left}.apple-todo-panel>div>button>i{color:var(--apple-amber);font-size:14px}.apple-todo-panel>div>button span{display:grid;min-width:0}.apple-todo-panel>div>button strong{overflow:hidden;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.apple-todo-panel>div>button small{color:var(--apple-muted);font-size:8px}.apple-home-control{grid-column:span 9;min-width:0;padding-top:5px}.apple-section-heading{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:10px;padding-inline:2px}.apple-section-heading p{margin:5px 0 0;color:var(--apple-muted);font-size:10px}.apple-all-off{display:flex;align-items:center;gap:7px;min-height:38px;padding:0 13px;border:1px solid color-mix(in srgb,var(--apple-blue) 36%,var(--apple-border));border-radius:7px;color:var(--apple-text);background:color-mix(in srgb,var(--apple-blue) 18%,var(--apple-panel-solid));cursor:pointer;font-size:11px;font-weight:760}.apple-all-off i{color:var(--apple-blue);font-size:17px}.apple-room-selector{display:flex;gap:6px;margin-bottom:9px;padding:4px;border:1px solid var(--apple-border);border-radius:8px;background:var(--apple-panel-solid);overflow-x:auto;scrollbar-width:none}.apple-room-selector::-webkit-scrollbar{display:none}.apple-room-selector button{display:flex;align-items:center;justify-content:center;gap:6px;min-width:max-content;min-height:39px;flex:1 0 auto;padding:0 11px;border:1px solid transparent;border-radius:6px;color:var(--apple-muted);background:transparent;cursor:pointer;font-size:10px;font-weight:750}.apple-room-selector button i{font-size:16px}.apple-room-selector button.active{color:var(--apple-text);border-color:var(--apple-border-strong);background:var(--apple-control);box-shadow:0 5px 16px #00000029}.apple-room-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:64px;padding:12px 14px;border-bottom:1px solid var(--apple-border)}.apple-room-heading>div{display:flex;align-items:center;gap:10px;min-width:0}.apple-room-icon{display:grid;place-items:center;width:38px;height:38px;flex:none;border-radius:7px;color:var(--apple-cyan);background:color-mix(in srgb,var(--apple-cyan) 15%,var(--apple-control));font-size:19px}.apple-room-heading h3{margin:0;font-size:15px;font-weight:780}.apple-room-heading p{margin:3px 0 0;overflow:hidden;color:var(--apple-muted);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.apple-room-heading>span{display:grid;justify-items:end;flex:none;color:var(--apple-soft);font-size:11px;font-weight:750}.apple-room-heading>span small{color:var(--apple-muted);font-size:9px;font-weight:650}.apple-device-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,34%);gap:10px;padding:10px}.apple-light-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;align-content:start}.apple-light-tile{--level:0%;position:relative;isolation:isolate;display:grid;grid-template-columns:36px minmax(0,1fr) 17px;align-items:center;gap:8px;min-width:0;min-height:104px;padding:10px;border:1px solid var(--apple-border);border-radius:7px;color:var(--apple-soft);background:var(--apple-control);cursor:pointer;text-align:left;touch-action:none;-webkit-user-select:none;user-select:none;overflow:hidden}.apple-light-tile:not(.dragging){transition:transform .16s ease-out,border-color .18s ease-out}.apple-light-tile.active{color:#221c08;border-color:color-mix(in srgb,var(--apple-amber) 55%,transparent)}.apple-light-tile.dragging{transform:scale(.985)}.apple-light-level{position:absolute;z-index:-1;inset:auto 0 0;height:var(--level);background:color-mix(in srgb,var(--apple-amber) 80%,white)}.apple-light-tile:not(.active) .apple-light-level{height:0}.apple-light-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:7px;color:var(--apple-amber);background:#ffffff14;font-size:18px}.apple-light-tile.active .apple-light-icon{color:#3a2a00;background:#ffffff4d}.apple-light-copy{display:grid;gap:2px;min-width:0}.apple-light-copy strong{overflow:hidden;font-size:11px;font-weight:780;text-overflow:ellipsis;white-space:nowrap}.apple-light-copy small{color:var(--apple-muted);font-size:9px;font-weight:700}.apple-light-tile.active .apple-light-copy small{color:#231c089e}.apple-light-tile>i{align-self:start;color:var(--apple-muted);font-size:14px}.apple-light-tile.active>i{color:#493900}.apple-room-utilities{display:grid;gap:8px;align-content:start}.apple-utility,.apple-fan-tile{min-width:0;padding:11px;border:1px solid var(--apple-border);border-radius:7px;background:var(--apple-control)}.apple-utility>header{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:28px}.apple-utility>header>span{display:flex;align-items:center;gap:7px;min-width:0}.apple-utility>header i{color:var(--apple-cyan);font-size:18px}.apple-utility>header strong{font-size:11px}.apple-utility>header b{color:var(--apple-soft);font-size:9px}.apple-curtain-visual{--curtain-open:0%;position:relative;height:38px;margin:8px 0;border-radius:5px;background:#96abc0;overflow:hidden}.apple-curtain-visual .view{position:absolute;top:0;right:0;bottom:0;left:0;background:#6f889f}.apple-curtain-visual .left,.apple-curtain-visual .right{position:absolute;z-index:1;top:0;bottom:0;width:calc((100% - var(--curtain-open)) / 2);background:#b9b6c4;box-shadow:inset -1px 0 #00000029}.apple-curtain-visual .left{left:0}.apple-curtain-visual .right{right:0}.apple-curtain-visual.right-to-left .left{width:0}.apple-curtain-visual.right-to-left .right{width:calc(100% - var(--curtain-open))}.apple-utility-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}.apple-utility-actions button,.apple-temp-stepper button{display:grid;place-items:center;min-height:31px;border:1px solid var(--apple-border);border-radius:6px;color:var(--apple-soft);background:var(--apple-panel-raised);cursor:pointer}.apple-climate>header{justify-content:flex-start}.apple-climate>header>button{display:grid;place-items:center;width:31px;height:31px;flex:none;border:0;border-radius:6px;color:var(--apple-blue);background:color-mix(in srgb,var(--apple-blue) 16%,var(--apple-panel-raised));cursor:pointer}.apple-climate>header>span{display:grid;gap:1px}.apple-climate>header small{color:var(--apple-muted);font-size:9px}.apple-temp-stepper{display:grid;grid-template-columns:34px 1fr 34px;align-items:center;gap:6px;margin:9px 0 7px}.apple-temp-stepper>span{display:grid;justify-items:center}.apple-temp-stepper strong{font-size:22px;line-height:1}.apple-temp-stepper small{color:var(--apple-muted);font-size:8px}.apple-climate-modes{display:grid;grid-template-columns:repeat(3,1fr);gap:4px}.apple-climate-modes button,.apple-fan-modes button{min-height:28px;border:0;border-radius:5px;color:var(--apple-muted);background:var(--apple-panel-raised);cursor:pointer;font-size:8px;font-weight:750}.apple-climate-modes button.active,.apple-fan-modes button.active{color:#09182f;background:var(--apple-blue)}.apple-fan-modes{display:grid;grid-template-columns:repeat(6,1fr);gap:3px;margin-top:5px}.apple-fan-modes button{display:grid;place-items:center;gap:1px;min-width:0;padding:3px 1px}.apple-fan-modes i{font-size:12px}.apple-fan-modes small{overflow:hidden;max-width:100%;font-size:8px;text-overflow:ellipsis;white-space:nowrap}.apple-climate button:disabled{opacity:.35;cursor:not-allowed}.apple-fan-tile{display:flex;align-items:center;justify-content:space-between;color:var(--apple-soft);cursor:pointer}.apple-fan-tile span{display:flex;align-items:center;gap:8px}.apple-fan-tile i{color:var(--apple-cyan);font-size:18px}.apple-fan-tile strong{font-size:11px}.apple-fan-tile b{color:var(--apple-muted);font-size:9px}.apple-fan-tile.active{border-color:color-mix(in srgb,var(--apple-cyan) 50%,transparent);background:color-mix(in srgb,var(--apple-cyan) 15%,var(--apple-control))}.apple-media-panel{grid-column:span 3;margin-top:5px}.apple-media-item{display:grid;grid-template-columns:54px minmax(0,1fr) 36px;align-items:center;gap:10px;margin-top:12px;padding:8px;border-radius:7px;background:var(--apple-control)}.apple-media-item img{width:54px;height:76px;border-radius:5px;object-fit:cover}.apple-media-item>span{display:grid;gap:3px;min-width:0}.apple-media-item strong{overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.apple-media-item small{color:var(--apple-soft);font-size:9px}.apple-media-item em{color:var(--apple-muted);font-size:8px;font-style:normal}.apple-media-item>i{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;color:#07182f;background:var(--apple-blue);font-size:15px}.apple-mobile-nav{display:none}:root[data-theme=light] .app-shell.apple-home-app,:root[data-theme=light] .apple-home-mock{--apple-bg:#f3f4f7;--apple-panel:rgba(255,255,255,.92);--apple-panel-solid:#fff;--apple-panel-raised:#f1f2f5;--apple-control:#eceef2;--apple-text:#16171a;--apple-soft:#41444b;--apple-muted:#70747d;--apple-border:rgba(22,23,26,.09);--apple-border-strong:rgba(22,23,26,.16);background:var(--apple-bg)}:root[data-theme=light] .apple-portal-nav{background:#ffffffbd;box-shadow:0 14px 34px #23283714}:root[data-theme=light] .apple-panel,:root[data-theme=light] .apple-room-stage{box-shadow:0 15px 36px #23283714}:root[data-theme=light] .apple-light-tile.active{color:#332500}@media (max-width:1180px){.apple-photo-panel{grid-column:span 7}.apple-weather-panel{grid-column:span 5}.apple-day-stack{grid-column:span 12;grid-template-columns:1.45fr 1fr;grid-template-rows:none;height:auto}.apple-home-control{grid-column:span 8}.apple-media-panel{grid-column:span 4}.apple-light-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.apple-light-tile{min-height:88px}.apple-device-layout{grid-template-columns:minmax(0,1fr) minmax(245px,38%)}}@media (max-width:760px){.apple-home-mock{padding:16px 12px calc(84px + env(safe-area-inset-bottom))}.apple-home-header{align-items:center;min-height:56px;margin-bottom:10px}.apple-home-header h1{font-size:29px}.apple-home-header p{margin-top:4px;font-size:11px}.apple-account-button{min-height:38px;padding-inline:10px}.apple-home-header-actions .apple-icon-button,.apple-portal-nav{display:none}.apple-dashboard-grid{display:block}.apple-photo-panel,.apple-weather-panel,.apple-day-stack,.apple-home-control,.apple-media-panel{width:100%;height:auto;margin:0 0 10px}.apple-photo-panel{height:250px}.apple-weather-panel{min-height:304px}.apple-day-stack{display:grid;grid-template-columns:1fr;gap:10px}.apple-section-heading{align-items:center;margin-top:16px}.apple-section-heading p{display:none}.apple-all-off{min-height:36px;padding-inline:10px}.apple-room-selector{margin-inline:-12px;padding-inline:12px;border-inline:0;border-radius:0;scroll-padding-inline:12px}.apple-room-selector button{flex:0 0 auto;min-width:80px}.apple-room-heading{align-items:flex-start}.apple-room-heading>span{font-size:10px}.apple-device-layout{grid-template-columns:1fr}.apple-light-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.apple-light-tile{min-height:82px;padding:9px;grid-template-columns:32px minmax(0,1fr) 14px}.apple-light-icon{width:32px;height:32px;font-size:16px}.apple-light-copy strong{font-size:10px}.apple-media-item{grid-template-columns:48px minmax(0,1fr) 34px}.apple-media-item img{width:48px;height:68px}.apple-mobile-nav{position:fixed;z-index:50;right:max(10px,env(safe-area-inset-right));bottom:max(10px,env(safe-area-inset-bottom));left:max(10px,env(safe-area-inset-left));display:grid;grid-template-columns:repeat(5,1fr);gap:3px;min-height:60px;padding:5px;border:1px solid var(--apple-border-strong);border-radius:8px;background:#19191ed6;box-shadow:0 16px 40px #00000052;backdrop-filter:blur(24px) saturate(160%);-webkit-backdrop-filter:blur(24px) saturate(160%)}.apple-mobile-nav button{display:grid;place-items:center;align-content:center;gap:2px;min-width:0;border:0;border-radius:6px;color:var(--apple-muted);background:transparent;cursor:pointer}.apple-mobile-nav button.active{color:var(--apple-text);background:var(--apple-control)}.apple-mobile-nav i{font-size:19px}.apple-mobile-nav span{font-size:8px;font-weight:750}:root[data-theme=light] .apple-mobile-nav{background:#ffffffd6;box-shadow:0 14px 36px #23283729}}@media (max-width:380px){.apple-weather-facts>span{padding:7px 5px}.apple-light-grid{gap:6px}.apple-light-tile{grid-template-columns:30px minmax(0,1fr) 12px;gap:6px;padding:7px}.apple-light-icon{width:30px;height:30px}.apple-room-heading p{max-width:185px}}@media (prefers-reduced-motion:reduce){.apple-home-mock *,.apple-home-mock *:before,.apple-home-mock *:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (prefers-reduced-transparency:reduce){.apple-portal-nav,.apple-mobile-nav{background:var(--apple-panel-solid);backdrop-filter:none;-webkit-backdrop-filter:none}}@media (prefers-contrast:more){.apple-home-mock{--apple-border:rgba(255,255,255,.25);--apple-border-strong:rgba(255,255,255,.48)}:root[data-theme=light] .apple-home-mock{--apple-border:rgba(0,0,0,.22);--apple-border-strong:rgba(0,0,0,.46)}}@media (prefers-color-scheme:light){:root:not([data-theme]) .flux-home-shell{--app-bg:#f5f4f8;--surface:#ffffff;--surface-2:#f0edf6;--soft:#f7f5fa;--input-bg:#f8f7fa;--text:#201c27;--text-soft:#47404f;--muted:#71697c;--faint:#9b93a4;--border:rgba(33,26,44,.1);--border-soft:rgba(33,26,44,.07);--border-strong:rgba(33,26,44,.16);--accent:#7552d6;--accent-soft:rgba(117,82,214,.12);--accent-muted:#8a72c7;--danger:#b33b2e;--danger-bg:#fff0ed;--danger-border:rgba(179,59,46,.22);--shadow:0 14px 38px rgba(54,43,72,.12);color-scheme:light}}.flux-home-shell .flux-real-page-header,.flux-home-shell .flux-home-title-block h1,.flux-home-shell .flux-home-title-block p,.flux-home-shell .flux-card h2,.flux-home-shell .flux-room-section h2,.flux-home-shell .calendar-page,.flux-home-shell .finance-page,.flux-home-shell .flightlog-page,.flux-home-shell .tasks-page,.flux-home-shell .media-page{color:var(--text)}.flux-home-shell .flux-kicker,.flux-home-shell .flux-card small,.flux-home-shell .flux-room-section small{color:var(--muted)}.flux-home-shell .flux-card,.flux-home-shell .flux-room-section,.flux-home-shell .calendar-grid-wrap,.flux-home-shell .calendar-panel,.flux-home-shell .calendar-list-day,.flux-home-shell .calendar-list-empty,.flux-home-shell .finance-panel,.flux-home-shell .finance-summary-card,.flux-home-shell .finance-period-panel,.flux-home-shell .finance-calendar-wrap,.flux-home-shell .flightlog-log-panel,.flux-home-shell .flightlog-sync-banner,.flux-home-shell .flightlog-stats-grid>*,.flux-home-shell .flight-portal-list-panel,.flux-home-shell .flight-airport-panel,.flux-home-shell .enroute-briefing-panel,.flux-home-shell .portal-panel,.flux-home-shell .media-search-panel,.flux-home-shell .media-requests-panel,.flux-home-shell .media-results-panel,.flux-home-shell .tasks-list-panel,.flux-home-shell .task-editor-panel,.flux-home-shell .task-form-panel{border-color:var(--border);background:var(--surface);box-shadow:var(--shadow)}.flux-home-shell .calendar-cell,.flux-home-shell .finance-cell,.flux-home-shell .calendar-list-event-row,.flux-home-shell .flightlog-row,.flux-home-shell .flight-portal-flight-card,.flux-home-shell .portal-mini-item,.flux-home-shell .portal-timeline article,.flux-home-shell .media-result-card,.flux-home-shell .media-request-card,.flux-home-shell .task-row,.flux-home-shell .task-card{background:var(--surface-2);border-color:var(--border-soft);color:var(--text)}.flux-home-shell input,.flux-home-shell select,.flux-home-shell textarea,.flux-home-shell .media-search-box,.flux-home-shell .month-picker-menu,.flux-home-shell .tz-select-menu,.flux-home-shell .flightlog-editor,.flux-home-shell .season-dialog,.flux-home-shell .mobile-account-sheet{border-color:var(--border-strong);background:var(--surface);color:var(--text)}.flux-home-shell .finance-summary-card strong,.flux-home-shell .finance-summary-card span,.flux-home-shell .flightlog-row strong,.flux-home-shell .flightlog-row span,.flux-home-shell .media-result-card strong,.flux-home-shell .media-request-card strong,.flux-home-shell .portal-panel h2,.flux-home-shell .tasks-page h1,.flux-home-shell .media-page h1{color:var(--text)}.portal-mobile-nav{align-items:stretch;min-height:64px;padding:4px 6px env(safe-area-inset-bottom);background:color-mix(in srgb,var(--surface) 94%,transparent);border-top:1px solid var(--border);box-shadow:0 -10px 30px #0000001f;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.mobile-nav-item{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:flex;flex:1 1 0;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-width:0;min-height:56px;padding:5px 2px;border:0;border-radius:12px;background:transparent;color:var(--muted)}.mobile-nav-item i{font-size:20px}.mobile-nav-item span{overflow:hidden;max-width:100%;font-size:9px;font-weight:750;text-overflow:ellipsis;white-space:nowrap}.mobile-nav-item.active{background:var(--accent-soft);color:var(--accent)}.mobile-account-sheet-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;border-bottom:1px solid var(--border-soft);margin-bottom:4px}.mobile-account-sheet-head .mobile-account-user{border:0;margin:0}.mobile-account-close{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;border:0;border-radius:12px;background:var(--surface-2);color:var(--text);font-size:19px}.mobile-account-item{min-height:52px}@media (max-width:760px){.flux-home-shell .flux-real-tabs{display:none}.flux-home-shell .flux-home-center,.flux-home-shell .center-col{padding-bottom:calc(78px + env(safe-area-inset-bottom))}.flux-home-shell button,.flux-home-shell [role=button]{touch-action:manipulation}.flux-home-shell .icon-nav,.flux-home-shell .calendar-today-button,.flux-home-shell .calendar-add-button,.flux-home-shell .flux-icon-button,.flux-home-shell .flux-primary-button{min-height:44px}}@media (min-width:761px) and (max-width:1100px) and (max-height:650px) and (orientation:landscape){.portal-mobile-nav{display:none}.flux-home-shell .flux-real-tabs{display:flex}.flux-home-shell .flux-home-center{padding:10px 12px}.flux-home-shell .center-col{padding-bottom:12px}.flux-home-shell .flux-home-header,.flux-home-shell .flux-real-page-header{margin-bottom:6px}.flux-home-shell .flux-app-tabs{margin-bottom:8px;padding:4px}.flux-home-shell .flux-app-tabs button{min-height:44px}}@media (prefers-reduced-motion:reduce){.flux-home-shell *,.mobile-account-sheet{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}.flux-home-real{--flux-overview-height:330px}.flux-home-real .flux-home-grid{grid-template-areas:"photo photo photo photo photo weather weather weather today today tasks tasks" "rooms rooms rooms rooms rooms rooms rooms rooms media media media media";grid-template-rows:var(--flux-overview-height) auto;align-items:stretch}.flux-home-real .flux-photo-card{grid-area:photo}.flux-home-real .flux-weather-card{grid-area:weather}.flux-home-real .flux-today-card{grid-area:today}.flux-home-real .flux-task-card{grid-area:tasks}.flux-home-real .flux-room-section{grid-area:rooms}.flux-home-real .flux-media-card{grid-area:media}.flux-home-real .flux-photo-card,.flux-home-real .flux-weather-card,.flux-home-real .flux-today-card,.flux-home-real .flux-task-card{min-height:0;block-size:100%}.flux-home-real .flux-photo-card{position:relative;isolation:isolate;overflow:hidden;background:#11101d;contain:layout paint}.flux-home-real .flux-photo-card>img,.flux-home-real .flux-photo-fallback{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;min-height:0}.flux-home-real .flux-photo-card>img{object-fit:cover;object-position:center}.flux-home-real .flux-photo-card[aria-busy=true]>img{opacity:.88}.flux-home-real .flux-photo-fallback{padding:20px}.flux-home-real .flux-weather-card,.flux-home-real .flux-today-card,.flux-home-real .flux-task-card{display:flex;flex-direction:column;overflow:hidden;contain:layout paint}.flux-home-real .flux-event-list,.flux-home-real .flux-task-list{min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:rgba(189,178,210,.42) transparent}.flux-home-real .flux-event-list::-webkit-scrollbar,.flux-home-real .flux-task-list::-webkit-scrollbar{width:5px}.flux-home-real .flux-event-list::-webkit-scrollbar-thumb,.flux-home-real .flux-task-list::-webkit-scrollbar-thumb{border-radius:999px;background:#bdb2d26b}.flux-home-real .flux-room-section,.flux-home-real .flux-media-card{align-self:start;content-visibility:auto;contain-intrinsic-size:auto 330px}.flux-home-real .flux-card,.flux-home-real .flux-room-section{box-shadow:0 12px 34px #00000047}.flux-page-loading{display:grid;place-items:center;align-content:center;gap:10px;width:100%;min-height:240px;color:var(--muted);font-size:12px;font-weight:850}.flux-page-loading i{color:var(--accent);font-size:24px}.flux-home-shell button:focus-visible,.flux-home-shell a:focus-visible,.flux-home-shell input:focus-visible,.flux-home-shell select:focus-visible,.flux-home-shell textarea:focus-visible,.flux-home-app button:focus-visible,.flux-home-app a:focus-visible,.flux-home-app input:focus-visible{outline:2px solid #8fc7ff;outline-offset:2px}@media (max-width:1180px) and (min-width:761px){.flux-home-real{--flux-overview-height:clamp(300px, 34vw, 370px)}.flux-home-real .flux-home-grid{grid-template-areas:"photo photo photo photo weather weather weather weather" "today today today today tasks tasks tasks tasks" "rooms rooms rooms rooms rooms rooms rooms rooms" "media media media media media media media media";grid-template-rows:var(--flux-overview-height) minmax(240px,auto) auto auto}.flux-home-real .flux-today-card,.flux-home-real .flux-task-card{block-size:auto;min-height:240px}}@media (max-width:760px){.flux-home-real .flux-home-grid{grid-template-areas:"photo" "weather" "today" "tasks" "rooms" "media";grid-template-rows:none}.flux-home-real .flux-photo-card{block-size:auto;min-height:0;aspect-ratio:16 / 10}.flux-home-real .flux-weather-card,.flux-home-real .flux-today-card,.flux-home-real .flux-task-card{block-size:auto;min-height:0}.flux-home-real .flux-event-list,.flux-home-real .flux-task-list{max-height:none;overflow:visible}.flux-home-real .flux-photo-overlay{grid-template-columns:minmax(0,1fr) auto}.flux-home-real .flux-photo-overlay>.flux-chip{display:none}.flux-home-real .flux-room-section,.flux-home-real .flux-media-card{content-visibility:visible;contain-intrinsic-size:none}.flux-icon-button.glass{-webkit-backdrop-filter:none;backdrop-filter:none}.flux-home-real .flux-weather-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.flux-home-real .flux-signal-row,.flux-home-real .flux-room-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:430px){.flux-home-real .flux-photo-card{aspect-ratio:3 / 2}.flux-home-real .flux-photo-overlay{left:8px;right:8px;bottom:8px;padding:8px 9px}.flux-home-header-actions{min-width:0}.flux-account-chip{max-width:128px;overflow:hidden;text-overflow:ellipsis}.flux-app-tabs button{min-width:78px}}@media (max-width:340px){.flux-home-real .flux-room-grid{grid-template-columns:1fr}.flux-home-real .flux-weather-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.flux-home-real .flux-photo-overlay .flux-icon-button{width:34px;height:34px}}@media (prefers-reduced-motion:reduce){.flux-home-app *,.flux-home-shell *{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media (max-width:430px){.flux-home-center{padding:12px 10px 16px}.flux-card,.flux-room-section{border-radius:18px;padding:13px}.flux-home-status-row span{max-width:100%}.flux-home-header-actions{gap:8px}.flux-primary-button{min-width:0;padding:0 10px;font-size:12px}.flux-photo-card{padding:0}.flux-photo-card,.flux-photo-card img{min-height:252px}.flux-photo-overlay{left:10px;right:10px;bottom:10px;gap:9px;padding:10px}.flux-weather-main strong{font-size:38px}.flux-weather-metrics,.flux-signal-row{grid-template-columns:1fr}.flux-event-list article{grid-template-columns:68px minmax(0,1fr)}.flux-room-dimmer{grid-template-columns:1fr}.flux-room-dimmer label{grid-template-columns:34px minmax(0,1fr)}}@media (max-width:300px){.flux-home-center{padding:10px 8px 14px}.flux-home-title-block h1{font-size:28px}.flux-home-header-actions{flex-wrap:wrap}.flux-icon-button{width:40px;height:40px}.flux-primary-button{width:100%}.flux-photo-overlay{grid-template-columns:1fr}.flux-photo-overlay .flux-icon-button{width:100%}.flux-event-list article,.flux-task-item,.flux-media-item{grid-template-columns:1fr}.flux-media-item{flex-basis:178px}}.flux-home-app,.flux-home-app .main-area{background:#05050a}.flux-home-shell .sidebar{background:radial-gradient(circle at 20% 0%,rgba(67,231,255,.16),transparent 32%),radial-gradient(circle at 100% 22%,rgba(168,117,255,.2),transparent 36%),linear-gradient(180deg,#060610,#080819 52%,#120724);border-right:.5px solid rgba(255,255,255,.1);box-shadow:18px 0 48px #00000042}.flux-home-shell .sidebar button[style]{color:#f7f3ffb8}.flux-home-center{padding:14px;background:radial-gradient(circle at 15% 0%,rgba(67,231,255,.14),transparent 27%),radial-gradient(circle at 95% 16%,rgba(168,117,255,.18),transparent 30%),linear-gradient(180deg,#030305,#070713 55%,#11071d)}.flux-home-page{max-width:1280px}.flux-home-header{align-items:center;gap:12px;margin-bottom:10px}.flux-home-status-row{gap:6px;margin-bottom:7px}.flux-home-status-row span,.flux-account-chip,.flux-chip,.flux-signal,.flux-signal-action,.flux-room-controls button,.flux-room-ok{min-height:28px;padding:0 9px;border-radius:999px;font-size:10px}.flux-home-title-block h1{font-size:30px}.flux-home-title-block p{margin-top:5px;font-size:12px}.flux-home-header-actions{gap:8px}.flux-icon-button{width:38px;height:38px;border-radius:13px}.flux-primary-button{min-height:38px;padding:0 13px;border-radius:13px;box-shadow:0 12px 28px #5b50ff2e}.flux-app-tabs{display:flex;align-items:center;justify-content:flex-start;gap:8px;min-width:0;margin-bottom:10px;padding:7px;border:.5px solid rgba(255,255,255,.1);border-radius:20px;background:#ffffff0b;box-shadow:inset 0 1px #ffffff0a}.flux-app-tabs button{position:relative;display:flex;align-items:center;justify-content:center;gap:7px;flex:0 0 auto;min-width:0;min-height:39px;padding:0 16px;border:.5px solid transparent;border-radius:15px;background:transparent;color:#cfc4dc;font-size:12px;font-weight:900;cursor:pointer;white-space:nowrap}.flux-app-tabs button i{flex:0 0 auto;font-size:16px}.flux-app-tabs button span{min-width:0;overflow:hidden;text-overflow:ellipsis}.flux-app-tabs button small{display:grid;place-items:center;min-width:18px;height:18px;border-radius:999px;background:#ffffff1a;color:#f0d9ff;font-size:9px;font-weight:950}.flux-app-tabs button.active{border-color:#eccaff57;background:linear-gradient(135deg,#fbc6ff3d,#4195ff33);color:#fff;box-shadow:0 10px 24px #40267d38}.flux-home-grid,.flux-module-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:10px;min-width:0}.flux-card,.flux-room-section{border-radius:16px;border-color:#ffffff17;background:linear-gradient(180deg,#ffffff17,#ffffff0c),#0a0a15d1;box-shadow:0 16px 46px #0000004d}.flux-card,.flux-room-section{padding:12px}.flux-card-head{align-items:center;gap:10px;margin-bottom:9px}.flux-kicker{margin-bottom:3px;font-size:9px}.flux-card h2,.flux-room-section h2{font-size:15px}.flux-photo-card{grid-column:span 5;min-height:292px;padding:0}.flux-photo-card img{min-height:292px}.flux-photo-overlay{left:10px;right:10px;bottom:10px;gap:9px;padding:9px;border-radius:14px}.flux-photo-overlay strong{font-size:14px}.flux-photo-overlay small{font-size:10px}.flux-weather-card{grid-column:span 3;min-height:292px}.flux-weather-main{gap:4px}.flux-weather-main strong{font-size:34px}.flux-weather-main span{font-size:11px}.flux-weather-chart{height:82px;margin:11px 0 10px}.flux-weather-chart path{stroke-width:3}.flux-weather-metrics{gap:6px}.flux-weather-metrics span{min-height:36px;padding:0 6px;border-radius:11px;font-size:9px}.flux-today-card,.flux-task-card{grid-column:span 2;min-height:292px}.flux-room-section{grid-column:span 8}.flux-media-card{grid-column:span 4}.flux-event-list,.flux-task-list{gap:7px}.flux-event-list article,.flux-task-item{min-height:52px;padding:8px;border-radius:13px}.flux-event-list article{border-left:3px solid var(--event-accent, rgba(255,255,255,.22))}.flux-event-list article.cyan{--event-accent:#43e7ff}.flux-event-list article.blue{--event-accent:#6ea0ff}.flux-event-list article.violet{--event-accent:#a875ff}.flux-event-list article.rose{--event-accent:#ff74c7}.flux-event-list article.amber{--event-accent:#ffc247}.flux-event-list article.mint{--event-accent:#62f1b5}.flux-event-list.compact article{grid-template-columns:62px minmax(0,1fr)}.flux-event-list time span,.flux-event-list small,.flux-task-item small{font-size:9px}.flux-event-list time strong{font-size:13px}.flux-event-list div>strong,.flux-task-item strong{font-size:12px}.flux-signal-row{grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;margin-bottom:9px}.flux-signal,.flux-signal-action{min-height:54px;padding:8px;border-radius:13px}.flux-signal i,.flux-signal-action i{font-size:15px}.flux-signal small,.flux-signal-action small{font-size:9px}.flux-signal strong{font-size:16px}.flux-signal-action strong{font-size:14px}.flux-room-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.flux-room-card{gap:9px;min-height:142px;padding:10px;border-radius:15px}.flux-room-top{grid-template-columns:34px minmax(0,1fr);gap:8px}.flux-room-icon{width:34px;height:34px;border-radius:12px;font-size:18px}.flux-room-top strong{font-size:13px}.flux-room-top small,.flux-room-card p{font-size:10px}.flux-room-controls{gap:6px}.flux-room-controls button{min-height:32px;padding:0 9px}.flux-room-dimmer{grid-template-columns:auto minmax(72px,1fr);gap:6px;flex-basis:150px}.flux-room-dimmer label{grid-template-columns:28px minmax(0,1fr);gap:6px}.flux-media-strip{flex-direction:column;gap:7px;overflow:visible}.flux-media-item{grid-template-columns:42px minmax(0,1fr);flex:0 0 auto;min-height:60px;padding:7px;border-radius:13px}.flux-media-item img{width:42px;height:50px;border-radius:9px}.flux-media-item strong{font-size:12px}.flux-media-item small{font-size:9px}.flux-module-main,.flux-calendar-month-card,.flux-finance-summary,.flux-flight-summary{grid-column:span 8}.flux-module-side{grid-column:span 4}.flux-schedule-grid .flux-module-side,.flux-finance-grid .flux-module-side,.flux-flight-grid .flux-module-side{align-self:stretch}.flux-repeat-list,.flux-finance-rows,.flux-flight-list,.flux-airport-pair{display:flex;flex-direction:column;gap:7px;min-width:0}.flux-repeat-list span,.flux-airport-pair span{display:flex;align-items:center;gap:8px;min-height:44px;min-width:0;padding:8px 10px;border:.5px solid rgba(255,255,255,.09);border-radius:13px;background:#ffffff0f;color:#ece7f7;font-size:12px;font-weight:850}.flux-weekdays,.flux-month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.flux-weekdays{margin-bottom:6px}.flux-weekdays span{color:#afa3bd;font-size:10px;font-weight:950;text-align:center}.flux-month-grid button{display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-height:72px;min-width:0;padding:8px;border:.5px solid rgba(255,255,255,.08);border-radius:12px;background:#ffffff0b;color:#f8f4ff;text-align:left}.flux-month-grid button.muted{opacity:.38}.flux-month-grid button.today{border-color:#62f1b585;background:#62f1b521}.flux-month-grid strong{font-size:13px;font-weight:950}.flux-month-grid small{max-width:100%;padding:2px 5px;border-radius:6px;color:#061018;font-size:9px;font-weight:950;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.flux-month-grid small.blue{background:#6ea0ff}.flux-month-grid small.mint{background:#62f1b5}.flux-month-grid small.rose{background:#ff74c7}.flux-month-grid small.amber{background:#ffc247}.flux-finance-total{display:flex;flex-direction:column;gap:4px;min-width:0;margin-bottom:12px;padding:12px;border-radius:14px;background:linear-gradient(135deg,#a875ff33,#43e7ff1c)}.flux-finance-total span,.flux-finance-total small{color:#bfb4d2;font-size:11px;font-weight:850}.flux-finance-total strong{color:#fff;font-size:28px;line-height:1.05;font-weight:950}.flux-category-bars{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.flux-category-bars div{--bar:#43e7ff;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;min-width:0;min-height:42px;padding:8px;border-radius:12px;background:#ffffff0e}.flux-category-bars div.cyan{--bar:#43e7ff}.flux-category-bars div.amber{--bar:#ffc247}.flux-category-bars div.violet{--bar:#a875ff}.flux-category-bars div.rose{--bar:#ff74c7}.flux-category-bars span,.flux-category-bars strong{color:#fff;font-size:11px;font-weight:950}.flux-category-bars meter{width:100%;height:7px}.flux-category-bars meter::-webkit-meter-bar{border:0;border-radius:999px;background:#ffffff1f}.flux-category-bars meter::-webkit-meter-optimum-value{border-radius:999px;background:var(--bar)}.flux-finance-rows article,.flux-flight-list article{display:grid;grid-template-columns:10px minmax(0,1fr) auto;align-items:center;gap:9px;min-height:54px;min-width:0;padding:8px;border:.5px solid rgba(255,255,255,.09);border-radius:13px;background:#ffffff0e}.flux-finance-rows article>span{width:10px;height:34px;border-radius:999px;background:var(--finance-accent, #43e7ff)}.flux-finance-rows article.cyan{--finance-accent:#43e7ff}.flux-finance-rows article.amber{--finance-accent:#ffc247}.flux-finance-rows article.violet{--finance-accent:#a875ff}.flux-finance-rows strong,.flux-finance-rows small,.flux-finance-rows em,.flux-flight-list strong,.flux-flight-list small,.flux-flight-list span,.flux-flight-list em{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.flux-finance-rows strong,.flux-flight-list strong{color:#fff;font-size:12px;font-weight:950}.flux-finance-rows small,.flux-flight-list small{margin-top:3px;color:#b9adca;font-size:10px;font-weight:820}.flux-finance-rows em,.flux-flight-list span,.flux-flight-list em{color:#efe8fb;font-size:11px;font-style:normal;font-weight:950}.flux-flight-stat-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:12px}.flux-flight-stat-row span{min-width:0;padding:10px;border-radius:13px;background:#ffffff0f}.flux-flight-stat-row small,.flux-airport-pair small{display:block;color:#b9adca;font-size:10px;font-weight:850}.flux-flight-stat-row strong,.flux-airport-pair strong{display:block;color:#fff;font-size:16px;font-weight:950}.flux-route-mini{display:grid;grid-template-columns:auto minmax(120px,1fr) auto;align-items:center;gap:12px;min-height:92px;padding:13px;border-radius:15px;background:linear-gradient(90deg,#6ea0ff2e,#62f1b529),#ffffff0d}.flux-route-mini span,.flux-route-mini strong{color:#fff;font-size:22px;font-weight:950}.flux-route-mini i{display:block;height:3px;border-radius:999px;background:linear-gradient(90deg,#6ea0ff,#62f1b5);box-shadow:0 0 16px #62f1b547}.flux-flight-list article{grid-template-columns:44px minmax(0,1fr) auto}.flux-flight-list time{display:grid;place-items:center;min-height:38px;border-radius:11px;background:#6ea0ff2b;color:#dfe8ff;font-size:11px;font-weight:950}.flux-flight-list em{display:none}@media (max-width:1180px){.flux-photo-card,.flux-weather-card,.flux-today-card,.flux-task-card,.flux-room-section,.flux-media-card,.flux-module-main,.flux-calendar-month-card,.flux-finance-summary,.flux-flight-summary,.flux-module-side{grid-column:span 12}.flux-home-grid{grid-template-columns:repeat(8,minmax(0,1fr))}.flux-photo-card,.flux-weather-card,.flux-today-card,.flux-task-card{grid-column:span 4}.flux-room-section,.flux-media-card{grid-column:span 8}.flux-media-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:760px){.flux-home-center{padding:10px}.flux-home-header{align-items:stretch;margin-bottom:8px}.flux-home-title-block h1{font-size:28px}.flux-app-tabs{display:flex;gap:7px;overflow-x:auto;padding:6px;border-radius:18px;scrollbar-width:none}.flux-app-tabs::-webkit-scrollbar{display:none}.flux-app-tabs button{flex:0 0 auto;min-width:92px;min-height:38px;padding:0 11px}.flux-home-grid,.flux-module-grid{grid-template-columns:1fr;gap:8px}.flux-photo-card,.flux-weather-card,.flux-today-card,.flux-task-card,.flux-room-section,.flux-media-card,.flux-module-main,.flux-calendar-month-card,.flux-finance-summary,.flux-flight-summary,.flux-module-side{grid-column:1 / -1}.flux-photo-card,.flux-photo-card img{min-height:218px}.flux-weather-card,.flux-today-card,.flux-task-card{min-height:0}.flux-room-grid,.flux-media-strip,.flux-category-bars,.flux-flight-stat-row{grid-template-columns:1fr}.flux-signal-row{grid-template-columns:repeat(2,minmax(0,1fr))}.flux-month-grid button{min-height:58px;padding:6px}.flux-finance-total strong{font-size:24px}}@media (max-width:430px){.flux-home-center{padding:8px}.flux-card,.flux-room-section{border-radius:15px;padding:10px}.flux-photo-card{padding:0}.flux-home-status-row span:nth-child(3){display:none}.flux-primary-button{min-height:38px;font-size:11px}.flux-photo-card,.flux-photo-card img{min-height:198px}.flux-weather-metrics,.flux-signal-row{grid-template-columns:1fr}.flux-event-list article,.flux-event-list.compact article{grid-template-columns:58px minmax(0,1fr)}.flux-room-dimmer,.flux-finance-rows article,.flux-flight-list article{grid-template-columns:1fr}.flux-finance-rows article>span{width:100%;height:5px}.flux-flight-list time{justify-self:start;min-width:52px}}@media (max-width:300px){.flux-app-tabs button{min-width:78px;padding:0 9px;font-size:11px}.flux-app-tabs button small,.flux-home-status-row span:nth-child(2){display:none}.flux-card-head{align-items:flex-start;flex-direction:column}.flux-month-grid button{min-height:48px}.flux-month-grid small{display:none}}.flux-home-shell{--app-bg:#05050a;--surface:rgba(13,12,27,.78);--surface-2:rgba(255,255,255,.075);--soft:rgba(255,255,255,.05);--input-bg:rgba(255,255,255,.08);--text:#f7f3ff;--text-soft:#ded6ed;--muted:#bdb2d2;--faint:#81768f;--border:rgba(255,255,255,.11);--border-soft:rgba(255,255,255,.075);--border-strong:rgba(255,255,255,.18);--accent:#a875ff;--accent-soft:rgba(168,117,255,.18);--accent-muted:#6ea0ff;--danger:#ff9f87;--danger-bg:rgba(255,116,94,.14);--danger-border:rgba(255,159,135,.26);--shadow:0 18px 54px rgba(0,0,0,.42);color-scheme:dark}.flux-home-shell .center-col{gap:0}.flux-home-shell .main-area{width:100%}.flux-home-shell .flux-home-center{padding:20px clamp(14px,3vw,42px) 32px}.flux-real-page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;width:100%;max-width:1280px;margin:0 auto 10px;color:#f7f3ff}.flux-real-tabs{width:100%;max-width:1280px;margin:0 auto 10px}.flux-home-real .flux-real-tabs{max-width:none;margin:0 0 10px}.flux-account-button{border:.5px solid rgba(255,255,255,.11);cursor:pointer}.flux-account-button:hover{background:#ffffff1f;color:#fff}.flux-home-shell .sidebar button[style],.flux-home-shell .sidebar span[style],.flux-home-shell .sidebar div[style]{border-color:#ffffff1a!important}.flux-home-shell .sidebar button[style]{color:#f7f3ffb8!important}.flux-home-shell .sidebar button[style*="rgba(255,255,255,0.15)"]{color:#fff!important}.flux-home-shell .calendar-page,.flux-home-shell .finance-page,.flux-home-shell .flightlog-page,.flux-home-shell .tasks-page,.flux-home-shell .media-page{width:100%;max-width:1280px;margin:0 auto;color:#f7f3ff}.flux-home-shell .calendar-page-header,.flux-home-shell .finance-header,.flux-home-shell .flightlog-header,.flux-home-shell .portal-header{align-items:center;margin-bottom:0}.flux-home-shell .portal-header h1,.flux-home-shell .calendar-title,.flux-home-shell .month-picker-button,.flux-home-shell .finance-header h1,.flux-home-shell .flightlog-header h1{color:#fff}.flux-home-shell .portal-header span,.flux-home-shell .portal-header p{color:#bdb2d2}.flux-home-shell .calendar-page-tabs,.flux-home-shell .finance-tabs,.flux-home-shell .flightlog-tabs,.flux-home-shell .tasks-tabs,.flux-home-shell .media-type-tabs,.flux-home-shell .finance-period-tabs{border-color:#ffffff1a;border-radius:18px;background:#ffffff13;box-shadow:inset 0 1px #ffffff0d}.flux-home-shell .calendar-page-tabs button,.flux-home-shell .finance-tabs button,.flux-home-shell .flightlog-tabs button,.flux-home-shell .tasks-tabs button,.flux-home-shell .media-type-tabs button,.flux-home-shell .finance-period-tabs button{min-height:36px;border-radius:14px;color:#cfc4dc;font-weight:900}.flux-home-shell .calendar-page-tabs button.active,.flux-home-shell .finance-tabs button.active,.flux-home-shell .flightlog-tabs button.active,.flux-home-shell .tasks-tabs button.active,.flux-home-shell .media-type-tabs button.active,.flux-home-shell .finance-period-tabs button.active{border-color:#eccaff57;background:linear-gradient(135deg,#fbc6ff3d,#4195ff33);color:#fff;box-shadow:0 10px 24px #40267d38}.flux-home-shell .icon-nav,.flux-home-shell .calendar-today-button,.flux-home-shell .finance-today-button,.flux-home-shell .calendar-add-button,.flux-home-shell .flightlog-add-button,.flux-home-shell .portal-header-actions button,.flux-home-shell .finance-save-button,.flux-home-shell .finance-upload-box,.flux-home-shell .flightlog-export-actions button{border-color:#ffffff24;background:#ffffff14;color:#f7f3ff}.flux-home-shell .calendar-add-button,.flux-home-shell .flightlog-add-button,.flux-home-shell .portal-header-actions button.primary,.flux-home-shell .finance-save-button{background:linear-gradient(135deg,#9c5afff5,#2d9dffeb)!important;color:#fff!important;box-shadow:0 12px 28px #5b50ff38}.flux-home-shell .calendar-grid-wrap,.flux-home-shell .calendar-panel,.flux-home-shell .calendar-list-day,.flux-home-shell .calendar-list-empty,.flux-home-shell .finance-panel,.flux-home-shell .finance-summary-card,.flux-home-shell .finance-period-panel,.flux-home-shell .finance-calendar-wrap,.flux-home-shell .flightlog-log-panel,.flux-home-shell .flightlog-sync-banner,.flux-home-shell .flightlog-stats-grid>*,.flux-home-shell .flight-portal-list-panel,.flux-home-shell .flight-airport-panel,.flux-home-shell .enroute-briefing-panel,.flux-home-shell .portal-panel,.flux-home-shell .media-search-panel,.flux-home-shell .media-requests-panel,.flux-home-shell .media-results-panel,.flux-home-shell .tasks-list-panel,.flux-home-shell .task-editor-panel,.flux-home-shell .task-form-panel{border:.5px solid rgba(255,255,255,.11);border-radius:16px;background:linear-gradient(180deg,#ffffff1b,#ffffff0e),#0a0a15d1;box-shadow:0 16px 46px #00000057}.flux-home-shell .calendar-cell,.flux-home-shell .finance-cell,.flux-home-shell .calendar-list-event-row,.flux-home-shell .flightlog-row,.flux-home-shell .flight-portal-flight-card,.flux-home-shell .portal-mini-item,.flux-home-shell .portal-timeline article,.flux-home-shell .media-result-card,.flux-home-shell .media-request-card,.flux-home-shell .task-row,.flux-home-shell .task-card{background:#ffffff0e;border-color:#ffffff13}.flux-home-shell .calendar-cell:hover,.flux-home-shell .finance-cell:hover,.flux-home-shell .calendar-list-event-row:hover,.flux-home-shell .flightlog-row:hover,.flux-home-shell .flight-portal-flight-card:hover,.flux-home-shell .media-result-card:hover,.flux-home-shell .media-request-card:hover,.flux-home-shell .task-row:hover{background:#ffffff18}.flux-home-shell .calendar-list-day-head,.flux-home-shell .finance-panel-head,.flux-home-shell .portal-panel-head,.flux-home-shell .flightlog-route,.flux-home-shell .flight-portal-selected-date{color:#f7f3ff}.flux-home-shell input,.flux-home-shell select,.flux-home-shell textarea,.flux-home-shell .media-search-box{border-color:#ffffff24;background:#ffffff14;color:#f7f3ff}.flux-home-shell input::placeholder,.flux-home-shell textarea::placeholder{color:#81768f}.flux-home-shell .finance-summary-card strong,.flux-home-shell .finance-summary-card span,.flux-home-shell .flightlog-row strong,.flux-home-shell .flightlog-row span,.flux-home-shell .media-result-card strong,.flux-home-shell .media-request-card strong,.flux-home-shell .portal-panel h2,.flux-home-shell .tasks-page h1,.flux-home-shell .media-page h1{color:#fff}.flux-home-shell .finance-summary-card.violet,.flux-home-shell .finance-summary-card.blue{border-color:#a875ff42}.flux-home-shell .finance-summary-card.mint,.flux-home-shell .finance-summary-card.green{border-color:#62f1b53d}.flux-home-shell .finance-summary-card.amber,.flux-home-shell .finance-summary-card.orange{border-color:#ffc24742}.flux-home-shell .finance-summary-card.rose,.flux-home-shell .finance-summary-card.red{border-color:#ff74c742}.flux-home-shell .finance-alert,.flux-home-shell .offline-banner{border-color:#ffc24740;background:#ffc2471f;color:#ffd98c}.flux-home-shell .finance-empty,.flux-home-shell .portal-empty-line,.flux-home-shell .calendar-inline-status{color:#bdb2d2}.flux-home-shell .month-picker-menu,.flux-home-shell .tz-select-menu,.flux-home-shell .flightlog-editor,.flux-home-shell .season-dialog,.flux-home-shell .mobile-account-sheet{border-color:#ffffff24;background:#0a0a15f5;color:#f7f3ff;box-shadow:0 24px 70px #00000080}.flux-home-shell .month-picker-year input,.flux-home-shell .month-picker-year button,.flux-home-shell .month-picker-grid button{border-color:#ffffff21;background:#ffffff14;color:#f7f3ff}.flux-home-shell .month-picker-grid button.active{background:linear-gradient(135deg,#9c5afff5,#2d9dffeb);color:#fff}@media (max-width:760px){.flux-home-shell .calendar-page,.flux-home-shell .finance-page,.flux-home-shell .flightlog-page,.flux-home-shell .tasks-page,.flux-home-shell .media-page{max-width:none}.flux-home-shell .flux-home-center{padding:10px}.flux-real-page-header{align-items:stretch;margin-bottom:8px}}.flux-home-shell .flux-real-page-header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;flex:0 0 auto;box-sizing:border-box}.flux-home-shell .flux-home-title-block{min-width:0}.flux-home-shell .flux-home-header-actions{align-self:start;justify-self:end;flex-wrap:nowrap;min-width:0}.flux-home-shell .flux-real-tabs{align-self:center;flex:0 0 auto;box-sizing:border-box;width:100%;min-width:0;overflow-x:auto;overflow-y:hidden;scrollbar-width:none}.flux-home-shell .flux-real-tabs::-webkit-scrollbar{display:none}.flux-home-shell .flux-real-tabs>button{flex:0 0 auto}@media (max-width:760px){.flux-home-shell .flux-real-page-header,.flux-home-shell .flux-home-header{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:10px}.flux-home-shell .flux-home-header-actions{justify-content:flex-end}.flux-home-shell .flux-account-chip{max-width:128px;overflow:hidden;text-overflow:ellipsis}.flux-home-shell .flux-real-tabs{align-self:stretch;max-width:none;margin-inline:0}}.flux-room-summary,.ha-room-group,.flux-room-summary.cyan,.ha-room-group.cyan{--room-accent:#43e7ff}.flux-room-summary.violet,.ha-room-group.violet{--room-accent:#a875ff}.flux-room-summary.amber,.ha-room-group.amber{--room-accent:#ffc247}.flux-room-summary.blue,.ha-room-group.blue{--room-accent:#6ea0ff}.flux-room-summary.rose,.ha-room-group.rose{--room-accent:#ff74c7}.flux-room-summary.mint,.ha-room-group.mint{--room-accent:#62f1b5}.flux-room-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.flux-room-summary{position:relative;display:grid;grid-template-columns:38px minmax(0,1fr) auto 18px;align-items:center;gap:10px;width:100%;min-width:0;min-height:96px;padding:12px;border:1px solid var(--border);border-radius:14px;background:var(--surface);color:var(--text);text-align:left;overflow:hidden}.flux-room-summary:before{content:"";position:absolute;inset:10px auto 10px 0;width:2px;border-radius:0 3px 3px 0;background:var(--room-accent)}.flux-room-summary:hover{border-color:color-mix(in srgb,var(--room-accent) 38%,transparent);background:var(--surface-2)}.flux-room-summary-icon,.ha-room-group-icon,.ha-entity-icon{display:grid;place-items:center;flex:0 0 auto;color:var(--room-accent);background:color-mix(in srgb,var(--room-accent) 13%,transparent)}.flux-room-summary-icon{width:38px;height:38px;border-radius:11px;font-size:19px}.flux-room-summary-copy{display:flex;flex-direction:column;gap:3px;min-width:0}.flux-room-summary-copy strong{overflow:hidden;color:var(--text);font-size:13px;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.flux-room-summary-copy small{overflow:hidden;color:var(--muted);font-size:10px;font-weight:750;text-overflow:ellipsis;white-space:nowrap}.flux-room-summary-signals{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.flux-room-summary-signals span{display:flex;align-items:center;gap:4px;color:var(--text-soft);font-size:9px;font-weight:850;white-space:nowrap}.flux-room-summary-signals i{color:var(--room-accent);font-size:12px}.flux-room-summary-arrow{color:#807789;font-size:15px}.ha-home-actions,.ha-control-actions{display:flex;align-items:center;justify-content:center;gap:8px;width:100%}.flux-signal-action,.ha-all-lights-button{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;width:auto!important;min-width:176px;min-height:44px!important;padding:0 14px!important;border-radius:12px!important;line-height:1!important;text-align:center;border:1px solid var(--border-strong)!important;background:color-mix(in srgb,var(--accent) 10%,var(--surface))!important;color:var(--text)!important}.flux-signal-action i,.ha-all-lights-button i{flex:0 0 auto;color:var(--accent);font-size:17px}.flux-signal-action strong{font-size:11px;line-height:1}.ha-expand-rooms{margin-left:0!important;min-height:44px}.ha-room-grid.full{display:flex;flex-direction:column;gap:22px}.ha-control-page{color:var(--text)}.ha-room-group{display:flex;flex-direction:column;gap:10px;min-width:0}.ha-room-group-head{display:flex;align-items:center;gap:10px;min-height:46px;padding:0 2px 8px;border-bottom:1px solid var(--border)}.ha-room-group-icon{width:36px;height:36px;border-radius:11px;font-size:18px}.ha-room-group-head>div{display:flex;flex-direction:column;gap:2px;min-width:0}.ha-room-group-head strong{color:var(--text);font-size:15px;font-weight:900}.ha-room-group-head small{color:var(--muted);font-size:10px;font-weight:800}.ha-entity-grid{display:grid;grid-template-columns:repeat(3,minmax(220px,1fr));align-items:start;gap:8px}.ha-entity-tile{display:flex;flex-direction:column;gap:8px;min-width:0;min-height:76px;padding:10px 11px;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.ha-entity-tile.is-on{border-color:color-mix(in srgb,var(--room-accent) 34%,transparent);background:color-mix(in srgb,var(--room-accent) 7%,var(--surface))}.ha-control-page .ha-back-button,.ha-control-page .ha-refresh-button{border-color:var(--border-strong);background:var(--surface);color:var(--text)}.ha-entity-tile .ha-device-head,.ha-entity-tile .ha-device-label{min-height:44px}.ha-entity-tile .ha-device-head>span,.ha-entity-tile .ha-device-label>span{gap:8px}.ha-entity-icon{width:32px;height:32px;border-radius:9px;font-size:16px}.ha-entity-name{overflow:hidden;color:var(--text);font-size:11px;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.ha-entity-tile .ha-power-button,.ha-entity-tile .ha-cover-actions button{border-color:var(--border-strong);background:var(--surface-2);color:var(--muted)}.ha-entity-tile .ha-power-button.active{border-color:transparent;background:var(--room-accent);color:#071016}.ha-entity-tile .ha-light-action small,.ha-entity-tile .ha-device-label small,.ha-entity-tile .ha-brightness span{color:var(--muted)}.ha-entity-tile .ha-brightness strong,.ha-entity-tile .ha-climate-values strong{color:var(--text)}.ha-entity-tile .ha-climate-values>span,.ha-entity-tile .ha-climate-values label{background:var(--surface-2);color:var(--muted)}.ha-entity-tile .ha-climate-values input{background:var(--input-bg);color:var(--text)}.ha-entity-tile .ha-mode-buttons button{border-color:var(--border-strong);background:var(--surface-2);color:var(--text-soft)}.ha-entity-tile .ha-mode-buttons button.active{background:var(--room-accent);color:#071016}.ha-entity-tile .ha-power-button{width:44px;height:44px;border-radius:11px}.ha-light-action small{font-size:9px}.ha-cover-tile{min-height:94px}.ha-cover-actions{grid-template-columns:repeat(3,44px)}.ha-cover-actions button{width:44px;height:44px;border-radius:11px}.ha-climate-control{grid-column:span 2;min-height:186px}.ha-control-label{display:flex;align-items:center;gap:6px;color:var(--text-soft);font-size:10px;font-weight:900}.ha-control-label i{color:var(--room-accent);font-size:15px}.ha-fan-control{display:flex;flex-direction:column;gap:6px}.ha-fan-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.ha-fan-heading small{color:var(--faint);font-size:8px;font-weight:750}.ha-fan-buttons{display:grid;grid-template-columns:repeat(6,minmax(44px,1fr));gap:5px}.ha-fan-buttons button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-width:0;min-height:48px;padding:4px 2px;border:1px solid rgba(255,255,255,.1);border-radius:10px;background:var(--surface-2);color:var(--text-soft)}.ha-fan-buttons button i{font-size:15px}.ha-fan-buttons button span{font-size:8px;font-weight:900;white-space:nowrap}.ha-fan-buttons button.fan-level-1 i{opacity:.55;font-size:12px}.ha-fan-buttons button.fan-level-2 i{opacity:.7;font-size:14px}.ha-fan-buttons button.fan-level-3 i{opacity:.85;font-size:16px}.ha-fan-buttons button.fan-level-4 i{opacity:1;font-size:18px}.ha-fan-buttons button.active{border-color:transparent;background:var(--room-accent);color:#071016}.ha-fan-buttons button:disabled:not(.active){opacity:.55}.ha-fan-buttons button.unsupported{border-style:dashed;opacity:.28!important}@media (max-width:1279px){.ha-entity-grid{grid-template-columns:repeat(2,minmax(220px,1fr))}}@media (max-width:767px){.flux-room-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.flux-room-summary{grid-template-columns:34px minmax(0,1fr) 16px;min-height:92px;padding:10px}.flux-room-summary-icon{width:34px;height:34px}.flux-room-summary-signals{grid-column:2;flex-direction:row;align-items:center;flex-wrap:wrap}.flux-room-summary-arrow{grid-column:3;grid-row:1 / span 2}.ha-entity-grid{grid-template-columns:1fr}.ha-climate-control{grid-column:auto}.ha-fan-buttons{grid-template-columns:repeat(3,minmax(44px,1fr))}.ha-home-actions{flex-wrap:wrap}}@media (max-width:359px){.flux-room-grid{grid-template-columns:1fr}.flux-room-summary{min-height:88px}.ha-home-actions{flex-direction:row}.flux-signal-action,.ha-all-lights-button{min-width:0;flex:1 1 auto}}.flux-home-real .ha-home-actions{justify-content:space-between;flex-wrap:nowrap}.flux-home-real .ha-home-actions .flux-signal-action,.flux-home-real .ha-home-actions .ha-expand-rooms{flex:0 1 auto;min-width:0;max-width:calc(50% - 4px);white-space:nowrap}.flux-room-summary.expanded{border-color:color-mix(in srgb,var(--room-accent) 58%,var(--border));background:color-mix(in srgb,var(--room-accent) 9%,var(--surface))}.ha-inline-room-detail{margin-top:12px;padding-top:14px;border-top:1px solid var(--border);animation:ha-inline-room-open .18s ease-out}@keyframes ha-inline-room-open{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.flux-home-real .flux-event-list article,.flux-home-real .flux-task-item{box-sizing:border-box;flex:0 0 56px;grid-template-columns:62px minmax(0,1fr);width:100%;min-height:56px;height:56px;max-height:56px;padding:8px;border:1px solid var(--border);border-left:3px solid var(--item-accent);border-radius:13px;background:var(--surface-2);font:inherit;-webkit-appearance:none;-moz-appearance:none;appearance:none}.flux-home-real .flux-event-list article{--item-accent:var(--event-accent,rgba(255,255,255,.22))}.flux-home-real .flux-task-item{--item-accent:var(--task-accent,rgba(255,255,255,.22))}.flux-home-real .flux-task-item>i{justify-self:center;font-size:15px}.flux-home-real .flux-event-list article>div,.flux-home-real .flux-task-item>span{align-self:center}.flux-home-real .ha-weather-detail{grid-template-columns:1fr;grid-template-rows:repeat(3,minmax(0,1fr));gap:6px;margin-top:9px}.flux-home-real .ha-weather-metric{--metric-accent:#43e7ff;position:relative;display:grid;grid-template-columns:30px minmax(0,1fr) minmax(64px,32%)!important;grid-template-rows:1fr!important;align-content:center;gap:7px!important;min-height:44px!important;height:44px;padding:6px 8px!important;border:1px solid var(--border)!important;border-radius:13px!important;background:var(--surface-2)!important;overflow:hidden}.flux-home-real .ha-weather-metric.rain{--metric-accent:#6ea0ff}.flux-home-real .ha-weather-metric.wind{--metric-accent:#a875ff}.flux-home-real .ha-weather-metric-icon{display:grid;place-items:center;grid-row:1;width:28px;height:28px;border-radius:9px;background:color-mix(in srgb,var(--metric-accent) 13%,transparent)}.flux-home-real .ha-weather-metric-icon i{grid-row:auto;color:var(--metric-accent);font-size:15px}.flux-home-real .ha-weather-metric-copy{display:flex;flex-direction:column;gap:2px;min-width:0}.flux-home-real .ha-weather-metric-copy small{overflow:hidden;color:var(--muted);font-size:8px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.flux-home-real .ha-weather-metric-copy strong{overflow:hidden;color:var(--text);font-size:13px;font-weight:950;text-overflow:ellipsis;white-space:nowrap}.flux-home-real .ha-weather-meter{position:relative;grid-column:3;grid-row:1;align-self:center;display:block;width:100%;height:4px;border-radius:99px;background:var(--border-strong);overflow:hidden}.flux-home-real .ha-weather-forecast{gap:5px;margin-top:7px}.flux-home-real .ha-weather-forecast>span{min-height:40px;padding:4px 2px}.flux-home-real .ha-weather-forecast i{font-size:14px}.flux-home-real .ha-weather-meter i{display:block;width:var(--weather-level);height:100%;border-radius:inherit;background:var(--metric-accent)}@media (max-width:1180px) and (min-width:761px){.flux-home-real .ha-weather-detail{gap:4px;margin-top:6px}.flux-home-real .ha-weather-metric{min-height:36px!important;height:36px;padding:4px 7px!important}.flux-home-real .ha-weather-metric-icon{width:24px;height:24px}.flux-home-real .ha-weather-forecast{margin-top:5px}.flux-home-real .ha-weather-forecast>span{min-height:34px}}@media (max-width:359px){.flux-home-real .ha-home-actions .flux-signal-action strong{font-size:9px}.flux-home-real .ha-home-actions .ha-expand-rooms{padding:0 9px;font-size:9px}.flux-home-real .ha-weather-metric{grid-template-columns:28px minmax(0,1fr) 72px!important;min-height:44px!important}}.flux-home-real .home-weather-dashboard{display:flex;flex:1;flex-direction:column;gap:6px;min-height:0;color:var(--text);font-variant-numeric:tabular-nums}.flux-home-real .home-weather-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));min-height:58px;border-block:1px solid var(--border)}.flux-home-real .home-weather-stats>div{display:flex;flex-direction:column;justify-content:center;min-width:0;padding:5px 7px}.flux-home-real .home-weather-stats>div+div{border-left:1px solid var(--border)}.flux-home-real .home-weather-stats small{color:var(--muted);font-size:8px;font-weight:850}.flux-home-real .home-weather-stats strong{margin:1px 0;color:var(--text);font-size:22px;font-weight:950;line-height:1}.flux-home-real .home-weather-stats span{display:flex;align-items:center;gap:3px;min-width:0;overflow:hidden;color:var(--muted);font-size:8px;font-style:normal;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.flux-home-real .home-weather-stats span i{color:#43d7dc;font-size:11px}.flux-home-real .home-weather-today,.flux-home-real .home-weather-day-row{display:grid;grid-template-columns:38px 20px 54px 54px minmax(0,1fr);align-items:center;gap:5px;min-width:0}.flux-home-real .home-weather-today{min-height:36px;padding:4px 6px;border-bottom:1px solid var(--border)}.flux-home-real .home-weather-today>strong,.flux-home-real .home-weather-day-row>strong{color:var(--text);font-size:10px;font-weight:900}.flux-home-real .home-weather-today>i,.flux-home-real .home-weather-day-row>i{color:#43d7dc;font-size:16px}.flux-home-real .home-weather-today>span,.flux-home-real .home-weather-day-temp,.flux-home-real .home-weather-day-rain{display:flex;align-items:baseline;gap:3px;min-width:0;white-space:nowrap}.flux-home-real .home-weather-today b,.flux-home-real .home-weather-day-row b{color:var(--text);font-size:10px;font-weight:900}.flux-home-real .home-weather-today small,.flux-home-real .home-weather-day-row small{color:var(--muted);font-size:8px;font-weight:800}.flux-home-real .home-weather-today>span:nth-of-type(2) b,.flux-home-real .home-weather-day-rain b{color:#43d7dc}.flux-home-real .home-weather-today em,.flux-home-real .home-weather-day-condition{overflow:hidden;color:var(--muted);font-size:9px;font-style:normal;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.flux-home-real .home-weather-hourly{min-width:0}.flux-home-real .home-weather-section-head{display:flex;align-items:center;justify-content:space-between;min-height:17px;padding:0 5px}.flux-home-real .home-weather-section-head strong{color:var(--text);font-size:9px;font-weight:900}.flux-home-real .home-weather-section-head small{color:var(--muted);font-size:8px;font-weight:800}.flux-home-real .home-weather-hourly-scroll{overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}.flux-home-real .home-weather-hourly-canvas{min-width:350px}.flux-home-real .home-weather-hourly svg{display:block;width:100%;height:38px;color:#43d7dc;overflow:visible}.flux-home-real .home-weather-area{fill:color-mix(in srgb,currentColor 15%,transparent);stroke:none}.flux-home-real .home-weather-line{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2;vector-effect:non-scaling-stroke}.flux-home-real .home-weather-hourly circle{fill:var(--surface);stroke:currentColor;stroke-width:1.5;vector-effect:non-scaling-stroke}.flux-home-real .home-weather-hour-labels{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));padding:1px 0 3px}.flux-home-real .home-weather-hour-labels span{display:flex;flex-direction:column;align-items:center;min-width:0}.flux-home-real .home-weather-hour-labels strong{color:var(--text);font-size:8px;font-weight:900}.flux-home-real .home-weather-hour-labels small{color:var(--muted);font-size:7px;font-weight:800}.flux-home-real .home-weather-hour-labels time{color:#43d7dc;font-size:7px;font-weight:850}.flux-home-real .home-weather-days{min-height:0;overflow-y:auto;border-top:1px solid var(--border);scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}.flux-home-real .home-weather-day-row{min-height:30px;padding:3px 6px;border-bottom:1px solid var(--border)}.flux-home-real .home-weather-alert{display:flex;align-items:center;gap:6px;min-height:30px;padding:5px 7px;border-left:3px solid #ff6b6b;color:var(--text);background:color-mix(in srgb,#ff6b6b 10%,transparent);font-size:9px;font-weight:850}@media (max-width:1180px) and (min-width:761px){.flux-home-real .home-weather-stats{min-height:52px}.flux-home-real .home-weather-stats strong{font-size:19px}.flux-home-real .home-weather-hourly svg{height:34px}.flux-home-real .home-weather-day-row{min-height:28px}}@media (max-width:760px){.flux-home-real .home-weather-dashboard{gap:8px}.flux-home-real .home-weather-stats{min-height:68px}.flux-home-real .home-weather-stats>div{padding:7px 9px}.flux-home-real .home-weather-stats strong{font-size:25px}.flux-home-real .home-weather-today{min-height:42px}.flux-home-real .home-weather-hourly svg{height:48px}.flux-home-real .home-weather-days{max-height:none;overflow:visible}.flux-home-real .home-weather-day-row{min-height:38px}}@media (max-width:359px){.flux-home-real .home-weather-today,.flux-home-real .home-weather-day-row{grid-template-columns:34px 18px 48px 48px minmax(0,1fr);gap:3px}.flux-home-real .home-weather-stats>div{padding-inline:5px}.flux-home-real .home-weather-stats strong{font-size:21px}}:root[data-theme=light] .flux-home-shell{--app-bg:#f5f4f8;--surface:#fff;--surface-2:#f0edf6;--soft:#f7f5fa;--input-bg:#f8f7fa;--text:#201c27;--text-soft:#47404f;--muted:#71697c;--faint:#9b93a4;--border:rgba(33,26,44,.1);--border-soft:rgba(33,26,44,.07);--border-strong:rgba(33,26,44,.16);--accent:#7552d6;--accent-soft:rgba(117,82,214,.12);--accent-muted:#8a72c7;--danger:#b33b2e;--danger-bg:#fff0ed;--danger-border:rgba(179,59,46,.22);--shadow:0 14px 38px rgba(54,43,72,.12);color-scheme:light}@media (prefers-color-scheme:light){:root:not([data-theme]) .flux-home-shell{--app-bg:#f5f4f8;--surface:#fff;--surface-2:#f0edf6;--soft:#f7f5fa;--input-bg:#f8f7fa;--text:#201c27;--text-soft:#47404f;--muted:#71697c;--faint:#9b93a4;--border:rgba(33,26,44,.1);--border-soft:rgba(33,26,44,.07);--border-strong:rgba(33,26,44,.16);--accent:#7552d6;--accent-soft:rgba(117,82,214,.12);--accent-muted:#8a72c7;--danger:#b33b2e;--danger-bg:#fff0ed;--danger-border:rgba(179,59,46,.22);--shadow:0 14px 38px rgba(54,43,72,.12);color-scheme:light}}.flux-home-shell .flux-home-center{background:var(--app-bg);color:var(--text)}.flux-home-shell .flux-real-page-header,.flux-home-shell .flux-home-title-block h1,.flux-home-shell .flux-home-title-block p,.flux-home-shell .calendar-page,.flux-home-shell .finance-page,.flux-home-shell .flightlog-page,.flux-home-shell .tasks-page,.flux-home-shell .media-page{color:var(--text)}.flux-home-shell .flux-app-tabs,.flux-home-shell .calendar-page-tabs,.flux-home-shell .finance-tabs,.flux-home-shell .flightlog-tabs,.flux-home-shell .tasks-tabs,.flux-home-shell .media-type-tabs,.flux-home-shell .finance-period-tabs{border-color:var(--border);background:var(--surface);box-shadow:none}.flux-home-shell .flux-app-tabs button,.flux-home-shell .calendar-page-tabs button,.flux-home-shell .finance-tabs button,.flux-home-shell .flightlog-tabs button,.flux-home-shell .tasks-tabs button,.flux-home-shell .media-type-tabs button,.flux-home-shell .finance-period-tabs button{color:var(--muted)}.flux-home-shell .flux-app-tabs button.active,.flux-home-shell .calendar-page-tabs button.active,.flux-home-shell .finance-tabs button.active,.flux-home-shell .flightlog-tabs button.active,.flux-home-shell .tasks-tabs button.active,.flux-home-shell .media-type-tabs button.active,.flux-home-shell .finance-period-tabs button.active{border-color:color-mix(in srgb,var(--accent) 28%,transparent);background:var(--accent-soft);color:var(--accent);box-shadow:none}.flux-home-shell .flux-card,.flux-home-shell .flux-room-section,.flux-home-shell .calendar-grid-wrap,.flux-home-shell .calendar-panel,.flux-home-shell .finance-panel,.flux-home-shell .finance-summary-card,.flux-home-shell .calendar-list-day,.flux-home-shell .calendar-list-empty,.flux-home-shell .finance-period-panel,.flux-home-shell .finance-calendar-wrap,.flux-home-shell .flightlog-log-panel,.flux-home-shell .flightlog-sync-banner,.flux-home-shell .flightlog-stats-grid>*,.flux-home-shell .flight-portal-list-panel,.flux-home-shell .flight-airport-panel,.flux-home-shell .enroute-briefing-panel,.flux-home-shell .portal-panel,.flux-home-shell .media-search-panel,.flux-home-shell .media-requests-panel,.flux-home-shell .media-results-panel,.flux-home-shell .tasks-list-panel,.flux-home-shell .task-editor-panel,.flux-home-shell .task-form-panel{border-color:var(--border);background:var(--surface);box-shadow:var(--shadow)}.flux-home-shell .icon-nav,.flux-home-shell .calendar-today-button,.flux-home-shell .finance-today-button,.flux-home-shell .finance-upload-box,.flux-home-shell .flightlog-export-actions button,.flux-home-shell .portal-header-actions button:not(.primary){border-color:var(--border-strong);background:var(--surface-2);color:var(--text)}.flux-home-shell input,.flux-home-shell select,.flux-home-shell textarea,.flux-home-shell .mobile-account-sheet{border-color:var(--border-strong);background:var(--surface);color:var(--text)}:root[data-theme=light] .flux-home-shell .flux-home-real{color:var(--text)}:root[data-theme=light] .flux-home-shell .flux-home-real :is(.flux-card,.flux-room-section){border-color:var(--border);background:var(--surface)}:root[data-theme=light] .flux-home-shell .flux-home-real :is(.flux-card-head h2,.flux-weather-main strong,.flux-event-list time strong,.flux-event-list div>strong,.flux-task-item strong,.flux-signal strong,.flux-media-item strong){color:var(--text)}:root[data-theme=light] .flux-home-shell .flux-home-real :is(.flux-kicker,.flux-weather-main>span,.flux-event-list time span,.flux-event-list small,.flux-task-item small,.flux-signal small,.flux-media-item small,.flux-empty-state){color:var(--muted)}:root[data-theme=light] .flux-home-shell .flux-home-real :is(.flux-event-list article,.flux-task-item,.flux-media-item,.flux-empty-state){border-color:var(--border);background:var(--surface-2)}:root[data-theme=light] .flux-home-shell .flux-home-real .flux-task-item,:root[data-theme=light] .flux-home-shell .flux-home-real .flux-media-item,:root[data-theme=light] .flux-home-shell .flux-home-real .flux-link-button{color:var(--text)}:root[data-theme=light] .flux-home-shell .flux-home-real .flux-link-button{border-color:var(--border-strong);background:var(--surface-2)}:root[data-theme=light] .flux-home-shell .flux-home-real .flux-photo-overlay strong,:root[data-theme=light] .flux-home-shell .flux-home-real .flux-photo-overlay .flux-icon-button{color:#fff}:root[data-theme=light] .flux-home-shell .flux-home-real .flux-photo-overlay small{color:#ded6ed}@media (prefers-color-scheme:light){:root:not([data-theme]) .flux-home-shell .flux-home-real{color:var(--text)}:root:not([data-theme]) .flux-home-shell .flux-home-real :is(.flux-card,.flux-room-section){border-color:var(--border);background:var(--surface)}:root:not([data-theme]) .flux-home-shell .flux-home-real :is(.flux-card-head h2,.flux-weather-main strong,.flux-event-list time strong,.flux-event-list div>strong,.flux-task-item strong,.flux-signal strong,.flux-media-item strong){color:var(--text)}:root:not([data-theme]) .flux-home-shell .flux-home-real :is(.flux-kicker,.flux-weather-main>span,.flux-event-list time span,.flux-event-list small,.flux-task-item small,.flux-signal small,.flux-media-item small,.flux-empty-state){color:var(--muted)}:root:not([data-theme]) .flux-home-shell .flux-home-real :is(.flux-event-list article,.flux-task-item,.flux-media-item,.flux-empty-state){border-color:var(--border);background:var(--surface-2)}:root:not([data-theme]) .flux-home-shell .flux-home-real :is(.flux-task-item,.flux-media-item,.flux-link-button){color:var(--text)}:root:not([data-theme]) .flux-home-shell .flux-home-real .flux-link-button{border-color:var(--border-strong);background:var(--surface-2)}:root:not([data-theme]) .flux-home-shell .flux-home-real .flux-photo-overlay strong,:root:not([data-theme]) .flux-home-shell .flux-home-real .flux-photo-overlay .flux-icon-button{color:#fff}:root:not([data-theme]) .flux-home-shell .flux-home-real .flux-photo-overlay small{color:#ded6ed}}.calendar-event-chip{display:block;width:100%;border-top:0;border-right:0;border-bottom:0;text-align:left}.calendar-more-count{display:flex;align-items:center;justify-content:center;min-width:28px;min-height:18px;margin-top:2px;padding:1px 5px;border:0;border-radius:6px;background:var(--surface-2);color:var(--muted);font-size:9px;font-weight:850}.calendar-agenda-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:500;display:grid;place-items:center;padding:16px;background:#00000085}.calendar-agenda-sheet{display:flex;flex-direction:column;width:min(100%,440px);max-height:min(78vh,620px);overflow:hidden;border:1px solid var(--border-strong);border-radius:16px;background:var(--surface);color:var(--text);box-shadow:var(--shadow)}.calendar-agenda-sheet>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px;border-bottom:1px solid var(--border)}.calendar-agenda-sheet>header small{color:var(--muted);font-size:10px}.calendar-agenda-sheet>header h2{margin-top:2px;font-size:16px}.calendar-agenda-sheet>header button{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;border:0;border-radius:12px;background:var(--surface-2);color:var(--text);font-size:19px}.calendar-agenda-list{display:flex;flex-direction:column;gap:6px;padding:10px;overflow-y:auto}.calendar-agenda-list>button{display:grid;grid-template-columns:4px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:54px;padding:8px 10px;border:1px solid var(--border);border-radius:10px;background:var(--surface-2);color:var(--text);text-align:left}.calendar-agenda-list>button>i:first-child{width:4px;height:32px;border-radius:99px}.calendar-agenda-list span{display:flex;flex-direction:column;gap:3px;min-width:0}.calendar-agenda-list strong{overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.calendar-agenda-list small{color:var(--muted);font-size:10px}.calendar-agenda-list .ti-chevron-right{color:var(--faint)}@media (max-width:760px){.calendar-agenda-backdrop{align-items:end;padding:0}.calendar-agenda-sheet{width:100%;max-height:82dvh;border-width:1px 0 0;border-radius:18px 18px 0 0;padding-bottom:env(safe-area-inset-bottom)}.calendar-more-count{min-height:22px}}.flux-auth-page{display:grid;place-items:center;min-height:100dvh;padding:20px;background:var(--app-bg)}.auth-panel{width:min(100%,390px);padding:24px;border:1px solid var(--border);border-radius:16px;background:var(--surface);box-shadow:var(--shadow)}.auth-brand{display:flex;align-items:center;gap:11px;margin-bottom:22px}.auth-brand-mark{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;border-radius:12px;background:var(--accent-soft);color:var(--accent);font-size:21px}.auth-brand h1{color:var(--text);font-size:17px;font-weight:900}.auth-brand p{margin-top:3px;color:var(--muted);font-size:11px}.auth-mode-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;margin-bottom:20px;padding:4px;border:1px solid var(--border);border-radius:12px;background:var(--surface-2)}.auth-mode-tabs button{min-height:40px;border:0;border-radius:9px;background:transparent;color:var(--muted);font-size:12px;font-weight:800}.auth-mode-tabs button.active{background:var(--surface);color:var(--text);box-shadow:0 2px 10px #00000014}.auth-form{display:flex;flex-direction:column;gap:13px}.auth-field{display:flex;flex-direction:column;gap:6px}.auth-field-label{color:var(--text-soft);font-size:11px;font-weight:800}.auth-field input{width:100%;min-height:44px;padding:0 12px;border:1px solid var(--border-strong);border-radius:10px;outline:0;background:var(--input-bg);color:var(--text);font-size:13px}.auth-field input:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.auth-owner-options{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.auth-owner-options button{min-height:44px;border:1px solid var(--border-strong);border-radius:10px;background:var(--surface);color:var(--muted);font-size:11px;font-weight:800}.auth-owner-options button.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.auth-message{min-height:0}.auth-error{display:flex;align-items:center;gap:7px;padding:10px 11px;border:1px solid var(--danger-border);border-radius:10px;background:var(--danger-bg);color:var(--danger);font-size:11px}.auth-submit{display:flex;align-items:center;justify-content:center;gap:7px;min-height:46px;border:0;border-radius:11px;background:var(--accent);color:#fff;font-size:13px;font-weight:900}.auth-submit:disabled{opacity:.62}.auth-switch{display:flex;justify-content:center;gap:6px;margin-top:18px;color:var(--muted);font-size:10px}.auth-switch button{border:0;background:none;color:var(--accent);font-size:inherit;font-weight:850}@media (max-width:430px){.flux-auth-page{align-items:stretch;padding:0}.auth-panel{min-height:100dvh;padding:calc(24px + env(safe-area-inset-top)) 18px calc(24px + env(safe-area-inset-bottom));border:0;border-radius:0;box-shadow:none}}.task-editor-close{display:none;place-items:center;width:44px;height:44px;margin-left:auto;border:0;border-radius:12px;background:var(--surface-2);color:var(--text);font-size:19px}@media (max-width:820px){.tasks-layout:not(.editor-active) .task-detail-panel{display:none}.tasks-layout.editor-active .task-detail-panel{position:fixed;top:0;right:0;bottom:0;left:0;z-index:470;display:flex;flex-direction:column;width:100%;max-width:none;max-height:100dvh;padding:0 14px;border:0;border-radius:0;background:var(--app-bg);overflow-y:auto}.tasks-layout.editor-active .task-detail-panel>.portal-panel-head{position:sticky;top:0;z-index:2;min-height:64px;margin:0 -14px 12px;padding:calc(8px + env(safe-area-inset-top)) 14px 8px;background:var(--app-bg);border-bottom:1px solid var(--border)}.tasks-layout.editor-active .task-editor-close{display:grid}.tasks-layout.editor-active .task-editor-actions{position:sticky;bottom:0;z-index:2;margin:8px -14px 0;padding:10px 14px calc(10px + env(safe-area-inset-bottom));background:var(--app-bg);border-top:1px solid var(--border)}.tasks-layout.editor-active .task-editor-form{padding-bottom:18px}.app-shell:has(.tasks-layout.editor-active) .portal-mobile-nav{display:none}}@media (max-width:1024px){.flux-home-shell .center-col.flux-home-center:has(>.flux-home-real){padding-bottom:calc(82px + env(safe-area-inset-bottom));scroll-padding-bottom:calc(82px + env(safe-area-inset-bottom))}}@media (max-width:760px){.flux-home-shell .center-col.flux-home-center:has(>.flux-home-real){padding-bottom:calc(96px + env(safe-area-inset-bottom));scroll-padding-bottom:calc(96px + env(safe-area-inset-bottom))}.flux-home-shell .flux-home-real .flux-media-card{margin-bottom:4px}}@media (min-width:761px) and (max-width:1100px) and (max-height:650px) and (orientation:landscape){.flux-home-shell .center-col.flux-home-center:has(>.flux-home-real){padding-bottom:12px;scroll-padding-bottom:12px}}:root[data-theme=light] .flux-home-shell .flux-home-real :is(.flux-account-chip,.flux-link-button,.ha-expand-rooms){border-color:var(--border-strong);background:var(--surface-2);color:var(--text-soft)}:root[data-theme=light] .flux-home-shell .flux-home-real .flux-account-chip i{color:var(--accent)}:root[data-theme=light] .flux-home-shell .flux-home-real :is(.ha-weather-forecast>span,.ha-weather-metric){border-color:var(--border);background:var(--surface-2);color:var(--text)}:root[data-theme=light] .flux-home-shell .flux-home-real .ha-weather-forecast strong{color:var(--text)}:root[data-theme=light] .flux-home-shell .flux-home-real .ha-weather-forecast small{color:var(--muted)}:root[data-theme=light] .flux-home-shell .flux-home-real .flux-chip.cyan{--flux-accent:#006f80}:root[data-theme=light] .flux-home-shell .flux-home-real .flux-chip.blue{--flux-accent:#2859b8}:root[data-theme=light] .flux-home-shell .flux-home-real .flux-chip.violet{--flux-accent:#6842b8}:root[data-theme=light] .flux-home-shell .flux-home-real .flux-chip.rose{--flux-accent:#a32670}:root[data-theme=light] .flux-home-shell .flux-home-real .flux-chip.amber{--flux-accent:#765000}:root[data-theme=light] .flux-home-shell .flux-home-real .flux-chip.mint{--flux-accent:#087052}:root[data-theme=light] .flux-home-shell .flux-home-real .flux-event-list article.blue{--event-accent:#2859b8}:root[data-theme=light] .flux-home-shell .flux-home-real .flux-event-list article.violet{--event-accent:#6842b8}:root[data-theme=light] .flux-home-shell .flux-home-real .flux-event-list article.rose{--event-accent:#a32670}:root[data-theme=light] .flux-home-shell .flux-home-real .flux-event-list article.amber{--event-accent:#765000}:root[data-theme=light] .flux-home-shell .flux-home-real .flux-event-list article.mint{--event-accent:#087052}:root[data-theme=light] .flux-home-shell .flux-home-real .flux-task-item.blue{--task-accent:#2859b8}:root[data-theme=light] .flux-home-shell .flux-home-real .flux-task-item.violet{--task-accent:#6842b8}:root[data-theme=light] .flux-home-shell .flux-home-real .flux-task-item.amber{--task-accent:#765000}:root[data-theme=light] .flux-home-shell .flux-home-real .flux-task-item.mint{--task-accent:#087052}:root[data-theme=light] .flux-home-shell .flux-home-real :is(.flux-room-summary.cyan,.ha-room-group.cyan){--room-accent:#006f80}:root[data-theme=light] .flux-home-shell .flux-home-real :is(.flux-room-summary.blue,.ha-room-group.blue){--room-accent:#2859b8}:root[data-theme=light] .flux-home-shell .flux-home-real :is(.flux-room-summary.violet,.ha-room-group.violet){--room-accent:#6842b8}:root[data-theme=light] .flux-home-shell .flux-home-real :is(.flux-room-summary.rose,.ha-room-group.rose){--room-accent:#a32670}:root[data-theme=light] .flux-home-shell .flux-home-real :is(.flux-room-summary.amber,.ha-room-group.amber){--room-accent:#765000}:root[data-theme=light] .flux-home-shell .flux-home-real :is(.flux-room-summary.mint,.ha-room-group.mint){--room-accent:#087052}:root[data-theme=light] .flux-home-shell .flux-home-real .ha-weather-metric.humidity{--metric-accent:#006f80}:root[data-theme=light] .flux-home-shell .flux-home-real .ha-weather-metric.rain{--metric-accent:#2859b8}:root[data-theme=light] .flux-home-shell .flux-home-real .ha-weather-metric.wind{--metric-accent:#6842b8}@media (prefers-color-scheme:light){:root:not([data-theme]) .flux-home-shell .flux-home-real :is(.flux-account-chip,.flux-link-button,.ha-expand-rooms){border-color:var(--border-strong);background:var(--surface-2);color:var(--text-soft)}:root:not([data-theme]) .flux-home-shell .flux-home-real .flux-account-chip i{color:var(--accent)}:root:not([data-theme]) .flux-home-shell .flux-home-real :is(.ha-weather-forecast>span,.ha-weather-metric){border-color:var(--border);background:var(--surface-2);color:var(--text)}:root:not([data-theme]) .flux-home-shell .flux-home-real .ha-weather-forecast strong{color:var(--text)}:root:not([data-theme]) .flux-home-shell .flux-home-real .ha-weather-forecast small{color:var(--muted)}:root:not([data-theme]) .flux-home-shell .flux-home-real .flux-chip.cyan{--flux-accent:#006f80}:root:not([data-theme]) .flux-home-shell .flux-home-real .flux-chip.blue{--flux-accent:#2859b8}:root:not([data-theme]) .flux-home-shell .flux-home-real .flux-chip.violet{--flux-accent:#6842b8}:root:not([data-theme]) .flux-home-shell .flux-home-real .flux-chip.rose{--flux-accent:#a32670}:root:not([data-theme]) .flux-home-shell .flux-home-real .flux-chip.amber{--flux-accent:#765000}:root:not([data-theme]) .flux-home-shell .flux-home-real .flux-chip.mint{--flux-accent:#087052}:root:not([data-theme]) .flux-home-shell .flux-home-real .flux-event-list article.blue{--event-accent:#2859b8}:root:not([data-theme]) .flux-home-shell .flux-home-real .flux-event-list article.violet{--event-accent:#6842b8}:root:not([data-theme]) .flux-home-shell .flux-home-real .flux-event-list article.rose{--event-accent:#a32670}:root:not([data-theme]) .flux-home-shell .flux-home-real .flux-event-list article.amber{--event-accent:#765000}:root:not([data-theme]) .flux-home-shell .flux-home-real .flux-event-list article.mint{--event-accent:#087052}:root:not([data-theme]) .flux-home-shell .flux-home-real .flux-task-item.blue{--task-accent:#2859b8}:root:not([data-theme]) .flux-home-shell .flux-home-real .flux-task-item.violet{--task-accent:#6842b8}:root:not([data-theme]) .flux-home-shell .flux-home-real .flux-task-item.amber{--task-accent:#765000}:root:not([data-theme]) .flux-home-shell .flux-home-real .flux-task-item.mint{--task-accent:#087052}:root:not([data-theme]) .flux-home-shell .flux-home-real :is(.flux-room-summary.cyan,.ha-room-group.cyan){--room-accent:#006f80}:root:not([data-theme]) .flux-home-shell .flux-home-real :is(.flux-room-summary.blue,.ha-room-group.blue){--room-accent:#2859b8}:root:not([data-theme]) .flux-home-shell .flux-home-real :is(.flux-room-summary.violet,.ha-room-group.violet){--room-accent:#6842b8}:root:not([data-theme]) .flux-home-shell .flux-home-real :is(.flux-room-summary.rose,.ha-room-group.rose){--room-accent:#a32670}:root:not([data-theme]) .flux-home-shell .flux-home-real :is(.flux-room-summary.amber,.ha-room-group.amber){--room-accent:#765000}:root:not([data-theme]) .flux-home-shell .flux-home-real :is(.flux-room-summary.mint,.ha-room-group.mint){--room-accent:#087052}:root:not([data-theme]) .flux-home-shell .flux-home-real .ha-weather-metric.humidity{--metric-accent:#006f80}:root:not([data-theme]) .flux-home-shell .flux-home-real .ha-weather-metric.rain{--metric-accent:#2859b8}:root:not([data-theme]) .flux-home-shell .flux-home-real .ha-weather-metric.wind{--metric-accent:#6842b8}}.flux-home-shell :is(.month-picker-button,.calendar-title,.finance-header h1,.flightlog-header h1,.portal-panel-head h2,.portal-panel h2,.finance-panel-head,.calendar-list-day-head,.flightlog-route,.flight-portal-selected-date,.media-result-card strong,.media-request-card strong,.media-detail-hero h2,.task-main strong,.task-row strong,.flightlog-row strong,.flight-portal-flight-card strong,.finance-summary-card strong,.portal-summary-card strong){color:var(--text)}.flux-home-shell :is(.portal-panel-head>span,.portal-empty-line,.finance-empty,.calendar-inline-status,.media-result-card p,.media-result-card small,.media-request-card small,.task-main em,.task-meta,.finance-summary-card span,.portal-summary-card span){color:var(--muted)}.flux-home-shell .portal-empty-line{border-color:var(--border-strong);background:var(--surface-2)}.flux-home-shell .finance-summary-card span{color:var(--muted)}.flux-home-shell .finance-summary-card strong{color:var(--text)}:root[data-theme=light] .flux-home-shell .finance-summary-card.green i{color:#3d5e42}:root[data-theme=oled] .flux-home-shell .finance-summary-card.green i{color:#8eeb95}@media (prefers-color-scheme: light){:root:not([data-theme]) .flux-home-shell .finance-summary-card.green i{color:#3d5e42}}@media (prefers-color-scheme: dark){:root:not([data-theme]) .flux-home-shell .finance-summary-card.green i{color:#8eeb95}}:root[data-theme=light] .flux-home-shell .flux-weather-metrics>span{border-color:var(--border);background:var(--surface-2);color:var(--text-soft)}@media (prefers-color-scheme:light){:root:not([data-theme]) .flux-home-shell .flux-weather-metrics>span{border-color:var(--border);background:var(--surface-2);color:var(--text-soft)}}.flux-home-real .ha-home-actions{display:flex;flex-flow:row nowrap;align-items:stretch;gap:6px;min-width:0;overflow:hidden}.flux-home-real .ha-home-actions .flux-signal-action{flex:0 0 auto;width:auto;min-height:44px;padding:0 10px}.ha-room-selector{display:flex;flex:1 1 auto;gap:5px;min-width:0;overflow-x:auto;padding-bottom:2px;scrollbar-width:none}.ha-room-selector::-webkit-scrollbar{display:none}.ha-room-selector button{display:flex;align-items:center;justify-content:center;gap:5px;flex:1 0 68px;min-width:68px;min-height:44px;padding:0 8px;border:1px solid var(--border-strong);border-radius:8px;background:var(--surface-2);color:var(--text-soft);font-size:10px;font-weight:850;white-space:nowrap;cursor:pointer}.ha-room-selector button i{color:var(--muted);font-size:14px}.ha-room-selector button.active{border-color:color-mix(in srgb,var(--accent) 42%,var(--border));background:var(--accent-soft);color:var(--accent)}.ha-room-selector button.active i{color:var(--accent)}.ha-room-group.material-room-panel .material-live-layout{display:grid;gap:10px;min-width:0}.ha-room-group.material-room-panel .material-light-row{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(64px,1fr);gap:6px;min-width:0;overflow-x:auto;padding-bottom:2px;scrollbar-width:none}.ha-room-group.material-room-panel .material-light-row::-webkit-scrollbar{display:none}.ha-room-group.material-room-panel .material-device-stack{display:grid;gap:10px;min-width:0}.ha-room-group.material-room-panel .material-light-wrap{min-width:64px}.ha-room-group.material-room-panel .material-light-control{min-height:94px;padding:8px 34px 8px 8px;touch-action:manipulation}.ha-room-group.material-room-panel .material-light-control .md-device-icon{width:32px;height:32px;font-size:16px}.ha-room-group.material-room-panel .material-light-control .md-light-copy strong{overflow:hidden;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.ha-room-group.material-room-panel .material-light-control .md-light-fill{inset:auto 0 0 0;width:100%;height:var(--brightness)}.ha-room-group.material-room-panel .material-light-control .md-swipe-track{display:none}.ha-room-group.material-room-panel .md-vertical-brightness{position:absolute;z-index:3;top:8px;right:-4px;width:44px;height:76px;margin:0;writing-mode:vertical-lr;direction:rtl;-webkit-appearance:slider-vertical;-moz-appearance:auto;appearance:auto;accent-color:#705500;cursor:ns-resize}.ha-room-group.material-room-panel .md-vertical-brightness:focus-visible{outline:3px solid var(--accent);outline-offset:1px}@media (max-width:760px){.flux-home-real .ha-home-actions{margin-right:-4px}.flux-home-real .ha-home-actions .flux-signal-action{min-width:44px;padding:0 9px}.flux-home-real .ha-home-actions .flux-signal-action strong{display:none}.ha-room-selector button{flex-basis:66px;min-width:66px}.ha-room-group.material-room-panel .material-light-row{grid-auto-columns:minmax(62px,1fr)}}.flux-home-real .ha-room-selector button{flex-basis:76px;min-width:76px;padding-inline:9px;color:var(--text-soft);font-size:12px;font-weight:700;line-height:1.2}.flux-home-real .ha-room-selector button i{color:var(--muted);font-size:15px}.flux-home-real .ha-room-selector button.active{border-color:color-mix(in srgb,var(--accent) 46%,var(--border));background:color-mix(in srgb,var(--accent) 13%,var(--surface));color:var(--accent)}.flux-home-real .ha-room-selector button.active i{color:var(--accent)}.ha-room-group.material-room-panel .material-light-row{grid-auto-columns:minmax(92px,1fr);gap:8px}.ha-room-group.material-room-panel .material-light-wrap{min-width:92px}.ha-room-group.material-room-panel .material-light-control{min-height:104px;padding:9px 38px 9px 9px;border-color:var(--border);background:var(--surface-2);color:var(--text-soft)}.ha-room-group.material-room-panel .material-light-control.is-on{border-color:color-mix(in srgb,#c98b00 48%,var(--border));background:color-mix(in srgb,#ffc247 12%,var(--surface));color:var(--text)}.ha-room-group.material-room-panel .material-light-control .md-light-fill{background:color-mix(in srgb,#ffc247 21%,transparent)}.ha-room-group.material-room-panel .material-light-control .md-device-icon.yellow{background:color-mix(in srgb,#ffc247 18%,var(--surface-2));color:#8a5d00}.ha-room-group.material-room-panel .material-light-control .md-light-copy strong{font-size:13px;font-weight:700;line-height:1.25}.ha-room-group.material-room-panel .material-light-control .md-light-copy small{color:var(--text-soft);font-size:11px;font-weight:600;line-height:1.25;font-variant-numeric:tabular-nums}.ha-room-group.material-room-panel .md-vertical-brightness{accent-color:#c98b00}.ha-room-group.material-room-panel :is(.material-cover-card,.material-climate-card){border-color:var(--border-strong);background:var(--surface)}.ha-room-group.material-room-panel .material-cover-card .md-device-icon.green{background:color-mix(in srgb,var(--room-accent) 15%,var(--surface-2));color:var(--room-accent);border:1px solid var(--border);font-size:18px}.ha-room-group.material-room-panel .material-cover-card .left,.ha-room-group.material-room-panel .material-cover-card .right{background:color-mix(in srgb,var(--room-accent) 42%,var(--surface-2))}.ha-room-group.material-room-panel .material-climate-card .md-device-icon.blue{background:color-mix(in srgb,#4f8cff 15%,var(--surface-2));color:#4f8cff}.ha-room-group.material-room-panel .material-climate-card.is-on{border-color:color-mix(in srgb,#4f8cff 38%,var(--border));background:color-mix(in srgb,#4f8cff 9%,var(--surface))}.ha-room-group.material-room-panel .md-device-card-head strong,.ha-room-group.material-room-panel .ha-entity-name{color:var(--text);font-size:14px;font-weight:700}.ha-room-group.material-room-panel .md-device-card-head small,.ha-room-group.material-room-panel .ha-control-label,.ha-room-group.material-room-panel .ha-fan-heading small{color:var(--text-soft);font-size:11px;font-weight:600;line-height:1.35}.ha-room-group.material-room-panel :is(.ha-mode-buttons,.ha-fan-buttons) button{border:1px solid var(--border);background:var(--surface-2);color:var(--text-soft);font-size:11px;font-weight:650}.ha-room-group.material-room-panel :is(.ha-mode-buttons,.ha-fan-buttons) button.active{border-color:color-mix(in srgb,#4f8cff 42%,var(--border));background:color-mix(in srgb,#4f8cff 16%,var(--surface));color:var(--text)}.ha-room-group.material-room-panel :is(button,input):disabled{cursor:not-allowed}.ha-room-group.material-room-panel button:disabled{opacity:.68}:root[data-theme=oled] .ha-room-group.material-room-panel .material-light-control.is-on{border-color:color-mix(in srgb,#ffc247 48%,var(--border));background:color-mix(in srgb,#ffc247 12%,var(--surface));color:var(--text)}:root[data-theme=oled] .ha-room-group.material-room-panel .material-light-control .md-light-fill{background:color-mix(in srgb,#ffc247 18%,transparent)}:root[data-theme=oled] .ha-room-group.material-room-panel .material-light-control .md-device-icon.yellow{color:#ffc247}@media (prefers-color-scheme:dark){:root:not([data-theme]) .ha-room-group.material-room-panel .material-light-control.is-on{border-color:color-mix(in srgb,#ffc247 48%,var(--border));background:color-mix(in srgb,#ffc247 12%,var(--surface));color:var(--text)}:root:not([data-theme]) .ha-room-group.material-room-panel .material-light-control .md-light-fill{background:color-mix(in srgb,#ffc247 18%,transparent)}:root:not([data-theme]) .ha-room-group.material-room-panel .material-light-control .md-device-icon.yellow{color:#ffc247}}@media (max-width:760px){.settings-segment{grid-template-columns:repeat(2,minmax(0,1fr))}.flux-home-real .ha-room-selector button{flex-basis:74px;min-width:74px}.ha-room-group.material-room-panel .material-light-row{grid-auto-columns:minmax(92px,1fr)}}.account-page{display:grid;gap:12px;width:100%;max-width:1280px;margin:0 auto;color:var(--text)}.account-profile-panel,.account-setting-panel,.account-session-panel{border:1px solid var(--border);border-radius:8px;background:var(--surface)}.account-profile-panel{display:flex;align-items:center;gap:14px;min-height:96px;padding:16px}.account-avatar{display:grid;place-items:center;flex:0 0 52px;width:52px;height:52px;border:1px solid color-mix(in srgb,var(--accent) 24%,var(--border));border-radius:50%;background:var(--accent-soft);color:var(--accent);font-size:20px;font-weight:850}.account-profile-copy{display:grid;gap:3px;min-width:0}.account-profile-copy strong{overflow:hidden;color:var(--text);font-size:18px;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}.account-profile-copy span,.account-profile-copy small{overflow:hidden;color:var(--muted);font-size:12px;line-height:1.4;text-overflow:ellipsis;white-space:nowrap}.account-profile-copy small{color:var(--text-soft);font-weight:700}.account-settings-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;align-items:start}.account-setting-panel{padding:16px}.account-section-head{display:flex;align-items:center;gap:11px;min-width:0;margin-bottom:14px}.account-section-icon{display:grid;place-items:center;flex:0 0 40px;width:40px;height:40px;border-radius:8px;background:var(--surface-2);color:var(--accent);font-size:19px}.account-section-head>div{min-width:0}.account-section-head h2{margin:0;color:var(--text);font-size:14px;font-weight:800;line-height:1.35}.account-section-head p{margin:2px 0 0;color:var(--muted);font-size:11px;line-height:1.4}.account-theme-panel .settings-segment{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:5px}.account-theme-panel .settings-segment button{min-height:44px;font-size:12px}.account-storage-note{display:flex;align-items:center;gap:6px;margin-top:10px;color:var(--muted);font-size:10px;line-height:1.4}.account-color-list{display:grid}.account-color-row{display:grid;grid-template-columns:minmax(0,1fr) auto 36px;align-items:center;gap:9px;min-height:48px;border-bottom:1px solid var(--border-soft)}.account-color-label{display:flex;align-items:center;gap:9px;min-width:0;color:var(--text);font-size:12px;font-weight:700}.account-color-swatch{flex:0 0 22px;width:22px;height:22px;border:1px solid var(--border-strong);border-radius:6px}.account-color-preview{padding:4px 8px;border-radius:6px;font-size:10px;font-weight:750;white-space:nowrap}.account-color-row input[type=color]{width:44px;height:44px;padding:2px;border:1px solid var(--border);border-radius:7px;background:var(--surface-2);cursor:pointer}.account-save-button,.account-session-panel button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;border:1px solid transparent;border-radius:8px;font-size:12px;font-weight:800}.account-save-button{width:100%;margin-top:12px;background:var(--accent);color:#fff}.account-save-button:disabled{background:var(--accent-muted);cursor:wait}.account-save-error{margin:8px 0 0;color:var(--danger);font-size:11px;font-weight:700;line-height:1.45}.account-session-panel{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px}.account-session-panel>div{display:grid;gap:3px;min-width:0}.account-session-panel strong{color:var(--text);font-size:13px}.account-session-panel span{color:var(--muted);font-size:11px;line-height:1.4}.account-session-panel button{flex:0 0 auto;padding:0 13px;border-color:var(--danger-border);background:var(--danger-bg);color:var(--danger)}.account-page :is(button,input):focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 32%,transparent);outline-offset:2px}@media (max-width:760px){.account-settings-grid{grid-template-columns:1fr;gap:10px}.account-profile-panel,.account-setting-panel{padding:14px}.account-session-panel{align-items:stretch;flex-direction:column}.account-session-panel button{width:100%}}@media (max-width:1024px){.flux-home-shell .flux-home-center{padding-bottom:calc(82px + env(safe-area-inset-bottom))!important}}@media (min-width:761px) and (max-width:1024px){.flux-home-shell .portal-mobile-nav{display:none!important}.flux-home-shell .flux-home-center{padding-bottom:calc(14px + env(safe-area-inset-bottom))!important;scroll-padding-bottom:calc(14px + env(safe-area-inset-bottom))}}@media (max-width:360px){.account-color-row{grid-template-columns:minmax(0,1fr) 44px}.account-color-preview{display:none}.account-theme-panel .settings-segment button{padding:0 5px;font-size:11px}}:root[data-theme=light] .flux-home-shell{--app-bg:#f4f5f4;--surface:#ffffff;--surface-2:#f0f2f0;--soft:#f7f8f7;--input-bg:#ffffff;--text:#202521;--text-soft:#414a43;--muted:#626d65;--faint:#737e76;--border:rgba(31,40,33,.11);--border-soft:rgba(31,40,33,.075);--border-strong:rgba(31,40,33,.18);--accent:#3d5e42;--accent-soft:rgba(61,94,66,.11);--accent-muted:#6b8f71;--shadow:0 12px 32px rgba(33,43,35,.09)}:root[data-theme=oled] .flux-home-shell{--app-bg:#000000;--surface:#070907;--surface-2:#101310;--soft:#0b0e0b;--input-bg:#050705;--text:#f2f5f2;--text-soft:#d2dad3;--muted:#a5afa6;--faint:#818c82;--border:rgba(255,255,255,.12);--border-soft:rgba(255,255,255,.075);--border-strong:rgba(255,255,255,.2);--accent:#8eeb95;--accent-soft:rgba(142,235,149,.12);--accent-muted:#72bd78;--shadow:0 16px 40px rgba(0,0,0,.52)}@media (prefers-color-scheme:light){:root:not([data-theme]) .flux-home-shell{--app-bg:#f4f5f4;--surface:#ffffff;--surface-2:#f0f2f0;--soft:#f7f8f7;--input-bg:#ffffff;--text:#202521;--text-soft:#414a43;--muted:#626d65;--faint:#737e76;--border:rgba(31,40,33,.11);--border-soft:rgba(31,40,33,.075);--border-strong:rgba(31,40,33,.18);--accent:#3d5e42;--accent-soft:rgba(61,94,66,.11);--accent-muted:#6b8f71;--shadow:0 12px 32px rgba(33,43,35,.09)}}@media (prefers-color-scheme:dark){:root:not([data-theme]) .flux-home-shell{--app-bg:#000000;--surface:#070907;--surface-2:#101310;--soft:#0b0e0b;--input-bg:#050705;--text:#f2f5f2;--text-soft:#d2dad3;--muted:#a5afa6;--faint:#818c82;--border:rgba(255,255,255,.12);--border-soft:rgba(255,255,255,.075);--border-strong:rgba(255,255,255,.2);--accent:#8eeb95;--accent-soft:rgba(142,235,149,.12);--accent-muted:#72bd78;--shadow:0 16px 40px rgba(0,0,0,.52)}}.flux-home-real .flux-room-section{border-color:var(--border-strong);background:var(--surface);color:var(--text)}.flux-home-real .flux-room-section .flux-kicker{color:var(--muted);font-size:10px;font-weight:700}.flux-home-real .flux-room-section .flux-card-head h2{color:var(--text);font-size:17px;font-weight:750;line-height:1.25}.flux-home-real .ha-home-actions .flux-signal-action strong{color:var(--text);font-size:12px;font-weight:700}.flux-home-real .ha-room-selector button{border-color:var(--border-strong);background:var(--surface-2);color:var(--text-soft)}.flux-home-real .ha-room-selector button.active{border-color:color-mix(in srgb,var(--accent) 46%,var(--border));background:var(--accent-soft);color:var(--accent)}.flux-home-real .ha-room-group-head strong{color:var(--text);font-size:16px;font-weight:700;line-height:1.3}.flux-home-real .ha-room-group-head small{color:var(--text-soft);font-size:12px;font-weight:600;line-height:1.4}.flux-home-real .ha-room-group-icon{border:1px solid var(--border);background:var(--surface-2)}.ha-room-group.material-room-panel .material-light-row{grid-auto-columns:minmax(104px,1fr)}.ha-room-group.material-room-panel .material-light-wrap{min-width:104px}.ha-room-group.material-room-panel .material-light-control{min-height:108px;padding:10px;touch-action:pan-x;-webkit-tap-highlight-color:transparent}.ha-room-group.material-room-panel .material-light-control.is-adjusting{border-color:color-mix(in srgb,#c98b00 58%,var(--border));background:color-mix(in srgb,#ffc247 14%,var(--surface));color:var(--text);cursor:ns-resize;transform:scale(.985)}.ha-room-group.material-room-panel .material-light-control:disabled{opacity:1;color:var(--muted)}.ha-room-group.material-room-panel .md-vertical-brightness{top:auto;right:8px;bottom:3px;left:8px;width:calc(100% - 16px);height:26px;margin:0;writing-mode:horizontal-tb;direction:ltr;opacity:0;pointer-events:none;accent-color:#c98b00}.ha-room-group.material-room-panel .md-vertical-brightness:focus-visible{opacity:1;outline:3px solid var(--accent);outline-offset:1px;background:var(--surface)}.ha-room-group.material-room-panel .material-cover-card .md-device-icon.green{background:var(--surface-2)}.ha-room-group.material-room-panel .material-climate-card.is-on{background:color-mix(in srgb,#4f8cff 5%,var(--surface))}.ha-room-group.material-room-panel .md-device-card-head small,.ha-room-group.material-room-panel .ha-control-label,.ha-room-group.material-room-panel .ha-fan-heading small{color:var(--text-soft);font-size:12px;font-weight:600;line-height:1.4}@media (max-width:760px){.ha-room-group.material-room-panel .material-light-row{grid-auto-columns:minmax(104px,1fr)}}:root[data-theme=light],:root[data-theme=light] .flux-home-shell{--app-bg:#f4f5f6;--surface:#ffffff;--surface-2:#f1f3f4;--soft:#f7f8f9;--input-bg:#ffffff;--text:#1f2428;--text-soft:#3f484f;--muted:#667078;--faint:#7a858d;--border:rgba(24,31,36,.1);--border-soft:rgba(24,31,36,.07);--border-strong:rgba(24,31,36,.16);--accent:#3d5e42;--accent-soft:rgba(61,94,66,.11);--accent-muted:#6b8f71;--shadow:0 10px 28px rgba(20,28,24,.08)}@media (prefers-color-scheme:light){:root:not([data-theme]),:root:not([data-theme]) .flux-home-shell{--app-bg:#f4f5f6;--surface:#ffffff;--surface-2:#f1f3f4;--soft:#f7f8f9;--input-bg:#ffffff;--text:#1f2428;--text-soft:#3f484f;--muted:#667078;--faint:#7a858d;--border:rgba(24,31,36,.1);--border-soft:rgba(24,31,36,.07);--border-strong:rgba(24,31,36,.16);--accent:#3d5e42;--accent-soft:rgba(61,94,66,.11);--accent-muted:#6b8f71;--shadow:0 10px 28px rgba(20,28,24,.08)}}.flux-home-real .flux-room-section{border-color:var(--border)}.flux-home-real .flux-room-summary-arrow{color:var(--muted)}.flux-home-real .ha-home-actions .flux-signal-action{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--border-strong)!important;border-radius:10px!important;background:var(--surface-2)!important;background-image:none!important;box-shadow:none!important;color:var(--text)!important;overflow:hidden}.flux-home-real .ha-home-actions .flux-signal-action:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 35%,transparent);outline-offset:2px}.ha-room-group.material-room-panel .material-light-row{grid-auto-columns:58px;gap:6px}.ha-room-group.material-room-panel .material-light-wrap{width:58px;min-width:58px}.ha-room-group.material-room-panel .material-light-control{min-height:96px;padding:7px 5px;touch-action:manipulation;user-select:none;-webkit-user-select:none}.ha-room-group.material-room-panel .material-light-control.is-dimmable{touch-action:pan-x}.ha-room-group.material-room-panel .material-light-control .md-light-top{justify-content:center;gap:3px}.ha-room-group.material-room-panel .material-light-control .md-light-top>i{display:none}.ha-room-group.material-room-panel .material-light-control .md-device-icon{width:28px;height:28px;font-size:15px}.ha-room-group.material-room-panel .material-light-control .md-light-copy{align-items:center;text-align:center}.ha-room-group.material-room-panel .material-light-control .md-light-copy strong{font-size:11px}.ha-room-group.material-room-panel .material-light-control .md-light-copy small{font-size:9px}.flux-home-real .flux-task-item{grid-template-columns:16px minmax(0,1fr);column-gap:8px;padding-inline:10px;border-left:1px solid var(--border)}.flux-home-real .flux-task-item>i{align-self:center;justify-self:center;width:16px;margin:0;font-size:14px;line-height:1}.ha-room-group.material-room-panel .ha-mode-buttons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;width:100%}.ha-room-group.material-room-panel .ha-mode-buttons button{min-width:0;padding-inline:5px}@media (max-width:430px){.ha-room-group.material-room-panel .material-light-row{grid-auto-columns:58px}}.flux-home-real .ha-room-group.material-room-panel .material-device-stack{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:start;gap:8px}.flux-home-real .ha-room-group.material-room-panel .material-device-stack>:is(.material-cover-card,.material-climate-card){grid-column:auto;width:100%;min-width:0;min-height:0;padding:10px}.flux-home-real .ha-room-group.material-room-panel .material-device-stack .md-device-icon{width:34px;height:34px;font-size:16px}.flux-home-real .ha-room-group.material-room-panel .material-device-stack .md-device-card-head{gap:8px}.flux-home-real .ha-room-group.material-room-panel .material-device-stack .md-device-card-head strong,.flux-home-real .ha-room-group.material-room-panel .material-device-stack .ha-entity-name{font-size:13px}.flux-home-real .ha-room-group.material-room-panel .material-device-stack .md-device-card-head small{font-size:10px}.flux-home-real .ha-room-group.material-room-panel .material-cover-card .md-cover-visual{height:40px;margin:8px 0 5px}.flux-home-real .ha-room-group.material-room-panel .material-cover-card .md-cover-actions{gap:5px}.flux-home-real .ha-room-group.material-room-panel .material-cover-card .md-cover-actions button,.flux-home-real .ha-room-group.material-room-panel .material-climate-card .ha-mode-buttons button{min-height:36px}.flux-home-real .ha-room-group.material-room-panel .material-climate-card{display:flex;flex-direction:column;gap:7px}.flux-home-real .ha-room-group.material-room-panel .material-climate-card .ha-power-button{width:36px;height:36px;min-height:36px}.flux-home-real .ha-room-group.material-room-panel .material-climate-card .ha-climate-values>span,.flux-home-real .ha-room-group.material-room-panel .material-climate-card .ha-climate-values label{min-height:38px;padding-inline:8px}.flux-home-real .ha-room-group.material-room-panel .material-climate-card .ha-climate-values input{width:58px;min-height:32px}.flux-home-real .ha-room-group.material-room-panel .material-climate-card .ha-fan-buttons{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.flux-home-real .ha-room-group.material-room-panel .material-climate-card .ha-fan-buttons button{min-height:40px}@media (max-width:539px){.flux-home-real .ha-room-group.material-room-panel .material-device-stack{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:6px}.flux-home-real .ha-room-group.material-room-panel .material-device-stack>:is(.material-cover-card,.material-climate-card){padding:8px}.flux-home-real .ha-room-group.material-room-panel .material-device-stack .md-device-icon{width:30px;height:30px;font-size:15px}.flux-home-real .ha-room-group.material-room-panel .material-device-stack .md-device-card-head{gap:6px}.flux-home-real .ha-room-group.material-room-panel .material-cover-card .md-cover-actions button{gap:3px;padding-inline:2px;font-size:9px}.flux-home-real .ha-room-group.material-room-panel .material-climate-card .ha-climate-values{grid-template-columns:1fr}}@media (max-width:430px){.flux-home-real .ha-room-group.material-room-panel .material-device-stack{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:minmax(220px,76vw);overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:none}.flux-home-real .ha-room-group.material-room-panel .material-device-stack::-webkit-scrollbar{display:none}.flux-home-real .ha-room-group.material-room-panel .material-device-stack>:is(.material-cover-card,.material-climate-card){scroll-snap-align:start}}
