/* ==========================================
   DRILLBIT GUIDE ANIMATIONS v3
   ========================================== */

/* === CONTAINER === */
.guide-anim{border:1px solid #e2e2e0;border-radius:16px;overflow:hidden;margin:28px 0 32px;background:#fff;box-shadow:0 2px 12px rgba(0,0,0,0.04)}
.ga-slides{position:relative}
.ga-slide{display:none}
.ga-slide.active{display:block}

.guide-anim{position:relative;z-index:0;overflow:hidden;border-radius:14px;margin-bottom:24px;border:1px solid #e5e5e0;background:#fff}

/* === VIEWPORT (animation stage) === */
.ga-viewport{position:relative;height:340px;overflow:hidden;background:#eceae6}

/* === INFO === */
.ga-info{padding:18px 22px 14px;font-family:var(--db-font,system-ui,sans-serif)}
.ga-step-badge{display:inline-block;font-size:10px;font-weight:700;color:#1967D2;background:#E8F0FE;padding:4px 12px;border-radius:20px;margin-bottom:8px;text-transform:uppercase;letter-spacing:.8px}
.ga-info h3{font-size:16px;font-weight:600;margin-bottom:4px;color:#1a1a1a}
.ga-info p{font-size:13px;color:#6b6b6b;line-height:1.55;margin:0}

/* === CONTROLS === */
.ga-controls{display:none}
.ga-viewport{cursor:pointer;position:relative}
.ga-overlay{position:absolute;inset:0;background:rgba(0,0,0,.45);z-index:200;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .25s ease}
.ga-overlay.on{opacity:1;pointer-events:auto}
.ga-overlay-btn{width:50px;height:50px;border-radius:50%;background:rgba(255,255,255,.9);display:flex;align-items:center;justify-content:center;cursor:pointer}
.ga-overlay-btn svg{width:22px;height:22px;color:#333;margin-left:3px}
.ga-overlay-btn .reset-ico{position:absolute;bottom:10px;right:10px}
.ga-reset-float{position:absolute;bottom:8px;right:8px;width:28px;height:28px;border-radius:50%;background:rgba(255,255,255,.85);display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:201;opacity:0;pointer-events:none;transition:opacity .25s ease}
.ga-reset-float.on{opacity:1;pointer-events:auto}
.ga-reset-float svg{width:13px;height:13px;color:#333}
.ga-progress{height:3px;background:#eee;border-radius:2px}
.ga-progress-bar{height:100%;background:#4285f4;transition:width .5s ease;border-radius:2px}

/* === CURSOR === */
.ga-cursor{position:absolute;width:20px;height:24px;z-index:100;pointer-events:none;opacity:0;filter:drop-shadow(1px 2px 2px rgba(0,0,0,.25))}
.ga-cursor.vis{opacity:1}

/* === SCENE: each phase lives in a .sc layer === */
.sc{position:absolute;inset:0;opacity:0;pointer-events:none;transition:opacity .5s ease;font-family:var(--db-font,system-ui,sans-serif)}
.sc.on{opacity:1;pointer-events:auto}

/* ---- SCENE 1: EMAIL ---- */



@keyframes npop{0%{opacity:0;transform:translateX(-50%) scale(.5) translateY(-8px)}100%{opacity:1;transform:translateX(-50%) scale(1) translateY(0)}}

@keyframes ngone{to{opacity:0;transform:translateX(-50%) scale(.9) translateY(-8px)}}







@keyframes ecpop{0%{opacity:0;transform:scale(.85)}100%{opacity:1;transform:scale(1)}}














@keyframes egl{0%,100%{opacity:.3;box-shadow:0 0 0 0 rgba(66,133,244,.2)}50%{opacity:1;box-shadow:0 0 0 6px rgba(66,133,244,0)}}



/* ---- SCENE 2: HOMEPAGE ---- */













/* Dropdown */







/* ---- SCENE 3: LOGIN ---- */

























@keyframes spin{to{transform:rotate(360deg)}}

/* Typing cursor */

@keyframes tcb{50%{opacity:0}}

/* ---- SCENE 4: DASHBOARD ---- */






























/* ---- TIP CALLOUT (inline, not overlay) ---- */
.ga-tip{position:absolute;z-index:40;background:#fffde7;border:1px solid #f0e68c;border-radius:10px;padding:10px 14px;box-shadow:0 4px 16px rgba(0,0,0,.08);opacity:0;transform:translateY(6px);pointer-events:none;transition:opacity .35s ease,transform .35s ease;display:flex;align-items:flex-start;gap:8px;max-width:280px;font-family:var(--db-font,system-ui,sans-serif)}
.ga-tip.on{opacity:1;transform:translateY(0)}
.ga-tip-ico{width:20px;height:20px;flex-shrink:0;margin-top:1px}
.ga-tip-ico svg{width:20px;height:20px}
.ga-tip-txt{font-size:11px;color:#5d4e00;line-height:1.5}
.ga-tip-txt b{font-weight:600;color:#3e3300}

/* ---- ERROR POPUP (kept for other uses) ---- */









/* ---- LOGIN FIELD ERROR STATE ---- */


@keyframes fshake{0%,100%{transform:translateX(0)}20%,60%{transform:translateX(-6px)}40%,80%{transform:translateX(6px)}}

/* ---- SUCCESS CHECKMARK ---- */






/* ---- TOAST NOTIFICATION ---- */
.ga-toast{position:absolute;top:10px;right:10px;background:#fff;border-radius:10px;padding:10px 14px;box-shadow:0 4px 20px rgba(0,0,0,.12);display:flex;align-items:center;gap:8px;z-index:50;opacity:0;transform:translateY(-10px);pointer-events:none;transition:opacity .3s ease,transform .3s ease;max-width:260px;font-family:var(--db-font,system-ui,sans-serif)}
.ga-toast.on{opacity:1;transform:translateY(0)}
.ga-toast-ico{width:22px;height:22px;flex-shrink:0}
.ga-toast-ico svg{width:22px;height:22px}
.ga-toast-txt{font-size:11px;color:#333;line-height:1.4}
.ga-toast-bar{position:absolute;bottom:0;left:10px;right:10px;height:3px;background:#eee;border-radius:2px;overflow:hidden}
.ga-toast-bar-fill{height:100%;background:#1D9E75;width:100%;border-radius:2px}
.ga-toast-bar-fill.run{animation:toastBar 2s linear forwards}
@keyframes toastBar{from{width:100%}to{width:0%}}

/* ---- FORGOT PASSWORD PAGE ---- */














/* ---- RESET PASSWORD PAGE ---- */




/* ---- RESET EMAIL CARD (compact) ---- */













/* ---- PROFILE DROPDOWN ---- */



















/* ---- USER DASHBOARD (after switch) ---- */


































/* ---- ACCOUNT INFO PAGE ---- */



























/* ---- CHANGE PASSWORD PAGE ---- */























/* ---- ANNOUNCEMENTS PAGE ---- */























/* Slide panel */



















/* Announcement item (after creation) */








/* ---- FULL DASHBOARD (for dashboard article) ---- */





























/* Mini bar chart */




/* SVG donut/pie */











/* Similarity ranges line */






/* Dashboard highlight for individual sections */



/* User management highlights above blur */





/* Individual action card highlight */










/* ---- USER MANAGEMENT PAGE ---- */

.um-side{width:115px;background:#fafafc;border-right:1px solid #eee;padding:12px 0;display:flex;flex-direction:column;gap:1px}
.um-side-logo{display:flex;align-items:center;gap:5px;padding:0 12px 14px}
.um-side-logo i{width:18px;height:18px;background:#4285f4;border-radius:5px;display:block}
.um-side-logo span{font-size:12px;font-weight:600;color:#1a1a1a}
.um-nav{padding:8px 12px;font-size:10px;color:#999;display:flex;align-items:center;gap:7px;margin-right:6px;border-radius:0 7px 7px 0}
.um-nav i{width:14px;height:14px;border-radius:4px;background:currentColor;opacity:.2;display:block}
.um-nav.act{background:#4285f4;color:#fff;font-weight:600}
.um-nav.act i{opacity:.5}

.um-top{display:flex;justify-content:flex-end;align-items:center;gap:7px;margin-bottom:6px}
.um-uname{font-size:10px;color:#888}
.um-uname b{color:#333}
.um-av{width:28px;height:28px;border-radius:50%;background:#9c5fff;color:#fff;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center}




























/* Highlight row */



/* Confirmation dialog overlay */
.um-dialog{position:absolute;inset:0;background:rgba(0,0,0,.25);z-index:20;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .3s ease}
.um-dialog.on{opacity:1;pointer-events:auto}
.um-dialog-box{background:#fff;border-radius:14px;padding:20px 24px;max-width:240px;text-align:center;box-shadow:0 12px 40px rgba(0,0,0,.15);transform:scale(.85);transition:transform .35s cubic-bezier(.34,1.3,.64,1);font-family:var(--db-font,system-ui,sans-serif)}
.um-dialog.on .um-dialog-box{transform:scale(1)}
.um-dialog-ico{width:32px;height:32px;margin:0 auto 8px;display:flex;align-items:center;justify-content:center}
.um-dialog-ico svg{width:24px;height:24px}
.um-dialog-msg{font-size:10px;color:#444;margin-bottom:12px;line-height:1.5}
.um-dialog-btns{display:flex;gap:8px;justify-content:center}
.um-dialog-btn{padding:6px 16px;border-radius:6px;font-size:10px;font-weight:600;cursor:default;transition:all .15s}
.um-dialog-btn.no{background:#f5f5f5;color:#666;border:1px solid #ddd}
.um-dialog-btn.yes{background:#4285f4;color:#fff;border:1px solid #4285f4}
.um-dialog-btn.press{transform:scale(.94)}

/* Edit/Add User slide panel */














/* Stats popup overlay */

























/* ---- FAB POPUP MENU ---- */










/* ---- ADD USER PANEL (slide-over right) ---- */




















/* ---- ADD MULTIPLE USERS: upload page scene ---- */

























/* ---- CSV preview modal ---- */

























/* ---- ADMIN REPORTS PAGE SCENE ---- */
.rp-scene{position:absolute;inset:0;display:flex;background:#f0f0ee;font-family:var(--db-font,system-ui,sans-serif)}
.rp-body{flex:1;padding:12px 16px;overflow:hidden}
.rp-breadcrumb{font-size:9px;color:#888;margin-bottom:10px}
.rp-breadcrumb b{color:#1a1a1a;font-weight:600}
.rp-users-card{background:#fff;border-radius:8px;border:1px solid #eee;padding:10px 14px;display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;opacity:0;transform:translateY(6px);transition:opacity .4s ease,transform .4s ease}
.rp-users-card.pop{opacity:1;transform:translateY(0)}
.rp-users-card-txt{font-size:11px;font-weight:700;color:#1a1a1a}
.rp-csv-btn{width:28px;height:28px;border-radius:6px;background:#34a853;display:flex;align-items:center;justify-content:center;cursor:default;position:relative;transition:all .15s}
.rp-csv-btn.hl{box-shadow:0 0 0 3px rgba(52,168,83,.25);transform:scale(1.08)}
.rp-csv-btn svg{width:14px;height:14px}
.rp-csv-tip{position:absolute;top:100%;left:50%;transform:translateX(-50%);margin-top:4px;background:#333;color:#fff;font-size:7px;padding:3px 8px;border-radius:4px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .2s ease;z-index:10}
.rp-csv-tip::before{content:'';position:absolute;bottom:100%;left:50%;transform:translateX(-50%);border:4px solid transparent;border-bottom-color:#333}
.rp-csv-tip.on{opacity:1}
.rp-section{background:#fff;border-radius:8px;border:1px solid #eee;padding:12px 14px;opacity:0;transform:translateY(6px);transition:opacity .4s ease,transform .4s ease}
.rp-section.pop{opacity:1;transform:translateY(0)}
.rp-section-title{font-size:12px;font-weight:700;color:#1a1a1a;margin-bottom:10px}
.rp-form-row{display:flex;gap:10px;margin-bottom:8px}
.rp-form-grp{flex:1}
.rp-form-lbl{font-size:8px;font-weight:500;color:#777;margin-bottom:3px;display:block}
.rp-form-lbl .req{color:#e74c3c}
.rp-select{width:100%;height:26px;border:1.5px solid #ddd;border-radius:5px;background:#fff;padding:0 8px;font-size:9px;color:#aaa;display:flex;align-items:center;justify-content:space-between;transition:border-color .2s}
.rp-select.fc{border-color:#4285f4;box-shadow:0 0 0 2px rgba(66,133,244,.1)}
.rp-select-arrow{font-size:8px;color:#aaa}
.rp-date-inp{width:100%;height:26px;border:1.5px solid #ddd;border-radius:5px;background:#fff;padding:0 8px;font-size:9px;color:#aaa;display:flex;align-items:center;justify-content:space-between}
.rp-vd-btn{width:100%;max-width:320px;height:28px;background:#4285f4;color:#fff;border:none;border-radius:6px;font-size:10px;font-weight:600;display:flex;align-items:center;justify-content:center;cursor:default;transition:all .15s;margin-top:4px}
.rp-vd-btn.press{transform:scale(.97);background:#3367c7}
/* Download notification popup (browser-like) */
.rp-dl-popup{position:absolute;top:6px;right:6px;width:180px;background:#2d2d2d;border-radius:10px;box-shadow:0 8px 30px rgba(0,0,0,.25);z-index:30;opacity:0;transform:translateY(-8px);pointer-events:none;transition:opacity .3s ease,transform .3s ease;font-family:var(--db-font,system-ui,sans-serif);overflow:hidden}
.rp-dl-popup.on{opacity:1;transform:translateY(0)}
.rp-dl-popup-hd{padding:8px 10px 4px;font-size:10px;font-weight:600;color:#fff;display:flex;align-items:center;justify-content:space-between}
.rp-dl-popup-hd-icons{display:flex;gap:4px}
.rp-dl-popup-hd-icons span{width:14px;height:14px;border-radius:3px;display:flex;align-items:center;justify-content:center;font-size:8px;color:#999}
.rp-dl-item{display:flex;align-items:center;gap:6px;padding:6px 10px;border-top:1px solid rgba(255,255,255,.08)}
.rp-dl-item-ico{width:22px;height:22px;background:#1a6b3c;border-radius:4px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.rp-dl-item-ico svg{width:12px;height:12px}
.rp-dl-item-info{flex:1}
.rp-dl-item-name{font-size:8px;font-weight:600;color:#fff}
.rp-dl-item-sub{font-size:7px;color:#888}

/* ---- REPORTS RESULTS POPUP ---- */
.rp-results{position:absolute;inset:4px;background:#fff;border-radius:10px;box-shadow:0 8px 40px rgba(0,0,0,.15);z-index:25;opacity:0;transform:scale(.92);pointer-events:none;transition:opacity .3s ease,transform .3s ease;display:flex;flex-direction:column;overflow:hidden;font-family:var(--db-font,system-ui,sans-serif)}
.rp-results.on{opacity:1;transform:scale(1);pointer-events:auto}
.rp-results-hd{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;border-bottom:1px solid #eee}
.rp-results-title{font-size:11px;font-weight:700;color:#1a1a1a}
.rp-results-actions{display:flex;align-items:center;gap:6px}
.rp-results-csv{width:24px;height:24px;background:#34a853;border-radius:5px;display:flex;align-items:center;justify-content:center;cursor:default;position:relative}
.rp-results-csv.hl{box-shadow:0 0 0 3px rgba(52,168,83,.25);transform:scale(1.08)}
.rp-results-csv svg{width:12px;height:12px}
.rp-results-csv-tip{position:absolute;top:100%;right:0;margin-top:3px;background:#333;color:#fff;font-size:7px;padding:2px 6px;border-radius:3px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .2s}
.rp-results-csv-tip.on{opacity:1}
.rp-results-close{font-size:16px;color:#aaa;cursor:default}
.rp-results-body{flex:1;overflow-y:auto;padding:4px 8px;-ms-overflow-style:none;scrollbar-width:none}
.rp-results-body::-webkit-scrollbar{display:none}
.rp-res-table{width:100%;border-collapse:collapse;font-size:7px;font-family:var(--db-font,system-ui,sans-serif)}
.rp-res-table th{padding:4px 3px;text-align:left;color:#666;font-weight:600;border-bottom:1.5px solid #ddd;font-size:7px;white-space:nowrap}
.rp-res-table td{padding:3px 2px;color:#444;vertical-align:middle;white-space:nowrap;font-size:7px}
.rp-res-table tbody tr{border-bottom:1px solid #f0f0f0;opacity:0;transform:translateY(4px);transition:opacity .3s ease,transform .3s ease}
.rp-res-table tbody tr.pop{opacity:1;transform:translateY(0)}
/* Score badges */
.rp-score{display:inline-block;padding:1px 5px;border-radius:3px;font-size:7px;font-weight:600;min-width:24px;text-align:center}
.rp-score.high{background:#fce8e8;color:#c0392b}
.rp-score.mid{background:#fff3e0;color:#e67e22}
.rp-score.low{background:#e8f5e9;color:#2e7d32}

.rp-dl-small{width:14px;height:14px;border:1px solid #ddd;border-radius:3px;display:flex;align-items:center;justify-content:center;font-size:7px;color:#888;cursor:default}
/* Form filled state */
.rp-select.filled{border-color:#4285f4;background:#f8f9ff;color:#1a1a1a}
.rp-select.filled span:first-child{color:#1a1a1a}
.rp-date-inp.filled{border-color:#4285f4;background:#f8f9ff}
.rp-date-inp.filled span:first-child{color:#1a1a1a}

/* ---- MAIL DIALOG (submissions report) ---- */
.rp-mail-dlg{position:absolute;inset:0;background:rgba(0,0,0,.3);z-index:30;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .3s ease;font-family:var(--db-font,system-ui,sans-serif)}
.rp-mail-dlg.on{opacity:1;pointer-events:auto}
.rp-mail-box{background:#fff;border-radius:12px;padding:16px 20px;width:220px;box-shadow:0 12px 40px rgba(0,0,0,.18);transform:scale(.85);transition:transform .35s cubic-bezier(.34,1.3,.64,1)}
.rp-mail-dlg.on .rp-mail-box{transform:scale(1)}
.rp-mail-hd{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}
.rp-mail-title{font-size:12px;font-weight:700;color:#1a1a1a}
.rp-mail-close{font-size:14px;color:#aaa;cursor:default}
.rp-mail-lbl{font-size:8px;font-weight:500;color:#777;margin-bottom:3px;display:block}
.rp-mail-lbl .req{color:#e74c3c}
.rp-mail-inp{width:100%;height:26px;border:1.5px solid #ddd;border-radius:5px;background:#fff;padding:0 8px;font-size:9px;color:#1a1a1a;display:flex;align-items:center;transition:border-color .2s,box-shadow .2s;overflow:hidden;margin-bottom:10px}
.rp-mail-inp.fc{border-color:#4285f4;box-shadow:0 0 0 2px rgba(66,133,244,.1)}
.rp-mail-btn{width:100%;height:28px;background:#4285f4;color:#fff;border:none;border-radius:6px;font-size:10px;font-weight:600;display:flex;align-items:center;justify-content:center;cursor:default;transition:all .15s}
.rp-mail-btn.press{transform:scale(.97);background:#3367c7}
/* Confirm dialogs inside reports need to be above results popup (z-index:25) */
.rf-confirm-dlg,.rp-confirm-dlg{z-index:30}

/* ---- EMAIL PREVIEW (submissions report) ---- */
.rp-email-preview{position:absolute;inset:4px;background:#fff;border-radius:10px;box-shadow:0 8px 40px rgba(0,0,0,.15);z-index:28;opacity:0;transform:scale(.92);pointer-events:none;transition:opacity .3s ease,transform .3s ease;display:flex;flex-direction:column;padding:14px 16px;overflow:hidden;font-family:var(--db-font,system-ui,sans-serif)}
.rp-email-preview.on{opacity:1;transform:scale(1);pointer-events:auto}
.rp-email-subj{font-size:11px;font-weight:600;color:#1a1a1a;margin-bottom:8px;padding-bottom:8px;border-bottom:1px solid #eee}
.rp-email-meta{display:flex;align-items:center;gap:8px;margin-bottom:14px}
.rp-email-avatar{width:28px;height:28px;border-radius:50%;background:#999;color:#fff;font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.rp-email-from-info{flex:1}
.rp-email-from-name{font-size:9px;font-weight:600;color:#444}

.rp-email-to{font-size:7px;color:#999}
.rp-email-time{font-size:7px;color:#aaa}
.rp-email-body-title{font-size:14px;font-weight:700;color:#2a7a6a;margin-bottom:10px;line-height:1.3}
.rp-email-link{font-size:8px;color:#2a7a6a;text-decoration:underline;word-break:break-all;line-height:1.4;cursor:default;display:inline-block;padding:2px;border-radius:3px;transition:background .15s}
.rp-email-link.hl{background:rgba(42,122,106,.1)}

/* ---- REPOSITORY SCENES ---- */













/* Upload page scene */






















/* Metadata form below upload */















/* Repo select dropdown */




/* Repo delete button */





/* ---- INTEGRATIONS PAGE SCENE ---- */

























/* Tooltip cards for overview */





/* ---- INTEGRATION SETUP PANEL (slide-over) ---- */













/* Know More link on card */




/* Moodle details page */















/* ---- SECURITY SETTINGS SCENE ---- */















/* OTP login page */
















/* ---- SUPPORT CENTRE SCENE ---- */



















/* Create ticket panel */

















/* Ticket details page */


















/* ---- USER MY FOLDERS SCENE ---- */























/* User profile dropdown */













/* User account info page */












/* === RESPONSIVE === */
@media(max-width:640px){
  .ga-viewport{height:280px}
  
  
  
  .ds-side,.ud-side,.ai-side,.cp-side,.an-side,.df-side,.um-side{width:80px}
  
  
  
  
  
  
}

/* ======================================================================
   USER SECTION ANIMATIONS — NEW SCENES
   ====================================================================== */

/* --- Shared user top bar & breadcrumb bar --- */





/* --- USER CHANGE PASSWORD (uChangePw) --- */






/* --- USER DASHBOARD (uDashOverview, uDashCharts, uDashDocTypes) --- */

























/* Charts */
















/* Doc types */











/* --- FOLDER MANAGEMENT (uFolderTable, uFolderView) --- */















/* --- NEW FOLDER (uNewFolder) --- */






















/* --- FILE UPLOAD (uUploadEnglish, uUploadRegional) --- */




























/* --- SUBMISSIONS (uSubOverview, uSubAnalysis) --- */

















/* Analysis page */









































/* --- DOC ERRORS (uDocError) --- */









/* --- REPOSITORY (uRepoUpload, uRepoManage) --- */






















/* --- MFA (uMfa) --- */






/* --- SUPPORT CENTRE (uSupCreate, uSupView) --- */






/* --- FOLDER TABLE ROWS --- */


/* --- FOLDER TABLE ICON (matches screenshot blue folder) --- */



/* --- SUBMISSIONS TABLE ROWS --- */


