:root{--ground:#f5f4ef;--surface:#ffffff;--ink:#17201d;--ink-2:#3e4944;--muted:#55605b;--line:#e2e0d8;--line-2:#c9ccc4;--green:#1e5b48;--green-dark:#143f32;--green-soft:#e3eee9;--amber-bg:#fbefd9;--amber-line:#eed6ae;--amber:#7a4708;--radius:14px;--font-display:"Bricolage Grotesque",system-ui,sans-serif;--font-body:"Inter",system-ui,sans-serif}*{box-sizing:border-box}body,html{margin:0;padding:0}body{background:var(--ground);color:var(--ink);font-family:var(--font-body);font-size:16px;line-height:1.5}a{color:var(--green)}a:hover{color:var(--green-dark)}h1,h2,h3{margin:0;line-height:1.15}h1{font-family:var(--font-display);font-weight:700;letter-spacing:-.02em;font-size:34px}h2{font-size:19px}h2,h3{font-weight:600}h3{font-size:17px}p{margin:0}.container{max-width:1240px;margin:0 auto;padding:0 24px}.stack{display:flex;flex-direction:column;gap:16px}.row,.spread{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.spread{justify-content:space-between}.grid{display:grid;grid-gap:16px;gap:16px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.muted{color:var(--muted);font-size:14px}.small{font-size:13px}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:20px}.card.amber{background:var(--amber-bg);border-color:var(--amber-line);color:var(--amber)}.kpi-value{font-size:28px;font-weight:600;margin-top:6px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 18px;border-radius:10px;border:1px solid var(--line-2);background:var(--surface);font:inherit;font-weight:600;font-size:15px;text-decoration:none;cursor:pointer}.btn,.btn:hover{color:var(--ink)}.btn:hover{border-color:var(--ink-2)}.btn.primary{background:var(--green);border-color:var(--green);color:#fff}.btn.primary:hover{background:var(--green-dark);color:#fff}.btn.block{width:100%;min-height:50px}.btn.small{min-height:36px;padding:0 12px;font-size:14px}label{display:block;font-size:14px;font-weight:600;margin-bottom:6px}input,select,textarea{width:100%;min-height:44px;padding:8px 12px;border:1px solid var(--line-2);border-radius:10px;background:#fff;font:inherit;color:var(--ink)}textarea{min-height:88px}.btn:focus-visible,input:focus,select:focus,textarea:focus{outline:3px solid #9cc7b6;outline-offset:1px}.form-grid{display:grid;grid-gap:14px;gap:14px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.form-grid .full{grid-column:1/-1}fieldset{border:1px solid var(--line);border-radius:12px;padding:14px;margin:0}legend{font-size:14px;padding:0 6px}.pill,legend{font-weight:600}.pill{display:inline-block;font-size:12px;padding:3px 9px;border-radius:999px;background:var(--green-soft);color:var(--green-dark)}.pill.amber{background:var(--amber-bg);color:var(--amber)}.pill.grey{background:#ecebe5;color:var(--ink-2)}table{width:100%;border-collapse:collapse;font-size:15px}th{text-align:left;font-size:13px;color:var(--muted);font-weight:600;padding:8px 10px;border-bottom:1px solid var(--line)}td{padding:10px;border-bottom:1px solid #ecebe5;vertical-align:top}.table-wrap{overflow-x:auto}.notice{padding:12px 14px;border-radius:10px;background:var(--green-soft);color:var(--green-dark);font-size:14px}.notice.error{background:#fde8e4;color:#8a1f0f}.topbar{background:var(--surface);border-bottom:1px solid var(--line)}.topbar-inner{flex-wrap:wrap;gap:14px;padding:12px 24px;max-width:1320px;margin:0 auto}.brand,.topbar-inner{display:flex;align-items:center}.brand{gap:10px;text-decoration:none;font-family:var(--font-display);font-weight:700;font-size:21px;margin-right:auto}.brand,.brand:hover{color:var(--ink)}.nav{display:flex;flex-wrap:wrap;gap:4px}.nav a{padding:8px 12px;border-radius:8px;text-decoration:none;color:var(--ink-2);font-weight:500;font-size:15px}.nav a:hover{background:var(--ground);color:var(--ink)}.main{max-width:1320px;margin:0 auto;padding:28px 24px 64px}details>summary{cursor:pointer;font-weight:600;color:var(--green);min-height:44px;display:flex;align-items:center}.ev-list{background:#fff;color:#111;border:1px solid #ddd;border-radius:8px;padding:32px 36px;font-family:Courier New,ui-monospace,monospace;font-size:13px;max-width:760px}.ev-list h2{text-align:center;font-family:Courier New,monospace;font-size:20px;letter-spacing:.06em;margin:0;text-decoration:underline}.ev-list .ev-sub{text-align:center;margin:6px 0 24px}.ev-list table{width:100%;border-collapse:collapse;margin-top:18px;font-family:Arial,Helvetica,sans-serif;font-size:12.5px}.ev-list td,.ev-list th{border:1px solid #222;padding:4px 6px}.ev-list th{background:#f2f2f2;font-family:Courier New,monospace}.ev-list td.num{text-align:right;white-space:nowrap}.ev-list td.who{text-align:center;font-family:Courier New,monospace;font-weight:700}.ev-list tr.total td{font-weight:700;border-top:3px double #222}.ev-list .ev-sign{margin-top:48px;width:280px;border-top:1px solid #222;padding-top:4px}.costs-table input,.costs-table select{min-width:0}.costs-table th{white-space:nowrap}@media print{body *{visibility:hidden!important}.print-area,.print-area *{visibility:visible!important}.print-area{position:absolute;left:0;top:0;width:100%;border:0!important;padding:0!important;max-width:none}.no-print{display:none!important}@page{size:A4 landscape;margin:12mm}.overview-print table{font-size:10px}}.room-grid{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));align-items:start}.room-card{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:14px;min-width:0}.room-card.free{border-style:dashed;border-color:var(--line-2)}.room-card.common{background:#faf9f5}.room-card.add{display:flex;align-items:center;min-height:64px}.room-grid>.room-card:has(details[open]){grid-column:1/-1}.room-card>details>summary{min-height:32px;font-size:14px;margin-top:6px}.room-card.add>details{width:100%}.tile-grid{display:grid;grid-gap:10px;gap:10px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));align-items:start}.tile{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:12px 14px;min-width:0}.tile.warn{background:var(--amber-bg);border-color:var(--amber-line)}.tile[open]{grid-column:1/-1;background:var(--surface)}.tile>summary{display:block;min-height:0;color:var(--ink);list-style:none}.tile>summary::-webkit-details-marker{display:none}.tile .tile-title{display:block;font-weight:600;font-size:15px}.tile .tile-sub{display:block;font-size:13px;color:var(--muted);margin-top:2px}.tile.warn .tile-sub{color:var(--amber)}.num{white-space:nowrap;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.costs-summary th.num,.num{text-align:right}.costs-summary tr.sec td{background:#f4f3ee;font-weight:600;font-size:13px;color:var(--ink-2);padding:6px 10px}.costs-summary tr.total td{font-weight:600;border-bottom:2px solid var(--line)}.costs-summary tr.result td{background:var(--green-soft)}.lang-switch{display:inline-flex;flex-shrink:0;border:1px solid var(--line-2);border-radius:6px;overflow:hidden}.lang-switch button{border:0;background:var(--surface);color:var(--muted);font:inherit;font-size:11px;font-weight:700;letter-spacing:.04em;padding:5px 10px;cursor:pointer}.lang-switch button:hover{color:var(--ink)}.lang-switch button.on{background:var(--ink);color:var(--surface)}.owner-hero{background:var(--green-dark);color:#fff;border-radius:var(--radius);padding:28px;display:grid;grid-gap:32px;gap:32px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.owner-hero-sub{font-size:13px;color:#c9ddd4}.owner-hero-value{font-family:var(--font-display);font-size:clamp(36px,6vw,52px);font-weight:700;letter-spacing:-.02em;line-height:1.1}.owner-hero-num{font-size:18px;font-weight:600}.owner-bar{display:flex;height:12px;border-radius:6px;overflow:hidden;background:#ecebe5}.owner-bar.hero{height:14px;border-radius:7px;background:#2a6b57}.owner-kpis{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.owner-kpi{background:var(--surface);color:var(--ink);border-radius:12px;padding:16px;display:flex;flex-direction:column;justify-content:space-between;gap:12px}.owner-kpi.dark{background:var(--green);color:#fff}.owner-kpi-t{font-size:14px;font-weight:600}.owner-kpi-v{font-family:var(--font-display);font-size:40px;font-weight:700;line-height:1;color:var(--green)}.owner-kpi-v.small-v{font-size:30px;color:#fff}.owner-kpi .muted{font-size:13px}.owner-figures{display:grid;grid-gap:14px;gap:14px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.owner-fig{font-size:20px;font-weight:600}.owner-rooms{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.owner-room{font:inherit;color:var(--ink);text-align:left;cursor:pointer;background:var(--surface);border:2px solid var(--line);border-radius:var(--radius);padding:16px;display:flex;flex-direction:column;gap:10px;min-height:96px}.owner-room:hover{border-color:var(--line-2)}.owner-room.on{border-color:var(--green)}.owner-room strong{font-size:17px}.owner-room-net{font-size:20px;font-weight:600;color:var(--green)}.owner-room-detail{background:var(--green-soft);border-radius:12px;padding:18px;display:flex;flex-direction:column;gap:14px}