*{box-sizing:border-box}body{margin:0;font-family:Arial,sans-serif;background:#f3f7f9;color:#153544}aside{position:fixed;width:220px;top:0;bottom:0;padding:28px 22px;background:linear-gradient(180deg,#082d3b,#064f69);color:white}aside a,.link{display:block;color:#dcecf1;text-decoration:none;margin:18px 0;background:none;border:0;padding:0}.brand{font-size:25px;font-weight:800}.brand span{color:#d4aa4f}.brand small,.who small{display:block;font-size:9px;letter-spacing:1.4px;margin-top:6px}.who{margin:30px 0 24px;color:#7ed3e4}main{margin-left:220px;padding:34px;max-width:1600px}h1{color:#0a4054}.card,.paper{background:white;border:1px solid #dce8ec;border-radius:15px;padding:22px;box-shadow:0 5px 18px #0c40540d}.grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}label{display:block;font-weight:600;margin:10px 0}input,select,textarea{width:100%;padding:11px;border:1px solid #cbdde3;border-radius:8px;margin-top:6px}button,.btn{display:inline-block;background:#087b9b;color:white;border:0;border-radius:8px;padding:10px 16px;text-decoration:none;margin:10px 7px 5px 0}.gold{background:#c99b3b}.metrics{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:18px}.metrics div{background:white;padding:18px;border-radius:13px;border:1px solid #dce8ec}.metrics b{display:block;font-size:28px;color:#087b9b;margin-top:5px}.click{border-top:4px solid #d4aa4f!important}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:12px;border-bottom:1px solid #e4edef}.badge{background:#e6f4f7;padding:5px 8px;border-radius:12px}.flash,.obs{background:#fff8e8;border-left:4px solid #d4aa4f;padding:12px;margin-bottom:15px}.patientbar{display:flex;gap:25px;flex-wrap:wrap;background:white;padding:14px;border-radius:12px;margin-bottom:10px}.workspace{display:grid;grid-template-columns:1.2fr 1fr;gap:18px}.viewer,.editor{background:white;border-radius:15px;padding:18px;min-height:520px}.thumbs{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.thumbs img{width:100%;height:150px;object-fit:contain;background:#102b36;border-radius:8px}.filebox{display:block;padding:14px;background:#eef5f7;border-radius:8px;text-decoration:none;color:#0a607b}.reportview{white-space:pre-wrap;min-height:300px;padding:16px;border:1px solid #dce8ec;border-radius:8px}.cliniclogo{max-width:260px;max-height:100px;object-fit:contain}.paper{max-width:900px;margin:auto}.hint{color:#617b86;font-size:13px}@media(max-width:900px){aside{position:relative;width:auto}main{margin:0;padding:18px}.workspace,.grid,.metrics{grid-template-columns:1fr}.thumbs{grid-template-columns:repeat(2,1fr)}}
.workspace{grid-template-columns:1.05fr .65fr 1fr}.templatepanel{background:white;border-radius:15px;padding:18px;min-height:520px}.templateimg{width:100%;max-height:430px;object-fit:contain;border:1px solid #dce8ec;border-radius:8px;margin-top:10px}.inline{display:inline}.danger{background:#8a3540;padding:6px 9px}.inline button{margin:0 0 0 6px}@media(max-width:1100px){.workspace{grid-template-columns:1fr}}

/* RC6 — login Premium Laudos */
.login-body{margin:0;background:#edf4f7;min-height:100vh;color:#163847}
.login-shell{min-height:100vh;display:grid;grid-template-columns:minmax(360px,38%) 1fr;background:white}
.login-panel{padding:54px clamp(32px,6vw,82px);display:flex;flex-direction:column;justify-content:center;position:relative;z-index:2}
.login-logo-mark{width:62px;height:62px;border:3px solid #087b9b;border-radius:50%;display:grid;place-items:center;color:#c99b3b;font-size:28px;margin-bottom:10px}
.login-brand{font-size:33px;line-height:.95;color:#073c58;letter-spacing:.5px}.login-brand span{display:block;color:#08758d;font-weight:400}.login-brand small{display:block;font-size:11px;letter-spacing:1.7px;margin-top:12px;color:#16495b;font-weight:700}
.version{align-self:flex-start;border:1px solid #cbdde3;border-radius:18px;padding:6px 13px;font-size:12px;color:#5b7480;margin:24px 0}
.login-panel h1{font-size:34px;margin:12px 0 4px}.login-sub{margin:0 0 18px;color:#627b86}
.login-panel input{height:50px;background:#fff}.login-enter{width:100%;height:52px;font-size:16px;margin-top:14px;background:linear-gradient(90deg,#086783,#078fa5)}
.demo-box{margin-top:20px;border:1px solid #cbdde3;border-radius:10px;padding:12px 14px;color:#48636e}.demo-box small{display:block;margin-top:4px}
.secure-note{text-align:center;color:#718892;font-size:12px;margin-top:24px}
.login-hero{position:relative;overflow:hidden;background:linear-gradient(135deg,#dce9ee,#fff);min-height:100vh}.login-hero img{width:100%;height:100%;object-fit:cover;object-position:center}
.hero-overlay{position:absolute;left:7%;right:7%;bottom:5%;padding:18px 22px;background:rgba(255,255,255,.86);backdrop-filter:blur(8px);border-radius:14px;border:1px solid rgba(255,255,255,.8);color:#083c55}
.hero-overlay b{font-size:24px}.hero-overlay span{display:block;font-size:13px;letter-spacing:1.5px;margin-top:4px}.hero-overlay small{display:block;margin-top:9px;color:#52707b}
@media(max-width:900px){.login-shell{grid-template-columns:1fr}.login-panel{min-height:100vh}.login-hero{display:none}}

.role-note{background:#eaf5f7;border-left:4px solid #087b9b;padding:12px 15px;border-radius:8px;margin-bottom:18px;color:#315966}

.finishedbox{margin-top:18px;padding-top:16px;border-top:1px solid #dce8ec}.finishedbox form{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.finishedbox input[type=file]{max-width:100%}

.readyfile{display:flex;align-items:center;gap:10px;margin:8px 0;flex-wrap:wrap}.readyfile form{margin:0}.danger{background:#fff;border:1px solid #b42318;color:#b42318;padding:7px 11px;border-radius:7px;cursor:pointer}

.report-header-preview{display:flex;align-items:center;gap:16px;border:1px solid #cbdde3;border-bottom:3px solid #d4aa4f;border-radius:10px 10px 0 0;padding:14px 16px;background:#fff;margin-top:8px}
.report-header-logo{width:125px;min-width:125px;height:72px;display:flex;align-items:center;justify-content:center;border-right:1px solid #dce8ec;padding-right:14px}
.report-header-logo img{max-width:110px;max-height:62px;object-fit:contain}
.logo-placeholder{font-size:12px;text-align:center;color:#78909a;line-height:1.25}.logo-placeholder small{font-size:9px}
.report-header-info{display:flex;flex-direction:column;gap:4px;color:#0a4054}.report-header-info strong{font-size:18px}.report-header-info span{font-size:12px;font-weight:700;letter-spacing:1px}.report-header-info small{color:#617b86}
.report-patient-preview{display:grid;grid-template-columns:1.3fr 1fr 1.4fr;gap:8px;border:1px solid #dce8ec;border-top:0;padding:10px 14px;background:#f7fafb;font-size:11px;margin-bottom:10px}
.editor textarea{border-radius:8px;min-height:330px}
@media(max-width:700px){.report-header-preview{align-items:flex-start}.report-header-logo{width:95px;min-width:95px}.report-patient-preview{grid-template-columns:1fr}}

.conference-tools{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:10px 0 18px;padding:12px;background:#f4f8f9;border:1px solid #d7e5e9;border-radius:9px;font-size:12px}
.button.secondary{display:inline-block;text-decoration:none;border:1px solid #0a6c88;color:#0a6c88;background:#fff;padding:9px 12px;border-radius:7px;font-weight:700}
.result-files{margin-top:18px;padding-top:14px;border-top:1px solid #dce8ec}.result-files .filebox{display:block;margin:7px 0}

/* RC15 - workbench */
.workspace{align-items:start}.clinical-note small{color:#60727b}.asset img,.readyfile img{max-width:100%;max-height:220px;object-fit:contain;border-radius:10px;background:#eef4f6}
.readyfile{display:grid;gap:8px;margin:10px 0;padding:10px;border:1px solid #dbe7eb;border-radius:10px}
.editor{position:sticky;top:18px}.editor textarea{width:100%;min-height:430px;box-sizing:border-box;line-height:1.5}
.editor-meta{display:flex;justify-content:space-between;margin:6px 0 10px;color:#60727b}
.report-header-preview{min-height:95px}.report-header-logo img{max-height:72px;max-width:150px;object-fit:contain}
@media(max-width:1100px){.workspace{grid-template-columns:1fr}.editor{position:static}}

/* RC16 - conferencia e entrega */
.result-hero{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;padding:22px 26px;border-radius:16px;background:#eef6f7}.result-hero h1{margin:4px 0}.status-ok{padding:9px 14px;border-radius:999px;background:#e5f4ec;font-weight:700}
.result-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,1fr);gap:20px;align-items:start}.result-head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #d9e4e8;padding-bottom:16px;margin-bottom:16px}.result-head>div:last-child{display:grid;text-align:right}.cliniclogo{max-width:180px;max-height:80px;object-fit:contain}.final-report{min-height:220px;white-space:pre-wrap}.primary-download{display:inline-block;margin-top:22px}.deliverables{background:#fff;border-radius:14px;padding:20px;box-shadow:0 8px 24px rgba(0,0,0,.05)}.delivery-file{padding:10px 0;border-bottom:1px solid #e6edef}.delivery-file img{width:100%;max-height:260px;object-fit:contain;background:#eef4f6;border-radius:10px;margin-bottom:8px}
@media(max-width:900px){.result-grid{grid-template-columns:1fr}}

/* RC17 - gestão */
.management-metrics{grid-template-columns:repeat(6,minmax(110px,1fr))}.management-grid{display:grid;grid-template-columns:1fr 2fr;gap:18px;margin:18px 0}.status-row{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid #e6edef}.sla{display:inline-block;margin-left:6px;padding:3px 6px;border-radius:6px;font-size:9px;font-weight:800}.sla.late,.late td{background:#fff3f1}.sla.late{color:#a32116}.soon td{background:#fff9e8}@media(max-width:1000px){.management-metrics{grid-template-columns:repeat(2,1fr)}.management-grid{grid-template-columns:1fr}}

/* RC20 - conta e isolamento */
.account-card{max-width:620px}.account-card form{display:grid;gap:12px}.account-card input{width:100%;box-sizing:border-box}

/* RC21 - administração */
.admin-grid{display:grid;grid-template-columns:minmax(300px,.8fr) minmax(0,2fr);gap:18px;align-items:start}.admin-grid form{display:grid;gap:10px}.admin-grid input,.admin-grid select{width:100%;box-sizing:border-box}@media(max-width:950px){.admin-grid{grid-template-columns:1fr}}

/* RC22 - cadastro completo de clínicas */
.clinic-profile{max-width:1000px}.profile-head{display:flex;align-items:center;gap:16px;margin-bottom:18px}.profile-head img,.logo-placeholder{width:100px;height:70px;object-fit:contain;border:1px solid #dfe7e9;border-radius:10px;background:#fff}.logo-placeholder{display:grid;place-items:center;font-weight:800;color:#8a989c}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-grid .wide{grid-column:1/-1}.form-grid input,.form-grid textarea{width:100%;box-sizing:border-box}@media(max-width:700px){.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}}

/* RC24 - ocorrências e qualidade */
.quality-grid{display:grid;grid-template-columns:minmax(280px,.7fr) minmax(0,2.3fr);gap:18px;align-items:start}.quality-grid form{display:grid;gap:10px}.quality-grid input,.quality-grid select,.quality-grid textarea{width:100%;box-sizing:border-box}.block{display:block;margin-top:5px}.resolution{margin-top:7px;padding:7px;background:#f1f6f7;border-radius:6px}.category-strip{display:flex;gap:10px;flex-wrap:wrap}.category-strip span{padding:8px 12px;background:#f1f6f7;border-radius:8px}.management-metrics{grid-template-columns:repeat(4,minmax(120px,1fr))}@media(max-width:950px){.quality-grid{grid-template-columns:1fr}}

/* RC25 - indicadores */
.kpi-grid{grid-template-columns:repeat(6,minmax(110px,1fr))}.analytics-grid{display:grid;grid-template-columns:2fr 1fr;gap:18px;margin:18px 0}.cause-row{display:grid;grid-template-columns:100px 1fr 28px;gap:8px;align-items:center;margin:10px 0}.bar{height:8px;background:#e8eff1;border-radius:10px;overflow:hidden}.bar i{display:block;height:100%;background:currentColor}.methodology{margin-top:18px}@media(max-width:1000px){.kpi-grid{grid-template-columns:repeat(2,1fr)}.analytics-grid{grid-template-columns:1fr}}

/* RC26 — navegação e painéis inspirados na revisão funcional */
:root{--pl-navy:#073b4c;--pl-navy2:#052c3a;--pl-teal:#087f9b;--pl-gold:#c99b3b;--pl-bg:#f4f7f9;--pl-line:#dce7ea;--pl-muted:#6c8188}
body{background:linear-gradient(180deg,#f7fafb 0,#f2f6f8 100%);min-height:100vh}
.sidebar{width:238px;padding:24px 18px 16px;display:flex;flex-direction:column;justify-content:space-between;overflow-y:auto;box-shadow:8px 0 30px rgba(4,39,52,.08)}
.sidebar-top{min-height:min-content}.sidebar nav{margin-top:10px}.sidebar nav a,.sidebar .link{margin:3px 0;padding:9px 11px;border-radius:8px;transition:.18s ease;font-size:14px}.sidebar nav a:hover,.sidebar .link:hover{background:rgba(255,255,255,.09);color:#fff;transform:translateX(2px)}
.sidebar .who{margin:22px 0 14px;padding:11px;border:1px solid rgba(255,255,255,.1);border-radius:10px;background:rgba(255,255,255,.04)}
.sidebar-footer{border-top:1px solid rgba(255,255,255,.13);padding:14px 6px 2px;color:#cfe0e5;font-size:10px;line-height:1.45}.sidebar-footer span{color:#91abb4}
main{margin-left:238px;padding:34px 38px}.page-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:20px}.page-head h1{margin:3px 0 4px;font-size:30px}.eyebrow{font-size:10px;font-weight:800;letter-spacing:1.8px;color:var(--pl-teal)}
.card,.paper,.metrics div{box-shadow:0 7px 24px rgba(8,61,78,.055);border-color:var(--pl-line)}.metrics div{transition:.18s ease}.metrics div:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(8,61,78,.08)}
.badge{display:inline-block;background:#e7f4f6;color:#0a6278;font-weight:700;font-size:11px;padding:5px 9px}.table-wrap{overflow:auto}.table-wrap table{min-width:850px}
.toolbar{margin-bottom:16px}.filter-grid{display:grid;grid-template-columns:2fr 1fr 1fr auto auto;gap:10px;align-items:end}.filter-grid label{margin:0}.filter-grid button,.filter-grid .btn{margin:0;height:42px}.secondary{background:#fff!important;color:var(--pl-teal)!important;border:1px solid #bcd4db!important}
.compact-metrics{grid-template-columns:repeat(4,1fr)}.report-kpis{grid-template-columns:repeat(6,1fr)}.report-kpis .money{font-size:19px}.report-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:18px 0}
@media(max-width:1100px){.report-kpis{grid-template-columns:repeat(3,1fr)}.filter-grid{grid-template-columns:1fr 1fr}.report-grid{grid-template-columns:1fr}}
@media(max-width:900px){.sidebar{position:relative;width:auto;min-height:auto}.sidebar-footer{margin-top:18px}main{margin-left:0;padding:20px}.compact-metrics,.report-kpis{grid-template-columns:repeat(2,1fr)}}

.tabs{display:flex;gap:8px;margin:0 0 16px}.tabs a{padding:10px 14px;border-radius:9px;background:#e9f0f2;color:#315966;text-decoration:none;font-weight:700;font-size:13px}.tabs a.active{background:#087f9b;color:white}.change-box{margin-top:16px;padding:14px;background:#f6fafb;border:1px solid #dce7ea;border-radius:10px}.change-box form{display:grid;grid-template-columns:1fr 2fr auto;gap:9px;align-items:end}.change-box button{margin:0}@media(max-width:800px){.change-box form{grid-template-columns:1fr}}

.additional-decision{min-width:250px}.additional-decision input{margin:0 0 6px;padding:8px}.additional-decision button{padding:7px 9px;margin:2px}

.distribution-list{display:grid;gap:9px;margin:14px 0}.distribution-option{display:flex;gap:12px;align-items:center;padding:13px;border:1px solid #dce7ea;border-radius:10px;background:#fff;cursor:pointer}.distribution-option.suggested{border-width:2px}.distribution-option span{display:flex;flex-direction:column;gap:3px}.distribution-option em{font-size:11px;font-style:normal;font-weight:700;color:#087f9b}.distribution-option small{color:#61767e}.distribution-option input{width:auto;margin:0}

.team-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px}.professional-card{display:grid;grid-template-columns:76px 1fr;gap:16px;align-items:center}.professional-card details{grid-column:1/-1}.professional-photo{width:72px;height:72px;border-radius:50%;overflow:hidden;background:#e8f1f2;display:flex;align-items:center;justify-content:center;font-size:28px;font-weight:700}.professional-photo img{width:100%;height:100%;object-fit:cover}.whatsapp-button{display:inline-flex;align-items:center;gap:8px;text-decoration:none;font-weight:700;padding:9px 13px;border:1px solid currentColor;border-radius:999px}.whatsapp-bubble{display:inline-flex;width:24px;height:24px;border:2px solid currentColor;border-radius:50%;align-items:center;justify-content:center}

.support-card{max-width:760px;display:flex;gap:20px;align-items:flex-start}.support-icon{width:56px;height:56px;flex:0 0 56px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:28px;font-weight:800;background:#e8f1f2}.support-card p{max-width:620px;line-height:1.55}


/* RC27 - correções responsivas: ocorrências e entrega da clínica */
.quality-grid>.card{min-width:0}
.quality-grid>.card:last-child{overflow:hidden}
.quality-grid>.card:last-child .table-wrap{width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
.occurrences-table{min-width:980px;table-layout:auto}
.occurrences-table th,.occurrences-table td{vertical-align:top}
.occurrences-table td:nth-child(4){min-width:220px;max-width:360px;overflow-wrap:anywhere}
.occurrences-table td:last-child{min-width:190px}
.occurrences-table td:last-child form{min-width:180px}
.occurrences-table td:last-child textarea{min-width:180px;resize:vertical}
.result-grid{grid-template-columns:minmax(0,2fr) minmax(260px,.8fr)}
.result-grid>.paper{width:100%;max-width:none;min-width:0;margin:0}
.result-grid>.deliverables{min-width:0;position:static;width:auto}
.result-head{gap:18px}
.result-head>div:last-child{min-width:150px}
.result-head .cliniclogo{display:block;max-width:180px;width:auto;height:auto}
.delivery-file,.delivery-file a{max-width:100%;overflow-wrap:anywhere}
.delivery-file img{display:block;width:100%;height:auto;max-height:320px}
.report-patient-preview{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:900px){
 .quality-grid,.result-grid{grid-template-columns:minmax(0,1fr)}
 .quality-grid>.card{width:100%;max-width:100%}
 .result-hero{align-items:flex-start;gap:12px;flex-direction:column}
 .result-head{align-items:flex-start;flex-direction:column}
 .result-head>div:last-child{text-align:left}
 .deliverables{order:2}
 .report-patient-preview{grid-template-columns:1fr}
}

/* RC28 - ações de impressão e download na entrega */
.result-actions,.file-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.result-actions .primary-download{margin-top:22px}
.file-actions .btn{margin:8px 4px 4px 0;padding:8px 11px;font-size:12px}
@media print{
 .sidebar,.result-hero,.deliverables,.result-actions,.flash{display:none!important}
 main{margin:0!important;padding:0!important}
 .result-grid{display:block!important}
 .result-grid>.paper{border:0!important;box-shadow:none!important;max-width:none!important}
 body{background:#fff!important}
}

/* RC29 - templates na entrega */
.delivery-section{margin:14px 0}.delivery-section h3{margin-bottom:4px}.template-delivery{padding:12px 0;border-bottom:1px solid #e6edef}.template-delivery>b{display:block;margin-bottom:7px}.template-delivery .filebox{margin:6px 0}

/* RC30 - login sem sobreposição e sem conteúdo excedente */
.login-shell{height:100vh;min-height:620px;overflow:hidden}
.login-panel,.login-hero{height:100vh;min-height:620px}
.login-hero img{display:block;width:100%;height:100%;object-fit:cover;object-position:center center}
.login-hero.clean-hero{overflow:hidden}
.login-hero.clean-hero .hero-overlay{display:none}
@media(max-width:900px){
 .login-shell{height:auto;min-height:100vh;overflow:visible}
 .login-panel{height:auto;min-height:100vh}
}

/* RC31 - conferencia: templates em sequencia visual compacta */
.conference-templates{min-width:0;min-height:0;padding:14px}
.conference-templates h3{margin:0 0 10px}
.template-strip{display:flex;gap:8px;align-items:flex-start;overflow-x:auto;overflow-y:hidden;padding:2px 2px 10px;scrollbar-width:thin}
.template-thumb{display:block;flex:0 0 auto;background:transparent;border:0;padding:0;margin:0;text-decoration:none}
.template-thumb img{display:block;width:auto;height:190px;max-width:260px;object-fit:contain;background:#fff;border:1px solid #dce8ec;border-radius:5px}
@media(max-width:1100px){.template-strip{flex-wrap:wrap;overflow-x:visible}.template-thumb img{height:170px}}
@media(max-width:650px){.template-thumb img{height:135px;max-width:190px}}

/* RC32 - conferencia: galeria de exames sem cards gigantes */
.conference-viewer{min-width:0}
.conference-files,.conference-ready{display:flex;gap:8px;align-items:flex-start;overflow-x:auto;overflow-y:hidden;padding:4px 2px 12px;scrollbar-width:thin}
.conference-files .asset,.conference-ready .readyfile{flex:0 0 auto;width:auto;min-width:0;margin:0;padding:0;border:0;background:transparent}
.conference-files .asset img,.conference-ready .readyfile img{display:block;width:auto;height:190px;max-width:280px;object-fit:contain;background:#fff;border:1px solid #dce8ec;border-radius:5px}
.conference-files .filebox,.conference-ready .filebox{max-width:280px;padding:8px 10px;margin-top:5px;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:1100px){.conference-files,.conference-ready{flex-wrap:wrap;overflow-x:visible}.conference-files .asset img,.conference-ready .readyfile img{height:170px}}
@media(max-width:650px){.conference-files .asset img,.conference-ready .readyfile img{height:135px;max-width:190px}}

/* RC33 - conferencia: aproveitamento horizontal e leitura lado a lado */
@media(min-width:1101px){
 main:has(.conference-viewer){max-width:none}
 main:has(.conference-viewer) .workspace{grid-template-columns:minmax(430px,1.15fr) minmax(260px,.7fr) minmax(430px,1.15fr);gap:14px}
 main:has(.conference-viewer) .viewer,
 main:has(.conference-viewer) .templatepanel,
 main:has(.conference-viewer) .editor{min-width:0}
 main:has(.conference-viewer) .editor{top:12px;max-height:calc(100vh - 24px);overflow:auto}
}
.conference-viewer h3,.conference-templates h3,.editor h3{scroll-margin-top:20px}
.conference-viewer .conference-files,.conference-viewer .conference-ready,.conference-templates .template-strip{overscroll-behavior-x:contain}

/* RC34 - hierarquia visual e contagem na conferencia */
.conference-section-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:2px 0 10px}
.conference-section-head h3{margin:0}
.conference-count{flex:0 0 auto;padding:4px 8px;border-radius:999px;background:#e8f3f5;color:#426875;font-size:10px;font-weight:700}
.conference-viewer .conference-section-head:not(:first-child){margin-top:20px;padding-top:15px;border-top:1px solid #e5edef}
.template-thumb,.conference-files .asset a,.conference-ready .readyfile a:first-child{transition:transform .15s ease,box-shadow .15s ease}
.template-thumb:hover,.conference-files .asset a:hover,.conference-ready .readyfile a:first-child:hover{transform:translateY(-2px)}
.template-thumb img:hover,.conference-files .asset img:hover,.conference-ready .readyfile img:hover{box-shadow:0 6px 18px rgba(8,61,78,.14)}

/* RC35 - conferencia: imagens e laudo lado a lado */
.conference-compare{min-width:0;display:flex;flex-direction:column;gap:14px;max-height:650px;overflow-y:auto;overflow-x:hidden;padding-right:6px}
.conference-compare .conference-viewer,.conference-compare .conference-templates{width:100%;min-width:0;min-height:0}
.conference-compare .conference-files,.conference-compare .conference-ready,.conference-compare .template-strip{display:flex;flex-wrap:nowrap;gap:8px;overflow-x:auto;overflow-y:hidden;padding:4px 2px 12px}
.workspace>.conference-compare{grid-column:1/3}
.workspace>.conference-compare+.editor{grid-column:3;position:sticky;top:12px;min-width:0;max-height:calc(100vh - 24px);overflow-y:auto;overflow-x:hidden}
.workspace>.conference-compare+.editor .reportview{min-height:280px;max-height:42vh;overflow-y:auto;white-space:pre-wrap}
.workspace>.conference-compare+.editor form textarea{min-height:110px}
@media(max-width:1100px){.workspace>.conference-compare{grid-column:auto;max-height:none;overflow:visible}.workspace>.conference-compare+.editor{grid-column:auto;position:static;max-height:none;overflow:visible}.workspace>.conference-compare+.editor .reportview{max-height:50vh}}

/* RC36 - modelo de laudo personalizado da clinica */
.clinic-report-model{display:flex;flex-direction:column;gap:6px;margin:10px 0 12px;padding:10px;border:1px solid #dce8ec;border-radius:8px;background:#f7fbfc}
.clinic-report-model b{color:#0a4054;font-size:13px}
.clinic-report-model span{font-size:11px;color:#60757c;line-height:1.35}
.clinic-report-model .filebox{margin:0;padding:8px 10px;font-size:12px}

/* RC37 - ocorrencias da clinica: card acompanha o conteudo */
.quality-grid:has(.occurrences-table){display:block;width:100%;max-width:none}
.quality-grid:has(.occurrences-table)>.card{width:100%;max-width:none;box-sizing:border-box}
.quality-grid:has(.occurrences-table) .table-wrap{width:100%;max-width:100%;overflow-x:auto;padding-bottom:8px}
.quality-grid:has(.occurrences-table) .occurrences-table{width:100%;min-width:980px;table-layout:auto}
.occurrences-table th,.occurrences-table td{padding:12px 14px;vertical-align:top;line-height:1.4}
.occurrences-table th{white-space:nowrap}
.occurrences-table td:nth-child(4){min-width:300px;white-space:normal;overflow-wrap:anywhere}
.occurrences-table td:last-child{min-width:210px}
@media(min-width:1200px){.quality-grid:has(.occurrences-table) .occurrences-table{min-width:100%}}

/* RC38 - bancada de conferencia: laudo imagem + laudo texto */
.conference-workbench{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(420px,.88fr);gap:16px;align-items:stretch;height:calc(100vh - 285px);min-height:520px}
.conference-image-pane,.conference-text-pane{min-width:0;background:#fff;border:1px solid #e1eaed;border-radius:12px;box-shadow:0 4px 18px rgba(15,54,68,.05);overflow:hidden}
.conference-image-pane{display:flex;flex-direction:column}
.conference-text-pane{display:grid;grid-template-rows:auto minmax(0,1fr) auto}
.conference-pane-title{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-bottom:1px solid #e6edef;background:#fff}
.conference-pane-title h2{font-size:17px;margin:2px 0 0}
.conference-pane-title .eyebrow{font-size:9px}
.conference-image-scroll{min-height:0;overflow-y:auto;overflow-x:hidden;padding:10px;background:#eef3f4;scrollbar-gutter:stable}
.conference-full-image{display:block;width:100%;margin:0 0 10px;text-decoration:none}
.conference-full-image img{display:block;width:100%;height:auto;max-width:none;object-fit:contain;background:#172126}
.conference-image-scroll>.filebox{display:block;margin:0 0 8px}
.conference-text-scroll{min-height:0;overflow-y:auto;overflow-x:hidden;padding:14px;scrollbar-gutter:stable}
.conference-text-scroll .reportview{min-height:0;max-height:none;overflow:visible;white-space:pre-wrap;line-height:1.55}
.conference-text-scroll .report-header-preview{margin-top:0}
.conference-review-tools{padding:10px 14px 12px;border-top:1px solid #e6edef;background:#fff}
.conference-review-tools form{display:grid;grid-template-columns:minmax(150px,.7fr) minmax(220px,1.3fr);gap:8px 10px;align-items:end}
.conference-review-tools form .actions{grid-column:1/-1;margin-top:2px}
.conference-review-tools textarea{min-height:62px;resize:vertical}
.conference-review-tools>.filebox{display:inline-block;margin:0 0 8px}
.conference-support{margin-top:12px}
.conference-support details{background:#fff;border:1px solid #e1eaed;border-radius:10px;padding:10px 12px}
.conference-support summary{cursor:pointer;font-weight:700;color:#315968}
.conference-support-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding-top:12px}
.conference-support-grid .template-thumb{display:inline-block;margin:0 6px 6px 0}
.conference-support-grid .template-thumb img{height:100px;width:auto}
@media(max-width:1100px){.conference-workbench{grid-template-columns:1fr;height:auto}.conference-image-pane,.conference-text-pane{height:70vh;min-height:520px}.conference-support-grid{grid-template-columns:1fr}}
@media(max-width:650px){.conference-image-pane,.conference-text-pane{height:65vh;min-height:460px}.conference-review-tools form{grid-template-columns:1fr}.conference-review-tools form .actions{grid-column:auto}}

/* RC39 - ambiente do radiologista espelha a bancada da conferencia */
.radiologist-workbench .conference-image-pane{grid-template-rows:auto minmax(0,1fr) auto}
.radiologist-upload{padding:10px 14px;border-top:1px solid #e6edef;background:#fff}
.radiologist-upload form{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.radiologist-upload input[type=file]{flex:1;min-width:220px}
.radiologist-ready-item{position:relative;margin-bottom:10px}
.radiologist-ready-item .conference-full-image{margin-bottom:4px}
.radiologist-ready-item form{display:flex;justify-content:flex-end}
.radiologist-ready-item .danger{padding:5px 10px;font-size:11px}
.radiologist-text-scroll{display:flex;flex-direction:column}
.radiologist-text-scroll form{display:flex;flex:1;min-height:260px}
.radiologist-text-scroll textarea{flex:1;width:100%;min-height:360px;resize:vertical;line-height:1.55}
.radiologist-editor-tools{padding:10px 14px 12px;border-top:1px solid #e6edef;background:#fff}
.radiologist-editor-tools .editor-meta{display:flex;justify-content:space-between;gap:10px;margin-bottom:8px}
.radiologist-editor-tools .actions{margin:0}
@media(max-width:1100px){.radiologist-workbench .conference-image-pane,.radiologist-workbench .conference-text-pane{height:75vh}}

/* RC40 - prazo/SLA no painel do radiologista */
.deadline-box{display:flex;flex-direction:column;gap:3px;min-width:145px;padding:7px 9px;border-radius:8px;background:#f7f3e7;border:1px solid #e6d69a;white-space:nowrap}
.deadline-box b{font-size:12px;color:#66521a}
.deadline-countdown{font-size:10px;font-weight:700;color:#8a6b12}
.deadline-box.deadline-late{background:#fff0ef;border-color:#e3aaa5}
.deadline-box.deadline-late b,.deadline-box.deadline-late .deadline-countdown{color:#a33a31}


/* RC41 - leitura ampliada de imagens/PDFs na conferencia */
.conference-workbench:not(.radiologist-workbench){grid-template-columns:minmax(0,1.35fr) minmax(430px,.65fr);height:calc(100vh - 245px);min-height:650px}
.conference-pdf-card{display:flex;flex-direction:column;min-height:0;margin-bottom:18px}
.conference-pdf-card>.filebox{display:block;margin:0 0 8px}
.conference-pdf-preview{display:block;width:100%;height:560px;min-height:560px;border:1px solid #cbd9dd;border-radius:6px;background:#fff}
@media(min-width:1500px){
 .conference-workbench:not(.radiologist-workbench){grid-template-columns:minmax(0,1.45fr) minmax(480px,.55fr);min-height:700px}
 .conference-pdf-preview{height:650px;min-height:650px}
}
@media(max-width:1100px){
 .conference-workbench:not(.radiologist-workbench){grid-template-columns:1fr;height:auto;min-height:0}
 .conference-workbench:not(.radiologist-workbench) .conference-image-pane{height:82vh;min-height:650px}
 .conference-pdf-preview{height:70vh;min-height:520px}
}

.password-field{position:relative;display:flex;align-items:center}.password-field input{width:100%;padding-right:48px}.password-toggle{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:36px;height:36px;padding:0;border:0;background:transparent;color:#0A4054;font-size:20px;cursor:pointer;border-radius:8px}.password-toggle:hover,.password-toggle:focus{background:#eef6f8;outline:2px solid transparent}

.link-danger{border:0;background:transparent;padding:0;color:#b42318;text-decoration:underline;cursor:pointer;font:inherit}.link-danger:hover{color:#7a271a}

.role-options{display:grid;gap:8px;margin:4px 0 14px}.role-options label{display:grid;grid-template-columns:1fr 24px;align-items:center;gap:12px;margin:0;padding:4px 0}.role-options label span{display:block}.role-options input[type="checkbox"]{width:18px;height:18px;margin:0;justify-self:center;accent-color:#0b88a2}


/* Identificacao segura de ambiente - exibida apenas fora de producao */
.environment-banner{position:fixed;top:0;left:0;right:0;z-index:9999;padding:7px 12px;text-align:center;font-size:12px;font-weight:800;letter-spacing:.04em;background:#fff3cd;color:#664d03;border-bottom:1px solid #ffecb5}
.environment-banner~.sidebar{top:31px;height:calc(100vh - 31px)}
.environment-banner~main{padding-top:31px}


/* Premium Laudos - proposta clean (isolada em branch de design) */
.login-body{background:#eef3f5}
.login-shell{grid-template-columns:minmax(390px,35%) minmax(0,1fr)}
.login-panel{background:#fff;padding:clamp(30px,4vw,64px);box-shadow:8px 0 35px rgba(10,40,55,.06)}
.login-brand{font-size:clamp(28px,2.5vw,35px)}
.login-panel h1{font-size:clamp(28px,2.5vw,34px)}
.login-panel label{color:#102f4e}
.login-enter{border-radius:9px;background:linear-gradient(100deg,#07577d,#078da1)}
.login-hero{isolation:isolate}
.login-hero img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.login-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(245,249,250,.80),rgba(245,249,250,.12) 56%,transparent);z-index:0;pointer-events:none}
.login-hero-copy{position:absolute;z-index:1;top:25%;left:6%;color:#123456;text-shadow:0 1px 8px rgba(255,255,255,.8)}
.login-hero-copy h2{font-size:clamp(22px,2.1vw,34px);line-height:1.12;letter-spacing:.025em;font-weight:500;margin:22px 0 12px}
.login-hero-copy p{font-size:clamp(15px,1.3vw,21px);line-height:1.45;margin:0}
.hero-accent{display:block;width:62px;height:4px;background:#e3ad25}
@media(max-width:900px){.login-shell{grid-template-columns:1fr}.login-panel{min-height:100vh}.login-hero{display:none}}


/* Portal aprovado - cartão sobre fotografia, escopo exclusivo da página de login */
.login-body{min-height:100vh;background:#e7edf0}
.login-shell{position:relative;display:flex;align-items:center;justify-content:flex-start;min-height:100vh;box-sizing:border-box;padding:clamp(28px,4vw,65px) clamp(28px,5.5vw,105px);overflow:hidden;background:#e7edf0}
.login-hero{position:absolute;inset:0;z-index:0;min-height:0;display:block;background:#e7edf0}
.login-hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center center}
.login-hero::after{display:none}
.login-panel{position:relative;z-index:2;box-sizing:border-box;width:clamp(340px,30vw,470px);min-height:0;max-width:100%;padding:clamp(24px,2.2vw,36px);background:rgba(255,255,255,.97);border-radius:18px;box-shadow:0 18px 55px rgba(15,37,59,.16);display:flex;flex-direction:column;justify-content:center}
.login-brand{display:block;margin:0 0 22px;line-height:1;letter-spacing:normal}
.login-brand .premium-logo{display:block;width:100%;max-width:335px;height:auto;max-height:110px;object-fit:contain;object-position:left center}
.login-brand .logo-fallback{display:block}.login-brand .logo-fallback[hidden]{display:none}
.login-panel .version{margin:0 0 22px;border:0;border-radius:0;padding:0;color:#285576;font-size:11px;font-weight:500}
.login-panel .version::before{content:"♢";display:inline-grid;place-items:center;width:20px;height:20px;margin-right:7px;border:1px solid #0788ae;border-radius:50%;color:#007da8;font-size:15px;vertical-align:middle}
.login-panel h1{font-size:clamp(26px,2.15vw,34px);line-height:1.18;color:#092a50;margin:0 0 5px;font-weight:750}
.login-panel .login-sub{font-size:14px;color:#56738b;margin:0 0 20px}
.login-panel form{display:grid;gap:13px}
.login-panel form>label{display:block;color:#0b2a4e;font-size:13px;font-weight:700;margin:0}
.login-input-wrap,.login-panel .password-field{position:relative;margin-top:7px}
.login-panel input[type=email],.login-panel input[type=password],.login-panel input[type=text]{box-sizing:border-box;width:100%;height:45px;padding:10px 42px 10px 38px;border:1px solid #c3d7e8;border-radius:7px;background:#fff;color:#16344e;font-size:14px}
.login-panel input::placeholder{color:#8b9fb3}
.login-field-icon{position:absolute;z-index:1;left:12px;top:50%;transform:translateY(-50%);font-size:16px;line-height:1;color:#007aa6;pointer-events:none}
.login-panel .password-toggle{position:absolute;right:8px;top:50%;transform:translateY(-50%);background:transparent;border:0;box-shadow:none;padding:7px;color:#00779d;cursor:pointer}
.login-panel .login-enter{width:100%;height:49px;margin:6px 0 0;border:0;border-radius:7px;background:linear-gradient(100deg,#07517d,#0099b4);color:#fff;font-size:15px;font-weight:600}
.login-panel .login-enter span{margin-left:5px;font-size:19px}
.login-panel .secure-note{border-top:1px solid #e0e9ee;margin-top:18px;padding-top:12px;font-size:10px;color:#58768c}
.login-panel .demo-box{margin-top:14px}
@media(max-width:900px){.login-shell{padding:28px;justify-content:center}.login-hero{display:block}.login-hero img{object-position:70% center}.login-panel{width:min(470px,100%);min-height:0}}
@media(max-width:500px){.login-shell{padding:16px}.login-panel{padding:24px 20px;border-radius:14px}.login-hero::before{content:"";position:absolute;inset:0;background:rgba(236,245,249,.28);z-index:1}.login-brand .premium-logo{max-width:285px}}


/* Correção pós-validação visual: neutraliza alturas herdadas e evita ampliação do hero */
.login-body .login-shell{height:auto;min-height:100vh;overflow:hidden;align-items:center}
.login-body .login-panel{height:auto!important;min-height:0!important;max-height:calc(100vh - 44px);overflow-y:auto;align-self:center;flex:0 0 auto;padding:clamp(24px,2.2vw,36px)}
.login-body .login-hero{height:100%!important;min-height:0!important;inset:0}
.login-body .login-hero img{width:100%;height:100%;object-fit:contain;object-position:right center}
.login-body .login-hero{background:#e6edf0}
.login-body .login-hero::before{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(90deg,#e8eef1 0%,rgba(232,238,241,.93) 18%,rgba(232,238,241,0) 45%)}
.login-body .login-hero img{z-index:0}
.login-body .login-panel{background:#fff}
@media(max-width:900px){.login-body .login-panel{max-height:none}.login-body .login-hero img{object-fit:cover;object-position:65% center}}


/* Composição de referência: cenário contínuo à esquerda e cartão compacto */
@media(min-width:901px){
.login-body .login-hero{isolation:isolate;background:transparent}
.login-body .login-hero::before{content:"";position:absolute;inset:-36px;z-index:-2;background-image:url('/static/assets/premium_laudos_hero_aprovado.webp');background-size:cover;background-position:center center;filter:blur(23px) saturate(.75);opacity:.63}
.login-body .login-hero::after{content:"";position:absolute;inset:0;z-index:-1;display:block;background:linear-gradient(90deg,rgba(232,242,247,.52) 0%,rgba(235,244,249,.48) 32%,rgba(235,244,249,0) 55%)}
.login-body .login-hero img{object-fit:contain;object-position:right center}
.login-body .login-panel{width:clamp(350px,26vw,440px);padding:28px 30px;box-shadow:0 14px 42px rgba(18,49,70,.13)}
.login-body .login-shell{padding-left:clamp(40px,5.5vw,105px)}
}


/* Fundo único em toda a viewport: remove costura causada por object-fit:contain */
@media(min-width:901px){
.login-body .login-hero{background:#e8eef1 url('/static/assets/premium_laudos_hero_aprovado.webp') center center / cover no-repeat!important;isolation:auto}
.login-body .login-hero img{display:none!important}
.login-body .login-hero::before{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(90deg,rgba(241,247,250,.88) 0%,rgba(241,247,250,.72) 24%,rgba(241,247,250,.12) 46%,transparent 64%);filter:none;opacity:1}
.login-body .login-hero::after{display:none!important}
.login-body .login-panel{z-index:2;box-shadow:0 16px 45px rgba(16,47,69,.14)}
}


/* Fundo fotográfico sem texto embutido + mensagem institucional HTML */
@media(min-width:901px){
.login-body .login-hero{background:#edf2f4 url('/static/assets/premium_recepcao_direita.jpg') center center / cover no-repeat!important}
.login-body .login-hero::before{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(90deg,rgba(246,250,252,.82) 0%,rgba(246,250,252,.68) 38%,rgba(246,250,252,.05) 68%,transparent 85%);filter:none}
.login-body .login-hero::after{display:none!important}
.login-body .login-hero-copy{position:absolute;z-index:2;top:32%;left:clamp(515px,40vw,760px);max-width:290px;color:#102e55;text-shadow:0 1px 2px rgba(255,255,255,.3)}
.login-body .login-hero-copy .login-hero-accent{display:block;width:46px;height:4px;background:#e9a900;margin-bottom:18px}
.login-body .login-hero-copy h2{font-size:clamp(21px,1.8vw,29px);font-weight:500;line-height:1.18;letter-spacing:.01em;margin:0 0 12px;color:#112e54}
.login-body .login-hero-copy p{font-size:clamp(15px,1.15vw,19px);line-height:1.3;margin:0;color:#355c7d}
.login-body .login-panel{width:clamp(350px,25vw,420px)}
}
@media(max-width:1100px) and (min-width:901px){.login-body .login-hero-copy{left:47%;max-width:230px}.login-body .login-hero-copy h2{font-size:20px}.login-body .login-hero-copy p{font-size:15px}}
@media(max-width:900px){.login-body .login-hero{background:#edf2f4 url('/static/assets/premium_recepcao_direita.jpg') center / cover no-repeat!important}.login-body .login-hero img{display:none}.login-body .login-hero-copy{display:none}}

.profile-welcome{display:flex;align-items:center;justify-content:flex-end;gap:14px;margin:-48px 0 25px auto;min-height:48px}.profile-welcome strong{display:block;color:#123a52;font-size:15px}.profile-welcome small{display:block;color:#557080;font-size:12px}.profile-welcome-photo{width:52px;height:52px;border-radius:50%;background:#e5eff2;display:grid;place-items:center;overflow:hidden;color:#123a52;font-weight:700;font-size:22px}.profile-welcome-photo img{width:100%;height:100%;object-fit:cover}@media(max-width:750px){.profile-welcome{margin:10px 0 20px;justify-content:flex-start}}

.profile-photo-preview{width:96px;height:96px;border-radius:50%;overflow:hidden;display:grid;place-items:center;background:#e5eff2;color:#123a52;font-size:36px;font-weight:700;margin:12px 0 18px}.profile-photo-preview img{width:100%;height:100%;object-fit:cover}.account-card input[type=file]{display:block;margin:10px 0 14px;max-width:100%}
