/* Kiobio administration and sign-in visual system. Namespaced to avoid Dashboard/History regressions. */
.kb-auth-page,.kb-admin-page{--kb-ink:#11384b;--kb-secondary:#60798b;--kb-primary:#0c7180;--kb-border:#dce7ec;--kb-bg:#f3f7f9;--kb-white:#fff;color:var(--kb-ink);font-family:Arial,Helvetica,sans-serif}
.kb-eyebrow{display:inline-block;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#237b88}
.kb-muted,.kb-inline-hint{color:#60798b;font-size:13px}
.kb-button{appearance:none;border:1px solid transparent;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;gap:9px;font:700 13px/1.2 Arial,Helvetica,sans-serif;min-height:42px;padding:11px 18px;cursor:pointer;text-decoration:none;transition:background-color .15s,border-color .15s,box-shadow .15s}
.kb-button-primary{background:#123e4d;color:white}.kb-button-primary:hover,.kb-button-primary:focus{background:#0d3040;color:white;text-decoration:none}.kb-button-secondary{color:#154658;background:#f3f8fa;border-color:#d2e2e9}.kb-button-secondary:hover{background:#e5f0f3;color:#154658;text-decoration:none}.kb-button-wide{width:100%;justify-content:space-between}
.kb-field{display:flex;flex-direction:column;gap:7px;min-width:0}.kb-field label{margin:0;color:#28485a;font-size:12px;font-weight:700}.kb-field input,.kb-field select{display:block;width:100%;height:43px;border:1px solid #cbdbe2;border-radius:9px;background:white;color:#153b4c;padding:10px 12px;font-size:14px;min-width:0}.kb-field input:focus,.kb-field select:focus{outline:2px solid #9ed8dd;outline-offset:1px;border-color:#188596}.kb-field-grid{display:grid;gap:15px}.kb-grid-four{grid-template-columns:1.2fr 1fr .95fr 1.1fr}.kb-grid-user{grid-template-columns:1.35fr 1fr .9fr auto;align-items:end}
.kb-auth-page{background:#f3f7f9;margin:0;min-height:100vh}.kb-auth-shell{display:grid;grid-template-columns:minmax(330px,.95fr) minmax(360px,1.05fr);min-height:100vh}.kb-auth-intro{position:relative;background:linear-gradient(155deg,#103746 0%,#13495a 62%,#126676 100%);color:white;min-height:520px;padding:45px clamp(30px,6vw,90px);display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}.kb-auth-intro:after{content:"";position:absolute;width:520px;height:520px;border:1px solid #ffffff24;border-radius:50%;right:-270px;bottom:-240px;box-shadow:0 0 0 65px #ffffff08,0 0 0 130px #ffffff06;pointer-events:none}.kb-auth-brand{display:flex;gap:13px;align-items:center;position:relative;z-index:1}.kb-logo-mark{width:48px;height:48px;border-radius:13px;background:#ffffff14;display:flex;align-items:center;justify-content:center;gap:5px;border:1px solid #ffffff1e}.kb-logo-mark i{display:block;width:5px;border-radius:5px;background:#bceee5}.kb-logo-mark i:nth-child(1){height:14px}.kb-logo-mark i:nth-child(2){height:27px}.kb-logo-mark i:nth-child(3){height:19px}.kb-auth-brand strong{display:block;font-size:27px;letter-spacing:-1.1px;line-height:1.1}.kb-auth-brand small{display:block;font-size:10px;letter-spacing:1.4px;color:#b5d9df;margin-top:3px}.kb-auth-intro-copy{position:relative;z-index:1;max-width:440px}.kb-auth-intro .kb-eyebrow{color:#94e2d6}.kb-auth-intro h1{color:white;font-size:clamp(32px,3.4vw,49px);line-height:1.15;letter-spacing:-.035em;margin:14px 0 19px;font-weight:800}.kb-auth-intro-copy p{line-height:1.8;color:#c9e1e5;font-size:15px}.kb-auth-features{display:flex;flex-wrap:wrap;gap:8px;margin-top:30px}.kb-auth-features span{border:1px solid #ffffff33;background:#ffffff0c;border-radius:20px;padding:8px 12px;font-size:11px;color:#d2ecee}.kb-auth-intro-foot{color:#a8d1d7;font-size:12px;position:relative;z-index:1}.kb-auth-form-area{padding:36px;display:flex;justify-content:center;align-items:center}.kb-auth-form-card{background:white;border:1px solid #e0eaee;border-radius:20px;padding:clamp(24px,4vw,52px);box-shadow:0 20px 65px #1637460d;width:100%;max-width:500px}.kb-auth-form-card h2{font-size:29px;font-weight:800;letter-spacing:-.03em;color:#103b4d;margin:10px 0 9px}.kb-auth-form-card>.kb-muted{margin:0 0 30px}.kb-form-stack{display:grid;gap:20px}.kb-auth-assist{margin-top:-6px;text-align:right}.kb-auth-assist a{font-size:13px;font-weight:700;color:#08758a;text-decoration:none}.kb-auth-assist a:hover{text-decoration:underline}.kb-auth-help{font-size:12px;color:#78909c;line-height:1.6;text-align:center;border-top:1px solid #eef2f4;padding-top:22px;margin-top:24px}.kb-validation{color:#a52a34;font-size:13px}.kb-validation:empty{display:none}.kb-validation ul{padding-left:16px;margin:0}
.kb-admin-page{max-width:1210px!important;padding-top:35px;padding-bottom:75px}.kb-page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:27px}.kb-page-heading h1{font-size:35px;letter-spacing:-.03em;color:#10394a;margin:6px 0 7px;font-weight:800}.kb-page-heading p{color:#60798b;margin:0;font-size:14px}.kb-company-pill{display:flex;align-items:center;gap:10px;background:white;border:1px solid #dce6eb;padding:13px 17px;border-radius:12px;max-width:360px}.kb-company-pill strong,.kb-company-pill small{display:block}.kb-company-pill strong{font-size:13px;overflow-wrap:anywhere}.kb-company-pill small{color:#6a8390;font-size:11px;margin-top:3px}.kb-company-dot{height:9px;width:9px;border-radius:50%;background:#159888;flex-shrink:0}.kb-admin-tabs{display:flex;align-items:center;gap:7px;border-bottom:1px solid #d6e2e7;margin-bottom:24px;overflow-x:auto}.kb-admin-tab{color:#5c7785;padding:13px 19px;border-radius:9px 9px 0 0;white-space:nowrap;font-size:13px;font-weight:700;text-decoration:none}.kb-admin-tab:hover,.kb-admin-tab:focus{color:#0e4a5b;background:#e8f2f4;text-decoration:none}.kb-admin-tab-active{color:#0a5b6c;border-bottom:3px solid #15919a;background:#e7f5f3}.kb-admin-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-bottom:40px}.kb-admin-tile{display:flex;align-items:center;gap:13px;min-height:102px;background:white;border:1px solid #dce7ec;border-radius:15px;padding:19px;text-decoration:none;color:#193d4d;box-shadow:0 8px 25px #10374608}.kb-admin-tile:hover{border-color:#8dc6ca;box-shadow:0 12px 30px #10374612;text-decoration:none;color:#103b4b}.kb-tile-icon{display:grid;place-items:center;height:43px;width:43px;border-radius:12px;color:#0f707b;background:#e3f4f2;font-weight:800;font-size:13px;flex-shrink:0}.kb-admin-tile strong,.kb-admin-tile small{display:block}.kb-admin-tile strong{font-size:14px}.kb-admin-tile small{color:#68818d;font-size:12px;margin-top:6px;line-height:1.3}.kb-tile-arrow{margin-left:auto;font-size:22px;color:#16818d}.kb-section-header{margin:0 0 15px}.kb-section-header h2{font-size:24px;letter-spacing:-.02em;margin:0 0 7px;color:#123e50}.kb-section-header p{color:#60798b;margin:0;font-size:13px}.kb-admin-card{background:white;border:1px solid #dae6ec;border-radius:16px;box-shadow:0 10px 30px #12384b09;padding:22px;margin-bottom:15px}.kb-add-user-card{margin-bottom:28px}.kb-card-title h3{font-size:17px;color:#173c4b;margin:0 0 4px;font-weight:800}.kb-card-title p{color:#687f8b;font-size:12px;margin:0 0 20px}.kb-card-actions{display:flex;justify-content:flex-end;align-items:center;gap:16px;margin-top:16px;flex-wrap:wrap}.kb-user-header{display:flex;align-items:center;gap:13px;border-bottom:1px solid #edf2f5;padding-bottom:17px}.kb-user-avatar{height:43px;width:43px;border-radius:13px;display:grid;place-items:center;font-weight:800;background:#e2f2f1;color:#0f6370;font-size:19px;flex-shrink:0}.kb-user-heading{flex:1;min-width:0}.kb-user-heading h3{font-size:15px;font-weight:800;color:#133a4b;margin:0;overflow-wrap:anywhere}.kb-user-heading p{font-size:12px;color:#7a919b;margin:5px 0 0}.kb-user-badges{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.kb-chip,.kb-status{border-radius:16px;padding:6px 10px;font-size:11px;font-weight:700;white-space:nowrap}.kb-chip{color:#426777;background:#edf3f6}.kb-status-active{color:#0a745d;background:#e2f6ed}.kb-status-disabled{color:#99621e;background:#fff3dc}.kb-user-main{padding-top:19px}.kb-toggle-row{display:flex;align-items:center;gap:9px;font-size:12px;color:#2d5061;font-weight:700;min-height:43px;cursor:pointer}.kb-toggle-row input,.kb-device-check input{accent-color:#0b7987;width:17px;height:17px}.kb-user-advanced{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:20px}.kb-details{border:1px solid #e1eaee;border-radius:11px;background:#f9fbfc;min-width:0}.kb-details summary{list-style:none;padding:15px 16px;cursor:pointer;position:relative;padding-right:30px}.kb-details summary::-webkit-details-marker{display:none}.kb-details summary:after{content:'+';position:absolute;right:14px;top:16px;color:#28788a;font-size:20px;font-weight:400}.kb-details[open] summary:after{content:'−'}.kb-details summary span,.kb-details summary small{display:block}.kb-details summary span{font-size:13px;font-weight:800;color:#22495a}.kb-details summary small{font-size:11px;color:#79909a;margin-top:4px}.kb-details-content{padding:0 16px 17px}.kb-checklist{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}.kb-device-check{display:flex;align-items:center;gap:10px;border:1px solid #e0e9ed;border-radius:9px;background:white;padding:10px;cursor:pointer;margin:0}.kb-device-check span strong,.kb-device-check span small{display:block}.kb-device-check strong{font-size:11px;color:#173b4c}.kb-device-check small{font-size:10px;color:#6a8591}.kb-password-row{display:flex;gap:10px;align-items:end}.kb-password-row .kb-field{flex:1}.kb-bottom-note{font-size:12px;color:#7e929d;margin:26px 0}.kb-notice{padding:14px 18px;margin:15px 0;border-radius:10px;font-size:13px}.kb-notice-success{color:#086854;background:#e2f7ed;border:1px solid #b4e0d0}.kb-notice-error{color:#9d2e36;background:#fef0f1;border:1px solid #f2d4d7}
@media(max-width:980px){.kb-grid-four{grid-template-columns:repeat(2,minmax(0,1fr))}.kb-grid-user{grid-template-columns:repeat(2,minmax(0,1fr))}.kb-user-advanced{grid-template-columns:1fr}.kb-admin-tiles{grid-template-columns:1fr 1fr}}@media(max-width:730px){.kb-auth-shell{grid-template-columns:1fr}.kb-auth-intro{min-height:180px;padding:23px;gap:22px}.kb-auth-intro-copy h1{font-size:26px}.kb-auth-intro-copy p,.kb-auth-features,.kb-auth-intro-foot{display:none}.kb-auth-form-area{padding:20px}.kb-auth-form-card{padding:25px}.kb-admin-page{padding-top:20px;padding-left:14px;padding-right:14px}.kb-page-heading{display:block}.kb-company-pill{margin-top:16px;max-width:none}.kb-admin-tiles{grid-template-columns:1fr}.kb-field-grid,.kb-grid-four,.kb-grid-user{grid-template-columns:1fr}.kb-user-header{flex-wrap:wrap}.kb-user-badges{width:100%}.kb-admin-card{padding:16px}.kb-password-row{flex-direction:column;align-items:stretch}.kb-password-row .kb-field,.kb-password-row .kb-button{width:100%}.kb-card-actions{align-items:stretch}.kb-card-actions .kb-button{width:100%}}
.kb-login-error {
    display: block !important;
    margin: 12px 0;
    padding: 14px 16px;
    background: #fff1f1;
    border: 1px solid #e5a5a5;
    border-radius: 10px;
    color: #a61b1b;
    font-size: 14px;
}

    .kb-login-error .validation-summary-errors {
        display: block !important;
        color: inherit;
    }

    .kb-login-error ul {
        margin: 0;
        padding-left: 20px;
    }

    .kb-login-error li {
        margin: 4px 0;
    }