/* Windows·Mac 설치 앱: 창을 줄여도 저장 상태·앱 기능을 계속 표시한다(검색은 좁은 창에서 🔍 로 접는다 — 아래 2026-10-15). */
html.honest-native-desktop {
    --fs-badge: 12px;
    --fs-meta: 13px;
    --fs-base: 14px;
    --fs-body: 15px;
    --fs-title: 18px;
    --topbar-h: 60px;
}
html.honest-native-desktop body { height: 100dvh; font-size: var(--fs-base); }
html.honest-native-desktop :is(.app-body, .main-content) { min-height: 0; min-width: 0; }
html.honest-native-desktop .app-topbar { gap: 16px; padding-inline: 16px !important; }
html.honest-native-desktop .topbar-left { min-width: 0; flex: 1 1 auto; }
html.honest-native-desktop .topbar-logo { padding-right: 10px; }
html.honest-native-desktop .topbar-sections {
    min-width: 0; overflow-x: auto; overscroll-behavior-x: contain;
    scrollbar-width: thin; scroll-padding-inline: 4px;
}
html.honest-native-desktop .app-topbar .topbar-section-btn {
    flex: 0 0 auto; padding-inline: 12px; font-size: var(--fs-base);
    min-height: 44px; gap: 6px;
    transition: color .15s, background-color .15s, border-color .15s;
}
html.honest-native-desktop .topbar-section-btn svg { width: 18px; height: 18px; }
html.honest-native-desktop .topbar-right {
    display: flex !important; flex: 0 0 auto; gap: 6px; min-width: 0;
}
html.honest-native-desktop .mobile-topbar-right { display: none !important; }
html.honest-native-desktop .topbar-icon-btn { flex: 0 0 36px; width: 36px; height: 36px; }
html.honest-native-desktop #globalSearchWrap { display: flex !important; min-width: 160px; }
html.honest-native-desktop #globalSearchInput {
    width: clamp(180px, 15vw, 240px); min-height: 36px; font-size: var(--fs-base);
}
html.honest-native-desktop #saveStatus { display: flex !important; flex: 0 0 auto; font-size: var(--fs-meta); white-space: nowrap; }
html.honest-native-desktop #globalSearchResults { max-width: calc(100vw - 32px); }
html.honest-native-desktop :is(#topbarActions, #topbarActionsWrapper) { flex-wrap: wrap; min-width: 0; }
html.honest-native-desktop #topbarActionsWrapper { display: flex !important; }
html.honest-native-desktop :is(#topbarActions, #topbarActionsWrapper) button { min-height: 36px; font-size: var(--fs-base); }

/* 작은 PC 창에서도 상단 바는 한 줄 — 덜 중요한 글자부터 접는다(2026-10-15 사장님 «상단 메뉴 두 줄 넘침» → 시안 A).
   종전(10-04)엔 ≤1399 에서 두 줄(108px)로 검색 칸을 늘 보이게 했다. 이제 검색은 바로 옆 🔍(빠른 검색 — 프로젝트·발주처·할 일·회의·팀원)로 접는다.
   ≤1399: 로고 글자·이름/역할·«Saved» 글자(저장 필요·실패는 그대로 보인다 — 아바타 클릭은 로그아웃 그대로)
   ≤1199: 검색 칸 접기 · 탭·아이콘 사이 좁힘 — 창 최소 폭 800(apps/desktop main.cjs)에서 한 줄(실측 남는 폭 0 이상) */
@media (max-width: 1399px) {
    html.honest-native-desktop :is(#sidebarLogoText, #userAvatar + div) { display: none !important; }
    html.honest-native-desktop #saveStatusText:is(.text-emerald-500, :not([class])) { display: none; }
}
@media (max-width: 1199px) {
    html.honest-native-desktop #globalSearchWrap { display: none !important; }
    html.honest-native-desktop .app-topbar { gap: 8px; }
    html.honest-native-desktop .topbar-right { gap: 4px; }
    html.honest-native-desktop .app-topbar .topbar-section-btn { padding-inline: 6px; }
}

/* 공용 작성 창은 창 높이에 맞춰 본문만 스크롤하고 작업 버튼을 남긴다. */
html.honest-native-desktop .os-modal-overlay { padding: 20px; align-items: center; }
html.honest-native-desktop .os-modal {
    max-width: calc(100vw - 40px) !important; max-height: calc(100dvh - 40px); min-height: 0;
}
html.honest-native-desktop .os-modal-body { min-height: 0; overscroll-behavior-y: contain; }
html.honest-native-desktop .os-modal-footer { flex-wrap: wrap; }
html.honest-native-desktop .os-modal button { min-height: 36px; }
html.honest-native-desktop .os-modal-close { min-width: 36px; }
html.honest-native-desktop .os-modal :is(input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="range"]):not([type="color"]), select, textarea) {
    min-height: 36px; font-size: var(--fs-body);
}
html.honest-native-desktop :is(.topbar-section-btn, .topbar-icon-btn, .ctx-nav-item):focus-visible {
    outline: 2px solid #2563eb; outline-offset: -3px;
}
@media (prefers-reduced-motion: reduce) {
    html.honest-native-desktop :is(.os-modal, .os-modal-overlay, .context-panel, .topbar-section-btn) {
        animation: none !important; transition: none !important;
    }
}
