@import "https://fonts.googleapis.com/css2?family=Playfair+Display:wght@600;700&family=Inter:wght@400;500;600&display=swap";
.login-container{text-align:left;background-color:#fefefe;border:1px solid #cbd5e1;border-radius:12px;max-width:700px;margin:0 auto;padding:28px 30px;box-shadow:0 10px 24px #0f172a1f}.login-page-shell{justify-content:center;width:100%;max-width:900px;margin:0 auto 32px;padding:2rem 1rem;display:flex}.login-container input{border:1px solid #ccc;border-radius:5px;width:100%;margin:8px 0;padding:10px;font-size:16px}.button-group{flex-wrap:wrap;gap:8px;margin:10px 0;display:flex}.btn{cursor:pointer;color:#fff;background-color:#0070f3;border:none;border-radius:5px;margin:5px;padding:10px 20px;font-size:16px}.btn:hover{background-color:#005bb5}.link-btn{color:#0070f3;cursor:pointer;background:0 0;border:none;margin-top:5px;text-decoration:underline}.google-btn{background-color:#db4437}.google-btn:hover{background-color:#a33327}.login-info-panel{text-align:left;background:linear-gradient(#f8fbff 0%,#eef5ff 100%);border:1px solid #dbeafe;border-radius:10px;margin:0 0 16px;padding:14px}.login-info-title{color:#0f172a;letter-spacing:.2px;margin:0 0 10px;font-size:19px;font-weight:700;line-height:1.2}.login-info-title-prefix{margin-bottom:6px;display:block}.login-info-brand{color:#0f172a;letter-spacing:.2px;align-items:center;gap:10px;font-size:24px;font-weight:700;line-height:1;display:inline-flex}.login-info-brand-mark{background:#2563eb;border-radius:8px;justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex;box-shadow:0 6px 14px #2563eb47}.login-info-brand-icon{display:block}.login-info-text{color:#1e293b;margin:0 0 8px;font-size:14px;line-height:1.45}.login-info-list{color:#1e293b;margin:0 0 8px;padding-left:18px;font-size:14px;line-height:1.45}.login-info-list li{margin:4px 0}.login-info-footnote{color:#334155;margin:0;font-size:13px}.login-info-warning{color:#dc2626;margin:0 0 8px;font-size:14px;font-weight:700;line-height:1.45}.login-form-title{color:#0f172a;letter-spacing:.2px;text-align:left;margin:10px 0 12px;font-size:22px;font-weight:800;line-height:1.2}.signup-info-panel{background:#eff6ff;border:1px solid #bfdbfe;border-radius:10px;margin:0 0 14px;padding:12px 14px}.signup-info-intro{color:#1e3a8a;margin:0 0 8px;font-size:14px;font-weight:600;line-height:1.4}.signup-info-list{color:#1e293b;margin:0;padding-left:18px;font-size:13px;line-height:1.45}.signup-info-list li{margin:4px 0}.password-rules{background:#f8fafc;border:1px solid #cbd5e1;border-radius:8px;margin:8px 0 12px;padding:10px 12px}.password-rules-title{color:#0f172a;margin:0 0 6px;font-size:13px;font-weight:700}.password-rules ul{margin:0;padding-left:16px;list-style:none}.password-rules li{margin:2px 0;font-size:12px}.password-rules li.ok{color:#166534;font-weight:600}.password-rules li.pending{color:#475569}.signup-security-note{color:#334155;background:#f8fafc;border:1px solid #cbd5e1;border-radius:8px;margin:8px 0 12px;padding:10px 12px;font-size:12px;line-height:1.45}@media (max-width:480px){.login-container{border-radius:10px;padding:18px 16px}.login-page-shell{justify-content:center;padding:1rem .5rem}.login-info-panel{padding:12px}.login-info-title{font-size:17px}.login-info-brand{gap:8px;font-size:20px}.login-info-brand-mark{width:30px;height:30px}.login-info-text,.login-info-list{font-size:13px}.login-form-title{font-size:20px}.signup-info-panel{padding:10px 12px}}
@media (max-width:480px){.container{min-width:0;padding:0 4px}.main-content{border-radius:8px;padding:.5rem;font-size:.97rem}.navbar-content{flex-direction:column;align-items:flex-start;gap:.5rem;padding:0 6px}.navbar h1{gap:.5rem;font-size:1rem}.form-group{margin-bottom:.7rem}.form-grid{grid-template-columns:1fr;gap:.5rem}button,input,select,textarea{border-radius:6px;padding:.65rem .7rem;font-size:15px}.references-section{margin-top:1.2rem;padding-top:1rem}.card,.reference-item{border-radius:6px;padding:.7rem}.citation-box{padding:.7rem;font-size:.95rem}.empty-state{padding:1.2rem .5rem;font-size:1rem}}:root{--primary:#2563eb;--primary-dark:#1e40af;--accent:#3b82f6;--success:#00d084;--warning:orange;--danger:#ff6b6b;--book:#4f46e5;--journal:#10b981;--website:#3b82f6;--report:#f59e0b;--lecture:#8b5cf6;--text-light:#fff;--text-dark:#fff;--bg-light:#1a2d42;--bg-dark:#152a3d;--bg-darker:#0f1e31}*{box-sizing:border-box;margin:0;padding:0}html,body{scroll-behavior:smooth;width:100%;height:100%}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#fff;background:linear-gradient(135deg,#0f1e31 0%,#152a3d 100%);width:100%;min-height:100vh;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;transition:background .3s}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInDown{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}.container{max-width:1200px;margin:0 auto;padding:0 20px;animation:.6s fadeIn}.ui-page-container{width:100%;max-width:900px;margin:0 auto}.ui-main-panel{background:#0b1a2de6;border:1px solid #93c5fd47;margin-top:0;margin-bottom:32px;padding:1.8rem 1rem}.ui-inner-card{color:#0b1220;background:#f8fbff;border:1px solid #cfe0fb;border-radius:14px;margin-bottom:16px;padding:18px 20px;box-shadow:0 8px 18px #07162d1a}.ui-inner-title{color:#0f172a;margin-bottom:8px;font-size:20px}.ui-inner-body{color:#1e293b;margin:0;font-size:15px;line-height:1.65}.ui-light-card{background:#fff;border:1px solid #dbe7fb;border-radius:14px;box-shadow:0 12px 28px #07162d1f}.ui-toolbar-card{background:#fffffffa;border:1px solid #d7e6fb;border-radius:14px;box-shadow:0 10px 24px #0a1a3129}.ui-section-heading{margin:0;font-size:20px;font-weight:600}.ui-dark-input,.ui-dark-select{color:#fff;background:#22334a;border:1px solid #4b6484;border-radius:6px;padding:8px 10px;font-size:14px}.ui-empty-state-card{text-align:center;background:#1e3a5f99;border:2px dashed #2e5f9a;border-radius:16px;padding:40px 24px}@media (max-width:768px){.ui-main-panel{padding:1.2rem .8rem}.ui-inner-card{padding:14px}.ui-inner-title{font-size:18px}}.navbar{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:100;background:#0f1e31f2;border-bottom:2px solid #2563eb4d;margin-bottom:2rem;padding:1.2rem 0;animation:.4s slideInDown;position:sticky;top:0;box-shadow:0 4px 30px #0000004d}.navbar-content{justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;padding:0 20px;display:flex}.navbar h1{color:#fff;letter-spacing:-.5px;align-items:center;gap:.75rem;margin:0;font-family:Playfair Display,serif;font-size:1.5rem;font-weight:700;display:flex}.navbar-actions{color:#fff;align-items:center;gap:1rem;display:flex}.main-content{background:#162a3dcc;border:1px solid #2563eb33;border-radius:16px;margin-bottom:2rem;padding:3rem;animation:.6s slideInUp;box-shadow:0 20px 60px #0006}.page-title{color:#fff;letter-spacing:-1px;margin-bottom:.5rem;font-family:Playfair Display,serif;font-size:2.5rem;font-weight:700}.page-subtitle{color:#b0bec5;margin-bottom:2rem;font-size:1rem;font-weight:500}button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#2563eb 0%,#1e40af 100%);border:none;border-radius:8px;padding:.875rem 1.75rem;font-family:Inter,sans-serif;font-size:1rem;font-weight:600;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;box-shadow:0 4px 15px #2563eb66}button:hover{transform:translateY(-3px);box-shadow:0 12px 25px #2563eb99}button:active{transform:translateY(-1px)}button.secondary{color:#fff;background:#ffffff26;box-shadow:0 4px 12px #0003}button.secondary:hover{background:#ffffff40;transform:translateY(-3px)}button.danger{background:linear-gradient(135deg,#ff6b6b 0%,#ff5252 100%)}button.copy-btn{background:#00d084;padding:.6rem 1rem;font-size:.9rem}.form-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem;display:grid}.form-group{margin-bottom:1.5rem}label{color:#fff;margin-bottom:.6rem;font-size:.95rem;font-weight:600;display:block}input,select,textarea{color:#fff;background:#ffffff1a;border:2px solid #2563eb4d;border-radius:8px;width:100%;padding:.875rem;font-family:Inter,inherit;font-size:1rem;transition:all .3s}input::placeholder,select::placeholder,textarea::placeholder{color:#b0bec5}input:focus,select:focus,textarea:focus{background:#ffffff26;border-color:#2563eb;outline:none;box-shadow:0 0 0 4px #2563eb33}.card{background:#162a3d99;border:1px solid #2563eb33;border-radius:12px;margin-bottom:1rem;padding:1.75rem;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.card:hover{transform:translateY(-8px);box-shadow:0 16px 40px #2563eb4d}.card-title{color:#fff;margin:0;font-size:1.1rem;font-weight:700}.card-actions{flex-wrap:wrap;gap:.75rem;display:flex}h2{color:#fff;margin:2rem 0 1rem;font-family:Playfair Display,serif;font-size:1.75rem;font-weight:700}h3{color:#fff;margin:1.5rem 0 .75rem;font-family:Playfair Display,serif;font-size:1.25rem;font-weight:700}p{color:#b0bec5;margin-bottom:1rem;line-height:1.7}.references-section{border-top:2px solid #2563eb33;margin-top:2.5rem;padding-top:2rem}.references-list{flex-direction:column;gap:1rem;display:flex}.reference-item{word-wrap:break-word;word-break:break-word;color:#fff;background:#162a3d99;border-left:5px solid #2563eb;border-radius:8px;padding:1.5rem;line-height:1.8}.reference-item:hover{transform:translate(4px);box-shadow:0 8px 20px #2563eb33}.reference-type-badge{text-transform:uppercase;letter-spacing:.5px;border-radius:20px;margin-bottom:.5rem;margin-right:.5rem;padding:.4rem .8rem;font-size:.8rem;font-weight:600;display:inline-block}.citation-box{color:#fff;word-break:break-word;background:#2563eb26;border:2px solid #2563eb;border-radius:8px;justify-content:space-between;align-items:center;gap:1rem;margin:1.5rem 0;padding:1.25rem;font-family:Monaco,Courier New,monospace;display:flex}.citation-content{flex:1}.auth-container{justify-content:center;align-items:center;min-height:100vh;animation:.6s fadeIn;display:flex}.auth-card{text-align:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#162a3de6;border:1px solid #2563eb4d;border-radius:20px;max-width:450px;padding:4rem 3rem;animation:.6s slideInUp;box-shadow:0 40px 80px #00000080}.auth-card h1{color:#fff;letter-spacing:-1px;justify-content:center;align-items:center;gap:.75rem;margin-bottom:.75rem;font-family:Playfair Display,serif;font-size:2.5rem;font-weight:700;display:flex}.auth-card p{color:#b0bec5;margin-bottom:2.5rem;font-size:1.05rem;font-weight:500;line-height:1.6}.auth-card button{width:100%;padding:1rem 1.5rem;font-size:1.1rem}.loading{color:#2563eb;justify-content:center;align-items:center;min-height:100vh;font-size:1.2rem;animation:.6s fadeIn;display:flex}.loading:after{content:"";border:3px solid #2563eb4d;border-top-color:#2563eb;border-radius:50%;width:20px;height:20px;margin-left:10px;animation:.8s linear infinite spin;display:inline-block}.empty-state{text-align:center;color:#b0bec5;border:2px dashed #2563eb4d;border-radius:12px;padding:3rem 2rem;animation:.5s fadeIn}.empty-state p{color:#fff;margin-bottom:1rem;font-weight:500}.empty-state p:first-child{margin-bottom:1rem;font-size:2rem}.empty-state p:last-child{color:#b0bec5;margin-bottom:0}@media (max-width:768px){.main-content{padding:1.5rem}.page-title{font-size:2rem}.form-grid{grid-template-columns:1fr}.navbar-content{flex-direction:row;gap:1rem}.navbar h1{font-size:1.3rem}.auth-card{margin:1rem;padding:2.5rem 2rem}.citation-box{flex-direction:column}.citation-box button{width:100%}.reference-item>div>div{flex-direction:column!important}.reference-item>div>div>div:last-child{flex-direction:column;width:100%}.reference-item button{width:100%}}@media (max-width:640px){.container{padding:0 12px}.main-content{padding:1rem}.page-title{font-size:1.5rem}.navbar h1{font-size:1.1rem}.navbar-actions{gap:.5rem}button{padding:.75rem 1.25rem;font-size:.95rem}.form-group{margin-bottom:1rem}label{font-size:.9rem}input,select,textarea{padding:.75rem;font-size:16px}.references-section h3{margin-top:1.5rem;font-size:1.1rem}}button:focus-visible,input:focus-visible,select:focus-visible{outline-offset:2px;outline:2px solid #2563eb}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:#2563eb1a}::-webkit-scrollbar-thumb{background:linear-gradient(135deg,#2563eb 0%,#1e40af 100%);border-radius:5px}::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,#1e40af 0%,#2563eb 100%)}.text-center{text-align:center}.mt-2{margin-top:2rem}.mb-2{margin-bottom:2rem}.references-controls{flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:2rem;display:flex}.references-controls input{flex:1;min-width:200px}.references-controls select{min-width:180px}.export-buttons{flex-wrap:wrap;gap:.75rem;margin-bottom:2rem;display:flex}.export-buttons button{flex:1;min-width:160px;font-size:.95rem}.edit-button{color:#1a1a1a;background:#ffc107e6;font-weight:600}.edit-button:hover{background:#ffc107}.cancel-btn{background:#ff6363e6}@media print{*{color:#000!important;box-shadow:none!important;background:#fff!important}body,html{margin:0;padding:0;background:#fff!important}.navbar,.navbar-actions,button,input[type=text],select,textarea,.references-controls,.export-buttons,.copy-btn,.danger,.secondary,.page-subtitle,details,.citation-box,input[placeholder*=Search],[type=file],.copy-btn,.edit-button,.cancel-btn,.secondary button{display:none!important}.container{max-width:100%;margin:0;padding:0}.main-content{border-radius:0;margin:0;padding:0;box-shadow:none!important;background:#fff!important;border:none!important}.page-title{color:#000;page-break-after:avoid;border-bottom:2px solid #000;padding-bottom:.5rem;font-size:2rem}.reference-item{page-break-inside:avoid;color:#000;border:none;border-bottom:1px solid #333;padding:1rem 0;background:#fff!important}.reference-item:hover{box-shadow:none;transform:none}.references-section{page-break-inside:avoid;border:none}.references-section h3{color:#000;page-break-after:avoid;border-bottom:1px solid #333;margin-top:2rem;margin-bottom:1rem;padding-bottom:.5rem;font-size:1.3rem}.references-section h4{color:#000}.reference-type-badge{padding:.3rem .6rem;color:#000!important;background:#fff!important;border:1px solid #333!important}.empty-state{display:none}h2,h3{line-height:1.3}p,div{line-height:1.6}h2,h3{page-break-after:avoid}p{page-break-inside:avoid}}
