:root{--bg-top:#12293c;--bg-bottom:#04101c;--panel:#1f3a4d;--panel-border:#2c4d63;--item:#2c4a5e;--item-hover:#34576d;--item-selected:#6b7d45;--accent:#8bc93f;--accent-dark:#6fa62e;--danger:#b0392f;--danger-dark:#8f2d25;--text:#eef3f6;--text-dim:#a8bac6;--bubble-user:#3d6f9e;--bubble-bot:#37475a;--input-bg:#1a3040;font-family:Segoe UI,Roboto,-apple-system,BlinkMacSystemFont,sans-serif}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:radial-gradient(circle at 50% 0%, var(--bg-top) 0%, var(--bg-bottom) 70%);color:var(--text);min-height:100vh}.app-shell{flex-direction:column;min-height:100vh;display:flex}.topbar{justify-content:space-between;align-items:center;padding:20px 28px;display:flex}.logo{align-items:center;gap:6px;display:flex}.logout-btn{color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-radius:8px;padding:6px 10px;font-size:13px;transition:color .15s,background .15s}.logout-btn:hover{color:var(--text);background:#ffffff0f}.avatar-circle{color:#0a1a26;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-weight:600;display:flex}.center-screen{flex:1;justify-content:center;align-items:flex-start;padding-top:18vh;display:flex}.login-card{background:var(--panel);border:1px solid var(--panel-border);text-align:center;border-radius:18px;width:320px;padding:32px 28px;box-shadow:0 20px 60px #00000073}.login-card h1{margin:14px 0 4px;font-size:18px}.login-card p{color:var(--text-dim);margin:0 0 20px;font-size:13px}.field{border:1px solid var(--panel-border);background:var(--input-bg);width:100%;color:var(--text);text-align:left;border-radius:10px;margin-bottom:12px;padding:12px 14px;font-size:14px}.password-wrap{margin-bottom:12px;position:relative}.password-wrap .field{margin-bottom:0;padding-right:42px}.password-toggle{width:30px;height:30px;color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;display:flex;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.password-toggle:hover{color:var(--text);background:#ffffff0f}.field::placeholder{color:var(--text-dim)}.field:-webkit-autofill{-webkit-text-fill-color:var(--text);-webkit-box-shadow:0 0 0px 1000px var(--input-bg) inset;box-shadow:0 0 0px 1000px var(--input-bg) inset;caret-color:var(--text);transition:background-color 9999s ease-in-out}.field:-webkit-autofill:hover{-webkit-text-fill-color:var(--text);-webkit-box-shadow:0 0 0px 1000px var(--input-bg) inset;box-shadow:0 0 0px 1000px var(--input-bg) inset;caret-color:var(--text);transition:background-color 9999s ease-in-out}.field:-webkit-autofill:focus{-webkit-text-fill-color:var(--text);-webkit-box-shadow:0 0 0px 1000px var(--input-bg) inset;box-shadow:0 0 0px 1000px var(--input-bg) inset;caret-color:var(--text);transition:background-color 9999s ease-in-out}.field:-webkit-autofill:active{-webkit-text-fill-color:var(--text);-webkit-box-shadow:0 0 0px 1000px var(--input-bg) inset;box-shadow:0 0 0px 1000px var(--input-bg) inset;caret-color:var(--text);transition:background-color 9999s ease-in-out}.field:focus{border-color:var(--accent);outline:none}.btn{cursor:pointer;border:none;border-radius:10px;width:100%;padding:12px 14px;font-size:14px;font-weight:600;transition:filter .15s;display:block}.btn:hover{filter:brightness(1.08)}.btn:active{filter:brightness(.95)}.btn-primary{background:var(--accent);color:#0f2410}.btn-muted{color:var(--text-dim);cursor:default;background:#2c4a5e}.btn-danger{background:var(--danger);color:#fff}.error-text{color:#e08a8a;text-align:left;margin:-4px 0 12px;font-size:12px}.hero{text-align:center;padding:30px 20px 0}.hero h2{margin:0 0 8px;font-size:20px}.hero p{color:var(--text-dim);max-width:640px;margin:0 auto;font-size:13px}.panel-card{background:var(--panel);border:1px solid var(--panel-border);text-align:center;border-radius:18px;width:380px;margin:30px auto;padding:26px}.panel-card .btn{margin-bottom:10px}.panel-card .btn:last-child{margin-bottom:0}.task-btn{background:var(--item);color:var(--text)}.task-btn.uranium{background:var(--item)}.task-btn.medcenter{background:var(--item-selected)}.list-wrap{width:100%;max-width:720px;margin:10px auto 40px;padding:0 20px}.list-item{cursor:pointer;background:0 0;border-bottom:1px solid #ffffff0f;border-radius:12px;align-items:center;gap:14px;padding:14px 16px;transition:background .15s;display:flex}.list-item:hover{background:#ffffff0a}.list-item.curator-item{background:var(--item);border:1px solid var(--accent);border-bottom:1px solid var(--accent);margin-bottom:10px}.list-item .name{font-size:14px;font-weight:600}.list-item .role{color:var(--text-dim);font-size:12px}.person-avatar{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:15px;font-weight:700;display:flex}.chat-shell{flex-direction:column;flex:1;width:100%;max-width:900px;height:100vh;margin:0 auto;padding:0 20px 20px;display:flex;overflow:hidden}.chat-header{border-bottom:1px solid #ffffff14;align-items:center;gap:14px;margin-bottom:16px;padding:10px 4px 18px;display:flex}.back-btn{color:var(--text);cursor:pointer;background:0 0;border:none;padding:4px 8px;font-size:20px}.chat-header .name{font-size:15px;font-weight:600}.chat-header .role{color:var(--text-dim);font-size:12px}.chat-header-spacer{flex:1}.clear-btn{width:auto;padding:8px 16px;font-size:13px}.messages{flex-direction:column;flex:1;gap:10px;min-height:0;padding-bottom:10px;display:flex;overflow-y:auto}.bubble{white-space:pre-wrap;border-radius:14px;max-width:70%;padding:12px 16px;font-size:14px;line-height:1.5}.bubble.user{background:var(--bubble-user);border-bottom-right-radius:4px;align-self:flex-end}.bubble.bot{background:var(--bubble-bot);border-bottom-left-radius:4px;align-self:flex-start}.chat-actions{gap:10px;margin:6px 0 14px;display:flex}.chat-actions .btn{width:auto;padding:10px 18px}.composer{border:1px solid var(--accent);background:var(--input-bg);border-radius:14px;align-items:flex-end;gap:10px;padding:8px 8px 8px 16px;display:flex}.composer textarea{color:var(--text);resize:none;background:0 0;border:none;flex:1;max-height:120px;padding:8px 0;font-family:inherit;font-size:14px}.composer textarea:focus{outline:none}.composer textarea::placeholder{color:var(--text-dim)}.send-btn{background:var(--accent);color:#0f2410;cursor:pointer;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:18px;display:flex}.send-btn:disabled{opacity:.4;cursor:default}
