:root{font-family:Arial,"Microsoft YaHei",sans-serif;color:#202020;background:#fff;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{padding:8px 12px;min-height:38px;border:1px solid #b9b9b9;border-radius:2px;color:#222;background:#fff;cursor:pointer}button:hover{background:#f3f3f3}button.primary{background:#262626;color:#fff;border-color:#262626}button:disabled{opacity:.5;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #555;outline-offset:3px}a{color:#222}.topbar{display:flex;justify-content:space-between;align-items:center;padding:18px 30px;border-bottom:1px solid #ddd;gap:16px}.brand{font-size:16px;font-weight:600;text-decoration:none;color:#222}.top-actions,.intro-actions,.language{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.top-actions{font-size:13px}.language button{background:transparent;border-color:transparent}.language [aria-pressed=true]{text-decoration:underline;text-underline-offset:5px}.intro{padding:18px 30px;max-width:1600px;margin:auto}.intro-actions{justify-content:flex-end}h1{font-size:24px;font-weight:500;margin:20px 0}.workspace{max-width:1600px;margin:auto;padding:0 30px 50px;display:grid;grid-template-columns:minmax(340px,460px) minmax(0,1fr);gap:40px;align-items:start}.editor{padding:0 0 20px}.notice{padding:12px 0;border-top:1px solid #ddd;border-bottom:1px solid #ddd;color:#555;font-size:12px;line-height:1.6}nav{display:flex;flex-wrap:wrap;gap:0;margin:20px 0;border-bottom:1px solid #bdbdbd}nav button{font-size:13px;padding:9px 10px;border:0;border-radius:0;min-height:38px}nav button[aria-selected=true]{box-shadow:inset 0 -2px #222;font-weight:600}fieldset{border:0;margin:0;padding:0}legend{font-size:18px;font-weight:500;margin:4px 0 14px}.field{display:block;margin:15px 0}.field span{display:block;font-size:13px;margin-bottom:6px}input:not([type=checkbox]):not([type=file]),select,textarea{width:100%;max-width:100%;padding:10px;border:1px solid #b9b9b9;background:#fff;border-radius:2px;color:#222}textarea{resize:vertical;min-height:82px}input[type=checkbox]{width:17px;height:17px;accent-color:#333}.checkbox{display:flex;gap:9px;align-items:start;line-height:1.6;font-size:13px;margin:16px 0}.row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.repeat-item{border-top:1px solid #ddd;margin-top:15px;padding-top:9px}.repeat-heading{display:flex;justify-content:space-between;align-items:center;gap:10px}.repeat-heading button{font-size:12px;min-height:32px}h3{font-size:14px;font-weight:600}.status{font-size:12px;line-height:1.65;color:#555;margin-top:20px}.privacy{font-size:12px;color:#666;line-height:1.7;border-top:1px solid #ddd;padding-top:14px}.preview{padding:0 0 20px}.preview-label{display:flex;gap:12px;justify-content:space-between;flex-wrap:wrap;font-size:12px;padding:12px 0 18px;color:#555}.paper{background:#fff;border:1px solid #d2d2d2;padding:clamp(22px,3.7vw,55px);font-family:Georgia,"Times New Roman",serif;color:#111;line-height:1.55;overflow-wrap:anywhere}.paper h2{text-align:center;font-size:19px;font-weight:bold;margin:12px 0 25px}.paper h3{font-size:14px;margin:22px 0 5px;break-after:avoid}.paper p,.paper li{font-size:13px;margin:8px 0}.paper .draft{font:10px Arial,sans-serif;color:#555;padding-bottom:10px;border-bottom:1px solid #ccc}.paper .missing{color:#666;text-decoration:underline;text-decoration-style:dotted}.paper table{border-collapse:collapse;width:100%;font-size:12px;margin:12px 0}.paper th,.paper td{border:1px solid #bbb;padding:7px;vertical-align:top;text-align:left}.paper .signatures{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:40px;break-inside:avoid}.paper .annex{break-before:page}.paper .photo{width:100%;max-height:330px;object-fit:contain;margin:15px 0}.auth-page{min-height:100vh;display:grid;place-items:center;padding:25px}.auth-card{width:100%;max-width:390px;padding:25px 0}.auth-card label{display:block;font-size:13px;margin:18px 0 6px}.auth-card button.primary{margin-top:25px;width:100%}.auth-card .language{justify-content:flex-end;margin:10px 0 30px}.auth-card p{font-size:13px;line-height:1.6;color:#555}.session-expired{position:fixed;bottom:0;left:0;right:0;background:#f5f5f5;border-top:2px solid #555;padding:15px 25px;z-index:10}.session-expired p{margin:0 0 8px}.session-expired a{margin-left:20px}[hidden]{display:none!important}@media(max-width:1000px){.workspace{grid-template-columns:1fr;gap:20px}.preview{min-width:0}.topbar{flex-wrap:wrap}.intro-actions{justify-content:flex-start}}@media(max-width:430px){.workspace{padding-left:15px;padding-right:15px}.row{grid-template-columns:1fr}.paper{padding:20px}.topbar{padding:14px 15px}.intro{padding:15px}.intro-actions button{font-size:12px}.topbar .brand{font-size:15px}}
@page{size:A4;margin:18mm}@media print{body{background:#fff}.topbar,.intro,.editor,.preview-label,.session-expired{display:none!important}.workspace{display:block;padding:0;max-width:none}.paper{border:0;padding:0;line-height:1.45}.paper p,.paper li{font-size:10pt}.paper h2{font-size:16pt}.paper h3{font-size:11pt}.paper table{font-size:9pt}.paper .missing{text-decoration:underline}.paper tr,.paper figure{break-inside:avoid}.paper .draft{font-size:8pt}.paper .photo{max-height:190mm}.preview{display:block}}

.mode-banner{margin:0 30px 20px;padding:12px 0;border-top:2px solid #444;border-bottom:1px solid #ccc;font-size:13px;line-height:1.5}.demo-mode .paper .draft{font-weight:bold}.demo-mode .paper .signatures{color:#555}@media(max-width:430px){.mode-banner{margin-left:15px;margin-right:15px}}@media print{.mode-banner{display:none}.demo-mode::before{content:"DEMO · DOCUMENTO DE PRÁCTICA · NO UTILIZAR PARA FIRMA";display:block;position:fixed;top:-12mm;left:0;right:0;text-align:center;font:9pt Arial,sans-serif;color:#444}}

.writing-notice{font-size:13px;line-height:1.7;padding:12px 0;margin:0;border-bottom:1px solid #ddd;color:#222}@media print{.writing-notice{display:none}}

.workflow-panel{max-width:1540px;margin:0 auto 25px;padding:15px 0;border-top:1px solid #bbb;border-bottom:1px solid #bbb;font-size:13px;line-height:1.6}.flow-heading{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.flow-heading strong{font-weight:600}.flow-heading span{color:#666}.flow-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.flow-actions .checkbox,.flow-actions .field,.flow-actions p{flex-basis:100%}.workflow-panel textarea{max-width:760px}.download-link{display:inline-block;padding:9px 12px;border:1px solid #bbb;text-decoration:none}.document-reference{font:11px Arial,sans-serif!important;color:#555}.workflow-panel details{margin:12px 0}.workflow-panel button{font-size:13px}@media(max-width:1600px){.workflow-panel{margin-left:30px;margin-right:30px}}@media(max-width:430px){.workflow-panel{margin-left:15px;margin-right:15px}.flow-actions button{width:100%}}@media print{.workflow-panel{display:none!important}}

#form fieldset{margin:0 0 28px;padding-top:14px;border-top:1px solid #ddd}.entry-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 15px}.entry-grid .field:has(textarea),.entry-grid .checkbox,.entry-grid .field-help{grid-column:1 / -1}.field-help{font-size:12px;color:#555;line-height:1.6}.room-tabs,.camera-actions{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}.room-tabs [aria-pressed=true]{border-bottom:3px solid #222}.room-add{display:flex;gap:12px;align-items:end;margin:15px 0}.room-add .field{flex:1;margin:0}.inventory-photos{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;margin-bottom:20px}.inventory-photos figure{margin:0;border-bottom:1px solid #ccc;padding-bottom:12px}.inventory-photos img{width:100%;height:160px;object-fit:cover}.camera-actions button{flex:1}.paper figure figcaption{font:12px Arial,sans-serif}.paper figure{margin:14px 0}@media(max-width:600px){.entry-grid{grid-template-columns:1fr}.camera-actions button{flex-basis:100%;min-height:48px}.room-tabs button{min-height:44px}.inventory-photos{grid-template-columns:1fr 1fr}}@media(max-width:370px){.inventory-photos{grid-template-columns:1fr}}

.utility-controls{margin-top:28px;padding-top:15px;border-top:1px solid #bbb}.utility-row{display:grid;grid-template-columns:1fr 1fr;gap:0 12px;border-top:1px solid #ddd}.utility-row h3,.utility-row .field:last-child{grid-column:1 / -1}@media(max-width:430px){.utility-row{grid-template-columns:1fr}}
