:root{
    --csc-primary:#233b36;
    --csc-primary-2:#31584e;
    --csc-primary-3:#16302c;
    --csc-accent:#c9963e;
    --csc-accent-2:#e1bd72;
    --csc-bg:#f4f1eb;
    --csc-bg-2:#ebe6dc;
    --csc-surface:#ffffff;
    --csc-soft:#faf8f3;
    --csc-border:#ded6c8;
    --csc-text:#1f2927;
    --csc-muted:#75817d;
    --csc-danger:#b42318;
    --csc-success:#277a56;
    --csc-warning:#b7791f;
    --csc-info:#326d7c;
    --csc-radius:20px;
    --csc-shadow:0 22px 50px rgba(35,59,54,.13);
    --csc-shadow-soft:0 10px 26px rgba(35,59,54,.08);
    --sidebar-width:280px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
    min-height:100vh;
    margin:0;
    color:var(--csc-text);
    font-family:'Segoe UI',system-ui,-apple-system,BlinkMacSystemFont,'Roboto',sans-serif;
    background:
        radial-gradient(circle at 10% 0%,rgba(201,150,62,.12),transparent 30%),
        radial-gradient(circle at 100% 10%,rgba(49,88,78,.10),transparent 32%),
        linear-gradient(180deg,#faf8f3 0%,var(--csc-bg) 100%);
    overflow-x:hidden;
}
a{text-decoration:none;color:var(--csc-primary-2)}
a:hover{color:var(--csc-accent)}
::selection{background:rgba(201,150,62,.26)}

/* Formularios y botones */
.form-label{font-weight:700;color:#35443f;margin-bottom:.45rem;font-size:.92rem}
.form-control,.form-select{
    min-height:48px;
    border-radius:14px;
    border:1px solid var(--csc-border);
    background:#fffdf9;
    padding:.72rem .92rem;
    box-shadow:none!important;
    color:var(--csc-text);
}
.form-control:focus,.form-select:focus{
    border-color:rgba(201,150,62,.8);
    box-shadow:0 0 0 .22rem rgba(201,150,62,.18)!important;
    background:#fff;
}
textarea.form-control{min-height:120px}
.btn{
    min-height:42px;
    border-radius:14px;
    font-weight:700;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:.48rem;
    padding:.62rem 1rem;
    letter-spacing:.005em;
}
.btn-sm{min-height:34px;padding:.42rem .72rem;border-radius:12px}
.btn-primary{
    border-color:var(--csc-primary);
    background:linear-gradient(135deg,var(--csc-primary),var(--csc-primary-2));
    box-shadow:0 11px 24px rgba(35,59,54,.20);
}
.btn-primary:hover,.btn-primary:focus{border-color:var(--csc-primary-2);background:linear-gradient(135deg,var(--csc-primary-2),#3e6a60);transform:translateY(-1px)}
.btn-outline-primary{border-color:rgba(35,59,54,.34);color:var(--csc-primary)}
.btn-outline-primary:hover{background:var(--csc-primary);border-color:var(--csc-primary);color:#fff}
.btn-light{background:#fffaf1;border-color:#e9dfcf;color:#40504b}
.btn-light:hover{background:#f3eadc;border-color:#d9cbb8;color:#233b36}
.alert{border:0;border-radius:16px;box-shadow:var(--csc-shadow-soft)}
.badge{font-weight:800;letter-spacing:.01em}
.badge-soft{background:#fff4de;color:#7a4d10;border:1px solid #ecd49e;border-radius:999px;padding:.44rem .68rem}

/* Autenticación */
.auth-body{
    min-height:100vh;
    display:grid;
    place-items:center;
    padding:28px;
    background:
        linear-gradient(135deg,rgba(22,48,44,.96),rgba(49,88,78,.92)),
        radial-gradient(circle at 18% 10%,rgba(225,189,114,.34),transparent 30%),
        radial-gradient(circle at 90% 90%,rgba(255,255,255,.18),transparent 28%);
}
.auth-card{
    width:100%;
    max-width:520px;
    position:relative;
    overflow:hidden;
    padding:42px;
    background:rgba(255,253,249,.95);
    border:1px solid rgba(255,255,255,.62);
    border-radius:28px;
    box-shadow:0 34px 90px rgba(7,22,20,.32);
    backdrop-filter:blur(14px);
}
.auth-card:before{
    content:'';
    position:absolute;
    inset:-90px -90px auto auto;
    width:230px;height:230px;
    background:radial-gradient(circle,rgba(201,150,62,.20),transparent 70%);
    pointer-events:none;
}
.auth-logo{display:flex;align-items:center;gap:14px;margin-bottom:30px;position:relative}
.logo-mark,.brand-mark{
    width:54px;height:54px;border-radius:18px;
    display:grid;place-items:center;
    background:linear-gradient(135deg,var(--csc-primary),var(--csc-accent));
    color:#fff;font-weight:900;letter-spacing:.04em;
    box-shadow:0 16px 30px rgba(35,59,54,.22);
}
.auth-logo h3{font-weight:900;color:var(--csc-primary);letter-spacing:-.03em;font-size:1.58rem}
.auth-logo small,.brand small{display:block;color:var(--csc-muted);font-size:.78rem}
.auth-card .alert-info{background:#fff4dd;color:#6c4b14}

/* Layout principal */
.app-shell{
    display:flex;
    min-height:100vh;
    position:relative;
    background:
        radial-gradient(circle at 18% 0%, rgba(201,150,62,.10), transparent 26%),
        radial-gradient(circle at 100% 12%, rgba(49,88,78,.09), transparent 28%);
}
.sidebar{
    position:fixed;inset:0 auto 0 0;z-index:1040;
    width:var(--sidebar-width);
    padding:26px 18px;
    display:flex;flex-direction:column;
    color:#fff;
    background:
        linear-gradient(180deg,#142b27 0%,#233b36 54%,#182f2b 100%);
    box-shadow:12px 0 34px rgba(35,59,54,.18);
}
.brand{
    display:flex;align-items:center;gap:12px;color:#fff;
    margin-bottom:34px;
    padding:10px 8px 18px;
    border-bottom:1px solid rgba(255,255,255,.12);
}
.brand:hover{color:#fff}
.brand-mark{
    width:46px;height:46px;border-radius:15px;
    background:linear-gradient(135deg,rgba(255,255,255,.18),rgba(255,255,255,.08));
    border:1px solid rgba(255,255,255,.22);box-shadow:none;
}
.brand strong{display:block;line-height:1;font-size:1.16rem;letter-spacing:-.02em}
.brand small{color:rgba(255,255,255,.68);margin-top:4px}
.side-nav{display:flex;flex-direction:column;gap:10px}
.side-nav a{
    color:rgba(255,255,255,.76);
    padding:14px 15px;
    border-radius:15px;
    display:flex;align-items:center;gap:11px;
    transition:.18s ease;
    border:1px solid transparent;
    font-weight:700;
}
.side-nav a i{font-size:1.08rem}
.side-nav a:hover,.side-nav a.active{
    color:#fff;
    background:rgba(255,255,255,.13);
    border-color:rgba(255,255,255,.12);
    box-shadow:inset 4px 0 0 var(--csc-accent);
}
.sidebar-footer{margin-top:auto;position:relative;z-index:2}
.sidebar-footer .btn{min-height:44px;border-radius:14px}
.main-wrap{margin-left:var(--sidebar-width);width:calc(100% - var(--sidebar-width));min-width:0;min-height:100vh}
.topbar{
    position:sticky;top:0;z-index:1000;
    min-height:86px;
    padding:0 34px;
    display:flex;align-items:center;gap:16px;
    background:rgba(255,253,249,.9);
    border-bottom:1px solid rgba(222,214,200,.82);
    backdrop-filter:blur(14px);
}
.topbar strong{font-size:1.15rem;color:#263d38;letter-spacing:-.015em}
.content{padding:34px;width:100%;max-width:1680px;margin:0 auto}
.user-pill{display:flex;align-items:center;gap:10px;padding:7px 10px;border-radius:999px;background:#fffaf1;border:1px solid #eadfce}
.avatar{
    width:42px;height:42px;border-radius:50%;
    display:grid;place-items:center;
    background:linear-gradient(135deg,#fff4df,#e6f0ea);
    color:var(--csc-primary);
    font-weight:900;
    flex:0 0 auto;
}

/* Componentes */
.card-soft{
    background:rgba(255,253,249,.94);
    border:1px solid var(--csc-border);
    border-radius:var(--csc-radius);
    box-shadow:var(--csc-shadow-soft);
}
.card-soft.p-4{padding:1.75rem!important}
.metric-card{padding:28px;display:flex;align-items:flex-start;justify-content:space-between;min-height:145px;position:relative;overflow:hidden;border-radius:22px}
.metric-card:before{content:'';position:absolute;right:-38px;top:-38px;width:132px;height:132px;border-radius:50%;background:rgba(201,150,62,.12)}
.metric-card h2{font-weight:900;margin:.28rem 0 0;color:var(--csc-primary);font-size:2.15rem;letter-spacing:-.04em}
.metric-card .text-muted{font-size:.88rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}
.metric-card i{background:#fff4df;border:1px solid #ecd7ad;width:58px;height:58px;border-radius:18px;display:grid;place-items:center;font-size:1.65rem;color:var(--csc-primary);position:relative}
.section-title{font-weight:900;margin-bottom:18px;color:#263d38;letter-spacing:-.02em;font-size:1.03rem;display:flex;align-items:center;gap:.55rem}
.section-title:before{content:'';width:6px;height:22px;border-radius:999px;background:linear-gradient(180deg,var(--csc-accent),var(--csc-primary-2))}
.table-responsive{border-radius:16px}
.table{vertical-align:middle;margin-bottom:0}
.table>:not(caption)>*>*{padding:1rem}
.table thead th{color:#6f7b78;font-size:.76rem;text-transform:uppercase;letter-spacing:.06em;background:#faf7f1;border-bottom:1px solid var(--csc-border)}
.table tbody tr:hover{background:#fffaf2}
.team-card,.board-card{transition:.18s ease;color:var(--csc-text)}
.team-card:hover,.board-card:hover{transform:translateY(-4px);box-shadow:var(--csc-shadow);color:var(--csc-text)}
.board-card{padding:1.25rem!important;border-radius:18px;min-height:155px}
.board-card h5{color:#263d38;font-weight:900;margin-bottom:.65rem}
.empty-state{border:1px dashed #c8bdac;border-radius:20px;padding:42px 28px;text-align:center;color:var(--csc-muted);background:#fffdf9;width:100%;line-height:1.55}
.notif-menu{width:390px;border-radius:20px;border:1px solid var(--csc-border);box-shadow:var(--csc-shadow);overflow:hidden}
.notif-list{max-height:375px;overflow:auto;background:#fffdf9}
.notif-item{display:block;padding:13px 16px;border-bottom:1px solid #eee5d8;color:var(--csc-text)}
.notif-item:hover{background:#fff8eb;color:var(--csc-primary)}
.notif-item.unread{background:#fff4dd;border-left:4px solid var(--csc-accent)}
.small-muted{font-size:.84rem;color:var(--csc-muted)}
.card-actions{display:flex;gap:8px;flex-wrap:wrap}

/* Encabezado de pizarra */
.board-content{max-width:none;background:linear-gradient(180deg,#f7f4ee 0%,var(--csc-bg) 34%,#f8f5ef 100%);min-height:calc(100vh - 86px)}
.board-hero{
    position:relative;overflow:hidden;
    border-radius:26px;
    padding:32px 34px;
    background:
        linear-gradient(135deg,#fffdf9 0%,#f5eee2 100%);
    border:1px solid var(--csc-border);
    box-shadow:var(--csc-shadow-soft);
}
.board-hero:after{content:'';position:absolute;right:28px;bottom:-58px;width:180px;height:180px;border-radius:50%;background:rgba(201,150,62,.12);pointer-events:none}
.board-hero h1{font-weight:900;color:var(--csc-primary);letter-spacing:-.03em;font-size:1.85rem;margin-bottom:.35rem!important}
.board-hero p{max-width:760px;line-height:1.6}
.filter-bar{
    display:flex;
    gap:12px;
    flex-wrap:wrap;
    align-items:center;
    padding:16px;
    border:1px solid var(--csc-border);
    border-radius:20px;
    background:rgba(255,253,249,.82);
    box-shadow:var(--csc-shadow-soft);
    margin-bottom:20px!important;
}
.filter-bar .form-control,.filter-bar .form-select{min-height:44px;background:#fff;flex:0 1 auto}
.filter-bar form{display:flex;gap:10px;margin-left:auto;min-width:290px}
.filter-bar form .form-control{min-width:210px;flex:1}

/* Área de trabajo de la pizarra: evita encimados */
.board-workspace{
    display:grid;
    grid-template-columns:minmax(0,1fr) 348px;
    gap:22px;
    align-items:start;
    width:100%;
}
.kanban-panel{min-width:0;width:100%;overflow:hidden}
.activity-panel{min-width:0;position:sticky;top:106px}
.activity-card{padding:18px;border-radius:20px;max-height:calc(100vh - 126px);display:flex;flex-direction:column}
.activity-list{max-height:none;overflow:auto;padding-right:3px;min-height:0}
.activity-item{display:flex;gap:11px;padding:13px 0;border-bottom:1px solid #ede4d7}
.activity-item:last-child{border-bottom:0}

/* Kanban */
.kanban-board{
    display:flex;
    gap:22px;
    align-items:flex-start;
    overflow-x:auto;
    overflow-y:hidden;
    padding:4px 4px 28px;
    min-height:calc(100vh - 318px);
    scrollbar-width:thin;
    scrollbar-color:#bda069 #f2eadf;
}
.kanban-board::-webkit-scrollbar{height:12px}
.kanban-board::-webkit-scrollbar-track{background:#f2eadf;border-radius:999px}
.kanban-board::-webkit-scrollbar-thumb{background:#bda069;border-radius:999px;border:3px solid #f2eadf}
.kanban-column{
    width:332px;
    min-width:332px;
    max-height:calc(100vh - 318px);
    display:flex;flex-direction:column;
    background:#f7f2e9;
    border:1px solid #ded3c1;
    border-radius:22px;
    box-shadow:0 13px 28px rgba(35,59,54,.07);
}
.kanban-column-header{padding:18px 18px 16px;border-bottom:1px solid #ded3c1;display:flex;align-items:center;justify-content:space-between;gap:10px;background:rgba(255,253,249,.55);border-radius:22px 22px 0 0}
.kanban-column-header strong{color:#263d38;letter-spacing:-.01em}
.kanban-column-body{padding:16px;overflow:auto;min-height:290px;flex:1}
.kanban-card{
    background:#fffdf9;
    border:1px solid #e3d8c8;
    border-radius:18px;
    padding:16px 16px 15px;
    margin-bottom:14px;
    box-shadow:0 10px 22px rgba(35,59,54,.075);
    cursor:grab;transition:.16s ease;position:relative;overflow:hidden;
}
.kanban-card:before{content:'';position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,var(--csc-accent),var(--csc-primary-2))}
.kanban-card:hover{transform:translateY(-2px);box-shadow:0 16px 28px rgba(35,59,54,.10)}
.kanban-card:active{cursor:grabbing}
.kanban-card.dragging{opacity:.56;transform:rotate(1.5deg) scale(.99)}
.card-title-line{font-weight:900;margin-bottom:10px;padding-left:2px;color:#263d38;line-height:1.38}
.card-meta{font-size:.82rem;color:var(--csc-muted);display:flex;gap:8px;flex-wrap:wrap;line-height:1.55}
.drop-hover{outline:3px dashed rgba(201,150,62,.58);outline-offset:-8px;background:#fff4dd}
.overdue{border-color:#f1b5af;background:#fff8f7}
.overdue:before{background:linear-gradient(180deg,#e06f61,#b42318)}
.label-chip{display:inline-flex;align-items:center;gap:5px;border-radius:999px;padding:4px 10px;background:#fff4df;color:#765012;font-size:.72rem;margin:3px 3px 0 0;border:1px solid #ecd49e;font-weight:700}
.modal-content{border-radius:26px;border:0;box-shadow:0 28px 80px rgba(35,59,54,.24);overflow:hidden;background:#fffdf9}
.modal-header{background:#faf6ee;border-bottom:1px solid #eadfce}
.comment-box{background:#fffaf2;border:1px solid #e5d9c8;border-radius:16px;padding:12px;margin-bottom:10px}
.attachment-link{display:flex;align-items:center;gap:8px;padding:10px 12px;border:1px solid #e3d8c8;border-radius:14px;background:#fffdf9;margin-bottom:8px;color:var(--csc-text)}
.attachment-link:hover{background:#fff6e6;color:var(--csc-primary)}

/* Otros listados/tarjetas heredadas */
.card-soft a.d-block.border.rounded-4{border-color:#e3d8c8!important;padding:1rem!important;margin-bottom:.85rem!important;border-radius:16px!important;transition:.18s ease}
.card-soft a.d-block.border.rounded-4:hover,a.d-flex.border-bottom:hover{background:#fff8eb!important;transform:translateY(-1px)}

/* Ajustes responsivos */
@media (max-width:1500px){
    .board-workspace{grid-template-columns:minmax(0,1fr) 320px;gap:18px}
    .kanban-column{width:318px;min-width:318px}
}
@media (max-width:1280px){
    .board-workspace{grid-template-columns:1fr}
    .activity-panel{position:static;top:auto}
    .activity-card{max-height:430px}
    .kanban-board{min-height:540px}
    .kanban-column{max-height:540px}
}
@media (max-width:991px){
    .sidebar{transform:translateX(-110%);transition:.25s ease}
    .sidebar.show{transform:translateX(0)}
    .main-wrap{margin-left:0;width:100%}
    .content{padding:24px;max-width:none}
    .topbar{padding:0 18px;min-height:78px}
    .kanban-column{width:310px;min-width:310px}
    .notif-menu{width:330px}
    .filter-bar form{margin-left:0;width:100%}
}
@media (max-width:576px){
    .auth-body{padding:16px}
    .auth-card{padding:26px;border-radius:24px}
    .auth-logo h3{font-size:1.38rem}
    .content{padding:16px}
    .topbar{height:auto;min-height:72px}
    .board-hero{padding:24px 20px;border-radius:20px}
    .board-hero h1{font-size:1.45rem}
    .card-soft{border-radius:18px}
    .card-soft.p-4{padding:1.15rem!important}
    .metric-card{min-height:120px;padding:22px}
    .kanban-board{min-height:unset}
    .kanban-column{width:292px;min-width:292px;max-height:560px}
    .notif-menu{width:310px}
    .user-pill{padding:5px}
}

/* CSCBoard v5: espacio optimizado, personalización y diseño corporativo */
body.has-session{
    background-image:
        linear-gradient(135deg,rgba(250,248,243,.92),rgba(244,241,235,.86)),
        var(--session-bg-image),
        radial-gradient(circle at 14% 8%, rgba(201,150,62,.14), transparent 28%),
        radial-gradient(circle at 96% 8%, rgba(49,88,78,.12), transparent 30%);
    background-size:cover,cover,auto,auto;
    background-position:center,center,center,center;
    background-attachment:fixed,fixed,scroll,scroll;
}
.app-shell{
    background:linear-gradient(90deg,rgba(255,255,255,.36),rgba(255,255,255,.12));
}
.sidebar{
    background:
        linear-gradient(180deg,var(--csc-primary-3) 0%,var(--csc-primary) 52%,var(--csc-primary-3) 100%);
}
.side-nav a.active,
.side-nav a:hover{
    border-left-color:var(--csc-accent);
    background:rgba(255,255,255,.12);
}
.brand-logo-wrap{
    width:52px;height:52px;border-radius:16px;background:#fff;display:grid;place-items:center;overflow:hidden;box-shadow:0 12px 28px rgba(0,0,0,.18);border:1px solid rgba(255,255,255,.35);flex:0 0 auto;
}
.brand-logo-wrap img{width:100%;height:100%;object-fit:contain;padding:5px}
.main-wrap{width:calc(100% - var(--sidebar-width));}
.content{
    max-width:none;
    padding:clamp(24px,2.2vw,42px) clamp(28px,3.1vw,58px);
}
.content-wide{max-width:none;}
.topbar{padding-inline:clamp(22px,3vw,54px)}
.topbar-title strong{font-size:1.1rem}

.page-hero{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:24px;
    align-items:center;
    position:relative;
    overflow:hidden;
    border-radius:28px;
    padding:clamp(26px,2.8vw,42px);
    background:linear-gradient(135deg,rgba(255,253,249,.96),rgba(250,244,234,.92));
    border:1px solid var(--csc-border);
    box-shadow:var(--csc-shadow-soft);
}
.page-hero:after{content:'';position:absolute;right:-56px;bottom:-74px;width:230px;height:230px;border-radius:50%;background:color-mix(in srgb, var(--csc-primary) 10%, transparent);pointer-events:none}
.page-hero h1{font-size:clamp(1.75rem,2.3vw,2.55rem);font-weight:950;color:var(--csc-primary);letter-spacing:-.045em;margin:0 0 .4rem;line-height:1.04}
.page-hero p{font-size:1rem;color:var(--csc-muted);margin:0;max-width:820px;line-height:1.6}
.eyebrow{display:inline-flex;align-items:center;gap:.45rem;color:var(--csc-primary);background:color-mix(in srgb, var(--csc-primary) 8%, #fff);border:1px solid color-mix(in srgb, var(--csc-primary) 20%, #fff);padding:.45rem .7rem;border-radius:999px;font-weight:900;font-size:.76rem;letter-spacing:.06em;text-transform:uppercase;margin-bottom:12px}
.page-hero-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end;position:relative;z-index:1}

.metric-grid{display:grid;grid-template-columns:repeat(3,minmax(220px,1fr));gap:18px}
.metric-grid.two-metrics{grid-template-columns:repeat(2,minmax(260px,1fr))}
.dashboard-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,430px);gap:22px;align-items:start}
.dashboard-main,.dashboard-side{min-width:0}
.dashboard-side{position:sticky;top:106px}
.section-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px}
.catalog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:18px;align-items:stretch}
.catalog-grid.compact-grid{grid-template-columns:repeat(auto-fill,minmax(360px,1fr))}
.team-grid{grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}
.board-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}
.board-grid-lg{grid-template-columns:repeat(auto-fill,minmax(360px,1fr))}
.team-card,.board-card{display:flex!important;flex-direction:column;min-height:210px}
.board-card h4,.team-card h4,.board-card h5{font-weight:950;color:var(--csc-primary);letter-spacing:-.03em}
.card-stats{display:flex;gap:8px;flex-wrap:wrap;margin-top:auto}
.card-stats span{display:inline-flex;align-items:center;gap:.35rem;border-radius:999px;padding:.42rem .65rem;background:color-mix(in srgb,var(--csc-primary) 7%,#fff);border:1px solid color-mix(in srgb,var(--csc-primary) 15%,#fff);color:var(--csc-primary);font-weight:800;font-size:.78rem}
.mini-card{border:1px solid var(--csc-border);border-radius:18px;padding:1rem;background:rgba(255,253,249,.95);transition:.18s ease;color:var(--csc-text)}
.mini-card:hover{transform:translateY(-2px);box-shadow:var(--csc-shadow-soft);color:var(--csc-text);background:#fff}
.stack-list{display:grid;gap:10px}
.task-list{display:grid;gap:8px}
.task-row{display:flex;justify-content:space-between;align-items:center;gap:14px;border:1px solid transparent;border-bottom-color:#eee4d6;padding:14px 12px;border-radius:16px;color:var(--csc-text)}
.task-row:hover{border-color:var(--csc-border);background:#fffaf2;color:var(--csc-text)}
.dashboard-activity{max-height:calc(100vh - 128px)}
.dashboard-activity .activity-list{max-height:calc(100vh - 230px)}

/* Kanban: más espacio útil */
.board-content{padding-left:clamp(24px,2.4vw,44px);padding-right:clamp(24px,2.4vw,44px)}
.board-workspace{grid-template-columns:minmax(0,1fr) minmax(300px,360px);gap:22px}
.activity-panel{top:104px}
.kanban-board{gap:18px;min-height:calc(100vh - 286px)}
.kanban-column{width:340px;min-width:340px;max-height:calc(100vh - 286px)}
.filter-bar{align-items:stretch;display:grid;grid-template-columns:1.25fr repeat(3,minmax(180px,.8fr)) minmax(260px,.9fr);gap:10px}
.filter-bar .form-control,.filter-bar .form-select{max-width:none!important;width:100%}
.filter-bar form{margin-left:0!important;min-width:0!important;width:100%;display:flex}

/* Configuración */
.settings-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:22px;align-items:start}
.admin-settings-card{grid-column:1 / -1}
.settings-heading{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}
.theme-picker{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px}
.theme-option{cursor:pointer;border:1px solid var(--csc-border);border-radius:16px;background:#fffdf9;padding:12px 14px;display:flex;align-items:center;gap:10px;font-weight:800;transition:.16s ease}
.theme-option:hover{transform:translateY(-2px);box-shadow:var(--csc-shadow-soft)}
.theme-option input{accent-color:var(--csc-primary)}
.theme-dot{width:28px;height:28px;border-radius:50%;box-shadow:inset 0 0 0 2px rgba(255,255,255,.55),0 5px 12px rgba(0,0,0,.15)}
.preview-card{position:sticky;top:106px}
.session-preview{height:310px;border-radius:22px;border:1px solid var(--csc-border);overflow:hidden;display:grid;grid-template-columns:86px 1fr;background:linear-gradient(135deg,#fbf7ef,#eee7da);background-size:cover;background-position:center;box-shadow:inset 0 0 0 1px rgba(255,255,255,.4)}
.preview-sidebar{background:linear-gradient(180deg,var(--preview-color),color-mix(in srgb,var(--preview-color) 68%,#000));}
.preview-content{padding:20px;display:grid;gap:12px;align-content:start}
.preview-bar{height:34px;border-radius:14px;background:rgba(255,255,255,.85);border:1px solid rgba(255,255,255,.75)}
.preview-box{height:96px;border-radius:18px;background:rgba(255,255,255,.82);border:1px solid rgba(255,255,255,.7)}
.preview-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.preview-row span{height:62px;border-radius:16px;background:rgba(255,255,255,.8);border:1px solid rgba(255,255,255,.7)}
.logo-preview-box{height:130px;border-radius:22px;background:linear-gradient(135deg,var(--csc-primary),var(--csc-primary-2));display:grid;place-items:center;padding:18px;color:#fff;font-weight:950;font-size:2rem;box-shadow:var(--csc-shadow-soft)}
.logo-preview-box img{max-width:100%;max-height:100%;object-fit:contain;background:#fff;border-radius:16px;padding:10px}

/* Modal de bienvenida */
.welcome-modal{border-radius:30px!important;overflow:hidden}.welcome-panel{padding:42px;text-align:center;background:radial-gradient(circle at 50% 0%,color-mix(in srgb,var(--csc-primary) 12%,transparent),transparent 42%),linear-gradient(135deg,#fffdf9,#faf4ea)}
.welcome-icon{width:86px;height:86px;border-radius:28px;display:grid;place-items:center;margin:0 auto 18px;background:linear-gradient(135deg,var(--csc-primary),var(--csc-primary-2));color:#fff;font-size:2.2rem;box-shadow:0 18px 40px color-mix(in srgb,var(--csc-primary) 30%,transparent)}
.welcome-panel h3{font-weight:950;color:var(--csc-primary);letter-spacing:-.04em}.welcome-panel p{color:var(--csc-muted);max-width:480px;margin:0 auto 24px;line-height:1.65}

@media (max-width:1500px){
    .dashboard-layout{grid-template-columns:minmax(0,1fr) 380px}
    .kanban-column{width:324px;min-width:324px}
    .filter-bar{grid-template-columns:repeat(4,minmax(180px,1fr));}
    .filter-bar form{grid-column:1 / -1}
}
@media (max-width:1199px){
    .dashboard-layout,.settings-grid{grid-template-columns:1fr}.dashboard-side,.preview-card{position:static}.metric-grid,.metric-grid.two-metrics{grid-template-columns:repeat(2,minmax(220px,1fr))}.filter-bar{grid-template-columns:repeat(2,minmax(180px,1fr))}
}
@media (max-width:991px){
    .main-wrap{width:100%}.page-hero{grid-template-columns:1fr}.page-hero-actions{justify-content:flex-start}.content{padding:22px}.dashboard-side{position:static}.catalog-grid,.catalog-grid.compact-grid,.team-grid,.board-grid,.board-grid-lg{grid-template-columns:1fr}.filter-bar{grid-template-columns:1fr}.kanban-column{width:310px;min-width:310px}
}
@media (max-width:576px){
    .metric-grid,.metric-grid.two-metrics{grid-template-columns:1fr}.page-hero{padding:22px}.theme-picker{grid-template-columns:1fr}.session-preview{height:230px;grid-template-columns:60px 1fr}.welcome-panel{padding:28px}.task-row{align-items:flex-start;flex-direction:column}.task-row .text-end{text-align:left!important}
}

/* CSCBoard v6: logo institucional optimizado y vista de configuración más limpia */
.brand-with-logo{
    flex-direction:column;
    align-items:flex-start;
    gap:12px;
    padding:14px 12px 20px;
}
.brand-with-logo .brand-logo-wrap{
    width:100%;
    max-width:220px;
    height:82px;
    border-radius:20px;
    background:rgba(255,255,255,.96);
    display:grid;
    place-items:center;
    overflow:hidden;
    box-shadow:0 16px 32px rgba(0,0,0,.20);
    border:1px solid rgba(255,255,255,.50);
    flex:0 0 auto;
}
.brand-with-logo .brand-logo-wrap img{
    width:100%;
    height:100%;
    object-fit:contain;
    padding:10px 12px;
}
.brand-with-logo .brand-text{
    padding-left:4px;
}
.brand-with-logo .brand-text strong{
    font-size:1.18rem;
}
.brand-with-logo .brand-text small{
    font-size:.8rem;
}

.logo-admin-form{
    position:relative;
}
.logo-admin-layout{
    display:grid;
    grid-template-columns:minmax(260px,360px) minmax(0,1fr) minmax(220px,260px);
    gap:18px;
    align-items:stretch;
}
.logo-current-card,
.logo-upload-card,
.logo-actions-card{
    border:1px solid color-mix(in srgb,var(--csc-primary) 14%,#fff);
    background:linear-gradient(135deg,rgba(255,253,249,.94),rgba(255,255,255,.86));
    border-radius:22px;
    padding:18px;
    box-shadow:0 10px 22px rgba(31,41,39,.05);
}
.logo-current-card{
    display:flex;
    flex-direction:column;
    gap:10px;
}
.logo-current-label{
    display:inline-flex;
    align-items:center;
    width:max-content;
    border-radius:999px;
    padding:.35rem .58rem;
    background:color-mix(in srgb,var(--csc-primary) 8%,#fff);
    border:1px solid color-mix(in srgb,var(--csc-primary) 16%,#fff);
    color:var(--csc-primary);
    font-size:.76rem;
    font-weight:900;
    letter-spacing:.04em;
    text-transform:uppercase;
}
.logo-current-card small{
    color:var(--csc-muted);
    line-height:1.45;
}
.logo-preview-box.logo-preview-institutional{
    height:104px;
    max-width:100%;
    border-radius:18px;
    background:#fff;
    border:1px dashed color-mix(in srgb,var(--csc-primary) 24%,#fff);
    box-shadow:none;
    color:var(--csc-primary);
    padding:10px;
}
.logo-preview-box.logo-preview-institutional img{
    max-width:92%;
    max-height:82px;
    object-fit:contain;
    background:transparent;
    border-radius:0;
    padding:0;
}
.logo-upload-card{
    display:flex;
    flex-direction:column;
    justify-content:center;
}
.logo-actions-card{
    display:flex;
    flex-direction:column;
    justify-content:center;
}
.admin-settings-card{
    overflow:hidden;
}

.uploads-note{
    border-radius:18px;
    background:color-mix(in srgb,var(--csc-primary) 7%,#fff);
    border:1px solid color-mix(in srgb,var(--csc-primary) 15%,#fff);
    padding:14px 16px;
    color:var(--csc-muted);
    font-size:.88rem;
    line-height:1.55;
}

@media (max-width:1199px){
    .logo-admin-layout{grid-template-columns:1fr;}
    .logo-preview-box.logo-preview-institutional{max-width:380px;}
}
@media (max-width:991px){
    .brand-with-logo .brand-logo-wrap{max-width:190px;height:72px;}
}

/* CSCBoard v7: formularios centrados, modales operativos y módulo de usuarios */
.form-centered-content{
    min-height:calc(100vh - 86px);
    display:grid;
    place-items:start center;
    padding-top:clamp(34px,4.2vw,72px);
}
.entity-form-card{
    width:min(100%,980px);
    display:grid;
    grid-template-columns:minmax(280px,.82fr) minmax(0,1.18fr);
    overflow:hidden;
    background:rgba(255,253,249,.96);
}
.entity-form-aside{
    position:relative;
    min-height:100%;
    padding:clamp(28px,3vw,44px);
    background:
        radial-gradient(circle at 20% 16%, color-mix(in srgb,var(--csc-accent) 24%, transparent), transparent 34%),
        linear-gradient(145deg, color-mix(in srgb,var(--csc-primary) 96%, #000), color-mix(in srgb,var(--csc-primary-2) 86%, #000));
    color:#fff;
    overflow:hidden;
}
.entity-form-aside:after{
    content:'';
    position:absolute;
    right:-70px;bottom:-70px;
    width:210px;height:210px;border-radius:50%;
    background:rgba(255,255,255,.12);
}
.entity-form-aside .eyebrow{
    background:rgba(255,255,255,.14);
    border-color:rgba(255,255,255,.22);
    color:#fff;
}
.entity-form-aside h1{
    font-weight:950;
    letter-spacing:-.045em;
    margin:14px 0 10px;
    font-size:clamp(1.75rem,2.6vw,2.45rem);
}
.entity-form-aside p{color:rgba(255,255,255,.78);line-height:1.65;margin:0;max-width:360px}
.entity-form-icon{
    width:88px;height:88px;border-radius:28px;
    display:grid;place-items:center;
    margin-top:34px;
    background:rgba(255,255,255,.14);
    border:1px solid rgba(255,255,255,.22);
    color:#fff;
    font-size:2.2rem;
    position:relative;z-index:1;
}
.entity-form-body{padding:clamp(28px,3vw,46px);align-self:center;width:100%}
.color-inline-field{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    border:1px solid var(--csc-border);
    border-radius:18px;
    background:#fffdf9;
    padding:14px 16px;
}
.color-inline-field .form-control-color{width:62px;height:48px;padding:.3rem;flex:0 0 auto}
.entity-modal .modal-content{border-radius:28px;overflow:hidden;border:1px solid rgba(222,214,200,.9)}
.entity-modal-header{
    align-items:flex-start;
    padding:26px 28px;
    background:
        radial-gradient(circle at 0% 0%, color-mix(in srgb,var(--csc-primary) 10%, transparent), transparent 34%),
        linear-gradient(135deg,#fffdf9,#f7efe2);
}
.entity-modal-header .modal-title{font-size:1.45rem;font-weight:950;color:var(--csc-primary);letter-spacing:-.035em;margin:0}
.entity-modal-header p{color:var(--csc-muted);line-height:1.55;margin-top:6px}
.entity-modal-body{padding:28px}
.entity-modal-footer{padding:18px 28px;background:#fbf7ef;border-top:1px solid #eadfce}
.modal-note{display:flex;gap:8px;align-items:flex-start;border:1px solid color-mix(in srgb,var(--csc-primary) 16%,#fff);background:color-mix(in srgb,var(--csc-primary) 7%,#fff);color:var(--csc-muted);border-radius:16px;padding:12px 14px;font-size:.9rem;line-height:1.45}
.team-detail-hero{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:24px;
    align-items:center;
    border:1px solid var(--csc-border);
    border-radius:28px;
    padding:clamp(24px,2.6vw,38px);
    background:linear-gradient(135deg,rgba(255,253,249,.97),rgba(250,244,234,.92));
    box-shadow:var(--csc-shadow-soft);
    overflow:hidden;
    position:relative;
}
.team-detail-hero:after{content:'';position:absolute;right:-70px;bottom:-88px;width:230px;height:230px;border-radius:50%;background:color-mix(in srgb,var(--csc-primary) 9%, transparent)}
.team-detail-hero h1{font-size:clamp(1.65rem,2.3vw,2.4rem);font-weight:950;color:var(--csc-primary);letter-spacing:-.04em;margin:0 0 6px}
.team-detail-hero p{margin:0;color:var(--csc-muted);line-height:1.6;max-width:820px}.team-detail-hero .page-hero-actions{z-index:1}
.users-metric-grid{grid-template-columns:repeat(3,minmax(220px,1fr))}
.users-filter{display:grid;grid-template-columns:minmax(240px,340px) minmax(180px,220px) auto auto;gap:10px;align-items:center}
.users-table-wrap{border:1px solid var(--csc-border);border-radius:20px;overflow:auto;background:#fff}
.status-chip{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:.42rem .7rem;font-weight:900;font-size:.78rem;text-transform:capitalize;border:1px solid transparent}
.status-pendiente{background:#fff4dd;color:#855b13;border-color:#ead19a}.status-activo{background:#eaf8f0;color:#176641;border-color:#bfe7ce}.status-inactivo{background:#f7e9e7;color:#9c2f24;border-color:#efc8c2}
.inline-actions{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}.role-select{width:130px;min-height:34px;border-radius:12px;padding:.38rem .7rem}
.side-nav a i.bi-person-gear{font-size:1.1rem}
.brand-logo-wrap{background:rgba(255,255,255,.98)!important}
.brand-logo-wrap img{display:block}
@media (max-width:991px){
    .entity-form-card{grid-template-columns:1fr}.entity-form-aside{min-height:auto}.team-detail-hero{grid-template-columns:1fr}.users-filter{grid-template-columns:1fr;width:100%}.users-metric-grid{grid-template-columns:1fr}.form-centered-content{place-items:start stretch}.entity-form-card{width:100%}
}

/* CSCBoard v8: paneles minimizables, logo robusto y edición visual */
.brand-logo-wrap{position:relative;isolation:isolate;}
.brand-logo-wrap .brand-logo-fallback{
    position:absolute;inset:0;display:grid;place-items:center;
    color:var(--csc-primary);font-weight:950;font-size:1.18rem;letter-spacing:.04em;z-index:1;
}
.brand-logo-wrap img{position:relative;z-index:2;background:transparent;}
.brand-logo-wrap img.logo-load-error{display:none!important;}
.brand-with-logo .brand-logo-wrap{
    min-height:92px;
    background:linear-gradient(135deg,#fffdf9,#ffffff)!important;
}
.brand-with-logo .brand-logo-wrap img{
    padding:8px 10px;
    filter:drop-shadow(0 3px 7px rgba(0,0,0,.08));
}

.collapsible-card{position:relative;transition:.18s ease;}
.collapsible-card-head{
    display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;
}
.collapsible-card-head .section-title{margin-bottom:0;}
.collapsible-card-actions{display:flex;align-items:center;gap:8px;}
.panel-icon-btn{
    width:36px;height:36px;min-height:36px;padding:0;border-radius:12px;
    border:1px solid var(--csc-border);background:#fffaf1;color:var(--csc-primary);
    box-shadow:none;font-size:.95rem;
}
.panel-icon-btn:hover{background:var(--csc-primary);border-color:var(--csc-primary);color:#fff;transform:translateY(-1px)}
.collapsible-card.is-collapsed{padding-bottom:18px!important;}
.collapsible-card.is-collapsed .collapsible-card-body{display:none!important;}
.collapsible-card.is-collapsed .collapsible-card-head{margin-bottom:0;}
.collapsible-card.is-collapsed{max-height:86px;overflow:hidden;}

[data-drag-handle]{cursor:grab;user-select:none;}
.is-dragging-panel [data-drag-handle]{cursor:grabbing;}
.is-floating-panel{
    position:fixed!important;z-index:1060!important;width:min(360px,calc(100vw - 24px));
    max-height:calc(100vh - 18px);box-shadow:0 22px 70px rgba(31,41,39,.26)!important;
}
.is-floating-panel .activity-card{max-height:calc(100vh - 18px);}
.drag-hint{font-size:.75rem;color:var(--csc-muted);font-weight:800;display:inline-flex;align-items:center;gap:.35rem;}

.delete-board-summary{
    border:1px solid color-mix(in srgb,var(--csc-danger) 22%,#fff);
    background:linear-gradient(135deg,#fff8f7,#fffdf9);
    border-radius:20px;padding:16px 18px;
}
.approval-list{display:grid;gap:10px;}
.approval-row{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--csc-border);border-radius:16px;background:#fff;padding:12px 14px;}
.approval-row strong{color:#263d38;}
.approval-state{font-weight:900;border-radius:999px;padding:.38rem .62rem;font-size:.76rem;border:1px solid transparent;white-space:nowrap;}
.approval-state.ok{background:#eaf8f0;color:#176641;border-color:#bfe7ce;}
.approval-state.wait{background:#fff4dd;color:#855b13;border-color:#ead19a;}
.approval-state.no{background:#f7e9e7;color:#9c2f24;border-color:#efc8c2;}
.delete-progress{height:12px;border-radius:999px;background:#f0e6d9;overflow:hidden;}
.delete-progress span{display:block;height:100%;background:linear-gradient(90deg,var(--csc-primary),var(--csc-accent));border-radius:999px;}

.board-edit-preview{
    border:1px solid var(--csc-border);border-radius:22px;padding:18px;background:linear-gradient(135deg,#fffdf9,#fbf6ee);
}
.board-edit-preview-card{
    min-height:190px;border-radius:22px;padding:20px;border:1px solid color-mix(in srgb,var(--preview-board-color,#f4f7fb) 48%,#fff);
    background:linear-gradient(135deg,color-mix(in srgb,var(--preview-board-color,#f4f7fb) 18%,#fff),#fffdf9);
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.6);
}
.board-edit-preview-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:16px;}
.board-edit-preview-columns span{height:62px;border-radius:14px;background:rgba(255,255,255,.75);border:1px dashed color-mix(in srgb,var(--csc-primary) 16%,#fff);}

.user-edit-modal .modal-body{background:linear-gradient(135deg,#fffdf9,#fbf6ee);}
.user-edit-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
@media (max-width:768px){.user-edit-grid{grid-template-columns:1fr}.is-floating-panel{width:calc(100vw - 24px)!important}.collapsible-card-head{align-items:flex-start}.collapsible-card-actions{align-self:flex-start}}

/* CSCBoard v9: detalle de tarjeta y administración de etiquetas */
.filter-bar{grid-template-columns:1.15fr repeat(3,minmax(160px,.75fr)) auto minmax(260px,.9fr)}
.labels-manage-btn{white-space:nowrap;min-width:126px}
.label-chip{
    --label-color:#c9963e;
    background:color-mix(in srgb,var(--label-color) 13%,#fff)!important;
    border-color:color-mix(in srgb,var(--label-color) 42%,#fff)!important;
    color:color-mix(in srgb,var(--label-color) 78%,#1f2f2c)!important;
}
.label-chip:before{content:'';width:7px;height:7px;border-radius:50%;background:var(--label-color);box-shadow:0 0 0 2px rgba(255,255,255,.7)}

.card-detail-dialog{max-width:min(1180px,calc(100vw - 42px))}
.card-detail-modal .modal-body{padding:0;background:linear-gradient(135deg,#fffdf9,#fbf6ee)}
.card-detail-shell{padding:22px}
.card-detail-hero{
    display:flex;justify-content:space-between;align-items:flex-start;gap:18px;flex-wrap:wrap;
    border:1px solid var(--csc-border);border-radius:24px;padding:20px 22px;margin-bottom:18px;
    background:linear-gradient(135deg,#fff,#fff8ee);box-shadow:0 12px 28px rgba(35,59,54,.06);position:relative;overflow:hidden
}
.card-detail-hero:after{content:'';position:absolute;right:-54px;bottom:-66px;width:170px;height:170px;border-radius:50%;background:color-mix(in srgb,var(--csc-primary) 9%,transparent);pointer-events:none}
.card-detail-heading{position:relative;z-index:1;min-width:0}.card-detail-heading h3{font-weight:950;color:var(--csc-primary);letter-spacing:-.04em;margin:0 0 .35rem;line-height:1.08;font-size:clamp(1.35rem,2vw,2rem)}
.detail-status-group{display:flex;align-items:center;gap:8px;flex-wrap:wrap;position:relative;z-index:1}.detail-status-group .badge,.detail-status-group .status-chip{min-height:30px;display:inline-flex;align-items:center}
.card-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,360px);gap:18px;align-items:start}.card-detail-main,.detail-side-stack{min-width:0}.detail-side-stack{display:grid;gap:16px;position:sticky;top:12px}
.detail-form-card,.detail-comments-card,.detail-info-card{
    border:1px solid var(--csc-border);border-radius:22px;background:rgba(255,253,249,.96);padding:18px;box-shadow:0 12px 28px rgba(35,59,54,.055)
}
.detail-comments-card{margin-top:16px}.detail-section-title{display:flex;align-items:center;gap:.48rem;font-weight:950;color:#263d38;letter-spacing:-.02em;margin-bottom:14px;font-size:1rem}.detail-section-title i{color:var(--csc-primary)}
.detail-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.detail-form-grid > div:nth-last-child(-n+2){grid-column:span 1}.detail-form-grid .form-control,.detail-form-grid .form-select{min-width:0}
.detail-label-grid{display:flex;flex-wrap:wrap;gap:9px}.detail-label-option{
    --label-color:#c9963e;display:inline-flex;align-items:center;gap:8px;padding:9px 11px;border-radius:999px;
    border:1px solid color-mix(in srgb,var(--label-color) 34%,#fff);background:color-mix(in srgb,var(--label-color) 9%,#fff);font-weight:850;color:#354844;cursor:pointer;transition:.14s ease;user-select:none
}
.detail-label-option:hover{transform:translateY(-1px);box-shadow:0 9px 18px rgba(35,59,54,.08)}.detail-label-option input{accent-color:var(--label-color);margin:0}.detail-label-dot{width:12px;height:12px;border-radius:50%;background:var(--label-color);box-shadow:0 0 0 3px rgba(255,255,255,.78);flex:0 0 auto}.detail-actions-row{display:flex;justify-content:flex-end;margin-top:18px}
.detail-comment-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:start}.detail-comment-form textarea{min-height:92px}.detail-comments-list{display:grid;gap:10px;margin-top:14px}.detail-comment-box{margin-bottom:0;background:#fff;border-color:var(--csc-border)}
.detail-mini-row{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:12px 0;border-bottom:1px solid #eee4d6}.detail-mini-row:last-child{border-bottom:0}.detail-mini-row span{color:var(--csc-muted);font-weight:800}.detail-mini-row strong{text-align:right;color:#263d38}.detail-upload-form{display:grid;gap:10px}.detail-attachments-list{display:grid;gap:9px;margin-top:13px}.compact-empty{padding:22px 18px;border-radius:16px}

.labels-admin-body{background:linear-gradient(135deg,#fffdf9,#fbf6ee)}.label-create-card{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;align-items:end;border:1px solid var(--csc-border);background:#fff;border-radius:20px;padding:14px}.form-control-color{min-width:64px;width:72px;padding:.35rem}.label-admin-list{display:grid;gap:10px}.label-admin-row{--label-color:#c9963e;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;border:1px solid var(--csc-border);border-radius:18px;background:#fff;padding:12px}.label-admin-edit-form{display:grid;grid-template-columns:auto minmax(160px,1fr) auto auto;gap:10px;align-items:center;min-width:0}.label-admin-edit-form .form-control{min-width:0}

.create-card-body{background:linear-gradient(135deg,#fffdf9,#fbf6ee)}
@media (max-width:1199px){.filter-bar{grid-template-columns:repeat(2,minmax(180px,1fr))}.filter-bar form{grid-column:1 / -1}.labels-manage-btn{width:100%}.card-detail-grid{grid-template-columns:1fr}.detail-side-stack{position:static}.detail-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:768px){.card-detail-shell{padding:14px}.card-detail-dialog{max-width:calc(100vw - 16px);margin:.5rem auto}.card-detail-hero{padding:16px}.detail-form-grid,.label-create-card,.label-admin-row,.label-admin-edit-form,.detail-comment-form{grid-template-columns:1fr}.detail-actions-row{justify-content:stretch}.detail-actions-row .btn{width:100%}.detail-mini-row strong{text-align:left}.detail-mini-row{flex-direction:column}.label-admin-row form:last-child .btn{width:100%}}
.status-proceso{background:#e8f2ff;color:#1d4d8f;border-color:#bfd9ff}.status-completada{background:#eaf8f0;color:#176641;border-color:#bfe7ce}.status-archivada{background:#f1eee8;color:#6f6255;border-color:#ded3c1}

/* CSCBoard v10: pizarra sin scroll horizontal, columnas editables/movibles y paneles flotantes */
.board-content .board-workspace{
    display:block!important;
    width:100%;
}
.board-content .kanban-panel{
    width:100%;
    overflow:visible!important;
}
.board-content .kanban-board{
    display:grid!important;
    grid-template-columns:repeat(auto-fit,minmax(255px,1fr));
    gap:16px!important;
    overflow-x:visible!important;
    overflow-y:visible!important;
    padding:4px 0 18px!important;
    min-height:calc(100vh - 292px);
    align-items:start;
}
.board-content .kanban-board::-webkit-scrollbar{display:none!important;}
.board-content .kanban-column{
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    max-height:calc(100vh - 292px);
    min-height:260px;
}
.kanban-column.column-dragging{
    opacity:.52;
    transform:scale(.985);
    outline:2px dashed color-mix(in srgb,var(--csc-primary) 48%,#fff);
}
.kanban-column-header{
    cursor:grab;
}
.kanban-column-header:active{cursor:grabbing;}
.column-title-area{display:flex;align-items:center;gap:8px;min-width:0;}
.column-title-text{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.column-drag-icon{display:inline-grid;place-items:center;width:22px;height:28px;border-radius:9px;color:var(--csc-muted);background:rgba(255,255,255,.52);border:1px solid rgba(222,211,193,.9);flex:0 0 auto;}
.column-actions{display:flex;align-items:center;gap:6px;flex:0 0 auto;}
.column-edit-form{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto auto;
    gap:8px;
    padding:10px 12px;
    border-bottom:1px solid #ded3c1;
    background:rgba(255,253,249,.85);
}
.column-edit-form.d-none{display:none!important;}
.column-edit-form .form-control{min-width:0;background:#fff;}
.board-content .activity-panel{
    position:fixed!important;
    right:24px;
    bottom:24px;
    top:auto!important;
    width:min(360px,calc(100vw - 48px));
    z-index:1040;
}
.board-content .activity-panel.is-floating-panel{right:auto;bottom:auto;}
.board-content .activity-panel .activity-card{max-height:min(72vh,620px);}
.board-content .activity-panel .activity-list{max-height:calc(min(72vh,620px) - 86px);}

.dashboard-overlay-layout{
    display:block!important;
    position:relative;
}
.dashboard-overlay-layout .dashboard-main{
    width:100%;
    min-width:0;
}
.dashboard-floating-dock{
    position:fixed!important;
    right:26px;
    top:calc(92px + 1rem);
    width:min(360px,calc(100vw - 48px));
    z-index:1036;
    display:grid;
    gap:14px;
    pointer-events:none;
}
.dashboard-floating-dock .dashboard-floating-card{
    pointer-events:auto;
    margin-bottom:0!important;
    box-shadow:0 22px 70px rgba(31,41,39,.16);
    backdrop-filter:blur(12px);
}
.dashboard-floating-card.is-floating-panel{
    pointer-events:auto;
}
.dashboard-floating-card .collapsible-card-head{margin-bottom:12px;}
.dashboard-floating-card.is-collapsed{max-height:74px;}
.dashboard-main > .card-soft{
    padding-right:clamp(1rem,2vw,1.75rem)!important;
}
.dashboard-main .board-grid{
    grid-template-columns:repeat(auto-fill,minmax(280px,1fr));
}
.dashboard-main .task-list{
    gap:10px;
}

@media (max-width:1500px){
    .board-content .kanban-board{grid-template-columns:repeat(auto-fit,minmax(235px,1fr));}
}
@media (max-width:1199px){
    .dashboard-floating-dock{position:static!important;width:100%;display:grid;grid-template-columns:repeat(2,minmax(260px,1fr));margin-top:18px;}
    .dashboard-floating-dock .dashboard-floating-card{position:relative!important;left:auto!important;top:auto!important;width:auto!important;}
    .board-content .activity-panel{position:static!important;width:100%;margin-top:18px;}
    .board-content .activity-panel.is-floating-panel{position:fixed!important;}
}
@media (max-width:768px){
    .board-content .kanban-board{grid-template-columns:1fr;min-height:unset;}
    .board-content .kanban-column{max-height:none;}
    .dashboard-floating-dock{grid-template-columns:1fr;}
}

/* CSCBoard v11: login profesional, recuperación SMTP y logo institucional robusto */
.brand-with-logo .brand-logo-wrap{
    height:98px;
    min-height:98px;
    background:#fff!important;
    border:1px solid rgba(255,255,255,.72);
    box-shadow:0 18px 34px rgba(0,0,0,.22), inset 0 0 0 1px rgba(35,59,54,.05);
}
.brand-with-logo .brand-logo-wrap img{
    width:100%;
    height:100%;
    object-fit:contain;
    padding:8px 12px;
    opacity:1!important;
    visibility:visible!important;
}
.brand-logo-wrap .brand-logo-fallback{font-size:1.45rem;color:var(--csc-primary);}
.brand-logo-wrap img:not([src]),
.brand-logo-wrap img[src=""]{display:none!important;}

.auth-body-modern{
    min-height:100vh;
    display:grid;
    place-items:center;
    padding:clamp(18px,3vw,42px);
    background:
        radial-gradient(circle at 13% 13%,rgba(225,189,114,.30),transparent 28%),
        radial-gradient(circle at 88% 15%,rgba(255,255,255,.16),transparent 24%),
        linear-gradient(135deg,#102622 0%,#233b36 46%,#172f2b 100%);
    overflow:auto;
}
.auth-layout{
    width:min(1120px,100%);
    display:grid;
    grid-template-columns:minmax(0,1.05fr) minmax(390px,.72fr);
    gap:0;
    border-radius:34px;
    overflow:hidden;
    box-shadow:0 42px 110px rgba(5,18,16,.42);
    border:1px solid rgba(255,255,255,.20);
    background:rgba(255,253,249,.96);
}
.auth-showcase{
    position:relative;
    min-height:650px;
    padding:clamp(34px,4.4vw,64px);
    display:flex;
    flex-direction:column;
    justify-content:flex-end;
    overflow:hidden;
    color:#fff;
    background:
        linear-gradient(135deg,rgba(16,38,34,.92),rgba(35,59,54,.78)),
        radial-gradient(circle at 18% 8%,rgba(225,189,114,.30),transparent 35%),
        linear-gradient(135deg,#1b3833,#102622);
}
.auth-showcase:before{
    content:'';
    position:absolute;
    inset:0;
    background:
        linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px),
        linear-gradient(180deg,rgba(255,255,255,.04) 1px,transparent 1px);
    background-size:38px 38px;
    mask-image:linear-gradient(180deg,rgba(0,0,0,.58),rgba(0,0,0,.12));
    pointer-events:none;
}
.auth-showcase:after{
    content:'';
    position:absolute;
    right:-110px;
    top:-90px;
    width:340px;
    height:340px;
    border-radius:50%;
    background:rgba(225,189,114,.16);
    border:1px solid rgba(255,255,255,.14);
}
.auth-showcase-logo{
    position:absolute;
    top:38px;
    left:38px;
    width:178px;
    height:86px;
    border-radius:24px;
    display:grid;
    place-items:center;
    background:rgba(255,255,255,.96);
    box-shadow:0 18px 36px rgba(0,0,0,.18);
    padding:10px 14px;
    color:#233b36;
    font-weight:950;
    font-size:1.7rem;
    z-index:1;
}
.auth-showcase-logo img{max-width:100%;max-height:100%;object-fit:contain;display:block;}
.auth-kicker{
    position:relative;
    z-index:1;
    width:max-content;
    display:inline-flex;
    align-items:center;
    gap:.48rem;
    padding:.48rem .76rem;
    border-radius:999px;
    background:rgba(255,255,255,.12);
    border:1px solid rgba(255,255,255,.18);
    color:#ffe8bb;
    font-size:.78rem;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.07em;
    margin-bottom:18px;
}
.auth-showcase h1{
    position:relative;
    z-index:1;
    max-width:680px;
    font-size:clamp(2.25rem,4.4vw,4.25rem);
    line-height:.98;
    font-weight:950;
    letter-spacing:-.06em;
    margin:0 0 18px;
}
.auth-showcase p{
    position:relative;
    z-index:1;
    max-width:610px;
    color:rgba(255,255,255,.80);
    font-size:1.05rem;
    line-height:1.68;
    margin:0;
}
.auth-benefits{
    position:relative;
    z-index:1;
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin-top:28px;
}
.auth-benefits span{
    display:inline-flex;
    align-items:center;
    gap:.45rem;
    border:1px solid rgba(255,255,255,.18);
    background:rgba(255,255,255,.10);
    color:#fff;
    border-radius:999px;
    padding:.56rem .8rem;
    font-weight:800;
    font-size:.86rem;
}
.auth-card-modern{
    width:100%;
    max-width:none;
    min-height:650px;
    border-radius:0;
    box-shadow:none;
    border:0;
    background:linear-gradient(180deg,#fffdf9,#faf5ec);
    padding:clamp(34px,4vw,58px);
    display:flex;
    flex-direction:column;
    justify-content:center;
}
.auth-card-modern:before{display:none;}
.auth-logo-centered{
    margin-bottom:26px;
}
.auth-logo-centered .logo-mark{
    width:62px;
    height:62px;
    border-radius:22px;
    font-size:1.35rem;
}
.auth-logo-centered h3{
    font-size:1.9rem;
}
.auth-form-stack{
    display:grid;
    gap:18px;
}
.input-icon-wrap{
    position:relative;
}
.input-icon-wrap > i{
    position:absolute;
    left:16px;
    top:50%;
    transform:translateY(-50%);
    color:var(--csc-muted);
    font-size:1rem;
    z-index:2;
}
.input-icon-wrap .form-control{
    padding-left:46px;
    min-height:54px;
    border-radius:16px;
    background:#fff;
}
.auth-forgot{
    font-size:.86rem;
    font-weight:800;
    color:var(--csc-primary);
}
.auth-links-row{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:7px 10px;
    margin-top:22px;
    color:var(--csc-muted);
    font-size:.92rem;
}
.auth-links-row a{font-weight:900;display:inline-flex;align-items:center;gap:.35rem;}
.auth-demo-box{
    margin-top:22px;
    display:flex;
    align-items:flex-start;
    gap:10px;
    border:1px solid #eeddb9;
    background:#fff6e4;
    color:#6f511c;
    border-radius:16px;
    padding:12px 14px;
    font-size:.88rem;
    line-height:1.45;
}
.auth-demo-box i{font-size:1rem;margin-top:1px;}

@media (max-width:991px){
    .auth-layout{grid-template-columns:1fr;border-radius:28px;}
    .auth-showcase{min-height:auto;padding:118px 30px 34px;}
    .auth-showcase h1{font-size:2.25rem;}
    .auth-showcase-logo{top:24px;left:24px;width:150px;height:72px;}
    .auth-card-modern{min-height:auto;padding:32px 26px 34px;}
}
@media (max-width:576px){
    .auth-body-modern{padding:12px;}
    .auth-layout{border-radius:24px;}
    .auth-showcase{padding:104px 22px 28px;}
    .auth-showcase-logo{width:132px;height:66px;border-radius:20px;}
    .auth-benefits{display:grid;}
    .auth-card-modern{padding:28px 20px;}
    .auth-logo-centered{align-items:flex-start;}
}

/* CSCBoard v12: logo, autenticación, edición modal y alertas corporativas */
.btn-danger{
    border-color:var(--csc-danger);
    background:linear-gradient(135deg,#9f241c,#c0382e);
    color:#fff;
    box-shadow:0 11px 24px rgba(180,35,24,.20);
}
.btn-danger:hover,.btn-danger:focus{background:linear-gradient(135deg,#b42318,#d4493f);border-color:#b42318;color:#fff;transform:translateY(-1px)}

.brand-with-logo{
    align-items:stretch;
    padding:12px 10px 18px;
    gap:12px;
}
.brand-with-logo .brand-logo-wrap{
    width:100%;
    max-width:none;
    height:108px;
    min-height:108px;
    border-radius:22px;
    background:linear-gradient(135deg,#ffffff,#fffaf1)!important;
    border:1px solid rgba(255,255,255,.76);
    box-shadow:0 18px 38px rgba(0,0,0,.24), inset 0 0 0 1px rgba(35,59,54,.05);
    overflow:hidden;
    display:grid;
    place-items:center;
}
.brand-with-logo .brand-logo-wrap img{
    display:block;
    width:100%;
    height:100%;
    max-width:100%;
    max-height:100%;
    object-fit:contain;
    object-position:center;
    padding:12px 16px;
    background:transparent!important;
    filter:drop-shadow(0 4px 8px rgba(20,43,39,.10));
}
.brand-with-logo .brand-text{
    padding:0 4px;
    line-height:1.1;
}
.brand-with-logo .brand-text strong{font-size:1.18rem;letter-spacing:-.03em;}
.brand-with-logo .brand-text small{font-size:.76rem;margin-top:5px;}
.brand-logo-wrap img.logo-load-error + .brand-logo-fallback,
.brand-logo-wrap:has(img.logo-load-error) .brand-logo-fallback{opacity:1;}

.auth-body-modern{
    min-height:100vh;
    min-height:100dvh;
    display:flex!important;
    align-items:center;
    justify-content:center;
    padding:clamp(18px,4vh,44px) clamp(16px,3vw,42px);
}
.auth-layout{
    width:min(1120px,100%);
    min-height:min(650px,calc(100dvh - 56px));
    margin:auto;
}
.auth-layout-register{width:min(1040px,100%)}
.auth-showcase{
    min-height:unset;
    height:auto;
}
.auth-card-modern{
    min-height:unset;
}
.auth-logo-image-box{
    width:218px;
    height:96px;
    padding:12px 18px;
    border-radius:26px;
}
.auth-logo-image-box img{
    width:100%;
    height:100%;
    max-width:100%;
    max-height:100%;
    object-fit:contain;
    object-position:center;
    filter:drop-shadow(0 5px 10px rgba(0,0,0,.10));
}
.auth-card-modern .csc-flash-stack{margin:0 0 18px;}
.auth-card-modern .csc-alert{box-shadow:0 14px 32px rgba(35,59,54,.10);}
.auth-card-modern .form-label{font-size:.9rem;}
.auth-card-modern .input-icon-wrap .form-control{background:#fffdf9;}

.csc-flash-stack{
    display:grid;
    gap:12px;
    margin-bottom:18px;
}
.csc-alert{
    --alert-tone:var(--csc-primary);
    position:relative;
    display:grid;
    grid-template-columns:auto minmax(0,1fr) auto;
    gap:12px;
    align-items:flex-start;
    padding:14px 14px;
    border-radius:18px;
    background:linear-gradient(135deg,#fffdf9,#fff8ee);
    border:1px solid color-mix(in srgb,var(--alert-tone) 24%,#fff);
    box-shadow:0 18px 44px rgba(35,59,54,.10);
    overflow:hidden;
}
.csc-alert:before{
    content:'';
    position:absolute;
    inset:0 auto 0 0;
    width:5px;
    background:var(--alert-tone);
}
.csc-alert-icon{
    width:34px;height:34px;border-radius:13px;
    display:grid;place-items:center;
    background:color-mix(in srgb,var(--alert-tone) 12%,#fff);
    color:var(--alert-tone);
    position:relative;
    z-index:1;
}
.csc-alert-body{font-weight:750;color:#2f403c;line-height:1.45;padding-top:5px;}
.csc-alert-close{
    width:32px;height:32px;border:0;border-radius:12px;background:rgba(255,255,255,.72);color:var(--csc-muted);
    display:grid;place-items:center;transition:.16s ease;
}
.csc-alert-close:hover{background:#fff;color:var(--csc-primary);}
.csc-alert-success{--alert-tone:var(--csc-success)}
.csc-alert-danger{--alert-tone:var(--csc-danger)}
.csc-alert-warning{--alert-tone:var(--csc-warning)}
.csc-alert-info{--alert-tone:var(--csc-info)}

.csc-confirm-modal .modal-content{
    border:0;
    background:transparent;
    box-shadow:none;
}
.csc-confirm-panel{
    position:relative;
    padding:34px 30px 28px;
    text-align:center;
    background:linear-gradient(135deg,#fffdf9,#faf2e5);
    border:1px solid rgba(222,214,200,.95);
    border-radius:30px;
    box-shadow:0 32px 90px rgba(7,22,20,.30);
    overflow:hidden;
}
.csc-confirm-panel:before{
    content:'';
    position:absolute;
    right:-70px;top:-80px;
    width:190px;height:190px;border-radius:50%;
    background:color-mix(in srgb,var(--csc-accent) 18%,transparent);
}
.csc-confirm-close{
    position:absolute;right:16px;top:14px;width:38px;height:38px;border:0;border-radius:14px;background:#fff;color:var(--csc-muted);
    display:grid;place-items:center;z-index:1;
}
.csc-confirm-icon{
    width:74px;height:74px;border-radius:26px;margin:0 auto 18px;
    display:grid;place-items:center;
    background:linear-gradient(135deg,var(--csc-primary),var(--csc-primary-2));
    color:#fff;font-size:2rem;
    box-shadow:0 18px 35px rgba(35,59,54,.24);
    position:relative;z-index:1;
}
.csc-confirm-title{font-size:1.35rem;font-weight:950;color:var(--csc-primary);letter-spacing:-.035em;margin:0 0 9px;position:relative;z-index:1;}
.csc-confirm-message{color:#596965;line-height:1.62;margin:0 auto 24px;max-width:420px;position:relative;z-index:1;}
.csc-confirm-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;position:relative;z-index:1;}

.team-edit-preview{
    display:flex;
    align-items:center;
    gap:14px;
    border:1px solid var(--csc-border);
    background:linear-gradient(135deg,#fff,#fff8eb);
    border-radius:20px;
    padding:16px;
}
.team-edit-avatar{
    width:56px;height:56px;border-radius:18px;
    display:grid;place-items:center;
    background:linear-gradient(135deg,var(--csc-primary),var(--csc-primary-2));
    color:#fff;font-size:1.45rem;
    box-shadow:0 14px 28px rgba(35,59,54,.20);
    flex:0 0 auto;
}
.team-edit-modal-page{min-height:calc(100vh - 86px);}
.team-edit-modal .modal-content{border-radius:30px;}

@media (max-width:991px){
    .auth-layout{min-height:auto;}
    .auth-logo-image-box{width:178px;height:82px;}
    .brand-with-logo .brand-logo-wrap{height:92px;min-height:92px;}
}
@media (max-width:576px){
    .auth-logo-image-box{width:150px;height:72px;}
    .csc-confirm-actions .btn{width:100%;}
    .csc-alert{grid-template-columns:auto 1fr;}
    .csc-alert-close{grid-column:2;justify-self:end;margin-top:-6px;}
}

/* CSCBoard v13: logo limpio, auth centrado y eliminación controlada de equipos */
.brand-with-logo{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
    align-items:center!important;
    padding:14px 10px 18px!important;
}
.brand-with-logo .brand-logo-wrap{
    width:100%!important;
    height:118px!important;
    min-height:118px!important;
    border-radius:24px!important;
    background:#ffffff!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    padding:12px!important;
    overflow:hidden!important;
    box-shadow:0 18px 34px rgba(0,0,0,.18), inset 0 0 0 1px rgba(35,59,54,.06)!important;
}
.brand-with-logo .brand-logo-wrap.has-logo .brand-logo-fallback{display:none!important;opacity:0!important;visibility:hidden!important;}
.brand-with-logo .brand-logo-wrap img{
    display:block!important;
    width:100%!important;
    height:100%!important;
    object-fit:contain!important;
    object-position:center center!important;
    padding:0!important;
    margin:0!important;
    background:#fff!important;
    opacity:1!important;
    visibility:visible!important;
    filter:drop-shadow(0 4px 8px rgba(20,43,39,.10));
}
.brand-with-logo .brand-text{text-align:left!important;padding:0 4px!important;}
.brand-with-logo .brand-text strong{font-size:1.08rem!important;}
.brand-with-logo .brand-text small{font-size:.74rem!important;color:rgba(255,255,255,.72)!important;}

.auth-body-modern{min-height:100vh!important;min-height:100dvh!important;display:flex!important;align-items:center!important;justify-content:center!important;}
.auth-layout{
    width:min(1120px,calc(100vw - 48px))!important;
    min-height:min(620px,calc(100dvh - 64px))!important;
    margin:auto!important;
    align-self:center!important;
}
.auth-layout-register{width:min(1040px,calc(100vw - 48px))!important;}
.auth-showcase{
    padding-top:168px!important;
    justify-content:center!important;
}
.auth-showcase-logo.auth-logo-image-box{
    top:34px!important;
    left:34px!important;
    width:230px!important;
    height:106px!important;
    padding:12px 16px!important;
    background:#fff!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    overflow:hidden!important;
    z-index:4!important;
}
.auth-showcase-logo.auth-logo-image-box img{
    width:100%!important;
    height:100%!important;
    object-fit:contain!important;
    object-position:center!important;
    display:block!important;
    background:#fff!important;
    padding:0!important;
    margin:0!important;
}
.auth-showcase-logo.auth-logo-image-box span{display:grid;place-items:center;width:100%;height:100%;}
.auth-showcase h1{font-size:clamp(2.05rem,3.7vw,3.85rem)!important;max-width:680px;}
.auth-card-modern{display:flex!important;justify-content:center!important;}

.delete-status-pill{
    width:max-content;
    max-width:100%;
    display:inline-flex;
    align-items:center;
    gap:.45rem;
    padding:.44rem .7rem;
    border-radius:999px;
    border:1px solid #ecd49e;
    background:#fff4de;
    color:#7a4d10;
    font-size:.78rem;
    font-weight:900;
}
.team-card-pending-delete{border-color:#ecd49e!important;box-shadow:0 14px 34px rgba(183,121,31,.13)!important;}
.delete-approval-modal .modal-content{border-radius:28px;overflow:hidden;}
.delete-approval-header{background:linear-gradient(135deg,#fff7e8,#fffdf9)!important;}
.delete-target-card{
    display:flex;align-items:center;gap:14px;
    padding:16px;
    border:1px solid var(--csc-border);
    background:#fffdf9;
    border-radius:18px;
}
.delete-target-icon{
    width:52px;height:52px;border-radius:17px;
    display:grid;place-items:center;
    background:linear-gradient(135deg,#fff4df,#f5e3bd);
    color:var(--csc-primary);
    font-size:1.35rem;
    flex:0 0 auto;
}
.approval-progress .progress{height:12px;border-radius:999px;background:#f1e6d6;overflow:hidden;}
.approval-progress .progress-bar{background:linear-gradient(135deg,var(--csc-primary),var(--csc-accent));}
.approval-list{display:grid;gap:10px;}
.approval-row{
    display:flex;align-items:center;justify-content:space-between;gap:12px;
    padding:12px 14px;
    border-radius:16px;
    border:1px solid var(--csc-border);
    background:#fffaf1;
}
.approval-badge{border-radius:999px;padding:.35rem .58rem;font-size:.74rem;font-weight:900;text-transform:capitalize;border:1px solid transparent;}
.approval-aprobado{background:#eaf8f0;color:#176641;border-color:#bfe7ce;}
.approval-rechazado{background:#f7e9e7;color:#9c2f24;border-color:#efc8c2;}
.approval-pendiente{background:#fff4dd;color:#855b13;border-color:#ead19a;}

@media (max-width:991px){
    .auth-layout,.auth-layout-register{width:min(100%,calc(100vw - 24px))!important;}
    .auth-showcase{padding-top:144px!important;}
    .auth-showcase-logo.auth-logo-image-box{width:190px!important;height:90px!important;top:24px!important;left:24px!important;}
    .brand-with-logo .brand-logo-wrap{height:104px!important;min-height:104px!important;}
}
@media (max-width:576px){
    .auth-showcase{padding-top:124px!important;}
    .auth-showcase-logo.auth-logo-image-box{width:158px!important;height:78px!important;}
    .approval-row{align-items:flex-start;flex-direction:column;}
}

.brand-with-logo .brand-logo-wrap.logo-error .brand-logo-fallback{display:grid!important;opacity:1!important;visibility:visible!important;}
.brand-with-logo .brand-logo-wrap.logo-error img{display:none!important;}
