@import url("https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Lora:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500&display=swap");:root{--bg-main:#ffffff;--bg-surface:#fafafa;--bg-surface-hover:#f4f4f4;--bg-elevated:#ffffff;--border-light:#ebebeb;--border-medium:#e0e0e0;--border-strong:#cacaca;--text-primary:#1a1a1a;--text-secondary:#555555;--text-muted:#999999;--text-inverse:#ffffff;--accent:#1a1a1a;--accent-light:rgba(26,26,26,0.06);--accent-hover:#3d3d3d;--accent-text:#1a1a1a;--success:#4f8a5b;--warning:#c08a3e;--danger:#c25b52;--font-ui:"Inter",-apple-system,BlinkMacSystemFont,system-ui,sans-serif;--font-display:"Inter",-apple-system,system-ui,sans-serif;--font-editor:"Lora",Georgia,"Times New Roman",serif;--sidebar-width:52px;--explorer-width:272px;--panel-width:320px;--radius-sm:3px;--radius-md:5px;--radius-lg:7px;--shadow-sm:0 1px 2px rgba(0,0,0,0.05);--shadow-md:0 4px 16px rgba(0,0,0,0.08);--shadow-lg:0 12px 32px rgba(0,0,0,0.11);color-scheme:light}[data-theme=warm]{--bg-main:#faf9f5;--bg-surface:#f0eee6;--bg-surface-hover:#e7e4d8;--bg-elevated:#fffefb;--border-light:#e9e6db;--border-medium:#ddd9cc;--border-strong:#cbc6b5;--text-primary:#3d3a33;--text-secondary:#6b665b;--text-muted:#a39d8e;--text-inverse:#fffefb;--accent:#c96442;--accent-light:rgba(201,100,66,0.10);--accent-hover:#b5532f;--accent-text:#b5532f;--success:#4f8a5b;--warning:#c08a3e;--danger:#c25b52;--shadow-sm:0 1px 2px rgba(60,55,45,0.05);--shadow-md:0 4px 16px rgba(60,55,45,0.08);--shadow-lg:0 12px 32px rgba(60,55,45,0.12);color-scheme:light}[data-theme=dark]{--bg-main:#161616;--bg-surface:#1e1e1e;--bg-surface-hover:#2a2a2a;--bg-elevated:#232323;--border-light:#2c2c2c;--border-medium:#383838;--border-strong:#4a4a4a;--text-primary:#ececec;--text-secondary:#b4b4b4;--text-muted:#7d7d7d;--text-inverse:#161616;--accent:#e5e5e5;--accent-light:rgba(255,255,255,0.08);--accent-hover:#ffffff;--accent-text:#f0f0f0;--success:#5fa873;--warning:#d4a05a;--danger:#d97066;--shadow-sm:0 1px 2px rgba(0,0,0,0.3);--shadow-md:0 4px 16px rgba(0,0,0,0.4);--shadow-lg:0 12px 32px rgba(0,0,0,0.5);color-scheme:dark}[data-theme=dark-soft]{--bg-main:#262624;--bg-surface:#2f2e2b;--bg-surface-hover:#3a3835;--bg-elevated:#322f2c;--border-light:#3a3835;--border-medium:#46433f;--border-strong:#585450;--text-primary:#ebe8e2;--text-secondary:#b7b2a8;--text-muted:#847e73;--text-inverse:#262624;--accent:#d97757;--accent-light:rgba(217,119,87,0.14);--accent-hover:#e08968;--accent-text:#e3917a;--success:#6cae7c;--warning:#d6a866;--danger:#df7a6f;--shadow-sm:0 1px 2px rgba(0,0,0,0.25);--shadow-md:0 4px 16px rgba(0,0,0,0.32);--shadow-lg:0 12px 32px rgba(0,0,0,0.42);color-scheme:dark}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-main);color:var(--text-primary);font-family:var(--font-ui);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}#root,body{overflow:hidden;height:100vh;width:100vw}#root{display:flex;flex-direction:column}.custom-scrollbar{scrollbar-width:thin;scrollbar-color:rgba(155,155,148,.4) transparent}.custom-scrollbar::-webkit-scrollbar{width:8px;height:8px}.custom-scrollbar::-webkit-scrollbar-thumb{background:rgba(155,155,148,.35);border-radius:99px}.custom-scrollbar::-webkit-scrollbar-track{background:transparent}.custom-scrollbar::-webkit-scrollbar-thumb:hover{background:rgba(120,120,112,.5)}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.animate-fadeIn{animation:fadeIn .2s ease-out}.ProseMirror{outline:none;font-family:var(--font-editor);font-size:1.125rem;line-height:1.85;color:var(--text-primary);min-height:100%;padding-bottom:200px}.ProseMirror p{margin-bottom:1em}.ProseMirror h1{font-size:1.85rem;font-weight:700;margin-bottom:.75em;margin-top:1.5em}.ProseMirror h1,.ProseMirror h2{font-family:var(--font-display);color:var(--text-primary)}.ProseMirror h2{font-size:1.4rem;font-weight:600;margin-bottom:.5em;margin-top:1.25em}.ProseMirror blockquote{border-left:3px solid var(--border-medium);padding-left:1em;margin-left:0;color:var(--text-secondary);font-style:italic}.ProseMirror ol,.ProseMirror ul{padding-left:1.5em;margin-bottom:1em}.ProseMirror li{margin-bottom:.25em}.entity-mention{font-weight:500;cursor:pointer;-webkit-text-decoration:underline transparent;text-decoration:underline transparent;text-underline-offset:3px;text-decoration-thickness:1.5px;transition:-webkit-text-decoration-color .15s;transition:text-decoration-color .15s;transition:text-decoration-color .15s,-webkit-text-decoration-color .15s}.entity-mention:hover{-webkit-text-decoration-color:currentColor;text-decoration-color:currentColor}.workspace-container{display:flex;width:100%;height:100%;overflow:hidden}button{cursor:pointer}button,input,select,textarea{font-family:var(--font-ui)}.top-nav{display:flex;align-items:center;height:44px;border-bottom:1px solid var(--border-light);background:var(--bg-main);padding:0 16px;gap:2px;flex-shrink:0}.top-nav-tab{padding:8px 16px;font-size:13px;font-weight:500;color:var(--text-secondary);background:none;border:none;border-bottom:2px solid transparent;transition:all .15s;margin-bottom:-1px}.top-nav-tab:hover{color:var(--text-primary)}.top-nav-tab.active{color:var(--accent-text);border-bottom-color:var(--accent);font-weight:600}.icon-sidebar{width:var(--sidebar-width);background:var(--bg-surface);border-right:1px solid var(--border-light);display:flex;flex-direction:column;align-items:center;padding:12px 0;gap:4px;flex-shrink:0}.icon-sidebar-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);border:none;background:transparent;color:var(--text-muted);transition:all .15s}.icon-sidebar-btn:hover{background:var(--bg-surface-hover);color:var(--text-secondary)}.icon-sidebar-btn.active{background:var(--accent-light);color:var(--accent)}.explorer-panel{width:var(--explorer-width);background:var(--bg-surface);border-right:1px solid var(--border-light);display:flex;flex-direction:column;flex-shrink:0;height:100%;overflow:hidden}.explorer-header{padding:12px 16px;border-bottom:1px solid var(--border-light);display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.explorer-header-title{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary)}.tree-item{display:flex;align-items:center;padding:4px 8px 4px 16px;font-size:13px;color:var(--text-secondary);border-radius:var(--radius-sm);margin:1px 8px;border:none;background:none;width:calc(100% - 16px);text-align:left;transition:background .1s;cursor:pointer}.tree-item:hover{background:var(--bg-surface-hover)}.tree-item.active{background:var(--accent-light);color:var(--accent-text);font-weight:500}.tree-group-label{display:flex;align-items:center;justify-content:space-between;padding:6px 16px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.btn-primary{padding:6px 12px;font-size:12px;font-weight:500;color:var(--text-inverse);background:var(--accent);border:none;border-radius:var(--radius-md);transition:background .15s;display:inline-flex;align-items:center;gap:4px}.btn-primary:hover{background:var(--accent-hover)}.btn-ghost{padding:6px 12px;font-size:12px;font-weight:500;color:var(--text-secondary);background:none;border:1px solid var(--border-light);border-radius:var(--radius-md);transition:all .15s;display:inline-flex;align-items:center;gap:4px}.btn-ghost:hover{background:var(--bg-surface-hover);border-color:var(--border-medium)}.btn-icon{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);border:none;background:none;color:var(--text-muted);transition:all .15s}.btn-icon:hover{background:var(--bg-surface-hover);color:var(--text-secondary)}.btn-icon.active{background:var(--accent-light);color:var(--accent)}.input-field{width:100%;padding:8px 12px;font-size:13px;border:1px solid var(--border-light);border-radius:var(--radius-md);background:var(--bg-main);color:var(--text-primary);outline:none;transition:border-color .15s}.input-field:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-light)}.input-field::placeholder{color:var(--text-muted)}.badge{display:inline-flex;align-items:center;padding:2px 8px;font-size:11px;font-weight:500;border-radius:99px;border:1px solid}.badge-draft{background:var(--bg-surface);color:var(--text-muted);border-color:var(--border-medium)}.badge-progress{background:rgba(192,138,62,.12);color:#9a6c2e;border-color:rgba(192,138,62,.28)}.badge-done{background:rgba(79,138,91,.12);color:#3f6b48;border-color:rgba(79,138,91,.28)}.divider{height:1px;background:var(--border-light);margin:8px 0}.binder-row{display:flex;align-items:center;gap:2px;padding-right:8px;height:28px;cursor:default;border-radius:var(--radius-sm);margin:1px 6px}.binder-row:hover{background:var(--bg-surface-hover)}.binder-row.active{background:var(--accent-light)}.binder-row.active .binder-label{color:var(--accent-text)}.binder-row .binder-actions{opacity:0;transition:opacity .12s;display:flex;gap:1px}.binder-row:hover .binder-actions{opacity:1}.binder-twisty{width:16px;height:16px;display:flex;align-items:center;justify-content:center;border:none;background:none;color:var(--text-muted);flex-shrink:0;border-radius:3px}.binder-twisty:hover{color:var(--text-primary)}.binder-icon{display:flex;align-items:center;flex-shrink:0;margin-right:4px}.binder-label{flex:1 1;min-width:0;font-size:12.5px;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.binder-label-folder{font-weight:600;color:var(--text-primary);font-family:var(--font-display);font-size:13px}.binder-scene{display:flex;align-items:center;gap:6px;width:calc(100% - 12px);margin:1px 6px;padding-right:8px;height:26px;font-size:12px;color:var(--text-secondary);border:1px solid transparent;background:none;border-radius:var(--radius-sm);text-align:left;transition:background .1s}.binder-scene:hover{background:var(--bg-surface-hover)}.binder-scene{cursor:pointer}.binder-scene .binder-actions{opacity:0;transition:opacity .12s}.binder-scene:hover .binder-actions{opacity:1}.binder-scene.active{background:var(--accent-light);color:var(--accent-text);border-color:var(--border-medium)}.binder-row[draggable=true],.binder-scene[draggable=true]{cursor:-webkit-grab;cursor:grab}.binder-row.drop-target,.binder-scene.drop-target{background:var(--accent-light);box-shadow:inset 0 0 0 1.5px var(--accent)}.binder-rename{flex:1 1;min-width:0;font-size:12.5px;font-family:var(--font-ui);padding:2px 6px;border:1px solid var(--accent);border-radius:4px;background:var(--bg-main);color:var(--text-primary);outline:none}.codex-group-header{display:flex;align-items:center;justify-content:space-between;padding:4px 6px 4px 4px;border-radius:var(--radius-sm)}.codex-group-header:hover{background:var(--bg-surface-hover)}.codex-group-header .btn-icon{opacity:0;transition:opacity .12s}.codex-group-header:hover .btn-icon{opacity:1}.codex-group-toggle{display:flex;align-items:center;gap:7px;flex:1 1;min-width:0;background:none;border:none;padding:4px;color:var(--text-secondary)}.codex-group-dot{width:9px;height:9px;border-radius:99px;flex-shrink:0}.codex-group-name{font-family:var(--font-display);font-size:13px;font-weight:600;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.codex-group-count{font-size:10px;font-weight:600;color:var(--text-muted);background:var(--bg-main);border:1px solid var(--border-light);border-radius:99px;padding:1px 7px;margin-left:auto}.snapshot-panel{width:var(--panel-width);min-width:var(--panel-width);background:var(--bg-surface);border-left:1px solid var(--border-light);display:flex;flex-direction:column;height:100%;flex-shrink:0}.snapshot-header{display:flex;align-items:center;gap:8px;padding:12px 14px;border-bottom:1px solid var(--border-light);flex-shrink:0}.snapshot-card{padding:12px;border-radius:var(--radius-md);border:1px solid var(--border-light);background:var(--bg-elevated);transition:border-color .15s}.snapshot-card:hover{border-color:var(--border-medium)}.diff-added{background:rgba(79,138,91,.16);color:#3f6b48;border-radius:3px}.diff-removed{background:rgba(194,91,82,.14);color:#a84a42;text-decoration:line-through;border-radius:3px}.split-pane{width:42%;min-width:320px;height:100%;overflow-y:auto;border-right:1px solid var(--border-medium);background:var(--bg-surface);flex-shrink:0}.split-pane-header{position:-webkit-sticky;position:sticky;top:0;padding:10px 24px;font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);background:var(--bg-surface);border-bottom:1px solid var(--border-light)}.split-pane-body{padding:32px 24px 80px;font-family:var(--font-editor);font-size:1.05rem;line-height:1.85;color:var(--text-secondary);max-width:680px}.split-pane-body h1{font-size:1.6rem}.split-pane-body h1,.split-pane-body h2{font-family:var(--font-display);margin:1em 0 .5em}.split-pane-body h2{font-size:1.3rem}.split-pane-body p{margin-bottom:1em}.bubble-menu{gap:1px;padding:4px;border-radius:var(--radius-md);border:1px solid var(--border-medium);background:var(--bg-elevated);box-shadow:var(--shadow-lg);animation:fadeIn .1s ease-out}.bubble-btn,.bubble-menu{display:flex;align-items:center}.bubble-btn{justify-content:center;width:30px;height:30px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-secondary);cursor:pointer;transition:background .1s,color .1s}.bubble-btn:hover{background:var(--bg-surface-hover);color:var(--text-primary)}.bubble-btn.active{background:var(--accent-light);color:var(--accent)}.bubble-divider{width:1px;height:18px;background:var(--border-light);margin:0 3px;flex-shrink:0}.bubble-codex-btn{display:inline-flex;align-items:center;gap:4px;height:30px;padding:0 10px;margin-left:1px;border:none;border-radius:var(--radius-sm);background:var(--accent-light);color:var(--accent);font-size:12px;font-weight:600;font-family:var(--font-ui);cursor:pointer;white-space:nowrap;transition:background .1s}.bubble-codex-btn:hover{background:var(--accent);color:var(--text-inverse)}.comment-mark{background:rgba(192,132,52,.16);border-bottom:1.5px dotted var(--warning);cursor:help;border-radius:2px}.cmd-list{width:320px;max-height:360px;overflow-y:auto;background:var(--bg-main);border:1px solid var(--border-medium);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:6px;animation:fadeIn .12s ease-out}.cmd-header{font-size:11px;text-transform:uppercase;color:var(--text-muted);font-weight:600;padding:8px 10px 6px;letter-spacing:.03em}.cmd-item{display:flex;align-items:center;justify-content:space-between;width:100%;text-align:left;padding:6px 10px;border:none;background:none;border-radius:var(--radius-sm);cursor:pointer}.cmd-item.active,.cmd-item:hover{background:var(--bg-surface)}.cmd-item-left{gap:12px}.cmd-icon-box,.cmd-item-left{display:flex;align-items:center}.cmd-icon-box{justify-content:center;width:32px;height:32px;background:var(--bg-main);border:1px solid var(--border-light);border-radius:6px;flex-shrink:0}.cmd-icon-box,.cmd-title{color:var(--text-primary)}.cmd-title{font-size:14px;font-weight:500}.cmd-hint{font-size:13px;color:var(--text-muted);font-family:var(--font-editor);margin-left:12px}.export-item{display:block;width:100%;text-align:left;padding:8px 10px;border:none;background:none;border-radius:var(--radius-sm);font-size:13px;color:var(--text-primary);cursor:pointer}.export-item:hover{background:var(--accent-light)}.theme-menu{position:absolute;top:calc(100% + 8px);right:0;z-index:41;width:244px;padding:6px;background:var(--bg-elevated);border:1px solid var(--border-medium);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);animation:fadeIn .12s ease-out}.theme-menu-title{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);padding:6px 10px 8px}.theme-menu-item{display:flex;align-items:center;gap:11px;width:100%;padding:9px 10px;border:none;background:none;border-radius:var(--radius-md);cursor:pointer;transition:background .12s}.theme-menu-item:hover{background:var(--bg-surface-hover)}.theme-menu-item.active{background:var(--accent-light)}.theme-menu-label{font-size:13px;font-weight:600;color:var(--text-primary)}.theme-menu-desc{font-size:11px;color:var(--text-muted);margin-top:1px}.theme-edit-link{font-size:11px;font-weight:600;color:var(--accent-text);padding:2px 6px;border-radius:5px;flex-shrink:0}.theme-edit-link:hover{background:var(--accent-light)}.theme-modal-overlay{position:fixed;inset:0;z-index:100;background:rgba(15,15,15,.35);display:flex;align-items:center;justify-content:center;animation:fadeIn .12s ease-out}.theme-modal{width:360px;max-height:82vh;display:flex;flex-direction:column;background:var(--bg-elevated);border:1px solid var(--border-medium);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);overflow:hidden}.theme-modal-header{display:flex;align-items:center;gap:8px;padding:14px;border-bottom:1px solid var(--border-light);flex-shrink:0}.theme-modal-title{font-family:var(--font-display);font-size:14px;font-weight:700;color:var(--text-primary);flex:1 1}.theme-modal-body{padding:8px 16px 16px;overflow-y:auto}.theme-group{margin-top:14px}.theme-group-title{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin-bottom:8px}.theme-field{display:flex;align-items:center;gap:10px;padding:5px 0}.theme-field-label{flex:1 1;font-size:13px;color:var(--text-secondary)}.theme-field-hex{width:86px;font-family:var(--font-ui);font-size:12px;text-transform:uppercase;padding:5px 8px;border:1px solid var(--border-medium);border-radius:var(--radius-sm);background:var(--bg-main);color:var(--text-primary);outline:none}.theme-field-hex:focus{border-color:var(--accent)}.theme-custom-swatch{position:relative;width:28px;height:24px;border-radius:6px;border:1px solid var(--border-strong);overflow:hidden;flex-shrink:0}.theme-custom-swatch input[type=color]{position:absolute;inset:-4px;width:calc(100% + 8px);height:calc(100% + 8px);border:none;padding:0;background:none;cursor:pointer;opacity:0}.theme-modal-footer{padding:12px 16px;border-top:1px solid var(--border-light);flex-shrink:0}.theme-modal-footer .btn-primary{width:100%}.sidebar-tabs{display:flex;gap:0;padding:0 4px;border-bottom:1px solid var(--border-light);flex-shrink:0;background:var(--bg-surface)}.sidebar-tab{flex:1 1;display:flex;align-items:center;justify-content:center;gap:5px;padding:8px 4px;font-size:11px;font-weight:500;color:var(--text-muted);background:none;border:none;border-bottom:2px solid transparent;transition:all .15s;white-space:nowrap;cursor:pointer}.sidebar-tab:hover{color:var(--text-secondary);background:var(--bg-surface-hover)}.sidebar-tab.active{color:var(--accent-text);border-bottom-color:var(--accent);font-weight:600}.sidebar-placeholder{flex:1 1;flex-direction:column;padding:32px 20px;text-align:center;gap:10px}.sidebar-placeholder,.sidebar-placeholder-icon{display:flex;align-items:center;justify-content:center;color:var(--text-muted)}.sidebar-placeholder-icon{width:40px;height:40px;border-radius:10px;background:var(--bg-surface-hover);margin-bottom:4px}.sidebar-placeholder-title{font-size:13px;font-weight:600;color:var(--text-secondary)}.sidebar-placeholder-desc{font-size:11px;line-height:1.5;color:var(--text-muted);max-width:200px}.sidebar-codex-item{display:flex;align-items:center;gap:8px;padding:5px 12px;font-size:12px;color:var(--text-secondary);cursor:pointer;transition:background .1s;border:none;background:none;width:100%;text-align:left}.sidebar-codex-item:hover{background:var(--bg-surface-hover)}.sidebar-codex-dot{width:7px;height:7px;border-radius:99px;flex-shrink:0}.app-footer{height:28px;flex-shrink:0;justify-content:space-between;padding:0 12px;background:var(--bg-surface);border-top:1px solid var(--border-light);font-size:11px;color:var(--text-muted);gap:16px;z-index:5}.app-footer,.footer-left{display:flex;align-items:center}.footer-left{gap:12px}.footer-right{display:flex;align-items:center;gap:14px}.footer-btn{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:var(--radius-sm);border:none;background:none;color:var(--text-muted);cursor:pointer;transition:all .12s;padding:0}.footer-btn:hover{background:var(--bg-surface-hover);color:var(--text-secondary)}.footer-select{font-family:var(--font-ui);font-size:11px;padding:2px 6px;border-radius:var(--radius-sm);border:1px solid var(--border-medium);background:var(--bg-main);color:var(--text-secondary);outline:none;cursor:pointer}.footer-select:hover{border-color:var(--border-strong)}.footer-sync{display:inline-flex;align-items:center;gap:5px;font-size:11px;color:var(--text-muted)}.footer-sync-dot{width:6px;height:6px;border-radius:99px;flex-shrink:0}.footer-sync-dot.saved{background:var(--success)}.footer-sync-dot.saving{background:var(--warning);animation:pulse 1.2s ease-in-out infinite}.footer-sync-dot.unsynced{background:var(--danger)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.footer-divider{width:1px;height:14px;background:var(--border-light);flex-shrink:0}.goal-menu{width:320px;padding:18px;background:var(--bg-elevated);border:1px solid var(--border-medium);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);animation:fadeIn .15s ease-out}.auth-container{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 50% 50%,var(--bg-surface) 0,var(--bg-main) 100%);z-index:9999;overflow:hidden;font-family:var(--font-ui);padding:24px}.auth-ambient-glow{position:absolute;border-radius:50%;filter:blur(80px);opacity:.12;pointer-events:none;z-index:1;transition:all 1s ease}.auth-ambient-glow.glow-1{width:380px;height:380px;top:10%;left:20%;background:var(--accent)}.auth-ambient-glow.glow-2{width:440px;height:440px;bottom:10%;right:15%;background:var(--warning)}.auth-card{width:100%;max-width:440px;background:var(--bg-elevated);border:1px solid var(--border-medium);border-radius:20px;box-shadow:0 12px 40px rgba(0,0,0,.25);padding:40px;z-index:2;position:relative;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);animation:authFadeUp .4s cubic-bezier(.16,1,.3,1)}@keyframes authFadeUp{0%{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.auth-header{flex-direction:column;text-align:center;margin-bottom:28px}.auth-header,.auth-logo{display:flex;align-items:center}.auth-logo{width:54px;height:54px;border-radius:14px;background:var(--accent-light);color:var(--accent);justify-content:center;margin-bottom:16px;box-shadow:0 4px 12px var(--accent-light);animation:logoPulse 2s ease-in-out infinite}@keyframes logoPulse{0%,to{transform:scale(1)}50%{transform:scale(1.04);box-shadow:0 6px 18px var(--accent-light)}}.auth-title{margin:0;font-family:var(--font-display);font-size:28px;font-weight:700;color:var(--text-primary);letter-spacing:-.02em}.auth-subtitle{margin:8px 0 0;font-size:13px;color:var(--text-muted);line-height:1.5;max-width:320px}.auth-view-description{font-size:13px;color:var(--text-secondary);line-height:1.5;margin:0 0 20px;text-align:center}.auth-alert{display:flex;align-items:flex-start;gap:10px;padding:12px 16px;border-radius:10px;font-size:12.5px;line-height:1.4;margin-bottom:20px;animation:fadeIn .2s ease-out}.auth-alert-danger{background:rgba(194,91,82,.08);color:var(--danger);border:1px solid rgba(194,91,82,.18)}.auth-alert-success{background:rgba(79,138,91,.08);color:var(--success);border:1px solid rgba(79,138,91,.18)}.auth-form{gap:20px}.auth-form,.form-group{display:flex;flex-direction:column}.form-group{gap:6px}.form-group label{font-size:12px;font-weight:600;color:var(--text-secondary)}.label-row{display:flex;align-items:center;justify-content:space-between}.input-with-icon{position:relative;width:100%}.input-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--text-muted);pointer-events:none}.input-with-icon input{width:100%;padding:10px 12px 10px 38px;font-size:13.5px;border:1px solid var(--border-medium);border-radius:10px;background:var(--bg-main);color:var(--text-primary);outline:none;transition:all .15s ease;box-sizing:border-box}.input-with-icon input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-light)}.btn-auth-primary{width:100%;padding:11px 16px;font-size:13.5px;font-weight:600;color:var(--text-inverse);background:var(--accent);border:none;border-radius:10px;cursor:pointer;transition:all .15s ease;display:inline-flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 4px 12px rgba(0,0,0,.1)}.btn-auth-primary:hover:not(:disabled){background:var(--accent-hover);transform:translateY(-1px);box-shadow:0 6px 16px rgba(0,0,0,.15)}.btn-auth-primary:disabled{opacity:.7;cursor:not-allowed}.btn-auth-primary .spinner{animation:authSpin 1s linear infinite}@keyframes authSpin{to{transform:rotate(1turn)}}.btn-auth-secondary{width:100%;padding:10px 16px;font-size:13px;font-weight:500;color:var(--text-secondary);background:var(--bg-surface);border:1px solid var(--border-medium);border-radius:10px;cursor:pointer;transition:all .12s ease;display:inline-flex;align-items:center;justify-content:center}.btn-auth-secondary:hover{background:var(--bg-surface-hover);color:var(--text-primary);border-color:var(--border-strong)}.auth-divider{display:flex;align-items:center;text-align:center;color:var(--text-muted);font-size:12px;margin:16px 0}.auth-divider:after,.auth-divider:before{content:"";flex:1 1;border-bottom:1px solid var(--border-light)}.auth-divider span{padding:0 10px}.auth-footer-text{text-align:center;font-size:12.5px;color:var(--text-muted);margin-top:8px}.auth-link-btn{background:none;border:none;padding:0;font-size:12px;font-weight:500;color:var(--text-muted);cursor:pointer;outline:none}.auth-link-btn:hover{color:var(--text-secondary)}.auth-link-btn.highlight{color:var(--accent-text);font-weight:600}.auth-link-btn.highlight:hover{color:var(--accent)}