/* Quick layout — premium shell in quick-premium.css */
@import "./quick-primitives.css";

/* Shell: mobile coluna; desktop rail + main (tm-shell-wide em editor-shared.css) */
.quick-shell {
  display: flex;
  flex-direction: column;
  gap: var(--tm-space-sm);
  min-width: 0;
  width: 100%;
}

.quick-shell__rail {
  display: flex;
  flex-direction: column;
  gap: var(--tm-space-sm);
  min-width: 0;
}

.quick-shell-nav {
  display: none;
  flex-direction: column;
  gap: 0.2rem;
}

.quick-shell-nav__item {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.55rem 0.65rem;
  border-radius: var(--tm-radius-card);
  color: var(--tm-on-surface);
  text-decoration: none;
  font-weight: 500;
  font-size: 0.9rem;
}
.quick-shell-nav__item:hover {
  background: var(--tm-surface-variant);
}
.quick-shell-nav__item--active {
  background: color-mix(in srgb, var(--tm-primary) 12%, var(--tm-surface));
  color: var(--tm-primary);
}

.quick-shell__manage-diary {
  display: none;
  width: 100%;
  justify-content: flex-start;
}

.quick-shell__main {
  display: flex;
  flex-direction: column;
  gap: var(--tm-space-sm);
  min-width: 0;
}

.quick-day-pager-zone {
  display: flex;
  flex-direction: column;
  gap: var(--tm-space-sm);
  touch-action: pan-y;
}

.quick-card--compact {
  padding: var(--tm-space-sm) var(--tm-space-md);
}

@media (max-width: 959px) {
  .quick-shell {
    display: grid;
    grid-template-columns: 1fr;
  }

  .quick-shell__rail {
    display: contents;
  }

  .quick-shell-nav,
  .quick-shell__manage-diary {
    display: none !important;
  }

  #quick-greeting {
    order: 0;
  }

  #quick-active-hero {
    order: 1;
  }

  #quick-day-pager-zone {
    order: 2;
  }

  .quick-app-header {
    position: sticky;
    top: 0;
    z-index: 8;
    margin-left: calc(-1 * max(var(--tm-space-sm), env(safe-area-inset-left, 0px)));
    margin-right: calc(-1 * max(var(--tm-space-sm), env(safe-area-inset-right, 0px)));
    padding-left: max(var(--tm-space-sm), env(safe-area-inset-left, 0px));
    padding-right: max(var(--tm-space-sm), env(safe-area-inset-right, 0px));
    background: color-mix(in srgb, var(--tm-surface) 92%, transparent);
    backdrop-filter: blur(8px);
    border-bottom: 1px solid var(--tm-outline-variant);
  }
}

@media (min-width: 960px) {
  .quick-body .quick-app {
    display: flex;
    flex-direction: column;
    gap: var(--tm-space-md);
    padding-top: var(--tm-space-md);
  }

  .quick-app .quick-shell.tm-shell-wide {
    max-width: none;
    width: 100%;
    margin: 0;
  }

  .quick-shell-nav {
    display: flex;
  }

  .quick-shell__manage-diary {
    display: inline-flex;
  }

  .quick-header-register {
    display: block;
  }

  .quick-app-header__drawer {
    display: none;
  }

  .quick-fab-wrap {
    display: none !important;
  }

  .quick-body .quick-bottom-nav {
    display: none;
  }

  .quick-body .quick-app-header {
    position: static;
    margin-left: 0;
    margin-right: 0;
    padding-left: 0;
    padding-right: 0;
    background: transparent;
    backdrop-filter: none;
    border-bottom: none;
  }

  .quick-body .quick-app-header__title {
    font-size: 1.35rem;
  }

  .quick-body .quick-card {
    padding: var(--tm-space-sm) var(--tm-space-md);
    box-shadow: var(--tm-elev-1);
  }

  .quick-body .quick-day-toolbar.quick-card {
    box-shadow: none;
    border-color: transparent;
    background: transparent;
    padding: 0.35rem 0;
  }

  .quick-body .quick-timeline-surface {
    flex: 1;
    min-height: 12rem;
    max-height: none;
    display: flex;
    flex-direction: column;
  }

  .quick-body .quick-timeline-surface__title {
    display: none;
  }

  .quick-body #quick-timeline-mount {
    flex: 1;
    min-height: 0;
  }

  .quick-body #quick-timeline-section .tm-empty-state {
    min-height: 0;
    max-height: 40vh;
    padding: var(--tm-space-md) var(--tm-space-sm);
  }

  .quick-body #quick-timeline-section .tm-empty-state__title {
    font-size: 0.95rem;
    font-weight: 500;
  }

  .quick-body .quick-day-header__title {
    font-size: 1rem;
  }

  .quick-body .quick-day-header__subtitle {
    font-size: 0.8rem;
  }

  .quick-body .quick-day-header__nav {
    width: 2rem;
    min-height: 2rem;
    font-size: 1.15rem;
  }

  .quick-body .quick-pull-indicator {
    padding: 0.2rem 0;
  }

  .quick-body:has(.quick-bottom-nav) {
    --tm-theme-panel-bottom: calc(5rem + env(safe-area-inset-bottom, 0px));
  }
}

@media (min-width: 380px) {
  .quick-shortcuts-scroll--wrap {
    flex-wrap: wrap;
    overflow-x: visible;
    scroll-snap-type: none;
  }
  .quick-shortcuts-scroll--wrap .quick-chip {
    flex: 1 1 calc(33.333% - 0.45rem);
    min-width: 5rem;
    max-width: none;
  }
}
