:root{--primary: #0d3b2e;--primary-accent: #155d49;--primary-light: #eaf4f0;--primary-dark: #08261e;--secondary: #52525b;--gold: #f5c518;--gold-light: #fef9c3;--gold-dark: #d4a50b;--neutral: #FFFFFF;--surface: #FFFFFF;--surface-warm: #fcfaf6;--bg-page: #f7f5ef;--on-surface: #18181b;--muted: #e4e4e7;--border: #c2d6cf;--border-muted: #e5e7eb;--accent: #f5c518;--error: #dc2626;--success: #15803d;--warning: #b45309;--font-headline: "Barlow Condensed", "Bebas Neue", sans-serif;--font-body: "Inter", system-ui, -apple-system, sans-serif;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-full: 9999px;--space-xs: 4px;--space-sm: 8px;--space-md: 16px;--space-lg: 24px;--space-xl: 32px}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-body);background-color:var(--bg-page);color:var(--on-surface);line-height:1.5;-webkit-font-smoothing:antialiased}h1,h2,h3,.headline{font-family:var(--font-headline);text-transform:uppercase;letter-spacing:.5px;font-weight:700;line-height:1.1}.headline-display{font-size:56px;letter-spacing:1px}.headline-lg{font-size:34px;letter-spacing:.8px}.headline-md{font-size:24px}.headline-sm{font-size:18px;letter-spacing:1px;font-weight:600}.label-bold{font-family:var(--font-body);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.mpl-card{background-color:var(--surface);border:1px solid var(--border-muted);border-radius:var(--radius-md);padding:20px;box-shadow:0 1px 3px #0d3b2e0d;transition:all .15s ease}.mpl-card:hover{border-color:var(--border)}.mpl-card-green,.mpl-card-maroon{background-color:var(--surface);border:1px solid var(--border);border-left:4px solid var(--primary);border-radius:var(--radius-md);padding:20px;box-shadow:0 2px 6px #0d3b2e0f}.mpl-card-gold{background-color:var(--surface);border:1px solid #fde68a;border-left:4px solid var(--gold);border-radius:var(--radius-md);padding:20px}.mpl-btn{display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-body);font-size:13px;font-weight:700;letter-spacing:.03em;padding:10px 18px;border-radius:var(--radius-sm);cursor:pointer;border:1px solid transparent;transition:all .15s ease;text-decoration:none}.mpl-btn:disabled{opacity:.5;cursor:not-allowed}.mpl-btn-primary{background-color:var(--primary);color:#fff;border-color:var(--primary)}.mpl-btn-primary:hover:not(:disabled){background-color:var(--primary-accent);border-color:var(--primary-accent)}.mpl-btn-gold{background-color:var(--gold);color:var(--primary);border-color:var(--gold-dark)}.mpl-btn-gold:hover:not(:disabled){background-color:#fbd23b}.mpl-btn-secondary{background-color:#fff;color:var(--primary);border-color:var(--border)}.mpl-btn-secondary:hover:not(:disabled){background-color:var(--primary-light);border-color:var(--primary)}.mpl-badge{display:inline-flex;align-items:center;font-size:11px;font-weight:700;letter-spacing:.05em;padding:3px 8px;border-radius:var(--radius-sm)}.mpl-badge-success{background-color:#dcfce7;color:#15803d;border:1px solid #bbf7d0}.mpl-badge-warning{background-color:#fef3c7;color:#b45309;border:1px solid #fde68a}.mpl-badge-danger{background-color:#fee2e2;color:#b91c1c;border:1px solid #fecaca}.mpl-badge-secondary{background-color:#f4f4f5;color:#52525b;border:1px solid #e4e4e7}.mpl-badge-gold{background-color:#fef9c3;color:#854d0e;border:1px solid #fef08a}.mpl-btn-danger{background-color:#fef2f2;color:#dc2626;border-color:#fecaca}.mpl-btn-danger:hover:not(:disabled){background-color:#dc2626;color:#fff;border-color:#dc2626}@media print{.no-print,.no-print *,.app-navbar,.mobile-bottom-nav,.app-footer,header,nav,footer{display:none!important}html,body{background:#fff!important;color:#000!important;padding:0!important;margin:0!important;width:100%!important;height:auto!important;overflow:visible!important;box-shadow:none!important}.main-content{padding:0!important;margin:0!important;max-width:none!important;width:100%!important}}.pwa-install-banner[data-v-2de2d441]{position:fixed;bottom:16px;left:16px;right:16px;max-width:480px;margin:0 auto;background:linear-gradient(135deg,#0d3b2e,#134e3f);color:#fff;border-radius:14px;padding:12px 14px;display:flex;align-items:center;justify-content:space-between;gap:12px;box-shadow:0 10px 25px #00000059;border:1.5px solid #f5c518;z-index:9999;animation:slideUp-2de2d441 .3s ease-out}@keyframes slideUp-2de2d441{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}.banner-content[data-v-2de2d441]{display:flex;align-items:center;gap:10px;overflow:hidden}.banner-icon-box[data-v-2de2d441]{width:38px;height:38px;border-radius:10px;background:#f5c51833;border:1px solid #f5c518;display:flex;align-items:center;justify-content:center;flex-shrink:0}.phone-icon[data-v-2de2d441]{color:#f5c518}.banner-texts[data-v-2de2d441]{display:flex;flex-direction:column;gap:2px;overflow:hidden}.banner-title[data-v-2de2d441]{font-family:var(--font-headline, sans-serif);font-size:13px;font-weight:800;color:#f5c518;letter-spacing:.3px}.banner-sub[data-v-2de2d441]{font-size:10.5px;color:#e2e8f0;line-height:1.25}.banner-actions[data-v-2de2d441]{display:flex;align-items:center;gap:8px;flex-shrink:0}.install-cta-btn[data-v-2de2d441]{background:#f5c518;color:#0d3b2e;border:none;border-radius:8px;padding:7px 12px;font-size:11px;font-weight:800;cursor:pointer;display:flex;align-items:center;gap:6px;white-space:nowrap;box-shadow:0 2px 6px #0003;transition:transform .1s ease}.install-cta-btn[data-v-2de2d441]:active{transform:scale(.95)}.dismiss-btn[data-v-2de2d441]{background:transparent;border:none;color:#94a3b8;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center}.dismiss-btn[data-v-2de2d441]:hover{color:#fff}.ios-modal-backdrop[data-v-2de2d441]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:10000;padding:20px}.ios-tip-card[data-v-2de2d441]{background:#fff;border-radius:16px;padding:20px;max-width:340px;width:100%;box-shadow:0 10px 30px #0000004d}.ios-close-btn[data-v-2de2d441]{width:100%;margin-top:16px;background:#0d3b2e;color:#fff;border:none;padding:10px;border-radius:8px;font-weight:800;font-size:13px;cursor:pointer}.app-layout[data-v-94736caa]{min-height:100vh;display:flex;flex-direction:column;background-color:var(--bg-page)}.app-navbar[data-v-94736caa]{background-color:#0d3b2e;border-bottom:3px solid #f5c518;box-shadow:0 4px 14px #0d3b2e40;position:sticky;top:0;z-index:600}.navbar-container[data-v-94736caa]{max-width:1400px;margin:0 auto;padding:10px 24px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand-link[data-v-94736caa]{display:flex;align-items:center;gap:12px;text-decoration:none}.brand-logo-img[data-v-94736caa]{width:44px;height:44px;border-radius:var(--radius-full);object-fit:cover;border:2px solid #f5c518;box-shadow:0 2px 6px #00000040;background-color:#fff}.brand-text-box[data-v-94736caa]{display:flex;flex-direction:column}.brand-title[data-v-94736caa]{font-family:var(--font-headline);font-size:20px;font-weight:800;color:#fff;line-height:1.1;letter-spacing:.5px}.brand-sub[data-v-94736caa]{font-size:9.5px;font-weight:700;color:#f5c518;letter-spacing:.08em;margin-top:2px}.nav-links[data-v-94736caa]{display:flex;align-items:center;gap:6px}.nav-item[data-v-94736caa]{display:flex;align-items:center;gap:6px;color:#d1fae5;text-decoration:none;font-size:12.5px;font-weight:700;letter-spacing:.03em;padding:8px 14px;border-radius:var(--radius-sm);transition:all .15s ease}.nav-item[data-v-94736caa]:hover{background-color:#ffffff1a;color:#fff}.nav-item.router-link-active[data-v-94736caa]{background-color:#f5c518;color:#0d3b2e;box-shadow:0 2px 6px #00000026}.kiosk-cta-btn[data-v-94736caa]{display:flex;align-items:center;gap:8px;background-color:#f5c518;color:#0d3b2e;text-decoration:none;font-family:var(--font-headline);font-size:15px;font-weight:800;padding:8px 18px;border-radius:var(--radius-sm);border:1px solid #d4a50b;box-shadow:0 2px 8px #0003;transition:all .15s ease}.kiosk-cta-btn[data-v-94736caa]:hover{background-color:#fde047;transform:translateY(-1px)}.logout-navbar-btn[data-v-94736caa]{background-color:#ef444426;border:1px solid rgba(239,68,68,.35);color:#fca5a5;border-radius:var(--radius-sm);padding:8px 12px;font-size:12.5px;font-weight:700;display:flex;align-items:center;gap:6px;cursor:pointer;transition:all .15s ease}.logout-navbar-btn[data-v-94736caa]:hover{background-color:#ef4444;color:#fff;border-color:#ef4444}.mobile-logout-btn[data-v-94736caa]{background:transparent;border:none;cursor:pointer}.mobile-logout-btn[data-v-94736caa]:hover{color:#ef4444!important}.main-content[data-v-94736caa]{flex:1;max-width:1400px;width:100%;margin:0 auto;padding:24px}.app-footer[data-v-94736caa]{padding:18px 24px;text-align:center;font-size:12.5px;color:#52525b;border-top:1px solid #e4e4e7;background-color:#fff}.mobile-bottom-nav[data-v-94736caa]{display:none}@media (max-width: 860px){.nav-links[data-v-94736caa]{display:none}.kiosk-cta-btn[data-v-94736caa]{padding:6px 12px;font-size:13px}.brand-sub[data-v-94736caa]{display:none}.brand-title[data-v-94736caa]{font-size:16px}.brand-logo-img[data-v-94736caa]{width:38px;height:38px}.navbar-container[data-v-94736caa]{padding:8px 14px}.main-content[data-v-94736caa]{padding:14px 14px 84px}.app-footer[data-v-94736caa]{display:none}.mobile-bottom-nav[data-v-94736caa]{display:flex;align-items:center;justify-content:space-around;position:fixed;bottom:0;left:0;right:0;background-color:#0d3b2e;border-top:2.5px solid #f5c518;box-shadow:0 -4px 20px #0000004d;padding:6px 4px calc(6px + env(safe-area-inset-bottom,0px));z-index:800}.mobile-nav-item[data-v-94736caa]{display:flex;flex-direction:column;align-items:center;gap:3px;color:#a7f3d0;text-decoration:none;font-size:10px;font-weight:700;padding:4px 6px;border-radius:6px;transition:all .15s ease;flex:1;text-align:center}.mobile-nav-item[data-v-94736caa]:hover,.mobile-nav-item.router-link-active[data-v-94736caa]{color:#f5c518}.mobile-nav-kiosk-btn[data-v-94736caa]{display:flex;flex-direction:column;align-items:center;gap:2px;text-decoration:none;color:#f5c518;font-size:10px;font-weight:800;margin-top:-18px;padding:0 4px}.kiosk-float-circle[data-v-94736caa]{width:46px;height:46px;background:linear-gradient(135deg,#f5c518,#eab308);color:#0d3b2e;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;box-shadow:0 4px 14px #f5c51873;border:2.5px solid #0d3b2e;transition:transform .15s ease}.kiosk-float-circle[data-v-94736caa]:active{transform:scale(.92)}}@media print{.app-navbar[data-v-94736caa],.mobile-bottom-nav[data-v-94736caa],.app-footer[data-v-94736caa],.no-print[data-v-94736caa]{display:none!important}.app-layout[data-v-94736caa]{display:block!important;min-height:auto!important;background:transparent!important}.main-content[data-v-94736caa]{padding:0!important;margin:0!important;max-width:none!important;width:100%!important}}.home-portal-wrapper[data-v-f51d25cd]{min-height:100vh;background:radial-gradient(circle at 50% 20%,#0d3b2e,#08241c 45%,#04120e);display:flex;align-items:center;justify-content:center;padding:32px 20px;position:relative;overflow:hidden;font-family:var(--font-body, system-ui, -apple-system, sans-serif);color:#fff}.ambient-glow[data-v-f51d25cd]{position:absolute;border-radius:50%;filter:blur(120px);pointer-events:none;z-index:1}.glow-top[data-v-f51d25cd]{width:500px;height:500px;background:#16a34a2e;top:-150px;left:50%;transform:translate(-50%)}.glow-bottom[data-v-f51d25cd]{width:450px;height:450px;background:#2563eb1f;bottom:-150px;right:10%}.home-portal-container[data-v-f51d25cd]{position:relative;z-index:2;width:100%;max-width:960px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:28px}.home-header[data-v-f51d25cd]{display:flex;flex-direction:column;align-items:center;text-align:center}.brand-badge-box[data-v-f51d25cd]{width:82px;height:82px;border-radius:24px;background:#ffffff14;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1.5px solid rgba(245,158,11,.4);padding:10px;display:flex;align-items:center;justify-content:center;box-shadow:0 12px 30px #00000059,inset 0 0 20px #f59e0b26;margin-bottom:14px}.home-brand-logo[data-v-f51d25cd]{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 4px 8px rgba(0,0,0,.4))}.home-institution-name[data-v-f51d25cd]{font-family:var(--font-headline, "Outfit", "Cinzel", serif);font-size:26px;font-weight:800;letter-spacing:.04em;color:#fff;margin:0 0 4px;text-shadow:0 2px 10px rgba(0,0,0,.5)}.home-institution-sub[data-v-f51d25cd]{font-size:12px;font-weight:600;letter-spacing:.08em;color:#a7f3d0;margin:0 0 16px;opacity:.9}.home-clock-pill[data-v-f51d25cd]{display:inline-flex;align-items:center;gap:8px;background:#ffffff0f;border:1px solid rgba(255,255,255,.12);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:6px 16px;border-radius:9999px;font-size:12px;color:#e2e8f0;box-shadow:0 4px 12px #0003}.pulse-live-dot[data-v-f51d25cd]{width:7px;height:7px;border-radius:50%;background:#10b981;box-shadow:0 0 8px #10b981;animation:pulse-f51d25cd 1.8s infinite}.clock-date[data-v-f51d25cd]{font-weight:500}.clock-separator[data-v-f51d25cd]{color:#ffffff4d}.clock-time[data-v-f51d25cd]{font-family:JetBrains Mono,monospace;font-weight:700;color:#fcd34d}.portal-cards-grid[data-v-f51d25cd]{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;width:100%;max-width:860px}.portal-action-card[data-v-f51d25cd]{position:relative;background:#ffffff0a;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1.5px solid rgba(255,255,255,.08);border-radius:20px;padding:28px 24px;display:flex;flex-direction:column;justify-content:space-between;cursor:pointer;overflow:hidden;transition:all .25s cubic-bezier(.16,1,.3,1);box-shadow:0 10px 30px #00000040}.portal-action-card[data-v-f51d25cd]:hover{transform:translateY(-5px);background:#ffffff12}.card-teacher[data-v-f51d25cd]:hover{border-color:#34d399;box-shadow:0 16px 40px #10b98140}.card-kiosk[data-v-f51d25cd]:hover{border-color:#60a5fa;box-shadow:0 16px 40px #2563eb40}.card-admin[data-v-f51d25cd]:hover{border-color:#fbbf24;box-shadow:0 16px 40px #f59e0b40}.card-icon-container[data-v-f51d25cd]{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.card-icon-bubble[data-v-f51d25cd]{width:62px;height:62px;border-radius:16px;display:flex;align-items:center;justify-content:center;transition:transform .25s ease}.card-icon-bubble.green[data-v-f51d25cd]{background:linear-gradient(135deg,#10b98140,#0596691a);border:1px solid rgba(52,211,153,.3);color:#34d399}.card-icon-bubble.blue[data-v-f51d25cd]{background:linear-gradient(135deg,#3b82f640,#1d4ed81a);border:1px solid rgba(96,165,250,.3);color:#60a5fa}.card-icon-bubble.gold[data-v-f51d25cd]{background:linear-gradient(135deg,#f59e0b40,#b453091a);border:1px solid rgba(251,191,36,.3);color:#fbbf24}.portal-action-card:hover .card-icon-bubble[data-v-f51d25cd]{transform:scale(1.08)}.card-tag[data-v-f51d25cd]{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:9999px;font-size:10.5px;font-weight:800;letter-spacing:.06em}.card-tag.green[data-v-f51d25cd]{background:#10b98126;color:#6ee7b7;border:1px solid rgba(52,211,153,.25)}.card-tag.blue[data-v-f51d25cd]{background:#3b82f626;color:#93c5fd;border:1px solid rgba(96,165,250,.25)}.card-tag.gold[data-v-f51d25cd]{background:#f59e0b26;color:#fcd34d;border:1px solid rgba(251,191,36,.25)}.card-content[data-v-f51d25cd]{margin-bottom:24px}.card-title[data-v-f51d25cd]{font-size:19px;font-weight:800;letter-spacing:.02em;margin:0 0 8px;color:#fff}.card-desc[data-v-f51d25cd]{font-size:12.5px;line-height:1.55;color:#cbd5e1;margin:0 0 16px}.card-features-list[data-v-f51d25cd]{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.card-features-list li[data-v-f51d25cd]{display:flex;align-items:center;gap:8px;font-size:12px;color:#e2e8f0}.card-features-list .feat-icon[data-v-f51d25cd]{color:#34d399;flex-shrink:0}.card-kiosk .card-features-list .feat-icon[data-v-f51d25cd]{color:#60a5fa}.card-admin .card-features-list .feat-icon[data-v-f51d25cd]{color:#fbbf24}.card-cta-btn[data-v-f51d25cd]{width:100%;padding:13px 18px;border-radius:12px;border:none;font-size:13px;font-weight:800;letter-spacing:.04em;display:flex;align-items:center;justify-content:center;gap:10px;cursor:pointer;transition:all .2s ease}.btn-teacher[data-v-f51d25cd]{background:linear-gradient(135deg,#10b981,#059669);color:#fff;box-shadow:0 4px 14px #10b98159}.btn-teacher[data-v-f51d25cd]:hover{background:linear-gradient(135deg,#34d399,#059669)}.btn-kiosk[data-v-f51d25cd]{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;box-shadow:0 4px 14px #2563eb59}.btn-kiosk[data-v-f51d25cd]:hover{background:linear-gradient(135deg,#3b82f6,#1d4ed8)}.btn-admin[data-v-f51d25cd]{background:linear-gradient(135deg,#d97706,#b45309);color:#fff;box-shadow:0 4px 14px #d9770659}.btn-admin[data-v-f51d25cd]:hover{background:linear-gradient(135deg,#f59e0b,#b45309)}.portal-action-card:hover .arrow-icon[data-v-f51d25cd]{transform:translate(4px)}.arrow-icon[data-v-f51d25cd]{transition:transform .2s ease}.home-footer[data-v-f51d25cd]{display:flex;flex-direction:column;align-items:center;gap:10px;margin-top:14px}.footer-copyright[data-v-f51d25cd]{font-size:11px;color:#64748b;text-align:center}@keyframes pulse-f51d25cd{0%{transform:scale(.9);opacity:.8}50%{transform:scale(1.2);opacity:1}to{transform:scale(.9);opacity:.8}}@media (max-width: 1024px){.portal-cards-grid[data-v-f51d25cd]{grid-template-columns:1fr;gap:16px}}@media (max-width: 768px){.home-portal-wrapper[data-v-f51d25cd]{padding:24px 14px}.home-institution-name[data-v-f51d25cd]{font-size:20px}.portal-cards-grid[data-v-f51d25cd]{grid-template-columns:1fr;gap:16px}.portal-action-card[data-v-f51d25cd]{padding:22px 18px}.card-title[data-v-f51d25cd]{font-size:17px}}.dashboard-page[data-v-e06b7add]{display:flex;flex-direction:column;gap:24px}.dashboard-topbar[data-v-e06b7add]{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px}.ws-indicator[data-v-e06b7add]{display:flex;align-items:center;gap:8px;background-color:#f3f4f6;padding:6px 14px;border-radius:var(--radius-full);font-size:11.5px;font-weight:700;color:#6b7280;border:1px solid #E5E7EB}.ws-indicator.connected[data-v-e06b7add]{background-color:#dcfce7;color:#166534;border-color:#bbf7d0}.pulse-dot[data-v-e06b7add]{width:8px;height:8px;border-radius:var(--radius-full);background-color:#ef4444}.ws-indicator.connected .pulse-dot[data-v-e06b7add]{background-color:#22c55e;box-shadow:0 0 8px #22c55e;animation:pulse-e06b7add 2s infinite}@keyframes pulse-e06b7add{0%{transform:scale(.95);opacity:.8}50%{transform:scale(1.3);opacity:1}to{transform:scale(.95);opacity:.8}}.stats-grid[data-v-e06b7add]{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.stat-card[data-v-e06b7add]{padding:18px 20px}.stat-header[data-v-e06b7add]{display:flex;justify-content:space-between;align-items:center}.stat-number[data-v-e06b7add]{font-family:var(--font-headline);font-size:46px;font-weight:800;line-height:1.1;margin:6px 0;color:#111827}.stat-sub[data-v-e06b7add]{font-size:12px;color:#6b7280}.live-feed-card[data-v-e06b7add]{padding:0;overflow:hidden}.feed-card-header[data-v-e06b7add]{padding:18px 24px;border-bottom:1px solid var(--border-muted);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px}.table-container[data-v-e06b7add]{overflow-x:auto}.mpl-table[data-v-e06b7add]{width:100%;border-collapse:collapse;text-align:left}.mpl-table th[data-v-e06b7add]{background-color:#f9fafb;padding:12px 18px;font-size:11px;font-weight:700;color:#4b5563;letter-spacing:.05em;border-bottom:1px solid var(--border-muted)}.mpl-table td[data-v-e06b7add]{padding:14px 18px;border-bottom:1px solid var(--border-muted);font-size:13.5px}.mpl-table tr:last-child td[data-v-e06b7add]{border-bottom:none}.member-mini-avatar[data-v-e06b7add]{width:36px;height:36px;border-radius:var(--radius-full);object-fit:cover;border:1px solid #E5E7EB}.code-pill[data-v-e06b7add]{font-family:monospace;font-weight:600;background-color:#f3f4f6;padding:3px 8px;border-radius:var(--radius-sm);font-size:12px;color:#374151}.method-tag[data-v-e06b7add]{font-size:10.5px;font-weight:700;color:#6b7280;background-color:#e5e7eb;padding:2px 6px;border-radius:var(--radius-sm)}.feed-row-animate[data-v-e06b7add]{animation:fadeIn-e06b7add .4s ease}@keyframes fadeIn-e06b7add{0%{background-color:#fef3c7}to{background-color:transparent}}@media (max-width: 900px){.stats-grid[data-v-e06b7add]{grid-template-columns:repeat(2,1fr);gap:12px}}@media (max-width: 600px){.dashboard-header[data-v-e06b7add]{flex-direction:column;align-items:stretch;gap:12px}.stats-grid[data-v-e06b7add]{grid-template-columns:1fr;gap:10px}.stat-card[data-v-e06b7add]{padding:14px}.stat-number[data-v-e06b7add]{font-size:28px}.feed-card-header[data-v-e06b7add]{flex-direction:column;align-items:flex-start;gap:12px}.feed-card-header>div[data-v-e06b7add]:last-child{width:100%;flex-direction:column;gap:8px}.feed-card-header .mpl-btn[data-v-e06b7add]{width:100%;justify-content:center}}.spin-anim[data-v-e06b7add]{animation:spin-e06b7add 1s linear infinite}@keyframes spin-e06b7add{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.floating-hud-header[data-v-ddbe5cc2]{position:absolute;top:18px;left:20px;right:20px;display:flex;align-items:center;justify-content:space-between;z-index:100;pointer-events:auto;gap:12px}.hud-brand-pill[data-v-ddbe5cc2]{background:#0d3b2ed9;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1.5px solid rgba(245,197,24,.5);border-radius:var(--radius-full);padding:8px 16px;display:flex;align-items:center;gap:10px;box-shadow:0 8px 24px #00000080}.hud-logo-img[data-v-ddbe5cc2]{width:36px;height:36px;border-radius:var(--radius-full);border:1.5px solid #f5c518;object-fit:cover;background-color:#fff}.hud-brand-info[data-v-ddbe5cc2]{display:flex;flex-direction:column}.hud-title[data-v-ddbe5cc2]{font-family:var(--font-headline);font-size:13.5px;font-weight:800;color:#fff;line-height:1.1;letter-spacing:.5px}.hud-subtitle[data-v-ddbe5cc2]{font-size:9px;font-weight:700;color:#f5c518;display:flex;align-items:center;gap:5px;margin-top:1px}.live-pulse-dot[data-v-ddbe5cc2]{width:6px;height:6px;background-color:#10b981;border-radius:var(--radius-full);display:inline-block;animation:pulseDot-ddbe5cc2 1.5s infinite ease-in-out}@keyframes pulseDot-ddbe5cc2{0%{transform:scale(.9);opacity:.7}50%{transform:scale(1.3);opacity:1}to{transform:scale(.9);opacity:.7}}.floating-clock-box[data-v-ddbe5cc2]{background:#0f172ae0;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border:1.5px solid rgba(245,197,24,.6);border-radius:16px;padding:6px 18px;text-align:center;box-shadow:0 10px 28px #000000a6;display:flex;flex-direction:column;align-items:center;min-width:240px}.clock-time-line[data-v-ddbe5cc2]{display:flex;align-items:center;gap:8px}.clock-icon[data-v-ddbe5cc2]{color:#f5c518;filter:drop-shadow(0 0 6px rgba(245,197,24,.6))}.clock-digits[data-v-ddbe5cc2]{font-family:var(--font-headline);font-size:28px;font-weight:800;color:#fff;letter-spacing:2px;line-height:1;text-shadow:0 0 16px rgba(245,197,24,.4)}.clock-tz-badge[data-v-ddbe5cc2]{font-size:10px;font-weight:800;color:#f5c518;background-color:#f5c51826;padding:2px 5px;border-radius:4px;border:1px solid rgba(245,197,24,.3)}.clock-date-line[data-v-ddbe5cc2]{font-size:11.5px;font-weight:700;color:#fef08a;margin-top:2px;letter-spacing:.02em}.clock-gps-pill[data-v-ddbe5cc2]{margin-top:4px}.gps-badge-ok[data-v-ddbe5cc2]{display:inline-flex;align-items:center;gap:5px;font-size:10.5px;font-weight:700;background-color:#10b98133;color:#34d399;border:1px solid rgba(16,185,129,.4);border-radius:var(--radius-full);padding:2px 10px}.gps-badge-danger[data-v-ddbe5cc2]{display:inline-flex;align-items:center;gap:5px;font-size:10.5px;font-weight:700;background-color:#ef444433;color:#f87171;border:1px solid rgba(239,68,68,.4);border-radius:var(--radius-full);padding:2px 10px}.gps-badge-warn[data-v-ddbe5cc2]{display:inline-flex;align-items:center;gap:5px;font-size:10.5px;font-weight:700;background-color:#f59e0b33;color:#fbbf24;border:1px solid rgba(245,158,11,.4);border-radius:var(--radius-full);padding:2px 10px}.badge-dot-sep[data-v-ddbe5cc2]{opacity:.6}.hud-actions[data-v-ddbe5cc2]{display:flex;align-items:center;gap:8px}.hud-btn[data-v-ddbe5cc2]{background:#0d3b2ed9;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1.5px solid rgba(255,255,255,.25);color:#fff;padding:8px 14px;border-radius:var(--radius-full);font-family:var(--font-body);font-size:12.5px;font-weight:700;cursor:pointer;display:flex;align-items:center;gap:6px;box-shadow:0 4px 14px #0006;transition:all .15s ease;text-decoration:none}.hud-btn[data-v-ddbe5cc2]:hover{background:#0d3b2e;border-color:#f5c518;color:#f5c518;transform:translateY(-1px)}.conn-pill[data-v-ddbe5cc2]{padding:7px 13px;font-size:11.5px}.conn-dot[data-v-ddbe5cc2]{width:8px;height:8px;border-radius:50%;display:inline-block;flex-shrink:0}.conn-online[data-v-ddbe5cc2]{border-color:#22c55e99;background:#166534d9;color:#86efac}.conn-online[data-v-ddbe5cc2]:hover{background:#166534f2;color:#fff;border-color:#4ade80}.dot-online[data-v-ddbe5cc2]{background-color:#22c55e;box-shadow:0 0 8px #22c55ee6}.conn-offline[data-v-ddbe5cc2]{border-color:#ef4444b3;background:#7f1d1dd9;color:#fca5a5;animation:pulseOffline-ddbe5cc2 2s infinite ease-in-out}.conn-offline[data-v-ddbe5cc2]:hover{background:#b91c1cf2;color:#fff;border-color:#ef4444}.dot-offline[data-v-ddbe5cc2]{background-color:#ef4444;box-shadow:0 0 8px #ef4444e6}.conn-checking[data-v-ddbe5cc2]{border-color:#f5c51880;background:#713f12cc;color:#fde047}.dot-checking[data-v-ddbe5cc2]{background-color:#f59e0b}@keyframes pulseOffline-ddbe5cc2{0%{box-shadow:0 0 #ef444466}70%{box-shadow:0 0 0 8px #ef444400}to{box-shadow:0 0 #ef444400}}.camera-toggle-btn[data-v-ddbe5cc2]{border-color:#f5c51899;color:#fef08a}.camera-toggle-btn[data-v-ddbe5cc2]:hover{border-color:#f5c518;background-color:#f5c51840;color:#fff}.camera-toggle-btn.btn-active-cam[data-v-ddbe5cc2]{background:#0d3b2ef2;border-color:#f5c518}.exit-btn[data-v-ddbe5cc2]{background:#b91c1cd9;border-color:#fca5a559}.exit-btn[data-v-ddbe5cc2]:hover{background:#b91c1c;border-color:#ef4444;color:#fff}.spin-anim[data-v-ddbe5cc2]{animation:spin-ddbe5cc2 1s linear infinite}@keyframes spin-ddbe5cc2{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 820px){.floating-hud-header[data-v-ddbe5cc2]{top:10px;left:10px;right:10px;flex-wrap:wrap;justify-content:center;gap:8px}.hud-brand-pill[data-v-ddbe5cc2]{padding:6px 12px}.hud-logo-img[data-v-ddbe5cc2]{width:28px;height:28px}.hud-title[data-v-ddbe5cc2]{font-size:11.5px}.floating-clock-box[data-v-ddbe5cc2]{order:3;width:100%;min-width:auto;padding:6px 12px}.clock-digits[data-v-ddbe5cc2]{font-size:22px}.hud-btn-text[data-v-ddbe5cc2]{display:none}.hud-btn[data-v-ddbe5cc2]{padding:8px 10px}}.floating-viewfinder-overlay[data-v-d8b27610]{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none;z-index:20}.viewfinder-box[data-v-d8b27610]{width:290px;height:290px;position:relative;border-radius:20px;box-shadow:0 0 0 9999px #00000073}.target-bracket[data-v-d8b27610]{position:absolute;width:38px;height:38px;border-color:#f5c518;border-style:solid}.target-bracket.top-left[data-v-d8b27610]{top:0;left:0;border-width:4px 0 0 4px;border-top-left-radius:16px}.target-bracket.top-right[data-v-d8b27610]{top:0;right:0;border-width:4px 4px 0 0;border-top-right-radius:16px}.target-bracket.bottom-left[data-v-d8b27610]{bottom:0;left:0;border-width:0 0 4px 4px;border-bottom-left-radius:16px}.target-bracket.bottom-right[data-v-d8b27610]{bottom:0;right:0;border-width:0 4px 4px 0;border-bottom-right-radius:16px}.laser-scanner-beam[data-v-d8b27610]{position:absolute;top:0;left:10px;right:10px;height:3px;background:linear-gradient(90deg,transparent,#22C55E 20%,#4ADE80 50%,#22C55E 80%,transparent);box-shadow:0 0 14px #10b981,0 0 28px #10b981;border-radius:2px;animation:scanLaser-d8b27610 2.2s infinite ease-in-out}@keyframes scanLaser-d8b27610{0%{top:12px;opacity:.9}50%{top:calc(100% - 14px);opacity:1}to{top:12px;opacity:.9}}.viewfinder-crosshair[data-v-d8b27610]{position:absolute;top:50%;left:50%;width:20px;height:20px;transform:translate(-50%,-50%);opacity:.35}.viewfinder-crosshair[data-v-d8b27610]:before,.viewfinder-crosshair[data-v-d8b27610]:after{content:"";position:absolute;background-color:#f5c518}.viewfinder-crosshair[data-v-d8b27610]:before{top:9px;left:0;right:0;height:2px}.viewfinder-crosshair[data-v-d8b27610]:after{left:9px;top:0;bottom:0;width:2px}.floating-instruction-chip[data-v-d8b27610]{margin-top:24px;background:#0d3b2ee6;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1.5px solid #f5c518;color:#fff;padding:8px 18px;border-radius:var(--radius-full);font-size:13px;font-weight:700;display:flex;align-items:center;gap:8px;box-shadow:0 6px 20px #00000073}@media (max-width: 820px){.viewfinder-box[data-v-d8b27610]{width:240px;height:240px}}.kiosk-feedback-backdrop[data-v-5e1e1af5]{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.kiosk-feedback-card[data-v-5e1e1af5]{background:#fff;border-radius:20px;padding:32px 28px;width:100%;max-width:440px;text-align:center;display:flex;flex-direction:column;align-items:center;box-shadow:0 25px 60px #00000080;border:3px solid transparent}.kiosk-feedback-card.card-success[data-v-5e1e1af5]{border-color:#22c55e}.kiosk-feedback-card.card-late[data-v-5e1e1af5]{border-color:#f59e0b}.kiosk-feedback-card.card-error[data-v-5e1e1af5]{border-color:#ef4444}.feedback-icon-wrapper[data-v-5e1e1af5]{margin-bottom:12px}.feedback-member-info[data-v-5e1e1af5]{display:flex;flex-direction:column;align-items:center;margin-bottom:14px}.feedback-avatar[data-v-5e1e1af5]{width:82px;height:82px;border-radius:var(--radius-full);object-fit:cover;border:3px solid var(--primary);box-shadow:0 4px 12px #00000026}.feedback-status-pill[data-v-5e1e1af5]{padding:8px 18px;border-radius:var(--radius-full);font-family:var(--font-headline);font-size:15px;font-weight:800;letter-spacing:.05em;margin-bottom:12px}.feedback-status-pill.success[data-v-5e1e1af5]{background:#dcfce7;color:#15803d;border:1.5px solid #86EFAC}.feedback-status-pill.late[data-v-5e1e1af5]{background:#fef3c7;color:#b45309;border:1.5px solid #FDE68A}.feedback-status-pill.error[data-v-5e1e1af5]{background:#fee2e2;color:#b91c1c;border:1.5px solid #FCA5A5}.geofence-error-tip[data-v-5e1e1af5]{background:#fff1f2;border:1px solid #FECDD3;color:#9f1239;padding:10px 14px;border-radius:8px;font-size:12.5px;display:flex;align-items:center;gap:8px;margin-bottom:12px;text-align:left}.feedback-timestamp[data-v-5e1e1af5]{font-size:12px;color:#6b7280;font-weight:600}.pop-enter-active[data-v-5e1e1af5],.pop-leave-active[data-v-5e1e1af5]{transition:all .25s cubic-bezier(.34,1.56,.64,1)}.pop-enter-from[data-v-5e1e1af5],.pop-leave-to[data-v-5e1e1af5]{opacity:0;transform:scale(.85)}.floating-hud-footer[data-v-22df2e01]{position:absolute;bottom:24px;left:20px;right:20px;display:flex;justify-content:center;z-index:100;pointer-events:none}.bottom-ticker-chip[data-v-22df2e01]{background:#0f172ae6;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.2);border-radius:var(--radius-full);padding:8px 20px;display:flex;align-items:center;gap:10px;box-shadow:0 4px 20px #00000080;pointer-events:auto}.live-dot[data-v-22df2e01]{width:8px;height:8px;border-radius:50%;display:inline-block;flex-shrink:0}.live-dot.pulse-success[data-v-22df2e01]{background-color:#22c55e;box-shadow:0 0 8px #22c55e}.ticker-text[data-v-22df2e01]{font-size:13px;color:#fff;display:flex;align-items:center;gap:6px;flex-wrap:wrap}.ticker-label[data-v-22df2e01]{color:#94a3b8;font-weight:600}.ticker-time[data-v-22df2e01]{font-size:11px;color:#fef08a;font-family:monospace}.pill-green[data-v-22df2e01]{background:#22c55e33;color:#86efac;font-size:10px;font-weight:800;padding:2px 6px;border-radius:4px}.pill-amber[data-v-22df2e01]{background:#f59e0b33;color:#fde047;font-size:10px;font-weight:800;padding:2px 6px;border-radius:4px}.pill-blue[data-v-22df2e01]{background:#0ea5e933;color:#7dd3fc;font-size:10px;font-weight:800;padding:2px 6px;border-radius:4px}.kiosk-fullscreen-container[data-v-ba47e4af]{position:fixed;top:0;right:0;bottom:0;left:0;width:100vw;height:100vh;background-color:#000;overflow:hidden;-webkit-user-select:none;user-select:none}.camera-viewport-fullscreen[data-v-ba47e4af]{width:100%;height:100%;position:absolute;top:0;right:0;bottom:0;left:0;object-fit:cover}[data-v-ba47e4af] #kiosk-scanner-region video{width:100%!important;height:100%!important;object-fit:cover!important;display:block}[data-v-ba47e4af] #kiosk-scanner-region img{display:none!important}.camera-fallback-floating[data-v-ba47e4af]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#0f172af2;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1.5px solid rgba(239,68,68,.6);border-radius:20px;padding:32px 24px;text-align:center;z-index:50;box-shadow:0 20px 50px #000000b3;display:flex;flex-direction:column;align-items:center}.sync-toast[data-v-ba47e4af]{position:absolute;top:96px;left:50%;transform:translate(-50%);padding:10px 20px;border-radius:var(--radius-full);font-size:13px;font-weight:700;z-index:1000;box-shadow:0 8px 24px #00000080}.sync-toast.toast-ok[data-v-ba47e4af]{background:#166534;color:#dcfce7;border:1px solid #86EFAC}.sync-toast.toast-err[data-v-ba47e4af]{background:#991b1b;color:#fee2e2;border:1px solid #FCA5A5}.pop-enter-active[data-v-ba47e4af],.pop-leave-active[data-v-ba47e4af]{transition:all .25s cubic-bezier(.34,1.56,.64,1)}.pop-enter-from[data-v-ba47e4af],.pop-leave-to[data-v-ba47e4af]{opacity:0;transform:translate(-50%,-10px)}.modal-backdrop[data-v-2d45d0c3]{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#0d3b2e73;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-card[data-v-2d45d0c3]{background-color:#fff;border-radius:var(--radius-md);width:100%;max-width:520px;box-shadow:0 20px 40px #0000004d;overflow:hidden}.modal-header[data-v-2d45d0c3]{padding:16px 20px;border-bottom:1px solid #E5E7EB;display:flex;justify-content:space-between;align-items:center;background-color:#fafafa}.close-btn[data-v-2d45d0c3]{background:transparent;border:none;cursor:pointer;color:#6b7280}.modal-form[data-v-2d45d0c3]{padding:20px}.form-group[data-v-2d45d0c3]{margin-bottom:14px;display:flex;flex-direction:column;gap:6px;flex:1}.form-row[data-v-2d45d0c3]{display:flex;gap:12px}.role-hint-badge[data-v-2d45d0c3]{font-size:11px;color:#059669;background:#ecfdf5;padding:1px 6px;border-radius:4px;font-weight:600}.role-chips[data-v-2d45d0c3]{display:flex;gap:6px;flex-wrap:wrap;margin-top:4px}.role-chip[data-v-2d45d0c3]{background:#f3f4f6;border:1px solid #E5E7EB;border-radius:4px;padding:3px 8px;font-size:11px;font-weight:600;color:#4b5563;cursor:pointer;transition:all .15s}.role-chip[data-v-2d45d0c3]:hover{background:#e5e7eb;color:#111827}.role-chip.active[data-v-2d45d0c3]{background:#0d3b2e;color:#f5c518;border-color:#0d3b2e}.label-bold[data-v-2d45d0c3]{font-size:11.5px;font-weight:800;color:#374151;letter-spacing:.04em}.mpl-input[data-v-2d45d0c3]{width:100%;padding:10px 14px;border:1px solid #D1D5DB;border-radius:var(--radius-sm);font-family:var(--font-body);font-size:13.5px;box-sizing:border-box}.mpl-input[data-v-2d45d0c3]:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #0d3b2e1a}.form-error-alert[data-v-2d45d0c3]{background-color:#fee2e2;border:1px solid #FCA5A5;color:#b91c1c;padding:10px 14px;border-radius:var(--radius-sm);margin-bottom:14px;font-size:13px;font-weight:600}.modal-footer[data-v-2d45d0c3]{padding:16px 20px;border-top:1px solid #E5E7EB;display:flex;justify-content:flex-end;gap:10px;background-color:#fafafa}.modal-backdrop[data-v-585f4435]{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#0d3b2e8c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1050;padding:20px}.modal-card[data-v-585f4435]{background-color:#fff;border-radius:12px;width:100%;max-width:600px;max-height:90vh;box-shadow:0 25px 50px -12px #00000059;display:flex;flex-direction:column;overflow:hidden;animation:modalIn-585f4435 .2s cubic-bezier(.16,1,.3,1)}@keyframes modalIn-585f4435{0%{opacity:0;transform:scale(.96) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-header[data-v-585f4435]{padding:18px 24px;border-bottom:1px solid #E5E7EB;display:flex;justify-content:space-between;align-items:flex-start;background:linear-gradient(135deg,#f9fafb,#f3f4f6)}.modal-title[data-v-585f4435]{margin:0;font-size:17px;font-weight:800;color:#0d3b2e;letter-spacing:.03em}.modal-subtitle[data-v-585f4435]{margin:4px 0 0;font-size:12.5px;color:#6b7280}.close-btn[data-v-585f4435]{background:transparent;border:none;cursor:pointer;color:#6b7280;padding:4px;border-radius:6px;transition:all .15s}.close-btn[data-v-585f4435]:hover{background-color:#e5e7eb;color:#111827}.tab-bar[data-v-585f4435]{display:flex;background-color:#f8fafc;border-bottom:1px solid #E2E8F0;padding:0 16px;gap:8px}.tab-btn[data-v-585f4435]{display:inline-flex;align-items:center;gap:8px;padding:12px 16px;font-size:13px;font-weight:700;color:#64748b;background:transparent;border:none;border-bottom:2.5px solid transparent;cursor:pointer;transition:all .2s}.tab-btn[data-v-585f4435]:hover{color:#0d3b2e}.tab-btn.active[data-v-585f4435]{color:#0d3b2e;border-bottom-color:#0d3b2e;background-color:#fff}.modal-body-form[data-v-585f4435]{display:flex;flex-direction:column;flex:1;overflow-y:auto}.tab-content[data-v-585f4435]{padding:20px 24px;display:flex;flex-direction:column;gap:14px}.form-group[data-v-585f4435]{display:flex;flex-direction:column;gap:6px;flex:1}.form-row[data-v-585f4435]{display:flex;gap:14px;flex-wrap:wrap}.role-hint-badge[data-v-585f4435]{font-size:11px;color:#059669;background:#ecfdf5;padding:1px 6px;border-radius:4px;font-weight:600}.role-chips[data-v-585f4435]{display:flex;gap:6px;flex-wrap:wrap;margin-top:4px}.role-chip[data-v-585f4435]{background:#f3f4f6;border:1px solid #E5E7EB;border-radius:4px;padding:3px 8px;font-size:11px;font-weight:600;color:#4b5563;cursor:pointer;transition:all .15s}.role-chip[data-v-585f4435]:hover{background:#e5e7eb;color:#111827}.role-chip.active[data-v-585f4435]{background:#0d3b2e;color:#f5c518;border-color:#0d3b2e}.field-label[data-v-585f4435]{font-size:11.5px;font-weight:800;color:#374151;letter-spacing:.04em}.mpl-input[data-v-585f4435]{width:100%;padding:9px 13px;border:1px solid #D1D5DB;border-radius:6px;font-size:13.5px;font-family:inherit;color:#111827;background-color:#fff;transition:border-color .15s,box-shadow .15s;box-sizing:border-box}.mpl-input[data-v-585f4435]:focus{outline:none;border-color:#0d3b2e;box-shadow:0 0 0 3px #0d3b2e1f}.section-divider[data-v-585f4435]{display:flex;align-items:center;text-align:center;margin:10px 0 4px}.section-divider[data-v-585f4435]:before,.section-divider[data-v-585f4435]:after{content:"";flex:1;border-bottom:1px solid #E5E7EB}.section-divider span[data-v-585f4435]{padding:0 10px;font-size:11px;font-weight:800;color:#9ca3af;letter-spacing:.08em}.auth-notice-card[data-v-585f4435]{background:linear-gradient(135deg,#ecfdf5,#f0fdf4);border:1px solid #A7F3D0;border-radius:8px;padding:12px 14px;margin-bottom:4px}.auth-notice-title[data-v-585f4435]{font-size:13px;font-weight:800;color:#065f46}.auth-notice-desc[data-v-585f4435]{font-size:12px;color:#047857;margin:4px 0 0;line-height:1.45}.id-label-row[data-v-585f4435]{display:flex;justify-content:space-between;align-items:center}.generate-mini-btn[data-v-585f4435]{display:inline-flex;align-items:center;gap:5px;background:#0d3b2e;color:#f5c518;border:none;padding:3px 10px;border-radius:4px;font-size:11.5px;font-weight:700;cursor:pointer;transition:all .15s}.generate-mini-btn[data-v-585f4435]:hover{background:#09261e;transform:translateY(-1px)}.id-input-wrap[data-v-585f4435]{position:relative;display:flex;align-items:center}.id-input[data-v-585f4435]{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-weight:700;font-size:15px;letter-spacing:.05em;color:#0d3b2e;padding-right:70px}.char-count-badge[data-v-585f4435]{position:absolute;right:10px;font-size:11px;font-weight:700;color:#059669;background-color:#d1fae5;padding:2px 6px;border-radius:4px}.char-count-badge.badge-warn[data-v-585f4435]{color:#b45309;background-color:#fef3c7}.pin-input-wrap[data-v-585f4435]{position:relative;display:flex;align-items:center}.pin-toggle-btn[data-v-585f4435]{position:absolute;right:10px;background:transparent;border:none;color:#6b7280;cursor:pointer;padding:4px}.input-hint[data-v-585f4435]{font-size:11.5px;color:#6b7280}.toggle-checkbox-card[data-v-585f4435]{display:flex;align-items:center;border:1px solid #D1D5DB;border-radius:6px;padding:9px 12px;background-color:#fafafa}.switch-label[data-v-585f4435]{display:flex;align-items:center;gap:9px;cursor:pointer}.checkbox-input[data-v-585f4435]{width:17px;height:17px;accent-color:#0D3B2E;cursor:pointer}.switch-text[data-v-585f4435]{font-size:13px;font-weight:700;color:#1f2937}.avatar-preview[data-v-585f4435]{width:44px;height:44px;border-radius:50%;object-fit:cover;border:2px solid #0D3B2E}.alert-box[data-v-585f4435]{display:flex;align-items:center;gap:8px;padding:10px 14px;margin:14px 24px 0;border-radius:6px;font-size:13px;font-weight:600}.alert-error[data-v-585f4435]{background-color:#fee2e2;border:1px solid #FCA5A5;color:#b91c1c}.alert-success[data-v-585f4435]{background-color:#d1fae5;border:1px solid #6EE7B7;color:#065f46}.modal-footer[data-v-585f4435]{padding:16px 24px;border-top:1px solid #E5E7EB;display:flex;justify-content:flex-end;gap:12px;background-color:#f9fafb}.pvc-id-card[data-v-5bd82990]{width:204px;height:323px;background:#fff;border:1px solid #cbd5e1;border-radius:9px;overflow:hidden;box-shadow:0 8px 20px #0d3b2e1f;display:flex;flex-direction:column;position:relative;box-sizing:border-box;flex-shrink:0}.pvc-id-card.bulk-item[data-v-5bd82990]{width:204px;height:323px;box-shadow:0 3px 12px #0d3b2e14}.card-header-bar[data-v-5bd82990]{background:#0d3b2e;color:#fff;padding:6px 8px;display:flex;align-items:center;justify-content:space-between;border-bottom:2px solid #f5c518;height:44px;box-sizing:border-box}.card-header-brand[data-v-5bd82990]{display:flex;align-items:center;gap:6px;overflow:hidden}.card-brand-img[data-v-5bd82990]{width:25px;height:25px;border-radius:9999px;border:1.5px solid #f5c518;object-fit:cover;background-color:#fff;flex-shrink:0}.card-inst-title[data-v-5bd82990]{font-family:var(--font-headline, sans-serif);font-size:8.5px;font-weight:800;letter-spacing:.3px;line-height:1.15;color:#fff;white-space:nowrap}.card-inst-sub[data-v-5bd82990]{font-size:6px;color:#fef08a;letter-spacing:.05em;font-weight:700;white-space:nowrap}.card-academic-badge[data-v-5bd82990]{background:#f5c51833;border:1px solid #f5c518;color:#fef08a;font-family:monospace;font-size:6.5px;font-weight:800;padding:1px 4px;border-radius:3px;white-space:nowrap}.card-content-body[data-v-5bd82990]{flex:1;padding:6px 8px 5px;display:flex;flex-direction:column;align-items:center;justify-content:space-between;background:linear-gradient(180deg,#fff,#faf9f6);box-sizing:border-box}.card-qr-box[data-v-5bd82990]{display:flex;flex-direction:column;align-items:center;justify-content:center;background:#fff;border:1px solid #cbd5e1;border-radius:8px;padding:3px 5px 4px;box-shadow:0 2px 8px #0d3b2e0d;width:164px;box-sizing:border-box}.card-qr-tag[data-v-5bd82990]{font-size:6.5px;font-weight:800;letter-spacing:.08em;background-color:#f5c518;color:#0d3b2e;padding:1px 6px;border-radius:3px;margin-bottom:2px;text-align:center}.card-qr-wrapper[data-v-5bd82990]{width:140px;height:140px;display:flex;align-items:center;justify-content:center;background:#fff}.card-qr-img[data-v-5bd82990]{width:100%;height:100%;display:block;object-fit:contain}.card-qr-loading[data-v-5bd82990]{font-size:10px;color:#94a3b8}.card-name-box[data-v-5bd82990]{display:flex;flex-direction:column;align-items:center;text-align:center;width:100%;padding:0 2px;box-sizing:border-box;gap:3px}.card-member-name[data-v-5bd82990]{font-family:var(--font-headline, sans-serif);font-size:11px;font-weight:800;color:#0d3b2e;line-height:1.2;text-align:center;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;max-width:185px;word-break:break-word}.card-meta-row[data-v-5bd82990]{display:flex;align-items:center;justify-content:center;gap:4px;flex-wrap:wrap}.card-role-badge[data-v-5bd82990]{font-size:6.5px;font-weight:800;letter-spacing:.04em;padding:1.5px 5px;border-radius:3px;text-align:center;white-space:nowrap}.card-role-badge.role-santri[data-v-5bd82990]{background-color:#dcfce7;color:#15803d;border:1px solid #bbf7d0}.card-role-badge.role-pengajar[data-v-5bd82990],.card-role-badge.role-guru[data-v-5bd82990],.card-role-badge.role-ustadz[data-v-5bd82990]{background-color:#fef3c7;color:#92400e;border:1px solid #fde68a}.card-role-badge.role-staf[data-v-5bd82990],.card-role-badge.role-admin[data-v-5bd82990]{background-color:#e0e7ff;color:#3730a3;border:1px solid #c7d2fe}.card-id-badge[data-v-5bd82990]{font-family:monospace;font-size:7.5px;font-weight:700;color:#334155;background-color:#f1f5f9;border:1px solid #cbd5e1;padding:1.5px 5px;border-radius:3px;white-space:nowrap}.card-footer-bar[data-v-5bd82990]{background-color:#0d3b2e;color:#f1f5f9;font-size:6px;font-weight:700;letter-spacing:.05em;padding:3px 6px;text-align:center;border-top:1.5px solid #f5c518;height:20px;box-sizing:border-box}@media print{.pvc-id-card[data-v-5bd82990]{box-shadow:none!important;border:1px dashed #94a3b8!important;border-radius:3mm!important;page-break-inside:avoid!important;break-inside:avoid!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;background:#fff!important}.pvc-id-card[data-v-5bd82990] *{box-shadow:none!important;text-shadow:none!important}.card-qr-box[data-v-5bd82990]{box-shadow:none!important;border:1px solid #cbd5e1!important}.pvc-id-card.print-size-standard[data-v-5bd82990],.pvc-id-card.print-size-ktp[data-v-5bd82990]{width:53.98mm!important;height:85.6mm!important}.pvc-id-card.print-size-standard .card-header-bar[data-v-5bd82990],.pvc-id-card.print-size-ktp .card-header-bar[data-v-5bd82990]{padding:1.5mm 2mm!important;border-bottom:1.5px solid #f5c518!important;height:10.5mm!important}.pvc-id-card.print-size-standard .card-brand-img[data-v-5bd82990],.pvc-id-card.print-size-ktp .card-brand-img[data-v-5bd82990]{width:6mm!important;height:6mm!important}.pvc-id-card.print-size-standard .card-inst-title[data-v-5bd82990],.pvc-id-card.print-size-ktp .card-inst-title[data-v-5bd82990]{font-size:6.5pt!important;line-height:1.1!important}.pvc-id-card.print-size-standard .card-inst-sub[data-v-5bd82990],.pvc-id-card.print-size-ktp .card-inst-sub[data-v-5bd82990]{font-size:4pt!important}.pvc-id-card.print-size-standard .card-academic-badge[data-v-5bd82990],.pvc-id-card.print-size-ktp .card-academic-badge[data-v-5bd82990]{font-size:4.5pt!important;padding:.3mm .8mm!important}.pvc-id-card.print-size-standard .card-content-body[data-v-5bd82990],.pvc-id-card.print-size-ktp .card-content-body[data-v-5bd82990]{padding:1.5mm 2mm 1.2mm!important}.pvc-id-card.print-size-standard .card-qr-box[data-v-5bd82990],.pvc-id-card.print-size-ktp .card-qr-box[data-v-5bd82990]{width:42mm!important;max-width:42mm!important;padding:.8mm 1.2mm!important}.pvc-id-card.print-size-standard .card-qr-tag[data-v-5bd82990],.pvc-id-card.print-size-ktp .card-qr-tag[data-v-5bd82990]{font-size:3.8pt!important;padding:.2mm .8mm!important;margin-bottom:.6mm!important}.pvc-id-card.print-size-standard .card-qr-wrapper[data-v-5bd82990],.pvc-id-card.print-size-standard .card-qr-img[data-v-5bd82990],.pvc-id-card.print-size-ktp .card-qr-wrapper[data-v-5bd82990],.pvc-id-card.print-size-ktp .card-qr-img[data-v-5bd82990]{width:35mm!important;height:35mm!important}.pvc-id-card.print-size-standard .card-member-name[data-v-5bd82990],.pvc-id-card.print-size-ktp .card-member-name[data-v-5bd82990]{font-size:7.5pt!important;line-height:1.15!important;max-width:48mm!important}.pvc-id-card.print-size-standard .card-meta-row[data-v-5bd82990],.pvc-id-card.print-size-ktp .card-meta-row[data-v-5bd82990]{gap:1mm!important}.pvc-id-card.print-size-standard .card-role-badge[data-v-5bd82990],.pvc-id-card.print-size-ktp .card-role-badge[data-v-5bd82990]{font-size:4.5pt!important;padding:.3mm 1mm!important}.pvc-id-card.print-size-standard .card-id-badge[data-v-5bd82990],.pvc-id-card.print-size-ktp .card-id-badge[data-v-5bd82990]{font-size:4.8pt!important;padding:.3mm 1.2mm!important}.pvc-id-card.print-size-standard .card-footer-bar[data-v-5bd82990],.pvc-id-card.print-size-ktp .card-footer-bar[data-v-5bd82990]{font-size:4pt!important;padding:.6mm 1.2mm!important;height:5mm!important}.pvc-id-card.print-size-lanyard[data-v-5bd82990]{width:60mm!important;height:96mm!important}.pvc-id-card.print-size-lanyard .card-header-bar[data-v-5bd82990]{padding:2mm 2.5mm!important;border-bottom:2px solid #f5c518!important;height:12mm!important}.pvc-id-card.print-size-lanyard .card-brand-img[data-v-5bd82990]{width:7.5mm!important;height:7.5mm!important}.pvc-id-card.print-size-lanyard .card-inst-title[data-v-5bd82990]{font-size:7.5pt!important}.pvc-id-card.print-size-lanyard .card-inst-sub[data-v-5bd82990]{font-size:4.5pt!important}.pvc-id-card.print-size-lanyard .card-academic-badge[data-v-5bd82990]{font-size:5pt!important}.pvc-id-card.print-size-lanyard .card-content-body[data-v-5bd82990]{padding:2.2mm 2.5mm 1.5mm!important}.pvc-id-card.print-size-lanyard .card-qr-box[data-v-5bd82990]{width:48mm!important;max-width:48mm!important;padding:1mm 1.5mm!important}.pvc-id-card.print-size-lanyard .card-qr-wrapper[data-v-5bd82990],.pvc-id-card.print-size-lanyard .card-qr-img[data-v-5bd82990]{width:41mm!important;height:41mm!important}.pvc-id-card.print-size-lanyard .card-member-name[data-v-5bd82990]{font-size:8.5pt!important;max-width:53mm!important}.pvc-id-card.print-size-lanyard .card-role-badge[data-v-5bd82990]{font-size:5pt!important}.pvc-id-card.print-size-lanyard .card-id-badge[data-v-5bd82990]{font-size:5.5pt!important}.pvc-id-card.print-size-lanyard .card-footer-bar[data-v-5bd82990]{font-size:4.5pt!important;height:5.8mm!important}.pvc-id-card.print-size-large[data-v-5bd82990]{width:70mm!important;height:110mm!important}.pvc-id-card.print-size-large .card-header-bar[data-v-5bd82990]{padding:2.5mm 3.5mm!important;height:14mm!important}.pvc-id-card.print-size-large .card-brand-img[data-v-5bd82990]{width:9mm!important;height:9mm!important}.pvc-id-card.print-size-large .card-inst-title[data-v-5bd82990]{font-size:9pt!important}.pvc-id-card.print-size-large .card-content-body[data-v-5bd82990]{padding:2.8mm 3.2mm 2mm!important}.pvc-id-card.print-size-large .card-qr-box[data-v-5bd82990]{width:56mm!important;max-width:56mm!important;padding:1.2mm 1.8mm!important}.pvc-id-card.print-size-large .card-qr-wrapper[data-v-5bd82990],.pvc-id-card.print-size-large .card-qr-img[data-v-5bd82990]{width:48mm!important;height:48mm!important}.pvc-id-card.print-size-large .card-member-name[data-v-5bd82990]{font-size:10pt!important;max-width:61mm!important}.pvc-id-card.print-size-large .card-role-badge[data-v-5bd82990]{font-size:5.5pt!important}.pvc-id-card.print-size-large .card-id-badge[data-v-5bd82990]{font-size:6pt!important}.pvc-id-card.print-size-large .card-footer-bar[data-v-5bd82990]{font-size:5pt!important;height:6.8mm!important}}.modal-backdrop[data-v-3d32b436]{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#0d3b2e73;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-card[data-v-3d32b436]{background-color:#fff;border-radius:var(--radius-md);width:100%;max-width:580px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 40px #0000004d;overflow:hidden}.modal-header[data-v-3d32b436]{padding:14px 20px;border-bottom:1px solid #E5E7EB;display:flex;justify-content:space-between;align-items:center;background-color:#fafafa;flex-shrink:0}.close-btn[data-v-3d32b436]{background:transparent;border:none;cursor:pointer;color:#6b7280}.id-card-modal-body[data-v-3d32b436]{display:flex;flex-direction:column;align-items:center;padding:14px 20px;background-color:#f8fafc;overflow-y:auto;flex:1;min-height:0}.card-toolbar[data-v-3d32b436]{width:100%;display:flex;flex-direction:column;gap:8px;margin-bottom:14px;padding:10px 14px;background:#fff;border:1px solid #e2e8f0;border-radius:var(--radius-sm)}.card-toolbar-info[data-v-3d32b436]{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.toolbar-hint[data-v-3d32b436]{font-size:11px;color:#64748b}.card-size-selector[data-v-3d32b436]{display:flex;gap:6px;flex-wrap:wrap}.size-pill-btn[data-v-3d32b436]{background-color:#f1f5f9;border:1px solid #cbd5e1;border-radius:6px;padding:5px 12px;font-size:11.5px;font-weight:700;color:#334155;cursor:pointer;transition:all .15s ease}.size-pill-btn[data-v-3d32b436]:hover{border-color:var(--primary);color:var(--primary);background-color:#eaf4f0}.size-pill-btn.active[data-v-3d32b436]{background-color:var(--primary);border-color:var(--primary);color:#fff;box-shadow:0 1px 3px #0d3b2e33}.card-scale-control[data-v-3d32b436]{display:flex;align-items:center;gap:8px;background-color:#f1f5f9;border:1px solid #cbd5e1;border-radius:6px;padding:4px 10px}.scale-label[data-v-3d32b436]{font-size:11px;font-weight:800;color:#475569}.scale-range-slider[data-v-3d32b436]{width:90px;accent-color:var(--primary, #0d3b2e);cursor:pointer}.scale-badge[data-v-3d32b436]{font-size:11px;font-weight:800;color:#0d3b2e;background:#e2e8f0;padding:2px 6px;border-radius:4px;min-width:38px;text-align:center;font-family:monospace}.scale-badge.is-default[data-v-3d32b436]{background:#dcfce7;color:#15803d;border:1px solid #86efac}.scale-reset-btn[data-v-3d32b436]{background:#fff;border:1px solid #cbd5e1;border-radius:4px;font-size:10px;font-weight:700;color:#0d3b2e;padding:2px 6px;cursor:pointer;transition:all .15s ease}.scale-reset-btn[data-v-3d32b436]:hover{background:#eaf4f0;border-color:var(--primary, #0d3b2e)}.card-preview-stage[data-v-3d32b436]{padding:8px;display:flex;justify-content:center;align-items:center;width:100%;overflow-x:auto}.modal-footer[data-v-3d32b436]{padding:14px 20px;border-top:1px solid #E5E7EB;display:flex;justify-content:space-between;gap:10px;background-color:#fafafa;flex-shrink:0}@media print{@page{size:A4 portrait;margin:10mm}.no-print[data-v-3d32b436]{display:none!important;visibility:hidden!important}.modal-backdrop[data-v-3d32b436]{position:static!important;background:transparent!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;padding:0!important;margin:0!important;display:block!important;width:100%!important;height:auto!important;box-shadow:none!important;border:none!important;z-index:auto!important}.modal-card[data-v-3d32b436],.id-card-modal[data-v-3d32b436]{position:static!important;background:transparent!important;box-shadow:none!important;border:none!important;border-radius:0!important;padding:0!important;margin:0!important;max-width:none!important;max-height:none!important;width:100%!important;overflow:visible!important;display:block!important}.id-card-modal-body[data-v-3d32b436],.card-preview-stage[data-v-3d32b436]{background:transparent!important;padding:0!important;margin:0!important;border:none!important;box-shadow:none!important;overflow:visible!important;display:block!important;width:100%!important;max-height:none!important}[data-v-3d32b436],[data-v-3d32b436]:before,[data-v-3d32b436]:after{box-shadow:none!important;text-shadow:none!important}#printable-id-card[data-v-3d32b436]{position:relative!important;left:auto!important;top:auto!important;margin:0 0 10mm!important;box-shadow:none!important;border:1px dashed #94a3b8!important;border-radius:8px!important;page-break-inside:avoid!important;break-inside:avoid!important}}.modal-backdrop[data-v-b505f182]{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#0d3b2e73;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.generator-modal[data-v-b505f182]{max-width:1050px;width:96%;max-height:92vh;display:flex;flex-direction:column}.modal-card[data-v-b505f182]{background-color:#fff;border-radius:var(--radius-md);box-shadow:0 20px 40px #0000004d;overflow:hidden}.modal-header[data-v-b505f182]{padding:16px 20px;border-bottom:1px solid #E5E7EB;display:flex;justify-content:space-between;align-items:center;background-color:#fafafa}.generator-header-tabs[data-v-b505f182]{display:flex;gap:8px}.gen-tab-btn[data-v-b505f182]{background:transparent;border:1px solid #E5E7EB;padding:8px 14px;border-radius:6px;font-size:13px;font-weight:700;color:#4b5563;cursor:pointer;display:flex;align-items:center;gap:8px;transition:all .15s ease}.gen-tab-btn[data-v-b505f182]:hover{background:#f3f4f6;color:var(--primary)}.gen-tab-btn.active[data-v-b505f182]{background:#eaf4f0;border-color:var(--primary);color:var(--primary)}.close-btn[data-v-b505f182]{background:transparent;border:none;cursor:pointer;color:#6b7280}.generator-body[data-v-b505f182]{padding:24px;overflow-y:auto}.generator-grid[data-v-b505f182]{display:grid;grid-template-columns:1fr 340px;gap:24px;align-items:start}.gen-controls-col[data-v-b505f182]{display:flex;flex-direction:column}.form-group[data-v-b505f182]{margin-bottom:14px;display:flex;flex-direction:column;gap:6px;flex:1}.form-row[data-v-b505f182]{display:flex;gap:12px}.label-bold[data-v-b505f182]{font-size:11.5px;font-weight:800;color:#374151;letter-spacing:.04em}.mpl-input[data-v-b505f182]{width:100%;padding:10px 14px;border:1px solid #D1D5DB;border-radius:var(--radius-sm);font-family:var(--font-body);font-size:13.5px;box-sizing:border-box}.preset-chip-mini[data-v-b505f182]{background:#f1f5f9;border:1px solid #cbd5e1;border-radius:4px;padding:4px 8px;font-size:11px;font-weight:700;color:#334155;cursor:pointer;transition:all .15s ease}.preset-chip-mini[data-v-b505f182]:hover{border-color:var(--primary);color:var(--primary);background:#eaf4f0}.gen-preview-col[data-v-b505f182]{display:flex;flex-direction:column;align-items:center}.gen-preview-card[data-v-b505f182]{width:100%;max-width:320px;background:#fff;border:2px solid #0d3b2e;border-radius:12px;padding:18px;display:flex;flex-direction:column;align-items:center;box-shadow:0 8px 24px #0d3b2e1f}.gen-card-header[data-v-b505f182]{display:flex;align-items:center;gap:8px;border-bottom:2px solid #f5c518;padding-bottom:8px;width:100%;justify-content:center}.gen-logo[data-v-b505f182]{width:26px;height:26px;border-radius:var(--radius-full)}.gen-qr-wrapper[data-v-b505f182]{margin:16px 0;display:flex;align-items:center;justify-content:center}.gen-qr-img[data-v-b505f182]{width:190px;height:190px;display:block}.gen-qr-title[data-v-b505f182]{font-size:13px;font-weight:800;color:#111827;text-align:center}.gen-qr-code-pill[data-v-b505f182]{background:#f1f5f9;border:1px solid #cbd5e1;padding:3px 8px;border-radius:4px;font-family:monospace;font-size:11px;font-weight:700;color:#0d3b2e;margin-top:6px}.bulk-body[data-v-b505f182]{padding:20px;overflow-y:auto;flex:1}.bulk-toolbar[data-v-b505f182]{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding:12px 18px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;flex-wrap:wrap;gap:12px}.bulk-info-box[data-v-b505f182]{display:flex;flex-direction:column;gap:2px}.bulk-toolbar-actions[data-v-b505f182]{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.card-size-selector[data-v-b505f182]{display:flex;gap:6px}.size-pill-btn[data-v-b505f182]{background-color:#f1f5f9;border:1px solid #cbd5e1;border-radius:6px;padding:5px 12px;font-size:11.5px;font-weight:700;color:#334155;cursor:pointer;transition:all .15s ease}.size-pill-btn[data-v-b505f182]:hover{border-color:var(--primary);color:var(--primary);background-color:#eaf4f0}.size-pill-btn.active[data-v-b505f182]{background-color:var(--primary);border-color:var(--primary);color:#fff;box-shadow:0 1px 3px #0d3b2e33}.card-scale-control[data-v-b505f182]{display:flex;align-items:center;gap:8px;background-color:#f1f5f9;border:1px solid #cbd5e1;border-radius:6px;padding:4px 10px}.scale-label[data-v-b505f182]{font-size:11px;font-weight:800;color:#475569}.scale-range-slider[data-v-b505f182]{width:90px;accent-color:var(--primary, #0d3b2e);cursor:pointer}.scale-badge[data-v-b505f182]{font-size:11px;font-weight:800;color:#0d3b2e;background:#e2e8f0;padding:2px 6px;border-radius:4px;min-width:38px;text-align:center;font-family:monospace}.scale-badge.is-default[data-v-b505f182]{background:#dcfce7;color:#15803d;border:1px solid #86efac}.scale-grid-info[data-v-b505f182]{font-size:11px;color:#64748b;font-weight:600}.scale-reset-btn[data-v-b505f182]{background:#fff;border:1px solid #cbd5e1;border-radius:4px;font-size:10px;font-weight:700;color:#0d3b2e;padding:2px 6px;cursor:pointer;transition:all .15s ease}.scale-reset-btn[data-v-b505f182]:hover{background:#eaf4f0;border-color:var(--primary, #0d3b2e)}.btn-sm[data-v-b505f182]{padding:6px 14px;font-size:12px}.bulk-cards-grid[data-v-b505f182]{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;padding:8px 0}.bulk-card-item[data-v-b505f182]{display:flex;justify-content:center}.modal-footer[data-v-b505f182]{padding:16px 20px;border-top:1px solid #E5E7EB;display:flex;justify-content:flex-end;gap:10px;background-color:#fafafa}.spin-anim[data-v-b505f182]{animation:spin-b505f182 1s linear infinite}@keyframes spin-b505f182{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media print{@page{size:A4 portrait;margin:4mm}.no-print[data-v-b505f182]{display:none!important;visibility:hidden!important}.modal-backdrop[data-v-b505f182],.generator-modal[data-v-b505f182],.bulk-body[data-v-b505f182]{position:static!important;background:transparent!important;box-shadow:none!important;border:none!important;border-radius:0!important;padding:0!important;margin:0!important;max-width:none!important;width:100%!important;overflow:visible!important;display:block!important}[data-v-b505f182],[data-v-b505f182]:before,[data-v-b505f182]:after{box-shadow:none!important;text-shadow:none!important}#bulk-printable-sheet[data-v-b505f182]{position:relative!important;display:grid!important;justify-items:center!important;width:100%!important;margin:0!important;padding:0!important;background:transparent!important;box-shadow:none!important;border:none!important}#bulk-printable-sheet.print-cols-3[data-v-b505f182]{grid-template-columns:repeat(3,1fr)!important;gap:3mm 3mm!important}#bulk-printable-sheet.print-cols-2[data-v-b505f182]{grid-template-columns:repeat(2,1fr)!important;gap:5mm 6mm!important}.bulk-card-item[data-v-b505f182]{page-break-inside:avoid!important;break-inside:avoid!important;display:flex!important;justify-content:center!important;margin-bottom:2mm!important}}@media (max-width: 900px){.bulk-cards-grid[data-v-b505f182]{grid-template-columns:1fr}}.modal-backdrop[data-v-22e82977]{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#0d3b2e73;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.import-modal[data-v-22e82977]{max-width:820px;width:95%;max-height:90vh;display:flex;flex-direction:column}.modal-card[data-v-22e82977]{background-color:#fff;border-radius:var(--radius-md);box-shadow:0 20px 40px #0000004d;overflow:hidden}.modal-header[data-v-22e82977]{padding:16px 20px;border-bottom:1px solid #E5E7EB;display:flex;justify-content:space-between;align-items:center;background-color:#fafafa}.close-btn[data-v-22e82977]{background:transparent;border:none;cursor:pointer;color:#6b7280}.import-body[data-v-22e82977]{padding:20px;overflow-y:auto;display:flex;flex-direction:column;gap:14px}.import-info-box[data-v-22e82977]{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:14px 16px}.form-row[data-v-22e82977]{display:flex;gap:12px}.form-group[data-v-22e82977]{display:flex;flex-direction:column;gap:6px;flex:1}.label-bold[data-v-22e82977]{font-size:11.5px;font-weight:800;color:#374151;letter-spacing:.04em}.mpl-input[data-v-22e82977]{width:100%;padding:9px 12px;border:1px solid #D1D5DB;border-radius:var(--radius-sm);font-family:var(--font-body);font-size:13px;box-sizing:border-box}.import-dropzone[data-v-22e82977]{border:2px dashed #cbd5e1;border-radius:10px;padding:26px 20px;text-align:center;background:#fafbfc;cursor:pointer;transition:all .15s ease}.import-dropzone[data-v-22e82977]:hover{border-color:var(--primary);background:#f0fdf4}.import-preview-wrap[data-v-22e82977]{margin-top:6px}.import-preview-table-wrap[data-v-22e82977]{max-height:240px;overflow-y:auto;border:1px solid #e2e8f0;border-radius:6px}.import-preview-table th[data-v-22e82977]{position:sticky;top:0;z-index:1;background:#f9fafb;font-size:11.5px;padding:8px 12px}.import-preview-table td[data-v-22e82977]{font-size:12px;padding:8px 12px}.form-error-alert[data-v-22e82977]{background-color:#fee2e2;border:1px solid #FCA5A5;color:#b91c1c;padding:10px 14px;border-radius:var(--radius-sm);font-size:13px;font-weight:600}.form-success-alert[data-v-22e82977]{background-color:#dcfce7;border:1px solid #86EFAC;color:#166534;padding:10px 14px;border-radius:var(--radius-sm);font-size:13px;font-weight:600}.code-pill[data-v-22e82977]{font-family:monospace;font-size:11px;font-weight:700;background-color:#f3f4f6;color:#374151;padding:2px 6px;border-radius:4px}.role-pill[data-v-22e82977]{font-size:10.5px;font-weight:700;background-color:#eaf4f0;color:#0d3b2e;padding:2px 6px;border-radius:4px}.modal-footer[data-v-22e82977]{padding:16px 20px;border-top:1px solid #E5E7EB;display:flex;justify-content:flex-end;gap:10px;background-color:#fafafa}.plakat-sheet[data-v-5b611812]{width:100%;max-width:520px;background:#fff;border:3px solid #0d3b2e;border-radius:20px;padding:32px 28px;display:flex;flex-direction:column;align-items:center;box-shadow:0 15px 35px #0d3b2e26;box-sizing:border-box;position:relative;overflow:hidden}.plakat-sheet[data-v-5b611812]:before{content:"";position:absolute;top:0;left:0;right:0;height:8px;background:linear-gradient(90deg,#0d3b2e,#f5c518,#0d3b2e)}.plakat-header[data-v-5b611812]{display:flex;flex-direction:column;align-items:center;gap:10px;width:100%;border-bottom:2px solid #e2e8f0;padding-bottom:16px;text-align:center}.logo-box[data-v-5b611812]{width:72px;height:72px;border-radius:50%;padding:3px;background:#fff;border:2.5px solid #f5c518;box-shadow:0 4px 12px #0000001a;display:flex;align-items:center;justify-content:center}.plakat-logo[data-v-5b611812]{width:100%;height:100%;border-radius:50%;object-fit:cover}.header-texts[data-v-5b611812]{display:flex;flex-direction:column;align-items:center;gap:4px}.plakat-inst-badge[data-v-5b611812]{background:#0d3b2e;color:#f5c518;font-size:11px;font-weight:800;letter-spacing:.1em;padding:4px 14px;border-radius:20px}.plakat-inst-title[data-v-5b611812]{font-family:Outfit,sans-serif,system-ui;font-size:21px;font-weight:900;color:#0d3b2e;letter-spacing:.5px;line-height:1.15;margin-top:2px}.plakat-inst-sub[data-v-5b611812]{font-size:11px;font-weight:700;color:#b45309;letter-spacing:.05em}.plakat-main-box[data-v-5b611812]{display:flex;flex-direction:column;align-items:center;margin:22px 0 18px;width:100%}.plakat-qr-outer-frame[data-v-5b611812]{padding:10px;background:#fff;border:3px solid #0d3b2e;border-radius:18px;box-shadow:0 8px 24px #0d3b2e1f}.plakat-qr-inner-frame[data-v-5b611812]{width:250px;height:250px;display:flex;align-items:center;justify-content:center;background:#fff}.plakat-qr-img[data-v-5b611812]{width:100%;height:100%;display:block}.qr-loading-placeholder[data-v-5b611812]{font-size:13px;color:#94a3b8;font-weight:600}.plakat-token-box[data-v-5b611812]{margin-top:12px;display:flex;align-items:center;gap:8px;background:#f8fafc;border:1px dashed #cbd5e1;padding:5px 14px;border-radius:8px}.token-label[data-v-5b611812]{font-size:10px;font-weight:800;color:#64748b;letter-spacing:.05em}.token-value[data-v-5b611812]{font-family:monospace;font-size:11.5px;font-weight:800;color:#0d3b2e;letter-spacing:.08em}.plakat-badge-auth[data-v-5b611812]{display:flex;align-items:center;gap:6px;margin-top:10px;background:#eaf4f0;border:1px solid #86efac;color:#166534;font-size:10px;font-weight:800;padding:4px 12px;border-radius:20px;letter-spacing:.03em}.plakat-instructions-box[data-v-5b611812]{width:100%;background:#f8fafc;border:1.5px solid #e2e8f0;border-radius:14px;padding:14px 16px;box-sizing:border-box}.inst-header[data-v-5b611812]{display:flex;align-items:center;gap:8px;font-size:11px;font-weight:800;color:#0d3b2e;letter-spacing:.05em;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid #e2e8f0}.inst-grid[data-v-5b611812]{display:flex;flex-direction:column;gap:10px}.inst-item[data-v-5b611812]{display:flex;align-items:flex-start;gap:10px}.step-circle[data-v-5b611812]{width:22px;height:22px;border-radius:50%;background:#0d3b2e;color:#f5c518;font-size:11px;font-weight:800;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:1px}.step-text[data-v-5b611812]{font-size:11.5px;color:#334155;line-height:1.4}.step-text code[data-v-5b611812]{background:#e2e8f0;padding:1px 5px;border-radius:4px;font-weight:700;color:#0d3b2e}.plakat-footer[data-v-5b611812]{margin-top:18px;padding-top:14px;border-top:1.5px solid #e2e8f0;width:100%;text-align:center;display:flex;flex-direction:column;gap:3px}.footer-loc-name[data-v-5b611812]{font-size:11.5px;font-weight:800;color:#0d3b2e}.footer-loc-addr[data-v-5b611812]{font-size:10.5px;color:#64748b}.footer-note[data-v-5b611812]{margin-top:6px;font-size:9.5px;color:#94a3b8;font-style:italic}@media print{@page{size:A4 portrait;margin:12mm 15mm}.plakat-sheet[data-v-5b611812]{box-shadow:none!important;border:3px solid #0d3b2e!important;max-width:180mm!important;padding:16mm 14mm!important;page-break-inside:avoid;break-inside:avoid}.plakat-qr-inner-frame[data-v-5b611812]{width:270px!important;height:270px!important}}.modal-backdrop[data-v-365742e6]{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#0d3b2e73;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.plakat-modal[data-v-365742e6]{max-width:680px;width:96%;max-height:94vh;display:flex;flex-direction:column;background:#fff;border-radius:var(--radius-md, 12px);overflow:hidden;box-shadow:0 20px 40px #0000004d}.modal-header[data-v-365742e6]{padding:14px 20px;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;align-items:center;background-color:#fafafa}.close-btn[data-v-365742e6]{background:transparent;border:none;cursor:pointer;color:#64748b;display:flex;align-items:center;justify-content:center}.plakat-modal-body[data-v-365742e6]{padding:20px;overflow-y:auto;display:flex;flex-direction:column;align-items:center;background:#f8fafc}.plakat-toolbar[data-v-365742e6]{width:100%;display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding:10px 14px;background:#fff;border:1px solid #e2e8f0;border-radius:8px;flex-wrap:wrap;gap:10px}.toolbar-actions[data-v-365742e6]{display:flex;gap:8px;flex-wrap:wrap}.modal-footer[data-v-365742e6]{padding:14px 20px;border-top:1px solid #e2e8f0;display:flex;background:#fafafa}@media print{.no-print[data-v-365742e6]{display:none!important}.modal-backdrop[data-v-365742e6],.plakat-modal[data-v-365742e6],.plakat-modal-body[data-v-365742e6]{position:static!important;background:transparent!important;box-shadow:none!important;border:none!important;padding:0!important;margin:0!important;max-width:none!important;width:100%!important;display:flex!important;justify-content:center!important}}.members-page[data-v-cd7b4250]{display:flex;flex-direction:column;gap:20px}.page-header[data-v-cd7b4250]{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px}.header-action-group[data-v-cd7b4250]{display:flex;gap:10px;flex-wrap:wrap}.header-action-group button[data-v-cd7b4250]{display:flex;align-items:center;gap:8px}.filter-bar[data-v-cd7b4250]{display:flex;flex-direction:column;gap:14px;padding:16px}.search-box[data-v-cd7b4250]{display:flex;align-items:center;gap:10px;background-color:#f9fafb;border:1px solid #E5E7EB;border-radius:var(--radius-sm);padding:8px 14px}.search-input[data-v-cd7b4250]{border:none;background:transparent;width:100%;font-family:var(--font-body);font-size:14px;color:#111827}.search-input[data-v-cd7b4250]:focus{outline:none}.dept-tabs[data-v-cd7b4250]{display:flex;gap:8px;flex-wrap:wrap}.dept-tab-btn[data-v-cd7b4250]{background:#f3f4f6;border:1px solid #E5E7EB;padding:6px 14px;border-radius:var(--radius-full);font-size:12.5px;font-weight:700;color:#4b5563;cursor:pointer;transition:all .15s ease}.dept-tab-btn[data-v-cd7b4250]:hover{background:#e5e7eb;color:#111827}.dept-tab-btn.active[data-v-cd7b4250]{background-color:var(--primary);border-color:var(--primary);color:#fff}.table-card[data-v-cd7b4250]{padding:0;overflow-x:auto}.mpl-table[data-v-cd7b4250]{width:100%;border-collapse:collapse;text-align:left}.mpl-table th[data-v-cd7b4250]{background-color:#f9fafb;padding:12px 16px;font-size:11px;font-weight:800;letter-spacing:.05em;color:#4b5563;border-bottom:1px solid #E5E7EB}.mpl-table td[data-v-cd7b4250]{padding:12px 16px;border-bottom:1px solid #F3F4F6;font-size:13.5px;vertical-align:middle}.mpl-table tr[data-v-cd7b4250]:hover{background-color:#fafafa}.member-avatar[data-v-cd7b4250]{width:38px;height:38px;border-radius:var(--radius-full);background-color:#e5e7eb;object-fit:cover;border:1.5px solid #0d3b2e}.code-pill[data-v-cd7b4250]{font-family:monospace;font-size:12px;font-weight:700;background-color:#f3f4f6;color:#374151;padding:2px 6px;border-radius:4px}.role-pill[data-v-cd7b4250]{font-size:11px;font-weight:700;background-color:#eaf4f0;color:#0d3b2e;padding:3px 8px;border-radius:4px;display:inline-flex;align-items:center;gap:4px}.role-pill.role-kepala[data-v-cd7b4250]{background-color:#fef3c7;color:#b45309;border:1px solid #fde68a}.role-pill.role-guru[data-v-cd7b4250]{background-color:#d1fae5;color:#065f46;border:1px solid #a7f3d0}.role-pill.role-staff[data-v-cd7b4250]{background-color:#e0f2fe;color:#0369a1;border:1px solid #bae6fd}.role-pill.role-santri[data-v-cd7b4250]{background-color:#f1f5f9;color:#334155;border:1px solid #e2e8f0}.category-tabs-bar[data-v-cd7b4250]{display:flex;gap:8px;flex-wrap:wrap;padding-bottom:12px;border-bottom:1px solid #e2e8f0;margin-bottom:6px}.cat-tab-btn[data-v-cd7b4250]{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border-radius:6px;font-size:12px;font-weight:700;background-color:#f8fafc;color:#475569;border:1px solid #cbd5e1;cursor:pointer;transition:all .15s ease}.cat-tab-btn[data-v-cd7b4250]:hover{background-color:#f1f5f9;color:#0f172a}.cat-tab-btn.active[data-v-cd7b4250]{background-color:#08261e;border-color:#08261e;color:#fff;box-shadow:0 2px 4px #08261e33}.cat-tab-btn.tab-guru.active[data-v-cd7b4250]{background-color:#047857;border-color:#047857}.cat-tab-btn.tab-staff.active[data-v-cd7b4250]{background-color:#0284c7;border-color:#0284c7}.cat-tab-btn.tab-santri.active[data-v-cd7b4250]{background-color:#334155;border-color:#334155}.qr-token-pill[data-v-cd7b4250]{font-family:monospace;font-size:11px;background:#faf5ff;color:#7e22ce;border:1px solid #f3e8ff;padding:2px 8px;border-radius:4px}.btn-sm[data-v-cd7b4250]{padding:6px 12px;font-size:12px}.btn-icon[data-v-cd7b4250]{display:inline-flex;align-items:center;gap:4px}@media (max-width: 768px){.page-header[data-v-cd7b4250]{flex-direction:column;align-items:stretch;gap:12px}.header-action-group[data-v-cd7b4250]{flex-direction:column;gap:8px;width:100%}.header-action-group button[data-v-cd7b4250]{width:100%;justify-content:center}.dept-tabs[data-v-cd7b4250]{flex-wrap:nowrap;overflow-x:auto;padding-bottom:6px;-webkit-overflow-scrolling:touch}.dept-tab-btn[data-v-cd7b4250]{white-space:nowrap;flex-shrink:0}}.login-id-pill[data-v-cd7b4250]{background:#fef08a!important;color:#854d0e!important;font-weight:800!important;border:1px solid #fde047!important}.pin-hint-tag[data-v-cd7b4250]{font-size:10px;font-weight:700;background:#e0f2fe;color:#0369a1;padding:1px 5px;border-radius:4px}.attendances-page[data-v-cadd7c64]{display:flex;flex-direction:column;gap:20px}.page-header[data-v-cadd7c64]{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px}.filter-bar[data-v-cadd7c64]{display:flex;gap:16px;align-items:flex-end;flex-wrap:wrap;padding:16px 20px}.filter-group[data-v-cadd7c64]{display:flex;flex-direction:column;gap:6px}.date-input[data-v-cadd7c64]{min-width:170px}.table-card[data-v-cadd7c64]{padding:0;overflow-x:auto}.mpl-table[data-v-cadd7c64]{width:100%;border-collapse:collapse;text-align:left}.mpl-table th[data-v-cadd7c64]{background-color:#f9fafb;padding:12px 16px;font-size:11px;font-weight:700;color:#4b5563;border-bottom:1px solid var(--border-muted)}.mpl-table td[data-v-cadd7c64]{padding:14px 16px;border-bottom:1px solid var(--border-muted);font-size:13.5px}.avatar-mini[data-v-cadd7c64]{width:34px;height:34px;border-radius:var(--radius-full);object-fit:cover;border:1px solid #E5E7EB}.code-pill[data-v-cadd7c64]{font-family:monospace;font-size:11px;color:#6b7280;background-color:#f3f4f6;padding:1px 6px;border-radius:4px}.method-tag[data-v-cadd7c64]{font-size:10px;font-weight:700;color:#6b7280;background-color:#e5e7eb;padding:2px 6px;border-radius:4px}.modal-backdrop[data-v-cadd7c64]{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-card[data-v-cadd7c64]{background-color:#fff;border-radius:var(--radius-md);width:100%;max-width:520px;box-shadow:0 20px 40px #0000004d;overflow:hidden}.modal-header[data-v-cadd7c64]{padding:16px 20px;border-bottom:1px solid #E5E7EB;display:flex;justify-content:space-between;align-items:center;background-color:#fafafa}.close-btn[data-v-cadd7c64]{background:transparent;border:none;cursor:pointer;color:#6b7280}.modal-form[data-v-cadd7c64]{padding:20px;display:flex;flex-direction:column;gap:14px}.form-group[data-v-cadd7c64]{display:flex;flex-direction:column;gap:6px;flex:1}.form-row[data-v-cadd7c64]{display:flex;gap:12px}.mpl-input[data-v-cadd7c64]{padding:10px 12px;border:1px solid #D1D5DB;border-radius:var(--radius-sm);font-size:13.5px;outline:none}.mpl-input[data-v-cadd7c64]:focus{border-color:var(--primary)}.form-error-alert[data-v-cadd7c64]{background-color:#fee2e2;color:#991b1b;padding:10px 14px;border-radius:var(--radius-sm);font-size:13px;font-weight:600}.modal-footer[data-v-cadd7c64]{padding:16px 20px;border-top:1px solid #E5E7EB;display:flex;justify-content:flex-end;gap:10px;background-color:#fafafa}@media (max-width: 768px){.page-header[data-v-cadd7c64]{flex-direction:column;align-items:stretch;gap:12px}.page-header button[data-v-cadd7c64]{width:100%;justify-content:center}.filter-bar[data-v-cadd7c64]{flex-direction:column;align-items:stretch;gap:12px}.filter-group[data-v-cadd7c64]{width:100%}.date-input[data-v-cadd7c64]{width:100%;min-width:unset}.form-row[data-v-cadd7c64]{flex-direction:column;gap:10px}.table-card[data-v-cadd7c64]{border-radius:12px;margin:0 -4px}.mpl-table[data-v-cadd7c64]{min-width:650px}}.header-action-group[data-v-cadd7c64]{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.spin-anim[data-v-cadd7c64]{animation:spin-cadd7c64 1s linear infinite}@keyframes spin-cadd7c64{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.btn-danger-soft[data-v-cadd7c64]{background-color:#fef2f2;border:1px solid #FECACA;color:#b91c1c;font-weight:700;font-size:12px}.btn-danger-soft[data-v-cadd7c64]:hover{background-color:#fee2e2;border-color:#fca5a5}.btn-danger-icon[data-v-cadd7c64]{background-color:#fef2f2;border:1px solid #FECACA;cursor:pointer;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.btn-danger-icon[data-v-cadd7c64]:hover{background-color:#fee2e2;border-color:#ef4444}.reset-modal-card[data-v-cadd7c64]{max-width:580px!important}.header-icon-box-danger[data-v-cadd7c64]{width:36px;height:36px;border-radius:8px;background-color:#fee2e2;display:flex;align-items:center;justify-content:center;flex-shrink:0}.form-success-alert[data-v-cadd7c64]{background-color:#ecfdf5;border:1px solid #A7F3D0;color:#065f46;padding:10px 14px;border-radius:6px;font-size:12.5px;font-weight:600;display:flex;align-items:center;gap:8px}.reset-info-banner[data-v-cadd7c64]{background-color:#fffbeb;border:1px solid #FDE68A;border-radius:8px;padding:12px 14px;display:flex;gap:10px;align-items:flex-start}.reset-scope-grid[data-v-cadd7c64]{display:flex;flex-direction:column;gap:10px;margin-top:6px}.scope-option-card[data-v-cadd7c64]{display:flex;align-items:flex-start;gap:12px;padding:12px 14px;border:1.5px solid #E5E7EB;border-radius:8px;cursor:pointer;background-color:#fff;transition:all .15s ease}.scope-option-card[data-v-cadd7c64]:hover{border-color:#cbd5e1;background-color:#f8fafc}.scope-option-card.is-selected[data-v-cadd7c64]{border-color:var(--primary);background-color:#f0fdf4}.scope-option-card.danger.is-selected[data-v-cadd7c64]{border-color:#ef4444;background-color:#fef2f2}.scope-radio-dot[data-v-cadd7c64]{width:18px;height:18px;border-radius:50%;border:2px solid #CBD5E1;margin-top:2px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.scope-radio-dot.active[data-v-cadd7c64]{border-color:var(--primary)}.scope-radio-dot.active[data-v-cadd7c64]:after{content:"";width:9px;height:9px;border-radius:50%;background-color:var(--primary)}.scope-radio-dot.danger.active[data-v-cadd7c64]{border-color:#dc2626}.scope-radio-dot.danger.active[data-v-cadd7c64]:after{background-color:#dc2626}.scope-content[data-v-cadd7c64]{flex:1}.scope-title[data-v-cadd7c64]{font-size:13px;font-weight:700;color:#111827}.scope-desc[data-v-cadd7c64]{font-size:11.5px;color:#6b7280;margin-top:2px;line-height:1.45}.confirmation-box[data-v-cadd7c64]{background-color:#fdf2f2;border:1px dashed #FCA5A5;border-radius:8px;padding:12px 14px}.confirm-input[data-v-cadd7c64]{font-family:monospace;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.btn-danger-action[data-v-cadd7c64]{background-color:#dc2626;color:#fff;border:none;font-weight:800;letter-spacing:.03em}.btn-danger-action[data-v-cadd7c64]:hover:not(:disabled){background-color:#b91c1c}.btn-danger-action[data-v-cadd7c64]:disabled{opacity:.5;cursor:not-allowed}.schedules-grid[data-v-980ee4e4]{display:grid;grid-template-columns:1fr 400px;gap:20px;align-items:start}.card-title-row[data-v-980ee4e4]{display:flex;align-items:center;gap:8px;margin-bottom:16px;border-bottom:1px solid #E5E7EB;padding-bottom:12px}.form-body[data-v-980ee4e4]{display:flex;flex-direction:column;gap:16px}.form-group[data-v-980ee4e4]{display:flex;flex-direction:column;gap:6px}.form-row[data-v-980ee4e4]{display:flex;gap:12px}.label-bold[data-v-980ee4e4]{font-size:12px;font-weight:800;color:#374151;letter-spacing:.04em}.label-sub[data-v-980ee4e4]{font-size:11px;color:#6b7280;font-weight:700}.mpl-input[data-v-980ee4e4]{width:100%;padding:10px 14px;border:1px solid #D1D5DB;border-radius:var(--radius-sm);font-family:var(--font-body);font-size:13.5px;box-sizing:border-box}.mpl-input[data-v-980ee4e4]:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #0d3b2e1a}.coord-box[data-v-980ee4e4]{background-color:#f8fafc;border:1px solid #E2E8F0;border-radius:var(--radius-sm);padding:14px}.detect-btn[data-v-980ee4e4]{background-color:#eaf4f0;border:1px solid var(--primary);color:var(--primary);padding:4px 10px;border-radius:6px;font-size:11px;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:all .15s ease}.detect-btn[data-v-980ee4e4]:hover:not(:disabled){background-color:var(--primary);color:#fff}.detect-btn[data-v-980ee4e4]:disabled{opacity:.6;cursor:not-allowed}.map-link[data-v-980ee4e4]{font-size:11.5px;color:#2563eb;text-decoration:none;font-weight:600;display:inline-flex;align-items:center;gap:4px}.map-link[data-v-980ee4e4]:hover{text-decoration:underline}.radius-value-pill[data-v-980ee4e4]{background-color:var(--primary);color:#fff;font-family:monospace;font-size:12px;font-weight:800;padding:2px 10px;border-radius:var(--radius-full)}.radius-slider[data-v-980ee4e4]{flex:1;accent-color:var(--primary);cursor:pointer}.preset-box[data-v-980ee4e4]{display:flex;align-items:center;gap:6px;margin-top:8px}.preset-chip[data-v-980ee4e4]{background-color:#f3f4f6;border:1px solid #E5E7EB;padding:3px 10px;border-radius:4px;font-size:11.5px;font-weight:700;color:#4b5563;cursor:pointer;transition:all .15s ease}.preset-chip[data-v-980ee4e4]:hover{background-color:#e5e7eb}.preset-chip.active[data-v-980ee4e4]{background-color:#0d3b2e;border-color:#0d3b2e;color:#fff}.toggle-group[data-v-980ee4e4]{display:flex;align-items:center;gap:12px;background-color:#faf5ff;border:1px solid #E9D5FF;padding:12px 14px;border-radius:var(--radius-sm);margin-top:6px}.switch-container[data-v-980ee4e4]{position:relative;display:inline-block;width:44px;height:24px;flex-shrink:0}.switch-input[data-v-980ee4e4]{opacity:0;width:0;height:0}.switch-slider[data-v-980ee4e4]{position:absolute;cursor:pointer;top:0;right:0;bottom:0;left:0;background-color:#cbd5e1;transition:.3s;border-radius:24px}.switch-slider[data-v-980ee4e4]:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;transition:.3s;border-radius:50%}.switch-input:checked+.switch-slider[data-v-980ee4e4]{background-color:var(--primary)}.switch-input:checked+.switch-slider[data-v-980ee4e4]:before{transform:translate(20px)}.alert-success[data-v-980ee4e4]{background-color:#dcfce7;border:1px solid #86EFAC;color:#166534;padding:10px 14px;border-radius:var(--radius-sm);font-size:13px;font-weight:600;display:flex;align-items:center;gap:6px}.alert-error[data-v-980ee4e4]{background-color:#fee2e2;border:1px solid #FCA5A5;color:#b91c1c;padding:10px 14px;border-radius:var(--radius-sm);font-size:13px;font-weight:600}.radar-visual-box[data-v-980ee4e4]{width:100%;height:240px;background:radial-gradient(circle,#0d3b2e,#061c16);border-radius:var(--radius-sm);position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;box-shadow:inset 0 2px 10px #00000080}.radar-circle[data-v-980ee4e4]{position:absolute;border-radius:50%;border:1px dashed rgba(245,197,24,.4)}.radar-circle.outer[data-v-980ee4e4]{width:200px;height:200px}.radar-circle.middle[data-v-980ee4e4]{width:130px;height:130px;border-color:#f5c51899}.radar-circle.inner[data-v-980ee4e4]{width:60px;height:60px;background-color:#f5c5181a;border-color:var(--gold)}.radar-sweep[data-v-980ee4e4]{position:absolute;width:200px;height:200px;border-radius:50%;background:conic-gradient(from 0deg,rgba(245,197,24,.25) 0deg,transparent 60deg);animation:sweep-980ee4e4 4s linear infinite}@keyframes sweep-980ee4e4{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.radar-pin[data-v-980ee4e4]{z-index:2;filter:drop-shadow(0 2px 6px rgba(0,0,0,.6));animation:bounce-980ee4e4 2s infinite}@keyframes bounce-980ee4e4{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.radar-radius-tag[data-v-980ee4e4]{position:absolute;bottom:8px;background-color:#0009;color:var(--gold);font-family:monospace;font-size:11px;font-weight:700;padding:3px 8px;border-radius:4px;border:1px solid rgba(245,197,24,.3)}.geofence-summary-list[data-v-980ee4e4]{display:flex;flex-direction:column;gap:8px;margin-top:16px;font-size:13px}.summary-row[data-v-980ee4e4]{display:flex;justify-content:space-between;border-bottom:1px solid #F3F4F6;padding-bottom:6px}.summary-lbl[data-v-980ee4e4]{color:#6b7280;font-weight:600}.summary-val[data-v-980ee4e4]{color:#111827;font-weight:700}.font-mono[data-v-980ee4e4]{font-family:monospace}.font-bold[data-v-980ee4e4]{font-weight:800}.text-primary[data-v-980ee4e4]{color:var(--primary)}.tag-active[data-v-980ee4e4]{background-color:#dcfce7;color:#166534;font-size:11px;font-weight:800;padding:2px 6px;border-radius:4px}.tag-disabled[data-v-980ee4e4]{background-color:#f3f4f6;color:#6b7280;font-size:11px;font-weight:800;padding:2px 6px;border-radius:4px}.help-box[data-v-980ee4e4]{background-color:#f8fafc;border:1px solid #E2E8F0;border-radius:var(--radius-sm);padding:12px;margin-top:14px;font-size:12.5px}.spin-anim[data-v-980ee4e4]{animation:spin-980ee4e4 1s linear infinite}@keyframes spin-980ee4e4{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 900px){.schedules-grid[data-v-980ee4e4]{grid-template-columns:1fr}}.schedules-grid[data-v-c6b60180]{display:grid;grid-template-columns:1fr 400px;gap:20px;align-items:start}.card-title-row[data-v-c6b60180]{display:flex;align-items:center;gap:8px;margin-bottom:16px;border-bottom:1px solid #E5E7EB;padding-bottom:12px}.form-body[data-v-c6b60180]{display:flex;flex-direction:column;gap:16px}.form-group[data-v-c6b60180]{display:flex;flex-direction:column;gap:6px}.form-row[data-v-c6b60180]{display:flex;gap:12px}.label-bold[data-v-c6b60180]{font-size:12px;font-weight:800;color:#374151;letter-spacing:.04em;display:flex;align-items:center;gap:6px}.label-sub[data-v-c6b60180]{font-size:11px;color:#6b7280;font-weight:700;display:flex;align-items:center;gap:4px}.mpl-input[data-v-c6b60180]{width:100%;padding:10px 14px;border:1px solid #D1D5DB;border-radius:var(--radius-sm);font-family:var(--font-body);font-size:13.5px;box-sizing:border-box}.input-sm[data-v-c6b60180]{padding:6px 10px;font-size:12.5px}.mpl-input[data-v-c6b60180]:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #0d3b2e1a}.alert-success[data-v-c6b60180]{background-color:#dcfce7;border:1px solid #86EFAC;color:#166534;padding:10px 14px;border-radius:var(--radius-sm);font-size:13px;font-weight:600;display:flex;align-items:center;gap:6px}.alert-error[data-v-c6b60180]{background-color:#fee2e2;border:1px solid #FCA5A5;color:#b91c1c;padding:10px 14px;border-radius:var(--radius-sm);font-size:13px;font-weight:600}.days-count-pill[data-v-c6b60180]{background-color:#0d3b2e;color:#fff;font-size:11px;font-weight:800;padding:2px 8px;border-radius:var(--radius-full)}.days-preset-bar[data-v-c6b60180]{display:flex;align-items:center;gap:6px;margin-top:4px;flex-wrap:wrap}.days-preset-chip[data-v-c6b60180]{background-color:#f3f4f6;border:1px solid #E5E7EB;padding:4px 10px;border-radius:4px;font-size:11px;font-weight:700;color:#4b5563;cursor:pointer;transition:all .15s ease}.days-preset-chip[data-v-c6b60180]:hover{background-color:#e5e7eb}.days-preset-chip.active[data-v-c6b60180]{background-color:#0d3b2e;border-color:#0d3b2e;color:#fff}.days-selector-grid[data-v-c6b60180]{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;margin-top:8px}.day-card-btn[data-v-c6b60180]{background-color:#fff;border:1.5px solid #E5E7EB;border-radius:8px;padding:10px 4px;display:flex;flex-direction:column;align-items:center;gap:6px;cursor:pointer;transition:all .15s ease}.day-card-btn[data-v-c6b60180]:hover{border-color:var(--primary)}.day-card-btn.active[data-v-c6b60180]{background-color:#f0fdf4;border-color:#16a34a}.day-check-indicator[data-v-c6b60180]{width:18px;height:18px;border-radius:50%;border:1.5px solid #D1D5DB;display:flex;align-items:center;justify-content:center;color:#fff}.day-card-btn.active .day-check-indicator[data-v-c6b60180]{background-color:#16a34a;border-color:#16a34a}.day-name-wrapper[data-v-c6b60180]{display:flex;flex-direction:column;align-items:center}.day-title[data-v-c6b60180]{font-size:12px;font-weight:800;color:#1f2937}.day-status-text[data-v-c6b60180]{font-size:10px;font-weight:600;color:#6b7280}.day-card-btn.active .day-status-text[data-v-c6b60180]{color:#16a34a;font-weight:700}.active-days-summary[data-v-c6b60180]{margin-top:8px;font-size:12px;color:#4b5563}.summary-label[data-v-c6b60180]{font-weight:700;color:#111827}.summary-text[data-v-c6b60180]{margin-left:4px}.custom-hours-section[data-v-c6b60180]{border-top:1px dashed #E5E7EB;padding-top:14px;margin-top:6px}.custom-hours-toggle-card[data-v-c6b60180],.custom-section-header[data-v-c6b60180]{display:flex;flex-direction:column;background-color:#f8fafc;border:1px solid #E2E8F0;border-radius:8px;padding:12px 14px}.switch-container[data-v-c6b60180]{position:relative;display:inline-block;width:44px;height:24px;flex-shrink:0}.switch-input[data-v-c6b60180]{opacity:0;width:0;height:0}.switch-slider[data-v-c6b60180]{position:absolute;cursor:pointer;top:0;right:0;bottom:0;left:0;background-color:#cbd5e1;transition:.3s;border-radius:24px}.switch-slider[data-v-c6b60180]:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;transition:.3s;border-radius:50%}.switch-input:checked+.switch-slider[data-v-c6b60180]{background-color:var(--primary)}.switch-input:checked+.switch-slider[data-v-c6b60180]:before{transform:translate(20px)}.custom-days-list[data-v-c6b60180]{display:flex;flex-direction:column;gap:10px;margin-top:12px}.custom-day-card[data-v-c6b60180]{border:1px solid #E5E7EB;border-radius:8px;padding:10px 12px;background-color:#fff}.custom-day-card.is-active-custom[data-v-c6b60180]{border-color:#f59e0b;background-color:#fffbeb}.custom-day-head[data-v-c6b60180]{display:flex;justify-content:space-between;align-items:center}.custom-day-left[data-v-c6b60180]{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.day-badge[data-v-c6b60180]{background-color:#1e293b;color:#fff;font-size:11px;font-weight:800;padding:2px 8px;border-radius:4px}.status-custom-badge[data-v-c6b60180]{font-size:11.5px;font-weight:700;color:#b45309}.status-regular-badge[data-v-c6b60180]{font-size:11px;color:#6b7280}.custom-day-checkbox-label[data-v-c6b60180]{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:700;color:#374151;cursor:pointer}.custom-checkbox[data-v-c6b60180]{width:16px;height:16px;accent-color:var(--primary);cursor:pointer}.custom-day-inputs[data-v-c6b60180]{margin-top:10px;border-top:1px dashed #E5E7EB;padding-top:8px}.quick-presets-row[data-v-c6b60180]{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.preset-chip-mini[data-v-c6b60180]{background-color:#fff;border:1px solid #D1D5DB;border-radius:4px;padding:2px 6px;font-size:10.5px;font-weight:700;color:#374151;cursor:pointer;transition:all .15s ease}.preset-chip-mini[data-v-c6b60180]:hover{background-color:#f3f4f6}.preset-chip-mini.reset[data-v-c6b60180]{color:#dc2626;border-color:#fca5a5}.rule-timeline[data-v-c6b60180]{display:flex;flex-direction:column;gap:16px;margin-top:8px}.timeline-step[data-v-c6b60180]{display:flex;gap:12px;align-items:flex-start}.step-dot[data-v-c6b60180]{width:14px;height:14px;border-radius:50%;margin-top:3px;flex-shrink:0}.step-dot.green[data-v-c6b60180]{background-color:#16a34a}.step-dot.amber[data-v-c6b60180]{background-color:#f59e0b}.step-dot.teal[data-v-c6b60180]{background-color:#0d3b2e}.step-dot.blue[data-v-c6b60180]{background-color:#2563eb}.step-dot.red[data-v-c6b60180]{background-color:#dc2626}.checkout-policy-section[data-v-c6b60180]{border-top:1px dashed #E5E7EB;padding-top:14px}.checkout-toggle-card[data-v-c6b60180]{display:flex;justify-content:space-between;align-items:center;background-color:#f8fafc;border:1px solid #E2E8F0;border-radius:8px;padding:12px 14px;transition:all .2s ease}.checkout-toggle-card.is-enforced[data-v-c6b60180]{background-color:#f0fdf4;border-color:#86efac}.mode-badge[data-v-c6b60180]{font-size:11px;font-weight:700;padding:2px 8px;border-radius:12px}.mode-badge.strict[data-v-c6b60180]{background-color:#dcfce7;color:#166534;border:1px solid #BBF7D0}.mode-badge.flexible[data-v-c6b60180]{background-color:#f3f4f6;color:#4b5563;border:1px solid #E5E7EB}.checkout-sub-config[data-v-c6b60180]{margin-top:10px;padding:12px 14px;background-color:#f8fafc;border:1px solid #E2E8F0;border-radius:8px;animation:fadeIn-c6b60180 .2s ease}.checkout-simulation-banner[data-v-c6b60180]{display:flex;align-items:flex-start;gap:8px;background-color:#ecfdf5;border:1px solid #A7F3D0;padding:10px 12px;border-radius:6px;margin-top:10px}@keyframes fadeIn-c6b60180{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.step-title[data-v-c6b60180]{font-size:13px;font-weight:800}.step-desc[data-v-c6b60180]{font-size:13px;color:#1f2937;margin:2px 0}.step-sub[data-v-c6b60180]{font-size:11.5px;color:#6b7280}.custom-hours-summary-box[data-v-c6b60180]{background-color:#fef3c7;border:1px solid #FDE68A;border-radius:8px;padding:12px;margin-top:16px}.custom-summary-row[data-v-c6b60180]{display:flex;justify-content:space-between;border-bottom:1px solid rgba(217,119,6,.2);padding:4px 0;font-size:12px}.custom-sum-day[data-v-c6b60180]{font-weight:800;color:#92400e}.custom-sum-details[data-v-c6b60180]{display:flex;gap:8px;font-weight:600;color:#78350f}@media (max-width: 900px){.schedules-grid[data-v-c6b60180]{grid-template-columns:1fr}.days-selector-grid[data-v-c6b60180]{grid-template-columns:repeat(4,1fr)}}.schedules-wrapper[data-v-c6b60180]{display:flex;flex-direction:column;gap:16px}.category-subtab-container[data-v-c6b60180]{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:6px;box-shadow:0 1px 3px #0000000d}.category-subtab-nav[data-v-c6b60180]{display:grid;grid-template-columns:1fr 1fr;gap:6px}.cat-tab-btn[data-v-c6b60180]{display:flex;align-items:center;gap:12px;padding:12px 16px;border:2px solid transparent;background:transparent;border-radius:10px;cursor:pointer;text-align:left;transition:all .2s ease}.cat-tab-btn[data-v-c6b60180]:hover{background:#f8fafc}.cat-tab-btn.active[data-v-c6b60180]{background:#f0fdf4;border-color:#047857;box-shadow:0 2px 6px #0478571f}.cat-tab-icon[data-v-c6b60180]{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.cat-tab-icon.santri[data-v-c6b60180]{background:#dcfce7;color:#047857}.cat-tab-icon.guru[data-v-c6b60180]{background:#e0f2fe;color:#0284c7}.cat-tab-text[data-v-c6b60180]{flex:1;display:flex;flex-direction:column;gap:2px}.cat-tab-title[data-v-c6b60180]{font-size:13.5px;font-weight:800;color:#0f172a}.cat-tab-subtitle[data-v-c6b60180]{font-size:11px;color:#64748b}.cat-badge[data-v-c6b60180]{font-size:10px;font-weight:800;padding:3px 8px;border-radius:6px;letter-spacing:.04em}.badge-santri[data-v-c6b60180]{background:#dcfce7;color:#15803d}.badge-guru[data-v-c6b60180]{background:#e0f2fe;color:#0369a1}@media (max-width: 640px){.category-subtab-nav[data-v-c6b60180]{grid-template-columns:1fr}}.schedules-grid[data-v-b4b659b3]{display:grid;grid-template-columns:1fr 400px;gap:20px;align-items:start}.card-title-row[data-v-b4b659b3]{display:flex;align-items:center;gap:8px;margin-bottom:16px;border-bottom:1px solid #E5E7EB;padding-bottom:12px}.form-body[data-v-b4b659b3]{display:flex;flex-direction:column;gap:16px}.form-group[data-v-b4b659b3]{display:flex;flex-direction:column;gap:6px;flex:1}.form-row[data-v-b4b659b3]{display:flex;gap:12px}.label-bold[data-v-b4b659b3]{font-size:12px;font-weight:800;color:#374151;letter-spacing:.04em}.mpl-input[data-v-b4b659b3]{width:100%;padding:10px 14px;border:1px solid #D1D5DB;border-radius:var(--radius-sm);font-family:var(--font-body);font-size:13.5px;box-sizing:border-box}.input-with-eye[data-v-b4b659b3]{position:relative;display:flex;align-items:center;width:100%}.input-with-eye .mpl-input[data-v-b4b659b3]{padding-right:40px}.eye-btn[data-v-b4b659b3]{position:absolute;right:10px;background:none;border:none;color:#6b7280;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:4px;border-radius:4px}.eye-btn[data-v-b4b659b3]:hover{color:var(--primary);background-color:#f3f4f6}.font-mono[data-v-b4b659b3]{font-family:monospace}.alert-success[data-v-b4b659b3]{background-color:#dcfce7;border:1px solid #86EFAC;color:#166534;padding:10px 14px;border-radius:var(--radius-sm);font-size:13px;font-weight:600;display:flex;align-items:center;gap:6px}.alert-error[data-v-b4b659b3]{background-color:#fee2e2;border:1px solid #FCA5A5;color:#b91c1c;padding:10px 14px;border-radius:var(--radius-sm);font-size:13px;font-weight:600}.pin-hint-box[data-v-b4b659b3]{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:6px;padding:10px 12px;display:flex;align-items:center;gap:8px;font-size:12px;color:#166534;margin-top:12px}@media (max-width: 900px){.schedules-grid[data-v-b4b659b3]{grid-template-columns:1fr}}.schedules-page[data-v-4487c179]{display:flex;flex-direction:column;gap:20px}.page-header[data-v-4487c179]{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px}.tab-pill-box[data-v-4487c179]{display:flex;background-color:#f3f4f6;border-radius:var(--radius-sm);padding:4px;gap:4px;border:1px solid #E5E7EB;flex-wrap:wrap}.tab-btn[data-v-4487c179]{display:flex;align-items:center;gap:8px;padding:8px 14px;border:none;background:transparent;border-radius:var(--radius-sm);font-family:var(--font-body);font-size:12.5px;font-weight:700;color:#4b5563;cursor:pointer;transition:all .15s ease}.tab-btn[data-v-4487c179]:hover{color:#111827}.tab-btn.active[data-v-4487c179]{background-color:#fff;color:var(--primary);box-shadow:0 1px 3px #0000001a}@media (max-width: 768px){.page-header[data-v-4487c179]{flex-direction:column;align-items:stretch}.tab-pill-box[data-v-4487c179]{width:100%;flex-direction:column}.tab-btn[data-v-4487c179]{width:100%;justify-content:center}}.reports-page[data-v-ff8d282a]{display:flex;flex-direction:column;gap:16px}.page-header[data-v-ff8d282a]{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:14px}.period-active-pill[data-v-ff8d282a]{background-color:#0d3b2e;color:#fff;font-size:11.5px;font-weight:800;padding:3px 10px;border-radius:var(--radius-full);letter-spacing:.02em}.header-actions[data-v-ff8d282a]{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.orientation-switch-group[data-v-ff8d282a]{display:flex;align-items:center;background-color:#f1f5f9;border:1px solid #CBD5E1;border-radius:8px;padding:3px 5px;gap:4px}.orientation-label[data-v-ff8d282a]{font-size:11px;font-weight:700;color:#475569;padding:0 4px 0 6px;letter-spacing:.02em}.orientation-pill-btn[data-v-ff8d282a]{background:transparent;border:none;border-radius:6px;padding:5px 10px;font-size:11.5px;font-weight:700;color:#64748b;cursor:pointer;display:flex;align-items:center;gap:4px;transition:all .15s ease}.orientation-pill-btn[data-v-ff8d282a]:hover{color:#0f172a;background-color:#e2e8f0}.orientation-pill-btn.active[data-v-ff8d282a]{background-color:#0d3b2e;color:#fff;box-shadow:0 1px 3px #0d3b2e40}.export-btn[data-v-ff8d282a],.print-btn[data-v-ff8d282a]{padding:10px 18px;font-weight:800;font-size:12.5px;letter-spacing:.03em}.filter-container-card[data-v-ff8d282a]{padding:16px 20px;display:flex;flex-direction:column;gap:14px;background-color:#fff;border:1px solid #E5E7EB;border-radius:8px}.period-mode-bar[data-v-ff8d282a]{display:flex;align-items:center;gap:12px;flex-wrap:wrap;border-bottom:1px solid #F3F4F6;padding-bottom:12px}.period-label[data-v-ff8d282a]{font-size:11.5px;font-weight:800;color:#374151;letter-spacing:.04em}.period-tabs-wrapper[data-v-ff8d282a]{display:flex;gap:6px;flex-wrap:wrap}.period-tab-btn[data-v-ff8d282a]{background-color:#f3f4f6;border:1px solid #E5E7EB;color:#4b5563;padding:6px 14px;border-radius:6px;font-size:12px;font-weight:700;cursor:pointer;transition:all .15s ease;display:flex;align-items:center;gap:4px}.period-tab-btn[data-v-ff8d282a]:hover{background-color:#e5e7eb;color:#111827}.period-tab-btn.active[data-v-ff8d282a]{background-color:#0d3b2e;border-color:#0d3b2e;color:#fff;box-shadow:0 2px 4px #0d3b2e33}.period-input-box[data-v-ff8d282a]{background-color:#f8fafc;border:1px solid #E2E8F0;border-radius:6px;padding:10px 14px}.input-period-row[data-v-ff8d282a]{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.input-field-group[data-v-ff8d282a]{display:flex;align-items:center;gap:8px}.label-sub[data-v-ff8d282a]{font-size:12px;font-weight:700;color:#4b5563;display:flex;align-items:center;gap:4px}.input-compact[data-v-ff8d282a]{padding:6px 10px;font-size:12.5px}.week-summary-pill[data-v-ff8d282a]{display:flex;align-items:center;gap:6px;background-color:#e6f4ea;border:1px solid #B8E1C2;color:#0d3b2e;padding:5px 12px;border-radius:6px;font-size:12px}.quick-chips-group[data-v-ff8d282a]{display:flex;align-items:center;gap:6px;margin-left:auto}.quick-chip-label[data-v-ff8d282a]{font-size:11px;font-weight:700;color:#6b7280}.quick-chip[data-v-ff8d282a]{background-color:#fff;border:1px solid #D1D5DB;border-radius:4px;padding:3px 8px;font-size:11px;font-weight:700;color:#374151;cursor:pointer;transition:all .15s ease}.quick-chip[data-v-ff8d282a]:hover{background-color:#f3f4f6;border-color:#9ca3af}.secondary-filter-bar[data-v-ff8d282a]{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding-top:4px}.filter-item[data-v-ff8d282a]{display:flex;flex-direction:column;gap:4px}.filter-label[data-v-ff8d282a]{font-size:11px;font-weight:700;color:#4b5563}.filter-select[data-v-ff8d282a]{padding:6px 10px;font-size:12.5px;min-width:140px}.filter-input[data-v-ff8d282a]{width:100%;padding:6px 32px 6px 10px;font-size:12.5px}.btn-search-inline[data-v-ff8d282a]{position:absolute;right:6px;background:none;border:none;color:#6b7280;cursor:pointer;padding:4px;display:flex;align-items:center}.btn-search-inline[data-v-ff8d282a]:hover{color:var(--primary)}.spin-anim[data-v-ff8d282a]{animation:spin-ff8d282a 1s linear infinite}@keyframes spin-ff8d282a{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.summary-kpi-grid[data-v-ff8d282a]{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.kpi-card[data-v-ff8d282a]{background-color:#fff;border:1px solid #E5E7EB;border-radius:8px;padding:14px 16px;display:flex;align-items:center;gap:12px;box-shadow:0 1px 3px #0000000d}.kpi-icon-wrapper[data-v-ff8d282a]{width:42px;height:42px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.kpi-icon-wrapper.blue[data-v-ff8d282a]{background-color:#eff6ff}.kpi-icon-wrapper.green[data-v-ff8d282a]{background-color:#ecfdf5}.kpi-icon-wrapper.amber[data-v-ff8d282a]{background-color:#fffbeb}.kpi-icon-wrapper.purple[data-v-ff8d282a]{background-color:#f5f3ff}.kpi-details[data-v-ff8d282a]{display:flex;flex-direction:column}.kpi-title[data-v-ff8d282a]{font-size:10.5px;font-weight:800;color:#6b7280;letter-spacing:.04em}.kpi-val[data-v-ff8d282a]{font-size:18px;font-weight:900;color:#111827;display:flex;align-items:center;gap:6px}.kpi-sub-badge[data-v-ff8d282a]{font-size:11px;font-weight:800;padding:1px 6px;border-radius:4px}.kpi-sub-badge.green[data-v-ff8d282a]{background-color:#dcfce7;color:#166534}.kpi-sub-badge.amber[data-v-ff8d282a]{background-color:#fef3c7;color:#b45309}.report-sheet[data-v-ff8d282a]{background-color:#fff;padding:30px;border:1px solid #E5E7EB;border-radius:8px}.report-letterhead[data-v-ff8d282a]{display:flex;align-items:center;gap:18px}.letterhead-logo-img[data-v-ff8d282a]{width:68px;height:68px;border-radius:50%;border:2px solid #f5c518;object-fit:cover;background-color:#fff}.letterhead-title[data-v-ff8d282a]{font-family:var(--font-headline);font-size:22px;font-weight:900;color:#0d3b2e;margin:0;line-height:1.15}.letterhead-sub[data-v-ff8d282a]{font-size:11.5px;font-weight:600;color:#4b5563;margin:3px 0 5px}.letterhead-meta[data-v-ff8d282a]{font-size:12.5px;font-weight:800;color:#111827}.letterhead-sub-meta[data-v-ff8d282a]{font-size:11px;color:#6b7280;margin-top:2px}.print-kpi-row[data-v-ff8d282a]{display:none;justify-content:space-between;background-color:#f8fafc;border:1px solid #E2E8F0;padding:8px 14px;font-size:11.5px;color:#374151;margin-bottom:12px}.table-responsive-wrapper[data-v-ff8d282a]{width:100%;overflow-x:auto}.report-table[data-v-ff8d282a]{width:100%;border-collapse:collapse;font-size:12.5px;margin-top:4px}.report-table th[data-v-ff8d282a]{background-color:#f3f4f6;border:1px solid #D1D5DB;padding:7px 8px;font-size:11px;font-weight:800;color:#374151;text-align:left}.report-table td[data-v-ff8d282a]{border:1px solid #E5E7EB;padding:7px 8px}.print-signatures[data-v-ff8d282a]{display:flex;justify-content:space-between;align-items:flex-start;margin-top:36px;padding:0 32px}.sig-box[data-v-ff8d282a]{display:flex;flex-direction:column;align-items:center;text-align:center;min-width:220px;width:240px}.sig-date[data-v-ff8d282a]{font-size:11.5px;font-weight:600;color:#1f2937;margin-bottom:2px;min-height:18px;line-height:18px}.sig-date-spacer[data-v-ff8d282a]{visibility:hidden;-webkit-user-select:none;user-select:none}.sig-caption[data-v-ff8d282a]{font-size:11px;font-weight:500;color:#4b5563;margin-bottom:2px;min-height:16px;line-height:16px}.sig-title[data-v-ff8d282a]{font-size:12px;font-weight:700;color:#08261e;margin-bottom:6px;letter-spacing:.3px;min-height:18px;line-height:18px}.sig-qr-container[data-v-ff8d282a]{display:flex;flex-direction:column;align-items:center;justify-content:center;background:#fff;border:1.5px solid #08261e;border-radius:8px;padding:6px;margin:4px 0 8px;box-shadow:0 1px 3px #0000000d}.sig-qr-link[data-v-ff8d282a]{text-decoration:none;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}.sig-qr-link[data-v-ff8d282a]:hover{transform:translateY(-2px);box-shadow:0 4px 10px #08261e2e}.tte-preview-bar[data-v-ff8d282a]{margin-top:14px;display:flex;justify-content:center}.btn-open-verify-preview[data-v-ff8d282a]{display:inline-flex;align-items:center;gap:6px;background:#fff;border:1.5px solid #10b981;color:#065f46;font-size:11.5px;font-weight:700;padding:6px 16px;border-radius:6px;cursor:pointer;transition:all .15s ease;box-shadow:0 1px 2px #0000000a}.btn-open-verify-preview[data-v-ff8d282a]:hover{background:#ecfdf5;color:#047857;border-color:#059669;transform:translateY(-1px);box-shadow:0 3px 6px #10b98126}.sig-qr-img[data-v-ff8d282a]{width:78px;height:78px;display:block;object-fit:contain}.sig-qr-placeholder[data-v-ff8d282a]{width:78px;height:78px;display:flex;align-items:center;justify-content:center;font-size:10px;color:#94a3b8;background:#f8fafc}.sig-badge[data-v-ff8d282a]{display:inline-flex;align-items:center;gap:3px;font-size:8px;font-weight:800;color:#047857;letter-spacing:.5px;margin-top:4px;text-transform:uppercase;background:#ecfdf5;padding:1px 6px;border-radius:4px;border:1px solid #a7f3d0}.sig-badge-icon[data-v-ff8d282a]{font-weight:900;font-size:8.5px;color:#059669}.sig-name[data-v-ff8d282a]{font-size:12px;font-weight:800;color:#111827;text-decoration:underline;text-underline-offset:3px}.sig-sub[data-v-ff8d282a]{font-size:10px;font-weight:600;color:#64748b;margin-top:2px}.col-center[data-v-ff8d282a]{text-align:center!important}@page{size:A4 landscape;margin:10mm 8mm 12mm}@media print{[data-v-ff8d282a]{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}body[data-v-ff8d282a]{background-color:#fff!important;color:#111827!important}.no-print[data-v-ff8d282a]{display:none!important}.reports-page[data-v-ff8d282a]{gap:0!important;padding:0!important}.report-sheet[data-v-ff8d282a]{border:none!important;box-shadow:none!important;padding:0!important;margin:0!important;background:#fff!important}.table-responsive-wrapper[data-v-ff8d282a]{overflow:visible!important;width:100%!important}.print-kpi-row[data-v-ff8d282a]{display:flex!important;background-color:#f8fafc!important;border:1px solid #CBD5E1!important;margin-bottom:12px!important}.report-table[data-v-ff8d282a]{width:100%!important;border-collapse:collapse!important;page-break-inside:auto!important}.report-table thead[data-v-ff8d282a]{display:table-header-group!important}.report-table tr[data-v-ff8d282a]{page-break-inside:avoid!important;break-inside:avoid!important}.report-table th[data-v-ff8d282a]{background-color:#f1f5f9!important;color:#1e293b!important;border:1px solid #94A3B8!important}.report-table td[data-v-ff8d282a]{border:1px solid #CBD5E1!important}.mpl-badge[data-v-ff8d282a]{border:1px solid currentColor!important;display:inline-block!important}.print-signatures[data-v-ff8d282a]{display:flex!important;justify-content:space-between!important;margin-top:30px!important;padding:0 30px!important;page-break-inside:avoid!important;break-inside:avoid!important}.report-sheet.sheet-landscape .report-table[data-v-ff8d282a]{font-size:10px!important}.report-sheet.sheet-landscape .report-table th[data-v-ff8d282a],.report-sheet.sheet-landscape .report-table td[data-v-ff8d282a]{padding:5px 6px!important}.report-sheet.sheet-landscape .col-no[data-v-ff8d282a]{width:32px!important}.report-sheet.sheet-landscape .col-date[data-v-ff8d282a]{width:78px!important;font-size:9.5px!important}.report-sheet.sheet-landscape .col-nip[data-v-ff8d282a]{width:85px!important;font-size:9.5px!important}.report-sheet.sheet-landscape .col-name[data-v-ff8d282a]{width:auto!important}.report-sheet.sheet-landscape .col-dept[data-v-ff8d282a]{width:85px!important}.report-sheet.sheet-landscape .col-role[data-v-ff8d282a]{width:70px!important}.report-sheet.sheet-landscape .col-in[data-v-ff8d282a],.report-sheet.sheet-landscape .col-out[data-v-ff8d282a]{width:68px!important;font-size:9px!important}.report-sheet.sheet-landscape .col-status[data-v-ff8d282a]{width:75px!important}.report-sheet.sheet-landscape .col-late[data-v-ff8d282a]{width:88px!important;font-size:9px!important}.report-sheet.sheet-landscape .col-method[data-v-ff8d282a]{width:75px!important;font-size:9px!important}.report-sheet.sheet-landscape .col-notes[data-v-ff8d282a]{width:auto!important;font-size:9.5px!important}.report-sheet.sheet-landscape .mpl-badge[data-v-ff8d282a]{font-size:9px!important;padding:1px 4px!important}.report-sheet.sheet-landscape .sig-qr-img[data-v-ff8d282a]{width:76px!important;height:76px!important}.report-sheet.sheet-portrait .letterhead-logo-img[data-v-ff8d282a]{width:52px!important;height:52px!important}.report-sheet.sheet-portrait .letterhead-title[data-v-ff8d282a]{font-size:16px!important}.report-sheet.sheet-portrait .letterhead-sub[data-v-ff8d282a]{font-size:10px!important;margin:2px 0 3px!important}.report-sheet.sheet-portrait .letterhead-meta[data-v-ff8d282a]{font-size:11px!important}.report-sheet.sheet-portrait .letterhead-sub-meta[data-v-ff8d282a]{font-size:9.5px!important}.report-sheet.sheet-portrait .print-kpi-row[data-v-ff8d282a]{font-size:9.5px!important;padding:5px 8px!important;margin-bottom:8px!important}.report-sheet.sheet-portrait .report-table[data-v-ff8d282a]{font-size:7.8px!important;table-layout:fixed!important;width:100%!important}.report-sheet.sheet-portrait .report-table th[data-v-ff8d282a],.report-sheet.sheet-portrait .report-table td[data-v-ff8d282a]{padding:2.5px 2px!important;word-break:break-word!important;overflow-wrap:break-word!important;line-height:1.15!important}.report-sheet.sheet-portrait .col-no[data-v-ff8d282a]{width:20px!important;font-size:7.5px!important;padding:2px 1px!important}.report-sheet.sheet-portrait .col-date[data-v-ff8d282a]{width:50px!important;font-size:7.5px!important}.report-sheet.sheet-portrait .col-nip[data-v-ff8d282a]{width:48px!important;font-size:7.5px!important}.report-sheet.sheet-portrait .col-name[data-v-ff8d282a]{width:auto!important;font-size:8px!important;font-weight:700!important}.report-sheet.sheet-portrait .col-dept[data-v-ff8d282a]{width:46px!important;font-size:7.5px!important}.report-sheet.sheet-portrait .col-role[data-v-ff8d282a]{width:36px!important;font-size:7px!important}.report-sheet.sheet-portrait .col-in[data-v-ff8d282a],.report-sheet.sheet-portrait .col-out[data-v-ff8d282a]{width:42px!important;font-size:6.8px!important}.report-sheet.sheet-portrait .col-status[data-v-ff8d282a]{width:44px!important}.report-sheet.sheet-portrait .col-late[data-v-ff8d282a]{width:46px!important;font-size:6.8px!important}.report-sheet.sheet-portrait .col-method[data-v-ff8d282a]{width:42px!important;font-size:7px!important}.report-sheet.sheet-portrait .col-notes[data-v-ff8d282a]{width:52px!important;font-size:7px!important}.report-sheet.sheet-portrait .mpl-badge[data-v-ff8d282a]{font-size:7px!important;padding:0 2px!important;font-weight:800!important}.report-sheet.sheet-portrait .print-signatures[data-v-ff8d282a]{margin-top:18px!important;padding:0 16px!important}.report-sheet.sheet-portrait .sig-box[data-v-ff8d282a]{min-width:160px!important;font-size:10px!important}.report-sheet.sheet-portrait .sig-caption[data-v-ff8d282a],.report-sheet.sheet-portrait .sig-date[data-v-ff8d282a]{font-size:9.5px!important;min-height:14px!important;line-height:14px!important}.report-sheet.sheet-portrait .sig-title[data-v-ff8d282a]{font-size:10.5px!important;min-height:15px!important;line-height:15px!important;margin-bottom:4px!important}.report-sheet.sheet-portrait .sig-qr-container[data-v-ff8d282a]{padding:3px 5px!important;margin:3px 0 5px!important;border-width:1px!important}.report-sheet.sheet-portrait .sig-qr-img[data-v-ff8d282a]{width:62px!important;height:62px!important}.report-sheet.sheet-portrait .sig-badge[data-v-ff8d282a]{font-size:7px!important;padding:1px 4px!important}.report-sheet.sheet-portrait .sig-name[data-v-ff8d282a]{font-size:10.5px!important}.report-sheet.sheet-portrait .sig-sub[data-v-ff8d282a]{font-size:8.5px!important}}@media (max-width: 960px){.summary-kpi-grid[data-v-ff8d282a]{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.page-header[data-v-ff8d282a]{flex-direction:column;align-items:stretch}.header-actions[data-v-ff8d282a]{flex-direction:column}.export-btn[data-v-ff8d282a],.print-btn[data-v-ff8d282a]{width:100%;justify-content:center}.orientation-switch-group[data-v-ff8d282a]{width:100%;justify-content:space-between}.orientation-pill-btn[data-v-ff8d282a]{flex:1;justify-content:center}.summary-kpi-grid[data-v-ff8d282a]{grid-template-columns:1fr}.quick-chips-group[data-v-ff8d282a]{margin-left:0;width:100%}.secondary-filter-bar[data-v-ff8d282a]{flex-direction:column;align-items:stretch}.filter-select[data-v-ff8d282a],.filter-input[data-v-ff8d282a]{width:100%}.reload-btn[data-v-ff8d282a]{width:100%;justify-content:center}}.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;left:0;top:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:transparent}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{width:1600px;height:1600px;-webkit-transform-origin:0 0}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{max-width:none!important;max-height:none!important;width:auto;padding:0}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:rgba(51,181,229,.4)}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{width:0;height:0;-moz-box-sizing:border-box;box-sizing:border-box;z-index:800}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{position:relative;z-index:800;pointer-events:visiblePainted;pointer-events:auto}.leaflet-top,.leaflet-bottom{position:absolute;z-index:1000;pointer-events:none}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;-webkit-transition:opacity .2s linear;-moz-transition:opacity .2s linear;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{-webkit-transition:none;-moz-transition:none;transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{background:#ddd;outline-offset:1px}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{border:2px dotted #38f;background:#ffffff80}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:12px;font-size:.75rem;line-height:1.5}.leaflet-bar{box-shadow:0 1px 5px #000000a6;border-radius:4px}.leaflet-bar a{background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;display:block;text-align:center;text-decoration:none;color:#000}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50% 50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-bottom:none}.leaflet-bar a.leaflet-disabled{cursor:default;background-color:#f4f4f4;color:#bbb}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-left-radius:2px;border-bottom-right-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{font:700 18px Lucida Console,Monaco,monospace;text-indent:1px}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{box-shadow:0 1px 5px #0006;background:#fff;border-radius:5px}.leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{padding:6px 10px 6px 6px;color:#333;background:#fff}.leaflet-control-layers-scrollbar{overflow-y:scroll;overflow-x:hidden;padding-right:5px}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{display:block;font-size:13px;font-size:1.08333em}.leaflet-control-layers-separator{height:0;border-top:1px solid #ddd;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=)}.leaflet-container .leaflet-control-attribution{background:#fff;background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{padding:0 5px;color:#333;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{display:inline!important;vertical-align:baseline!important;width:1em;height:.6669em}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{border:2px solid #777;border-top:none;line-height:1.1;padding:2px 5px 1px;white-space:nowrap;-moz-box-sizing:border-box;box-sizing:border-box;background:#fffc;text-shadow:1px 1px #fff}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{border:2px solid rgba(0,0,0,.2);background-clip:padding-box}.leaflet-popup{position:absolute;text-align:center;margin-bottom:20px}.leaflet-popup-content-wrapper{padding:1px;text-align:left;border-radius:12px}.leaflet-popup-content{margin:13px 24px 13px 20px;line-height:1.3;font-size:13px;font-size:1.08333em;min-height:1px}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{width:40px;height:20px;position:absolute;left:50%;margin-top:-1px;margin-left:-20px;overflow:hidden;pointer-events:none}.leaflet-popup-tip{width:17px;height:17px;padding:1px;margin:-10px auto 0;pointer-events:auto;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#fff;color:#333;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{position:absolute;top:0;right:0;border:none;text-align:center;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;color:#757575;text-decoration:none;background:transparent}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{width:24px;margin:0 auto;-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";filter:progid:DXImageTransform.Microsoft.Matrix(M11=.70710678,M12=.70710678,M21=-.70710678,M22=.70710678)}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{position:absolute;padding:6px;background-color:#fff;border:1px solid #fff;border-radius:3px;color:#222;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{position:absolute;pointer-events:none;border:6px solid transparent;background:transparent;content:""}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{left:50%;margin-left:-6px}.leaflet-tooltip-top:before{bottom:0;margin-bottom:-12px;border-top-color:#fff}.leaflet-tooltip-bottom:before{top:0;margin-top:-12px;margin-left:-6px;border-bottom-color:#fff}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{top:50%;margin-top:-6px}.leaflet-tooltip-left:before{right:0;margin-right:-12px;border-left-color:#fff}.leaflet-tooltip-right:before{left:0;margin-left:-12px;border-right-color:#fff}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.tracking-page{display:flex;flex-direction:column;gap:16px}.page-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:14px}.page-title-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.live-status-pill{display:inline-flex;align-items:center;gap:6px;background-color:#f3f4f6;border:1px solid #E5E7EB;color:#4b5563;padding:4px 10px;border-radius:var(--radius-full);font-size:11px;font-weight:800;letter-spacing:.04em}.live-status-pill.is-live{background-color:#ecfdf5;border-color:#a7f3d0;color:#065f46}.pulse-icon{animation:pulse 1.5s infinite}@keyframes pulse{0%{transform:scale(.95);opacity:.7}50%{transform:scale(1.15);opacity:1}to{transform:scale(.95);opacity:.7}}.header-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.date-picker-wrap{display:flex;align-items:center;gap:6px;background-color:#fff;border:1px solid #D1D5DB;border-radius:6px;padding:5px 10px;box-shadow:0 1px 2px #0000000a}.date-input{border:none;padding:2px 4px;font-size:12.5px;outline:none;background:transparent;color:#111827}.kpi-tracking-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.kpi-stat-card{background-color:#fff;border:1px solid #E5E7EB;border-radius:8px;padding:12px 14px;display:flex;align-items:center;gap:12px;box-shadow:0 1px 3px #0000000a;transition:transform .15s ease}.kpi-stat-card.has-warning{border-color:#fca5a5;background-color:#fef2f2}.kpi-icon-box{width:40px;height:40px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.kpi-icon-box.blue{background-color:#eff6ff}.kpi-icon-box.green{background-color:#ecfdf5}.kpi-icon-box.red{background-color:#fef2f2}.kpi-icon-box.gray{background-color:#f3f4f6}.kpi-stat-info{display:flex;flex-direction:column;min-width:0}.kpi-stat-title{font-size:10px;font-weight:800;color:#6b7280;letter-spacing:.04em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kpi-stat-val{font-size:18px;font-weight:900;color:#111827;line-height:1.2;margin-top:2px}.tracking-layout-grid{display:grid;grid-template-columns:1fr 380px;gap:16px;align-items:stretch}.map-card-container{position:relative;z-index:10;isolation:isolate;background-color:#fff;border:1px solid #E5E7EB;border-radius:8px;overflow:hidden;height:600px;display:flex;flex-direction:column;padding:0}.map-floating-toolbar{position:absolute;top:10px;left:10px;right:10px;z-index:25;display:flex;justify-content:space-between;align-items:center;gap:8px;pointer-events:none}.map-toolbar-left,.map-toolbar-right{display:flex;align-items:center;gap:8px;pointer-events:auto;flex-wrap:wrap}.rtq-loc-badge{background-color:#0d3b2e;color:#fff;font-size:11px;font-weight:700;padding:5px 10px;border-radius:20px;box-shadow:0 2px 6px #00000040;display:flex;align-items:center;gap:5px;white-space:nowrap}.selected-teacher-pill{background-color:#1e293b;color:#fff;font-size:11px;padding:5px 10px;border-radius:20px;box-shadow:0 2px 6px #00000040;display:flex;align-items:center;gap:5px;white-space:nowrap}.clear-selected-btn{background:none;border:none;color:#94a3b8;cursor:pointer;padding:0 4px;font-size:11px}.clear-selected-btn:hover{color:#fff}.btn-map-control{background-color:#fff;border:1px solid #CBD5E1;color:#1e293b;padding:5px 10px;border-radius:6px;font-size:11px;font-weight:700;cursor:pointer;box-shadow:0 2px 4px #0000001f;display:flex;align-items:center;gap:5px;transition:all .15s ease;white-space:nowrap}.btn-map-control:hover{background-color:#f8fafc}.btn-map-control.reset-all{background-color:#f1f5f9}.leaflet-map-element{width:100%;height:100%;z-index:1}.map-card-container .leaflet-top,.map-card-container .leaflet-bottom{z-index:20!important}.map-card-container .leaflet-pane{z-index:5}.map-card-container .leaflet-tile-pane{z-index:2}.map-card-container .leaflet-overlay-pane{z-index:4}.map-card-container .leaflet-marker-pane{z-index:6}.map-card-container .leaflet-popup-pane{z-index:7}.map-legend-box{position:absolute;bottom:12px;left:12px;z-index:25;background-color:#fffffff2;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:1px solid #CBD5E1;border-radius:6px;padding:6px 10px;font-size:10.5px;color:#334155;box-shadow:0 2px 6px #0000001a;display:flex;gap:10px;flex-wrap:wrap}.legend-item{display:flex;align-items:center;gap:4px;font-weight:600}.legend-dot{width:9px;height:9px;border-radius:50%}.legend-dot.green{background-color:#16a34a}.legend-dot.red{background-color:#dc2626}.legend-dot.gray{background-color:#94a3b8}.legend-line{width:14px;height:2px;background-color:#0d3b2e;border-top:2px dashed #0d3b2e}.side-panel-card{background-color:#fff;border:1px solid #E5E7EB;border-radius:8px;height:600px;display:flex;flex-direction:column;overflow:hidden;padding:0;box-shadow:0 1px 3px #0000000a}.side-panel-tabs{display:flex;border-bottom:1px solid #E5E7EB;background-color:#f8fafc}.side-tab-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:11px 8px;background:none;border:none;border-bottom:2.5px solid transparent;font-size:11.5px;font-weight:700;color:#64748b;cursor:pointer;transition:all .15s ease}.side-tab-btn.active{color:var(--primary);border-bottom-color:var(--primary);background-color:#fff}.tab-content-wrapper{display:flex;flex-direction:column;flex:1;overflow:hidden}.search-box-wrap{display:flex;align-items:center;gap:8px;padding:8px 12px;border-bottom:1px solid #F1F5F9;background-color:#fff}.panel-search-input{border:none;outline:none;font-size:12px;width:100%}.teachers-list-scroll,.timeline-scroll-container{flex:1;overflow-y:auto;padding:8px;display:flex;flex-direction:column;gap:6px}.teacher-list-item{display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid #F1F5F9;border-radius:6px;cursor:pointer;transition:all .15s ease}.teacher-list-item:hover{background-color:#f8fafc;border-color:#cbd5e1}.teacher-list-item.is-active-item{background-color:#ecfdf5;border-color:#86efac}.teacher-list-item.is-outside{border-color:#fca5a5;background-color:#fff5f5}.teacher-item-avatar{position:relative;width:36px;height:36px;border-radius:50%;flex-shrink:0}.avatar-img{width:100%;height:100%;border-radius:50%;object-fit:cover}.avatar-fallback{width:100%;height:100%;border-radius:50%;background-color:#e2e8f0;color:#334155;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:13px}.status-indicator-dot{position:absolute;bottom:0;right:0;width:10px;height:10px;border-radius:50%;border:2px solid #FFFFFF}.teacher-item-content{flex:1;min-width:0}.teacher-item-name{font-size:12px;font-weight:700;color:#1e293b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.teacher-item-sub{font-size:10.5px;color:#64748b;margin:1px 0 3px}.teacher-item-badge-row{display:flex;align-items:center;justify-content:space-between}.badge-mini{font-size:10px;font-weight:700;padding:1px 5px;border-radius:4px}.badge-mini.green{background-color:#dcfce7;color:#166534}.badge-mini.red{background-color:#fee2e2;color:#b91c1c}.badge-mini.gray{background-color:#f1f5f9;color:#64748b}.badge-mini.online{background-color:#dcfce7;color:#15803d;border:1px solid #86EFAC}.badge-mini.standby{background-color:#fef9c3;color:#854d0e;border:1px solid #FDE047}.badge-mini.offline{background-color:#fee2e2;color:#991b1b;border:1px solid #FCA5A5}.badge-mini.checkedout{background-color:#f8fafc;color:#64748b;border:1px solid #E2E8F0}.status-indicator-dot.green{background-color:#16a34a}.status-indicator-dot.yellow{background-color:#eab308}.status-indicator-dot.red{background-color:#dc2626}.status-indicator-dot.gray{background-color:#94a3b8}.teacher-device-row{display:flex;align-items:center;gap:8px;margin-top:4px;padding:3px 6px;background-color:#f8fafc;border:1px solid #F1F5F9;border-radius:4px;font-size:10px;color:#475569}.device-item{display:inline-flex;align-items:center;gap:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.device-item.ip{color:#0369a1;font-family:monospace;font-size:9.5px;font-weight:600}.device-item.hardware{color:#334155;font-weight:500;max-width:140px}.last-seen-label{font-size:9.5px;color:#64748b;display:flex;align-items:center;gap:3px;margin-top:2px}.last-seen-label.is-offline{color:#dc2626;font-weight:600}.time-meta{font-size:9.5px;color:#94a3b8;font-family:monospace}.chevron-icon{color:#cbd5e1}.selected-teacher-card{padding:8px 12px;background-color:#f8fafc;border-bottom:1px solid #E2E8F0}.clear-selected-btn-text{background:none;border:none;color:var(--primary);font-size:11px;font-weight:700;cursor:pointer}.clear-selected-btn-text:hover{text-decoration:underline}.timeline-empty-notice{padding:24px 16px;text-align:center;font-size:12px;color:#64748b;line-height:1.5}.timeline-log-row{display:flex;gap:10px;padding:6px 8px;border-radius:6px;cursor:pointer;transition:all .15s ease}.timeline-log-row:hover{background-color:#f8fafc}.timeline-log-row.is-breach{background-color:#fff5f5}.timeline-node-track{display:flex;flex-direction:column;align-items:center}.timeline-node-circle{width:18px;height:18px;border-radius:50%;color:#fff;font-size:9.5px;font-weight:800;display:flex;align-items:center;justify-content:center;flex-shrink:0}.timeline-node-circle.green{background-color:#16a34a}.timeline-node-circle.red{background-color:#dc2626}.timeline-node-line{width:2px;flex:1;background-color:#e2e8f0;margin:2px 0}.timeline-log-body{flex:1;min-width:0}.log-time-row{display:flex;justify-content:space-between;align-items:center}.log-time{font-size:11px;font-weight:700;color:#1e293b;font-family:monospace}.log-status-badge{font-size:9.5px;font-weight:700;padding:1px 4px;border-radius:4px}.log-status-badge.green{background-color:#dcfce7;color:#166534}.log-status-badge.red{background-color:#fee2e2;color:#b91c1c}.log-meta-row{display:flex;justify-content:space-between;font-size:10.5px;color:#64748b;margin-top:2px}.coord-label{font-size:9.5px;color:#94a3b8;font-family:monospace}.empty-state-panel,.loading-state-panel{padding:24px;text-align:center;font-size:12px;color:#94a3b8;display:flex;flex-direction:column;align-items:center;gap:6px}.spin-anim{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.rtq-center-marker-container{display:flex;align-items:center;justify-content:center}.rtq-base-pin{background-color:#0d3b2e;border:2px solid #F59E0B;color:#fff;padding:3px 8px;border-radius:12px;box-shadow:0 3px 8px #00000059;font-size:10px;font-weight:800;display:flex;align-items:center;gap:4px;white-space:nowrap}.teacher-pin-wrapper{position:relative;display:flex;flex-direction:column;align-items:center;cursor:pointer;transition:transform .2s ease}.teacher-pin-wrapper:hover,.teacher-pin-wrapper.is-selected{transform:scale(1.15);z-index:99}.pin-avatar-circle{width:32px;height:32px;border-radius:50%;border:2.5px solid #FFFFFF;background-color:#0d3b2e;color:#fff;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:800;box-shadow:0 2px 6px #0000004d;overflow:hidden}.teacher-pin-wrapper.inside .pin-avatar-circle{background-color:#16a34a;border-color:#fff}.teacher-pin-wrapper.outside .pin-avatar-circle{background-color:#dc2626;border-color:#fee2e2}.teacher-pin-wrapper.checked-out .pin-avatar-circle{background-color:#64748b;border-color:#e2e8f0}.pin-img{width:100%;height:100%;object-fit:cover}.pin-badge-bubble{background-color:#0f172ae6;color:#fff;padding:1px 5px;border-radius:8px;font-size:9px;font-weight:700;margin-top:-3px;display:flex;gap:3px;box-shadow:0 2px 4px #00000040;white-space:nowrap}.pin-dist{color:#fcd34d}.teacher-pin-wrapper.is-offline{opacity:.78}.teacher-pin-wrapper.is-offline .pin-avatar-circle{border-color:#ef4444!important;filter:grayscale(40%)}.pin-pulse-ring{position:absolute;top:-4px;left:15px;width:40px;height:40px;border-radius:50%;border:2px solid #EF4444;animation:pulsePin 1.8s infinite;pointer-events:none}.pin-pulse-ring.green{border-color:#10b981}.pin-connectivity-badge{position:absolute;top:-2px;right:12px;width:10px;height:10px;border-radius:50%;border:2px solid #FFFFFF;z-index:10}.pin-connectivity-badge.online{background-color:#10b981}.pin-connectivity-badge.standby{background-color:#f59e0b}.pin-connectivity-badge.offline{background-color:#ef4444}@keyframes pulsePin{0%{transform:scale(.8);opacity:1}to{transform:scale(1.6);opacity:0}}.breadcrumb-point-icon{display:flex;align-items:center;justify-content:center}.breadcrumb-dot{width:13px;height:13px;border-radius:50%;border:2px solid #FFFFFF;box-shadow:0 1px 4px #0000004d}.breadcrumb-dot.in{background-color:#16a34a}.breadcrumb-dot.out{background-color:#dc2626}.breadcrumb-dot.start{width:20px;height:20px;background-color:#2563eb;color:#fff;font-size:8.5px;font-weight:800;display:flex;align-items:center;justify-content:center}.breadcrumb-dot.end{width:22px;height:22px;background-color:#0d3b2e;color:#fff;font-size:8px;font-weight:800;display:flex;align-items:center;justify-content:center}@media (max-width: 960px){.tracking-layout-grid{grid-template-columns:1fr}.map-card-container{height:420px}.side-panel-card{height:460px}.kpi-tracking-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 640px){.hide-mobile{display:none}.tracking-page{gap:12px;padding-bottom:75px}.headline-lg{font-size:17px!important;line-height:1.25}.page-header{flex-direction:column;align-items:stretch;gap:10px}.page-title-row{flex-direction:column;align-items:flex-start;gap:6px}.live-status-pill{font-size:9.5px;padding:3px 8px}.header-actions{display:grid;grid-template-columns:1fr auto auto;gap:8px;width:100%}.date-picker-wrap{width:100%;padding:4px 8px}.date-input{width:100%;font-size:11.5px}.mpl-btn{padding:6px 10px;font-size:11px}.kpi-tracking-grid{grid-template-columns:repeat(2,1fr);gap:8px}.kpi-stat-card{padding:8px 10px;gap:8px}.kpi-icon-box{width:32px;height:32px}.kpi-stat-title{font-size:9px}.kpi-stat-val{font-size:15px}.map-card-container{height:340px}.map-floating-toolbar{top:6px;left:6px;right:6px;gap:4px}.rtq-loc-badge,.selected-teacher-pill{font-size:9.5px;padding:4px 8px;max-width:180px;overflow:hidden;text-overflow:ellipsis}.btn-map-control{font-size:9.5px;padding:4px 8px}.map-legend-box{bottom:6px;left:6px;right:6px;padding:4px 6px;font-size:9px;gap:6px;justify-content:center}.side-panel-card{height:420px}.side-tab-btn{font-size:10.5px;padding:9px 4px}.teacher-item-avatar{width:32px;height:32px}.teacher-item-name{font-size:11.5px}}.login-portal-wrapper[data-v-f6c59161]{min-height:100vh;min-height:100dvh;background:radial-gradient(circle at 50% 20%,#134e3f,#08241c 60%,#03120e);display:flex;align-items:center;justify-content:center;padding:20px 16px;position:relative;overflow:hidden;font-family:var(--font-body)}.bg-glow[data-v-f6c59161]{position:absolute;border-radius:var(--radius-full);filter:blur(80px);pointer-events:none;opacity:.35}.glow-1[data-v-f6c59161]{width:380px;height:380px;background-color:#10b981;top:-100px;right:-50px}.glow-2[data-v-f6c59161]{width:320px;height:320px;background-color:#f5c518;bottom:-80px;left:-40px}.login-container[data-v-f6c59161]{background:#0f172abf;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1.5px solid rgba(245,197,24,.4);border-radius:24px;padding:32px 28px;width:100%;max-width:420px;box-shadow:0 25px 60px #000000b3;display:flex;flex-direction:column;align-items:center;position:relative;z-index:10}.portal-header[data-v-f6c59161]{text-align:center;display:flex;flex-direction:column;align-items:center;margin-bottom:24px}.logo-badge-container[data-v-f6c59161]{width:68px;height:68px;border-radius:var(--radius-full);background-color:#fff;border:2.5px solid #f5c518;box-shadow:0 0 24px #f5c51866;display:flex;align-items:center;justify-content:center;margin-bottom:12px}.portal-logo[data-v-f6c59161]{width:54px;height:54px;border-radius:var(--radius-full);object-fit:cover}.portal-title[data-v-f6c59161]{font-family:var(--font-headline);font-size:19px;font-weight:800;color:#fff;letter-spacing:.5px;margin:0;line-height:1.2}.portal-subtitle[data-v-f6c59161]{font-size:10px;font-weight:700;color:#fef08a;margin:4px 0 10px;letter-spacing:.04em}.portal-tag[data-v-f6c59161]{display:inline-flex;align-items:center;gap:6px;background-color:#f5c51826;color:#f5c518;border:1px solid rgba(245,197,24,.4);padding:4px 12px;border-radius:var(--radius-full);font-size:11px;font-weight:700;letter-spacing:.05em}.pin-display-box[data-v-f6c59161]{width:100%;background:#00000080;border:1.5px solid rgba(255,255,255,.15);border-radius:16px;padding:12px 16px;display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;min-height:56px;box-shadow:inset 0 2px 6px #0006}.pin-dots-container[data-v-f6c59161]{display:flex;align-items:center;justify-content:center;gap:12px;flex:1}.pin-placeholder-text[data-v-f6c59161]{color:#9ca3af;font-size:13px;font-weight:500}.pin-dot-item[data-v-f6c59161]{width:14px;height:14px;border-radius:var(--radius-full);border:2px solid rgba(255,255,255,.3);display:flex;align-items:center;justify-content:center;transition:all .2s cubic-bezier(.34,1.56,.64,1)}.pin-dot-item.filled[data-v-f6c59161]{background-color:#f5c518;border-color:#f5c518;box-shadow:0 0 10px #f5c518b3;transform:scale(1.15)}.digit-revealed[data-v-f6c59161]{color:#0d3b2e;font-size:12px;font-weight:800;line-height:1}.digit-masked[data-v-f6c59161]{display:block;width:6px;height:6px;background-color:#0d3b2e;border-radius:var(--radius-full)}.toggle-eye-btn[data-v-f6c59161]{background:transparent;border:none;color:#d1d5db;cursor:pointer;padding:4px;display:flex;align-items:center;transition:color .15s}.toggle-eye-btn[data-v-f6c59161]:hover{color:#f5c518}.error-banner[data-v-f6c59161]{width:100%;background-color:#ef444433;border:1px solid rgba(239,68,68,.5);color:#fca5a5;padding:8px 12px;border-radius:10px;font-size:12px;font-weight:600;display:flex;align-items:center;gap:8px;margin-bottom:16px}.keypad-grid[data-v-f6c59161]{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;width:100%;margin-bottom:18px}.key-btn[data-v-f6c59161]{background:#ffffff14;border:1px solid rgba(255,255,255,.12);border-radius:14px;height:52px;color:#fff;font-family:var(--font-headline);font-size:20px;font-weight:700;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease;-webkit-user-select:none;user-select:none}.key-btn[data-v-f6c59161]:hover{background:#f5c51833;border-color:#f5c518;color:#f5c518;transform:translateY(-2px)}.key-btn[data-v-f6c59161]:active{transform:scale(.95);background:#f5c51859}.key-clear[data-v-f6c59161]{color:#f87171;font-size:16px}.key-clear[data-v-f6c59161]:hover{border-color:#ef4444;color:#ef4444;background-color:#ef444433}.key-delete[data-v-f6c59161]{color:#d1d5db}.key-delete[data-v-f6c59161]:hover{border-color:#f59e0b;color:#f59e0b}.login-submit-btn[data-v-f6c59161]{width:100%;background:linear-gradient(135deg,#f5c518,#d97706);color:#000;border:none;border-radius:14px;padding:14px 20px;font-family:var(--font-headline);font-size:14px;font-weight:800;letter-spacing:.03em;display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;transition:all .2s ease;box-shadow:0 8px 24px #f5c51859;margin-bottom:14px}.login-submit-btn[data-v-f6c59161]:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 12px 30px #f5c51880;background:linear-gradient(135deg,#fde047,#eab308)}.login-submit-btn[data-v-f6c59161]:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.portal-divider[data-v-f6c59161]{width:100%;border:none;border-top:1px solid rgba(255,255,255,.1);margin:18px 0 14px}.portal-footer[data-v-f6c59161]{width:100%;display:flex;justify-content:center}.kiosk-shortcut-link[data-v-f6c59161]{color:#6ee7b7;font-size:12.5px;font-weight:700;text-decoration:none;display:flex;align-items:center;gap:7px;padding:6px 12px;border-radius:var(--radius-full);transition:all .15s ease}.kiosk-shortcut-link[data-v-f6c59161]:hover{color:#a7f3d0;background-color:#10b98126}.shake-animation[data-v-f6c59161]{animation:shake-f6c59161 .5s cubic-bezier(.36,.07,.19,.97) both}@keyframes shake-f6c59161{10%,90%{transform:translate3d(-3px,0,0)}20%,80%{transform:translate3d(5px,0,0)}30%,50%,70%{transform:translate3d(-6px,0,0)}40%,60%{transform:translate3d(6px,0,0)}}@media (max-width: 440px){.login-container[data-v-f6c59161]{padding:24px 18px;border-radius:20px}.portal-title[data-v-f6c59161]{font-size:17px}.key-btn[data-v-f6c59161]{height:48px;font-size:18px}}.auth-card[data-v-17bd70d2]{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:24px 20px;box-shadow:0 12px 32px #0d3b2e14}.auth-card-hero[data-v-17bd70d2]{text-align:center;margin-bottom:20px}.hero-icon-bubble[data-v-17bd70d2]{width:60px;height:60px;border-radius:9999px;background:#eaf4f0;display:flex;align-items:center;justify-content:center;margin:0 auto 12px;border:2px solid #0d3b2e}.hero-icon[data-v-17bd70d2]{color:#0d3b2e}.auth-hint[data-v-17bd70d2]{font-size:12px;color:#64748b;margin-top:6px;line-height:1.4}.gps-pre-pill[data-v-17bd70d2]{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:8px;font-size:11px;font-weight:600;margin-bottom:16px;transition:all .2s ease}.gps-pre-pill.gps-ok[data-v-17bd70d2]{background:#dcfce7;color:#166534;border:1px solid #bbf7d0}.gps-pre-pill.gps-warn[data-v-17bd70d2]{background:#fef3c7;color:#92400e;border:1px solid #fde68a}.gps-pre-pill.gps-err[data-v-17bd70d2]{background:#fee2e2;color:#991b1b;border:1px solid #fecaca}.refresh-gps-mini[data-v-17bd70d2]{background:transparent;border:none;cursor:pointer;margin-left:auto;color:inherit;display:flex;align-items:center}.auth-form[data-v-17bd70d2]{display:flex;flex-direction:column;gap:14px}.form-group[data-v-17bd70d2]{display:flex;flex-direction:column;gap:6px}.form-label[data-v-17bd70d2]{font-size:11px;font-weight:800;color:#334155;letter-spacing:.04em}.pin-hint[data-v-17bd70d2]{font-size:10.5px;color:#0d3b2e;font-weight:700}.portal-input[data-v-17bd70d2]{width:100%;padding:12px 14px;border:1.5px solid #cbd5e1;border-radius:8px;font-size:14px;box-sizing:border-box;font-family:inherit;transition:border-color .15s ease}.portal-input[data-v-17bd70d2]:focus{border-color:#0d3b2e;outline:none}.pin-input-wrapper[data-v-17bd70d2]{position:relative;display:flex;align-items:center}.pin-field[data-v-17bd70d2]{padding-right:44px;font-family:monospace;font-size:16px;letter-spacing:2px}.toggle-eye-btn[data-v-17bd70d2]{position:absolute;right:12px;background:transparent;border:none;color:#64748b;cursor:pointer;display:flex;align-items:center}.login-alert-box[data-v-17bd70d2]{background:#fef2f2;border:1px solid #fecaca;color:#b91c1c;padding:10px 12px;border-radius:8px;font-size:12px;display:flex;align-items:center;gap:8px}.submit-login-btn[data-v-17bd70d2]{background:#0d3b2e;color:#fff;border:none;padding:14px;border-radius:8px;font-size:13.5px;font-weight:800;letter-spacing:.04em;display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;margin-top:4px;box-shadow:0 4px 12px #0d3b2e40;transition:transform .1s ease}.submit-login-btn[data-v-17bd70d2]:active{transform:scale(.98)}.submit-login-btn[data-v-17bd70d2]:disabled{opacity:.7;cursor:not-allowed}.auth-card-footer[data-v-17bd70d2]{text-align:center;font-size:11px;color:#94a3b8;margin-top:18px;line-height:1.4}.spin-anim[data-v-17bd70d2]{animation:spin-17bd70d2 1s linear infinite}@keyframes spin-17bd70d2{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.teacher-profile-card[data-v-3529401c]{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:12px 14px;box-shadow:0 2px 8px #0000000a;display:flex;align-items:center;justify-content:space-between;gap:12px}.profile-left[data-v-3529401c]{display:flex;align-items:center;gap:12px;overflow:hidden}.teacher-avatar[data-v-3529401c]{width:48px;height:48px;border-radius:9999px;object-fit:cover;border:2px solid #0d3b2e;flex-shrink:0}.profile-texts[data-v-3529401c]{display:flex;flex-direction:column;gap:2px;overflow:hidden}.teacher-name[data-v-3529401c]{font-family:var(--font-headline, sans-serif);font-size:14.5px;font-weight:800;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.teacher-meta[data-v-3529401c]{display:flex;align-items:center;gap:6px;font-size:11px;flex-wrap:wrap}.role-badge[data-v-3529401c]{background:#eaf4f0;color:#0d3b2e;font-weight:800;font-size:9.5px;padding:1px 6px;border-radius:4px}.nip-text[data-v-3529401c]{font-family:monospace;color:#64748b;font-weight:600}.dept-text[data-v-3529401c]{color:#475569;font-weight:500}.logout-btn[data-v-3529401c]{background:#fef2f2;border:1px solid #fee2e2;color:#b91c1c;padding:6px 10px;border-radius:8px;font-size:11.5px;font-weight:700;display:flex;align-items:center;gap:5px;cursor:pointer;white-space:nowrap;transition:all .15s ease}.logout-btn[data-v-3529401c]:hover{background:#fee2e2;color:#991b1b}.today-status-strip[data-v-ddd566ca]{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:10px 14px;display:flex;align-items:center;justify-content:space-around;text-align:center;box-shadow:0 2px 8px #0000000a}.status-col[data-v-ddd566ca]{display:flex;flex-direction:column;gap:2px}.col-label[data-v-ddd566ca]{font-size:9px;font-weight:800;color:#64748b;letter-spacing:.04em}.col-val[data-v-ddd566ca]{font-family:monospace;font-size:13px;font-weight:700;color:#94a3b8}.col-val.active-in[data-v-ddd566ca]{color:#15803d}.col-val.active-out[data-v-ddd566ca]{color:#0d3b2e}.status-tag[data-v-ddd566ca]{font-size:10.5px!important;font-family:inherit!important;padding:2px 6px;border-radius:4px}.status-tag.st-present[data-v-ddd566ca]{background:#dcfce7;color:#15803d}.status-tag.st-late[data-v-ddd566ca]{background:#fef3c7;color:#b45309}.status-tag.st-leave[data-v-ddd566ca],.status-tag.st-izin[data-v-ddd566ca]{background:#e0f2fe;color:#0369a1;font-weight:700}.status-tag.st-sick[data-v-ddd566ca],.status-tag.st-sakit[data-v-ddd566ca]{background:#fee2e2;color:#b91c1c;font-weight:700}.status-tag.st-checkout[data-v-ddd566ca]{background:#e0f2fe;color:#0369a1;font-weight:700}.status-tag.st-none[data-v-ddd566ca]{background:#f1f5f9;color:#64748b}.status-divider[data-v-ddd566ca]{width:1px;height:24px;background:#e2e8f0}.gps-geofence-card[data-v-e31cfe52]{border-radius:12px;padding:10px 14px;border:1.5px solid;transition:all .2s ease;box-shadow:0 2px 6px #00000008}.gps-geofence-card.within-safe[data-v-e31cfe52]{background:#f0fdf4;border-color:#86efac;color:#166534}.gps-geofence-card.out-warning[data-v-e31cfe52]{background:#fef2f2;border-color:#fca5a5;color:#991b1b}.geofence-header[data-v-e31cfe52]{display:flex;align-items:center;gap:8px}.radar-dot-pulse[data-v-e31cfe52]{width:8px;height:8px;border-radius:50%;background:currentColor;box-shadow:0 0 0 4px #16653433;animation:pulse-e31cfe52 1.5s infinite}.geofence-title[data-v-e31cfe52]{font-size:11.5px;font-weight:800;flex:1}.refresh-gps-btn[data-v-e31cfe52]{background:transparent;border:none;cursor:pointer;color:inherit;display:flex;align-items:center}.geofence-desc[data-v-e31cfe52]{font-size:11px;margin-top:3px;opacity:.9}.spin-anim[data-v-e31cfe52]{animation:spin-e31cfe52 1s linear infinite}@keyframes spin-e31cfe52{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes pulse-e31cfe52{0%{transform:scale(.95);opacity:.8}50%{transform:scale(1.15);opacity:1}to{transform:scale(.95);opacity:.8}}.scanner-card[data-v-e0c3d1fd]{background:#fff;border:1px solid #e2e8f0;border-radius:16px;overflow:hidden;box-shadow:0 6px 20px #0000000f}.scanner-header-bar[data-v-e0c3d1fd]{padding:10px 14px;background:#f8fafc;border-bottom:1px solid #e2e8f0;display:flex;align-items:center;justify-content:space-between}.camera-switch-btn[data-v-e0c3d1fd]{background:#fff;border:1px solid #cbd5e1;border-radius:6px;padding:4px 10px;font-size:11px;font-weight:700;color:#334155;cursor:pointer;display:flex;align-items:center;gap:6px}.viewfinder-box[data-v-e0c3d1fd]{position:relative;width:100%;min-height:280px;background:#000;overflow:hidden;display:flex;align-items:center;justify-content:center}.html5-qr-feed[data-v-e0c3d1fd]{width:100%!important;height:100%!important}.hud-corner[data-v-e0c3d1fd]{position:absolute;width:24px;height:24px;border:3.5px solid #f5c518;pointer-events:none;z-index:10}.hud-corner.top-left[data-v-e0c3d1fd]{top:30px;left:30px;border-right:none;border-bottom:none}.hud-corner.top-right[data-v-e0c3d1fd]{top:30px;right:30px;border-left:none;border-bottom:none}.hud-corner.bottom-left[data-v-e0c3d1fd]{bottom:30px;left:30px;border-right:none;border-top:none}.hud-corner.bottom-right[data-v-e0c3d1fd]{bottom:30px;right:30px;border-left:none;border-top:none}.hud-laser[data-v-e0c3d1fd]{position:absolute;left:30px;right:30px;height:2px;background:#f5c518;box-shadow:0 0 10px #f5c518;pointer-events:none;z-index:10;animation:laserScan-e0c3d1fd 2.4s ease-in-out infinite}@keyframes laserScan-e0c3d1fd{0%,to{top:32px}50%{top:calc(100% - 32px)}}.scanner-tip-bar[data-v-e0c3d1fd]{padding:10px 14px;background:#f8fafc;border-top:1px solid #e2e8f0;font-size:11px;color:#64748b;text-align:center;line-height:1.3}.result-backdrop[data-v-1bc39340]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.result-modal-card[data-v-1bc39340]{background:#fff;border-radius:16px;width:100%;max-width:360px;padding:24px 20px;text-align:center;box-shadow:0 20px 40px #00000040;animation:popIn-1bc39340 .25s ease-out}@keyframes popIn-1bc39340{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.result-icon-circle[data-v-1bc39340]{width:70px;height:70px;border-radius:50%;margin:0 auto 14px;display:flex;align-items:center;justify-content:center}.result-modal-card.success .result-icon-circle[data-v-1bc39340]{background:#dcfce7;color:#16a34a}.result-modal-card.error .result-icon-circle[data-v-1bc39340]{background:#fee2e2;color:#dc2626}.result-title[data-v-1bc39340]{font-family:var(--font-headline, sans-serif);font-size:16px;font-weight:800;color:#0f172a;margin:0 0 6px}.result-message[data-v-1bc39340]{font-size:13px;color:#475569;line-height:1.4;margin:0 0 16px}.result-meta-box[data-v-1bc39340]{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:8px 12px;margin-bottom:16px;font-size:12px;color:#334155;display:flex;flex-direction:column;gap:4px;text-align:left}.result-close-btn[data-v-1bc39340]{width:100%;background:#0d3b2e;color:#fff;border:none;padding:12px;border-radius:8px;font-size:13px;font-weight:800;cursor:pointer;transition:opacity .15s ease}.result-close-btn[data-v-1bc39340]:hover{opacity:.9}.modal-backdrop[data-v-c8d4751f]{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#0f172aa6;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:9999;display:flex;align-items:flex-end;justify-content:center;padding:0;animation:fadeIn-c8d4751f .2s ease-out}@media (min-width: 640px){.modal-backdrop[data-v-c8d4751f]{align-items:center;padding:20px}}.modal-sheet[data-v-c8d4751f]{background:#fff;width:100%;max-width:520px;max-height:92vh;border-radius:20px 20px 0 0;display:flex;flex-direction:column;box-shadow:0 -10px 40px #0003;animation:slideUp-c8d4751f .25s cubic-bezier(.16,1,.3,1);overflow:hidden}@media (min-width: 640px){.modal-sheet[data-v-c8d4751f]{border-radius:20px;box-shadow:0 25px 50px -12px #00000040}}@keyframes fadeIn-c8d4751f{0%{opacity:0}to{opacity:1}}@keyframes slideUp-c8d4751f{0%{transform:translateY(100%)}to{transform:translateY(0)}}.sheet-header[data-v-c8d4751f]{padding:16px 20px;border-bottom:1px solid #e2e8f0;display:flex;align-items:center;justify-content:space-between;background:#f8fafc}.header-left[data-v-c8d4751f]{display:flex;align-items:center;gap:12px}.header-icon-box[data-v-c8d4751f]{width:38px;height:38px;border-radius:10px;background:#ecfdf5;display:flex;align-items:center;justify-content:center;border:1px solid #a7f3d0}.sheet-title[data-v-c8d4751f]{margin:0;font-size:16px;font-weight:800;color:#0f172a}.sheet-sub[data-v-c8d4751f]{margin:2px 0 0;font-size:12px;color:#64748b}.close-btn[data-v-c8d4751f]{background:transparent;border:none;color:#94a3b8;cursor:pointer;padding:6px;border-radius:8px;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.close-btn[data-v-c8d4751f]:hover{background:#e2e8f0;color:#1e293b}.sheet-body[data-v-c8d4751f]{padding:18px 20px;overflow-y:auto;display:flex;flex-direction:column;gap:16px}.form-section[data-v-c8d4751f]{display:flex;flex-direction:column;gap:6px}.field-label[data-v-c8d4751f]{font-size:11.5px;font-weight:800;color:#334155;letter-spacing:.3px}.field-label .required[data-v-c8d4751f]{color:#ef4444}.field-label .text-muted[data-v-c8d4751f]{font-weight:400;color:#94a3b8}.selected-student-box[data-v-c8d4751f]{display:flex;align-items:center;gap:12px;padding:12px 14px;background:#f8fafc;border-radius:12px;border:1.5px solid #cbd5e1}.student-avatar-img[data-v-c8d4751f]{width:44px;height:44px;border-radius:10px;object-fit:cover;border:2px solid #ffffff;box-shadow:0 2px 6px #00000014}.student-avatar-placeholder[data-v-c8d4751f]{width:44px;height:44px;border-radius:10px;background:#ecfdf5;border:1px solid #a7f3d0;display:flex;align-items:center;justify-content:center}.student-meta[data-v-c8d4751f]{flex:1;min-width:0}.student-name[data-v-c8d4751f]{font-size:14px;font-weight:800;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.student-subtext[data-v-c8d4751f]{font-size:11.5px;color:#475569;margin-top:2px;display:flex;align-items:center;gap:6px}.dot-sep[data-v-c8d4751f]{color:#cbd5e1}.today-status-row[data-v-c8d4751f]{margin-top:5px}.badge-status-chip[data-v-c8d4751f]{display:inline-flex;align-items:center;gap:4px;padding:2px 7px;border-radius:6px;font-size:11px;font-weight:700}.badge-status-chip.success[data-v-c8d4751f]{background:#dcfce7;color:#166534}.badge-status-chip.warning[data-v-c8d4751f]{background:#fef3c7;color:#92400e}.badge-status-chip.info[data-v-c8d4751f]{background:#e0f2fe;color:#0369a1}.change-student-btn[data-v-c8d4751f]{padding:6px 12px;border-radius:8px;border:1px solid #cbd5e1;background:#fff;color:#475569;font-size:11.5px;font-weight:700;cursor:pointer;transition:all .15s ease}.change-student-btn[data-v-c8d4751f]:hover{background:#e2e8f0;color:#0f172a}.search-student-wrapper[data-v-c8d4751f]{position:relative}.input-search-inner[data-v-c8d4751f]{position:relative;display:flex;align-items:center}.search-input-icon[data-v-c8d4751f]{position:absolute;left:12px;color:#94a3b8;pointer-events:none}.search-input[data-v-c8d4751f]{padding-left:36px;padding-right:32px}.clear-mini-btn[data-v-c8d4751f]{position:absolute;right:10px;background:transparent;border:none;color:#94a3b8;cursor:pointer;padding:3px;display:flex;align-items:center;justify-content:center}.student-autocomplete-dropdown[data-v-c8d4751f]{position:absolute;top:calc(100% + 4px);left:0;right:0;background:#fff;border:1px solid #cbd5e1;border-radius:10px;box-shadow:0 10px 25px #0000001f;z-index:100;max-height:200px;overflow-y:auto}.autocomplete-item[data-v-c8d4751f]{display:flex;align-items:center;gap:10px;padding:9px 12px;border-bottom:1px solid #f1f5f9;cursor:pointer;transition:background .15s ease}.autocomplete-item[data-v-c8d4751f]:last-child{border-bottom:none}.autocomplete-item[data-v-c8d4751f]:hover{background:#f8fafc}.auto-item-avatar[data-v-c8d4751f]{width:28px;height:28px;border-radius:6px;background:#ecfdf5;display:flex;align-items:center;justify-content:center;flex-shrink:0}.auto-item-meta[data-v-c8d4751f]{flex:1;min-width:0}.auto-item-name[data-v-c8d4751f]{font-size:12.5px;font-weight:700;color:#1e293b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.auto-item-sub[data-v-c8d4751f]{font-size:11px;color:#64748b}.search-empty-hint[data-v-c8d4751f]{font-size:11.5px;color:#94a3b8;padding:6px 2px}.time-mode-selector[data-v-c8d4751f]{display:flex;background:#f1f5f9;padding:3px;border-radius:10px;gap:4px}.time-mode-btn[data-v-c8d4751f]{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:8px;border-radius:7px;border:none;background:transparent;font-size:11.5px;font-weight:700;color:#475569;cursor:pointer;transition:all .15s ease}.time-mode-btn.active[data-v-c8d4751f]{background:#fff;color:#0d3b2e;box-shadow:0 1px 4px #00000014}.auto-time-card[data-v-c8d4751f]{padding:10px 12px;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:10px;display:flex;flex-direction:column;gap:4px}.auto-time-display[data-v-c8d4751f]{display:flex;align-items:center;gap:10px}.live-clock-badge[data-v-c8d4751f]{font-size:14px;font-weight:800;color:#065f46;background:#fff;padding:3px 8px;border-radius:6px;border:1px solid #6ee7b7;font-family:monospace}.auto-time-label[data-v-c8d4751f]{font-size:12px;font-weight:700;color:#047857}.auto-time-tip[data-v-c8d4751f]{font-size:11px;color:#065f46}.manual-time-card[data-v-c8d4751f]{padding:10px 12px;background:#f8fafc;border:1px solid #cbd5e1;border-radius:10px;display:flex;flex-direction:column;gap:8px}.manual-time-row[data-v-c8d4751f]{display:flex;align-items:center;gap:10px}.manual-time-label[data-v-c8d4751f]{font-size:12px;font-weight:700;color:#334155}.time-input[data-v-c8d4751f]{max-width:130px;padding:6px 10px;font-size:14px;font-weight:800;text-align:center;font-family:monospace}.wib-text[data-v-c8d4751f]{font-size:12px;font-weight:800;color:#64748b}.manual-presets-row[data-v-c8d4751f]{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.preset-label[data-v-c8d4751f]{font-size:11px;color:#64748b;font-weight:600}.preset-btn[data-v-c8d4751f]{padding:3px 8px;border-radius:6px;border:1px solid #cbd5e1;background:#fff;color:#334155;font-size:11px;font-weight:700;cursor:pointer;transition:all .15s ease}.preset-btn[data-v-c8d4751f]:hover{background:#0d3b2e;color:#fff;border-color:#0d3b2e}.reason-chips-grid[data-v-c8d4751f]{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}@media (max-width: 420px){.reason-chips-grid[data-v-c8d4751f]{grid-template-columns:1fr}}.reason-chip-btn[data-v-c8d4751f]{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:10px;border:1.5px solid #cbd5e1;background:#fff;color:#334155;font-size:12px;font-weight:700;cursor:pointer;transition:all .15s ease;text-align:left}.reason-chip-btn[data-v-c8d4751f]:hover{border-color:#0d3b2e;background:#f8fafc}.reason-chip-btn.selected[data-v-c8d4751f]{border-color:#0d3b2e;background:#ecfdf5;color:#065f46;box-shadow:0 0 0 1px #0d3b2e}.chip-icon[data-v-c8d4751f]{flex-shrink:0;color:inherit}.input-custom[data-v-c8d4751f]{width:100%;padding:9px 12px;border:1.5px solid #cbd5e1;border-radius:10px;font-size:13px;color:#1e293b;outline:none;transition:border-color .15s ease,box-shadow .15s ease;background:#fff;box-sizing:border-box}.input-custom[data-v-c8d4751f]:focus{border-color:#0d3b2e;box-shadow:0 0 0 3px #0d3b2e1f}.textarea-custom[data-v-c8d4751f]{resize:vertical;min-height:55px;font-family:inherit}.dispensation-notice-box[data-v-c8d4751f]{display:flex;gap:10px;padding:10px 12px;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:10px}.notice-content[data-v-c8d4751f]{font-size:11.5px;color:#065f46;line-height:1.4}.notice-title[data-v-c8d4751f]{font-weight:800;color:#064e3b;margin-bottom:2px}.validation-alert[data-v-c8d4751f]{display:flex;align-items:center;gap:6px;padding:8px 12px;border-radius:8px;background:#fef2f2;border:1px solid #fecaca;color:#dc2626;font-size:12px;font-weight:600}.sheet-footer[data-v-c8d4751f]{padding:12px 20px;border-top:1px solid #e2e8f0;background:#f8fafc;display:flex;gap:10px;align-items:center}.btn-cancel[data-v-c8d4751f]{flex:1;padding:10px;border-radius:10px;border:1.5px solid #cbd5e1;background:#fff;color:#475569;font-size:12.5px;font-weight:700;cursor:pointer;transition:all .15s ease}.btn-cancel[data-v-c8d4751f]:hover:not(:disabled){background:#f1f5f9;color:#1e293b}.btn-confirm[data-v-c8d4751f]{flex:2;padding:10px;border-radius:10px;border:none;background:#0d3b2e;color:#fff;font-size:12.5px;font-weight:800;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 4px 12px #0d3b2e40;transition:all .15s ease}.btn-confirm[data-v-c8d4751f]:hover:not(:disabled){background:#092c22;transform:translateY(-1px);box-shadow:0 6px 16px #0d3b2e59}.btn-confirm[data-v-c8d4751f]:disabled,.btn-cancel[data-v-c8d4751f]:disabled{opacity:.6;cursor:not-allowed}.btn-spinner[data-v-c8d4751f]{width:15px;height:15px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin-c8d4751f .7s linear infinite}@keyframes spin-c8d4751f{to{transform:rotate(360deg)}}.modal-backdrop[data-v-a9a3ad9a]{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#0f172a99;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:16px;z-index:9999;animation:fadeIn-a9a3ad9a .2s ease}@keyframes fadeIn-a9a3ad9a{0%{opacity:0}to{opacity:1}}.modal-card[data-v-a9a3ad9a]{background:#fff;width:100%;max-width:480px;border-radius:18px;box-shadow:0 20px 40px #0003;display:flex;flex-direction:column;overflow:hidden;animation:slideUp-a9a3ad9a .25s ease}@keyframes slideUp-a9a3ad9a{0%{transform:translateY(16px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-header[data-v-a9a3ad9a]{padding:18px 20px 14px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #f1f5f9}.header-info[data-v-a9a3ad9a]{display:flex;align-items:center;gap:12px}.header-icon-pill[data-v-a9a3ad9a]{width:42px;height:42px;border-radius:12px;background:#f8fafc;display:flex;align-items:center;justify-content:center;border:1px solid #e2e8f0}.modal-title[data-v-a9a3ad9a]{margin:0;font-size:16px;font-weight:800;color:#0f172a}.modal-subtitle[data-v-a9a3ad9a]{margin:2px 0 0;font-size:12px;color:#64748b}.btn-close[data-v-a9a3ad9a]{background:#f1f5f9;border:none;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#64748b;cursor:pointer;transition:all .15s ease}.btn-close[data-v-a9a3ad9a]:hover{background:#e2e8f0;color:#0f172a}.teacher-info-strip[data-v-a9a3ad9a]{background:#f8fafc;padding:10px 20px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e2e8f0;gap:10px}.strip-left[data-v-a9a3ad9a]{display:flex;align-items:center;gap:10px}.avatar-mini[data-v-a9a3ad9a]{width:30px;height:30px;border-radius:8px;background:#dcfce7;color:#047857;display:flex;align-items:center;justify-content:center}.teacher-name[data-v-a9a3ad9a]{font-size:13px;font-weight:700;color:#1e293b}.teacher-sub[data-v-a9a3ad9a]{font-size:11px;color:#64748b}.strip-date[data-v-a9a3ad9a]{display:flex;align-items:center;gap:6px;font-size:11.5px;font-weight:600;color:#475569;background:#fff;padding:4px 10px;border-radius:6px;border:1px solid #e2e8f0;white-space:nowrap}.modal-body[data-v-a9a3ad9a]{padding:18px 20px;display:flex;flex-direction:column;gap:14px}.alert-box-error[data-v-a9a3ad9a]{background:#fef2f2;border:1px solid #fecaca;color:#b91c1c;padding:10px 12px;border-radius:8px;font-size:12.5px;font-weight:600;display:flex;align-items:center;gap:8px}.form-group[data-v-a9a3ad9a]{display:flex;flex-direction:column;gap:6px}.form-label[data-v-a9a3ad9a]{font-size:12.5px;font-weight:700;color:#334155}.req[data-v-a9a3ad9a]{color:#dc2626}.type-selector-grid[data-v-a9a3ad9a]{display:grid;grid-template-columns:1fr 1fr;gap:10px}.type-choice-card[data-v-a9a3ad9a]{display:flex;align-items:center;gap:10px;padding:12px;border-radius:12px;border:2px solid #e2e8f0;background:#fff;cursor:pointer;text-align:left;transition:all .2s ease}.type-choice-card[data-v-a9a3ad9a]:hover{border-color:#cbd5e1;background:#f8fafc}.type-choice-card.active[data-v-a9a3ad9a]{border-color:#047857;background:#f0fdf4;box-shadow:0 2px 8px #0478571f}.choice-icon-wrap[data-v-a9a3ad9a]{width:38px;height:38px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.choice-icon-wrap.izin-icon[data-v-a9a3ad9a]{background:#e0f2fe;color:#0284c7}.choice-icon-wrap.sakit-icon[data-v-a9a3ad9a]{background:#fee2e2;color:#dc2626}.choice-text[data-v-a9a3ad9a]{flex:1;min-width:0}.choice-title[data-v-a9a3ad9a]{font-size:14px;font-weight:800;color:#0f172a}.choice-desc[data-v-a9a3ad9a]{font-size:10.5px;color:#64748b;margin-top:1px;line-height:1.25}.radio-indicator[data-v-a9a3ad9a]{width:18px;height:18px;border-radius:50%;border:2px solid #cbd5e1;display:flex;align-items:center;justify-content:center;flex-shrink:0}.type-choice-card.active .radio-indicator[data-v-a9a3ad9a]{border-color:#047857}.radio-dot[data-v-a9a3ad9a]{width:9px;height:9px;border-radius:50%;background:#047857}.form-textarea[data-v-a9a3ad9a]{width:100%;padding:10px 12px;border-radius:10px;border:1.5px solid #cbd5e1;font-family:inherit;font-size:13px;color:#0f172a;outline:none;resize:vertical;box-sizing:border-box;transition:border-color .15s ease}.form-textarea[data-v-a9a3ad9a]:focus{border-color:#047857;box-shadow:0 0 0 3px #0478571a}.form-input[data-v-a9a3ad9a]{width:100%;padding:9px 12px;border-radius:10px;border:1.5px solid #cbd5e1;font-family:inherit;font-size:13px;color:#0f172a;outline:none;box-sizing:border-box;transition:border-color .15s ease}.form-input[data-v-a9a3ad9a]:focus{border-color:#047857;box-shadow:0 0 0 3px #0478571a}.notice-info-box[data-v-a9a3ad9a]{background:#f0fdf4;border:1px solid #bbf7d0;color:#166534;padding:10px 12px;border-radius:10px;font-size:11.5px;display:flex;align-items:center;gap:8px;line-height:1.4}.modal-footer[data-v-a9a3ad9a]{padding:14px 20px;background:#f8fafc;border-top:1px solid #f1f5f9;display:flex;justify-content:flex-end;gap:10px}.btn-cancel[data-v-a9a3ad9a]{padding:9px 16px;border-radius:10px;border:1px solid #cbd5e1;background:#fff;color:#475569;font-size:13px;font-weight:700;cursor:pointer;transition:all .15s ease}.btn-cancel[data-v-a9a3ad9a]:hover{background:#f1f5f9;color:#0f172a}.btn-submit[data-v-a9a3ad9a]{padding:9px 18px;border-radius:10px;border:none;background:#047857;color:#fff;font-size:13px;font-weight:700;cursor:pointer;display:flex;align-items:center;gap:8px;box-shadow:0 2px 6px #04785740;transition:all .15s ease}.btn-submit[data-v-a9a3ad9a]:hover:not(:disabled){background:#065f46}.btn-submit[data-v-a9a3ad9a]:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 480px){.type-selector-grid[data-v-a9a3ad9a]{grid-template-columns:1fr}}.teacher-portal-container[data-v-7351aa9c]{min-height:100vh;background-color:#f1f5f9;display:flex;flex-direction:column;font-family:var(--font-body, sans-serif)}.portal-main-content[data-v-7351aa9c]{flex:1;padding:16px;max-width:500px;width:100%;margin:0 auto;box-sizing:border-box;display:flex;flex-direction:column;gap:14px}.auth-stage[data-v-7351aa9c]{justify-content:center}.portal-nav-tabs[data-v-7351aa9c]{display:flex;background:#e2e8f0;padding:4px;border-radius:12px;gap:4px}.nav-tab-btn[data-v-7351aa9c]{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:10px 8px;border-radius:9px;border:none;background:transparent;font-size:12.5px;font-weight:700;color:#475569;cursor:pointer;transition:all .2s ease;position:relative}.nav-tab-btn.active[data-v-7351aa9c]{background:#fff;color:#0d3b2e;box-shadow:0 2px 8px #00000014}.tab-counter-badge[data-v-7351aa9c]{background:#047857;color:#fff;font-size:10px;font-weight:800;padding:1px 6px;border-radius:10px;margin-left:2px}.tab-content-wrapper[data-v-7351aa9c]{display:flex;flex-direction:column;gap:14px}.permit-actions-card[data-v-7351aa9c]{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:16px;display:flex;flex-direction:column;gap:12px;box-shadow:0 4px 14px #0000000a}.permit-actions-top[data-v-7351aa9c]{display:flex;align-items:center;justify-content:space-between;gap:12px}.permit-section-title[data-v-7351aa9c]{margin:0;font-size:14px;font-weight:800;color:#0f172a}.permit-section-sub[data-v-7351aa9c]{margin:2px 0 0;font-size:11.5px;color:#64748b;line-height:1.35}.btn-open-permit-modal[data-v-7351aa9c]{display:inline-flex;align-items:center;gap:6px;padding:9px 14px;background:#0d3b2e;color:#fff;border:none;border-radius:10px;font-size:12.5px;font-weight:800;cursor:pointer;white-space:nowrap;box-shadow:0 3px 10px #0d3b2e33;transition:all .15s ease;flex-shrink:0}.btn-open-permit-modal[data-v-7351aa9c]:hover{background:#092c22;transform:translateY(-1px)}.student-search-container[data-v-7351aa9c]{position:relative}.search-input-wrapper[data-v-7351aa9c]{position:relative;display:flex;align-items:center}.search-icon[data-v-7351aa9c]{position:absolute;left:12px;color:#94a3b8;pointer-events:none}.search-input[data-v-7351aa9c]{width:100%;padding:10px 36px;background:#f8fafc;border:1.5px solid #cbd5e1;border-radius:10px;font-size:12.5px;color:#1e293b;outline:none;transition:all .15s ease;box-sizing:border-box}.search-input[data-v-7351aa9c]:focus{background:#fff;border-color:#0d3b2e;box-shadow:0 0 0 3px #0d3b2e1f}.clear-search-btn[data-v-7351aa9c]{position:absolute;right:10px;background:transparent;border:none;color:#94a3b8;cursor:pointer;padding:3px;display:flex;align-items:center;justify-content:center}.search-results-dropdown[data-v-7351aa9c]{position:absolute;top:calc(100% + 4px);left:0;right:0;background:#fff;border:1px solid #cbd5e1;border-radius:10px;box-shadow:0 10px 25px #0000001f;z-index:100;max-height:220px;overflow-y:auto}.search-result-item[data-v-7351aa9c]{display:flex;align-items:center;gap:10px;padding:9px 12px;border-bottom:1px solid #f1f5f9;cursor:pointer;transition:background .15s ease}.search-result-item[data-v-7351aa9c]:last-child{border-bottom:none}.search-result-item[data-v-7351aa9c]:hover{background:#f8fafc}.mini-avatar[data-v-7351aa9c]{width:30px;height:30px;border-radius:8px;object-fit:cover}.mini-avatar-placeholder[data-v-7351aa9c]{width:30px;height:30px;border-radius:8px;background:#ecfdf5;display:flex;align-items:center;justify-content:center}.mini-meta[data-v-7351aa9c]{flex:1;min-width:0}.mini-name[data-v-7351aa9c]{font-size:12.5px;font-weight:700;color:#1e293b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mini-sub[data-v-7351aa9c]{font-size:11px;color:#64748b}.optional-scan-row[data-v-7351aa9c]{display:flex;justify-content:center;padding-top:2px}.btn-toggle-scan[data-v-7351aa9c]{background:transparent;border:none;color:#047857;font-size:11.5px;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;gap:6px;padding:4px 8px;border-radius:6px;transition:background .15s ease}.btn-toggle-scan[data-v-7351aa9c]:hover{background:#ecfdf5}.optional-scanner-container[data-v-7351aa9c]{margin-top:6px;animation:fadeIn-7351aa9c .2s ease-out}@keyframes fadeIn-7351aa9c{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.today-permits-card[data-v-7351aa9c]{background:#fff;border:1px solid #e2e8f0;border-radius:16px;overflow:hidden;box-shadow:0 4px 14px #0000000a}.permits-card-header[data-v-7351aa9c]{padding:12px 16px;background:#f8fafc;border-bottom:1px solid #e2e8f0;display:flex;align-items:center;justify-content:space-between}.card-header-title[data-v-7351aa9c]{font-size:13px;font-weight:800;color:#0f172a}.btn-refresh-permits[data-v-7351aa9c]{background:#fff;border:1px solid #cbd5e1;padding:4px 7px;border-radius:6px;cursor:pointer;color:#475569;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.btn-refresh-permits[data-v-7351aa9c]:hover:not(:disabled){background:#f1f5f9;color:#0d3b2e}.spin-anim[data-v-7351aa9c]{animation:spin-7351aa9c .8s linear infinite}@keyframes spin-7351aa9c{to{transform:rotate(360deg)}}.permits-count-pill[data-v-7351aa9c]{background:#ecfdf5;color:#065f46;font-size:11px;font-weight:700;padding:2px 8px;border-radius:8px;border:1px solid #a7f3d0}.permits-loading[data-v-7351aa9c],.permits-empty[data-v-7351aa9c]{padding:28px 16px;text-align:center;font-size:12px;color:#94a3b8;display:flex;flex-direction:column;align-items:center;justify-content:center}.permits-list[data-v-7351aa9c]{display:flex;flex-direction:column}.permit-item[data-v-7351aa9c]{padding:12px 16px;border-bottom:1px solid #f1f5f9;display:flex;flex-direction:column;gap:5px}.permit-item[data-v-7351aa9c]:last-child{border-bottom:none}.permit-item-top[data-v-7351aa9c]{display:flex;align-items:center;justify-content:space-between;gap:8px}.permit-student-name[data-v-7351aa9c]{font-size:13px;font-weight:800;color:#1e293b;display:flex;align-items:center;gap:6px}.permit-dept-tag[data-v-7351aa9c]{font-size:10.5px;font-weight:600;color:#475569;background:#f1f5f9;padding:1px 6px;border-radius:5px}.permit-time-badge[data-v-7351aa9c]{font-size:11px;font-weight:700;color:#047857;background:#ecfdf5;padding:2px 7px;border-radius:6px;display:inline-flex;align-items:center;gap:4px;white-space:nowrap}.permit-notes-box[data-v-7351aa9c]{font-size:11.5px;color:#475569;line-height:1.4;word-break:break-word}.teacher-self-permit-card[data-v-7351aa9c]{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:13px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px;box-shadow:0 2px 8px #00000008}.self-permit-info[data-v-7351aa9c]{flex:1;min-width:0}.self-permit-title[data-v-7351aa9c]{font-size:13px;font-weight:800;color:#0f172a}.self-permit-sub[data-v-7351aa9c]{font-size:11px;color:#64748b;margin-top:2px;line-height:1.35}.btn-trigger-self-permit[data-v-7351aa9c]{display:inline-flex;align-items:center;gap:6px;padding:8px 13px;background:#f8fafc;color:#0369a1;border:1.5px solid #bae6fd;border-radius:9px;font-size:12px;font-weight:700;cursor:pointer;white-space:nowrap;transition:all .15s ease;flex-shrink:0}.btn-trigger-self-permit[data-v-7351aa9c]:hover{background:#e0f2fe;border-color:#7dd3fc;transform:translateY(-1px)}.plakat-page-wrapper[data-v-2e400f4f]{min-height:100vh;background-color:#f1f5f9;display:flex;flex-direction:column}.plakat-topbar[data-v-2e400f4f]{background:#fff;border-bottom:1px solid #e2e8f0;padding:12px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px;box-shadow:0 2px 8px #0000000a;position:sticky;top:0;z-index:100;flex-wrap:wrap}.topbar-left[data-v-2e400f4f]{display:flex;align-items:center;gap:14px}.back-nav-btn[data-v-2e400f4f]{background:#f8fafc;border:1px solid #cbd5e1;color:#334155;border-radius:8px;padding:6px 12px;font-size:12px;font-weight:700;cursor:pointer;display:flex;align-items:center;gap:6px;transition:all .15s ease}.back-nav-btn[data-v-2e400f4f]:hover{background:#e2e8f0}.topbar-divider[data-v-2e400f4f]{width:1px;height:28px;background:#e2e8f0}.topbar-title[data-v-2e400f4f]{font-size:14px;font-weight:800;color:#0d3b2e}.topbar-sub[data-v-2e400f4f]{font-size:11px;color:#64748b}.topbar-actions[data-v-2e400f4f]{display:flex;align-items:center;gap:10px}.topbar-btn[data-v-2e400f4f]{border:none;border-radius:8px;padding:8px 14px;font-size:12px;font-weight:800;cursor:pointer;display:flex;align-items:center;gap:6px;text-decoration:none;transition:transform .1s ease}.topbar-btn[data-v-2e400f4f]:active{transform:scale(.97)}.topbar-btn.primary[data-v-2e400f4f]{background:#0d3b2e;color:#fff;border:1px solid #0d3b2e;box-shadow:0 2px 6px #0d3b2e40}.topbar-btn.primary[data-v-2e400f4f]:hover{background:#134e3f}.topbar-btn.secondary[data-v-2e400f4f]{background:#fff;color:#334155;border:1.5px solid #cbd5e1}.topbar-btn.secondary[data-v-2e400f4f]:hover{background:#f8fafc;border-color:#94a3b8}.plakat-main-canvas[data-v-2e400f4f]{flex:1;padding:30px 20px 50px;display:flex;justify-content:center;align-items:flex-start}@media print{.no-print[data-v-2e400f4f]{display:none!important}.plakat-page-wrapper[data-v-2e400f4f]{background:#fff!important;padding:0!important;margin:0!important}.plakat-main-canvas[data-v-2e400f4f]{padding:0!important;margin:0!important;display:block!important}}.tte-verify-page[data-v-f371e0e6]{min-height:100vh;background:radial-gradient(circle at 50% 0%,#0a3d31,#051a14,#020b08);color:#f1f5f9;font-family:Outfit,Inter,system-ui,-apple-system,sans-serif;display:flex;flex-direction:column}.verify-navbar[data-v-f371e0e6]{background:#08261ed9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid rgba(16,185,129,.25);padding:12px 24px;position:sticky;top:0;z-index:50}.verify-navbar-container[data-v-f371e0e6]{max-width:960px;margin:0 auto;display:flex;align-items:center;justify-content:space-between}.nav-brand-box[data-v-f371e0e6]{display:flex;align-items:center;gap:12px;text-decoration:none;color:inherit}.nav-logo-img[data-v-f371e0e6]{width:44px;height:44px;object-fit:contain;filter:drop-shadow(0 2px 8px rgba(0,0,0,.4))}.nav-brand-title[data-v-f371e0e6]{font-size:.98rem;font-weight:800;letter-spacing:.04em;color:#f8fafc}.nav-brand-sub[data-v-f371e0e6]{font-size:.68rem;color:#34d399;font-weight:600;letter-spacing:.05em}.btn-back-portal[data-v-f371e0e6]{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:8px;background:#ffffff14;border:1px solid rgba(255,255,255,.15);color:#cbd5e1;font-size:.82rem;font-weight:600;text-decoration:none;transition:all .2s}.btn-back-portal[data-v-f371e0e6]:hover{background:#10b98133;color:#34d399;border-color:#10b98166}.verify-main-container[data-v-f371e0e6]{flex:1;max-width:860px;width:100%;margin:32px auto;padding:0 16px}.verify-loading-card[data-v-f371e0e6]{background:#0f172ab3;border:1px solid rgba(16,185,129,.3);border-radius:18px;padding:60px 24px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:16px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.loading-spinner[data-v-f371e0e6]{width:50px;height:50px;border:4px solid rgba(16,185,129,.2);border-top-color:#10b981;border-radius:50%;animation:spin-f371e0e6 .8s linear infinite}@keyframes spin-f371e0e6{to{transform:rotate(360deg)}}.verify-loading-card h2[data-v-f371e0e6]{font-size:1.25rem;color:#f8fafc;margin:0}.verify-loading-card p[data-v-f371e0e6]{font-size:.88rem;color:#94a3b8;margin:0}.verify-card[data-v-f371e0e6]{background:#0d1624;border-radius:20px;border:1px solid #1e293b;overflow:hidden;box-shadow:0 20px 50px #00000080,0 0 40px #10b98114}.card-valid[data-v-f371e0e6]{border-color:#10b98166}.card-invalid[data-v-f371e0e6]{border-color:#ef444466}.status-top-banner[data-v-f371e0e6]{padding:28px 30px;display:flex;align-items:flex-start;gap:20px}.banner-valid[data-v-f371e0e6]{background:linear-gradient(135deg,#08261ef2,#0d3c30f2);border-bottom:1px solid rgba(16,185,129,.3)}.banner-invalid[data-v-f371e0e6]{background:linear-gradient(135deg,#450a0af2,#1e0a0af2);border-bottom:1px solid rgba(239,68,68,.3)}.banner-icon-box[data-v-f371e0e6]{width:64px;height:64px;border-radius:16px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.bg-emerald[data-v-f371e0e6]{background:#10b98133;border:2px solid rgba(16,185,129,.5);box-shadow:0 0 20px #10b9814d}.text-emerald[data-v-f371e0e6]{color:#34d399}.bg-red[data-v-f371e0e6]{background:#ef444433;border:2px solid rgba(239,68,68,.5)}.text-red[data-v-f371e0e6]{color:#f87171}.text-gold[data-v-f371e0e6]{color:#fbbf24}.banner-content[data-v-f371e0e6]{flex:1}.badge-status-group[data-v-f371e0e6]{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:8px}.badge-status-pill[data-v-f371e0e6]{display:inline-flex;align-items:center;gap:6px;font-size:.72rem;font-weight:800;letter-spacing:.05em;padding:4px 10px;border-radius:9999px;text-transform:uppercase}.badge-emerald[data-v-f371e0e6]{background:#10b98140;border:1px solid rgba(16,185,129,.6);color:#6ee7b7}.badge-gold[data-v-f371e0e6]{background:#f59e0b40;border:1px solid rgba(245,158,11,.6);color:#fde68a}.badge-red[data-v-f371e0e6]{background:#ef444440;border:1px solid rgba(239,68,68,.6);color:#fca5a5}.status-heading[data-v-f371e0e6]{font-size:1.45rem;font-weight:800;color:#f8fafc;margin:0 0 6px;letter-spacing:-.01em}.status-desc[data-v-f371e0e6]{font-size:.88rem;color:#cbd5e1;margin:0;line-height:1.5}.doc-header-card[data-v-f371e0e6]{margin:24px 30px;background:#0f172a99;border:1px solid rgba(16,185,129,.2);border-radius:14px;padding:20px}.doc-badge-seal[data-v-f371e0e6]{display:flex;align-items:center;gap:8px;font-size:.76rem;font-weight:800;color:#34d399;letter-spacing:.05em;margin-bottom:16px;padding-bottom:12px;border-bottom:1px dashed rgba(16,185,129,.2)}.doc-grid-info[data-v-f371e0e6]{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px 20px}.doc-info-item[data-v-f371e0e6]{display:flex;flex-direction:column;gap:4px}.item-label[data-v-f371e0e6]{font-size:.74rem;color:#64748b;text-transform:uppercase;letter-spacing:.03em}.item-value[data-v-f371e0e6]{font-size:.88rem;color:#e2e8f0;font-weight:500}.item-value-strong[data-v-f371e0e6]{font-size:.95rem;color:#f8fafc;font-weight:700}.item-value-green[data-v-f371e0e6]{font-size:.88rem;color:#34d399}.signers-section-wrapper[data-v-f371e0e6]{margin:0 30px 24px;display:flex;flex-direction:column;gap:16px}.section-title-bar[data-v-f371e0e6]{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px}.title-with-icon[data-v-f371e0e6]{display:flex;align-items:center;gap:8px}.title-with-icon h3[data-v-f371e0e6]{font-size:1.05rem;font-weight:700;color:#f8fafc;margin:0}.simple-signers-grid[data-v-f371e0e6]{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media (max-width: 640px){.simple-signers-grid[data-v-f371e0e6]{grid-template-columns:1fr}}.simple-signer-card[data-v-f371e0e6]{background:linear-gradient(135deg,#08261ebf,#0f172ad9);border:1px solid rgba(16,185,129,.35);border-radius:14px;padding:18px 20px;display:flex;flex-direction:column;gap:12px;box-shadow:0 4px 20px #0003}.signer-card-header[data-v-f371e0e6]{display:flex;align-items:center;justify-content:space-between}.signer-seal-icon[data-v-f371e0e6]{width:44px;height:44px;border-radius:10px;background:#10b98126;border:1px solid rgba(16,185,129,.4);display:flex;align-items:center;justify-content:center}.signer-badge-status[data-v-f371e0e6]{font-size:.72rem;font-weight:800;letter-spacing:.05em;padding:3px 8px;border-radius:9999px;background:#10b98133;border:1px solid rgba(16,185,129,.5);color:#6ee7b7}.signer-info-body[data-v-f371e0e6]{display:flex;flex-direction:column;gap:4px}.signer-simple-title[data-v-f371e0e6]{font-size:1.15rem;font-weight:800;color:#f8fafc;margin:0}.signer-simple-sub[data-v-f371e0e6]{font-size:.82rem;color:#94a3b8;margin:0}.signer-method-tag[data-v-f371e0e6]{margin-top:6px;font-size:.75rem;font-weight:600;color:#34d399}.signer-tabs-nav[data-v-f371e0e6]{display:flex;background:#162032;border:1px solid #1e293b;border-radius:10px;padding:3px;gap:4px}.tab-btn[data-v-f371e0e6]{display:inline-flex;align-items:center;gap:6px;background:transparent;border:none;color:#94a3b8;font-size:.78rem;font-weight:600;padding:6px 12px;border-radius:7px;cursor:pointer;transition:all .2s}.tab-btn[data-v-f371e0e6]:hover{color:#fff}.tab-btn.active[data-v-f371e0e6]{background:#08261e;color:#34d399;border:1px solid rgba(16,185,129,.4);box-shadow:0 2px 6px #0003}.signer-main-card[data-v-f371e0e6]{background:linear-gradient(135deg,#08261ebf,#0f172ad9);border:1px solid rgba(16,185,129,.35);border-radius:16px;padding:24px;display:flex;align-items:flex-start;gap:24px;box-shadow:0 8px 30px #00000040}.signer-card-left[data-v-f371e0e6]{flex-shrink:0}.signer-portrait-box[data-v-f371e0e6]{position:relative;width:100px;height:100px}.signer-portrait-img[data-v-f371e0e6]{width:100px;height:100px;border-radius:50%;object-fit:cover;border:3px solid #10b981;background:#0f172a;box-shadow:0 6px 18px #00000059}.signer-certified-seal[data-v-f371e0e6]{position:absolute;bottom:0;right:-4px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;font-size:10px;font-weight:900;padding:3px 8px;border-radius:9999px;border:2px solid #08261e;box-shadow:0 2px 8px #0000004d}.signer-card-details[data-v-f371e0e6]{flex:1;min-width:0}.signer-role-ribbon[data-v-f371e0e6]{display:flex;align-items:center;gap:8px;margin-bottom:6px}.badge-role[data-v-f371e0e6]{font-size:.76rem;font-weight:800;padding:3px 10px;border-radius:6px;text-transform:uppercase;letter-spacing:.04em}.role-gold[data-v-f371e0e6]{background:#f59e0b33;color:#fbbf24;border:1px solid rgba(245,158,11,.4)}.role-green[data-v-f371e0e6]{background:#10b98133;color:#34d399;border:1px solid rgba(16,185,129,.4)}.badge-active-tag[data-v-f371e0e6]{font-size:.68rem;font-weight:700;color:#94a3b8;letter-spacing:.05em}.signer-name-big[data-v-f371e0e6]{font-size:1.35rem;font-weight:800;color:#fff;margin:0 0 12px;line-height:1.3}.honorific-text[data-v-f371e0e6]{color:#38bdf8}.signer-credential-list[data-v-f371e0e6]{display:flex;flex-direction:column;gap:6px;font-size:.82rem}.cred-item[data-v-f371e0e6]{display:flex;align-items:baseline;gap:8px}.cred-label[data-v-f371e0e6]{color:#64748b;width:140px;flex-shrink:0}.cred-value[data-v-f371e0e6]{color:#e2e8f0}.verification-quote-box[data-v-f371e0e6]{margin-top:14px;background:#00000040;border-left:3px solid #10b981;padding:10px 14px;border-radius:0 8px 8px 0}.verification-quote-box p[data-v-f371e0e6]{margin:0;font-size:.8rem;color:#a7f3d0;font-style:italic;line-height:1.45}.co-signer-banner[data-v-f371e0e6]{background:#0f172a80;border:1px solid #1e293b;border-radius:12px;padding:12px 18px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.co-signer-info[data-v-f371e0e6]{display:flex;flex-direction:column;gap:2px}.co-signer-caption[data-v-f371e0e6]{font-size:.72rem;color:#64748b}.co-signer-name[data-v-f371e0e6]{font-size:.86rem;color:#f1f5f9}.btn-switch-co-signer[data-v-f371e0e6]{display:inline-flex;align-items:center;gap:6px;background:#1e293b;border:1px solid #334155;color:#38bdf8;padding:6px 12px;border-radius:8px;font-size:.78rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-switch-co-signer[data-v-f371e0e6]:hover{background:#334155;border-color:#38bdf8}.legal-notice-box[data-v-f371e0e6]{margin:0 30px 24px;background:#08261e66;border:1px solid rgba(16,185,129,.2);border-radius:12px;padding:16px 20px;display:flex;gap:14px;align-items:flex-start}.legal-icon[data-v-f371e0e6]{flex-shrink:0;margin-top:2px}.legal-text[data-v-f371e0e6]{font-size:.78rem;color:#94a3b8;line-height:1.5}.legal-text strong[data-v-f371e0e6]{color:#cbd5e1;display:block;margin-bottom:4px}.legal-text p[data-v-f371e0e6]{margin:0}.verify-footer-actions[data-v-f371e0e6]{padding:20px 30px;background:#09101b;border-top:1px solid #1e293b;display:flex;align-items:center;gap:12px;flex-wrap:wrap}.action-btn[data-v-f371e0e6]{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border-radius:10px;font-size:.84rem;font-weight:600;cursor:pointer;text-decoration:none;transition:all .2s}.btn-copy[data-v-f371e0e6]{background:#1e293b;border:1px solid #334155;color:#f1f5f9}.btn-copy[data-v-f371e0e6]:hover{background:#334155;border-color:#10b981}.btn-print[data-v-f371e0e6]{background:linear-gradient(135deg,#10b981,#059669);border:none;color:#fff;box-shadow:0 4px 12px #10b98140}.btn-print[data-v-f371e0e6]:hover{background:linear-gradient(135deg,#34d399,#10b981)}.btn-home[data-v-f371e0e6]{background:transparent;border:1px solid #334155;color:#94a3b8;margin-left:auto}.btn-home[data-v-f371e0e6]:hover{color:#fff;background:#1e293b}.invalid-details-box[data-v-f371e0e6]{margin:24px 30px;background:#0f172a99;border:1px solid rgba(239,68,68,.25);border-radius:12px;padding:16px 20px;display:flex;flex-direction:column;gap:8px}.detail-row[data-v-f371e0e6]{display:flex;gap:10px;font-size:.84rem}.detail-label[data-v-f371e0e6]{color:#94a3b8;width:140px}.detail-value[data-v-f371e0e6]{color:#f8fafc}.warning-callout[data-v-f371e0e6]{margin:0 30px 24px;background:#ef44441a;border-left:3px solid #ef4444;padding:12px 16px;border-radius:0 8px 8px 0;font-size:.82rem;color:#fca5a5;line-height:1.5}.warning-callout p[data-v-f371e0e6]{margin:0}.btn-home-cta[data-v-f371e0e6]{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;background:#1e293b;border:1px solid #334155;color:#fff;border-radius:10px;text-decoration:none;font-size:.86rem;font-weight:600}.btn-home-cta[data-v-f371e0e6]:hover{background:#334155}.verify-footer[data-v-f371e0e6]{padding:30px 20px;text-align:center;margin-top:auto}.footer-inner p[data-v-f371e0e6]{margin:0;font-size:.78rem;color:#64748b}.footer-sub[data-v-f371e0e6]{font-size:.72rem;color:#475569;margin-top:4px!important}.font-mono[data-v-f371e0e6]{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.font-bold[data-v-f371e0e6]{font-weight:700}.font-semibold[data-v-f371e0e6]{font-weight:600}@media (max-width: 768px){.status-top-banner[data-v-f371e0e6]{flex-direction:column;padding:20px}.signer-main-card[data-v-f371e0e6]{flex-direction:column;align-items:center;text-align:center;padding:20px}.signer-role-ribbon[data-v-f371e0e6]{justify-content:center}.signer-credential-list[data-v-f371e0e6]{text-align:left}.doc-header-card[data-v-f371e0e6],.signers-section-wrapper[data-v-f371e0e6],.legal-notice-box[data-v-f371e0e6],.verify-footer-actions[data-v-f371e0e6]{margin-left:16px;margin-right:16px;padding-left:16px;padding-right:16px}.btn-home[data-v-f371e0e6]{margin-left:0;width:100%;justify-content:center}}@media print{.no-print[data-v-f371e0e6]{display:none!important}.tte-verify-page[data-v-f371e0e6]{background:#fff!important;color:#000!important}.verify-card[data-v-f371e0e6]{border:1px solid #cccccc!important;box-shadow:none!important;background:#fff!important}.status-top-banner[data-v-f371e0e6]{background:#f8fafc!important;border-bottom:2px solid #059669!important}.status-heading[data-v-f371e0e6],.signer-name-big[data-v-f371e0e6],.item-value-strong[data-v-f371e0e6]{color:#000!important}.item-label[data-v-f371e0e6],.cred-label[data-v-f371e0e6],.meta-label[data-v-f371e0e6]{color:#555!important}.signer-main-card[data-v-f371e0e6],.doc-header-card[data-v-f371e0e6]{background:#fff!important;border:1px solid #dddddd!important}.verification-quote-box[data-v-f371e0e6]{background:#f0fdf4!important;color:#065f46!important}.legal-notice-box[data-v-f371e0e6]{background:#f8fafc!important;border:1px solid #cccccc!important}}
