.task-mobile-cards { display: none; }
.task-hierarchy-table .app-table tbody tr:has(.task-group-title) > td { background: #f0f5ff; border-top: 2px solid #dce6f8; }
.task-hierarchy-table .app-table th:first-child { width: 72px; }
.task-hierarchy-table .app-table td:nth-child(2) { white-space: normal; min-width: 260px; }
.task-hierarchy-cards .task-mobile-card { padding: 14px 10px; }
.task-hierarchy-cards .task-mobile-card.task-group-card { background: #f0f5ff; border: 1px solid #dce6f8; border-radius: 10px; padding: 14px 10px; }
.task-hierarchy-cards .task-card-meta { margin-top: 8px; }
.compact-modal { width: min(440px, calc(100vw - 28px)); }
.issue-question-form { max-width: 42rem; margin: 20px auto; }
.record-detail-content { max-width: 72rem; margin: 0 auto; }
.record-reading { white-space: pre-wrap; overflow-wrap: anywhere; line-height: 1.8; }
.autosize-input { field-sizing: content; min-height: 4rem; max-height: 20rem; }
.task-complete-button { width: 44px; height: 44px; border: 1px solid var(--border, #dce1e8); border-radius: 50%; background: white; color: #006bb7; flex-shrink: 0; }
.task-complete-button[aria-pressed="true"] { background: #e6f4ea; color: #176938; }
.task-aggregate { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; flex-shrink: 0; font-weight: 600; color: var(--text-secondary, #526070); }
.task-card-content { min-width: 0; flex: 1; }
.project-navigation { flex-wrap: wrap; gap: 6px; }
.project-navigation a { padding: 10px 12px; text-decoration: none; border-radius: 8px; }
.project-navigation a.active { background: #e8f1ff; color: #174e9e; font-weight: 700; }
.project-card { position: relative; }
.project-card .project-open::after { content: ""; position: absolute; inset: 0; }
.project-card .app-button { position: relative; z-index: 1; }
.topbar-organization { flex: 1 1 auto; max-width: 340px; }
.topbar-actions { flex-shrink: 0; }
.account-summary { max-width: 220px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
@media (max-width: 1120px) {
    .dashboard-grid { grid-template-columns: 1fr; }
    .metric-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .workspace-content { padding: 20px; }
    .workspace-topbar { padding: 0 20px; }
}
@media (max-width: 760px) {
    .workspace-sidebar { display: none; }
    .main-shell { margin-left: 0; }
    .workspace-topbar { padding: 0 10px; gap: 6px; }
    .mobile-menu-button { display: inline-grid !important; flex-shrink: 0; }
    .organization-select { width: min(48vw, 260px); font-size: 12px; padding-left: 8px; }
    .workspace-topbar .organization-select { width: 100%; min-width: 0; }
    .topbar-organization { min-width: 0; }
    .topbar-actions { gap: 4px !important; }
    .workspace-topbar .icon-button { width: 34px; min-width: 34px; height: 36px; padding: 6px; }
    .account-summary { max-width: 78px; padding: 7px 6px; font-size: 12px; }
    .task-desktop-table { display: none; }
    .task-mobile-cards { display: grid; gap: 12px; margin: 16px 0; }
    .task-mobile-card { display: flex; align-items: flex-start; gap: 10px; min-width: 0; border-bottom: 1px solid var(--border, #dce1e8); padding: 14px 0; }
    .task-mobile-card .title-button { display: block; max-width: 100%; white-space: normal; overflow-wrap: anywhere; text-align: left; }
    .task-card-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin: 10px 0; }
    .task-mobile-card .item-sub { overflow-wrap: anywhere; }
    .task-mobile-card .action-group { flex-wrap: wrap; }
    .desktop-label { display: none; }
    .workspace-content { padding: 14px 14px 40px; }
    .page-heading { flex-direction: column; margin-top: 20px; }
    .page-heading h1 { font-size: 23px; }
    .page-heading .app-button { width: 100%; }
    .project-grid { grid-template-columns: 1fr; }
    .metric-grid { gap: 10px; }
    .app-card { padding: 16px; }
    .home-hero { padding: 20px; }
    .home-tabs { width: 100%; }
    .home-tabs button { flex: 1; padding: 10px 12px; }
    .toolbar .search-input { flex-basis: 100%; }
    .toolbar .form-select { flex: 1; max-width: 100%; }
    .gantt-toolbar { display: grid; grid-template-columns: 40px minmax(0, 1fr) 40px; align-items: end; gap: 8px; }
    .gantt-toolbar label { min-width: 0; }
    .gantt-toolbar label:last-child { grid-column: 1 / -1; display: flex; align-items: center; gap: 8px; }
    .app-drawer { width: 100%; border-radius: 0; }
    .dialog-body { padding: 18px; }
    .dialog-footer { flex-wrap: wrap; }
    .dialog-footer .app-button { flex: 1; }
    .app-toast { right: 16px; bottom: 16px; }
    .work-item { align-items: flex-start; }
    .work-item .app-badge { max-width: 92px; white-space: normal; }
}
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { scroll-behavior: auto !important; transition: none !important; }
}
