@import url("fonts.css");
/* Login and admin backend pages. Loaded alongside app.css for shared theme tokens. */
body.auth-body, body.admin-body { overflow: auto; }
body.auth-body { display: flex; align-items: center; justify-content: center; min-height: 100vh; padding: 24px; }

/* Mobile PIN entry — Concept B: clear, light, and trustworthy. */
body.pin-body { min-height:100dvh; padding:max(24px,env(safe-area-inset-top)) 24px max(24px,env(safe-area-inset-bottom)); overflow:hidden; background:#f7fbff; color:#10244d; font-family:"IBM Plex Sans Thai","Noto Sans Thai",Tahoma,system-ui,sans-serif; }
.pin-page { position:relative; display:grid; width:100%; max-width:430px; min-height:min(720px,calc(100dvh - 48px)); place-items:center; overflow:hidden; border:1px solid #e5eefb; border-radius:28px; background:linear-gradient(160deg,#edf8ff 0%,#fff 42%,#f8fbff 100%); box-shadow:0 22px 70px #2e6dba1a; isolation:isolate; }
.pin-aura { position:absolute; z-index:-1; border-radius:999px; filter:blur(3px); opacity:.68; }.pin-aura-one { width:230px;height:230px;top:-118px;right:-88px;background:#bfe2ff; }.pin-aura-two { width:160px;height:160px;bottom:-84px;left:-76px;background:#d6f4ef; }
.pin-card { width:100%; padding:42px 30px 38px; text-align:center; transform:translateY(-18px); }.pin-brand { display:grid;width:66px;height:66px;margin:0 auto 15px;place-items:center;border-radius:22px;background:linear-gradient(135deg,#eef7ff,#e0fbf5);box-shadow:0 10px 24px #2d86d520; }.pin-brand img { width:43px;height:43px; }.pin-eyebrow { margin:0 0 10px;color:#347bc3;font-size:10px;font-weight:800;letter-spacing:.18em; }.pin-card h1 { margin:0;color:#112957;font-size:clamp(1.7rem,6vw,2rem);letter-spacing:-.045em; }.pin-intro { max-width:260px;margin:12px auto 29px;color:#667c9f;font-size:.94rem;line-height:1.65; }
.pin-field { min-inline-size:0;padding:0;margin:0 auto 24px;border:0; }.pin-boxes { display:grid;grid-template-columns:repeat(6,1fr);gap:8px; }.pin-boxes input { box-sizing:border-box;display:block;aspect-ratio:1;min-width:0;width:100%;padding:0;border:1.5px solid #bed2eb;border-radius:13px;background:#fff;box-shadow:0 3px 8px #326ba00a;color:#087bf0;font-size:1.7rem;font-weight:800;line-height:1;text-align:center;caret-color:#087bf0;outline:0;transition:border-color .18s,background .18s,box-shadow .18s,transform .18s; }.pin-boxes input:focus { border-color:#1686eb;background:#eaf6ff;box-shadow:0 0 0 3px #208bf218;transform:translateY(-1px); }
.pin-submit { display:flex;width:100%;min-height:54px;align-items:center;justify-content:center;gap:12px;border:0;border-radius:15px;background:linear-gradient(100deg,#87baee,#82b2ed);box-shadow:none;color:#fff;cursor:pointer;font:800 1rem/1 "IBM Plex Sans Thai","Noto Sans Thai",Tahoma,system-ui,sans-serif;transition:transform .18s,opacity .18s,box-shadow .18s,filter .18s; }.pin-submit b { font-size:1.35rem;font-weight:400;line-height:.8; }.pin-submit.is-ready { background:linear-gradient(100deg,#006fe5,#135fe0);box-shadow:0 13px 27px #0767d44a; }.pin-submit.is-ready:hover { box-shadow:0 16px 31px #0767d459;transform:translateY(-1px);filter:brightness(1.04); }.pin-help { margin:18px auto 0;color:#8a9bb4;font-size:.72rem;line-height:1.55; }.pin-error { margin:-8px 0 20px;padding:10px 12px;border-radius:11px;background:#fff1f1;color:#bf3d3d;font-size:.82rem; }.sr-only { position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0; }
@media(max-height:650px){.pin-card{padding-top:28px;padding-bottom:27px;transform:none}.pin-brand{width:55px;height:55px;margin-bottom:9px;border-radius:18px}.pin-brand img{width:36px;height:36px}.pin-intro{margin-bottom:21px}.pin-help{margin-top:13px}}@media(min-width:560px){.pin-page{min-height:680px}}

.auth-card { width: 100%; max-width: 380px; padding: 36px 32px; background: var(--surface); border: 1px solid var(--border); border-radius: 18px; box-shadow: var(--shadow); }
.auth-card img { display: block; margin: 0 auto 18px; }
.auth-card h1 { font-size: 1.375rem; text-align: center; margin: 0 0 26px; color: var(--text); }
.auth-field { display: block; margin-bottom: 16px; }
.auth-field span { display: block; margin-bottom: 6px; font-size: .875rem; color: var(--muted); }
.auth-field input { width: 100%; padding: 11px 13px; border: 1px solid var(--border); border-radius: 10px; background: var(--bg); color: var(--text); font-size: 1rem; }
.auth-field input:focus { outline: 2px solid var(--accent); outline-offset: 1px; }
.auth-error { margin: 0 0 16px; padding: 10px 13px; border-radius: 10px; background: #bd393520; color: #bd3935; font-size: .875rem; }
.auth-submit { width: 100%; padding: 12px; border: 0; border-radius: 10px; background: var(--accent); color: #fff; font-weight: 600; font-size: 1rem; margin-top: 4px; cursor: pointer; }
.auth-submit:hover { filter: brightness(1.05); }

.admin-page { max-width: 760px; margin: 0 auto; padding: 32px 20px 60px; }
.admin-nav { display:flex; flex-wrap:wrap; gap:10px; align-items:center; margin-bottom:24px; padding:12px 14px; background:#171b2b; border-radius:12px; }
.admin-nav a, .admin-nav strong { color:#fff; text-decoration:none; }
.admin-nav a { opacity:.85; }
.admin-nav a:hover { opacity:1; text-decoration:underline; }
.admin-page h1 { font-size: 1.5rem; margin: 0 0 4px; }
.admin-page h2 { font-size: 1.0625rem; margin: 0 0 16px; }
.back-link { display: inline-block; margin-bottom: 16px; color: var(--accent); font-size: .9375rem; }
.admin-notice { padding: 10px 13px; border-radius: 10px; background: var(--accent-soft); color: var(--accent); font-size: .875rem; margin-bottom: 16px; }
.admin-error { padding: 10px 13px; border-radius: 10px; background: #bd393520; color: #bd3935; font-size: .875rem; margin-bottom: 16px; }
.admin-card { background: var(--surface); border: 1px solid var(--border); border-radius: 14px; padding: 22px; margin-bottom: 24px; box-shadow: var(--shadow); }
.admin-form-row { display: flex; gap: 12px; flex-wrap: wrap; align-items: flex-end; }
.admin-form-row > div { display: flex; flex-direction: column; gap: 6px; }
.admin-form-row label { font-size: .8125rem; color: var(--muted); }
.admin-form-row input, .admin-form-row select { padding: 9px 11px; border: 1px solid var(--border); border-radius: 9px; background: var(--bg); color: var(--text); font-size: .9375rem; }
table.admin-table { width: 100%; border-collapse: collapse; font-size: .9375rem; }
table.admin-table th, table.admin-table td { text-align: left; padding: 11px 8px; border-bottom: 1px solid var(--border); }
table.admin-table th { color: var(--muted); font-weight: 600; font-size: .8125rem; }
.role-badge { padding: 2px 9px; border-radius: 12px; font-size: .75rem; background: var(--accent-soft); color: var(--accent); white-space: nowrap; }
.status-badge { padding: 2px 9px; border-radius: 12px; font-size: .75rem; white-space: nowrap; }
.status-active { background: #1a7f4720; color: #1a7f47; }
.status-inactive { background: #bd393520; color: #bd3935; }
.link-button { border: 1px solid var(--border); background: var(--sidebar); color: var(--text); padding: 6px 12px; border-radius: 8px; font-size: .8125rem; cursor: pointer; }
.link-button:hover { background: var(--surface-hover); }
.user-actions{display:flex;align-items:center;justify-content:flex-end;gap:18px;white-space:nowrap}.user-actions form{margin:0}.user-action-icon{display:grid;place-items:center;width:36px;height:36px;padding:0;margin:0}.user-action-icon .icon{width:16px}.user-action-icon.is-disable{color:#b04e4e}.user-action-icon.is-enable{color:#278657}
.pin-status{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%}.pin-status .icon{width:14px}.pin-status.is-set{background:#e5f8ed;color:#278657}.pin-status.is-empty{background:#f2f4f8;color:#929daf}

/* Admin control center */
body.admin-body { min-height:100vh; height:auto; overflow:auto; background:#f5f7fc; color:#17213c; }
.admin-sidebar { position:fixed; inset:0 auto 0 0; z-index:10; display:flex; flex-direction:column; width:262px; padding:25px 16px 18px; background:#111a30; color:#c6d0e7; }
.admin-brand { display:flex; align-items:center; gap:10px; margin:0 8px 36px; color:#fff; font-size:18px; font-weight:700; letter-spacing:-.45px; }
.admin-brand b { color:#7e9dff; }.admin-brand small { display:block; margin-top:1px; color:#7180a4; font-size:9px; font-weight:700; letter-spacing:1.8px; }
.admin-brand-mark { display:grid; place-items:center; width:36px; height:36px; border-radius:12px; background:linear-gradient(135deg,#7164f7,#426ff0); box-shadow:0 9px 20px #4f61e955; }.admin-brand-mark .icon{width:19px}
.admin-menu { display:grid; gap:4px; }.admin-menu a,.admin-sidebar-footer a { display:flex; align-items:center; gap:12px; padding:11px 12px; border-radius:10px; color:#aeb9d2; font-size:14px; font-weight:600; }.admin-menu a .icon,.admin-sidebar-footer a .icon{width:18px;height:18px}.admin-menu a:hover{background:#202b47;color:#fff}.admin-menu a.active{background:linear-gradient(100deg,#5364e8,#6978ef);box-shadow:0 8px 18px #050b2355;color:#fff}
.admin-sidebar-footer { margin-top:auto; padding:17px 5px 2px; border-top:1px solid #27314a; }.admin-sidebar-footer a{padding:8px 6px;color:#d7def0}.admin-sidebar-footer span{display:block;padding:8px 7px 0;color:#74819f;font-size:12px}
.admin-logout{margin-top:12px}.admin-logout button{display:flex;align-items:center;gap:9px;width:100%;padding:9px 7px;border:0;border-radius:8px;background:transparent;color:#9eabc6;cursor:pointer;font:600 12px var(--font);text-align:left;transition:background .18s,color .18s}.admin-logout button:hover{background:#2a3450;color:#fff}.admin-logout .icon{width:16px;height:16px;transform:rotate(180deg)}
.admin-main { min-height:100vh; margin-left:262px; }.admin-topbar { display:flex; align-items:center; justify-content:space-between; min-height:100px; padding:24px clamp(28px,5vw,78px); background:#fff; border-bottom:1px solid #e7ebf4; }.admin-kicker { margin:0 0 4px; color:#8290aa; font-size:10px; font-weight:800; letter-spacing:1.3px; }.admin-topbar h1{margin:0;color:#17213c;font-size:26px;letter-spacing:-.8px}.admin-back-chat{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border:1px solid #dce2f0;border-radius:10px;background:#fff;color:#55627b;font-size:13px;font-weight:700}.admin-back-chat .icon{width:16px}.admin-back-chat:hover{border-color:#9faccc;color:#425ad7}
.admin-content { width:100%; max-width:1600px; margin:0 auto; padding:38px clamp(24px,3vw,56px) 60px; }.admin-page,.admin-nav{all:unset}.admin-card{box-shadow:none}
.dashboard-hero{position:relative;display:flex;align-items:center;justify-content:space-between;min-height:258px;overflow:hidden;padding:38px 48px;margin-bottom:24px;border-radius:20px;background:radial-gradient(circle at 83% 20%,#8a76ff 0,#5f62d7 25%,#303b77 60%,#1a2446 100%);color:#fff}.dashboard-hero:after{position:absolute;inset:auto -85px -180px auto;width:440px;height:440px;border:1px solid #c4c1ff55;border-radius:50%;content:""}.dashboard-hero h2{position:relative;margin:0 0 9px;font-size:34px;line-height:1.16;letter-spacing:-1.25px}.dashboard-hero h2 em{color:#bfc5ff;font-style:normal}.dashboard-hero p:not(.admin-kicker){max-width:510px;margin:0;color:#c8d0f4;font-size:14px}.dashboard-hero .admin-kicker{color:#b7c0f8}.hero-actions{display:flex;gap:10px;margin-top:23px}.admin-primary,.admin-secondary{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:9px;font-size:13px;font-weight:800}.admin-primary{background:#fff;color:#3d4ec2}.admin-secondary{border:1px solid #aab6ee77;color:#fff}.admin-primary .icon{width:16px}.hero-orb{position:relative;z-index:1;display:grid;place-items:center;width:112px;height:112px;margin-right:54px;border:1px solid #d9dcff8a;border-radius:34px;background:#ffffff12;backdrop-filter:blur(7px);transform:rotate(9deg)}.hero-orb .icon{width:53px;height:53px;color:#e5e6ff}
.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}.metric-card{position:relative;display:flex;align-items:center;gap:13px;min-height:107px;padding:18px;border:1px solid #e5e9f3;border-radius:15px;background:#fff;box-shadow:0 7px 20px #34415e08}.metric-card>div span{display:block;color:#7b879f;font-size:12px;font-weight:700}.metric-card strong{display:block;color:#1d2741;font-size:27px;line-height:1.2;letter-spacing:-.8px}.metric-card small{position:absolute;right:17px;bottom:15px;color:#a3aec1;font-size:10px}.metric-icon{display:grid;place-items:center;width:43px;height:43px;border-radius:12px}.metric-icon .icon{width:21px}.metric-icon.purple{background:#eeeaff;color:#735bd9}.metric-icon.blue{background:#e4f1ff;color:#3480e9}.metric-icon.orange{background:#fff0e2;color:#e78235}.metric-icon.green{background:#e5f8ed;color:#2ca66b}
.dashboard-grid{display:grid;grid-template-columns:1.45fr .8fr;gap:24px}.admin-panel{border:1px solid #e5e9f3;border-radius:16px;background:#fff;box-shadow:0 7px 20px #34415e08}.setup-panel{padding:23px}.system-panel{padding:23px}.panel-heading{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:15px}.panel-heading h2{margin:0;color:#202a44;font-size:16px;letter-spacing:-.3px}.setup-count{padding:4px 9px;border-radius:20px;background:#edf0ff;color:#5d6de3;font-size:11px;font-weight:800}.setup-row{display:flex;align-items:center;gap:13px;padding:12px 5px;border-top:1px solid #edf0f6}.setup-row:hover strong{color:#5164dd}.setup-row> .icon{width:17px;margin-left:auto;color:#9ba6bb}.setup-row strong{display:block;color:#2f3a54;font-size:13px}.setup-row small{display:block;color:#8490a8;font-size:11px}.setup-number{display:grid;place-items:center;width:26px;height:26px;flex:0 0 26px;border:1px solid #d8deea;border-radius:50%;color:#8793aa;font-size:11px;font-weight:800}.setup-number.done{border-color:#64cb9b;background:#def8ea;color:#22965b}.setup-number .icon{width:14px}.status-live{display:inline-flex;align-items:center;gap:6px;color:#269462;font-size:11px;font-weight:800}.status-live i{width:7px;height:7px;border-radius:50%;background:#3ec985;box-shadow:0 0 0 4px #ddf8eb}.status-row{display:flex;justify-content:space-between;padding:13px 0;border-top:1px solid #edf0f6;color:#7e8ba4;font-size:12px}.status-row b{color:#3b4760;font-size:12px}.view-logs{display:flex;align-items:center;gap:7px;margin-top:5px;color:#5365df;font-size:12px;font-weight:800}.view-logs .icon{width:15px}
@media(max-width:900px){.admin-sidebar{width:72px;padding:18px 10px}.admin-brand{justify-content:center;margin:0 0 32px}.admin-brand>span:not(.admin-brand-mark),.admin-menu span,.admin-sidebar-footer span,.admin-sidebar-footer a{display:none}.admin-menu a{justify-content:center;padding:12px}.admin-main{margin-left:72px}.metric-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr}.hero-orb{margin-right:0}}@media(max-width:620px){.admin-sidebar{display:none}.admin-main{margin-left:0}.admin-topbar{min-height:82px;padding:18px 20px}.admin-topbar h1{font-size:21px}.admin-back-chat{font-size:0;padding:10px}.admin-back-chat .icon{font-size:initial}.admin-content{padding:22px 16px}.dashboard-hero{min-height:0;padding:29px 23px}.dashboard-hero h2{font-size:27px}.hero-orb{display:none}.metric-grid{gap:10px}.metric-card{min-height:91px;padding:13px}.metric-card small{display:none}.metric-card strong{font-size:23px}.dashboard-grid{gap:14px}}

/* Shared controls and Tool/API management */
.page-intro{display:flex;align-items:flex-start;justify-content:space-between;margin:0 0 24px}.page-intro h2{margin:1px 0 7px;color:#202a44;font-size:23px;letter-spacing:-.7px}.page-intro p:not(.admin-kicker){max-width:620px;margin:0;color:#77849d;font-size:13px}.intro-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:15px}.intro-icon .icon{width:24px}.intro-icon.blue{background:#e7f1ff;color:#4384e6}.tool-layout{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:20px;margin-bottom:20px}.tool-form-panel{padding:26px}.tool-form-panel .panel-heading{margin-bottom:23px}.test-badge,.record-count{padding:5px 9px;border-radius:7px;background:#edf1fa;color:#75839c;font-size:10px;font-weight:800;letter-spacing:.6px}.tool-test-form{display:grid;grid-template-columns:minmax(0,1fr) 150px;gap:16px}.field-label{display:flex;flex-direction:column;gap:7px;color:#4d5a73;font-size:12px;font-weight:800}.field-label span small{margin-left:4px;color:#98a3b6;font-size:10px;font-weight:700}.field-label input,.field-label select,.field-label textarea{width:100%;border:1px solid #dbe2ef;border-radius:9px;background:#fbfcff;color:#26324b;outline:0;padding:10px 11px;font:13px/1.5 "Consolas","Cascadia Code",monospace;transition:border-color .18s,box-shadow .18s}.field-label select{font-family:var(--font)}.field-label textarea{resize:vertical;min-height:92px}.field-label input:focus,.field-label select:focus,.field-label textarea:focus{border-color:#6879e8;box-shadow:0 0 0 3px #6577e21d}.field-url,.field-wide,.tool-form-footer{grid-column:1/-1}.tool-form-footer{display:flex;align-items:center;justify-content:space-between;padding-top:2px}.tool-form-footer p{display:flex;align-items:center;gap:6px;margin:0;color:#8b96aa;font-size:11px}.tool-form-footer p .icon{width:15px}.tool-form-footer .admin-primary{border:0;cursor:pointer;background:#5264dd;color:#fff}.tool-form-footer .admin-primary:hover{background:#4557d1;box-shadow:0 7px 15px #5365de33}.tool-help{padding:26px}.help-icon{display:grid;place-items:center;width:38px;height:38px;margin-bottom:17px;border-radius:12px;background:#f0edff;color:#705ee1}.help-icon .icon{width:20px}.tool-help h3{margin:0 0 12px;color:#303b55;font-size:14px}.tool-help ol{padding-left:18px;margin:0 0 20px;color:#7f8aa0;font-size:12px;line-height:2}.tool-help a{display:flex;align-items:center;gap:5px;color:#596bdf;font-size:12px;font-weight:800}.tool-help a .icon{width:15px}.saved-tools{padding:25px}.saved-tools .panel-heading{margin-bottom:10px}.empty-state{display:flex;flex-direction:column;align-items:center;padding:35px 20px 27px;border-top:1px solid #eef1f6;text-align:center}.empty-state>span{display:grid;place-items:center;width:45px;height:45px;margin-bottom:10px;border-radius:14px;background:#f0f4fb;color:#8b9ab4}.empty-state .icon{width:22px}.empty-state h3{margin:0 0 4px;color:#44506a;font-size:14px}.empty-state p{max-width:410px;margin:0;color:#8a95aa;font-size:12px}.tool-result{display:flex;gap:10px;align-items:flex-start;padding:12px 15px;margin-bottom:18px;border:1px solid #ccead9;border-radius:11px;background:#effbf4;color:#28784e;font-size:12px}.tool-result span{overflow-wrap:anywhere}.tool-result.is-error{border-color:#f3d2d2;background:#fff4f4;color:#b04e4e}.modern-table td{vertical-align:middle}.modern-table td small{display:block;max-width:260px;color:#8a95aa;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.modern-table code{max-width:340px;display:block;overflow:hidden;color:#64728b;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.method-pill,.status-pill{display:inline-block;padding:4px 8px;border-radius:6px;font-size:10px;font-weight:800}.method-pill.get{background:#e6f6ee;color:#268756}.method-pill.post{background:#e7efff;color:#4672c9}.method-pill.put,.method-pill.patch{background:#f5eaff;color:#8a56b4}.method-pill.delete{background:#fff0ed;color:#c35d50}.status-pill.on{background:#e7f8ed;color:#31975e}.status-pill.off{background:#f1f3f7;color:#78849a}
@media(max-width:900px){.tool-layout{grid-template-columns:1fr}.tool-help{display:none}}@media(max-width:620px){.page-intro{margin-bottom:18px}.page-intro h2{font-size:20px}.intro-icon{display:none}.tool-form-panel,.saved-tools{padding:18px}.tool-test-form{grid-template-columns:1fr}.tool-form-footer{align-items:flex-start;gap:12px;flex-direction:column}.modern-table{display:block;overflow-x:auto}.modern-table td:nth-child(2){max-width:160px}}

/* Agent management */
.agent-editor,.agent-directory{border:1px solid #e1e7f2;border-radius:20px;background:#fff;box-shadow:0 12px 28px #34415e0a}.agent-editor{overflow:hidden;margin-bottom:24px}.agent-editor-heading{display:flex;align-items:center;justify-content:space-between;padding:28px 32px 25px;background:linear-gradient(112deg,#f8f9ff,#f1f5ff);border-bottom:1px solid #e6eaf5}.agent-editor-heading h2,.agent-directory-heading h2{margin:2px 0 6px;color:#202b49;font-size:22px;letter-spacing:-.65px}.agent-editor-heading p:not(.admin-kicker),.agent-directory-heading p:not(.admin-kicker){margin:0;color:#7e8ba4;font-size:13px}.agent-heading-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:15px;background:#e8e8ff;color:#665de2;box-shadow:0 8px 18px #6257d21c}.agent-heading-icon .icon{width:25px}.agent-form{padding:28px 32px 30px}.agent-form-grid{display:grid;grid-template-columns:1.1fr 1.2fr repeat(3,minmax(120px,.85fr));gap:16px;margin-bottom:22px}.agent-field{display:flex;flex-direction:column;gap:7px;color:#4b5874;font-size:12px;font-weight:800}.agent-field>span{display:flex;align-items:center;gap:6px}.agent-field b{padding:2px 5px;border-radius:4px;background:#fff0ed;color:#cb715f;font-size:9px;letter-spacing:.2px}.agent-field input,.agent-field textarea{box-sizing:border-box;width:100%;border:1px solid #dce4f0;border-radius:10px;background:#fbfcff;color:#283550;font:13px/1.5 var(--font);outline:0;padding:11px 12px;transition:border-color .18s,box-shadow .18s,background .18s}.agent-field input{height:43px}.agent-field textarea{min-height:174px;resize:vertical;line-height:1.6}.agent-field input::placeholder,.agent-field textarea::placeholder{color:#a8b1c1}.agent-field input:focus,.agent-field textarea:focus{border-color:#6979e8;background:#fff;box-shadow:0 0 0 4px #6577e21a}.agent-prompt-field small{color:#94a0b5;font-size:11px;font-weight:500}.agent-form-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:23px;padding-top:21px;border-top:1px solid #edf0f6}.agent-toggle{display:flex;align-items:center;gap:10px;cursor:pointer}.agent-toggle input{position:absolute;width:1px;height:1px;opacity:0}.agent-toggle-ui{position:relative;width:38px;height:22px;border-radius:20px;background:#cdd5e4;transition:background .18s}.agent-toggle-ui:after{position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 2px 5px #27395a33;content:"";transition:transform .18s}.agent-toggle input:checked+.agent-toggle-ui{background:#5d6ee4}.agent-toggle input:checked+.agent-toggle-ui:after{transform:translateX(16px)}.agent-toggle strong{display:block;color:#33405a;font-size:12px}.agent-toggle small{display:block;margin-top:2px;color:#8d99ad;font-size:11px}.agent-save{display:inline-flex;align-items:center;gap:8px;border:0;border-radius:10px;background:linear-gradient(100deg,#5366df,#6d6fea);box-shadow:0 9px 18px #5365de2c;color:#fff;cursor:pointer;padding:12px 17px;font:800 13px var(--font);transition:transform .18s,box-shadow .18s}.agent-save:hover{box-shadow:0 12px 22px #5365de44;transform:translateY(-1px)}.agent-save .icon{width:16px}.agent-directory{padding:28px 32px}.agent-directory-heading{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:22px}.agent-count{padding:6px 10px;border-radius:20px;background:#edf0ff;color:#5e6dde;font-size:11px;font-weight:800}.agent-empty{display:flex;flex-direction:column;align-items:center;padding:42px 20px 38px;border:1px dashed #d9e1ef;border-radius:15px;background:#fbfcff;text-align:center}.agent-empty>span{display:grid;place-items:center;width:49px;height:49px;margin-bottom:12px;border-radius:15px;background:#eceaff;color:#6c60dc}.agent-empty .icon{width:24px}.agent-empty h3{margin:0 0 5px;color:#3a4660;font-size:15px}.agent-empty p{max-width:380px;margin:0;color:#8995aa;font-size:12px;line-height:1.7}.agent-table-wrap{overflow-x:auto}.agent-table{min-width:640px}.agent-table th{padding:10px 9px!important;background:#f8f9fd;color:#7c899f!important}.agent-table td{padding:14px 9px!important;color:#536079;font-size:12px}.agent-table td:first-child strong{display:block;color:#2b3854;font-size:13px}.agent-table td:first-child small{display:block;max-width:300px;margin-top:3px;overflow:hidden;color:#919caf;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.agent-table code{padding:4px 7px;border-radius:6px;background:#f0f3f9;color:#63708b;font-size:11px}.agent-status{display:inline-block;padding:4px 8px;border-radius:20px;background:#f0f2f6;color:#7e899c;font-size:10px;font-weight:800}.agent-status.is-active{background:#e5f8ec;color:#2d9c64}.agent-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px}.agent-actions a{color:#596ce1;font-size:12px;font-weight:800}.agent-actions .link-button{padding:5px 9px;background:#fff;color:#a26060}
@media(max-width:1000px){.agent-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.agent-editor-heading,.agent-form,.agent-directory{padding-left:20px;padding-right:20px}.agent-editor-heading{padding-top:22px;padding-bottom:20px}.agent-editor-heading h2,.agent-directory-heading h2{font-size:19px}.agent-heading-icon{display:none}.agent-form-grid{grid-template-columns:1fr;gap:13px}.agent-form-footer{align-items:flex-start;flex-direction:column}.agent-save{width:100%;justify-content:center}.agent-directory-heading{gap:12px}.agent-table{min-width:580px}}

/* System settings */
.settings-intro{display:flex;align-items:center;justify-content:space-between;margin:0 0 23px}.settings-intro h2{margin:2px 0 6px;color:#202b49;font-size:23px;letter-spacing:-.7px}.settings-intro p:not(.admin-kicker){margin:0;color:#7d899f;font-size:13px}.settings-intro-icon{display:grid;place-items:center;width:50px;height:50px;border-radius:16px;background:#e7efff;color:#4e78dc}.settings-intro-icon .icon{width:25px}.settings-form{display:grid;gap:17px}.settings-card{padding:27px 30px;border:1px solid #e1e7f2;border-radius:18px;background:#fff;box-shadow:0 10px 24px #34415e08}.settings-card-heading{display:flex;align-items:flex-start;gap:12px;margin-bottom:22px}.settings-number{display:grid;place-items:center;width:29px;height:29px;flex:0 0 29px;border-radius:9px;background:#ebedff;color:#5d67d9;font-size:12px;font-weight:800}.settings-card-heading h3{margin:1px 0 4px;color:#2b3752;font-size:16px}.settings-card-heading p{margin:0;color:#8995a9;font-size:12px}.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.settings-grid-three{grid-template-columns:repeat(3,minmax(0,1fr))}.settings-field{display:flex;flex-direction:column;gap:7px;color:#4d5a73;font-size:12px;font-weight:800}.settings-field span{display:flex;gap:6px;align-items:center}.settings-field em{color:#929daf;font-size:10px;font-style:normal;font-weight:600}.settings-field input,.settings-field select{box-sizing:border-box;width:100%;height:43px;border:1px solid #dce4f0;border-radius:10px;background:#fbfcff;color:#283550;font:13px var(--font);outline:0;padding:0 12px;transition:border-color .18s,box-shadow .18s}.settings-field input:focus,.settings-field select:focus{border-color:#6979e8;background:#fff;box-shadow:0 0 0 4px #6577e21a}.settings-field small{color:#96a1b4;font-size:10px;font-weight:500}.settings-secret-card{border-color:#deddf6;background:linear-gradient(112deg,#fff,#fbfaff)}.settings-key-row{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(230px,.8fr);gap:24px;align-items:end}.settings-security-note{display:flex;gap:9px;align-items:flex-start;padding:12px 13px;border-radius:10px;background:#f0f5ff;color:#657492}.settings-security-note>span{display:grid;place-items:center;flex:0 0 22px;width:22px;height:22px;border-radius:7px;background:#dceaff;color:#4479d8}.settings-security-note .icon{width:13px}.settings-security-note p{margin:1px 0 0;font-size:11px;line-height:1.55}.settings-save-row{display:flex;align-items:center;justify-content:space-between;padding:5px 2px 15px}.settings-save-row p{margin:0;color:#8b97aa;font-size:11px}.settings-save-row .agent-save{min-width:178px;justify-content:center}@media(max-width:850px){.settings-grid-three{grid-template-columns:1fr}.settings-key-row{grid-template-columns:1fr}.settings-security-note{max-width:none}}@media(max-width:620px){.settings-intro-icon{display:none}.settings-intro h2{font-size:20px}.settings-card{padding:22px 20px}.settings-grid{grid-template-columns:1fr}.settings-save-row{align-items:stretch;gap:13px;flex-direction:column}.settings-save-row .agent-save{width:100%}}

/* Integrations registry */
.integration-registry{margin:0 0 24px;padding:25px 27px 27px;border:1px solid #e1e7f2;border-radius:18px;background:#fff;box-shadow:0 10px 24px #34415e08}.integration-registry-heading{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:18px}.integration-registry-heading h2{margin:1px 0 0;color:#202b49;font-size:19px;letter-spacing:-.4px}.integration-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(235px,.75fr);gap:15px}.integration-card{min-height:245px;padding:20px;border:1px solid #e0e7f2;border-radius:15px;background:#fff;color:#283550}.integration-card.is-connected{border-color:#cfdcf8;background:linear-gradient(130deg,#fbfdff,#f5f9ff)}.integration-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.integration-icon,.integration-add-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:12px}.integration-icon.hr{background:#e4efff;color:#367ae2}.integration-icon .icon{width:21px}.connection-badge{display:inline-flex;align-items:center;gap:6px;padding:5px 9px;border-radius:20px;background:#e7f8ed;color:#29955d;font-size:11px;font-weight:800}.connection-badge i{width:6px;height:6px;border-radius:50%;background:#3bc683}.integration-card h3{margin:0 0 5px;color:#1d2a49;font-size:17px}.integration-card>p{max-width:590px;margin:0;color:#71809a;font-size:12px;line-height:1.65}.integration-meta{display:grid;grid-template-columns:1.05fr .75fr 1.35fr;gap:10px;margin:18px 0}.integration-meta div{min-width:0}.integration-meta dt{margin-bottom:3px;color:#93a0b5;font-size:10px;font-weight:800;letter-spacing:.4px;text-transform:uppercase}.integration-meta dd{margin:0;color:#53627d;font-size:11px;line-height:1.5}.integration-meta code{display:block;overflow:hidden;padding:4px 6px;border-radius:6px;background:#edf3fd;color:#476797;font:10px/1.35 "Consolas","Cascadia Code",monospace;text-overflow:ellipsis;white-space:nowrap}.integration-actions{display:flex;align-items:center;gap:12px}.integration-primary{display:inline-flex;align-items:center;justify-content:center;padding:8px 11px;border-radius:8px;background:#5166df;color:#fff;font-size:11px;font-weight:800}.integration-primary:hover{background:#455bd0;box-shadow:0 6px 14px #5365de35}.integration-actions>span{color:#8491a7;font-size:11px}.integration-add{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;border-style:dashed;background:#fbfcff;text-align:center;transition:border-color .18s,background .18s,transform .18s}.integration-add:hover{border-color:#8ea6ed;background:#f5f8ff;transform:translateY(-1px)}.integration-add-icon{width:38px;height:38px;background:#eaf0ff;color:#5269df}.integration-add-icon .icon{width:20px}.integration-add strong{color:#4053bb;font-size:13px}.integration-add>span:last-child{max-width:170px;color:#8793a8;font-size:11px;line-height:1.55}.integration-template-note{display:flex;align-items:center;gap:7px;margin:0 0 17px;padding:9px 10px;border-radius:9px;background:#edf8f1;color:#34885e;font-size:11px;line-height:1.5}.integration-template-note .icon{width:15px}.integration-template-note code{padding:1px 4px;border-radius:3px;background:#d9efe2;color:#28744e}@media(max-width:900px){.integration-grid{grid-template-columns:1fr}.integration-add{min-height:150px}}@media(max-width:620px){.integration-registry{padding:20px 18px}.integration-registry-heading{gap:10px}.integration-registry-heading .record-count{font-size:9px}.integration-meta{grid-template-columns:1fr;gap:8px}.integration-card{padding:18px}}
