@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Franklin:wght@600;700;800&display=swap');
:root{--brand:#0752a3;--brand-dark:#031e4c;--brand-soft:#eaf2fc;--ink:#031e4c;--ink-2:#042a56;--cream:#f7f9fc;--yellow:#da960c;--line:#d7d9df;--bs-body-font-family:'DM Sans',Arial,sans-serif;--bs-body-font-size:1rem;--bs-body-color:var(--ink);--bs-primary:var(--brand);--bs-primary-rgb:7,82,163}
body{min-height:100vh;background:var(--cream);line-height:1.55}h1,h2,h3,h4,h5,h6{font-family:'Libre Franklin',Arial,sans-serif;letter-spacing:-.025em}a{text-decoration:none}.brand-link{color:var(--brand)}.brand-link:hover{color:var(--brand-dark)}
.btn{--bs-btn-font-weight:700;--bs-btn-border-radius:.7rem}.btn-brand{--bs-btn-color:#fff;--bs-btn-bg:var(--brand);--bs-btn-border-color:var(--brand);--bs-btn-hover-color:#fff;--bs-btn-hover-bg:var(--brand-dark);--bs-btn-hover-border-color:var(--brand-dark);--bs-btn-active-color:#fff;--bs-btn-active-bg:var(--brand-dark);box-shadow:0 8px 20px rgba(7,82,163,.18)}.form-label{font-size:.95rem;font-weight:700;color:#354b6e}.form-control,.form-select{min-height:48px;border-color:#d7dadd;border-radius:.75rem;padding:.65rem .85rem;font-size:1rem}.form-control:focus,.form-select:focus{border-color:var(--brand);box-shadow:0 0 0 .25rem rgba(7,82,163,.13)}textarea.form-control{min-height:125px}.form-text{font-size:.875rem}.eyebrow{display:inline-flex;align-items:center;gap:.55rem;color:var(--brand);font-size:.78rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.eyebrow:before{content:'';width:1.25rem;height:2px;background:var(--yellow)}
/* Login */
.auth-body{background:#fcf9f4}.auth-shell{min-height:100vh;display:grid;grid-template-columns:1.08fr .92fr}.auth-brand{position:relative;align-items:center;overflow:hidden;padding:clamp(3.5rem,8vw,7.5rem);color:#fff;background:linear-gradient(135deg,rgba(3,30,76,.97),rgba(7,82,163,.9)),url('https://images.unsplash.com/photo-1509062522246-3755977927d7?auto=format&fit=crop&w=1600&q=85') center/cover}.auth-brand:after{content:'';position:absolute;width:240px;height:240px;right:-70px;top:-70px;border:30px solid rgba(218,150,12,.18);border-radius:50%}.brand-content{position:relative;z-index:1;max-width:650px}.brand-content h1{font-size:clamp(2.8rem,5.2vw,4.7rem);line-height:1.04;margin:1.2rem 0}.brand-content h1 em{font-family:Georgia,serif;font-weight:400;color:#e6b960}.brand-content p{font-size:1.15rem;line-height:1.75;color:#d7e2e7}.benefit-pill{padding:.65rem .85rem;border:1px solid rgba(255,255,255,.18);border-radius:99px;background:rgba(255,255,255,.08);font-size:.88rem}.login-panel{display:grid;place-items:center;padding:2rem;background:radial-gradient(circle at 100% 0,#e8f1fb 0,transparent 31%),#fcf9f4}.login-card{width:min(470px,100%);border-radius:1.5rem!important;box-shadow:0 24px 70px rgba(3,30,76,.14)}.mini-logo{display:flex;align-items:center;gap:.8rem}.mini-logo img{width:58px;height:58px;object-fit:cover;border-radius:50%;box-shadow:0 6px 18px rgba(3,30,76,.14)}.mini-logo b,.mini-logo small{display:block}.mini-logo b{font-size:1.1rem}.mini-logo small{font-size:.75rem;color:#788890;letter-spacing:.12em}.login-card h2{font-size:2rem}.access-tabs{background:var(--brand-soft);border-radius:.8rem}.access-tabs .nav-link{color:#666;font-weight:700;border-radius:.6rem}.access-tabs .nav-link.active{color:var(--brand);background:#fff;box-shadow:0 4px 14px rgba(3,30,76,.12)}
/* Panel */
.app-body{padding-left:280px;background:linear-gradient(145deg,#f7f9fc,#eef3fa)}.sidebar{position:fixed;inset:0 auto 0 0;width:280px;padding:1.75rem 1.35rem;color:#d3e0e5;background:linear-gradient(180deg,var(--ink),#042a56);box-shadow:12px 0 40px rgba(3,30,76,.08)}.sidebar .offcanvas-body{overflow-y:auto}.app-logo{display:flex;align-items:center;gap:.75rem;margin-bottom:2.5rem;padding:.2rem .35rem;color:#fff}.app-logo:hover{color:#fff}.app-logo img{width:54px;height:54px;object-fit:cover;border-radius:50%;background:#fff}.app-logo b,.app-logo small{display:block}.app-logo b{font-size:1.08rem}.app-logo small{margin-top:.15rem;color:#9db0b9;font-size:.7rem;letter-spacing:.12em}.sidebar .nav-link{display:flex;gap:.65rem;align-items:center;padding:.8rem .9rem;color:#d3e0e5;font-weight:700;border-radius:.7rem}.sidebar .nav-link:hover,.sidebar .nav-link.active{color:#fff;background:rgba(255,255,255,.1)}.sidebar .nav-link.active{box-shadow:inset 3px 0 var(--yellow)}.workspace{min-height:100vh}.app-header{position:sticky;top:0;z-index:100;min-height:94px;padding:1rem clamp(1.25rem,4vw,3rem);display:flex;align-items:center;justify-content:space-between;gap:1rem;border-bottom:1px solid rgba(228,230,232,.9);background:rgba(255,255,255,.92);backdrop-filter:blur(14px)}.app-header h1{margin:.2rem 0 0;font-size:1.55rem}.app-header>div>small{color:var(--brand);font-size:.75rem;font-weight:800;letter-spacing:.14em}.menu-toggle{width:44px;height:44px;color:var(--brand);background:var(--brand-soft);font-size:1.25rem}.user-chip{display:flex;align-items:center;gap:.7rem;padding:.4rem .7rem .4rem .4rem;border:1px solid var(--line);border-radius:.9rem;background:#fff}.user-chip>span,.user-chip>img{width:43px;height:43px;border-radius:.75rem;object-fit:cover}.user-chip>span{display:grid;place-items:center;background:var(--brand-soft);color:var(--brand);font-weight:800}.user-chip b,.user-chip small{display:block}.user-chip b{font-size:.86rem}.user-chip small{color:#71818a;font-size:.76rem}.content{max-width:1500px;margin:auto;padding:2.5rem clamp(1.25rem,4vw,3.25rem) 4rem}.app-alert{margin:1.25rem clamp(1.25rem,4vw,3.25rem) 0}.panel-card{border:1px solid var(--line);border-radius:1.25rem;box-shadow:0 10px 32px rgba(3,30,76,.055)}
.welcome-card{position:relative;overflow:hidden;color:#fff;border-radius:1.4rem;background:linear-gradient(115deg,var(--brand),#2f74c8);box-shadow:0 18px 45px rgba(7,82,163,.2)}.welcome-card:after{content:'';position:absolute;right:-45px;top:-85px;width:250px;height:250px;border:35px solid rgba(255,255,255,.08);border-radius:50%}.welcome-card .row{position:relative;z-index:1}.display-title{max-width:800px;font-size:clamp(1.65rem,3vw,2.35rem);line-height:1.2}.stat-card,.quick-card,.teacher-resource{border:1px solid var(--line);border-radius:1rem;box-shadow:0 8px 24px rgba(3,30,76,.04);transition:.2s}.stat-card:hover,.quick-card:hover,.teacher-resource:hover{transform:translateY(-3px);border-color:#bfd3ec;box-shadow:0 16px 35px rgba(3,30,76,.1)}.quick-card{color:var(--ink)}.stat-icon,.resource-icon{flex:0 0 auto;display:grid;place-items:center;width:50px;height:50px;border-radius:.85rem;font-size:1.3rem;font-weight:800}.icon-purple,.resource-icon{color:var(--brand);background:var(--brand-soft)}.icon-green{color:#23805f;background:#e8f6f0}.icon-yellow{color:#9a6500;background:#fff4d6}.icon-blue{color:#0752a3;background:#eaf2fc}
/* Listados, formularios y detalles */
.table{--bs-table-hover-bg:#fbfaf6}.table thead th{padding:1rem;background:#f7f7f4;color:#64737b;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}.table td{padding:1rem;font-size:.93rem}.table-note{display:block;margin-top:.2rem;color:#71818a;font-size:.85rem}.badge-soft-purple{color:var(--brand);background:var(--brand-soft)}.page-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.25rem}.form-card{max-width:980px}.form-card-sm{max-width:680px}.form-footer{display:flex;justify-content:flex-end;gap:.75rem;margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--line)}.permission-check{min-height:78px;margin:0;padding:1rem 1rem 1rem 2.8rem;border:1px solid var(--line);border-radius:.8rem;background:#faf9f6}.permission-check .form-check-input{margin-left:-1.8rem}.permission-check label strong,.permission-check label span{display:block}.permission-check label span{margin-top:.15rem;color:#71818a;font-size:.87rem}.record-card{max-width:1050px}.avatar-lg,.avatar-profile{display:grid;place-items:center;color:var(--brand);background:var(--brand-soft);font-weight:800}.avatar-lg{width:72px;height:72px;border-radius:1rem;font-size:1.3rem}.detail-box{height:100%;min-height:98px;padding:1rem;border:1px solid var(--line);border-radius:.8rem;background:#faf9f6}.detail-box span,.detail-box strong{display:block}.detail-box span{margin-bottom:.45rem;color:#71818a;font-size:.85rem;font-weight:600}.detail-box strong{overflow-wrap:anywhere}.danger-zone{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.2rem;border:1px solid #f1cfd3;border-radius:.85rem;background:#fff8f8}.resource-row{display:flex;align-items:center;gap:1rem;padding:1.25rem;border:1px solid var(--line);border-radius:1rem;background:#fff}.resource-meta{display:block;margin-bottom:.25rem;color:var(--brand);font-size:.78rem;font-weight:800;letter-spacing:.08em}.resource-icon-lg{width:66px;height:66px;font-size:1.55rem}.empty-state{padding:2.2rem;border:1px dashed #bdc5c8;border-radius:1rem;background:#fbfbf9;text-align:center;color:#667982}.catalog-id{display:grid;place-items:center;min-width:36px;height:36px;border-radius:.6rem;color:var(--brand);background:var(--brand-soft);font-size:.82rem;font-weight:800}.teacher-resource .card-body{display:flex;flex-direction:column}.profile-card{max-width:1150px;overflow:hidden}.profile-summary{color:#fff;background:linear-gradient(145deg,var(--ink),var(--ink-2))}.profile-photo,.avatar-profile{width:128px;height:128px;margin-bottom:1.5rem;border:5px solid rgba(255,255,255,.16);border-radius:1.5rem;object-fit:cover}.avatar-profile{color:var(--ink);background:var(--yellow);font-size:2rem}.profile-badge{padding:.5rem .7rem;border:1px solid rgba(255,255,255,.17);border-radius:99px;background:rgba(255,255,255,.08);font-size:.78rem}.upload-box{padding:1.2rem;border:1px dashed #aac3e3;border-radius:.9rem;background:var(--brand-soft)}
@media(max-width:991.98px){.auth-shell{grid-template-columns:1fr}.app-body{padding-left:0}.sidebar{width:280px}.content{padding-top:1.75rem}.profile-summary{min-height:auto}}
@media(max-width:575.98px){.login-panel{padding:1rem}.login-card .card-body{padding:1.6rem!important}.app-header{min-height:80px}.app-header>div:nth-child(2){display:none}.user-chip b{max-width:110px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.content{padding-left:1rem;padding-right:1rem}.page-toolbar,.danger-zone,.resource-row{align-items:flex-start;flex-direction:column}.page-toolbar .btn,.resource-row>div:last-child{width:100%}.form-footer{flex-direction:column-reverse}.form-footer .btn{width:100%}.resource-row .resource-icon{margin-bottom:.25rem}}

/* Interfaz compacta y refinada */
.app-body{padding-left:252px}.sidebar{width:252px;padding:1.3rem 1rem}.app-logo{margin-bottom:1.65rem}.app-logo img{width:46px;height:46px}.sidebar .nav-link{padding:.67rem .78rem;font-size:.9rem}.app-header{min-height:74px;padding:.7rem clamp(1.15rem,3vw,2.4rem)}.app-header h1{font-size:1.25rem}.user-chip>span,.user-chip>img{width:37px;height:37px}.content{max-width:1380px;padding:1.65rem clamp(1.15rem,3vw,2.4rem) 3rem}.panel-card{border-color:#e8e8e5;border-radius:1rem;box-shadow:0 5px 18px rgba(3,30,76,.045)}.panel-card>.card-body{padding:1.55rem!important}.form-card>.card-body,.record-card>.card-body{padding:1.8rem!important}.form-control,.form-select{min-height:43px;padding:.55rem .75rem;border-radius:.62rem}.btn{--bs-btn-border-radius:.58rem;font-size:.9rem}.table thead th{padding:.75rem .85rem}.table td{padding:.78rem .85rem}.resource-row{padding:.9rem 1rem;border-radius:.8rem}.detail-box{min-height:82px;padding:.8rem}.permission-check{min-height:68px;padding:.8rem .8rem .8rem 2.6rem}.empty-state{padding:1.5rem}.page-toolbar{margin-bottom:.9rem}

/* Portada docente */
.teacher-home{max-width:1240px}.teacher-hero{display:grid;grid-template-columns:1fr auto;align-items:center;gap:2rem;padding:1.55rem 1.7rem;border:1px solid #c8daf0;border-radius:1rem;background:linear-gradient(120deg,#fff 0,#edf4fc 72%,#e2ecf8 100%);box-shadow:0 8px 24px rgba(7,82,163,.06)}.teacher-hero h2{margin:.4rem 0 .25rem;font-size:1.65rem}.teacher-hero p{margin:0;color:#647681}.teacher-identity{min-width:220px;padding-left:1.5rem;border-left:1px solid #bfd3ec}.teacher-identity span,.teacher-identity strong,.teacher-identity a{display:block}.subject-label{color:#1053a3;font-size:.68rem;font-weight:800;letter-spacing:.12em}.teacher-identity strong{margin:.2rem 0 .4rem;font-size:1rem}.teacher-identity a{color:var(--brand);font-size:.82rem;font-weight:700}.teacher-overview{display:grid;grid-template-columns:190px 190px 1fr;gap:.75rem}.teacher-overview>div{display:flex;align-items:center;gap:.75rem;padding:.75rem .9rem;border:1px solid #e7e7e3;border-radius:.8rem;background:#fff}.overview-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:.65rem;font-weight:800}.overview-icon.purple{color:var(--brand);background:var(--brand-soft)}.overview-icon.blue{color:#0752a3;background:#eaf2fc}.teacher-overview p,.teacher-overview strong,.teacher-overview span{display:block;margin:0}.teacher-overview strong{font-size:1.25rem;line-height:1}.teacher-overview p span{margin-top:.2rem;color:#75858d;font-size:.76rem}.teacher-overview .overview-message{justify-content:flex-start;background:#031e4c;color:#fff}.overview-message>span{padding:.27rem .5rem;border-radius:99px;background:rgba(218,150,12,.15);color:#e6b960;font-size:.68rem;font-weight:800}.overview-message p{font-size:.82rem;color:#d4dfe4}.teacher-module{overflow:hidden;border:1px solid #e6e7e5;border-radius:1rem;background:#fff;box-shadow:0 5px 18px rgba(3,30,76,.04)}.module-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.05rem 1.25rem;border-bottom:1px solid #ecece9;background:#fcfcfa}.module-heading h2{margin:.15rem 0;font-size:1.15rem}.module-heading p{margin:0;color:#73838b;font-size:.84rem}.module-kicker{color:var(--brand);font-size:.66rem;font-weight:800;letter-spacing:.12em}.resource-count{padding:.35rem .65rem;border-radius:99px;color:#0752a3;background:var(--brand-soft);font-size:.75rem;font-weight:700}.teacher-resource-list{padding:.3rem 1.25rem}.teacher-resource-item{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:1rem;padding:.9rem 0;border-bottom:1px solid #eeeeeb}.teacher-resource-item:last-child{border-bottom:0}.teacher-resource-item .resource-icon{width:42px;height:42px;border-radius:.7rem;font-size:1rem}.tabulator-icon{color:#0752a3;background:#eaf2fc}.resource-copy h3{margin:.12rem 0 .15rem;font:700 .98rem 'Libre Franklin',Arial,sans-serif}.resource-copy p{margin:0;color:#71818a;font-size:.82rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.resource-actions{display:flex;gap:.45rem}.resource-actions .btn{min-width:80px}.compact-empty{margin:1rem;padding:1.25rem}

/* Portada administrativa */
.admin-home{max-width:1250px}.admin-intro{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.25rem 1.4rem;border:1px solid #d4e1f2;border-radius:1rem;background:#fff}.admin-intro h2{margin:.35rem 0 .2rem;font-size:1.45rem}.admin-intro p{margin:0;color:#6d7e87;font-size:.9rem}.compact-stat .card-body{display:flex;align-items:center;gap:.85rem;padding:.9rem 1rem!important}.compact-stat .stat-icon{width:40px;height:40px;border-radius:.65rem;font-size:1rem}.compact-stat strong,.compact-stat span{display:block}.compact-stat strong{font-size:1.45rem;line-height:1}.compact-stat div>span{margin-top:.2rem;color:#71818a;font-size:.78rem}.compact-body{padding:1.35rem!important}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin-bottom:.9rem}.section-heading h2{margin:.25rem 0 0;font-size:1.15rem}.section-heading>span{font-size:.78rem}.admin-module-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.65rem}.admin-module-grid a{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.8rem;padding:.85rem;border:1px solid #e8e8e5;border-radius:.75rem;color:var(--ink);transition:.18s}.admin-module-grid a:hover{border-color:#bfd3ec;background:#f7fafe;transform:translateY(-1px)}.admin-module-grid a>span{display:grid;place-items:center;width:38px;height:38px;border-radius:.6rem;color:var(--brand);background:var(--brand-soft);font-weight:800}.admin-module-grid strong,.admin-module-grid small{display:block}.admin-module-grid strong{font-size:.9rem}.admin-module-grid small{margin-top:.12rem;color:#77868d;font-size:.76rem}.admin-module-grid b{color:var(--brand)}

@media(max-width:991.98px){.app-body{padding-left:0}.sidebar{width:252px}.teacher-overview{grid-template-columns:1fr 1fr}.teacher-overview .overview-message{grid-column:1/-1}.teacher-resource-item{grid-template-columns:auto 1fr}.resource-actions{grid-column:2}.admin-module-grid{grid-template-columns:1fr}}
@media(max-width:575.98px){.teacher-hero,.admin-intro{grid-template-columns:1fr;display:grid;align-items:start}.teacher-identity{padding:1rem 0 0;border-top:1px solid #bfd3ec;border-left:0}.teacher-overview{grid-template-columns:1fr 1fr}.teacher-overview>div{padding:.65rem}.teacher-resource-list{padding:.2rem .85rem}.teacher-resource-item{gap:.7rem}.resource-copy p{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.resource-actions{width:100%;flex-wrap:wrap}.module-heading{align-items:flex-start}.admin-intro .btn{width:100%}.section-heading>span{display:none}}

/* Navegación lateral profesional */
.sidebar{background:linear-gradient(180deg,#031e4c 0%,#042a56 72%,#021936 100%);box-shadow:8px 0 28px rgba(3,30,76,.09)}.app-logo{padding:.25rem .45rem 1.15rem;margin-bottom:1rem;border-bottom:1px solid rgba(255,255,255,.09)}.app-logo img{border:2px solid rgba(255,255,255,.18)}.sidebar-label{padding:0 .65rem;margin-bottom:.5rem;color:#78909c;font-size:.62rem;font-weight:800;letter-spacing:.16em}.sidebar-label.inner{display:block;margin:.7rem 0 .35rem;padding:0 .65rem}.sidebar-nav{gap:.22rem!important}.sidebar .sidebar-nav .nav-link{position:relative;gap:.72rem;padding:.56rem .62rem;color:#b9c9d0;font-size:.86rem;font-weight:600;border:1px solid transparent;border-radius:.65rem}.sidebar .sidebar-nav .nav-link:hover{color:#fff;background:rgba(255,255,255,.055)}.sidebar .sidebar-nav .nav-link.active{color:#fff;border-color:rgba(255,255,255,.08);background:linear-gradient(90deg,rgba(7,82,163,.32),rgba(7,82,163,.12));box-shadow:none}.sidebar .sidebar-nav .nav-link.active:after{content:'';position:absolute;right:.65rem;width:5px;height:5px;border-radius:50%;background:var(--yellow);box-shadow:0 0 0 3px rgba(218,150,12,.12)}.nav-icon{display:grid;place-items:center;width:28px;height:28px;flex:0 0 28px;border-radius:.48rem;color:#9db2bc;background:rgba(255,255,255,.06);font-size:.72rem;font-weight:800}.nav-link.active .nav-icon{color:#fff;background:var(--brand)}.sidebar-divider{height:1px;margin:.55rem .65rem;background:rgba(255,255,255,.07)}.sidebar-account{padding-top:.8rem;border-top:1px solid rgba(255,255,255,.09)}.sidebar-user{display:flex;align-items:center;gap:.65rem;padding:.25rem .35rem .7rem}.sidebar-user>span,.sidebar-user>img{width:36px;height:36px;flex:0 0 36px;border-radius:.6rem;object-fit:cover}.sidebar-user>span{display:grid;place-items:center;color:#fff;background:var(--brand);font-size:.72rem;font-weight:800}.sidebar-user b,.sidebar-user small{display:block;max-width:155px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-user b{color:#eef4f6;font-size:.77rem}.sidebar-user small{margin-top:.08rem;color:#78909c;font-size:.67rem}.sidebar-logout{display:flex;align-items:center;justify-content:center;gap:.45rem;width:100%;padding:.52rem;border:1px solid rgba(255,255,255,.09);border-radius:.58rem;color:#a9bbc3;background:rgba(255,255,255,.025);font-size:.76rem;font-weight:700;transition:.18s}.sidebar-logout:hover{color:#fff;border-color:rgba(255,255,255,.16);background:rgba(255,255,255,.07)}

/* Catálogos compactos */
.catalog-page{max-width:1250px}.catalog-page-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem;padding:.25rem .1rem}.catalog-page-head h2{margin:.3rem 0 .12rem;font-size:1.35rem}.catalog-page-head p{margin:0;color:#71818a;font-size:.85rem}.catalog-total{padding:.38rem .65rem;border:1px solid #d0def0;border-radius:99px;color:var(--brand);background:#eff5fc;font-size:.72rem;font-weight:700}.catalog-compact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.catalog-card{overflow:hidden;border:1px solid #e4e6e5;border-radius:.85rem;background:#fff;box-shadow:0 4px 15px rgba(3,30,76,.035)}.catalog-card>header{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:.65rem;padding:.8rem .9rem;border-bottom:1px solid #ecece9;background:#fbfbf9}.catalog-card-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:.58rem;color:var(--brand);background:var(--brand-soft);font-size:.75rem;font-weight:800}.catalog-card h3{margin:0;font-size:.9rem}.catalog-card header p{margin:.1rem 0 0;color:#7b898f;font-size:.68rem}.catalog-card-count{display:grid;place-items:center;min-width:27px;height:27px;padding:0 .35rem;border-radius:99px;color:#65767e;background:#eef0ef;font-size:.68rem;font-weight:800}.catalog-add{display:grid;place-items:center;width:29px;height:29px;border-radius:.5rem;color:#fff;background:var(--brand);font-size:1.05rem;font-weight:500;line-height:1}.catalog-add:hover{color:#fff;background:var(--brand-dark)}.catalog-rows{padding:.15rem .8rem}.catalog-row{display:flex;align-items:center;justify-content:space-between;gap:.7rem;min-height:47px;padding:.5rem .1rem;border-bottom:1px solid #efefec}.catalog-row:last-child{border-bottom:0}.catalog-row>div:first-child{display:flex;align-items:center;min-width:0;gap:.5rem}.catalog-row>div:first-child span{display:grid;place-items:center;min-width:28px;height:25px;border-radius:.42rem;color:#78878e;background:#f1f2f1;font-size:.63rem;font-weight:700}.catalog-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.8rem}.catalog-actions{display:flex;align-items:center;gap:.25rem;flex:0 0 auto}.catalog-actions a,.catalog-actions button{padding:.28rem .42rem;border:0;border-radius:.38rem;background:transparent;font-size:.68rem;font-weight:700}.catalog-actions a:first-child{color:#288164}.catalog-actions a:nth-child(2){color:#0752a3}.catalog-actions button{color:#bd4c59}.catalog-actions a:hover,.catalog-actions button:hover{background:#f2f3f2}.catalog-empty{padding:1.15rem;text-align:center;color:#87949a;font-size:.78rem}
@media(max-width:991.98px){.catalog-compact-grid{grid-template-columns:1fr}}
@media(max-width:575.98px){.catalog-page-head{align-items:flex-start;flex-direction:column}.catalog-row{align-items:flex-start;flex-direction:column}.catalog-actions{width:100%;justify-content:flex-end}.catalog-card>header{grid-template-columns:auto 1fr auto}.catalog-card-count{display:none}.sidebar-user b,.sidebar-user small{max-width:170px}}

/* Gestión profesional de usuarios */
.users-page{max-width:1320px}.users-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.9rem}.users-head h2{margin:.3rem 0 .12rem;font-size:1.4rem}.users-head p{margin:0;color:#71818a;font-size:.86rem}.users-summary{display:grid;grid-template-columns:135px 115px 135px minmax(270px,1fr);gap:.55rem;margin-bottom:.75rem}.users-summary>div,.users-search{display:flex;align-items:center;gap:.58rem;min-height:51px;padding:.65rem .8rem;border:1px solid #e3e5e3;border-radius:.72rem;background:#fff}.users-summary>div strong{font-size:1.2rem;line-height:1}.users-summary>div span{color:#74848b;font-size:.68rem;line-height:1.2}.users-search{justify-self:end;width:min(100%,390px);padding:.4rem .75rem}.users-search>span{color:#829198;font-size:1.2rem}.users-search input{width:100%;border:0;outline:0;background:transparent;color:var(--ink);font-size:.8rem}.users-search input::placeholder{color:#98a2a7}.users-table-card{overflow:hidden;border:1px solid #e3e5e3;border-radius:.85rem;background:#fff;box-shadow:0 4px 16px rgba(3,30,76,.035)}.users-table{min-width:1020px}.users-table thead th{padding:.68rem .8rem;border-bottom-color:#e8e9e7;background:#f8f8f6;color:#74838a;font-size:.66rem;letter-spacing:.09em}.users-table tbody td{padding:.68rem .8rem;border-bottom-color:#eeeeeb}.users-table tbody tr:last-child td{border-bottom:0}.user-identity{display:flex;align-items:center;gap:.65rem;min-width:170px}.user-avatar{display:grid;place-items:center;width:36px;height:36px;flex:0 0 36px;border-radius:.62rem;font-size:.68rem;font-weight:800}.avatar-tone-0{color:#0752a3;background:#eaf2fc}.avatar-tone-1{color:#257657;background:#e5f4ed}.avatar-tone-2{color:#9a6500;background:#fff4d6}.avatar-tone-3{color:#0752a3;background:#eaf2fc}.user-identity strong,.user-identity small,.user-contact span,.user-contact small,.subject-name{display:block}.user-identity strong{max-width:175px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.82rem}.user-identity small{margin-top:.08rem;color:#95a0a5;font-size:.62rem}.user-contact span{max-width:230px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.77rem}.user-contact small,.subject-name{margin-top:.15rem;color:#87949a;font-size:.67rem}.role-pill{display:inline-flex;padding:.27rem .5rem;border-radius:99px;font-size:.66rem;font-weight:800}.admin-role{color:#0752a3;background:#eaf2fc}.teacher-role{color:#257657;background:#e5f4ed}.permission-pills{display:flex;gap:.3rem}.permission-pills span{display:inline-flex;align-items:center;gap:.25rem;padding:.28rem .42rem;border:1px solid #d7d9df;border-radius:.42rem;color:#a0aaae;background:#fafafa;font-size:.63rem}.permission-pills span.enabled{color:#0752a3;border-color:#d0def0;background:#f1f6fc}.permission-pills b{font-weight:700}.account-status{display:inline-flex;align-items:center;gap:.35rem;color:#7a898f;font-size:.68rem;font-weight:700}.account-status i{width:6px;height:6px;border-radius:50%;background:#a8b0b3}.account-status.active{color:#28775a}.account-status.active i{background:#42a77e;box-shadow:0 0 0 3px #e5f4ed}.account-status.inactive{color:#a14e59}.user-actions{display:flex;align-items:center;justify-content:flex-end;gap:.18rem}.user-actions a,.user-actions button{padding:.28rem .42rem;border:0;border-radius:.38rem;background:transparent;font-size:.67rem;font-weight:700}.view-action{color:#28775a}.edit-action{color:#0752a3}.user-actions .delete-action{color:#bb4d59}.user-actions a:hover,.user-actions button:hover{background:#f0f2f1}.users-empty-search{padding:2rem;text-align:center;color:#7c8b92;font-size:.82rem}
@media(max-width:991.98px){.users-summary{grid-template-columns:repeat(3,1fr)}.users-search{grid-column:1/-1;justify-self:stretch;width:100%}}
@media(max-width:575.98px){.users-head{align-items:flex-start;flex-direction:column}.users-head .btn{width:100%}.users-summary{grid-template-columns:repeat(3,1fr)}.users-summary>div{align-items:flex-start;flex-direction:column;gap:.18rem;padding:.55rem}.users-summary>div strong{font-size:1.05rem}}

/* Acceso único, compacto y profesional */
.compact-auth{grid-template-columns:1.05fr .95fr}.compact-auth .auth-brand{padding:clamp(3.5rem,7vw,6.5rem);background:linear-gradient(135deg,rgba(3,30,76,.98),rgba(4,42,86,.92)),url('https://images.unsplash.com/photo-1509062522246-3755977927d7?auto=format&fit=crop&w=1600&q=85') center/cover}.compact-auth .auth-brand:after{width:210px;height:210px;border-width:24px}.compact-auth .brand-content{max-width:580px}.compact-auth .brand-content h1{max-width:570px;margin:1rem 0;font-size:clamp(2.55rem,4.6vw,4.1rem)}.compact-auth .brand-content p{max-width:510px;margin-bottom:0;font-size:1rem}.auth-features{display:flex;flex-direction:column;gap:.7rem;margin-top:1.8rem}.auth-features span{display:flex;align-items:center;gap:.65rem;color:#dce6ea;font-size:.83rem}.auth-features i{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;color:#031e4c;background:var(--yellow);font-size:.68rem;font-style:normal;font-weight:900}.auth-brand-note{position:absolute;left:clamp(3.5rem,7vw,6.5rem);bottom:2rem;color:#829ba7;font-size:.7rem;letter-spacing:.06em}.compact-auth .login-panel{padding:1.5rem;background:radial-gradient(circle at 100% 0,#eaf2fc 0,transparent 30%),#faf9f5}.login-container{width:min(405px,100%);padding:1.8rem 2rem;border:1px solid rgba(229,229,225,.9);border-radius:1.15rem;background:rgba(255,255,255,.95);box-shadow:0 18px 52px rgba(3,30,76,.1)}.login-container .mini-logo{padding-bottom:1.1rem;border-bottom:1px solid #ecece9}.login-container .mini-logo img{width:46px;height:46px}.login-container .mini-logo b{font-size:.96rem}.login-container .mini-logo small{font-size:.63rem}.login-heading{padding:1.3rem 0 1rem}.login-heading h2{margin:.35rem 0 .18rem;font-size:1.65rem}.login-heading p{margin:0;color:#71818a;font-size:.82rem}.login-form{display:flex;flex-direction:column;gap:.9rem}.login-form .form-label{margin-bottom:.35rem;font-size:.78rem}.login-control{display:flex;align-items:center;min-height:44px;border:1px solid #d9dcda;border-radius:.65rem;background:#fff;transition:.18s}.login-control:focus-within{border-color:var(--brand);box-shadow:0 0 0 .2rem rgba(7,82,163,.11)}.login-control>span{display:grid;place-items:center;width:40px;color:#8a979d;font-size:.75rem;border-right:1px solid #ecece9}.login-control input{width:100%;padding:.6rem .72rem;border:0;outline:0;background:transparent;color:var(--ink);font-size:.86rem}.login-control input::placeholder{color:#a1aaae}.login-submit{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-top:.2rem;min-height:44px;font-size:.85rem}.login-submit span{font-size:1rem}.login-security{display:flex;align-items:center;gap:.65rem;margin-top:1rem;padding:.65rem .75rem;border-radius:.62rem;background:#f1f6fc}.login-security>span{display:grid;place-items:center;width:25px;height:25px;flex:0 0 25px;border-radius:50%;color:#fff;background:var(--brand);font-size:.68rem;font-weight:800}.login-security p,.login-security strong,.login-security small{display:block;margin:0}.login-security strong{font-size:.7rem}.login-security small{margin-top:.05rem;color:#566f98;font-size:.63rem}.login-help{margin:1rem 0 0;text-align:center;color:#849097;font-size:.7rem}.login-help a{color:var(--brand);font-weight:800}
@media(max-width:991.98px){.compact-auth{display:block}.compact-auth .login-panel{min-height:100vh}.login-container{margin:auto}}
@media(max-width:575.98px){.compact-auth .login-panel{padding:1rem}.login-container{padding:1.45rem 1.25rem;border-radius:1rem}.login-heading{padding-top:1.1rem}}

/* Dashboard ejecutivo con KPI y gráficos */
.executive-dashboard{max-width:1300px}.executive-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.executive-head h2{margin:.3rem 0 .12rem;font-size:1.45rem}.executive-head p{margin:0;color:#71818a;font-size:.85rem}.executive-head>div:last-child{display:flex;align-items:center;gap:.7rem}.dashboard-date{color:#829097;font-size:.63rem;font-weight:800;letter-spacing:.11em}.kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.7rem;margin-bottom:.8rem}.kpi-card{padding:.9rem 1rem;border:1px solid #e4e6e4;border-radius:.82rem;color:var(--ink);background:#fff;box-shadow:0 4px 15px rgba(3,30,76,.035);transition:.18s}.kpi-card:hover{color:var(--ink);border-color:#bfd3ec;transform:translateY(-2px);box-shadow:0 10px 25px rgba(3,30,76,.07)}.kpi-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:.55rem}.kpi-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:.55rem;font-size:.7rem;font-weight:900}.kpi-icon.purple{color:#0752a3;background:#eaf2fc}.kpi-icon.green{color:#257657;background:#e5f4ed}.kpi-icon.yellow{color:#9a6500;background:#fff4d6}.kpi-icon.blue{color:#0752a3;background:#eaf2fc}.kpi-link{color:#a4adb1;font-size:.8rem}.kpi-card>strong{display:block;font-size:1.55rem;line-height:1}.kpi-card h3{margin:.3rem 0 .08rem;font-size:.82rem}.kpi-card p{margin:0;color:#829097;font-size:.67rem}.dashboard-analysis-grid{display:grid;grid-template-columns:1fr 1.25fr;gap:.8rem;margin-bottom:.8rem}.analytics-card,.operations-card{border:1px solid #e4e6e4;border-radius:.85rem;background:#fff;box-shadow:0 4px 15px rgba(3,30,76,.035)}.analytics-card{padding:1rem 1.1rem}.analytics-card>header,.operations-card>header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-bottom:.75rem;border-bottom:1px solid #eeeeeb}.analytics-card h3,.operations-card h3{margin:.15rem 0 0;font-size:.94rem}.analytics-kicker{display:block;color:var(--brand);font-size:.58rem;font-weight:900;letter-spacing:.13em}.analytics-card header a{color:var(--brand);font-size:.67rem;font-weight:700}.analytics-total{padding:.28rem .5rem;border-radius:99px;color:#65767e;background:#f0f1ef;font-size:.66rem;font-weight:700}.donut-content{display:flex;align-items:center;justify-content:center;gap:2rem;min-height:180px}.donut-chart{position:relative;display:grid;place-items:center;width:130px;height:130px;flex:0 0 130px;border-radius:50%;background:conic-gradient(var(--brand) calc(var(--value)*1%),#dce3e5 0)}.donut-chart:before{content:'';position:absolute;inset:18px;border-radius:50%;background:#fff}.donut-chart>div{position:relative;text-align:center}.donut-chart strong,.donut-chart span{display:block}.donut-chart strong{font-size:1.35rem;line-height:1}.donut-chart span{margin-top:.2rem;color:#829097;font-size:.63rem}.chart-legend{min-width:145px}.chart-legend>div{display:flex;align-items:center;gap:.55rem;margin-bottom:.65rem}.chart-legend i{width:8px;height:8px;border-radius:50%}.legend-purple{background:var(--brand)}.legend-slate{background:#dce3e5}.chart-legend p,.chart-legend span,.chart-legend strong{display:block;margin:0}.chart-legend p{display:flex;align-items:center;justify-content:space-between;gap:1rem;width:100%;font-size:.72rem}.chart-legend span{color:#71818a}.chart-legend small{display:block;max-width:170px;padding-top:.5rem;border-top:1px solid #eeeeeb;color:#929da2;font-size:.6rem;line-height:1.45}.horizontal-metrics{display:flex;flex-direction:column;gap:1rem;padding:1rem 0 .8rem}.metric-label{display:flex;justify-content:space-between;margin-bottom:.35rem;font-size:.72rem}.metric-track{height:8px;overflow:hidden;border-radius:99px;background:#edf0ef}.metric-track i{display:block;height:100%;min-width:0;border-radius:99px}.test-bar{background:linear-gradient(90deg,#da960c,#e6b960)}.tabulator-bar{background:linear-gradient(90deg,#0752a3,#6e8db7)}.horizontal-metrics small{display:block;margin-top:.25rem;color:#8b989e;font-size:.6rem}.resource-efficiency{display:grid;grid-template-columns:auto auto 1fr;align-items:center;gap:.5rem;padding:.55rem .7rem;border-radius:.62rem;background:#f7f7f4}.resource-efficiency span{color:#71818a;font-size:.66rem}.resource-efficiency strong{font-size:1rem}.resource-efficiency p{margin:0;color:#71818a;font-size:.66rem}.operations-card{padding:1rem 1.1rem}.operations-card>header>span{color:#849198;font-size:.67rem}.operations-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.55rem;padding-top:.8rem}.operations-grid a{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.55rem;padding:.65rem;border:1px solid #e8e9e7;border-radius:.65rem;color:var(--ink);transition:.18s}.operations-grid a:hover{border-color:#bfd3ec;background:#f7fafe}.operations-grid a>span{display:grid;place-items:center;width:30px;height:30px;border-radius:.5rem;color:var(--brand);background:var(--brand-soft);font-size:.65rem;font-weight:900}.operations-grid strong,.operations-grid small{display:block}.operations-grid strong{font-size:.72rem}.operations-grid small{margin-top:.08rem;color:#859298;font-size:.6rem}.operations-grid b{color:var(--brand);font-size:.7rem}
@media(max-width:991.98px){.kpi-grid{grid-template-columns:repeat(2,1fr)}.dashboard-analysis-grid{grid-template-columns:1fr}.operations-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:575.98px){.executive-head{align-items:flex-start;flex-direction:column}.executive-head>div:last-child{width:100%;justify-content:space-between}.dashboard-date{display:none}.executive-head .btn{width:100%}.kpi-grid{grid-template-columns:1fr 1fr}.donut-content{gap:1rem}.operations-grid{grid-template-columns:1fr}.operations-card>header>span{display:none}}

/* Logo horizontal oficial */
.app-logo{justify-content:center;padding-left:0;padding-right:0}
.app-logo>div,.mini-logo>div{display:none}
.app-logo img{width:100%!important;max-width:195px;height:92px!important;border:0!important;border-radius:.7rem!important;object-fit:contain!important;background:#fff;box-shadow:0 8px 24px rgba(4,20,30,.2)}
.login-container .mini-logo{justify-content:center}
.login-container .mini-logo img{width:min(250px,100%)!important;height:auto!important;max-height:125px;border-radius:.75rem!important;object-fit:contain!important;background:#fff;box-shadow:0 8px 25px rgba(3,30,76,.1)}

/* Constructor del formulario público */
.public-form-admin{max-width:1280px}.form-section-nav{position:sticky;top:86px;z-index:20;display:flex;gap:.35rem;margin-bottom:1rem;padding:.45rem;border:1px solid #e1e5e8;border-radius:.8rem;background:rgba(255,255,255,.94);box-shadow:0 7px 22px rgba(3,30,76,.05);backdrop-filter:blur(12px)}.form-section-nav a{display:flex;align-items:center;gap:.4rem;padding:.55rem .8rem;border-radius:.55rem;color:#657681;font-size:.77rem;font-weight:800}.form-section-nav a:hover{color:var(--brand);background:var(--brand-soft)}.form-section-nav span{display:grid;place-items:center;min-width:20px;height:20px;padding:0 .3rem;border-radius:99px;color:#fff;background:var(--brand);font-size:.62rem}.form-config-card{margin-bottom:1rem;scroll-margin-top:155px}.config-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.4rem;padding-bottom:1rem;border-bottom:1px solid #e8e9e7}.config-heading>div{display:flex;align-items:flex-start;gap:.8rem}.config-heading>div>span{display:grid;place-items:center;width:34px;height:34px;flex:0 0 34px;border-radius:.6rem;color:var(--brand);background:var(--brand-soft);font-size:.72rem;font-weight:900}.config-heading h2{margin:0;font-size:1.15rem}.config-heading p{margin:.2rem 0 0;color:#74848c;font-size:.79rem}.status-chip{padding:.38rem .65rem;border-radius:99px;font-size:.68rem;font-weight:800}.status-chip.is-open{color:#257657;background:#e5f4ed}.status-chip.is-closed{color:#a14e59;background:#fbecef}.field-builder-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr);gap:1.2rem;align-items:start}.field-list{display:flex;flex-direction:column;gap:.45rem}.field-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:.6rem;padding:.65rem;border:1px solid #e2e5e5;border-radius:.72rem;background:#fff}.field-row.is-inactive{opacity:.58}.field-order{display:grid;place-items:center;width:34px;height:34px;border-radius:.55rem;color:var(--brand);background:var(--brand-soft);font-size:.68rem;font-weight:900}.field-row b,.field-row small{display:block}.field-row b{font-size:.79rem}.field-row small{margin-top:.12rem;color:#7e8c92;font-size:.65rem}.field-editor{position:sticky;top:150px;padding:1.1rem;border:1px solid #d7e1ef;border-radius:.85rem;background:#f8fbff}.field-editor h3{font-size:1.05rem}.field-editor-checks{display:flex;gap:1rem;flex-wrap:wrap}.field-editor-checks label{display:flex;align-items:center;gap:.4rem;color:#526778;font-size:.77rem;font-weight:700}.submission-list{display:flex;flex-direction:column;gap:.5rem}.submission-card{overflow:hidden;border:1px solid #e2e5e5;border-radius:.75rem;background:#fff}.submission-card summary{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.7rem;padding:.75rem;cursor:pointer;list-style:none}.submission-card summary::-webkit-details-marker{display:none}.submission-id{display:grid;place-items:center;min-width:42px;height:34px;border-radius:.55rem;color:var(--brand);background:var(--brand-soft);font-size:.67rem;font-weight:900}.submission-card summary b,.submission-card summary small{display:block}.submission-card summary b{font-size:.8rem}.submission-card summary small{margin-top:.1rem;color:#7d8c92;font-size:.65rem}.submission-open{color:var(--brand);font-size:.68rem;font-weight:800}.submission-answers{display:grid;grid-template-columns:repeat(2,1fr);gap:.6rem;padding:.8rem;border-top:1px solid #eceeec;background:#fafbf9}.submission-answers>div{padding:.65rem;border:1px solid #eaebe9;border-radius:.55rem;background:#fff}.submission-answers small,.submission-answers b{display:block}.submission-answers small{margin-bottom:.25rem;color:#7e8c92;font-size:.64rem}.submission-answers b,.submission-answers a{overflow-wrap:anywhere;font-size:.75rem}
@media(max-width:991.98px){.form-section-nav{top:82px;overflow:auto}.field-builder-grid{grid-template-columns:1fr}.field-editor{position:static}.submission-answers{grid-template-columns:1fr}}
@media(max-width:575.98px){.form-section-nav a{padding:.5rem .6rem;white-space:nowrap}.config-heading{align-items:flex-start;flex-direction:column}.field-row{grid-template-columns:auto minmax(0,1fr) auto}.field-row>form{grid-column:3}.field-row>a{grid-column:3}.status-chip{align-self:flex-start}}

/* Bibliotecas independientes de tests y tabuladores */
.module-heading-actions{display:flex;align-items:center;gap:.55rem}.module-heading-actions>a{color:var(--brand);font-size:.7rem;font-weight:800;white-space:nowrap}.teacher-library{max-width:1320px}.library-hero{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) 210px;align-items:center;gap:2rem;min-height:265px;margin-bottom:1rem;padding:2rem 2.2rem;border-radius:1rem;color:#fff;background:#031e4c;box-shadow:0 14px 36px rgba(3,30,76,.16)}.library-hero:after{content:'';position:absolute;right:-85px;top:-145px;width:310px;height:310px;border:48px solid rgba(218,150,12,.08);border-radius:50%}.library-hero-copy{position:relative;z-index:1}.library-hero .eyebrow{color:#e6b960}.library-hero h2{max-width:680px;margin:.65rem 0 .55rem;color:#fff;font-size:clamp(1.75rem,3vw,2.55rem);line-height:1.08}.library-hero p{max-width:730px;margin:0;color:#c9d7e4;font-size:.9rem;line-height:1.65}.library-hero-meta{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:1.2rem}.library-hero-meta span{display:flex;align-items:center;gap:.3rem;padding:.42rem .62rem;border:1px solid rgba(255,255,255,.12);border-radius:99px;color:#c7d5df;background:rgba(255,255,255,.06);font-size:.67rem}.library-hero-meta b{color:#fff}.library-hero-visual{position:relative;z-index:1;display:flex;align-items:center;flex-direction:column;gap:.7rem}.visual-ring{display:grid;place-items:center;width:125px;height:125px;border:1px solid rgba(255,255,255,.18);border-radius:50%;box-shadow:inset 0 0 0 14px rgba(7,82,163,.28)}.visual-ring span{display:grid;place-items:center;width:63px;height:63px;border-radius:50%;color:#031e4c;background:var(--yellow);font-size:1.8rem;font-weight:900}.library-hero-visual>small{color:#92a8b4;font-size:.58rem;font-weight:800;letter-spacing:.15em;text-align:center}.tabulator-hero{background:#042a56}.chart-visual{min-height:155px}.mini-bars{display:flex;align-items:flex-end;gap:8px;width:130px;height:105px;padding:12px;border-left:1px solid rgba(255,255,255,.2);border-bottom:1px solid rgba(255,255,255,.2)}.mini-bars i{width:19px;border-radius:4px 4px 0 0;background:var(--yellow)}.mini-bars i:nth-child(1){height:32%}.mini-bars i:nth-child(2){height:58%;background:#4b8bd4}.mini-bars i:nth-child(3){height:78%}.mini-bars i:nth-child(4){height:48%;background:#4b8bd4}.library-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.75rem;padding:1rem 1.15rem;border:1px solid #e2e6e8;border-radius:.85rem;background:#fff}.library-toolbar h2{margin:.18rem 0 .05rem;font-size:1.15rem}.library-toolbar p{margin:0;color:#7a8990;font-size:.74rem}.library-search{display:flex;align-items:center;gap:.5rem;width:min(100%,340px);min-height:42px;padding:0 .75rem;border:1px solid #d6dce0;border-radius:.65rem;background:#fdfdfc}.library-search:focus-within{border-color:var(--brand);box-shadow:0 0 0 .2rem rgba(7,82,163,.09)}.library-search span{color:#7e8d94}.library-search input{width:100%;border:0;outline:0;background:transparent;font-size:.78rem}.library-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:.65rem;margin-bottom:1rem}.library-summary>div{display:flex;align-items:center;gap:.7rem;padding:.75rem .85rem;border:1px solid #e2e6e8;border-radius:.75rem;background:#fff}.summary-icon{display:grid;place-items:center;width:38px;height:38px;flex:0 0 38px;border-radius:.6rem;color:var(--brand);background:var(--brand-soft);font-size:.75rem;font-weight:900}.library-summary p,.library-summary b,.library-summary small{display:block;margin:0}.library-summary b{font-size:1.15rem;line-height:1}.library-summary small{margin-top:.15rem;color:#7a8990;font-size:.66rem}.tabulator-summary .summary-icon{color:#9a6500;background:#fff4d6}.library-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}.library-card{display:flex;min-width:0;min-height:315px;flex-direction:column;padding:1rem;border:1px solid #dfe4e7;border-radius:.85rem;background:#fff;box-shadow:0 5px 17px rgba(3,30,76,.04);transition:.18s}.library-card:hover{border-color:#b8cce4;transform:translateY(-2px);box-shadow:0 12px 28px rgba(3,30,76,.08)}.library-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:.85rem}.card-number{color:#9aa6ab;font-size:.62rem;font-weight:900;letter-spacing:.1em}.card-status{display:flex;align-items:center;gap:.35rem;padding:.28rem .46rem;border-radius:99px;color:#28775a;background:#e8f5ef;font-size:.59rem;font-weight:800}.card-status i{width:5px;height:5px;border-radius:50%;background:#42a77e}.library-card-icon{display:grid;place-items:center;width:45px;height:45px;margin-bottom:.8rem;border-radius:.7rem;color:#fff;background:var(--brand);font-size:1rem;font-weight:900}.tabulator-card .library-card-icon{color:#031e4c;background:var(--yellow)}.library-card h3{margin:.3rem 0 .45rem;font-size:1rem;line-height:1.3}.library-card>p{display:-webkit-box;overflow:hidden;margin:0 0 .9rem;color:#708087;font-size:.74rem;line-height:1.6;-webkit-line-clamp:3;-webkit-box-orient:vertical}.library-card-footer{display:flex;align-items:flex-end;justify-content:space-between;gap:.7rem;margin-top:auto;padding-top:.8rem;border-top:1px solid #eceeec}.library-card-footer small,.library-card-footer span{display:block}.library-card-footer small{color:#96a0a4;font-size:.55rem;font-weight:900;letter-spacing:.1em}.library-card-footer span{margin-top:.16rem;color:#5f737d;font-size:.62rem}.library-actions{display:flex;gap:.35rem;flex-wrap:wrap;justify-content:flex-end}.library-actions .btn{padding:.34rem .52rem;font-size:.64rem}.library-locked{display:flex;align-items:center;gap:1.2rem;padding:1.7rem;border:1px solid #d9e2ec;border-radius:1rem;background:#fff}.locked-icon{display:grid;place-items:center;width:70px;height:70px;flex:0 0 70px;border-radius:1rem;color:var(--brand);background:var(--brand-soft);font-size:1.3rem;font-weight:900}.library-locked small{color:var(--brand);font-size:.6rem;font-weight:900;letter-spacing:.13em}.library-locked h2{margin:.35rem 0 .25rem;font-size:1.25rem}.library-locked p{margin:0 0 .8rem;color:#71818a;font-size:.78rem}.library-empty{padding:2.3rem;border:1px dashed #b9c8d4;border-radius:1rem;background:#fff;text-align:center}.library-empty>span{display:grid;place-items:center;width:53px;height:53px;margin:0 auto .8rem;border-radius:50%;color:var(--brand);background:var(--brand-soft);font-weight:900}.library-empty h2{font-size:1.2rem}.library-empty p{color:#75858c;font-size:.78rem}.library-empty a{color:var(--brand);font-size:.72rem;font-weight:800}.library-no-results{margin-top:.75rem;padding:1rem;border:1px dashed #c4ccd0;border-radius:.7rem;color:#728188;background:#fff;text-align:center;font-size:.76rem}.resource-group{margin-bottom:1rem}.resource-group-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.55rem;padding:.7rem .8rem;border-left:3px solid var(--yellow);background:#fff}.resource-group-heading>div{display:flex;align-items:center;gap:.6rem}.group-mark{display:grid;place-items:center;width:34px;height:34px;border-radius:.55rem;color:#9a6500;background:#fff4d6;font-size:.8rem;font-weight:900}.resource-group-heading small{display:block;color:var(--brand);font-size:.54rem;font-weight:900;letter-spacing:.11em}.resource-group-heading h2{margin:.1rem 0 0;font-size:.9rem}.resource-group-heading>span{color:#7e8c92;font-size:.65rem}
@media(max-width:1100px){.library-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767.98px){.library-hero{grid-template-columns:1fr;min-height:auto;padding:1.5rem}.library-hero-visual{display:none}.library-toolbar{align-items:flex-start;flex-direction:column}.library-search{width:100%}.library-summary{grid-template-columns:1fr 1fr 1fr}.library-grid{grid-template-columns:1fr}.library-card{min-height:285px}.library-locked{align-items:flex-start}}
@media(max-width:575.98px){.library-hero h2{font-size:1.65rem}.library-summary{grid-template-columns:1fr}.library-card-footer{align-items:flex-start;flex-direction:column}.library-actions{width:100%;justify-content:flex-start}.library-actions .btn{flex:1}.library-locked{flex-direction:column}.resource-group-heading{align-items:flex-start}.resource-group-heading>span{display:none}}

/* Revisión visual global del panel */
.app-body{background:#f4f7fb}
.sidebar{background:var(--ink);box-shadow:8px 0 30px rgba(3,30,76,.12)}
.workspace{background:#f4f7fb}
.app-header{border-bottom:1px solid #e2e8ef;background:rgba(255,255,255,.97);box-shadow:0 6px 22px rgba(3,30,76,.035)}
.content{max-width:1360px}
.content h2{line-height:1.2}
.panel-card,.teacher-module,.analytics-card,.operations-card,.users-table-card{border-color:#dfe5eb;box-shadow:0 7px 24px rgba(3,30,76,.045)}
.form-control,.form-select{border-color:#d5dee7;background:#fff}
.form-control:hover,.form-select:hover{border-color:#b9c9d9}
.table thead th{background:#f3f6fa;color:#566b78}
.table tbody tr{border-color:#e9edf1}
.teacher-hero,.admin-intro{border-color:#dbe4ed;border-left:4px solid var(--yellow);background:#fff;box-shadow:0 7px 24px rgba(3,30,76,.045)}
.teacher-overview>div,.kpi-card,.library-toolbar,.library-summary>div,.library-card{border-color:#dfe5eb}
.teacher-module,.library-toolbar,.library-summary>div,.library-card,.resource-group-heading{background:#fff}
.library-hero,.tabulator-hero{border-top:4px solid var(--yellow);background:var(--ink);box-shadow:0 12px 32px rgba(3,30,76,.13)}
.library-hero h2{letter-spacing:-.035em}
.library-card{border-radius:.8rem;box-shadow:0 5px 18px rgba(3,30,76,.035)}
.library-card:hover{border-color:#b5c9df;box-shadow:0 12px 28px rgba(3,30,76,.075)}
.profile-summary{background:var(--ink)}
.welcome-card{background:var(--blue)}
.danger-zone{background:#fff;border-color:#ebcfd4}
.empty-state,.library-empty{background:#fff}
.btn-brand{box-shadow:0 7px 18px rgba(7,82,163,.16)}
.sidebar .sidebar-nav .nav-link.active{background:rgba(7,82,163,.35)}

@media(max-width:767.98px){
 .content{padding-top:1.35rem}
 .library-hero{padding:1.35rem;border-radius:.85rem}
 .library-toolbar{padding:.9rem}
 .library-card{min-height:270px}
}

/* Rediseño administrativo de tests, tabuladores y formulario */
.admin-resource-page{max-width:1320px}.admin-resource-hero{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1.2rem;margin-bottom:.85rem;padding:1.35rem 1.45rem;border:1px solid #cbdced;border-radius:.95rem;background:linear-gradient(120deg,#fff 0,#f0f6fd 72%,#e5effa 100%);box-shadow:0 7px 22px rgba(3,30,76,.045)}.admin-resource-hero:after{content:'';position:absolute;right:-70px;top:-120px;width:245px;height:245px;border:38px solid rgba(7,82,163,.055);border-radius:50%}.admin-resource-title,.admin-resource-create,.admin-resource-stats{position:relative;z-index:1}.admin-resource-kicker{color:var(--brand);font-size:.64rem;font-weight:900;letter-spacing:.14em}.admin-resource-title h2{margin:.3rem 0 .15rem;font-size:1.45rem}.admin-resource-title p{margin:0;color:#6f8089;font-size:.82rem}.admin-resource-create{align-self:start;min-width:165px}.admin-resource-stats{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,1fr);gap:.55rem}.admin-resource-stats>div{display:flex;align-items:center;gap:.62rem;min-height:58px;padding:.6rem .72rem;border:1px solid #dfe7ed;border-radius:.7rem;background:rgba(255,255,255,.86)}.resource-stat-icon{display:grid;place-items:center;width:34px;height:34px;flex:0 0 34px;border-radius:.55rem;color:var(--brand);background:var(--brand-soft);font-size:.68rem;font-weight:900}.resource-stat-icon.active{color:#28775a;background:#e5f4ed}.resource-stat-icon.file{color:#9a6500;background:#fff4d6}.resource-stat-icon.link{color:#0752a3;background:#eaf2fc}.admin-resource-stats p,.admin-resource-stats strong,.admin-resource-stats small{display:block;margin:0}.admin-resource-stats strong{font-size:1.12rem;line-height:1}.admin-resource-stats small{margin-top:.18rem;color:#7d8c93;font-size:.66rem}.admin-resource-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.7rem;padding:.8rem 1rem;border:1px solid #e2e6e8;border-radius:.8rem;background:#fff}.admin-resource-toolbar h3{margin:.12rem 0 .05rem;font-size:1rem}.admin-resource-toolbar p{margin:0;color:#7c8b92;font-size:.7rem}.admin-resource-search{display:flex;align-items:center;gap:.5rem;width:min(100%,350px);min-height:42px;padding:0 .75rem;border:1px solid #d5dce0;border-radius:.65rem;background:#fbfcfb}.admin-resource-search:focus-within{border-color:var(--brand);box-shadow:0 0 0 .18rem rgba(7,82,163,.08)}.admin-resource-search span{color:#7d8c93}.admin-resource-search input{width:100%;border:0;outline:0;background:transparent;font-size:.78rem}.admin-resource-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}.admin-resource-card{display:flex;min-width:0;min-height:270px;flex-direction:column;padding:1rem;border:1px solid #dfe4e7;border-radius:.82rem;background:#fff;box-shadow:0 4px 15px rgba(3,30,76,.035);transition:.18s}.admin-resource-card:hover{border-color:#b9cde4;transform:translateY(-2px);box-shadow:0 10px 24px rgba(3,30,76,.07)}.admin-resource-card.is-inactive{background:#fbfbfa}.admin-resource-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:.7rem}.admin-resource-number{color:#9aa6ab;font-size:.65rem;font-weight:900;letter-spacing:.09em}.admin-resource-status{display:flex;align-items:center;gap:.3rem;padding:.25rem .48rem;border-radius:99px;color:#28775a;background:#e8f6f0;font-size:.64rem;font-weight:800}.admin-resource-status i{width:6px;height:6px;border-radius:50%;background:#42a77e}.is-inactive .admin-resource-status{color:#8a6469;background:#f7ecee}.is-inactive .admin-resource-status i{background:#ba737c}.admin-resource-main{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.7rem}.admin-resource-symbol{display:grid;place-items:center;width:42px;height:42px;border-radius:.65rem;color:#fff;background:var(--brand);font-size:.85rem;font-weight:900}.tabulators-admin-page .admin-resource-symbol{color:#0752a3;background:#eaf2fc}.admin-resource-main .resource-meta{margin:0 0 .16rem;font-size:.6rem}.admin-resource-main h3{margin:0;font:700 1rem/1.25 'Libre Franklin',Arial,sans-serif}.admin-resource-description{display:-webkit-box;min-height:42px;margin:.7rem 0;color:#71818a;font-size:.76rem;line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.admin-resource-taxonomy{display:flex;gap:.35rem;flex-wrap:wrap;margin:-.15rem 0 .65rem}.admin-resource-taxonomy span{padding:.24rem .42rem;border-radius:.35rem;color:#526b7e;background:#f0f3f5;font-size:.61rem;font-weight:700}.admin-resource-formats{display:flex;gap:.35rem;flex-wrap:wrap;margin-top:auto;padding-top:.55rem;border-top:1px solid #edf0ef}.admin-resource-formats span{padding:.28rem .45rem;border:1px solid #e0e4e6;border-radius:.4rem;color:#9aa4a8;background:#fafafa;font-size:.62rem;font-weight:700}.admin-resource-formats span.available{color:#0752a3;border-color:#cbdcf0;background:#f0f6fd}.admin-resource-actions{display:flex;align-items:center;gap:.25rem;margin-top:.65rem}.admin-resource-actions a,.admin-resource-actions button{display:inline-flex;align-items:center;min-height:34px;padding:.35rem .55rem;border:0;border-radius:.42rem;background:transparent;font-size:.67rem;font-weight:800}.resource-view-action{color:#28775a}.resource-edit-action{color:var(--brand)}.admin-resource-actions button{color:#b64b57}.admin-resource-actions a:hover,.admin-resource-actions button:hover{background:#f0f3f3}.admin-resource-empty,.admin-resource-no-results{padding:2.2rem;border:1px dashed #bfcbd2;border-radius:.85rem;background:#fff;text-align:center;color:#6f8089}.admin-resource-empty>span{display:grid;place-items:center;width:48px;height:48px;margin:0 auto .7rem;border-radius:.7rem;color:var(--brand);background:var(--brand-soft);font-weight:900}.admin-resource-empty h3{margin:0 0 .3rem;color:var(--ink);font-size:1.05rem}.admin-resource-empty p{font-size:.76rem}.admin-resource-no-results{font-size:.78rem}
.form-admin-overview{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1.2rem;margin-bottom:.8rem;padding:1.4rem 1.5rem;border-radius:.95rem;color:#fff;background:linear-gradient(120deg,#031e4c 0,#0752a3 100%);box-shadow:0 11px 30px rgba(3,30,76,.14)}.form-admin-overview:after{content:'';position:absolute;right:-85px;top:-145px;width:290px;height:290px;border:45px solid rgba(218,150,12,.09);border-radius:50%}.form-admin-overview-copy,.form-admin-overview-actions,.form-admin-metrics{position:relative;z-index:1}.form-admin-overview-copy>span{color:#e6b960;font-size:.62rem;font-weight:900;letter-spacing:.15em}.form-admin-overview-copy h2{margin:.35rem 0 .2rem;color:#fff;font-size:1.45rem}.form-admin-overview-copy p{max-width:690px;margin:0;color:#cbd9e5;font-size:.8rem}.form-admin-overview-actions{display:flex;align-items:flex-start;gap:.45rem}.form-admin-overview-actions .btn-light{color:#0752a3}.form-admin-metrics{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,1fr);gap:.55rem}.form-admin-metrics>div{display:flex;align-items:center;gap:.6rem;min-height:58px;padding:.6rem .7rem;border:1px solid rgba(255,255,255,.11);border-radius:.68rem;background:rgba(255,255,255,.075)}.form-metric-icon{display:grid;place-items:center;width:34px;height:34px;flex:0 0 34px;border-radius:.55rem;color:#fff;background:rgba(255,255,255,.1);font-size:.66rem;font-weight:900}.form-metric-icon.status{color:#5bd0a2;background:rgba(61,180,135,.14)}.form-metric-icon.visible{color:#e6b960;background:rgba(218,150,12,.13)}.form-metric-icon.answers{color:#9dc9f5;background:rgba(93,155,218,.15)}.form-admin-metrics p,.form-admin-metrics strong,.form-admin-metrics small{display:block;margin:0}.form-admin-metrics strong{color:#fff;font-size:.92rem}.form-admin-metrics small{margin-top:.12rem;color:#9fb2c0;font-size:.62rem}.public-form-admin .form-section-nav{top:82px;display:grid;grid-template-columns:repeat(4,1fr);gap:.4rem;padding:.45rem;border-color:#dce3e8}.public-form-admin .form-section-nav>a{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.55rem;min-width:0;padding:.55rem .65rem;border:1px solid transparent;border-radius:.58rem;color:#5f727e}.public-form-admin .form-section-nav>a:hover{border-color:#cbddee;background:#f2f7fd}.public-form-admin .form-section-nav>a>b{display:grid;place-items:center;width:28px;height:28px;border-radius:.45rem;color:var(--brand);background:var(--brand-soft);font-size:.62rem}.public-form-admin .form-section-nav>a>span{display:block;min-width:0;height:auto;padding:0;border-radius:0;color:inherit;background:transparent}.public-form-admin .form-section-nav strong,.public-form-admin .form-section-nav small{display:block}.public-form-admin .form-section-nav strong{color:var(--ink);font-size:.69rem}.public-form-admin .form-section-nav small{margin-top:.08rem;color:#87959b;font-size:.58rem}.public-form-admin .form-config-card{overflow:hidden;border-radius:.85rem}.public-form-admin .form-config-card>.card-body{padding:1.35rem!important}.public-form-admin .config-heading{margin-bottom:1.15rem;padding-bottom:.8rem}.public-form-admin .config-heading>div>span{width:38px;height:38px;border-radius:.62rem}.public-form-admin .config-heading h2{font-size:1.08rem}.public-form-admin .config-heading p{font-size:.72rem}.public-form-admin .form-label{margin-bottom:.35rem;color:#526775;font-size:.72rem;font-weight:800}.public-form-admin .form-control,.public-form-admin .form-select{border-color:#d6dde1;background:#fdfdfc}.public-form-admin textarea.form-control{line-height:1.5}.public-form-admin .form-footer{margin-top:1.25rem;padding-top:1rem}.public-form-admin .field-row{min-height:62px;padding:.6rem .65rem;border-color:#dfe4e6}.public-form-admin .field-row:hover{border-color:#c4d6e7;background:#fbfdff}.public-form-admin .field-order{width:38px;height:38px}.public-form-admin .field-editor{padding:1.15rem;border-color:#c8d9eb;background:linear-gradient(145deg,#f8fbff,#f1f6fc)}.public-form-admin .submission-card{border-color:#dde3e6;transition:.18s}.public-form-admin .submission-card[open]{border-color:#b9cee4;box-shadow:0 7px 18px rgba(3,30,76,.055)}.public-form-admin .submission-card summary{min-height:62px;padding:.7rem .8rem}.public-form-admin .submission-card summary:hover{background:#f8fbff}.public-form-admin #informacion{border-top:3px solid #0752a3}.public-form-admin #cuenta-bancaria{border-top:3px solid #da960c}.public-form-admin #campos{border-top:3px solid #4b8bd4}.public-form-admin #respuestas{border-top:3px solid #42a77e}
@media(max-width:991.98px){.admin-resource-grid{grid-template-columns:1fr}.form-admin-overview{grid-template-columns:1fr}.form-admin-overview-actions{justify-content:flex-start}.public-form-admin .form-section-nav{top:80px}}
@media(max-width:767.98px){.admin-resource-hero{grid-template-columns:1fr;padding:1.1rem}.admin-resource-create{width:100%}.admin-resource-stats,.form-admin-metrics{grid-template-columns:1fr 1fr}.admin-resource-toolbar{align-items:flex-start;flex-direction:column}.admin-resource-search{width:100%}.form-admin-overview{padding:1.15rem}.form-admin-overview-actions{display:grid;grid-template-columns:1fr 1fr}.form-admin-overview-actions .btn{white-space:nowrap}.public-form-admin .form-section-nav{display:flex;overflow-x:auto;scrollbar-width:none}.public-form-admin .form-section-nav::-webkit-scrollbar{display:none}.public-form-admin .form-section-nav>a{min-width:145px}.public-form-admin .form-config-card>.card-body{padding:1rem!important}.public-form-admin .config-heading{align-items:flex-start;flex-direction:column}.public-form-admin .field-row{grid-template-columns:auto minmax(0,1fr) auto}.public-form-admin .field-row>form,.public-form-admin .field-row>a{grid-column:3}.public-form-admin .submission-card summary{grid-template-columns:auto minmax(0,1fr)}.public-form-admin .submission-open{grid-column:2}}
@media(max-width:480px){.admin-resource-stats,.form-admin-metrics{gap:.4rem}.admin-resource-stats>div,.form-admin-metrics>div{min-height:54px;padding:.5rem}.admin-resource-card{min-height:0}.admin-resource-actions{display:grid;grid-template-columns:1fr 1fr}.admin-resource-actions form{grid-column:1/-1}.admin-resource-actions a,.admin-resource-actions button{justify-content:center;width:100%;background:#f4f6f6}.form-admin-overview-actions{grid-template-columns:1fr}.form-admin-overview-actions .btn{width:100%}.form-admin-overview-copy h2{font-size:1.3rem}}
@media(max-width:575.98px){
 .app-header{min-height:70px}
 .content{padding-bottom:2.5rem}
 .teacher-hero,.admin-intro{border-left-width:3px}
 .panel-card>.card-body{padding:1.2rem!important}
}

/* Identidad alegre y profesional del panel */
:root{--brand:#0b5fbd;--yellow:#eda915;--brand-soft:#e6f2ff;--cream:#fff9ec}
.app-body,.workspace{background:#eef5fc}
.sidebar{background:#052f63}
.app-header{border-bottom:3px solid #f0c34f;background:rgba(255,255,255,.98)}
.app-header>div>small{color:var(--brand)}
.btn-brand{--bs-btn-bg:var(--brand);--bs-btn-border-color:var(--brand);box-shadow:0 8px 20px rgba(11,95,189,.2)}
.sidebar .sidebar-nav .nav-link.active{background:#0b5fbd;box-shadow:0 8px 22px rgba(0,0,0,.12)}
.sidebar .sidebar-nav .nav-link.active:after{background:#ffd66f}
.teacher-hero,.admin-intro{position:relative;overflow:hidden;border-left-color:var(--yellow);background:#fff}
.teacher-hero:after,.admin-intro:after{content:"";position:absolute;right:-55px;top:-80px;width:180px;height:180px;border:28px solid rgba(237,169,21,.12);border-radius:50%}
.teacher-hero>*,.admin-intro>*{position:relative;z-index:1}
.teacher-overview>div:nth-child(1){border-top:3px solid var(--yellow)}
.teacher-overview>div:nth-child(2){border-top:3px solid var(--brand)}
.teacher-overview .overview-message{border-top:3px solid var(--yellow);background:#0752a3}
.kpi-card{position:relative;overflow:hidden;border-top:4px solid var(--brand)}
.kpi-card:nth-child(2){border-top-color:#42a77e}
.kpi-card:nth-child(3){border-top-color:var(--yellow);background:#fffdf7}
.kpi-card:nth-child(4){border-top-color:#4b8bd4}
.kpi-icon.yellow{background:#fff0bd}
.analytics-card,.operations-card,.users-table-card,.panel-card{background:#fff}
.library-hero,.tabulator-hero{background:#0752a3}
.library-hero:before{content:"";position:absolute;left:-70px;bottom:-120px;width:250px;height:250px;border:38px solid rgba(255,255,255,.06);border-radius:50%}
.library-hero:after{border-color:rgba(237,169,21,.18)}
.library-hero .eyebrow{color:#ffe09a}
.visual-ring{border-color:rgba(255,255,255,.28);box-shadow:inset 0 0 0 14px rgba(255,255,255,.09)}
.visual-ring span{background:var(--yellow)}
.library-summary>div{border-top:3px solid #dbeaff}
.library-summary>div:nth-child(2){border-top-color:#f2d174}
.library-summary>div:nth-child(3){border-top-color:#9fc9f2}
.library-card{overflow:hidden;border-top:4px solid var(--brand)}
.library-card:nth-child(3n+2){border-top-color:var(--yellow);background:#fffdf8}
.library-card:nth-child(3n+3){border-top-color:#5b9be0}
.library-card-icon{background:var(--brand)}
.tabulator-card .library-card-icon{background:var(--yellow)}
.profile-summary{background:#0752a3}
.upload-box{background:#eef7ff}
.permission-check,.detail-box{background:#f8fbff}
.form-section-nav{border-top:3px solid var(--yellow)}
.config-heading>div>span,.field-order,.submission-id{background:#e4f1ff}
.field-editor{background:#f3f9ff}
.login-container{border-top:5px solid var(--yellow)}
.login-security{background:#eaf5ff}

@media(max-width:575.98px){
 .teacher-hero:after,.admin-intro:after{right:-90px;top:-100px}
 .library-hero{border-top-color:#ffd66f}
}

/* Navegación lateral legible y estable */
.app-body{padding-left:272px}
.sidebar{width:272px;padding:1.2rem 1rem}
.sidebar .offcanvas-body{width:100%;min-width:0;overflow-x:hidden}
.app-logo{margin-bottom:.85rem}
.app-logo img{max-width:205px;height:82px!important}
.sidebar-label{display:block!important;color:#9fb5c5!important;opacity:1!important;visibility:visible!important}
.sidebar-nav{display:flex!important;width:100%;min-width:0}
.sidebar .sidebar-nav .nav-link{display:grid!important;grid-template-columns:32px minmax(0,1fr);align-items:center;width:100%;min-width:0;min-height:43px;gap:.7rem;padding:.55rem .68rem;color:#d7e5ee!important;opacity:1!important;visibility:visible!important}
.sidebar .sidebar-nav .nav-link>.nav-icon{display:grid!important;color:#c6d8e3!important}
.sidebar .sidebar-nav .nav-link>span:last-child{display:block!important;min-width:0;color:inherit!important;font-size:.84rem;font-weight:650;line-height:1.25;opacity:1!important;visibility:visible!important;white-space:normal;overflow-wrap:anywhere}
.sidebar .sidebar-nav .nav-link:hover{color:#fff!important;background:rgba(255,255,255,.09)}
.sidebar .sidebar-nav .nav-link.active{color:#fff!important;background:#0b5fbd}
.sidebar .sidebar-nav .nav-link.active>.nav-icon{color:#052f63!important;background:#ffd36a}
.sidebar-divider{width:calc(100% - 1.3rem)}
.sidebar-account{width:100%}
.sidebar-user b{color:#fff}
.sidebar-user small{color:#a9bdc9}

@media(max-width:991.98px){
 .app-body{padding-left:0}
 .sidebar{width:286px}
}
@media(max-width:575.98px){
 .sidebar .sidebar-nav .nav-link{min-height:46px;font-size:.88rem}
 .sidebar .sidebar-nav .nav-link>span:last-child{font-size:.87rem}
}

/* Sidebar claro con contraste accesible */
.sidebar{color:#173b63!important;border-right:1px solid #d2e0ec;background:#eaf3fb!important;background-image:none!important;box-shadow:8px 0 28px rgba(3,30,76,.07)}
.app-logo{border-bottom-color:#cadbe9}
.sidebar-label{color:#637f98!important;font-weight:900!important}
.sidebar-divider{background:#cfdeea}
.sidebar .sidebar-nav .nav-link{color:#244b70!important}
.sidebar .sidebar-nav .nav-link>.nav-icon{color:#0b5fbd!important;background:#d9eaff!important}
.sidebar .sidebar-nav .nav-link:hover{color:#062e59!important;background:#dceaf7!important}
.sidebar .sidebar-nav .nav-link.active{color:#fff!important;background:#0b5fbd!important;box-shadow:0 9px 22px rgba(11,95,189,.2)}
.sidebar .sidebar-nav .nav-link.active>.nav-icon{color:#052f63!important;background:#ffd36a!important}
.sidebar .sidebar-nav .nav-link.active>span:last-child{color:#fff!important}
.sidebar-account{border-top-color:#cadbe9}
.sidebar-user b{color:#173b63!important}
.sidebar-user small{color:#607b92!important}
.sidebar-logout{color:#466781!important;border-color:#c7d8e6!important;background:#f4f9fd!important}
.sidebar-logout:hover{color:#fff!important;border-color:#0b5fbd!important;background:#0b5fbd!important}
.sidebar-logout span{color:inherit!important}
.offcanvas-header{border-bottom:1px solid #cadbe9}
.offcanvas-header .fw-bold{color:#173b63!important}
.offcanvas-header .btn-close{filter:none}

/* Optimización integral para celulares */
@media(max-width:767.98px){
 html,body{max-width:100%;overflow-x:hidden}
 .app-body{font-size:.94rem}
 .app-header{min-height:68px;padding:.55rem .8rem}
 .app-header .menu-toggle{display:grid;place-items:center;width:42px;height:42px;flex:0 0 42px;margin:0;padding:0}
 .app-header>div:nth-child(2){display:none}
 .user-chip{margin-left:auto;padding:.25rem;border-radius:.7rem}
 .user-chip>span,.user-chip>img{width:38px;height:38px}
 .user-chip>div{display:none}
 .content{width:100%;padding:1rem .78rem 2.5rem}
 .app-alert{margin:.75rem .78rem 0}
 .btn{min-height:42px}
 .form-control,.form-select{min-height:46px;font-size:16px}
 textarea.form-control{min-height:120px}
 .page-toolbar{gap:.6rem}
 .page-toolbar .btn{width:100%}
 .teacher-hero,.admin-intro{gap:1rem;padding:1.2rem 1rem}
 .teacher-hero h2,.admin-intro h2{font-size:1.35rem}
 .teacher-identity{min-width:0}
 .teacher-overview{grid-template-columns:1fr 1fr;gap:.55rem}
 .teacher-overview>div{min-width:0;padding:.7rem}
 .teacher-overview .overview-message{grid-column:1/-1}
 .overview-message p{font-size:.74rem}
 .module-heading{align-items:flex-start;flex-direction:column;padding:.95rem 1rem}
 .module-heading-actions{width:100%;justify-content:space-between}
 .teacher-resource-list{padding:.1rem .9rem}
 .teacher-resource-item{grid-template-columns:auto minmax(0,1fr);gap:.7rem}
 .resource-actions{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;width:100%}
 .resource-actions .btn{width:100%}
 .executive-head{align-items:flex-start;flex-direction:column}
 .executive-head>div:last-child{width:100%}
 .executive-head .btn{width:100%}
 .kpi-grid{grid-template-columns:1fr 1fr;gap:.55rem}
 .kpi-card{padding:.78rem}
 .kpi-card>strong{font-size:1.35rem}
 .dashboard-analysis-grid{grid-template-columns:1fr}
 .donut-content{gap:1rem;min-height:165px}
 .donut-chart{width:112px;height:112px;flex-basis:112px}
 .operations-grid{grid-template-columns:1fr}
 .catalog-compact-grid{grid-template-columns:1fr}
 .catalog-page-head,.users-head{align-items:flex-start;flex-direction:column}
 .catalog-page-head .btn,.users-head .btn{width:100%}
 .catalog-row{align-items:flex-start;flex-direction:column}
 .catalog-actions{width:100%;justify-content:flex-end}
 .users-summary{grid-template-columns:repeat(3,1fr);gap:.45rem}
 .users-summary>div{align-items:flex-start;flex-direction:column;gap:.15rem;min-width:0;padding:.55rem}
 .users-search{grid-column:1/-1;min-height:46px}
 .users-table-card{overflow:visible;border:0;background:transparent;box-shadow:none}
 .users-table-card .table-responsive{overflow:visible}
 .users-table{display:block;min-width:0}
 .users-table thead{display:none}
 .users-table tbody{display:grid;gap:.75rem}
 .users-table tr[data-user-row]{display:block;overflow:hidden;border:1px solid #d8e3ec;border-radius:.85rem;background:#fff;box-shadow:0 5px 16px rgba(3,30,76,.045)}
 .users-table tr[data-user-row] td{display:grid;grid-template-columns:82px minmax(0,1fr);align-items:center;gap:.7rem;width:100%;padding:.7rem .8rem;border-bottom:1px solid #edf0f2;text-align:left!important}
 .users-table tr[data-user-row] td:before{content:attr(data-label);color:#667e92;font-size:.62rem;font-weight:900;letter-spacing:.07em;text-transform:uppercase}
 .users-table tr[data-user-row] td:last-child{border-bottom:0}
 .users-table tr:not([data-user-row]){display:block}
 .users-table tr:not([data-user-row]) td{display:block!important}
 .user-identity{min-width:0}
 .user-identity strong,.user-contact span{max-width:100%;white-space:normal;overflow-wrap:anywhere}
 .permission-pills{flex-wrap:wrap}
 .user-actions{justify-content:flex-start;flex-wrap:wrap}
 .field-builder-grid{grid-template-columns:1fr}
 .field-editor{position:static}
 .field-row{grid-template-columns:auto minmax(0,1fr) auto}
 .field-row>form,.field-row>a{grid-column:3}
 .form-section-nav{top:72px;margin-left:-.2rem;margin-right:-.2rem;overflow-x:auto;scrollbar-width:none}
 .form-section-nav::-webkit-scrollbar{display:none}
 .form-section-nav a{min-height:40px;white-space:nowrap}
 .config-heading{align-items:flex-start;flex-direction:column}
 .submission-card summary{grid-template-columns:auto minmax(0,1fr)}
 .submission-open{grid-column:2}
 .submission-answers{grid-template-columns:1fr}
 .library-hero{padding:1.25rem 1rem}
 .library-hero h2{font-size:1.65rem}
 .library-hero-meta{gap:.35rem}
 .library-toolbar{padding:.9rem}
 .library-summary{grid-template-columns:1fr}
 .library-grid{grid-template-columns:1fr}
 .library-card{min-height:auto;padding:.95rem}
 .library-card-footer{align-items:flex-start;flex-direction:column}
 .library-actions{display:grid;grid-template-columns:1fr 1fr;width:100%;justify-content:stretch}
 .library-actions .btn{width:100%}
 .library-locked{align-items:flex-start;flex-direction:column;padding:1.25rem}
 .profile-card{border-radius:.85rem}
 .profile-summary{padding:1.5rem!important}
 .profile-photo,.avatar-profile{width:96px;height:96px}
 .form-footer{flex-direction:column-reverse}
 .form-footer .btn{width:100%}
 .danger-zone,.resource-row{align-items:flex-start;flex-direction:column}
 .danger-zone .btn{width:100%}
}

@media(max-width:420px){
 .content{padding-left:.65rem;padding-right:.65rem}
 .kpi-grid{grid-template-columns:1fr}
 .teacher-overview{grid-template-columns:1fr}
 .teacher-overview .overview-message{grid-column:auto}
 .users-summary{grid-template-columns:1fr 1fr}
 .users-summary>div:nth-child(3){grid-column:1/-1}
 .users-table tr[data-user-row] td{grid-template-columns:1fr;gap:.3rem}
 .resource-actions,.library-actions{grid-template-columns:1fr}
 .donut-content{align-items:flex-start;flex-direction:column}
 .donut-chart{align-self:center}
}

/* Accesos a manuales de cada panel */
.panel-manual-link{display:flex!important;align-items:center;gap:.65rem;margin-top:.85rem;padding:.68rem .78rem;border:1px solid #bfd3ec;border-radius:.75rem;color:#073e7c!important;background:#f5f9fe;transition:.18s ease}
.panel-manual-link:hover{border-color:#0b5fbd;background:#eaf3fb;transform:translateY(-1px)}
.panel-manual-link>span:first-child{display:grid;place-items:center;width:32px;height:32px;flex:0 0 32px;border-radius:.55rem;color:#052f63;background:#ffd36a;font-size:1rem;font-weight:900}
.panel-manual-link b,.panel-manual-link small{display:block}
.panel-manual-link b{font-size:.78rem;line-height:1.2}
.panel-manual-link small{margin-top:.14rem;color:#607b92;font-size:.65rem;font-weight:600}

/* Legibilidad del panel: eleva textos auxiliares y controles demasiado pequeños */
.app-body{font-size:1rem;line-height:1.5}
.app-body small{font-size:.78rem}
.app-header small,.sidebar-label,.sidebar-label.inner{font-size:.72rem}
.sidebar .sidebar-nav .nav-link>span:last-child{font-size:.9rem}
.eyebrow,.analytics-kicker{font-size:.7rem}
.dashboard-date{font-size:.72rem}
.kpi-card h3{font-size:.9rem}
.kpi-card p{font-size:.78rem}
.analytics-card header a,.analytics-total{font-size:.78rem}
.donut-chart span,.chart-legend p,.metric-label{font-size:.8rem}
.chart-legend small,.horizontal-metrics small{font-size:.74rem}
.resource-efficiency span,.resource-efficiency p,.operations-card>header>span{font-size:.76rem}
.operations-grid strong{font-size:.82rem}
.operations-grid small{font-size:.74rem}
.form-section-nav a{font-size:.86rem}
.config-heading p{font-size:.88rem}
.status-chip{font-size:.78rem}
.field-row b{font-size:.88rem}
.field-row small{font-size:.76rem}
.field-editor-checks label{font-size:.86rem}
.submission-card summary b{font-size:.9rem}
.submission-card summary small,.submission-open,.submission-answers small{font-size:.76rem}
.submission-answers b,.submission-answers a{font-size:.86rem}
.library-hero p{font-size:1rem}
.library-hero-meta span{font-size:.76rem}
.library-toolbar p,.library-search input{font-size:.86rem}
.library-summary small{font-size:.76rem}
.card-number,.card-status{font-size:.72rem}
.library-card>p{font-size:.86rem}
.library-card-footer small{font-size:.68rem}
.library-card-footer span{font-size:.74rem}
.library-actions .btn{font-size:.76rem}
.resource-group-heading small,.resource-group-heading>span{font-size:.7rem}
.form-label{font-size:.88rem}
.form-control,.form-select,.btn{font-size:.92rem}

@media(max-width:767.98px){
 .app-body{font-size:1rem}
 .sidebar .sidebar-nav .nav-link{min-height:48px}
 .sidebar .sidebar-nav .nav-link>span:last-child{font-size:.96rem}
 .app-header h1{font-size:1.2rem}
 .field-row b,.submission-card summary b{font-size:.94rem}
 .field-row small,.submission-card summary small{font-size:.8rem}
}
.executive-actions{display:flex;align-items:flex-end;flex-direction:column;gap:.55rem}
.executive-actions>div{display:flex;gap:.55rem}
.btn-manual{gap:.45rem;border:1px solid #b9cfe4;color:#0752a3;background:#fff;font-weight:800}
.btn-manual:hover{border-color:#0b5fbd;color:#fff;background:#0b5fbd}
.btn-manual span{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:.4rem;color:#052f63;background:#ffd36a}

@media(max-width:767.98px){
 .executive-actions{align-items:stretch;width:100%}
 .executive-actions>div{display:grid;grid-template-columns:1fr;gap:.55rem}
 .executive-actions .btn{width:100%}
 .panel-manual-link{max-width:280px}
}

/* Admin form: keep primary actions legible against the dark overview. */
.form-admin-overview-actions .btn-light{color:#0752a3!important;background:#fff!important;border-color:#fff!important;box-shadow:0 5px 14px rgba(0,0,0,.12)}
.form-admin-overview-actions .btn-light:hover{color:#063f7c!important;background:#f3f7fb!important;border-color:#f3f7fb!important}

@media(max-width:767.98px){
 .public-form-admin .form-section-nav{display:grid;grid-template-columns:1fr 1fr;overflow:visible}
 .public-form-admin .form-section-nav>a{min-width:0;white-space:normal}
}

/* Listado compacto de tests y tabuladores */
.admin-resource-list{overflow:hidden;border:1px solid #dfe4e7;border-radius:.8rem;background:#fff;box-shadow:0 4px 15px rgba(3,30,76,.035)}
.admin-resource-list-head,.admin-resource-list-row{display:grid;grid-template-columns:minmax(300px,1fr) 230px 90px 190px;align-items:center;gap:.8rem}
.admin-resource-list-head{min-height:38px;padding:.45rem .85rem;color:#7a8990;background:#f4f7f8;font-size:.66rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase}
.admin-resource-list-row{min-height:82px;padding:.65rem .85rem;border-top:1px solid #e8ecee;transition:.16s}
.admin-resource-list-row:hover{background:#f9fbfd}
.admin-resource-list-row.is-inactive{background:#fbfbfa}
.admin-resource-list-row .admin-resource-main{gap:.6rem}
.admin-resource-list-row .admin-resource-symbol{width:36px;height:36px;border-radius:.55rem;font-size:.75rem}
.admin-resource-list-row .admin-resource-main h3{font-size:.88rem}
.admin-resource-list-row .resource-meta{font-size:.58rem}
.admin-resource-list-row .admin-resource-description{display:block;overflow:hidden;min-height:0;margin:.15rem 0 0;text-overflow:ellipsis;white-space:nowrap;font-size:.68rem}
.admin-resource-list-row .admin-resource-taxonomy{margin:.25rem 0 0}
.admin-resource-list-row .admin-resource-taxonomy span{padding:.16rem .32rem;font-size:.56rem}
.admin-resource-list-row .admin-resource-formats{margin:0;padding:0;border:0}
.admin-resource-list-row .admin-resource-status{justify-self:start}
.admin-resource-list-row .admin-resource-actions{justify-content:flex-end;margin:0}
.admin-resource-list-row .admin-resource-actions a,.admin-resource-list-row .admin-resource-actions button{min-height:32px;padding:.3rem .45rem}

@media(max-width:1100px){
 .admin-resource-list-head,.admin-resource-list-row{grid-template-columns:minmax(260px,1fr) 190px 85px 160px;gap:.55rem}
}
@media(max-width:767.98px){
 .admin-resource-list{overflow:visible;border:0;background:transparent;box-shadow:none}
 .admin-resource-list-head{display:none}
 .admin-resource-list-row{grid-template-columns:minmax(0,1fr) auto;gap:.55rem;min-height:0;margin-bottom:.5rem;padding:.75rem;border:1px solid #dfe4e7;border-radius:.7rem;background:#fff}
 .admin-resource-list-row .admin-resource-main{grid-column:1/-1}
 .admin-resource-list-row .admin-resource-formats{grid-column:1/-1}
 .admin-resource-list-row .admin-resource-status{grid-column:1}
 .admin-resource-list-row .admin-resource-actions{grid-column:2}
 .admin-resource-list-row .admin-resource-description{white-space:normal}
}
@media(max-width:480px){
 .admin-resource-list-row .admin-resource-actions{display:flex;grid-template-columns:none}
 .admin-resource-list-row .admin-resource-actions form{grid-column:auto}
 .admin-resource-list-row .admin-resource-actions a,.admin-resource-list-row .admin-resource-actions button{width:auto;background:#f4f6f6}
}

/* Acciones compactas del módulo de usuarios */
.user-actions-dropdown{display:flex;justify-content:flex-end}
.user-actions-trigger{display:inline-flex;align-items:center;gap:.45rem;min-height:34px;padding:.35rem .55rem;border:1px solid #d6dfe5;border-radius:.48rem;color:#355267;background:#fff;font-size:.68rem;font-weight:800}
.user-actions-trigger span{color:#0752a3;font-size:1rem;line-height:.7}
.user-actions-trigger:hover,.user-actions-trigger[aria-expanded="true"]{border-color:#afc7dd;color:#0752a3;background:#f3f8fd}
.user-actions-dropdown .dropdown-menu{min-width:225px;padding:.38rem;border-color:#d8e2e8;border-radius:.62rem;box-shadow:0 12px 30px rgba(3,30,76,.13)}
.user-actions-dropdown .dropdown-item{display:flex;align-items:center;gap:.55rem;min-height:36px;padding:.42rem .55rem;border:0;border-radius:.4rem;color:#425d70;background:transparent;font-size:.72rem;font-weight:700}
.user-actions-dropdown .dropdown-item>span{display:grid;place-items:center;width:22px;height:22px;flex:0 0 22px;border-radius:.35rem;color:#0752a3;background:#eaf2fc;font-size:.65rem;font-weight:900}
.user-actions-dropdown form{margin:0}
.user-actions-dropdown .send-registration-action{color:#0752a3}
.user-actions-dropdown .send-registration-action>span{color:#257657;background:#e5f4ed}
.user-actions-dropdown .delete-action{width:100%;color:#b44754;text-align:left}
.user-actions-dropdown .delete-action>span{color:#b44754;background:#fbecef}
.user-actions-dropdown .dropdown-item:hover{background:#f2f6f8}
.user-actions-dropdown .dropdown-menu.user-actions-floating{position:fixed!important;inset:auto!important;top:var(--actions-top)!important;left:var(--actions-left)!important;z-index:1090!important;transform:none!important;display:block}
@media(max-width:767.98px){.user-actions-dropdown{justify-content:flex-start}}

/* Gestor de múltiples formularios */
.forms-manager-page{max-width:1320px}.forms-manager-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.8rem}.forms-manager-head h2{margin:.28rem 0 .12rem;font-size:1.42rem}.forms-manager-head p{margin:0;color:#71818a;font-size:.82rem}.new-public-form{display:grid;grid-template-columns:minmax(220px,1fr) minmax(210px,.75fr) minmax(270px,1fr) auto;align-items:end;gap:.8rem;margin-bottom:.75rem;padding:1rem;border:1px solid #cbdced;border-radius:.8rem;background:#f3f8fd}.new-public-form>div{display:flex;align-items:center;gap:.6rem}.new-public-form strong,.new-public-form small,.new-public-form label>span{display:block}.new-public-form strong{font-size:.82rem}.new-public-form small{margin-top:.1rem;color:#73858f;font-size:.64rem}.new-public-form label>span{margin-bottom:.32rem;color:#526775;font-size:.67rem;font-weight:800}.form-manager-icon{display:grid;place-items:center;width:36px;height:36px;flex:0 0 36px;border-radius:.55rem;color:#fff;background:#0752a3;font-weight:900}.form-slug-input{display:flex;align-items:stretch}.form-slug-input i{display:flex;align-items:center;padding:0 .55rem;border:1px solid #d6dde1;border-right:0;border-radius:.5rem 0 0 .5rem;color:#748691;background:#f5f7f8;font-size:.63rem;font-style:normal;white-space:nowrap}.form-slug-input .form-control{border-radius:0 .5rem .5rem 0}.forms-manager-summary{display:grid;grid-template-columns:repeat(3,170px);gap:.55rem;margin-bottom:.7rem}.forms-manager-summary>div{display:flex;align-items:center;gap:.55rem;min-height:52px;padding:.6rem .75rem;border:1px solid #dfe5e8;border-radius:.68rem;background:#fff}.forms-manager-summary strong{font-size:1.15rem}.forms-manager-summary span{color:#74848c;font-size:.67rem}.forms-manager-list{overflow:hidden;border:1px solid #dfe4e7;border-radius:.8rem;background:#fff;box-shadow:0 4px 15px rgba(3,30,76,.035)}.forms-manager-list-head,.forms-manager-row{display:grid;grid-template-columns:minmax(300px,1fr) 130px 100px 100px 210px;align-items:center;gap:.7rem}.forms-manager-list-head{padding:.55rem .85rem;color:#74838a;background:#f6f8f8;font-size:.64rem;font-weight:900;text-transform:uppercase}.forms-manager-row{min-height:88px;padding:.7rem .85rem;border-top:1px solid #e8ecee}.forms-manager-row:hover{background:#fbfdff}.form-manager-identity{display:flex;align-items:center;gap:.65rem;min-width:0}.form-manager-identity>span{display:grid;place-items:center;width:38px;height:38px;flex:0 0 38px;border-radius:.58rem;color:#fff;background:#0752a3;font-size:.72rem;font-weight:900}.form-manager-identity strong,.form-manager-identity small,.form-manager-identity a{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.form-manager-identity strong{font-size:.82rem}.form-manager-identity small{margin-top:.08rem;color:#73848d;font-size:.66rem}.form-manager-identity a{margin-top:.15rem;color:#0752a3;font-size:.61rem}.form-manager-content span,.form-manager-content small{display:block;font-size:.66rem}.form-manager-content small{margin-top:.12rem;color:#839098}.form-manager-responses{display:flex;align-items:baseline;gap:.3rem}.form-manager-responses strong{font-size:1rem}.form-manager-responses span{color:#7d8c93;font-size:.62rem}.form-manager-actions{display:flex;align-items:flex-end;flex-direction:column;gap:.2rem}.form-manager-actions a{color:#0752a3;font-size:.67rem;font-weight:800}.form-manager-actions a:last-child{color:#6f8089;font-size:.61rem}.public-form-admin>.page-toolbar{margin-bottom:.65rem}
@media(max-width:1100px){.new-public-form{grid-template-columns:1fr 1fr}.new-public-form>div{grid-column:1/-1}.forms-manager-list-head,.forms-manager-row{grid-template-columns:minmax(250px,1fr) 110px 90px 90px 180px}}
@media(max-width:767.98px){.forms-manager-head{align-items:flex-start;flex-direction:column}.forms-manager-head .btn{width:100%}.new-public-form{grid-template-columns:1fr}.new-public-form>div{grid-column:auto}.forms-manager-summary{grid-template-columns:repeat(3,1fr)}.forms-manager-summary>div{align-items:flex-start;flex-direction:column;gap:.1rem;min-width:0}.forms-manager-list{overflow:visible;border:0;background:transparent;box-shadow:none}.forms-manager-list-head{display:none}.forms-manager-row{display:grid;grid-template-columns:1fr auto;gap:.6rem;margin-bottom:.55rem;padding:.8rem;border:1px solid #dfe4e7;border-radius:.72rem;background:#fff}.form-manager-identity{grid-column:1/-1}.form-manager-content,.form-manager-responses{padding-top:.5rem;border-top:1px solid #edf0f2}.forms-manager-row>.status-chip{justify-self:end}.form-manager-actions{grid-column:1/-1;align-items:stretch;display:grid;grid-template-columns:1fr 1fr}.form-manager-actions a{padding:.48rem;border-radius:.42rem;background:#f0f5f9;text-align:center}.form-slug-input{min-width:0}.form-slug-input i{max-width:145px;overflow:hidden;text-overflow:ellipsis}}

.form-cover-admin{display:grid;grid-template-columns:210px minmax(0,1fr);align-items:center;gap:1rem;padding:.8rem;border:1px solid #d7e2ea;border-radius:.7rem;background:#f7fafc}.form-cover-preview{display:grid;place-items:center;overflow:hidden;aspect-ratio:16/9;border-radius:.55rem;color:#7790a2;background:linear-gradient(135deg,#dfeefa,#f7fbff);font-size:.62rem;font-weight:900;letter-spacing:.08em}.form-cover-preview img{width:100%;height:100%;object-fit:cover}.form-cover-admin small{display:block;margin-top:.35rem;color:#718493;font-size:.66rem}.form-cover-remove{display:flex;align-items:center;gap:.4rem;margin-top:.55rem;color:#a14e59;font-size:.68rem;font-weight:700}.form-manager-identity>img{width:52px;height:38px;flex:0 0 52px;border-radius:.45rem;object-fit:cover}.form-manager-identity>img+div{min-width:0}
@media(max-width:575.98px){.form-cover-admin{grid-template-columns:1fr}.form-cover-preview{max-width:100%}}

.form-manager-delete{margin:0}.form-manager-delete button{padding:.3rem .48rem;border:0;border-radius:.38rem;color:#a73f4d;background:#fbecef;font-size:.61rem;font-weight:800}.form-manager-delete button:hover{color:#fff;background:#b44754}.field-delete-action{min-width:66px;font-weight:800}.form-manager-actions>a:nth-child(3){color:#6f8089;font-size:.61rem}
@media(max-width:767.98px){.form-manager-delete{grid-column:1/-1}.form-manager-delete button{width:100%;min-height:36px}}
