:root{color-scheme:light;--fd-pink:#ff0070;--fd-black:#000;--fd-white:#fff;--fd-ink:#141414;--fd-muted:#6e6e73;--fd-line:#dedede;--fd-surface:#f5f5f3;--fd-radius:18px;--fd-shadow:0 18px 60px #00000014;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{background:var(--fd-surface);min-width:320px}body{min-height:100vh;color:var(--fd-ink);background:linear-gradient(112deg, transparent 0 72%, #ff00700a 72% 73%, transparent 73%), var(--fd-surface);margin:0}a{color:inherit}button,input{font:inherit}button:focus-visible,a:focus-visible,input:focus-visible{outline-offset:3px;outline:3px solid #ff007059}.portal-shell{min-height:100vh}.portal-brand{background-image:url(/images/brand/Future%20Department%20Logo.png);background-position:0;background-repeat:no-repeat;background-size:contain;flex:none;width:clamp(11rem,16vw,13.5rem);height:3.15rem;text-decoration:none;display:block}.portal-brand>span{display:none}.portal-topbar{background:var(--fd-black);border-bottom:1px solid #202020;justify-content:space-between;align-items:center;min-height:74px;padding:0 32px;display:flex}.portal-topbar__meta{color:#c7c7c7;letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.82rem;font-weight:700}.login-wrap{grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr);min-height:calc(100vh - 74px);display:grid}.login-stage{color:var(--fd-white);background:linear-gradient(158deg, transparent 0 58%, #ff007038 58% 59%, transparent 59%), var(--fd-black);flex-direction:column;justify-content:flex-end;padding:clamp(48px,8vw,110px);display:flex}.login-stage__eyebrow,.app-eyebrow{color:var(--fd-pink);letter-spacing:.12em;text-transform:uppercase;margin:0 0 .7rem;font-size:.78rem;font-weight:800}.login-stage h1{letter-spacing:-.065em;max-width:12ch;margin:0;font-size:clamp(3.2rem,7vw,7rem);line-height:.88}.login-stage p:last-child{color:#b9b9b9;max-width:44rem;margin:2rem 0 0;font-size:1.08rem;line-height:1.6}.login-panel{background:var(--fd-white);justify-content:center;align-items:center;padding:48px;display:flex}.login-card{width:min(100%,430px)}.login-card h2{letter-spacing:-.05em;margin:0;font-size:clamp(2rem,4vw,3rem)}.login-card__intro{color:var(--fd-muted);margin:.8rem 0 2.2rem;line-height:1.55}.portal-form{gap:1rem;display:grid}.portal-field{gap:.45rem;min-width:0;display:grid}.portal-field span{font-size:.82rem;font-weight:750}.portal-field input{border:1px solid var(--fd-line);background:var(--fd-white);border-radius:10px;width:100%;min-width:0;min-height:50px;padding:0 14px}.portal-field input:disabled{color:#8b8b8b;background:#f3f3f3}.portal-button{box-sizing:border-box;text-align:center;white-space:nowrap;min-height:50px;color:var(--fd-white);background:var(--fd-black);border:0;border-radius:10px;justify-content:center;align-items:center;margin-top:.4rem;padding:0 1.1rem;font-weight:800;line-height:1.1;text-decoration:none;display:inline-flex}.portal-button:disabled{cursor:not-allowed;opacity:.45}.portal-note{border-left:3px solid var(--fd-pink);color:var(--fd-muted);background:#f7f7f7;margin:1.2rem 0 0;padding:1rem;font-size:.9rem;line-height:1.5}.app-shell{grid-template-columns:260px minmax(0,1fr);min-height:100vh;display:grid}.app-sidebar{color:var(--fd-white);background:var(--fd-black);flex-direction:column;padding:28px 22px;display:flex}.app-sidebar .portal-brand{margin-bottom:3rem}.app-nav{gap:.35rem;display:grid}.app-nav a{color:#a9a9a9;border-radius:9px;padding:.78rem .85rem;font-size:.92rem;font-weight:700;text-decoration:none}.app-nav a[aria-current=page]{color:var(--fd-white);background:#1c1c1c}.app-nav a[aria-current=page]:before{content:"";background:var(--fd-pink);border-radius:999px;width:.45rem;height:.45rem;margin-right:.6rem;display:inline-block}.app-main{padding:clamp(28px,4vw,64px)}.app-header{justify-content:space-between;align-items:end;gap:2rem;margin-bottom:2.4rem;display:flex}.app-header h1{letter-spacing:-.065em;margin:0;font-size:clamp(2.4rem,5vw,4.8rem);line-height:.95}.app-header p:last-child{max-width:34rem;color:var(--fd-muted);margin:0;line-height:1.55}.dashboard-grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:18px;display:grid}.portal-card{border:1px solid var(--fd-line);border-radius:var(--fd-radius);background:var(--fd-white);box-shadow:var(--fd-shadow);padding:24px}.portal-card--wide{grid-column:span 8}.portal-card--side{grid-column:span 4}.portal-card--full{grid-column:1/-1}.portal-card__label{color:var(--fd-muted);letter-spacing:.1em;text-transform:uppercase;margin:0 0 1rem;font-size:.74rem;font-weight:800}.empty-state{text-align:center;place-items:center;min-height:220px;display:grid}.empty-state strong{letter-spacing:-.03em;margin-bottom:.5rem;font-size:1.35rem;display:block}.empty-state span{max-width:36rem;color:var(--fd-muted);line-height:1.5;display:block}.status-line{border-top:1px solid var(--fd-line);justify-content:space-between;align-items:center;gap:1rem;padding:1rem 0;display:flex}.status-line:first-of-type{border-top:0}.status-badge{color:#2f5c43;align-items:center;gap:.45rem;font-size:.82rem;font-weight:800;display:inline-flex}.status-badge:before{content:"";background:#35a568;border-radius:999px;width:.5rem;height:.5rem}@media (width<=900px){.login-wrap{grid-template-columns:1fr}.login-stage{min-height:46vh}.app-shell{grid-template-columns:1fr}.app-sidebar{z-index:20;border-bottom:1px solid #202020;min-width:0;padding:14px clamp(20px,4vw,40px) 12px;display:block;position:sticky;top:0}.app-sidebar .portal-brand{width:10.5rem;height:2.5rem;margin-bottom:.7rem}.app-nav{overscroll-behavior-inline:contain;scrollbar-width:none;gap:.35rem;max-width:100%;padding-bottom:.15rem;display:flex;overflow-x:auto}.app-nav::-webkit-scrollbar{display:none}.app-nav a{white-space:nowrap;flex:none}.portal-card--wide,.portal-card--side{grid-column:1/-1}}@media (width<=620px){.portal-topbar{padding:0 18px}.portal-brand{width:10.5rem}.portal-topbar__meta{display:none}.login-stage,.login-panel,.app-main{padding:28px 20px}.app-sidebar{padding-left:20px;padding-right:20px}.login-stage h1{font-size:clamp(3rem,16vw,5rem)}.app-header{display:block}.app-header p:last-child{margin-top:1rem}.empty-state{min-height:160px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}button,input,select{font:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline-offset:3px;outline:3px solid #ff007059}[hidden]{display:none!important}.app-header--portal{align-items:center}.app-account{color:var(--fd-muted);align-items:center;gap:.9rem;font-size:.9rem;font-weight:700;display:flex}.portal-button--secondary{border:1px solid var(--fd-line);min-height:40px;color:var(--fd-ink);background:var(--fd-white);margin:0;padding:0 1rem}.portal-alert{color:#7a1f1f;background:#fff1f1;border:1px solid #e7a2a2;border-radius:10px;margin:0 0 1.2rem;padding:.9rem 1rem}.configurator-card{margin-bottom:18px}.section-heading{justify-content:space-between;align-items:end;gap:2rem;margin-bottom:1.5rem;display:flex}.section-heading--compact{margin-bottom:1rem}.section-heading h2{letter-spacing:-.045em;margin:0;font-size:clamp(1.7rem,3vw,2.6rem)}.section-heading>p{max-width:42rem;color:var(--fd-muted);margin:0;line-height:1.5}.project-form{gap:1.1rem;display:grid}.form-section{border:1px solid var(--fd-line);border-radius:14px;min-width:0;margin:0;padding:1.25rem}.form-section legend{letter-spacing:.06em;text-transform:uppercase;padding:0 .5rem;font-size:.82rem;font-weight:850}.form-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.form-grid--compact{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:1rem}.portal-field--wide{grid-column:span 2}.portal-field small{color:var(--fd-muted);font-weight:600}.portal-field input,.portal-field select{border:1px solid var(--fd-line);width:100%;min-height:48px;color:var(--fd-ink);background:var(--fd-white);border-radius:10px;padding:0 13px}.portal-field select{appearance:none;background-image:linear-gradient(45deg,#0000 50%,#777 50%),linear-gradient(135deg,#777 50%,#0000 50%);background-position:calc(100% - 17px) 20px,calc(100% - 12px) 20px;background-repeat:no-repeat;background-size:5px 5px}.choice-grid,.toggle-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem;display:grid}.choice-card,.toggle-card{border:1px solid var(--fd-line);cursor:pointer;background:var(--fd-white);border-radius:11px;align-items:flex-start;gap:.75rem;min-height:58px;padding:.9rem;display:flex}.choice-card:has(input:checked),.toggle-card:has(input:checked){border-color:var(--fd-pink);box-shadow:inset 0 0 0 1px var(--fd-pink)}.choice-card input,.toggle-card input{width:1rem;height:1rem;accent-color:var(--fd-pink);margin:.15rem 0 0}.choice-card span{font-size:.9rem;font-weight:750}.toggle-grid{margin-top:1rem}.toggle-card strong,.toggle-card small{display:block}.toggle-card strong{margin-bottom:.25rem;font-size:.9rem}.toggle-card small{color:var(--fd-muted);font-size:.78rem;line-height:1.4}.form-actions{justify-content:flex-end;align-items:center;gap:1rem;display:flex}.form-actions .portal-button{width:auto;min-width:180px;margin:0;padding:0 1.2rem}.form-status{color:var(--fd-muted);margin:0 auto 0 0;font-size:.9rem}.project-list-card{margin-top:18px}.project-list{gap:.85rem;display:grid}.project-card{border:1px solid var(--fd-line);background:#fbfbfa;border-radius:14px;padding:1.2rem}.project-card__top,.project-card__footer{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.project-card__eyebrow{color:var(--fd-muted);letter-spacing:.08em;text-transform:uppercase;margin:0 0 .35rem;font-size:.72rem;font-weight:800}.project-card h3{letter-spacing:-.035em;margin:0;font-size:1.4rem}.project-status{color:#555;text-transform:capitalize;background:#ececec;border-radius:999px;flex:none;padding:.35rem .55rem;font-size:.72rem;font-weight:800}.project-status--in_progress,.project-status--review{color:#71420c;background:#fff0cf}.project-status--waiting_customer{color:#7a1f1f;background:#ffe0e0}.project-status--completed{color:#25563a;background:#def4e6}.project-metrics{border:1px solid var(--fd-line);background:var(--fd-white);border-radius:10px;grid-template-columns:repeat(4,minmax(0,1fr));margin:1rem 0;display:grid;overflow:hidden}.project-metrics>div{border-right:1px solid var(--fd-line);min-width:0;padding:.8rem}.project-metrics>div:last-child{border-right:0}.project-metrics span,.project-metrics strong{display:block}.project-metrics span{color:var(--fd-muted);text-transform:uppercase;margin-bottom:.2rem;font-size:.7rem;font-weight:750}.project-metrics strong{overflow-wrap:anywhere;font-size:.88rem}.project-scope{padding:.2rem 0}.project-scope>strong{margin-bottom:.65rem;font-size:.85rem;display:block}.scope-chips{flex-wrap:wrap;gap:.4rem;display:flex}.scope-chips span{border:1px solid var(--fd-line);background:var(--fd-white);border-radius:999px;padding:.35rem .55rem;font-size:.78rem;font-weight:700}.project-scope p{color:var(--fd-muted);margin:.65rem 0 0;font-size:.82rem;line-height:1.45}.project-card__footer{border-top:1px solid var(--fd-line);color:var(--fd-muted);margin-top:1rem;padding-top:.8rem;font-size:.76rem}.scope-project-select{max-width:36rem;margin-bottom:1.2rem}.scope-workspace__content{gap:1rem;display:grid}.scope-project-heading{padding-bottom:.2rem}.scope-project-heading h3,.scope-version-panel h3,.scope-editor__heading h3{letter-spacing:-.03em;margin:0;font-size:1.35rem}.scope-version-panel,.scope-editor{border:1px solid var(--fd-line);background:#fbfbfa;border-radius:14px;padding:1.15rem}.scope-version-panel--pending{border-left:4px solid var(--fd-pink);background:#fff9fc}.scope-summary{margin-top:.9rem}.scope-summary p,.scope-version-panel__note,.scope-version-panel__evidence,.scope-editor__heading p{color:var(--fd-muted);margin:.7rem 0 0;font-size:.84rem;line-height:1.5}.scope-version-panel__evidence{border-top:1px solid var(--fd-line);padding-top:.75rem}.scope-editor{gap:1rem;display:grid}.scope-editor__heading p{max-width:48rem}.scope-editor__fields{margin-top:0}.scope-editor__actions{margin-top:.2rem}.scope-confirmation{border:1px solid var(--fd-line);background:var(--fd-white);cursor:pointer;border-radius:11px;align-items:flex-start;gap:.75rem;margin-top:1rem;padding:.9rem;display:flex}.scope-confirmation input{width:1rem;height:1rem;accent-color:var(--fd-pink);flex:none;margin:.18rem 0 0}.scope-confirmation span{font-size:.88rem;font-weight:700;line-height:1.5}.scope-confirmation__actions{justify-content:flex-end;align-items:center;gap:1rem;margin-top:.8rem;display:flex}.scope-confirmation__actions .portal-button{width:auto;min-width:210px;margin:0;padding:0 1.2rem}@media (width<=1100px){.form-grid,.form-grid--compact,.choice-grid,.toggle-grid,.project-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.project-metrics>div:nth-child(2n){border-right:0}.project-metrics>div:nth-child(n+3){border-top:1px solid var(--fd-line)}}@media (width<=700px){.app-header--portal,.section-heading,.project-card__top,.project-card__footer{display:block}.app-account{justify-content:space-between;margin-top:1rem}.section-heading>p{margin-top:.7rem}.form-grid,.form-grid--compact,.choice-grid,.toggle-grid,.project-metrics{grid-template-columns:1fr}.portal-field--wide{grid-column:auto}.project-metrics>div,.project-metrics>div:nth-child(2n){border-right:0;border-top:1px solid var(--fd-line)}.project-metrics>div:first-child{border-top:0}.project-status{margin-top:.7rem;display:inline-block}.project-card__footer span{margin-top:.25rem;display:block}.form-actions,.scope-confirmation__actions{display:block}.form-actions .portal-button,.scope-confirmation__actions .portal-button{width:100%;margin-top:.7rem}}.project-dashboard-card,.project-detail-layout,.scope-builder,.repeatable-list,.contract-documents{min-width:0}.project-dashboard-toolbar{justify-content:space-between;align-items:end;gap:32px;margin-bottom:32px;display:flex}.project-dashboard-toolbar h2,.project-detail-hero h2,.contract-acceptance-panel h3,.repeatable-heading h3,.scope-detail-group h3,.ongoing-service-summary h3,.nested-service h3{margin:0}.project-search-field{width:min(420px,100%)}.project-dashboard-group+.project-dashboard-group{border-top:1px solid var(--portal-border);margin-top:36px;padding-top:32px}.project-dashboard-group__heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px;display:flex}.project-dashboard-group__heading h3{margin:0;font-size:1.25rem}.project-dashboard-group__heading span{border:1px solid var(--portal-border);border-radius:999px;place-items:center;min-width:34px;height:34px;font-size:.82rem;font-weight:800;display:inline-grid}.project-dashboard-list{gap:10px;display:grid}.project-dashboard-item{border:1px solid var(--portal-border);color:inherit;background:#fff;border-radius:14px;grid-template-columns:minmax(0,1.5fr) minmax(220px,auto) minmax(170px,auto);align-items:center;gap:24px;padding:18px 20px;text-decoration:none;transition:transform .16s,border-color .16s,box-shadow .16s;display:grid}.project-dashboard-item:hover,.project-dashboard-item:focus-visible{border-color:#b8b8b8;outline:none;transform:translateY(-1px);box-shadow:0 12px 32px #00000012}.project-dashboard-item__main,.project-dashboard-item__commercial{gap:3px;min-width:0;display:grid}.project-dashboard-item__eyebrow,.project-dashboard-item__code,.project-dashboard-item__commercial span{color:var(--portal-muted);font-size:.82rem}.project-dashboard-item__main>strong{text-overflow:ellipsis;white-space:nowrap;font-size:1rem;overflow:hidden}.project-dashboard-item__statuses{flex-wrap:wrap;justify-content:flex-start;gap:7px;display:flex}.project-contract-badge,.project-work-status{white-space:nowrap;border-radius:999px;align-items:center;min-height:28px;padding:5px 10px;font-size:.72rem;font-weight:800;line-height:1.2;display:inline-flex}.project-contract-badge{color:#333;background:#f0f0f0}.project-contract-badge[data-status=pending_acceptance]{color:#725500;background:#fff2c7}.project-contract-badge[data-status=accepted]{color:#155f32;background:#e7f7ed}.project-contract-badge[data-status=declined],.project-contract-badge[data-status=withdrawn]{color:#8b2822;background:#fdebea}.project-contract-badge[data-status=draft]{color:#9a0044;background:#fff0f7}.project-work-status{border:1px solid var(--portal-border);background:#fff}.project-dashboard-empty{border:1px dashed var(--portal-border);color:var(--portal-muted);border-radius:14px;margin:0;padding:18px 20px}.project-detail-layout{gap:18px;display:grid}.project-detail-hero__topline,.project-detail-actions,.repeatable-heading{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.project-meta-grid,.contract-package-meta,.scope-responsibility-summary{border:1px solid var(--portal-border);background:var(--portal-border);border-radius:12px;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin-top:22px;display:grid;overflow:hidden}.project-meta-item{background:#fff;gap:5px;min-width:0;padding:14px 16px;display:grid}.project-meta-item span{color:var(--portal-muted);letter-spacing:.04em;text-transform:uppercase;font-size:.72rem;font-weight:750}.project-meta-item strong{overflow-wrap:anywhere;font-size:.92rem}.contract-gate-message,.contract-readonly-note,.contract-generation-note,.contract-test-warning{border-radius:12px;gap:12px;margin-top:18px;padding:15px 17px;font-size:.9rem;line-height:1.5;display:flex}.contract-gate-message,.contract-readonly-note,.contract-generation-note{border:1px solid var(--portal-border);background:#f8f8f8}.contract-test-warning{background:#fff4f9;border:1px solid #ffc4dd;align-items:flex-start}.contract-test-warning strong,.contract-generation-note strong{flex:none}.contract-documents{gap:10px;margin-top:20px;display:grid}.contract-document{border:1px solid var(--portal-border);background:#fff;border-radius:12px;overflow:hidden}.contract-document summary{cursor:pointer;justify-content:space-between;align-items:center;gap:16px;padding:17px 18px;list-style:none;display:flex}.contract-document summary::-webkit-details-marker{display:none}.contract-document summary span{color:var(--portal-muted);font-size:.75rem}.contract-document__content{border-top:1px solid var(--portal-border);white-space:normal;background:#fbfbfb;padding:20px 18px;font-family:inherit;font-size:.9rem;line-height:1.65}.contract-document__content p{margin:0 0 .7rem}.contract-document__content p:last-child{margin-bottom:0}.contract-document__heading{color:var(--fd-ink);margin:1.35rem 0 .55rem;font-size:1rem;line-height:1.35}.contract-document__heading:first-child{margin-top:0}.contract-document__list{gap:.35rem;margin:.25rem 0 .9rem;padding-left:1.15rem;display:grid}.contract-document__download{color:var(--fd-ink);margin:0 1rem .8rem;font-size:.8rem;font-weight:800;display:inline-flex}.contract-document__download:hover{text-decoration-thickness:2px}.contract-document__hash{color:var(--portal-muted);white-space:nowrap;background:#fbfbfb;padding:10px 18px 14px;font-size:.68rem;display:block;overflow-x:auto}.contract-acceptance-panel{background:#fff8fb;border:1px solid #ff8dbc;border-radius:14px;gap:16px;margin-top:22px;padding:22px;display:grid}.contract-acceptance-panel p{margin-bottom:0}.contract-acceptance-check{background:#fff;border:1px solid #f3c8db;border-radius:10px;align-items:flex-start;gap:12px;padding:15px;font-size:.88rem;line-height:1.5;display:flex}.contract-acceptance-check input{margin-top:4px}.scope-version-label,.scope-summary-text,.form-section__intro,.repeatable-heading p{color:var(--portal-muted)}.scope-summary-text{max-width:82ch;margin:12px 0 24px;font-size:1rem;line-height:1.65}.scope-detail-group+.scope-detail-group,.ongoing-service-summary{margin-top:24px}.scope-detail-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:10px;display:grid}.scope-detail-item,.ongoing-service-summary{border:1px solid var(--portal-border);background:#fff;border-radius:12px;padding:16px}.scope-detail-item{gap:5px;display:grid}.scope-detail-item span,.scope-detail-item p,.ongoing-service-summary p{color:var(--portal-muted);margin:0;font-size:.86rem;line-height:1.5}.scope-responsibility-summary{margin-top:24px}.ongoing-service-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.ongoing-service-summary h3,.ongoing-service-summary>p{grid-column:1/-1}.scope-change-preview{border-top:1px solid var(--portal-border);margin-top:28px;padding-top:24px}.scope-change-preview>p{color:var(--portal-muted)}.portal-field textarea{resize:vertical;color:#111;width:100%;min-width:0;font:inherit;background:#fff;border:1px solid #d9d9d9;border-radius:10px;padding:11px 12px;line-height:1.5}.portal-field textarea:focus-visible{outline-offset:1px;border-color:#ff0070;outline:2px solid #ff007029}.scope-builder{border:1px solid var(--portal-border);background:#fafafa;border-radius:14px;margin-top:24px;padding:22px}.repeatable-heading{align-items:center}.repeatable-heading+.repeatable-list,.repeatable-list+.repeatable-heading{margin-top:16px}.repeatable-list{gap:10px;display:grid}.repeatable-row{border:1px solid var(--portal-border);background:#fff;border-radius:12px;grid-template-columns:minmax(170px,.9fr) minmax(260px,1.5fr) 100px minmax(160px,.8fr) auto;align-items:end;gap:10px;padding:14px;display:grid}.repeatable-row__remove{min-height:43px}.scope-responsibilities{margin-top:24px}.nested-service{border:1px solid var(--portal-border);background:#fafafa;border-radius:14px;margin-top:18px;padding:20px}.nested-service h3{margin-bottom:14px}.scope-change-impact-grid{border:1px solid var(--portal-border);background:var(--portal-border);border-radius:12px;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin:12px 0 20px;display:grid;overflow:hidden}.scope-change-preview>h4,.scope-change-decision>h4{margin:24px 0 0}.scope-change-decision{background:#fff8fb;border:1px solid #ff8dbc;border-radius:14px;gap:14px;margin-top:22px;padding:20px;display:grid}.scope-change-response{border-top:1px solid #f3c8db;gap:10px;margin-top:4px;padding-top:16px;display:grid}.scope-change-response__actions,.form-action-buttons{flex-wrap:wrap;gap:8px;display:flex}.form-actions--split{justify-content:space-between;align-items:center}@media (width<=1100px){.project-dashboard-item{grid-template-columns:minmax(0,1fr) auto}.project-dashboard-item__commercial{grid-column:1/-1;grid-template-columns:auto 1fr;gap:16px}.project-meta-grid,.contract-package-meta,.scope-responsibility-summary,.ongoing-service-summary,.repeatable-row{grid-template-columns:repeat(2,minmax(0,1fr))}.repeatable-row__remove{justify-self:start}}@media (width<=700px){.project-dashboard-toolbar,.project-detail-hero__topline,.repeatable-heading{flex-direction:column;align-items:stretch}.project-search-field{width:100%}.project-dashboard-item,.project-meta-grid,.contract-package-meta,.scope-responsibility-summary,.scope-detail-list,.ongoing-service-summary,.repeatable-row{grid-template-columns:minmax(0,1fr)}.project-dashboard-item__commercial{grid-column:auto;grid-template-columns:minmax(0,1fr)}}.customer-management-card{margin-bottom:18px}.customer-management-grid{grid-template-columns:minmax(260px,.8fr) minmax(0,1.7fr);gap:1rem;display:grid}.customer-create-panel,.customer-directory-panel{border:1px solid var(--fd-line);background:#fbfbfa;border-radius:14px;min-width:0;padding:1.1rem}.customer-create-panel h3,.customer-directory-panel h3{letter-spacing:-.025em;margin:0 0 .85rem;font-size:1.1rem}.customer-create-form,.customer-invite-form{gap:.8rem;display:grid}.customer-create-form .portal-field,.customer-invite-form .portal-field{min-width:0}.customer-create-form .portal-button,.customer-invite-form .portal-button{justify-self:start;width:auto;margin:0;padding:0 1.1rem}.customer-directory{gap:.85rem;display:grid}.customer-organization{border:1px solid var(--fd-line);background:var(--fd-white);border-radius:12px;min-width:0;padding:1rem}.customer-organization__top,.customer-member__top,.customer-organization__actions,.customer-member__actions,.customer-invitation-result__actions{align-items:center;gap:.65rem;display:flex}.customer-organization__top,.customer-member__top{justify-content:space-between;align-items:flex-start}.customer-organization__name{flex:34rem;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.55rem;width:100%;min-width:0;display:grid}.customer-organization__name input{border:1px solid var(--fd-line);width:100%;min-width:0;min-height:42px;color:var(--fd-ink);background:var(--fd-white);border-radius:9px;padding:0 11px}.customer-organization__meta,.customer-member__meta{color:var(--fd-muted);margin:.45rem 0 0;font-size:.82rem;line-height:1.45}.customer-status{letter-spacing:.045em;text-transform:uppercase;background:#ececea;border-radius:999px;flex:none;align-items:center;min-width:max-content;min-height:28px;padding:0 .65rem;font-size:.72rem;font-weight:850;display:inline-flex}.customer-status--active,.customer-status--pending{color:#185c37;background:#e5f5ea}.customer-status--archived,.customer-status--disabled,.customer-status--expired{color:#6c4f17;background:#f7eed8}.customer-status--locked{color:#7a1f1f;background:#fff1f1}.customer-organization__actions,.customer-member__actions{flex-wrap:wrap;justify-content:flex-end;margin-top:.8rem}.customer-action{border:1px solid var(--fd-line);min-height:36px;color:var(--fd-ink);background:var(--fd-white);cursor:pointer;border-radius:9px;padding:0 .8rem;font-size:.78rem;font-weight:800}.customer-action:hover{border-color:#999}.customer-action--danger{color:#7a1f1f;border-color:#e7b2b2}.customer-member-list{gap:.6rem;margin-top:.9rem;display:grid}.customer-member{background:#f8f8f6;border:1px solid #e9e9e7;border-radius:10px;padding:.8rem}.customer-member strong,.customer-member span{display:block}.customer-member__identity{min-width:0}.customer-member__identity span{overflow-wrap:anywhere;color:var(--fd-muted);margin-top:.15rem;font-size:.82rem}.customer-identity-box,.customer-invite-box{border-top:1px solid var(--fd-line);margin-top:.9rem;padding-top:.9rem}.customer-identity-box summary,.customer-invite-box summary{cursor:pointer;font-size:.85rem;font-weight:850}.customer-identity-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem;margin-top:.85rem;display:grid}.customer-identity-grid__wide{grid-column:span 2}.customer-identity-box .customer-action{margin-top:.6rem}.customer-invite-form{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:.85rem}.customer-invite-form .form-status,.customer-invite-form .portal-button{grid-column:1/-1}.customer-invitation-result{background:#ff00700d;border:1px solid #ff007040;border-radius:12px;margin-top:1rem;padding:1rem}.customer-invitation-result h3{margin:0 0 .4rem;font-size:1rem}.customer-invitation-result p{color:var(--fd-muted);margin:.35rem 0;line-height:1.45}.customer-invitation-result code{overflow-wrap:anywhere;border:1px solid var(--fd-line);max-width:100%;color:var(--fd-ink);background:var(--fd-white);border-radius:9px;margin-top:.75rem;padding:.75rem;font-size:.78rem;display:block}.customer-invitation-result__actions{flex-wrap:wrap;margin-top:.75rem}.customer-invitation-result__actions .portal-button{width:auto;min-height:40px;margin:0;padding:0 1rem}@media (width<=900px){.customer-management-grid{grid-template-columns:1fr}}@media (width<=640px){.customer-organization__top,.customer-member__top,.customer-organization__name{grid-template-columns:1fr;display:grid}.customer-organization__name .customer-action{justify-self:start}.customer-organization__actions,.customer-member__actions{justify-content:flex-start}.customer-identity-grid,.customer-invite-form{grid-template-columns:1fr}.customer-identity-grid__wide,.customer-invite-form .form-status,.customer-invite-form .portal-button{grid-column:auto}}.portal-button{color:var(--fd-white);background:var(--fd-pink);cursor:pointer;transition:transform .15s,box-shadow .15s,background .15s;box-shadow:0 7px 20px #ff007029}.portal-button:hover:not(:disabled){background:#f00069;transform:translateY(-1px);box-shadow:0 10px 24px #ff007038}.portal-button:active:not(:disabled){transform:translateY(0);box-shadow:0 4px 12px #ff007029}.portal-button--secondary{color:var(--fd-ink);border:1px solid var(--fd-line);background:var(--fd-white);box-shadow:none}.portal-button--secondary:hover:not(:disabled){box-shadow:none;background:#f8f8f6;border-color:#b8b8b5}.customer-management-heading{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:.8rem 1.5rem;display:grid}.customer-management-heading>p{grid-column:1/-1}.customer-directory-create-trigger{align-self:end;margin:0}.customer-management-grid--directory{grid-template-columns:1fr}.customer-management-grid--directory .customer-create-panel{background:#ff00700a;border-color:#ff00704d;padding:1.2rem}.customer-management-grid--directory .customer-directory-panel{background:var(--fd-white);padding:0;overflow:hidden}.customer-management-grid--directory .customer-directory-panel>h3{padding:1.15rem 1.25rem 0}.customer-company-layout{border-top:1px solid var(--fd-line);grid-template-columns:minmax(260px,.72fr) minmax(0,1.65fr);min-height:34rem;display:grid}.customer-company-list{border-right:1px solid var(--fd-line);background:#f7f7f5;padding:.75rem}.customer-company-list__item{width:100%;min-height:74px;color:var(--fd-ink);cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;border-radius:12px;justify-content:space-between;align-items:center;gap:.8rem;margin:0;padding:.85rem .9rem;display:flex}.customer-company-list__item:hover{background:#fffc;border-color:#ff007033}.customer-company-list__item--active{background:var(--fd-white);border-color:#ff007047;box-shadow:0 8px 24px #0000000d}.customer-company-list__copy{min-width:0}.customer-company-list__copy strong,.customer-company-list__copy>span{display:block}.customer-company-list__copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:.92rem;overflow:hidden}.customer-company-list__copy>span{color:var(--fd-muted);text-overflow:ellipsis;white-space:nowrap;margin-top:.25rem;font-size:.75rem;line-height:1.35;overflow:hidden}.customer-company-list__side{flex:none;align-items:center;gap:.55rem;display:flex}.customer-company-list__side .customer-status{min-height:24px;padding-inline:.55rem;font-size:.64rem}.customer-company-list__arrow{color:var(--fd-pink);font-size:1rem;font-weight:900}.customer-company-detail{background:var(--fd-white);min-width:0;padding:1rem}.customer-company-detail>.customer-organization{border:0;border-radius:0;padding:0}.customer-company-detail .customer-identity-box,.customer-company-detail .customer-invite-box{padding-top:1.1rem}.customer-authority-switch{border-color:#d7d7d4;border-radius:999px;justify-content:space-between;align-items:center;gap:.8rem;min-width:250px;padding:.42rem .5rem .42rem .8rem;display:inline-flex}.customer-authority-switch__label{color:var(--fd-ink);font-size:.76rem;font-weight:800}.customer-authority-switch__track{background:#c8c8c5;border-radius:999px;flex:0 0 42px;width:42px;height:24px;transition:background .16s,box-shadow .16s;position:relative;display:inline-block!important}.customer-authority-switch__thumb{background:var(--fd-white);border-radius:50%;width:18px;height:18px;transition:transform .16s;position:absolute;top:3px;left:3px;box-shadow:0 1px 4px #0000002e}.customer-authority-switch[aria-checked=true]{background:#ff00700d;border-color:#ff00705c}.customer-authority-switch[aria-checked=true] .customer-authority-switch__track{background:var(--fd-pink)}.customer-authority-switch[aria-checked=true] .customer-authority-switch__thumb{transform:translate(18px)}.customer-authority-switch:focus-visible{outline-offset:2px;outline:3px solid #ff00704d}@media (width<=900px){.customer-company-layout{grid-template-columns:1fr}.customer-company-list{border-right:0;border-bottom:1px solid var(--fd-line)}}@media (width<=640px){.customer-management-heading{grid-template-columns:1fr}.customer-management-heading>p,.customer-directory-create-trigger{grid-column:auto}.customer-directory-create-trigger{justify-self:start}.customer-authority-switch{width:100%;min-width:0}}.app-profile-link{color:var(--fd-white);background:#ffffff0d;border:1px solid #ffffff1f;border-radius:12px;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:.7rem;margin-top:auto;padding:.72rem;text-decoration:none;transition:border-color .15s,background .15s,transform .15s;display:grid}.app-profile-link:hover,.app-profile-link[aria-current=page]{background:#ff00701f;border-color:#ff007075}.app-profile-link:hover{transform:translateY(-1px)}.app-profile-link__avatar{width:38px;height:38px;color:var(--fd-black);background:var(--fd-pink);letter-spacing:.02em;border-radius:50%;place-items:center;font-size:.78rem;font-weight:900;line-height:1;display:grid;overflow:hidden}.app-profile-link__avatar img,.profile-identity__avatar img{object-fit:cover;width:100%;height:100%}.app-profile-link__avatar img{z-index:1;position:relative}.app-profile-link__copy{min-width:0}.app-profile-link__copy strong,.app-profile-link__copy span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.app-profile-link__copy strong{font-size:.78rem;line-height:1.25}.app-profile-link__copy span{color:#ffffff94;margin-top:.18rem;font-size:.66rem}.profile-grid{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:1rem;display:grid}.profile-card{align-content:start;gap:1.1rem;display:grid}.profile-card__heading{gap:.35rem;display:grid}.profile-card__heading p,.profile-card__heading h2{margin:0}.profile-card__heading p{color:var(--fd-muted);line-height:1.55}.profile-identity{border-bottom:1px solid var(--fd-line);grid-template-columns:72px minmax(0,1fr);align-items:center;gap:1rem;padding-bottom:1rem;display:grid}.profile-identity__avatar{width:72px;height:72px;color:var(--fd-black);background:var(--fd-pink);letter-spacing:.02em;border-radius:50%;place-items:center;font-size:1.2rem;font-weight:900;display:grid;overflow:hidden}#profile-avatar-initials{width:100%;height:100%;color:var(--fd-black);letter-spacing:.02em;place-items:center;font-size:1.2rem;font-weight:900;line-height:1;display:grid}.profile-identity strong,.profile-identity span{display:block}.profile-identity strong{font-size:1.05rem}.profile-identity span{color:var(--fd-muted);margin-top:.25rem;font-size:.82rem}.profile-identity #profile-avatar-initials{color:var(--fd-black);margin-top:0;font-size:1.2rem}.profile-avatar-actions{flex-wrap:wrap;gap:.6rem;display:flex}.profile-form{gap:.85rem;display:grid}.profile-form .portal-button{justify-self:start}.profile-readonly{color:#62625f;background:#f1f1ef}.profile-security-note{border-left:3px solid var(--fd-pink);color:#4b4246;background:#ff00700d;border-radius:0 9px 9px 0;margin:0;padding:.85rem .95rem;font-size:.79rem;line-height:1.55}.profile-status{min-height:1.2rem;color:var(--fd-muted);margin:0;font-size:.78rem;line-height:1.45}.profile-status[data-state=success]{color:#146b3a}.profile-status[data-state=error]{color:#a52121}@media (width>=901px){.app-sidebar{overscroll-behavior:contain;align-self:start;height:100vh;max-height:100vh;position:sticky;top:0;overflow-y:auto}}@media (width<=900px){.app-profile-link{width:min(100%,320px);margin-top:.7rem;display:inline-grid}.profile-grid{grid-template-columns:1fr}}.contract-wizard-shell{--wizard-line:#f0cbdc;--wizard-surface:#fff7fb;--wizard-pink-soft:#fff0f7}.app-shell button:not(:disabled):not([aria-disabled=true]){cursor:pointer;transition:transform .14s,box-shadow .14s,filter .14s,border-color .14s,background-color .14s,color .14s,opacity .14s}.app-shell button:not(:disabled):not([aria-disabled=true]):hover{filter:brightness(.985)}.app-shell button:not(:disabled):not([aria-disabled=true]):active{transform:translateY(1px)scale(.985)}.app-shell button:disabled,.app-shell button[aria-disabled=true]{cursor:not-allowed}.portal-button,.contract-wizard-template-actions button,.contract-wizard-progress button{transition:transform .14s,box-shadow .14s,border-color .14s,background-color .14s,color .14s,opacity .14s}.portal-button:not(:disabled):not([aria-disabled=true]){cursor:pointer}.portal-button:not(:disabled):not([aria-disabled=true]):hover{transform:translateY(-1px);box-shadow:0 8px 22px #00000024}.portal-button:not(:disabled):not([aria-disabled=true]):active{transform:translateY(1px)scale(.985);box-shadow:0 2px 8px #0000001f}.portal-button:disabled,.portal-button[aria-disabled=true]{cursor:not-allowed;opacity:.38;box-shadow:none;transform:none}.contract-wizard-template-actions button:not(:disabled):hover,.contract-wizard-progress button:not(:disabled):hover{background:var(--wizard-pink-soft);border-color:#ff78b3;transform:translateY(-1px);box-shadow:0 6px 16px #ff00701a}.contract-wizard-template-actions button:not(:disabled):active,.contract-wizard-progress button:not(:disabled):active{box-shadow:none;transform:translateY(1px)scale(.985)}.contract-wizard-progress button:disabled{cursor:not-allowed;color:#aaa3a7;opacity:.58;background:#faf7f9}.contract-wizard-progress button:disabled .contract-wizard-progress__number{color:#c3b9be}.app-main select{appearance:none;background-color:#fff!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='m5 7.5 5 5 5-5' stroke='%23ff0070' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important;background-position:right .9rem center!important;background-repeat:no-repeat!important;background-size:1rem!important;padding-right:2.7rem!important}select:focus-visible,textarea:focus-visible{outline-offset:3px;outline:3px solid #ff007059}.contract-wizard-preset-bar{grid-template-columns:minmax(240px,360px) auto;grid-template-areas:"preset action""hint hint";justify-content:start;align-items:start;gap:.55rem .8rem}.contract-wizard-preset-bar .portal-field{grid-area:preset}.contract-wizard-preset-bar>.portal-button{grid-area:action;min-height:48px;margin-top:1.57rem}.contract-wizard-preset-bar__hint{color:#6b4b59;background:#fff4f9;border:1px solid #f5ccdd;border-radius:10px;grid-area:hint;align-items:center;min-height:42px;margin:0;padding:.65rem .8rem;display:flex}.contract-wizard-row,.contract-wizard-row--page,.contract-wizard-row--payment,.contract-wizard-row--access,.contract-wizard-row--requirement{align-items:start}.contract-wizard-row>.portal-button,.contract-wizard-row__fixed{margin-top:1.57rem}.contract-wizard-row__fixed{background:#fff4f9;border-color:#f0cbdc}.contract-wizard-section:not(.contract-wizard-section--white):not(.contract-wizard-section--accent),.contract-wizard-review-card{background:#fff8fb;border-color:#f0cbdc}.contract-wizard-payment-amount{color:#8b1749;margin-top:.4rem;font-size:.75rem;font-weight:850;display:block}.contract-wizard-gate-hint{color:#8b5d72;align-items:center;min-height:32px;margin-right:.35rem;font-size:.76rem;font-weight:700;display:inline-flex}#hosting-toggle-card.is-required-environment{background:var(--wizard-pink-soft);border-color:#ff8dbc}#hosting-toggle-card.is-required-environment>input{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}#hosting-toggle-card.is-required-environment>span:before{content:"Pflicht";color:#8b1749;letter-spacing:.06em;text-transform:uppercase;background:#ffd7e8;border-radius:999px;margin:0 0 .35rem;padding:.2rem .45rem;font-size:.66rem;font-weight:900;display:inline-flex}.contract-wizard-commercial-card{background:#fff4f9;border:1px solid #f0cbdc;border-radius:13px;margin:1rem 0 0;padding:1rem}.contract-wizard-commercial-card--compact{background:#fff;margin-top:1rem}.contract-wizard-internal-badge{color:#8b1749;letter-spacing:.07em;text-transform:uppercase;background:#fff;border:1px solid #ff9fc7;border-radius:999px;flex:none;padding:.34rem .55rem;font-size:.68rem;font-weight:900}.contract-wizard-calculation-result{grid-template-columns:repeat(4,minmax(0,1fr));gap:.6rem;margin:1rem 0;display:grid}.contract-wizard-calculation-result>div{background:#fff;border:1px solid #f0cbdc;border-radius:11px;align-content:center;gap:.25rem;min-height:72px;padding:.7rem .8rem;display:grid}.contract-wizard-calculation-result span{color:#765765;font-size:.72rem;font-weight:750}.contract-wizard-calculation-result strong{color:#171717;font-size:1rem}.contract-wizard-calculation-result__total{background:#fff0f7!important;border-color:#ff8dbc!important}.contract-wizard-calculation-result__total strong{color:#8b1749;font-size:1.18rem}.contract-wizard-calculation-note{color:#765765;margin:.75rem 0 0;font-size:.78rem;line-height:1.45}#agency-credit-controls code{background:#f8e8ef;border-radius:4px;padding:.08rem .25rem;font-size:.76rem}[data-agency-credit-row]{background:#fff7fb;border-color:#ffb4d2}[data-agency-credit-row] input[readonly],[data-agency-credit-row] textarea[readonly]{color:#3f3037;background:#fff}#infrastructure-cost-card[hidden],#agency-credit-controls[hidden],#infra-approval-cap-field[hidden],#calc-credit-delta-line[hidden]{display:none!important}@media (width<=980px){.contract-wizard-calculation-result{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.contract-wizard-preset-bar{grid-template-columns:1fr;grid-template-areas:"preset""action""hint"}.contract-wizard-preset-bar>.portal-button{width:100%;margin-top:0}.contract-wizard-row>.portal-button,.contract-wizard-row__fixed{margin-top:0}.contract-wizard-calculation-result{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.app-shell button,.portal-button,.contract-wizard-template-actions button,.contract-wizard-progress button{transition:none}.app-shell button:not(:disabled):not([aria-disabled=true]):hover,.app-shell button:not(:disabled):not([aria-disabled=true]):active,.portal-button:not(:disabled):not([aria-disabled=true]):hover,.portal-button:not(:disabled):not([aria-disabled=true]):active,.contract-wizard-template-actions button:not(:disabled):hover,.contract-wizard-template-actions button:not(:disabled):active,.contract-wizard-progress button:not(:disabled):hover,.contract-wizard-progress button:not(:disabled):active{transform:none}}.project-review-card,.review-overview-card{gap:1.4rem;display:grid}.project-review-heading,.review-overview-item{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.project-review-heading__actions,.project-review-classification__controls,.project-review-handling__heading{flex-wrap:wrap;align-items:center;gap:.65rem;display:flex}.project-review-handling__heading{justify-content:space-between}.project-review-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem;display:grid}.project-review-summary__item{border:1px solid var(--portal-border,#dededb);background:#f8f8f6;border-radius:14px;padding:1rem}.project-review-summary__item span,.review-overview-item__eyebrow{color:#696969;letter-spacing:.05em;text-transform:uppercase;margin-bottom:.3rem;font-size:.78rem;font-weight:800;display:block}.project-review-list,.review-overview-list{gap:.85rem;display:grid}.project-review-item,.review-overview-item{background:#fff;border:1px solid #dededb;border-radius:15px;padding:1rem 1.05rem}.project-review-item[data-customer-initiated=true]{border-style:dashed}.review-overview-item{color:inherit;text-decoration:none;transition:border-color .16s,transform .16s}.review-overview-item:hover{border-color:#e23375;transform:translateY(-1px)}.review-overview-item__copy,.project-review-item__copy{min-width:0}.review-overview-item__copy strong,.project-review-item__copy strong{margin-bottom:.2rem;font-size:1rem;display:block}.review-overview-item__copy>span:last-child,.project-review-item__copy p,.review-overview-intro,.project-review-hint,.project-review-form__note,.project-review-correction-note{color:#656565;line-height:1.55}.project-review-form__note,.project-review-correction-note{margin:0;font-size:.88rem}.project-review-badge,.project-review-handling__status{color:#4d4d4d;white-space:nowrap;background:#efefed;border-radius:999px;align-items:center;width:fit-content;padding:.42rem .68rem;font-size:.76rem;font-weight:900;display:inline-flex}.project-review-badge[data-status=pending]{color:#9f1d51;background:#fff0f6}.project-review-badge[data-status=approved]{color:#2b6739;background:#eaf5ec}.project-review-badge[data-status=changes_requested]{color:#88501f;background:#fff1e7}.project-review-badge[data-status=cancelled]{color:#707070;background:#efefef}.project-review-handling__status[data-status=open]{color:#88501f;background:#fff1e7}.project-review-handling__status[data-status=in_progress]{color:#9f1d51;background:#fff0f6}.project-review-handling__status[data-status=resolved]{color:#2b6739;background:#eaf5ec}.project-review-item__meta,.project-review-item__actions,.project-review-response-actions{flex-wrap:wrap;align-items:center;gap:.65rem;display:flex}.project-review-item__meta{color:#696969;margin-top:.75rem;font-size:.86rem}.project-review-item__actions{margin-top:1rem}.project-review-response,.project-review-classification,.project-review-handling{border-top:1px solid #e3e3e0;gap:.8rem;margin-top:1rem;padding-top:1rem;display:grid}.project-review-classification__controls select{min-width:min(100%,360px)}.project-review-handling{background:#fafaf8;border:1px solid #e3e3e0;border-radius:13px;padding:1rem}.project-review-handling__fields{grid-template-columns:minmax(180px,.45fr) minmax(260px,1.55fr);gap:.85rem;display:grid}.project-review-handling__note{min-width:0}.project-review-handling p{margin:0}.project-review-form{background:#fafaf8;border:1px solid #dededb;border-radius:15px;grid-template-columns:minmax(200px,.65fr) minmax(260px,1.35fr);gap:.9rem;padding:1rem;display:grid}.project-review-form .portal-field:has(textarea),.project-review-form__note,.project-review-form__actions{grid-column:1/-1}.project-review-form__actions{flex-wrap:wrap;justify-content:flex-end;gap:.65rem;display:flex}.project-review-rounds--exceeded strong{color:#9d2f2f}.project-review-response-actions .portal-button[data-tone=positive]{border-color:#b7d9bf}.project-review-response-actions .portal-button[data-tone=warning]{border-color:#e7c49d}.project-review-response-actions .portal-button[data-tone=danger]{border-color:#dfb2b2}@media (width<=760px){.project-review-summary,.project-review-form,.project-review-handling__fields{grid-template-columns:1fr}.project-review-form .portal-field:has(textarea),.project-review-form__note,.project-review-form__actions{grid-column:auto}.project-review-heading,.review-overview-item,.project-review-handling__heading,.project-review-heading__actions,.project-review-response-actions,.project-review-form__actions,.project-review-classification__controls,.project-review-item__actions{flex-direction:column;align-items:stretch}.project-review-heading__actions>*,.project-review-response-actions>*,.project-review-form__actions>*,.project-review-classification__controls>*,.project-review-item__actions>*{width:100%}}@media (prefers-reduced-motion:reduce){.review-overview-item{transition:none}}.project-review-handling__fields{align-items:start}.project-review-handling__fields>.portal-field{align-content:start;align-self:start}.project-review-handling__fields select,.project-review-handling__fields textarea{margin:0}.project-review-handling__fields select{width:100%;min-height:50px}.project-review-item__actions[data-review-handling-actions=true]{grid-template-columns:minmax(0,20rem) minmax(0,1fr);align-items:center;gap:.75rem;display:grid}.project-review-item__actions[data-review-handling-actions=true] .portal-button{width:100%;min-height:50px;margin-top:0}.project-review-handling__action-status{margin:0}.project-review-handling__action-status:empty{display:none}.project-review-conversation{border-top:1px solid #e3e3e0;margin-top:.85rem}.project-review-conversation>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:.75rem;padding:.85rem 0 0;font-weight:800;list-style:none;display:flex}.project-review-conversation>summary::-webkit-details-marker{display:none}.project-review-conversation>summary:after{content:"+";color:#6a6a6a;flex:none;font-size:1.1rem;line-height:1}.project-review-conversation[open]>summary:after{content:"−"}.project-review-conversation__count{color:#6a6a6a;margin-left:auto;font-size:.82rem;font-weight:700}.project-review-conversation__content,.project-review-conversation__messages{gap:.7rem;display:grid}.project-review-conversation__content{padding-top:.85rem}.project-review-conversation__message{background:#fff;border:1px solid #e3e3e0;border-radius:11px;gap:.35rem;padding:.75rem .85rem;display:grid}.project-review-conversation__message[data-author-role=admin]{border-left:3px solid #ff0b69}.project-review-conversation__message-heading{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.5rem;display:flex}.project-review-conversation__message-heading strong{margin:0;font-size:.9rem}.project-review-conversation__message-heading time{color:#737373;font-size:.78rem}.project-review-conversation__message p,.project-review-conversation__empty{color:#555;white-space:pre-wrap;margin:0;line-height:1.5}.project-review-conversation__empty{font-size:.88rem}.project-review-conversation__form{border-top:1px solid #e8e8e5;gap:.7rem;padding-top:.85rem;display:grid}.project-review-conversation__actions{justify-content:flex-start;display:flex}.project-review-conversation__actions .portal-button{width:min(100%,20rem);min-height:50px;margin-top:0}@media (width<=760px){.project-review-item__actions[data-review-handling-actions=true]{grid-template-columns:1fr}.project-review-conversation__message-heading,.project-review-conversation__actions{flex-direction:column;align-items:stretch}.project-review-conversation__actions>*,.project-review-conversation__actions .portal-button{width:100%}}.final-acceptance-card{gap:1.35rem;display:grid}.final-acceptance-heading,.final-acceptance-response-actions,.final-acceptance-admin-actions{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.final-acceptance-hint,.final-acceptance-evidence,.final-acceptance-warning,.final-acceptance-meta,.final-acceptance-defect p{margin:0}.final-acceptance-hint,.final-acceptance-evidence,.final-acceptance-meta{color:var(--portal-muted,#666)}.final-acceptance-list{gap:1rem;display:grid}.final-acceptance-item{background:#fff;border:1px solid #0000001f;border-radius:1rem;gap:1rem;padding:1.1rem;display:grid}.final-acceptance-heading>div{gap:.3rem;display:grid}.final-acceptance-badge{white-space:nowrap;background:#ececec;border-radius:999px;align-items:center;min-height:2rem;padding:.35rem .65rem;font-size:.82rem;font-weight:700;display:inline-flex}.final-acceptance-badge[data-status=pending]{background:#fff2b8}.final-acceptance-badge[data-status=accepted]{background:#dff5e4}.final-acceptance-badge[data-status=defect_reported]{background:#ffd9dc}.final-acceptance-meta{flex-wrap:wrap;gap:.5rem 1rem;font-size:.88rem;display:flex}.final-acceptance-defect,.final-acceptance-response{background:#f5f5f5;border-radius:.85rem;gap:.75rem;padding:1rem;display:grid}.final-acceptance-confirmation{grid-template-columns:auto 1fr;align-items:start;gap:.65rem;font-weight:600;display:grid}.final-acceptance-confirmation input{margin-top:.2rem}.final-acceptance-warning{background:#fff2b8;border-radius:.8rem;padding:.85rem 1rem}.final-acceptance-response-actions,.final-acceptance-admin-actions{flex-wrap:wrap;justify-content:flex-start}@media (width<=720px){.final-acceptance-heading{flex-direction:column;align-items:stretch}.final-acceptance-badge{white-space:normal;align-self:flex-start}.final-acceptance-response-actions,.final-acceptance-admin-actions{display:grid}}.project-file-workspace{gap:1rem;display:grid}.project-file-workspace__heading,.project-file-workspace__form-actions,.project-file-workspace__actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.project-file-workspace__heading h2,.project-file-workspace__heading p,.project-file-workspace__copy p{margin:0}.project-file-workspace__upload-area{border:1px solid var(--portal-border,#d8d8d8);border-radius:1rem;gap:.85rem;padding:1rem;display:grid}.project-file-workspace__dropzone{width:100%;min-height:8rem;color:inherit;cursor:pointer;background:0 0;border:1.5px dashed;border-radius:.85rem;align-content:center;place-items:center;gap:.3rem;padding:1rem;display:grid}.project-file-workspace__dropzone[data-dragging=true]{outline-offset:2px;outline:2px solid}.project-file-workspace__upload-controls{grid-template-columns:minmax(0,1fr) minmax(14rem,.45fr);gap:.75rem;display:grid}.project-file-workspace__upload-note{color:#656565;grid-column:1/-1;margin:0;font-size:.9rem;line-height:1.5}.project-file-workspace__list{gap:.65rem;display:grid}.project-file-workspace__row{border:1px solid var(--portal-border,#d8d8d8);border-radius:.85rem;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1rem;padding:.9rem 1rem;display:grid}.project-file-workspace__row[data-archived=true]{opacity:.7}.project-file-workspace__copy{gap:.18rem;min-width:0;display:grid}.project-file-workspace__copy strong,.project-file-workspace__copy span,.project-file-workspace__copy p{overflow-wrap:anywhere}.project-file-workspace__copy span,.project-file-workspace__copy p,.project-file-workspace__empty{font-size:.92rem}@media (width<=760px){.project-file-workspace__upload-controls,.project-file-workspace__row{grid-template-columns:1fr}.project-file-workspace__actions{justify-content:flex-start}}.project-dashboard-tab[aria-selected=true],.project-dashboard-tab[aria-selected=true]:hover{color:var(--fd-white);background:var(--fd-black)}@media (width<=760px){.project-dashboard-toolbar{align-items:stretch}.project-dashboard-toolbar .project-search-field,.project-dashboard-record-filter{width:100%}.project-dashboard-record-filter .portal-button{flex:1 1 0}.project-dashboard-tabs{overscroll-behavior-inline:contain;scrollbar-width:none;display:flex;overflow-x:auto}.project-dashboard-tabs::-webkit-scrollbar{display:none}.project-dashboard-tab{flex:1 0 auto;min-width:8.5rem}.project-record-actions .form-status{text-align:left}}.project-files-intro{color:#656565;margin:0;line-height:1.55}.project-files-project{gap:1.1rem;display:grid}.project-files-project__heading h2,.project-files-project__heading p{margin:0}.project-file-table{border-collapse:collapse;width:100%}.project-file-table th,.project-file-table td{text-align:left;vertical-align:top;border-bottom:1px solid #e3e3e0;padding:.7rem .6rem}.project-file-table th{color:#696969;letter-spacing:.05em;text-transform:uppercase;font-size:.76rem;font-weight:800}.project-file-row[data-status=archived] td{color:#8a8a86}.project-file-name{gap:.2rem;display:grid}.project-file-name span{color:#7a7a76;font-size:.82rem}.project-file-badge{color:#2b6739;white-space:nowrap;background:#eaf5ec;border-radius:999px;align-items:center;padding:.35rem .6rem;font-size:.76rem;font-weight:900;display:inline-flex}.project-file-badge[data-status=archived]{color:#707070;background:#efefef}.project-file-actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.project-file-archive-reason{gap:.4rem;width:100%;margin-top:.5rem;display:grid}.project-file-archive-reason textarea{width:100%;font:inherit;resize:vertical;border:1px solid #dededb;border-radius:10px;padding:.5rem .6rem}.project-file-upload-form{border-top:1px solid #dededb;grid-template-columns:minmax(220px,1fr) minmax(160px,.6fr);gap:.9rem;padding-top:1rem;display:grid}.project-file-upload-form__full{grid-column:1/-1}.project-file-upload-form__footer{grid-column:1/-1;justify-content:flex-end;display:flex}.app-shell:has(#admin-customer-nav:not([hidden])) .app-nav a[href="/app/freigaben"],.app-shell:has(#admin-customer-nav:not([hidden])) .app-nav a[href="/app/dateien"],.app-shell:has(#admin-customer-nav:not([hidden])) .app-nav a[href="/app/zugaenge"],.app-shell:has(#admin-customer-nav:not([hidden])) .app-nav a[href="/app/rechnungen"],.app-shell:has(#admin-customer-nav:not([hidden])) .app-nav a[aria-disabled=true]{display:none}.app-nav a[href=\/app]{font-size:0}.app-nav a[href=\/app]:after{content:"Übersicht";font-size:.92rem}@media (width<=760px){.project-file-upload-form{grid-template-columns:1fr}.project-file-upload-form__full,.project-file-upload-form__footer{grid-column:auto}.project-file-table thead{display:none}.project-file-table,.project-file-table tbody,.project-file-table tr,.project-file-table td{width:100%;display:block}.project-file-table tr{border-bottom:1px solid #e3e3e0;padding:.6rem 0}.project-file-table td{border-bottom:none;padding:.15rem 0}}.project-invoices-intro{color:#656565;margin:0;line-height:1.55}.project-invoices-project{gap:1.1rem;display:grid}.project-invoices-project__heading h2,.project-invoices-project__heading p{margin:0}.invoice-table{border-collapse:collapse;width:100%}.invoice-table th,.invoice-table td{text-align:left;vertical-align:top;border-bottom:1px solid #e3e3e0;padding:.7rem .6rem}.invoice-table th{color:#696969;letter-spacing:.05em;text-transform:uppercase;font-size:.76rem;font-weight:800}.invoice-row[data-status=cancelled] td{color:#8a8a86;text-decoration:line-through #c7c7c3}.invoice-row[data-status=cancelled] .invoice-status-cell{text-decoration:none}.invoice-status-cell{justify-items:start;gap:.35rem;display:grid}.invoice-badge{color:#4d4d4d;white-space:nowrap;background:#efefed;border-radius:999px;align-items:center;padding:.35rem .6rem;font-size:.76rem;font-weight:900;display:inline-flex}.invoice-badge[data-status=open]{color:#2a5788;background:#eaf1f8}.invoice-badge[data-status=paid]{color:#2b6739;background:#eaf5ec}.invoice-badge[data-status=cancelled]{color:#707070;background:#efefef}.invoice-badge--overdue{color:#9d2f2f;background:#f8ecea}.invoice-form{border-top:1px solid #dededb;grid-template-columns:repeat(2,minmax(200px,1fr));gap:.9rem;padding-top:1rem;display:grid}.invoice-form__footer{grid-column:1/-1;justify-content:flex-end;gap:.5rem;display:flex}.invoice-edit-form{width:100%;margin-top:.6rem}@media (width<=760px){.invoice-form{grid-template-columns:1fr}.invoice-table thead{display:none}.invoice-table,.invoice-table tbody,.invoice-table tr,.invoice-table td{width:100%;display:block}.invoice-table tr{border-bottom:1px solid #e3e3e0;padding:.6rem 0}.invoice-table td{border-bottom:none;padding:.15rem 0}.invoice-table td:first-child{font-weight:800}}.project-dashboard-toolbar{justify-content:flex-start;align-items:end;gap:1rem;margin-bottom:1rem}.project-dashboard-toolbar .project-search-field{margin-right:auto}.project-dashboard-tabs{border:1px solid var(--fd-line);background:var(--fd-surface);border-radius:14px;grid-template-columns:repeat(3,minmax(0,1fr));gap:.4rem;margin-bottom:1.35rem;padding:.4rem;display:grid}.project-dashboard-tab{min-width:0;min-height:46px;color:var(--fd-muted);cursor:pointer;background:0 0;border:0;border-radius:10px;justify-content:center;align-items:center;gap:.55rem;padding:.7rem 1rem;font-weight:800;display:flex}.project-dashboard-tab:hover{color:var(--fd-ink);background:#ffffffb3}.project-dashboard-tab[aria-selected=true],.project-dashboard-tab[aria-selected=true]:hover{color:var(--fd-white);background:var(--fd-black)}.project-dashboard-tab__count{border:1px solid;border-radius:999px;place-items:center;min-width:1.65rem;height:1.65rem;padding-inline:.35rem;font-size:.72rem;line-height:1;display:inline-grid}.project-dashboard-tab[aria-selected=true] .project-dashboard-tab__count{background:#ffffff1a;border-color:#ffffff59}.project-dashboard-card .project-dashboard-group,.project-dashboard-card .project-dashboard-group+.project-dashboard-group{border-top:0;margin-top:0;padding-top:0}.project-dashboard-group[hidden]{display:none}.project-dashboard-record-filter{flex-wrap:wrap;align-items:center;gap:.55rem;display:flex}.project-dashboard-record-filter .portal-button{min-height:46px;margin:0}.project-dashboard-record-filter [aria-pressed=true]{box-shadow:inset 0 0 0 2px}.project-record-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.55rem;margin-left:auto;display:flex}.project-record-actions .form-status{text-align:right;flex-basis:100%;margin:0}.project-record-actions .form-status:empty{display:none}.project-record-actions__badge{letter-spacing:.06em;text-transform:uppercase;border:1px solid;border-radius:999px;align-items:center;min-height:2rem;padding:.35rem .7rem;font-size:.78rem;font-weight:800;display:inline-flex}.project-record-actions__menu{flex:none;position:relative}.project-record-actions__trigger{width:2rem;height:2rem;color:var(--fd-muted);letter-spacing:.08em;cursor:pointer;user-select:none;border-radius:8px;place-items:center;font-size:.9rem;font-weight:800;list-style:none;display:grid}.project-record-actions__trigger::-webkit-details-marker{display:none}.project-record-actions__trigger:hover,.project-record-actions__menu[open] .project-record-actions__trigger{color:var(--fd-ink);background:#efefed}.project-record-actions__panel{z-index:40;border:1px solid var(--fd-line);background:var(--fd-white);border-radius:12px;width:min(17rem,78vw);padding:.35rem;display:grid;position:absolute;top:calc(100% + .25rem);right:0;box-shadow:0 12px 32px #00000021}.project-record-actions__item{width:100%;min-height:2.45rem;color:var(--fd-ink);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;padding:.5rem .65rem;display:flex}.project-record-actions__item:hover:not(:disabled){background:var(--fd-surface)}.project-record-actions__item[data-danger=true]{color:#a52c3a}.project-record-actions__item:disabled{opacity:.45;cursor:default}@media (width<=760px){.project-dashboard-toolbar{align-items:stretch}.project-dashboard-toolbar .project-search-field,.project-dashboard-record-filter{width:100%}.project-dashboard-record-filter .portal-button{flex:1 1 0}.project-dashboard-tabs{overscroll-behavior-inline:contain;scrollbar-width:none;display:flex;overflow-x:auto}.project-dashboard-tabs::-webkit-scrollbar{display:none}.project-dashboard-tab{flex:1 0 auto;min-width:8.5rem}.project-record-actions .form-status{text-align:left}}
