:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#172a3e;background:#f3f5f8;font-size:16px;line-height:1.5}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}a{color:#1b496d}a:hover{text-decoration:underline}button{cursor:pointer}.of-hidden{display:none!important}.of-header{background:#0e1d30;color:white;min-height:67px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px max(18px,calc((100vw - 1240px)/2));box-shadow:0 3px 16px #0a1a2920}.of-header a{color:inherit;text-decoration:none}.of-brand{display:flex;align-items:center;gap:5px;font-size:1.15rem;letter-spacing:.03em}.of-brand span{color:#d7ac56}.of-brand small{font-size:.73rem;font-weight:400;color:#c3ccd7}.of-container{max-width:1240px;margin:auto;padding:28px 20px 76px}.of-title,.of-section-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:20px}.of-title h1{font-size:2rem;line-height:1.2;margin:6px 0}.of-title p,.of-section-head p{margin:0;color:#62738b}.of-overline{color:#b98a36!important;letter-spacing:.16em;font-size:.77rem;font-weight:800;text-transform:uppercase}.of-section-head h2{font-size:1.6rem;margin:0 0 4px}.of-card{background:white;border:1px solid #e1e6eb;border-radius:15px;padding:24px;box-shadow:0 3px 20px #223e5e08}.of-card h2{margin:0 0 16px}.of-btn{background:#142c47;color:#fff;border:1px solid #142c47;padding:11px 18px;font-weight:650;border-radius:9px;min-height:44px}.of-btn:hover{background:#254c74}.of-outline{background:transparent;color:#142c47}.of-outline:hover{background:#f4f7fa}.of-icon{border:0;background:#f0f2f5;width:36px;height:36px;border-radius:8px;color:#122437;font-size:1.1rem}.of-tabs{display:flex;gap:5px;overflow-x:auto;padding:5px;background:#e6ebf1;border-radius:12px;scrollbar-width:thin;margin-bottom:14px}.of-tabs button{white-space:nowrap;border:0;border-radius:9px;padding:12px 15px;background:transparent;color:#46566b;font-size:.93rem;font-weight:650}.of-tabs button.is-active{background:white;color:#152d46;box-shadow:0 2px 6px #1a355319}.of-status{min-height:22px;color:#52647d;font-size:.88rem;margin:9px 4px 16px}.of-status.error,.of-message{color:#aa302a}.of-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin:15px 0 25px}.of-stat{border-radius:13px;padding:18px 20px;background:#fff;border:1px solid #e1e6eb}.of-stat b{display:block;font-size:2rem;font-weight:750;line-height:1.25;color:#18334e}.of-stat span{font-size:.85rem;color:#69768a}.of-search-label{display:block;max-width:380px;margin-bottom:15px;font-weight:700;color:#43566a}.of-card input,.of-card select,.of-card textarea,.of-form input,.of-form select,.of-form textarea,.of-public select{width:100%;background:white;border:1px solid #cbd6e1;padding:11px;border-radius:8px;color:#112b42;outline-offset:2px;margin-top:5px}.of-card input:focus,.of-form input:focus,.of-form select:focus,.of-form textarea:focus{outline:2px solid #cda75c}.of-form textarea{min-height:130px;resize:vertical}.of-table-wrap{overflow-x:auto}.of-table{border-collapse:collapse;width:100%;min-width:680px;text-align:left}.of-table th{font-size:.75rem;text-transform:uppercase;letter-spacing:.07em;color:#617287;background:#f6f8fa}.of-table td,.of-table th{padding:14px 12px;border-bottom:1px solid #e9edf1;vertical-align:top}.of-table td{font-size:.92rem}.of-muted{color:#6a7a8d;font-size:.87rem}.of-badge{display:inline-block;padding:4px 9px;border-radius:30px;background:#e8edf4;font-size:.78rem;white-space:nowrap}.of-badge.active{color:#176540;background:#e8f5ed}.of-mini{border:1px solid #bfcfe0;background:white;border-radius:7px;padding:6px 10px;color:#163655}.of-mini:hover{background:#f1f5f8}.of-login{max-width:455px;margin:7vh auto}.of-login-head{text-align:center;margin-bottom:25px}.of-login h1{font-size:1.8rem;margin:8px}.of-login-head p,.of-small{color:#66788c;font-size:.9rem}.of-emblem{font-size:2.5rem}.of-login label,.of-form label{display:block;color:#30495f;font-weight:650;font-size:.91rem;margin-bottom:12px}.of-login .of-btn{width:100%;margin-top:5px}.of-message{min-height:26px;font-size:.92rem}.of-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.of-dialog-head h2{margin:0;font-size:1.4rem}dialog{border:1px solid #e2e6ec;box-shadow:0 10px 50px #0717264b;border-radius:15px;padding:24px;width:min(670px,calc(100vw - 20px));max-height:calc(100dvh - 30px);overflow:auto}dialog::backdrop{background:#0b192f9a}.of-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 15px}.of-fields .wide{grid-column:1/-1}.of-form small{color:#6a7c8d}.of-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:16px}.of-empty{padding:20px 10px;color:#677a8f}.of-public{background:#faf9f7}.of-post-hero{background:linear-gradient(110deg,#101f34,#21344a);color:#fff;padding:62px 0 73px}.of-post-hero h1{font-family:Georgia,"Times New Roman",serif;font-weight:500;line-height:1.1;font-size:clamp(2.3rem,5vw,4.4rem);margin:12px 0 17px}.of-post-hero h1 em{color:#d9b369;font-weight:400}.of-post-hero p{max-width:660px;color:#d5dce3}.of-post-main{min-height:55vh}.of-post-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.of-post{background:#fff;border:1px solid #e8e4dd;border-radius:12px;padding:23px;box-shadow:0 3px 12px #20202008}.of-post h3{font-family:Georgia,serif;line-height:1.2;font-size:1.5rem;color:#142a44;margin:7px 0}.of-post p{color:#52657a}.of-post meta{display:block}.of-post button{border:0;background:none;padding:0;color:#956e25;text-decoration:underline;font-weight:700}.of-post-article{grid-column:1/-1;max-width:800px;background:white;padding:30px;border:1px solid #e7e2d7;border-radius:12px}.of-post-article h2{font-family:Georgia,serif;font-size:2.3rem}.of-post-content{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.85}.of-public-footer{background:#0c1c2d;color:#e6edf2;padding:28px 0}.of-public-footer a{color:#e0b86d}@media(max-width:850px){.of-stats{grid-template-columns:repeat(2,1fr)}.of-post-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:620px){.of-header{padding:14px 16px;gap:10px}.of-brand small{display:none}.of-container{padding:22px 13px 55px}.of-title h1{font-size:1.55rem}.of-section-head h2{font-size:1.35rem}.of-card{padding:17px 13px}.of-title,.of-section-head{align-items:flex-start}.of-btn{padding:10px 12px}.of-fields{grid-template-columns:1fr}.of-stats{gap:9px}.of-stat{padding:13px}.of-post-grid{grid-template-columns:1fr}.of-post-hero{padding:40px 0}.of-post-article{padding:19px}.of-section-head{flex-wrap:wrap}.of-login{margin:4vh auto}.of-tabs{margin-left:-7px;margin-right:-7px}}
/* Expedientes V6 - fichas y filtros responsivos */
.of-filters{display:flex;align-items:end;flex-wrap:wrap;gap:13px;margin-bottom:9px}
.of-filters label{display:block;min-width:160px;flex:1;color:#43566a;font-size:.9rem;font-weight:650}
.of-filters .of-search-label{max-width:none;min-width:220px;flex:2;margin-bottom:0}
.of-filters select{width:100%;background:white;border:1px solid #cbd6e1;border-radius:8px;color:#112b42;padding:11px;margin-top:5px;min-height:46px}
.of-table .of-mini{margin:3px;white-space:nowrap}
.of-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.of-detail-field{background:#f7f9fb;border:1px solid #e6edf3;border-radius:9px;padding:12px;min-width:0;overflow-wrap:anywhere}
.of-detail-field small{display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:.07em;color:#64778b;font-weight:750;margin-bottom:4px}
.of-detail-field span{font-size:.98rem;white-space:pre-wrap}
.of-detail-field.wide{grid-column:1/-1}
.of-detail-section{margin-top:24px;border-top:1px solid #e6ebf0;padding-top:18px}
.of-detail-section h3{margin:0 0 12px;color:#152e46;font-size:1.1rem}
.of-detail-list{list-style:none;margin:0;padding:0}
.of-detail-list li{padding:12px 0;border-bottom:1px solid #e8edf2}
.of-detail-list li:last-child{border-bottom:0}
.of-detail-list small{display:block;color:#63758a;margin-top:3px}
.of-detail-actions{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 0}
.of-detail-actions .of-btn{padding:9px 12px}
#detail-dialog{width:min(850px,calc(100vw - 20px))}
.of-counter{font-weight:650;margin:12px 0}
@media(max-width:620px){
 .of-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
 .of-filters .of-search-label{grid-column:1/-1;min-width:0}
 .of-filters label{min-width:0}
 .of-detail-grid{grid-template-columns:1fr}
 .of-detail-field.wide{grid-column:auto}
}
/* Calendario judicial V6 */
.of-calendar-card{padding:22px}
.of-calendar-toolbar{display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between;margin-bottom:16px}
.of-calendar-nav{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.of-calendar-nav h3{font-family:Georgia,serif;font-size:1.35rem;margin:0;min-width:185px;text-align:center;color:#102a44}
.of-calendar-toolbar label{color:#455e76;font-weight:700;font-size:.9rem}
.of-calendar-toolbar select{margin-left:5px;background:white;border:1px solid #cbd6e1;padding:9px 10px;border-radius:8px;min-height:40px;color:#16324e}
.of-calendar-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;margin-bottom:6px}
.of-calendar-weekdays span{text-align:center;font-size:.75rem;font-weight:750;color:#61748c;padding:7px}
.of-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}
.of-calendar-cell{border:1px solid #e2e9f0;border-radius:9px;background:#fbfcfd;min-height:84px;min-width:0;display:flex;flex-direction:column;align-items:flex-start;padding:6px 7px;transition:background-color .12s ease}
.of-calendar-cell:hover{background:#f3f7fb}
.of-calendar-cell.is-selected{border:2px solid #cb9d4c;background:#fffaf0;padding:5px 6px}
.of-calendar-cell.is-today .of-calendar-date{background:#153450;color:white}
.of-calendar-blank{min-height:84px}
.of-calendar-date{border:0;background:none;font-weight:750;font-size:.9rem;padding:5px 8px;border-radius:100px;min-width:32px;text-align:center;color:#1a3650}
.of-calendar-date:focus-visible{outline:3px solid #b88e41;outline-offset:1px}
.of-calendar-indicators{display:flex;align-items:center;flex-wrap:wrap;gap:5px;margin:7px 0 0 4px}
.of-calendar-dot{display:block;width:10px;height:10px;border-radius:50%;background:#75869b}
.of-calendar-dot.cal-audiencia{background:#c9973d}
.of-calendar-dot.cal-cita{background:#2e719e}
.of-calendar-dot.cal-vencimiento{background:#b94849}
.of-calendar-dot.cal-otra{background:#79879a}
.of-calendar-more{font-size:.7rem;color:#64758a}
.of-calendar-day-panel{border-top:1px solid #e5ebf1;margin-top:18px;padding-top:17px}
.of-calendar-day-header{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.of-calendar-day-header h4{margin:0 0 10px;font-size:1.12rem}
.of-calendar-day-list{display:grid;gap:10px;margin-top:15px}
.of-calendar-day-event{background:#f8fafc;border:1px solid #dce5ef;border-left:4px solid #c69a4f;border-radius:8px;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 14px;overflow-wrap:anywhere}
.of-calendar-day-event b{font-size:.91rem}
.of-calendar-day-event small{color:#60738b;display:block;margin-top:5px}
.of-calendar-event-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap;flex-shrink:0}
@media(max-width:620px){
 .of-calendar-card{padding:14px 8px}
 .of-calendar-toolbar{align-items:flex-start}
 .of-calendar-toolbar label{width:100%;display:flex;align-items:center;justify-content:space-between}
 .of-calendar-toolbar select{flex:1;min-width:0}
 .of-calendar-nav{gap:4px;width:100%;justify-content:center}
 .of-calendar-nav h3{min-width:0;flex:1;font-size:1.05rem}
 .of-calendar-grid,.of-calendar-weekdays{gap:3px}
 .of-calendar-cell,.of-calendar-blank{min-height:59px}
 .of-calendar-cell{padding:3px}
 .of-calendar-cell.is-selected{padding:2px}
 .of-calendar-date{min-width:25px;font-size:.84rem;padding:3px}
 .of-calendar-indicators{margin:5px 0 0 4px;gap:2px}
 .of-calendar-dot{width:7px;height:7px}
 .of-calendar-day-event{align-items:flex-start;flex-direction:column}
}

/* Avisos judiciales V6 */
.of-alert-list{display:grid;gap:10px}
.of-alert-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px;border:1px solid #e1e8f0;background:#f9fbfd;border-radius:10px}
.of-alert-row>div{min-width:0;overflow-wrap:anywhere}
.of-alert-row strong{display:block;margin:7px 0 3px;color:#152e46}
.of-alert-row small{color:#5f7186;display:block}
.of-alert-row.is-late{background:#fff6f3;border-color:#e4a49a}
.of-alert-late{background:#fae1dc;color:#9b3028}
#alert-preferences-form{display:grid;gap:13px;max-width:780px}
#alert-preferences-form .of-checkline{display:flex;gap:10px;align-items:flex-start;color:#243f59;font-weight:650;cursor:pointer}
#alert-preferences-form input[type=checkbox]{width:18px;height:18px;accent-color:#152f4b;flex-shrink:0;margin-top:4px}
.of-alert-days{display:flex;gap:18px;flex-wrap:wrap;align-items:center;border:1px solid #e0e6ee;border-radius:10px;padding:14px 16px}
.of-alert-days legend{color:#38526b;font-weight:750;padding:0 6px}
.of-alert-days label{display:flex;align-items:center;gap:6px;font-size:.91rem}
.of-notice{background:#f4f7fa;border-left:3px solid #d5aa61;padding:10px 12px;border-radius:4px;color:#526a81;font-size:.87rem}
.of-label{font-weight:700;color:#30485f}
#alert-whatsapp-number{width:100%;max-width:370px;border:1px solid #cbd6e1;border-radius:8px;padding:11px;color:#152f4a}
.of-alert-status{padding-top:10px}
@media(max-width:620px){
 .of-alert-row{align-items:flex-start;flex-direction:column}
 #alert-preferences-form .of-checkline{line-height:1.4}
 .of-alert-days{gap:11px}
}
/* V6: navegación y formularios móviles del despacho */
@media (max-width: 760px) {
 .of-tabs{position:relative;gap:8px;scroll-snap-type:x proximity;scroll-padding-inline:8px;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;padding:8px 7px 12px;}
 .of-tabs button{flex:0 0 auto;scroll-snap-align:start;min-height:48px;padding:12px 17px;font-size:0.94rem;}
 .of-tabs button:focus-visible{outline:3px solid #c39448;outline-offset:2px;}
 .of-fields{grid-template-columns:minmax(0,1fr)!important;}
 .of-fields > *, .of-fields .wide{grid-column:1/-1!important;min-width:0;}
 .of-fields input,.of-fields select,.of-fields textarea{width:100%;max-width:100%;min-width:0;font-size:16px;}
 .of-card{max-width:100%;min-width:0;}
 .of-table-wrap{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;}
 .of-table{min-width:590px;}
 #invite-lawyer-form button{width:100%;min-height:46px;}
}
@media (max-width: 480px) {
 .of-tabs{border-radius:10px;}
 .of-tabs button{padding:11px 13px;}
 .of-btn{min-height:44px;}
}

.of-mobile-tabs-hint{display:none;color:#526a81;margin:0 0 6px}@media(max-width:760px){.of-mobile-tabs-hint{display:block}}
