*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;scroll-behavior:smooth}body{min-height:100vh;line-height:1.5;text-rendering:optimizeSpeed;font-family:var(--font-sans);background-color:var(--color-bg);color:var(--color-text-main);-webkit-font-smoothing:antialiased}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit;color:inherit}button{cursor:pointer;border:none;background:none}a{color:inherit;text-decoration:none}ul,ol{list-style:none}table{border-collapse:collapse;width:100%}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}:root{--color-bg: #f0f7ff;--color-surface: #ffffff;--color-surface-hover: #e6f2fd;--color-surface-muted: #f4f9ff;--color-border: #cfe2f5;--color-border-hover: #b4d3f2;--color-border-focus: #0284c7;--color-text-main: #0c2340;--color-text-muted: #2d4665;--color-text-subtle: #527397;--color-text-inverse: #ffffff;--color-primary: #0284c7;--color-primary-hover: #0369a1;--color-primary-dark: #0c4a6e;--color-primary-light: #e0f2fe;--color-primary-subtle: #f0f9ff;--color-navy: #1e3a8a;--color-navy-dark: #172554;--color-navy-light: #dbeafe;--color-accent: #38bdf8;--color-accent-hover: #0ea5e9;--color-accent-light: #e0f2fe;--color-accent-subtle: #f0f9ff;--color-accent-border: #bae6fd;--color-success: #15803d;--color-success-bg: #dcfce7;--color-success-border: #86efac;--color-warning: #b45309;--color-warning-bg: #fef3c7;--color-warning-border: #fcd34d;--color-danger: #b91c1c;--color-danger-bg: #fee2e2;--color-danger-border: #fca5a5;--color-info: #0284c7;--color-info-bg: #e0f2fe;--color-info-border: #7dd3fc;--font-sans: "Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--radius-xs: 4px;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-full: 9999px;--shadow-xs: 0 1px 2px 0 rgba(12, 35, 64, .04);--shadow-sm: 0 1px 3px 0 rgba(12, 35, 64, .06), 0 1px 2px -1px rgba(12, 35, 64, .04);--shadow-md: 0 4px 6px -1px rgba(12, 35, 64, .07), 0 2px 4px -2px rgba(12, 35, 64, .04);--shadow-lg: 0 10px 15px -3px rgba(12, 35, 64, .09), 0 4px 6px -4px rgba(12, 35, 64, .03);--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-normal: .2s cubic-bezier(.4, 0, .2, 1);--focus-ring: 0 0 0 3px rgba(2, 132, 199, .25);--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px)}.app-container{min-height:100vh;display:flex;flex-direction:column}.main-content{flex:1;display:flex;flex-direction:column}h1,h2,h3,h4,h5,h6{color:var(--color-text-main);font-weight:700;line-height:1.25}p{color:var(--color-text-muted)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-weight:600;font-size:var(--text-sm);padding:.625rem 1.125rem;min-height:42px;border-radius:var(--radius-md);transition:background-color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast);border:1.5px solid transparent;-webkit-user-select:none;user-select:none;white-space:nowrap}.btn:focus-visible{outline:none;box-shadow:var(--focus-ring)}.btn:disabled{opacity:.55;cursor:not-allowed;pointer-events:none}.btn-primary{background-color:var(--color-primary);color:var(--color-text-inverse);box-shadow:0 1px 2px #1e3a8a26}.btn-primary:hover:not(:disabled){background-color:var(--color-primary-hover)}.btn-secondary{background-color:var(--color-surface);color:var(--color-text-main);border-color:var(--color-border)}.btn-secondary:hover:not(:disabled){background-color:var(--color-surface-hover);border-color:var(--color-border-hover)}.btn-outline{background-color:transparent;color:var(--color-primary);border-color:var(--color-primary)}.btn-outline:hover:not(:disabled){background-color:var(--color-primary-subtle)}.btn-warning{background-color:var(--color-warning-bg);color:var(--color-warning);border-color:var(--color-warning-border)}.btn-warning:hover:not(:disabled){background-color:#fde68a}.btn-danger{background-color:var(--color-danger);color:var(--color-text-inverse)}.btn-danger:hover:not(:disabled){background-color:#991b1b}.btn-sm{min-height:34px;padding:.35rem .75rem;font-size:var(--text-xs)}.btn-lg{min-height:48px;padding:.75rem 1.75rem;font-size:var(--text-base)}.form-group{display:flex;flex-direction:column;gap:.4rem;margin-bottom:1.25rem}.form-label{font-size:var(--text-sm);font-weight:600;color:var(--color-text-main)}.form-label .required{color:var(--color-danger);margin-left:.25rem}.form-input,.form-select,.form-textarea{width:100%;padding:.65rem .95rem;border:1.5px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-surface);color:var(--color-text-main);font-size:var(--text-base);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--color-border-focus);box-shadow:var(--focus-ring)}.form-input::placeholder,.form-textarea::placeholder{color:var(--color-text-subtle)}.form-input.is-error,.form-textarea.is-error{border-color:var(--color-danger)}.form-error{font-size:var(--text-xs);font-weight:500;color:var(--color-danger);margin-top:.25rem}.form-helper{font-size:var(--text-xs);color:var(--color-text-subtle);margin-top:.25rem}.badge{display:inline-flex;align-items:center;gap:.375rem;padding:.25rem .65rem;border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:600;line-height:1}.badge-neutral{background-color:var(--color-surface-muted);color:var(--color-text-muted);border:1px solid var(--color-border)}.badge-primary{background-color:var(--color-primary-light);color:var(--color-primary);border:1px solid var(--color-accent-border)}.badge-success{background-color:var(--color-success-bg);color:var(--color-success);border:1px solid var(--color-success-border)}.badge-warning{background-color:var(--color-warning-bg);color:var(--color-warning);border:1px solid var(--color-warning-border)}.badge-danger{background-color:var(--color-danger-bg);color:var(--color-danger);border:1px solid var(--color-danger-border)}.badge-info{background-color:var(--color-info-bg);color:var(--color-info);border:1px solid var(--color-info-border)}.card{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1.5rem;box-shadow:var(--shadow-xs)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#0f172a73;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;padding:1rem;z-index:1000;opacity:1;transition:opacity var(--transition-normal)}.modal-card{background-color:var(--color-surface);border-radius:var(--radius-xl);border:1px solid var(--color-border);box-shadow:var(--shadow-lg);width:100%;max-width:560px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden}.modal-header{padding:1.25rem 1.75rem;border-bottom:1px solid var(--color-border);display:flex;align-items:center;justify-content:space-between}.modal-title{font-size:var(--text-lg);font-weight:700;color:var(--color-text-main)}.modal-body{padding:1.75rem;overflow-y:auto}.modal-footer{padding:1.125rem 1.75rem;border-top:1px solid var(--color-border);background-color:var(--color-surface-muted);display:flex;align-items:center;justify-content:flex-end;gap:.75rem}.toast-container{position:fixed;bottom:1.5rem;right:1.5rem;display:flex;flex-direction:column;gap:.5rem;z-index:2000;pointer-events:none}.toast{pointer-events:auto;min-width:280px;max-width:420px;padding:.95rem 1.35rem;border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:500;box-shadow:var(--shadow-md);display:flex;align-items:center;gap:.75rem;background-color:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text-main);animation:toast-in .2s ease-out}.toast-success{border-left:4px solid var(--color-success)}.toast-warning{border-left:4px solid var(--color-warning)}.toast-error{border-left:4px solid var(--color-danger)}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.empty-state{text-align:center;padding:3rem 1.5rem;display:flex;flex-direction:column;align-items:center;justify-content:center}.empty-state-icon{width:48px;height:48px;color:var(--color-text-subtle);margin-bottom:1rem}.empty-state-title{font-size:var(--text-base);font-weight:700;color:var(--color-text-main);margin-bottom:.25rem}.empty-state-desc{font-size:var(--text-sm);color:var(--color-text-muted);max-width:340px;margin-bottom:1.25rem;line-height:1.5}.student-portal{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;background:linear-gradient(180deg,#0f21409e,#0f172ac7),url(/images/labschool-cibubur-campus.jpg) center center / cover no-repeat;position:relative}.student-navbar{height:64px;background:#fffffff5;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:2px solid var(--color-accent-border);padding:0 1.75rem;display:flex;align-items:center;justify-content:space-between;box-shadow:0 4px 20px -4px #00000040;position:relative;z-index:10}.student-navbar-brand{display:flex;align-items:center;gap:.875rem;min-width:0}.student-logo-img{height:38px;width:auto;max-width:175px;object-fit:contain;display:block;flex-shrink:0}.student-school-badge{font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--color-primary);background-color:var(--color-primary-light);border:1px solid var(--color-accent-border);padding:.25rem .625rem;border-radius:var(--radius-xs)}.student-app-title{font-size:var(--text-base);font-weight:700;color:var(--color-text-main);letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.student-link-teacher{font-size:var(--text-sm);color:var(--color-text-muted);font-weight:600;padding:.5rem .875rem;border-radius:var(--radius-md);border:1px solid transparent;transition:all var(--transition-fast);white-space:nowrap}.student-link-teacher:hover{color:var(--color-primary);background-color:var(--color-primary-subtle);border-color:var(--color-primary-light)}@media(max-width:640px){.student-navbar{height:56px;padding:0 1rem}.student-logo-img{height:30px;max-width:120px}.student-app-title{font-size:.875rem;max-width:140px}.student-link-teacher{padding:.35rem .6rem;font-size:var(--text-xs)}}.student-content-container{flex:1;display:flex;align-items:center;justify-content:center;padding:2.5rem 1.25rem calc(2.5rem + var(--safe-bottom))}.student-card-wrapper{width:100%;max-width:520px;background:#fffffffa;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.85);border-top:5px solid var(--color-primary);border-radius:var(--radius-xl);padding:2.25rem 2rem;box-shadow:0 25px 50px -12px #00000073}.student-card-wrapper .card{border:none;background:transparent;box-shadow:none;padding:0;margin:0}.student-step-header{text-align:center;margin-bottom:1.75rem}.student-step-header h1{font-size:1.625rem;font-weight:700;color:var(--color-text-main);margin-bottom:.375rem;letter-spacing:-.02em}.student-step-header p{font-size:var(--text-base);color:var(--color-text-muted);line-height:1.5}@media(max-width:640px){.student-content-container{padding:1.25rem .875rem calc(1.25rem + var(--safe-bottom))}.student-card-wrapper{padding:1.5rem 1.15rem;border-radius:var(--radius-lg);box-shadow:0 15px 35px -8px #00000059}.student-step-header{margin-bottom:1.25rem}.student-step-header h1{font-size:1.35rem}.student-step-header p{font-size:.9rem}}.grade-grid{display:grid;grid-template-columns:1fr;gap:1rem}@media(min-width:480px){.grade-grid{grid-template-columns:repeat(3,1fr)}}.grade-btn{background-color:var(--color-surface);border:1.5px solid var(--color-border);border-radius:var(--radius-lg);padding:1.5rem 1rem;min-height:52px;text-align:center;transition:all var(--transition-fast);box-shadow:var(--shadow-xs);display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;-webkit-tap-highlight-color:transparent}.grade-btn:hover{border-color:var(--color-accent);background-color:var(--color-accent-subtle);box-shadow:var(--shadow-sm);transform:translateY(-2px)}.grade-btn:active{transform:scale(.98)}.grade-btn:focus-visible{outline:none;box-shadow:var(--focus-ring);border-color:var(--color-primary)}.grade-label{display:block;font-size:var(--text-xs);text-transform:uppercase;font-weight:600;letter-spacing:.05em;color:var(--color-text-subtle);margin-bottom:.25rem}.grade-number{display:block;font-size:1.5rem;font-weight:700;color:var(--color-primary)}@media(max-width:480px){.grade-btn{padding:1.15rem 1rem;flex-direction:row;justify-content:space-between}.grade-label{margin-bottom:0}.grade-number{font-size:1.25rem}}.class-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.875rem;margin-top:1rem}@media(min-width:380px)and (max-width:640px){.class-grid{grid-template-columns:repeat(3,1fr);gap:.65rem}}@media(min-width:641px){.class-grid{grid-template-columns:repeat(4,1fr)}}.class-btn{background-color:var(--color-surface);border:1.5px solid var(--color-border);border-radius:var(--radius-md);height:52px;min-height:48px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:var(--text-base);color:var(--color-text-main);transition:all var(--transition-fast);box-shadow:var(--shadow-xs);cursor:pointer;-webkit-tap-highlight-color:transparent}.class-btn:hover{border-color:var(--color-accent);background-color:var(--color-accent-subtle);color:var(--color-primary);transform:translateY(-1px)}.class-btn:active{transform:scale(.97)}.class-btn:focus-visible{outline:none;box-shadow:var(--focus-ring)}.form-input{font-size:16px!important}.confirmation-details{background-color:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1.25rem 1.5rem;margin-bottom:1.5rem}.confirmation-row{display:flex;justify-content:space-between;align-items:center;padding:.625rem 0;border-bottom:1px dashed var(--color-border);font-size:var(--text-sm);gap:.75rem}.confirmation-row:last-child{border-bottom:none}.confirmation-label{color:var(--color-text-subtle);flex-shrink:0}.confirmation-value{font-weight:600;color:var(--color-text-main);text-align:right;word-break:break-word}@media(max-width:480px){.confirmation-details{padding:1rem;margin-bottom:1.15rem}.confirmation-row{font-size:var(--text-xs);padding:.5rem 0}}.finish-card{text-align:center;padding:2.75rem 2.25rem;box-shadow:0 4px 20px #0000000f;border:1px solid var(--color-border);border-radius:var(--radius-lg)}@media(max-width:640px){.finish-card{padding:1.75rem 1.15rem}}.finish-status-pill{display:inline-flex;align-items:center;gap:.5rem;background-color:#ecfdf5;color:#065f46;border:1px solid #A7F3D0;padding:.35rem .85rem;border-radius:9999px;font-size:var(--text-xs);font-weight:700;margin-bottom:1.25rem;letter-spacing:.01em}.finish-icon-wrap{width:68px;height:68px;background-color:#059669;color:#fff;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;margin:0 auto 1.25rem;box-shadow:0 0 0 5px #ecfdf5,0 4px 12px #05966940}.finish-icon-wrap svg{width:34px;height:34px}.finish-title{font-size:1.65rem;font-weight:800;color:var(--color-text-main);margin-bottom:.4rem;letter-spacing:-.015em}.finish-subtitle{color:var(--color-text-muted);font-size:var(--text-sm);margin-bottom:1.75rem;line-height:1.5}.finish-info-box{background-color:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:1.15rem 1.5rem;margin-bottom:1.5rem;text-align:left}.finish-notice-box{background-color:#f8fafc;border:1px solid #E2E8F0;border-left:4px solid #0F294A;border-radius:var(--radius-sm);padding:.875rem 1.15rem;font-size:var(--text-xs);color:#475569;margin-bottom:1.75rem;text-align:left;line-height:1.55}.finish-score-box{border-radius:var(--radius-md);padding:1.5rem 1.25rem;margin-bottom:1.5rem;text-align:center;box-shadow:0 2px 8px #0000000a}.finish-score-box.score-pass{background:#f0fdf4;border:2px solid #86EFAC}.finish-score-box.score-fail{background:#fef2f2;border:2px solid #FECACA}.finish-score-tag{display:inline-flex;align-items:center;gap:.35rem;font-size:var(--text-xs);font-weight:800;text-transform:uppercase;letter-spacing:.04em;padding:.3rem .85rem;border-radius:9999px;margin-bottom:.65rem}.score-pass .finish-score-tag{background:#dcfce7;color:#15803d;border:1px solid #BBF7D0}.score-fail .finish-score-tag{background:#f1f5f9;color:#475569;border:1px solid #CBD5E1}.finish-score-display{display:flex;align-items:baseline;justify-content:center;gap:.4rem;margin-bottom:.85rem}.finish-score-val{font-size:3.5rem;font-weight:900;line-height:1}.score-pass .finish-score-val{color:#047857}.score-fail .finish-score-val{color:#dc2626}.finish-score-max{font-size:1.35rem;font-weight:700;color:#64748b}.finish-score-meta{display:flex;align-items:center;justify-content:center;gap:1.75rem;padding-top:.85rem;border-top:1px solid rgba(0,0,0,.08)}.finish-meta-item{display:flex;flex-direction:column;gap:.2rem}.finish-meta-label{font-size:var(--text-xs);color:#64748b;font-weight:600}.finish-meta-value{font-size:var(--text-sm);font-weight:800;color:#1e293b}.score-pass .finish-val-highlight{color:#047857}.score-fail .finish-val-highlight{color:#dc2626}.finish-meta-separator{width:1px;height:28px;background:#0000001f}.finish-essay-pending-box{background:#fffbeb;border:1px solid #FDE68A;border-radius:var(--radius-md);padding:1.25rem;margin-bottom:1.5rem;text-align:center}.finish-pending-badge{display:inline-flex;align-items:center;gap:.4rem;font-size:var(--text-xs);font-weight:700;color:#92400e;background:#fef3c7;padding:.3rem .75rem;border-radius:9999px;margin-bottom:.65rem}.finish-pending-text{font-size:var(--text-xs);color:#78350f;line-height:1.55;margin:0}@media(max-width:640px){.finish-title{font-size:1.35rem}.finish-info-box{padding:1rem}.finish-score-val{font-size:2.75rem}.finish-score-box{padding:1.25rem .85rem}.finish-score-meta{gap:1rem}}.btn-finish-home{width:100%;display:inline-flex;align-items:center;justify-content:center;gap:.65rem;background:#0f294a;color:#fff!important;font-size:1rem;font-weight:700;letter-spacing:.01em;padding:.95rem 1.75rem;border-radius:var(--radius-md);border:1px solid #0A1E36;box-shadow:0 4px 12px #0f294a38;transition:background-color .18s ease,transform .18s ease,box-shadow .18s ease;cursor:pointer;-webkit-tap-highlight-color:transparent}.btn-finish-home:hover{background:#183c66;transform:translateY(-2px);box-shadow:0 6px 18px #0f294a52}.btn-finish-home:active{transform:translateY(0);box-shadow:0 2px 6px #0f294a33}.cbt-app{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;background-color:var(--color-bg)}.cbt-header{position:sticky;top:0;z-index:100;min-height:64px;background-color:var(--color-surface);border-bottom:1px solid var(--color-border);padding:.5rem 1.75rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;box-shadow:var(--shadow-xs)}.cbt-header-left{display:flex;align-items:center;gap:.875rem;min-width:0;flex-shrink:1}.student-logo-img{height:34px;width:auto;max-width:145px;object-fit:contain;flex-shrink:0}.cbt-header-title-group{display:flex;flex-direction:column;gap:.1rem;min-width:0}.cbt-exam-title{font-size:var(--text-base);font-weight:700;color:var(--color-primary);line-height:1.25;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cbt-student-info{font-size:var(--text-xs);color:var(--color-text-muted);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cbt-header-right{display:flex;align-items:center;gap:.75rem;flex-shrink:0}.cbt-save-indicator{display:inline-flex;align-items:center;gap:.375rem;font-size:var(--text-xs);font-weight:600;padding:.35rem .65rem;border-radius:var(--radius-full);transition:all var(--transition-fast);white-space:nowrap}.cbt-save-saved{color:var(--color-success);background-color:var(--color-success-bg);border:1px solid var(--color-success-border)}.cbt-save-saving{color:var(--color-accent);background-color:var(--color-accent-subtle);border:1px solid var(--color-accent-border)}.cbt-save-error{color:var(--color-danger);background-color:var(--color-danger-bg);border:1px solid var(--color-danger-border)}.cbt-timer-badge{display:inline-flex;align-items:center;gap:.45rem;padding:.4rem .85rem;border-radius:var(--radius-md);background-color:var(--color-primary-subtle);border:1.5px solid var(--color-primary-light);font-family:var(--font-mono);font-size:.95rem;font-weight:700;color:var(--color-primary);letter-spacing:.06em;white-space:nowrap}.cbt-timer-badge.is-urgent{background-color:var(--color-danger-bg);border-color:var(--color-danger-border);color:var(--color-danger);animation:pulse-urgent 1s infinite alternate}@keyframes pulse-urgent{0%{opacity:.9}to{opacity:1;transform:scale(1.02)}}@media(max-width:768px){.cbt-header{min-height:56px;padding:.5rem 1rem;gap:.5rem}.cbt-header-left{gap:.625rem}.student-logo-img{height:28px!important;max-width:110px!important}.cbt-exam-title{font-size:.875rem;max-width:170px}.cbt-student-info{font-size:11px;max-width:170px}.cbt-header-right{gap:.4rem}.cbt-timer-badge{padding:.35rem .6rem;font-size:.85rem;gap:.35rem}.cbt-save-indicator{padding:.3rem .5rem;font-size:11px}}@media(max-width:480px){.student-logo-img{height:24px!important;max-width:90px!important}.cbt-exam-title{font-size:.82rem;max-width:120px}.cbt-student-info{font-size:10px;max-width:120px}.cbt-save-indicator .cbt-save-text{display:none}.cbt-timer-badge{padding:.3rem .5rem;font-size:.8rem}}.cbt-layout{flex:1;display:flex;max-width:1240px;width:100%;margin:0 auto;padding:1.75rem 1.25rem;gap:1.75rem;align-items:flex-start;position:relative}@media(max-width:1024px){.cbt-layout{flex-direction:column;padding:1rem .875rem;gap:1rem;align-items:stretch}}.cbt-question-area{flex:1;min-width:0;display:flex;flex-direction:column;background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs);overflow:hidden}@media(max-width:768px){.cbt-question-area{border-radius:var(--radius-md)}}.cbt-question-header{padding:1rem 1.75rem;border-bottom:1px solid var(--color-border);display:flex;align-items:center;justify-content:space-between;background-color:var(--color-surface-muted);gap:.75rem;flex-wrap:wrap}.cbt-qhead-meta{display:flex;align-items:center;gap:.875rem;flex-wrap:wrap}.cbt-question-number{font-size:var(--text-base);font-weight:700;color:var(--color-primary)}.cbt-qtotal{font-weight:500;color:var(--color-text-muted);font-size:var(--text-sm)}.cbt-qbadges{display:inline-flex;gap:.4rem;align-items:center}.cbt-palette-toggle-btn{display:none;align-items:center;gap:.45rem;font-size:var(--text-xs);font-weight:700;padding:.42rem .75rem;border-radius:var(--radius-md);background-color:var(--color-surface);border:1.5px solid var(--color-border);color:var(--color-text-main);transition:all var(--transition-fast);cursor:pointer;box-shadow:var(--shadow-xs)}.cbt-palette-toggle-btn:hover{background-color:var(--color-surface-hover);border-color:var(--color-primary);color:var(--color-primary)}.cbt-palette-toggle-btn:active{transform:scale(.98)}.cbt-palette-counter{background-color:var(--color-primary-light);color:var(--color-primary-dark);font-size:10.5px;font-weight:700;padding:.15rem .4rem;border-radius:var(--radius-full)}@media(max-width:1024px){.cbt-palette-toggle-btn{display:inline-flex}}@media(max-width:640px){.cbt-question-header{padding:.75rem 1rem}.cbt-question-number{font-size:.95rem}}.cbt-question-body{padding:1.75rem;flex:1}@media(max-width:768px){.cbt-question-body{padding:1.15rem 1rem}}.cbt-question-text{font-size:1.125rem;line-height:1.65;color:var(--color-text-main);margin-bottom:1.75rem;white-space:pre-line;font-weight:500}@media(max-width:768px){.cbt-question-text{font-size:1.025rem;line-height:1.55;margin-bottom:1.25rem}}.cbt-question-image-wrap{margin-bottom:1.25rem;text-align:center}.cbt-question-image-wrap img{max-width:100%;height:auto;max-height:360px;object-fit:contain;border-radius:var(--radius-md);border:1.5px solid var(--color-border);box-shadow:var(--shadow-sm);display:inline-block}@media(max-width:768px){.cbt-question-image-wrap img{max-height:260px}}.cbt-options-list{display:flex;flex-direction:column;gap:.875rem}.cbt-option-card{display:flex;align-items:center;gap:1rem;padding:.875rem 1.25rem;min-height:58px;border:1.5px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-surface);cursor:pointer;transition:all var(--transition-fast);-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.cbt-option-card:hover{border-color:var(--color-accent);background-color:var(--color-accent-subtle)}.cbt-option-card:active{transform:scale(.995);background-color:var(--color-surface-hover)}.cbt-option-card.is-selected{border-color:var(--color-primary);background-color:var(--color-primary-subtle);box-shadow:0 0 0 1px var(--color-primary)}.cbt-option-radio{width:32px;height:32px;border-radius:var(--radius-full);border:2px solid var(--color-border-hover);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:var(--text-sm);color:var(--color-text-subtle);flex-shrink:0;transition:all var(--transition-fast);background-color:var(--color-surface)}.cbt-option-card:hover .cbt-option-radio{border-color:var(--color-accent);color:var(--color-accent)}.cbt-option-card.is-selected .cbt-option-radio{border-color:var(--color-primary);background-color:var(--color-primary);color:var(--color-text-inverse)}.cbt-option-text{flex:1;font-size:var(--text-base);color:var(--color-text-main);line-height:1.5}@media(max-width:768px){.cbt-options-list{gap:.65rem}.cbt-option-card{padding:.75rem 1rem;min-height:52px;gap:.75rem}.cbt-option-radio{width:28px;height:28px;font-size:var(--text-xs)}.cbt-option-text{font-size:.95rem}}.cbt-essay-container{display:flex;flex-direction:column;gap:.625rem}.cbt-essay-textarea{width:100%;min-height:240px;padding:1.125rem;border:1.5px solid var(--color-border);border-radius:var(--radius-md);font-family:inherit;font-size:16px;line-height:1.65;resize:vertical;color:var(--color-text-main);background-color:var(--color-surface);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.cbt-essay-textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:var(--focus-ring)}.cbt-essay-footer{display:flex;justify-content:space-between;align-items:center;font-size:var(--text-xs);color:var(--color-text-subtle);font-weight:500;gap:.5rem}@media(max-width:640px){.cbt-essay-textarea{min-height:180px;padding:.875rem}.cbt-essay-footer{flex-direction:column;align-items:flex-start;gap:.25rem}}.cbt-footer{padding:1.125rem 1.75rem;border-top:1px solid var(--color-border);background-color:var(--color-surface-muted);display:flex;align-items:center;justify-content:space-between;gap:.875rem}@media(max-width:768px){.cbt-footer{position:sticky;bottom:0;z-index:90;background-color:#fffffffa;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-top:1px solid var(--color-border);box-shadow:0 -4px 16px #0c234014;padding:.65rem .875rem calc(.65rem + var(--safe-bottom));display:grid;grid-template-columns:1fr auto 1.25fr;gap:.5rem;align-items:center}.cbt-footer .btn{height:46px;padding:0 .75rem;font-size:var(--text-xs);font-weight:700;white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;gap:.35rem}#btn-flag-q{padding:0 .65rem}}@media(max-width:380px){.cbt-footer .btn{padding:0 .45rem;font-size:11px;gap:.2rem}.cbt-footer .btn svg{width:15px;height:15px}}.cbt-palette-drawer-overlay{display:none}@media(max-width:1024px){.cbt-palette-drawer-overlay{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background-color:#0c234073;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);z-index:110;opacity:0;pointer-events:none;transition:opacity .25s ease}.cbt-palette-drawer-overlay.is-open{opacity:1;pointer-events:auto}}.cbt-palette-sidebar{width:310px;flex-shrink:0;display:flex;flex-direction:column;gap:1rem;position:sticky;top:80px}.cbt-palette-card{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1.25rem;box-shadow:var(--shadow-xs)}.cbt-palette-header{font-size:var(--text-sm);font-weight:700;color:var(--color-text-main);margin-bottom:1rem;display:flex;align-items:center;justify-content:space-between;gap:.5rem}.btn-close-palette{display:none;align-items:center;justify-content:center;width:34px;height:34px;border-radius:var(--radius-full);background-color:var(--color-surface-hover);color:var(--color-text-main);border:1px solid var(--color-border);cursor:pointer;transition:all var(--transition-fast)}.btn-close-palette:hover{background-color:var(--color-primary-light);color:var(--color-primary-dark)}@media(max-width:1024px){.cbt-palette-sidebar{position:fixed;top:0;right:0;bottom:0;width:340px;max-width:88vw;height:100%;z-index:120;transform:translate(100%);transition:transform .28s cubic-bezier(.16,1,.3,1);box-shadow:-8px 0 28px #0c234033;overflow-y:auto;background-color:var(--color-surface);padding:1.25rem 1rem calc(1.25rem + var(--safe-bottom));border-left:1px solid var(--color-border)}.cbt-palette-sidebar.is-open{transform:translate(0)}.cbt-palette-card{border:none;padding:0;box-shadow:none}.btn-close-palette{display:inline-flex}}.cbt-palette-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:.5rem}.cbt-num-btn{height:46px;min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:700;transition:all var(--transition-fast);border:1.5px solid var(--color-border);background-color:var(--color-surface);color:var(--color-text-main);cursor:pointer;-webkit-tap-highlight-color:transparent}.cbt-num-btn:active{transform:scale(.95)}.cbt-num-btn.status-unanswered{border-color:var(--color-border-hover);background-color:var(--color-surface);color:var(--color-text-main)}.cbt-num-btn.status-unanswered:hover{background-color:var(--color-surface-hover);border-color:var(--color-accent)}.cbt-num-btn.status-answered{background-color:var(--color-success);border-color:var(--color-success);color:var(--color-text-inverse)}.cbt-num-btn.status-answered:hover{background-color:#166534}.cbt-num-btn.status-flagged{background-color:var(--color-warning);border-color:var(--color-warning);color:var(--color-text-inverse)}.cbt-num-btn.status-flagged:hover{background-color:#92400e}.cbt-num-btn.is-active{outline:3px solid var(--color-primary);outline-offset:2px;font-weight:800}.cbt-palette-legend{margin-top:1.25rem;padding-top:1rem;border-top:1px solid var(--color-border);display:grid;grid-template-columns:1fr 1fr;gap:.625rem}.legend-item{display:flex;align-items:center;gap:.5rem;font-size:var(--text-xs);font-weight:500;color:var(--color-text-muted)}.legend-swatch{width:14px;height:14px;border-radius:var(--radius-xs);flex-shrink:0}.legend-swatch.unanswered{background-color:var(--color-surface);border:1.5px solid var(--color-border-hover)}.legend-swatch.answered{background-color:var(--color-success)}.legend-swatch.flagged{background-color:var(--color-warning)}.legend-swatch.active{background-color:var(--color-surface);border:2px solid var(--color-primary)}.review-stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.875rem;margin-bottom:1.25rem}@media(max-width:480px){.review-stats-grid{gap:.5rem}}.review-stat-box{padding:1.125rem .75rem;border-radius:var(--radius-md);text-align:center;border:1px solid var(--color-border)}@media(max-width:480px){.review-stat-box{padding:.875rem .4rem}}.review-stat-box.answered{background-color:var(--color-success-bg);border-color:var(--color-success-border);color:var(--color-success)}.review-stat-box.unanswered{background-color:var(--color-surface-muted);border-color:var(--color-border);color:var(--color-text-muted)}.review-stat-box.flagged{background-color:var(--color-warning-bg);border-color:var(--color-warning-border);color:var(--color-warning)}.review-stat-num{font-size:1.75rem;font-weight:800;line-height:1;margin-bottom:.35rem}@media(max-width:480px){.review-stat-num{font-size:1.4rem}}.review-stat-label{font-size:var(--text-xs);font-weight:600}.unanswered-alert{padding:.875rem 1.125rem;background-color:var(--color-danger-bg);border:1px solid var(--color-danger-border);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--color-danger);margin-bottom:1rem;display:flex;align-items:center;gap:.625rem;font-weight:500}.teacher-login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem 1.5rem;background:linear-gradient(135deg,#0f2140a6,#0f172ad1),url(/images/labschool-cibubur-campus.jpg) center center / cover no-repeat fixed;position:relative;overflow:hidden}.teacher-login-card{width:100%;max-width:440px;background:#fffffffa;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid rgba(255,255,255,.85);border-top:5px solid var(--color-primary);border-radius:var(--radius-xl);padding:2.75rem 2.25rem;box-shadow:0 25px 50px -12px #00000080;position:relative;z-index:2}.teacher-login-header{text-align:center;margin-bottom:2rem;display:flex;flex-direction:column;align-items:center}.teacher-login-logo{height:52px;width:auto;max-width:225px;object-fit:contain;margin-bottom:1.25rem;display:block}.teacher-login-title{font-size:1.45rem;font-weight:700;color:var(--color-text-main);margin-bottom:.35rem;letter-spacing:-.01em}.teacher-login-subtitle{font-size:var(--text-xs);color:var(--color-text-muted)}.password-input-wrap{position:relative;display:flex;align-items:center}.password-input-wrap .form-input{padding-right:2.75rem}.btn-password-toggle{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);background:none;border:none;padding:.35rem;color:var(--color-text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-xs);transition:color var(--transition-fast)}.btn-password-toggle:hover{color:var(--color-primary)}.brand-logo-img{height:38px;width:auto;max-width:175px;object-fit:contain;display:block}.teacher-app-shell{display:flex;min-height:100vh;background-color:var(--color-bg)}.teacher-sidebar{width:265px;flex-shrink:0;background-color:var(--color-surface);border-right:1px solid var(--color-border);display:flex;flex-direction:column;position:sticky;top:0;height:100vh;z-index:50;transition:width .22s cubic-bezier(.4,0,.2,1),transform var(--transition-normal);overflow:hidden}@media(max-width:1024px){.teacher-sidebar{position:fixed;transform:translate(-100%);box-shadow:var(--shadow-lg)}.teacher-sidebar.is-open{transform:translate(0)}}.teacher-sidebar-backdrop{display:none}@media(max-width:1024px){.teacher-sidebar-backdrop{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a73;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:49;opacity:0;transition:opacity var(--transition-normal)}.teacher-sidebar-backdrop.is-open{display:block;opacity:1}}.mobile-sidebar-close{display:none;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-sm);color:var(--color-text-muted);background:transparent;border:1px solid var(--color-border);cursor:pointer;transition:all var(--transition-fast)}.mobile-sidebar-close:hover{background-color:var(--color-surface-hover);color:var(--color-danger)}@media(max-width:1024px){.mobile-sidebar-close{display:inline-flex;margin-left:auto}}.teacher-sidebar-brand{height:auto;min-height:64px;padding:1.25rem 1.25rem 1rem;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--color-border);transition:padding .22s ease}.brand-info-wrap{display:flex;flex-direction:column;gap:.35rem;overflow:hidden}.teacher-brand-school{font-size:11px;font-weight:700;color:var(--color-primary);text-transform:uppercase;letter-spacing:.06em}.teacher-brand-app{font-size:11px;font-weight:700;color:var(--color-primary);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap}.teacher-nav-list{padding:1.25rem .875rem;flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:.35rem}.teacher-nav-item{display:flex;align-items:center;gap:.75rem;padding:.65rem .875rem;border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:600;color:var(--color-text-muted);transition:all var(--transition-fast);cursor:pointer;border-left:3px solid transparent;white-space:nowrap}.teacher-nav-item:hover{background-color:var(--color-surface-hover);color:var(--color-primary)}.teacher-nav-item.is-active{background-color:var(--color-primary-subtle);color:var(--color-primary);border-left-color:var(--color-primary)}.teacher-nav-badge{margin-left:auto;font-size:var(--text-xs);padding:.15rem .5rem;border-radius:var(--radius-full);background-color:var(--color-warning-bg);color:var(--color-warning);font-weight:700}.teacher-sidebar-footer{padding:1rem 1.25rem;border-top:1px solid var(--color-border);display:flex;align-items:center;justify-content:space-between;gap:.5rem;transition:padding .22s ease}.teacher-profile-summary{display:flex;flex-direction:column;overflow:hidden}.teacher-name-label{font-size:var(--text-sm);font-weight:700;color:var(--color-text-main);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.teacher-role-label{font-size:var(--text-xs);color:var(--color-text-subtle)}@media(min-width:1025px){.teacher-app-shell.sidebar-compact .teacher-sidebar{width:72px}.teacher-app-shell.sidebar-compact .teacher-sidebar-brand{padding:1rem .5rem;justify-content:center}.teacher-app-shell.sidebar-compact .brand-info-wrap{align-items:center}.teacher-app-shell.sidebar-compact .brand-logo-img{max-width:36px;height:36px;object-fit:contain}.teacher-app-shell.sidebar-compact .teacher-brand-app{display:none}.teacher-app-shell.sidebar-compact .teacher-nav-list{padding:1.25rem .5rem;align-items:center}.teacher-app-shell.sidebar-compact .teacher-nav-item{justify-content:center;width:46px;height:44px;padding:0;border-left-width:0;border-radius:var(--radius-md);position:relative}.teacher-app-shell.sidebar-compact .teacher-nav-item span:not(.teacher-nav-badge){display:none}.teacher-app-shell.sidebar-compact .teacher-nav-badge{position:absolute;top:4px;right:4px;padding:.1rem .35rem;font-size:10px;margin-left:0}.teacher-app-shell.sidebar-compact .teacher-sidebar-footer{padding:1rem .5rem;justify-content:center}.teacher-app-shell.sidebar-compact .teacher-profile-summary{display:none}}.teacher-workspace{flex:1;display:flex;flex-direction:column;min-width:0}.teacher-topbar{position:sticky;top:0;z-index:45;height:64px;background-color:#fffffff2;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--color-border);padding:0 1.75rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;box-shadow:0 2px 8px -2px #0f294a12;transition:background-color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast)}.teacher-sidebar-toggle{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:var(--radius-md);background-color:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text-muted);cursor:pointer;transition:all var(--transition-fast);padding:0;flex-shrink:0}.teacher-sidebar-toggle:hover{background-color:var(--color-surface-hover);color:var(--color-primary);border-color:var(--color-primary-subtle);box-shadow:0 2px 6px #0f294a14}.teacher-sidebar-toggle:active{transform:scale(.95)}.teacher-sidebar-toggle.is-active{background-color:var(--color-primary-subtle);color:var(--color-primary);border-color:var(--color-accent-border)}.teacher-sidebar-toggle svg{width:20px;height:20px}.teacher-topbar-title{font-size:1.125rem;font-weight:700;color:var(--color-text-main)}.teacher-content-area{flex:1;padding:2rem 1.75rem;max-width:1360px;width:100%;margin:0 auto}@media(max-width:768px){.teacher-content-area{padding:1rem}}.metrics-grid{display:grid;grid-template-columns:repeat(1,1fr);gap:1.25rem;margin-bottom:1.75rem}@media(min-width:640px){.metrics-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.metrics-grid{grid-template-columns:repeat(4,1fr)}}.metric-card{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1.35rem 1.5rem;box-shadow:var(--shadow-xs);display:flex;flex-direction:column;gap:.5rem}.metric-header{display:flex;align-items:center;justify-content:space-between;color:var(--color-primary);font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.05em}.metric-value{font-size:2.125rem;font-weight:800;color:var(--color-text-main);line-height:1}.metric-desc{font-size:var(--text-xs);color:var(--color-text-subtle)}.table-container{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs);overflow:hidden}.table-responsive{width:100%;overflow-x:auto}.data-table{width:100%;border-collapse:collapse;font-size:var(--text-sm);text-align:left}.data-table th{background-color:var(--color-surface-muted);color:var(--color-text-muted);font-weight:700;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.04em;padding:.85rem 1.125rem;border-bottom:1px solid var(--color-border);white-space:nowrap}.data-table td{padding:.95rem 1.125rem;border-bottom:1px solid var(--color-border);color:var(--color-text-main);vertical-align:middle}.data-table tbody tr:last-child td{border-bottom:none}.data-table tbody tr:hover{background-color:var(--color-surface-hover)}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.25rem;flex-wrap:wrap}.toolbar-group{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.grading-split-container{display:grid;grid-template-columns:1fr;gap:1.5rem}@media(min-width:960px){.grading-split-container{grid-template-columns:1fr 1fr}}.grading-student-panel{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1.5rem;display:flex;flex-direction:column;gap:1.25rem}.grading-rubric-panel{background-color:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1.5rem;display:flex;flex-direction:column;gap:1.25rem}.grading-score-input-wrap{display:flex;align-items:center;gap:.75rem;margin-top:.5rem}.grading-score-input{width:90px;font-size:var(--text-lg);font-weight:700;text-align:center;padding:.5rem}.error-bar-bg{width:100%;height:8px;background-color:var(--color-surface-muted);border-radius:var(--radius-full);overflow:hidden;margin-top:.35rem}.error-bar-fill{height:100%;border-radius:var(--radius-full);transition:width var(--transition-normal)}.data-table-compact{table-layout:auto;width:100%}.data-table-compact th{padding:.75rem .65rem;font-size:.75rem}.data-table-compact td{padding:.75rem .65rem}.question-workspace{display:flex;flex-direction:column;gap:1.25rem;width:100%}.question-workspace-header{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1.25rem 1.5rem;box-shadow:var(--shadow-xs);display:flex;flex-direction:column;gap:1rem}.question-item-card{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1.25rem 1.5rem;box-shadow:var(--shadow-xs);display:flex;flex-direction:column;gap:.85rem;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.question-item-card:hover{border-color:var(--color-primary-light);box-shadow:var(--shadow-sm)}.question-item-card.is-mc{border-left:4px solid var(--color-primary)}.question-item-card.is-essay{border-left:4px solid var(--color-warning)}.question-image-preview-wrap{margin:.5rem 0;max-width:480px}.question-image-preview-img{max-height:220px;max-width:100%;object-fit:contain;border-radius:var(--radius-md);border:1px solid var(--color-border);background-color:var(--color-surface-muted);display:block}.image-uploader-box{background-color:var(--color-surface-muted);border:1.5px dashed var(--color-border);border-radius:var(--radius-md);padding:1rem;transition:border-color var(--transition-fast),background-color var(--transition-fast)}.image-uploader-box:hover{border-color:var(--color-primary);background-color:var(--color-surface-hover)}@keyframes spin-refresh{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.is-spinning{animation:spin-refresh .75s linear infinite;display:inline-flex}.live-dot{width:8px;height:8px;border-radius:50%;background-color:var(--color-text-subtle);transition:all var(--transition-normal);flex-shrink:0}.live-dot.is-active{background-color:#10b981!important;box-shadow:0 0 0 3px #10b98140;animation:live-pulse 2s infinite ease-in-out}@keyframes live-pulse{0%{transform:scale(.95);box-shadow:0 0 #10b98199}70%{transform:scale(1.08);box-shadow:0 0 0 6px #10b98100}to{transform:scale(.95);box-shadow:0 0 #10b98100}}
