/* Additive UI: existing 40.42 classes and styles are not overridden. */
#ke-native-panel{margin:26px 30px 20px;scroll-margin-top:16px}
#ke-native-panel .ken-tabs{display:flex;flex-wrap:wrap;gap:9px;margin:14px 0}
#ke-native-panel .ken-tabs button{background:#eef0fc;color:#41497b;padding:11px 13px}
#ke-native-panel .ken-tabs button.ken-selected{background:#6258e8;color:#fff}
#ke-native-panel .ken-muted,#ke-native-panel small{font-size:12px;color:#66718e;line-height:1.7}
#ke-native-panel .ken-flex{display:flex;gap:10px;flex-wrap:wrap;align-items:center;justify-content:space-between}
#ke-native-panel label{font-size:13px;font-weight:700;display:block;margin:11px 0 7px}
#ke-native-panel select,#ke-native-panel input:not([type=checkbox]),#ke-native-panel textarea{display:block;width:100%;border:1px solid #c9d2e8;border-radius:9px;padding:10px;font:inherit;max-width:100%;color:#28345b;background:white}
#ke-native-panel textarea{resize:vertical}
#ke-native-panel .ken-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
#ke-native-panel .ken-q,#ke-native-panel .ken-sched-row{background:#f8f9ff;border:1px solid #e4e8f3;border-radius:12px;padding:14px;margin:12px 0}
#ke-native-panel .ken-q .ken-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
#ke-native-panel .ken-record{border:1px solid #e7eaf3;border-radius:10px;padding:12px;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;align-items:center;margin:9px 0;background:#fafbff}
#ke-native-panel .ken-record strong,#ke-native-panel .ken-record small{display:block}
#ke-native-panel button.ken-remove{background:#ffe8ed;color:#9c3046;padding:7px 12px;font-size:12px}
#ke-native-panel .ken-sched-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;align-items:end}
#ke-native-panel .ken-sched-row label{margin:4px 0 5px}
#ke-native-panel .ken-sched-row input[type=checkbox]{width:auto}
#ke-native-panel .ken-status{border-radius:9px;background:#f0f3ff;padding:12px;color:#34518b;margin:12px 0}
#ke-native-panel [hidden],#ke-native-ujian[hidden]{display:none!important}
@media(max-width:700px){#ke-native-panel{margin:18px 14px}#ke-native-panel .ken-grid,#ke-native-panel .ken-q .ken-options,#ke-native-panel .ken-sched-row{grid-template-columns:1fr}}
#ke-native-ujian{max-width:1000px;margin:16px auto;padding:10px 0}
#ke-native-ujian h2{margin:16px 0 8px;font-size:20px}
#ke-native-ujian .kn-muted{color:#647089;line-height:1.6;font-size:13px}
#ke-native-ujian .kn-card{background:white;border:1px solid #e6eaf4;border-radius:13px;padding:15px;display:flex;gap:12px;justify-content:space-between;align-items:center;flex-wrap:wrap;margin:11px 0}
#ke-native-ujian .kn-card strong,#ke-native-ujian .kn-card small{display:block;line-height:1.6}
#ke-native-ujian .kn-card small{color:#66718e;font-size:12px}
#ke-native-ujian .kn-timer{position:sticky;top:0;z-index:9;background:#252e60;color:white;text-align:center;border-radius:12px;font-variant-numeric:tabular-nums;font-size:clamp(25px,5vw,40px);font-weight:800;letter-spacing:.02em;padding:18px 12px;margin:14px 0}
#ke-native-ujian .kn-question{border:1px solid #e1e7f3;border-radius:12px;background:white;padding:15px;margin:12px 0}
#ke-native-ujian .kn-question strong{display:block;margin:0 0 15px;line-height:1.6}
#ke-native-ujian .kn-option{display:block;border:1px solid #e9ebf3;padding:10px;border-radius:8px;margin:8px 0;cursor:pointer}
#ke-native-ujian .kn-option input{margin-right:10px}
#ke-native-ujian textarea{display:block;width:100%;border-radius:10px;border:1px solid #c9d2e8;padding:12px;font:inherit;min-height:140px;resize:vertical}
#ke-native-ujian .kn-grade{font-size:30px;font-weight:800;color:#22664d;margin:14px 0}
#ke-native-ujian .kn-status{color:#34518b;font-size:13px;line-height:1.7}
#ke-native-ujian button{margin:6px 4px 6px 0}

/* Tahap 41-C revisi notifikasi: status kontras dan pesan mengambang yang tidak hilang saat scroll. */
#ke-native-panel .ken-status{border:1px solid #bcd2f7;border-left:5px solid #2462a6;background:#edf4ff;color:#173b69;font-weight:650;line-height:1.6}
#ke-native-panel .ken-status--success{border-color:#8bccab;border-left-color:#18834d;background:#eaf8f0;color:#155c38}
#ke-native-panel .ken-status--error{border-color:#edacb2;border-left-color:#c6283b;background:#fff0f1;color:#93202d}
#ke-native-panel #ken-soal{scroll-margin-top:24px}
#ke-native-panel .ken-draft-actions{display:flex;flex-direction:column;align-items:flex-start;gap:6px;max-width:260px}
#ke-native-panel .ken-inline-feedback{font-size:12px;font-weight:700;line-height:1.45;color:#34518b}
#ke-native-panel .ken-inline-success{color:#11683c}
#ke-native-panel .ken-inline-error{color:#ae2232}
#ke-native-panel .ken-inline-feedback[hidden]{display:none!important}
#ke41c-notice-toast[hidden]{display:none!important}
#ke41c-notice-toast{box-sizing:border-box;position:fixed;top:20px;right:20px;z-index:2147483000;display:flex;align-items:flex-start;gap:12px;width:min(470px,calc(100vw - 28px));padding:15px 15px 15px 17px;border:2px solid #9bbbe7;border-left:7px solid #2462a6;border-radius:13px;box-shadow:0 14px 38px rgba(20,38,74,.28);background:#eaf3ff;color:#183b6a;font-size:14px;font-weight:750;line-height:1.5;overflow-wrap:anywhere}
#ke41c-notice-toast.ken-toast--success{background:#e5f7ed;color:#155932;border-color:#7cc49b;border-left-color:#18834d}
#ke41c-notice-toast.ken-toast--error{background:#fff0f0;color:#982031;border-color:#e5a0a7;border-left-color:#c6283b}
#ke41c-notice-toast .ken-toast-symbol{width:25px;height:25px;display:flex;justify-content:center;align-items:center;flex:none;border-radius:50%;background:currentColor;color:inherit;font-size:18px;font-weight:900;position:relative}
#ke41c-notice-toast .ken-toast-symbol{background:rgba(255,255,255,.8);border:1px solid currentColor}
#ke41c-notice-toast .ken-toast-text{flex:1;min-width:0;padding-top:2px}
#ke41c-notice-toast .ken-toast-dismiss{flex:none;display:flex;align-items:center;justify-content:center;margin:-7px -8px -3px 0;padding:0;width:32px;height:32px;background:transparent!important;border:0!important;box-shadow:none!important;color:inherit!important;font-size:25px;line-height:1;cursor:pointer}
#ke41c-notice-toast .ken-toast-dismiss:hover{background:rgba(0,0,0,.07)!important}
#ke41c-notice-toast .ken-toast-dismiss:focus-visible{outline:3px solid currentColor;outline-offset:2px}
@media(max-width:700px){#ke41c-notice-toast{top:12px;right:12px;padding:13px;width:calc(100vw - 24px);font-size:13px}}

/* T152 FINALISASI LOKAL — indikator penguncian waktu habis. */
#ke-native-ujian #kn-submit.kn-deadline-locked, #ke-native-ujian #kn-submit.kn-deadline-locked:disabled {background:#e8ebef!important;color:#5d6675!important;border:1px solid #bcc4cf!important;opacity:1!important;cursor:not-allowed!important;box-shadow:none!important;}
#ke-native-ujian .kn-timer{background:#12583b;}
#ke-native-panel .ken-status:empty{display:none!important;}

/* Tahap 152+: manajemen jadwal Guru — hijau-putih, aman dibaca di HP. */
#ke-native-panel .ken-manage{margin:17px 0;padding:18px;border:1px solid #b7d8c5;border-radius:14px;background:#f5fbf7}
#ke-native-panel .ken-manage h4{margin:0 0 7px;color:#155d3d}
#ke-native-panel .ken-manage-selection{padding:11px 12px;border-radius:9px;background:white;border:1px solid #c9dfd1;font-size:13px;font-weight:700;color:#234f39}
#ke-native-panel .ken-manage-actions{justify-content:flex-start;margin-top:13px}
#ke-native-panel #ken-manage-save{background:#1b7048;color:#fff}
#ke-native-panel .ken-danger{background:#fff3f3!important;color:#a62b32!important;border:1px solid #e7aab0!important}
#ke-native-panel .ken-manage button:disabled{opacity:.47;cursor:not-allowed}
#ke-native-panel .ken-manage[hidden]{display:none!important}
