/* HYLLA Pfahlkorb */
/* HYLLA Pfahlkorb-Generator · version v2026-07-19-42 */
/* HYLLA Pfahlkorb-Generator · version v2026-07-19-42 · an produktive styles.css anhängen */
.pf-container-wide{width:min(calc(100% - 2rem),1680px);max-width:none}
.pf-tool-shell{display:grid;grid-template-columns:260px minmax(390px,.95fr) minmax(430px,1.15fr);gap:1rem;align-items:start}
.pf-sidebar,.pf-form-panel,.pf-output-column{min-width:0}
.pf-sidebar,.pf-form-panel{position:sticky;top:calc(var(--header-height) + 1rem);max-height:calc(100vh - var(--header-height) - 2rem);overflow:auto}
.pf-output-column{display:grid;gap:1rem}
.pf-output-column>*{min-width:0}
.pf-panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem}
.pf-panel-heading h2{font-size:1.32rem;margin:0}
.pf-icon-button{min-height:36px;padding:.45rem .72rem;font-size:.82rem}

.pf-cage-list{display:grid;gap:.55rem;max-height:43vh;overflow:auto;padding-right:.15rem}
.pf-cage-item{width:100%;display:grid;gap:.22rem;text-align:left;border:1px solid var(--line);border-radius:16px;background:var(--surface-soft);padding:.75rem .8rem;color:var(--ink)}
.pf-cage-item strong{color:var(--brand-dark)}
.pf-cage-item>span{font-size:.8rem;color:var(--ink-soft)}
.pf-cage-item:hover,.pf-cage-item.is-active{border-color:var(--brand-soft);box-shadow:0 0 0 3px rgba(11,74,132,.09)}
.pf-cage-item.is-active{background:#eef5fb}
.pf-cage-badges{display:flex!important;flex-wrap:wrap;gap:.35rem;margin-top:.18rem}
.pf-cage-badges em{font-style:normal;font-size:.72rem;font-weight:750;border-radius:999px;padding:.15rem .46rem}
.pf-cage-badges .is-error{background:#fae8e8;color:var(--danger)}
.pf-cage-badges .is-warning{background:#fff1d8;color:var(--warning)}
.pf-cage-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:.45rem;margin-top:.75rem}
.pf-cage-actions .button,.pf-cage-actions .pill-link{min-height:39px;padding:.45rem .55rem;font-size:.82rem}
.pf-cage-actions .pill-link:nth-last-child(-n+2){grid-column:auto}
.pf-project-summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:1rem 0;padding:.8rem;border-radius:14px;background:var(--brand-dark);color:#fff}
.pf-project-summary span{font-size:.82rem;opacity:.78}
.pf-project-summary strong{text-align:right}
.pf-sidebar-buttons{display:grid;grid-template-columns:repeat(2,1fr);gap:.45rem;margin-top:.55rem}
.pf-sidebar-buttons:first-of-type{grid-template-columns:repeat(3,1fr)}
.pf-sidebar-buttons .pill-link{min-height:39px;padding:.45rem .55rem;font-size:.82rem}

.pf-tabs{display:flex;gap:.4rem;overflow-x:auto;padding:.15rem 0 .7rem;border-bottom:1px solid var(--line);margin-bottom:1rem}
.pf-tab{flex:0 0 auto;border:1px solid var(--line);border-radius:999px;background:var(--surface-soft);padding:.52rem .78rem;font-weight:750;color:var(--brand-dark)}
.pf-tab:hover,.pf-tab.is-active{border-color:var(--brand-soft);background:var(--brand);color:#fff}
.pf-tab-panel{display:grid;gap:1rem}
.pf-fieldset{border:1px solid var(--line);border-radius:18px;padding:1rem;margin:0;min-width:0}
.pf-fieldset legend{font-weight:850;color:var(--brand-dark);padding:0 .4rem}
.pf-check-field{display:flex;align-items:center;min-height:46px;padding:.55rem .7rem;border:1px solid var(--line);border-radius:14px;background:var(--surface-soft)}
.pf-check-field label{display:flex;align-items:center;gap:.55rem;width:100%}
.pf-check-field input[type="checkbox"]{width:1.15rem;height:1.15rem;min-height:auto;margin:0;accent-color:var(--brand)}
.pf-grid-span-2{grid-column:1/-1}
.unit{font-weight:500;color:var(--ink-soft);font-size:.84em}
.field-help{margin:.2rem 0 1rem;color:var(--ink-soft);font-size:.9rem}

.pf-region-list{display:grid;gap:.75rem}
.pf-region-card{border:1px solid var(--line);border-radius:16px;padding:.85rem;background:var(--surface-soft)}
.pf-region-heading{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.75rem}
.pf-region-heading .pill-link{min-height:34px;padding:.35rem .65rem;font-size:.78rem}
.pf-region-grid{grid-template-columns:repeat(2,minmax(170px,1fr))}

.pf-view-buttons,.pf-preview-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:.45rem}
.pf-view-buttons .pill-link,.pf-preview-toolbar .pill-link{min-height:36px;padding:.4rem .68rem;font-size:.82rem}
.pf-view-buttons .pill-link.is-active{background:var(--brand);border-color:var(--brand);color:#fff}
.pf-preview-toolbar{justify-content:flex-end;margin:-.25rem 0 .65rem}
.pf-preview-toolbar span{color:var(--ink-soft);font-size:.78rem}
.pf-preview-wrap{height:min(56vh,650px);min-height:410px;padding:0;touch-action:none}
.pf-preview-svg{display:block;width:100%;height:100%;min-height:410px;cursor:grab;user-select:none}
.pf-preview-svg.is-dragging{cursor:grabbing}
.pf-preview-background{fill:#fff}
.pf-preview-grid line{stroke:#eaf0f5;stroke-width:1;vector-effect:non-scaling-stroke}
.pf-preview-path{fill:none;stroke:#294359;stroke-linecap:round;stroke-linejoin:round}
.pf-role-pile,.pf-role-pile_level{stroke:#8797a6}
.pf-role-longitudinal{stroke:#073d6e}
.pf-role-transverse{stroke:#0b67a3}
.pf-role-bracing,.pf-role-bottom_bracing{stroke:#bb6a21}
.pf-role-spacer{stroke:#6c4e93}
.pf-role-sleeve{stroke:#37826a}
.pf-role-pile_breaker_sleeve{stroke:#3b3b3b}
.pf-role-foot,.pf-role-foot_plate{stroke:#9b422c}
.pf-role-central_bar{stroke:#212121}
.pf-preview-axes line{stroke-width:2;vector-effect:non-scaling-stroke}
.pf-axis-x{stroke:#a23b3b;fill:#a23b3b}.pf-axis-y{stroke:#2e7d4f;fill:#2e7d4f}.pf-axis-z{stroke:#235f9c;fill:#235f9c}
.pf-axis-label{font-size:18px;font-weight:800;text-anchor:middle;dominant-baseline:middle}
.pf-preview-caption{font-size:17px;font-weight:750;fill:var(--brand-dark)}
.pf-empty-preview{display:grid;place-items:center;min-height:390px;margin:0;color:var(--ink-soft);text-align:center;padding:2rem}

.pf-status{display:inline-flex;align-items:center;min-height:34px;padding:.32rem .65rem;border-radius:999px;background:#e8f4ef;color:var(--success);font-size:.8rem;font-weight:800;white-space:nowrap}
.pf-status.is-error{background:#fae8e8;color:var(--danger)}
.pf-status.is-busy{background:#e9f1fa;color:var(--brand-soft)}
.pf-message-list{display:grid;gap:.45rem;margin-bottom:.6rem}
.pf-message-list:empty{display:none}
.pf-message{border-radius:14px;padding:.72rem .82rem;font-size:.9rem;border:1px solid}
.pf-message-error{background:#fff1f1;border-color:#efc7c7;color:#7d2424}
.pf-message-warning{background:#fff8e9;border-color:#ead5a6;color:#774800}
.pf-position-table-wrap{width:100%;max-width:100%;margin-top:1rem;max-height:420px;overflow:auto}
.pf-position-table-wrap .tool-table thead{position:sticky;top:0;z-index:1}
.pf-position-table-wrap .tool-table td:nth-child(2){white-space:normal;min-width:260px}

.pf-privacy-note{margin-top:1rem}
.pf-privacy-note h2{font-size:1.25rem}
.pf-privacy-note p{margin-bottom:0;color:var(--ink-soft)}

.pf-dialog{width:min(900px,calc(100% - 2rem));max-height:88vh;border:0;border-radius:var(--radius);padding:0;box-shadow:0 30px 90px rgba(0,24,48,.28);color:var(--ink)}
.pf-dialog::backdrop{background:rgba(0,24,48,.52);backdrop-filter:blur(3px)}
.pf-dialog-body{padding:1.4rem;overflow:auto;max-height:88vh}

@media (max-width:1380px){
  .pf-tool-shell{grid-template-columns:235px minmax(350px,.9fr) minmax(390px,1.1fr)}
  .pf-container-wide{width:min(calc(100% - 1.25rem),1500px)}
  .pf-sidebar,.pf-form-panel{position:static;max-height:none}
}

@media (max-width:1120px){
  .pf-tool-shell{grid-template-columns:250px minmax(0,1fr)}
  .pf-output-column{grid-column:1/-1;grid-template-columns:1fr 1fr}
  .pf-preview-wrap{height:520px}
}

@media (max-width:860px){
  :root{--header-height:78px}
  .header-inner{min-height:var(--header-height)}
  .brand-logo{width:105px}
  .brand-copy{display:none}
  .nav-toggle{display:block}
  .main-nav{display:none;position:absolute;left:1rem;right:1rem;top:calc(100% + .35rem);background:var(--mobile-nav-bg);color:var(--mobile-nav-text);border:1px solid rgba(255,255,255,.16);border-radius:18px;padding:1rem;box-shadow:0 16px 35px rgba(0,0,0,.25)}
  .main-nav.open,.main-nav.is-open{display:block}
  .main-nav ul{display:grid;gap:.35rem}
  .main-nav a{display:block;padding:.55rem}
  .hero-inner{grid-template-columns:1fr;gap:1.5rem}
  .pf-tool-shell{grid-template-columns:1fr}
  .pf-output-column{grid-column:auto;grid-template-columns:1fr}
  .tool-form-grid,.tool-result-grid,.pf-region-grid{grid-template-columns:1fr}
  .pf-grid-span-2{grid-column:auto}
  .pf-preview-wrap{height:480px;min-height:360px}
  .pf-preview-svg{min-height:360px}
  .footer-inner{align-items:flex-start;flex-direction:column}
}

@media (max-width:560px){
  .container,.pf-container-wide{width:min(calc(100% - 1rem),100%)}
  .section{padding:2.5rem 0}
  .hero-compact{padding:2.3rem 0}
  .tool-panel{padding:1rem;border-radius:17px}
  .pf-panel-heading{align-items:flex-start;flex-direction:column}
  .pf-panel-heading>.button{width:100%}
  .pf-cage-actions{grid-template-columns:repeat(2,1fr)}
  .pf-sidebar-buttons,.pf-sidebar-buttons:first-of-type{grid-template-columns:1fr}
  .pf-preview-toolbar{justify-content:flex-start}
  .pf-preview-wrap{height:410px}
  .tool-actions .button,.tool-export-row .button,.tool-actions .pill-link,.tool-export-row .pill-link{width:100%}
}

/* Pfahlkorb-Generator: desktopähnliche Weboberfläche */
.pf-desktop-page{background:#dfe5eb}
.pf-app-main{min-height:calc(100vh - var(--header-height));padding:0;background:#dfe5eb}
.pf-desktop-app{height:calc(100vh - var(--header-height));min-height:680px;display:flex;flex-direction:column;background:#e7ebef;color:#152030;border-top:1px solid #c7d0d9;font-size:.92rem;overflow:hidden}
.pf-desktop-app.is-fullscreen{height:100vh;min-height:0}
.pf-desktop-titlebar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.42rem .65rem;background:#f7f9fb;border-bottom:1px solid #c8d2dc;box-shadow:inset 0 -1px 0 #fff}
.pf-desktop-titlebar>div{display:flex;align-items:baseline;gap:.7rem;min-width:0}
.pf-desktop-titlebar strong{color:#00284f;font-size:1rem;white-space:nowrap}
.pf-desktop-titlebar span{color:#5b6777;font-size:.84rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pf-desktop-menubar{display:flex;align-items:stretch;gap:.15rem;padding:.12rem .5rem;background:#f2f5f8;border-bottom:1px solid #c8d2dc;position:relative;z-index:10}
.pf-menu{position:relative}
.pf-menu summary{list-style:none;padding:.28rem .72rem;border:1px solid transparent;border-radius:4px;cursor:pointer;line-height:1.25;color:#152030;font-weight:650}
.pf-menu summary::-webkit-details-marker{display:none}
.pf-menu[open] summary,.pf-menu summary:hover{background:#ffffff;border-color:#b8c5d0}
.pf-menu-panel{position:absolute;left:0;top:calc(100% + 2px);min-width:270px;padding:.35rem;background:#fff;border:1px solid #aebdca;box-shadow:0 12px 28px rgba(10,32,56,.18);border-radius:4px;display:grid;gap:.1rem;z-index:20}
.pf-menu-panel button{width:100%;text-align:left;border:0;background:transparent;border-radius:3px;padding:.42rem .55rem;color:#152030}
.pf-menu-panel button:hover{background:#eaf2fb;color:#00284f}
.pf-menu-panel hr{width:100%;border:0;border-top:1px solid #dbe4ec;margin:.25rem 0}
.pf-desktop-toolbar{display:flex;align-items:center;gap:.28rem;padding:.4rem .55rem;background:#edf1f5;border-bottom:1px solid #c8d2dc;overflow-x:auto;white-space:nowrap}
.pf-desktop-button{min-height:30px;border:1px solid #aebdca;border-radius:4px;background:linear-gradient(#ffffff,#e8eef4);padding:.28rem .62rem;color:#152030;font-weight:650;box-shadow:inset 0 1px 0 rgba(255,255,255,.9)}
.pf-desktop-button:hover{border-color:#7d9bb5;background:linear-gradient(#ffffff,#dfeaf3)}
.pf-desktop-button:active{background:#d6e2ec;box-shadow:inset 0 1px 2px rgba(0,0,0,.12)}
.pf-desktop-button.pf-accent{border-color:#0b4a84;background:linear-gradient(#0d5a9f,#003466);color:#fff}
.pf-toolbar-separator{width:1px;height:26px;background:#c7d0d9;margin:0 .25rem;box-shadow:1px 0 0 #fff;flex:0 0 auto}
.pf-workspace{display:grid;grid-template-columns:290px 470px minmax(520px,1fr);gap:5px;flex:1;min-height:0;padding:6px;background:#dfe5eb;overflow:hidden}
.pf-workspace .tool-panel{border-radius:5px;border:1px solid #b8c5d0;box-shadow:none;background:#f7f9fb;padding:.65rem}
.pf-sidebar,.pf-form-panel,.pf-output-column{position:static!important;max-height:none!important;min-height:0;min-width:0;overflow:hidden}
.pf-sidebar{display:flex;flex-direction:column}
.pf-form-panel{display:flex;flex-direction:column}
.pf-output-column{display:grid;grid-template-rows:minmax(300px,1.1fr) minmax(240px,.9fr);gap:5px;overflow:hidden}
.pf-output-column>.tool-panel{display:flex;flex-direction:column;min-height:0;overflow:hidden}
.pf-panel-heading{align-items:center;margin-bottom:.55rem;padding-bottom:.35rem;border-bottom:1px solid #dbe4ec}
.pf-panel-heading h2{font-size:1rem;color:#003466}
.pf-panel-heading .section-kicker{display:none}
.pf-icon-button,.pill-link,.button{border-radius:4px!important}
.pf-cage-list{display:block;flex:1;max-height:none;min-height:0;overflow:auto;border:1px solid #c8d2dc;background:#fff;padding:.25rem}
.pf-cage-item{border-radius:3px;border:1px solid transparent;background:#fff;padding:.42rem .5rem;margin-bottom:.15rem}
.pf-cage-item:hover,.pf-cage-item.is-active{box-shadow:none;border-color:#7d9bb5;background:#e8f2fc}
.pf-cage-actions{grid-template-columns:repeat(3,1fr);gap:.28rem;margin-top:.5rem}
.pf-cage-actions .button,.pf-cage-actions .pill-link,.pf-sidebar-buttons .pill-link{min-height:31px;padding:.25rem .4rem;font-size:.82rem;border:1px solid #aebdca;background:linear-gradient(#fff,#e8eef4);text-decoration:none;color:#152030}
.pf-project-summary{border-radius:4px;margin:.55rem 0;padding:.48rem .55rem}
.pf-sidebar-buttons{gap:.28rem;margin-top:.35rem}
.pf-tabs{gap:0;padding:0;border-bottom:1px solid #aebdca;margin-bottom:.55rem;overflow-x:auto;flex:0 0 auto}
.pf-tab{border-radius:4px 4px 0 0;border:1px solid #aebdca;border-bottom:0;background:#e8edf2;padding:.38rem .62rem;color:#152030;font-size:.86rem}
.pf-tab:hover,.pf-tab.is-active{background:#fff;color:#003466;border-color:#aebdca}
.pf-tab-panels{flex:1;min-height:0;overflow:auto;padding-right:.15rem}
.pf-tab-panel{gap:.55rem}
.pf-fieldset{border-radius:5px;padding:.65rem;background:#fff;border-color:#c8d2dc}
.pf-fieldset legend{font-size:.86rem;color:#003466}
.tool-form-grid{grid-template-columns:repeat(2,minmax(160px,1fr));gap:.5rem .65rem}
.tool-form-field label{font-size:.84rem;margin-bottom:.18rem;color:#152030}
.tool-form-field input,.tool-form-field select,.tool-form-field textarea{min-height:32px;border-radius:4px;padding:.34rem .45rem;background:#fff;border-color:#aebdca;font-size:.88rem}
.pf-check-field{min-height:32px;border-radius:4px;background:#f8fafc;padding:.32rem .42rem}
.pf-check-field input[type="checkbox"]{width:1rem;height:1rem}
.pf-view-buttons .pill-link,.pf-preview-toolbar .pill-link{min-height:30px;border:1px solid #aebdca;background:linear-gradient(#fff,#e8eef4);color:#152030;text-decoration:none}
.pf-view-buttons .pill-link.is-active{background:#003466;border-color:#003466;color:#fff}
.pf-preview-toolbar{justify-content:flex-start;margin:0 0 .45rem;flex:0 0 auto}
.pf-preview-wrap{height:auto!important;min-height:0!important;flex:1;overflow:hidden;border-radius:4px;background:#fff}
.pf-preview-svg{height:100%;min-height:0!important}
.pf-result-panel .tool-result-grid{grid-template-columns:repeat(3,minmax(130px,1fr));gap:.45rem;flex:0 0 auto}
.pf-result-panel .tool-result-item{border-radius:4px;padding:.5rem;background:#fff}
.pf-message{border-radius:4px;padding:.42rem .55rem}
.pf-position-table-wrap{max-height:none;flex:1;min-height:0;overflow:auto;margin-top:.45rem;background:#fff;border:1px solid #dbe4ec}
.pf-position-table-wrap .tool-table caption{padding:.45rem .55rem}
.tool-table{font-size:.82rem;background:#fff}
.tool-table th,.tool-table td{padding:.36rem .45rem}
.pf-desktop-statusbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:28px;padding:.25rem .65rem;background:#f2f5f8;border-top:1px solid #c8d2dc;color:#5b6777;font-size:.82rem;white-space:nowrap}
.pf-desktop-statusbar span:first-child{color:#152030;font-weight:650;overflow:hidden;text-overflow:ellipsis}
.pf-desktop-statusbar .is-error{color:#a12f2f}.pf-desktop-statusbar .is-busy{color:#0b4a84}
.pf-dialog{border-radius:6px}
.pf-dialog-body{padding:1rem;background:#f7f9fb}

@media (max-width:1280px){
  .pf-workspace{grid-template-columns:260px 410px minmax(420px,1fr)}
}
@media (max-width:980px){
  .pf-desktop-page{overflow:auto}.pf-desktop-app{height:auto;min-height:calc(100vh - var(--header-height));overflow:visible}.pf-workspace{grid-template-columns:1fr;overflow:visible}.pf-output-column{grid-template-rows:auto;overflow:visible}.pf-sidebar,.pf-form-panel,.pf-output-column,.pf-output-column>.tool-panel{overflow:visible}.pf-cage-list{max-height:340px}.pf-preview-wrap{height:520px!important}.pf-desktop-statusbar{white-space:normal;align-items:flex-start;flex-direction:column}.tool-form-grid{grid-template-columns:1fr}.pf-grid-span-2{grid-column:auto}
}

/* Ergänzung 01.07.2026 – Web-GUI-Ansichten */
.pf-output-column{grid-template-rows:minmax(0,1fr) auto}
.pf-views-grid{display:grid;grid-template-columns:minmax(430px,1.55fr) minmax(310px,.9fr);gap:5px;min-height:0;overflow:hidden}
.pf-main-preview-panel,.pf-right-preview-stack{min-height:0;overflow:hidden}
.pf-main-preview-panel{display:flex;flex-direction:column}
.pf-right-preview-stack{display:grid;grid-template-rows:minmax(180px,1fr) minmax(116px,.55fr) minmax(180px,1fr);gap:5px}
.pf-right-preview-stack>.tool-panel{display:flex;flex-direction:column;min-height:0;overflow:hidden}
.pf-mini-preview-wrap{height:auto;min-height:0;flex:1;overflow:hidden;border-radius:4px;background:#fff;padding:0}
.pf-mini-preview-wrap .pf-preview-svg{display:block;width:100%;height:100%;min-height:0;cursor:default}
.pf-detail-choice-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.32rem;overflow:auto;min-height:0;padding:.2rem;background:#fff;border:1px solid #dbe4ec;border-radius:4px}
.pf-detail-choice{display:grid;gap:.08rem;align-content:center;text-align:left;border:1px solid #c8d2dc;border-radius:4px;background:#fff;padding:.38rem .45rem;color:#152030;min-height:50px}
.pf-detail-choice strong{font-size:.82rem;color:#003466;line-height:1.15}.pf-detail-choice span{font-size:.72rem;color:#5b6777;line-height:1.2}.pf-detail-choice:hover,.pf-detail-choice.is-active{border-color:#003466;background:#e8f2fc}
.pf-result-panel{padding:0!important;flex:0 0 auto;min-height:0!important}.pf-result-bar{display:flex;align-items:center;justify-content:space-between;gap:1rem;width:100%;min-height:36px;border:0;border-bottom:1px solid #c8d2dc;background:linear-gradient(#f9fbfd,#e7edf3);padding:.45rem .65rem;color:#152030;text-align:left;font-weight:750}.pf-result-bar span:first-child{color:#003466}.pf-result-bar span:last-child{font-weight:650;color:#5b6777;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pf-result-bar span:last-child.is-error{color:#a12f2f}.pf-result-bar span:last-child.is-busy{color:#0b4a84}.pf-result-content{display:flex;flex-direction:column;min-height:0;padding:.65rem;overflow:hidden}.pf-result-panel.is-collapsed{max-height:38px;overflow:hidden}.pf-result-panel.is-collapsed .pf-result-bar{border-bottom:0}
.pf-sidebar-rail{display:flex;align-items:center;justify-content:center;width:100%;height:100%;min-height:220px;border:1px solid #aebdca;border-radius:4px;background:linear-gradient(#ffffff,#e8eef4);color:#003466;font-weight:850;letter-spacing:.08em;text-transform:uppercase;padding:.35rem .18rem;writing-mode:vertical-rl;text-orientation:upright;line-height:1.08}.pf-sidebar-rail[hidden]{display:none!important}.pf-sidebar-collapsed .pf-workspace{grid-template-columns:40px 470px minmax(520px,1fr)}.pf-sidebar-collapsed .pf-sidebar{padding:.25rem!important;background:#edf1f5}.pf-sidebar-collapsed .pf-sidebar>.pf-panel-heading{display:none}.pf-sidebar-collapsed .pf-sidebar #pf-sidebar-content{display:none!important}
.pf-preview-svg .pf-technical-view .pf-preview-path,.pf-preview-svg .pf-detail-view .pf-preview-path{stroke-linecap:round;stroke-linejoin:round}.pf-role-pile{fill:none;stroke:#7c8895;stroke-dasharray:7 5;stroke-width:1.4;vector-effect:non-scaling-stroke}.pf-role-longitudinal{stroke:#111111}.pf-role-longitudinal-dot{stroke:none;fill:#111111}.pf-role-transverse{stroke:#295f8f}.pf-role-bottom-transverse{stroke:#4f7798;stroke-dasharray:5 4}.pf-role-bracing{stroke:#8f4d20}.pf-role-bottom-bracing{stroke:#a35b2e}.pf-role-spacer{stroke:#2d6b52}.pf-role-pile-breaker-sleeve{stroke:#3b3b3b;fill:none}.pf-level-line{stroke:#90a0af;stroke-width:1;vector-effect:non-scaling-stroke}.pf-level-text{font-size:12px;fill:#5b6777}.pf-dimension-line,.pf-dimension-tick{stroke:#263746;stroke-width:1;vector-effect:non-scaling-stroke}.pf-dimension-text{font-size:13px;font-weight:700;fill:#263746}.pf-label-leader{stroke:#263746;stroke-width:1;vector-effect:non-scaling-stroke}.pf-position-label{fill:#fff;stroke:#003466;stroke-width:2;vector-effect:non-scaling-stroke}.pf-position-text{font-size:13px;font-weight:850;fill:#003466}.pf-detail-card{fill:#fff;stroke:#c8d2dc;stroke-width:1}.pf-detail-icon{fill:#f8fafc;stroke:#003466}.pf-detail-title{font-size:24px;font-weight:850;fill:#003466}.pf-detail-subtitle{font-size:17px;fill:#5b6777}.pf-detail-shape{fill:none;stroke:#003466;stroke-width:7;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.pf-detail-shape-fill{fill:#dce8f2;stroke:#003466;stroke-width:3;vector-effect:non-scaling-stroke}
@media (max-width:1280px){.pf-sidebar-collapsed .pf-workspace{grid-template-columns:40px 410px minmax(420px,1fr)}.pf-views-grid{grid-template-columns:minmax(350px,1.35fr) minmax(270px,.9fr)}}
@media (max-width:980px){.pf-views-grid{grid-template-columns:1fr;overflow:visible}.pf-right-preview-stack{grid-template-rows:auto}.pf-mini-preview-wrap{height:360px;min-height:300px}.pf-sidebar-collapsed .pf-workspace{grid-template-columns:1fr}.pf-sidebar-collapsed .pf-sidebar>.pf-panel-heading{display:flex}.pf-sidebar-collapsed .pf-sidebar #pf-sidebar-content{display:block!important}.pf-sidebar-collapsed .pf-sidebar-rail{display:none!important}}
@media (max-width:560px){.pf-detail-choice-list{grid-template-columns:1fr}.pf-result-bar{align-items:flex-start;flex-direction:column;gap:.18rem}.pf-mini-preview-wrap{height:300px}}

/* Ergänzung 02.07.2026 – rechte Vorschaufenster nach Desktop-GUI-Struktur */
.pf-sidebar-toggle{min-width:34px;width:34px;padding:.25rem!important;font-size:1rem;line-height:1}
.pf-sidebar-rail{writing-mode:horizontal-tb!important;text-orientation:mixed!important;font-size:1.15rem;letter-spacing:0;text-transform:none;min-width:30px;line-height:1}
.pf-sidebar-rail span{display:block;transform:none}
.pf-result-bar .pf-result-title{display:inline-flex;align-items:center;color:#003466;font-weight:850}
.pf-result-bar .pf-result-bar-right{display:flex;align-items:center;justify-content:flex-end;gap:.55rem;min-width:0;flex:1;color:#5b6777;font-weight:650;overflow:hidden}
.pf-result-bar #pf-result-hint{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pf-collapse-arrow{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:1.65rem;height:1.65rem;border:1px solid #aebdca;border-radius:4px;background:#fff;color:#003466;font-size:1rem;line-height:1}
.pf-right-preview-stack{grid-template-rows:minmax(210px,1.14fr) minmax(118px,.48fr) minmax(165px,.82fr)}
.pf-right-preview-stack>.tool-panel{padding:.55rem!important}
.pf-mini-toolbar{gap:.28rem;margin:0 0 .38rem!important;min-height:30px}
.pf-mini-toolbar .pill-link{min-height:26px;padding:.18rem .45rem;font-size:.78rem}
.pf-mini-toolbar span{font-size:.74rem;color:#5b6777;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pf-right-top-panel .pf-mini-preview-wrap{cursor:grab}
.pf-right-top-panel .pf-mini-preview-wrap svg.is-dragging{cursor:grabbing}
.pf-detail-selector-panel .pf-panel-heading,.pf-legend-panel .pf-panel-heading,.pf-right-top-panel .pf-panel-heading{flex:0 0 auto}
.pf-detail-choice-list{flex:1;min-height:0;overflow:auto;grid-template-columns:1fr}
.pf-detail-choice:hover:not(.is-active){border-color:#c8d2dc;background:#fff;transform:none;box-shadow:none}
.pf-legend-panel{display:flex;flex-direction:column;min-height:0;overflow:hidden}
.pf-legend-wrap{flex:1;min-height:0;overflow:auto;border:1px solid #dbe4ec;border-radius:4px;background:#fff;padding:.45rem;font-size:calc(.84rem * var(--pf-legend-scale,1));line-height:1.32}
.pf-legend-list{display:grid;gap:.35rem}
.pf-legend-row{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.5rem;align-items:start;padding:.34rem .4rem;border:1px solid #e0e7ef;border-radius:4px;background:#fdfefe}
.pf-legend-pos{display:inline-flex;align-items:center;justify-content:center;min-width:1.85em;height:1.85em;border:2px solid #003466;border-radius:999px;background:#fff;color:#003466;font-size:.88em;line-height:1;font-weight:850}
.pf-legend-body{display:grid;gap:.1rem;min-width:0}
.pf-legend-body b{font-weight:800;color:#152030;overflow-wrap:anywhere}
.pf-legend-body span{color:#5b6777;font-size:.9em;overflow-wrap:anywhere}
.pf-kind-pile_breaker_sleeve .pf-legend-pos{border-color:#3b3b3b;color:#3b3b3b}
@media (max-width:980px){.pf-right-preview-stack{grid-template-rows:auto auto auto}.pf-legend-wrap{max-height:300px}}
.pf-result-bar .pf-result-bar-right #pf-result-hint{color:#5b6777;font-weight:650;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pf-result-bar .pf-result-bar-right #pf-result-hint.is-error{color:#a12f2f}
.pf-result-bar .pf-result-bar-right #pf-result-hint.is-busy{color:#0b4a84}
.pf-result-bar .pf-collapse-arrow{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:1.65rem;height:1.65rem;border:1px solid #aebdca;border-radius:4px;background:#fff;color:#003466;font-size:1rem;line-height:1;font-weight:850;overflow:visible;white-space:normal}

/* Pfahlkorb Web-GUI v2026-07-03-02: verbindliche Flächen, Detailschrift und 3D-Responsivität */
.pf-preview-svg .pf-technical-view .pf-pile-fill,.pf-preview-svg .pf-technical-view circle.pf-role-pile{fill:#f1f4f6!important}.pf-preview-svg .pf-technical-view line.pf-role-pile,.pf-preview-svg .pf-technical-view polyline.pf-role-pile{fill:none!important}.pf-preview-svg .pf-technical-view .pf-ring-band.pf-role-bracing,.pf-preview-svg .pf-technical-view .pf-ring-fill.pf-role-bracing,.pf-preview-svg .pf-technical-view .pf-preview-surface.pf-role-bracing{fill:#8f4d20!important;stroke:#6e3918!important}.pf-preview-svg .pf-technical-view .pf-ring-band.pf-role-bottom-bracing,.pf-preview-svg .pf-technical-view .pf-preview-surface.pf-role-bottom_bracing,.pf-preview-svg .pf-technical-view .pf-preview-surface.pf-role-bottom-bracing{fill:#a35b2e!important;stroke:#753d1f!important}.pf-preview-svg .pf-technical-view .pf-ring-hole{fill:#fff!important}.pf-preview-svg .pf-technical-view .pf-spacer-face.pf-role-spacer,.pf-preview-svg .pf-technical-view .pf-spacer-face{fill:#2d6b52!important;stroke:#1c4234!important}.pf-preview-svg .pf-technical-view .pf-role-central-bar{fill:#8f3d17!important;stroke:#5f2510!important}.pf-plan-view .pf-dimension-text,.pf-plan-view .pf-level-text,.pf-plan-view .pf-position-text{font-size:44px!important;font-weight:850!important}.pf-plan-view .pf-preview-caption{font-size:38px!important}.pf-detail-view .pf-position-text{font-size:42px!important;font-weight:850!important}.pf-detail-view .pf-detail-card-title{font-size:44px!important}.pf-detail-view .pf-detail-note{font-size:38px!important}.pf-detail-view .pf-detail-small,.pf-detail-view .pf-detail-muted{font-size:35px!important}.pf-detail-view .pf-dimension-text{font-size:38px!important;font-weight:800!important}.pf-preview-svg.is-rotating #pf-preview-content{pointer-events:none}

/* Pfahlkorb Web-GUI v2026-07-03-02a: lesbare, aber nicht übergroße Draufsicht-/Detailschrift */
.pf-plan-view .pf-dimension-text,
.pf-plan-view .pf-level-text,
.pf-plan-view .pf-position-text{
  font-size:38px!important;
  font-weight:850!important;
}
.pf-plan-view .pf-preview-caption{
  font-size:30px!important;
}
.pf-detail-view .pf-position-text{
  font-size:38px!important;
  font-weight:850!important;
}
.pf-detail-view .pf-detail-card-title{
  font-size:40px!important;
}
.pf-detail-view .pf-detail-note{
  font-size:34px!important;
}
.pf-detail-view .pf-detail-small,
.pf-detail-view .pf-detail-muted{
  font-size:32px!important;
}
.pf-detail-view .pf-dimension-text{
  font-size:34px!important;
  font-weight:800!important;
}

/* Firmenlogo und IFC-Farben der Webfassung */
.pf-company-logo-field{display:block}
.pf-field-label{display:block;font-weight:700;margin-bottom:.45rem}
.pf-company-logo-controls{display:grid;grid-template-columns:minmax(96px,150px) minmax(180px,1fr) auto auto;gap:.75rem;align-items:center;border:1px solid var(--line);border-radius:14px;padding:.75rem;background:var(--bg)}
.pf-company-logo-preview{display:block;max-width:150px;max-height:72px;width:auto;height:auto;object-fit:contain;background:#fff;border:1px solid var(--line);border-radius:10px;padding:.35rem}
.pf-company-logo-copy{display:grid;gap:.2rem;min-width:0}
.pf-company-logo-copy strong{overflow-wrap:anywhere}
.pf-company-logo-copy span{color:var(--ink-soft);font-size:.88rem;line-height:1.35}
.pf-company-logo-select{display:inline-flex;align-items:center;justify-content:center;cursor:pointer;margin:0}
.pf-pilebreaker-region-summary{margin-top:-.25rem;font-weight:700}
.pf-pilebreaker-region-summary.is-warning{color:#8a4f00}
@media (max-width:760px){
  .pf-company-logo-controls{grid-template-columns:1fr}
  .pf-company-logo-preview{max-width:220px}
}

/* Pfahlkorb Web-GUI v2026-07-19-42: Ergebnisbereich und rechte Legende */
@media (min-width:981px){
  .pf-output-column{
    display:grid!important;
    grid-template-columns:minmax(0,1.55fr) minmax(280px,.9fr)!important;
    grid-template-rows:minmax(0,1fr) auto!important;
    gap:5px!important;
    min-height:0;
    overflow:hidden!important;
  }

  /* Der bisherige Zwischencontainer wird nur noch semantisch benötigt. Seine
     beiden Kinder nehmen direkt am Raster der Ausgabespalte teil. */
  .pf-views-grid{
    display:contents!important;
  }

  .pf-main-preview-panel{
    grid-column:1;
    grid-row:1;
    min-height:0;
  }

  /* Die rechte Spalte überspannt Hauptansicht und Ergebniszeile. Dadurch reicht
     das Legendenfenster unabhängig vom Ergebniszustand bis zum unteren Rand. */
  .pf-right-preview-stack{
    grid-column:2;
    grid-row:1 / 3;
    display:grid!important;
    grid-template-rows:minmax(240px,.9fr) minmax(0,1.1fr)!important;
    gap:5px;
    min-height:0;
    height:100%;
    overflow:hidden;
  }

  .pf-right-preview-stack>.tool-panel,
  .pf-legend-panel,
  .pf-right-top-panel{
    min-height:0;
  }

  .pf-legend-panel{
    height:100%;
  }

  .pf-legend-wrap{
    flex:1 1 auto;
    min-height:0;
    max-height:none!important;
    overflow:auto;
  }

  .pf-result-panel{
    grid-column:1;
    grid-row:2;
    display:flex;
    flex-direction:column;
    min-height:0!important;
    max-height:var(--pf-result-max-height,50%);
    overflow:hidden;
  }

  .pf-result-panel.is-collapsed{
    height:38px;
    min-height:38px!important;
    max-height:38px!important;
  }

  .pf-result-panel:not(.is-collapsed) .pf-result-content{
    flex:1 1 auto;
    min-height:0;
    overflow:auto;
  }
}

@media (max-width:980px){
  .pf-output-column{
    display:block!important;
  }
  .pf-views-grid{
    display:grid!important;
    grid-template-columns:1fr!important;
    overflow:visible!important;
  }
  .pf-main-preview-panel,
  .pf-right-preview-stack,
  .pf-result-panel{
    grid-column:auto!important;
    grid-row:auto!important;
  }
  .pf-right-preview-stack{
    grid-template-rows:auto auto!important;
  }
  .pf-result-panel:not(.is-collapsed){
    max-height:50vh;
  }
}



/* HYLLA Pfahlkorb Web-GUI · version v2026-07-19-42 */
.pf-desktop-menubar{
  align-items:center;
}
.pf-menubar-spacer{
  flex:1 1 auto;
  min-width:.5rem;
}
.pf-menubar-fullscreen{
  flex:0 0 auto;
  margin-left:auto;
}

/* Nur das aktive Eingabefenster darf sichtbar sein. Das explizite display
   verhindert, dass eine allgemeine .pf-tab-panel-Regel das hidden-Attribut
   eines anderen Registers überschreibt. */
.pf-tab-panel[hidden],
.pf-tab-panel:not(.is-active){
  display:none!important;
}
.pf-tab-panel.is-active{
  display:grid!important;
}

/* Vorschau und sämtliche Detailkarten bleiben auch bei Browser-Dunkelmodus
   sowie automatischer Farbanpassung sicher weiß. */
.pf-right-top-panel,
.pf-detail-preview-panel,
.pf-mini-preview-wrap,
.pf-mini-preview-wrap svg,
.pf-mini-preview-wrap .pf-preview-background{
  background:#fff!important;
  color-scheme:only light;
}
.pf-mini-preview-wrap .pf-preview-background,
.pf-mini-preview-wrap .pf-detail-frame,
.pf-mini-preview-wrap .pf-detail-mini-frame{
  fill:#fff!important;
}

/* Ergebnisfenster enthält nur Rechenergebnisse und Hinweise. Die Stahlliste
   hat ein eigenes, scrollbareres Dialogfenster. */
.pf-result-content{
  overflow:auto;
}
.pf-steel-list-dialog{
  width:min(1180px,calc(100% - 2rem));
}
.pf-steel-list-body{
  display:flex;
  flex-direction:column;
  min-height:min(72vh,760px);
}
.pf-dialog-heading{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  padding-bottom:.65rem;
  border-bottom:1px solid var(--line);
}
.pf-dialog-heading h2{
  margin:0;
  color:var(--brand-dark);
  font-size:1.25rem;
}
.pf-steel-list-table-wrap{
  flex:1 1 auto;
  min-height:260px;
  margin-top:.75rem;
  overflow:auto;
  border:1px solid var(--line);
  background:#fff;
}
.pf-steel-list-table-wrap .tool-table{
  min-width:850px;
}
.pf-steel-list-table-wrap thead{
  position:sticky;
  top:0;
  z-index:2;
}

@media (max-width:860px){
  .pf-desktop-menubar{
    overflow-x:auto;
  }
  .pf-menubar-fullscreen{
    position:sticky;
    right:0;
  }
}

/* Pfahlkorb: mobile Navigation immer kontrastreich. Eine ältere technische
   Media-Query setzte den Menügrund auf Weiß, während die globalen Links weiß
   bleiben. Diese abschließende Regel verhindert Weiß auf Weiß. */
@media (max-width:1080px){
  .pfahlkorb-page .nav-toggle{
    display:inline-block;
  }
  .pfahlkorb-page .main-nav{
    display:none;
    position:absolute;
    top:100%;
    left:1rem;
    right:1rem;
    max-height:calc(100dvh - var(--header-height) - 1rem);
    overflow:auto;
    padding:1rem 1.1rem;
    border:1px solid rgba(255,255,255,.16);
    border-radius:18px;
    background:#003466!important;
    box-shadow:0 16px 35px rgba(0,0,0,.25);
  }
  .pfahlkorb-page .main-nav.open,
  .pfahlkorb-page .main-nav.is-open{
    display:block;
  }
  .pfahlkorb-page .main-nav ul{
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:.35rem;
  }
  .pfahlkorb-page .main-nav a{
    display:block;
    padding:.6rem .7rem;
    color:#fff!important;
    background:transparent!important;
  }
  .pfahlkorb-page .main-nav a:hover,
  .pfahlkorb-page .main-nav a:focus-visible{
    color:#fff!important;
    background:rgba(255,255,255,.10)!important;
  }
}

/* HYLLA Pfahlkorb-Generator · v2026-07-19-42
   Detailkorrektur, mehrzeilige Register und verstellbare Arbeitsspalten. */
.pf-mini-preview-wrap,
.pf-mini-preview-wrap svg,
.pf-mini-preview-wrap .pf-preview-background,
.pf-detail-view .pf-detail-frame,
.pf-detail-view .pf-detail-mini-frame{
  background:#fff!important;
  fill:#fff!important;
  color-scheme:only light;
}
.pf-detail-view .pf-detail-frame,
.pf-detail-view .pf-detail-mini-frame{
  stroke:#d7e0e8!important;
  stroke-width:1!important;
  vector-effect:non-scaling-stroke;
}
.pf-detail-view .pf-detail-outline{
  fill:none!important;
  stroke:#17202a!important;
  stroke-width:3!important;
  stroke-linecap:round;
  stroke-linejoin:round;
  vector-effect:non-scaling-stroke;
}
.pf-detail-view .pf-detail-fill{
  fill:#eef2f5!important;
  stroke:#17202a!important;
  stroke-width:2!important;
  vector-effect:non-scaling-stroke;
}
.pf-detail-view .pf-detail-dim{
  fill:none!important;
  stroke:#52616f!important;
  stroke-width:1.15!important;
  vector-effect:non-scaling-stroke;
}
.pf-detail-view .pf-detail-note{font-size:15px!important;fill:#39434c!important;font-weight:400!important}
.pf-detail-view .pf-detail-small{font-size:13px!important;fill:#39434c!important;font-weight:400!important}
.pf-detail-view .pf-detail-muted{font-size:13px!important;fill:#5b6777!important;font-weight:400!important}
.pf-detail-view .pf-detail-card-title{font-size:20px!important;font-weight:850!important;fill:#003466!important}
.pf-detail-view .pf-detail-dim-text,
.pf-detail-view .pf-dimension-text{font-size:14px!important;fill:#39434c!important;font-weight:700!important}

/* Die Register dürfen bei schmaler Eingabespalte in eine zweite Zeile
   umbrechen. Es entsteht kein horizontaler Balken über den Registerkarten. */
.pf-tabs{
  flex-wrap:wrap!important;
  overflow:visible!important;
  white-space:normal!important;
  align-content:flex-start;
}
.pf-tab{
  flex:0 0 auto;
}

/* Desktop-Spalten können mit den beiden schmalen Griffen verändert werden. */
@media (min-width:981px){
  .pf-workspace{
    --pf-sidebar-width:290px;
    --pf-form-width:470px;
    grid-template-columns:var(--pf-sidebar-width) 7px var(--pf-form-width) 7px minmax(420px,1fr)!important;
  }
  .pf-column-resizer{
    position:relative;
    min-width:7px;
    width:7px;
    align-self:stretch;
    background:#cfd8e1;
    border:1px solid #b5c2cd;
    border-radius:3px;
    cursor:col-resize;
    touch-action:none;
    user-select:none;
    z-index:8;
  }
  .pf-column-resizer::after{
    content:"";
    position:absolute;
    left:2px;
    top:50%;
    width:1px;
    height:48px;
    transform:translateY(-50%);
    background:#6f8497;
    box-shadow:2px 0 0 #6f8497;
  }
  .pf-column-resizer:hover,
  .pf-column-resizer.is-dragging{background:#aebdca}
  .pf-sidebar-collapsed .pf-workspace{
    grid-template-columns:40px 0 var(--pf-form-width) 7px minmax(420px,1fr)!important;
  }
  .pf-sidebar-collapsed [data-resize-column="sidebar"]{
    visibility:hidden;
    pointer-events:none;
  }
}
@media (max-width:980px){
  .pf-column-resizer{display:none!important}
}

/* Im eingeklappten Korbtypenmenü stehen die Zeichen wieder untereinander;
   der Pfeil bleibt zusätzlich sichtbar. */
.pf-sidebar-rail{
  writing-mode:horizontal-tb!important;
  text-orientation:mixed!important;
  flex-direction:column!important;
  gap:.45rem!important;
  padding:.35rem .15rem!important;
}
.pf-sidebar-rail-arrow{
  display:block!important;
  writing-mode:horizontal-tb!important;
  text-orientation:mixed!important;
}
.pf-sidebar-rail-text{
  display:block!important;
  writing-mode:vertical-rl!important;
  text-orientation:upright!important;
  white-space:nowrap!important;
  letter-spacing:.02em!important;
  line-height:1.05!important;
}

/* Pfahlliste */
.pf-pile-list-dialog{width:min(1240px,calc(100% - 2rem))}
.pf-pile-list-body{display:flex;flex-direction:column;min-height:min(76vh,820px)}
.pf-pile-list-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin:.25rem 0 .75rem}
.pf-pile-list-summary{display:flex;flex-wrap:wrap;gap:.5rem 1rem;margin:0 0 .65rem;color:#5b6777}
.pf-pile-list-wrap{flex:1;min-height:0;overflow:auto;border:1px solid #c8d2dc;background:#fff}
.pf-pile-list-wrap table{min-width:1040px}
.pf-pile-list-wrap td,.pf-pile-list-wrap th{white-space:nowrap}

/* HYLLA Pfahlkorb Web-GUI · version v2026-07-19-42
   Schriftgrößen der technischen SVG-Ansichten werden im Browser an die
   Legenden-Grundschrift angepasst. Die Variablen werden je Fenster aus dessen
   realer Größe und ViewBox berechnet. */
.pf-preview-svg .pf-technical-view .pf-level-text,
.pf-preview-svg .pf-technical-view .pf-dimension-text,
.pf-preview-svg .pf-technical-view .pf-detail-dim-text,
.pf-preview-svg .pf-technical-view .pf-detail-note,
.pf-preview-svg .pf-technical-view .pf-detail-title,
.pf-preview-svg .pf-technical-view .pf-detail-subtitle,
.pf-preview-svg .pf-technical-view .pf-axis-label{
  font-size:var(--pf-svg-body-text-size,17px)!important;
}
.pf-preview-svg .pf-technical-view .pf-position-text{
  font-size:calc(var(--pf-svg-body-text-size,17px) * .9)!important;
}
.pf-preview-svg .pf-technical-view .pf-preview-caption{
  font-size:var(--pf-svg-caption-text-size,18px)!important;
}
.pf-preview-svg .pf-detail-view .pf-detail-card-title{
  font-size:var(--pf-svg-title-text-size,24px)!important;
}
.pf-preview-svg .pf-detail-view .pf-detail-small,
.pf-preview-svg .pf-detail-view .pf-detail-muted{
  font-size:var(--pf-svg-small-text-size,15px)!important;
}

/* Pfahlkorb Web-GUI v2026-07-19-42: Projektprüfung Pfahlliste */
.pf-project-check-dialog{width:min(1500px,calc(100% - 2rem))}
.pf-project-check-summary{margin:.25rem 0 .8rem;padding:.65rem .75rem;border:1px solid var(--line);border-radius:6px;background:#f7f9fb;color:var(--ink);font-weight:700}
.pf-project-check-summary.is-ok{border-color:#9bc8ae;background:#edf8f1;color:#245d39}
.pf-project-check-summary.is-error{border-color:#e4a9a9;background:#fff1f1;color:#7d2424}
.pf-project-check-table-wrap{max-height:56vh;overflow:auto;border:1px solid var(--line);border-radius:6px;background:#fff}
.pf-project-check-table{width:max-content;min-width:100%;font-size:.78rem}
.pf-project-check-table th{position:sticky;top:0;z-index:2;background:#edf3f7}
.pf-project-check-table td,.pf-project-check-table th{text-align:right;white-space:nowrap}
.pf-project-check-table td.is-text,.pf-project-check-table th:first-child,.pf-project-check-table th:nth-child(2){text-align:left}
.pf-project-check-notes{min-height:1.4em;margin:.75rem 0 0}
@media(max-width:760px){.pf-project-check-dialog{width:calc(100% - 1rem)}.pf-project-check-table-wrap{max-height:48vh}}



/* HYLLA Pfahlkorb Web-GUI · version v2026-07-19-42
   Stahlrohrbereiche, platzsparender Startzustand und Werkzeug-Seitenzoom. */
.pf-page-zoom-controls{
  display:inline-flex;
  align-items:center;
  gap:.18rem;
  flex:0 0 auto;
  margin-left:.35rem;
}
.pf-page-zoom-controls .pf-desktop-button{
  min-width:30px;
  padding:.24rem .42rem;
}
.pf-page-zoom-value{
  min-width:58px!important;
  font-variant-numeric:tabular-nums;
}
.pf-steel-tube-region-list{
  display:grid;
  gap:.55rem;
  margin:.8rem 0;
}
.pf-steel-tube-region-card{
  background:#f8fafc;
}
.pf-steel-tube-region-grid{
  grid-template-columns:minmax(130px,.7fr) repeat(2,minmax(170px,1fr));
}
.pf-preview-svg .pf-role-sleeve{
  stroke:#4f5963!important;
  fill:#aeb7bf!important;
}
.pf-preview-svg .pf-steel-tube-hole{
  fill:#fff!important;
  stroke:none!important;
}
.pf-preview-svg .pf-steel-tube-side{
  opacity:.64;
}
.pf-desktop-app{
  transform-origin:top left;
}
@media (max-width:860px){
  .pf-page-zoom-controls{
    position:sticky;
    right:5.7rem;
    background:#f2f5f8;
    z-index:2;
  }
  .pf-steel-tube-region-grid{
    grid-template-columns:1fr;
  }
}

/* HYLLA Pfahlkorb Web-GUI · version v2026-07-19-42
   Inhaltszoom ohne Änderung der Fenster- und Spaltenbreiten. */
.pf-desktop-app{
  --pf-ui-scale:1;
  font-size:calc(.92rem * var(--pf-ui-scale));
  width:100%;
  max-width:100%;
}
.pf-desktop-app .pf-desktop-menubar,
.pf-desktop-app .pf-desktop-toolbar,
.pf-desktop-app .pf-desktop-statusbar,
.pf-desktop-app .pf-menu summary,
.pf-desktop-app .pf-menu-panel button,
.pf-desktop-app .pf-desktop-button,
.pf-desktop-app .pf-tab,
.pf-desktop-app .pf-cage-item,
.pf-desktop-app .pf-legend-wrap,
.pf-desktop-app .tool-table,
.pf-desktop-app input,
.pf-desktop-app select,
.pf-desktop-app textarea,
.pf-desktop-app label,
.pf-desktop-app .field-help{
  font-size:calc(.88rem * var(--pf-ui-scale));
}
.pf-desktop-app .pf-panel-heading h2{
  font-size:calc(1rem * var(--pf-ui-scale));
}
.pf-desktop-app .pf-legend-body span{
  font-size:calc(.9em * var(--pf-ui-scale));
}
.pf-desktop-page,
.pf-app-main,
.pf-desktop-app{
  overflow-x:hidden;
}

