@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&family=Lora:ital,wght@0,400;0,500;0,600;1,400;1,500&display=swap";@import"https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700&family=Sora:wght@500;600;700&display=swap";/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */@layer properties{@supports ((-webkit-hyphens:none) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}body{background-color:#f8fafc!important}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.relative{position:relative}.contents{display:contents}.flex{display:flex}.hidden{display:none}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.border{border-style:var(--tw-border-style);border-width:1px}.underline{text-decoration-line:underline}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.transition\!{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,backdrop-filter,display,content-visibility,overlay,pointer-events!important;transition-timing-function:var(--tw-ease,ease)!important;transition-duration:var(--tw-duration,0s)!important}:root{--bg-app:#f8fafc;--bg-paper:#fff;--bg-sidebar:#f1f5f9;--bg-element:#f1f5f9;--bg-element-hover:#e2e8f0;--border-subtle:#e2e8f0;--border-focus:#cbd5e1;--text-primary:#0f172a;--text-secondary:#64748b;--text-muted:#94a3b8;--accent-primary:#4f46e5;--accent-hover:#4338ca;--accent-light:#eef2ff;--success:#10b981;--warning:#f59e0b;--danger:#ef4444;--font-ui:"Inter", system-ui, -apple-system, sans-serif;--font-reading:"Lora", Georgia, serif;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--shadow-float:0 20px 25px -5px #0000001a, 0 8px 10px -6px #0000001a;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-full:9999px;--ease-spring:cubic-bezier(.175, .885, .32, 1.275);--ease-smooth:cubic-bezier(.4, 0, .2, 1);--sidebar-width:280px;--max-content-width:800px}.dark{--bg-app:#0b0f19;--bg-paper:#111827;--bg-sidebar:#0b0f19;--bg-element:#1f2937;--bg-element-hover:#374151;--border-subtle:#1f2937;--border-focus:#374151;--text-primary:#f3f4f6;--text-secondary:#9ca3af;--text-muted:#6b7280;--accent-primary:#6366f1;--accent-hover:#818cf8;--accent-light:#6366f126;--shadow-sm:0 1px 2px 0 #00000080;--shadow-md:0 4px 6px -1px #0000004d;--shadow-lg:0 10px 15px -3px #0006;--shadow-float:0 20px 25px -5px #00000080, 0 0 0 1px #ffffff0d}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-ui);background-color:var(--bg-app);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;letter-spacing:-.01em;transition:background-color .3s var(--ease-smooth),color .3s var(--ease-smooth);line-height:1.5}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-subtle);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}:focus-visible{box-shadow:0 0 0 2px var(--bg-app),0 0 0 4px var(--accent-primary);outline:none}.app-layout{height:100vh;display:flex;overflow:hidden}.sidebar{width:var(--sidebar-width);background-color:var(--bg-sidebar);border-right:1px solid var(--border-subtle);z-index:20;flex-direction:column;height:100vh;display:flex}.sidebar-header{align-items:center;gap:12px;padding:24px 20px 16px;display:flex}.sidebar-logo{background:linear-gradient(135deg,var(--accent-primary),var(--accent-hover));color:#fff;width:32px;height:32px;box-shadow:var(--shadow-sm);border-radius:8px;justify-content:center;align-items:center;font-size:14px;font-weight:600;display:flex}.sidebar-title h1{color:var(--text-primary);font-size:14px;font-weight:600}.sidebar-title span{color:var(--text-secondary);font-size:11px}.sidebar-nav{flex:1;padding:0 12px 24px;overflow-y:auto}.stepper-progress{margin-bottom:8px;padding:8px}.stepper-progress-bar{background:var(--border-subtle);border-radius:var(--radius-full);height:4px;margin-bottom:6px;overflow:hidden}.stepper-extra{margin-top:16px;margin-bottom:24px}.stepper-extra-toggle{cursor:pointer;border-radius:var(--radius-md);color:var(--text-primary);justify-content:space-between;align-items:center;margin:0 12px;padding:10px 16px;font-size:13px;font-weight:600;transition:background-color .2s;display:flex}.stepper-extra-toggle:hover{background-color:var(--bg-element-hover)}.stepper-extra-list{border-left:2px solid var(--border-subtle);flex-direction:column;gap:4px;margin:8px 12px 0;padding-left:12px;display:flex}.stepper-extra-item{border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;transition:all .2s var(--ease-smooth);align-items:center;gap:10px;padding:8px 12px;font-size:13px;font-weight:500;display:flex;position:relative}.stepper-extra-item:before{content:"";background-color:var(--border-subtle);width:10px;height:2px;transition:background-color .2s;position:absolute;top:50%;left:-14px;transform:translateY(-50%)}.stepper-extra-item:hover{background-color:var(--bg-paper);color:var(--text-primary);box-shadow:var(--shadow-sm);transform:translate(4px)}.stepper-extra-item:hover:before{background-color:var(--accent-light)}.stepper-extra-item.active{background-color:var(--accent-primary);color:#fff;box-shadow:0 2px 8px #2563eb40}.stepper-extra-item.active:before{background-color:var(--accent-primary)}.editor-container{flex-direction:column;height:100%;display:flex}.config-toolbar{background:var(--bg-paper);border:1px solid var(--border-subtle);box-sizing:border-box;border-radius:16px;flex-direction:column;gap:16px;width:100%;max-width:none;margin-bottom:16px;padding:24px;display:flex;box-shadow:0 1px 3px #0000000f,0 1px 2px #0000000a}@media(min-width:768px){.config-toolbar{flex-flow:wrap;align-items:flex-end;gap:20px}}.config-toolbar select,.config-toolbar button{box-sizing:border-box;border-radius:8px;height:44px}.config-toolbar-field{flex-direction:column;flex:1;gap:6px;min-width:160px;display:flex}.config-toolbar-field label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-size:11px;font-weight:600}.config-toolbar-field--citation{min-width:240px}.config-toolbar-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.sidebar-footer{border-top:1px solid var(--border-subtle);margin-top:auto;padding:12px}.sidebar-footer button{width:100%;color:var(--text-secondary);border-radius:var(--radius-md);cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;box-shadow:none;background:0 0;border:none;outline:none;align-items:center;gap:10px;padding:8px 12px;font-size:13px;font-weight:500;transition:all .2s;display:flex}.sidebar-footer button:hover{background:var(--bg-element);color:var(--text-primary)}.stepper-progress-fill{background:var(--accent-primary);border-radius:var(--radius-full);height:100%;transition:width .5s var(--ease-spring)}.stepper-progress-text{color:var(--text-secondary);font-size:11px;font-weight:500}.stepper-phase-label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);padding:16px 8px 8px;font-size:11px;font-weight:600}.stepper-item{border-radius:var(--radius-md);cursor:pointer;transition:all .2s var(--ease-smooth);align-items:center;gap:12px;margin-bottom:2px;padding:8px 12px;display:flex}.stepper-item:hover{background-color:var(--bg-element)}.stepper-item.active{background-color:var(--accent-light)}.stepper-dot{border:1.5px solid var(--border-subtle);width:24px;height:24px;color:var(--text-muted);background:var(--bg-paper);transition:all .2s var(--ease-smooth);border-radius:50%;justify-content:center;align-items:center;font-size:11px;font-weight:600;display:flex}.stepper-item.active .stepper-dot{border-color:var(--accent-primary);color:var(--accent-primary);box-shadow:0 0 0 2px var(--accent-light)}.stepper-item.done .stepper-dot{background:var(--accent-primary);border-color:var(--accent-primary);color:#fff}.stepper-item-icon{font-size:14px}.stepper-item-name{color:var(--text-secondary);font-size:13px;font-weight:500;transition:color .2s}.stepper-item.active .stepper-item-name{color:var(--accent-primary);font-weight:600}.sidebar-footer{border-top:1px solid var(--border-subtle);padding:16px}.main-content{background-color:var(--bg-app);flex-direction:column;flex:1;display:flex;position:relative}.main-header{z-index:10;background:rgba(var(--bg-app-rgb,248, 250, 252),.7);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid rgba(var(--border-subtle-rgb,226, 232, 240),.5);justify-content:space-between;align-items:center;padding:16px 32px;display:flex;position:sticky;top:0}.dark .main-header{background:#0b0f19b3;border-bottom:1px solid #1f293780}.main-header h2{font-size:18px;font-weight:600}.main-header-right{align-items:center;gap:12px;display:flex}.task-badge{color:var(--accent-primary);background:var(--accent-light);border-radius:var(--radius-full);margin-top:4px;padding:2px 8px;font-size:12px;font-weight:500;display:inline-block}.header-actions{align-items:center;gap:12px;display:flex}.btn-icon,.header-btn{color:var(--text-secondary);border-radius:var(--radius-lg);cursor:pointer;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;min-width:40px;height:40px;padding:0 12px;transition:all .2s;display:flex}.btn-icon:hover,.header-btn:hover{background:var(--bg-element);color:var(--text-primary)}.model-selector,.config-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--bg-paper);border:1px solid var(--border-subtle);color:var(--text-primary);cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%2364748b'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M19 9l-7 7-7-7'%3E%3C/path%3E%3C/svg%3E");background-position:right 8px center;background-repeat:no-repeat;background-size:16px;border-radius:8px;outline:none;height:42px;padding:0 32px 0 12px;font-size:13px;font-weight:500;transition:all .2s}.model-selector:focus,.config-select:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px var(--accent-light)}.workspace{flex-direction:column;flex:1;align-items:center;padding:32px 24px;display:flex;position:relative;overflow-y:auto}.editor-container{flex-direction:column;gap:24px;width:100%;max-width:100%;display:flex}.config-field{flex-direction:column;flex:1;gap:6px;min-width:200px;display:flex}.config-field label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;font-size:11px;font-weight:600}.chat-messages{flex-direction:column;gap:24px;padding-bottom:120px;display:flex}.chat-bubble{animation:fadeIn .4s var(--ease-spring);align-items:flex-start;gap:16px;display:flex}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.chat-bubble-avatar{border-radius:var(--radius-full);background:var(--bg-element);border:1px solid var(--border-subtle);flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:16px;display:flex}.chat-bubble.assistant .chat-bubble-avatar{background:linear-gradient(135deg,var(--accent-primary),var(--accent-hover));color:#fff;border:none}.chat-bubble-content{background:var(--bg-paper);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);font-family:var(--font-reading);color:var(--text-primary);flex:1;padding:20px 24px;font-size:16px;line-height:1.7}.chat-bubble.user .chat-bubble-content{background:var(--bg-element);font-family:var(--font-ui);color:var(--text-primary);font-size:14px}.chat-bubble-header{font-family:var(--font-ui);justify-content:space-between;margin-bottom:12px;display:flex}.chat-bubble-name{color:var(--text-primary);font-size:13px;font-weight:600}.chat-bubble-model{color:var(--text-secondary);background:var(--bg-app);border-radius:var(--radius-full);padding:2px 8px;font-size:11px}.markdown-output p{margin-bottom:1.5em}.markdown-output p:last-child{margin-bottom:0}.markdown-output h1,.markdown-output h2,.markdown-output h3{font-family:var(--font-ui);color:var(--text-primary);letter-spacing:-.01em;margin-top:1.5em;margin-bottom:.75em;font-weight:600}.markdown-output h1{font-size:24px}.markdown-output h2{font-size:20px}.markdown-output h3{font-size:18px}.markdown-output ul,.markdown-output ol{margin-bottom:1.5em;padding-left:24px}.markdown-output li{margin-bottom:.5em}.markdown-output strong{font-weight:600}.markdown-output blockquote{border-left:3px solid var(--accent-primary);color:var(--text-secondary);margin-bottom:1.5em;padding-left:16px;font-style:italic}.chat-bubble-actions{border-top:1px solid var(--border-subtle);font-family:var(--font-ui);gap:8px;margin-top:16px;padding-top:16px;display:flex}.input-dock{background:linear-gradient(to top,var(--bg-app) 70%,transparent);pointer-events:none;justify-content:center;padding:24px;display:flex;position:absolute;bottom:0;left:0;right:0}.chat-input-wrapper{pointer-events:auto;width:100%;max-width:var(--max-content-width);background:var(--bg-paper);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-float);transition:box-shadow .3s var(--ease-smooth),border-color .3s;flex-direction:column;gap:8px;padding:12px;display:flex}.chat-input-wrapper:focus-within{border-color:var(--border-focus);box-shadow:var(--shadow-float),0 0 0 3px var(--accent-light)}.step-nav{border-bottom:1px dashed var(--border-subtle);justify-content:space-between;align-items:center;padding:0 4px 8px;display:flex}.step-nav-btn{color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;padding:4px 8px;font-size:12px;font-weight:500}.step-nav-btn:hover:not(:disabled){background:var(--bg-element);color:var(--text-primary)}.step-nav-btn:disabled{opacity:.3;cursor:not-allowed}.step-nav-btn.next{color:var(--accent-primary);font-weight:600}.step-nav-btn.next:hover:not(:disabled){background:var(--accent-light)}.chat-input-row{align-items:flex-end;gap:12px;display:flex}.chat-textarea{resize:none;font-family:var(--font-ui);color:var(--text-primary);background:0 0;border:none;outline:none;flex:1;max-height:200px;padding:8px 4px;font-size:15px}.chat-textarea::-moz-placeholder{color:var(--text-muted)}.chat-textarea::placeholder{color:var(--text-muted)}.send-btn{border-radius:var(--radius-md);background:var(--accent-primary);color:#fff;cursor:pointer;width:40px;height:40px;box-shadow:var(--shadow-sm);border:none;flex-shrink:0;justify-content:center;align-items:center;transition:all .2s;display:flex}.send-btn:hover:not(:disabled){background:var(--accent-hover);box-shadow:var(--shadow-md);transform:translateY(-1px)}.send-btn:disabled{background:var(--bg-element-hover);color:var(--text-muted);cursor:not-allowed;box-shadow:none}.skeleton-loader{gap:6px;padding:10px 0;display:flex}.skeleton-dot{background-color:var(--accent-primary);width:8px;height:8px;animation:pulse 1.5s infinite var(--ease-smooth);border-radius:50%}.skeleton-dot:nth-child(2){animation-delay:.2s}.skeleton-dot:nth-child(3){animation-delay:.4s}@keyframes pulse{0%,to{opacity:.3;transform:scale(.5)}50%{opacity:1;transform:scale(1)}}.toast-container{z-index:100;flex-direction:column;gap:10px;display:flex;position:fixed;bottom:24px;right:24px}.toast{background:var(--bg-paper);color:var(--text-primary);border-radius:var(--radius-md);box-shadow:var(--shadow-float);border:1px solid var(--border-subtle);animation:slideIn .3s var(--ease-spring);align-items:center;gap:8px;padding:12px 20px;font-size:13px;font-weight:500;display:flex}@keyframes slideIn{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.btn-primary{background:var(--accent-primary);color:#fff;border-radius:var(--radius-md);cursor:pointer;border:none;padding:8px 16px;font-size:13px;font-weight:500;transition:all .2s}.btn-primary:hover{background:var(--accent-hover);transform:translateY(-1px)}.btn-secondary{background:var(--bg-element);height:42px;color:var(--text-primary);border:1px solid var(--border-subtle);cursor:pointer;white-space:nowrap;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:0 16px;font-size:13px;font-weight:500;transition:all .2s;display:inline-flex}.btn-secondary:hover{background:var(--bg-element-hover)}.output-action-btn{color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;align-items:center;gap:4px;padding:4px 8px;font-size:12px;font-weight:500;transition:all .2s;display:flex}.output-action-btn:hover{background:var(--bg-element);color:var(--text-primary)}.modal-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:50;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;top:0;right:0;bottom:0;left:0}.modal{background:var(--bg-paper);border-radius:var(--radius-lg);width:100%;max-width:480px;box-shadow:var(--shadow-float);border:1px solid var(--border-subtle);animation:modalIn .3s var(--ease-spring);overflow:hidden}@keyframes modalIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.modal-header{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.modal-header h3{font-size:16px;font-weight:600}.modal-body{padding:24px}.modal-footer{border-top:1px solid var(--border-subtle);background:var(--bg-app);justify-content:flex-end;gap:12px;padding:16px 24px;display:flex}.api-provider{margin-bottom:16px}.api-provider-header{align-items:center;gap:12px;margin-bottom:8px;display:flex}.api-key-input{background:var(--bg-app);border:1px solid var(--border-subtle);border-radius:var(--radius-md);width:100%;color:var(--text-primary);padding:12px 16px;font-family:monospace;font-size:13px;transition:all .2s}.api-key-input:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px var(--accent-light);outline:none}.welcome-state{max-width:var(--max-content-width);text-align:center;margin:0 auto;padding:64px 24px}.welcome-icon{margin-bottom:24px;font-size:48px}.welcome-state h2{margin-bottom:12px;font-size:24px;font-weight:600}.welcome-state p{color:var(--text-secondary);margin-bottom:48px}.quick-actions{text-align:left;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;display:grid}.quick-action{background:var(--bg-paper);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);cursor:pointer;transition:all .3s var(--ease-spring);padding:20px}.quick-action:hover{box-shadow:var(--shadow-md);border-color:var(--accent-primary);transform:translateY(-4px)}.qa-icon{margin-bottom:12px;font-size:24px}.qa-text h4{margin-bottom:4px;font-size:14px;font-weight:600}.qa-text p{color:var(--text-secondary);margin:0;font-size:12px;line-height:1.5}.premium-auth{background:var(--bg-paper);border:1px solid var(--border-subtle);border-radius:24px;max-width:440px;padding:48px 40px;box-shadow:0 25px 50px -12px #00000040}.premium-auth .auth-header{text-align:center;margin-bottom:32px}.premium-auth .auth-header h2{color:var(--text-primary);letter-spacing:-.02em;margin-bottom:8px;font-size:28px;font-weight:700}.premium-auth .auth-header p{color:var(--text-secondary);font-size:14px;line-height:1.5}.auth-form{flex-direction:column;gap:20px;display:flex}.premium-input-group{margin-bottom:4px}.premium-input-group label{color:var(--text-primary);margin-bottom:6px;font-size:13px;font-weight:600;display:block}.premium-input-group input{border:1px solid var(--border-subtle);background:var(--bg-app);width:100%;color:var(--text-primary);transition:all .2s var(--ease-smooth);border-radius:12px;padding:14px 16px;font-size:15px}.premium-input-group input:focus{border-color:var(--accent-primary);box-shadow:0 0 0 4px var(--accent-light);background:var(--bg-paper);outline:none}.premium-submit-btn{background:var(--accent-primary);color:#fff;cursor:pointer;width:100%;height:52px;transition:all .2s var(--ease-smooth);border:none;border-radius:12px;justify-content:center;align-items:center;margin-top:12px;font-size:16px;font-weight:600;display:flex;box-shadow:0 4px 12px #4f46e54d}.premium-submit-btn:hover:not(:disabled){background:var(--accent-hover);transform:translateY(-2px);box-shadow:0 8px 16px #4f46e566}.premium-submit-btn:disabled{opacity:.7;cursor:not-allowed;box-shadow:none;transform:none}.premium-spinner{border:3px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:22px;height:22px;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.auth-footer{text-align:center;margin-top:28px}.auth-footer-text{color:var(--text-secondary);font-size:14px}.auth-switch-link{color:var(--accent-primary);cursor:pointer;background:0 0;border:none;margin-left:4px;padding:0;font-size:14px;font-weight:600;text-decoration:none;transition:color .2s}.auth-switch-link:hover{color:var(--accent-hover);text-decoration:underline}.sidebar-section-label{text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);margin:24px 0 12px;padding:0 12px;font-size:11px;font-weight:600}.thesis-list{flex-direction:column;gap:4px;max-height:200px;padding-right:4px;display:flex;overflow-y:auto}.thesis-item{border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;align-items:center;gap:12px;padding:10px 12px;font-size:13px;font-weight:500;transition:all .2s;display:flex}.thesis-item:hover{background:var(--bg-element);color:var(--text-primary)}.thesis-item.active{background:var(--accent-light);color:var(--accent-primary)}.new-thesis-btn{border:1px dashed var(--border-subtle);width:calc(100% - 24px);color:var(--text-secondary);border-radius:var(--radius-md);cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:8px;margin:12px;padding:10px;font-size:13px;font-weight:500;transition:all .2s;display:flex}.new-thesis-btn:hover{border-color:var(--accent-primary);color:var(--accent-primary);background:var(--accent-light)}.auth-error{color:var(--danger);border-radius:var(--radius-md);background:#ef44441a;border:1px solid #ef444433;padding:12px;font-size:13px}.admin-page{min-height:100vh;font-family:"Manrope",var(--font-ui);background:radial-gradient(circle at 12% -8%,#2dd4bf2e,transparent 48%),radial-gradient(circle at 92% 8%,#38bdf829,transparent 42%),linear-gradient(180deg,var(--bg-app) 0%,var(--bg-app) 100%);padding:clamp(16px,3vw,28px);position:relative}@supports (color:color-mix(in lab,red,red)){.admin-page{background:radial-gradient(circle at 12% -8%,#2dd4bf2e,transparent 48%),radial-gradient(circle at 92% 8%,#38bdf829,transparent 42%),linear-gradient(180deg,var(--bg-app) 0%,color-mix(in srgb,var(--bg-app) 86%,white) 100%)}}.admin-page{overflow:hidden}.admin-page:before{content:"";pointer-events:none;background-image:linear-gradient(90deg,#94a3b812 1px,#0000 1px),linear-gradient(#94a3b80f 1px,#0000 1px);background-size:34px 34px;position:absolute;top:0;right:0;bottom:0;left:0;-webkit-mask-image:radial-gradient(circle at 50% 15%,#000 24%,#0000 85%);mask-image:radial-gradient(circle at 50% 15%,#000 24%,#0000 85%)}.admin-bg-orb{pointer-events:none;filter:blur(50px);opacity:.45;border-radius:50%;position:absolute}.admin-bg-orb--teal{background:radial-gradient(circle,#14b8a6e6,#14b8a600);width:420px;height:420px;top:-160px;left:-110px}.admin-bg-orb--blue{background:radial-gradient(circle,#2563ebd1,#2563eb00);width:460px;height:460px;bottom:-220px;right:-150px}.admin-shell{z-index:2;max-width:1280px;animation:admin-rise .6s var(--ease-smooth);flex-direction:column;gap:18px;margin:0 auto;display:flex;position:relative}.admin-hero,.admin-panel,.admin-stat-card,.admin-login-card{background:var(--bg-paper)}@supports (color:color-mix(in lab,red,red)){.admin-hero,.admin-panel,.admin-stat-card,.admin-login-card{background:color-mix(in srgb,var(--bg-paper) 88%,white)}}.admin-hero,.admin-panel,.admin-stat-card,.admin-login-card{border:1px solid var(--border-subtle)}@supports (color:color-mix(in lab,red,red)){.admin-hero,.admin-panel,.admin-stat-card,.admin-login-card{border:1px solid color-mix(in srgb,var(--border-subtle) 90%,white)}}.admin-hero,.admin-panel,.admin-stat-card,.admin-login-card{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:transform .2s var(--ease-smooth),box-shadow .2s var(--ease-smooth),border-color .2s var(--ease-smooth);box-shadow:0 16px 50px -28px #02061757}.admin-hero{border-radius:22px;justify-content:space-between;align-items:center;gap:18px;padding:clamp(18px,3vw,28px);display:flex;position:relative;overflow:hidden}.admin-hero:after{content:"";pointer-events:none;background:radial-gradient(circle,#0e749033,#0000 70%);border-radius:50%;width:320px;height:320px;position:absolute;top:-140px;right:-130px}.admin-kicker{text-transform:uppercase;letter-spacing:.16em;color:var(--accent-primary);font-size:11px;font-weight:700}@supports (color:color-mix(in lab,red,red)){.admin-kicker{color:color-mix(in srgb,var(--accent-primary) 76%,white)}}.admin-kicker{margin-bottom:8px}.admin-hero h1{font-family:"Sora",var(--font-ui);letter-spacing:-.03em;color:var(--text-primary);font-size:clamp(28px,4vw,40px);font-weight:700;line-height:1}.admin-hero p{color:var(--text-secondary);max-width:520px;margin-top:10px;font-size:14px}.admin-hero-meta{flex-wrap:wrap;align-items:center;gap:8px;margin-top:14px;display:flex}.admin-meta-chip{color:var(--text-secondary);border:1px solid var(--border-subtle);background:var(--bg-element);border-radius:999px;align-items:center;gap:6px;padding:6px 10px;font-size:11px;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.admin-meta-chip{background:color-mix(in srgb,var(--bg-element) 85%,white)}}.admin-meta-chip--accent{color:#0f766e;background:#14b8a61c;border-color:#0d948842}.admin-hero-actions{align-items:center;gap:10px;display:flex}.admin-btn{cursor:pointer;transition:all .2s var(--ease-smooth);border:none;border-radius:12px;align-items:center;gap:8px;padding:11px 16px;font-size:13px;font-weight:600;display:inline-flex;transform:translateY(0)}.admin-btn-primary{color:#fff;background:linear-gradient(135deg,#0f766e,#115e59);box-shadow:0 10px 20px -14px #0f766ee6}.admin-btn-primary:hover{transform:translateY(-1px)scale(1.01);box-shadow:0 16px 28px -16px #0f766ee6}.admin-btn-ghost{background:var(--bg-element);color:var(--text-primary);border:1px solid var(--border-subtle)}.admin-btn-ghost:hover{background:var(--bg-element-hover)}.admin-btn:focus-visible{box-shadow:0 0 0 3px var(--accent-light);outline:none}@supports (color:color-mix(in lab,red,red)){.admin-btn:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-light) 45%,white)}}.admin-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.admin-stat-card{border-radius:18px;padding:16px;position:relative;overflow:hidden}.admin-stat-card:before{content:"";opacity:.8;background:linear-gradient(90deg,#14b8a6,#0ea5e9);width:100%;height:3px;position:absolute;top:0;left:0}.admin-stat-card:hover{transform:translateY(-2px);box-shadow:0 20px 44px -28px #02061775}.admin-stat-top{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.1em;justify-content:space-between;align-items:center;margin-bottom:12px;font-size:12px;font-weight:600;display:flex}.admin-stat-top svg{color:var(--accent-primary)}@supports (color:color-mix(in lab,red,red)){.admin-stat-top svg{color:color-mix(in srgb,var(--accent-primary) 75%,white)}}.admin-stat-top .is-positive{color:var(--success)}.admin-stat-top .is-negative{color:var(--danger)}.admin-stat-card strong{letter-spacing:-.03em;color:var(--text-primary);font-size:clamp(28px,3vw,34px);font-weight:700;line-height:1;display:block}.admin-stat-card small{color:var(--text-secondary);margin-top:10px;font-size:12px;display:block}.admin-mid-grid{grid-template-columns:1.8fr 1fr;gap:12px;display:grid}.admin-panel{border-radius:18px;padding:16px}.admin-panel:hover{border-color:var(--accent-primary);transform:translateY(-1px)}@supports (color:color-mix(in lab,red,red)){.admin-panel:hover{border-color:color-mix(in srgb,var(--accent-primary) 20%,var(--border-subtle))}}.admin-panel-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px;display:flex}.admin-panel-head h2{letter-spacing:.12em;text-transform:uppercase;color:var(--text-primary);font-size:13px;font-weight:700}.admin-panel-head span{color:var(--text-secondary);font-size:12px}.admin-trend-chart{grid-template-columns:repeat(10,minmax(0,1fr));align-items:end;gap:8px;height:170px;display:grid}.admin-trend-item{flex-direction:column;justify-content:flex-end;align-items:center;gap:8px;height:100%;display:flex}.admin-trend-bar{width:100%;transition:transform .2s var(--ease-smooth),opacity .2s var(--ease-smooth);background:linear-gradient(#67e8f9,#0d9488);border-radius:8px;box-shadow:inset 0 1px 1px #ffffff47,0 6px 14px -10px #0d9488cc}.admin-trend-item:hover .admin-trend-bar{opacity:.88;transform:translateY(-2px)}.admin-trend-item span{color:var(--text-muted);letter-spacing:.01em;font-size:10px}.admin-domain-list{flex-direction:column;gap:8px;display:flex}.admin-domain-item{background:var(--bg-element);justify-content:space-between;align-items:center;display:flex}@supports (color:color-mix(in lab,red,red)){.admin-domain-item{background:color-mix(in srgb,var(--bg-element) 82%,white)}}.admin-domain-item{border:1px solid var(--border-subtle);border-radius:12px;padding:10px 12px}.admin-domain-name{color:var(--text-primary);font-size:13px;font-weight:500}.admin-domain-count{background:var(--accent-light);color:var(--accent-primary);border-radius:999px;padding:3px 10px;font-size:12px;font-weight:600}.admin-table-panel{padding:0;overflow:hidden}.admin-table-head{border-bottom:1px solid var(--border-subtle);margin-bottom:0;padding:14px 16px}.admin-search-wrap{background:var(--bg-element);border:1px solid var(--border-subtle);border-radius:12px;align-items:center;gap:8px;min-width:min(420px,100%);height:42px;padding:0 10px;display:flex}.admin-search-wrap svg{color:var(--text-muted);flex-shrink:0}.admin-search-wrap input{width:100%;color:var(--text-primary);background:0 0;border:none;outline:none;font-size:13px}.admin-search-wrap input::-moz-placeholder{color:var(--text-muted)}.admin-search-wrap input::placeholder{color:var(--text-muted)}.admin-table-scroll{overflow-x:auto}.admin-table{border-collapse:collapse;width:100%;min-width:760px}.admin-table th,.admin-table td{text-align:left;border-bottom:1px solid var(--border-subtle);padding:13px 16px}@supports (color:color-mix(in lab,red,red)){.admin-table th,.admin-table td{border-bottom:1px solid color-mix(in srgb,var(--border-subtle) 85%,white)}}.admin-table th{text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);background:var(--bg-element);font-size:11px;font-weight:700}@supports (color:color-mix(in lab,red,red)){.admin-table th{background:color-mix(in srgb,var(--bg-element) 70%,white)}}.admin-table th{z-index:1;position:sticky;top:0}.admin-table tbody tr{transition:background .15s var(--ease-smooth)}.admin-table tbody tr:hover{background:var(--accent-light)}@supports (color:color-mix(in lab,red,red)){.admin-table tbody tr:hover{background:color-mix(in srgb,var(--accent-light) 36%,white)}}.admin-table tbody tr:nth-child(2n){background:var(--bg-element)}@supports (color:color-mix(in lab,red,red)){.admin-table tbody tr:nth-child(2n){background:color-mix(in srgb,var(--bg-element) 45%,white)}}.admin-col-index{color:var(--text-secondary);font-size:13px;font-weight:600}.admin-user-cell{align-items:center;gap:10px;display:flex}.admin-avatar{width:32px;height:32px;color:var(--text-primary);background:var(--accent-light);border-radius:10px;justify-content:center;align-items:center;font-size:11px;font-weight:700;display:flex}@supports (color:color-mix(in lab,red,red)){.admin-avatar{background:color-mix(in srgb,var(--accent-light) 85%,white)}}.admin-avatar{border:1px solid var(--border-subtle)}.admin-email{color:var(--text-primary);font-size:13px;font-weight:600}.admin-domain{color:var(--text-muted);margin-top:2px;font-size:11px}.admin-col-date{color:var(--text-secondary);font-size:13px}.admin-id-chip{border:1px solid var(--border-subtle);background:var(--bg-element);border-radius:10px;align-items:center;gap:8px;padding:5px 8px;display:inline-flex}.admin-id-chip span{color:var(--text-secondary);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px}.admin-id-chip button{cursor:pointer;width:20px;height:20px;color:var(--text-muted);transition:all .15s var(--ease-smooth);background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;display:inline-flex}.admin-id-chip button:hover{background:var(--accent-light)}@supports (color:color-mix(in lab,red,red)){.admin-id-chip button:hover{background:color-mix(in srgb,var(--accent-light) 50%,white)}}.admin-id-chip button:hover{color:var(--accent-primary)}.admin-empty,.admin-empty-row{color:var(--text-secondary);font-size:13px}.admin-empty-row{text-align:center;padding:24px}.admin-login-page{justify-content:center;align-items:center;display:flex}.admin-login-card{z-index:2;width:min(100%,460px);animation:admin-rise .5s var(--ease-smooth);border-radius:24px;padding:34px 32px;position:relative}.admin-login-head{text-align:center;margin-bottom:24px}.admin-login-badge{color:#fff;background:linear-gradient(135deg,#0f766e,#2563eb);border-radius:16px;justify-content:center;align-items:center;width:52px;height:52px;margin:0 auto 16px;display:flex;box-shadow:0 10px 30px -16px #0f766ef2}.admin-login-head h1{font-family:"Sora",var(--font-ui);letter-spacing:-.03em;margin-bottom:6px;font-size:30px}.admin-login-head p{color:var(--text-secondary);font-size:14px}.admin-login-form{flex-direction:column;gap:14px;display:flex}.admin-field label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:6px;font-size:12px;font-weight:600;display:block}.admin-field input{border:1px solid var(--border-subtle);background:var(--bg-element);border-radius:12px;width:100%;height:44px;padding:0 12px}@supports (color:color-mix(in lab,red,red)){.admin-field input{background:color-mix(in srgb,var(--bg-element) 75%,white)}}.admin-field input{color:var(--text-primary);transition:all .2s var(--ease-smooth);outline:none;font-size:14px}.admin-field input:focus{border-color:var(--accent-primary)}@supports (color:color-mix(in lab,red,red)){.admin-field input:focus{border-color:color-mix(in srgb,var(--accent-primary) 75%,white)}}.admin-field input:focus{box-shadow:0 0 0 3px var(--accent-light)}@supports (color:color-mix(in lab,red,red)){.admin-field input:focus{box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-light) 55%,white)}}.admin-field input:focus{background:var(--bg-paper)}.admin-alert{color:#b91c1c;background:#fee2e2a8;border:1px solid #ef444452;border-radius:10px;padding:10px 12px;font-size:13px}.admin-login-btn{color:#fff;cursor:pointer;height:46px;transition:all .2s var(--ease-smooth);background:linear-gradient(135deg,#0f766e,#115e59);border:none;border-radius:12px;font-size:14px;font-weight:600;box-shadow:0 10px 20px -14px #0f766ee0}.admin-login-btn:hover:not(:disabled){transform:translateY(-1px)}.admin-login-btn:focus-visible{outline:none;box-shadow:0 0 0 3px #14b8a63d}.admin-login-btn:disabled{cursor:not-allowed;opacity:.65;box-shadow:none}@keyframes admin-rise{0%{opacity:0;transform:translateY(8px)scale(.995)}to{opacity:1;transform:translateY(0)scale(1)}}@media(max-width:1040px){.admin-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-mid-grid{grid-template-columns:1fr}}@media(max-width:720px){.admin-hero{flex-direction:column;align-items:flex-start}.admin-hero-meta,.admin-hero-actions{width:100%}.admin-btn{flex:1;justify-content:center}.admin-stat-grid{grid-template-columns:1fr}.admin-table-head{flex-direction:column;align-items:flex-start}.admin-search-wrap{min-width:100%}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
