/* WHB Dokumentenshop - Designvorschau, keine Zahlungsabwicklung */
:root{--ink:#102d46;--blue:#137cae;--sky:#d4e7f1;--navy:#0c2639;--orange:#ff9e45;--slate:#566b7c;--bg:#f5f8fb;--line:#dae5ed;--good:#18746d}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:system-ui,-apple-system,'Segoe UI',Arial,sans-serif;line-height:1.55}
a{color:inherit}.shop-container{max-width:1200px;width:calc(100% - 40px);margin:auto}.whb-site-header{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 3px 20px #0a315018}.whb-site-nav{max-width:1200px;margin:auto;padding:14px 20px;display:flex;justify-content:space-between;align-items:center;gap:20px}.whb-wordmark{font-size:21px;text-decoration:none;font-weight:850;white-space:nowrap}.whb-wordmark strong{color:#247fb7}.whb-primary-nav{display:flex;align-items:center;flex-wrap:wrap;gap:10px 17px}.whb-primary-nav a{font-size:13px;font-weight:650;text-decoration:none;white-space:nowrap}.whb-primary-nav a:hover,.whb-primary-nav a[aria-current]{color:#047bb0}.whb-primary-nav .whb-login{border:1px solid #2f83bd;border-radius:7px;padding:9px 12px}.cart-shortcut{color:#fff!important;background:#116c9a;padding:9px 13px;border-radius:8px}.cart-shortcut strong{font-variant-numeric:tabular-nums}
.shop-intro{background:linear-gradient(115deg,#0c2840,#123d5b);color:#fff;padding:48px 0 40px}.shop-kicker{font-size:12px;font-weight:800;letter-spacing:.14em;color:#97d6f7;text-transform:uppercase}.shop-intro h1{font-size:clamp(30px,4.2vw,46px);max-width:770px;margin:11px 0 12px;line-height:1.13;letter-spacing:-.022em}.shop-intro p{max-width:820px;color:#d8e7f0;margin:0}.shop-pill-list{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0 0}.shop-pill{border-radius:100px;padding:6px 11px;background:#ffffff17;font-size:12px;color:#e8f3fa;border:1px solid #ffffff36}
.shop-note{margin:24px 0 26px;padding:14px 18px;border-left:4px solid var(--orange);background:#fff;border-radius:8px;font-size:14px;color:#3e5a6e;box-shadow:0 2px 8px #0c2c4410}.shop-note strong{color:#143e5a}.shop-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:24px;align-items:start;padding:8px 0 70px}.shop-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px;margin-bottom:18px}.shop-toolbar label{font-size:13px;font-weight:700}.shop-search{min-width:240px;width:min(460px,100%);background:#fff;border:1px solid #bccfda;padding:12px 13px;border-radius:9px;font:inherit;font-size:14px;color:var(--ink)}.shop-search:focus{outline:3px solid #80c6e988;border-color:var(--blue)}.shop-count{font-size:13px;color:var(--slate)}.shop-filters{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:20px}.shop-filter{border:1px solid #c9dbe6;background:white;border-radius:100px;padding:8px 12px;cursor:pointer;color:#36536b;font-size:12px;font-weight:700}.shop-filter[aria-pressed="true"]{background:#0c618f;color:white;border-color:#0c618f}
.shop-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.shop-product{display:flex;flex-direction:column;background:white;border:1px solid var(--line);border-radius:13px;overflow:hidden;box-shadow:0 5px 14px #0f3e5810}.shop-cover{aspect-ratio:1.48;display:flex;align-items:center;justify-content:center;background:#e9f1f5;overflow:hidden}.shop-cover img{width:100%;height:100%;object-fit:cover}.shop-product-body{padding:17px;display:flex;flex-direction:column;flex:1}.shop-id{font-size:11px;font-weight:900;letter-spacing:.08em;color:#1277a9}.shop-product h2{font-size:16px;line-height:1.35;margin:8px 0 8px;min-height:44px}.shop-desc{font-size:12.5px;color:#5a7080;line-height:1.5;flex:1;margin:0 0 16px}.shop-meta{font-size:11px;color:#687b87;margin:0 0 12px}.shop-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;gap:10px}.shop-price{font-size:21px;font-weight:850;white-space:nowrap}.shop-format{font-size:11px;border-radius:5px;padding:5px 7px;color:#126481;background:#ebf6fb;font-weight:800}.shop-actions{display:flex;gap:7px}.shop-btn{font:inherit;border-radius:8px;cursor:pointer;transition:background .15s}.add-to-cart{background:#f5a04d;color:#142735;border:0;font-weight:800;padding:11px 10px;flex:1;font-size:12px}.add-to-cart:hover{background:#ffb567}.add-to-cart[data-in-cart="true"]{background:#ddf2ed;color:#166454}.shop-preview{background:#fff;border:1px solid #acc9d6;color:#16516f;font-size:12px;font-weight:700;padding:11px 9px}.shop-preview:hover{background:#eff7fc}
.shop-cart{position:sticky;top:101px;background:#fff;border:1px solid var(--line);box-shadow:0 5px 17px #163a5214;border-radius:13px;padding:20px}.shop-cart h2{margin:0;font-size:21px}.shop-cart small{font-size:12px;color:#677c8b}.shop-cart ul{list-style:none;padding:0;margin:12px 0}.shop-cart li{display:grid;grid-template-columns:1fr auto;gap:5px 8px;padding:12px 0;border-bottom:1px solid var(--line);font-size:12px}.cart-name{font-weight:700;line-height:1.4}.cart-price{font-weight:800;white-space:nowrap}.cart-remove{font:inherit;background:transparent;border:0;color:#9a3737;cursor:pointer;text-align:left;font-size:11px;padding:0;justify-self:start}.cart-summary{border-top:2px solid var(--line);padding-top:16px;display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:15px;font-weight:800}.cart-summary strong{font-size:23px}.cart-muted{color:#617a8b;font-size:12px;margin:14px 0}.shop-checkout{width:100%;border-radius:8px;padding:13px 10px;font:inherit;font-size:13px;font-weight:850;background:#e1e9ee;color:#678295;border:0;cursor:not-allowed}.cart-empty{font-size:13px;color:#708696;padding:14px 0}.shop-footer{background:#0b2236;color:#c3d5e0;padding:28px 0;font-size:13px}.shop-footer-inner{display:flex;justify-content:space-between;gap:25px;flex-wrap:wrap}.shop-footer a{color:#d8eaf6}.shop-footer a:hover{color:#fff}
.shop-dialog{border:0;border-radius:14px;width:min(530px,calc(100% - 30px));padding:25px;box-shadow:0 16px 70px #00142366}.shop-dialog::backdrop{background:#031928af}.shop-dialog h2{font-size:21px;color:var(--ink);margin:0 0 10px}.shop-dialog p{color:#466477}.shop-dialog a{color:#086a9b}.shop-dialog button{font:inherit;border:1px solid #9db5c5;border-radius:8px;padding:9px 15px;background:#fff;cursor:pointer}.shop-dialog .dialog-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-top:20px}.shop-empty-state{text-align:center;padding:35px 10px;color:#59788a}
@media(max-width:1180px){.shop-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.whb-primary-nav{gap:8px}}
@media(max-width:830px){.shop-layout{grid-template-columns:1fr}.shop-cart{position:static;order:-1}.shop-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.whb-site-nav{flex-direction:column;align-items:flex-start}.whb-primary-nav{width:100%}.shop-intro{padding:32px 0}}
@media(max-width:540px){.shop-container{width:calc(100% - 28px)}.shop-grid{grid-template-columns:1fr}.shop-product h2{min-height:0}.shop-toolbar{align-items:stretch}.shop-search{width:100%;min-width:0}.shop-actions{gap:10px}.shop-btn{font-size:13px}.whb-site-nav{padding:13px 14px}.whb-primary-nav{gap:6px 11px}.whb-primary-nav a{font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Explicitly enforce native hidden state over card display rules */
.shop-product[hidden],#shop-empty-search[hidden]{display:none!important}

/* Cart -> customer portal, TEST ONLY */
.shop-checkout.shop-transfer:not(:disabled){background:#116c9a;color:#fff;cursor:pointer}
.shop-checkout.shop-transfer:not(:disabled):hover{background:#07557f}
.shop-checkout.shop-transfer:focus-visible{outline:3px solid #75bdef;outline-offset:2px}
