:root{--bg:#f6f8fc;--fg:#202124;--accent:#1a73e8}*{box-sizing:border-box}body{letter-spacing:-.006em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;background:var(--bg);color:var(--fg);margin:0;font-family:-apple-system,BlinkMacSystemFont,Inter,Segoe UI,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:15px;line-height:1.5}.shell-placeholder{text-align:center;max-width:640px;margin:15vh auto;padding:2rem}.shell-placeholder h1{color:var(--accent)}.auth-card{background:#fff;border-radius:12px;max-width:380px;margin:12vh auto;padding:2rem;box-shadow:0 1px 4px #0000001f}.auth-card h1{color:var(--accent);margin-top:0}.auth-card form{flex-direction:column;gap:.9rem;display:flex}.auth-card label{flex-direction:column;gap:.3rem;font-size:.85rem;display:flex}.auth-card input{border:1px solid #ccc;border-radius:6px;padding:.6rem;font-size:1rem}.auth-card button{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:.6rem;font-size:1rem}.auth-card button:disabled{opacity:.6;cursor:default}.home{max-width:640px;margin:10vh auto;padding:2rem}.home .totp{background:#fff;border-radius:10px;margin:1.5rem 0;padding:1rem}.home .totp img{width:180px;height:180px;margin:1rem 0;display:block}.accounts{max-width:680px;margin:0 auto;padding:3rem 1.5rem 4rem}.accounts>h1{margin:1.5rem 0 1rem;font-size:1.5rem}.accounts>h2{margin:1.5rem 0 .75rem;font-size:1.1rem}.accounts .settings-header,.accounts .account-row,.accounts .account-form{background:#fff;border:1px solid #e0e3e7;border-radius:12px;padding:1.25rem}.accounts .account-list{margin:0;padding:0;list-style:none}.accounts .account-row{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.75rem;display:flex}.accounts .account-actions{align-items:center;gap:.5rem;display:flex}.accounts .account-form{flex-direction:column;gap:.75rem;display:flex}.accounts .account-form input{border:1px solid #dadce0;border-radius:8px;width:100%;padding:.6rem .7rem;font-size:.95rem}.accounts button{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:.5rem .9rem;font-size:.9rem}.accounts button.danger{background:#d93025}.accounts button:disabled{opacity:.6}.accounts .ok{color:#188038;font-size:.85rem}.error{color:#d93025;font-size:.9rem}.muted{color:#5f6368;font-size:.9rem}.mail-app{background:#fff;grid-template-columns:240px 340px 1fr;height:100vh;display:grid}.empty-state{text-align:center;max-width:480px;margin:15vh auto}.empty-state .button{background:var(--accent);color:#fff;border-radius:6px;margin-top:1rem;padding:.6rem 1.2rem;text-decoration:none;display:inline-block}.sidebar{background:#f6f8fc;border-right:1px solid #e0e0e0;flex-direction:column;gap:.75rem;padding:1rem .75rem;display:flex;overflow-y:auto}.sidebar .compose-btn{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:20px;padding:.7rem;font-size:1rem}.sidebar .accounts-nav{border-bottom:1px solid #e0e0e0;flex-direction:column;padding-bottom:.5rem;display:flex}.sidebar .account-item{text-align:left;cursor:pointer;color:#3c4043;background:0 0;border:none;border-radius:6px;padding:.4rem .5rem;font-size:.85rem}.sidebar .account-item.active{color:var(--accent);background:#e8f0fe;font-weight:600}.sidebar .folders ul{margin:0;padding:0;list-style:none}.sidebar .folder{text-align:left;cursor:pointer;background:0 0;border:none;border-radius:0 16px 16px 0;justify-content:space-between;align-items:center;width:100%;padding:.5rem .75rem;font-size:.9rem;display:flex}.sidebar .folder.active{background:#d3e3fd;font-weight:600}.sidebar .folder .badge{background:var(--accent);color:#fff;border-radius:10px;padding:0 .4rem;font-size:.7rem}.sidebar .sidebar-footer{justify-content:space-between;margin-top:auto;font-size:.85rem;display:flex}.sidebar .sidebar-footer .linklike{color:var(--accent);cursor:pointer;background:0 0;border:none}.message-list{border-right:1px solid #e0e0e0;overflow-y:auto}.message-list .messages{margin:0;padding:0;list-style:none}.message-list .msg-item{cursor:pointer;border-bottom:1px solid #f1f1f1;padding:.7rem 1rem}.message-list .msg-item:hover{background:#f8f9fa}.message-list .msg-item.active{background:#e8f0fe}.message-list .msg-item.unread .msg-subject,.message-list .msg-item.unread .msg-from{font-weight:700}.message-list .msg-item .msg-from{color:#202124;font-size:.85rem}.message-list .msg-item .msg-subject{font-size:.9rem}.message-list .msg-item .msg-preview{color:#5f6368;white-space:nowrap;text-overflow:ellipsis;font-size:.8rem;overflow:hidden}.message-list .msg-item .star{color:#f4b400;margin-right:.25rem}.message-list .empty,.message-list .error,.message-list .loading{color:#5f6368;padding:1rem}.reading-pane{padding:1.5rem;overflow-y:auto}.reading-pane .reader-empty{color:#5f6368;text-align:center;margin-top:20vh}.reading-pane .reader header{border-bottom:1px solid #e0e0e0;margin-bottom:1rem;padding-bottom:.75rem}.reading-pane .reader header h2{margin:0 0 .5rem}.reading-pane .reader header .reader-meta{color:#3c4043;font-size:.9rem}.reading-pane .reader header .reader-actions{gap:.5rem;margin-top:.6rem;display:flex}.reading-pane .reader header .reader-actions button{cursor:pointer;background:#fff;border:1px solid #dadce0;border-radius:6px;padding:.35rem .7rem}.reading-pane .body-frame{background:#fff;border:none;width:100%;min-height:200px}.reading-pane .body-text{white-space:pre-wrap;word-wrap:break-word;font-family:inherit;font-size:.95rem}.composer-backdrop{background:#0000004d;justify-content:flex-end;align-items:flex-end;padding:2rem;display:flex;position:fixed;inset:0}.composer{background:#fff;border-radius:12px;width:540px;max-width:100%;overflow:hidden;box-shadow:0 4px 20px #00000040}.composer header{background:#f2f6fc;justify-content:space-between;align-items:center;padding:.75rem 1rem;display:flex}.composer header .linklike{cursor:pointer;background:0 0;border:none;font-size:1rem}.composer form{flex-direction:column;gap:.5rem;padding:1rem;display:flex}.composer form input,.composer form textarea,.composer form select{border:1px solid #dadce0;border-radius:6px;padding:.55rem;font-family:inherit;font-size:.95rem}.composer .composer-actions{align-items:center;gap:.75rem;display:flex}.composer .composer-actions button[type=submit]{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:20px;padding:.55rem 1.4rem}.composer .composer-actions .linklike{color:var(--accent);cursor:pointer;background:0 0;border:none}.composer .composer-actions .linklike.danger-text{color:#d93025}.composer .attachments-row{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.composer .attachments-row .attach-btn{cursor:pointer;border:1px solid #dadce0;border-radius:16px;padding:.35rem .7rem;font-size:.85rem}.composer .attachments-row .chip{background:#e8f0fe;border-radius:14px;align-items:center;gap:.35rem;padding:.2rem .6rem;font-size:.8rem;display:inline-flex}.composer .attachments-row .chip button{cursor:pointer;color:#5f6368;background:0 0;border:none;font-size:.8rem}.attachments-list{border-top:1px solid #e0e0e0;flex-wrap:wrap;gap:.5rem;margin-top:1rem;padding-top:1rem;display:flex}.attachments-list .attachment{cursor:pointer;background:#fff;border:1px solid #dadce0;border-radius:8px;padding:.4rem .8rem;font-size:.85rem}.attachments-list .attachment:hover{background:#f1f3f4}.settings-header{margin-bottom:1.5rem}.settings-header h1{margin:0 0 .25rem;font-size:1.5rem}.settings-header .totp{margin:1rem 0}.settings-header .totp img{width:180px;height:180px;margin:.75rem 0;display:block}.settings-header .danger{margin-top:.75rem}.sidebar .folder-row{align-items:center;display:flex}.sidebar .folder-row .folder{flex:1}.sidebar .folder-row .folder-del{visibility:hidden;cursor:pointer;opacity:.7;background:0 0;border:none;padding:0 .4rem;font-size:.8rem}.sidebar .folder-row:hover .folder-del{visibility:visible}.sidebar .new-folder input{background:#fff;border:1px solid #dadce0;border-radius:8px;width:100%;margin-top:.5rem;padding:.45rem .6rem;font-size:.85rem}.reading-pane .reader header .reader-actions{flex-wrap:wrap}.reading-pane .reader header .reader-actions button.primary{background:var(--accent);color:#fff;border-color:var(--accent)}.reading-pane .reader header .reader-actions .move-to{cursor:pointer;background:#fff;border:1px solid #dadce0;border-radius:6px;padding:.35rem .5rem;font-size:.85rem}.accounts .settings-header .totp,.accounts .settings-header .change-pw{margin-top:1.25rem}.accounts .settings-header .totp h2,.accounts .settings-header .change-pw h2{margin:0 0 .6rem;font-size:1rem}.accounts .settings-header .totp form,.accounts .settings-header .totp .totp-enroll,.accounts .settings-header .change-pw form,.accounts .settings-header .change-pw .totp-enroll{flex-direction:column;gap:.6rem;max-width:340px;display:flex}.accounts .settings-header .totp input,.accounts .settings-header .change-pw input{border:1px solid #dadce0;border-radius:8px;padding:.6rem .7rem;font-size:.95rem}.accounts .settings-header .totp button,.accounts .settings-header .change-pw button{align-self:flex-start}.mobile-bar,.sidebar-scrim,.mobile-back{display:none}@media (width<=768px){.mail-app{height:auto;display:block}.mobile-bar{background:var(--accent);color:#fff;z-index:20;justify-content:space-between;align-items:center;height:48px;padding:0 .5rem;display:flex;position:sticky;top:0}.mobile-bar .icon-btn{color:#fff;cursor:pointer;background:0 0;border:none;padding:.25rem .6rem;font-size:1.3rem}.mobile-bar .mobile-title{font-weight:600}.sidebar{z-index:40;width:270px;height:100%;transition:transform .2s;position:fixed;top:0;left:0;transform:translate(-100%)}.sidebar.open{transform:translate(0)}.sidebar-scrim.open{z-index:30;background:#00000059;display:block;position:fixed;inset:0}.message-list,.reading-pane{border-right:none;height:calc(100vh - 48px)}.reading-pane,.mail-app.reading .message-list{display:none}.mail-app.reading .reading-pane{display:block}.mobile-back{display:inline-block}.composer{border-radius:0;width:100%;height:100%}.composer-backdrop{padding:0}.accounts{padding:1.5rem 1rem 3rem}}