/* Home overview uses LAYR's shared type roles; enabled for demo environments. */
#home-overview, #home-assistant-back { display:none; }
.home-overview-enabled.view-agent-active:not(.home-assistant-open) .main { display:flex; flex-direction:column; justify-content:center; min-height:100dvh; padding-top:16px; padding-bottom:64px; }
.home-overview-enabled #view-agent { height:auto; min-height:0; width:100%; overflow:visible; }
.home-overview-enabled #agent-wrap { display:none; }
.home-overview-enabled #home-overview { display:block; width:min(850px,100%); margin:0 auto; color:var(--text); }
.home-overview-enabled.home-assistant-open #home-overview { display:none; }
.home-overview-enabled.home-assistant-open #agent-wrap { display:flex; min-height:calc(100dvh - 120px); }
.home-overview-enabled.home-assistant-open #home-assistant-back { display:inline-flex; align-self:flex-start; margin-bottom:20px; }
#home-overview *, #home-assistant-back { box-sizing:border-box; }
#home-overview button { font-family:inherit; cursor:pointer; }
#home-overview button:focus-visible, #home-assistant-back:focus-visible { outline:2px solid var(--accent); outline-offset:4px; }
#home-overview [hidden] { display:none!important; }
.home-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:24px; margin-bottom:42px; }
.home-date { font-size:var(--type-body); font-weight:400; color:var(--text-soft); margin-bottom:12px; }
#home-overview-greeting { width:fit-content; font-size:var(--type-home-greeting); font-weight:450; line-height:1.25; letter-spacing:-.7px; margin:0; color:#9776e4; background:linear-gradient(96deg, #9776e4 4%, #e975da 42%, #a890f0 68%, #6ad8d0 96%); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; text-shadow:0 8px 22px rgba(222,127,211,0.09); }
.home-refresh-wrap { display:flex; align-items:center; gap:10px; padding-top:2px; font-size:var(--type-caption); color:var(--text-soft); }
.home-section-head { display:flex; align-items:center; justify-content:space-between; gap:12px; }
#home-overview h2 { display:flex; align-items:center; gap:10px; font-size:var(--type-section); line-height:1.5; font-weight:700; margin:0; letter-spacing:-.2px; }
.home-text-button { display:inline-flex; align-items:center; gap:9px; padding:4px 0; border:0; background:transparent; color:var(--text-soft); font-size:var(--type-body); line-height:1.5; font-weight:600; text-align:left; flex-shrink:0; }
.home-text-button:hover { color:var(--text); }
#home-history, #home-updated { color:#aaa; font-weight:400; }
#home-history:hover { color:var(--text-soft); }
.home-metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); }
.home-metric { display:flex; flex-direction:column; gap:8px; padding:4px 28px 6px; border-left:1px solid #eaeae7; }
.home-metric:first-child { padding-left:0; border-left:0; }
.home-metric strong { font-size:var(--type-metric); font-weight:600; font-variant-numeric:tabular-nums; line-height:1.25; }
.home-metric-value { display:flex; align-items:center; gap:10px; }
.home-metric-value svg { order:-1; width:19px; height:19px; color:#000; flex-shrink:0; }
.home-metric span { font-size:var(--type-body); color:var(--text-soft); line-height:1.5; }
.home-attention-banner { display:flex; align-items:center; margin:-10px 0 32px; border:1px solid #f0e6d9; border-radius:12px; background:#fcf8f2; }
.home-banner-open { display:flex; align-items:center; gap:12px; flex:1; min-width:0; padding:16px 18px; border:0; background:transparent; text-align:left; font-size:var(--type-body); line-height:1.5; font-weight:600; color:var(--text); border-radius:12px; }
.home-banner-open:hover { background:#f8f1e7; }
.home-banner-icon { display:flex; color:#aa7a40; }
.home-banner-icon svg { width:19px; height:19px; }
.home-banner-dismiss { display:grid; place-items:center; width:38px; height:38px; flex-shrink:0; padding:0; border:0; background:transparent; border-radius:8px; color:#9d876a; margin-right:8px; }
.home-banner-dismiss:hover { background:#f3eadf; }
.home-banner-dismiss svg { width:16px; height:16px; }
.home-recent { margin-top:32px; padding-top:24px; border-top:1px solid #eaeae7; }
#home-recent-list { margin-top:18px; }
.home-update { display:flex; align-items:center; gap:12px; width:100%; padding:10px 0; border:0; border-bottom:1px solid #efefed; background:transparent; color:var(--text); text-align:left; }
.home-update:last-child { border-bottom:0; }
.home-update:hover { background:#fafaf9; }
.home-update-icon { width:34px; height:34px; display:grid; place-items:center; flex-shrink:0; margin-right:4px; border-radius:50%; background:#f4f4f2; color:#8c8c87; }
.home-update-icon.confirmed, .home-update-icon.booked { background:#eef5ef; color:#58815e; }
.home-update-icon svg { width:18px; height:18px; }
.home-update-copy { display:flex; flex-direction:column; flex:1; min-width:0; gap:5px; }
.home-update-copy strong { font-size:var(--type-body); font-weight:600; line-height:1.5; overflow-wrap:anywhere; }
.home-update-copy > span { font-size:var(--type-caption); color:var(--text-soft); line-height:1.5; }
.home-empty { padding:26px 0; color:var(--text-soft); font-size:var(--type-body); line-height:1.6; margin:0; }
.home-stale { font-size:var(--type-caption); color:#946b3a; line-height:1.6; margin:12px 0; }
.home-ask { display:flex; align-items:center; gap:12px; margin-top:32px; padding:8px 9px 8px 18px; border:1px solid #eaeae7; border-radius:16px; background:#fff; }
.home-ask:focus-within { border-color:#a9a9a4; }
#home-ask-input { flex:1; min-width:0; height:24px; padding:1px 0; border:0; outline:none; resize:none; background:transparent; color:var(--text); font:inherit; font-size:var(--type-body); line-height:1.5; }
#home-ask-input::placeholder { color:#b5b5b5; opacity:1; }
#home-ask-send { display:grid; place-items:center; flex-shrink:0; width:34px; height:34px; padding:0; border:0; border-radius:50%; background:var(--text); color:#fff; }
#home-ask-send:disabled { background:#efefed; color:#a6a6a1; cursor:default; }
#home-ask-send:not(:disabled):hover { background:#333; }
#home-ask-send svg { width:18px; height:18px; }
.home-ask-feedback { margin:8px 0 0; font-size:var(--type-caption); color:var(--text-soft); line-height:1.5; }
@media(max-width:650px) {
 .home-heading { gap:20px; margin-bottom:30px; flex-wrap:wrap; }
 .home-refresh-wrap { width:100%; justify-content:space-between; padding:0; }
 .home-date { margin-bottom:8px; }
 .home-section-head .home-text-button { font-size:var(--type-caption); gap:5px; }
 .home-attention-banner { margin:0 0 28px; }
 .home-banner-open { gap:10px; padding:14px 12px; }
 .home-banner-dismiss { width:36px; height:44px; margin-right:4px; }
 .home-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); row-gap:20px; }
 .home-metric { padding:4px 12px; gap:8px; }
 .home-metric:nth-child(odd) { padding-left:0; border-left:0; }
 .home-metric span { font-size:var(--type-caption); }
 .home-recent { margin-top:28px; padding-top:20px; }
 .home-update { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:6px 8px; padding:16px 0; }
 .home-update-copy { display:contents; }
 .home-update-copy strong { grid-column:1; grid-row:1; }
 .home-update-copy > span { grid-column:1 / -1; grid-row:2; }
 .home-update .status-pill { grid-column:2; grid-row:1; align-self:start; font-size:var(--type-caption); }
 .home-update-icon { display:none; }
 .home-ask { padding-left:14px; }
 #home-ask-input { height:44px; }
 .home-text-button { min-height:44px; }
}
@media(prefers-reduced-motion:reduce) { #home-overview * { animation:none!important; transition:none!important; } }
