.global-modal.info .modal-header .modal-title{color:var(--info-color,#17a2b8)}.global-modal.success .modal-header .modal-title{color:var(--success-color,#28a745)}.global-modal.error .modal-header .modal-title{color:var(--error-color,#dc3545)}.global-modal.warning .modal-header .modal-title{color:var(--warning-color,#ffc107)}.global-modal .global-modal-content{display:flex;flex-direction:column;align-items:center;text-align:center;padding:1rem;gap:1.5rem}.global-modal .global-modal-content .icon-wrapper{font-size:3.5rem;display:flex;align-items:center;justify-content:center}.global-modal .global-modal-content .icon-wrapper.info{color:var(--info-color,#17a2b8)}.global-modal .global-modal-content .icon-wrapper.success{color:var(--success-color,#28a745)}.global-modal .global-modal-content .icon-wrapper.error{color:var(--error-color,#dc3545)}.global-modal .global-modal-content .icon-wrapper.warning{color:var(--warning-color,#ffc107)}.global-modal .global-modal-content .message{font-size:1.125rem;line-height:1.6;color:var(--text-primary);width:100%}.global-modal .global-modal-content .global-modal-input-container{margin-top:1rem;width:100%}.global-modal .global-modal-content .global-modal-input-container .global-modal-input{width:100%;padding:.75rem 1rem;border:1px solid var(--border-color,#ddd);border-radius:8px;font-size:1rem;transition:border-color .2s}.global-modal .global-modal-content .global-modal-input-container .global-modal-input:focus{outline:none;border-color:var(--primary-color,#3498db);box-shadow:0 0 0 2px rgba(52,152,219,.2)}.global-modal .global-modal-footer{display:flex;justify-content:flex-end;gap:.75rem;width:100%}:root{--card-radius:12px;--font-xs:0.75rem;--font-sm:0.8125rem;--font-base:0.9375rem;--font-lg:1.0625rem;--font-xl:1.25rem;--font-2xl:1.5rem;--font-3xl:1.875rem;--light-blue:#009dff;--light-blue-secondary:#22d3ee;--bg-primary:#ffffff;--bg-surface:#ffffff;--bg-secondary:#f8f9fa;--bg-tertiary:#f1f1f3;--text-primary:#0f172a;--text-secondary:#64748b;--text-tertiary:#94a3b8;--border-color:#e5e7eb;--header-bg:rgba(255,255,255,0.95);--header-bg-scrolled:rgba(255,255,255,0.95);--shadow:rgba(0,0,0,0.05);--modal-overlay:rgba(0,0,0,0.35);--primary-color:#009dff;--primary-color-light:#22d3ee;--primary-color-dark:#008afb;--primary-color-rgb:9,161,255;--primary-rgb:9,161,255;--secondary-color:#22d3ee;--secondary-rgb:34,211,238;--bg-card:#ffffff;--bg-input:#f8fafc;--bg-disabled:#f3f4f6;--text-disabled:#9ca3af;--text-placeholder:#9ca3af;--bg-secondary-hover:#e5e7eb;--border-color-hover:#d1d5db;--border-color-light:rgba(0,0,0,0.06);--bg-color:#f8f9fa;--card-bg:#ffffff;--card-bg-rgb:255,255,255;--bg-hover:#f3f4f6;--success-color:#10b981;--success-hover:#059669;--success-rgb:16,185,129;--warning-color:#f59e0b;--warning-hover:#d97706;--warning-rgb:245,158,11;--primary-hover:#0284c7;--error-color:#ef4444;--error-rgb:239,68,68}@media(max-width:1024px){:root{--font-lg:1rem;--font-xl:1.125rem;--font-2xl:1.375rem;--font-3xl:1.625rem}}@media(max-width:768px){:root{--font-base:0.875rem;--font-lg:0.9375rem;--font-xl:1.0625rem;--font-2xl:1.25rem;--font-3xl:1.5rem}}@media(max-width:480px){:root{--font-xs:0.6875rem;--font-sm:0.75rem;--font-base:0.8125rem;--font-lg:0.875rem;--font-xl:1rem;--font-2xl:1.125rem;--font-3xl:1.25rem}}[data-theme=dark]{--bg-primary:#111827;--bg-surface:#111827;--bg-secondary:#1e293b;--bg-tertiary:#0f172a;--text-primary:#dbe3eb;--text-secondary:#a0afc2;--text-tertiary:#7a8fa6;--border-color:#334155;--header-bg:#162032;--header-bg-scrolled:#162032;--shadow:rgba(0,0,0,0.5);--modal-overlay:rgba(0,0,0,0.35);--primary-color:#009dff;--primary-color-light:#22d3ee;--primary-color-dark:#008afb;--primary-color-rgb:9,161,255;--primary-rgb:9,161,255;--secondary-color:#22d3ee;--secondary-rgb:34,211,238;--bg-card:#1e293b;--card-bg-rgb:30,41,59;--bg-input:#0f172a;--bg-disabled:#111827;--text-disabled:#a0afc2;--text-placeholder:#a0afc2;--bg-secondary-hover:#334155;--border-color-hover:#334155;--border-color-light:rgba(255,255,255,0.08);--bg-color:#111827;--card-bg:#1e293b;--bg-hover:#0f172a;--success-color:#10b981;--success-hover:#059669;--success-rgb:16,185,129;--warning-color:#f59e0b;--warning-hover:#d97706;--warning-rgb:245,158,11;--primary-hover:#0284c7;--error-color:#ef4444;--error-rgb:239,68,68}aside::-webkit-scrollbar,body::-webkit-scrollbar,div::-webkit-scrollbar,html::-webkit-scrollbar,main::-webkit-scrollbar,nav::-webkit-scrollbar,ol::-webkit-scrollbar,pre::-webkit-scrollbar,section::-webkit-scrollbar,select::-webkit-scrollbar,textarea::-webkit-scrollbar,ul::-webkit-scrollbar{width:16px;height:16px}aside::-webkit-scrollbar-track,body::-webkit-scrollbar-track,div::-webkit-scrollbar-track,html::-webkit-scrollbar-track,main::-webkit-scrollbar-track,nav::-webkit-scrollbar-track,ol::-webkit-scrollbar-track,pre::-webkit-scrollbar-track,section::-webkit-scrollbar-track,select::-webkit-scrollbar-track,textarea::-webkit-scrollbar-track,ul::-webkit-scrollbar-track{background:rgba(0,0,0,0)}aside::-webkit-scrollbar-thumb,body::-webkit-scrollbar-thumb,div::-webkit-scrollbar-thumb,html::-webkit-scrollbar-thumb,main::-webkit-scrollbar-thumb,nav::-webkit-scrollbar-thumb,ol::-webkit-scrollbar-thumb,pre::-webkit-scrollbar-thumb,section::-webkit-scrollbar-thumb,select::-webkit-scrollbar-thumb,textarea::-webkit-scrollbar-thumb,ul::-webkit-scrollbar-thumb{background:rgba(0,0,0,.15);border-radius:8px;border:5px solid rgba(0,0,0,0);background-clip:padding-box}[data-theme=dark] aside::-webkit-scrollbar-thumb,[data-theme=dark] div::-webkit-scrollbar-thumb,[data-theme=dark] main::-webkit-scrollbar-thumb,[data-theme=dark] nav::-webkit-scrollbar-thumb,[data-theme=dark] ol::-webkit-scrollbar-thumb,[data-theme=dark] pre::-webkit-scrollbar-thumb,[data-theme=dark] section::-webkit-scrollbar-thumb,[data-theme=dark] select::-webkit-scrollbar-thumb,[data-theme=dark] textarea::-webkit-scrollbar-thumb,[data-theme=dark] ul::-webkit-scrollbar-thumb{background:#475569;border:5px solid rgba(0,0,0,0);background-clip:padding-box}body{background-color:var(--bg-primary);color:var(--text-primary);font-size:var(--font-base);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;transition:background-color .3s ease,color .3s ease}.text-xs{font-size:var(--font-xs)}.text-sm{font-size:var(--font-sm)}.text-base{font-size:var(--font-base)}.text-lg{font-size:var(--font-lg)}.text-xl{font-size:var(--font-xl)}.text-2xl{font-size:var(--font-2xl)}.text-3xl{font-size:var(--font-3xl)}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}.text-tertiary{color:var(--text-tertiary)}.form-select{padding:.5rem .75rem;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-primary);color:var(--text-secondary);font-size:var(--font-sm);cursor:pointer;transition:border-color .15s ease}.form-select:focus{outline:none;border-color:var(--primary-color)}.form-select:disabled{opacity:.5;cursor:not-allowed}.leading-tight{line-height:1.25}.leading-snug{line-height:1.375}.leading-relaxed{line-height:1.625}.page-title{font-size:var(--font-xl);font-weight:700;color:var(--text-primary)}@media(min-width:640px){.page-title{font-size:var(--font-2xl)}}.page-desc{font-size:var(--font-xs);font-weight:500;color:var(--text-secondary)}@media(min-width:640px){.page-desc{font-size:var(--font-sm)}}.page-sub-header{display:flex;align-items:center;gap:12px;margin-bottom:1rem}.page-sub-header__title{font-size:var(--font-md);font-weight:700;color:var(--text-primary);margin:0}.content-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;overflow:hidden}@media(min-width:640px){.content-card{border-radius:16px}}.content-card__header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid var(--border-color)}@media(min-width:640px){.content-card__header{padding:16px 20px}}.content-card__header h2,.content-card__header h3{font-size:var(--font-sm);font-weight:700;color:var(--text-primary);margin:0}@media(min-width:640px){.content-card__header h2,.content-card__header h3{font-size:var(--font-lg)}}.content-card__body{padding:16px}@media(min-width:640px){.content-card__body{padding:20px}}.content-card__body--flush{padding:0}.content-card__footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-top:1px solid var(--border-color)}@media(min-width:640px){.content-card__footer{padding:16px 20px}}.card-title{font-size:var(--font-sm);font-weight:700}@media(min-width:640px){.card-title{font-size:var(--font-lg)}}.table-header{font-size:10px;font-weight:700;color:var(--text-secondary);text-transform:uppercase}@media(min-width:640px){.table-header{font-size:var(--font-xs)}}.table-cell{font-size:11px;font-weight:600}@media(min-width:640px){.table-cell{font-size:var(--font-sm)}}.form-group{display:flex;flex-direction:column;gap:6px}.form-group input:not([type=color]):not([type=checkbox]):not([type=radio]):not([type=file]),.form-group select{width:100%;padding:.625rem .75rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:6px;font-size:var(--font-sm);color:var(--text-primary);font-family:inherit;transition:all .2s ease}.form-group input:not([type=color]):not([type=checkbox]):not([type=radio]):not([type=file])::placeholder,.form-group select::placeholder{color:var(--text-tertiary)}.form-group input:not([type=color]):not([type=checkbox]):not([type=radio]):not([type=file]):focus,.form-group select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 2px rgba(var(--primary-color-rgb,59,130,246),.1)}.form-group input:not([type=color]):not([type=checkbox]):not([type=radio]):not([type=file]):disabled,.form-group select:disabled{opacity:.6;cursor:not-allowed}.form-group .input-wrapper--error input{border-color:var(--error-color);background:rgba(var(--error-rgb,239,68,68),.03)}.form-group .input-wrapper--error input:focus{border-color:var(--error-color);box-shadow:0 0 0 2px rgba(var(--error-rgb,239,68,68),.15)}.form-group input[type=color]{width:40px;height:32px;padding:2px;border:1px solid var(--border-color);border-radius:6px;cursor:pointer;background:none}.form-group select[multiple]{min-height:140px;padding:6px}.form-group select[multiple]:focus{outline:none;border-color:var(--primary-color);box-shadow:none}.form-group select[multiple] option{padding:8px 10px;border-radius:4px;margin-bottom:2px;font-size:var(--font-sm);color:var(--text-primary);cursor:pointer}.form-group select[multiple] option:disabled{color:var(--text-tertiary)}.form-group select[multiple] option:checked{background:var(--primary-color) linear-gradient(0deg,var(--primary-color),var(--primary-color));-webkit-text-fill-color:#fff;color:#fff}.form-group textarea{width:100%;padding:.625rem .75rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:6px;font-size:var(--font-sm);color:var(--text-primary);font-family:inherit;resize:vertical;min-height:80px;transition:all .2s ease}.form-group textarea::placeholder{color:var(--text-tertiary)}.form-group textarea:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 2px rgba(var(--primary-color-rgb,59,130,246),.1)}.form-group .btn{white-space:nowrap}[data-theme=dark] .form-group input:not([type=color]):not([type=checkbox]):not([type=radio]):not([type=file]),[data-theme=dark] .form-group select,[data-theme=dark] .form-group textarea{background:rgba(0,0,0,.25)}.form-label{display:block;font-size:var(--font-xs);font-weight:700;color:var(--text-secondary)}.form-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:20px;gap:20px}@media(max-width:640px){.form-row{grid-template-columns:1fr}}.form-row__badges{grid-column:1/-1;padding-top:4px}.tab-nav{display:flex;gap:4px;border-bottom:1px solid var(--border-color);padding:0 4px}.tab-nav__item{padding:8px 16px;font-size:var(--font-sm);font-weight:500;color:var(--text-secondary);background:none;border:none;border-bottom:2px solid rgba(0,0,0,0);cursor:pointer;transition:all .2s;margin-bottom:-1px}.tab-nav__item:hover{color:var(--text-primary)}.tab-nav__item--active{color:var(--primary-color);border-bottom-color:var(--primary-color);font-weight:600}.tab-select{border:1px solid var(--border-color);border-radius:6px;background:var(--bg-secondary);max-height:180px;overflow-y:auto}.tab-select__item{display:block;width:100%;text-align:left;padding:8px 12px;border:none;border-bottom:1px solid var(--border-color);background:rgba(0,0,0,0);color:var(--text-primary);font-size:var(--font-sm);cursor:pointer;transition:background .1s}.tab-select__item:last-child{border-bottom:none}.tab-select__item:hover{background:var(--bg-tertiary)}.tab-select__item.is-active{background:rgba(var(--primary-color-rgb,59,130,246),.08);color:var(--primary-color);font-weight:600}.multi-select-list{border:1px solid var(--border-color);border-radius:6px;background:var(--bg-secondary);max-height:180px;overflow-y:auto}.multi-select-list__item{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;font-size:var(--font-sm);color:var(--text-primary);cursor:pointer;border-bottom:1px solid var(--border-color);transition:background .1s}.multi-select-list__item:last-child{border-bottom:none}.multi-select-list__item:hover{background:var(--bg-tertiary)}.multi-select-list__item.is-selected{background:rgba(var(--primary-color-rgb,59,130,246),.08);color:var(--primary-color);font-weight:600}.multi-select-list__x{font-size:16px;line-height:1;opacity:.5}.multi-select-list__empty{padding:8px 12px;font-size:var(--font-sm);color:var(--text-tertiary)}.error-message{color:var(--error-color);font-size:var(--font-xs);margin-top:4px}.checkbox-group{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.checkbox-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:10px;gap:10px}@media(max-width:640px){.checkbox-grid{grid-template-columns:repeat(2,1fr)}}.tag-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.tag-item{gap:4px;padding:4px 10px;border-radius:9999px;font-size:var(--font-xs);font-weight:600;background:rgba(var(--primary-color-rgb,59,130,246),.1);border:1px solid rgba(var(--primary-color-rgb,59,130,246),.2)}.tag-item,.tag-item__remove{display:inline-flex;align-items:center;color:var(--primary-color)}.tag-item__remove{justify-content:center;width:16px;height:16px;border:none;background:rgba(0,0,0,0);font-size:14px;line-height:1;cursor:pointer;padding:0;border-radius:50%;opacity:.6}.tag-item__remove:hover{opacity:1;background:rgba(var(--primary-color-rgb,59,130,246),.15)}.form-tooltip{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;background:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-tertiary);font-size:10px;font-weight:700;cursor:help;position:relative;vertical-align:middle;margin-left:4px}.form-tooltip:hover:after{content:attr(data-tip);position:absolute;padding:6px 10px;background:var(--text-primary);color:var(--bg-primary);font-size:var(--font-xs);font-weight:500;border-radius:6px;white-space:nowrap;z-index:10}.form-tooltip:hover:after,.form-tooltip[data-pos=right]:hover:after{top:50%;left:calc(100% + 8px);transform:translateY(-50%)}.form-tooltip[data-pos=top]:hover:after{bottom:calc(100% + 6px);left:50%;top:auto;transform:translateX(-50%)}.form-tooltip[data-pos=bottom]:hover:after{top:calc(100% + 6px);left:50%;transform:translateX(-50%)}.form-tooltip[data-pos=left]:hover:after{top:50%;right:calc(100% + 8px);left:auto;transform:translateY(-50%)}.form-group--error .form-label{color:var(--error-color)}.form-group--error input,.form-group--error select,.form-group--error textarea{border-color:var(--error-color);background:rgba(var(--error-rgb,239,68,68),.03)}.form-group--error input:focus,.form-group--error select:focus,.form-group--error textarea:focus{border-color:var(--error-color);box-shadow:0 0 0 2px rgba(var(--error-rgb,239,68,68),.15)}.form-group--error .rich-editor{border-color:var(--error-color)}.form-group--error .rich-editor .rich-editor-area{background:rgba(var(--error-rgb,239,68,68),.03)}.form-hint-row{display:flex;justify-content:space-between;align-items:center;margin-top:4px}.form-error-text{color:var(--error-color);font-size:var(--font-xs);margin-top:4px}.form-char-count{font-size:var(--font-xs);color:var(--text-secondary)}.form-hint-row .form-char-count{margin-top:0}.form-char-count--limit{color:var(--error-color)}.color-picker-group{display:grid;grid-template-columns:repeat(8,1fr);grid-gap:10px;gap:10px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;padding:10px;justify-items:center}.color-picker-swatch{width:24px;height:24px;border-radius:50%;border:2px solid rgba(0,0,0,0);cursor:pointer;transition:transform .15s ease,box-shadow .15s ease;display:inline-flex;align-items:center;justify-content:center}.color-picker-swatch:hover{transform:scale(1.15);box-shadow:0 2px 8px rgba(0,0,0,.2)}.color-picker-swatch--active{transform:scale(1.1)}.exam-info-card{padding:20px;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:12px}.exam-info-card__title{font-size:var(--font-xl);font-weight:700;color:var(--text-primary);margin:0 0 4px}.exam-info-card__course{font-size:var(--font-sm);color:var(--text-secondary);margin:0 0 4px}.exam-info-card__desc{font-size:var(--font-sm);color:var(--text-tertiary);margin:0 0 12px;line-height:1.5}.exam-info-card__meta{display:flex;align-items:center;flex-wrap:wrap;gap:4px;padding-top:12px;border-top:1px solid var(--border-color);font-size:var(--font-xs);color:var(--text-secondary)}.exam-info-card__dot{margin:0 6px;color:var(--text-tertiary);opacity:.4}.student-profile-tabs{display:inline-flex;gap:4px;padding:4px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:10px}.student-profile-tabs__tab{padding:10px 24px;background:rgba(0,0,0,0);border:none;border-radius:8px;font-size:var(--font-base);font-weight:500;color:var(--text-secondary);cursor:pointer;transition:all .2s ease;white-space:nowrap}.student-profile-tabs__tab:hover{color:var(--text-primary);background:var(--bg-primary)}.student-profile-tabs__tab.active{color:var(--primary-color);font-weight:600;background:var(--bg-primary);box-shadow:0 1px 3px var(--shadow)}.danger-zone{margin-top:.5rem;padding:1rem;border-radius:8px;transition:background .2s ease,border-color .2s ease}.danger-zone--danger{border:1px solid rgba(var(--error-rgb,239,68,68),.25);background:rgba(var(--error-rgb,239,68,68),.03)}[data-theme=dark] .danger-zone--danger{background:rgba(var(--error-rgb,239,68,68),.06);border-color:rgba(var(--error-rgb,239,68,68),.2)}.danger-zone--danger .danger-zone__title{color:var(--error-color)}.danger-zone--safe{border:1px solid rgba(var(--primary-color-rgb),.2);background:rgba(var(--primary-color-rgb),.03)}[data-theme=dark] .danger-zone--safe{background:rgba(var(--primary-color-rgb),.06);border-color:rgba(var(--primary-color-rgb),.2)}.danger-zone--safe .danger-zone__title{color:var(--primary-color)}.danger-zone__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.danger-zone__title{font-size:var(--font-sm);font-weight:600}.danger-zone__desc{font-size:var(--font-xs);color:var(--text-secondary);margin:0 0 12px;line-height:1.5}.danger-zone .btn{width:100%}.input-icon-wrapper{position:relative;display:flex;align-items:center}.input-icon-wrapper input{padding-right:2rem}.input-icon-wrapper .input-icon{position:absolute;right:.625rem;color:var(--text-secondary);pointer-events:none}input[type=date],input[type=datetime-local],input[type=time]{cursor:pointer;max-width:100%}input[type=date]::-webkit-calendar-picker-indicator,input[type=datetime-local]::-webkit-calendar-picker-indicator,input[type=time]::-webkit-calendar-picker-indicator{position:absolute;right:0;width:100%;height:100%;opacity:0;cursor:pointer}input[type=date]::-webkit-date-and-time-value,input[type=datetime-local]::-webkit-date-and-time-value,input[type=time]::-webkit-date-and-time-value{text-align:left}input[type=date]:disabled,input[type=datetime-local]:disabled,input[type=time]:disabled{opacity:.5;cursor:not-allowed}[data-theme=dark] input[type=date],[data-theme=dark] input[type=datetime-local],[data-theme=dark] input[type=time]{color-scheme:dark}[data-theme=dark] input,[data-theme=dark] select,[data-theme=dark] textarea{color:var(--text-primary);background:var(--bg-input);border-color:var(--border-color)}[data-theme=dark] input::placeholder,[data-theme=dark] select::placeholder,[data-theme=dark] textarea::placeholder{color:var(--text-placeholder)}[data-theme=dark] input:focus,[data-theme=dark] select:focus,[data-theme=dark] textarea:focus{background:var(--bg-card)}[data-theme=dark] input:-webkit-autofill,[data-theme=dark] input:-webkit-autofill:active,[data-theme=dark] input:-webkit-autofill:focus,[data-theme=dark] input:-webkit-autofill:hover,[data-theme=dark] select:-webkit-autofill,[data-theme=dark] select:-webkit-autofill:active,[data-theme=dark] select:-webkit-autofill:focus,[data-theme=dark] select:-webkit-autofill:hover,[data-theme=dark] textarea:-webkit-autofill,[data-theme=dark] textarea:-webkit-autofill:active,[data-theme=dark] textarea:-webkit-autofill:focus,[data-theme=dark] textarea:-webkit-autofill:hover{-webkit-box-shadow:0 0 0 1000px var(--bg-input) inset!important;-webkit-text-fill-color:var(--text-primary)!important;caret-color:var(--text-primary);-webkit-transition:background-color 5000s ease-in-out 0s;transition:background-color 5000s ease-in-out 0s}[data-theme=dark] select option{background:var(--bg-card);color:var(--text-primary)}input:-webkit-autofill,input:-webkit-autofill:active,input:-webkit-autofill:focus,input:-webkit-autofill:hover{-webkit-box-shadow:0 0 0 1000px var(--bg-input) inset!important;-webkit-text-fill-color:var(--text-primary)!important;caret-color:var(--text-primary);-webkit-transition:background-color 5000s ease-in-out 0s;transition:background-color 5000s ease-in-out 0s}@media(max-width:768px){body{font-size:15px}}@media(max-width:480px){body{font-size:14px}}@media(max-width:360px){body{font-size:13px}}a{text-decoration:none}.dark-blue-btn{background:#008afb;color:#fff;border-radius:10px;padding:10px 20px;font-size:16px;font-weight:600;border:none;cursor:pointer;transition:all .3s ease}.dark-blue-btn:hover,.light-blue-btn{background:#009dff}.light-blue-btn{color:#fff;border-radius:10px;padding:10px 20px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease}.light-blue-btn:hover{background:#008afb}.border-blue-btn{background:rgba(0,0,0,0);color:#009dff;border:1px solid #009dff;border-radius:10px;padding:10px 20px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease}.border-blue-btn:hover{background:#009dff;color:#fff}.container{max-width:1920px;width:100%;margin:0 auto;padding:0 20px}.btn{padding:.5rem 1rem;border-radius:6px;font-size:var(--font-sm);font-weight:600;cursor:pointer;transition:all .15s ease;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:.4rem;background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color)}.btn svg{color:inherit;transition:color .15s ease}.btn:hover:not(:disabled){background:var(--bg-tertiary)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn:focus-visible{outline:none;box-shadow:0 0 0 2px rgba(var(--primary-color-rgb),.3)}.btn--primary{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.btn--primary:hover:not(:disabled){background:var(--primary-hover);border-color:var(--primary-hover)}.btn--primary:focus-visible{box-shadow:0 0 0 2px rgba(var(--primary-color-rgb),.4)}[data-theme=dark] .btn--primary{background:rgba(var(--primary-color-rgb),.8)}[data-theme=dark] .btn--primary:hover:not(:disabled){background:rgba(var(--primary-color-rgb),1)}.btn--secondary{background:var(--bg-card);color:var(--text-secondary);border-color:var(--border-color)}.btn--secondary:hover:not(:disabled){background:rgba(var(--primary-color-rgb),.1);color:var(--primary-color);border-color:var(--primary-color)}.btn--ai{position:relative;border:1px solid rgba(0,0,0,0);background:linear-gradient(var(--bg-card),var(--bg-card)) padding-box,linear-gradient(135deg,#7c3aed,#ec4899,#f59e0b) border-box;-webkit-background-clip:padding-box,border-box;background:linear-gradient(135deg,#7c3aed,#ec4899,#f59e0b);-webkit-background-clip:text;-webkit-text-fill-color:rgba(0,0,0,0);background-clip:text}.btn--ai:before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;background:linear-gradient(135deg,#7c3aed,#ec4899,#f59e0b);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}.btn--ai svg{color:#7c3aed;-webkit-text-fill-color:initial}.btn--ai:hover:not(:disabled){background:linear-gradient(135deg,#7c3aed,#ec4899,#f59e0b);-webkit-background-clip:text;-webkit-text-fill-color:rgba(0,0,0,0);opacity:.8}.btn--warning{background:var(--warning-color);color:#fff;border-color:var(--warning-color)}.btn--warning:hover:not(:disabled){background:var(--warning-hover)}[data-theme=dark] .btn--warning{background:rgba(var(--warning-rgb,245,158,11),.8)}[data-theme=dark] .btn--warning:hover:not(:disabled){background:rgba(var(--warning-rgb,245,158,11),1)}.btn--success{background:var(--success-color);color:#fff;border-color:var(--success-color)}.btn--success:hover:not(:disabled){background:var(--success-hover)}.btn--success:focus-visible{box-shadow:0 0 0 2px rgba(var(--success-rgb,16,185,129),.4)}[data-theme=dark] .btn--success{background:rgba(var(--success-rgb,16,185,129),.8)}[data-theme=dark] .btn--success:hover:not(:disabled){background:rgba(var(--success-rgb,16,185,129),1)}.file-download-link:hover,.file-download-link:hover svg{color:var(--primary-color)}.btn--ghost{background:none;border:none;color:var(--text-secondary);padding:4px 0}.btn--ghost:hover:not(:disabled){background:none;color:var(--primary-color)}.btn--primary-secondary{background:rgba(0,0,0,0);color:var(--primary-color);border-color:var(--primary-color)}.btn--primary-secondary:hover:not(:disabled){background:rgba(var(--primary-color-rgb),.1)}[data-theme=dark] .btn--primary-secondary:hover:not(:disabled){background:rgba(var(--primary-color-rgb),.25)}.btn--success-secondary{background:rgba(0,0,0,0);color:var(--success-color);border-color:var(--success-color)}.btn--success-secondary:hover:not(:disabled){background:rgba(var(--success-rgb,16,185,129),.1)}[data-theme=dark] .btn--success-secondary:hover:not(:disabled){background:rgba(var(--success-rgb,16,185,129),.25)}.btn--danger{background:var(--error-color);color:#fff;border-color:var(--error-color)}.btn--danger:hover:not(:disabled){background:var(--error-hover,#dc2626)}.btn--danger:focus-visible{box-shadow:0 0 0 2px rgba(var(--error-rgb,239,68,68),.4)}[data-theme=dark] .btn--danger{background:rgba(var(--error-rgb,239,68,68),.8)}[data-theme=dark] .btn--danger:hover:not(:disabled){background:rgba(var(--error-rgb,239,68,68),1)}.btn--danger-subtle{background:rgba(var(--error-rgb,239,68,68),.08);color:var(--error-color);border-color:rgba(var(--error-rgb,239,68,68),.2)}.btn--danger-subtle:hover:not(:disabled){background:rgba(var(--error-rgb,239,68,68),.15);border-color:rgba(var(--error-rgb,239,68,68),.4)}.btn--xs{padding:4px 8px}.btn--sm,.btn--xs{font-size:var(--font-xs)}.btn--sm{padding:6px 12px}.btn--lg{padding:12px 24px;font-size:var(--font-lg)}.btn--icon{display:inline-flex;align-items:center;justify-content:center;padding:4px;width:28px;height:28px;flex-shrink:0}.dropdown{position:relative}.dropdown__menu{min-width:180px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:14px;box-shadow:0 8px 32px rgba(0,0,0,.12);padding:8px 0;z-index:10000;display:flex;flex-direction:column}[data-theme=dark] .dropdown__menu{border-color:#334155;box-shadow:0 8px 32px rgba(0,0,0,.4)}.dropdown__item{display:flex;align-items:center;gap:.5rem;padding:10px 16px;border-radius:0;font-size:var(--font-sm);font-weight:500;color:var(--text-secondary);text-decoration:none;background:none;border:none;cursor:pointer;width:100%;text-align:left;transition:all .15s ease}.dropdown__item:hover{background:var(--bg-secondary);color:var(--text-primary)}.dropdown__item--danger{color:#ef4444}.dropdown__item--danger:hover{background:rgba(239,68,68,.08);color:#ef4444}.dropdown__item--notif{justify-content:space-between;cursor:pointer}.dropdown__item--notif .left{display:flex;align-items:center;gap:.5rem}.dropdown__divider{height:1px;background:var(--border-color);margin:4px 0}[data-theme=dark] .dropdown__divider{background:#334155}.toggle-switch-wrap{display:inline-flex;align-items:center;gap:8px}.toggle-switch{all:unset;position:relative;display:inline-flex;width:38px;height:22px;flex-shrink:0;cursor:pointer;border-radius:9999px;background:#cbd5e1;box-shadow:inset 0 1px 3px rgba(0,0,0,.15);transition:background .2s ease}[data-theme=dark] .toggle-switch{background:#475569}.toggle-switch.active{background:var(--success-color,#10b981)}.toggle-switch.disabled{opacity:.5;cursor:not-allowed}.toggle-switch .toggle-switch__knob{position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:9999px;background:#fff;transition:transform .2s ease;box-shadow:0 1px 4px rgba(0,0,0,.2),0 0 1px rgba(0,0,0,.1);pointer-events:none}.toggle-switch.active .toggle-switch__knob{transform:translateX(16px)}.toggle-switch__label{font-size:var(--font-xs);font-weight:400;color:var(--text-tertiary)}.toggle-switch__label.active{color:var(--success-color,#10b981)}.badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.03em}.badge--pinned{background:rgba(245,158,11,.1);color:#d97706;border:1px solid rgba(245,158,11,.2)}[data-theme=dark] .badge--pinned{background:rgba(245,158,11,.15);color:#fbbf24;border-color:rgba(245,158,11,.3)}.badge--admin{background:rgba(var(--error-rgb),.1);color:var(--error-color)}.badge--university{background:rgba(var(--primary-color-rgb),.1);color:var(--primary-color)}.badge--repost,.badge--success{background:rgba(var(--success-rgb),.1);color:var(--success-color,#10b981)}.badge--warning{background:rgba(245,158,11,.1);color:#d97706}.badge--primary{background:rgba(var(--primary-color-rgb),.1);color:var(--primary-color)}*{margin:0;padding:0;box-sizing:border-box;font-family:Pretendard Variable,Pretendard,-apple-system,BlinkMacSystemFont,system-ui,Roboto,Helvetica Neue,Segoe UI,Apple SD Gothic Neo,Noto Sans KR,Malgun Gothic,sans-serif;transition:all .3s ease}