:root{--primary:#2563eb;--primary-hover:#1d4ed8;--secondary:#64748b;--secondary-hover:#475569;--bg-color:#f8fafc;--card-bg:#fff;--text-main:#0f172a;--text-muted:#64748b;--border-color:#e2e8f0;--accent:#0ea5e9;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a}body{background-color:var(--bg-color);color:var(--text-main);margin:0;padding:0;font-family:Inter,sans-serif;line-height:1.5}body.iframe-mode{background-color:#0000}header{background-color:var(--card-bg);border-bottom:1px solid var(--border-color);box-shadow:var(--shadow-sm);z-index:10;padding:1.5rem 2rem;position:sticky;top:0}.header-content{justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;display:flex}h1{color:var(--primary);margin:0;font-size:1.5rem;font-weight:600}main{max-width:1200px;margin:2rem auto;padding:0 2rem}body.iframe-mode main{margin:0 auto;padding:.5rem}.filters-container{background-color:var(--card-bg);box-shadow:var(--shadow-md);border-radius:.75rem;flex-wrap:wrap;align-items:flex-end;gap:1rem;margin-bottom:2rem;padding:1.5rem;display:flex}.form-group{flex-direction:column;gap:.5rem;display:flex}label{color:var(--text-muted);font-size:.875rem;font-weight:500}input[type=date],input[type=number],select{border:1px solid var(--border-color);color:var(--text-main);border-radius:.375rem;outline:none;padding:.5rem .75rem;font-family:inherit;font-size:.875rem;transition:border-color .2s,box-shadow .2s}input[type=date]:focus,input[type=number]:focus,select:focus{border-color:var(--primary);box-shadow:0 0 0 3px #2563eb1a}.checkbox-group{flex-direction:row;align-items:center;gap:.5rem;height:38px}button{background-color:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:.375rem;height:38px;padding:.5rem 1.25rem;font-size:.875rem;font-weight:500;transition:background-color .2s}button:hover{background-color:var(--primary-hover)}.btn-secondary{background-color:var(--secondary);margin-bottom:1.5rem}.btn-secondary:hover{background-color:var(--secondary-hover)}.loading{text-align:center;color:var(--text-muted);padding:3rem;font-weight:500}.spinner{border:3px solid #0000001a;border-left-color:var(--primary);border-radius:50%;width:36px;height:36px;margin:0 auto 1rem;animation:1s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.sessions-grid{grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem;display:grid}.sessions-list{flex-direction:column;gap:1rem;display:flex}.sessions-list .session-card{flex-direction:row;align-items:center;padding:1rem 1.5rem}.sessions-list .session-title{flex:1;margin:0 1.5rem 0 0}.sessions-list .session-meta{flex-direction:row;align-items:center;gap:1.5rem;margin-top:0}.sessions-list .session-type{min-width:130px;margin:0 1.5rem 0 0}.session-card{background-color:var(--card-bg);box-shadow:var(--shadow-md);border-left:4px solid var(--accent);cursor:pointer;border-radius:.75rem;flex-direction:column;padding:1.5rem;transition:transform .2s,box-shadow .2s;display:flex}.session-card:hover{box-shadow:var(--shadow-lg);border-color:var(--primary);transform:translateY(-4px)}.session-type{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:.5rem;font-size:.75rem;font-weight:600}.session-title{color:var(--text-main);margin:0 0 1rem;font-size:1.125rem;font-weight:600;line-height:1.4}.session-meta{color:var(--text-muted);flex-direction:column;gap:.5rem;margin-top:auto;font-size:.875rem;display:flex}.meta-item{align-items:center;gap:.5rem;display:flex}.pagination{border-top:1px solid var(--border-color);justify-content:center;align-items:center;gap:1rem;margin-top:3rem;padding-top:2rem;display:flex}.pagination button{background-color:var(--card-bg);color:var(--text-main);border:1px solid var(--border-color)}.pagination button:hover:not(:disabled){background-color:var(--bg-color)}.pagination button:disabled{opacity:.5;cursor:not-allowed}.page-info{color:var(--text-muted);font-size:.875rem;font-weight:500}.empty-state{text-align:center;color:var(--text-muted);background:var(--card-bg);box-shadow:var(--shadow-md);border-radius:.75rem;padding:4rem 2rem}.details-container{background-color:var(--card-bg);box-shadow:var(--shadow-md);border-radius:.75rem;padding:2.5rem}.details-header{border-bottom:1px solid var(--border-color);margin-bottom:1.5rem;padding-bottom:1.5rem}.details-header h2{color:var(--primary);margin:0 0 .5rem;font-size:1.5rem}.detail-line{flex-wrap:wrap;margin-bottom:1rem;font-size:1rem;display:flex}.detail-label{color:var(--text-main);flex-shrink:0;width:200px;font-weight:600}.detail-value{color:var(--text-muted);flex-grow:1}.badge{text-transform:uppercase;border-radius:9999px;padding:.25rem .5rem;font-size:.75rem;font-weight:600;display:inline-block}.badge-true{color:#166534;background-color:#dcfce7}.badge-false{color:#475569;background-color:#f1f5f9}@media (width<=768px){.filters-container{flex-direction:column;align-items:stretch}.form-group{width:100%}.detail-label{width:100%;margin-bottom:.25rem}.sessions-list .session-card{flex-direction:column;align-items:flex-start}.sessions-list .session-title{margin:.5rem 0}.sessions-list .session-meta{flex-direction:column;gap:.5rem}}@media print{header,#btnBack,#filterForm,.filters-container,.pagination,#expedientePagination,.d-print-none{display:none!important}body{color:#000;background-color:#fff;font-size:12pt!important}main{margin:0;padding:0 1.5cm}.details-container,.session-card{box-shadow:none!important;border:1px solid #ccc!important;margin-bottom:1rem!important;padding:1rem!important}table,th,td,div,span,strong{font-size:12pt!important}table{page-break-inside:auto}tr{page-break-inside:avoid;page-break-after:auto}.badge{color:#000!important;border:1px solid #ccc!important;font-size:10pt!important}}
