:root{--navy:#23384f;--navy-deep:#182b40;--gold:#d3b878;--blue:#2e72af;--ink:#24364a;--muted:#627487;--line:#dce4ec;--canvas:#D5D6EA;--danger:#a42c36;--radius:14px}*{box-sizing:border-box}body{margin:0;background:var(--canvas);color:var(--ink);font:15px/1.6 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input,textarea,select{font:inherit}button{cursor:pointer;border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:8px;padding:9px 15px;font-size:13px;font-weight:650;transition:background .15s,transform .15s}button:hover:not(:disabled){background:#edf3fa}button:disabled{opacity:.5;cursor:default}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #4c93d2;outline-offset:3px}button.primary{background:var(--blue);border-color:var(--blue);color:white}button.primary:hover:not(:disabled){background:#245c90}button.danger{background:var(--danger);border-color:var(--danger);color:#fff}.quiet-danger{color:var(--danger)}[hidden],.hidden{display:none!important}.view{display:none}.view.active{display:revert}h1,h2,h3,h4,p{margin-top:0}h2{font-size:30px;line-height:1.25;letter-spacing:-.7px;margin-bottom:12px}h3{font-size:20px;line-height:1.4;margin-bottom:10px}h4{font-size:17px;margin-bottom:20px}.app-header{background:gray;color:#fff;padding:20px max(24px,calc((100vw - 1140px)/2));display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:3px solid var(--gold)}nav{display:flex;gap:8px}nav button{border:1px solid transparent;background:transparent;color:#d9e3ec;padding:10px 14px}nav button.active{background:#ffffff12;border-color:#ffffff30;color:#fff}nav button:hover:not(:disabled){background:#ffffff20;color:#fff}#app-container{min-height:calc(100vh - 50px)}.view-heading{margin-bottom:28px}.view-heading>p:not(.eyebrow){max-width:680px;color:var(--muted)}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:750;color:#8b723b;margin-bottom:10px}.local-badge{display:inline-flex;align-items:center;gap:7px;border:1px solid #d9e4db;color:#43694b;background:#edf5ef;border-radius:20px;padding:4px 11px;font-size:11px}.local-badge:before{content:'';width:6px;height:6px;background:#4f8b61;border-radius:50%}.actions{display:flex;flex-wrap:wrap;gap:9px;margin:0 0 18px}.actions button:first-child{background:var(--navy);border-color:var(--navy);color:#fff}.library-tools{display:flex;align-items:end;justify-content:space-between;gap:15px;margin-bottom:24px}.search-box{font-size:11px;color:var(--muted);font-weight:650;max-width:450px;flex:1}.search-box input{display:block;width:100%;margin-top:5px;padding:10px 13px;background:#fff;border:1px solid var(--line);border-radius:8px;font-size:14px}.item-list{list-style:none;padding:0;display:grid;gap:18px}.item-list li{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:25px;box-shadow:0 4px 12px #21365004;display:flex;align-items:center;justify-content:space-between;gap:20px;min-width:0}.paper-details{min-width:0}.paper-details h3{margin-top:12px}.paper-details p{color:var(--muted);font-size:13px;margin-bottom:15px;max-width:620px;overflow-wrap:anywhere}.subject-chip{display:inline-block;font-size:10px;font-weight:700;color:#6f5c2e;background:#f6f0df;border-radius:5px;padding:3px 8px;letter-spacing:.3px}.paper-meta{color:var(--muted);font-size:12px}.card-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;flex-shrink:0}.card-actions .btn-start{grid-column:1/-1}.back-btn{background:transparent;border-color:transparent;padding-left:0;color:var(--muted);margin-bottom:20px}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:7px;font-size:12px;font-weight:650;color:#52667b}.form-group input,.form-group textarea,.form-group select{display:block;width:100%;background:#fff;border:1px solid #cfdbe6;border-radius:8px;padding:12px;color:var(--ink)}textarea{resize:vertical;line-height:1.7}#exam-form{max-width:900px}.form-actions{display:flex;gap:9px;margin-top:26px}.question-editor-item{border:1px solid var(--line);background:#fff;border-radius:var(--radius);padding:26px;margin:20px 0}.question-editor-item .q-points{max-width:170px}.remove-btn{font-size:12px}.app-footer{max-width:1140px;padding:20px 26px;margin:auto;border-top:1px solid var(--line);color:var(--muted);font-size:10px;letter-spacing:.2px}#attempt-list li>div:first-child{min-width:0;overflow-wrap:anywhere}#attempt-list li>div:last-child{display:flex;gap:8px;flex-shrink:0}
@media(max-width:700px){.app-header{padding:16px;gap:13px;align-items:flex-start;flex-direction:column}nav{width:100%}nav button{flex:1;font-size:12px;padding:8px}#app-container{padding:28px 16px}h2{font-size:26px}.item-list li{padding:21px;align-items:stretch;flex-direction:column;gap:18px}.card-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.card-actions .btn-start{grid-column:auto}.library-tools{align-items:stretch;flex-direction:column}.search-box{max-width:none}.question-editor-item{padding:21px 17px}#attempt-list li>div:last-child{flex-wrap:wrap}.app-footer{font-size:9px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

/* Premium Sidebar Hover */
.exam-list li.exam-row {
    transition: all 0.25s cubic-bezier(0.2, 0.8, 0.2, 1);
}
.exam-list li.exam-row:hover {
    background: rgba(255, 255, 255, 0.06) !important;
    padding-left: 20px !important; /* Smooth indent effect */
    border-left-color: rgba(165, 93, 53, 0.3) !important;
}

/* Looping Bell Animation */
@keyframes ring {
  0% { transform: rotate(0); }
  5% { transform: rotate(15deg); }
  10% { transform: rotate(-10deg); }
  15% { transform: rotate(5deg); }
  20% { transform: rotate(-5deg); }
  25% { transform: rotate(0); }
  100% { transform: rotate(0); }
}
.animated-bell {
  transform-origin: top center;
  animation: ring 3s infinite ease-in-out;
}

/* --- Premium Animations & Transitions --- */

@keyframes fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes fadeSlideUp {
    from { opacity: 0; transform: translateY(15px); }
    to { opacity: 1; transform: translateY(0); }
}

@keyframes popIn {
    from { opacity: 0; transform: scale(0.97) translateY(10px); }
    to { opacity: 1; transform: scale(1) translateY(0); }
}

/* Base View Transitions */
.view.active {
    animation: fadeIn 0.3s ease-out;
}

/* Exam Dashboard Main Window */
#examplify-main {
    animation: fadeSlideUp 0.5s cubic-bezier(0.2, 0.8, 0.2, 1);
}

/* Preflight & Overlay Modals */
#pf-screen-password, 
#pf-screen-warning, 
#pf-screen-notice, 
#pf-screen-stop, 
#pf-screen-final,
#uploadCompleteScreen {
    animation: popIn 0.4s cubic-bezier(0.2, 0.8, 0.2, 1) !important;
}

/* Smooth Inputs */
input, textarea, select {
    transition: all 0.2s cubic-bezier(0.2, 0.8, 0.2, 1);
}
input:focus:not([type="checkbox"]), textarea:focus {
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(0,0,0,0.15);
}

/* Enhancing Button Hover */
button {
    transition: all 0.2s cubic-bezier(0.2, 0.8, 0.2, 1) !important;
}
button:hover:not(:disabled) {
    transform: translateY(-1px);
    box-shadow: 0 4px 10px rgba(0,0,0,0.15);
}
button:active:not(:disabled) {
    transform: translateY(1px);
    box-shadow: none;
}

/* Home Menu Dropdown Hover */
.hm-item:hover {
    background: #f0f5fa;
    color: #0078d4;
}
\n@keyframes fadeOutDown {\n    from { opacity: 1; transform: translate(-50%, 0); }\n    to { opacity: 0; transform: translate(-50%, 15px); }\n}\n\n@keyframes fadeOutUp {\n    from { opacity: 1; transform: translate(-50%, 0) scale(1); }\n    to { opacity: 0; transform: translate(-50%, -15px) scale(0.95); }\n}\n\n@keyframes fadeInDown {\n    from { opacity: 0; transform: translate(-50%, -15px) scale(0.95); }\n    to { opacity: 1; transform: translate(-50%, 0) scale(1); }\n}\n
