/* Mobile layouts shared across public pages and every workspace role. */
.mobile-agenda{display:none}
@media(max-width:900px){
html,body{max-width:100%;overflow-x:clip}
.public-header{gap:12px;padding:14px 16px;flex-wrap:wrap}
.public-header .brand{font-size:22px;margin:0;min-width:0}
.public-header .brand-symbol{width:30px;height:30px;flex-shrink:0}
.header-actions{gap:8px;min-width:0;margin-left:auto}
.header-actions .button{padding:11px 12px;font-size:12px;white-space:nowrap;min-height:44px}
.hero,.section{overflow:clip;min-width:0;max-width:100%}
.hero{padding:36px 20px 48px}
.hero>* ,.section>* ,.pricing>* ,.feature-grid>*{min-width:0;max-width:100%}
.hero-copy h1{font-size:clamp(36px,10vw,48px);letter-spacing:-1.5px;overflow-wrap:break-word}
.hero-copy>p{margin-left:0;font-size:16px}
.hero-copy .eyebrow{font-size:11px;line-height:1.6;letter-spacing:1px}
.hero-actions{flex-wrap:wrap;gap:10px}
.hero-actions .button{font-size:13px;min-height:46px;padding:14px 16px}
.hero-notes{flex-wrap:wrap;gap:8px 16px;font-size:12px}
.section h2,.bi-section h2{font-size:clamp(28px,8vw,38px);letter-spacing:-1px;overflow-wrap:break-word}
.preview-window,.hero-dashboard,.dashboard-preview,.preview-body{min-width:0;max-width:100%}
.section-heading>p{font-size:16px;max-width:100%;box-sizing:border-box}
.security-section{flex-wrap:wrap;padding:24px;margin:0 16px;min-width:0}
.security-section>*{min-width:0;max-width:100%}
.pricing{grid-template-columns:minmax(0,1fr)}
.pricing-card{min-width:0;max-width:100%}
.public-footer{flex-wrap:wrap;gap:12px;padding:24px 20px}
.auth-form-wrap{min-height:100svh;padding:28px 16px}
.auth-form{width:100%;min-width:0;padding:26px 22px;box-sizing:border-box}
.auth-form input,.workspace input,.workspace select,.workspace textarea,.modal-body input,.modal-body select,.modal-body textarea{font-size:16px}
.auth-links{gap:12px;flex-wrap:wrap}
.auth-form h2{font-size:28px;overflow-wrap:break-word}
.sidebar{height:100dvh;overflow-y:auto;overscroll-behavior:contain;padding-bottom:24px;max-width:calc(100vw - 48px)}
body:has(.sidebar.open)::after{content:'';position:fixed;inset:0;background:#020C1C80;z-index:19}
.topbar{min-width:0}
.breadcrumb{min-width:0;overflow-wrap:anywhere}
.topbar-right{flex-shrink:0}
.topbar-right .date-label{display:none}
.mobile-menu{min-width:44px;min-height:44px;flex-shrink:0}
.workspace{min-width:0;padding:22px 14px 36px}
.page-heading{flex-wrap:wrap;gap:16px}
.page-heading>div{min-width:0;max-width:100%}
.page-heading p{max-width:100%}
.heading-actions{flex-wrap:wrap;width:100%;gap:8px}
.heading-actions button{flex:1;min-height:44px}
.filters{gap:10px;padding:14px}
.filters .search{flex-basis:100%;max-width:none;width:100%;min-width:0}
.filters select{flex:1;max-width:none;min-width:0;width:calc(50% - 5px)}
.filters label{flex:1 1 130px;min-width:0}
.filters label input{width:100%;min-width:0}
.filters button{min-height:44px;font-size:13px;padding:10px 14px}
.view-tabs{gap:20px;overflow-x:auto;max-width:100%;padding-bottom:2px}
.view-tabs a{min-height:44px;white-space:nowrap;flex-shrink:0}
.chart-grid{grid-template-columns:minmax(0,1fr);gap:16px}
.chart{height:300px;max-width:100%}
.panel{min-width:0;max-width:100%}
.table-wrap{overflow-x:auto;max-width:100%;overscroll-behavior-x:contain}
.kanban{max-width:100%;overflow-x:auto;scroll-snap-type:x proximity;padding-bottom:12px}
.kanban-column{width:min(300px,calc(100vw - 48px));min-width:min(300px,calc(100vw - 48px));scroll-snap-align:start}
.task-card h4 a{display:block;min-height:44px}
.calendar-nav h3{font-size:18px;text-align:center}
.calendar-weekday{font-size:11px;padding:10px 2px}
.calendar-day{min-height:74px;padding:4px}
.calendar-task{min-height:28px;font-size:11px;padding:5px 2px}
.mobile-agenda{display:grid;gap:8px;margin:20px 0}
.mobile-agenda h3{font-size:18px;margin:0 0 4px}
.mobile-agenda a{display:flex;gap:12px;align-items:center;padding:14px;border:1px solid var(--border);border-radius:9px;min-height:44px;background:var(--surface,#fff);color:var(--ink);font-size:14px}
.mobile-agenda time{font-size:12px;flex-shrink:0}
.mobile-agenda span{overflow-wrap:anywhere}
[data-theme=dark] .mobile-agenda a{background:#10263F;color:#EDF5FF}
dialog#modal{width:calc(100vw - 24px);max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);margin:auto;padding:0}
.modal-header{padding:18px}
.modal-body{padding:18px;min-width:0}
.form-grid{grid-template-columns:minmax(0,1fr)}
.form-actions{flex-wrap:wrap;gap:10px}
.form-actions button{min-height:44px;flex:1}
.modal-tabs{overflow-x:auto;max-width:100%}
.modal-tabs button{min-height:44px;flex-shrink:0;white-space:nowrap}
.ts-chat-panel{max-width:calc(100vw - 24px);max-height:calc(100dvh - 96px);right:12px;bottom:82px}
}
@media(max-width:360px){.public-header .brand{font-size:20px}.header-actions .button{padding:10px;font-size:11px}.header-actions{gap:6px}.kpi-grid,.kpi-more{grid-template-columns:minmax(0,1fr)}.platform-kpis>.kpi:last-child{grid-column:auto}}

@media(max-width:900px){.public-header{height:auto;min-height:72px}.public-header>nav{display:none}.sidebar{transform:translateX(-100%);width:235px}.sidebar.open{transform:translateX(0)}.app-main{margin-left:0}.mobile-menu{display:inline-flex}.auth-layout{grid-template-columns:minmax(0,1fr)}.auth-story{display:none}}

@media(max-width:900px){.public-header{height:auto;min-height:72px}.public-header>nav{display:none}.sidebar{transform:translateX(-100%);width:235px}.sidebar.open{transform:translateX(0)}.app-main{margin-left:0}.mobile-menu{display:inline-flex}.auth-layout{grid-template-columns:minmax(0,1fr)}.auth-story{display:none}}

@media(max-width:900px){.filters select{flex:1 1 calc(50% - 5px);width:calc(50% - 5px)}.filters label{flex:1 1 100%}.filters label input{max-width:none}[data-theme=dark] .workspace input,[data-theme=dark] .workspace select,[data-theme=dark] .workspace textarea,[data-theme=dark] .modal-body input,[data-theme=dark] .modal-body select,[data-theme=dark] .modal-body textarea{font-size:16px}.modal-header button{min-width:44px;min-height:44px}}

.task-dependency{margin:8px 0;padding:8px 10px;border-left:3px solid #f59e0b;background:rgba(245,158,11,.10);border-radius:6px;white-space:normal;overflow-wrap:anywhere}.task-dependency strong{font-size:12px}.task-dependency small{display:block;margin-top:4px;font-size:12px}.task-dependency-fields{padding:14px;border:1px solid rgba(245,158,11,.4);border-radius:12px}.task-dependency-fields textarea{width:100%;min-height:72px;box-sizing:border-box}.task-dependency-fields>.field{width:100%;margin-bottom:12px}.task-dependency-fields>small{display:block;margin-top:8px}
