@media (max-width: 768px) {
    :root {
        --gap: var(--gap-mobile, 10px) !important;
        --rounding: var(--rounding-mobile, 0) !important;
        --border-radius: calc(var(--rounding) * 2px) !important;
    }

    * {
        -webkit-tap-highlight-color: transparent;
    }

    html, body {
        height: 100%;
        width: 100%;
        margin: 0;
        padding: 0;
        overflow: hidden;
    }

    #dashboard-wrapper {
        height: 100dvh;
        width: 100vw;
        align-items: stretch;
        display: flex;
    }

    #dashboard-container {
        display: flex !important;
        flex-direction: column !important;
        width: 100% !important;
        height: 100% !important;
        padding: var(--gap) !important;
        gap: var(--gap) !important;
        box-sizing: border-box;
        transform: none !important;
    }

    #dashboard-container.show-quick-panel > *:not(#quick-panel),
    #dashboard-container.show-documents-panel > *:not(#documents-panel),
    #dashboard-container.show-timeclock-panel > *:not(#timeclock-panel) {
        display: none !important;
    }
    #dashboard-container.show-quick-panel,
    #dashboard-container.show-documents-panel,
    #dashboard-container.show-timeclock-panel {
        padding: 0 !important;
        gap: 0 !important;
        height: 100dvh !important;
    }
    #quick-panel,
    #documents-panel,
    #timeclock-panel {
        display: none !important;
    }
    #dashboard-container.show-quick-panel #quick-panel,
    #dashboard-container.show-documents-panel #documents-panel,
    #dashboard-container.show-timeclock-panel #timeclock-panel {
        display: flex !important; width: 100% !important;
        height: 100% !important; border: none !important;
        border-radius: 0 !important; grid-column: 1 !important;
        grid-row: 1 !important;
    }
    .mobile-close-quick-panel { display: inline-block !important; }

    .scratchpad-box,
    .task-manager-box,
    .links-box,
    #tablet-overlay-toggle,
    #tablet-overlay-buttons {
        display: none !important;
    }

    .auth-box { order: 0 !important; }
    .clock-box { order: 1 !important; }
    .timer-box { order: 2 !important; }
    .upcoming-box { order: 3 !important; flex: 0 0 auto !important; max-height: 250px !important; }
    .command-box { order: 4 !important; flex: 0 0 auto !important; overflow: visible !important; }
    #search-results-container { order: 5 !important; position: static !important; max-height: 250px !important; height: auto !important; width: 100% !important; flex: 0 0 auto !important; }
    .notes-box { order: 6 !important; }

    #left-sidebar, #right-sidebar {
        display: contents !important;
    }

    .box {
        width: 100% !important;
        margin: 0 !important;
        box-sizing: border-box;
    }

    .clock-box, .timer-box, .upcoming-box {
        flex: 0 0 auto !important;
    }

    .box .header {
        cursor: pointer;
    }

    .box:hover {
        border-left-color: var(--surface0) !important;
    }

    .box .min-btn {
        display: inline-block !important;
    }

    .notes-box {
        flex: 1 1 auto !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        display: flex !important;
        flex-direction: column !important;
    }

    .notes-content-wrapper {
        flex: 1 1 auto !important;
        min-height: 0 !important;
        overflow-y: auto !important;
    }

    .auth-box {
        flex: 0 0 auto !important;
    }
    
    #dashboard-container.locked .clock-box,
    #dashboard-container.locked .timer-box,
    #dashboard-container.locked .notes-box,
    #dashboard-container.locked .command-box,
    #dashboard-container.locked #search-results-container {
        display: none !important;
    }

    .clock-display { font-size: 40px !important; }
    .timer-display { font-size: 48px !important; }
    #notes-area, .todo-text { font-size: 11px !important; line-height: 17px !important; }
    .line-numbers { font-size: 11px !important; line-height: 17px !important; width: 4ch !important; }
    .header { font-size: 9px !important; }
    .status-text { font-size: 8px !important; }
    .command-input { font-size: 16px !important; padding-right: 220px !important; }
    .search-result-item { font-size: 10px !important; }
    .todo-datetime, .todo-reminder-btn, .todo-reminder-status { font-size: 8px !important; }
    button { font-size: 8px !important; }
    .min-btn { font-size: 14px !important; }
    .timer-input { font-size: 9px !important; }
    .focus-core-label { font-size: 9px !important; }

    .notes-box .header { gap: 6px !important; padding-bottom: 6px !important; }
    
    #notes-tabs-container {
        overflow-x: auto !important;
        -webkit-overflow-scrolling: touch !important;
        touch-action: pan-x !important;
        scrollbar-width: none !important;
    }
    #notes-tabs-container::-webkit-scrollbar { display: none !important; }
    
    #scroll-left-tabs, #scroll-right-tabs { display: none !important; }
    
    .note-tab { padding: 6px 12px !important; gap: 6px !important; flex-shrink: 0 !important; }
    .tab-name-input { font-size: 12px !important; width: 75px !important; }
    
    #category-display {
        font-size: 0 !important;
        padding: 0 !important;
        width: 32px !important;
        height: 28px !important;
        justify-content: center !important;
        flex-shrink: 0 !important;
    }
    #category-display::before { font-size: 14px !important; opacity: 1 !important; margin-left: -2px !important; }
    
    .add-tab-wrapper {
        border-left: none !important;
        margin-left: 0 !important;
        padding-left: 0 !important;
    }
    
    /* --- DYNAMISCHER UPCOMING HEADER --- */
    .upcoming-box.minimized .decipher-text { display: none !important; }
    
    .upcoming-box.minimized .header > div:first-child {
        width: 100% !important;
        min-width: 0 !important;
    }

    .upcoming-box.minimized #upcoming-min-info { 
        margin-left: 0 !important; 
        color: var(--peach) !important;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        max-width: calc(100vw - 40px);
        display: block !important;
        width: 100% !important;
    }

    .clock-box .min-btn,
    .timer-box .min-btn,
    .upcoming-box .min-btn {
        display: none !important;
    }

    .todo-item {
        flex-wrap: wrap !important;
        gap: 6px 12px !important;
    }
    .todo-drag-handle { order: 0 !important; }
    .todo-checkbox { order: 1 !important; }
    .todo-text { order: 2 !important; flex: 1 1 0% !important; min-width: 0 !important; }
    .todo-delete { order: 3 !important; flex: 0 0 auto !important; margin-left: auto !important; }
    
    .todo-reminder-wrapper {
        order: 4 !important;
        flex: 1 1 100% !important;
        margin-left: 30px !important;
        margin-top: 2px !important;
        justify-content: flex-start !important;
    }

    .notes-content-wrapper {
        padding-bottom: 10px !important;
        scroll-behavior: smooth;
        overscroll-behavior-y: contain;
    }

    #notes-area {
        min-height: 100% !important;
    }

    #calendar-view-container {
        padding: 5px !important;
        height: auto !important;
        overflow-y: visible !important;
    }
    .calendar-header button {
        font-size: 24px !important;
        padding: 10px 25px !important;
        background-color: var(--surface0) !important;
        border-radius: var(--border-radius) !important;
    }
    .calendar-grid {
        gap: 2px !important;
        flex: 0 0 auto !important;
        min-height: 0 !important;
        height: auto !important;
    }
    .calendar-day-header {
        font-size: 10px !important;
    }
    .calendar-cell {
        height: auto !important;
        aspect-ratio: 1 / 1 !important;
        padding: 3px !important;
        min-height: 0 !important;
    }
    .calendar-date {
        font-size: 16px !important;
        margin-bottom: 0 !important;
        text-align: center !important;
    }
    .calendar-cell-indicators {
        justify-content: center !important;
    }

    .cmd-btn {
        padding: 6px !important;
    }
    
    .cmd-btn svg {
        width: 18px !important;
        height: 18px !important;
    }

    #command-form > div:last-child {
        gap: 2px !important;
    }

    #mobile-menu-btn {
        display: block !important;
    }
    
    #searchbar-icons {
        display: none !important;
    }
    
    #searchbar-icons.mobile-visible {
        display: flex !important;
        position: static !important;
        background: transparent !important;
        border: none !important;
        padding: 0 !important;
        margin: 0 !important;
        box-shadow: none !important;
        flex-direction: row !important;
        gap: 8px !important;
    }

    .notes-body-container {
        flex-direction: column !important;
    }
    
    .notes-toolbar {
        border-left: none !important;
        border-top: 1px solid var(--surface0);
        margin-left: 0 !important;
        margin-top: 8px;
        padding: 6px !important;
        width: 100% !important;
        max-height: none !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        white-space: nowrap !important;
        flex-shrink: 0 !important;
        box-sizing: border-box !important;
        -webkit-overflow-scrolling: touch !important;
        scrollbar-width: none !important;
        display: block !important;
    }
    .notes-toolbar::-webkit-scrollbar { display: none !important; }
    
    .color-picker-menu {
        position: fixed !important;
        left: 50% !important;
        top: auto !important;
        bottom: 90px !important;
        transform: translateX(-50%) !important;
        margin: 0 !important;
        z-index: 10000 !important;
        padding: 10px !important;
        gap: 8px !important;
        box-shadow: 0 10px 40px rgba(0,0,0,0.8) !important;
        border: 2px solid var(--surface0) !important;
        flex-direction: column !important;
        align-items: center !important;
        background-color: var(--mantle) !important;
        width: max-content !important;
        min-width: 48px !important;
        box-sizing: border-box !important;
    }

    .color-picker-menu::after {
        content: '';
        display: block !important;
        position: absolute !important;
        top: -100px !important; bottom: -100px !important;
        left: -100px !important; right: -100px !important;
        z-index: -1 !important;
    }

    .color-swatch {
        width: 26px !important;
        height: 26px !important;
        min-width: 26px !important;
        min-height: 26px !important;
        display: block !important;
        flex-shrink: 0 !important;
    }

    .toolbar-top-group {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        justify-content: flex-start !important;
        align-items: center !important;
        width: max-content !important;
        gap: 2px !important;
        padding: 0 4px !important;
    }

    .toolbar-top-group > div[style*="width: 10px"] {
        width: 1px !important;
        height: 16px !important;
        margin: 0 4px !important;
    }

    .toolbar-bottom-group {
        display: none !important;
    }

    .file-item-card {
        flex-direction: column !important;
        align-items: stretch !important;
        overflow: visible !important;
    }
    .file-item-info {
        width: 100% !important;
        mask-image: none !important;
        -webkit-mask-image: none !important;
    }
    .file-name-text {
        white-space: normal !important;
        word-break: break-word !important;
        transition: none !important;
        transform: none !important;
    }
    .file-actions {
        position: static !important;
        opacity: 1 !important; pointer-events: auto !important;
        width: 100% !important; justify-content: flex-end !important;
        margin-top: 10px !important; background: transparent !important;
        padding-left: 0 !important; padding-right: 0 !important;
    }
}