/* Hallmark · shape: app screen · genre: modern-minimal · theme: brand · redesign: full
 * paper: neutral blue · accent: retained blue · display: Segoe UI · body: Segoe UI
 * nav: kept three-pane mail workbench · signature: connected correspondence with original files
 * states: login, loading, empty, full, error, dialog · modes: light+dark · axes: neutral/system/blue · v2.0.0 */
/* Hallmark · pre-emit critique: retained familiar shell; weakest: scattered surfaces, replaced with one token system. */
/* Hallmark · functional message disclosures keep attachments with their source mail. */
/* Hallmark · app scope: fixed density, actual mail is the material; no marketing hero, photography, or invented proof. */
*{box-sizing:border-box}html,body{margin:0;overflow-x:clip;max-width:100%;background:var(--color-canvas);color:var(--color-ink);font-family:var(--font-body);font-weight:var(--font-weight-body);font-size:14px;scrollbar-color:var(--color-field) var(--color-paper-2);caret-color:var(--color-accent)}
::selection{background:var(--color-selection);color:var(--color-ink)}[hidden]{display:none!important}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:600;color:var(--color-ink);overflow-wrap:break-word;min-width:0}button,input,textarea,select{font:inherit}button{cursor:pointer;border:1px solid transparent;color:var(--color-ink-2);background:transparent;border-radius:var(--radius-sm);padding:8px 12px;min-height:38px;white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:background-color var(--dur-short),color var(--dur-short)}button:hover{background:var(--color-paper-3);color:var(--color-ink)}button:active{background:var(--color-accent-soft)}button:disabled,button[aria-disabled=true]{opacity:.55;cursor:not-allowed;background:var(--color-paper-2);color:var(--color-muted)}button[aria-busy=true]{cursor:progress}
:where(button,a,input,textarea,select,summary):focus-visible{outline:2px solid var(--color-focus);outline-offset:3px}a{color:var(--color-accent)}a:active{color:var(--color-accent-hover)}input,textarea,select{background:var(--color-paper);color:var(--color-ink);border:1px solid var(--color-field);border-radius:var(--radius-sm);padding:12px 12px;min-width:0;width:100%;outline-offset:2px}input::placeholder,textarea::placeholder{color:var(--color-muted)}input:disabled,textarea:disabled,select:disabled{background:var(--color-paper-2);opacity:.6;cursor:not-allowed}label{display:flex;flex-direction:column;gap:8px;font-size:13px;color:var(--color-ink-2);margin-bottom:16px}small{display:block;font-size:12px;color:var(--color-muted);line-height:1.5}textarea{resize:vertical;line-height:1.7}form{margin:0}.primary{background:var(--color-accent);color:var(--color-accent-ink);font-weight:600;padding:12px 16px;min-height:42px}.primary:hover{background:var(--color-accent-hover);color:var(--color-accent-ink)}.primary:active{transform:translateY(1px)}.primary:disabled{background:var(--color-accent);color:var(--color-accent-ink)}
.ui-icon{width:19px;height:19px;flex-shrink:0;vertical-align:middle;filter:var(--icon-filter)}.primary .ui-icon,.mobile-compose .ui-icon{filter:var(--icon-primary)}.brand{display:flex;align-items:center;gap:8px;font-size:21px;line-height:1.2;font-weight:650;letter-spacing:-.5px;color:var(--color-ink);white-space:nowrap}.brand .ui-icon{width:26px;height:26px;filter:var(--icon-accent)}.brand-text{display:inline}.eyebrow{display:none}
.login{min-height:100svh;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,430px);gap:clamp(40px,7vw,112px);align-items:center;max-width:1140px;margin:0 auto;padding:88px 48px}.login-intro .brand{margin-bottom:72px}.login h1{font-size:44px;line-height:1.12;letter-spacing:-1.8px;max-width:500px;margin-bottom:24px}.login-intro p{font-size:17px;line-height:1.7;color:var(--color-ink-2);max-width:360px}.login-intro .pilot{display:block;font-size:13px;color:var(--color-muted);margin-top:24px}.login-card{color:var(--color-ink);background:var(--color-paper);border:1px solid var(--color-rule);border-radius:var(--radius-lg);padding:36px;box-shadow:var(--shadow-login)}.login-card h2{font-size:26px;letter-spacing:-.8px;margin-bottom:28px}.login-card input{height:46px}.login-card .primary{width:100%;height:46px}.login-card>small{text-align:center;margin-top:20px;font-size:11px}.error{color:var(--color-danger);font-size:13px;line-height:1.5}.error:empty{display:none}.login-theme{position:fixed;right:24px;top:20px;z-index:10}.theme-toggle{font-size:12px;gap:8px;color:var(--color-ink-2)}.theme-toggle .ui-icon{width:17px;height:17px}body:has(#workspace:not([hidden])) .login-theme{display:none}
.workspace{height:100dvh;max-width:1920px;margin:0 auto;display:flex;overflow:hidden;background:var(--color-paper)}.sidebar{width:230px;flex-shrink:0;display:flex;flex-direction:column;background:var(--color-paper-2);border-right:1px solid var(--color-rule);padding:28px 16px 16px;overflow-y:auto}.sidebar .brand{font-size:20px;margin:0 4px 28px}.compose{width:100%;margin-bottom:24px;justify-content:flex-start;padding-left:16px}.account-switch{font-size:11px;gap:8px;margin-bottom:16px}.account-switch select{font-size:12px;min-height:38px;padding:8px}.sidebar nav{display:flex;flex-direction:column;gap:4px}.sidebar nav button{width:100%;justify-content:flex-start;font-size:13px;padding:12px 12px;min-height:42px;gap:12px}.sidebar nav button .ui-icon{opacity:.7}.sidebar nav button.active{background:var(--color-accent-soft);color:var(--color-accent)}.sidebar nav button.active .ui-icon{filter:var(--icon-accent);opacity:1}.count{margin-left:auto;font-size:12px;font-variant-numeric:tabular-nums}.sidebar-bottom{margin-top:auto;padding-top:32px}.sidebar-bottom>button{width:100%;justify-content:flex-start;font-size:12px;min-height:40px}.sidebar-bottom>.theme-toggle{margin-top:4px}.pilot-small{font-size:11px;line-height:1.7;color:var(--color-muted);padding:16px 8px}.profile{display:flex;align-items:center;gap:8px;border-top:1px solid var(--color-rule);padding:16px 4px 0;margin-top:12px;min-width:0}.avatar{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:var(--color-accent-soft);color:var(--color-accent);font-weight:600;flex-shrink:0}.profile strong{font-size:12px;display:block;max-width:148px;overflow:hidden;text-overflow:ellipsis}.profile small{font-size:10px;max-width:148px;overflow:hidden;text-overflow:ellipsis}.logout-button{color:var(--color-danger)!important}.logout-button:hover{background:var(--color-danger-soft)}
.main{display:flex;flex:1;flex-direction:column;min-width:0}.main>header{min-height:96px;display:flex;align-items:center;gap:16px;padding:24px 28px;border-bottom:1px solid var(--color-rule)}header h1{font-size:26px;line-height:1.2;letter-spacing:-.8px;margin:0;white-space:nowrap}.search{display:flex;align-items:center;gap:8px;width:min(380px,42%);margin-left:auto;background:var(--color-paper-2);border:1px solid var(--color-rule);border-radius:var(--radius-sm);padding:0 8px;min-width:0}.search>.ui-icon{opacity:.6}.search input{background:transparent;border:0;padding:12px 0;font-size:13px;flex:1;min-width:0}.search input:focus-visible{outline-offset:0}.search button{font-size:12px;padding:8px;color:var(--color-accent);min-height:38px}.icon-button{width:40px;height:40px;padding:8px}.mail-layout{display:flex;flex:1;min-height:0}.list-panel{color:var(--color-ink);width:370px;flex-shrink:0;border-right:1px solid var(--color-rule);overflow:auto;background:var(--color-paper)}.list-top{display:flex;align-items:center;justify-content:space-between;height:49px;padding:0 16px;font-size:11px;color:var(--color-muted);border-bottom:1px solid var(--color-rule)}.list-top>div{display:flex;align-items:center;gap:4px}.list-top button{padding:4px;min-width:31px;min-height:32px}.list-top .ui-icon{width:16px;height:16px}.message-row{display:block;position:relative;width:100%;padding:20px 20px 20px 16px;border:0;border-bottom:1px solid var(--color-rule);border-left:3px solid transparent;border-radius:0;text-align:left;min-height:88px}.message-row:hover{background:var(--color-paper-2)}.message-row.selected{background:var(--color-accent-soft);border-left-color:var(--color-accent)}.row-top{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0;margin-bottom:8px}.sender{font-size:13px;color:var(--color-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:450}.subject{font-size:13px;color:var(--color-ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.4}.message-row.unread .sender,.message-row.unread .subject{font-weight:650;color:var(--color-ink)}.message-row.unread:after{content:none}.message-row.unread:before{content:"";position:absolute;left:8px;top:27px;width:4px;height:4px;background:var(--color-accent);border-radius:50%}.message-row time{font-size:10px;color:var(--color-muted);white-space:nowrap}.row-top>.ui-icon{width:13px;height:13px;filter:var(--icon-accent)}.reader{flex:1;min-width:0;background:var(--color-canvas);overflow:auto;padding:28px 32px}.empty-reader{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:var(--color-muted);padding:32px}.empty-reader>.empty-icon{display:grid;place-items:center;padding:0;margin-bottom:24px}.empty-icon>.ui-icon{width:53px;height:53px;opacity:.45}.empty-reader h2{font-size:20px;font-weight:500;line-height:1.4;max-width:300px;margin-bottom:8px}.empty-reader p{font-size:13px;line-height:1.6}.empty-list{padding:56px 24px;color:var(--color-muted);text-align:center;font-size:13px;line-height:1.7}
.reader-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;border-bottom:1px solid var(--color-rule);padding-bottom:20px;margin-bottom:24px}.reader-actions button{background:var(--color-paper);border-color:var(--color-rule);font-size:12px;min-height:36px;padding:8px 8px}.reader-actions .ui-icon{width:16px;height:16px}.reader-actions button:hover{background:var(--color-paper-3)}.reader h2{font-size:24px;line-height:1.4;letter-spacing:-.4px;margin-bottom:16px}.message-meta{font-size:12px;color:var(--color-muted);line-height:1.8;overflow-wrap:anywhere}.message-meta strong{color:var(--color-ink-2)}.body-text{white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px;line-height:1.8;margin:24px 0;color:var(--color-ink)}.attachment{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--color-rule);border-radius:var(--radius-sm);padding:12px;color:var(--color-accent);font-size:12px;text-decoration:none;background:var(--color-paper);max-width:100%;min-height:44px}.attachment:hover{background:var(--color-paper-3)}.attachment span{min-width:0;overflow-wrap:anywhere}.thread-count{font-size:12px;color:var(--color-muted);margin:0 0 16px}.thread-message{border:1px solid var(--color-rule);border-radius:var(--radius-md);margin:0 0 16px;background:var(--color-paper);overflow:hidden}.thread-current{border-color:var(--color-field)}.thread-message>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;list-style:none;padding:16px 16px;background:var(--color-paper)}.thread-message>summary::-webkit-details-marker{display:none}.thread-message>summary:hover{background:var(--color-paper-2)}.thread-message>summary strong{font-size:13px;color:var(--color-ink);overflow-wrap:anywhere}.thread-message>summary small{margin-top:8px;font-size:11px}.thread-message[open]>summary>.ui-icon{transform:rotate(90deg)}.thread-content{padding:0 16px 16px;border-top:1px solid var(--color-rule)}.thread-to{font-size:12px;color:var(--color-muted);overflow-wrap:anywhere;margin-top:16px}.thread-content .body-text{margin:20px 0}.thread-reply{color:var(--color-accent);font-size:12px;margin-top:12px;min-height:40px}.thread-attachment{margin:16px 0;border:1px solid var(--color-rule);border-radius:var(--radius-sm);overflow:hidden;max-width:100%}.thread-attachment .attachment{border:0;margin:0;width:100%;border-radius:0}.attachment-preview{display:block;max-width:100%;max-height:320px;object-fit:contain;margin:0 auto}
.dialog-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.dialog-head h2{font-size:21px;margin:0}.dialog-head button{padding:8px;min-width:36px}.dialog-head .ui-icon{width:19px;height:19px}dialog{border:1px solid var(--color-rule);border-radius:var(--radius-lg);padding:24px;width:min(700px,94%);max-height:90dvh;background:var(--color-paper);color:var(--color-ink);box-shadow:var(--shadow-dialog);overflow-y:auto}dialog::backdrop{background:var(--color-overlay)}.inline-label{display:flex;flex-direction:row;align-items:center;border-bottom:1px solid var(--color-rule);margin:0;min-height:50px;gap:12px}.inline-label input{border:0;padding:12px 4px;flex:1;width:0}.inline-label input:focus-visible{outline-offset:0}#compose-form>textarea{width:100%;height:280px;border:0;padding:24px 0;background:var(--color-paper)}.compose-footer{display:flex;align-items:center;gap:8px;padding-top:12px;border-top:1px solid var(--color-rule);flex-wrap:wrap}.attach-button{display:inline-flex;align-items:center;gap:8px;cursor:pointer;margin:0;padding:8px;font-size:12px;min-height:42px;border-radius:var(--radius-sm)}.attach-button:hover{background:var(--color-paper-3)}.attach-button input{display:none}#save-draft{font-size:12px}#file-list{font-size:12px;color:var(--color-ink-2);margin-bottom:8px;overflow-wrap:anywhere}.hint{font-size:12px;color:var(--color-muted);line-height:1.65;margin:16px 0 0;min-height:1lh}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);padding:16px 24px;background:var(--color-ink);color:var(--color-paper);border-radius:var(--radius-sm);z-index:100;max-width:90%;font-size:13px;line-height:1.5}.account-row{padding:16px 0;border-bottom:1px solid var(--color-rule);display:flex;justify-content:space-between;gap:12px;font-size:13px;overflow-wrap:anywhere}.account-row small{margin-top:4px}.account-row>div,.account-row>span{min-width:0}#admin-dialog h3,#settings-dialog h3{font-size:16px;margin:24px 0 16px}.account-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}.account-form label{margin:0}.account-form button{align-self:center}.checkbox-label{flex-direction:row;align-items:center;gap:8px}.checkbox-label input{width:18px;height:18px;margin:0;flex-shrink:0}.server-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}#settings-dialog{width:min(680px,94%)}#settings-dialog .hint{margin:0 0 16px}#settings-dialog textarea{min-height:130px}#settings-dialog hr{border:0;border-top:1px solid var(--color-rule);margin:24px 0}#settings-dialog .logout-button{border:1px solid var(--color-rule);width:100%;justify-content:flex-start;margin-top:24px}#link-form{margin-top:20px}#linked-list button{color:var(--color-danger);font-size:12px}.mobile-menu,.mobile-compose,.nav-scrim,.mobile-back{display:none}
@media(min-width:1600px){.list-panel{width:420px}.reader{padding:32px 48px}}
@media(max-width:1150px){.sidebar{width:205px;padding:24px 12px 16px}.sidebar .brand{font-size:18px;gap:8px}.sidebar .brand .ui-icon{width:23px}.list-panel{width:320px}.main>header{padding:24px}.reader{padding:24px}.reader-actions button{font-size:11px;padding:8px}.search{width:260px}}
@media(max-width:950px){.reader{display:none}.main.reading .reader{display:block}.main.reading .list-panel{display:none}.list-panel{width:100%;flex:1}.reader-actions .mobile-back{display:inline-flex}.main>header h1{font-size:24px}}
@media(max-width:720px){html,body{font-size:15px}button{min-height:44px}input,textarea,select{font-size:16px}.login{display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:28px;padding:80px 24px 40px;min-height:100svh}.login-intro{width:100%;max-width:420px;margin:0 auto}.login-intro .brand{margin:0!important;justify-content:center;font-size:23px}.login-intro h1,.login-intro p,.login-intro .pilot{display:none}.login-card{width:100%;max-width:420px;margin:0 auto;padding:28px 24px;border-radius:var(--radius-lg)}.login-card h2{font-size:26px}.login-theme{right:13px;top:14px}.theme-toggle{font-size:12px}.workspace{width:100%;height:100dvh;position:relative;overflow:hidden}.workspace .sidebar{position:fixed;inset:0 auto 0 0;width:min(300px,86%);height:100dvh;z-index:40;padding:24px 16px 16px;transform:translateX(-105%);transition:transform var(--dur-short);overflow-y:auto;border-right:1px solid var(--color-rule)}.workspace.menu-open .sidebar{transform:translateX(0)}.workspace.menu-open .nav-scrim{display:block;position:fixed;inset:0;background:var(--color-overlay);z-index:35;border-radius:0;padding:0}.workspace .sidebar .brand{font-size:21px;margin:0 4px 24px}.workspace .sidebar .brand .ui-icon{width:26px}.workspace .sidebar .compose{font-size:14px;min-height:46px}.account-switch{font-size:11px}.account-switch select{font-size:13px;min-height:42px}.sidebar nav button{min-height:46px;font-size:14px}.sidebar-bottom>button{font-size:13px;min-height:44px}.sidebar-bottom .theme-toggle{font-size:13px}.sidebar-bottom{padding-top:20px}.profile strong{font-size:13px}.profile small{font-size:11px;max-width:185px}.pilot-small{padding:12px 8px}.main{width:100%;max-width:100%;min-width:0}.main>header{flex-wrap:wrap;gap:8px;padding:8px 12px;min-height:0}.main>header>div{flex:1;min-width:0}.main>header h1{font-size:22px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-menu,.mobile-compose{display:inline-flex;align-items:center;justify-content:center;width:42px;height:44px;flex-shrink:0;border-radius:var(--radius-sm)}.mobile-compose{background:var(--color-accent);color:var(--color-accent-ink)}.icon-button{width:38px;height:44px;margin:0;padding:8px}.search{flex:0 0 100%;order:5;width:100%;margin:0;min-height:44px;gap:8px}.search input{font-size:16px;padding:8px 0}.search button{min-height:42px;font-size:12px}.mail-layout{width:100%;min-width:0}.list-panel{width:100%;min-width:0;border-right:0}.list-top{padding:0 16px;height:48px;font-size:12px}.list-top button{min-width:38px;min-height:42px}.message-row{min-height:90px;padding:16px 16px 16px 16px}.sender{font-size:14px}.subject{font-size:13px}.message-row time{font-size:11px}.reader{padding:16px 16px}.reader h2{font-size:22px}.reader-actions{gap:8px;margin-bottom:20px;padding-bottom:16px}.reader-actions button{min-height:42px;font-size:12px;padding:8px}.reader-actions .ui-icon{width:17px;height:17px}.body-text{font-size:15px;line-height:1.75}.thread-message>summary{padding:16px 12px}.thread-content{padding:0 12px 16px}.thread-reply{min-height:44px}.attachment-preview{max-height:260px}.attachment{width:100%;min-height:45px;font-size:12px}dialog{width:100%;max-width:100%;height:100dvh;max-height:100dvh;margin:0;padding:16px 16px;border:0;border-radius:0;overflow-y:auto;overscroll-behavior:contain}dialog[open]{display:flex;flex-direction:column}.dialog-head{position:sticky;top:-18px;padding:8px 0 12px;background:var(--color-paper);z-index:2;margin-bottom:8px}.dialog-head h2{font-size:21px}.dialog-head button{min-width:44px;min-height:44px}#composer form{display:flex;flex-direction:column;min-height:100%;flex:1}#compose-form>textarea{flex:1;min-height:200px;height:auto;resize:none}.inline-label{min-height:52px;flex-shrink:0}.inline-label input{padding:12px 4px}.compose-footer{gap:4px;flex-shrink:0;padding:12px 0 max(8px,env(safe-area-inset-bottom))}.compose-footer button,.attach-button{min-height:44px;padding:8px 12px;font-size:12px}.compose-footer .primary{font-size:14px;padding:12px 16px}#settings-dialog{width:100%;max-width:100%}#settings-dialog input{min-height:46px}.checkbox-label input{min-height:22px!important;width:22px;height:22px}#settings-dialog textarea{min-height:145px}.server-fields,.account-form{grid-template-columns:minmax(0,1fr);gap:12px}.account-form input{min-height:46px}.account-form button,#settings-form>.primary,#link-form>.primary{min-height:46px;width:100%}#toast{left:12px;right:12px;bottom:max(16px,env(safe-area-inset-bottom));transform:none;max-width:none;padding:16px 16px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}

/* The supplied transparent logo is shown unfiltered and unmodified. */
.brand-logo{display:block;object-fit:contain;filter:none;flex-shrink:0}.brand .brand-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.login-intro .brand{height:230px;width:330px;margin:0 0 24px;justify-content:center;overflow:hidden;max-width:100%}.login-intro .brand-logo{width:330px;height:330px}.sidebar .brand{height:100px;margin:-12px 0 16px;justify-content:center;overflow:hidden}.sidebar .brand-logo{width:180px;height:180px}.login h1{font-size:38px;letter-spacing:-1.2px}.login-intro p{max-width:390px}.login-intro .pilot{margin-top:20px}.login-card{border-radius:var(--radius-md)}
@media(max-width:1150px){.sidebar .brand-logo{width:165px;height:165px}.login-intro .brand{width:290px;height:200px}.login-intro .brand-logo{width:290px;height:290px}}
@media(max-width:720px){.login{gap:16px;padding-top:56px}.login-intro{display:flex;justify-content:center}.login-intro .brand{width:230px;height:140px;margin:0!important}.login-intro .brand-logo{width:230px;height:230px}.workspace .sidebar .brand{height:100px;margin:-12px 0 16px}.workspace .sidebar .brand-logo{width:180px;height:180px}.login-card{padding:28px 24px}.login-intro .brand-text{display:block}}

/* Reusable app controls for the next functional screens. */
.toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.tabs{display:flex;gap:4px;border-bottom:1px solid var(--color-rule);overflow:auto}.tabs button[aria-selected=true]{color:var(--color-accent);border-bottom-color:var(--color-accent);border-radius:0}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.form-grid .full-width{grid-column:1/-1}.field-help{font-size:12px;line-height:1.5;color:var(--color-muted);min-height:1lh}.surface-section{padding:20px 0;border-top:1px solid var(--color-rule)}@media(max-width:720px){.form-grid{grid-template-columns:minmax(0,1fr)}.toolbar{gap:8px}.toolbar button{min-height:44px}}

h1,h2{text-wrap:balance}@media(max-width:720px){.workspace .sidebar{visibility:hidden}.workspace.menu-open .sidebar{visibility:visible}}
