:root{--navy:#0b2344;--navy2:#123b6d;--gold:#d7a52f;--bg:#f5f7fb;--text:#162033;--muted:#667085;--white:#fff;--border:#d9e0ea;--danger:#a63a3a}*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,Arial,sans-serif;background:var(--bg);color:var(--text)}button,input,textarea,select{font:inherit}.hidden{display:none!important}.login-wrap{min-height:100vh;display:grid;place-items:center;padding:24px;background:linear-gradient(135deg,var(--navy),var(--navy2))}.login-card{width:min(420px,100%);background:white;padding:32px;border-radius:18px;box-shadow:0 20px 70px rgba(0,0,0,.25)}.brand{font-weight:800;color:var(--gold);letter-spacing:.5px;font-size:22px}.login-card h1{margin:8px 0}.login-card p,.login-card small{color:var(--muted)}input,textarea,select{width:100%;border:1px solid var(--border);border-radius:10px;padding:11px 12px;margin:7px 0;background:#fff}textarea{min-height:110px;resize:vertical}button{border:0;border-radius:10px;padding:10px 14px;background:var(--navy);color:#fff;cursor:pointer}button:hover{filter:brightness(1.08)}.login-card button{width:100%;margin:8px 0}.error{color:var(--danger);min-height:20px}#app{min-height:100vh;display:grid;grid-template-columns:270px 1fr}aside{background:var(--navy);padding:22px 15px;color:white;display:flex;flex-direction:column;gap:12px}.subbrand{font-size:13px;opacity:.75;margin-bottom:8px}nav{display:grid;gap:7px}nav button{text-align:left;background:transparent;border:1px solid transparent}nav button.active,nav button:hover{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.15)}.logout{margin-top:auto;background:transparent;border:1px solid rgba(255,255,255,.2)}main{padding:22px;min-width:0}header{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.badge{background:#fff3cf;color:#6a4a00;border:1px solid #eedb95;border-radius:999px;padding:5px 10px;font-size:12px}.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.card{background:white;border:1px solid var(--border);border-radius:14px;padding:16px}.metric .num{font-size:30px;font-weight:800;color:var(--navy)}.muted{color:var(--muted);font-size:13px}.section{margin-top:15px}.row{display:flex;gap:10px;align-items:center}.row>*{flex:1}.row button{flex:0 0 auto}.table{width:100%;border-collapse:collapse;background:white;border-radius:12px;overflow:hidden}.table th,.table td{padding:10px;border-bottom:1px solid var(--border);text-align:left;font-size:14px}.table th{background:#eef3f9}.pill{display:inline-block;padding:3px 7px;border-radius:999px;background:#edf2f7;font-size:12px}.chat{height:310px;overflow:auto;border:1px solid var(--border);border-radius:12px;padding:12px;background:white}.msg{padding:9px 11px;border-radius:10px;margin:7px 0;max-width:82%}.msg.user{margin-left:auto;background:#e7eff9}.msg.ai{background:#fff3cf}.toolbar{display:flex;gap:8px;margin-top:9px}.toolbar input{margin:0}.danger{background:#8e2d2d}.success{background:#275c3a}.gold{background:var(--gold);color:#1b1b1b}.two{display:grid;grid-template-columns:1fr 1fr;gap:14px}.list-item{padding:11px;border:1px solid var(--border);border-radius:10px;background:white;margin:8px 0}.list-item .actions{float:right}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.day{min-height:95px;background:white;border:1px solid var(--border);border-radius:10px;padding:7px;font-size:12px}.day strong{display:block;margin-bottom:6px}.appt{background:#fff3cf;border-radius:7px;padding:4px;margin-top:4px}.status{padding:7px 10px;border-radius:8px;background:#eef3f9;font-size:13px}.voice-dot{width:12px;height:12px;border-radius:50%;background:#aaa;display:inline-block;margin-right:7px}.voice-dot.live{background:#2c8a4c;box-shadow:0 0 0 5px rgba(44,138,76,.12)}@media(max-width:900px){#app{grid-template-columns:1fr}aside{position:static}nav{grid-template-columns:repeat(2,1fr)}.logout{margin-top:0}.grid{grid-template-columns:repeat(2,1fr)}.two{grid-template-columns:1fr}}@media(max-width:560px){.grid{grid-template-columns:1fr}.row{flex-direction:column;align-items:stretch}.row button{width:100%}main{padding:14px}}
.brand-logo{width:260px;max-height:90px;object-fit:contain;display:block;margin-bottom:12px}.side-logo{width:235px;max-height:84px;object-fit:contain;object-position:left center}.metric-btn{border:1px solid var(--border);text-align:left;color:var(--text);background:white;padding:16px}.metric-btn small{color:var(--muted)}.metric-btn:hover{filter:none;border-color:var(--gold);transform:translateY(-1px)}.table-wrap{overflow:auto}.click-row{cursor:pointer}.click-row:hover{background:#fff9e8}.appt-btn{display:block;width:100%;text-align:left;border:0;background:#fff3cf;color:var(--text);padding:5px;margin:4px 0;border-radius:7px;font-size:12px}.appt-btn:hover{background:#f5d979;filter:none}.modal-overlay{position:fixed;inset:0;background:rgba(8,20,38,.55);display:grid;place-items:center;padding:20px;z-index:1000}.modal{position:relative;width:min(620px,100%);max-height:90vh;overflow:auto;background:white;border-radius:16px;padding:22px;box-shadow:0 25px 80px rgba(0,0,0,.32)}.modal-x{position:absolute;right:12px;top:10px;background:transparent;color:#333;font-size:26px;padding:3px 9px}.modal-actions{display:flex;gap:10px;margin-top:12px}.detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:12px 0}.detail-grid div{background:#f5f7fb;border-radius:9px;padding:10px}.detail-grid span{display:block;font-size:12px;color:var(--muted)}.toast{position:fixed;right:24px;top:24px;z-index:2000;width:min(430px,calc(100vw - 48px));padding:16px 18px;border-radius:13px;box-shadow:0 18px 50px rgba(0,0,0,.28);transform:translateY(-18px);opacity:0;transition:.22s;background:white;border-left:6px solid #2c8a4c}.toast.show{transform:translateY(0);opacity:1}.toast strong,.toast span{display:block}.toast span{margin-top:4px}.toast-error{border-left-color:#a33;background:#fff5f5}.toast-success{background:#f4fff7}.json-preview{white-space:pre-wrap;background:#101828;color:#e6edf7;border-radius:10px;padding:12px;min-height:160px;max-height:300px;overflow:auto;font-size:12px}.card select{margin:7px 0}@media(max-width:560px){.detail-grid{grid-template-columns:1fr}.modal-actions{flex-direction:column}}
.review-summary{padding:10px 12px;background:#eef7f0;border:1px solid #cfe2d4;border-radius:10px;margin-bottom:12px}.review-item{border:1px solid var(--border);border-radius:10px;padding:12px;margin:10px 0;background:#fbfcfe}.review-item.guardrail-proposal{border-left:4px solid var(--gold)}.review-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.review-head select{width:auto;min-width:140px;margin:0}.review-item textarea{min-height:95px}.source-link{font-size:12px;color:var(--muted);word-break:break-all;margin:5px 0}.page-list{font-size:12px;max-height:180px;overflow:auto;padding-left:22px}.page-list li{margin:5px 0}details{margin:10px 0}summary{cursor:pointer;color:var(--navy);font-weight:600}
