:root{
 --brand-primary:#339966;--brand-primary-2:#A5E1C3;--brand-soft:#E5F4EC;--bg:#FEFEF1;--surface:#FFFFFF;--text:#333333;--muted:#6B7C93;--line:#E0E0D8;--menu-active:#339966;--menu-inactive:#6B7C93;
 --danger:#A23838;--success:#2F6B47;--radius:0px;--shadow:0 0 20px rgba(0,0,0,.10);--tap:48px;--portal-font:'Roboto','Helvetica Neue',Helvetica,Arial,sans-serif;--portal-heading-font:var(--portal-font);--portal-body-size:16px;--portal-body-weight:300;--portal-body-line-height:1.5;--portal-heading-weight:300;--portal-h1-size:48px;--portal-h2-size:22px;--portal-h3-size:18px;
}
*{box-sizing:border-box}html{font-family:var(--portal-font);background:var(--bg);color:var(--text);font-size:var(--portal-body-size);font-weight:var(--portal-body-weight);line-height:var(--portal-body-line-height)}body{margin:0;min-height:100vh;background:var(--bg);font:inherit}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,input,select{min-height:var(--tap)}input,select,textarea{width:100%;border:1px solid var(--line);border-radius:0;padding:0 14px;background:#fff;color:var(--text)}textarea{padding:12px 14px}label{display:grid;gap:7px;font-weight:400}.muted,small{color:var(--muted)}h1,h2,h3,p{margin-top:0}h1,h2,h3,h4,h5,h6{font-family:var(--portal-heading-font);font-weight:var(--portal-heading-weight)}h1{font-size:clamp(2rem,5vw,var(--portal-h1-size));color:var(--brand-primary);line-height:1.1}h2{font-size:var(--portal-h2-size)}h3{font-size:var(--portal-h3-size)}.desktop-only{display:none}.mobile-only{display:flex}
.site-header{background:linear-gradient(100deg,var(--brand-primary),var(--brand-primary-2));color:#fff;min-height:104px}.header-inner{position:relative;max-width:1450px;margin:0 auto;min-height:104px;padding:12px 24px}.site-logo{position:absolute;right:24px;top:8px;width:120px;height:88px;object-fit:contain;opacity:.72}.mobile-menu-toggle{border:0;background:none;color:#fff;font-size:1.35rem;font-weight:500;align-items:center;gap:7px;min-height:60px;padding:0}.portal-identity{position:absolute;left:24px;top:10px;align-items:baseline;gap:8px}.portal-identity strong{font-size:1rem;font-weight:400}.portal-identity span{font-size:.9rem;opacity:.85}.header-utility{height:36px;align-items:center;gap:14px;font-size:.88rem}.header-utility form{margin:0}.header-link-button{border:0;background:none;color:#fff;padding:0;min-height:32px;cursor:pointer}.utility-user{opacity:.9}.desktop-main-nav{align-items:center;gap:4px;margin-top:5px;padding-right:150px}.desktop-main-nav a{font-size:1.08rem;font-weight:400;padding:10px 13px;color:#fff}.desktop-main-nav a:hover,.desktop-main-nav a:focus-visible{background:rgba(255,255,255,.14)}
.mobile-menu-panel{position:fixed;z-index:100;inset:0;background:linear-gradient(105deg,var(--brand-primary),var(--brand-primary-2));color:white;overflow:auto;padding:12px 18px 28px}.mobile-menu-panel[hidden]{display:none}.mobile-menu-head{height:110px;position:relative;display:flex;align-items:flex-start}.mobile-menu-head img{position:absolute;right:8px;top:0;width:130px;height:100px;object-fit:contain;opacity:.72}.mobile-menu-close{border:0;background:none;color:#fff;font-size:1.3rem;font-weight:500;padding:12px 0;z-index:2}.mobile-menu-panel nav{border-top:1px solid rgba(255,255,255,.55)}.mobile-menu-panel nav>a{display:flex;justify-content:space-between;align-items:center;min-height:48px;border-bottom:1px solid rgba(255,255,255,.55);padding:0 14px;font-weight:400}.mobile-menu-panel nav>a:hover{background:rgba(255,255,255,.10)}.mobile-nav-caption{padding:22px 14px 7px;text-transform:uppercase;font-size:.72rem;letter-spacing:.08em;opacity:.8}.mobile-menu-panel form{margin:16px 0}.mobile-logout{width:100%;border:1px solid rgba(255,255,255,.6);background:rgba(255,255,255,.08);color:#fff;padding:0 14px;text-align:left}
.portal-shell{max-width:1450px;margin:0 auto}.content{padding:28px 24px 70px;max-width:1400px;margin:0 auto}.page-head{display:flex;justify-content:space-between;align-items:flex-start;margin:5px 0 28px}.page-head p{color:var(--muted);margin-bottom:0;font-size:1.02rem}.card{background:var(--surface);border:1px solid rgba(0,0,0,.10);border-radius:0;padding:24px;box-shadow:var(--shadow)}.grid{display:grid;gap:16px}.cards{grid-template-columns:1fr}.module-card{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:start;position:relative;transition:box-shadow .15s ease}.module-card:hover{box-shadow:0 0 20px rgba(0,0,0,.20)}.module-icon{width:48px;height:48px;background:var(--brand-primary);color:#fff;display:grid;place-items:center;font-size:1.35rem}.module-card h2{margin-bottom:6px;color:var(--brand-primary);font-size:1.45rem}.module-card p{color:var(--muted);margin:0 0 12px;line-height:1.5}.badge{display:inline-flex;padding:5px 9px;font-size:.75rem;font-weight:400;background:#eef0f2;color:#555}.badge.internal_only{background:#edf0f3}.badge.mixed{background:#e5f4ec;color:#276c4b}.badge.ok{background:#e9f5ed;color:var(--success)}.badge.off{background:#f4eaea;color:var(--danger)}.stack{display:grid;gap:16px}.button{border:0;border-radius:0;padding:0 18px;min-height:var(--tap);font-weight:400;cursor:pointer}.button.primary{background:var(--brand-primary);color:white}.button.primary:hover{filter:brightness(.94)}.button.secondary{background:#e9ecef;color:var(--text);border:1px solid var(--line)}.button.danger{background:var(--danger);color:#fff}.button.danger-outline{border:1px solid #d9a9a9;background:#fff;color:var(--danger)}.button.link-danger{background:transparent;color:var(--danger);padding:0 8px}.flash{padding:12px 14px;margin-bottom:16px;border-left:4px solid}.flash.success{background:#e9f5ed;color:var(--success);border-color:var(--success)}.flash.error{background:#f8eaea;color:var(--danger);border-color:var(--danger)}
.guest-shell{min-height:100vh;display:grid;grid-template-rows:auto 1fr;align-items:start;padding:0;background:var(--bg)}.guest-brandbar{height:112px;background:linear-gradient(100deg,var(--brand-primary),var(--brand-primary-2));color:#fff;display:flex;align-items:center;justify-content:flex-end;padding:8px max(24px,calc((100vw - 920px)/2));position:relative}.guest-brandbar img{width:125px;height:95px;object-fit:contain;opacity:.72}.guest-brandbar span{position:absolute;left:max(24px,calc((100vw - 920px)/2));display:grid}.guest-brandbar strong{font-size:1.25rem;font-weight:400}.guest-brandbar small{color:#fff;opacity:.85}.login-card{width:min(calc(100% - 40px),520px);margin:64px auto;background:white;border:1px solid rgba(0,0,0,.10);box-shadow:var(--shadow);padding:32px}.login-card h1{font-size:2.35rem;margin-bottom:10px}.install-card{width:min(calc(100% - 40px),720px)}
.admin-sidebar{display:none}.nav-caption{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);padding:16px 12px 5px}.split{display:grid;gap:16px}.responsive-list{display:grid;gap:8px}.responsive-list article{display:grid;gap:3px;padding:14px;border:1px solid var(--line);background:#fff}.module-admin{display:flex;gap:12px;align-items:center;justify-content:space-between}.module-admin p{margin-bottom:5px;color:var(--muted)}.role-list{display:grid;gap:5px}.role-list a{padding:12px}.role-list a.active{background:var(--brand-soft);color:var(--brand-primary);font-weight:500}.permission-grid{display:grid;gap:8px;margin-bottom:18px}.permission-grid h3{margin:16px 0 4px;border-bottom:1px solid var(--line);padding-bottom:8px}.check{display:flex;gap:10px;align-items:center;padding:10px;border:1px solid var(--line);font-weight:300;background:#fff}.check input{width:22px;min-height:22px}.check span{display:grid}.check small{font-family:ui-monospace,monospace}.meta{display:grid;gap:10px}.meta div{padding:10px 0;border-bottom:1px solid var(--line)}.meta dt{font-size:.8rem;color:var(--muted)}.meta dd{margin:4px 0 0;font-weight:500}
.section-gap{margin-top:18px}.system-grid{display:grid;gap:16px}.section-head{display:flex;gap:14px;align-items:flex-start;justify-content:space-between;flex-wrap:wrap}.check-list{display:grid;gap:8px;margin-top:16px}.check-list div,.compact-list article{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:10px 0;border-top:1px solid var(--line)}.compact-list{display:grid}.compact-list article>div{display:grid;gap:2px}.settings-form{display:grid;gap:20px;max-width:860px}.settings-form small{font-weight:300}.inline-form{margin-top:12px}.backup-list{display:grid;gap:10px}.backup-row{display:grid;gap:10px;padding:14px;border:1px solid var(--line);background:#fff}.backup-row>div:first-child{display:grid;gap:3px}.row-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.row-actions form{margin:0}.restore-box{position:relative}.restore-box summary{list-style:none;display:inline-grid;place-items:center;cursor:pointer}.restore-box summary::-webkit-details-marker{display:none}.restore-box[open] .mini-form{margin-top:8px}.mini-form{background:#fff7f7;border:1px solid #efd0d0;padding:12px;min-width:min(360px,78vw)}
.form-section{display:grid;gap:14px;padding-bottom:20px;border-bottom:1px solid var(--line)}.form-section:last-of-type{border-bottom:0}.form-section h2{color:var(--brand-primary);margin:0}.form-grid{display:grid;gap:14px}.color-grid{display:grid;grid-template-columns:1fr;gap:10px}.color-field{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding:8px 0}.color-control{display:flex;align-items:center;gap:10px}.color-control input[type=color]{width:54px;height:42px;padding:3px;min-height:42px}.color-control code{font-size:.8rem}.design-range{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center}.design-range input[type=range]{padding:0;border:0;background:transparent;min-height:32px}.design-range output{min-width:56px;text-align:right;color:var(--muted);font-weight:400}.design-heading-sizes{align-items:start}.design-layout{display:grid;gap:18px}.design-preview{align-self:start;position:sticky;top:18px}.preview-browser{--pv-bg:#FEFEF1;--pv-primary:#339966;--pv-secondary:#A5E1C3;--pv-surface:#fff;--pv-text:#333;--pv-muted:#6B7C93;--pv-line:#E0E0D8;--pv-body-font:'Roboto','Helvetica Neue',Helvetica,Arial,sans-serif;--pv-heading-font:var(--pv-body-font);--pv-body-size:16px;--pv-body-weight:300;--pv-line-height:1.5;--pv-heading-weight:300;--pv-h1-size:48px;--pv-h2-size:22px;--pv-h3-size:18px;border:1px solid var(--line);background:var(--pv-bg);color:var(--pv-text);font-family:var(--pv-body-font);font-size:var(--pv-body-size);font-weight:var(--pv-body-weight);line-height:var(--pv-line-height)}.preview-header{height:85px;background:linear-gradient(100deg,var(--pv-primary),var(--pv-secondary));color:#fff;display:flex;align-items:center;justify-content:space-between;padding:14px 18px}.preview-logo{font-size:.75rem;border:1px solid rgba(255,255,255,.45);padding:15px 8px;opacity:.75}.preview-body{padding:20px}.preview-body h1,.preview-body h2,.preview-body h3{font-family:var(--pv-heading-font);font-weight:var(--pv-heading-weight)}.preview-body h1{font-size:var(--pv-h1-size);color:var(--pv-primary);line-height:1.08;margin-bottom:12px}.preview-body h2{font-size:var(--pv-h2-size);color:var(--pv-primary);margin-bottom:8px}.preview-body h3{font-size:var(--pv-h3-size);color:var(--pv-text);margin-bottom:8px}.preview-body>p{color:var(--pv-muted)}.preview-card{background:var(--pv-surface);border:1px solid var(--pv-line);padding:16px;box-shadow:0 0 14px rgba(0,0,0,.08)}.preview-card strong{color:var(--pv-primary);font-size:1.2rem}.preview-card p{color:var(--pv-muted)}.preview-card button{background:var(--pv-primary);color:#fff;border:0;padding:0 14px}.reset-form{margin-top:16px}
@media(min-width:760px){.cards{grid-template-columns:repeat(2,1fr)}.split{grid-template-columns:minmax(280px,.8fr) minmax(0,1.6fr)}.content{padding:38px 30px 70px}.responsive-list article{grid-template-columns:1.4fr 1fr 1.4fr auto;align-items:center}.audit-list article{grid-template-columns:1.5fr 1fr 1fr 1fr}.system-grid{grid-template-columns:1fr 1.2fr}.backup-row{grid-template-columns:minmax(0,1.5fr) auto minmax(300px,auto);align-items:center}.row-actions{justify-content:flex-end}.form-grid.two{grid-template-columns:1fr 1fr}.color-grid{grid-template-columns:1fr 1fr}}
@media(min-width:1000px){.desktop-only{display:flex}.mobile-only{display:none}.header-inner{padding:8px 28px}.portal-identity{display:none}.portal-shell{display:grid;grid-template-columns:220px 1fr}.admin-sidebar{display:block;min-height:calc(100vh - 104px);padding:26px 18px;border-right:1px solid rgba(0,0,0,.08);background:rgba(255,255,255,.38)}.admin-sidebar nav{display:grid;position:sticky;top:24px}.admin-sidebar a{padding:10px 12px;color:var(--menu-inactive)}.admin-sidebar a:hover{color:var(--menu-active);background:#fff}.content{width:100%;padding:42px 38px 60px}.cards{grid-template-columns:repeat(3,1fr)}.design-layout{grid-template-columns:minmax(0,1.45fr) minmax(340px,.75fr)}}
@media(max-width:520px){.site-header,.header-inner{min-height:102px}.header-inner{padding:10px 28px}.site-logo{right:20px;width:118px;height:91px}.mobile-menu-toggle{font-size:1.25rem}.content{padding:30px 20px 56px}.page-head{margin-bottom:24px}.card{padding:20px}.module-card{grid-template-columns:1fr}.module-icon{width:44px;height:44px}.badge{justify-self:start}.guest-brandbar{height:102px;padding:6px 22px}.guest-brandbar span{display:none}.guest-brandbar img{width:118px;height:90px}.login-card{margin:40px auto;padding:24px}.color-field{align-items:flex-start;gap:8px;flex-direction:column}.color-control{width:100%;justify-content:space-between}}

/* 0.1.4 – Navigation, Registrierung und Benutzerverwaltung */
.admin-dropdown{position:relative}.admin-dropdown summary{list-style:none;cursor:pointer;font-size:1.08rem;font-weight:400;padding:10px 13px;color:#fff;display:flex;align-items:center;gap:6px;min-height:44px}.admin-dropdown summary::-webkit-details-marker{display:none}.admin-dropdown summary:hover,.admin-dropdown summary:focus-visible,.admin-dropdown[open] summary{background:rgba(255,255,255,.14)}.admin-dropdown-menu{position:absolute;z-index:80;top:100%;left:0;min-width:250px;background:#fff;border:1px solid var(--line);box-shadow:0 8px 25px rgba(0,0,0,.16);padding:6px 0}.desktop-main-nav .admin-dropdown-menu a{display:block;color:var(--menu-inactive);padding:11px 16px;font-size:1rem;white-space:nowrap}.desktop-main-nav .admin-dropdown-menu a:hover,.desktop-main-nav .admin-dropdown-menu a:focus-visible{color:var(--menu-active);background:#f8fbf8}
.mobile-admin-dropdown{border-bottom:1px solid rgba(255,255,255,.55)}.mobile-admin-dropdown summary{list-style:none;display:flex;justify-content:space-between;align-items:center;min-height:48px;padding:0 14px;font-weight:400;cursor:pointer}.mobile-admin-dropdown summary::-webkit-details-marker{display:none}.mobile-admin-dropdown[open] summary span{transform:rotate(90deg)}.mobile-admin-submenu{background:rgba(255,255,255,.08);border-top:1px solid rgba(255,255,255,.4)}.mobile-admin-submenu a{display:flex;justify-content:space-between;align-items:center;min-height:46px;padding:0 14px 0 30px;border-bottom:1px solid rgba(255,255,255,.35)}.mobile-admin-submenu a:last-child{border-bottom:0}
.portal-shell{display:block;max-width:1450px}.content{max-width:1450px}.module-card{grid-template-columns:auto 1fr;padding:24px 24px 22px}.module-card>div{min-width:0}.module-card .badge{margin-top:8px}.guest-flash{width:min(calc(100% - 40px),720px);margin:24px auto 0}.auth-links{display:grid;gap:10px;margin-top:20px}.auth-links a:not(.button){color:var(--brand-primary);font-weight:400}.auth-links a:not(.button):hover{text-decoration:underline}.register-card{width:min(calc(100% - 40px),680px)}.honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.code-input{font-size:2rem;letter-spacing:.35em;text-align:center;font-weight:500}.status-panel{padding:16px;border-left:4px solid var(--brand-primary);background:#f4faf6}.status-panel p{margin:8px 0 0}.success-panel{background:#e9f5ed;color:#2f6b47}.count-badge{display:grid;place-items:center;min-width:38px;height:38px;padding:0 10px;background:var(--brand-primary);color:#fff;font-weight:500}.approval-list{display:grid;gap:12px;margin-top:16px}.approval-card{display:grid;gap:16px;border:1px solid var(--line);padding:16px;background:#fff}.approval-person{display:grid;gap:5px}.approval-person>strong{font-size:1.15rem;color:var(--brand-primary)}.approval-actions{display:grid;gap:12px}.approval-actions .row-actions{justify-content:flex-start}.role-checks{border:1px solid var(--line);padding:12px;margin:0}.role-checks legend{padding:0 6px;color:var(--muted);font-size:.9rem}.check.compact{padding:8px;border:0;border-bottom:1px solid var(--line)}.check.compact:last-child{border-bottom:0}.responsive-list.user-list article{grid-template-columns:1fr;gap:7px}.status-active{background:#e9f5ed;color:var(--success)}.status-inactive,.status-rejected{background:#f4eaea;color:var(--danger)}.status-pending_email,.status-pending_approval{background:#fff5dc;color:#7a5b00}.small-button{min-height:38px;padding:0 12px;display:inline-grid;place-items:center;justify-self:start}.switch-line{display:flex;align-items:center;gap:10px}.switch-line input{width:22px;min-height:22px}.fixed-rules{display:grid;gap:8px}.fixed-rules>div{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}.fixed-rules span{color:var(--brand-primary);font-weight:500}.status-row{display:flex;gap:14px;align-items:center;flex-wrap:wrap}.danger-zone{border-color:#e4baba;background:#fffafa}.danger-zone h2,.danger-zone h3{color:var(--danger)}.compact-danger{margin-top:24px;padding-top:18px;border-top:1px solid #e4baba}.role-list a{display:grid;gap:2px}.role-list small{font-size:.75rem}.inline-test-form{display:grid;gap:12px;max-width:680px}.inline-test-form label{flex:1}.card hr{border:0;border-top:1px solid var(--line);margin:22px 0}.button.small-button{width:auto}.page-head .button{flex:0 0 auto}
@media(min-width:760px){.approval-card{grid-template-columns:minmax(250px,.8fr) minmax(0,1.4fr);align-items:start}.responsive-list.user-list article{grid-template-columns:minmax(180px,1.2fr) minmax(190px,1.2fr) 80px minmax(150px,1fr) auto auto;align-items:center}.inline-test-form{grid-template-columns:1fr auto;align-items:end}}
@media(min-width:1000px){.portal-shell{display:block}.content{padding:42px 50px 70px}.cards{grid-template-columns:repeat(3,1fr)}.admin-sidebar{display:none!important}}
@media(max-width:520px){.module-card{grid-template-columns:auto 1fr;padding:20px}.module-icon{width:44px;height:44px}.module-card .badge{grid-column:2}.approval-card{padding:14px}.role-checks{padding:8px}.code-input{font-size:1.65rem;letter-spacing:.25em}.page-head{gap:12px}.page-head .button{min-height:42px;padding:0 12px}}

/* 0.2.0 – Inventar */
.inventory-page-head,.inventory-detail-head{gap:16px;flex-wrap:wrap}.inventory-page-head .row-actions,.inventory-detail-head .row-actions{justify-content:flex-start}.inventory-filters{display:grid;gap:12px;margin-bottom:18px;padding:18px}.filter-actions{display:flex;gap:8px;align-items:end;flex-wrap:wrap}.inventory-result-head{display:flex;justify-content:space-between;align-items:center;margin:18px 0 10px;color:var(--muted)}.inventory-grid{display:grid;grid-template-columns:1fr;gap:14px}.inventory-card{padding:0;overflow:hidden}.inventory-card-main{display:grid;grid-template-columns:108px 1fr;min-height:138px}.inventory-card-main:hover h2{color:var(--brand-primary)}.inventory-thumb{background:#eff6f1;min-height:138px;display:grid;place-items:center;overflow:hidden}.inventory-thumb img{width:100%;height:100%;object-fit:cover}.inventory-thumb span{font-size:2rem;color:var(--brand-primary);opacity:.7}.inventory-card-body{padding:17px;min-width:0}.inventory-number{font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:500;margin-bottom:4px}.inventory-card h2{font-size:1.25rem;margin-bottom:4px;color:var(--text);transition:color .15s}.inventory-card p{margin:0 0 10px;color:var(--muted)}.inventory-card-meta,.inventory-card-status{display:flex;gap:7px 12px;flex-wrap:wrap;font-size:.88rem}.inventory-card-meta{color:var(--muted);margin-top:8px}.inventory-card-status{align-items:center;margin-top:11px}.inventory-status{display:inline-flex;align-items:center;min-height:27px;padding:3px 8px;background:#eef0f2;color:#555;font-size:.78rem;font-weight:500}.inventory-status.available{background:#e9f5ed;color:var(--success)}.inventory-status.unavailable{background:#f4eaea;color:var(--danger)}.empty-state{text-align:center;padding:42px 24px}.empty-state h2{color:var(--brand-primary)}.inventory-form{display:grid;gap:22px;max-width:980px}.inventory-check{margin-top:4px}.inventory-form-actions{justify-content:flex-start}.inventory-detail-grid{display:grid;gap:16px}.inventory-hero-image{padding:0;min-height:280px;overflow:hidden}.inventory-hero-image>img{display:block;width:100%;height:100%;max-height:560px;object-fit:contain;background:#f7f7f2}.inventory-image-placeholder{min-height:280px;display:grid;place-items:center;align-content:center;gap:8px;color:var(--muted);background:#f7f7f2}.inventory-image-placeholder span{font-size:3rem;color:var(--brand-primary);opacity:.65}.inventory-image-placeholder p{margin:0}.inventory-meta{display:grid;grid-template-columns:1fr;gap:0;margin:0}.inventory-meta>div{padding:10px 0;border-bottom:1px solid var(--line)}.inventory-meta dt{font-size:.8rem;color:var(--muted)}.inventory-meta dd{margin:4px 0 0;font-weight:500}.inventory-notes{margin-top:20px}.inventory-notes p{white-space:normal;line-height:1.55}.inventory-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px}.inventory-gallery-item{border:1px solid var(--line);background:#fff;display:grid;align-content:start}.inventory-gallery-item>a{display:block;aspect-ratio:4/3;background:#f7f7f2;overflow:hidden}.inventory-gallery-item img{width:100%;height:100%;display:block;object-fit:cover}.inventory-gallery-item>div{padding:10px}.inventory-gallery-item>div:not(.row-actions){display:grid;gap:3px}.inventory-gallery-item .row-actions{padding-top:0}.inventory-upload-form{display:grid;gap:12px;margin-top:20px;padding-top:18px;border-top:1px solid var(--line)}.inventory-doc-list{display:grid;margin-top:14px}.inventory-doc-list article{display:grid;gap:10px;padding:12px 0;border-top:1px solid var(--line)}.inventory-doc-list article>div:first-child{display:grid;gap:3px}.inventory-doc-upload{grid-template-columns:1fr}.inventory-qr-section{display:grid;gap:18px}.inventory-qr-section>img{width:min(230px,70vw);height:auto;border:1px solid var(--line);background:#fff}.qr-print-sheet{max-width:760px;margin:0 auto}.qr-print-card{background:#fff;border:1px solid var(--line);padding:28px;display:grid;gap:24px;align-items:center}.qr-print-card img{width:min(320px,80vw);height:auto;margin:auto}.qr-print-card h1{font-size:2rem;margin:4px 0 8px}.qr-print-card p{margin:0;color:var(--muted)}.qr-print-actions{margin-top:18px}.inventory-admin-grid{display:grid;grid-template-columns:1fr;gap:16px}.compact-page-head{margin-top:28px}.inventory-catalog-card{align-self:start}.inventory-catalog-list{display:grid;gap:12px}.inventory-catalog-row{display:grid;gap:9px;padding:12px;border:1px solid var(--line);background:#fbfcfa}.inventory-catalog-new{display:grid;gap:10px;margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}.inventory-catalog-new h3{color:var(--brand-primary);margin-bottom:0}.inventory-setting-checks{display:grid;grid-template-columns:1fr;gap:8px}.inventory-settings-form{max-width:none}.inventory-catalog-row .row-actions{justify-content:flex-start}
@media(min-width:700px){.inventory-filters{grid-template-columns:2fr repeat(2,minmax(150px,1fr));align-items:end}.filter-actions{grid-column:1/-1}.inventory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.inventory-card-main{grid-template-columns:130px 1fr}.inventory-detail-grid{grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr)}.inventory-meta{grid-template-columns:1fr 1fr}.inventory-meta>div:nth-child(odd){padding-right:18px}.inventory-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}.inventory-doc-list article{grid-template-columns:1fr auto;align-items:center}.inventory-doc-upload{grid-template-columns:1fr 1.2fr auto;align-items:end}.inventory-qr-section{grid-template-columns:1fr auto;align-items:center}.qr-print-card{grid-template-columns:320px 1fr}.inventory-admin-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.inventory-setting-checks{grid-template-columns:repeat(2,minmax(0,1fr))}.inventory-catalog-row{grid-template-columns:minmax(0,1.6fr) 110px;align-items:end}.inventory-catalog-row .check,.inventory-catalog-row .row-actions{grid-column:1/-1}}
@media(min-width:1100px){.inventory-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.inventory-filters{grid-template-columns:2fr repeat(4,1fr) auto}.filter-actions{grid-column:auto;flex-wrap:nowrap}.inventory-gallery{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:520px){.inventory-card-main{grid-template-columns:88px 1fr;min-height:122px}.inventory-thumb{min-height:122px}.inventory-card-body{padding:14px}.inventory-card h2{font-size:1.12rem}.inventory-gallery{grid-template-columns:1fr}.inventory-page-head .row-actions,.inventory-detail-head .row-actions{width:100%}.inventory-page-head .button,.inventory-detail-head .button{flex:1 1 auto}.inventory-qr-section>img{justify-self:center}.inventory-catalog-row{padding:10px}}
@media print{.site-header,.mobile-menu-panel,.flash,.qr-print-actions{display:none!important}.content{padding:0!important}.qr-print-sheet{max-width:none}.qr-print-card{border:0;box-shadow:none;min-height:90vh;align-content:center}.qr-print-card img{width:85mm}.qr-print-card h1{color:#000}.qr-print-card p{color:#000}}

/* 0.3.0 – Verleih */
.loans-page-head,.loan-detail-head{gap:16px;flex-wrap:wrap}.loans-page-head .row-actions,.loan-detail-head .row-actions{justify-content:flex-start}.loan-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0 0 16px}.loan-summary{display:grid;gap:2px;padding:16px}.loan-summary strong{font-size:1.8rem;color:var(--brand-primary);font-weight:400}.loan-summary span{color:var(--muted)}.loan-filters{display:grid;gap:12px;margin-bottom:18px;padding:18px}.loan-list{display:grid;gap:14px}.loan-card{display:grid;gap:12px;padding:18px}.loan-card:hover h2{color:var(--brand-primary)}.loan-card-top{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.loan-card h2{margin:2px 0 0;color:var(--text);font-size:1.2rem}.inventory-status.pending{background:#fff5dc;color:#7a5b00}.loan-card-period{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.loan-card-period span{color:var(--muted)}.loan-purpose{margin:0;color:var(--text)}.loan-card-meta{display:flex;gap:7px 14px;flex-wrap:wrap;color:var(--muted);font-size:.88rem}.loan-form,.loan-settings-form{display:grid;gap:22px;max-width:1050px}.section-title-row{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;flex-wrap:wrap}.section-title-row p{margin-bottom:0;color:var(--muted)}.loan-item-picker{display:grid;gap:10px}.loan-picker-row{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;padding:14px;border:1px solid var(--line);background:#fbfcfa}.loan-picker-row>div:first-child{display:grid;gap:3px}.loan-picker-row>div:first-child>strong{font-size:1.05rem}.loan-stock{display:flex;gap:12px;align-items:center;justify-content:space-between;color:var(--muted)}.loan-stock strong{color:var(--success);font-weight:500}.loan-stock strong.low{color:var(--danger)}.loan-picker-row label{grid-template-columns:auto minmax(90px,130px);align-items:center}.loan-picker-row label input{text-align:center}.loan-detail-grid{display:grid;gap:16px}.loan-status-head{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:14px}.loan-status-head>span:last-child{color:var(--muted);font-size:.88rem}.loan-detail-items{display:grid}.loan-detail-items article{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:12px 0;border-top:1px solid var(--line)}.loan-detail-items article:first-child{border-top:0}.loan-detail-items article>div{display:grid;gap:3px}.loan-quantity{font-size:1.25rem;color:var(--brand-primary);font-weight:500;white-space:nowrap}.admin-note{padding:14px;border-left:4px solid var(--brand-primary);background:#f5faf7}.loan-decision-card{margin-top:16px}.loan-decision-grid{display:grid;gap:16px}.loan-decision-grid form{display:grid;gap:12px;padding:14px;border:1px solid var(--line);background:#fbfcfa}.loan-decision-grid .button{justify-self:start}.loan-settings-form .form-grid.three{grid-template-columns:1fr}.button.danger{background:var(--danger);color:#fff;border-color:var(--danger)}
@media(min-width:700px){.loan-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.loan-filters{grid-template-columns:minmax(260px,2fr) minmax(180px,1fr) auto;align-items:end}.loan-picker-row{grid-template-columns:minmax(0,1.6fr) minmax(170px,.7fr) minmax(160px,.55fr);align-items:center}.loan-picker-row label{grid-template-columns:auto minmax(80px,110px);justify-content:end}.loan-detail-grid{grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr)}.loan-decision-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.loan-settings-form .form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:520px){.loan-summary{padding:13px}.loan-summary strong{font-size:1.45rem}.loan-card-top{align-items:flex-start}.loan-card .inventory-status{flex:0 0 auto}.loan-picker-row{padding:12px}.loan-picker-row label{grid-template-columns:1fr 100px}.loan-detail-head .row-actions,.loans-page-head .row-actions{width:100%}.loan-detail-head .button,.loans-page-head .button{flex:1 1 auto}.loan-decision-grid form{padding:12px}}

/* 0.3.1 – Verleihkontakte & E-Mail-Vorlagen */
.borrower-section{gap:18px}.borrower-type-choice{display:grid;gap:10px}.choice-card{display:flex;gap:12px;align-items:flex-start;padding:14px;border:1px solid var(--line);background:#fbfcfa;cursor:pointer}.choice-card input{width:22px;min-height:22px;margin-top:2px}.choice-card span{display:grid;gap:3px}.choice-card strong{font-weight:500}.borrower-fields{display:grid;gap:14px}.borrower-fields[hidden],.contact-inline-fields[hidden]{display:none}.contact-inline-fields{display:grid;gap:14px;padding:16px;border-left:4px solid var(--brand-primary);background:#f5faf7}.contact-list{display:grid;margin-top:18px}.contact-row{display:grid;gap:12px;padding:14px 0;border-top:1px solid var(--line)}.contact-row:first-child{border-top:0}.contact-row>div:first-child{display:grid;gap:4px}.contact-row .row-actions{justify-content:flex-start}.small-badge{display:inline-flex;width:max-content;max-width:100%;padding:4px 7px;background:#e9f5ed;color:var(--success);font-size:.76rem}.button.small{min-height:38px;padding:0 12px;font-size:.9rem}.meta-note{display:block;margin-top:3px;font-weight:300}.page-head.compact{margin-bottom:12px}.template-category{margin:24px 0 10px;color:var(--brand-primary)}.email-template-card{padding:0;margin-bottom:12px;overflow:hidden}.email-template-card>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:16px;cursor:pointer;padding:18px 20px}.email-template-card>summary::-webkit-details-marker{display:none}.email-template-card>summary>span:first-child{display:grid;gap:3px}.email-template-card>summary>span:last-child{color:var(--brand-primary);font-weight:500}.email-template-card[open]>summary{border-bottom:1px solid var(--line);background:#fbfcfa}.email-template-body{padding:20px}.email-template-body .settings-form{max-width:none}.template-placeholders{display:grid;gap:8px;padding:12px;border:1px solid var(--line);background:#fbfcfa}.template-placeholders>div{display:flex;gap:7px;flex-wrap:wrap}.template-placeholders code{display:inline-block;padding:5px 7px;background:#fff;border:1px solid var(--line);cursor:pointer;font-size:.8rem}.template-placeholders code:hover{border-color:var(--brand-primary);color:var(--brand-primary)}.template-preview{display:grid;gap:8px;border-left:4px solid var(--brand-primary);padding:14px;background:#f5faf7}.template-preview-subject{font-weight:500}.template-preview-body{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;color:var(--text);line-height:1.5}.template-secondary-actions{display:grid;gap:12px;margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}.template-secondary-actions form{display:flex;gap:10px;align-items:end;flex-wrap:wrap}.template-secondary-actions form label{flex:1 1 260px}.status-panel.compact{padding:12px}.status-panel.compact p{margin:4px 0 0}.email-template-body textarea{line-height:1.5}
@media(min-width:700px){.borrower-type-choice{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-row{grid-template-columns:minmax(0,1fr) auto;align-items:center}.contact-row .row-actions{justify-content:flex-end}.template-secondary-actions{grid-template-columns:minmax(0,1fr) auto;align-items:end}.template-secondary-actions form:last-child{justify-content:flex-end}}
@media(max-width:520px){.choice-card{padding:12px}.contact-inline-fields{padding:12px}.email-template-card>summary{padding:15px}.email-template-body{padding:15px}.template-secondary-actions form{display:grid}.template-secondary-actions .button{width:100%}}

/* 0.4.0 – Ausgabe & Rückgabe */
.handover-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.compact-card{padding:16px;margin-bottom:16px}.handover-list{margin-top:0}.handover-card{gap:14px}.handover-status-stack{display:flex;gap:7px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.handover-card-actions{padding-top:4px}.handover-form{display:grid;gap:22px;max-width:1120px}.handover-item-list{display:grid;gap:10px}.handover-item-row{display:grid;gap:12px;padding:14px;border:1px solid var(--line);background:#fbfcfa}.handover-item-main{display:grid;gap:3px}.handover-item-main strong{font-size:1.05rem}.handover-item-row label{align-self:end}.handover-item-row>.available-count{color:var(--success);font-size:.86rem;font-weight:500;align-self:center}.handover-damage{display:grid;gap:10px}.compact-check{padding:9px}.damage-details{display:grid;gap:10px;padding:12px;border-left:4px solid var(--danger);background:#fff7f7}.damage-details[hidden]{display:none}.damage-note{color:var(--danger)!important}.settings-check-grid{display:grid;gap:8px}.handover-progress-table{display:grid}.handover-progress-head,.handover-progress-row{display:grid;grid-template-columns:minmax(0,1.7fr) repeat(4,minmax(70px,.55fr));gap:10px;align-items:center;padding:11px 0;border-top:1px solid var(--line)}.handover-progress-head{font-size:.78rem;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;border-top:0}.handover-progress-row>span:first-child{display:grid;gap:2px}.handover-progress-row>span:not(:first-child){text-align:center}.handover-timeline{display:grid;gap:14px}.handover-event{padding:15px;border:1px solid var(--line);background:#fbfcfa}.handover-event-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;flex-wrap:wrap}.handover-event-head>div{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.handover-event-items{display:grid;gap:7px;margin-top:12px}.handover-event-items>div{display:grid;gap:2px;padding:8px 0;border-top:1px solid var(--line)}.handover-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px}.handover-photo-grid img{display:block;width:100%;height:160px;object-fit:cover;border:1px solid var(--line);background:#fff}
@media(min-width:700px){.handover-summary-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.handover-item-row{grid-template-columns:minmax(0,1.6fr) minmax(130px,.45fr) minmax(210px,.8fr);align-items:end}.return-row{grid-template-columns:minmax(0,1.4fr) minmax(150px,.45fr) minmax(210px,.8fr)}.return-row .handover-damage{grid-column:1/-1}.settings-check-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.handover-photo-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:620px){.handover-progress-head{display:none}.handover-progress-row{grid-template-columns:1fr 1fr;gap:8px}.handover-progress-row>span:first-child{grid-column:1/-1}.handover-progress-row>span:not(:first-child){text-align:left;padding:6px 8px;background:#f4f5f2}.handover-progress-row>span:nth-child(2)::before{content:'Beantragt: ';color:var(--muted)}.handover-progress-row>span:nth-child(3)::before{content:'Ausgegeben: ';color:var(--muted)}.handover-progress-row>span:nth-child(4)::before{content:'Zurück: ';color:var(--muted)}.handover-progress-row>span:nth-child(5)::before{content:'Offen: ';color:var(--muted)}.handover-photo-grid img{height:130px}.handover-card-actions .button{flex:1 1 auto}}

/* 0.5.0 Kalender */
.calendar-toolbar{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;margin-bottom:12px;padding:12px}.calendar-toolbar>div{display:flex;justify-content:center;align-items:center;gap:14px;flex-wrap:wrap}.calendar-toolbar strong{color:var(--brand-primary);font-size:1.2rem;font-weight:500}.calendar-toolbar a:not(.button){color:var(--brand-primary);font-weight:400}.calendar-filter{display:grid;gap:10px;margin-bottom:18px;padding:14px}.calendar-filter .button{align-self:end}.calendar-month{border:1px solid var(--line);background:#fff;box-shadow:var(--shadow);margin-bottom:28px}.calendar-weekdays,.calendar-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-weekdays span{padding:10px;text-align:center;color:var(--muted);font-size:.82rem;font-weight:500;border-right:1px solid var(--line);background:#f8faf7}.calendar-weekdays span:last-child{border-right:0}.calendar-day{min-height:130px;border-top:1px solid var(--line);border-right:1px solid var(--line);padding:8px;background:#fff;min-width:0}.calendar-day:nth-child(7){border-right:0}.calendar-day.other-month{background:#fafafa;color:#a2a2a2}.calendar-day.today{box-shadow:inset 0 0 0 2px var(--brand-primary)}.calendar-day-number{display:flex;justify-content:space-between;align-items:center;font-size:.88rem;margin-bottom:6px}.calendar-day-number>a{color:var(--brand-primary);font-size:1.2rem;line-height:1}.calendar-day-events{display:grid;gap:4px}.calendar-chip{display:block;border-left:4px solid var(--event-color);padding:4px 5px;background:#f5f7f4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.75rem}.calendar-chip span{color:var(--muted);margin-right:5px}.calendar-agenda{margin-top:22px}.calendar-event-list{display:grid;gap:10px}.calendar-event-card{display:grid;grid-template-columns:58px minmax(0,1fr) auto;gap:14px;align-items:center;padding:16px}.calendar-event-card:hover{box-shadow:0 0 20px rgba(0,0,0,.16)}.calendar-event-date{display:grid;text-align:center;border-right:1px solid var(--line);padding-right:12px}.calendar-event-date strong{font-size:1.7rem;color:var(--brand-primary);font-weight:400;line-height:1}.calendar-event-date span{font-size:.76rem;color:var(--muted);text-transform:uppercase}.calendar-event-main{min-width:0}.calendar-event-main h3{margin:4px 0 5px;color:var(--brand-primary);font-size:1.15rem}.calendar-event-main p{margin:0;color:var(--muted);line-height:1.4}.calendar-event-category{display:flex;gap:7px;align-items:center;flex-wrap:wrap;color:var(--muted);font-size:.82rem}.calendar-event-category i{display:inline-block;width:10px;height:10px;border-radius:50%}.calendar-chevron{color:var(--brand-primary);font-size:1.5rem}.calendar-form{display:grid;gap:20px;max-width:1050px}.calendar-detail-grid{display:grid;gap:16px}.calendar-description{line-height:1.6}.danger-zone{margin-top:18px;border-color:#e6caca}.calendar-category-list{display:grid;gap:10px;margin-top:16px}.calendar-category-row{display:grid;gap:10px;padding:14px;border:1px solid var(--line);background:#fbfcfa}.calendar-category-row label{min-width:0}.calendar-category-row label input[type=color]{height:46px;padding:4px}.category-delete-form{margin:-4px 0 12px}.status-panel code{overflow-wrap:anywhere}.desktop-calendar{display:none}
@media(min-width:700px){.calendar-filter{grid-template-columns:minmax(220px,1fr) auto auto;align-items:end}.calendar-detail-grid{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}.calendar-category-row{grid-template-columns:minmax(220px,1.4fr) 110px 120px minmax(180px,.8fr) auto;align-items:end}.calendar-category-row.new{grid-template-columns:minmax(220px,1.4fr) 110px 120px minmax(180px,.8fr) auto}.category-delete-form{display:flex;justify-content:flex-end;margin-top:-54px;padding-right:12px;pointer-events:none}.category-delete-form .button{pointer-events:auto}.desktop-calendar{display:block}}
@media(max-width:699px){.calendar-toolbar{grid-template-columns:50px 1fr 50px}.calendar-toolbar .button{padding:0 12px}.calendar-filter .button{width:100%}.calendar-event-card{grid-template-columns:52px minmax(0,1fr);padding:14px}.calendar-chevron{display:none}.calendar-category-row{padding:12px}.category-delete-form .button{width:100%}.calendar-detail-head .row-actions,.calendar-page-head .row-actions{width:100%}.calendar-detail-head .button,.calendar-page-head .button{flex:1 1 auto}}

/* 0.5.1 Kalender: Serien, Verleihbelegung, Tagesansicht */
.calendar-day-link{color:inherit;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;min-width:28px;min-height:28px;border-radius:50%}.calendar-day-link:hover{background:rgba(51,153,102,.1);color:var(--brand-primary)}
.calendar-day-actions{display:flex;gap:6px;align-items:center}.calendar-day-actions>a{color:var(--brand-primary);font-size:1.2rem;line-height:1;padding:2px 4px}
.calendar-chip{position:relative}.calendar-chip small{display:block;margin-top:2px;color:var(--muted);font-size:.68rem;overflow:hidden;text-overflow:ellipsis}.calendar-chip.loan-chip{background:#f4f5f6;border-left-color:#6B7C93}.calendar-chip.loan-chip>span{font-weight:500}.calendar-chip.loan-chip small{color:#596777}
.calendar-layer-filter .compact-check{align-self:center;margin:0}.internal-badge{background:#eef1f4;color:#596777}.loan-calendar-card{border-left:4px solid #6B7C93}
.series-info{margin-top:18px;border-left:4px solid var(--brand-primary)}.recurrence-field[hidden],.recurrence-count[hidden],.recurrence-until[hidden]{display:none!important}
.calendar-loan-day-list{display:grid;gap:10px}.calendar-loan-day-card{display:flex;gap:16px;align-items:center;justify-content:space-between}.calendar-loan-day-card h3{margin:4px 0;color:var(--brand-primary)}.calendar-loan-day-card p{margin:3px 0}
.calendar-inventory-grid{display:grid;gap:12px}.calendar-inventory-card{display:grid;gap:12px;align-items:center}.calendar-inventory-card h3{margin:4px 0;color:var(--brand-primary)}.calendar-inventory-card p{margin:0;color:var(--muted)}.availability-summary{display:grid;gap:2px}.availability-summary.available strong{color:var(--brand-primary)}.availability-summary.unavailable strong{color:#9b4c4c}.availability-summary small{color:var(--muted)}.disabled-button{opacity:.65;pointer-events:none;text-align:center}
.calendar-day-head .row-actions{align-items:center}
@media(min-width:700px){.calendar-layer-filter{grid-template-columns:minmax(220px,1fr) minmax(220px,.8fr) auto auto;align-items:end}.calendar-inventory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-inventory-card{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"main availability" "main action"}.calendar-inventory-card>div:first-child{grid-area:main}.calendar-inventory-card>.availability-summary{grid-area:availability;text-align:right}.calendar-inventory-card>.button{grid-area:action;justify-self:end}.calendar-loan-day-card>.button{flex:0 0 auto}}
@media(max-width:699px){.calendar-layer-filter .compact-check{padding:8px 0}.calendar-loan-day-card{align-items:stretch;flex-direction:column}.calendar-loan-day-card .button,.calendar-inventory-card .button{width:100%}.calendar-day-head .row-actions{width:100%}.calendar-day-head .row-actions .button{flex:1 1 46%}.recurrence-field .borrower-type-choice{grid-template-columns:1fr}}

/* 0.6.0 Dokumentenverwaltung */
.document-filters{display:grid;grid-template-columns:minmax(240px,2fr) minmax(170px,1fr) minmax(160px,1fr) auto;gap:14px;align-items:end;margin-bottom:18px}.document-filters label{margin:0}.document-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(310px,1fr));gap:16px}.document-card{padding:0;overflow:hidden}.document-card-main{display:grid;grid-template-columns:58px 1fr auto;gap:15px;align-items:center;padding:18px;color:inherit;text-decoration:none}.document-icon{width:52px;height:52px;display:grid;place-items:center;background:rgba(51,153,102,.1);color:var(--brand-primary);font-size:1.5rem}.document-card-body h2{margin:4px 0 7px;font-size:1.2rem;font-weight:400;color:var(--brand-primary)}.document-card-body p{margin:0 0 9px;color:var(--muted);line-height:1.45}.document-category{font-size:.82rem;color:var(--muted);text-transform:uppercase;letter-spacing:.03em}.document-meta{display:flex;flex-wrap:wrap;gap:8px 14px;color:var(--muted);font-size:.86rem}.document-visibility{margin-top:9px}.document-form>label,.document-form>.form-grid,.document-form>section{margin-bottom:18px}.document-form textarea{resize:vertical}.visibility-choice-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.document-access-section h2,.document-restricted-box h2{margin-top:0}.document-restricted-box{border-top:1px solid var(--line);padding-top:18px}.document-restricted-box.is-inactive{opacity:.48}.document-access-columns{display:grid;grid-template-columns:1fr 1.3fr;gap:22px}.document-access-columns h3{margin:0 0 10px}.access-check-list{display:grid;gap:8px;max-height:330px;overflow:auto;padding-right:4px}.document-detail-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,1fr);gap:18px}.document-description{line-height:1.6;margin-bottom:18px}.document-category-row{grid-template-columns:2fr 120px minmax(190px,1fr) auto}.danger-zone{border-color:rgba(170,45,45,.25)}
@media(max-width:820px){.document-filters{grid-template-columns:1fr 1fr}.document-filters .filter-search,.document-filters .filter-actions{grid-column:1/-1}.document-detail-grid,.document-access-columns{grid-template-columns:1fr}.document-category-row{grid-template-columns:1fr 110px}.document-category-row .check,.document-category-row .row-actions{grid-column:1/-1}}
@media(max-width:560px){.document-filters{grid-template-columns:1fr}.document-filters>*{grid-column:1!important}.document-grid{grid-template-columns:1fr}.document-card-main{grid-template-columns:44px 1fr auto;padding:14px;gap:11px}.document-icon{width:42px;height:42px}.document-card-body h2{font-size:1.08rem}.visibility-choice-grid{grid-template-columns:1fr}.document-category-row{grid-template-columns:1fr}.document-category-row>*{grid-column:1!important}}

/* 0.6.1 Parzellenordner */
.parcel-folder-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}.parcel-folder-card{display:flex;align-items:center;gap:14px;text-decoration:none;color:inherit;padding:18px;min-height:92px}.parcel-folder-card:hover{transform:translateY(-1px)}.parcel-folder-card strong{display:block;font-size:1.12rem}.parcel-folder-card small{display:block;color:var(--muted);margin-top:4px}.parcel-folder-icon{display:grid;place-items:center;width:46px;height:38px;border-radius:7px;background:linear-gradient(135deg,var(--primary),var(--secondary));color:#fff;font-size:1.25rem;flex:0 0 auto}.parcel-folder-card .calendar-chevron{margin-left:auto}.document-parcel-box{margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}.document-parcel-box.is-inactive{display:none}@media(max-width:680px){.parcel-folder-grid{grid-template-columns:1fr}.parcel-folder-card{min-height:82px;padding:15px}}

/* 0.6.1 Dokumentenordner, Parzellenbereiche & Dateizugriff */
.document-folder-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px}.document-folder-card{display:flex;align-items:center;gap:14px;text-decoration:none;color:inherit;padding:18px;min-height:96px}.document-folder-card:hover{transform:translateY(-1px)}.document-folder-card strong{display:block;font-size:1.12rem}.document-folder-card small,.document-folder-card em{display:block;color:var(--muted);margin-top:4px;font-style:normal}.document-folder-icon{display:grid;place-items:center;width:48px;height:40px;border-radius:7px;background:rgba(51,153,102,.12);color:var(--brand-primary);font-size:1.28rem;flex:0 0 auto}.document-folder-card .calendar-chevron{margin-left:auto}.document-folder-section,.document-download-section{margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}.document-folder-section h2,.document-download-section h2{margin-top:0}.admin-folder-list{display:grid;gap:10px;margin-top:16px}.admin-folder-row{display:flex;align-items:center;justify-content:space-between;gap:18px;border:1px solid var(--line);padding:14px;background:#fbfcfa}.admin-folder-row strong{display:block;font-size:1.05rem}.admin-folder-row small{display:block;color:var(--muted);margin-top:4px}.admin-folder-row .row-actions{flex:0 0 auto}.admin-folder-row form{margin:0}.document-folder-form{display:grid;gap:18px}.document-folder-form>section{padding-top:18px;border-top:1px solid var(--line)}.document-folder-form>section h2{margin-top:0}.status-panel.warning{border-color:#e7d9a9;background:#fffdf3}.document-restricted-box.is-inactive{display:none}.document-parcel-box.is-inactive{display:none}
@media(max-width:700px){.document-folder-grid{grid-template-columns:1fr}.admin-folder-row{align-items:stretch;flex-direction:column}.admin-folder-row .row-actions{width:100%}.admin-folder-row .row-actions .button,.admin-folder-row .row-actions form{flex:1 1 auto}.admin-folder-row .row-actions form .button{width:100%}.document-folder-card{min-height:82px;padding:15px}}

/* 0.6.2 Homepage-Einbindung im Systembereich */
.integration-base{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;padding:14px 0 18px;border-bottom:1px solid var(--line)}
.integration-base span{color:var(--muted)}
.integration-base strong{overflow-wrap:anywhere;color:var(--brand-primary);font-weight:500}
.integration-group{margin-top:24px}
.integration-group-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:8px}
.integration-group-head h3{margin:0}
.integration-links{display:grid}
.integration-link-row{display:grid;grid-template-columns:minmax(190px,.8fr) minmax(0,1.7fr) auto;gap:14px;align-items:center;padding:13px 0;border-top:1px solid var(--line)}
.integration-link-meta{display:grid;gap:6px;justify-items:start}
.integration-link-meta strong{font-weight:500}
.integration-url{min-width:0}
.integration-url code{display:block;padding:10px 12px;background:#fbfcfa;border:1px solid var(--line);white-space:normal;overflow-wrap:anywhere;color:var(--text)}
.integration-embed-grid{display:grid;gap:18px;margin-top:28px;padding-top:22px;border-top:1px solid var(--line)}
.integration-embed-grid>div{display:grid;gap:10px;align-content:start}
.integration-embed-grid h3{margin:0}
.integration-code{width:100%;min-height:110px;resize:vertical;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.86rem;line-height:1.5}
.integration-note{margin:24px 0 0;padding-top:18px;border-top:1px solid var(--line)}
@media(min-width:900px){.integration-embed-grid{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.integration-base{grid-template-columns:1fr}.integration-base .button{justify-self:start}.integration-link-row{grid-template-columns:1fr}.integration-link-row .row-actions{justify-content:flex-start}.integration-url code{font-size:.82rem}}

/* 0.6.3 Homepage-Kalender-Einbettung */
.integration-builder{margin:28px 0;padding:20px;border:1px solid var(--line);background:#fbfcfa;display:grid;gap:18px}.integration-builder-grid{max-width:none}.integration-category-picker{border:1px solid var(--line);padding:14px 16px;background:#fff}.integration-category-picker legend{color:var(--brand-primary);font-weight:500;padding:0 6px}.integration-category-options{display:grid;grid-template-columns:1fr;gap:6px}.check.compact{padding:7px 0}.check.compact span{display:flex;align-items:center;gap:8px}.integration-category-dot{display:inline-block;width:10px;height:10px;border-radius:50%;flex:0 0 auto}.integration-generated{display:grid;gap:12px}.integration-generated input,.integration-generated textarea{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.82rem}.integration-preview{display:grid;gap:8px}.integration-preview iframe{width:100%;height:520px;border:1px solid var(--line);background:var(--surface)}@media(min-width:760px){.integration-category-options{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* 0.6.4 – mobile Dokumentfilter und getrennte Systembereiche */
.document-filter-panel{margin-top:32px;padding:0;overflow:hidden}
.document-filter-panel>summary{display:none;list-style:none;cursor:pointer;user-select:none}
.document-filter-panel>summary::-webkit-details-marker{display:none}
.document-filter-panel .document-filters{margin:0;padding:18px;border:0;box-shadow:none;background:transparent}
.system-section-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.system-section-link{display:grid;grid-template-columns:52px minmax(0,1fr) auto;gap:14px;align-items:center;padding:18px;text-decoration:none;color:inherit}
.system-section-link:hover{box-shadow:0 0 20px rgba(0,0,0,.14);transform:translateY(-1px)}
.system-section-link strong{display:block;color:var(--brand-primary);font-size:1.1rem;font-weight:500}
.system-section-link small{display:block;color:var(--muted);line-height:1.45;margin-top:4px}
.system-section-icon{width:48px;height:48px;display:grid;place-items:center;background:var(--brand-primary);color:#fff;font-size:1.25rem}
.system-update-form{max-width:760px}
@media(max-width:900px){.system-section-links{grid-template-columns:1fr}}
@media(max-width:700px){
  .document-filter-panel{margin-top:30px}
  .document-filter-panel>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;color:var(--brand-primary);font-size:1.05rem;font-weight:500}
  .document-filter-panel>summary small{color:var(--muted);font-size:.78rem;font-weight:400;text-align:right}
  .document-filter-panel>summary:after{content:'+';font-size:1.35rem;line-height:1;color:var(--brand-primary)}
  .document-filter-panel[open]>summary{border-bottom:1px solid var(--line)}
  .document-filter-panel[open]>summary:after{content:'−'}
  .document-filter-panel .document-filters{padding:18px}
  .system-section-link{grid-template-columns:46px minmax(0,1fr) auto;padding:15px}
  .system-section-icon{width:44px;height:44px}
}

/* 0.6.5 – erweiterte Homepage-Einbettung */
.integration-builder-extended{gap:14px}.integration-option-group{border:1px solid var(--line);background:var(--surface)}.integration-option-group>summary{cursor:pointer;list-style:none;padding:13px 15px;font-weight:500;color:var(--brand-primary);display:flex;align-items:center;justify-content:space-between;gap:10px}.integration-option-group>summary::-webkit-details-marker{display:none}.integration-option-group>summary:after{content:"+";font-size:1.2rem;color:var(--muted)}.integration-option-group[open]>summary{border-bottom:1px solid var(--line)}.integration-option-group[open]>summary:after{content:"−"}.integration-option-group>div,.integration-option-group>p{margin:0;padding:14px 15px}.integration-option-group>.integration-category-options{padding:12px 15px 15px}.integration-generated>label{display:grid;gap:6px}.integration-generated input{width:100%}.integration-preview iframe{transition:height .2s ease}.integration-builder-extended small{color:var(--muted)}
@media(max-width:680px){.integration-builder-extended{padding:14px}.integration-option-group>summary{padding:12px}.integration-option-group>div,.integration-option-group>p{padding:12px}.integration-option-group>.integration-category-options{padding:10px 12px 12px}}

/* 0.6.5.1 – Dokumentenkarten Layout-Hotfix */
.document-folder-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}
.document-folder-card,.parcel-folder-card{align-items:center;min-width:0;height:auto}
.document-folder-card>span:nth-child(2),.parcel-folder-card>span:nth-child(2){min-width:0;flex:1 1 auto}
.document-folder-card strong,.parcel-folder-card strong{max-width:100%;overflow-wrap:anywhere;word-break:break-word;hyphens:auto;line-height:1.28}
.document-folder-card small,.document-folder-card em,.parcel-folder-card small{max-width:100%;overflow-wrap:anywhere;word-break:break-word;line-height:1.35}
.document-folder-card .calendar-chevron,.parcel-folder-card .calendar-chevron{flex:0 0 auto;align-self:center;margin-left:8px}
.document-card-body{min-width:0}
.document-card-body h2,.document-category{max-width:100%;overflow-wrap:anywhere;word-break:break-word}
.admin-folder-row>div:first-child{min-width:0;flex:1 1 auto}
.admin-folder-row strong,.admin-folder-row small{max-width:100%;overflow-wrap:anywhere;word-break:break-word}
@media(max-width:700px){
 .document-folder-grid,.parcel-folder-grid{grid-template-columns:minmax(0,1fr)}
 .document-folder-card,.parcel-folder-card{align-items:center;min-height:0}
}

/* 0.6.6 Kalender Professional */
.weekday-choice{margin-top:16px}.weekday-checks{display:flex;flex-wrap:wrap;gap:8px;margin:9px 0}.weekday-checks label{cursor:pointer}.weekday-checks input{position:absolute;opacity:0;pointer-events:none}.weekday-checks span{display:inline-flex;min-width:46px;justify-content:center;padding:9px 12px;border:1px solid var(--line);background:var(--surface);color:var(--text);font-weight:500}.weekday-checks input:checked+span{background:var(--brand-primary);border-color:var(--brand-primary);color:#fff}.calendar-important{border-left:4px solid #d79b00!important}.calendar-important.very_important{border-left-color:#a43b32!important}.calendar-chip-important{box-shadow:inset 3px 0 0 #d79b00}.calendar-chip-important.very_important{box-shadow:inset 3px 0 0 #a43b32}.importance-badge{background:#fff3c4!important;color:#7d5900!important;border-color:#efd98a!important}.parcel-own-badge{background:#e9f7ef!important;color:#217849!important;border-color:#b8e1c9!important}.parcel-number-list{display:flex;flex-wrap:wrap;gap:8px}.parcel-pill{display:inline-flex;padding:7px 11px;border-radius:999px;background:rgba(51,153,102,.1);border:1px solid rgba(51,153,102,.24);color:var(--brand-primary);font-weight:600}.success-panel{background:#eef9f2;border-color:#b7dfc5}.series-occurrence-list{display:grid;gap:7px;margin:14px 0}.series-occurrence-row{display:grid;grid-template-columns:110px minmax(0,1fr) auto 24px;gap:10px;align-items:center;padding:10px 12px;border:1px solid var(--line);text-decoration:none;color:var(--text);background:var(--surface)}.series-occurrence-row:hover{border-color:var(--brand-primary)}.series-occurrence-row small{color:var(--muted)}.dashboard-calendar-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:22px}.dashboard-calendar-card .section-head{align-items:flex-start}.dashboard-calendar-card .section-head a{font-size:.9rem}.dashboard-mini-events{display:grid;gap:4px}.dashboard-mini-events>a{display:grid;grid-template-columns:60px minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px 0;border-top:1px solid var(--line);text-decoration:none;color:var(--text)}.dashboard-mini-events>a:first-child{border-top:0}.dashboard-mini-events strong,.dashboard-mini-events small{display:block}.dashboard-mini-events small{color:var(--muted);margin-top:2px}.mini-date{font-weight:600;color:var(--brand-primary)}.account-profile{margin-bottom:24px}.calendar-category-row-expanded{grid-template-columns:minmax(170px,1.4fr) 90px 100px minmax(150px,1fr);align-items:end}.settings-divider{border:0;border-top:1px solid var(--line);margin:24px 0}.utility-user{text-decoration:none;color:inherit}.utility-user:hover{color:var(--brand-primary)}
@media(max-width:800px){.dashboard-calendar-grid{grid-template-columns:1fr}.calendar-category-row-expanded{grid-template-columns:1fr}.series-occurrence-row{grid-template-columns:90px minmax(0,1fr) 20px}.series-occurrence-row small{grid-column:2/3}.weekday-checks{gap:6px}.weekday-checks span{min-width:42px;padding:9px 10px}}

/* 0.6.7 – modulare Datenresets */
.reset-area-grid{display:grid;gap:16px}.reset-area-card{display:grid;gap:14px;align-content:start}.reset-area-card h2{margin:0;color:var(--brand-primary)}.reset-area-card .section-head p{margin:6px 0 0;line-height:1.5}.reset-count-label{margin:0;color:var(--muted);font-size:.9rem}.reset-confirm-box{border-top:1px solid var(--line);padding-top:14px}.reset-confirm-box summary{list-style:none;width:max-content;max-width:100%;cursor:pointer}.reset-confirm-box summary::-webkit-details-marker{display:none}.reset-confirm-form{display:grid;gap:12px;margin-top:14px;padding:14px;background:#fff7f7;border:1px solid #efd0d0}.reset-confirm-form label{margin:0}.reset-confirm-form input{margin-top:6px}.reset-confirm-form .button{justify-self:start}.reset-confirm-form .button:disabled{opacity:.45;cursor:not-allowed}.status-panel.warning{background:#fffdf3;border-left-color:#caa33d;color:var(--text)}
@media(min-width:900px){.reset-area-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* 0.6.8 – Verleihgebühren & Jahresabrechnung */
.loan-standard-price{color:var(--brand-primary)!important;font-weight:500}.loan-price-preview{display:grid;gap:3px;min-width:150px}.loan-price-preview span{font-size:.78rem;color:var(--muted)}.loan-price-preview strong{color:var(--brand-primary)}.loan-price-override{grid-column:1/-1;border-top:1px solid var(--line);padding-top:10px}.loan-price-override>summary{cursor:pointer;color:var(--brand-primary);font-weight:500}.loan-price-override>div,.loan-price-override>label,.loan-price-override>small{margin-top:10px}.loan-price-grand-total{display:flex;justify-content:space-between;gap:18px;align-items:center;margin-top:16px;padding:16px 18px;background:rgba(51,153,102,.09);border:1px solid rgba(51,153,102,.24)}.loan-price-grand-total strong{font-size:1.25rem;color:var(--brand-primary)}.loan-item-price-detail{display:block;color:var(--muted);margin-top:4px}.loan-item-amount{display:grid;justify-items:end;gap:4px}.loan-pricing-summary{display:grid;gap:10px;margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}.loan-pricing-summary>div{display:flex;justify-content:space-between;gap:18px}.loan-pricing-summary>div:first-child strong{font-size:1.2rem;color:var(--brand-primary)}.loan-pricing-summary small{color:var(--muted)}
.loan-account-summary,.billing-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px;margin-bottom:18px}.loan-account-summary .card,.billing-summary-grid .card{display:grid;gap:6px}.loan-account-summary span,.billing-summary-grid span{color:var(--muted)}.loan-account-summary strong,.billing-summary-grid strong{font-size:1.35rem;color:var(--brand-primary)}.account-loan-list,.billing-parcel-list,.billing-loan-list{display:grid;gap:16px}.account-loan-card,.billing-parcel{display:grid;gap:16px}.account-loan-head,.billing-parcel-head,.billing-loan-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.account-loan-head h3,.billing-parcel-head h2{margin:4px 0}.account-loan-status,.billing-parcel-totals{display:grid;justify-items:end;gap:6px}.billing-parcel-totals span{display:flex;gap:8px;align-items:baseline}.billing-item-list{display:grid;border-top:1px solid var(--line)}.billing-item-list>div{display:flex;justify-content:space-between;gap:16px;padding:11px 0;border-bottom:1px solid var(--line)}.billing-item-list span>strong,.billing-item-list span>small{display:block}.billing-item-list small{color:var(--muted);margin-top:3px}.billing-loan{padding:16px;border:1px solid var(--line);background:#fbfcfa}.billing-loan-head>div{display:grid;gap:4px}.billing-loan-head>div:last-child{justify-items:end}.billing-loan-total{display:flex;justify-content:space-between;gap:16px;padding-top:12px}.billing-loan-total strong{color:var(--brand-primary)}.billing-status-form,.billing-parcel-action{margin-top:12px}.billing-filters{display:flex;gap:14px;align-items:end;flex-wrap:wrap;margin-bottom:18px}.billing-filters label{min-width:160px}.direct-priced-row{align-items:center}
@media(max-width:700px){.loan-picker-row,.direct-priced-row{grid-template-columns:minmax(0,1fr) auto}.loan-stock,.loan-price-preview{grid-column:1/2}.loan-price-preview{min-width:0}.loan-price-grand-total,.account-loan-head,.billing-parcel-head,.billing-loan-head,.billing-item-list>div{align-items:flex-start;flex-direction:column}.account-loan-status,.billing-parcel-totals,.billing-loan-head>div:last-child{justify-items:start}.billing-filters{display:grid}.billing-filters label{min-width:0}.loan-item-amount{justify-items:end}}


/* 0.6.9 – Verleihsicherheit, Archiv & Monatsgruppen */
.archive-switch{display:flex;gap:8px;flex-wrap:wrap;margin:-10px 0 18px}.archive-switch .button{display:inline-grid;place-items:center}
.history-month-list{display:grid;gap:12px}.history-month{padding:0;overflow:visible}.history-month>summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:14px;padding:16px 18px;color:var(--brand-primary);font-weight:500;user-select:none}.history-month>summary::-webkit-details-marker{display:none}.history-month[open]>summary{border-bottom:1px solid var(--line)}.history-month-meta{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:.86rem;font-weight:400;white-space:nowrap}.history-month-chevron{display:inline-block;font-size:1.35rem;line-height:1;transition:transform .15s ease}.history-month[open]>summary .history-month-chevron{transform:rotate(90deg)}.history-month-body{padding:14px 16px 16px}.history-month-list-in-card{margin-top:16px}.history-month-plain{border:1px solid var(--line);background:#fff}.history-month-plain .compact-list article:first-child{border-top:0}.history-month-plain .backup-list{padding-top:0}
@media(max-width:700px){.archive-switch{display:grid;grid-template-columns:1fr 1fr}.history-month>summary{padding:14px}.history-month-body{padding:12px}.history-month-meta{font-size:.78rem}.history-month .backup-row{padding:12px}}

/* 0.6.10 – Digitale Übergabeprotokolle */
.handover-confirmation-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.handover-confirmation-box{border:1px solid var(--line);background:var(--surface);padding:16px;display:grid;gap:12px;align-content:start}.handover-confirmation-box>strong{font-size:1.05rem;color:var(--brand-primary)}.handover-confirmation-box p{margin:0}.handover-confirmation-box .check{margin:0}.check.is-disabled{opacity:.55}.signature-modal[hidden]{display:none!important}.signature-modal{position:fixed;inset:0;z-index:5000;display:grid;place-items:center;padding:20px;background:rgba(0,0,0,.5)}.signature-dialog{width:min(760px,calc(100vw - 40px));max-height:calc(100dvh - 40px);overflow:auto;background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:0 20px 60px rgba(0,0,0,.28);padding:20px;display:flex;flex-direction:column;gap:14px}.signature-dialog-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px}.signature-dialog-head h2{margin:3px 0}.signature-dialog-head p{margin:0;color:var(--muted)}.signature-dialog-head span{color:var(--muted);font-size:.86rem}.signature-close{appearance:none;border:0;background:transparent;font-size:2rem;line-height:1;cursor:pointer;padding:2px 8px;color:var(--text)}.signature-hint{margin:0;color:var(--muted)}.signature-canvas-wrap{height:300px;min-height:220px;border:2px dashed var(--line);background:#fff;touch-action:none;overflow:hidden}.signature-canvas-wrap canvas{display:block;width:100%;height:100%;touch-action:none;cursor:crosshair}.signature-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}.signature-open{overflow:hidden}.protocol-list{display:grid;gap:12px}.protocol-card{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:14px 0;border-bottom:1px solid var(--line)}.protocol-card:last-child{border-bottom:0}.protocol-card>div:first-child{display:grid;gap:4px;min-width:0}.protocol-card small{color:var(--muted)}.protocol-actions{display:flex;gap:8px;flex-wrap:wrap}.account-protocol-links{display:grid;gap:8px;padding-top:12px;border-top:1px solid var(--line)}
@media(max-width:900px){.handover-confirmation-grid{grid-template-columns:1fr}.signature-modal{padding:0;place-items:stretch}.signature-dialog{width:100vw;max-width:none;height:100dvh;max-height:100dvh;border:0;border-radius:0;padding:max(16px,env(safe-area-inset-top)) 16px max(16px,env(safe-area-inset-bottom));overflow:hidden}.signature-canvas-wrap{flex:1;height:auto;min-height:44dvh}.signature-actions{display:grid;grid-template-columns:1fr 1fr}.signature-actions .button{min-height:48px}.signature-actions [data-signature-accept]{grid-column:1/-1}.protocol-card{align-items:flex-start;flex-direction:column}.protocol-actions{width:100%}.protocol-actions .button{flex:1 1 180px}}


/* 0.6.11 – Kalender Komfortfunktionen */
.calendar-overview-filter{display:grid;gap:16px;margin-bottom:18px}.calendar-overview-filter-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));align-items:end}.calendar-overview-search{grid-column:span 2}.calendar-overview-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:18px}.calendar-overview-summary .card{display:grid;gap:3px}.calendar-overview-summary span,.calendar-overview-summary small{color:var(--muted)}.calendar-overview-summary strong{font-size:1.45rem;color:var(--brand-primary)}.calendar-overview-list{display:grid;gap:12px}.calendar-overview-row{display:grid;grid-template-columns:74px minmax(0,1fr) auto;gap:18px;align-items:center}.calendar-overview-row.is-past{opacity:.78}.calendar-overview-date{display:grid;justify-items:center;align-content:center;border-right:1px solid var(--line);padding-right:16px;min-height:72px}.calendar-overview-date strong{font-size:1.65rem;line-height:1;color:var(--brand-primary)}.calendar-overview-date span{font-weight:600;margin-top:4px}.calendar-overview-date small{color:var(--muted);margin-top:2px}.calendar-overview-main{min-width:0}.calendar-overview-main h2{font-size:1.15rem;margin:7px 0 4px}.calendar-overview-main h2 a{color:var(--text);text-decoration:none}.calendar-overview-main h2 a:hover{color:var(--brand-primary)}.calendar-overview-main p{margin:3px 0;color:var(--muted)}.calendar-overview-parcels{font-size:.88rem}.calendar-overview-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.calendar-overview-actions .button{white-space:nowrap}
@media(max-width:800px){.calendar-overview-filter-grid{grid-template-columns:1fr 1fr}.calendar-overview-search{grid-column:1/-1}.calendar-overview-row{grid-template-columns:58px minmax(0,1fr)}.calendar-overview-date{padding-right:10px}.calendar-overview-actions{grid-column:1/-1;justify-content:stretch}.calendar-overview-actions .button{flex:1 1 130px}.calendar-overview-summary{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:520px){.calendar-overview-filter-grid{grid-template-columns:1fr}.calendar-overview-search{grid-column:auto}.calendar-overview-summary{grid-template-columns:1fr}.calendar-overview-row{grid-template-columns:50px minmax(0,1fr);gap:12px}.calendar-overview-date strong{font-size:1.4rem}}

/* 0.6.13 Digitaler Schaukasten */
.noticeboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}.noticeboard-card{min-width:0;display:flex;flex-direction:column;gap:10px}.noticeboard-card.pinned{border-color:var(--brand-primary)}.noticeboard-card.calendar-source{text-decoration:none;color:inherit}.noticeboard-card.calendar-source:hover{border-color:var(--brand-primary)}.noticeboard-card.very-important{box-shadow:0 0 0 2px color-mix(in srgb,var(--brand-primary) 35%,transparent)}.noticeboard-card h2{margin:0;font-size:1.3rem;font-weight:400;overflow-wrap:anywhere}.noticeboard-card h2 a{color:var(--brand-primary);text-decoration:none}.noticeboard-card p{margin:0;line-height:1.5}.noticeboard-card-top,.noticeboard-meta{display:flex;gap:7px;flex-wrap:wrap;align-items:center}.noticeboard-meta{font-size:.85rem;color:var(--muted)}.noticeboard-source-note{margin-top:auto;color:var(--muted);font-size:.82rem}.noticeboard-body{font-size:1.03rem;line-height:1.65}.noticeboard-attachments{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}.noticeboard-attachment{border:1px solid var(--line);background:var(--surface);text-decoration:none;color:var(--text);padding:12px;display:grid;gap:7px;min-width:0}.noticeboard-attachment img{width:100%;height:150px;object-fit:cover}.noticeboard-attachment strong{overflow-wrap:anywhere}.noticeboard-attachment small{color:var(--muted)}.noticeboard-file-icon{display:grid;place-items:center;height:150px;background:color-mix(in srgb,var(--brand-primary) 9%,#fff);color:var(--brand-primary);font-weight:700;font-size:1.5rem}.noticeboard-file-list{display:grid;gap:8px}.noticeboard-file-row{display:flex;justify-content:space-between;gap:14px;align-items:center;border:1px solid var(--line);padding:10px 12px}.noticeboard-file-row>div:first-child{min-width:0;display:grid}.noticeboard-file-row strong{overflow-wrap:anywhere}.noticeboard-file-row small{color:var(--muted)}.dashboard-notice-list{display:grid;gap:0}.dashboard-notice-list a{display:grid;grid-template-columns:32px 1fr;gap:10px;align-items:center;padding:10px 4px;border-bottom:1px solid var(--line);text-decoration:none;color:var(--text)}.dashboard-notice-list a:last-child{border-bottom:0}.dashboard-notice-list strong,.dashboard-notice-list small{display:block}.dashboard-notice-list small{color:var(--muted);margin-top:2px}@media(max-width:640px){.noticeboard-grid{grid-template-columns:1fr}.noticeboard-file-row{align-items:flex-start;flex-direction:column}.noticeboard-attachments{grid-template-columns:1fr}}


/* 0.6.13.1 Schaukasten Layout-Hotfix */
.noticeboard-page-head{max-width:1120px}.noticeboard-tabs{display:flex;align-items:center;gap:8px;max-width:1120px;margin:-8px 0 22px;padding-bottom:12px;border-bottom:1px solid var(--line)}.noticeboard-tabs a{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 15px;border:1px solid var(--line);background:var(--surface);color:var(--text);text-decoration:none}.noticeboard-tabs a:hover{border-color:var(--brand-primary);color:var(--brand-primary)}.noticeboard-tabs a.active{background:var(--brand-primary);border-color:var(--brand-primary);color:#fff}.noticeboard-section{max-width:1120px}.noticeboard-section-head{align-items:center;margin-bottom:14px}.noticeboard-section-head h2{margin-bottom:4px}.noticeboard-section-head p{margin:0;color:var(--muted);line-height:1.45}.noticeboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,390px),1fr));gap:18px;max-width:1120px}.noticeboard-card{min-width:0;display:grid;grid-template-rows:auto auto auto minmax(0,1fr) auto;gap:11px;align-content:start;overflow:hidden}.noticeboard-card.calendar-source{color:inherit;text-decoration:none;border-left:4px solid color-mix(in srgb,var(--brand-primary) 55%,var(--line))}.noticeboard-card.calendar-source.very-important{border-left-color:#a43b32;box-shadow:0 0 0 1px rgba(164,59,50,.16),var(--shadow)}.noticeboard-card-title{margin:0!important;font-size:1.3rem!important;line-height:1.22;font-weight:400!important;overflow-wrap:anywhere}.noticeboard-card-title a{color:var(--text)!important;text-decoration:none}.noticeboard-card-title a:hover{color:var(--brand-primary)!important}.noticeboard-date-line{margin:0!important;line-height:1.45}.noticeboard-calendar-description{line-height:1.55;overflow-wrap:anywhere;word-break:normal}.noticeboard-calendar-description br+br{content:"";display:block;margin-top:.45em}.noticeboard-card-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-top:4px;border-top:1px solid color-mix(in srgb,var(--line) 75%,transparent)}.noticeboard-source-note{margin:0;color:var(--muted);font-size:.8rem;font-style:italic}.noticeboard-more-link{color:var(--brand-primary);font-size:.86rem;text-decoration:none;font-weight:400;white-space:nowrap}.noticeboard-more-link:hover{text-decoration:underline}.noticeboard-card-actions{justify-content:flex-start;margin-top:auto}.noticeboard-empty{max-width:1120px}.noticeboard-card-top{min-height:26px}.noticeboard-card-top .badge{white-space:nowrap}.noticeboard-card .badge.important{background:#fff3c4;color:#7d5900}.noticeboard-card.very-important .badge.important{background:#f8e8e6;color:#8d3029}.noticeboard-post-section{padding-top:2px}
@media(max-width:720px){.noticeboard-page-head{gap:14px}.noticeboard-page-head .row-actions{width:100%;justify-content:flex-start}.noticeboard-tabs{margin-top:-2px;overflow-x:auto;padding-bottom:10px}.noticeboard-tabs a{flex:0 0 auto}.noticeboard-section-head{align-items:flex-start}.noticeboard-section-head .button{width:100%}.noticeboard-grid{grid-template-columns:1fr;gap:14px}.noticeboard-card{padding:18px;gap:10px}.noticeboard-card-footer{align-items:flex-start;flex-direction:column}.noticeboard-more-link{white-space:normal}.noticeboard-calendar-description{font-size:.98rem}}

/* 0.6.14.3 – Einheitliche Portal-Symbole */
.portal-nav-icon,.portal-heading-icon,.module-svg-icon,.portal-preview-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;line-height:1}.portal-nav-icon svg,.portal-heading-icon svg,.module-svg-icon svg,.portal-preview-icon svg{display:block;width:100%;height:100%}.portal-nav-icon{width:1.05em;height:1.05em}.nav-with-icon,.nav-label{display:inline-flex;align-items:center;gap:8px;min-width:0}.desktop-main-nav>a.nav-with-icon{display:inline-flex}.header-utility .nav-with-icon{display:inline-flex;align-items:center;gap:6px}.admin-dropdown summary .nav-label{gap:7px}.desktop-main-nav .admin-dropdown-menu a{display:flex;align-items:center;gap:10px}.desktop-main-nav .admin-dropdown-menu .portal-nav-icon{width:18px;height:18px;color:var(--menu-active);opacity:.82}.mobile-menu-panel .nav-label{gap:11px;min-width:0}.mobile-menu-panel .portal-nav-icon{width:20px;height:20px}.mobile-admin-submenu .portal-nav-icon{width:18px;height:18px}.portal-heading-icon{width:.78em;height:.78em;margin-right:.28em;vertical-align:-.04em;color:currentColor}.page-head h1{display:flex;align-items:center;gap:0;flex-wrap:wrap}.module-icon .module-svg-icon{width:27px;height:27px}.module-card.without-icon{grid-template-columns:1fr}.module-card.without-icon>div{grid-column:1}.design-icon-toggle{align-items:flex-start}.design-icon-toggle>span{display:grid;gap:3px}.design-icon-toggle small{font-weight:300;line-height:1.45}.preview-ui-icon{display:inline-flex;align-items:center}.portal-preview-icon{width:1em;height:1em}.preview-menu-label{display:flex;align-items:center;gap:7px}.preview-body h1{display:flex;align-items:center;gap:.18em}.design-preview.preview-icons-off .preview-ui-icon{display:none}.portal-icons-off .page-head h1{display:block}
@media(max-width:699px){.desktop-main-nav .portal-nav-icon{width:18px;height:18px}.portal-heading-icon{width:.75em;height:.75em;margin-right:.22em}.mobile-menu-panel .nav-label>span:last-child{overflow-wrap:anywhere}}

/* 0.6.14.4 – Portal-Symbole Größen-/Menü-Hotfix */
/* Desktop: Navigationssymbole bewusst klein und unabhängig von SVG-/Schrift-Defaults halten. */
@media(min-width:1000px){
  .desktop-main-nav>a.nav-with-icon,
  .desktop-main-nav .admin-dropdown>summary{display:flex!important;flex-direction:row!important;align-items:center!important;gap:7px!important;white-space:nowrap}
  .desktop-main-nav .portal-nav-icon{width:17px!important;height:17px!important;min-width:17px!important;min-height:17px!important;max-width:17px!important;max-height:17px!important;flex:0 0 17px!important;overflow:hidden!important}
  .desktop-main-nav .portal-nav-icon>svg{display:block!important;width:17px!important;height:17px!important;min-width:17px!important;min-height:17px!important;max-width:17px!important;max-height:17px!important}
  .header-utility .portal-nav-icon{width:15px!important;height:15px!important;min-width:15px!important;min-height:15px!important;max-width:15px!important;max-height:15px!important;flex:0 0 15px!important;overflow:hidden!important}
  .header-utility .portal-nav-icon>svg{width:15px!important;height:15px!important;max-width:15px!important;max-height:15px!important}
  .desktop-main-nav .admin-dropdown-menu .portal-nav-icon{width:16px!important;height:16px!important;min-width:16px!important;min-height:16px!important;max-width:16px!important;max-height:16px!important;flex:0 0 16px!important;overflow:hidden!important}
  .desktop-main-nav .admin-dropdown-menu .portal-nav-icon>svg{width:16px!important;height:16px!important;max-width:16px!important;max-height:16px!important}
}

/* Seitentitel: proportional zur Überschrift, aber niemals übergroß. */
.page-head .portal-heading-icon{width:clamp(24px,.78em,42px)!important;height:clamp(24px,.78em,42px)!important;min-width:24px!important;min-height:24px!important;max-width:42px!important;max-height:42px!important;flex:0 0 auto!important;overflow:hidden!important}
.page-head .portal-heading-icon>svg{display:block!important;width:100%!important;height:100%!important;max-width:42px!important;max-height:42px!important}

/* Dashboard-Karten dürfen etwas größer sein, bleiben aber fest begrenzt. */
.module-icon .module-svg-icon{width:27px!important;height:27px!important;min-width:27px!important;min-height:27px!important;max-width:27px!important;max-height:27px!important;overflow:hidden!important}
.module-icon .module-svg-icon>svg{width:27px!important;height:27px!important;max-width:27px!important;max-height:27px!important}

/* Mobile Navigation: Symbol, Text und Pfeil bleiben immer in einer horizontalen Zeile. */
.mobile-menu-panel .nav-label{display:flex!important;flex-direction:row!important;align-items:center!important;gap:11px!important;min-width:0!important;transform:none!important;writing-mode:horizontal-tb!important}
.mobile-menu-panel .nav-label>span:last-child{display:block!important;min-width:0!important;transform:none!important;writing-mode:horizontal-tb!important;text-orientation:mixed!important;overflow-wrap:anywhere}
.mobile-menu-panel .portal-nav-icon{width:20px!important;height:20px!important;min-width:20px!important;min-height:20px!important;max-width:20px!important;max-height:20px!important;flex:0 0 20px!important;transform:none!important;overflow:hidden!important}
.mobile-menu-panel .portal-nav-icon>svg{display:block!important;width:20px!important;height:20px!important;max-width:20px!important;max-height:20px!important;transform:none!important}
.mobile-admin-submenu .portal-nav-icon{width:18px!important;height:18px!important;min-width:18px!important;min-height:18px!important;max-width:18px!important;max-height:18px!important;flex-basis:18px!important}
.mobile-admin-submenu .portal-nav-icon>svg{width:18px!important;height:18px!important;max-width:18px!important;max-height:18px!important}

/* Die alte Regel rotierte beim Öffnen alle span-Elemente im Summary und damit auch Icon + Text. */
.mobile-admin-dropdown[open] summary span{transform:none!important}
.mobile-admin-dropdown summary{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:space-between!important;gap:12px!important}
.mobile-admin-dropdown summary>.nav-label{flex:1 1 auto!important}
.mobile-admin-chevron{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:20px!important;height:20px!important;flex:0 0 20px!important;transform:rotate(0deg)!important;transition:transform .15s ease!important;writing-mode:horizontal-tb!important}
.mobile-admin-dropdown[open] summary>.mobile-admin-chevron{transform:rotate(90deg)!important}
.admin-chevron{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}

@media(max-width:520px){
  .mobile-menu-panel .portal-nav-icon{width:19px!important;height:19px!important;min-width:19px!important;min-height:19px!important;max-width:19px!important;max-height:19px!important;flex-basis:19px!important}
  .mobile-menu-panel .portal-nav-icon>svg{width:19px!important;height:19px!important;max-width:19px!important;max-height:19px!important}
  .page-head .portal-heading-icon{width:clamp(22px,.72em,34px)!important;height:clamp(22px,.72em,34px)!important;min-width:22px!important;min-height:22px!important;max-width:34px!important;max-height:34px!important}
}

/* 0.6.14.5.1 – Flexible Logo-Verwaltung: kompakter, responsiver Auswahlbereich */
.site-logo{width:var(--portal-logo-desktop-width,120px)!important;height:auto!important;max-height:var(--portal-logo-max-height,92px)!important;object-fit:contain}
.mobile-menu-head img,.guest-brandbar img{width:var(--portal-logo-mobile-width,105px)!important;height:auto!important;max-height:var(--portal-logo-max-height,92px)!important;object-fit:contain}
.logo-source-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:stretch}.logo-source-card{display:flex;flex-direction:column;gap:12px;min-width:0;min-height:0;padding:16px;border:1px solid var(--line);background:var(--surface);cursor:pointer;overflow:hidden}.logo-source-card.is-selected{border-color:var(--brand-primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--brand-primary) 18%,transparent)}.logo-source-head{display:grid;grid-template-columns:22px minmax(0,1fr);gap:10px;align-items:start}.logo-source-head input[type=radio]{width:18px;height:18px;min-height:0;margin:3px 0 0;padding:0}.logo-source-head strong,.logo-source-head small{display:block}.logo-source-head strong{font-size:1rem;line-height:1.25}.logo-source-head small{margin-top:5px;color:var(--muted);line-height:1.4}.logo-source-preview{display:flex;align-items:center;justify-content:center;width:100%;height:120px;min-height:120px;padding:10px;border:1px solid var(--line);background:color-mix(in srgb,var(--surface) 94%,var(--brand-primary) 6%);overflow:hidden}.logo-source-preview img{display:block;max-width:100%;max-height:96px;width:auto;height:auto;object-fit:contain}.logo-preview-placeholder{font-size:.9rem;color:var(--muted);text-align:center}.logo-upload-field{display:block;margin-top:4px}.logo-upload-field input[type=file]{margin-top:7px;max-width:100%}.logo-size-grid{margin-top:4px}.preview-live-logo{display:block;width:120px;max-width:42%;height:auto;max-height:70px;object-fit:contain}.preview-header{gap:14px}.design-form{min-width:0}
@media(max-width:900px){.logo-source-grid{grid-template-columns:1fr}.logo-source-card{padding:14px}.logo-source-preview{height:100px;min-height:100px}.logo-source-preview img{max-height:78px}.logo-size-grid{grid-template-columns:1fr}.design-preview{position:static}}
@media(max-width:520px){.logo-source-grid{gap:10px}.logo-source-card{padding:12px;gap:10px}.logo-source-head{grid-template-columns:20px minmax(0,1fr);gap:9px}.logo-source-head strong{font-size:.98rem}.logo-source-head small{font-size:.84rem}.logo-source-preview{height:82px;min-height:82px;padding:8px}.logo-source-preview img{max-height:64px}.logo-upload-field input[type=file]{font-size:.9rem;padding:8px}.logo-size-grid .design-range{grid-template-columns:minmax(0,1fr) 58px}.preview-live-logo{max-width:36%;max-height:58px}}

/* 0.6.14.6.2 – Portal-Logo immer mit voller Deckkraft */
.site-logo,.mobile-menu-head img,.guest-brandbar img{opacity:1!important;filter:none!important;mix-blend-mode:normal!important}
