:root{--navy-950:#173b34;--navy-900:#1d493e;--navy-800:#28584d;--fir-700:#1f5a4a;--fir-100:#e1eee8;--lake-600:#2f6f7e;--lake-100:#e2eff1;--paper-50:#f7f8f5;--paper-100:#f3ebdd;--surface:#ffffff;--ink:#25302d;--muted:#5f6e69;--line:#d7ded9;--amber-600:#b66a16;--amber-100:#f6e8d3;--danger-700:#a23a32;--danger-100:#f5dfdc;--radius:8px;--focus:#2f6f7e}*{box-sizing:border-box}html{min-height:100%}body,html{background:var(--paper-50)}body{min-height:100vh;margin:0;color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5}button,input,select,textarea{font:inherit}a,button{-webkit-tap-highlight-color:transparent}a{color:inherit}:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.admin-search-form{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px 14px;padding:20px;margin-bottom:28px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}.admin-search-form .field{min-width:0;margin:0}.admin-search-form .help-text{grid-column:1/-1;margin:0}.search-filters{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 22px}.search-filters a{padding:7px 12px;border:1px solid var(--line);border-radius:20px;text-decoration:none;font-size:.83rem}.search-filters a.active{color:white;background:var(--fir-700);border-color:var(--fir-700)}.search-summary{overflow-wrap:anywhere;color:var(--muted)}.search-groups{display:grid;gap:20px}.search-results{list-style:none;margin:0;padding:0}.search-results li+li{border-top:1px solid var(--line)}.search-result{display:flex;gap:18px;align-items:center;padding:16px 20px;text-decoration:none}.search-result:focus-visible,.search-result:hover{background:var(--fir-100)}.search-result-copy{display:grid;flex:1 1;min-width:0;gap:3px;overflow-wrap:anywhere}.search-result-copy>span{color:var(--muted);font-size:.83rem}.search-result>svg{flex-shrink:0;color:var(--fir-700)}.search-group-footer,.search-pagination{padding:14px 20px;border-top:1px solid var(--line)}.search-group-footer a{display:inline-flex;gap:7px;align-items:center;color:var(--fir-700);font-weight:650}.search-pagination{display:flex;flex-wrap:wrap;gap:14px;align-items:center;justify-content:flex-end}.search-target{scroll-margin:24px}.search-target:target{outline:3px solid var(--lake-600);outline-offset:-3px}.search-target:target,.search-target:target>td{background:var(--lake-100)}@media (max-width:600px){.admin-search-form{grid-template-columns:minmax(0,1fr);padding:16px}.search-result{gap:10px;padding:14px;flex-wrap:wrap}.search-result-copy{flex-basis:calc(100% - 30px)}.search-result>svg{margin-left:auto}}.login-page{min-height:100vh;display:grid;grid-template-columns:minmax(390px,42%) minmax(0,1fr);background:var(--surface)}.login-panel{position:sticky;top:0;width:min(100%,540px);min-height:100vh;align-self:start;justify-self:center;padding:56px;display:flex;flex-direction:column;justify-content:center}.login-panel h1{margin:6px 0 14px;font-size:clamp(2rem,4vw,3rem);line-height:1.08;letter-spacing:-.04em;color:var(--navy-950)}.login-intro{margin:0 0 18px;max-width:47ch;color:var(--muted)}.login-context{width:fit-content;margin:0 0 25px;padding:7px 10px;color:var(--navy-800);background:var(--fir-100);border-radius:5px;font-size:.78rem}.login-help{color:var(--muted);font-size:.82rem;margin-top:24px}.eyebrow{margin:22px 0 0;color:var(--lake-600);font-size:.75rem;font-weight:750;letter-spacing:.12em;text-transform:uppercase}.platzklar-logo{display:inline-flex;align-items:center;gap:12px;color:var(--fir-700);line-height:1}.platzklar-logo-inverse{color:#d9eee6}.platzklar-mark{display:block;flex:0 0 auto;object-fit:contain}.platzklar-wordmark{display:grid;gap:5px}.platzklar-wordmark strong{color:var(--navy-950);font-size:1.14rem;font-weight:780;letter-spacing:-.025em}.platzklar-wordmark small{color:var(--muted);font-size:.69rem;font-weight:650;letter-spacing:.055em;text-transform:uppercase}.platzklar-logo-inverse .platzklar-wordmark strong{color:white}.platzklar-logo-inverse .platzklar-wordmark small{color:#aec3bd}.login-scene{min-height:100vh;position:relative;overflow:hidden;padding:clamp(44px,6vw,88px);display:grid;align-items:center;background-color:var(--navy-950);background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 0),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 0),linear-gradient(145deg,transparent 0 54%,rgba(47,111,126,.5) 54% 65%,rgba(31,90,74,.72) 65%);background-size:54px 54px,54px 54px,100% 100%}.login-scene:after,.login-scene:before{content:"";position:absolute;border:2px solid rgba(255,255,255,.15);border-radius:26px;transform:rotate(-9deg)}.login-scene:before{width:58%;height:44%;right:-8%;top:13%}.login-scene:after{width:44%;height:34%;left:11%;bottom:15%;border-color:rgba(243,235,221,.18)}.login-product{position:relative;z-index:1;width:min(100%,920px);margin-inline:auto;color:white}.login-product-kicker{color:#b7d7d0;font-size:.74rem;font-weight:760;letter-spacing:.12em;text-transform:uppercase}.login-product h2{max-width:14ch;margin:10px 0 13px;font-size:clamp(2rem,4.2vw,4.2rem);line-height:.98;letter-spacing:-.045em}.login-product-intro{max-width:64ch;margin:0;color:#d7e5e1;font-size:clamp(.94rem,1.25vw,1.08rem)}.login-feature-grid{margin-top:clamp(28px,4vw,48px);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.login-feature{min-width:0;padding:17px;display:grid;grid-template-columns:24px minmax(0,1fr);gap:12px;align-items:start;background:rgba(255,255,255,.075);border:1px solid rgba(255,255,255,.14);border-radius:8px;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.login-feature>svg{margin-top:1px;color:#a9d5c8}.login-feature h3{margin:0 0 5px;font-size:.9rem;letter-spacing:-.01em}.login-feature p{margin:0;color:#c7d7d3;font-size:.76rem;line-height:1.5}.developer-callout{margin-top:20px;padding:17px 18px;display:flex;align-items:center;justify-content:space-between;gap:20px;background:var(--paper-100);border-radius:8px;color:var(--navy-950)}.developer-callout-copy{display:grid;gap:2px}.developer-callout-copy span{color:var(--muted);font-size:.72rem}.developer-callout-copy strong{font-size:.9rem}.developer-link{flex:0 0 190px;display:grid;gap:7px;color:var(--lake-600);font-size:.78rem;font-weight:760;text-decoration:none}.developer-logo{width:190px;height:auto;display:block}.developer-link-label{display:inline-flex;align-items:center;justify-content:flex-end;gap:6px}.developer-link:hover .developer-link-label{text-decoration:underline}.developer-link:focus-visible{outline:3px solid var(--lake-600);outline-offset:5px;border-radius:2px}.stack-form{display:grid;gap:18px}.field,.stack-form label{display:grid;gap:7px;color:var(--ink);font-size:.88rem;font-weight:650}input,select,textarea{width:100%;min-height:46px;padding:10px 12px;color:var(--ink);background:white;border:1px solid #aebbbd;border-radius:var(--radius)}textarea{min-height:110px;resize:vertical}input:hover,select:hover,textarea:hover{border-color:var(--lake-600)}.form-error{color:var(--danger-700);background:var(--danger-100);border-left:3px solid var(--danger-700)}.form-error,.form-success{margin:0;padding:10px 12px;font-size:.88rem}.form-success{color:var(--fir-700);background:var(--fir-100);border-left:3px solid var(--fir-700)}.button{min-height:44px;border:1px solid transparent;border-radius:var(--radius);padding:10px 16px;display:inline-flex;align-items:center;justify-content:center;gap:9px;font-weight:700;text-decoration:none;cursor:pointer;transition:background .15s ease,border-color .15s ease,transform .15s ease}.button:hover:not(:disabled){transform:translateY(-1px)}.button:disabled{cursor:wait;opacity:.62}.button-primary{color:white;background:var(--navy-950)}.button-primary:hover:not(:disabled){background:var(--navy-800)}.button-secondary{color:var(--navy-950);background:var(--surface);border-color:#aebbbd}.button-secondary:hover:not(:disabled){border-color:var(--navy-950)}.button-quiet{color:var(--lake-600);background:transparent;border-color:var(--line)}.button-warning{color:#5a2f02;background:var(--amber-100);border-color:#d9a66e}.button-wide{width:100%;margin-top:4px}.button-row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.app-frame{min-height:100vh;display:grid;grid-template-columns:252px minmax(0,1fr)}.sidebar{position:fixed;inset:0 auto 0 0;z-index:20;width:252px;display:flex;flex-direction:column;color:#e9f1f0;background:var(--navy-950)}.sidebar-brand{min-height:98px;padding:23px 22px;display:flex;align-items:center;gap:13px;color:white;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.1)}.sidebar-brand .platzklar-logo{width:100%}.sidebar nav{padding:18px 12px;display:grid;gap:4px}.sidebar nav a{min-height:44px;padding:10px 12px;display:flex;align-items:center;gap:11px;color:#bac9cb;text-decoration:none;border-radius:5px;font-size:.92rem;font-weight:580}.sidebar nav a:hover{color:white;background:rgba(255,255,255,.06)}.sidebar nav a.active{color:white;background:var(--lake-600)}.sidebar-user{margin-top:auto;min-height:82px;padding:14px 13px;display:flex;gap:10px;align-items:center;border-top:1px solid rgba(255,255,255,.1)}.user-avatar{flex:0 0 36px;height:36px;display:grid;place-items:center;border-radius:50%;color:white;background:var(--fir-700);font-weight:750}.user-copy{min-width:0;display:grid;flex:1 1;line-height:1.25}.user-copy strong{font-size:.82rem}.user-copy small,.user-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-copy small{color:#9fb2b6;font-size:.7rem}.icon-button,.logout-button{width:40px;height:40px;display:grid;place-items:center;border:0;color:inherit;background:transparent;border-radius:5px;cursor:pointer}.logout-button:hover{background:rgba(255,255,255,.08)}.app-workspace{min-width:0;grid-column:2}.workspace-topbar{min-height:54px;padding:0 32px;display:flex;align-items:center;justify-content:space-between;gap:20px;color:var(--muted);background:rgba(255,253,248,.88);border-bottom:1px solid var(--line);font-size:.78rem}.environment{display:inline-flex;align-items:center;gap:7px;color:var(--fir-700);font-weight:650}.workspace-main{width:min(100%,1440px);padding:38px 40px 64px}.mobile-header,.sidebar-scrim{display:none}.page-header{margin-bottom:27px;display:flex;align-items:flex-end;justify-content:space-between;gap:24px}.page-header h1{margin:4px 0 0;color:var(--navy-950);font-size:clamp(1.75rem,3vw,2.3rem);line-height:1.1;letter-spacing:-.035em}.page-header p{margin:9px 0 0;color:var(--muted);max-width:68ch}.section-kicker{color:var(--lake-600);font-size:.73rem;font-weight:780;letter-spacing:.1em;text-transform:uppercase}.section-heading{margin:36px 0 14px;display:flex;align-items:baseline;justify-content:space-between;gap:20px}.section-heading h2{margin:0;color:var(--navy-950);font-size:1.2rem}.section-heading a,.section-heading p{margin:0;color:var(--muted);font-size:.84rem}.section-heading a{color:var(--lake-600);font-weight:650}.metric-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}.metric{min-height:106px;padding:20px 22px;display:grid;align-content:center;gap:6px;border-right:1px solid var(--line)}.metric:last-child{border-right:0}.metric span{color:var(--muted);font-size:.75rem;font-weight:670;letter-spacing:.025em}.metric strong{color:var(--navy-950);font-size:1.85rem;line-height:1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.metric small{color:var(--muted);font-size:.74rem}.work-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.75fr);gap:22px;align-items:start}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}.panel-header{min-height:58px;padding:15px 18px;display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line)}.panel-header h2,.panel-header h3{margin:0;color:var(--navy-950);font-size:1rem}.panel-body{padding:20px}.panel-note{padding:14px 18px;color:var(--muted);background:#f3f5f3;border-top:1px solid var(--line);font-size:.82rem}.data-table-wrap{overflow-x:auto;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}.data-table{width:100%;border-collapse:collapse;font-size:.86rem}.data-table th{padding:11px 14px;text-align:left;color:var(--muted);background:#f1f1ec;border-bottom:1px solid var(--line);font-size:.72rem;letter-spacing:.035em;text-transform:uppercase;white-space:nowrap}.data-table th[data-sortable=true]{cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .15s ease,background .15s ease}.data-table th[data-sortable=true]:after{content:"↕";margin-left:7px;color:#84928e;font-size:.82rem}.data-table th[data-sortable=true]:hover{color:var(--navy-950);background:#e7ebe6}.data-table th[data-sortable=true]:focus-visible{outline:2px solid var(--lake-600);outline-offset:-3px}.data-table th[aria-sort=ascending]:after{content:"↑";color:var(--lake-600)}.data-table th[aria-sort=descending]:after{content:"↓";color:var(--lake-600)}.data-table td{padding:13px 14px;border-bottom:1px solid #e8e9e4;vertical-align:middle}.data-table tr:last-child td{border-bottom:0}.data-table tbody tr:hover{background:#fbfaf5}.data-table strong{color:var(--navy-950)}.numeric{text-align:right!important;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.muted{color:var(--muted)}.status{width:fit-content;display:inline-flex;align-items:center;gap:6px;padding:4px 8px;border-radius:999px;color:var(--navy-800);background:#e6ecec;font-size:.72rem;font-weight:720;white-space:nowrap}.status:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.status-active,.status-approved,.status-completed,.status-occupied,.status-paid,.status-resolved{color:var(--fir-700);background:var(--fir-100)}.status-open,.status-overdue,.status-ready_for_approval,.status-urgent{color:var(--amber-600);background:var(--amber-100)}.status-cancelled,.status-maintenance{color:var(--danger-700);background:var(--danger-100)}.status-claimed,.status-review,.status-simulated{color:var(--lake-600);background:var(--lake-100)}.activity-list,.task-list{margin:0;padding:0;list-style:none}.activity-list li,.task-list li{min-height:58px;padding:12px 0;display:flex;gap:12px;align-items:flex-start;border-bottom:1px solid #e8e9e4}.activity-list li:last-child,.task-list li:last-child{border-bottom:0}.activity-icon{flex:0 0 34px;height:34px;display:grid;place-items:center;border-radius:50%;color:var(--lake-600);background:var(--lake-100)}.activity-copy{min-width:0;display:grid;gap:2px}.activity-copy strong{font-size:.86rem}.activity-copy span{color:var(--muted);font-size:.76rem}.task-list li{justify-content:space-between;align-items:center}.task-copy{display:grid}.task-copy strong{font-size:.88rem}.task-copy span{color:var(--muted);font-size:.76rem}.notice{margin:0 0 20px;padding:13px 15px;display:flex;gap:10px;align-items:flex-start;color:#5a3a0d;background:var(--amber-100);border-left:3px solid var(--amber-600);font-size:.86rem}.notice-info{color:var(--navy-800);background:var(--lake-100);border-color:var(--lake-600)}.empty-state{padding:36px 22px;text-align:center;color:var(--muted)}.empty-state strong{display:block;color:var(--ink);margin-bottom:4px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.form-grid .span-2{grid-column:1/-1}.form-section{min-width:0;margin:0;padding:18px;border:1px solid var(--line);border-radius:var(--radius)}.form-section legend{padding:0 8px;color:var(--navy-950);font-size:.9rem;font-weight:760}.form-section>.help-text{margin:0 0 13px}.form-readonly{min-height:72px;padding:11px 12px;display:grid;align-content:center;gap:3px;background:#f3f5f3;border:1px solid var(--line);border-radius:var(--radius)}.form-readonly small,.form-readonly span{color:var(--muted);font-size:.75rem}.form-readonly strong{color:var(--navy-950)}.rent-guidance{overflow:hidden;background:#f7f8f5;border:1px solid var(--line);border-radius:var(--radius)}.rent-guidance-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.rent-guidance-grid>div{min-height:96px;padding:14px;display:grid;align-content:center;gap:4px;border-right:1px solid var(--line)}.rent-guidance-grid>div:last-child{border-right:0}.rent-guidance-grid small,.rent-guidance-grid span{color:var(--muted);font-size:.72rem}.rent-guidance-grid strong{color:var(--navy-950);font-size:1.08rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.rent-guidance-grid .rent-suggestion{background:var(--fir-100)}.rent-guidance-footer{padding:10px 14px;display:flex;align-items:center;justify-content:space-between;gap:16px;border-top:1px solid var(--line)}.rent-guidance-footer p{margin:0;color:var(--muted);font-size:.72rem;line-height:1.45}.rent-guidance-footer .button{flex:0 0 auto;min-height:34px;padding:5px 10px;font-size:.74rem}.rent-editor{display:grid;gap:13px}.rent-editor .inline-form .field{min-width:min(100%,250px)}.check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px}.check-field{min-height:42px;display:flex;align-items:flex-start;gap:10px;color:var(--ink);font-size:.84rem;font-weight:580}.check-field input[type=checkbox]{flex:0 0 18px;width:18px;min-height:18px;margin:2px 0 0;padding:0;accent-color:var(--fir-700)}.check-field>span{min-width:0;display:grid;gap:2px}.check-field small{color:var(--muted);font-size:.72rem;font-weight:450;line-height:1.4}.check-field-fixed{padding:10px;background:var(--fir-100);border-left:3px solid var(--fir-700)}.check-field-fixed input:disabled{opacity:1}.settlement-options{margin-bottom:18px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.settlement-option{min-width:0;min-height:116px;padding:15px;display:grid;grid-template-columns:18px minmax(0,1fr);gap:12px;align-items:start;color:var(--ink);background:#fbfcfa;border:1px solid var(--line);border-radius:var(--radius);cursor:pointer;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}.settlement-option:hover{border-color:#93aaa2}.settlement-option-active{background:var(--fir-100);border-color:var(--fir-700);box-shadow:inset 0 0 0 1px var(--fir-700)}.settlement-option input[type=radio]{flex:0 0 18px;width:18px;height:18px;min-height:18px;margin:3px 0 0;padding:0;accent-color:var(--fir-700)}.settlement-option>span{min-width:0;display:grid;gap:5px}.settlement-option strong{color:var(--navy-950);font-size:.86rem;line-height:1.35}.settlement-option small{color:var(--muted);font-size:.76rem;font-weight:450;line-height:1.5}.form-actions{margin-top:20px;display:flex;justify-content:flex-end;gap:10px}.help-text{margin:4px 0 0;color:var(--muted);font-size:.76rem;font-weight:450}.inline-form{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap}.inline-form .field{min-width:150px}.compact-action{display:inline-flex;gap:7px}.compact-action .button{min-height:36px;padding:6px 10px;font-size:.76rem}.compact-action input[type=date]{min-height:36px;width:138px;border:1px solid var(--border);border-radius:7px;padding:5px 8px;background:#fff;color:var(--ink);font:inherit;font-size:.76rem}.tenant-hero{padding:clamp(24px,5vw,52px);color:white;background:var(--fir-700);border-radius:var(--radius);display:grid;grid-template-columns:1fr auto;align-items:end;gap:24px}.tenant-hero .section-kicker{color:#bfe5d1}.tenant-hero h1{margin:7px 0 8px;font-size:clamp(2rem,5vw,3.3rem);letter-spacing:-.04em;line-height:1}.tenant-hero p{margin:0;color:#d9e9e2}.site-number{color:white;text-align:right}.site-number span{display:block;opacity:.7;font-size:.74rem;text-transform:uppercase;letter-spacing:.08em}.site-number strong{font-size:2.3rem}.tenant-grid{margin-top:22px;display:grid;grid-template-columns:1.1fr .9fr;gap:22px;align-items:start}.detail-list{margin:0;display:grid}.detail-list>div{padding:12px 0;display:grid;grid-template-columns:minmax(120px,.65fr) 1fr;gap:16px;border-bottom:1px solid #e8e9e4}.detail-list>div:last-child{border-bottom:0}.detail-list dt{color:var(--muted);font-size:.8rem}.detail-list dd{margin:0;color:var(--ink);font-weight:650;font-size:.88rem}.audit-details{max-width:520px;max-height:260px;margin:8px 0 0;padding:10px;overflow:auto;white-space:pre-wrap;color:var(--ink);background:#f4f5f2;border:1px solid var(--line);border-radius:6px;font-size:.72rem}.case-layout{display:grid;gap:22px}.case-list{display:grid;gap:14px}.case-card{border:1px solid var(--line);border-radius:var(--radius);background:white}.case-card-summary{padding:16px 18px;display:flex;align-items:center;justify-content:space-between;gap:20px}.case-card-summary h3{margin:4px 0 2px;color:var(--navy-950);font-size:1rem}.case-card-summary p{margin:0;color:var(--muted);font-size:.8rem}.case-card-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.case-details{border-top:1px solid var(--line)}.case-details>summary{padding:12px 18px;color:var(--lake-600);cursor:pointer;font-size:.82rem;font-weight:700}.case-details[open]>summary{background:#f3f5f3}.application-grid{padding:18px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.application-documents h4,.application-grid h4{margin:0 0 8px;color:var(--navy-950)}.application-grid .detail-list>div{grid-template-columns:minmax(110px,.55fr) 1fr;padding:9px 0}.application-documents{padding:0 18px 18px}.edit-case-panel{border:1px solid var(--line);border-radius:var(--radius);background:#f7f8f5}.edit-case-panel>summary{padding:13px 15px;display:flex;align-items:center;gap:8px;color:var(--lake-600);cursor:pointer;font-size:.84rem;font-weight:760}.edit-case-panel[open]>summary{border-bottom:1px solid var(--line)}.edit-case-panel>form{padding:18px}.checklist-form{display:grid;gap:14px}.checklist-readonly{margin:0;padding-left:20px;color:var(--muted);font-size:.82rem}.pre-line{white-space:pre-line}.document-workspace{padding-top:18px;border-top:1px solid var(--line);display:grid;gap:16px}.document-workspace-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.document-upload-form{padding:16px;display:grid;gap:12px;background:#f7f8f5;border:1px solid var(--line);border-radius:var(--radius)}.document-upload-form .button-row{justify-content:flex-end}.document-table{margin-top:2px}.document-link{display:inline-flex;align-items:center;gap:7px;color:var(--lake-600);text-decoration:none}.document-link:hover{text-decoration:underline}.document-link strong{overflow-wrap:anywhere}.document-table .button-quiet{min-height:34px;padding:5px 9px;font-size:.74rem}.document-row-actions{display:grid;gap:4px;justify-items:start}.button-danger{color:#9d2e25}.button-danger:hover{color:#781f18;background:#fae9e6}.request-workspace{margin-top:22px;display:grid;gap:22px}.request-history{margin:0;padding:0;display:grid;list-style:none}.request-history li{padding:11px 0;display:grid;gap:3px;border-bottom:1px solid #e8e9e4}.request-history li:first-child{padding-top:0}.request-history li:last-child{padding-bottom:0;border-bottom:0}.request-history strong{color:var(--ink);font-size:.84rem}.request-history span{color:var(--muted);font-size:.74rem}.request-workspace .notice ul{margin:7px 0 0;padding-left:18px}.request-workspace textarea{resize:vertical}.tenant-access-row{padding:16px;display:flex;align-items:center;justify-content:space-between;gap:20px;background:var(--fir-100);border-left:3px solid var(--fir-700)}.tenant-access-row h4{margin:0 0 3px}.mail-preview-backdrop{position:fixed;inset:0;z-index:100;padding:24px;display:grid;place-items:center;background:rgba(9,25,31,.72);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.mail-preview-dialog{width:min(900px,100%);max-height:calc(100vh - 48px);overflow:hidden;display:grid;grid-template-rows:auto minmax(0,1fr) auto;color:var(--ink);background:white;border:1px solid #9eb0aa;border-radius:10px;box-shadow:0 28px 80px rgba(9,25,31,.3)}.mail-preview-header{padding:18px 22px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line)}.mail-preview-header h3{margin:4px 0 0;color:var(--navy-950);font-size:1.2rem}.mail-preview-content{min-height:0;padding:20px 22px;overflow-y:auto;display:grid;gap:18px}.mail-preview-meta{margin:0;display:grid;border:1px solid var(--line);border-radius:var(--radius)}.mail-preview-meta>div{padding:9px 12px;display:grid;grid-template-columns:108px minmax(0,1fr);gap:14px;border-bottom:1px solid var(--line)}.mail-preview-meta>div:last-child{border-bottom:0}.mail-preview-meta dt{color:var(--muted);font-size:.76rem;font-weight:700}.mail-preview-meta dd{min-width:0;margin:0;overflow-wrap:anywhere;font-size:.84rem;font-weight:620}.mail-preview-attachments h4,.mail-preview-message h4{margin:0 0 8px;color:var(--navy-950)}.mail-preview-message pre{padding:18px;overflow-x:auto;white-space:pre-wrap;overflow-wrap:anywhere;color:var(--ink);background:#f7f8f5;font:400 .84rem/1.6 inherit}.mail-preview-attachments ul,.mail-preview-message pre{margin:0;border:1px solid var(--line);border-radius:var(--radius)}.mail-preview-attachments ul{padding:0;list-style:none}.mail-preview-attachments li{min-height:54px;padding:10px 12px;display:flex;align-items:center;justify-content:space-between;gap:14px;border-bottom:1px solid var(--line)}.mail-preview-attachments li:last-child{border-bottom:0}.mail-preview-attachments li>div{min-width:0;display:grid;gap:2px}.mail-preview-attachments strong{color:var(--navy-950);font-size:.82rem}.mail-preview-attachments span{overflow-wrap:anywhere;color:var(--muted);font-size:.72rem}.mail-preview-actions{padding:16px 22px;display:flex;justify-content:flex-end;gap:10px;border-top:1px solid var(--line);background:#f7f8f5}.tenant-upload-link-panel{padding:16px;background:var(--lake-100);border-left:3px solid var(--lake-600)}.tenant-upload-link-panel h4{margin:0 0 3px}.tenant-upload-link{margin-top:12px;display:grid;gap:9px}.copy-link-row{display:flex;gap:8px;align-items:center}.copy-link-row input{min-width:0;flex:1 1 auto;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.76rem}.public-upload-page{min-height:100vh;padding:32px 18px;display:grid;place-items:center;background:linear-gradient(145deg,#eef4ef,#f8f4e9)}.public-upload-card{width:min(100%,700px);padding:clamp(24px,5vw,44px);background:white;border:1px solid var(--line);border-radius:12px;box-shadow:0 20px 55px rgba(16,39,50,.12)}.public-upload-card h1{margin:8px 0 10px;color:var(--navy-950)}.public-upload-card>p{color:var(--muted);line-height:1.55}.public-upload-security{margin:18px 0;padding:12px 14px;display:flex;gap:10px;align-items:flex-start;color:var(--navy-800);background:var(--lake-100);border-left:3px solid var(--lake-600);font-size:.82rem}.public-upload-checklist{margin:18px 0;padding:0;display:grid;list-style:none;border:1px solid var(--line);border-radius:var(--radius)}.public-upload-checklist li{padding:11px 13px;display:grid;grid-template-columns:auto 1fr auto;gap:9px;align-items:center;border-bottom:1px solid var(--line);font-size:.82rem}.public-upload-checklist li:last-child{border-bottom:0}.public-upload-checklist li strong{color:var(--amber-600);font-size:.74rem}.public-upload-checklist li.done strong{color:var(--fir-700)}.public-upload-form{display:grid;gap:15px}.public-upload-form .button{justify-self:start}.public-upload-workspace{display:grid;gap:20px}.public-upload-files h2{margin:0 0 9px;color:var(--navy-950);font-size:.95rem}.public-upload-files ul{margin:0;padding:0;display:grid;list-style:none;border:1px solid var(--line);border-radius:var(--radius)}.public-upload-files li{padding:10px 12px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line)}.public-upload-files li:last-child{border-bottom:0}.public-upload-files li div{min-width:0;display:grid;gap:2px}.public-upload-files li strong{overflow-wrap:anywhere;color:var(--ink);font-size:.82rem}.public-upload-files li span{color:var(--muted);font-size:.74rem}.role-platzwart .sidebar{background:#202b2e}.role-platzwart .workspace-main{width:min(100%,1180px)}.role-platzwart .button-primary{background:#263d35}.role-platzwart .metric strong{font-size:2.15rem}.role-mieter{background:#f8f4e9}.role-mieter .sidebar{background:#173c36}@media (max-width:1040px){.login-feature-grid{grid-template-columns:1fr}.metric-strip{grid-template-columns:repeat(2,1fr)}.metric:nth-child(2){border-right:0}.metric:nth-child(-n+2){border-bottom:1px solid var(--line)}.tenant-grid,.work-grid{grid-template-columns:1fr}.rent-guidance-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rent-guidance-grid>div:nth-child(2){border-right:0}.rent-guidance-grid>div:nth-child(-n+2){border-bottom:1px solid var(--line)}.settlement-options{grid-template-columns:1fr}}@media (max-width:760px){.login-page{grid-template-columns:1fr}.login-panel{position:static;min-height:auto;padding:38px 24px 44px}.login-scene{min-height:auto;padding:44px 24px}.login-product h2{font-size:clamp(2rem,10vw,3.15rem)}.developer-callout{align-items:flex-start;flex-direction:column}.developer-link{width:min(100%,210px);flex-basis:auto}.developer-logo{width:100%}.app-frame{display:block}.mobile-header{position:sticky;top:0;z-index:15;min-height:58px;padding:0 15px;display:flex;justify-content:space-between;background:var(--navy-950)}.mobile-brand,.mobile-header{align-items:center;color:white}.mobile-brand{display:inline-flex;text-decoration:none}.mobile-brand .platzklar-logo{color:#a9d5c8}.mobile-brand .platzklar-wordmark strong{color:white;font-size:.94rem}.mobile-brand .platzklar-wordmark small{display:none}.sidebar{transform:translateX(-105%);transition:transform .2s ease;box-shadow:8px 0 24px rgba(0,0,0,.18)}.sidebar-open{transform:translateX(0)}.sidebar-scrim{position:fixed;inset:0;z-index:19;display:block;width:100%;border:0;background:rgba(9,25,31,.52)}.app-workspace{display:block}.workspace-topbar{display:none}.workspace-main{padding:25px 16px 48px}.page-header{align-items:flex-start;flex-direction:column}.page-header .button{width:100%}.metric-strip{grid-template-columns:1fr 1fr}.metric{padding:16px}.metric strong{font-size:1.5rem}.form-grid{grid-template-columns:1fr}.form-grid .span-2{grid-column:auto}.application-grid,.check-grid{grid-template-columns:1fr}.form-actions{flex-direction:column}.form-actions .button{width:100%}.case-card-summary{align-items:flex-start;flex-direction:column}.case-card-actions{align-items:flex-start;justify-content:flex-start}.copy-link-row,.document-workspace-heading,.tenant-access-row{align-items:stretch;flex-direction:column}.mail-preview-backdrop{padding:10px}.mail-preview-dialog{max-height:calc(100vh - 20px)}.mail-preview-actions,.mail-preview-content,.mail-preview-header{padding-left:14px;padding-right:14px}.mail-preview-meta>div{grid-template-columns:1fr;gap:3px}.mail-preview-actions,.mail-preview-attachments li{align-items:stretch;flex-direction:column}.mail-preview-actions .button,.mail-preview-attachments .button{width:100%}.rent-guidance-footer{align-items:stretch;flex-direction:column}.document-workspace-heading .button,.tenant-access-row .button{width:100%}.tenant-hero{grid-template-columns:1fr}.site-number{text-align:left}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition:none!important}}.camping-map-panel{margin-top:24px;overflow:hidden}.camping-map-header h2{display:flex;align-items:center;gap:8px;margin:3px 0 0}.camping-map-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--paper-50)}.camping-map-tabs{display:inline-flex;padding:3px;border:1px solid var(--line);border-radius:9px;background:var(--surface)}.camping-map-tabs button{min-width:76px;padding:7px 13px;border:0;border-radius:6px;color:var(--muted);background:transparent;font-weight:700;cursor:pointer}.camping-map-tabs button.active{color:white;background:var(--navy-900);box-shadow:0 1px 3px rgba(23,59,52,.22)}.camping-map-unmapped{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-size:.84rem;cursor:pointer}.camping-map-unmapped input{accent-color:var(--fir-700)}.camping-map-legend{display:flex;flex-wrap:wrap;gap:9px 18px;padding:12px 20px;color:var(--muted);font-size:.78rem}.camping-map-legend span{display:inline-flex;align-items:center;gap:6px}.camping-map-legend i{width:11px;height:11px;border:2px solid white;border-radius:50%;box-shadow:0 0 0 1px rgba(37,48,45,.22)}.camping-map-legend .occupied,.camping-map-marker.status-occupied{background:var(--fir-700)}.camping-map-legend .available,.camping-map-marker.status-available{background:var(--lake-600)}.camping-map-legend .reserved,.camping-map-marker.status-reserved{background:#725f92}.camping-map-legend .maintenance,.camping-map-marker.status-maintenance{background:var(--amber-600)}.camping-map-legend .unmapped,.camping-map-marker.status-unmapped{background:#747e7a}.camping-map-scroll{max-height:760px;overflow:auto;padding:0 20px 20px;background:#e8ede9;border-top:1px solid var(--line)}.camping-map-stage{position:relative;width:min(100%,720px);min-width:560px;margin:20px auto 0;overflow:visible;background:white;box-shadow:0 10px 30px rgba(23,59,52,.16)}.camping-map-stage>img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain;-webkit-user-select:none;user-select:none}.camping-map-marker{position:absolute;z-index:2;display:grid;place-items:center;width:32px;height:32px;padding:0;border:2px solid white;border-radius:50%;transform:translate(-50%,-50%);color:white;box-shadow:0 2px 8px rgba(23,59,52,.42);font-size:.68rem;font-weight:850;line-height:1;text-decoration:none;cursor:help;transition:transform .14s ease,box-shadow .14s ease}a.camping-map-marker{cursor:pointer}.camping-map-marker.status-unmapped{opacity:.74}.camping-map-marker:focus-visible,.camping-map-marker:hover{z-index:5;transform:translate(-50%,-50%) scale(1.22);box-shadow:0 4px 14px rgba(23,59,52,.5)}.camping-map-note{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 20px;border-top:1px solid var(--line)}.camping-map-note p{margin:0;color:var(--muted);font-size:.82rem}.camping-map-note a{display:inline-flex;flex:0 0 auto;align-items:center;gap:6px;color:var(--fir-700);font-size:.84rem;font-weight:750;text-decoration:none}@media (max-width:760px){.camping-map-note,.camping-map-toolbar{align-items:flex-start;flex-direction:column}.camping-map-tabs{width:100%}.camping-map-tabs button{flex:1 1;min-width:0}.camping-map-scroll{padding-inline:12px}.camping-map-stage{margin-top:12px}}.meter-toolbar{display:flex;align-items:end;gap:18px;margin:24px 0;flex-wrap:wrap}.meter-toolbar .field{margin:0}.meter-year{display:flex;align-items:end;gap:8px}.meter-search{flex:1 1;min-width:220px}.meter-sites{display:grid;gap:22px}.meter-site .panel-header{align-items:center;gap:16px}.meter-site h2{margin:0 0 5px}.meter-site-total{display:grid;gap:8px;text-align:right}.meter-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:22px}.meter-entry+.meter-entry{border-left:1px solid var(--border,#d7dedb);padding-left:22px}.meter-entry-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:18px;flex-wrap:wrap}.meter-entry-heading strong{display:flex;gap:8px;align-items:center}.meter-history{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:0 0 18px}.meter-history div{display:grid;align-content:start;gap:4px}.meter-history small,.meter-history span,.meter-result span{font-size:12px;color:#56656a}.meter-history strong,.meter-result strong{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.meter-inputs{display:grid;grid-template-columns:1fr 1fr;gap:12px}.meter-entry input,.meter-entry select,.meter-toolbar input,.meter-toolbar select{min-height:46px}.meter-entry input[inputmode=decimal]{font-size:20px;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.meter-result{display:flex;align-items:center;gap:12px;flex-wrap:wrap;border:1px solid #d7dedb;padding:12px;border-radius:5px;margin:14px 0}.meter-result div{display:grid;gap:4px;flex:1 1;min-width:115px}.meter-result strong{font-size:18px}.meter-badge{display:inline-flex;align-items:center;border:1px solid #d3dcda;border-radius:4px;font-size:12px;padding:5px 8px;background:#f1f4f2;color:#394b50}.meter-ok{background:#eef6ef;color:#245746;border-color:#bad6c3}.meter-check{background:#fff7e7;color:#835311;border-color:#e9ce9d}.meter-blocked{background:#fff0ed;color:#92372d;border-color:#e4b6af}.meter-missing{background:#f2f5f5;color:#55636a}.meter-reasons{margin:8px 0 16px;padding-left:20px;font-size:13px;line-height:1.5}.meter-help,.meter-review,.meter-site-setup{font-size:14px;line-height:1.6}.meter-help summary,.meter-review summary,.meter-site-setup summary{cursor:pointer;min-height:44px;padding:10px 0;font-weight:600}.meter-review,.meter-site-setup{border-top:1px solid #d7dedb;margin-top:18px;padding-top:5px}.meter-add{margin-top:18px;padding-top:15px;border-top:1px dashed #d7dedb}@media (max-width:760px){.meter-toolbar,.meter-year{align-items:stretch}.meter-toolbar>*{flex:1 1 100%}.meter-year .field{flex:1 1}.meter-year button{align-self:end}.meter-grid{grid-template-columns:1fr}.meter-entry+.meter-entry{border-left:0;padding-left:0;border-top:1px solid #d7dedb;padding-top:22px}.meter-site .panel-header{flex-direction:column;align-items:start}.meter-site-total{text-align:left}}@media (max-width:430px){.meter-inputs{grid-template-columns:1fr}}