*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 0 20%,#063347,transparent 65%),radial-gradient(ellipse at 100% 90%,#432014,transparent 65%),#070c12;color:#e9f4fa;font:16px system-ui}#account{max-width:440px;margin:0 auto;padding:54px 24px}h1{font-size:38px;line-height:1.1;margin:24px 0}p{color:#a6bac8;line-height:1.6}.eyebrow{font:700 11px monospace;letter-spacing:2px;color:#70cfff}label{display:block;margin:20px 0;color:#bacbd7;font-size:14px}input{width:100%;background:#0b1823;border:1px solid #34546c;border-radius:8px;padding:14px;color:#fff;margin-top:8px;font:inherit}button{background:#ff792c;color:#111;border:0;border-radius:8px;padding:14px 18px;font:700 14px system-ui;cursor:pointer}form button{width:100%;margin:6px 0}.secondary{background:#102330;color:#70cfff;border:1px solid #34546c}.note{font-size:12px}a{color:#70cfff}button:disabled{opacity:.55;cursor:wait}[hidden]{display:none!important}#workspace{height:100dvh;display:flex;flex-direction:column}header{display:flex;gap:8px;align-items:center;padding:8px 12px;background:#0b1722;border-bottom:1px solid #2b4354}header div{flex:1;min-width:0}header b{font:700 10px monospace;color:#70cfff}header small{display:block;font-size:11px;color:#a6bac8;overflow-wrap:anywhere}header button{padding:9px 10px;font-size:11px;background:#102330;color:#70cfff}iframe{flex:1;width:100%;border:0;min-height:0}#message{color:#ffb483}

.google-login{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;margin-top:24px;background:#fff;color:#202124;border:1px solid #dadce0;font-weight:600}.google-login span{font-size:22px;font-weight:750;color:#4285f4}.login-divider{text-align:center;font-size:12px;margin:16px 0}

#manageAccess{align-self:flex-start;margin:5px 12px;padding:8px 12px;font-size:12px}#accessManagement{position:fixed;z-index:50;inset:0;overflow:auto;background:#07111b;color:#e9f4fa;padding:24px max(20px,calc((100vw - 480px)/2));}#accessManagement input,#accessManagement select{width:100%;padding:12px;background:#102330;color:#e9f4fa;border:1px solid #34546c;border-radius:8px}#accessManagement article{padding:12px 0;border-top:1px solid #34546c;overflow-wrap:anywhere}#accessManagement article p{font-size:13px;margin:5px 0}#accessManagement p{font-size:14px}#accessMessage{color:#70cfff}

/* Size the app to the space left by the account controls. */
html{height:100%}
body:has(#workspace:not([hidden])){height:100%;overflow:hidden}
#workspace{height:100vh;height:100dvh;min-height:0;overflow:hidden}
#workspace>header,#workspace>#manageAccess{flex:none}
#workspace>#legacyRecovery{flex:0 1 auto;min-height:0;overflow:auto;max-height:30%}
#workspace>iframe{display:block;flex:1 1 0;height:0;min-height:0;min-width:0}

#feedbackManagement{position:fixed;inset:0;z-index:60;overflow:auto;background:#091723;padding:24px max(16px,calc((100vw - 680px)/2));box-sizing:border-box}#feedbackManagement[hidden]{display:none}#feedbackManagement details{border:1px solid #385366;border-radius:12px;padding:16px;margin:12px 0;overflow-wrap:anywhere}#feedbackManagement summary{cursor:pointer}#feedbackManagement p{white-space:pre-wrap;overflow-wrap:anywhere}#feedbackManagement select{display:block;width:100%;max-width:100%;min-height:44px;margin:8px 0;background:#102635;color:#e8f2f7;border:1px solid #52758b;border-radius:8px;padding:8px}#feedbackManagement button{min-height:44px;margin:8px 8px 8px 0}#feedbackManagement h2{font-size:24px}#feedbackAdminClose{position:sticky;bottom:8px;background:#173548}

/* Touch controls and long account messages on compact screens. */
#workspace>header button{min-height:44px;min-width:44px}
#account input{font-size:16px}#message{overflow-wrap:anywhere}
button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #70cfff;outline-offset:3px}
#accessManagement form,#feedbackManagement form{min-width:0}#accessManagement button{white-space:normal}

.legal-links{display:flex;flex-wrap:wrap;gap:8px 20px;margin:24px 0;padding:12px 0;border-top:1px solid #2b4354}.legal-links a{padding:8px 0;min-height:44px;color:#86d6ff;font-size:13px;overflow-wrap:anywhere}
#privacyChoices{position:fixed;inset:0;z-index:100;overflow:auto;background:#09131e;color:#e9f4fa;padding:24px max(20px,calc((100vw - 640px)/2));overscroll-behavior:contain}#privacyChoices h2{font:800 24px ui-monospace,monospace}#privacyChoices label{display:flex;align-items:flex-start;gap:12px;padding:16px;border:1px solid #456279;border-radius:8px;font-size:16px;line-height:1.5}#privacyChoices input{flex:none;width:24px;height:24px;margin:0;accent-color:#ff792c}#privacyChoices button{display:block;min-height:44px;width:100%;margin:12px 0;white-space:normal}#privacyChoices .privacy-draft{font-size:13px;border-left:3px solid #ff8537;padding-left:12px}#privacyChoices [role=status]{color:#ffcb95}#privacyChoices p{overflow-wrap:anywhere}

.account-brand{display:block;width:min(320px,100%);height:auto;margin:0 auto 16px;border-radius:12px}

.auth-modes{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;border:1px solid #34546c;border-radius:12px;background:#091822}.auth-modes button{margin:0;background:transparent;color:#a6bac8;min-height:48px;padding:12px 8px}.auth-modes button[aria-pressed="true"]{background:#174158;color:#e9f4fa;box-shadow:inset 0 0 0 1px #70cfff}#authTitle{font-size:24px;margin:24px 0 8px}#authHelp{font-size:14px;margin:0 0 20px}

#syncStatus[data-state=saved]{color:#83cbb0}#syncStatus[data-state=error]{color:#ffb483}#syncNow{flex:none}#workspace>header{min-height:44px}

#diagnosticsPanel{position:fixed;inset:0;z-index:80;overflow:auto;overscroll-behavior:contain;max-width:none;margin:0;padding:24px max(16px,calc((100vw - 760px)/2));padding-bottom:max(24px,env(safe-area-inset-bottom));background:#101c28;border:0;border-radius:0}#diagnosticsPanel[hidden]{display:none}#diagnosticsRows article{padding:12px 0;border-bottom:1px solid #34546c;overflow-wrap:anywhere}#diagnosticsRows p{font-size:14px}#diagnosticsPanel button{margin:12px 8px 0 0}

#diagnosticsClose{position:sticky;top:0;float:right;z-index:1;min-height:44px;background:#102330;color:#70cfff;border:1px solid #34546c}#diagnosticsPanel h2{padding-right:90px;font-size:24px}#diagnosticsPanel button{min-height:44px}#weeklyEmailPanel{clear:both;border-top:1px solid #34546c;margin-top:24px;padding-top:16px}

/* Keep account controls hidden until the initial session check completes. */
#startup{display:none;min-height:100dvh;align-items:center;justify-content:center;flex-direction:column;padding:32px;text-align:center}#startup img{object-fit:contain}#startup p{font:14px monospace;color:#70cfff}.startup-loading #startup{display:flex}.startup-loading #account,.startup-loading #workspace{display:none!important}
