/**
 * responsive.css — FacultyPage Theme
 * Media queries for tablet and mobile breakpoints.
 * Breakpoints:
 *   1200px — wide desktop
 *   1050px — laptop / collapse right widget col
 *    960px — tablet (hero stacks, nav center hides)
 *    768px — sidebar hidden, mobile nav active
 *    600px — small mobile refinements
 */

/* ═══════════════════════════════════════════════════════════
   1200px — Wide Desktop
   ═══════════════════════════════════════════════════════════ */
@media (max-width: 1200px) {
  /*
  .fp-main--two-col {
    grid-template-columns: 1fr 280px;
  }*/
  .fp-main--two-col {
    grid-template-columns: 1fr;
  }
  details {
    margin-bottom: 20px;
  }
}

/* ═══════════════════════════════════════════════════════════
   1050px — Laptop / Collapse Right Column
   ═══════════════════════════════════════════════════════════ */
@media (max-width: 1050px) {
  /* Dashboard */
  .fp-main--two-col {
    grid-template-columns: 1fr;
  }
  /*.fp-sidebar-right { display: none; }*/

  /* Profile */
  .fp-main--profile {
    grid-template-columns: 1fr;
  }
  /*.fp-col-right { display: none; }*/
  /*.fp-profile-hero-stats { display: none; }*/
}

/* ═══════════════════════════════════════════════════════════
   960px — Tablet
   ═══════════════════════════════════════════════════════════ */
@media (max-width: 960px) {
  /* Homepage hero stacks */
  .fp-hero {
    grid-template-columns: 1fr;
    min-height: auto;
  }
  .fp-hero-left {
    border-right: none;
    border-bottom: 1px solid var(--fp-border);
  }

  /* Features: 2 cols */
  .fp-features {
    grid-template-columns: 1fr 1fr;
  }

  /* Steps: single column */
  .fp-steps-grid { grid-template-columns: 1fr; }

  /* Footer stacks */
  .fp-footer {
    flex-direction: column;
    align-items: flex-start;
    padding: 2rem;
  }
  .fp-footer-links {
    flex-wrap: wrap;
    gap: 1rem;
  }

  /* Front nav */
  .fp-front-nav { padding: 0 1.5rem; }

  .other-pages.fp-footer, .user--authenticated .fp-footer {
    margin-left: 0;
    padding: 1.5rem 2rem;
  }
}

/* ═══════════════════════════════════════════════════════════
   768px — Mobile
   ═══════════════════════════════════════════════════════════ */
@media (max-width: 768px) {
  .node-preview-container {
    position: relative;
    z-index: 499;
    box-sizing: border-box;
    width: auto;
    padding-inline-start: var(--drupal-displace-offset-left, 10px);
    padding-inline-end: var(--drupal-displace-offset-right, 10px);
    padding-block: 10px;
    margin-left: 0;
    margin-top: 80px;
    padding: 0 15px;
  }
  .fp-feed{
    margin-bottom: 20px;
  }
  .path--my-posts .fp-feed,
  .path--my-questions .fp-feed {
    
    min-height: calc(100vh - 423px);
  }
  .fp-btn-filled{
    padding: 3px .3rem;
  }
  h1 {
    font-size: 2em;
    margin: 3px 0;
  }
  #block-facultypage-page-title {
    margin-bottom: 0;
  }
  .form-control.js-form-type-managed-file/*,
  .fp-details-body*/ {
    padding: 0;
  }  
  .field--name-attached span.file.file--mime-image-jpeg.file--image {
    word-wrap: break-word;
    word-break: break-word;
  }
  .form-control.js-form-type-managed-file, .field--type-file .fp-table-wrap {
    border: none;
    
  }
  .form-control.js-form-type-managed-file .fp-form-label{
    padding: 0 0;
  }
  .form-control.js-form-type-managed-file .form-managed-file{
    
  }
  .form-control.js-form-type-managed-file .form-managed-file input{

  }

  .fp-profile-actions{position: absolute;right: 0;}
  .fp-cover-pattern{position: relative;}
  .fp-cover-banner{background:transparent;}
  .fp-cover-edit-btn{background: linear-gradient(135deg, var(--fp-terra) 0%, var(--fp-terra-dark) 60%, #5a1a0a 100%);}

  /* Sidebar hides off-canvas */
  .fp-sidebar {
    transform: translateX(-100%);
    z-index: var(--fp-z-overlay);
    width: min(var(--fp-sidebar-w), 85vw);
    box-shadow: var(--fp-shadow-lg);
  }
  .fp-sidebar.is-open {
    transform: translateX(0);
  }
  /*.fp-sidebar-overlay { display: block; }*/

  /* Hamburger visible */
  .fp-nav-hamburger { display: flex; }

  /* Main content no longer offset by sidebar */
  .fp-main {
    margin-left: 0;
    padding: 1rem;
  }
  .user--authenticated .fp-footer {
    margin-left: 0;
    padding: 1rem;
  }
  /* Hide search in topnav on very small screens */
  .fp-nav-search { max-width: none; flex: 1; }

  /* Profile info grid: single column */
  .fp-info-grid { grid-template-columns: 1fr; }

  /* Profile hero body stacks */
  .fp-profile-hero-body {
    flex-direction: column;
    align-items: flex-start;
    display: block;
  }
  .fp-avatar-wrap { margin-top: -40px; }
  .fp-profile-hero-stats {    
    display: grid;
    grid-template-columns: 50% 50%;;    
  
  }

  /* Mini stats in profile card: 3 cols stays but smaller */
  .fp-profile-mini-stats {
    grid-template-columns: repeat(3, 1fr);
  }

  /* Front page */
  .fp-hero-left  { padding: 2rem 1.5rem; }
  .fp-hero-right { padding: 2rem 1.5rem; }
  .fp-hero-title { font-size: clamp(2.5rem, 10vw, 3.5rem); }
  .fp-how { padding: 4rem 1.5rem; }
  .fp-sec-title { font-size: 2rem; margin-bottom: 2.5rem; }

  /* Post action buttons: wrap to 2×2 */
  .fp-action-btn {
    flex-basis: calc(50% - 0.25rem);
    flex-grow: 0;
  }

  /* RSS row stacks */
  .fp-rss-row { flex-direction: column; }

  /* Invite form stacks */
  .fp-invite-form { flex-direction: column; }
  .fp-invite-btn { width: 100%; }

  .block--facultypage-local-actions, .block--facultypage-local-actions ul, .views-field.views-field-field-group-tags, .views-form .form-wrapper[data-drupal-selector="edit-header"] > .form-wrapper, .views-form .form-wrapper[data-drupal-selector="edit-node-bulk-form"], .views-exposed-form{
    display: grid !important;
  }
  .fp-main {
    margin-left: 0;
    padding: 0.5rem 1rem;
  }
  .fp-page-header {
    padding-bottom: .5rem;
    border-bottom: none;
    margin-bottom: 0;
  }
  .fp-page-title{
    row-gap: 1px;
  }
  .fp-main--two-col{
    gap: 0;
  
  }
  #block-facultypage-page-title h1{
    font-size: 1.2rem;
  }
  .fp-fieldset-body, .fp-form-fieldset .fieldset-wrapper,  
  .fp-details-body{
    display: block;
  }
  .fp-textarea{
    width: 99%;
  }
}

/* ═══════════════════════════════════════════════════════════
   600px — Small Mobile
   ═══════════════════════════════════════════════════════════ */
@media (max-width: 600px) {

  /* Registration form row: single column */
  .fp-form-row { grid-template-columns: 1fr; }

  /* Features: single column */
  .fp-features { grid-template-columns: 1fr; }
  .fp-feat {
    border-right: none;
    border-bottom: 1px solid var(--fp-border);
  }
  .fp-feat:last-child { border-bottom: none; }

  /* Nav icons: hide messages on small mobile */
  .fp-nav-icon-btn.fp-messages-btn { display: none; }

  /* Hero stats: single column */
  .fp-hero-stats {
    grid-template-columns: 1fr;
    gap: 1rem;
  }
  .fp-stat-b {
    border-right: none;
    border-bottom: 1px solid var(--fp-border);
    padding: 0 0 1rem 0;
  }
  .fp-stat-b:last-child { border-bottom: none; padding-bottom: 0; padding-left:0}
  .fp-stat-b:nth-child(2) { padding-left: 0; }

  /* Dashboard two-col page header: stack */
  .fp-page-header {
    flex-direction: column;
    align-items: flex-start;
    gap: 0.5rem;
  }

  /* Profile actions wrap */
  .fp-profile-actions { gap: 0.4rem; }
  .fp-profile-actions .fp-btn-primary,
  .fp-profile-actions .fp-btn-secondary {
    flex: 1;
    text-align: center;
    justify-content: center;
  }

  /* Front nav: hide logo text on very small screens */
  @media (max-width: 360px) {
    .fp-front-logo { font-size: 1.15rem; }
  }

  /* People tabs: font adjustments */
  .fp-ptab { font-size: 0.74rem; padding: 0.6rem 0.5rem; }

  /* Topnav: tighten gap */
  .fp-topnav { gap: 0.75rem; padding: 0 1rem; }
  .fp-nav-logo { font-size: 1.15rem; }

  /* Front nav: hide logo text on very small screens */
  @media (max-width: 450px) {
    .fp-btn-outline {
      padding: 0.3rem 0.5rem;      
    }
    .fp-front-logo { font-size: 1.15rem; }
    .fp-nav-search input[type="search"], .fp-nav-search input[type="text"] {
      width: 140px;
      padding: 0.45rem 0.5rem 0.45rem 1.8rem;
    }
    .fp-topnav {
      gap: 0.75rem;
      padding: 0 0.75rem;
    }
    .fp-nav-search-icon {      
      left: 0.5rem;
    }
    .fp-nav-spacer {
      display: none;
    }
  }
  @media (max-width: 420px) {
    .fp-nav-search input[type="search"], .fp-nav-search input[type="text"] {
      width: 126px;      
    }    
  }
  @media (max-width: 390px) {
    .fp-nav-search input[type="search"], .fp-nav-search input[type="text"] {
      width: 102px;      
    }    
  }
  @media (max-width: 380px) {
    .fp-nav-search input[type="search"], .fp-nav-search input[type="text"] {
      width: 93px;      
    }    
  }
  @media (max-width: 344px) {
    .fp-nav-logo {
        font-size: 0.75rem;
    }
  }
}

/* ═══════════════════════════════════════════════════════════
   Print
   ═══════════════════════════════════════════════════════════ */
@media print {
  .fp-topnav,
  .fp-sidebar,
  .fp-sidebar-overlay,
  .fp-nav-hamburger,
  .fp-composer,
  .fp-post-actions,
  .fp-profile-actions,
  .fp-invite-card,
  .fp-widget { display: none !important; }

  .fp-main {
    margin-left: 0 !important;
    padding: 0 !important;
  }
  .fp-layout { padding-top: 0 !important; }
  .fp-post { border: 1px solid #ccc; page-break-inside: avoid; }
}
