:root{--primary:#0e6fb5;--primary-dark:#0c5d9a;--navy:#0a3566;--navy-active:#156d9c;--danger:#ef4444;--success:#22c55e;--warning:#f97316;--dark:#1f2b3a;--light:#f8fafc;--secondary:#f1f5f9;--gray:#6b7785;--border:#d8e1ea;--ring:#0e6fb51a}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--light);color:var(--dark);min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.6}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0;border-radius:10px}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:10px}::-webkit-scrollbar-thumb:hover{background:#94a3b8}.navbar{background:var(--navy);color:#fff;z-index:100;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:15px 30px;display:flex;position:sticky;top:0;box-shadow:0 1px 3px #00000026}.navbar .brand{color:#fff;align-items:center;gap:10px;font-size:1.2em;font-weight:600;text-decoration:none;display:flex}.navbar .nav-links{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.navbar .nav-links a{color:#c8d6e5;border-radius:8px;padding:6px 10px;text-decoration:none;transition:all .15s}.navbar .nav-links a:hover{color:#fff;background:var(--navy-active)}.navbar .nav-user{color:#ffffff8c;font-size:.85em}.container{max-width:1200px;margin:0 auto;padding:30px;animation:.2s fadeIn}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:15px;margin-bottom:30px;display:flex}.page-header h1{margin-top:5px;font-size:2em}.back-link{color:var(--primary);font-size:.9em;text-decoration:none}.subtitle{color:var(--gray);margin-top:5px}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.btn{cursor:pointer;border:none;border-radius:8px;padding:10px 20px;font-size:1em;font-weight:600;text-decoration:none;transition:all .2s;display:inline-block}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-dark)}.btn-secondary{background:var(--secondary);color:var(--dark)}.btn-secondary:hover{background:var(--border)}.btn-danger{background:var(--danger);color:#fff}.btn-small{padding:6px 12px;font-size:.85em}.btn-block{width:100%}.btn:disabled{opacity:.5;cursor:not-allowed}.grid-cards{grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr));gap:20px;display:grid}.card{border:1px solid var(--border);background:#fff;border-radius:12px;padding:20px;box-shadow:0 1px 3px #0000000f,0 1px 2px #0000000a}.card-link{color:inherit;text-decoration:none}.card h3{margin:0 0 8px}.card p{color:var(--gray);margin:0;font-size:.9em}.card p+p{margin-top:4px}.folder-card{color:inherit;background:#fff;border:2px solid #0000;border-radius:12px;padding:25px;text-decoration:none;transition:all .2s;box-shadow:0 1px 3px #0000000f}.folder-card:hover{border-color:var(--primary);transform:translateY(-2px);box-shadow:0 6px 18px #0e6fb51f}.folder-card .folder-icon{font-size:2.5em}.folder-card h3{margin:15px 0 5px}.folder-card p{color:var(--gray);font-size:.9em}.badge{background:var(--secondary);color:var(--gray);border-radius:20px;margin-top:15px;padding:4px 10px;font-size:.8em;display:inline-block}.ebooks-grid{grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr));gap:25px;display:grid}.ebook-card{background:#fff;border-radius:12px;flex-direction:column;display:flex;overflow:hidden;box-shadow:0 1px 3px #0000000f}.ebook-cover{background:linear-gradient(135deg, var(--primary) 0%, var(--navy) 100%);justify-content:center;align-items:center;height:150px;display:flex}.ebook-cover img{object-fit:cover;width:100%;height:100%}.ebook-cover .placeholder{opacity:.5;font-size:4em}.ebook-info{padding:20px}.ebook-info h3{margin-bottom:5px}.ebook-info p{color:var(--gray);margin-bottom:15px;font-size:.9em}.ebook-files{flex-wrap:wrap;gap:8px;margin-bottom:15px;display:flex}.file-badge{border-radius:6px;padding:4px 12px;font-size:.8em;font-weight:600;text-decoration:none}.file-badge.pdf{color:#dc2626;background:#fee2e2}.file-badge.html{color:#2563eb;background:#dbeafe}.file-badge.md{color:#059669;background:#d1fae5}.form-group{margin-bottom:20px}.form-group label{margin-bottom:8px;font-weight:500;display:block}.form-group input,.form-group textarea,.form-group select{border:2px solid var(--border);background:#fff;border-radius:8px;width:100%;padding:12px;font-size:1em;transition:all .15s}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--ring);outline:none}.alert{border-radius:8px;margin-top:20px;padding:12px 20px}.alert-error{color:#dc2626;background:#fee2e2}.alert-success{color:#059669;background:#d1fae5}.login-container{background:linear-gradient(160deg, var(--navy) 0%, #062a4f 100%);justify-content:center;align-items:center;min-height:100vh;display:flex}.login-box{background:#fff;border-radius:16px;width:90%;max-width:400px;padding:40px;box-shadow:0 20px 60px #0000004d}.login-header{text-align:center;margin-bottom:30px}.login-header .logo{font-size:3em}.login-header h1{margin:10px 0 5px}.login-header p{color:var(--gray)}.login-hint{text-align:center;color:var(--gray);margin-top:15px;font-size:.9em}.login-hint a{color:var(--primary);text-decoration:none}.pin-sent{text-align:center;color:var(--gray);margin-bottom:20px}.pin-input{text-align:center;letter-spacing:8px;font-weight:600;font-size:1.5em!important}.settings-card{background:#fff;border-radius:12px;max-width:500px;padding:30px;box-shadow:0 1px 3px #0000000f}.indic-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:25px;display:grid}@media (max-width:900px){.indic-grid{grid-template-columns:1fr}}.credit-card{color:#fff;text-align:center;background:linear-gradient(135deg,#22c55e 0%,#16a34a 100%);border-radius:12px;margin-bottom:25px;padding:30px;box-shadow:0 4px 14px #22c55e40}.credit-card .credit-icon{font-size:2em}.credit-card .credit-amount{margin:8px 0;font-size:2.6em;font-weight:800}.credit-card .credit-label{font-size:1.05em;font-weight:600}.credit-card .credit-hint{opacity:.85;margin-top:6px;font-size:.85em}.ref-list-card{background:#fff;border-radius:12px;margin-bottom:25px;padding:25px;box-shadow:0 1px 3px #0000000f}.ref-item{border-bottom:1px solid var(--secondary);justify-content:space-between;align-items:flex-start;gap:12px;padding:14px 0;display:flex}.ref-item:last-child{border-bottom:none;padding-bottom:4px}.ref-item .ref-item-main{flex:1;min-width:0}.ref-item .ref-item-sub{color:var(--gray);word-wrap:break-word;margin-top:4px;font-size:.85em}.ref-badge{border-radius:20px;padding:4px 12px;font-size:.8em;font-weight:600;display:inline-block}.ref-badge.st-pending{color:#b45309;background:#fef3c7}.ref-badge.st-converted{color:#059669;background:#d1fae5}.ref-badge.st-rejected{color:#dc2626;background:#fee2e2}.empty{text-align:center;color:var(--gray);padding:60px 20px;font-size:1.1em}.chat-bubble-user{background:var(--primary);color:#fff;white-space:pre-wrap;border-radius:14px 14px 4px;align-self:flex-end;max-width:80%;padding:10px 16px}.chat-bubble-bot{background:var(--secondary);border:1px solid var(--border);white-space:pre-wrap;border-radius:14px 14px 14px 4px;align-self:flex-start;max-width:80%;padding:10px 16px}.chip{border:1px solid var(--border);cursor:pointer;color:var(--dark);background:#fff;border-radius:8px;padding:6px 14px;font-size:.85em;text-decoration:none;display:inline-block}.chip.active{background:var(--primary);color:#fff;border-color:var(--primary)}.chip:hover{border-color:var(--primary)}.module-block{border:1px solid var(--border);background:#fff;border-radius:12px;margin-bottom:20px;padding:24px;box-shadow:0 1px 3px #0000000f}.module-block h2{margin:0 0 4px;font-size:1.25em}.module-meta{color:var(--gray);margin-bottom:16px;font-size:.9em}.row-item{border-bottom:1px solid var(--secondary);justify-content:space-between;align-items:center;gap:8px;padding:8px 0;display:flex}.row-item:last-child{border-bottom:none}.sub-status-pending{color:#b45309}.sub-status-reviewed{color:#059669}video.player{background:#000;border-radius:12px;width:100%}table{border-collapse:separate;border-spacing:0;width:100%}th{background:var(--secondary);text-transform:uppercase;letter-spacing:.05em;color:var(--gray);text-align:left;padding:10px 12px;font-size:.75rem;font-weight:600}td{border-bottom:1px solid var(--border);padding:10px 12px}tr:hover td{background:var(--secondary)}@media (max-width:700px){.page-header{flex-direction:column}.container{padding:20px}.navbar{padding:12px 16px}.navbar .brand{font-size:1.05em}.navbar .nav-links{gap:8px;font-size:.9em}.login-box{padding:28px 20px}}
