/* Ausschließlich kleine Bildschirme; Desktop-Regeln bleiben unverändert. */
@media (max-width: 768px) {
    body { padding-top: calc(64px + env(safe-area-inset-top, 0px)); }
    .white-bar { height: calc(64px + env(safe-area-inset-top, 0px)); padding: env(safe-area-inset-top, 0px) 14px 0; background: #fff; border-bottom: 1px solid #d9e4ea; gap: 10px; }
    .white-bar .logo-link img { height: 38px; max-width: 44px; object-fit: contain; }
    .white-bar .product-name-mobile { display: inline-flex; align-items: center; gap: 8px; margin: 0; color: #173e50; background: transparent; font-size: 19px; letter-spacing: .02em; }
    .white-bar .product-name-mobile small { padding: 3px 6px; color: #914000; background: #fff0df; border-radius: 5px; font-size: 11px; }
    .white-bar .blinkender-text { display: none; }
    .white-bar .menu-toggle { display: flex; align-items: center; justify-content: center; gap: 8px; margin-left: auto; min-width: 96px; min-height: 44px; padding: 8px 12px; border: 1px solid #c4d8e3; border-radius: 10px; background: #edf5f9; color: #153f53; font-size: 23px; line-height: 1; }
    .mobile-menu-label { font-size: 16px; font-weight: 700; }
    .white-bar .menu-toggle[aria-expanded="true"] { background: #006c8d; border-color: #006c8d; color: #fff; }
    .white-bar .menu-toggle:focus-visible { outline: 3px solid #006c8d; outline-offset: 2px; }
    body.stobus-menu-open { overflow: hidden; }
    .main-nav { top: calc(64px + env(safe-area-inset-top, 0px)); bottom: 0; height: auto; max-height: calc(100dvh - 64px - env(safe-area-inset-top, 0px)); padding: 12px 14px calc(24px + env(safe-area-inset-bottom, 0px)); overflow-y: auto; overscroll-behavior: contain; background: #f1f6f9; align-items: stretch; line-height: 1.4; }
    .main-nav .nav-links { display: block; height: auto; width: 100%; white-space: normal; }
    .main-nav .nav-links li { width: 100%; margin: 0; }
    .main-nav .nav-links a, .main-nav .nav-links .logout-link { display: block; box-sizing: border-box; width: 100%; min-height: 48px; padding: 13px 16px !important; margin: 0 0 5px; border: 0; border-radius: 8px; background: #fff; color: #193e50; font-size: 17px; line-height: 1.4; text-align: left; text-decoration: none; }
    .main-nav .nav-links .dropdown > a::after { content: '⌄'; float: right; font-size: 20px; }
    .main-nav .nav-links .dropdown.open > a::after { content: '⌃'; }
    .main-nav .dropdown-menu { display: none; margin: 0; padding: 0 0 6px 12px; list-style: none; }
    .main-nav .dropdown:hover > .dropdown-menu { display: none; }
    .main-nav .dropdown.open > .dropdown-menu { display: block; }
    .main-nav .dropdown-menu a { background: #e1eef5; }
    .main-nav .mobile-only { display: block; }
    .footer { position: static; padding: 20px 16px calc(20px + env(safe-area-inset-bottom, 0px)); color: #54636e; font-size: 12px; line-height: 1.6; }
    .footer-separator { display: inline; padding: 0; }
    .feedback-button-datenschutz, .feedback-button-feedback { display: none; }
    .stobus-files-page { background: #f1f5f8; color: #233e4d; font-size: 16px; }
    .stobus-files-page > h1 { margin: 22px 16px 16px; font-size: 24px; line-height: 1.35; text-align: left; overflow-wrap: anywhere; }
    .files-desktop-title { display: none; }
    .files-mobile-title { display: inline !important; }
    .stobus-files-page .file-nav { display: flex; flex-wrap: wrap; gap: 8px; padding: 0 16px; text-align: left !important; }
    .stobus-files-page .file-nav .btn-nav { display: inline-flex; align-items: center; justify-content: center; flex: 1 1 0; min-width: 0; min-height: 46px; margin: 0; padding: 10px 8px; border: 1px solid #c8dbe4; border-radius: 10px; background: #fff; color: #21485d; font-size: 14px; line-height: 1.4; text-decoration: none; overflow-wrap: anywhere; }
    .stobus-files-page .file-nav [aria-current="page"] { color: #fff; background: #006f91; border-color: #006f91; }
    .file-nav-separator, .file-nav-bottom { display: none !important; }
    .files-mobile-tools { display: grid !important; gap: 8px; margin: 20px 16px 12px; text-align: left; }
    .files-mobile-tools label { font-size: 14px; font-weight: 700; }
    .files-mobile-tools input, .files-mobile-tools select { box-sizing: border-box; width: 100%; max-width: none; margin: 0 0 8px; padding: 12px; min-height: 46px; border: 1px solid #bfd3dd; border-radius: 10px; background: #fff; color: #233e4d; font-size: 16px; }
    .stobus-download-page #deleteForm, .stobus-download-page #zipForm { max-width: none; width: auto; margin: 0 16px; }
    .stobus-download-page .dltable { display: block; margin: 12px 0; border: 0; background: transparent; }
    .stobus-download-page .dltable thead { display: none; }
    .stobus-download-page .dltable tbody { display: grid; gap: 14px; }
    .stobus-download-page .dltable tbody tr { display: grid; grid-template-columns: 38px minmax(0, 1fr); grid-template-areas: 'select name' '. size' '. date' '. remaining' 'actions actions' 'sharing sharing'; align-items: start; padding: 14px; border: 1px solid #d2e0e7; border-radius: 14px; background: #fff; box-shadow: 0 2px 5px #23405208; cursor: default; }
    .stobus-download-page .dltable tbody tr[hidden] { display: none !important; }
    .stobus-download-page .dltable td { display: block; max-width: none; width: auto; padding: 0; border: 0; white-space: normal; overflow: visible; text-overflow: clip; overflow-wrap: anywhere; }
    .stobus-download-page .dltable .file-select { grid-area: select; }
    .stobus-download-page .dltable input[type="checkbox"] { width: 24px; height: 24px; min-width: 24px; min-height: 24px; max-width: none; max-height: none; margin: 0; accent-color: #006f91; }
    .file-name { grid-area: name; font-size: 18px; font-weight: 700; line-height: 1.45; }
    .file-size { grid-area: size; margin-top: 6px; color: #546877; font-size: 14px; }
    .file-date { grid-area: date; margin-top: 4px; color: #546877; font-size: 14px; }
    .file-date::before { content: 'Hochgeladen: '; }
    .file-remaining { grid-area: remaining; margin-top: 4px; color: #546877; font-size: 14px; }
    .file-remaining::before { content: 'Verbleibende Downloads: '; }
    .file-actions { grid-area: actions; display: flex !important; flex-wrap: wrap; gap: 8px; margin-top: 14px; }
    .file-shared-arrow { display: none; }
    .file-sharing { grid-area: sharing; display: flex !important; flex-wrap: wrap; gap: 8px; margin-top: 8px; align-items: center; }
    .file-sharing br { display: none; }
    .file-sharing small { flex-basis: 100%; }
    .stobus-download-page .dltable .btn { display: inline-flex; align-items: center; justify-content: center; flex: 1 1 auto; min-height: 46px; box-sizing: border-box; margin: 0; padding: 10px 12px; border-radius: 9px; font-size: 15px; line-height: 1.4; white-space: normal; text-decoration: none; }
    .stobus-download-page .dltable .btn-download { color: #fff; background: #006f91; border: 1px solid #006f91; font-weight: 700; }
    .stobus-download-page .dltable .btn-cancel { color: #963c34; background: #fff; border: 1px solid #dfbcb8; }
    .stobus-download-page .dltable .btn-share, .stobus-download-page .dltable .btn-link { color: #21485d; background: #eef5f8; border: 1px solid #ccdee6; }
    .stobus-download-page .btn-container .btn-nav { min-height: 48px; width: 100%; margin: 8px 0; white-space: normal; }
    .stobus-download-page .modal { z-index: 1600; padding: 16px; box-sizing: border-box; }
    .stobus-download-page .modal-content { width: 100%; margin: 10vh auto; max-height: 75dvh; overflow-y: auto; border-radius: 12px; }
    .stobus-download-page .modal input { font-size: 16px; }
    .stobus-download-page .modal button { min-height: 44px; }
    .stobus-upload-page .dropzone { margin: 22px 16px; padding: 22px 16px; min-height: 0; border: 1px solid #cbdfe8; border-radius: 14px; background: #fff; color: #254d60; font-size: 16px; line-height: 1.6; }
    .stobus-upload-page #upload-input { display: block; box-sizing: border-box; width: 100%; max-width: 100%; margin: 16px 0; font-size: 16px; color: #455e6c; }
    .stobus-upload-page #upload-input::file-selector-button { display: block; width: 100%; min-height: 50px; margin: 0 0 12px; padding: 12px; border: 0; border-radius: 10px; color: #fff; background: #006f91; font-size: 17px; font-weight: 700; }
    .stobus-upload-page .desktop-upload-copy { display: none; }
    .stobus-upload-page .mobile-upload-copy { display: block !important; }
    .stobus-upload-page .total-progress-wrapper { box-sizing: border-box; width: auto; margin: 18px 16px 0; }
    .stobus-upload-page .total-progress { display: none; }
    .stobus-upload-page #dropzone > br { display: none; }
    .stobus-upload-page #overlay .overlay-content { box-sizing: border-box; width: calc(100% - 32px); max-width: 440px; max-height: 85dvh; overflow-y: auto; padding: 24px 20px; border-radius: 16px; background: #fff; color: #233e4d; line-height: 1.6; }
    .stobus-upload-page #overlay button { min-height: 48px; margin-top: 16px; padding: 12px 16px; border: 0; border-radius: 10px; background: #006f91; color: #fff; font-size: 16px; }
    .stobus-upload-page #upload-current-file { overflow-wrap: anywhere; font-weight: 700; }
}
