:root{
    --green-950:#073b2a;--green-900:#0a4b35;--green-800:#0d6245;--green-700:#118055;
    --green-100:#dff5e9;--green-50:#f1faf5;--ink:#17211d;--muted:#6b7771;--line:#e4e9e6;
    --surface:#fff;--canvas:#f5f7f6;--danger:#a52828;--danger-bg:#fff0f0;--shadow:0 18px 45px rgba(10,45,32,.08)
}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--canvas)}
button,input{font:inherit}.app-shell{min-height:100vh;display:grid;grid-template-columns:268px 1fr}.sidebar{position:sticky;top:0;height:100vh;background:var(--green-950);color:#fff;display:flex;flex-direction:column;padding:22px 16px}.brand{display:flex;align-items:center;gap:12px}.brand-mark{width:42px;height:42px;border-radius:13px;background:#fff;color:var(--green-900);display:grid;place-items:center;font-weight:900;font-size:20px;box-shadow:0 8px 30px rgba(0,0,0,.12)}.brand strong{display:block;font-size:17px;letter-spacing:.01em}.brand span{display:block;color:rgba(255,255,255,.62);font-size:11px;margin-top:2px}.nav{margin-top:28px;display:flex;flex-direction:column;gap:5px}.nav-section{text-transform:uppercase;font-size:10px;letter-spacing:.14em;color:rgba(255,255,255,.42);padding:20px 12px 7px}.nav-item{min-height:44px;border-radius:10px;padding:0 12px;display:flex;align-items:center;gap:11px;color:rgba(255,255,255,.82);text-decoration:none;font-size:14px}.nav-item.active{background:rgba(255,255,255,.12);color:#fff}.nav-item:hover:not(.disabled){background:rgba(255,255,255,.08)}.nav-item.disabled{opacity:.48;cursor:not-allowed}.nav-icon{width:20px;text-align:center}.nav-item small{margin-left:auto;font-size:9px;border:1px solid rgba(255,255,255,.25);padding:2px 5px;border-radius:999px}.sidebar-footer{margin-top:auto;border-top:1px solid rgba(255,255,255,.1);padding:16px 6px 4px}.user-mini{display:flex;align-items:center;gap:10px}.avatar{width:35px;height:35px;border-radius:50%;background:#fff;color:var(--green-900);display:grid;place-items:center;font-weight:800}.user-mini strong{font-size:12px;display:block;max-width:155px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-mini span{display:block;font-size:10px;color:rgba(255,255,255,.55);margin-top:2px}.main{min-width:0}.topbar{height:76px;background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 30px;gap:18px;position:sticky;top:0;z-index:20}.menu-button{display:none;border:0;background:transparent;font-size:24px}.topbar-title{display:flex;flex-direction:column}.eyebrow{text-transform:uppercase;letter-spacing:.13em;font-size:10px;font-weight:800;color:var(--green-700)}.topbar-title strong{font-size:17px;margin-top:3px}.top-actions{margin-left:auto;display:flex;align-items:center;gap:10px}.office-chip{display:flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:999px;padding:8px 11px;font-size:12px;font-weight:700;background:#fff}.status-dot{width:7px;height:7px;border-radius:50%;background:#25a568}.content{padding:32px;max-width:1500px;margin:0 auto}.page-heading{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:24px}.page-heading h1{font-size:30px;letter-spacing:-.03em;margin:7px 0 5px}.page-heading p{margin:0;color:var(--muted);max-width:730px}.foundation-badge,.pill{font-size:11px;font-weight:800;color:var(--green-800);background:var(--green-100);border-radius:999px;padding:8px 11px}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.stat-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px;box-shadow:0 5px 18px rgba(20,45,34,.03)}.stat-card.primary{background:linear-gradient(145deg,var(--green-900),var(--green-700));color:#fff;border:0}.stat-label{font-size:12px;color:var(--muted);font-weight:700}.stat-card.primary .stat-label,.stat-card.primary small{color:rgba(255,255,255,.7)}.stat-card strong{display:block;font-size:31px;margin:13px 0 5px}.stat-card small{color:var(--muted)}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(340px,.7fr);gap:18px;margin-top:18px}.panel{background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 5px 18px rgba(20,45,34,.03);padding:20px}.panel-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px}.panel-head h2{font-size:18px;margin:5px 0 0}.office-group{border:1px solid var(--line);border-radius:12px;overflow:hidden;margin-bottom:10px}.office-row{display:flex;justify-content:space-between;align-items:center;padding:13px 15px;border-bottom:1px solid var(--line)}.office-row:last-child{border-bottom:0}.office-row.child{padding-left:31px;background:#fbfcfb}.office-row strong{font-size:13px}.office-row span{font-size:10px;margin-left:7px;background:#eff3f1;color:#54625b;border-radius:6px;padding:3px 5px}.office-row small{color:var(--muted)}.roadmap{display:flex;flex-direction:column;gap:7px}.roadmap-item{display:flex;gap:12px;padding:13px;border-radius:11px}.roadmap-item>span{flex:0 0 30px;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#edf1ef;color:#718078;font-size:12px;font-weight:900}.roadmap-item strong{font-size:13px}.roadmap-item p{font-size:12px;color:var(--muted);margin:4px 0 0;line-height:1.45}.roadmap-item.complete{background:var(--green-50)}.roadmap-item.complete>span{background:var(--green-700);color:#fff}.roadmap-item.next{border:1px solid #cde8d8}.roadmap-item.next>span{background:var(--green-100);color:var(--green-800)}.btn{border:0;border-radius:9px;padding:10px 14px;font-weight:800;font-size:13px;cursor:pointer}.btn-primary{background:var(--green-800);color:#fff}.btn-primary:hover{background:var(--green-900)}.btn-ghost{background:transparent;color:#415049;border:1px solid var(--line)}.btn-block{width:100%;min-height:47px}.alert{border-radius:10px;padding:12px 14px;font-size:13px;margin-bottom:16px}.alert.success{background:var(--green-50);color:var(--green-900);border:1px solid #cbe7d6}.alert.error{background:var(--danger-bg);color:var(--danger);border:1px solid #f0cccc}.auth-body{background:#edf3ef}.auth-shell{min-height:100vh;display:grid;grid-template-columns:1.1fr .9fr}.auth-brand-panel{background:linear-gradient(145deg,#063825,#0b6543);color:#fff;display:flex;align-items:center;justify-content:center;padding:60px}.auth-brand-content{max-width:610px}.auth-brand{margin-bottom:70px}.auth-brand-content h1{font-size:48px;letter-spacing:-.045em;line-height:1.06;margin:0 0 18px}.auth-brand-content>p{color:rgba(255,255,255,.7);font-size:17px;line-height:1.65;max-width:570px}.auth-points{margin-top:48px;display:grid;gap:18px}.auth-points>div{display:flex;gap:16px;align-items:flex-start}.auth-points>div>span{border:1px solid rgba(255,255,255,.25);border-radius:7px;padding:5px 6px;font-size:10px}.auth-points p{margin:0;color:rgba(255,255,255,.67);font-size:13px;line-height:1.55}.auth-points strong{color:#fff}.auth-form-panel{display:flex;align-items:center;justify-content:center;padding:40px}.auth-card{width:min(440px,100%);background:#fff;border-radius:20px;padding:36px;box-shadow:var(--shadow);border:1px solid rgba(14,85,57,.08)}.auth-card h2{font-size:27px;margin:7px 0}.muted{color:var(--muted);font-size:13px;line-height:1.55}.form-stack{display:flex;flex-direction:column;gap:15px;margin-top:25px}.form-stack label>span{display:block;font-size:12px;font-weight:800;margin-bottom:7px}.form-stack input[type=email],.form-stack input[type=password]{width:100%;height:47px;border:1px solid #dce3df;border-radius:9px;padding:0 12px;outline:none;background:#fff}.form-stack input:focus{border-color:var(--green-700);box-shadow:0 0 0 3px rgba(17,128,85,.09)}.form-stack small{display:block;color:var(--muted);margin-top:6px;font-size:10px}.check-row{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:12px}.check-row span{margin:0!important;font-weight:500!important}.auth-footnote{border-top:1px solid var(--line);margin-top:25px;padding-top:18px;color:#8b9690;font-size:10px;text-align:center}.mobile-brand{display:none;align-items:center;gap:10px;margin-bottom:28px}.mobile-brand.visible{display:flex}.mobile-brand .brand-mark{background:var(--green-900);color:#fff}.password-shell{min-height:100vh;display:grid;place-items:center;padding:30px}.password-card{max-width:470px}.empty-state{padding:30px;text-align:center;color:var(--muted)}
@media(max-width:1050px){.stat-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr}.auth-shell{grid-template-columns:1fr}.auth-brand-panel{display:none}.mobile-brand{display:flex}.auth-form-panel{min-height:100vh}.app-shell{grid-template-columns:225px 1fr}}
@media(max-width:760px){.app-shell{display:block}.sidebar{position:fixed;left:-290px;width:270px;z-index:50;transition:left .2s}.sidebar.open{left:0}.menu-button{display:block}.topbar{padding:0 16px;height:68px}.topbar-title .eyebrow,.office-chip{display:none}.content{padding:20px 15px}.stat-grid{grid-template-columns:1fr 1fr;gap:10px}.page-heading{display:block}.foundation-badge{display:inline-block;margin-top:12px}.auth-form-panel{padding:18px}.auth-card{padding:26px 22px}.top-actions{gap:5px}}
@media(max-width:480px){.stat-grid{grid-template-columns:1fr}.page-heading h1{font-size:25px}}


/* SDO DavOcc DTS official brand icon */
.brand-mark.logo-mark{
    padding:0;
    overflow:hidden;
    background:transparent;
    box-shadow:none;
}
.brand-mark.logo-mark img{
    display:block;
    width:100%;
    height:100%;
    object-fit:contain;
}
.mobile-brand .brand-mark.logo-mark{
    background:transparent;
}

/* Font Awesome icon system */
.nav-icon{
    width:20px;
    min-width:20px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    text-align:center;
}
.nav-icon i{
    font-size:14px;
}
.menu-button{
    align-items:center;
    justify-content:center;
}
.btn-with-icon{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:7px;
}
.btn-with-icon i{
    font-size:12px;
}
.icon-button{
    width:36px;
    height:36px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:9px;
}

/* DTS Operational Dashboard v1.0.0 */
.main{
    min-width:0;
    min-height:100vh;
    display:flex;
    flex-direction:column;
}
.content{
    width:100%;
    flex:1 0 auto;
}
.dashboard-welcome{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:24px;
    margin-bottom:22px;
}
.dashboard-welcome h1{
    margin:7px 0 4px;
    font-size:30px;
    letter-spacing:-.035em;
}
.dashboard-welcome p{
    margin:0;
    color:var(--muted);
    font-size:14px;
}
.quick-actions{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:8px;
    flex-wrap:wrap;
}
.dashboard-action{
    min-height:40px;
    border:1px solid #d8e3dd;
    background:#fff;
    color:var(--green-900);
    border-radius:10px;
    padding:0 13px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    font-size:12px;
    font-weight:700;
    text-decoration:none;
    cursor:pointer;
}
.dashboard-action:hover:not(.is-disabled){
    background:var(--green-50);
    border-color:#bcdac9;
}
.dashboard-action.is-disabled{
    opacity:.42;
    cursor:default;
}
.dashboard-action i{
    font-size:12px;
}
.operational-stat-grid{
    display:grid;
    grid-template-columns:repeat(6,minmax(0,1fr));
    gap:12px;
}
.operational-stat-card{
    min-height:132px;
    border:1px solid var(--line);
    border-radius:15px;
    background:#fff;
    padding:17px;
    display:flex;
    align-items:flex-start;
    gap:12px;
    box-shadow:0 5px 18px rgba(20,45,34,.025);
}
.operational-stat-card .stat-icon{
    width:34px;
    height:34px;
    flex:0 0 34px;
    border-radius:9px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    background:#edf6f1;
    color:var(--green-800);
}
.operational-stat-card .stat-icon i{
    font-size:14px;
}
.operational-stat-card strong{
    display:block;
    margin:6px 0 3px;
    font-size:29px;
    line-height:1;
    letter-spacing:-.03em;
}
.operational-stat-card small{
    color:var(--muted);
    font-size:10px;
    line-height:1.35;
}
.operational-stat-card.emphasis{
    background:linear-gradient(145deg,var(--green-900),var(--green-700));
    border-color:transparent;
    color:#fff;
}
.operational-stat-card.emphasis .stat-icon{
    background:rgba(255,255,255,.15);
    color:#fff;
}
.operational-stat-card.emphasis .stat-label,
.operational-stat-card.emphasis small{
    color:rgba(255,255,255,.72);
}
.operational-stat-card.overdue strong{
    color:#a33b31;
}
.operational-stat-card.overdue .stat-icon{
    color:#a33b31;
    background:#fff2ef;
}
.operational-dashboard-grid{
    display:grid;
    grid-template-columns:minmax(0,1.55fr) minmax(320px,.7fr);
    gap:16px;
    margin-top:16px;
}
.dashboard-panel{
    min-height:310px;
}
.panel-link{
    display:inline-flex;
    align-items:center;
    gap:5px;
    color:var(--green-800);
    text-decoration:none;
    font-size:11px;
    font-weight:700;
}
.panel-link:hover{
    text-decoration:underline;
}
.panel-link i{
    font-size:9px;
}
.dashboard-empty-state{
    min-height:220px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    text-align:center;
    gap:10px;
    color:var(--muted);
}
.dashboard-empty-state.compact{
    min-height:220px;
}
.dashboard-empty-state strong{
    color:#536159;
    font-size:12px;
    font-weight:600;
}
.empty-icon{
    width:42px;
    height:42px;
    border-radius:50%;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    background:var(--green-50);
    color:var(--green-700);
}
.queue-table-wrap{
    overflow:auto;
}
.queue-table{
    width:100%;
    border-collapse:collapse;
}
.queue-table th,
.queue-table td{
    padding:12px 11px;
    text-align:left;
    border-bottom:1px solid var(--line);
    font-size:11px;
}
.queue-table th{
    color:#6f7b75;
    font-size:9px;
    text-transform:uppercase;
    letter-spacing:.08em;
}
.activity-list{
    display:flex;
    flex-direction:column;
}
.activity-item{
    display:flex;
    gap:11px;
    padding:12px 0;
    border-bottom:1px solid var(--line);
}
.activity-item:last-child{
    border-bottom:0;
}
.activity-dot{
    margin-top:5px;
    width:8px;
    height:8px;
    flex:0 0 8px;
    border-radius:50%;
    background:var(--green-700);
}
.activity-item strong{
    font-size:12px;
}
.activity-item p{
    margin:3px 0;
    color:var(--muted);
    font-size:11px;
}
.activity-item small{
    color:#96a19b;
    font-size:9px;
}
.app-footer{
    flex:0 0 auto;
    width:100%;
    border-top:1px solid var(--line);
    background:#fff;
    padding:18px 32px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    color:#738078;
    font-size:11px;
    line-height:1.5;
}
.app-footer-copy span{
    color:var(--green-800);
    font-weight:600;
}
.app-footer-links{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    flex-wrap:wrap;
    gap:18px;
    color:var(--green-700);
    font-weight:600;
}
.app-footer-links span{
    white-space:nowrap;
}
.nav-item.disabled{
    opacity:.42;
}
.nav-item.disabled small{
    display:none;
}
@media(max-width:1280px){
    .operational-stat-grid{
        grid-template-columns:repeat(3,minmax(0,1fr));
    }
}
@media(max-width:960px){
    .dashboard-welcome{
        flex-direction:column;
    }
    .quick-actions{
        justify-content:flex-start;
    }
    .operational-dashboard-grid{
        grid-template-columns:1fr;
    }
}
@media(max-width:760px){
    .operational-stat-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
    .app-footer{
        padding:17px 16px;
        flex-direction:column;
        align-items:flex-start;
    }
    .app-footer-links{
        justify-content:flex-start;
        gap:12px 16px;
    }
}
@media(max-width:480px){
    .operational-stat-grid{
        grid-template-columns:1fr;
    }
    .quick-actions{
        width:100%;
    }
    .dashboard-action{
        flex:1 1 100%;
    }
}
/* END DTS Operational Dashboard v1.0.0 */

/* DTS Desktop Fixed Sidebar + Content Width Fix v1.1.2 */
:root{
    --dts-desktop-sidebar-width:232px;
}

@media(min-width:901px){

    /*
     * The original DTS shell uses a two-column CSS grid:
     *   .app-shell { grid-template-columns:268px 1fr }
     *
     * Once the sidebar becomes position:fixed, that grid column must no
     * longer reserve another sidebar-width column. Otherwise .main is
     * squeezed twice.
     */
    .app-shell{
        display:block !important;
        width:100% !important;
        min-height:100vh;
    }

    /*
     * Keep the already-working fixed sidebar behavior.
     */
    .sidebar{
        position:fixed !important;
        top:0;
        left:0;
        bottom:0;
        width:var(--dts-desktop-sidebar-width) !important;
        height:100vh !important;
        z-index:1030;
        display:flex;
        flex-direction:column;
        overflow:hidden !important;
    }

    .sidebar > .nav,
    .sidebar .nav{
        flex:1 1 auto;
        min-height:0;
        overflow-y:auto;
        overflow-x:hidden;
        overscroll-behavior:contain;
        scrollbar-width:none;
        -ms-overflow-style:none;
    }

    .sidebar > .nav::-webkit-scrollbar,
    .sidebar .nav::-webkit-scrollbar{
        width:0;
        height:0;
        display:none;
    }

    /*
     * Offset the main shell ONCE.
     *
     * width:auto is intentional. For a normal block element, the browser
     * automatically fills the remaining viewport width after margin-left.
     * This is safer than combining a grid column + margin + calc().
     */
    .main{
        margin-left:var(--dts-desktop-sidebar-width) !important;
        width:auto !important;
        max-width:none !important;
        min-width:0 !important;
        min-height:100vh !important;
        height:auto !important;
        overflow:visible !important;
        display:flex;
        flex-direction:column;
    }

    /*
     * Preserve the full dashboard width inside the available main area.
     */
    .main > .content{
        width:100% !important;
        min-width:0 !important;
        min-height:0 !important;
        height:auto !important;
        max-height:none !important;
        overflow:visible !important;
    }

    /*
     * Existing header remains sticky.
     */
    .main > .topbar{
        position:sticky !important;
        top:0;
        z-index:1020;
        width:100%;
    }

    /*
     * Footer remains in the normal document flow and spans the main area.
     */
    .main > .app-footer{
        position:static !important;
        inset:auto !important;
        width:100% !important;
        flex:0 0 auto;
    }
}
/* END DTS Desktop Fixed Sidebar + Content Width Fix v1.1.2 */

/* DTS Dashboard Document Flow v1.0.0 */
.dashboard-flow-layout{
    display:grid;
    grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr);
    gap:16px;
    align-items:stretch;
    margin-bottom:16px;
}

.document-overview-card{
    min-width:0;
    min-height:280px;
    background:linear-gradient(145deg,#ffffff 0%,#f7fbf9 100%);
    border:1px solid var(--line);
    border-radius:16px;
    box-shadow:0 5px 18px rgba(20,45,34,.03);
    padding:22px;
    display:flex;
    flex-direction:column;
}

.overview-card-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:16px;
}

.overview-card-head h2{
    margin:5px 0 0;
    font-size:18px;
    letter-spacing:-.015em;
}

.overview-scope{
    flex:0 0 auto;
    display:inline-flex;
    align-items:center;
    min-height:28px;
    padding:0 9px;
    border-radius:999px;
    background:var(--green-50);
    color:var(--green-800);
    font-size:10px;
    font-weight:700;
}

.overview-total{
    display:flex;
    align-items:center;
    gap:14px;
    margin:20px 0 18px;
}

.overview-total-icon{
    width:48px;
    height:48px;
    flex:0 0 48px;
    border-radius:13px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    background:var(--green-900);
    color:#fff;
}

.overview-total-icon i{
    font-size:18px;
}

.overview-total strong{
    display:block;
    font-size:42px;
    line-height:.95;
    letter-spacing:-.045em;
}

.overview-total small{
    display:block;
    margin-top:7px;
    color:var(--muted);
    font-size:11px;
}

.overview-types{
    border-top:1px solid var(--line);
    padding-top:14px;
}

.overview-types-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    margin-bottom:7px;
}

.overview-types-head > span{
    font-size:11px;
    font-weight:800;
    color:#47564f;
}

.overview-types-head > small{
    color:#919d97;
    font-size:9px;
    text-transform:uppercase;
    letter-spacing:.07em;
}

.overview-type-row{
    min-height:29px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    border-bottom:1px solid #edf1ef;
    font-size:11px;
}

.overview-type-row:last-child{
    border-bottom:0;
}

.overview-type-row > span{
    min-width:0;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    color:#536159;
}

.overview-type-row > strong{
    flex:0 0 auto;
    color:var(--green-900);
    font-size:11px;
}

.overview-type-empty{
    min-height:58px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:9px;
    color:#7f8b85;
    font-size:10px;
}

.overview-empty-icon{
    width:28px;
    height:28px;
    border-radius:8px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    background:#eef5f1;
    color:var(--green-700);
}

.overview-link{
    margin-top:auto;
    padding-top:12px;
    display:inline-flex;
    align-items:center;
    gap:6px;
    align-self:flex-start;
    color:var(--green-800);
    text-decoration:none;
    font-size:10px;
    font-weight:800;
}

.overview-link:hover{
    text-decoration:underline;
}

.overview-link i{
    font-size:8px;
}

.flow-card-grid{
    min-width:0;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-template-rows:repeat(2,minmax(0,1fr));
    gap:12px;
}

.flow-mini-card{
    min-width:0;
    min-height:134px;
    background:#fff;
    border:1px solid var(--line);
    border-radius:15px;
    box-shadow:0 5px 18px rgba(20,45,34,.025);
    padding:17px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    color:var(--ink);
    text-decoration:none;
}

.flow-mini-card.is-link{
    cursor:pointer;
    transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease;
}

.flow-mini-card.is-link:hover{
    transform:translateY(-1px);
    border-color:#c7ddd1;
    box-shadow:0 9px 22px rgba(20,45,34,.055);
}

.flow-mini-head{
    display:flex;
    align-items:center;
    gap:9px;
    margin-bottom:12px;
}

.flow-mini-icon{
    width:32px;
    height:32px;
    flex:0 0 32px;
    border-radius:9px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    background:#edf6f1;
    color:var(--green-800);
}

.flow-mini-icon i{
    font-size:13px;
}

.flow-mini-label{
    min-width:0;
    color:#4e5c55;
    font-size:10px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.06em;
}

.flow-mini-card > strong{
    display:block;
    font-size:30px;
    line-height:1;
    letter-spacing:-.035em;
}

.flow-mini-card > small{
    display:block;
    margin-top:7px;
    color:var(--muted);
    font-size:10px;
    line-height:1.35;
}

@media(max-width:1050px){
    .dashboard-flow-layout{
        grid-template-columns:1fr;
    }

    .flow-card-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
        grid-template-rows:auto;
    }
}

@media(max-width:560px){
    .flow-card-grid{
        grid-template-columns:1fr;
    }

    .document-overview-card{
        min-height:0;
    }

    .overview-total strong{
        font-size:36px;
    }
}
/* END DTS Dashboard Document Flow v1.0.0 */

/* DTS Dashboard Gradient Accent v1.0.0 */
.document-overview-card{
    background:linear-gradient(135deg,#0a5c38 0%,#0f7448 45%,#179261 100%);
    border-color:transparent;
    box-shadow:0 10px 24px rgba(8,58,35,.18);
    color:#ffffff;
}

.document-overview-card .eyebrow,
.document-overview-card h2,
.document-overview-card .overview-total strong,
.document-overview-card .overview-type-row > strong,
.document-overview-card .overview-link{
    color:#ffffff;
}

.document-overview-card .overview-card-head h2{
    color:#ffffff;
}

.document-overview-card .overview-scope{
    background:rgba(255,255,255,.14);
    color:#ffffff;
    border:1px solid rgba(255,255,255,.14);
}

.document-overview-card .overview-total small,
.document-overview-card .overview-types-head > span,
.document-overview-card .overview-types-head > small,
.document-overview-card .overview-type-row > span,
.document-overview-card .overview-type-empty strong{
    color:rgba(255,255,255,.86);
}

.document-overview-card .overview-total-icon{
    background:rgba(255,255,255,.18);
    color:#ffffff;
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);
}

.document-overview-card .overview-types{
    border-top:1px solid rgba(255,255,255,.16);
}

.document-overview-card .overview-type-row{
    border-bottom:1px solid rgba(255,255,255,.10);
}

.document-overview-card .overview-empty-icon{
    background:rgba(255,255,255,.14);
    color:#ffffff;
}

.document-overview-card .overview-link{
    text-decoration:none;
}

.document-overview-card .overview-link:hover{
    text-decoration:underline;
}

.document-overview-card .overview-type-empty{
    color:rgba(255,255,255,.84);
}
/* END DTS Dashboard Gradient Accent v1.0.0 */

/* DTS Dashboard Sparklines & Dummy Graphs v1.0.0 */
.document-overview-card{
    background:linear-gradient(135deg,#0a5c38 0%,#0f7448 45%,#179261 100%);
    border-color:transparent;
    box-shadow:0 12px 28px rgba(8,58,35,.17);
    color:#ffffff;
}

.document-overview-card .eyebrow,
.document-overview-card h2,
.document-overview-card .overview-total strong,
.document-overview-card .overview-link,
.document-overview-card .overview-chart-head > span,
.document-overview-card .overview-chart-foot > span,
.document-overview-card .overview-type-meta > span,
.document-overview-card .overview-type-bar-row > strong,
.document-overview-card .overview-demo-note{
    color:#ffffff;
}

.document-overview-card .overview-scope{
    background:rgba(255,255,255,.16);
    color:#ffffff;
    border:1px solid rgba(255,255,255,.14);
}

.document-overview-card .overview-total small,
.document-overview-card .overview-types-head > span,
.document-overview-card .overview-types-head > small,
.document-overview-card .overview-chart-head > small,
.document-overview-card .overview-chart-foot > small,
.document-overview-card .overview-type-meta > small,
.document-overview-card .overview-link i,
.document-overview-card .overview-demo-note{
    color:rgba(255,255,255,.82);
}

.document-overview-card .overview-total-icon{
    background:rgba(255,255,255,.16);
    color:#ffffff;
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.14);
}

.overview-hero{
    margin:18px 0 18px;
    display:grid;
    grid-template-columns:minmax(0,.9fr) minmax(250px,1.1fr);
    gap:16px;
    align-items:stretch;
}

.overview-total{
    margin:0;
    min-height:140px;
    padding:18px;
    border-radius:16px;
    background:rgba(255,255,255,.08);
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);
}

.overview-chart-card{
    min-height:140px;
    border-radius:16px;
    background:rgba(255,255,255,.10);
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);
    padding:16px 16px 14px;
    display:flex;
    flex-direction:column;
}

.overview-chart-head,
.overview-chart-foot{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
}

.overview-chart-head > span{
    font-size:11px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.06em;
}

.overview-chart-head > small,
.overview-chart-foot > small,
.overview-chart-foot > span{
    font-size:10px;
}

.overview-trend-svg{
    width:100%;
    height:86px;
    margin:10px 0 8px;
    overflow:visible;
}

.overview-trend-svg line{
    stroke:rgba(255,255,255,.18);
    stroke-width:1;
}

.overview-trend-svg .trend-area{
    fill:rgba(255,255,255,.18);
}

.overview-trend-svg .trend-line{
    fill:none;
    stroke:#ffffff;
    stroke-width:3;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.overview-trend-svg .trend-point{
    fill:#ffffff;
    stroke:rgba(10,92,56,.55);
    stroke-width:3;
}

.document-overview-card .overview-types{
    border-top:1px solid rgba(255,255,255,.16);
    padding-top:14px;
}

.overview-type-bars{
    display:grid;
    gap:10px;
}

.overview-type-bar-row{
    display:grid;
    grid-template-columns:minmax(110px,.9fr) minmax(110px,1.8fr) auto;
    gap:12px;
    align-items:center;
}

.overview-type-meta{
    min-width:0;
}

.overview-type-meta > span{
    display:block;
    min-width:0;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    font-size:11px;
    font-weight:700;
}

.overview-type-meta > small{
    display:block;
    margin-top:3px;
    font-size:9px;
    text-transform:uppercase;
    letter-spacing:.06em;
}

.overview-type-bar-track{
    height:8px;
    border-radius:999px;
    background:rgba(255,255,255,.12);
    overflow:hidden;
}

.overview-type-bar-track > span{
    display:block;
    height:100%;
    border-radius:inherit;
    background:linear-gradient(90deg,rgba(255,255,255,.55),rgba(255,255,255,.92));
}

.overview-type-bar-row > strong{
    font-size:11px;
}

.overview-demo-note{
    margin-top:14px;
    font-size:10px;
    line-height:1.45;
}

.flow-mini-card{
    position:relative;
    overflow:hidden;
    min-height:150px;
}

.flow-mini-card > strong{
    position:relative;
    z-index:1;
}

.flow-mini-card > small{
    position:relative;
    z-index:1;
}

.flow-mini-sparkline{
    margin-top:auto;
    padding-top:12px;
    position:relative;
    z-index:1;
}

.flow-mini-sparkline svg{
    display:block;
    width:100%;
    height:40px;
    overflow:visible;
}

.flow-mini-sparkline span{
    display:block;
    margin-top:6px;
    font-size:9px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:.05em;
    color:#77857e;
}

.flow-mini-card .spark-area{
    fill:rgba(17,128,85,.10);
}

.flow-mini-card .spark-line{
    fill:none;
    stroke:#118055;
    stroke-width:2.4;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.flow-mini-card .spark-point{
    fill:#118055;
    stroke:#ffffff;
    stroke-width:2;
}

.flow-mini-card.tone-received{
    background:linear-gradient(145deg,#ffffff 0%,#eef5fb 100%);
    border-color:#d7e5f2;
}

.flow-mini-card.tone-released{
    background:linear-gradient(145deg,#ffffff 0%,#eef8f3 100%);
    border-color:#d8e9e1;
}

.flow-mini-card.tone-incoming{
    background:linear-gradient(145deg,#ffffff 0%,#fff7ea 100%);
    border-color:#f1dfbf;
}

.flow-mini-card.tone-outgoing{
    background:linear-gradient(145deg,#ffffff 0%,#fff1f0 100%);
    border-color:#f0d2cf;
}

.flow-mini-card.tone-received .flow-mini-icon{
    background:rgba(36,94,130,.10);
    color:#245e82;
}

.flow-mini-card.tone-released .flow-mini-icon{
    background:rgba(13,122,80,.10);
    color:#0d7a50;
}

.flow-mini-card.tone-incoming .flow-mini-icon{
    background:rgba(184,111,0,.10);
    color:#9b6200;
}

.flow-mini-card.tone-outgoing .flow-mini-icon{
    background:rgba(180,35,24,.10);
    color:#b42318;
}

.flow-mini-card.tone-outgoing > strong{color:#b42318}
.flow-mini-card.tone-incoming > strong{color:#b86f00}
.flow-mini-card.tone-received > strong{color:#245e82}
.flow-mini-card.tone-released > strong{color:#0d7a50}

@media(max-width:1120px){
    .overview-hero{
        grid-template-columns:1fr;
    }
}

@media(max-width:720px){
    .overview-type-bar-row{
        grid-template-columns:1fr;
        gap:6px;
    }

    .overview-type-bar-row > strong{
        justify-self:flex-start;
    }
}
/* END DTS Dashboard Sparklines & Dummy Graphs v1.0.0 */

/* DTS Topbar Content Alignment v1.0.0 */

/*
 * Align the topbar title and right-side actions to the same horizontal
 * content guides used by .content.
 *
 * .content:
 *   width:100%;
 *   max-width:1500px;
 *   margin:0 auto;
 *   padding:32px;
 *
 * The topbar now gets an inner wrapper with the same width geometry.
 */
.topbar{
    padding-left:0 !important;
    padding-right:0 !important;
}

.topbar-content{
    width:100%;
    max-width:1500px;
    height:100%;
    margin:0 auto;
    padding:0 32px;
    display:flex;
    align-items:center;
    gap:18px;
    min-width:0;
}

.topbar-content .topbar-title{
    min-width:0;
}

.topbar-content .top-actions{
    margin-left:auto;
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:10px;
    min-width:0;
}

.topbar-content .top-actions form{
    margin:0;
    display:flex;
    align-items:center;
}

.topbar-content .top-actions .btn{
    min-height:38px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    line-height:1;
}

.topbar-content .office-chip{
    min-height:38px;
    display:inline-flex;
    align-items:center;
}

@media(max-width:760px){
    .topbar{
        padding-left:0 !important;
        padding-right:0 !important;
    }

    .topbar-content{
        padding:0 15px;
        gap:10px;
    }

    .topbar-content .top-actions{
        gap:5px;
    }
}
/* END DTS Topbar Content Alignment v1.0.0 */

/* DTS Fluid Widescreen + Edge Scrollbar v1.1.0 */
:root{
    --dts-fluid-gutter:32px;
}

/*
 * TRUE FLUID WIDE WORKSPACE
 *
 * Standard desktop remains unchanged.
 * At 1600px+ the workspace no longer uses a fixed content max-width.
 * This also behaves correctly when browser zoom creates a very-wide CSS
 * viewport (for example, 67% or 50% zoom on a large monitor).
 */
@media(min-width:1600px){
    :root{
        --dts-fluid-gutter:clamp(30px,2vw,58px);
    }

    .content,
    .topbar-content{
        width:100% !important;
        max-width:none !important;
        margin-left:0 !important;
        margin-right:0 !important;
        padding-left:var(--dts-fluid-gutter) !important;
        padding-right:var(--dts-fluid-gutter) !important;
    }

    .app-footer{
        width:100% !important;
        padding-left:var(--dts-fluid-gutter) !important;
        padding-right:var(--dts-fluid-gutter) !important;
    }

    /*
     * Primary dashboard balance:
     * approximately 63% overview / 37% flow cards.
     */
    .dashboard-flow-layout{
        grid-template-columns:minmax(0,1.68fr) minmax(460px,.98fr) !important;
        gap:18px !important;
    }

    .document-overview-card{
        min-width:0;
    }

    .overview-hero{
        grid-template-columns:minmax(260px,.78fr) minmax(400px,1.42fr) !important;
        gap:18px !important;
    }

    .flow-card-grid{
        gap:14px !important;
    }

    /*
     * Give operational work the wide-screen space:
     * approximately 73% queue / 27% timeline.
     */
    .operational-dashboard-grid{
        grid-template-columns:minmax(0,2.7fr) minmax(360px,1fr) !important;
        gap:18px !important;
    }

    .queue-table th,
    .queue-table td{
        padding-left:14px;
        padding-right:14px;
    }
}

/*
 * ULTRA-WIDE
 *
 * Tune proportions, not global width.
 * No max-width cap is reintroduced.
 */
@media(min-width:2200px){
    :root{
        --dts-fluid-gutter:clamp(36px,2.1vw,68px);
    }

    .dashboard-flow-layout{
        grid-template-columns:minmax(0,1.78fr) minmax(500px,1fr) !important;
        gap:20px !important;
    }

    .overview-hero{
        grid-template-columns:minmax(280px,.74fr) minmax(460px,1.46fr) !important;
        gap:20px !important;
    }

    .operational-dashboard-grid{
        grid-template-columns:minmax(0,2.9fr) minmax(390px,1fr) !important;
        gap:20px !important;
    }
}

/*
 * EXTREME CSS VIEWPORTS / REDUCED BROWSER ZOOM
 *
 * Keep using the full workspace. Increase only the gutter slightly.
 */
@media(min-width:3000px){
    :root{
        --dts-fluid-gutter:clamp(42px,1.9vw,76px);
    }

    .dashboard-flow-layout{
        grid-template-columns:minmax(0,1.85fr) minmax(520px,1fr) !important;
    }

    .operational-dashboard-grid{
        grid-template-columns:minmax(0,3fr) minmax(410px,1fr) !important;
    }
}

/*
 * SIDEBAR EDGE SCROLL INDICATOR
 *
 * Hide the browser-native scrollbar and use a visual indicator that is
 * attached to the actual far-right edge of the fixed sidebar.
 *
 * Scrolling remains fully native:
 * mouse wheel, touchpad, keyboard and touch.
 */
@media(min-width:901px){
    .sidebar{
        position:fixed !important;
        overflow:hidden !important;
    }

    .sidebar .nav{
        overflow-y:auto !important;
        overflow-x:hidden !important;
        scrollbar-width:none !important;
        -ms-overflow-style:none !important;
    }

    .sidebar .nav::-webkit-scrollbar{
        width:0 !important;
        height:0 !important;
        display:none !important;
    }

    .dts-sidebar-scroll-indicator{
        position:absolute;
        right:0;
        top:0;
        width:4px;
        height:32px;
        z-index:1100;
        border-radius:4px 0 0 4px;
        background:rgba(255,255,255,.36);
        opacity:0;
        pointer-events:none;
        transform:translate3d(0,0,0);
        transition:
            opacity .20s ease,
            background-color .20s ease,
            width .20s ease,
            transform .08s linear,
            height .12s ease;
        will-change:transform,height,opacity;
    }

    .sidebar.is-scroll-hovering .dts-sidebar-scroll-indicator{
        opacity:.48;
        width:4px;
    }

    .sidebar.is-scroll-active .dts-sidebar-scroll-indicator{
        opacity:.78;
        width:5px;
        background:rgba(255,255,255,.48);
    }

    .sidebar.is-scroll-hovering.is-scroll-active .dts-sidebar-scroll-indicator{
        opacity:.88;
    }

    .sidebar:not(.is-scrollable) .dts-sidebar-scroll-indicator{
        display:none;
    }
}

/*
 * Keep tablet/mobile drawer behavior authoritative.
 * No desktop overlay is added.
 */
/* END DTS Fluid Widescreen + Edge Scrollbar v1.1.0 */

/* DTS Sidebar Scrollbar Inset v1.1.1 */
@media(min-width:901px){

    /*
     * Keep the working custom scroll indicator, but pull it slightly away
     * from the absolute edge so it feels integrated rather than clipped.
     */
    .dts-sidebar-scroll-indicator{
        right:4px !important;
        width:3px !important;
        border-radius:999px !important;
        background:rgba(255,255,255,.30) !important;
        opacity:0;
        transition:
            opacity .24s ease,
            background-color .20s ease,
            width .20s ease,
            transform .08s linear,
            height .12s ease !important;
    }

    /*
     * Hover: subtle reveal.
     */
    .sidebar.is-scroll-hovering .dts-sidebar-scroll-indicator{
        opacity:.40 !important;
        width:3px !important;
        background:rgba(255,255,255,.34) !important;
    }

    /*
     * Active scrolling: slightly stronger, still restrained.
     */
    .sidebar.is-scroll-active .dts-sidebar-scroll-indicator{
        opacity:.72 !important;
        width:4px !important;
        background:rgba(255,255,255,.46) !important;
    }

    .sidebar.is-scroll-hovering.is-scroll-active .dts-sidebar-scroll-indicator{
        opacity:.82 !important;
    }
}
/* END DTS Sidebar Scrollbar Inset v1.1.1 */

/* DTS Sidebar Mouse Scroll v1.1.2 */
@media(min-width:901px){
    .dts-sidebar-scroll-indicator{
        pointer-events:auto !important;
        cursor:grab;
        touch-action:none;
        user-select:none;
    }

    .dts-sidebar-scroll-indicator:active,
    .sidebar.is-scroll-dragging .dts-sidebar-scroll-indicator{
        cursor:grabbing;
        opacity:.92 !important;
        width:4px !important;
        background:rgba(255,255,255,.56) !important;
    }
}
/* END DTS Sidebar Mouse Scroll v1.1.2 */

/* DTS Sidebar Scrollbar Refine v1.1.3 */
@media(min-width:901px){

    /*
     * Keep the approved 4px inset position.
     * Use the normal arrow cursor instead of grab/grabbing.
     * Make the thumb slightly larger for easier visibility and dragging.
     */
    .dts-sidebar-scroll-indicator{
        right:4px !important;
        width:5px !important;
        cursor:default !important;
        border-radius:999px !important;
        background:rgba(255,255,255,.32) !important;
    }

    .sidebar.is-scroll-hovering .dts-sidebar-scroll-indicator{
        width:5px !important;
        opacity:.48 !important;
        background:rgba(255,255,255,.38) !important;
        cursor:default !important;
    }

    .sidebar.is-scroll-active .dts-sidebar-scroll-indicator{
        width:6px !important;
        opacity:.76 !important;
        background:rgba(255,255,255,.50) !important;
        cursor:default !important;
    }

    .sidebar.is-scroll-dragging .dts-sidebar-scroll-indicator,
    .dts-sidebar-scroll-indicator:active{
        width:6px !important;
        opacity:.90 !important;
        background:rgba(255,255,255,.58) !important;
        cursor:default !important;
    }
}
/* END DTS Sidebar Scrollbar Refine v1.1.3 */


/* DTS Personnel Directory Phase 5 UI v1.0.0 */
.personnel-phase5-entry{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    margin-bottom:18px;
    padding:13px 14px;
    border:1px solid #c8e5d5;
    border-radius:12px;
    background:linear-gradient(135deg,#edf9f3 0%,#ffffff 100%);
}
.personnel-phase5-entry strong,
.personnel-phase5-entry small{
    display:block;
}
.personnel-phase5-entry strong{
    margin-top:3px;
    font-size:12px;
}
.personnel-phase5-entry small{
    margin-top:3px;
    color:var(--muted);
    font-size:10px;
}
.personnel-directory-page{
    min-width:0;
}
.personnel-directory-heading{
    align-items:flex-start;
}
.personnel-directory-source-badge{
    display:inline-flex;
    align-items:center;
    min-height:29px;
    padding:0 10px;
    border-radius:999px;
    background:var(--green-100);
    color:var(--green-800);
    font-size:9px;
    font-weight:900;
}
.personnel-directory-publish{
    margin-bottom:18px;
}
.personnel-directory-readiness{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:10px;
}
.personnel-directory-readiness>div{
    display:flex;
    align-items:flex-start;
    gap:9px;
    min-width:0;
    padding:11px;
    border:1px solid var(--line);
    border-radius:10px;
    background:#fbfcfb;
}
.personnel-directory-readiness>div.is-ready{
    border-color:#cbe5d6;
    background:#f4faf7;
}
.personnel-directory-readiness>div.is-blocked{
    border-color:#edd8ad;
    background:#fff9ea;
}
.personnel-directory-readiness i{
    color:var(--green-700);
    margin-top:2px;
}
.personnel-directory-readiness .is-blocked i{
    color:#9a6b00;
}
.personnel-directory-readiness strong,
.personnel-directory-readiness small{
    display:block;
}
.personnel-directory-readiness strong{
    font-size:10px;
}
.personnel-directory-readiness small{
    margin-top:3px;
    color:var(--muted);
    font-size:9px;
}
.personnel-directory-publish-note{
    display:flex;
    align-items:flex-start;
    gap:9px;
    margin-top:12px;
    padding:10px 12px;
    border-radius:10px;
    background:#f4faf7;
    color:#426053;
    font-size:10px;
    line-height:1.45;
}
.personnel-directory-publish-note i{
    color:var(--green-700);
    margin-top:1px;
}
.personnel-directory-publish-action{
    display:flex;
    justify-content:flex-end;
    margin-top:12px;
}
.personnel-directory-publish-action button:disabled{
    opacity:.55;
    cursor:not-allowed;
}
.personnel-directory-metrics{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:10px;
    margin-bottom:18px;
}
.personnel-directory-metric{
    min-width:0;
    padding:13px;
    border:1px solid var(--line);
    border-radius:12px;
    background:#fff;
}
.personnel-directory-metric span{
    display:block;
    color:var(--muted);
    font-size:9px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.06em;
}
.personnel-directory-metric strong{
    display:block;
    margin-top:6px;
    font-size:21px;
    letter-spacing:-.02em;
}
.personnel-directory-metric small{
    display:block;
    margin-top:3px;
    color:var(--muted);
    font-size:9px;
}
.personnel-directory-list-panel{
    min-width:0;
}
.personnel-directory-list-head{
    align-items:flex-end;
    gap:15px;
}
.personnel-directory-filter{
    display:flex;
    align-items:center;
    gap:6px;
    min-width:650px;
    max-width:900px;
    padding:5px 5px 5px 10px;
    border:1px solid var(--line);
    border-radius:10px;
    background:#fff;
}
.personnel-directory-filter>i{
    color:var(--muted);
    font-size:10px;
}
.personnel-directory-filter input[type=search],
.personnel-directory-filter select{
    min-height:30px;
    border:0;
    outline:0;
    background:transparent;
    color:var(--ink);
    font:inherit;
    font-size:10px;
}
.personnel-directory-filter input[type=search]{
    flex:1;
    min-width:210px;
}
.personnel-directory-filter select{
    max-width:260px;
    border-left:1px solid var(--line);
    padding-left:8px;
}
.personnel-directory-filter button{
    border:0;
    border-radius:7px;
    padding:7px 10px;
    background:var(--green-700);
    color:#fff;
    font:inherit;
    font-size:10px;
    font-weight:800;
    cursor:pointer;
}
.personnel-directory-table-wrap{
    width:100%;
    overflow-x:auto;
}
.personnel-directory-table{
    width:100%;
    min-width:1180px;
    border-collapse:collapse;
}
.personnel-directory-table th,
.personnel-directory-table td{
    padding:11px 12px;
    border-bottom:1px solid var(--line);
    text-align:left;
    vertical-align:middle;
    font-size:10px;
}
.personnel-directory-table th{
    color:var(--muted);
    font-size:9px;
    text-transform:uppercase;
    letter-spacing:.07em;
}
.personnel-directory-table td strong,
.personnel-directory-table td small{
    display:block;
}
.personnel-directory-table td small{
    margin-top:3px;
    color:var(--muted);
    font-size:9px;
    line-height:1.35;
}
.personnel-directory-sync-history{
    margin-top:18px;
}
.personnel-directory-history-wrap{
    width:100%;
    overflow-x:auto;
}
.personnel-directory-history-table{
    width:100%;
    min-width:1120px;
    border-collapse:collapse;
}
.personnel-directory-history-table th,
.personnel-directory-history-table td{
    padding:10px 11px;
    border-bottom:1px solid var(--line);
    text-align:left;
    vertical-align:middle;
    font-size:10px;
}
.personnel-directory-history-table th{
    color:var(--muted);
    font-size:9px;
    text-transform:uppercase;
    letter-spacing:.07em;
}
@media(max-width:1150px){
    .personnel-directory-readiness{
        grid-template-columns:1fr 1fr;
    }
    .personnel-directory-list-head{
        align-items:stretch;
        flex-direction:column;
    }
    .personnel-directory-filter{
        min-width:0;
        width:100%;
        max-width:none;
        flex-wrap:wrap;
    }
    .personnel-directory-filter input[type=search]{
        min-width:250px;
    }
}
@media(max-width:760px){
    .personnel-phase5-entry{
        align-items:stretch;
        flex-direction:column;
    }
    .personnel-phase5-entry .btn{
        align-self:flex-start;
    }
    .personnel-directory-metrics{
        grid-template-columns:1fr 1fr;
    }
}
@media(max-width:540px){
    .personnel-directory-readiness,
    .personnel-directory-metrics{
        grid-template-columns:1fr;
    }
    .personnel-directory-publish-action .btn{
        width:100%;
        justify-content:center;
    }
}
/* END DTS Personnel Directory Phase 5 UI v1.0.0 */


/* DTS User Routing Context Phase 7 UI v1.0.0 */
.personnel-phase7-entry{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    margin-bottom:18px;
    padding:13px 14px;
    border:1px solid #c8e5d5;
    border-radius:12px;
    background:linear-gradient(135deg,#edf9f3 0%,#ffffff 100%);
}
.personnel-phase7-entry strong,
.personnel-phase7-entry small{
    display:block;
}
.personnel-phase7-entry strong{
    margin-top:3px;
    font-size:12px;
}
.personnel-phase7-entry small{
    margin-top:3px;
    color:var(--muted);
    font-size:10px;
}
/* DTS Personnel Directory Production Rebuild v1.0.1 */
.personnel-directory-v2-page{min-width:0}
.personnel-directory-v2-heading{align-items:flex-start;gap:16px}
.personnel-directory-v2-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap;justify-content:flex-end}
.personnel-directory-v2-ajax-notice{margin:0 0 14px;padding:10px 12px;border-radius:10px;font-size:10px;font-weight:700}
.personnel-directory-v2-ajax-notice.is-warning{background:#fff7df;color:#805900;border:1px solid #ead7a1}
.personnel-directory-v2-ajax-notice.is-error{background:#fdeeee;color:#903d3d;border:1px solid #e7bcbc}
.personnel-directory-v2-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:18px}
.personnel-directory-v2-metric{min-width:0;padding:13px;border:1px solid var(--line);border-radius:12px;background:#fff}
.personnel-directory-v2-metric span{display:block;color:var(--muted);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.personnel-directory-v2-metric strong{display:block;margin-top:6px;font-size:21px;letter-spacing:-.02em}
.personnel-directory-v2-metric small{display:block;margin-top:3px;color:var(--muted);font-size:9px}
.personnel-directory-v2-panel{min-width:0}
.personnel-directory-v2-panel-head{align-items:center;gap:12px}
.personnel-directory-v2-scale-note{display:inline-flex;align-items:center;gap:6px;min-height:26px;padding:0 8px;border-radius:999px;background:#eef7f2;color:#2c654a;font-size:8px;font-weight:800}
.personnel-directory-v2-filters{display:grid;grid-template-columns:minmax(250px,1.35fr) repeat(5,minmax(145px,.8fr)) auto;gap:7px;align-items:center;padding:10px 0 12px}
.personnel-directory-v2-filters select,.personnel-directory-v2-search{min-width:0;min-height:36px;border:1px solid var(--line);border-radius:9px;background:#fff}
.personnel-directory-v2-filters select{width:100%;padding:0 9px;color:var(--ink);font:inherit;font-size:9px;outline:0}
.personnel-directory-v2-search{display:flex;align-items:center;gap:7px;padding:0 10px}
.personnel-directory-v2-search i{color:var(--muted);font-size:9px}
.personnel-directory-v2-search input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--ink);font:inherit;font-size:10px}
.personnel-directory-v2-reset{min-height:36px;white-space:nowrap}
.personnel-directory-v2-table-wrap{width:100%;overflow-x:auto}
.personnel-directory-v2-table{width:100%!important;min-width:1120px;border-collapse:collapse}
.personnel-directory-v2-table th,.personnel-directory-v2-table td{padding:10px 11px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle;font-size:10px}
.personnel-directory-v2-table th{color:var(--muted);font-size:8px;text-transform:uppercase;letter-spacing:.07em;white-space:nowrap}
.personnel-directory-v2-table td strong,.personnel-directory-v2-table td small{display:block}
.personnel-directory-v2-table td small{margin-top:3px;color:var(--muted);font-size:8px;text-transform:capitalize}
.personnel-directory-v2-table tbody tr:hover{background:#f8fbf9}
.personnel-directory-v2-employee-id{color:#24483a;letter-spacing:.01em}
.personnel-directory-v2-row-actions{display:flex;align-items:center;gap:4px;white-space:nowrap}
.personnel-directory-v2-icon-btn{width:29px;height:29px;display:grid;place-items:center;border:1px solid var(--line);border-radius:8px;background:#fff;color:#416052;cursor:pointer}
.personnel-directory-v2-icon-btn:hover{border-color:#9fcdb5;background:#f2f9f5;color:#0f7448}
.personnel-directory-v2-icon-btn.is-danger{color:#9c4545}
.personnel-directory-v2-icon-btn.is-danger:hover{border-color:#e0b0b0;background:#fff3f3;color:#8f3030}
.personnel-directory-v2-fallback-note{color:var(--muted);font-size:8px}
.personnel-directory-v2-noscript{padding:10px 0;color:var(--muted);font-size:9px}
.personnel-directory-v2-panel .dt-layout-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:10px}
.personnel-directory-v2-panel .dt-layout-cell{min-width:0}
.personnel-directory-v2-panel .dt-length{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:9px}
.personnel-directory-v2-panel .dt-length select{min-height:30px;padding:0 7px;border:1px solid var(--line);border-radius:7px;background:#fff;color:var(--ink);font:inherit;font-size:9px}
.personnel-directory-v2-panel .dt-info{color:var(--muted);font-size:9px}
.personnel-directory-v2-panel .dt-paging{display:flex;align-items:center;gap:5px}
.personnel-directory-v2-panel .dt-paging button{min-height:30px;padding:0 10px;border:1px solid var(--line);border-radius:7px;background:#fff;color:#395849;font:inherit;font-size:9px;font-weight:800;cursor:pointer}
.personnel-directory-v2-panel .dt-paging button:hover:not(:disabled){border-color:#9fcdb5;background:#f2f9f5}
.personnel-directory-v2-panel .dt-paging button:disabled{opacity:.45;cursor:not-allowed}
.personnel-directory-v2-panel .dt-processing{position:absolute;left:50%;transform:translateX(-50%);z-index:5;margin-top:6px;padding:7px 10px;border:1px solid #cce1d5;border-radius:999px;background:#fff;color:#236245;box-shadow:0 5px 18px rgba(0,0,0,.06);font-size:9px;font-weight:800}
body.dts-modal-open{overflow:hidden}
.dts-modal[hidden]{display:none!important}
.dts-modal{position:fixed;inset:0;z-index:10050;display:grid;place-items:center;padding:22px}
.dts-modal-backdrop{position:absolute;inset:0;background:rgba(7,27,19,.48);backdrop-filter:blur(2px)}
.dts-modal-dialog{position:relative;z-index:1;width:min(760px,calc(100vw - 32px));max-height:calc(100vh - 44px);overflow:auto;border:1px solid rgba(255,255,255,.5);border-radius:15px;background:#fff;box-shadow:0 24px 70px rgba(3,31,19,.22)}
.dts-modal-dialog.dts-modal-sm{width:min(520px,calc(100vw - 32px))}
.dts-modal-dialog.dts-modal-lg{width:min(920px,calc(100vw - 32px))}
.dts-modal-dialog.dts-modal-xl{width:min(1280px,calc(100vw - 32px))}
.dts-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:16px 18px;border-bottom:1px solid var(--line)}
.dts-modal-header h2{margin-top:3px;font-size:16px}
.dts-modal-header p{margin:4px 0 0;color:var(--muted);font-size:9px}
.dts-modal-close{width:31px;height:31px;display:grid;place-items:center;flex:0 0 auto;border:1px solid var(--line);border-radius:8px;background:#fff;color:#4d6156;cursor:pointer}
.dts-modal-close:hover{background:#f4f8f6}
.dts-modal-body{padding:16px 18px}
.dts-modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:7px;padding:13px 18px;border-top:1px solid var(--line);background:#fbfcfb}
.personnel-directory-v2-form{padding:0}
.personnel-directory-v2-form>.personnel-directory-v2-form-grid{padding:16px 18px}
.personnel-directory-v2-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
.personnel-directory-v2-field{min-width:0}
.personnel-directory-v2-field-wide{grid-column:1/-1}
.personnel-directory-v2-field>span{display:block;margin-bottom:5px;color:#3f5147;font-size:9px;font-weight:800}
.personnel-directory-v2-field em{color:#0f7448;font-size:8px;font-style:normal}
.personnel-directory-v2-field input,.personnel-directory-v2-field select{width:100%;min-height:38px;padding:7px 9px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--ink);font:inherit;font-size:10px;outline:0}
.personnel-directory-v2-field input:focus,.personnel-directory-v2-field select:focus{border-color:#72b792;box-shadow:0 0 0 3px rgba(23,146,97,.08)}
.personnel-directory-v2-field>small{display:block;margin-top:5px;color:var(--muted);font-size:8px;line-height:1.4}
.personnel-directory-v2-profile-head{display:flex;align-items:center;gap:11px;padding:12px;border-radius:11px;background:#f4faf7}
.personnel-directory-v2-profile-avatar{width:42px;height:42px;display:grid;place-items:center;flex:0 0 auto;border-radius:50%;background:#0f7448;color:#fff;font-size:15px;font-weight:900}
.personnel-directory-v2-profile-head strong,.personnel-directory-v2-profile-head span{display:block}
.personnel-directory-v2-profile-head strong{font-size:13px}
.personnel-directory-v2-profile-head span{margin-top:3px;color:var(--muted);font-size:9px}
.personnel-directory-v2-profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:12px 0 0}
.personnel-directory-v2-profile-grid>div{padding:10px 0;border-bottom:1px solid var(--line)}
.personnel-directory-v2-profile-grid>div:nth-child(odd){padding-right:12px}
.personnel-directory-v2-profile-grid>div:nth-child(even){padding-left:12px;border-left:1px solid var(--line)}
.personnel-directory-v2-profile-grid>.personnel-directory-v2-profile-wide{grid-column:1/-1;padding-left:0!important;border-left:0!important}
.personnel-directory-v2-profile-grid dt{color:var(--muted);font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}
.personnel-directory-v2-profile-grid dd{margin:4px 0 0;font-size:10px;overflow-wrap:anywhere}
.personnel-directory-v2-delete-warning{display:flex;align-items:flex-start;gap:11px;padding:12px;border-radius:10px;background:#fff6f5;color:#763e3e}
.personnel-directory-v2-delete-warning>i{margin-top:2px;color:#a34343}
.personnel-directory-v2-delete-warning strong{font-size:11px}
.personnel-directory-v2-delete-warning p{margin:5px 0 0;font-size:9px;line-height:1.5}
.personnel-directory-v2-danger{background:#a64242;color:#fff;border-color:#a64242}
.personnel-directory-v2-danger:hover{background:#923737;border-color:#923737}
.personnel-directory-v2-import-note,.personnel-directory-v2-import-blocked,.personnel-directory-v2-import-ready{display:flex;align-items:flex-start;gap:9px;padding:10px 12px;border-radius:10px;font-size:9px;line-height:1.45}
.personnel-directory-v2-import-note{margin-bottom:12px;background:#f4faf7;color:#426053}
.personnel-directory-v2-import-blocked{margin-top:12px;background:#fff3f2;color:#8b3d3d}
.personnel-directory-v2-import-ready{margin-top:12px;background:#eef9f2;color:#276345}
.personnel-directory-v2-import-note i,.personnel-directory-v2-import-ready i{color:#0f7448;margin-top:1px}
.personnel-directory-v2-import-blocked i{color:#a24242;margin-top:1px}
.personnel-directory-v2-template-link{display:inline-flex;align-items:center;gap:6px;margin-top:11px;color:#0f7448;font-size:9px;font-weight:800;text-decoration:none}
.personnel-directory-v2-template-link:hover{text-decoration:underline}
.personnel-directory-v2-import-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
.personnel-directory-v2-import-summary>div{padding:10px;border:1px solid var(--line);border-radius:9px;background:#fbfcfb}
.personnel-directory-v2-import-summary span,.personnel-directory-v2-import-summary strong{display:block}
.personnel-directory-v2-import-summary span{color:var(--muted);font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}
.personnel-directory-v2-import-summary strong{margin-top:5px;font-size:17px}
.personnel-directory-v2-import-summary .is-invalid{border-color:#e7bbbb;background:#fff5f4}
.personnel-directory-v2-import-summary .is-valid{border-color:#bfdfcc;background:#f4faf6}
.personnel-directory-v2-import-preview-wrap{width:100%;overflow:auto;margin-top:12px;border:1px solid var(--line);border-radius:10px}
.personnel-directory-v2-import-preview-table{width:100%;min-width:1100px;border-collapse:collapse}
.personnel-directory-v2-import-preview-table th,.personnel-directory-v2-import-preview-table td{padding:9px 10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top;font-size:9px}
.personnel-directory-v2-import-preview-table th{background:#f8faf9;color:var(--muted);font-size:8px;text-transform:uppercase;letter-spacing:.05em}
.personnel-directory-v2-import-preview-table tr.is-invalid{background:#fff7f6}
.personnel-directory-v2-import-action{display:inline-flex;align-items:center;min-height:22px;padding:0 7px;border-radius:999px;background:#eef4f0;color:#4b6155;font-size:8px;font-weight:900}
.personnel-directory-v2-import-action.is-new{background:#eaf7f0;color:#17623f}
.personnel-directory-v2-import-action.is-update{background:#eef3fb;color:#365f91}
.personnel-directory-v2-import-action.is-invalid{background:#fdeceb;color:#8d3c3c}
.personnel-directory-v2-import-action.is-skip{background:#f2f2f2;color:#626262}
.personnel-directory-v2-preview-limit{margin:8px 0 0;color:var(--muted);font-size:8px}
.personnel-directory-v2-import-footer{justify-content:space-between}
.personnel-directory-v2-import-footer form{margin:0}
@media(max-width:1450px){.personnel-directory-v2-filters{grid-template-columns:minmax(250px,1.4fr) repeat(3,minmax(150px,1fr));}.personnel-directory-v2-reset{justify-self:start}.personnel-directory-v2-filters select:nth-of-type(4),.personnel-directory-v2-filters select:nth-of-type(5){grid-column:auto}}
@media(max-width:1050px){.personnel-directory-v2-heading{align-items:stretch;flex-direction:column}.personnel-directory-v2-actions{justify-content:flex-start}.personnel-directory-v2-filters{grid-template-columns:1fr 1fr}.personnel-directory-v2-search{grid-column:1/-1}.personnel-directory-v2-reset{justify-self:stretch}.personnel-directory-v2-metrics{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.personnel-directory-v2-metrics,.personnel-directory-v2-filters,.personnel-directory-v2-form-grid,.personnel-directory-v2-profile-grid,.personnel-directory-v2-import-summary{grid-template-columns:1fr}.personnel-directory-v2-field-wide,.personnel-directory-v2-search,.personnel-directory-v2-profile-grid>.personnel-directory-v2-profile-wide{grid-column:auto}.personnel-directory-v2-profile-grid>div:nth-child(odd),.personnel-directory-v2-profile-grid>div:nth-child(even){padding-left:0;padding-right:0;border-left:0}.personnel-directory-v2-actions .btn{flex:1 1 auto;justify-content:center}.dts-modal{padding:10px}.dts-modal-dialog{width:calc(100vw - 20px);max-height:calc(100vh - 20px)}.personnel-directory-v2-import-footer{align-items:stretch;flex-direction:column}.personnel-directory-v2-import-footer form,.personnel-directory-v2-import-footer .btn{width:100%}}
@media(max-width:460px){.personnel-directory-v2-metrics{grid-template-columns:1fr}.personnel-directory-v2-actions{flex-direction:column;align-items:stretch}.personnel-directory-v2-actions .btn{width:100%;justify-content:center}}
/* END DTS Personnel Directory Production Rebuild v1.0.1 */


/* DTS Collapsible Sidebar + Personnel Metric Labels v1.2.0 */
:root{
    --dts-desktop-sidebar-collapsed-width:72px;
    --dts-sidebar-collapse-motion:200ms;
}

.sidebar-collapse-button{
    display:none;
}

.dts-sidebar-tooltip{
    position:fixed;
    z-index:2000;
    max-width:220px;
    padding:7px 10px;
    border:1px solid rgba(24,68,49,.10);
    border-radius:8px;
    background:#173f30;
    color:#fff;
    box-shadow:0 10px 28px rgba(5,35,24,.18);
    font-size:11px;
    font-weight:700;
    line-height:1.2;
    white-space:nowrap;
    pointer-events:none;
    opacity:0;
    transform:translate3d(-4px,-50%,0);
    transition:opacity 120ms ease,transform 120ms ease;
}

.dts-sidebar-tooltip.is-visible{
    opacity:1;
    transform:translate3d(0,-50%,0);
}

@media(min-width:901px){
    .sidebar{
        transition:
            width var(--dts-sidebar-collapse-motion) ease,
            padding var(--dts-sidebar-collapse-motion) ease;
        will-change:width;
    }

    .main{
        transition:margin-left var(--dts-sidebar-collapse-motion) ease;
    }

    .sidebar .brand{
        width:100%;
        min-width:0;
    }

    .sidebar .brand-copy{
        min-width:0;
        overflow:hidden;
        white-space:nowrap;
        opacity:1;
        transition:
            opacity 120ms ease,
            width var(--dts-sidebar-collapse-motion) ease;
    }

    .sidebar-collapse-button{
        width:28px;
        height:28px;
        display:grid;
        place-items:center;
        flex:0 0 28px;
        margin-left:auto;
        padding:0;
        border:1px solid rgba(255,255,255,.16);
        border-radius:8px;
        background:rgba(255,255,255,.07);
        color:rgba(255,255,255,.86);
        cursor:pointer;
        font-size:11px;
        transition:
            background 150ms ease,
            border-color 150ms ease,
            color 150ms ease;
    }

    .sidebar-collapse-button:hover,
    .sidebar-collapse-button:focus-visible{
        border-color:rgba(255,255,255,.28);
        background:rgba(255,255,255,.12);
        color:#fff;
        outline:none;
    }

    html.dts-sidebar-collapsed .sidebar{
        width:var(--dts-desktop-sidebar-collapsed-width) !important;
        padding-left:10px !important;
        padding-right:10px !important;
    }

    html.dts-sidebar-collapsed .main{
        margin-left:var(--dts-desktop-sidebar-collapsed-width) !important;
    }

    html.dts-sidebar-collapsed .sidebar .brand{
        gap:4px;
        justify-content:center;
    }

    html.dts-sidebar-collapsed .sidebar .brand-mark{
        width:34px;
        height:34px;
        flex:0 0 34px;
        border-radius:10px;
    }

    html.dts-sidebar-collapsed .sidebar .brand-copy{
        width:0;
        max-width:0;
        opacity:0;
        pointer-events:none;
    }

    html.dts-sidebar-collapsed .sidebar-collapse-button{
        width:24px;
        height:28px;
        flex-basis:24px;
        margin-left:0;
        border-radius:7px;
        font-size:10px;
    }

    html.dts-sidebar-collapsed .sidebar .nav{
        margin-top:22px;
        align-items:center;
    }

    html.dts-sidebar-collapsed .sidebar .nav-section{
        display:none;
    }

    html.dts-sidebar-collapsed .sidebar .nav-item{
        width:44px;
        min-width:44px;
        min-height:44px;
        justify-content:center;
        gap:0;
        padding-left:0;
        padding-right:0;
        margin-left:auto;
        margin-right:auto;
    }

    html.dts-sidebar-collapsed .sidebar .nav-item > span:not(.nav-icon),
    html.dts-sidebar-collapsed .sidebar .nav-item > small{
        display:none !important;
    }

    html.dts-sidebar-collapsed .sidebar .nav-icon{
        width:24px;
        min-width:24px;
        margin:0;
        text-align:center;
        font-size:15px;
    }

    html.dts-sidebar-collapsed .sidebar-footer{
        padding-left:0;
        padding-right:0;
    }

    html.dts-sidebar-collapsed .sidebar-footer .user-mini{
        justify-content:center;
        gap:0;
    }

    html.dts-sidebar-collapsed
    .sidebar-footer
    .user-mini > div:not(.avatar){
        display:none;
    }

    html.dts-sidebar-collapsed .sidebar-footer .avatar{
        width:34px;
        height:34px;
        flex:0 0 34px;
    }

    html.dts-sidebar-collapsed .dts-sidebar-scroll-indicator{
        right:4px !important;
    }
}

@media(prefers-reduced-motion:reduce){
    .sidebar,
    .main,
    .sidebar .brand-copy,
    .dts-sidebar-tooltip{
        transition:none !important;
    }
}
/* END DTS Collapsible Sidebar + Personnel Metric Labels v1.2.0 */


/* DTS Sidebar Edge Toggle Refinement v1.2.1 */
@media(min-width:901px){
    /*
     * Floating edge control:
     * 40px circle, centered across the sidebar boundary.
     * It is outside .sidebar in the DOM, so the approved sidebar
     * overflow:hidden and internal scroll behavior remain untouched.
     */
    .sidebar-edge-toggle{
        position:fixed;
        top:84px;
        left:calc(var(--dts-desktop-sidebar-width) - 20px);
        z-index:1650;

        width:40px;
        height:40px;
        min-width:40px;
        min-height:40px;
        display:grid;
        place-items:center;
        margin:0;
        padding:0;
        flex:0 0 auto;

        border:1px solid #dce3df;
        border-radius:999px;
        background:#fff;
        color:#5d6862;

        box-shadow:
            0 8px 24px rgba(28,47,39,.10),
            0 2px 6px rgba(28,47,39,.06);

        cursor:pointer;
        font-size:13px;
        line-height:1;

        transition:
            left var(--dts-sidebar-collapse-motion) ease,
            transform 150ms ease,
            border-color 150ms ease,
            box-shadow 150ms ease,
            color 150ms ease,
            background 150ms ease;
    }

    .sidebar-edge-toggle:hover{
        transform:translateY(-1px);
        border-color:#ccd8d1;
        background:#fff;
        color:#245b45;
        box-shadow:
            0 10px 28px rgba(28,47,39,.13),
            0 3px 8px rgba(28,47,39,.07);
    }

    .sidebar-edge-toggle:focus-visible{
        outline:none;
        border-color:#7cb398;
        color:#1f5c43;
        box-shadow:
            0 0 0 3px rgba(15,116,72,.12),
            0 10px 28px rgba(28,47,39,.13);
    }

    .sidebar-edge-toggle:active{
        transform:scale(.97);
    }

    /*
     * Override v1.2.0's compact collapsed-button dimensions because the
     * new edge control keeps one consistent 40px circular size.
     */
    html.dts-sidebar-collapsed .sidebar-edge-toggle{
        left:calc(var(--dts-desktop-sidebar-collapsed-width) - 20px);
        width:40px;
        height:40px;
        min-width:40px;
        min-height:40px;
        margin:0;
        border-radius:999px;
        font-size:13px;
        background:#fff;
        color:#5d6862;
    }

    html.dts-sidebar-collapsed .sidebar-edge-toggle:hover,
    html.dts-sidebar-collapsed .sidebar-edge-toggle:focus-visible{
        color:#245b45;
        background:#fff;
    }
}

@media(max-width:900px){
    .sidebar-edge-toggle{
        display:none !important;
    }
}

@media(prefers-reduced-motion:reduce){
    .sidebar-edge-toggle{
        transition:none !important;
    }
}
/* END DTS Sidebar Edge Toggle Refinement v1.2.1 */


/* DTS Personnel Table Productivity + Bulk Management v1.2.2 */
.personnel-directory-v2-table{
    min-width:1220px;
}

.personnel-directory-v2-table th:nth-child(1),
.personnel-directory-v2-table td:nth-child(1){
    width:42px;
    min-width:42px;
    text-align:center;
}

.personnel-directory-v2-table th:nth-child(2),
.personnel-directory-v2-table td:nth-child(2){
    width:58px;
    min-width:58px;
    text-align:right;
}

.personnel-directory-v2-select-column input,
.personnel-directory-v2-row-checkbox,
#selectPersonnelPage{
    width:15px;
    height:15px;
    margin:0;
    accent-color:#0f7448;
    cursor:pointer;
}

.personnel-directory-v2-row-checkbox:disabled{
    cursor:not-allowed;
    opacity:.72;
}

.personnel-directory-v2-number{
    color:#5c6e65;
    font-size:9px;
    font-weight:800;
    font-variant-numeric:tabular-nums;
}

.personnel-directory-v2-panel
.dt-layout-row-top
.dt-layout-start{
    display:flex;
    align-items:center;
    gap:10px;
    flex-wrap:wrap;
}

.personnel-directory-v2-panel
.dt-layout-row-top
.dt-layout-end{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:9px;
    flex-wrap:wrap;
}

.personnel-directory-v2-table-info-divider{
    color:#c2cbc6;
    font-size:10px;
    user-select:none;
}

.personnel-directory-v2-panel .dt-info-top{
    white-space:nowrap;
}

.personnel-directory-v2-bulk-actions{
    display:flex;
    align-items:center;
    gap:7px;
    min-height:30px;
}

.personnel-directory-v2-bulk-actions[hidden],
.personnel-directory-v2-select-all-matching[hidden]{
    display:none!important;
}

.personnel-directory-v2-selected-count{
    color:#54665d;
    font-size:9px;
    font-weight:800;
    white-space:nowrap;
}

.personnel-directory-v2-clear-selection{
    min-height:28px;
    padding:0 7px;
    border:0;
    background:transparent;
    color:#5f7368;
    font:inherit;
    font-size:9px;
    font-weight:800;
    cursor:pointer;
}

.personnel-directory-v2-clear-selection:hover{
    color:#0f7448;
    text-decoration:underline;
}

.personnel-directory-v2-bulk-download{
    min-height:30px;
    padding:0 10px;
    border:1px solid #b8d8c8;
    border-radius:7px;
    background:#eef8f3;
    color:#0a5c38;
    font-size:9px;
    font-weight:800;
    white-space:nowrap;
}

.personnel-directory-v2-bulk-download:hover:not(:disabled){
    border-color:#86bea1;
    background:#e5f5ed;
    color:#07472c;
}

.personnel-directory-v2-bulk-download:disabled{
    cursor:wait;
    opacity:.72;
}

.personnel-directory-v2-bulk-delete{
    min-height:30px;
    padding:0 10px;
    border-radius:7px;
    font-size:9px;
    white-space:nowrap;
}

.personnel-directory-v2-select-all-matching{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    margin:7px 0 2px;
    padding:7px 10px;
    border:1px solid #cfe2d7;
    border-radius:8px;
    background:#f4faf7;
    color:#496357;
    font-size:9px;
}

.personnel-directory-v2-select-all-matching-button{
    border:0;
    padding:0;
    background:transparent;
    color:#0f7448;
    font:inherit;
    font-size:9px;
    font-weight:900;
    cursor:pointer;
    text-decoration:underline;
    text-underline-offset:2px;
}

.personnel-directory-v2-bulk-confirm{
    display:flex;
    align-items:flex-start;
    gap:9px;
    margin-top:12px;
    padding:10px 11px;
    border:1px solid var(--line);
    border-radius:9px;
    background:#fbfcfb;
    color:#4f6158;
    font-size:9px;
    line-height:1.45;
    cursor:pointer;
}

.personnel-directory-v2-bulk-confirm input{
    width:15px;
    height:15px;
    flex:0 0 15px;
    margin:1px 0 0;
    accent-color:#a64242;
}

#bulkDeletePersonnelModal.is-submitting,
#bulkDeletePersonnelModal.is-submitting .dts-modal-dialog,
#bulkDeletePersonnelModal.is-submitting .dts-modal-header,
#bulkDeletePersonnelModal.is-submitting .dts-modal-body,
#bulkDeletePersonnelModal.is-submitting .dts-modal-footer{
    opacity:1!important;
    filter:none!important;
}

#bulkDeletePersonnelModal.is-submitting [data-close-modal]{
    cursor:not-allowed!important;
}

#bulkDeletePersonnelModal.is-submitting .dts-modal-close,
#bulkDeletePersonnelModal.is-submitting .btn-ghost{
    opacity:.58;
}

@media(max-width:1050px){
    .personnel-directory-v2-panel
    .dt-layout-row-top{
        align-items:flex-start;
        flex-direction:column;
    }

    .personnel-directory-v2-panel
    .dt-layout-row-top
    .dt-layout-end{
        width:100%;
        justify-content:space-between;
    }
}

@media(max-width:720px){
    .personnel-directory-v2-panel
    .dt-layout-row-top
    .dt-layout-start{
        gap:7px;
    }

    .personnel-directory-v2-table-info-divider{
        display:none;
    }

    .personnel-directory-v2-panel .dt-info-top{
        flex-basis:100%;
        white-space:normal;
    }

    .personnel-directory-v2-panel
    .dt-layout-row-top
    .dt-layout-end{
        align-items:stretch;
        flex-direction:column;
    }

    .personnel-directory-v2-bulk-actions{
        width:100%;
        justify-content:space-between;
    }

    .personnel-directory-v2-select-all-matching{
        align-items:flex-start;
        flex-direction:column;
    }
}
/* END DTS Personnel Table Productivity + Bulk Management v1.2.2 */

/* DTS shared validation-list utility retained after legacy module removal */
.personnel-import-error-list{margin:7px 0 0;padding-left:18px;}

/* DTS Sidebar Hover Trail Fade v1.3.4.1 */
:root{
    --dts-sidebar-trail-enter:125ms;
    --dts-sidebar-trail-exit:520ms;
    --dts-sidebar-trail-enter-ease:cubic-bezier(.2,.75,.25,1);
    --dts-sidebar-trail-exit-ease:cubic-bezier(.22,.61,.36,1);
}

/*
 * Hover Trail Fade
 * ----------------
 * Non-active buttons light up quickly while the pointer is over them,
 * then return to normal more slowly after the pointer leaves.
 *
 * As the mouse moves down the sidebar, previously hovered buttons are
 * therefore still fading while the next button lights up, producing a
 * soft residual trail with zero JavaScript.
 *
 * The active/selected item is intentionally excluded from this effect.
 */
@media (min-width:901px) and (hover:hover){
    .sidebar .nav-item:not(.disabled):not(.active){
        background-color:transparent;
        color:rgba(255,255,255,.82);
        transition:
            background-color var(--dts-sidebar-trail-exit) var(--dts-sidebar-trail-exit-ease),
            color calc(var(--dts-sidebar-trail-exit) - 80ms) var(--dts-sidebar-trail-exit-ease);
    }

    .sidebar .nav-item:not(.disabled):not(.active) .nav-icon,
    .sidebar .nav-item:not(.disabled):not(.active) > span:not(.nav-icon),
    .sidebar .nav-item:not(.disabled):not(.active) > small{
        transition:
            color calc(var(--dts-sidebar-trail-exit) - 80ms) var(--dts-sidebar-trail-exit-ease),
            opacity calc(var(--dts-sidebar-trail-exit) - 80ms) var(--dts-sidebar-trail-exit-ease);
    }

    .sidebar .nav-item:not(.disabled):not(.active):hover,
    .sidebar .nav-item:not(.disabled):not(.active):focus-visible{
        background-color:rgba(255,255,255,.085);
        color:#fff;
        transition:
            background-color var(--dts-sidebar-trail-enter) var(--dts-sidebar-trail-enter-ease),
            color var(--dts-sidebar-trail-enter) var(--dts-sidebar-trail-enter-ease);
        outline:none;
    }

    .sidebar .nav-item:not(.disabled):not(.active):hover .nav-icon,
    .sidebar .nav-item:not(.disabled):not(.active):hover > span:not(.nav-icon),
    .sidebar .nav-item:not(.disabled):not(.active):hover > small,
    .sidebar .nav-item:not(.disabled):not(.active):focus-visible .nav-icon,
    .sidebar .nav-item:not(.disabled):not(.active):focus-visible > span:not(.nav-icon),
    .sidebar .nav-item:not(.disabled):not(.active):focus-visible > small{
        color:#fff;
        opacity:1;
        transition:
            color var(--dts-sidebar-trail-enter) var(--dts-sidebar-trail-enter-ease),
            opacity var(--dts-sidebar-trail-enter) var(--dts-sidebar-trail-enter-ease);
    }

    /*
     * Keep the approved selected state exactly stable, including while the
     * pointer happens to be over the selected item.
     */
    .sidebar .nav-item.active,
    .sidebar .nav-item.active:hover,
    .sidebar .nav-item.active:focus-visible{
        background:rgba(255,255,255,.12);
        color:#fff;
        outline:none;
    }
}

/*
 * Keyboard focus gets the same cue even on devices that do not expose
 * hover, while the selected item stays unchanged.
 */
@media (min-width:901px){
    .sidebar .nav-item:not(.disabled):not(.active):focus-visible{
        background-color:rgba(255,255,255,.085);
        color:#fff;
        outline:none;
    }
}

/* Respect operating-system reduced-motion preferences. */
@media (prefers-reduced-motion:reduce){
    .sidebar .nav-item,
    .sidebar .nav-item .nav-icon,
    .sidebar .nav-item > span:not(.nav-icon),
    .sidebar .nav-item > small{
        transition-duration:.01ms!important;
        transition-delay:0ms!important;
    }
}
/* END DTS Sidebar Hover Trail Fade v1.3.4.1 */

/* DTS System Settings Foundation v1.3.5 */
.dts-settings-page{min-width:0}
.dts-settings-heading{align-items:center}
.dts-settings-version{display:flex;align-items:center;gap:10px;min-width:210px;padding:11px 13px;border:1px solid #cfe4d8;border-radius:13px;background:#f3faf6;color:#245b45}
.dts-settings-version>i{width:32px;height:32px;display:grid;place-items:center;border-radius:9px;background:#dff1e7;color:#0f7448}
.dts-settings-version span,.dts-settings-version strong,.dts-settings-version small{display:block}
.dts-settings-version strong{font-size:10px}
.dts-settings-version small{margin-top:2px;color:#678074;font-size:8px;font-weight:700}
.dts-settings-alert{display:flex;align-items:flex-start;gap:9px}
.dts-settings-alert ul{margin:6px 0 0;padding-left:18px}
.dts-settings-shell{display:grid;grid-template-columns:220px minmax(0,1fr);gap:16px;align-items:start}
.dts-settings-nav{position:sticky;top:96px;display:flex;flex-direction:column;gap:4px;padding:9px;border:1px solid var(--line);border-radius:15px;background:#fff;box-shadow:0 5px 18px rgba(20,45,34,.03)}
.dts-settings-nav button{width:100%;min-height:42px;display:flex;align-items:center;gap:10px;padding:0 11px;border:0;border-radius:9px;background:transparent;color:#506159;font:inherit;font-size:10px;font-weight:800;text-align:left;cursor:pointer;transition:background-color 150ms ease,color 150ms ease}
.dts-settings-nav button i{width:18px;text-align:center;color:#718178}
.dts-settings-nav button:hover{background:#f2f8f5;color:#245c45}
.dts-settings-nav button.is-active{background:linear-gradient(135deg,#0a5c38 0%,#0f7448 48%,#179261 100%);color:#fff}
.dts-settings-nav button.is-active i{color:#fff}
.dts-settings-content{min-width:0}
.dts-settings-section[hidden]{display:none!important}
.dts-settings-section form{display:flex;flex-direction:column;gap:12px}
.dts-settings-section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;padding:3px 1px 5px}
.dts-settings-kicker{display:block;color:#0f7448;font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.11em}
.dts-settings-section-head h2{margin:4px 0 4px;font-size:20px;letter-spacing:-.02em}
.dts-settings-section-head p{margin:0;color:var(--muted);font-size:10px;line-height:1.5;max-width:680px}
.dts-settings-card{padding:18px;border:1px solid var(--line);border-radius:15px;background:#fff;box-shadow:0 5px 18px rgba(20,45,34,.03)}
.dts-settings-grid{display:grid;gap:12px}
.dts-settings-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.dts-settings-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.dts-settings-field{min-width:0}
.dts-settings-field>span{display:block;margin-bottom:6px;color:#42544a;font-size:9px;font-weight:850}
.dts-settings-field input,.dts-settings-field select,.dts-settings-field textarea{width:100%;min-height:40px;padding:8px 10px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--ink);font:inherit;font-size:10px;outline:0}
.dts-settings-field textarea{resize:vertical;line-height:1.45}
.dts-settings-field input:focus,.dts-settings-field select:focus,.dts-settings-field textarea:focus{border-color:#72b792;box-shadow:0 0 0 3px rgba(23,146,97,.08)}
.dts-settings-field>small,.dts-settings-code-rule small{display:block;margin-top:5px;color:var(--muted);font-size:8px;line-height:1.45}
.dts-settings-field-wide{grid-column:1/-1}
.dts-settings-switch-list{display:flex;flex-direction:column;margin-top:14px;border-top:1px solid var(--line)}
.dts-settings-switch-list.is-first{margin-top:0;border-top:0}
.dts-settings-switch{display:grid;grid-template-columns:auto minmax(0,1fr);gap:11px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line);cursor:pointer}
.dts-settings-switch:last-child{border-bottom:0;padding-bottom:0}
.dts-settings-switch>input[type="checkbox"]{position:absolute;opacity:0;pointer-events:none}
.dts-settings-switch-control{position:relative;width:38px;height:22px;border-radius:999px;background:#ccd6d1;transition:background-color 150ms ease}
.dts-settings-switch-control::after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.18);transition:transform 150ms ease}
.dts-settings-switch>input[type="checkbox"]:checked+.dts-settings-switch-control{background:#15915f}
.dts-settings-switch>input[type="checkbox"]:checked+.dts-settings-switch-control::after{transform:translateX(16px)}
.dts-settings-switch>input[type="checkbox"]:focus-visible+.dts-settings-switch-control{box-shadow:0 0 0 3px rgba(23,146,97,.13)}
.dts-settings-switch-copy strong,.dts-settings-switch-copy small{display:block}
.dts-settings-switch-copy strong{font-size:10px}
.dts-settings-switch-copy small{margin-top:3px;color:var(--muted);font-size:8px;line-height:1.45}
.dts-settings-preview{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 18px;border-radius:15px;background:linear-gradient(135deg,#0a5c38 0%,#0f7448 45%,#179261 100%);color:#fff;box-shadow:0 8px 24px rgba(10,92,56,.12)}
.dts-settings-preview span,.dts-settings-preview strong{display:block}
.dts-settings-preview span{font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:rgba(255,255,255,.68)}
.dts-settings-preview strong{margin-top:5px;font-size:19px;letter-spacing:.03em}
.dts-settings-preview>i{font-size:31px;color:rgba(255,255,255,.28)}
.dts-settings-safety-card{display:flex;align-items:flex-start;gap:11px;padding:13px 15px;border:1px solid #cde3d6;border-radius:12px;background:#f5faf7;color:#2c5945}
.dts-settings-safety-card>i{margin-top:2px;color:#0f7448}
.dts-settings-safety-card strong{font-size:10px}
.dts-settings-safety-card p{margin:4px 0 0;color:#5d7468;font-size:8px;line-height:1.5}
.dts-settings-locked-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.dts-settings-locked-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.dts-settings-locked{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:flex-start;padding:12px;border:1px solid var(--line);border-radius:11px;background:#fafcfb}
.dts-settings-locked-icon{width:30px;height:30px;display:grid;place-items:center;border-radius:8px;background:#edf4f0;color:#4b6b5b}
.dts-settings-locked strong,.dts-settings-locked small{display:block}
.dts-settings-locked strong{padding-right:46px;font-size:9px}
.dts-settings-locked small{margin-top:4px;color:var(--muted);font-size:8px;line-height:1.4}
.dts-settings-locked-badge{position:absolute;top:10px;right:10px;padding:3px 5px;border-radius:999px;background:#edf1ef;color:#66766e;font-size:7px;font-weight:900;text-transform:uppercase;letter-spacing:.05em}
.dts-settings-subhead{display:flex;align-items:flex-start;gap:10px;margin-bottom:14px}
.dts-settings-subhead>i{width:34px;height:34px;display:grid;place-items:center;flex:0 0 auto;border-radius:9px;background:#eaf7f0;color:#0f7448}
.dts-settings-subhead strong,.dts-settings-subhead span{display:block}
.dts-settings-subhead strong{font-size:11px}
.dts-settings-subhead span{margin-top:3px;color:var(--muted);font-size:8px;line-height:1.45}
.dts-settings-code-rule{min-height:40px;padding:8px 10px;border:1px dashed #c6d9cf;border-radius:9px;background:#f8fbf9}
.dts-settings-code-rule>span{margin-bottom:3px}
.dts-settings-code-rule strong{display:block;font-size:10px}
.dts-settings-input-suffix{display:flex;align-items:stretch}
.dts-settings-input-suffix input{border-radius:9px 0 0 9px}
.dts-settings-input-suffix>span{display:flex;align-items:center;padding:0 9px;border:1px solid var(--line);border-left:0;border-radius:0 9px 9px 0;background:#f6f8f7;color:var(--muted);font-size:8px;font-weight:800}
.dts-settings-status-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}
.dts-settings-status-card{display:flex;align-items:center;gap:10px;padding:13px;border:1px solid var(--line);border-radius:12px;background:#fff}
.dts-settings-status-card>i{width:30px;height:30px;display:grid;place-items:center;border-radius:8px;background:#edf8f2;color:#0f7448}
.dts-settings-status-card span,.dts-settings-status-card strong{display:block}
.dts-settings-status-card span{color:var(--muted);font-size:8px}
.dts-settings-status-card strong{margin-top:3px;font-size:10px}
.dts-settings-runtime{display:flex;flex-wrap:wrap;gap:8px}
.dts-settings-runtime>span{padding:7px 9px;border-radius:999px;background:#f0f4f2;color:#596a62;font-size:8px}
.dts-settings-footnote{display:flex;align-items:flex-start;gap:8px;margin-top:14px;padding:11px 13px;border-radius:11px;background:#eef3f0;color:#5e7067;font-size:8px;line-height:1.5}
.dts-settings-footnote i{margin-top:2px;color:#0f7448}
@media(max-width:1100px){
    .dts-settings-shell{grid-template-columns:190px minmax(0,1fr)}
    .dts-settings-grid.three{grid-template-columns:repeat(2,minmax(0,1fr))}
    .dts-settings-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .dts-settings-locked-grid.three{grid-template-columns:1fr}
}
@media(max-width:820px){
    .dts-settings-heading{align-items:flex-start}
    .dts-settings-version{display:none}
    .dts-settings-shell{display:block}
    .dts-settings-nav{position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:12px}
    .dts-settings-section-head{display:block}
    .dts-settings-section-head .btn{margin-top:12px}
    .dts-settings-grid.two,.dts-settings-grid.three{grid-template-columns:1fr}
    .dts-settings-locked-grid,.dts-settings-locked-grid.three{grid-template-columns:1fr}
}
@media(max-width:520px){
    .dts-settings-nav{grid-template-columns:1fr}
    .dts-settings-status-grid{grid-template-columns:1fr}
}
/* END DTS System Settings Foundation v1.3.5 */

/* DTS Settings Header Alignment v1.3.5.1 */
.dts-settings-section-head{
    align-items:center;
    padding:0 1px 10px;
}

.dts-settings-section-copy{
    min-width:0;
}

.dts-settings-section-head h2{
    margin:0 0 6px;
    font-size:22px;
    line-height:1.15;
    letter-spacing:-.025em;
}

.dts-settings-section-head p{
    margin:0;
    max-width:780px;
    color:var(--muted);
    font-size:10px;
    line-height:1.55;
}

/* Hide any stale cached kicker markup from the previous v1.3.5 view. */
.dts-settings-kicker{
    display:none!important;
}

@media(max-width:820px){
    .dts-settings-section-head{
        align-items:flex-start;
    }

    .dts-settings-section-head h2{
        font-size:20px;
    }
}
/* END DTS Settings Header Alignment v1.3.5.1 */

/* DTS Settings Layout Reflow v1.3.5.2 */
.dts-settings-heading{
    display:block;
}

.dts-settings-active-heads{
    margin-top:18px;
    margin-bottom:10px;
}

.dts-settings-active-heads>[hidden]{
    display:none!important;
}

.dts-settings-active-heads .dts-settings-section-head{
    width:100%;
    padding:0;
}

.dts-settings-active-heads .dts-settings-section-head h2{
    margin:0 0 6px;
}

.dts-settings-active-heads .dts-settings-section-head p{
    max-width:820px;
}

.dts-settings-nav{
    align-self:start;
}

.dts-settings-content .dts-settings-section form{
    gap:12px;
}

@media(max-width:820px){
    .dts-settings-active-heads{
        margin-top:14px;
        margin-bottom:10px;
    }

    .dts-settings-active-heads .dts-settings-section-head{
        display:flex;
        align-items:flex-start;
    }

    .dts-settings-active-heads .dts-settings-section-head .btn{
        margin-top:0;
    }
}

@media(max-width:620px){
    .dts-settings-active-heads .dts-settings-section-head{
        display:block;
    }

    .dts-settings-active-heads .dts-settings-section-head .btn{
        width:100%;
        justify-content:center;
        margin-top:12px;
    }
}
/* END DTS Settings Layout Reflow v1.3.5.2 */

/* DTS Settings Typography & Responsive Readability v1.3.5.3 */

/*
 * Typography is intentionally scoped to Settings only.
 * Personnel Directory remains the visual reference while its own CSS stays untouched.
 */
.dts-settings-page .dts-settings-heading h1{
    font-size:30px;
    line-height:1.15;
    font-weight:700;
    letter-spacing:-.03em;
}

.dts-settings-page .dts-settings-heading p{
    width:100%;
    max-width:980px;
    margin:0;
    color:var(--muted);
    font-size:15px;
    line-height:1.5;
    font-weight:400;
    white-space:normal;
    word-break:normal;
    overflow-wrap:anywhere;
}

/* Active Settings section heading. */
.dts-settings-page .dts-settings-section-head h2{
    margin:0 0 6px;
    font-size:24px;
    line-height:1.2;
    font-weight:700;
    letter-spacing:-.025em;
}

.dts-settings-page .dts-settings-section-head p{
    max-width:860px;
    margin:0;
    color:var(--muted);
    font-size:14px;
    line-height:1.5;
    font-weight:400;
    white-space:normal;
    word-break:normal;
    overflow-wrap:anywhere;
}

/* Small Settings subsection navigation. */
.dts-settings-page .dts-settings-nav button{
    min-height:44px;
    gap:10px;
    padding:0 12px;
    font-size:13.5px;
    line-height:1.25;
    font-weight:650;
    white-space:normal;
    word-break:normal;
    overflow-wrap:anywhere;
}

.dts-settings-page .dts-settings-nav button i{
    width:19px;
    min-width:19px;
    font-size:13px;
}

/* Primary General/System fields. */
.dts-settings-page .dts-settings-field>span{
    margin-bottom:6px;
    font-size:12px;
    line-height:1.35;
    font-weight:650;
}

.dts-settings-page .dts-settings-field input,
.dts-settings-page .dts-settings-field select,
.dts-settings-page .dts-settings-field textarea{
    min-height:44px;
    padding:9px 11px;
    font-size:14.5px;
    line-height:1.4;
    font-weight:400;
}

.dts-settings-page .dts-settings-field textarea{
    line-height:1.5;
}

.dts-settings-page .dts-settings-field>small,
.dts-settings-page .dts-settings-code-rule small{
    margin-top:6px;
    font-size:11px;
    line-height:1.45;
}

/* Section action buttons should read like the Personnel Directory controls. */
.dts-settings-page .dts-settings-section-head .btn{
    min-height:42px;
    font-size:14px;
    line-height:1.2;
    font-weight:650;
}

/*
 * Bring secondary Settings controls up to the same readable scale so changing
 * tabs does not drop back to the old extra-small typography.
 */
.dts-settings-page .dts-settings-switch-copy strong{
    font-size:13px;
    line-height:1.35;
}

.dts-settings-page .dts-settings-switch-copy small{
    margin-top:3px;
    font-size:11px;
    line-height:1.45;
}

.dts-settings-page .dts-settings-safety-card strong,
.dts-settings-page .dts-settings-subhead strong,
.dts-settings-page .dts-settings-code-rule strong,
.dts-settings-page .dts-settings-status-card strong{
    font-size:12.5px;
    line-height:1.35;
}

.dts-settings-page .dts-settings-safety-card p,
.dts-settings-page .dts-settings-subhead span,
.dts-settings-page .dts-settings-locked small,
.dts-settings-page .dts-settings-status-card span,
.dts-settings-page .dts-settings-runtime>span,
.dts-settings-page .dts-settings-footnote{
    font-size:10.5px;
    line-height:1.45;
}

.dts-settings-page .dts-settings-locked strong{
    font-size:12px;
    line-height:1.35;
}

.dts-settings-page .dts-settings-preview span{
    font-size:10px;
}

.dts-settings-page .dts-settings-preview strong{
    font-size:20px;
}

/* Tablet: let long page/section descriptions wrap instead of squeezing. */
@media(max-width:1100px){
    .dts-settings-page .dts-settings-heading p,
    .dts-settings-page .dts-settings-section-head p{
        max-width:100%;
    }

    .dts-settings-page .dts-settings-nav button{
        font-size:13px;
    }
}

/* Phone/tablet: preserve hierarchy while giving text all available width. */
@media(max-width:820px){
    .dts-settings-page .dts-settings-heading h1{
        font-size:27px;
    }

    .dts-settings-page .dts-settings-heading p{
        width:100%;
        max-width:none;
        font-size:14.5px;
        line-height:1.5;
        white-space:normal;
        overflow-wrap:anywhere;
    }

    .dts-settings-page .dts-settings-section-head h2{
        font-size:22px;
    }

    .dts-settings-page .dts-settings-section-head p{
        width:100%;
        max-width:none;
        font-size:13.5px;
    }

    .dts-settings-page .dts-settings-nav button{
        min-height:46px;
        font-size:13.5px;
    }

    .dts-settings-page .dts-settings-field input,
    .dts-settings-page .dts-settings-field select,
    .dts-settings-page .dts-settings-field textarea{
        font-size:15px;
    }
}

@media(max-width:520px){
    .dts-settings-page .dts-settings-heading h1{
        font-size:25px;
    }

    .dts-settings-page .dts-settings-heading p{
        font-size:14px;
    }

    .dts-settings-page .dts-settings-section-head h2{
        font-size:21px;
    }

    .dts-settings-page .dts-settings-section-head p{
        font-size:13px;
    }

    .dts-settings-page .dts-settings-section-head .btn{
        font-size:13.5px;
    }
}
/* END DTS Settings Typography & Responsive Readability v1.3.5.3 */

/* DTS Website Maintenance Mode v1.3.6 */
.dts-maintenance-settings-card{
    border-color:#c7dfd2;
    background:linear-gradient(135deg,#fbfefc 0%,#ffffff 100%);
}
.dts-maintenance-status-row{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    padding:13px 14px;
    margin-bottom:14px;
    border:1px solid #d8e7df;
    border-radius:12px;
    background:#f7fbf9;
}
.dts-maintenance-status-row>div:first-child{min-width:0}
.dts-maintenance-status-row strong,.dts-maintenance-status-row span{display:block}
.dts-maintenance-status-row>div:first-child>strong{font-size:13px}
.dts-maintenance-status-row>div:first-child>span{margin-top:4px;color:var(--muted);font-size:11px;line-height:1.45}
.dts-maintenance-master-switch{flex:0 0 auto;padding:0;border:0;min-width:92px;justify-content:flex-end}
.dts-maintenance-master-switch .dts-settings-switch-copy strong{min-width:24px;text-transform:uppercase;letter-spacing:.03em}
.dts-maintenance-copy-grid{align-items:start}
.dts-maintenance-safety{height:100%;min-height:74px;margin:0}
.dts-maintenance-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:14px}
.dts-maintenance-actions>small{color:var(--muted);font-size:10.5px;line-height:1.4}
.dts-maintenance-confirm-warning{display:flex;align-items:flex-start;gap:11px;padding:13px;border-radius:11px;background:#fff7e9;color:#70521a}
.dts-maintenance-confirm-warning>i{margin-top:2px;color:#aa761c}
.dts-maintenance-confirm-warning strong{display:block;font-size:13px}
.dts-maintenance-confirm-warning p{margin:5px 0 0;font-size:11px;line-height:1.5}
@media(max-width:820px){
    .dts-maintenance-status-row{align-items:flex-start;flex-direction:column}
    .dts-maintenance-master-switch{min-width:0;justify-content:flex-start}
    .dts-maintenance-copy-grid{grid-template-columns:1fr!important}
    .dts-maintenance-actions{align-items:stretch;flex-direction:column}
    .dts-maintenance-actions .btn{width:100%;justify-content:center}
}
/* END DTS Website Maintenance Mode v1.3.6 */

/* DTS Website Maintenance Save Hotfix v1.3.6.1 */
.dts-settings-page [data-maintenance-form]{
    display:block;
    margin:0 0 12px;
}

.dts-settings-page .dts-maintenance-actions-save{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:14px;
}

.dts-settings-page .dts-maintenance-preview-group{
    min-width:0;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    gap:6px;
}

.dts-settings-page .dts-maintenance-actions-save>[data-maintenance-save]{
    flex:0 0 auto;
}

@media(max-width:700px){
    .dts-settings-page .dts-maintenance-actions-save{
        align-items:stretch;
        flex-direction:column;
    }

    .dts-settings-page .dts-maintenance-actions-save>[data-maintenance-save]{
        width:100%;
        justify-content:center;
    }
}
/* END DTS Website Maintenance Save Hotfix v1.3.6.1 */

/* DTS Maintenance Inline Confirmation Freeze Fix v1.3.6.5 */
.dts-settings-page .dts-maintenance-inline-confirm{
    margin-top:14px;
    padding:13px;
    border:1px solid #ecd9aa;
    border-radius:12px;
    background:#fffaf0;
}

.dts-settings-page .dts-maintenance-inline-confirm[hidden]{
    display:none!important;
}

.dts-settings-page .dts-maintenance-inline-confirm-actions{
    display:flex;
    justify-content:flex-end;
    align-items:center;
    gap:10px;
    margin-top:12px;
}

.dts-settings-page [data-maintenance-form][aria-busy="true"]{
    cursor:progress;
}

.dts-settings-page [data-maintenance-form][aria-busy="true"]
[data-maintenance-save],
.dts-settings-page [data-maintenance-form][aria-busy="true"]
[data-maintenance-inline-confirm-save]{
    cursor:wait;
}

@media(max-width:620px){
    .dts-settings-page .dts-maintenance-inline-confirm-actions{
        flex-direction:column-reverse;
        align-items:stretch;
    }

    .dts-settings-page .dts-maintenance-inline-confirm-actions .btn{
        width:100%;
        justify-content:center;
    }
}
/* END DTS Maintenance Inline Confirmation Freeze Fix v1.3.6.5 */

/* DTS Maintenance Toggle Direct Save v1.3.6.6 */
.dts-settings-page .dts-maintenance-master-switch
.dts-settings-switch-copy{
    min-width:58px;
}

.dts-settings-page .dts-maintenance-save-state{
    margin-top:3px;
    font-size:9.5px;
    line-height:1.2;
    font-weight:700;
    text-transform:none;
    letter-spacing:0;
    color:var(--muted);
}

.dts-settings-page .dts-maintenance-save-state[data-state="saving"]{
    color:#0f7448;
}

.dts-settings-page .dts-maintenance-save-state[data-state="pending"]{
    color:#9a6b13;
}

.dts-settings-page [data-maintenance-toggle]:disabled
+ .dts-settings-switch-control{
    opacity:.72;
    cursor:wait;
}
/* END DTS Maintenance Toggle Direct Save v1.3.6.6 */

/* DTS General Settings Systemwide Runtime v1.3.7.0 */
.dts-service-advisory{
    display:flex;
    align-items:flex-start;
    gap:10px;
    width:100%;
    margin:0 0 18px;
    padding:11px 13px;
    border:1px solid #cfe4d9;
    border-radius:11px;
    background:#f1faf5;
    color:#285d46;
    font-size:13px;
    line-height:1.5;
    overflow-wrap:anywhere;
}

.dts-service-advisory>i{
    flex:0 0 auto;
    margin-top:3px;
    color:#118055;
}

.dts-service-advisory-auth{
    margin:0 0 18px;
}

@media(max-width:620px){
    .dts-service-advisory{
        font-size:12.5px;
        line-height:1.45;
    }
}
/* END DTS General Settings Systemwide Runtime v1.3.7.0 */

/* DTS Document Types Master Data v1.3.8.0 */
.document-types-filters{
    display:grid;
    grid-template-columns:minmax(280px,1fr) minmax(170px,220px) auto;
    gap:8px;
    align-items:center;
    padding:10px 0 12px;
}

.document-types-filters select{
    width:100%;
    min-height:36px;
    padding:0 9px;
    border:1px solid var(--line);
    border-radius:9px;
    background:#fff;
    color:var(--ink);
    font:inherit;
    font-size:10px;
    outline:0;
}

.document-types-table{
    min-width:900px;
}

.document-types-select-column{
    width:44px;
}

.document-type-code{
    color:#24483a;
    letter-spacing:.02em;
}

.document-type-description{
    display:block;
    max-width:420px;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    color:#4e6158;
}

.document-type-status{
    display:inline-flex;
    align-items:center;
    min-height:24px;
    padding:0 9px;
    border-radius:999px;
    font-size:9px;
    font-weight:800;
}

.document-type-status.is-active{
    background:#eaf7ef;
    color:#176844;
}

.document-type-status.is-inactive{
    background:#f2f3f2;
    color:#647168;
}

.document-types-bulk-bar{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    margin:0 0 10px;
    padding:10px 12px;
    border:1px solid #d7e7de;
    border-radius:10px;
    background:#f7fbf9;
}

.document-types-bulk-bar[hidden]{
    display:none!important;
}

.document-types-bulk-bar strong{
    display:block;
    font-size:11px;
}

.document-types-bulk-bar small{
    display:block;
    margin-top:2px;
    color:var(--muted);
    font-size:9px;
}

.document-types-bulk-actions{
    display:flex;
    align-items:center;
    gap:7px;
    flex-wrap:wrap;
    justify-content:flex-end;
}

#documentTypeBulkForm{
    display:none;
}

.document-types-form-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px;
}

.document-types-form-grid label{
    display:flex;
    flex-direction:column;
    gap:6px;
}

.document-types-form-grid label>span{
    font-size:11px;
    font-weight:700;
    color:#496055;
}

.document-types-form-grid input,
.document-types-form-grid select,
.document-types-form-grid textarea{
    width:100%;
    min-height:42px;
    padding:9px 11px;
    border:1px solid var(--line);
    border-radius:9px;
    background:#fff;
    color:var(--ink);
    font:inherit;
    font-size:14px;
    outline:none;
}

.document-types-form-grid textarea{
    min-height:96px;
    resize:vertical;
}

.document-types-form-grid small{
    color:var(--muted);
    font-size:10px;
    line-height:1.4;
}

.document-types-form-full{
    grid-column:1/-1;
}

.document-type-view-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px;
}

.document-type-view-grid>div{
    padding:11px 12px;
    border:1px solid var(--line);
    border-radius:10px;
    background:#fbfdfc;
}

.document-type-view-grid span,
.document-type-view-grid strong{
    display:block;
}

.document-type-view-grid span{
    margin-bottom:4px;
    color:var(--muted);
    font-size:10px;
}

.document-type-view-grid strong{
    font-size:13px;
    line-height:1.45;
    overflow-wrap:anywhere;
}

.document-type-delete-warning{
    display:flex;
    gap:12px;
    align-items:flex-start;
    padding:12px;
    border:1px solid #ecd7d7;
    border-radius:10px;
    background:#fff7f7;
}

.document-type-delete-warning>i{
    margin-top:3px;
    color:#a33c3c;
}

.document-type-delete-warning strong{
    display:block;
    margin-bottom:4px;
}

.document-type-delete-warning p{
    margin:0;
    color:#6d5959;
    font-size:11px;
    line-height:1.5;
}

.document-types-error-list{
    margin:6px 0 0 18px;
}

@media(max-width:760px){
    .document-types-filters{
        grid-template-columns:1fr;
    }

    .document-types-bulk-bar{
        align-items:stretch;
        flex-direction:column;
    }

    .document-types-bulk-actions{
        justify-content:flex-start;
    }

    .document-types-form-grid,
    .document-type-view-grid{
        grid-template-columns:1fr;
    }

    .document-types-form-full{
        grid-column:auto;
    }
}
/* END DTS Document Types Master Data v1.3.8.0 */


/* DTS Shared Table Bulk + Pagination UI Standard v1.4.0.13 */
:root{
    --dts-table-control-font-size:12.5px;
    --dts-table-control-height:36px;
    --dts-table-control-radius:9px;
}

/* Canonical pagination appearance across local DTS data tables. */
.dt-paging{
    display:flex;
    align-items:center;
    gap:6px!important;
}
.dt-paging button{
    min-height:var(--dts-table-control-height)!important;
    padding:0 12px!important;
    border:1px solid #dfe7e3!important;
    border-radius:var(--dts-table-control-radius)!important;
    background:#fff!important;
    color:#52645b!important;
    font:inherit!important;
    font-size:var(--dts-table-control-font-size)!important;
    font-weight:700!important;
    line-height:1!important;
    cursor:pointer;
}
.dt-paging button:hover:not(:disabled):not([aria-current="page"]){
    border-color:#b7d3c5!important;
    background:#f6faf8!important;
    color:#1f5f43!important;
}
.dt-paging button[aria-current="page"]{
    border-color:#0f7a53!important;
    background:#0f7a53!important;
    color:#fff!important;
}
.dt-paging button:disabled{
    opacity:.46!important;
    cursor:not-allowed!important;
}
.dt-paging-ellipsis,
.dt-paging-mobile-label{
    color:#6c7c74;
    font-size:var(--dts-table-control-font-size)!important;
    font-weight:700;
}

/* Personnel Directory now uses the Users-style full-width bulk bar. */
.personnel-directory-v2-bulk-bar{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px 18px;
    margin:10px 0 2px;
    padding:12px 14px;
    border:1px solid #cfe2d8;
    border-radius:12px;
    background:#f3faf7;
}
.personnel-directory-v2-bulk-bar[hidden]{display:none!important}
.personnel-directory-v2-bulk-summary{
    min-width:0;
    display:grid;
    gap:3px;
    color:#254b3b;
}
.personnel-directory-v2-selected-count,
.personnel-directory-v2-bulk-context,
.personnel-directory-v2-select-all-matching,
.personnel-directory-v2-select-all-matching-button,
.personnel-directory-v2-clear-selection,
.personnel-directory-v2-bulk-download,
.personnel-directory-v2-bulk-delete{
    font-size:var(--dts-table-control-font-size)!important;
}
.personnel-directory-v2-selected-count{
    color:#254b3b!important;
    font-weight:800!important;
    line-height:1.25;
}
.personnel-directory-v2-bulk-context{
    color:#6f8178;
    font-weight:500;
    line-height:1.35;
}
.personnel-directory-v2-select-all-matching{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:6px;
    margin:1px 0 0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    color:#5e7368!important;
    line-height:1.35;
}
.personnel-directory-v2-select-all-matching[hidden]{display:none!important}
.personnel-directory-v2-select-all-matching-button{
    border:0!important;
    padding:0!important;
    background:transparent!important;
    color:#0f7448!important;
    font-weight:800!important;
    cursor:pointer;
    text-decoration:underline;
    text-underline-offset:2px;
}
.personnel-directory-v2-bulk-actions{
    display:flex!important;
    align-items:center;
    justify-content:flex-end;
    gap:8px!important;
    min-height:auto!important;
    flex-wrap:wrap;
}
.personnel-directory-v2-bulk-actions[hidden]{display:none!important}
.personnel-directory-v2-clear-selection,
.personnel-directory-v2-bulk-download,
.personnel-directory-v2-bulk-delete{
    min-height:38px!important;
    padding:0 14px!important;
    border-radius:10px!important;
    font-weight:750!important;
    white-space:nowrap;
}
.personnel-directory-v2-clear-selection{
    border:1px solid #dfe7e3!important;
    background:#fff!important;
    color:#4f6258!important;
    cursor:pointer;
}
.personnel-directory-v2-clear-selection:hover{
    border-color:#b7d3c5!important;
    background:#f8fbf9!important;
    color:#0f7448!important;
    text-decoration:none!important;
}
/* Preserve Personnel Directory's approved green Download color. */
.personnel-directory-v2-bulk-download{
    border:1px solid #b8d8c8!important;
    background:#eef8f3!important;
    color:#0a5c38!important;
}
.personnel-directory-v2-bulk-download:hover:not(:disabled){
    border-color:#86bea1!important;
    background:#e5f5ed!important;
    color:#07472c!important;
}
/* Preserve Personnel Directory's approved red Delete color. */
.personnel-directory-v2-bulk-delete{
    border-color:#a64242!important;
    background:#a64242!important;
    color:#fff!important;
}
.personnel-directory-v2-bulk-delete:hover:not(:disabled){
    border-color:#923737!important;
    background:#923737!important;
    color:#fff!important;
}

@media(max-width:760px){
    .personnel-directory-v2-bulk-bar{
        align-items:stretch;
        flex-direction:column;
    }
    .personnel-directory-v2-bulk-actions{
        justify-content:stretch;
    }
    .personnel-directory-v2-bulk-actions > *{
        flex:1 1 auto;
        justify-content:center;
    }
}
/* END DTS Shared Table Bulk + Pagination UI Standard v1.4.0.13 */


/* DTS RBAC role baseline v1.5.45.26 */
.dts-settings-page .dts-rbac-baseline{
    margin-top:16px;
    padding:15px;
    border:1px solid #dce6e1;
    border-radius:12px;
    background:#f9fbfa;
}

.dts-settings-page .dts-rbac-baseline-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:16px;
    margin-bottom:13px;
}

.dts-settings-page .dts-rbac-baseline-head strong{
    display:block;
    color:#263b30;
    font-size:13px;
    font-weight:800;
}

.dts-settings-page .dts-rbac-baseline-head small{
    display:block;
    max-width:760px;
    margin-top:3px;
    color:#74837b;
    font-size:11px;
    line-height:1.45;
}

.dts-settings-page .dts-rbac-baseline-head>span{
    flex:0 0 auto;
    padding:5px 8px;
    border:1px solid #cde2d6;
    border-radius:999px;
    background:#edf7f1;
    color:#176b48;
    font-size:10px;
    font-weight:800;
}

.dts-settings-page .dts-rbac-role-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:9px;
}

.dts-settings-page .dts-rbac-role-grid article{
    min-width:0;
    padding:12px;
    border:1px solid #e2e9e5;
    border-radius:10px;
    background:#fff;
}

.dts-settings-page .dts-rbac-role-grid article>div{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:8px;
}

.dts-settings-page .dts-rbac-role-grid article strong{
    color:#30443a;
    font-size:11.75px;
    font-weight:800;
}

.dts-settings-page .dts-rbac-role-grid p{
    margin:7px 0 0;
    color:#65766d;
    font-size:10.75px;
    line-height:1.45;
}

.dts-settings-page .dts-rbac-role-grid article>small{
    display:block;
    margin-top:6px;
    color:#9a6b19;
    font-size:10px;
    font-weight:700;
}

.dts-settings-page .dts-role-chip{
    flex:0 0 auto;
    padding:3px 6px;
    border-radius:999px;
    background:#f0f4f2;
    color:#63736a;
    font-size:9px;
    font-weight:800;
    text-transform:uppercase;
}

.dts-settings-page .dts-role-chip.privileged{
    background:#fff1ed;
    color:#a14b34;
}

.dts-settings-page .dts-role-chip.operational{
    background:#eaf6ef;
    color:#176b48;
}

.dts-settings-page .dts-role-chip.readonly{
    background:#f1f3f6;
    color:#5c6673;
}

.dts-settings-page .dts-role-chip.standard{
    background:#edf4fb;
    color:#3d6384;
}

.dts-settings-page .dts-rbac-flow{
    display:grid;
    grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;
    align-items:center;
    gap:8px;
    margin-top:12px;
    padding:10px 12px;
    border:1px dashed #cfdcd5;
    border-radius:10px;
    background:#fff;
}

.dts-settings-page .dts-rbac-flow>span{
    min-width:0;
}

.dts-settings-page .dts-rbac-flow strong,
.dts-settings-page .dts-rbac-flow small{
    display:block;
}

.dts-settings-page .dts-rbac-flow strong{
    color:#344a3f;
    font-size:10.75px;
    font-weight:800;
}

.dts-settings-page .dts-rbac-flow small{
    margin-top:2px;
    color:#829087;
    font-size:9.75px;
}

.dts-settings-page .dts-rbac-flow i{
    color:#95a59c;
    font-size:10px;
}

@media(max-width:1050px){
    .dts-settings-page .dts-rbac-role-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}

@media(max-width:700px){
    .dts-settings-page .dts-rbac-role-grid{
        grid-template-columns:1fr;
    }

    .dts-settings-page .dts-rbac-flow{
        grid-template-columns:1fr;
    }

    .dts-settings-page .dts-rbac-flow i{
        transform:rotate(90deg);
        justify-self:center;
    }
}

/* DTS GLOBAL BUTTON LINK NO-UNDERLINE v1.5.45.31.32.2 START */
/*
 * Global DTS rule:
 * Button-style anchors must never render underlined text.
 * Ordinary inline/content links are intentionally not targeted.
 */
:where(
    a.btn,
    a.btn-primary,
    a.btn-secondary,
    a.btn-success,
    a.btn-warning,
    a.btn-danger,
    a.btn-ghost,
    a.btn-with-icon,
    a.dashboard-action,
    a.overview-link,
    a.scan-btn,
    a.security-btn,
    a.action-btn,
    a.table-action,
    a.icon-btn,
    a.button,
    a[role="button"]
),
:where(
    a.btn,
    a.btn-primary,
    a.btn-secondary,
    a.btn-success,
    a.btn-warning,
    a.btn-danger,
    a.btn-ghost,
    a.btn-with-icon,
    a.dashboard-action,
    a.overview-link,
    a.scan-btn,
    a.security-btn,
    a.action-btn,
    a.table-action,
    a.icon-btn,
    a.button,
    a[role="button"]
):link,
:where(
    a.btn,
    a.btn-primary,
    a.btn-secondary,
    a.btn-success,
    a.btn-warning,
    a.btn-danger,
    a.btn-ghost,
    a.btn-with-icon,
    a.dashboard-action,
    a.overview-link,
    a.scan-btn,
    a.security-btn,
    a.action-btn,
    a.table-action,
    a.icon-btn,
    a.button,
    a[role="button"]
):visited,
:where(
    a.btn,
    a.btn-primary,
    a.btn-secondary,
    a.btn-success,
    a.btn-warning,
    a.btn-danger,
    a.btn-ghost,
    a.btn-with-icon,
    a.dashboard-action,
    a.overview-link,
    a.scan-btn,
    a.security-btn,
    a.action-btn,
    a.table-action,
    a.icon-btn,
    a.button,
    a[role="button"]
):hover,
:where(
    a.btn,
    a.btn-primary,
    a.btn-secondary,
    a.btn-success,
    a.btn-warning,
    a.btn-danger,
    a.btn-ghost,
    a.btn-with-icon,
    a.dashboard-action,
    a.overview-link,
    a.scan-btn,
    a.security-btn,
    a.action-btn,
    a.table-action,
    a.icon-btn,
    a.button,
    a[role="button"]
):focus,
:where(
    a.btn,
    a.btn-primary,
    a.btn-secondary,
    a.btn-success,
    a.btn-warning,
    a.btn-danger,
    a.btn-ghost,
    a.btn-with-icon,
    a.dashboard-action,
    a.overview-link,
    a.scan-btn,
    a.security-btn,
    a.action-btn,
    a.table-action,
    a.icon-btn,
    a.button,
    a[role="button"]
):focus-visible,
:where(
    a.btn,
    a.btn-primary,
    a.btn-secondary,
    a.btn-success,
    a.btn-warning,
    a.btn-danger,
    a.btn-ghost,
    a.btn-with-icon,
    a.dashboard-action,
    a.overview-link,
    a.scan-btn,
    a.security-btn,
    a.action-btn,
    a.table-action,
    a.icon-btn,
    a.button,
    a[role="button"]
):active {
    text-decoration: none !important;
    text-decoration-line: none !important;
}
/* DTS GLOBAL BUTTON LINK NO-UNDERLINE v1.5.45.31.32.2 END */

/* DTS DASHBOARD NEW DOCUTRACK ORANGE v1.5.45.31.32.3 START */
.dashboard-welcome .quick-actions .dashboard-action.dashboard-action-new,
.dashboard-welcome .quick-actions .dashboard-action.dashboard-action-new:link,
.dashboard-welcome .quick-actions .dashboard-action.dashboard-action-new:visited {
    background: #f97316;
    border-color: #f97316;
    color: #ffffff;
    text-decoration: none !important;
}

.dashboard-welcome .quick-actions .dashboard-action.dashboard-action-new svg,
.dashboard-welcome .quick-actions .dashboard-action.dashboard-action-new i {
    color: #ffffff;
    fill: currentColor;
}

.dashboard-welcome .quick-actions .dashboard-action.dashboard-action-new:hover,
.dashboard-welcome .quick-actions .dashboard-action.dashboard-action-new:focus,
.dashboard-welcome .quick-actions .dashboard-action.dashboard-action-new:focus-visible {
    background: #ea580c;
    border-color: #ea580c;
    color: #ffffff;
    text-decoration: none !important;
}

.dashboard-welcome .quick-actions .dashboard-action.dashboard-action-new:active {
    background: #c2410c;
    border-color: #c2410c;
    color: #ffffff;
    text-decoration: none !important;
}
/* DTS DASHBOARD NEW DOCUTRACK ORANGE v1.5.45.31.32.3 END */

/* DTS SUPER ADMIN DASHBOARD PHASE 1 v1.5.45.31.39 */
.super-admin-section{
    margin-top:16px;
    background:#fff;
    border:1px solid var(--line);
    border-radius:16px;
    box-shadow:0 5px 18px rgba(20,45,34,.03);
    padding:20px;
}

.super-admin-section-head{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:16px;
    margin-bottom:15px;
}

.super-admin-section-head h2{
    margin:4px 0 0;
    font-size:18px;
}

.super-admin-section-head > small{
    color:var(--muted);
    font-size:10px;
    font-weight:700;
}

.super-admin-overview-grid{
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:12px;
}

.super-admin-overview-card{
    min-width:0;
    min-height:118px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:16px;
    border:1px solid #dce7e1;
    border-radius:13px;
    background:#fbfdfc;
    color:var(--ink);
    text-decoration:none;
    transition:border-color .15s ease,transform .15s ease,box-shadow .15s ease;
}

.super-admin-overview-card:hover,
.super-admin-overview-card:focus-visible{
    transform:translateY(-1px);
    border-color:#c3d9cd;
    box-shadow:0 8px 20px rgba(20,45,34,.05);
    color:var(--ink);
    text-decoration:none;
}

.super-admin-overview-card > span{
    color:#617068;
    font-size:10px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.05em;
    line-height:1.35;
}

.super-admin-overview-card > strong{
    margin-top:10px;
    font-size:28px;
    line-height:1;
    letter-spacing:-.035em;
    color:var(--green-900);
}

.super-admin-overview-card > small{
    margin-top:7px;
    color:var(--muted);
    font-size:10px;
    line-height:1.35;
}

.super-admin-overview-card.tone-pending > strong{
    color:#b06a00;
}

.super-admin-overview-card.tone-security > strong{
    color:#b43b32;
}

.super-admin-empty-dark{
    min-height:82px;
    color:rgba(255,255,255,.82);
}

.super-admin-empty-dark strong{
    color:#fff;
}

@media(max-width:1280px){
    .super-admin-overview-grid{
        grid-template-columns:repeat(3,minmax(0,1fr));
    }
}

@media(max-width:760px){
    .super-admin-section-head{
        align-items:flex-start;
        flex-direction:column;
    }

    .super-admin-overview-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}

@media(max-width:480px){
    .super-admin-overview-grid{
        grid-template-columns:1fr;
    }
}
/* END DTS SUPER ADMIN DASHBOARD PHASE 1 v1.5.45.31.39 */
/* DTS My Routing Slips Dashboard Lifecycle v22.15.5.2 */

/* Scoped to requester Dashboard cards; operational dashboard tones are unchanged. */
.flow-card-grid .flow-mini-card.tone-submitted{background:linear-gradient(145deg,#ffffff 0%,#fff7ea 100%);border-color:#f1dfbf}
.flow-card-grid .flow-mini-card.tone-processing{background:linear-gradient(145deg,#ffffff 0%,#eef5fb 100%);border-color:#d7e5f2}
.flow-card-grid .flow-mini-card.tone-ready{background:linear-gradient(145deg,#ffffff 0%,#fff9ec 100%);border-color:#f2e2bd}
.flow-card-grid .flow-mini-card.tone-submitted .flow-mini-icon{background:rgba(184,111,0,.10);color:#9b6200}
.flow-card-grid .flow-mini-card.tone-processing .flow-mini-icon{background:rgba(36,94,130,.10);color:#245e82}
.flow-card-grid .flow-mini-card.tone-ready .flow-mini-icon{background:rgba(164,111,0,.10);color:#9b6700}
.flow-card-grid .flow-mini-card.tone-submitted > strong{color:#b86f00}
.flow-card-grid .flow-mini-card.tone-processing > strong{color:#245e82}
.flow-card-grid .flow-mini-card.tone-ready > strong{color:#a56700}
