:root{--ink:#172f50;--wine:#8a3041;--paper:#fffdf8;--cream:#f3eee5;--line:#ded7cc;--muted:#6d747c;--mint:#dceee7}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif}a{color:inherit}.shell{min-height:100vh;display:grid;grid-template-columns:248px 1fr}.sidebar{position:sticky;top:0;height:100vh;padding:32px 21px 23px;background:var(--cream);border-right:1px solid var(--line);display:flex;flex-direction:column}.brand{text-decoration:none;font-size:27px;font-weight:800;letter-spacing:-1.7px}.brand span{color:var(--ink)}.brand b{color:var(--wine)}.brand-copy{margin:7px 0 41px;color:var(--muted);font-size:12px}.sidebar nav{display:grid;gap:4px}.sidebar nav a{text-decoration:none;padding:11px 12px;border-radius:8px;color:#5f6875;font-size:14px;font-weight:700}.sidebar nav a:hover,.sidebar nav .is-active{color:var(--ink);background:#fffdf8}.agency-badge{margin-top:auto;display:flex;align-items:center;gap:9px;font-size:12px}.agency-badge>span{height:33px;width:33px;display:grid;place-items:center;background:var(--wine);color:#fff;border-radius:50%;font-weight:800}.agency-badge strong,.agency-badge small{display:block}.agency-badge small{color:var(--muted);margin-top:2px}.content{max-width:1450px;width:100%;margin:auto;padding:45px clamp(28px,6vw,82px) 85px}.content>header{display:flex;justify-content:space-between;align-items:center;margin-bottom:36px}.eyebrow{margin:0 0 8px;color:var(--wine);font-size:11px;font-weight:800;letter-spacing:1.1px;text-transform:uppercase}.content h1{margin:0;font-size:31px;letter-spacing:-1.2px}.help{border:1px solid var(--line);border-radius:8px;padding:10px 13px;font-size:13px}.flash,.error{padding:13px 15px;border-radius:8px;margin:0 0 20px;font-size:14px}.flash{color:#215842;background:var(--mint)}.error{background:#fae9e9;color:#7d2835}.hero{background:var(--ink);border-radius:15px;padding:38px 40px;color:#fff;display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:46px}.hero .eyebrow{color:#dae4ec}.hero h2{font:500 39px Georgia,serif;margin:0 0 9px;letter-spacing:-1.5px}.hero p:not(.eyebrow){max-width:530px;margin:0;color:#d6e0e9;line-height:1.52}.primary,.secondary{display:inline-block;border-radius:8px;padding:12px 17px;font-size:14px;font-weight:800;text-decoration:none;cursor:pointer}.primary{border:1px solid var(--wine);background:var(--wine);color:#fff}.primary:hover{background:#752436}.secondary{border:1px solid var(--ink);background:#fff;color:var(--ink)}.heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:20px}.heading h2,.panel h2{margin:0;font:500 27px Georgia,serif;letter-spacing:-.7px}.heading p,.intro{margin:8px 0 0;color:var(--muted);line-height:1.5}.pill{color:#225744;background:var(--mint);padding:7px 11px;border-radius:20px;font-size:12px;font-weight:800;white-space:nowrap}.tasks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin-bottom:58px}.task{min-height:111px;padding:19px;display:flex;gap:14px;background:#fffdfa;border:1px solid var(--line);border-radius:11px;text-decoration:none}.task:hover{border-color:#9b8c80}.task.done{border-color:#c7ddd4;background:#f9fcfa}.task i{width:29px;height:29px;flex:none;display:grid;place-items:center;background:#ece6dd;border-radius:50%;font-style:normal;font-size:11px;font-weight:800;color:#657282}.task.done i{background:#cce5db;color:#205b45}.task h3{font-size:14px;margin:2px 0 6px}.task p{margin:0;color:var(--muted);font-size:13px;line-height:1.4}.panel{scroll-margin-top:20px;max-width:1150px;margin:0 0 23px;padding:34px 38px;border:1px solid var(--line);background:#fffdfa;border-radius:13px}.panel.collapsed{padding:25px 38px}.panel.locked{opacity:.64}.locked-copy{padding:23px 0 3px;color:var(--muted)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px;margin-top:25px}.form-grid label,.inline-form label{display:grid;gap:7px;color:#3d4a5b;font-size:13px;font-weight:700}.form-grid input,.inline-form input,.inline-form select{width:100%;border:1px solid #cfc7bc;border-radius:7px;background:#fffefa;padding:11px 12px;color:var(--ink);font-size:14px}.form-grid input:focus,.inline-form input:focus,.inline-form select:focus{border-color:var(--wine);outline:3px solid #f4e3e6}.form-grid .primary{width:max-content;margin-top:4px}.completed-line{margin-top:22px;padding:16px 0 1px;display:flex;align-items:center;justify-content:space-between;gap:19px;border-top:1px solid var(--line)}.completed-line strong,.completed-line span{display:block}.completed-line span{margin-top:5px;color:var(--muted);font-size:13px}.split{display:grid;grid-template-columns:minmax(280px,.78fr) minmax(410px,1.22fr);gap:30px;align-items:start;margin-top:25px}.form-contract{margin-top:0}.document{min-height:585px;padding:42px 49px;background:#fff;border:1px solid #d7d0c7;box-shadow:0 8px 28px #29303b12;color:#24272a;font-family:Georgia,serif;line-height:1.62}.doc-head{display:flex;justify-content:space-between;align-items:center;padding-bottom:13px;border-bottom:1px solid #d9d2c9;font:800 16px Arial,sans-serif;color:var(--ink)}.doc-head b{color:var(--wine)}.doc-head small{font-weight:400;color:#707070;font-size:11px}.document h2{font-size:19px;letter-spacing:.7px;text-align:center;margin:35px 0 27px}.document h3{font-size:14px;margin:20px 0 0}.document p{font-size:13px}.signatures{display:grid;grid-template-columns:1fr 1fr;gap:70px;margin-top:71px;font:11px Arial,sans-serif;text-align:center}.signatures span,.one-signature{border-top:1px solid #555;padding-top:8px}.inline-form{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:14px;align-items:end;margin-top:24px}.notice{display:inline-block;background:#f8ecef;color:#70454e;padding:10px 11px;border-radius:7px;font-size:13px;margin:20px 0 0}.settlement-preview{display:grid;border-top:1px solid var(--line);margin:23px 0}.settlement-preview span,.print-lines span{display:flex;justify-content:space-between;padding:13px 0;border-bottom:1px solid var(--line);color:#43505e}.settlement-preview .total,.print-lines span:last-child{font-weight:800;color:var(--ink)}
.print-page{background:#e9e7e2;padding:25px}.print-document{width:210mm;min-height:297mm;margin:auto;padding:20mm;background:#fff;color:#24272a;font-family:Georgia,serif;line-height:1.65;box-shadow:0 8px 28px #29303b12}.print-document h1{font-size:20px;text-align:center;letter-spacing:.7px;margin:38px 0 30px}.print-document h3{font-size:14px;margin:23px 0 0}.print-document p{font-size:14px}.print-document hr{border:0;border-top:1px solid #ddd;margin:36px 0 18px}.legal{color:#717171;font-size:12px!important}.one-signature{width:58%;margin:100px auto 0;text-align:center;font:11px Arial,sans-serif}.print-lines{margin:30px 0}
@media(max-width:900px){.shell{grid-template-columns:1fr}.sidebar{height:auto;position:relative;padding:20px 24px}.brand-copy,.agency-badge{display:none}.sidebar nav{display:flex;overflow:auto;margin-top:18px}.sidebar nav a{white-space:nowrap}.content{padding:32px 24px}.split{grid-template-columns:1fr}.inline-form{grid-template-columns:1fr 1fr}.document{min-height:auto}}@media(max-width:580px){.content{padding:27px 17px}.content>header,.hero,.heading{flex-direction:column;align-items:flex-start}.help{display:none}.hero{padding:29px}.hero h2{font-size:31px}.tasks,.form-grid,.inline-form{grid-template-columns:1fr}.panel{padding:27px 21px}.completed-line{align-items:flex-start;flex-direction:column}.document{padding:31px 25px}}
@media print{.print-page{padding:0;background:#fff}.print-document{margin:0;padding:18mm;width:210mm;min-height:297mm;box-shadow:none}.print-page .print-document{page-break-after:always}}
.print-document h3{break-after:avoid-page;page-break-after:avoid}.print-document .signatures{break-inside:avoid-page;page-break-inside:avoid}
.receipt-document{position:relative;overflow:hidden;font-family:Arial,Helvetica,sans-serif;color:var(--ink);padding:17mm 19mm;background:#faf3e7;-webkit-print-color-adjust:exact;print-color-adjust:exact}.receipt-document::after{content:"";position:absolute;width:285px;height:285px;right:-45px;bottom:105px;background:url('/brand-mark.svg') center/contain no-repeat;opacity:.035;transform:rotate(-8deg);pointer-events:none}.receipt-document>*{position:relative;z-index:1}.receipt-head{display:flex;justify-content:space-between;align-items:center;padding-bottom:15px;border-bottom:1px solid var(--line)}.receipt-brand{display:flex;align-items:center;gap:11px}.receipt-brand img{width:39px;height:39px}.receipt-brand div{display:grid;gap:2px}.receipt-brand span{font-size:23px;font-weight:800;letter-spacing:-1.4px}.receipt-brand b{color:var(--wine)}.receipt-brand small{font-size:12px;color:var(--muted);font-weight:700}.receipt-meta{display:grid;gap:4px;text-align:right}.receipt-meta strong{font-size:13px;color:var(--wine)}.receipt-meta span{font-size:11px;color:var(--muted)}.receipt-title{text-align:center;margin:34px 0 25px}.receipt-title p{margin:0 0 5px!important;color:var(--wine);font-size:10px!important;font-weight:800;letter-spacing:1.4px;text-transform:uppercase}.receipt-title h1{margin:0 0 8px;font:500 25px Georgia,serif;letter-spacing:.5px}.receipt-title>span{display:inline-block;padding:5px 9px;border-radius:20px;background:#efe5d6;color:#6f665f;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.receipt-amount{margin:0 auto 28px;max-width:460px;padding:19px 25px;text-align:center;background:var(--ink);color:#fff;border-radius:11px}.receipt-amount small,.receipt-amount strong{display:block}.receipt-amount small{font-size:10px;letter-spacing:1px;text-transform:uppercase;color:#d6e0e9;margin-bottom:7px}.receipt-amount strong{font:500 30px Georgia,serif}.receipt-lead{max-width:620px;margin:0 auto 26px!important;line-height:1.65;text-align:center}.receipt-details{max-width:620px;margin:0 auto 26px;display:grid;grid-template-columns:1fr 1fr;border:1px solid #d8cdbd;border-radius:10px;overflow:hidden;background:#fffaf1cc}.receipt-details div{padding:14px 16px}.receipt-details div:nth-child(2){border-left:1px solid #d8cdbd}.receipt-details .wide{grid-column:1/-1;border-top:1px solid #d8cdbd}.receipt-details dt{font-size:9px;letter-spacing:1px;text-transform:uppercase;color:var(--muted);font-weight:800;margin-bottom:5px}.receipt-details dd{margin:0;font-size:13px;font-weight:700;line-height:1.45}.receipt-notice{max-width:620px;margin:0 auto;padding:13px 15px;border-left:3px solid var(--wine);background:#f7e8e7cc}.receipt-notice strong{font-size:11px;color:var(--wine);text-transform:uppercase;letter-spacing:.6px}.receipt-notice p{margin:4px 0 0!important;font-size:11px!important;line-height:1.5;color:#615b58}.receipt-footer{max-width:620px;margin:71px auto 0;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:end}.receipt-contact{display:grid;gap:4px;font-size:10px;color:var(--muted)}.receipt-contact strong{font-size:12px;color:var(--ink)}.receipt-signature{border-top:1px solid #5d6268;padding-top:7px;text-align:center;font-size:10px;color:#565d66}
@media print{.receipt-document{padding:17mm 19mm}.receipt-head,.receipt-amount,.receipt-details,.receipt-notice,.receipt-footer{break-inside:avoid;page-break-inside:avoid}.non-contractual-note{display:none!important}}
.field-note{margin:0;padding:11px 12px;border-radius:7px;background:#eef5f2;color:#486259;font-size:12px;line-height:1.5}
.form-grid select,.form-grid textarea{width:100%;border:1px solid #cfc7bc;border-radius:7px;background:#fffefa;padding:11px 12px;color:var(--ink);font:14px Arial,Helvetica,sans-serif}.form-grid textarea{resize:vertical}.form-grid select:focus,.form-grid textarea:focus{border-color:var(--wine);outline:3px solid #f4e3e6}.form-grid .wide{grid-column:1 / -1}.form-section{padding:13px 0 3px;border-bottom:1px solid var(--line);color:var(--ink)}.form-section strong,.form-section span{display:block}.form-section span{margin-top:4px;font-size:12px;font-weight:400;color:var(--muted)}.contract-warning{margin:0;color:#754652;background:#f9eef0;border-radius:7px;padding:11px 12px;font-size:12px;line-height:1.45}.document-disclaimer{padding:10px 11px;background:#f8f2e8;color:#765c3c;border-radius:5px;font:11px Arial,sans-serif}
.live-document{position:sticky;top:24px;max-height:calc(100vh - 48px);overflow-y:auto}.preview-heading{display:flex;justify-content:space-between;gap:12px;padding-bottom:13px;border-bottom:1px solid #d9d2c9;font:800 12px Arial,sans-serif;color:var(--ink);text-transform:uppercase;letter-spacing:.5px}.preview-heading small{font-weight:400;color:#707070;font-size:10px;letter-spacing:0;text-transform:none}@media(max-width:900px){.live-document{position:static;max-height:none;overflow:visible}}
.split{grid-template-columns:minmax(320px,.9fr) minmax(430px,1.1fr)}.split>*{min-width:0}.form-contract{grid-template-columns:minmax(0,1fr)}.form-contract .wide{grid-column:auto}.form-contract label,.form-contract input,.form-contract select,.form-contract textarea{min-width:0}@media(max-width:1180px){.split{grid-template-columns:1fr}.live-document{position:static;max-height:none;overflow:visible}}
.form-grid label small{font-size:11px;line-height:1.4;font-weight:400;color:var(--muted)}.address-card{min-width:0;margin:0;padding:16px;border:1px solid var(--line);border-radius:10px;background:#fbf8f2;display:grid;grid-template-columns:minmax(0,1.7fr) minmax(110px,.7fr);gap:13px}.address-card legend{padding:0 7px;color:var(--ink);font-size:13px;font-weight:800}.address-card .address-street,.address-card .address-locality{grid-column:auto}.address-result{grid-column:1/-1;margin:0;padding-top:2px;color:var(--muted);font-size:11px;line-height:1.45}.address-result strong{color:#425468}.party-list{display:grid;gap:13px}.party-card{padding:16px;border:1px solid var(--line);border-radius:10px;background:#fff}.party-card-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.party-card-heading button{border:0;background:transparent;color:var(--wine);font-size:12px;font-weight:800;cursor:pointer}.party-fields{display:grid;grid-template-columns:1fr 1fr;gap:13px}.party-address{margin-top:15px;background:#fbf8f2}.add-party{width:100%;border:1px dashed #b9ada1;border-radius:9px;background:#fff;color:var(--ink);padding:11px 14px;font-weight:800;cursor:pointer}.add-party:hover{border-color:var(--wine);color:var(--wine)}.add-party:disabled{cursor:not-allowed;opacity:.58}.contact-annex{break-inside:avoid-page;page-break-inside:avoid}.contact-annex p{margin:7px 0}.contact-annex strong{font-size:12px}@media(max-width:580px){.address-card,.party-fields{grid-template-columns:1fr}}
.choice-card{margin:0;padding:15px;border:1px solid var(--line);border-radius:9px;background:#fbf8f2}.choice-card legend{padding:0 7px;font-size:13px;font-weight:800}.choice-list{display:grid;gap:10px}.choice-list label{display:flex;grid-template-columns:auto 1fr;align-items:center;gap:9px}.choice-list input{width:auto}.party-fields .wide{grid-column:1/-1}.guarantee-evidence{margin:15px 0}.guarantee-evidence textarea{width:100%;border:1px solid #cfc7bc;border-radius:7px;padding:10px;background:#fffefa}.preview-heading{display:flex;justify-content:space-between;gap:15px;padding-bottom:12px;border-bottom:1px solid #d9d2c9;font:800 11px Arial,sans-serif;text-transform:uppercase;color:var(--ink)}.preview-heading small{font-weight:400;text-transform:none;color:var(--muted)}
.work-menu{position:relative}.work-menu .help{background:#fffdf8;color:var(--ink);cursor:pointer}.work-menu .help:hover,.work-menu .help[aria-expanded="true"]{border-color:var(--wine);color:var(--wine)}.work-menu-panel{position:absolute;z-index:20;right:0;top:calc(100% + 9px);width:230px;padding:16px;background:#fffdf8;border:1px solid var(--line);border-radius:10px;box-shadow:0 15px 35px #172f5024}.work-menu-panel strong,.work-menu-panel time{display:block}.work-menu-panel time{margin:5px 0 13px;color:var(--wine);font-size:13px;font-weight:800;font-variant-numeric:tabular-nums}.work-menu-panel nav{display:grid;gap:4px}.work-menu-panel nav a{padding:9px 10px;border-radius:7px;text-decoration:none;font-size:13px;font-weight:700}.work-menu-panel nav a:hover{background:var(--cream)}@media(max-width:580px){.work-menu .help{display:inline-block}.work-menu-panel{left:0;right:auto}}
.operator-form{display:grid;gap:7px;margin:0 0 11px;padding:0 0 12px;border-bottom:1px solid var(--line)}.operator-form label{display:grid;gap:5px;color:var(--muted);font-size:11px;font-weight:700}.operator-form input{width:100%;padding:8px 9px;border:1px solid var(--line);border-radius:6px;background:#fff}.operator-form button{justify-self:start;padding:7px 9px;border:0;border-radius:6px;background:var(--ink);color:#fff;font-size:11px;font-weight:800;cursor:pointer}
.brand{display:inline-flex;align-items:center;gap:8px}.brand img{width:31px;height:31px;flex:none;object-fit:contain}
.contract-edit{margin-top:14px;padding:13px 15px;border:1px solid var(--line);border-radius:9px;background:#fbf8f2}.contract-edit summary{cursor:pointer;font-size:13px;font-weight:800}.contract-edit .form-grid{margin-top:15px}.contract-edit .primary{align-self:end}
.document h3,.print-document h3{font-weight:400}.clause-order{font-size:14px;font-weight:800;text-decoration:underline;text-underline-offset:2px}.clause-topic{font-size:13px;font-weight:800;letter-spacing:.05px}.contact-annex{margin:14px 0 9px;padding:8px 10px;border:1px solid #ddd4c8;background:#fbf8f2;font:10px Arial,sans-serif;line-height:1.45}.contact-annex strong{font-size:10px}.closing-attestation{margin-top:16px;font-size:12px!important;font-weight:700;line-height:1.5;text-align:justify}.print-document strong,.document strong{font-weight:700}

/* Gastos comunes: carga mensual y salida A4. */
.expense-builder{margin-top:22px;border-top:1px solid var(--line);padding-top:18px}.expense-builder>summary{cursor:pointer;color:var(--ink);font-size:14px;font-weight:800}.expense-form{display:grid;gap:19px;margin-top:18px}.expense-meta{margin-top:0;grid-template-columns:repeat(3,minmax(0,1fr))}.receipt-choice{display:flex!important;align-items:center;align-self:center;grid-template-columns:auto 1fr!important;gap:9px!important;padding:11px 12px;border:1px solid #d7cdc0;border-radius:8px;background:#fbf8f2}.receipt-choice input{width:auto}.expense-items{overflow:hidden;border:1px solid var(--line);border-radius:10px;background:#fff}.expense-items-head,.expense-entry{display:grid;grid-template-columns:58px minmax(180px,1.1fr) minmax(125px,.55fr) minmax(220px,1.35fr);gap:12px;align-items:center;padding:10px 13px}.expense-items-head{background:var(--cream);color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.8px;text-transform:uppercase}.expense-entry{min-height:59px;border-top:1px solid #ece6dd}.expense-entry>input[type=checkbox]{width:18px;height:18px;accent-color:var(--wine)}.expense-entry>input:not([type=checkbox]){width:100%;min-width:0;border:1px solid #d3cbc0;border-radius:7px;background:#fffefa;padding:9px 10px;color:var(--ink)}.expense-entry strong{font-size:12px;line-height:1.35}.expense-notes{display:grid;gap:7px;color:#3d4a5b;font-size:13px;font-weight:700}.expense-notes textarea{width:100%;resize:vertical;border:1px solid #cfc7bc;border-radius:7px;background:#fffefa;padding:11px 12px;color:var(--ink);font:14px Arial,Helvetica,sans-serif}

.expense-document{width:auto;min-height:0;padding:0;background:transparent;box-shadow:none;font-family:Arial,Helvetica,sans-serif;line-height:1.45}.expense-page{position:relative;width:210mm;min-height:297mm;margin:0 auto 22px;padding:15mm 17mm;background:#faf3e7;color:var(--ink);box-shadow:0 8px 28px #29303b12;overflow:hidden;-webkit-print-color-adjust:exact;print-color-adjust:exact}.expense-page::after{content:"";position:absolute;right:-30mm;bottom:25mm;width:95mm;height:95mm;background:url('/brand-mark.svg') center/contain no-repeat;opacity:.025;transform:rotate(-8deg);pointer-events:none}.expense-page>*{position:relative;z-index:1}.expense-head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:11px;border-bottom:1px solid #d5cabd}.expense-brand{display:flex;align-items:center;gap:10px}.expense-brand img{width:35px;height:35px}.expense-brand div,.expense-number{display:grid;gap:2px}.expense-brand strong{font-size:21px;letter-spacing:-1.2px}.expense-brand strong span{color:var(--wine)}.expense-brand small,.expense-number span{color:var(--muted);font-size:9px;font-weight:700}.expense-number{text-align:right}.expense-number strong{color:var(--wine);font-size:12px;letter-spacing:.6px}.expense-administration{display:grid;gap:3px;margin:11px 0 0;padding:10px 13px;border-left:3px solid var(--wine);background:#fffaf1cc;font-size:9px;line-height:1.35}.expense-administration>strong{font-size:10px;letter-spacing:.45px}.expense-title{text-align:center;margin:20px 0 15px}.expense-title p{margin:0 0 3px!important;color:var(--wine);font-size:8px!important;font-weight:800;letter-spacing:1.2px;text-transform:uppercase}.expense-title h1{margin:0 0 5px;font:500 20px Georgia,serif;letter-spacing:.5px}.expense-title>span{display:inline-block;padding:4px 8px;border-radius:20px;background:#eee3d4;color:#6c645d;font-size:8px;font-weight:800;letter-spacing:.4px;text-transform:uppercase}.expense-summary-data{display:grid;grid-template-columns:1fr 1fr;margin:0 0 15px;border:1px solid #d8cdbd;border-radius:8px;overflow:hidden;background:#fffaf1cc}.expense-summary-data div{padding:9px 11px}.expense-summary-data div:nth-child(even){border-left:1px solid #d8cdbd}.expense-summary-data div:nth-child(n+3){border-top:1px solid #d8cdbd}.expense-summary-data dt{margin:0 0 3px;color:var(--muted);font-size:7px;font-weight:800;letter-spacing:.8px;text-transform:uppercase}.expense-summary-data dd{margin:0;font-size:9px;font-weight:700;line-height:1.35}.expense-table{width:100%;border-collapse:collapse;background:#fffdf8;font-size:8.5px}.expense-table th,.expense-table td{padding:7px 8px;border-bottom:1px solid #ded6ca;text-align:left;vertical-align:top}.expense-table th{background:var(--ink);color:#fff;font-size:7px;letter-spacing:.7px;text-transform:uppercase}.expense-table th:last-child,.expense-table td:last-child{width:30mm;text-align:right;white-space:nowrap}.expense-table tbody td:first-child{font-weight:700}.expense-table tfoot td{border:0;background:#ede4d7;font-size:9px;font-weight:800}.expense-observations{margin-top:10px;padding:8px 10px;border:1px solid #d8cdbd;background:#fffaf1cc;font-size:8px}.expense-observations p{margin:3px 0 0!important;font-size:8px!important;line-height:1.4}.expense-status{display:flex;flex-wrap:wrap;gap:18px;margin-top:10px;padding:8px 10px;background:var(--ink);color:#fff;font-size:8px}.expense-information{position:absolute;left:17mm;right:17mm;bottom:13mm;padding-top:8px;border-top:1px solid #d5cabd}.expense-information p{margin:3px 0!important;font-size:7.4px!important;line-height:1.35}.expense-information .expense-legal{margin-top:6px!important;color:#746d67}.expense-receipt-page{display:flex;flex-direction:column}.receipt-copy-title{margin-top:34px}.expense-receipt-page .receipt-amount{width:130mm;margin:0 auto 27px}.expense-receipt-lead{max-width:150mm;margin:0 auto 24px!important;text-align:center;font-size:11px!important;line-height:1.65}.receipt-data{width:150mm;margin-left:auto;margin-right:auto}.expense-receipt-page .receipt-notice{width:150mm}.expense-contact-card{width:150mm;margin:22px auto 0;padding:12px 15px;border:1px solid #d8cdbd;border-radius:8px;background:#fffaf1cc;display:grid;gap:4px;font-size:9px}.expense-contact-card strong{font-size:10px;color:var(--wine)}.expense-signature{width:85mm;margin:75px auto 0;padding-top:8px;border-top:1px solid #555;text-align:center;font-size:9px;color:#5c6268}

@media(max-width:900px){.expense-meta{grid-template-columns:1fr 1fr}.expense-items-head{display:none}.expense-entry{grid-template-columns:34px 1fr}.expense-entry>input:not([type=checkbox]){grid-column:2}.expense-document{overflow:auto}.expense-page{transform-origin:top left}}
@media(max-width:580px){.expense-meta{grid-template-columns:1fr}.expense-entry{grid-template-columns:30px 1fr}.receipt-choice{align-self:stretch}}
@media print{@page{size:A4;margin:0}.expense-document{width:210mm!important;margin:0!important;padding:0!important;background:#fff!important}.expense-page{width:210mm;min-height:297mm;height:297mm;margin:0;padding:15mm 17mm;box-shadow:none;break-after:page;page-break-after:always}.expense-page:last-child{break-after:auto;page-break-after:auto}.expense-head,.expense-administration,.expense-summary-data,.expense-table tr,.expense-observations,.expense-status,.expense-information,.expense-contact-card,.expense-signature{break-inside:avoid;page-break-inside:avoid}}

/* Planilla general de gastos por unidad. */
.expense-planning-panel{max-width:1250px}.expense-batch-summary{margin-top:22px;padding:16px 0;display:flex;align-items:center;justify-content:space-between;gap:18px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.expense-batch-summary strong,.expense-batch-summary span{display:block}.expense-batch-summary span{margin-top:5px;color:var(--muted);font-size:12px}.expense-unit-statuses{display:grid;gap:9px;margin:15px 0 24px}.expense-unit-status{display:grid;grid-template-columns:minmax(210px,1fr) auto auto minmax(300px,1.2fr) auto;gap:12px;align-items:center;padding:13px 14px;border:1px solid var(--line);border-radius:9px;background:#fff}.expense-unit-status.is-paid{border-color:#bdd7cc;background:#f8fcfa}.expense-unit-status>div strong,.expense-unit-status>div span{display:block}.expense-unit-status>div span{margin-top:3px;color:var(--muted);font-size:11px}.expense-unit-status>b{font-size:13px}.expense-paid-label{padding:5px 7px;border-radius:20px;background:#d9eee5;color:#215b45;font-size:9px;font-weight:800;letter-spacing:.6px}.expense-payment-form{display:grid;grid-template-columns:120px 1fr auto;gap:9px;align-items:end}.expense-payment-form label{display:grid;gap:4px;color:var(--muted);font-size:9px;font-weight:800;text-transform:uppercase}.expense-payment-form input,.expense-payment-form select{width:100%;padding:8px;border:1px solid #d2c9bd;border-radius:6px;background:#fff}.expense-payment-form .primary{padding:9px 11px;font-size:11px}.expense-unit-status>.secondary{padding:9px 10px;font-size:11px;white-space:nowrap}.expense-batch-form{gap:22px}.expense-roster-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:10px}.expense-roster{width:100%;min-width:900px;border-collapse:collapse;font-size:11px}.expense-roster th,.expense-roster td{padding:10px 11px;border-bottom:1px solid #e5ded5;text-align:left;vertical-align:top}.expense-roster th{background:var(--ink);color:#fff;font-size:9px;letter-spacing:.55px;text-transform:uppercase}.expense-roster tbody tr:last-child td{border-bottom:0}.expense-roster td:first-child{min-width:220px}.expense-roster td:first-child strong,.expense-roster td:first-child span{display:block}.expense-roster td:first-child span{margin-top:3px;color:var(--muted);font-size:10px}.expense-roster select,.expense-roster input[type=text],.expense-roster input:not([type]){width:100%;min-width:125px;padding:8px;border:1px solid #d2c9bd;border-radius:6px;background:#fffefa;color:var(--ink);font-size:11px}.expense-roster td>input{margin-top:6px}.mini-check{display:flex!important;align-items:center;gap:6px!important;margin-bottom:7px;font-size:10px!important;white-space:nowrap}.mini-check input{width:auto!important;accent-color:var(--wine)}.unit-concept-list{display:grid;gap:12px}.unit-concepts{border:1px solid var(--line);border-radius:10px;background:#fbf8f2;overflow:hidden}.unit-concepts>summary{cursor:pointer;padding:13px 15px}.unit-concepts>summary span,.unit-concepts>summary small{display:block}.unit-concepts>summary span{font-size:13px;font-weight:800}.unit-concepts>summary small{margin-top:3px;color:var(--muted);font-size:10px}.unit-concepts .expense-items{border:0;border-top:1px solid var(--line);border-radius:0}.expense-entry-detail{display:grid;grid-template-columns:145px 1fr;gap:7px;align-items:center}.expense-entry-detail select,.expense-entry-detail input{width:100%;min-width:0;border:1px solid #d3cbc0;border-radius:7px;background:#fffefa;padding:9px 10px;color:var(--ink);font-size:11px}.automatic-payer{color:#66736f;font-size:10px;line-height:1.35}.expense-batch-document{width:auto;min-height:0;padding:0;background:transparent;box-shadow:none;font-family:Arial,Helvetica,sans-serif;line-height:1.4}.expense-batch-page{width:210mm;min-height:297mm;margin:0 auto;padding:14mm 15mm;background:#faf3e7;color:var(--ink);box-shadow:0 8px 28px #29303b12;-webkit-print-color-adjust:exact;print-color-adjust:exact}.batch-period-data{grid-template-columns:1fr 1fr}.batch-period-data div:nth-child(n){border-top:0}.expense-batch-table{font-size:7.5px}.expense-batch-table th:last-child,.expense-batch-table td:last-child{width:auto;text-align:left;white-space:normal}.expense-batch-table td:nth-child(5){text-align:right;white-space:nowrap;font-weight:700}.expense-batch-details{margin-top:15px}.expense-batch-details h2{margin:0 0 8px;font:800 9px Arial,sans-serif;letter-spacing:.8px}.expense-batch-details article{break-inside:avoid;margin-bottom:8px;padding:8px 9px;border:1px solid #d8cdbd;background:#fffaf1cc}.expense-batch-details h3{margin:0 0 5px!important;font:800 8px Arial,sans-serif!important}.batch-item-lines{display:grid;gap:3px}.batch-item-lines span{display:grid;grid-template-columns:1fr 22mm 27mm;gap:8px;font-size:7px}.batch-item-lines i,.batch-item-lines em{font-style:normal}.batch-item-lines i{color:var(--muted)}.batch-item-lines em{text-align:right;font-weight:700}.expense-batch-legal{margin:12px 0 0!important;padding-top:7px;border-top:1px solid #d5cabd;color:#726a63;font-size:7px!important}
@media(max-width:1050px){.expense-unit-status{grid-template-columns:1fr auto}.expense-payment-form{grid-column:1/-1}.expense-unit-status>.secondary{justify-self:start}.expense-entry-detail{grid-template-columns:1fr}}
@media(max-width:580px){.expense-batch-summary{align-items:flex-start;flex-direction:column}.expense-unit-status{grid-template-columns:1fr}.expense-payment-form{grid-template-columns:1fr}.expense-entry-detail{grid-template-columns:1fr}}
@media print{.expense-batch-document{width:210mm!important;margin:0!important;padding:0!important;background:#fff!important}.expense-batch-page{width:210mm;min-height:297mm;margin:0;padding:14mm 15mm;box-shadow:none}.expense-batch-details article,.expense-batch-table tr{break-inside:avoid;page-break-inside:avoid}}
.expense-roster{min-width:760px}
.unit-technical-notes{display:grid;gap:5px;padding:11px 13px;border-left:3px solid var(--wine);background:#fbf4ed;color:#625c57;font-size:10px;line-height:1.4}.unit-technical-notes strong{color:var(--ink);font-size:11px}
