/**
 * Company Dashboard Mobile Optimization
 * Mobile-first responsive design för företags dashboard
 * Fokus: Snabbåtgärder högst upp, single column layout, thumb zone optimization
 */

/* ========== MOBILE LAYOUT ========== */

@media (max-width: 768px) {
  /* ========== KOMPRIMERAT SPACING ========== */
  .dashboard-container {
    padding: 0.75rem !important;
    /* #header-placeholder reserverar redan fixed header — undvik dubbel offset */
    padding-top: 0.5rem !important;
    padding-bottom: calc(75px + env(safe-area-inset-bottom)) !important;
    max-width: 100% !important;
  }

  /* ========== ULTRA-MINIMALISTISK HEADER ========== */
  .dashboard-header {
    padding: 1.1rem 1rem 1.35rem !important;
    margin-bottom: 0.75rem !important;
    background: transparent !important;
    border: none !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0.85rem !important;
    min-height: 0 !important;
  }

  .dashboard-header.dashboard-header--hero-bg {
    position: relative !important;
    min-height: 0 !important;
    padding-top: 1.25rem !important;
    padding-bottom: 1.35rem !important;
  }

  .dashboard-header-left {
    width: 100%;
    text-align: center;
    flex: 0 0 auto;
    position: relative;
    z-index: 3;
    order: 1;
  }

  .dashboard-header-left h1 {
    font-size: 1.125rem !important;
    font-weight: 600 !important;
    color: #0f172a !important;
    margin: 0 !important;
    line-height: 1.35 !important;
    padding: 0 0.5rem;
  }

  /* Dölj subtitle helt */
  .dashboard-header-left p,
  #dashboardSubtitle {
    display: none !important;
  }

  .greeting-badge {
    display: none !important; /* Dölj "God morgon" badge */
  }

  /* Logga under text i vanlig flow — undvik absolut overlap */
  .dashboard-header-right {
    display: flex !important;
    position: relative !important;
    left: auto !important;
    top: auto !important;
    transform: none !important;
    order: 2;
    flex: none !important;
    width: auto !important;
    justify-content: center;
    align-items: center;
    margin-top: 0 !important;
    padding-bottom: 0 !important;
    min-height: 0 !important;
    z-index: 3;
  }

  .dashboard-header-right .plan-badge {
    display: none !important;
  }

  .header-profile {
    display: flex !important;
    justify-content: center;
    width: 100%;
  }

  .company-avatar,
  .company-initials {
    width: 5.5rem !important;
    height: 5.5rem !important;
    font-size: 1.5rem !important;
    border-color: rgba(255, 255, 255, 0.95) !important;
    box-shadow: 0 8px 22px rgba(15, 23, 42, 0.16);
  }

  .dashboard-header--hero-bg .company-avatar,
  .dashboard-header--hero-bg .company-initials {
    width: 5.5rem !important;
    height: 5.5rem !important;
  }

  .company-avatar {
    object-fit: contain !important;
    background: rgba(255, 255, 255, 0.96) !important;
    padding: 0.3rem !important;
  }

  /* ========== LAYOUT: SINGLE COLUMN ========== */
  .dashboard-layout {
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
  }

  .dashboard-main,
  .dashboard-sidebar {
    width: 100% !important;
    max-width: 100% !important;
  }

  /* ========== EXAKT ORDNING FÖR ALLA ELEMENT ========== */
  #heroStatsGrid {
    order: -20 !important; /* Stats först */
  }

  /* ========== SNABBÅTGÄRDER - FLYTTA HÖGST UPP! ========== */
  .quick-actions-widget {
    order: -10 !important; /* Snabbåtgärder andra */
    margin-bottom: 1.5rem !important;
    background: linear-gradient(135deg, #0f172a 0%, #334155 100%) !important;
    color: white !important;
    border: none !important;
  }

  .quick-actions-widget .widget-header {
    color: white !important;
    border-bottom-color: rgba(255, 255, 255, 0.1) !important;
    margin-bottom: 1rem !important;
  }

  .quick-actions-widget .widget-header h3 {
    color: white !important;
    font-size: 1.125rem !important;
  }

  .quick-actions-widget .widget-header i {
    color: #f59e0b !important;
  }

  .quick-actions-list {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 0.75rem !important;
  }

  .quick-action-item {
    padding: 1rem !important;
    min-height: 90px !important;
    flex-direction: column !important;
    text-align: center !important;
    align-items: center !important;
    justify-content: center !important;
    background: rgba(255, 255, 255, 0.1) !important;
    border: 1px solid rgba(255, 255, 255, 0.15) !important;
    color: white !important;
  }

  .quick-action-item:hover,
  .quick-action-item:active {
    background: rgba(255, 255, 255, 0.15) !important;
    transform: scale(0.98);
  }

  .quick-action-item i:first-child {
    font-size: 1.75rem !important;
    margin-bottom: 0.5rem !important;
    color: rgba(255, 255, 255, 0.75) !important;
  }

  .quick-action-item span {
    font-size: 0.875rem !important;
    font-weight: 600 !important;
    color: white !important;
  }

  .quick-action-item .feature-lock {
    color: #94a3b8 !important;
    font-size: 0.875rem !important;
  }

  /* Primary CTA — Skapa offert (mobil) */
  .quick-action-item[data-feature="quote"]:not(.locked) {
    background: var(--company-cta, #0f172a) !important;
    border: 1px solid var(--company-cta, #0f172a) !important;
    color: #ffffff !important;
  }

  .quick-action-item[data-feature="quote"]:not(.locked) i:first-child {
    color: #ffffff !important;
  }

  .quick-action-item[data-feature="quote"]:not(.locked) span {
    color: #ffffff !important;
  }

  .quick-action-item[data-feature="quote"]:not(.locked):hover {
    background: var(--company-cta-hover, #1e293b) !important;
    border-color: var(--company-cta-hover, #1e293b) !important;
    transform: scale(0.98);
  }

  /* Övriga upplåsta funktioner — neutral (mobil) */
  .quick-action-item[data-feature]:not([data-feature="quote"]):not(.locked):not(.coming-soon) {
    background: rgba(255, 255, 255, 0.1) !important;
    border: 1px solid rgba(255, 255, 255, 0.2) !important;
    color: #ffffff !important;
  }

  .quick-action-item[data-feature]:not([data-feature="quote"]):not(.locked):not(.coming-soon) i:first-child {
    color: rgba(255, 255, 255, 0.75) !important;
  }

  .quick-action-item[data-feature]:not([data-feature="quote"]):not(.locked):not(.coming-soon) span {
    color: #ffffff !important;
  }

  .quick-action-item[data-feature]:not([data-feature="quote"]):not(.locked):not(.coming-soon):hover {
    background: rgba(255, 255, 255, 0.15) !important;
    border-color: rgba(255, 255, 255, 0.3) !important;
    transform: scale(0.98);
  }

  /* Verktygsväskan — kommer snart (mobil sidebar Snabbåtgärder) */
  .quick-action-item.coming-soon {
    background: rgba(100, 116, 139, 0.14) !important;
    border: 1px solid rgba(148, 163, 184, 0.45) !important;
    color: #64748b !important;
    cursor: not-allowed !important;
    opacity: 0.95 !important;
  }

  .quick-action-item.coming-soon:hover {
    background: rgba(100, 116, 139, 0.18) !important;
    transform: none !important;
    border-color: rgba(148, 163, 184, 0.55) !important;
  }

  .quick-action-item.coming-soon span {
    color: #64748b !important;
  }

  .quick-action-item.coming-soon .coming-soon-badge {
    color: #94a3b8 !important;
  }

  .quick-action-item.coming-soon i:first-child {
    color: #94a3b8 !important;
    margin-bottom: 0.5rem !important;
  }

  .quick-action-item.coming-soon i {
    color: #94a3b8 !important;
  }

  /* Premium features - gråmarkerade när locked */
  .quick-action-item.locked {
    background: rgba(100, 116, 139, 0.1) !important;
    border: 1px solid rgba(100, 116, 139, 0.2) !important;
    color: #94a3b8 !important;
    opacity: 0.6;
    cursor: pointer;
    position: relative;
  }

  .quick-action-item.locked:hover {
    background: rgba(100, 116, 139, 0.15) !important;
    opacity: 0.7;
  }

  .quick-action-item.locked i:first-child {
    color: #94a3b8 !important;
  }

  .quick-action-item.locked .feature-lock {
    display: inline-block !important;
    color: #f59e0b !important;
    animation: lockPulse 2s ease-in-out infinite;
  }

  @keyframes lockPulse {
    0%, 100% {
      opacity: 0.6;
      transform: scale(1);
    }
    50% {
      opacity: 1;
      transform: scale(1.1);
    }
  }

  /* ========== STATS - BARA 3 VIKTIGASTE I MOBILVY ========== */
  .stats-compact {
    border-radius: 12px !important;
    overflow: hidden !important;
    margin-bottom: 1rem !important;
  }

  .stat-row {
    padding: 0.875rem 1rem !important;
    gap: 12px !important;
    grid-template-columns: 36px 1fr auto !important;
  }

  /* Dölj stat-row-meta (tredje kolumnen) för renare look */
  .stat-row-meta {
    display: none !important;
  }

  /* Gör value mer prominent */
  .stat-row-value {
    font-size: 0.938rem !important;
    font-weight: 700 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    max-width: 100% !important;
  }

  /* Speciell regel för projektvärde med range */
  .stat-row:first-child .stat-row-value {
    font-size: 0.813rem !important;
    white-space: normal !important;
    line-height: 1.3 !important;
    word-break: break-word !important;
  }

  .stat-row-label {
    font-size: 0.813rem !important;
    color: #64748b !important;
  }

  .stat-row-icon {
    width: 36px !important;
    height: 36px !important;
  }

  /* Dölj mindre viktiga stats (Potential, Status, Plan) */
  .stat-row:nth-child(4),  /* Potential */
  .stat-row:nth-child(5),  /* Status */
  .stat-row:nth-child(6) { /* Plan */
    display: none !important;
  }

  /* Behåll gamla .stat-card regler för bakåtkompatibilitet */
  .hero-stats-grid {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 0.75rem !important;
    margin-bottom: 1rem !important;
  }

  .stat-card:nth-child(3),
  .stat-card:nth-child(4) {
    display: none !important;
  }

  .stat-card {
    padding: 0.75rem !important;
    min-height: auto !important;
  }

  .stat-icon {
    width: 36px !important;
    height: 36px !important;
    font-size: 1.125rem !important;
  }

  .stat-value {
    font-size: 1.375rem !important;
    margin: 0.375rem 0 !important;
  }

  .stat-label {
    font-size: 0.688rem !important;
    line-height: 1.2 !important;
  }

  .stat-change {
    display: none !important;
  }

  /* ========== PARTNERKAMPANJER - COLLAPSIBLE ========== */
  /* Flytta partnerkampanjer efter snabbåtgärder */
  #sponsorCampaignsSection {
    order: -5 !important; /* Partnerkampanjer tredje */
    margin-bottom: 1rem !important;
    position: relative !important;
  }

  #projectsSection {
    order: 0 !important; /* Projekt fjärde */
  }

  #quotesSection {
    order: 5 !important; /* Offerter femte */
  }

  #wickedPromoSlot,
  .wicked-promo-slot {
    order: 99 !important; /* Wicked sist under hela layouten */
    margin-top: 0.75rem !important;
    margin-bottom: 1rem !important;
    width: 100%;
  }

  .weather-widget {
    order: 10 !important; /* Väder sjätte */
  }

  /* Övriga widgets */
  .dashboard-sidebar .widget-card:not(.quick-actions-widget):not(.weather-widget) {
    order: 15 !important;
  }

  .partner-campaigns__header {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 0.75rem !important;
    cursor: pointer !important;
    user-select: none !important;
  }

  /* Lägg till collapse-indikator */
  .partner-campaigns__header::after {
    content: '▼' !important;
    position: absolute !important;
    right: 1rem !important;
    top: 1.5rem !important;
    font-size: 0.875rem !important;
    color: #64748b !important;
    transition: transform 0.3s ease !important;
  }

  #sponsorCampaignsSection.collapsed .partner-campaigns__header::after {
    transform: rotate(-90deg) !important;
  }

  #sponsorCampaignsSection.collapsed .partner-campaigns__benefit,
  #sponsorCampaignsSection.collapsed #sponsorCampaignsGrid {
    display: none !important;
  }

  .partner-campaigns__titleWrap {
    width: 100%;
  }

  .partner-campaigns__title {
    font-size: 1.125rem !important;
  }

  .partner-campaigns__subtitle {
    font-size: 0.813rem !important;
  }

  .partner-campaigns__meta {
    width: 100%;
    justify-content: flex-start !important;
  }

  #sponsorCampaignsGrid {
    display: flex !important;
    overflow-x: auto !important;
    gap: 0.75rem !important;
    scroll-snap-type: x mandatory !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
    padding-bottom: 0.35rem !important;
  }

  #sponsorCampaignsGrid::-webkit-scrollbar {
    display: none !important;
  }

  #sponsorCampaignsGrid > * {
    min-width: 220px !important;
    max-width: 220px !important;
    flex-shrink: 0 !important;
    scroll-snap-align: start !important;
  }

  body.company-dashboard-page #sponsorCampaignsGrid {
    display: flex !important;
    grid-template-columns: none !important;
  }

  body.company-dashboard-page #sponsorCampaignsGrid > * {
    min-width: 220px !important;
    max-width: 220px !important;
  }

  body.company-dashboard-page .partner-campaign-card__media {
    aspect-ratio: 2.4 / 1 !important;
  }

  body.company-dashboard-page .partner-campaign-card__text {
    -webkit-line-clamp: 2 !important;
    min-height: 0 !important;
  }

  .partner-campaign-card {
    margin-bottom: 0 !important;
  }

  /* ========== PROJEKT SEKTION ========== */
  .section-container {
    margin-bottom: 1rem !important;
    padding: 0.875rem !important;
  }

  /* ========== FÖRENKLAD PROJEKT-SEKTION ========== */
  .projects-section-header {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 0.75rem !important;
    margin-bottom: 0.75rem !important;
    padding-bottom: 0 !important;
  }

  .projects-header-content {
    margin-bottom: 0.5rem !important;
  }

  .projects-section-title {
    font-size: 1rem !important;
    font-weight: 700 !important;
    display: flex !important;
    align-items: center !important;
    gap: 0.5rem !important;
  }

  .projects-section-title i {
    width: 18px !important;
    height: 18px !important;
  }

  /* Dölj subtitle i mobilvy */
  .projects-section-subtitle {
    display: none !important;
  }

  /* Gör "Se alla projekt" mer diskret */
  .projects-view-all-btn {
    width: 100% !important;
    justify-content: center !important;
    font-size: 0.813rem !important;
    padding: 0.625rem 1rem !important;
    background: transparent !important;
    border: 1px solid #e2e8f0 !important;
    color: #475569 !important;
  }

  .projects-view-all-btn:active {
    background: #f1f5f9 !important;
  }

  /* Se fler projekt - mobil: länk till nearby-jobs.html */
  .mobile-expand-projects-btn {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0.5rem !important;
    width: 100% !important;
    padding: 0.875rem 1.5rem !important;
    margin-top: 1rem !important;
    font-size: 0.938rem !important;
    font-weight: 600 !important;
    color: #0f172a !important;
    background: #f1f5f9 !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 12px !important;
    text-decoration: none !important;
    transition: background 0.2s ease !important;
    min-height: 44px !important;
    -webkit-tap-highlight-color: transparent !important;
  }

  .mobile-expand-projects-btn:hover,
  .mobile-expand-projects-btn:active {
    background: #e2e8f0 !important;
  }

  .mobile-expand-projects-btn i {
    width: 18px !important;
    height: 18px !important;
  }

  /* ========== FÖRBÄTTRADE PROJEKT-TABS ========== */
  .project-tabs {
    position: sticky !important;
    top: 80px !important;
    z-index: 100 !important;
    gap: 0.375rem !important;
    padding: 0.5rem 0.875rem !important;
    margin: 0 -0.875rem 0.875rem -0.875rem !important;
    background: white !important;
    box-shadow: 0 1px 0 #e2e8f0 !important;
    display: flex !important;
    justify-content: stretch !important;
    overflow-x: visible !important;
    -webkit-overflow-scrolling: auto !important;
    scrollbar-width: auto !important;
  }

  .project-tabs::-webkit-scrollbar {
    display: none !important;
  }

  .project-tab {
    flex: 1 !important;
    white-space: nowrap !important;
    padding: 0.5rem 0.375rem !important;
    font-size: 0.75rem !important;
    font-weight: 600 !important;
    border-radius: 8px !important;
    background: transparent !important;
    color: #64748b !important;
    border: none !important;
    flex-shrink: 1 !important;
    min-width: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0.25rem !important;
  }

  .project-tab.active {
    background: #0f172a !important;
    color: white !important;
  }

  .project-tab i {
    display: none !important;
  }

  /* Kortare text för mobil - CSS content replacement */
  .project-tab[data-tab="new"]::after {
    content: 'Nya';
  }

  .project-tab[data-tab="my-quotes"]::after {
    content: 'Offerter';
  }

  .project-tab[data-tab="priority"]::after {
    content: 'Prioriterade';
  }

  /* Dölj originaltext */
  .project-tab[data-tab="new"],
  .project-tab[data-tab="my-quotes"],
  .project-tab[data-tab="priority"] {
    font-size: 0 !important;
  }

  .project-tab[data-tab="new"]::after,
  .project-tab[data-tab="my-quotes"]::after,
  .project-tab[data-tab="priority"]::after {
    font-size: 0.75rem !important;
    font-weight: 600 !important;
  }

  /* Dölj badges i tabs för renare look */
  .tab-badge {
    display: none !important;
  }

  /* ========== FILTERS - HORISONTELL SCROLL PÅ MOBIL ========== */
  .project-filters {
    display: flex !important;
    flex-direction: column !important;
    gap: 0.75rem !important;
    margin-bottom: 1rem !important;
    padding-bottom: 0.5rem !important;
  }

  #projectsSection #projectFilters.project-filters.project-filters--collapsed {
    display: none !important;
  }

  #projectsSection .project-filters-toggle {
    display: inline-flex !important;
  }

  .project-filters .filter-group {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 0.375rem !important;
    min-width: 0 !important;
  }

  .project-filters .filter-chips {
    flex-wrap: nowrap !important;
    display: flex !important;
    gap: 0.5rem !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
    padding-bottom: 0.25rem !important;
    width: 100% !important;
  }

  .project-filters .filter-chips::-webkit-scrollbar {
    display: none !important;
  }

  /* Mobile filter chips (om de finns) */
  .mobile-filter-chips {
    display: flex !important;
    overflow-x: auto !important;
    gap: 0.5rem !important;
    padding: 0.5rem 0 !important;
    margin-bottom: 1rem !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
  }

  .mobile-filter-chips::-webkit-scrollbar {
    display: none !important;
  }

  .filter-chip {
    white-space: nowrap !important;
    padding: 0.5rem 0.875rem !important;
    font-size: 0.813rem !important;
    flex-shrink: 0 !important;
  }

  /* ========== KOMPAKTA PROJEKT-KORT ========== */
  .feed-list {
    display: flex !important;
    flex-direction: column !important;
    gap: 0.625rem !important;
  }

  .feed-item,
  .project-card {
    padding: 0.875rem !important;
    border-radius: 12px !important;
    border: 1px solid #e2e8f0 !important;
    background: white !important;
  }

  .project-header {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 0.5rem !important;
    margin-bottom: 0.625rem !important;
  }

  .project-title {
    font-size: 0.938rem !important;
    font-weight: 600 !important;
    margin-bottom: 0.25rem !important;
  }

  .project-meta {
    flex-wrap: wrap !important;
    gap: 0.5rem !important;
  }

  .project-meta-item {
    font-size: 0.75rem !important;
    padding: 0.25rem 0.5rem !important;
  }

  /* Gör CTA-knappar mer framträdande */
  .project-actions {
    margin-top: 0.75rem !important;
    padding-top: 0.75rem !important;
    border-top: 1px solid #f1f5f9 !important;
  }

  .project-cta {
    padding: 0.625rem 1rem !important;
    font-size: 0.875rem !important;
    font-weight: 600 !important;
    border-radius: 8px !important;
  }

  /* REMOVED: Värdeberäkningar borttagna
  ========== PROJEKTVÄRDE BADGE - KOMPAKT ==========
  .project-value-badge {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 0.25rem !important;
    padding: 0.5rem 0.625rem !important;
    font-size: 0.688rem !important;
    white-space: normal !important;
    max-width: 100% !important;
  }

  .project-value-badge i {
    font-size: 0.688rem !important;
  }

  .project-value-amount {
    font-size: 0.75rem !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    word-break: break-word !important;
  }

  Confidence indicator - mer kompakt
  .confidence-indicator {
    font-size: 0.625rem !important;
    padding: 0.125rem 0.25rem !important;
    margin-top: 0.125rem !important;
    gap: 0.188rem !important;
  }

  .confidence-dot {
    width: 5px !important;
    height: 5px !important;
  }

  .confidence-text {
    font-weight: 500 !important;
  }
  */

  /* ========== PROJECT DESCRIPTION - MOBILE ========== */
  .project-description {
    margin: 0.5rem 0 !important;
    padding: 0.625rem !important;
  }

  .project-description-text {
    font-size: 0.813rem !important;
  }

  /* ========== PROJECT ACTIONS ROW - MOBILE ========== */
  .project-actions-row {
    flex-direction: column !important;
    gap: 0.5rem !important;
  }

  /* Bara projekt-åtgärder — inte offert-feed (annars blir eye-knappen 100% bred och sticker ut) */
  .project-actions-row .btn-view-details,
  .project-actions-row .btn-feed-action {
    width: 100% !important;
    flex: none !important;
  }

  /* ========== SENASTE OFFERTER — mobilkort ========== */
  #quotesList.feed-list,
  #quotesList {
    overflow: hidden !important;
  }

  .quote-feed-item {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    grid-template-areas: "main amount" "badge badge" !important;
    gap: 0.35rem 0.75rem !important;
    align-items: start !important;
    padding: 0.875rem 0 !important;
    margin: 0 !important;
    transform: none !important;
    overflow: hidden !important;
  }

  .quote-feed-item:hover {
    transform: none !important;
    margin: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .quote-feed-item .quote-accepted-badge {
    grid-column: 1 / -1 !important;
  }

  .quote-feed-main {
    grid-area: main !important;
    min-width: 0 !important;
  }

  .quote-feed-title {
    display: inline !important;
    font-size: 0.9375rem !important;
    line-height: 1.35 !important;
    word-break: normal !important;
    overflow-wrap: break-word !important;
    white-space: normal !important;
  }

  .quote-feed-customer {
    display: block !important;
    margin-left: 0 !important;
    margin-top: 0.2rem !important;
    line-height: 1.35 !important;
  }

  .quote-feed-item .badge-status {
    grid-area: badge !important;
    justify-self: start !important;
    white-space: nowrap !important;
    font-size: 0.7rem !important;
    max-width: 100% !important;
  }

  .quote-feed-amount {
    grid-area: amount !important;
    justify-self: end !important;
    align-self: start !important;
    white-space: nowrap !important;
    font-size: 0.9375rem !important;
  }

  /* Hela raden är klickbar — dölj action-knappar som annars krockar layouten */
  .quote-feed-actions {
    display: none !important;
  }

  /* ========== MODAL - MOBILE ========== */
  .project-details-modal {
    padding: 0 !important;
  }

  .project-details-content {
    max-height: 100vh !important;
    border-radius: 0 !important;
    height: 100%;
  }

  .modal-header {
    padding: 1rem !important;
  }

  .modal-title-section h2 {
    font-size: 1.125rem !important;
  }

  .modal-body {
    padding: 1rem !important;
  }

  .detail-section h3 {
    font-size: 1rem !important;
  }

  .project-images-grid {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 0.5rem !important;
  }

  .project-image {
    height: 120px !important;
  }

  .modal-footer {
    padding: 1rem !important;
    flex-direction: column-reverse !important;
  }

  /* ========== PROJEKTDETALJER MODAL - MOBILE ========== */
  /* Gör info-grids single column på mobil */
  .timing-info-grid,
  .metadata-grid {
    grid-template-columns: 1fr !important;
    gap: 0.75rem !important;
  }
  
  /* REMOVED: estimation-grid borttagen */

  .calc-results {
    grid-template-columns: 1fr !important;
  }

  /* Kompaktare padding på sektioner */
  .detail-section-timing,
  .detail-section-metadata,
  .detail-section-breakdown,
  .detail-section-calculations {
    padding: 1rem !important;
  }

  /* Mindre fontstorlek på mobil */
  .info-value {
    font-size: 0.875rem !important;
  }

  /* REMOVED: estimation-value borttagen
  .estimation-value {
    font-size: 1rem !important;
  }
  */

  /* ========== SENASTE OFFERTER - COLLAPSIBLE ========== */
  #quotesSection {
    position: relative !important;
  }

  .quotes-section-header {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 0.75rem !important;
    cursor: pointer !important;
    user-select: none !important;
  }

  /* Lägg till collapse-indikator */
  .quotes-section-header::after {
    content: '▼' !important;
    position: absolute !important;
    right: 1rem !important;
    top: 1rem !important;
    font-size: 0.875rem !important;
    color: #64748b !important;
    transition: transform 0.3s ease !important;
  }

  #quotesSection.collapsed .quotes-section-header::after {
    transform: rotate(-90deg) !important;
  }

  #quotesSection.collapsed #quotesList,
  #quotesSection.collapsed .quotes-view-all-btn {
    display: none !important;
  }

  .quotes-section-title {
    font-size: 1.125rem !important;
  }

  .quotes-view-all-btn {
    width: 100% !important;
    justify-content: center !important;
  }

  /* ========== SIDEBAR WIDGETS - STACK & COLLAPSE ========== */
  /* Snabbåtgärder (i sidebar) ska ligga ovanför Partnerkampanjer/"Fler erbjudanden" */
  .dashboard-sidebar {
    order: -15 !important; /* Före main content - Snabbåtgärder högst upp */
    margin-top: 0 !important;
    margin-bottom: 1rem !important;
  }

  .dashboard-main {
    order: 0 !important; /* Main content efter Snabbåtgärder */
    display: flex !important;
    flex-direction: column !important;
  }

  .widget-card {
    margin-bottom: 1rem !important;
    padding: 0.875rem !important;
  }

  /* Snabbåtgärder behåller sitt spacing */
  .quick-actions-widget {
    padding: 1rem !important;
    margin-bottom: 1.25rem !important;
  }

  .widget-header {
    cursor: pointer !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    padding-bottom: 0.75rem !important;
    margin-bottom: 0.75rem !important;
  }

  .widget-header h3 {
    font-size: 1rem !important;
  }

  /* Add collapse indicator */
  .widget-card:not(.quick-actions-widget) .widget-header::after {
    content: '▼' !important;
    font-size: 0.75rem !important;
    color: #64748b !important;
    transition: transform 0.3s ease !important;
  }

  .widget-card.collapsed .widget-header::after {
    transform: rotate(-90deg) !important;
  }

  .widget-card.collapsed > *:not(.widget-header) {
    display: none !important;
  }

  /* ========== DÖLJA MINDRE VIKTIGA WIDGETS ========== */
  .weather-widget,
  .activity-widget,
  .tips-widget {
    display: none !important;
  }

  /* Notiser visas på mobil som collapsible widget */

  /* Möten-widget behålls men gör den mer kompakt */
  .meetings-widget {
    order: -5 !important; /* Placera högt upp efter snabbåtgärder */
    margin-bottom: 1.5rem !important;
  }

  .meetings-list {
    max-height: 300px !important;
    overflow-y: auto !important;
  }

  .meeting-item {
    padding: 0.75rem !important;
    font-size: 0.875rem !important;
  }

  /* ========== ONBOARDING MODAL ========== */
  .onboarding-modal {
    max-width: 90% !important;
    max-height: 80vh !important;
    overflow-y: auto !important;
    padding: 1.5rem !important;
  }

  .onboarding-header h2 {
    font-size: 1.25rem !important;
  }

  .checklist-item {
    padding: 1rem !important;
  }

  .checklist-title {
    font-size: 0.938rem !important;
  }

  .checklist-description {
    font-size: 0.813rem !important;
  }

  /* ========== FOUNDER WELCOME MODAL ========== */
  #founderWelcomeModal .bg-white {
    max-width: 90% !important;
    padding: 1.5rem !important;
  }

  #founderWelcomeModal h2 {
    font-size: 1.5rem !important;
  }

  #founderWelcomeModal .prose {
    font-size: 0.938rem !important;
  }
}

/* ========== SMALL SCREENS (< 360px) ========== */
@media (max-width: 360px) {
  .dashboard-container {
    padding: 0.75rem !important;
  }

  .dashboard-header {
    padding: 0.75rem !important;
  }

  .dashboard-header-left h1 {
    font-size: 1.25rem !important;
  }

  .quick-actions-list {
    grid-template-columns: 1fr !important; /* Single column på små skärmar */
  }

  .hero-stats-grid {
    gap: 0.5rem !important;
  }

  .stat-card {
    padding: 0.75rem !important;
  }

  .stat-value {
    font-size: 1.25rem !important;
  }

  #sponsorCampaignsGrid > * {
    min-width: 200px !important;
    max-width: 200px !important;
  }

  /* Project tabs - extra kompakt för små skärmar */
  .project-tab {
    padding: 0.5rem 0.25rem !important;
    font-size: 0.688rem !important;
  }
  
  .project-tab[data-tab="new"]::after {
    content: 'Nya';
  }
  
  .project-tab[data-tab="my-quotes"]::after {
    content: 'Mina';
  }
  
  .project-tab[data-tab="priority"]::after {
    content: 'Prioriterade';
  }

  .project-tab[data-tab="new"]::after,
  .project-tab[data-tab="my-quotes"]::after,
  .project-tab[data-tab="priority"]::after {
    font-size: 0.688rem !important;
  }
}

/* ========== LANDSCAPE MODE ========== */
@media (max-width: 768px) and (orientation: landscape) {
  .dashboard-header {
    padding: 0.75rem !important;
  }

  .dashboard-header-left h1 {
    font-size: 1.25rem !important;
  }

  .quick-actions-list {
    grid-template-columns: repeat(4, 1fr) !important; /* 4 kolumner i landscape */
  }

  .quick-action-item {
    min-height: 70px !important;
    padding: 0.75rem !important;
  }

  .quick-action-item i:first-child {
    font-size: 1.5rem !important;
  }

  .hero-stats-grid {
    grid-template-columns: repeat(4, 1fr) !important;
  }

  .widget-card {
    padding: 0.75rem !important;
  }
}

/* ========== PROGRESSIVE DISCLOSURE ANIMATIONS ========== */
@keyframes slideDown {
  from {
    opacity: 0;
    max-height: 0;
    overflow: hidden;
  }
  to {
    opacity: 1;
    max-height: 500px;
  }
}

@keyframes slideUp {
  from {
    opacity: 1;
    max-height: 500px;
  }
  to {
    opacity: 0;
    max-height: 0;
    overflow: hidden;
  }
}

.widget-card:not(.collapsed) > *:not(.widget-header) {
  animation: slideDown 0.3s ease !important;
}

/* ========== TOUCH OPTIMIZATIONS ========== */
@media (max-width: 768px) {
  /* Större touch targets */
  button,
  .btn,
  a[role="button"],
  .quick-action-item,
  .project-tab,
  .filter-chip {
    min-height: 44px !important;
    min-width: 44px !important;
  }

  /* Tap highlight */
  * {
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0.05) !important;
  }

  /* Smooth scrolling */
  html {
    scroll-behavior: smooth !important;
  }

  /* Momentum scrolling */
  .project-tabs,
  #sponsorCampaignsGrid,
  .mobile-filter-chips {
    -webkit-overflow-scrolling: touch !important;
  }
}

/* ========== PROXIMITY INFO MODAL - MOBILE ========== */
@media (max-width: 768px) {
  .proximity-info-modal .modal-content {
    max-width: 95% !important;
    margin: 1rem !important;
  }
  
  .proximity-info-content .modal-header {
    padding: 1rem 3.5rem 1rem 1rem !important;
  }
  
  .proximity-info-modal .modal-close-btn {
    top: 0.75rem !important;
    right: 0.75rem !important;
    width: 36px !important;
    height: 36px !important;
  }
  
  .proximity-info-modal .modal-close-btn i {
    width: 18px !important;
    height: 18px !important;
  }
  
  .proximity-header-icon {
    width: 40px !important;
    height: 40px !important;
  }
  
  .proximity-header-icon i {
    width: 20px !important;
    height: 20px !important;
  }
  
  .proximity-info-content .modal-body {
    padding: 1rem !important;
  }
  
  .proximity-level {
    padding: 0.75rem !important;
  }
  
  .level-icon {
    width: 36px !important;
    height: 36px !important;
  }
}

/* ========== PRINT MEDIA ========== */
@media print {
  .company-mobile-bottom-nav,
  .company-standalone-fab,
  .quick-actions-widget {
    display: none !important;
  }
}

/* Dark mode — company dashboard mobile surfaces */
body.dark-mode .quick-actions-widget,
body.dark-mode .mobile-stat-card,
body.dark-mode .mobile-section-card {
  background: #1e293b !important;
  border-color: #334155 !important;
  color: #f8fafc !important;
}

/* ============================================
   ARV visual polish — mobile, scoped to dashboard
   ============================================ */
@media (max-width: 768px) {
  body.company-dashboard-page {
    --arv-gap: 0.9rem;
  }

  body.company-dashboard-page .dashboard-container {
    max-width: var(--arv-shell-max, 1600px) !important;
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 0.85rem clamp(1.1rem, 4vw, 1.5rem) !important;
    padding-top: 0.65rem !important;
    padding-bottom: calc(75px + env(safe-area-inset-bottom)) !important;
    background: transparent !important;
  }

  body.company-dashboard-page .dashboard-layout {
    display: flex !important;
    flex-direction: column !important;
    gap: var(--arv-gap) !important;
  }

  body.company-dashboard-page .dashboard-main,
  body.company-dashboard-page .dashboard-sidebar {
    display: contents !important;
  }

  body.company-dashboard-page .quick-actions-widget {
    order: -40 !important;
  }

  body.company-dashboard-page #heroStatsGrid {
    order: -30 !important;
  }

  body.company-dashboard-page #quotesSection {
    order: -20 !important;
  }

  body.company-dashboard-page .dashboard-modules-grid {
    order: -10 !important;
  }

  body.company-dashboard-page .hero-stats-grid {
    margin-bottom: 0 !important;
  }

  body.company-dashboard-page .dashboard-header {
    margin-bottom: 0 !important;
    gap: 0.85rem !important;
    box-shadow: none !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  body.company-dashboard-page .quick-actions-widget,
  body.company-dashboard-page #heroStatsGrid,
  body.company-dashboard-page #quotesSection,
  body.company-dashboard-page .dashboard-modules-grid,
  body.company-dashboard-page .section-container {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  body.company-dashboard-page .dashboard-header.dashboard-header--hero-bg {
    padding-top: 1.25rem !important;
    padding-bottom: 1.35rem !important;
    padding-left: 1.05rem !important;
    padding-right: 1.05rem !important;
    border-radius: 1.1rem !important;
    min-height: 0 !important;
  }

  body.company-dashboard-page .dashboard-header-left h1 {
    color: #F2EFE9 !important;
    font-weight: 600 !important;
    letter-spacing: -0.02em !important;
    font-size: 1.15rem !important;
  }

  body.company-dashboard-page .hero-stats-grid {
    margin-bottom: 0 !important;
  }

  body.company-dashboard-page .section-container,
  body.company-dashboard-page .widget-card,
  body.company-dashboard-page .mobile-section-card,
  body.company-dashboard-page .mobile-stat-card {
    background: var(--bg-card, #FBFaf7) !important;
    border-color: var(--border-color, rgba(199, 204, 209, 0.65)) !important;
    border-radius: 1.1rem !important;
    box-shadow: none !important;
    margin-bottom: 0 !important;
  }

  /*
    Snabbåtgärder mobil: ARV-färger + 2-kolumns app-knappar (inte mörkt läge)
  */
  body.company-dashboard-page .quick-actions-widget {
    background: var(--bg-card, #FBFaf7) !important;
    color: var(--text-primary, #0F0F10) !important;
    border: 1px solid var(--border-color, rgba(199, 204, 209, 0.65)) !important;
  }

  body.company-dashboard-page .quick-actions-list {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 0.75rem !important;
    overflow: visible !important;
    width: 100% !important;
    flex-direction: unset !important;
    flex-wrap: unset !important;
  }

  body.company-dashboard-page .quick-action-item {
    position: relative !important;
    flex: none !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    min-height: 5.5rem !important;
    padding: 1rem 0.65rem !important;
    white-space: normal !important;
    border-radius: 0.9rem !important;
    background: var(--bg-secondary, #F2EFE9) !important;
    border: 1px solid var(--border-color, rgba(199, 204, 209, 0.65)) !important;
    color: var(--text-primary, #0F0F10) !important;
  }

  body.company-dashboard-page .quick-actions-widget .widget-header {
    color: var(--text-primary, #0F0F10) !important;
    border-bottom-color: var(--border-light, rgba(199, 204, 209, 0.4)) !important;
  }

  body.company-dashboard-page .quick-actions-widget .widget-header h3 {
    color: var(--text-primary, #0F0F10) !important;
  }

  body.company-dashboard-page .quick-actions-widget .widget-header i {
    color: var(--arv-forest, #1B2D26) !important;
  }

  body.company-dashboard-page .quick-action-item i:first-child {
    width: 1.65rem !important;
    height: 1.65rem !important;
    margin-bottom: 0.15rem !important;
    color: var(--arv-forest, #1B2D26) !important;
  }

  body.company-dashboard-page .quick-action-item span:not(.meeting-count-badge):not(.coming-soon-label):not(.coming-soon-badge) {
    color: var(--text-primary, #0F0F10) !important;
    font-size: 0.8125rem !important;
    line-height: 1.25 !important;
    white-space: normal !important;
  }

  body.company-dashboard-page .quick-action-item .feature-lock {
    position: absolute !important;
    top: 0.45rem !important;
    right: 0.45rem !important;
    width: 0.85rem !important;
    height: 0.85rem !important;
    margin: 0 !important;
    color: var(--arv-muted, #5C6560) !important;
  }

  body.company-dashboard-page .quick-action-item:hover,
  body.company-dashboard-page .quick-action-item:active {
    background: #EAE6DF !important;
    border-color: rgba(27, 45, 38, 0.22) !important;
    transform: none !important;
  }

  body.company-dashboard-page .quick-action-item[data-feature="quote"]:not(.locked) {
    background: var(--arv-forest, #1B2D26) !important;
    border-color: var(--arv-forest, #1B2D26) !important;
    color: #F2EFE9 !important;
  }

  body.company-dashboard-page .quick-action-item[data-feature="quote"]:not(.locked) i:first-child,
  body.company-dashboard-page .quick-action-item[data-feature="quote"]:not(.locked) span {
    color: #F2EFE9 !important;
  }

  body.company-dashboard-page .quick-action-item[data-feature]:not([data-feature="quote"]):not(.locked):not(.coming-soon) {
    background: var(--bg-secondary, #F2EFE9) !important;
    border: 1px solid var(--border-color, rgba(199, 204, 209, 0.65)) !important;
    color: var(--text-primary, #0F0F10) !important;
  }

  body.company-dashboard-page .quick-action-item[data-feature]:not([data-feature="quote"]):not(.locked):not(.coming-soon) i:first-child,
  body.company-dashboard-page .quick-action-item[data-feature]:not([data-feature="quote"]):not(.locked):not(.coming-soon) span {
    color: var(--text-primary, #0F0F10) !important;
  }

  body.company-dashboard-page .quick-action-item.coming-soon,
  body.company-dashboard-page .quick-action-item.locked {
    background: #EAE6DF !important;
    border-color: var(--border-color, rgba(199, 204, 209, 0.65)) !important;
    color: var(--arv-muted, #5C6560) !important;
  }

  body.company-dashboard-page .quick-action-item.coming-soon i:first-child,
  body.company-dashboard-page .quick-action-item.coming-soon span,
  body.company-dashboard-page .quick-action-item.locked i:first-child,
  body.company-dashboard-page .quick-action-item.locked span {
    color: var(--arv-muted, #5C6560) !important;
  }

  body.company-dashboard-page button.quick-action-item {
    width: 100% !important;
    font: inherit !important;
    cursor: pointer !important;
  }

  body.company-dashboard-page .dashboard-modules-grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 1rem !important;
    align-items: start !important;
    justify-items: stretch !important;
  }

  body.company-dashboard-page .dashboard-modules-grid > #sponsorCampaignsSection,
  body.company-dashboard-page .dashboard-modules-grid > #projectsSection {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
  }

  body.company-dashboard-page #sponsorCampaignsGrid {
    display: flex !important;
    grid-template-columns: none !important;
    max-width: 100% !important;
  }

  body.company-dashboard-page #sponsorCampaignsGrid > * {
    min-width: 220px !important;
    max-width: 220px !important;
  }

  body.company-dashboard-page #projectsSection .feed-list,
  body.company-dashboard-page #projectsCarousel.feed-list {
    grid-template-columns: 1fr !important;
    max-width: 100% !important;
  }
}

body.company-dashboard-page.dark-mode .quick-actions-widget,
body.company-dashboard-page.dark-mode .mobile-stat-card,
body.company-dashboard-page.dark-mode .mobile-section-card {
  background: #1A201C !important;
  border-color: rgba(199, 204, 209, 0.18) !important;
  color: #F2EFE9 !important;
}

/* Kompakt / iPad (bottennav ≤1024): samma stacklogik, undvik trasiga mellanlägen */
@media (min-width: 769px) and (max-width: 1024px) {
  body.company-dashboard-page .dashboard-container {
    max-width: var(--arv-shell-max, 1600px) !important;
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: clamp(1.75rem, 4vw, 2.5rem) !important;
    padding-right: clamp(1.75rem, 4vw, 2.5rem) !important;
    padding-bottom: calc(75px + env(safe-area-inset-bottom)) !important;
  }

  body.company-dashboard-page .dashboard-layout {
    display: flex !important;
    flex-direction: column !important;
    gap: var(--arv-gap) !important;
  }

  body.company-dashboard-page .dashboard-main,
  body.company-dashboard-page .dashboard-sidebar {
    display: contents !important;
  }

  body.company-dashboard-page .quick-actions-widget {
    order: -40 !important;
  }

  body.company-dashboard-page #heroStatsGrid {
    order: -30 !important;
  }

  /* Stats: en kolumn + dölj meta (legacy 2-kolumn kläms) */
  body.company-dashboard-page .stats-compact {
    display: flex !important;
    flex-direction: column !important;
    background: var(--bg-card, #fff) !important;
    border: 1px solid var(--border-color, #e5e7eb) !important;
    border-radius: 1.15rem !important;
    overflow: hidden !important;
  }

  body.company-dashboard-page .stat-row {
    grid-template-columns: 2.25rem minmax(0, 1fr) auto !important;
    gap: 0.65rem !important;
    background: transparent !important;
    border: none !important;
    border-bottom: 1px solid var(--border-light, #eee) !important;
    border-radius: 0 !important;
  }

  body.company-dashboard-page .stat-row:last-child {
    border-bottom: none !important;
  }

  body.company-dashboard-page .stat-row-meta {
    display: none !important;
  }

  body.company-dashboard-page .stat-row-value {
    font-size: 0.9375rem !important;
    max-width: 55% !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }

  body.company-dashboard-page #sponsorCampaignsGrid {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    grid-template-columns: none !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    gap: 0.75rem !important;
    scroll-snap-type: x mandatory !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: thin !important;
    padding-bottom: 0.35rem !important;
  }

  body.company-dashboard-page #sponsorCampaignsGrid > * {
    flex: 0 0 min(15.5rem, 72vw) !important;
    width: min(15.5rem, 72vw) !important;
    min-width: min(15.5rem, 72vw) !important;
    max-width: min(15.5rem, 72vw) !important;
    scroll-snap-align: start !important;
  }

  body.company-dashboard-page #quotesList .quotes-compact-feed {
    display: flex !important;
    flex-direction: column !important;
  }

  body.company-dashboard-page #quotesList .quote-feed-item {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    grid-template-areas:
      "main amount"
      "badge badge" !important;
    gap: 0.35rem 0.75rem !important;
    align-items: start !important;
  }

  body.company-dashboard-page #quotesList .quote-feed-main {
    grid-area: main !important;
    min-width: 0 !important;
  }

  body.company-dashboard-page #quotesList .quote-feed-customer {
    display: block !important;
    margin-left: 0 !important;
    margin-top: 0.15rem !important;
  }

  body.company-dashboard-page #quotesList .quote-feed-item .badge-status {
    grid-area: badge !important;
    justify-self: start !important;
  }

  body.company-dashboard-page #quotesList .quote-feed-amount {
    grid-area: amount !important;
    justify-self: end !important;
  }

  body.company-dashboard-page #quotesList .quote-feed-actions {
    display: none !important;
  }

  body.company-dashboard-page #projectsSection .feed-list,
  body.company-dashboard-page #projectsCarousel.feed-list {
    grid-template-columns: 1fr !important;
  }
}
