/* AUDIORA — house/house.css  (House hub only; inherits tokens.css + site.css) */

.house-wrap{min-height:100vh;display:flex;flex-direction:column}
.house-top{position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:var(--s4);padding:var(--s4) var(--s6);background:linear-gradient(180deg,rgba(6,4,4,0.85),rgba(6,4,4,0));backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.house-brand{display:flex;align-items:center;gap:var(--s3)}
.house-brand .nav-wordmark{font-size:var(--text-lg)}
.house-kicker{font-family:var(--f-mono);font-size:var(--text-xs);letter-spacing:0.18em;text-transform:uppercase;color:var(--muted)}

.house-main{flex:1;width:100%;max-width:var(--maxw);margin:0 auto;padding:var(--s8) var(--s6) var(--s16);display:grid;grid-template-columns:1fr 320px;gap:var(--s8);align-items:start}
.house-intro{grid-column:1 / -1;max-width:760px}
.house-intro h1{font-size:clamp(34px,6vw,var(--text-3xl));letter-spacing:-0.02em;margin:var(--s3) 0 var(--s4)}
.house-intro h1 em{font-style:normal;background:linear-gradient(120deg,var(--gold-lt),var(--gold) 45%,var(--teal) 110%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.house-intro p{color:var(--text2);font-size:var(--text-md);line-height:1.6}

/* door grid */
.doors{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:var(--s4)}
.door{position:relative;display:flex;flex-direction:column;gap:var(--s2);padding:var(--s6);min-height:200px;border-radius:var(--r-lg);background:var(--glass-bg),var(--surface);border:1px solid var(--border);overflow:hidden;transition:transform var(--trans) var(--ease),border-color var(--trans),box-shadow var(--trans)}
.door:hover{transform:translateY(-5px);border-color:var(--border-strong);box-shadow:var(--shadow-lg)}
.door:focus-visible{outline:2px solid var(--accent-lt);outline-offset:2px}
.door-sigil{position:absolute;right:-20px;top:-20px;width:140px;height:140px;opacity:0.5;pointer-events:none}
.door-eyebrow{font-family:var(--f-mono);font-size:var(--text-xs);letter-spacing:0.12em;text-transform:uppercase;color:var(--accent-lt)}
.door-name{font-family:var(--f-display);font-weight:800;font-size:var(--text-xl);color:var(--text)}
.door-desc{color:var(--text2);font-size:var(--text-sm);line-height:1.55;flex:1}
.door-foot{display:flex;align-items:center;justify-content:space-between;gap:var(--s2);margin-top:var(--s2)}
.door-enter{font-family:var(--f-mono);font-size:var(--text-xs);letter-spacing:0.06em;text-transform:uppercase;color:var(--accent-lt);font-weight:700}
.door-badge{font-family:var(--f-mono);font-size:10px;letter-spacing:0.08em;text-transform:uppercase;color:var(--muted);padding:2px 8px;border-radius:var(--r-pill);border:1px solid var(--border)}
.door-badge.visited{color:var(--accent-lt);border-color:rgba(var(--accent-rgb),0.4);background:rgba(var(--accent-rgb),0.1)}
.door-badge.soon{color:var(--faint)}
.door[data-state="soon"]{opacity:0.7}
.door[data-accent="gold"]{--accent-rgb:212,160,74;--accent-lt:var(--gold-lt)}
.door[data-accent="teal"]{--accent-rgb:0,200,212;--accent-lt:var(--teal-lt)}
.door[data-accent="magenta"]{--accent-rgb:216,103,155;--accent-lt:var(--magenta-lt)}
.door[data-accent="violet"]{--accent-rgb:139,108,212;--accent-lt:#a78fe0}
.door[data-accent="azure"]{--accent-rgb:74,159,212;--accent-lt:#6fb6e0}
.door-accent-line{position:absolute;left:0;right:0;top:0;height:2px;background:linear-gradient(90deg,transparent,rgba(var(--accent-rgb),0.8),transparent);opacity:0;transition:opacity var(--trans)}
.door:hover .door-accent-line{opacity:1}

/* dock */
.house-dock{display:flex;flex-direction:column;gap:var(--s4);position:sticky;top:84px}
.dock-card{padding:var(--s5);border-radius:var(--r-lg);background:var(--glass-bg),var(--surface);border:1px solid var(--border)}
.dock-title{font-family:var(--f-mono);font-size:var(--text-xs);letter-spacing:0.12em;text-transform:uppercase;color:var(--muted);margin-bottom:var(--s3)}
.dock-empty{color:var(--faint);font-size:var(--text-sm)}
.continue-item{display:flex;align-items:center;gap:var(--s3);padding:var(--s2) 0;border-bottom:1px solid var(--border)}
.continue-item:last-child{border-bottom:0}
.continue-item .ci-label{font-size:var(--text-sm);color:var(--text);flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.continue-item .ci-room{font-family:var(--f-mono);font-size:10px;text-transform:uppercase;color:var(--accent-lt)}

/* AI dock */
.ai-status{display:flex;align-items:center;gap:var(--s2);font-size:var(--text-xs);color:var(--muted);margin-bottom:var(--s3)}
.ai-dot{width:8px;height:8px;border-radius:50%;background:var(--faint);flex:0 0 auto}
.ai-dot.online{background:var(--teal)}
.ai-dot.offline{background:var(--magenta)}
.ai-log{display:flex;flex-direction:column;gap:var(--s2);max-height:260px;overflow-y:auto;margin-bottom:var(--s3)}
.ai-msg{padding:var(--s2) var(--s3);border-radius:var(--r);font-size:var(--text-sm);line-height:1.5}
.ai-msg.user{background:rgba(var(--accent-rgb),0.10);border:1px solid rgba(var(--accent-rgb),0.25);align-self:flex-end;max-width:90%}
.ai-msg.bot{background:var(--raised);border:1px solid var(--border);align-self:flex-start;max-width:95%}
.ai-msg.meta{color:var(--faint);font-size:var(--text-xs);align-self:center;text-align:center}
.ai-row{display:flex;gap:var(--s2)}
.ai-input{flex:1;min-width:0}
.ai-input input{width:100%}

@media (max-width:980px){
  .house-main{grid-template-columns:1fr}
  .house-dock{position:static}
}
.house-top-actions{display:flex;align-items:center;gap:var(--s2)}
