:root{--bg:#f3f8fd;--side:#eaf3fc;--paper:#ffffff;--blue:#4d87bb;--darkblue:#285d8d;--navy:#234057;--muted:#7990a5;--border:#dce8f3;--light:#e8f3fd;--hover:#f3f8fd;--danger:#b94f5b;--warn:#a47836;--success:#3b806c;--shadow:0 10px 36px rgba(40,84,126,.055);--radius:16px}
*{box-sizing:border-box}html{font-size:15px}body{margin:0;background:var(--bg);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;color:var(--navy);line-height:1.5}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.52}a{color:var(--darkblue);text-decoration:none}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #9cc9f0;outline-offset:2px}input,select{accent-color:var(--blue)}h1,h2,h3,p{margin:0}h1{font-size:1.8rem;letter-spacing:-.045em;line-height:1.2;font-weight:720}h2{font-size:1.27rem;letter-spacing:-.025em}h3{font-size:1.05rem}small,.muted{color:var(--muted)}.tiny{font-size:.76rem}.small{font-size:.87rem}.hide{display:none!important}
.shell{min-height:100vh;display:flex}.sidebar{width:259px;flex-shrink:0;background:var(--side);border-right:1px solid #d8e8f6;padding:29px 16px 19px;display:flex;flex-direction:column;gap:27px;position:sticky;top:0;height:100vh}.brand{display:flex;align-items:center;gap:11px;padding:4px 12px}.brand-mark{width:38px;height:38px;background:linear-gradient(145deg,#8dc1ee,#508cbd);border-radius:12px;color:white;display:grid;place-items:center;box-shadow:0 6px 16px #6ca9d340}.brand-label{font-size:1.03rem;font-weight:760;letter-spacing:-.03em}.brand-sub{font-size:.73rem;color:var(--muted)}.side-caption{font-size:.68rem;letter-spacing:.13em;text-transform:uppercase;color:#879fb4;margin:0 12px 9px;font-weight:730}.nav{display:flex;flex-direction:column;gap:4px}.nav-btn{border:0;background:transparent;width:100%;display:flex;align-items:center;gap:12px;text-align:left;border-radius:11px;padding:11px 12px;color:#55728a;font-weight:560;font-size:.91rem;transition:.15s}.nav-btn:hover,.nav-btn.active{background:#dbeaf8;color:#315f86}.nav-btn.active{box-shadow:inset 3px 0 var(--blue)}.nav-btn .ico{width:18px;height:18px}.side-bottom{margin-top:auto;border-top:1px solid #d6e5f2;padding:18px 8px 0}.company-label{display:flex;align-items:center;gap:10px;padding:7px 5px}.company-logo{display:grid;place-items:center;width:34px;height:34px;border:1px solid #b8d6ed;color:#387bb0;background:#deeffe;border-radius:10px;font-weight:750;font-size:.85rem}.side-actions{display:flex;gap:5px;margin-top:10px}.side-actions .nav-btn{font-size:.78rem;gap:7px;padding:8px 9px}.side-actions .ico{width:15px}
.main-area{width:calc(100% - 259px);min-width:0}.topbar{min-height:78px;background:#ffffffbd;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 40px;backdrop-filter:blur(18px)}.crumb{font-size:.84rem;color:#8da4b7;display:flex;align-items:center;gap:9px;flex-wrap:wrap}.crumb strong{color:#365d7e;font-weight:650}.top-user{display:flex;align-items:center;gap:9px;color:#6c8ca7;font-size:.83rem}.top-user .user-dot{width:31px;height:31px;border-radius:50%;display:grid;place-items:center;background:#e8f2fb;border:1px solid #d7e7f5}.content{max-width:1240px;margin:0 auto;padding:38px 40px 78px}.page-head{display:flex;align-items:start;justify-content:space-between;gap:20px;margin-bottom:27px}.eyebrow{font-size:.72rem;text-transform:uppercase;letter-spacing:.15em;color:var(--blue);font-weight:800;margin-bottom:8px}.subhead{color:var(--muted);margin-top:9px;max-width:600px;font-size:.93rem}.header-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.btn{border-radius:10px;border:1px solid transparent;padding:10px 16px;font-weight:660;background:#edf5fc;color:#2a648f;display:inline-flex;justify-content:center;align-items:center;gap:8px;min-height:41px;transition:background .17s,transform .12s;white-space:nowrap;font-size:.86rem}.btn:hover{background:#e0effb}.btn:active{transform:scale(.985)}.btn.primary{background:#5d98c8;color:white;box-shadow:0 4px 10px #609aca2d}.btn.primary:hover{background:#477fae}.btn.outline{background:#fff;border-color:var(--border);color:#50718d}.btn.outline:hover{background:#f6faff}.btn.danger{background:#fceff0;color:var(--danger)}.btn.danger:hover{background:#fae2e5}.btn.flat{background:transparent;color:var(--blue);padding:6px 9px;min-height:30px}.btn.sm{padding:7px 11px;min-height:34px;font-size:.8rem}.btn.icon-btn{padding:8px;min-width:36px}.ico{width:18px;height:18px;stroke:currentColor;stroke-width:1.7;fill:none;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-bottom:27px}.stat{background:var(--paper);border:1px solid var(--border);border-radius:var(--radius);padding:20px 23px;box-shadow:var(--shadow)}.stat-label{font-size:.82rem;color:var(--muted);margin-bottom:13px}.stat-value{font-size:1.8rem;line-height:1.05;letter-spacing:-.04em;font-weight:730;color:#35658d}.stat-foot{font-size:.75rem;color:#8aa3b8;margin-top:9px}.section-title{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:29px 0 17px}.cards-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.bot-card{border:1px solid var(--border);background:#fff;border-radius:var(--radius);padding:21px;box-shadow:var(--shadow);text-align:left;min-height:206px;display:flex;flex-direction:column;align-items:stretch;transition:border-color .18s,transform .18s,box-shadow .18s}.bot-card:hover{transform:translateY(-3px);border-color:#a9cfe9;box-shadow:0 14px 30px #397eae14}.bot-card-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:19px}.bot-card .bot-name{font-weight:720;font-size:1.02rem;line-height:1.4;overflow-wrap:anywhere;letter-spacing:-.015em}.bot-card .bot-tag{font-size:.83rem;color:#7f97aa;margin-top:4px;overflow-wrap:anywhere}.bot-card-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;padding-top:21px;color:#9aabbb;font-size:.72rem}.pill{display:inline-flex;align-items:center;gap:5px;background:#ecf5fd;color:#5784a7;border:1px solid #e0edf7;border-radius:50px;padding:4px 9px;font-size:.72rem;font-weight:700}.pill.max{background:#f0effd;color:#7775aa;border-color:#e9e6fa}.pill.success{background:#e6f5ef;color:#397c67;border-color:#d6eddf}.pill.warn{background:#fdf3e7;color:#98703a;border-color:#f1e6d4}.pill.danger{background:#fcebed;color:#b55b64;border-color:#f5dce0}.tabs{display:flex;gap:7px;flex-wrap:wrap;padding:5px;background:#e8f2fb;border:1px solid #dceaf5;border-radius:13px;margin:21px 0 22px;width:fit-content}.tab{background:transparent;color:#7191aa;border:none;border-radius:9px;padding:10px 14px;font-size:.84rem;font-weight:700;display:flex;align-items:center;gap:8px}.tab.active{background:white;color:#376e98;box-shadow:0 3px 10px #5086b020}.panel{background:#fff;border:1px solid var(--border);box-shadow:var(--shadow);border-radius:var(--radius);overflow:hidden}.panel-head{padding:21px 23px;display:flex;align-items:center;justify-content:space-between;gap:15px;border-bottom:1px solid #e7eef6}.panel-head h2{font-size:1.04rem}.panel-body{padding:23px}.toolbar{display:flex;align-items:center;gap:11px;flex-wrap:wrap}.search{display:flex;align-items:center;gap:9px;position:relative;background:#f7fafd;border:1px solid var(--border);border-radius:10px;color:#a0b3c4;padding:0 11px;min-height:41px;flex:1;min-width:165px;max-width:370px}.search:focus-within{border-color:#9ec7e7}.search input{width:100%;border:0;outline:0;background:transparent;color:var(--navy);font-size:.84rem;padding:10px 0;min-width:0}.search .ico{width:16px;height:16px}input[type="date"],select.field-input{font-size:.85rem;border:1px solid var(--border);border-radius:9px;background:#fafdff;color:#365873;min-height:41px;padding:8px 11px;max-width:230px}.table-wrap{overflow-x:auto}.data-table{width:100%;border-collapse:collapse;text-align:left;min-width:670px}.data-table th{font-size:.74rem;font-weight:740;color:#8aa0b5;background:#f7faff;padding:13px 19px;white-space:nowrap;border-bottom:1px solid #e4edf5}.data-table td{padding:13px 19px;font-size:.83rem;border-bottom:1px solid #edf2f7;vertical-align:middle}.data-table tbody tr:last-child td{border-bottom:none}.data-table tr:hover td{background:#fbfdff}.row-name{font-weight:670;color:#3a5973}.mono{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.78rem;word-break:break-all}.table-actions{display:flex;gap:4px}.table-actions .btn{color:#6485a0}.count-badge{color:#7e9ab0;font-size:.76rem;background:#f0f6fc;padding:4px 10px;border-radius:50px}.notice{background:#f0f7fd;border:1px solid #d9eaf8;border-radius:12px;padding:14px 17px;color:#527793;font-size:.85rem;display:flex;align-items:flex-start;gap:11px;margin-bottom:19px}.notice .ico{margin-top:1px}.notice.warn{background:#fff8ec;border-color:#f2e6cb;color:#98733e}.empty{padding:60px 25px;text-align:center;color:#829aae;display:flex;flex-direction:column;align-items:center;gap:10px}.empty .empty-symbol{width:59px;height:59px;border-radius:19px;background:#f0f7fd;color:#80a9c8;display:grid;place-items:center;margin-bottom:5px}.empty strong{color:#4c6f8b;font-size:.98rem}.empty p{max-width:440px;font-size:.84rem}.field{display:flex;flex-direction:column;gap:7px;margin:0 0 18px}.field label{font-size:.79rem;color:#51718a;font-weight:720}.field input,.field select,.field textarea{width:100%;border:1px solid #d6e5f1;border-radius:10px;background:#fbfdff;min-height:44px;padding:10px 13px;color:#24465f;outline:0}.field input:focus,.field select:focus{border-color:#8fbee2;box-shadow:0 0 0 3px #d9edfd}.field small{font-size:.73rem}.check-row{display:flex;align-items:center;gap:10px;margin:10px 0;color:#59788f;font-size:.88rem}.check-row input{width:16px;height:16px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.form-row .field{margin-bottom:0}.form-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:22px;flex-wrap:wrap}.detail-intro{display:flex;align-items:center;gap:17px;margin-bottom:14px}.detail-logo{width:63px;height:63px;border-radius:17px;background:#e6f3fd;color:#508db9;display:grid;place-items:center}.detail-logo .ico{width:28px;height:28px}.detail-meta{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:9px}.detail-meta span{color:#809ab1;font-size:.8rem}.alias-tags{display:flex;gap:6px;flex-wrap:wrap}.alias-tag{display:inline-flex;align-items:center;gap:6px;padding:5px 8px;background:#edf6fc;border:1px solid #deebf5;border-radius:8px;font-size:.76rem;color:#547b99}.alias-tag button{background:none;border:0;padding:0;color:#88a6bd;display:flex}.alias-tag .ico{width:13px;height:13px}.aliases-row{border-bottom:1px solid #edf2f7;padding:15px 20px}.aliases-row:last-child{border-bottom:0}.aliases-title{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:10px}.aliases-title strong{font-size:.85rem}.pagination{padding:14px 21px;border-top:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:.8rem;gap:10px;flex-wrap:wrap}.pagination .pager{display:flex;gap:7px}.settings-block{max-width:560px}.divider{height:1px;background:var(--border);margin:18px 0}.activity-row{padding:15px 21px;border-bottom:1px solid #edf2f7;display:flex;gap:12px}.activity-row:last-child{border:0}.activity-dot{height:10px;width:10px;background:#9bc6e6;border-radius:50%;margin-top:5px;flex-shrink:0}.activity-row strong{font-size:.85rem}.activity-row .muted{font-size:.76rem}.activity-row pre{white-space:pre-wrap;overflow-wrap:anywhere;font-family:inherit;font-size:.74rem;color:#849bad;margin:7px 0 0}.footer-note{color:#9aafbf;font-size:.74rem;margin-top:27px}
.login-wrap{min-height:100vh;display:grid;place-items:center;padding:20px;background:radial-gradient(ellipse at 12% 5%,#e1f1ff 0,transparent 40%),radial-gradient(ellipse at 90% 85%,#dfedf9 0,transparent 40%),#f2f8fd}.login-card{width:min(100%,437px);background:white;border:1px solid #d8e9f7;box-shadow:0 24px 72px #356e9b1c;padding:39px;border-radius:23px}.login-logo{height:51px;width:51px;border-radius:15px;background:#e1f0fc;color:#487eac;display:grid;place-items:center;margin-bottom:25px}.login-logo .ico{width:27px;height:27px}.login-card h1{font-size:1.73rem}.login-card .subhead{margin:11px 0 27px;font-size:.89rem}.login-card .btn.primary{width:100%;margin-top:5px;min-height:46px}.login-foot{text-align:center;color:#9db1c3;font-size:.75rem;margin-top:25px}.login-card .field{margin-bottom:17px}.login-card .field input{height:47px}
.modal-shade{position:fixed;inset:0;background:#102a42a1;z-index:100;display:flex;align-items:center;justify-content:center;padding:20px;backdrop-filter:blur(5px)}.modal{max-width:510px;width:100%;max-height:min(90vh,800px);overflow:auto;background:white;border-radius:19px;box-shadow:0 24px 90px #08284155;padding:27px}.modal h2{font-size:1.18rem;margin-bottom:8px}.modal .muted{font-size:.83rem;margin-bottom:21px}.modal .field{margin-bottom:14px}.modal .form-actions{margin-top:24px}.modal .secret-output{padding:14px;background:#eef7fd;border-radius:11px;word-break:break-all;font-family:monospace;font-size:.86rem;margin-top:13px}.toast{margin-top:10px;padding:13px 18px;border-radius:12px;background:#355f81;color:white;box-shadow:0 12px 28px #285e8c44;max-width:420px;display:flex;align-items:center;gap:10px;font-size:.85rem}.toast.error{background:#a54e5b}#toasts{position:fixed;right:23px;bottom:22px;z-index:120}.loading-spinner{height:32px;width:32px;border:3px solid #dbeaf8;border-top-color:var(--blue);border-radius:50%;animation:spin .8s linear infinite}.splash{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;color:#88a1b6;font-size:.87rem}@keyframes spin{to{transform:rotate(360deg)}}
@media(max-width:1120px){.cards-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.content{padding:32px 27px}.topbar{padding:0 27px}}
@media(max-width:740px){.sidebar{width:72px;padding:18px 9px;gap:26px}.sidebar .brand-label,.sidebar .brand-sub,.sidebar .side-caption,.sidebar .nav-btn .nav-text,.sidebar .company-label .user-lines,.sidebar .side-actions .nav-text{display:none}.sidebar .brand{justify-content:center;padding:0}.sidebar .nav-btn{justify-content:center;padding:12px}.sidebar .side-actions{flex-direction:column}.sidebar .company-label{justify-content:center}.sidebar .side-bottom{padding:15px 0 0}.main-area{width:calc(100% - 72px)}.topbar{min-height:67px;padding:0 16px}.content{padding:26px 16px 55px}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.stats .stat:last-child{grid-column:span 2}.cards-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.bot-card{padding:15px;min-height:185px}.bot-card .bot-name{font-size:.89rem}.page-head{flex-direction:column}.header-actions{width:100%}.header-actions .btn{flex:1}.form-row{grid-template-columns:1fr}.tabs{width:100%;gap:2px}.tab{flex:1;justify-content:center;padding:9px}.login-card{padding:27px}.panel-head{padding:17px}.panel-body{padding:17px}}
@media(max-width:430px){.cards-grid{grid-template-columns:1fr}.stat{padding:15px}.stat-value{font-size:1.4rem}.tab{font-size:.72rem}.detail-intro{align-items:start}.detail-logo{width:46px;height:46px;flex-shrink:0}.crumb{font-size:.75rem}}

/* V5: compact login and change-password screens without decorative symbols. */
.login-card h1{margin-bottom:25px}
.login-card h1:has(+ .subhead){margin-bottom:0}

/* V8 — simplified bot cards and textual navigation, no duplicate overview menu. */
.bot-card{min-height:165px}
.bot-card-top{justify-content:flex-end;margin-bottom:15px}
.bot-card-foot{justify-content:flex-start}
.nav-btn .nav-text{display:inline}
@media(max-width:740px){
 .shell{display:block}
 .sidebar{position:static;width:100%;height:auto;padding:14px 16px;gap:10px}
 .sidebar .brand{display:flex;padding:0 3px}
 .sidebar .brand-label{display:block}
 .sidebar .nav{display:flex;flex-direction:row;flex-wrap:wrap;gap:5px}
 .sidebar .nav-btn{width:auto;padding:9px 10px;justify-content:center}
 .sidebar .nav-btn .nav-text{display:inline}
 .sidebar .side-caption{display:none}
 .sidebar .side-bottom{margin-top:0;padding:7px 0 0;display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}
 .sidebar .company-label{justify-content:flex-start}
 .sidebar .company-label .user-lines{display:block}
 .sidebar .side-actions{flex-direction:row;margin-top:0}
 .sidebar .side-actions .nav-text{display:inline}
 .main-area{width:100%}
 .bot-card{min-height:152px}
}


/* V8.2 — uniform robot on every card and stable alignment across views. */
.bot-card-top{justify-content:space-between;min-height:40px;margin-bottom:15px}
.bot-card-icon{display:grid;place-items:center;flex:0 0 40px;width:40px;height:40px;border-radius:11px;background:#e8f3fd;border:1px solid #d8eaf8;color:#5689b4}
.bot-card-icon .ico{width:23px;height:23px}
.bot-card-top .pill{flex-shrink:0}
/* Both bot dashboards reserve the same title/description region, so content does not jump on navigation. */
.dashboard-page-head .subhead{min-height:3.1em;max-width:600px}
/* All details pages show notice text at exactly the same left inset. */
.notice{align-items:flex-start}
.notice>span{display:block;min-width:0}
/* Common tab sizing and wrapping, independent of the active section. */
.tabs{align-items:stretch}
.tab{justify-content:center}
@media(max-width:740px){
 .dashboard-page-head .subhead{min-height:4.8em}
 .bot-card-icon{width:36px;height:36px;flex-basis:36px}
 .bot-card-icon .ico{width:21px;height:21px}
}
@media(max-width:430px){
 .dashboard-page-head .subhead{min-height:6.1em}
}
