:root{--red:#df0038;--ink:#465052;--bg:#f4f6f7;--line:#d9dfe1;--ok:#147a43;--warn:#9a6400}*{box-sizing:border-box}body{margin:0;font:16px/1.45 system-ui,-apple-system,Segoe UI,Arial,sans-serif;color:#263033;background:var(--bg)}.top{background:#fff;border-bottom:1px solid var(--line);padding:14px max(18px,calc((100% - 1180px)/2));display:flex;justify-content:space-between;align-items:center;gap:20px}.brand{display:flex;align-items:center;gap:16px;text-decoration:none;color:var(--ink);font-weight:700}.brand img{width:240px;max-width:48vw;height:auto}.brand span{border-left:1px solid var(--line);padding-left:16px}.top nav{display:flex;gap:14px;flex-wrap:wrap}.top nav a{color:var(--ink);text-decoration:none;font-weight:600}.wrap{max-width:1180px;margin:28px auto;padding:0 18px}h1{font-size:clamp(1.7rem,3vw,2.35rem);margin:.2em 0 .7em}h2{font-size:1.2rem}.card{background:white;border:1px solid var(--line);border-radius:14px;padding:22px;margin:16px 0;box-shadow:0 2px 10px #00000008}.grid{display:grid;grid-template-columns:repeat(12,1fr);gap:16px}.col6{grid-column:span 6}.col4{grid-column:span 4}.col12{grid-column:1/-1}label{display:block;font-weight:700;margin:12px 0 6px}input,select,textarea{width:100%;padding:12px;border:1px solid #b9c2c5;border-radius:9px;font:inherit;background:#fff}textarea{min-height:100px}.btn{display:inline-block;border:0;border-radius:9px;background:var(--red);color:white;padding:11px 16px;font-weight:700;text-decoration:none;cursor:pointer}.btn.secondary{background:#586467}.btn.light{background:#eef1f2;color:#293235}.toolbar{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.flash{padding:13px 16px;border-radius:9px;margin:12px 0}.flash.ok{background:#e6f5ed;color:#0c5f34}.flash.err{background:#fde8ec;color:#8e1230}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:12px}.stat{background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px}.stat b{display:block;font-size:1.8rem;color:var(--red)}table{width:100%;border-collapse:collapse;background:#fff}th,td{text-align:left;padding:11px;border-bottom:1px solid var(--line);vertical-align:top}th{font-size:.86rem;color:#5c6769}.badge{display:inline-block;padding:4px 9px;border-radius:999px;background:#eef1f2;font-size:.84rem}.badge.accepted,.badge.completed,.badge.paper{background:#e1f3e8;color:#126a3b}.badge.opened,.badge.sent,.badge.otp_sent{background:#fff1d8;color:#805000}.public{max-width:760px;margin:auto}.doc{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:10px;margin:10px 0}.check{display:flex;gap:10px;align-items:flex-start;margin:14px 0}.check input{width:auto;margin-top:5px}.muted{color:#657174;font-size:.93rem}.code{font-family:ui-monospace,monospace;background:#eef1f2;padding:8px;border-radius:7px;word-break:break-all}footer{color:#6b7678;font-size:.82rem;padding:30px 0}@media(max-width:800px){.top{align-items:flex-start;flex-direction:column}.brand img{width:190px}.brand span{display:none}.stats{grid-template-columns:repeat(2,1fr)}.col6,.col4{grid-column:1/-1}table,thead,tbody,tr,th,td{display:block}thead{display:none}tr{border:1px solid var(--line);border-radius:10px;margin:10px 0;padding:8px}td{border:0;padding:6px}.doc{align-items:flex-start;flex-direction:column}}

/* Phase 1b: zentrale Einstellungen und Textvorlagen */
.tabs{display:flex;gap:.5rem;flex-wrap:wrap;margin:0 0 1rem}.tabs a{padding:.7rem 1rem;border:1px solid #d9dde2;border-radius:10px;text-decoration:none;background:#fff;color:#2b3440}.tabs a.active{background:#18364a;color:#fff;border-color:#18364a}.formgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.formgrid label{margin:0}.inlineform{display:flex;gap:.75rem;align-items:end;flex-wrap:wrap}.inlineform input{max-width:420px}.hint{background:#f3f6f8;border-left:4px solid #18364a;padding:1rem;margin-bottom:1.25rem;border-radius:6px}.hint code{display:inline-block;margin:.2rem;padding:.15rem .35rem;background:#fff;border:1px solid #dce2e6;border-radius:4px}.small{font-size:.88rem}select{width:100%;padding:.78rem;border:1px solid #c9d0d6;border-radius:8px;background:#fff;font:inherit}textarea{width:100%;padding:.78rem;border:1px solid #c9d0d6;border-radius:8px;font:inherit;resize:vertical}label textarea,label input,label select{margin-top:.35rem}@media(max-width:720px){.formgrid{grid-template-columns:1fr}.tabs a{flex:1;text-align:center}.top nav{gap:.25rem}.top nav a{padding:.45rem .55rem}}


/* Version 1.1.3: robuste Darstellung auf Desktop, Tablet und Smartphone */
html{-webkit-text-size-adjust:100%}body{overflow-x:hidden}.wrap,.grid,.card,.doc,.formgrid>*{min-width:0}
p,li,td,th,label,span,strong,a{overflow-wrap:anywhere}.card h1,.card h2,.card h3{overflow-wrap:break-word}
.top{position:relative}.top nav{align-items:center}.top nav a{white-space:nowrap;padding:.35rem .15rem}
.code{white-space:normal;overflow-wrap:anywhere;word-break:break-word}
.doc>div{min-width:0;flex:1}.doc .muted{display:block;overflow-wrap:anywhere}.doc .btn{flex:0 0 auto}
.toolbar form{margin:0;min-width:0}.toolbar .btn{max-width:100%;white-space:normal;text-align:center}
.check span{min-width:0;overflow-wrap:anywhere}.check input{flex:0 0 auto}
.table-wrap{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
.acceptance-box{background:#f7f9fa;border:1px solid var(--line);border-radius:10px;padding:14px;margin:14px 0}.acceptance-box p{margin:.35rem 0}
@media(min-width:801px) and (max-width:1100px){.top{padding-left:18px;padding-right:18px}.brand img{width:205px}.top nav{gap:9px}.top nav a{font-size:.92rem}.stats{grid-template-columns:repeat(3,1fr)}}
@media(max-width:800px){.wrap{margin:18px auto;padding:0 14px}.top{padding:12px 14px;gap:10px}.top nav{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.top nav a{display:block;border:1px solid var(--line);border-radius:8px;padding:8px;text-align:center;background:#fff;white-space:normal}.card{padding:18px;border-radius:12px}.toolbar{align-items:stretch}.toolbar form{flex:1 1 220px}.toolbar form .btn,.toolbar>a.btn{width:100%}.doc .btn{width:100%;text-align:center}.public h1{font-size:1.65rem}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){body{font-size:15px}.brand img{width:175px;max-width:70vw}.top nav{grid-template-columns:1fr 1fr}.wrap{padding:0 10px}.card{padding:15px}.stats{grid-template-columns:1fr}.tabs{display:grid;grid-template-columns:1fr}.tabs a{width:100%}.btn{padding:11px 13px}.doc{padding:12px}.inlineform{display:block}.inlineform input{max-width:none;margin-bottom:10px}.inlineform .btn{width:100%}}
@media(orientation:landscape) and (max-height:600px) and (max-width:1000px){.top{padding-top:8px;padding-bottom:8px}.brand img{width:160px}.wrap{margin-top:14px}.card{margin:12px 0}}
@media(min-width:801px) and (max-width:900px){
  .top{align-items:flex-start;flex-direction:column;padding:12px 16px;gap:10px}
  .top nav{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
  .top nav a{display:block;border:1px solid var(--line);border-radius:8px;padding:8px;text-align:center;background:#fff;white-space:normal}
  .brand img{width:190px}.brand span{display:inline-block}
}
/* Version 1.2.0: mehrere Beteiligte und universelle Vorgänge */
.participant-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:12px;align-items:end;padding:14px;border:1px solid var(--line);border-radius:10px;margin:10px 0;background:#fafbfb}.participant-row label{margin:0}.participant-cards{display:grid;gap:12px}.participant-card{display:grid;grid-template-columns:minmax(180px,1fr) auto minmax(240px,1.4fr) auto;gap:14px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:10px}.participant-card form{margin:0}.badge.partially_accepted{background:#e8eef9;color:#315485}
@media(max-width:900px){.participant-card{grid-template-columns:1fr auto}.participant-card .code{grid-column:1/-1}.participant-card form{grid-column:1/-1}.participant-card form .btn{width:100%}}
@media(max-width:650px){.participant-row{grid-template-columns:1fr}.participant-row .btn{width:100%}.participant-card{grid-template-columns:1fr}.participant-card>*{grid-column:1!important}.participant-card .badge{justify-self:start}}
/* Version 1.3.1: eindeutige Vorgangsnummern und Wartung */
.badge.declined{background:#fde8ec;color:#8e1230}.danger-zone{margin-top:16px;padding:14px;border:1px solid #e7a6b5;border-radius:10px;background:#fff7f8}.danger-zone .btn{margin-top:8px}.inlineform select{min-width:150px}.inlineform input[type=password]{min-width:180px}
@media(max-width:800px){.inlineform select,.inlineform input[type=password]{min-width:0;width:100%}.inlineform{align-items:stretch}.inlineform .btn{width:100%}}
/* Version 1.5.1: öffentliches Dokumenten- und Zustimmungsportal */
.public-surface{background:linear-gradient(180deg,#f7f9fa 0,#eef2f3 100%);min-height:100vh}.public-surface .top{box-shadow:0 1px 12px #1c2b310c}.public-surface .brand span{font-weight:600}.portal-home,.portal-case{max-width:860px}.portal-hero{padding:34px 6px 12px}.portal-kicker{font-size:.78rem;letter-spacing:.09em;text-transform:uppercase;font-weight:800;color:var(--red);margin-bottom:8px}.portal-hero h1,.case-heading h1{max-width:760px;margin:.15em 0 .45em}.portal-hero p{font-size:1.08rem;max-width:720px;color:#546164}.access-card{max-width:620px;padding:28px}.portal-primary{min-height:46px}.security-note{display:flex;gap:12px;margin-top:22px;padding:14px;border-radius:10px;background:#f1f5f6}.security-note strong{white-space:nowrap}.security-note span{color:#5c686b}.case-heading{padding:16px 4px 4px}.case-meta{display:flex;flex-wrap:wrap;gap:8px 18px;color:#5d696c}.case-meta span{position:relative}.case-meta span+span:before{content:'•';position:absolute;left:-12px}.progress{list-style:none;padding:0;margin:22px 0;display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.progress li{display:flex;align-items:center;gap:8px;padding:10px 12px;border:1px solid var(--line);background:#fff;color:#748083;border-radius:10px;font-size:.9rem}.progress li span{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#edf1f2;font-weight:800}.progress li.active{border-color:#b8d4c4;color:#24553a}.progress li.active span{background:#dff1e6;color:#126a3b}.document-list{display:grid;gap:12px;margin-top:18px}.document-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:12px;background:#fbfcfc}.document-icon{display:grid;place-items:center;width:46px;height:52px;background:#fff0f3;color:#a81436;border-radius:8px;font-size:.72rem;font-weight:900}.document-card strong,.document-card span{display:block}.document-card span{color:#657174;font-size:.9rem;margin-top:3px}.document-actions{display:flex;gap:8px}.pdf-preview{height:min(72vh,760px);border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#eef1f2}.pdf-preview iframe{width:100%;height:100%;border:0}.declaration-card{border-top:4px solid var(--red)}.declaration-check{padding:13px;border:1px solid var(--line);border-radius:10px;background:#fbfcfc}.field-help{display:block;font-weight:400;color:#657174;font-size:.86rem;margin-top:6px}.alternative-actions{border-top:1px solid var(--line);margin-top:24px;padding-top:16px}.otp-card{max-width:650px;margin-left:auto;margin-right:auto}.otp-input{text-align:center;letter-spacing:.35em;font-size:1.5rem;font-weight:800;max-width:280px}.state-card{text-align:center;padding:36px}.state-icon{display:grid;place-items:center;width:58px;height:58px;border-radius:50%;margin:0 auto 14px;background:#eef1f2;font-size:1.7rem;font-weight:900}.state-card.success .state-icon{background:#e1f3e8;color:#126a3b}.receipt{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:22px 0;text-align:left}.receipt>div{padding:12px;border-radius:10px;background:#f5f7f8}.receipt span,.receipt strong{display:block}.receipt span{font-size:.78rem;color:#657174;margin-bottom:3px}.status-confirmed{font-weight:700;color:#126a3b;margin-top:18px}
@media(max-width:700px){.portal-hero{padding-top:18px}.access-card{padding:20px}.security-note{display:block}.security-note strong{display:block;margin-bottom:4px}.progress{grid-template-columns:1fr}.document-card{grid-template-columns:auto 1fr}.document-actions{grid-column:1/-1}.document-actions .btn{flex:1;text-align:center}.pdf-preview{height:68vh}.receipt{grid-template-columns:1fr}.state-card{padding:24px 18px}.case-meta{display:grid;gap:3px}.case-meta span+span:before{display:none}}
/* Version 1.5.3: robuste Darstellung der sechsstelligen Codeeingabe */
.otp-card form label{display:block;line-height:1.45}
.otp-card .otp-input{display:block;width:min(100%,280px);box-sizing:border-box;margin:10px 0 0;padding:12px 14px;line-height:1.25;letter-spacing:.28em}
@media(max-width:420px){.otp-card .otp-input{width:100%;max-width:none;font-size:1.35rem;letter-spacing:.22em}}

.badge.callback{background:#fff1d8;color:#805000}
