/* Adapts the functional Flow Inbox markup to the supplied Flow OS design. */
#app{display:flex;flex-direction:column;height:100vh;background:var(--paper)}
.topbar{height:auto;display:flex;padding:11px 22px}.brand{padding:0}.brand-mark{display:flex;fill:none}.brand-name{font-size:14.5px}.topnav{margin:auto}.top-actions{padding:0;gap:8px}.top-actions .search{height:34px}.search-filter{display:none}.active-status{position:absolute;right:61px;padding:0;background:none}.active-status i{width:8px;height:8px;background:var(--signal)}.active-status span{display:none}.profile-avatar{width:30px;height:30px;border-radius:8px;background:var(--amber-soft);border:1px solid #eedfc7;color:var(--amber)}#accountSelect{width:30px}.icon-btn svg{width:17px;height:17px}.apps-icon span{font-size:inherit}.body{display:flex;flex:1;min-height:0}.module-rail{width:60px;background:var(--panel);border-right:1px solid var(--line);display:flex;flex-direction:column;align-items:center;padding:14px 0;gap:6px;flex:none}.module-rail button,.module-rail>a{width:38px;height:38px;display:flex;align-items:center;justify-content:center;border:0;border-radius:10px;background:transparent;color:var(--ink-faint);font-size:16px;position:relative;text-decoration:none}.module-rail button:hover,.module-rail>a:hover{background:#f1f0ec}.module-rail button.active,.module-rail>a.active{background:var(--signal-soft);color:var(--signal)}.module-rail>span{flex:1}.module-rail .rail-compose{background:var(--navy);color:#fff}.rail-badge{position:absolute;top:-3px;right:-3px;background:#b54b3a;color:#fff;font-size:9px;border-radius:100px;padding:1px 4px;font-weight:700}
.sidebar{position:relative;width:216px;padding:16px 12px;overflow-y:auto}.account-switch{display:flex}.compose-btn{width:100%;height:38px;min-width:0;margin:7px 0 8px;border-radius:9px;background:var(--navy);box-shadow:none}.compose-btn:hover{background:var(--navy-deep)}.compose-btn span{font-size:16px}.nav-label{font-size:10.5px;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-faint);font-weight:650;padding:0 10px}.folder-list{gap:2px}.folder-item{min-height:33px;margin:0;padding:7px 10px;border-radius:8px;color:var(--ink-soft);font-size:13px}.folder-item:hover{background:#f4f3ef}.folder-item.active{border-radius:8px;background:var(--navy);color:#fff}.folder-item i{margin-right:9px}.label-section{padding:14px 0 0}.label-chip{min-height:31px;padding:6px 10px;border-radius:8px;font-size:13px}.label-dot{border-radius:2px}.sidebar-tools{margin-top:15px}.sidebar-tools .nav-label{margin-bottom:5px}.sidebar-tools button{display:block;width:100%;padding:7px 10px;border:0;border-radius:8px;background:none;color:var(--ink-soft);text-align:left;font-size:13px}.sidebar-tools button:hover{background:#f4f3ef}
.dashboard-folder-link{width:100%;margin-bottom:10px;text-decoration:none}.dashboard-folder-link span{display:flex;align-items:center}.dashboard-folder-link i{width:18px;display:inline-flex;justify-content:center;font-style:normal}
.dashboard-pane{flex:1;align-self:stretch;min-width:0;height:100%;background:var(--paper)}#dashboardContent{display:block;width:100%;height:100%}.dashboard-view .dashboard-pane{display:block!important}.dashboard-view .message-list-pane,.dashboard-view .msglist,.dashboard-view .reading-pane,.dashboard-view .reading{display:none!important;width:0!important;flex:0!important}.dashboard-view .dashboard-folder-link{background:var(--navy);color:#fff}
.dashboard-view .folder-list .folder-item.active{background:transparent;color:var(--ink-soft);font-weight:500}.ai-model{display:block;margin-top:9px;color:var(--ink-faint);font-size:9.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sidebar-toggle{flex:none;margin-left:4px;font-size:18px;line-height:1}.sidebar-collapsed .sidebar{display:none!important}.sidebar-collapsed .dashboard-pane{width:auto}.sidebar-collapsed .sidebar-toggle{background:var(--signal-soft);color:var(--signal)}
.dashboard-view .ai-pane,.dashboard-view .aipane,.dashboard-view .flow-ai-toggle{display:none!important}
.ai-pane{display:flex!important;flex-direction:column;overflow:hidden}.ai-body{display:none!important}.ai-chat{flex:1;min-height:0;display:flex;flex-direction:column;background:var(--panel)}.ai-chat-messages{flex:1;min-height:0;max-height:none;overflow-y:auto;padding:14px 10px;display:flex;flex-direction:column;gap:8px}.ai-chat-welcome{padding:11px;border-radius:9px;background:var(--violet-soft);color:var(--violet);font-size:11px;line-height:1.5}.ai-chat-message{max-width:92%;padding:8px 10px;border-radius:10px;font-size:11px;line-height:1.5;white-space:pre-wrap}.ai-chat-message.user{align-self:flex-end;background:var(--navy);color:#fff}.ai-chat-message.assistant{align-self:flex-start;background:#f4f3ef;color:var(--ink)}.ai-chat-message small{display:block;margin-top:5px;color:var(--ink-faint);font-size:9px}.ai-chat-form{flex:none;display:flex;gap:7px;padding:9px;border-top:1px solid var(--line-soft)}.ai-chat-form textarea{flex:1;min-width:0;resize:none;border:1px solid var(--line);border-radius:9px;padding:8px;font:inherit;font-size:11px;outline-color:var(--violet)}.ai-chat-form button{width:34px;border:0;border-radius:9px;background:var(--violet);color:#fff}.ai-pane.collapsed{display:none!important}.flow-ai-toggle.active{background:var(--violet-soft);color:var(--violet)}
.ai-analysis{max-width:100%;width:100%;background:#fbfafc!important;border:1px solid var(--line)}.ai-analysis strong,.ai-analysis span{display:block}.ai-analysis strong{margin:2px 0 7px;color:var(--violet);font-size:10px;text-transform:uppercase;letter-spacing:.05em}.ai-analysis strong:not(:first-child){margin-top:12px}.ai-analysis ul{margin:5px 0 0;padding-left:18px}.ai-analysis .insert-reply-btn{margin-top:10px}
.message-list-pane{width:340px;flex:none;border-right:1px solid var(--line);background:#fff}.list-toolbar{height:51px;padding:0 16px;gap:6px}.list-toolbar strong{font-size:15.5px}.list-toolbar>span{flex:1}.list-toolbar button{width:28px;height:28px;border:1px solid var(--line);border-radius:8px;background:#fff}.category-tabs{height:46px;display:flex;align-items:center;gap:6px;padding:0 16px;border-bottom:1px solid var(--line-soft)}.category-tabs button{position:static;height:auto;padding:5px 10px;border:1px solid var(--line);border-radius:100px;color:var(--ink-soft);font-size:11.5px}.category-tabs button.active{background:var(--ink);border-color:var(--ink);color:#fff}.category-tabs button.active:after{display:none}.message-item{min-height:84px;padding:12px 16px;border-bottom:1px solid var(--line-soft)}.message-item:hover{background:#fafaf8}.message-item.active{background:var(--signal-soft)}.message-item.active:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--signal)}.message-item .unread-dot{left:5px;top:17px;background:var(--signal)}.message-item.unread .msg-subject{font-weight:650}.msg-from{font-size:13px}.msg-date{font-size:11px}.msg-subject{font-size:13px}.msg-snippet{color:var(--ink-faint);font-size:12px}.row-check{opacity:0}.message-item:hover .row-check,.message-item.selected .row-check{opacity:1}
.reading-pane{background:var(--paper);border-color:var(--line)}.read-toolbar,.subject-row,.reading-meta{background:#fff}.subject-row{padding:18px 26px 8px}.subject-row h1{font-size:19px}.reading-meta{padding:0 26px 14px;border-bottom:1px solid var(--line)}.reading-meta .avatar{width:36px;height:36px;border-radius:10px;background:var(--violet-soft);color:var(--violet)}.reading-body{padding:24px 26px 40px;font-size:14px;line-height:1.7}.quick-actions{display:none}.bottom-actions{margin:0;padding:14px 26px;border-top:1px solid var(--line);background:#fff}.bottom-actions button{border-color:var(--line);border-radius:8px}.bottom-actions button:first-child{background:var(--navy);color:#fff}.file-icon{background:var(--signal-soft);color:var(--signal)}
.ai-pane{width:300px;background:#fff;border-left:1px solid var(--line)}.ai-header{padding:16px 18px 12px}.ai-body{padding:16px 18px}.ai-card{border:1px solid var(--line);border-radius:11px;padding:13px 14px;margin-bottom:12px;background:#fbfafc}.ai-card h3{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--violet)}.insert-reply-btn{background:var(--violet)}.primary-btn{background:var(--navy)}.primary-btn:hover{background:var(--navy-deep)}
@media(max-width:1250px){.topnav a:nth-child(1),.topnav a:nth-child(3),.topnav a:nth-child(4){display:none}.search{width:220px}.ai-pane{width:260px}}@media(max-width:980px){.topnav{display:none}.ai-pane{display:none}.module-rail{width:52px}.sidebar{width:195px}}@media(max-width:700px){.crumb,.search,.module-rail,.sidebar,.top-actions .apps-icon,.top-actions .help-icon{display:none}.body{padding-top:0}.message-list-pane{width:100%}.reading-pane{inset:53px 0 0}.top-actions{display:flex}.message-item{min-height:80px}}

/* Exact dynamic equivalents of the reference mail and reading components. */
.list-head .category-tabs{padding:0;border:0}.list-head{padding:14px 16px 10px}.message-list.list-scroll{flex:1;overflow-y:auto}.mail-row.message-item{display:block;position:relative;min-height:0;padding:12px 16px}.mail-row .mail-top{display:flex}.mail-row .row-star{position:absolute;right:13px;bottom:8px;border:0;background:none}.mail-row .row-check{position:absolute;left:3px;top:3px;border:0;background:#fff;z-index:2}.mail-row .mail-preview{padding-right:20px}.reading-pane.reading{display:flex;flex-direction:column}.read-head{flex:none}.read-meta .close-read{display:none}.read-who{min-width:0}.read-who span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.read-body{flex:1;overflow-y:auto}.reply-bar{flex:none}.attach-chip small{display:block;color:var(--ink-faint);font-size:10px}.ai-head h3{margin:0}.ai-head .icon-btn{width:26px;height:26px}.ai-body.ai-scroll{flex:1;overflow-y:auto}.dark-theme{--paper:#111827;--panel:#182131;--line:#303b4c;--line-soft:#303b4c;--ink:#eef2f7;--ink-soft:#c1cad6;--ink-faint:#9aa6b5}
.list-head #selectAllBtn{display:none}
.active-status{display:none}
.flow-create-btn{border-color:#cfc4f7!important;background:var(--violet-soft)!important;color:var(--violet)!important}.flow-action-modal{width:min(520px,94vw)}.flow-action-modal>.modal-header>div{display:flex;flex-direction:column;gap:3px}.flow-action-modal>.modal-header small{color:var(--ink-faint);font-size:10px;font-weight:400}.flow-action-body{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:18px}.flow-action-body label{display:flex;flex-direction:column;gap:5px;color:var(--ink-soft);font-size:11px}.flow-action-body label:nth-last-of-type(1){grid-column:1/-1}.flow-action-body input,.flow-action-body select,.flow-action-body textarea{width:100%;padding:9px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);font:inherit}.flow-action-body textarea{min-height:100px;resize:vertical}.flow-action-body small{color:var(--ink-faint);font-size:9px}.flow-action-error{grid-column:1/-1;min-height:16px;color:#b42318;font-size:11px}.flow-action-modal>.modal-footer{display:flex;justify-content:flex-end;gap:8px;padding:12px 18px;border-top:1px solid var(--line)}.flow-action-modal>.modal-footer button{padding:8px 13px;border:1px solid var(--line);border-radius:8px}@media(max-width:600px){.flow-action-body{grid-template-columns:1fr}.flow-action-body label:nth-last-of-type(1){grid-column:auto}}
.topbar>.topnav{display:none}.topbar{justify-content:space-between}.topbar>.brand{display:flex}.topbar .top-right{margin-left:auto}.sidebar-tools button{display:flex;align-items:center;gap:9px}.sidebar-tools button>span{width:18px;display:inline-flex;justify-content:center}.folder-item i{width:18px;display:inline-flex;justify-content:center;font-style:normal}

/* Full CalDAV calendar */
.calendar-modal{width:min(1120px,96vw);height:min(760px,94vh);display:flex;flex-direction:column}.calendar-modal>.modal-header>div{display:flex;flex-direction:column;gap:3px}.calendar-modal>.modal-header small{color:var(--ink-faint);font-size:10px;font-weight:400}.calendar-layout{display:grid;grid-template-columns:minmax(560px,1fr) 330px;flex:1;min-height:0}.calendar-view{display:flex;flex-direction:column;min-width:0;padding:16px;border-right:1px solid var(--line)}.calendar-view>header{display:flex;align-items:center;gap:7px;margin-bottom:13px}.calendar-view>header h2{flex:1;margin:0;text-align:center;font-size:18px}.calendar-view>header button{height:32px;padding:0 11px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink-soft)}.calendar-weekdays,.calendarGrid{display:grid;grid-template-columns:repeat(7,1fr)}.calendar-weekdays span{padding:7px;color:var(--ink-faint);text-align:center;font-size:10px;font-weight:700;text-transform:uppercase}.calendarGrid{flex:1;grid-auto-rows:minmax(74px,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.calendar-day{min-width:0;padding:6px;border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff;color:var(--ink);text-align:left;overflow:hidden}.calendar-day:hover{background:#f7faf9}.calendar-day.outside{background:#fafaf8;color:var(--ink-faint)}.calendar-day>span{display:grid;width:23px;height:23px;place-items:center;border-radius:50%;font-size:11px}.calendar-day.today>span{background:var(--signal);color:#fff;font-weight:700}.calendar-day>div{display:flex;flex-direction:column;gap:3px;margin-top:3px}.calendar-event{display:block;overflow:hidden;padding:3px 5px;border-radius:5px;background:var(--signal-soft);color:var(--signal);font-size:9px;text-overflow:ellipsis;white-space:nowrap}.calendar-modal #meetingForm{display:flex;flex-direction:column;gap:10px;padding:20px;overflow-y:auto}.calendar-modal #meetingForm h3{margin:0 0 4px}.calendar-modal #meetingForm>input,.calendar-modal #meetingForm textarea{width:100%;margin:0;padding:10px;border:1px solid var(--line);border-radius:8px}.calendar-modal #meetingForm>div:not(.calendar-form-actions){display:grid;grid-template-columns:1fr 1fr;gap:8px}.calendar-modal #meetingForm label{display:flex;flex-direction:column;gap:5px;color:var(--ink-soft);font-size:10px}.calendar-modal #meetingForm label input{width:100%;padding:8px;border:1px solid var(--line);border-radius:7px}.calendar-modal #meetingForm textarea{min-height:130px;resize:vertical}.calendar-form-actions{display:flex;justify-content:flex-end;gap:7px;margin-top:auto}.calendar-form-actions button{padding:8px 12px;border:1px solid var(--line);border-radius:8px;background:#fff}.calendar-form-actions .primary-btn{background:var(--navy);color:#fff}.calendar-form-actions .danger-btn{margin-right:auto;border-color:#f0caca;color:#b42318;background:#fff5f5}@media(max-width:800px){.calendar-modal{width:100vw;height:100vh;max-width:none;border-radius:0}.calendar-layout{display:flex;flex-direction:column;overflow-y:auto}.calendar-view{min-height:570px;border-right:0;border-bottom:1px solid var(--line)}.calendar-modal #meetingForm{flex:none;min-height:430px}.calendarGrid{grid-auto-rows:70px}}
.label-row{display:flex;align-items:center}.label-row .label-chip{flex:1;min-width:0}.label-row .label-chip span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.delete-label{width:25px;height:25px;border:0;border-radius:6px;background:transparent;color:var(--ink-faint);font-size:16px;opacity:0}.label-row:hover .delete-label,.delete-label:focus{opacity:1}.delete-label:hover{background:#fbeae6;color:#b54b3a}
