/* NeoChris AI workspace */
.site-page-tools { background: #08111f; }
.ai-shell { min-height: calc(100vh - 78px); background: #091321; color: #f7f4e9; }
.ai-login-view { display: grid; grid-template-columns: minmax(0,1.25fr) minmax(360px,.75fr); gap: clamp(3rem,8vw,9rem); align-items: center; width: min(calc(100% - 3rem), 1240px); min-height: calc(100vh - 78px); margin: 0 auto; padding: clamp(4rem,9vw,8rem) 0; }
.ai-login-art { position: relative; padding: 1rem 0 3rem; }
.ai-kicker { margin: 0 0 1.2rem; color: #77d2c2; font-size: .72rem; font-weight: 800; letter-spacing: .2em; }
.ai-login-art h1 { max-width: 9ch; margin: 0; font-family: Georgia,"Noto Serif SC",serif; font-size: clamp(3.5rem,8vw,7.4rem); font-weight: 500; line-height: .93; letter-spacing: -.055em; }
.ai-login-art h1 em { color: #f2c86b; font-style: normal; }
.ai-login-lead { max-width: 32rem; margin: 2rem 0 0; color: #aab4bf; font-size: 1.08rem; }
.ai-signal { display: flex; align-items: end; gap: .45rem; margin-top: 3.5rem; color: #667689; font-size: .67rem; letter-spacing: .12em; }
.ai-signal span { width: 5px; background: #77d2c2; opacity: .75; }
.ai-signal span:nth-child(1){height:18px}.ai-signal span:nth-child(2){height:32px}.ai-signal span:nth-child(3){height:52px;background:#f2c86b}.ai-signal span:nth-child(4){height:37px}.ai-signal span:nth-child(5){height:24px}.ai-signal b { margin-left: .8rem; font-weight: 700; }
.ai-login-card { width: min(100%, 430px); justify-self: end; padding: clamp(1.6rem,4vw,2.8rem); border: 1px solid rgba(236,239,228,.2); background: #0e1c2d; box-shadow: 18px 18px 0 rgba(242,200,107,.13); }
.ai-brand-row { display:flex; align-items:center; gap:.6rem; color:#f7f4e9; font-size:.92rem; font-weight:750; letter-spacing:.02em; }
.ai-mark { display:grid; place-items:center; width:28px; height:28px; border-radius:50%; background:#f2c86b; color:#08111f; font-size:1rem; }
.ai-lock { margin-left:auto; color:#77d2c2; font-size:.72rem; font-weight:600; }
.ai-login-card h2 { margin: 3.6rem 0 .2rem; font-family: Georgia,"Noto Serif SC",serif; font-size:2.35rem; font-weight:500; }
.ai-muted { margin: 0 0 2rem; color:#aab4bf; }
.ai-login-card label { display:block; margin:1.2rem 0 .4rem; color:#d7ddd8; font-size:.86rem; font-weight:700; }
.ai-login-card input { width:100%; border:1px solid rgba(236,239,228,.24); padding:.85rem .9rem; background:#091321; color:#f7f4e9; }
.ai-login-card input:focus { border-color:#f2c86b; outline:2px solid rgba(242,200,107,.25); outline-offset:1px; }
.ai-primary,.ai-outline,.ai-send { cursor:pointer; }
.ai-primary { display:flex; justify-content:space-between; align-items:center; width:100%; min-height:50px; margin-top:1.8rem; padding:.8rem 1rem; border:1px solid #f2c86b; background:#f2c86b; color:#08111f; font-weight:800; }
.ai-primary:hover { background:#ffe29b; }
.ai-form-status { min-height:1.3em; margin:.8rem 0 0; color:#f2a9a9; font-size:.82rem; }
.ai-role-note { display:grid; grid-template-columns:1fr 1fr; gap:1rem; margin-top:2rem; padding-top:1.2rem; border-top:1px solid rgba(236,239,228,.14); }
.ai-role-note div { display:grid; grid-template-columns:auto 1fr; column-gap:.5rem; align-items:center; }
.ai-role-note strong { font-size:.8rem; }.ai-role-note small { grid-column:2; color:#8492a1; font-size:.7rem; line-height:1.4; }
.ai-role-dot { display:inline-block; width:9px; height:9px; border-radius:50%; background:#77d2c2; box-shadow:0 0 0 4px rgba(119,210,194,.12); }.ai-role-dot.admin { background:#f2c86b; box-shadow:0 0 0 4px rgba(242,200,107,.12); }.ai-role-dot.dev { background:#77d2c2; }
.ai-workspace-view { display:grid; grid-template-columns:250px minmax(0,1fr) 280px; min-height:calc(100vh - 78px); }
.ai-sidebar { display:flex; flex-direction:column; padding:1.5rem; border-right:1px solid rgba(236,239,228,.12); background:#0b1726; }
.ai-new-chat { margin-top:2.5rem; padding:.75rem 1rem; border:1px solid rgba(119,210,194,.42); background:rgba(119,210,194,.08); color:#bce9e2; text-align:left; cursor:pointer; }.ai-new-chat:hover{background:rgba(119,210,194,.18)}
.ai-side-label,.ai-card-label { margin:2rem 0 .7rem; color:#718092; font-size:.68rem; letter-spacing:.15em; font-weight:800; text-transform:uppercase; }
.ai-history { display:grid; gap:.25rem; }.ai-history button { display:flex; justify-content:space-between; gap:.5rem; padding:.75rem .7rem; border:0; background:transparent; color:#aab4bf; text-align:left; font-size:.86rem; cursor:pointer; }.ai-history button.active,.ai-history button:hover { background:#14263a; color:#f7f4e9; }.ai-history small { color:#667689; font-size:.68rem; }
.ai-sidebar-bottom { margin-top:auto; }.ai-user-chip { display:grid; grid-template-columns:36px 1fr auto; gap:.65rem; align-items:center; padding:.7rem 0; border-top:1px solid rgba(236,239,228,.12); }.ai-avatar { display:grid; place-items:center; width:34px; height:34px; border-radius:50%; background:#f2c86b; color:#08111f; font-size:.72rem; font-weight:800; }.ai-user-chip strong,.ai-user-chip small{display:block}.ai-user-chip strong{font-size:.8rem}.ai-user-chip small{color:#718092;font-size:.7rem}.ai-user-chip button{border:0;background:none;color:#aab4bf;cursor:pointer;font-size:1.1rem}.ai-back-link{display:block;margin-top:1.2rem;color:#718092;font-size:.78rem;text-decoration:none}.ai-back-link:hover{color:#f2c86b}
.ai-chat-main { display:flex; flex-direction:column; min-width:0; background:#0d1a2a; }.ai-chat-header { display:flex; justify-content:space-between; align-items:end; gap:1rem; padding:2.2rem clamp(1.5rem,4vw,4rem) 1.5rem; border-bottom:1px solid rgba(236,239,228,.12); }.ai-chat-header h2{margin:0;font-family:Georgia,"Noto Serif SC",serif;font-size:clamp(2rem,4vw,3.4rem);font-weight:500;line-height:1}.ai-header-meta{display:flex;flex-direction:column;align-items:end;gap:.45rem;color:#718092;font-size:.7rem}.ai-online{color:#77d2c2}.ai-online i{display:inline-block;width:7px;height:7px;margin-right:.35rem;border-radius:50%;background:#77d2c2}.ai-model{font-variant-numeric:tabular-nums}
.ai-conversation { flex:1; overflow:auto; padding:2rem clamp(1.5rem,5vw,5rem); }.ai-message { display:grid; grid-template-columns:34px minmax(0,760px); gap:.8rem; margin:0 auto 1.7rem; max-width:830px; }.ai-message-avatar{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#f2c86b;color:#08111f;font-size:.8rem}.ai-message-meta{display:flex;align-items:baseline;gap:.7rem;margin:0 0 .45rem;font-size:.8rem}.ai-message-meta time{color:#718092;font-size:.7rem}.ai-bubble{padding:1rem 1.1rem;border:1px solid rgba(236,239,228,.14);background:#13243a;color:#d9e0df}.ai-bubble p{margin:0;line-height:1.7}.ai-message-hint{margin-top:.8rem!important;color:#91a0ad;font-size:.85rem}
.ai-composer { padding:0 clamp(1.5rem,5vw,5rem) 1.8rem; }.ai-composer-tools{display:flex;justify-content:space-between;align-items:center;max-width:830px;margin:0 auto .65rem;color:#718092;font-size:.72rem}.ai-context-pill{padding:.3rem .55rem;border:1px solid rgba(236,239,228,.16)}.ai-context-pill b{color:#f2c86b}.ai-input-row{display:flex;align-items:end;gap:.6rem;max-width:830px;margin:0 auto;padding:.7rem;border:1px solid rgba(236,239,228,.25);background:#091321}.ai-input-row textarea{flex:1;resize:none;max-height:160px;border:0;outline:0;background:transparent;color:#f7f4e9;line-height:1.55}.ai-send{width:42px;height:42px;border:1px solid #f2c86b;background:#f2c86b;color:#08111f;font-size:1.4rem;font-weight:700}.ai-send:hover{background:#ffe29b}.ai-send:disabled{opacity:.45;cursor:wait}
.ai-inspector{padding:1.5rem;border-left:1px solid rgba(236,239,228,.12);background:#0b1726}.ai-inspector-head{display:flex;justify-content:space-between;color:#c8d0d0;font-size:.82rem;font-weight:700}.ai-inspector-head button{border:0;background:none;color:#718092;cursor:pointer}.ai-access-card,.ai-context-card,.ai-admin-card{margin-top:1.8rem;padding:1rem;border:1px solid rgba(236,239,228,.14);background:#101f31}.ai-card-label{margin:0 0 .8rem}.ai-access-role{display:flex;align-items:center;gap:.55rem}.ai-access-badge{margin-left:auto;padding:.2rem .4rem;border:1px solid rgba(119,210,194,.4);color:#77d2c2;font-size:.63rem}.ai-access-card p:not(.ai-card-label),.ai-admin-card p{color:#91a0ad;font-size:.78rem;line-height:1.6}.ai-context-card ul{list-style:none;margin:0;padding:0}.ai-context-card li{display:flex;gap:.65rem;padding:.6rem 0;border-top:1px solid rgba(236,239,228,.1);color:#aab4bf;font-size:.75rem}.ai-context-card li span{color:#f2c86b;font-variant-numeric:tabular-nums}.ai-admin-card{border-color:rgba(242,200,107,.28)}.ai-admin-card-head{display:flex;justify-content:space-between;align-items:center}.ai-admin-card-head>span{color:#f2c86b;font-size:.65rem;font-weight:800}.ai-admin-card h3{margin:.3rem 0 0;font-family:Georgia,serif;font-size:1.25rem;font-weight:500}.ai-outline{padding:.6rem .75rem;border:1px solid #f2c86b;background:transparent;color:#f2c86b;font-size:.78rem;font-weight:700}.ai-outline:hover{background:#f2c86b;color:#08111f}
.ai-model-card{margin-top:1.4rem;padding:1rem;border:1px solid rgba(119,210,194,.24);background:#0f2130}.ai-model-select{position:relative;display:block}.ai-model-select select{width:100%;appearance:none;border:1px solid rgba(236,239,228,.2);padding:.7rem 2rem .7rem .7rem;background:#091321;color:#f7f4e9;font-size:.84rem}.ai-model-select span{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);color:#77d2c2;pointer-events:none}.ai-model-note{margin:.55rem 0 0;color:#8498a6;font-size:.7rem}.ai-history-empty{margin:.4rem .7rem;color:#667689;font-size:.76rem}.ai-message-user{grid-template-columns:minmax(0,760px) 34px;justify-content:end}.ai-message-user .ai-message-avatar{grid-column:2;background:#77d2c2}.ai-message-user>div:nth-child(2){grid-column:1;grid-row:1}.ai-message-user .ai-message-meta{justify-content:flex-end}.ai-message-user .ai-bubble{background:#1a3346;border-color:rgba(119,210,194,.25)}
[hidden]{display:none!important}
@media(max-width:1050px){.ai-workspace-view{grid-template-columns:220px minmax(0,1fr)}.ai-inspector{display:none}.ai-chat-header{padding-inline:1.5rem}}
@media(max-width:760px){.ai-login-view{grid-template-columns:1fr;width:min(calc(100% - 2rem),520px);padding:3rem 0}.ai-login-art{padding-bottom:0}.ai-login-art h1{font-size:clamp(3.2rem,15vw,5rem)}.ai-login-lead{font-size:1rem}.ai-signal{margin-top:1.8rem}.ai-login-card{justify-self:stretch}.ai-workspace-view{display:block;min-height:calc(100vh - 78px)}.ai-sidebar{display:none}.ai-chat-header{padding:1.5rem 1rem}.ai-chat-header h2{font-size:2rem}.ai-header-meta{display:none}.ai-conversation{padding:1.5rem 1rem}.ai-composer{padding:0 1rem 1rem}.ai-composer-tools{font-size:.65rem}.ai-privacy-note{display:none}}
