.account-overlay{position:fixed;inset:0;background:var(--bg,#151515);z-index:10000;display:grid;place-items:center;padding:20px}.account-overlay[hidden]{display:none}.account-box{width:min(440px,100%);padding:28px;border:1px solid #666;border-radius:16px;background:var(--panel,#222);color:var(--text,#eee)}.account-box h2{margin:0 0 20px}.account-box input{display:block;width:100%;box-sizing:border-box;margin:12px 0;padding:12px;border-radius:8px;border:1px solid #777;background:transparent;color:inherit}.account-box button{margin:8px 8px 0 0}.account-message{white-space:pre-wrap;min-height:24px;font-size:14px}.library-tools{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:18px}.library-tools select{max-width:280px}.upload-status{font-size:14px;display:block;margin:8px 0;white-space:pre-wrap}
.account-box label{display:block;outline:none}
.account-box label:focus-within{outline:none}
.account-box input:focus{outline:none;border-color:#aaa;box-shadow:0 0 0 1px #aaa}
.account-box input:focus-visible{outline:2px solid #aaa;outline-offset:2px;box-shadow:none}
html[data-theme="light"] .account-box{background:var(--paper);color:var(--ink)}
.profile{position:relative;letter-spacing:0;font-size:14px;color:var(--ink)}.profile-button{display:flex;align-items:center;gap:10px;background:transparent;color:inherit;padding:10px 14px;border:1px solid var(--line);border-radius:12px;font-size:14px}.profile-menu{position:absolute;top:calc(100% + 10px);left:0;width:300px;max-width:calc(100vw - 40px);padding:12px;border:1px solid var(--line);border-radius:14px;background:var(--paper);box-shadow:0 16px 50px #0004;z-index:100}.profile-menu p{margin:8px;font-size:12px;color:var(--muted)}.profile-menu button{display:block;width:100%;text-align:left;background:transparent;color:var(--ink);padding:12px;border-radius:8px;overflow-wrap:anywhere}.profile-menu button:hover,.profile-menu button.selected{background:var(--soft)}.profile-texts{max-height:260px;overflow:auto;border-bottom:1px solid var(--line);padding-bottom:8px;margin-bottom:8px}.profile-error{color:#ca7777!important}
.upload-welcome{min-height:100vh;background:var(--bg);color:var(--ink);padding:28px 6vw}.welcome-top{display:flex;align-items:center;justify-content:space-between;max-width:1200px;margin:auto}.welcome-content{max-width:700px;margin:12vh auto 0;text-align:center}.welcome-content h1{font-size:clamp(30px,5vw,48px);font-weight:600;letter-spacing:-1px}.welcome-content>p{color:var(--muted);font-size:16px;line-height:1.8}.welcome-content .welcome-eyebrow{font-size:11px;letter-spacing:2px;margin-top:25px}.welcome-icon{display:inline-grid;place-items:center;width:90px;height:90px;border:1px solid var(--line);border-radius:26px;font-size:42px;background:var(--paper)}.welcome-upload{margin:25px 0 18px;min-width:210px;font-size:15px}.welcome-content small{display:block;color:var(--muted)}.welcome-error{color:#cc7c7c!important}
.processing-screen{position:fixed;inset:0;z-index:9000;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:24px;background:var(--bg);color:var(--ink);overflow:hidden}.processing-screen h2{font-size:clamp(26px,4vw,38px);font-weight:500;letter-spacing:-.7px;margin:35px 0 8px}.processing-screen p{color:var(--muted);font-size:16px}.processing-screen small{color:var(--muted);font-size:12px;max-width:350px}.processing-art{width:250px;height:250px;position:relative;isolation:isolate}.processing-art i{position:absolute;inset:30px;border-radius:44% 56% 62% 38%;filter:blur(25px);opacity:.8;animation:color-flow 7s ease-in-out infinite;background:linear-gradient(135deg,#5c70ff,#b74cff)}.processing-art i:nth-child(2){inset:45px 0 20px 50px;background:linear-gradient(135deg,#38ddd0,#4785ff);animation-delay:-2.3s;mix-blend-mode:screen}.processing-art i:nth-child(3){inset:70px 45px 0 10px;background:linear-gradient(135deg,#ff7faa,#df78ff);animation-delay:-4.6s;mix-blend-mode:screen}.processing-ring{position:absolute;inset:20px;border:1px solid #ffffff30;border-radius:50%;box-shadow:inset 0 0 50px #ffffff15;animation:ring-breathe 4s ease-in-out infinite}@keyframes color-flow{0%,100%{transform:rotate(0deg) translate(-12px,8px) scale(.85);filter:blur(25px) hue-rotate(0deg)}50%{transform:rotate(180deg) translate(14px,-12px) scale(1.1);filter:blur(32px) hue-rotate(70deg)}}@keyframes ring-breathe{50%{transform:scale(1.08);opacity:.4}}@media(prefers-reduced-motion:reduce){.processing-art i,.processing-ring{animation:none}}@media(max-width:760px){.welcome-content{margin-top:9vh}.profile-menu{width:260px}.processing-art{width:200px;height:200px}}
.upload-welcome .welcome-content{margin:0;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:calc(100% - 40px)}
.account-startup{position:fixed;inset:0;z-index:10001;display:grid;place-items:center;background:var(--bg,#000);color:var(--muted,#999);font-size:14px;letter-spacing:.04em}
