/* SMC Training - Complete Tailwind CSS v3.4 + Custom Styles */
/* Generated for smc-training.com */

/* ===== TAILWIND BASE ===== */
*,::before,::after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e2e8f0}::before,::after{--tw-content:''}html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;font-family:Inter,system-ui,-apple-system,sans-serif;font-feature-settings:normal;font-variation-settings:normal}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{opacity:1;color:#94a3b8}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]{display:none}

/* ===== TAILWIND COMPONENTS ===== */
.container{width:100%}@media(min-width:640px){.container{max-width:640px}}@media(min-width:768px){.container{max-width:768px}}@media(min-width:1024px){.container{max-width:1024px}}@media(min-width:1280px){.container{max-width:1280px}}@media(min-width:1536px){.container{max-width:1536px}}

/* ===== TAILWIND UTILITIES ===== */
/* Layout */
.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.top-0{top:0}.right-0{right:0}.bottom-0{bottom:0}.left-0{left:0}.right-10{right:2.5rem}.bottom-10{bottom:2.5rem}.top-20{top:5rem}.left-10{left:2.5rem}.top-1\/3{top:33.333%}.left-1\/4{left:25%}.-top-3{top:-0.75rem}.top-6{top:1.5rem}.right-2{right:0.5rem}.top-2{top:0.5rem}.top-16{top:4rem}.-top-1{top:-0.25rem}.-right-1{right:-0.25rem}.left-\[60\%\]{left:60%}.z-10{z-index:10}.z-50{z-index:50}.z-40{z-index:40}

/* Display */
.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.hidden{display:none}.table{display:table}

/* Sizing */
.h-16{height:4rem}.h-10{height:2.5rem}.h-8{height:2rem}.h-6{height:1.5rem}.h-5{height:1.25rem}.h-4{height:1rem}.h-3{height:0.75rem}.h-2{height:0.5rem}.h-0\.5{height:0.125rem}.h-72{height:18rem}.h-96{height:24rem}.h-64{height:16rem}.h-12{height:3rem}.h-32{height:8rem}.h-48{height:12rem}.h-full{height:100%}.h-\[600px\]{height:600px}.min-h-screen{min-height:100vh}.min-h-\[60vh\]{min-height:60vh}.w-8{width:2rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-4{width:1rem}.w-3{width:0.75rem}.w-72{width:18rem}.w-96{width:24rem}.w-64{width:16rem}.w-12{width:3rem}.w-10{width:2.5rem}.w-3\.5{width:0.875rem}.w-2{width:0.5rem}.w-auto{width:auto}.w-full{width:100%}.w-\[80\%\]{width:80%}.w-48{width:12rem}.w-32{width:8rem}.w-40{width:10rem}.max-w-3xl{max-width:48rem}.max-w-2xl{max-width:42rem}.max-w-4xl{max-width:56rem}.max-w-5xl{max-width:64rem}.max-w-6xl{max-width:72rem}.max-w-7xl{max-width:80rem}.max-w-sm{max-width:24rem}.max-w-xl{max-width:36rem}.max-w-lg{max-width:32rem}.max-w-xs{max-width:20rem}.max-w-md{max-width:28rem}.flex-1{flex:1 1 0%}.flex-shrink-0{flex-shrink:0}

/* Transform */
.translate-x-0{--tw-translate-x:0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-x-1\/2{--tw-translate-x:-50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-180{--tw-rotate:180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-105{--tw-scale-x:1.05;--tw-scale-y:1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}

/* Cursor */
.cursor-pointer{cursor:pointer}.cursor-default{cursor:default}.cursor-not-allowed{cursor:not-allowed}

/* Overflow */
.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* Flex & Grid */
.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-baseline{align-items:baseline}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-2{gap:0.5rem}.gap-2\.5{gap:0.625rem}.gap-3{gap:0.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.gap-0\.5{gap:0.125rem}.gap-1{gap:0.25rem}.gap-1\.5{gap:0.375rem}.gap-1{gap:0.25rem}.space-y-2>*+*{margin-top:0.5rem}.space-y-2\.5>*+*{margin-top:0.625rem}.space-y-4>*+*{margin-top:1rem}.space-y-6>*+*{margin-top:1.5rem}.space-y-8>*+*{margin-top:2rem}.space-y-3>*+*{margin-top:0.75rem}.space-y-1>*+*{margin-top:0.25rem}.space-x-3>*+*{margin-left:0.75rem}.space-x-2>*+*{margin-left:0.5rem}

/* Grid */
.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.col-span-2{grid-column:span 2 / span 2}.col-span-3{grid-column:span 3 / span 3}.col-span-4{grid-column:span 4 / span 4}.col-span-7{grid-column:span 7 / span 7}

/* Padding */
.p-2{padding:0.5rem}.p-3{padding:0.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.p-1\.5{padding:0.375rem}.p-2\.5{padding:0.625rem}.p-1{padding:0.25rem}.px-2{padding-left:0.5rem;padding-right:0.5rem}.px-2\.5{padding-left:0.625rem;padding-right:0.625rem}.px-3{padding-left:0.75rem;padding-right:0.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.py-0\.5{padding-top:0.125rem;padding-bottom:0.125rem}.py-1{padding-top:0.25rem;padding-bottom:0.25rem}.py-1\.5{padding-top:0.375rem;padding-bottom:0.375rem}.py-2{padding-top:0.5rem;padding-bottom:0.5rem}.py-2\.5{padding-top:0.625rem;padding-bottom:0.625rem}.py-3{padding-top:0.75rem;padding-bottom:0.75rem}.py-3\.5{padding-top:0.875rem;padding-bottom:0.875rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-8{padding-top:2rem;padding-bottom:2rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-20{padding-top:5rem;padding-bottom:5rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-24{padding-top:6rem;padding-bottom:6rem}.pt-16{padding-top:4rem}.pt-20{padding-top:5rem}.pt-6{padding-top:1.5rem}.pt-8{padding-top:2rem}.pt-4{padding-top:1rem}.pt-12{padding-top:3rem}.pt-2{padding-top:0.5rem}.pb-2{padding-bottom:0.5rem}.pb-12{padding-bottom:3rem}.pb-8{padding-bottom:2rem}.pl-4{padding-left:1rem}.pl-10{padding-left:2.5rem}.pl-3{padding-left:0.75rem}.pr-10{padding-right:2.5rem}

/* Margin */
.m-0{margin:0}.mx-auto{margin-left:auto;margin-right:auto}.mx-4{margin-left:1rem;margin-right:1rem}.my-4{margin-top:1rem;margin-bottom:1rem}.mt-0\.5{margin-top:0.125rem}.mt-1{margin-top:0.25rem}.mt-1\.5{margin-top:0.375rem}.mt-2{margin-top:0.5rem}.mt-3{margin-top:0.75rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.mt-10{margin-top:2.5rem}.mt-16{margin-top:4rem}.mt-12{margin-top:3rem}.mt-auto{margin-top:auto}.mb-1{margin-bottom:0.25rem}.mb-1\.5{margin-bottom:0.375rem}.mb-2{margin-bottom:0.5rem}.mb-3{margin-bottom:0.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.mb-12{margin-bottom:3rem}.mb-16{margin-bottom:4rem}.ml-auto{margin-left:auto}.ml-2{margin-left:0.5rem}.ml-1{margin-left:0.25rem}.mr-2{margin-right:0.5rem}.mr-1{margin-right:0.25rem}.-mt-1{margin-top:-0.25rem}.-ml-1{margin-left:-0.25rem}

/* Typography */
.text-xs{font-size:0.75rem;line-height:1rem}.text-sm{font-size:0.875rem;line-height:1.25rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-5xl{font-size:3rem;line-height:1}.text-6xl{font-size:3.75rem;line-height:1}.font-light{font-weight:300}.font-normal{font-weight:400}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.font-black{font-weight:900}.italic{font-style:italic}.tracking-tight{letter-spacing:-0.025em}.tracking-wide{letter-spacing:0.025em}.leading-tight{line-height:1.25}.leading-relaxed{line-height:1.625}.leading-\[1\.08\]{line-height:1.08}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.whitespace-nowrap{white-space:nowrap}

/* Text Color */
.text-white{color:#fff}.text-black{color:#000}.text-gray-50{color:#f9fafb}.text-gray-100{color:#f3f4f6}.text-gray-200{color:#e5e7eb}.text-gray-300{color:#d1d5db}.text-gray-400{color:#9ca3af}.text-gray-500{color:#6b7280}.text-gray-600{color:#4b5563}.text-gray-700{color:#374151}.text-gray-800{color:#1f2937}.text-gray-900{color:#111827}.text-red-400{color:#f87171}.text-red-500{color:#ef4444}.text-red-600{color:#dc2626}.text-red-700{color:#b91c1c}.text-red-800{color:#991b1b}.text-green-400{color:#4ade80}.text-green-500{color:#22c55e}.text-green-600{color:#16a34a}.text-green-700{color:#15803d}.text-green-800{color:#166534}.text-blue-400{color:#60a5fa}.text-blue-500{color:#3b82f6}.text-blue-600{color:#2563eb}.text-blue-700{color:#1d4ed8}.text-blue-800{color:#1e40af}.text-yellow-400{color:#facc15}.text-yellow-500{color:#eab308}.text-yellow-600{color:#ca8a04}.text-yellow-700{color:#a16207}.text-yellow-800{color:#854d0e}.text-purple-400{color:#c084fc}.text-purple-500{color:#a855f7}.text-purple-600{color:#9333ea}.text-purple-700{color:#7e22ce}.text-purple-800{color:#6b21a8}.text-amber-400{color:#fbbf24}.text-amber-500{color:#f59e0b}.text-amber-600{color:#d97706}.text-amber-700{color:#b45309}.text-emerald-400{color:#34d399}.text-emerald-500{color:#10b981}.text-emerald-600{color:#059669}.text-emerald-700{color:#047857}.text-emerald-800{color:#065f46}.text-pink-500{color:#ec4899}.text-orange-500{color:#f97316}.text-orange-600{color:#ea580c}.text-cyan-600{color:#0891b2}.text-teal-600{color:#0d9488}.text-violet-600{color:#7c3aed}.text-rose-600{color:#e11d48}.text-smc-50{color:#eff6ff}.text-smc-100{color:#dbeafe}.text-smc-200{color:#bfdbfe}.text-smc-300{color:#93c5fd}.text-smc-400{color:#60a5fa}.text-smc-500{color:#0072CE}.text-smc-600{color:#005fa8}.text-smc-700{color:#004d8c}.text-accent-500{color:#00A19D}.text-accent-600{color:#0d9488}.text-\[\#0072CE\]{color:#0072CE}.text-\[\#e53e3e\]{color:#e53e3e}.text-\[\#2b6cb0\]{color:#2b6cb0}.text-\[\#2f855a\]{color:#2f855a}

/* Background */
.bg-white{background-color:#fff}.bg-black{background-color:#000}.bg-transparent{background-color:transparent}.bg-gray-50{background-color:#f9fafb}.bg-gray-100{background-color:#f3f4f6}.bg-gray-200{background-color:#e5e7eb}.bg-gray-300{background-color:#d1d5db}.bg-gray-400{background-color:#9ca3af}.bg-gray-500{background-color:#6b7280}.bg-gray-600{background-color:#4b5563}.bg-gray-700{background-color:#374151}.bg-gray-800{background-color:#1f2937}.bg-gray-900{background-color:#111827}.bg-red-50{background-color:#fef2f2}.bg-red-100{background-color:#fee2e2}.bg-red-500{background-color:#ef4444}.bg-red-600{background-color:#dc2626}.bg-green-50{background-color:#f0fdf4}.bg-green-100{background-color:#dcfce7}.bg-green-500{background-color:#22c55e}.bg-green-600{background-color:#16a34a}.bg-blue-50{background-color:#eff6ff}.bg-blue-100{background-color:#dbeafe}.bg-blue-500{background-color:#3b82f6}.bg-blue-600{background-color:#2563eb}.bg-yellow-50{background-color:#fefce8}.bg-yellow-100{background-color:#fef9c3}.bg-yellow-500{background-color:#eab308}.bg-purple-50{background-color:#faf5ff}.bg-purple-100{background-color:#f3e8ff}.bg-purple-500{background-color:#a855f7}.bg-purple-600{background-color:#9333ea}.bg-purple-700{background-color:#7e22ce}.bg-amber-100{background-color:#fef3c7}.bg-amber-500{background-color:#f59e0b}.bg-amber-600{background-color:#d97706}.bg-emerald-50{background-color:#ecfdf5}.bg-emerald-100{background-color:#d1fae5}.bg-emerald-500{background-color:#10b981}.bg-emerald-600{background-color:#059669}.bg-indigo-50{background-color:#eef2ff}.bg-indigo-100{background-color:#e0e7ff}.bg-indigo-500{background-color:#6366f1}.bg-indigo-600{background-color:#4f46e5}.bg-orange-100{background-color:#ffedd5}.bg-orange-500{background-color:#f97316}.bg-cyan-100{background-color:#cffafe}.bg-teal-100{background-color:#ccfbf1}.bg-violet-100{background-color:#ede9fe}.bg-rose-100{background-color:#ffe4e6}.bg-sky-100{background-color:#e0f2fe}.bg-lime-100{background-color:#ecfccb}.bg-pink-100{background-color:#fce7f3}.bg-pink-500{background-color:#ec4899}.bg-smc-50{background-color:#eff6ff}.bg-smc-100{background-color:#dbeafe}.bg-smc-200{background-color:#bfdbfe}.bg-smc-500{background-color:#0072CE}.bg-smc-600{background-color:#005fa8}.bg-smc-700{background-color:#004d8c}.bg-accent-50{background-color:#f0fdfa}.bg-accent-500{background-color:#00A19D}.bg-accent-600{background-color:#0d9488}.bg-\[\#edf2f7\]{background-color:#edf2f7}.bg-\[\#e2e8f0\]{background-color:#e2e8f0}.bg-\[\#0072CE\]{background-color:#0072CE}.bg-\[\#f7fafc\]{background-color:#f7fafc}.bg-\[\#ebf8ff\]{background-color:#ebf8ff}.bg-\[\#c6f6d5\]{background-color:#c6f6d5}.bg-\[\#fefcbf\]{background-color:#fefcbf}.bg-\[\#fed7d7\]{background-color:#fed7d7}.bg-\[\#e9d8fd\]{background-color:#e9d8fd}.bg-\[\#feebc8\]{background-color:#feebc8}.bg-\[\#cfe2ff\]{background-color:#cfe2ff}.bg-\[\#bee3f8\]{background-color:#bee3f8}.bg-\[\#3182ce\]{background-color:#3182ce}.bg-\[\#e53e3e\]{background-color:#e53e3e}.bg-\[\#2b6cb0\]{background-color:#2b6cb0}.bg-\[\#2f855a\]{background-color:#2f855a}.bg-\[\#d69e2e\]{background-color:#d69e2e}.bg-\[\#718096\]{background-color:#718096}

/* Background Opacity */
.bg-white\/10{background-color:rgba(255,255,255,0.1)}.bg-black\/20{background-color:rgba(0,0,0,0.2)}.bg-black\/30{background-color:rgba(0,0,0,0.3)}.bg-black\/50{background-color:rgba(0,0,0,0.5)}.bg-black\/80{background-color:rgba(0,0,0,0.8)}.bg-gray-900\/50{background-color:rgba(17,24,39,0.5)}.bg-white\/20{background-color:rgba(255,255,255,0.2)}.bg-white\/80{background-color:rgba(255,255,255,0.8)}.bg-blue-400\/5{background-color:rgba(96,165,250,0.05)}.bg-smc-500\/10{background-color:rgba(0,114,206,0.1)}.bg-accent-500\/10{background-color:rgba(0,161,157,0.1)}.bg-red-500\/10{background-color:rgba(239,68,68,0.1)}.bg-green-500\/10{background-color:rgba(34,197,94,0.1)}.bg-yellow-500\/10{background-color:rgba(234,179,8,0.1)}.bg-blue-500\/10{background-color:rgba(59,130,246,0.1)}.bg-purple-500\/10{background-color:rgba(168,85,247,0.1)}.bg-white\/30{background-color:rgba(255,255,255,0.3)}.bg-gray-50\/80{background-color:rgba(249,250,251,0.8)}.bg-\[\#0072CE\]\/10{background-color:rgba(0,114,206,0.1)}.bg-white\/90{background-color:rgba(255,255,255,0.9)}

/* Gradient Backgrounds */
.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.bg-gradient-to-b{background-image:linear-gradient(to bottom,var(--tw-gradient-stops))}.from-smc-50{--tw-gradient-from:#eff6ff var(--tw-gradient-from-position);--tw-gradient-to:rgba(239,246,255,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-smc-500{--tw-gradient-from:#0072CE var(--tw-gradient-from-position);--tw-gradient-to:rgba(0,114,206,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-smc-600{--tw-gradient-from:#005fa8 var(--tw-gradient-from-position);--tw-gradient-to:rgba(0,95,168,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.via-white{--tw-gradient-to:rgba(255,255,255,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#fff var(--tw-gradient-via-position),var(--tw-gradient-to)}.to-accent-50{--tw-gradient-to:#f0fdfa var(--tw-gradient-to-position)}.to-accent-500{--tw-gradient-to:#00A19D var(--tw-gradient-to-position)}.to-smc-700{--tw-gradient-to:#004d8c var(--tw-gradient-to-position)}.to-gray-900{--tw-gradient-to:#111827 var(--tw-gradient-to-position)}

/* Border */
.border{border-width:1px}.border-0{border-width:0}.border-2{border-width:2px}.border-4{border-width:4px}.border-b{border-bottom-width:1px}.border-t{border-top-width:1px}.border-b-2{border-bottom-width:2px}.border-l-4{border-left-width:4px}.border-r{border-right-width:1px}.border-r-2{border-right-width:2px}.border-dashed{border-style:dashed}.border-gray-100{border-color:#f3f4f6}.border-gray-200{border-color:#e5e7eb}.border-gray-300{border-color:#d1d5db}.border-gray-400{border-color:#9ca3af}.border-gray-700{border-color:#374151}.border-gray-800{border-color:#1f2937}.border-red-200{border-color:#fecaca}.border-red-300{border-color:#fca5a5}.border-green-200{border-color:#bbf7d0}.border-green-300{border-color:#86efac}.border-blue-200{border-color:#bfdbfe}.border-blue-300{border-color:#93c5fd}.border-yellow-200{border-color:#fef08a}.border-yellow-300{border-color:#fde047}.border-purple-200{border-color:#e9d5ff}.border-purple-300{border-color:#d8b4fe}.border-amber-400{border-color:#fbbf24}.border-smc-200{border-color:#bfdbfe}.border-smc-500{border-color:#0072CE}.border-transparent{border-color:transparent}.border-white{border-color:#fff}.border-white\/30{border-color:rgba(255,255,255,0.3)}.border-\[\#0072CE\]{border-color:#0072CE}.border-\[\#e2e8f0\]{border-color:#e2e8f0}.border-b-gray-200{border-bottom-color:#e5e7eb}

/* Border Radius */
.rounded-none{border-radius:0}.rounded-sm{border-radius:0.125rem}.rounded{border-radius:0.25rem}.rounded-md{border-radius:0.375rem}.rounded-lg{border-radius:0.5rem}.rounded-xl{border-radius:0.75rem}.rounded-2xl{border-radius:1rem}.rounded-3xl{border-radius:1.5rem}.rounded-full{border-radius:9999px}.rounded-t-lg{border-top-left-radius:0.5rem;border-top-right-radius:0.5rem}.rounded-b-lg{border-bottom-left-radius:0.5rem;border-bottom-right-radius:0.5rem}

/* Shadow */
.shadow-sm{box-shadow:0 1px 2px 0 rgba(0,0,0,0.05)}.shadow{box-shadow:0 1px 3px 0 rgba(0,0,0,0.1),0 1px 2px -1px rgba(0,0,0,0.1)}.shadow-md{box-shadow:0 4px 6px -1px rgba(0,0,0,0.1),0 2px 4px -2px rgba(0,0,0,0.1)}.shadow-lg{box-shadow:0 10px 15px -3px rgba(0,0,0,0.1),0 4px 6px -4px rgba(0,0,0,0.1)}.shadow-xl{box-shadow:0 20px 25px -5px rgba(0,0,0,0.1),0 8px 10px -6px rgba(0,0,0,0.1)}.shadow-2xl{box-shadow:0 25px 50px -12px rgba(0,0,0,0.25)}.shadow-smc-500\/25{box-shadow:0 1px 2px 0 rgba(0,114,206,0.25)}.shadow-blue-500\/20{box-shadow:0 1px 2px 0 rgba(59,130,246,0.2)}

/* Opacity */
.opacity-0{opacity:0}.opacity-50{opacity:0.5}.opacity-60{opacity:0.6}.opacity-75{opacity:0.75}.opacity-80{opacity:0.8}.opacity-90{opacity:0.9}.opacity-100{opacity:1}

/* Filter */
.blur-sm{filter:blur(4px)}.blur-3xl{filter:blur(64px)}.blur-2xl{filter:blur(40px)}.brightness-0{filter:brightness(0)}.invert{filter:invert(100%)}.grayscale{filter:grayscale(100%)}

/* Transition */
.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(0.4,0,0.2,1);transition-duration:150ms}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(0.4,0,0.2,1);transition-duration:150ms}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(0.4,0,0.2,1);transition-duration:150ms}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(0.4,0,0.2,1);transition-duration:150ms}.transition-shadow{transition-property:box-shadow;transition-timing-function:cubic-bezier(0.4,0,0.2,1);transition-duration:150ms}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(0.4,0,0.2,1);transition-duration:150ms}.duration-200{transition-duration:200ms}.duration-300{transition-duration:300ms}.duration-150{transition-duration:150ms}.duration-100{transition-duration:100ms}.duration-500{transition-duration:500ms}.ease-out{transition-timing-function:cubic-bezier(0,0,0.2,1)}.ease-in-out{transition-timing-function:cubic-bezier(0.4,0,0.2,1)}

/* Hover */
.hover\:bg-gray-50:hover{background-color:#f9fafb}.hover\:bg-gray-100:hover{background-color:#f3f4f6}.hover\:bg-gray-200:hover{background-color:#e5e7eb}.hover\:bg-red-50:hover{background-color:#fef2f2}.hover\:bg-red-600:hover{background-color:#dc2626}.hover\:bg-red-700:hover{background-color:#b91c1c}.hover\:bg-green-600:hover{background-color:#16a34a}.hover\:bg-green-700:hover{background-color:#15803d}.hover\:bg-blue-600:hover{background-color:#2563eb}.hover\:bg-blue-700:hover{background-color:#1d4ed8}.hover\:bg-yellow-600:hover{background-color:#ca8a04}.hover\:bg-purple-50:hover{background-color:#faf5ff}.hover\:bg-purple-600:hover{background-color:#9333ea}.hover\:bg-amber-600:hover{background-color:#d97706}.hover\:bg-emerald-600:hover{background-color:#059669}.hover\:bg-indigo-600:hover{background-color:#4f46e5}.hover\:bg-pink-600:hover{background-color:#db2777}.hover\:bg-white\/10:hover{background-color:rgba(255,255,255,0.1)}.hover\:bg-smc-50:hover{background-color:#eff6ff}.hover\:bg-smc-100:hover{background-color:#dbeafe}.hover\:bg-smc-500:hover{background-color:#0072CE}.hover\:bg-smc-600:hover{background-color:#005fa8}.hover\:text-white:hover{color:#fff}.hover\:text-gray-600:hover{color:#4b5563}.hover\:text-gray-700:hover{color:#374151}.hover\:text-gray-900:hover{color:#111827}.hover\:text-red-500:hover{color:#ef4444}.hover\:text-red-600:hover{color:#dc2626}.hover\:text-red-700:hover{color:#b91c1c}.hover\:text-green-600:hover{color:#16a34a}.hover\:text-blue-500:hover{color:#3b82f6}.hover\:text-blue-600:hover{color:#2563eb}.hover\:text-blue-700:hover{color:#1d4ed8}.hover\:text-purple-600:hover{color:#9333ea}.hover\:text-purple-700:hover{color:#7e22ce}.hover\:text-smc-500:hover{color:#0072CE}.hover\:text-smc-600:hover{color:#005fa8}.hover\:shadow-md:hover{box-shadow:0 4px 6px -1px rgba(0,0,0,0.1),0 2px 4px -2px rgba(0,0,0,0.1)}.hover\:shadow-lg:hover{box-shadow:0 10px 15px -3px rgba(0,0,0,0.1),0 4px 6px -4px rgba(0,0,0,0.1)}.hover\:shadow-xl:hover{box-shadow:0 20px 25px -5px rgba(0,0,0,0.1),0 8px 10px -6px rgba(0,0,0,0.1)}.hover\:underline:hover{text-decoration:underline}

/* Focus */
.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-2:focus{box-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.focus\:ring-1:focus{box-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.focus\:ring-red-500:focus{--tw-ring-color:#ef4444}.focus\:ring-blue-500:focus{--tw-ring-color:#3b82f6}.focus\:ring-purple-500:focus{--tw-ring-color:#a855f7}.focus\:ring-smc-500:focus{--tw-ring-color:#0072CE}.focus\:ring-smc-500\/20:focus{--tw-ring-color:rgba(0,114,206,0.2)}.focus\:border-red-500:focus{border-color:#ef4444}.focus\:border-blue-500:focus{border-color:#3b82f6}.focus\:border-smc-500:focus{border-color:#0072CE}

/* Disabled */
.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:0.5}.disabled\:opacity-30:disabled{opacity:0.3}

/* Group */
.group:hover .group-hover\:text-smc-500{color:#0072CE}.group:hover .group-hover\:bg-smc-100{background-color:#dbeafe}.group:hover .group-hover\:scale-105{--tw-scale-x:1.05;--tw-scale-y:1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:opacity-100{opacity:1}

/* Peer */
.peer:checked~.peer-checked\:bg-smc-500{background-color:#0072CE}.peer:checked~.peer-checked\:border-smc-500{border-color:#0072CE}

/* Responsive utilities */
@media(min-width:640px){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.sm\:text-4xl{font-size:2.25rem;line-height:2.5rem}.sm\:text-5xl{font-size:3rem;line-height:1}.sm\:text-3xl{font-size:1.875rem;line-height:2.25rem}.sm\:text-sm{font-size:0.875rem;line-height:1.25rem}.sm\:text-xl{font-size:1.25rem;line-height:1.75rem}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:px-8{padding-left:2rem;padding-right:2rem}.sm\:p-8{padding:2rem}.sm\:py-32{padding-top:8rem;padding-bottom:8rem}.sm\:text-left{text-align:left}}
@media(min-width:768px){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:col-span-2{grid-column:span 2 / span 2}.md\:flex{display:flex}.md\:px-8{padding-left:2rem;padding-right:2rem}}
@media(min-width:1024px){.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:flex{display:flex}.lg\:hidden{display:none}.lg\:text-6xl{font-size:3.75rem;line-height:1}.lg\:px-8{padding-left:2rem;padding-right:2rem}}

/* ===== SMC CUSTOM COMPONENT CLASSES ===== */
/* These replace the @apply-based classes from index.css */

.glass {
  background: rgba(255, 255, 255, 0.8);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border: 1px solid rgba(0, 114, 206, 0.1);
}

.btn-primary {
  background-color: #0072CE;
  color: #fff;
  font-weight: 600;
  padding: 0.625rem 1.5rem;
  border-radius: 0.5rem;
  transition: all 0.2s;
  box-shadow: 0 1px 2px 0 rgba(0,0,0,0.05);
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.btn-primary:hover {
  background-color: #005fa8;
  box-shadow: 0 4px 6px -1px rgba(0,0,0,0.1), 0 2px 4px -2px rgba(0,0,0,0.1);
}
.btn-primary:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

.btn-outline {
  border: 2px solid #0072CE;
  color: #0072CE;
  font-weight: 600;
  padding: 0.625rem 1.5rem;
  border-radius: 0.5rem;
  transition: all 0.2s;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.btn-outline:hover {
  background-color: #0072CE;
  color: #fff;
}
.btn-outline:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

.btn-ghost {
  color: #4b5563;
  font-weight: 500;
  padding: 0.625rem 1rem;
  border-radius: 0.5rem;
  transition: all 0.2s;
}
.btn-ghost:hover {
  color: #111827;
  background-color: #f3f4f6;
}

.card {
  background-color: #fff;
  border-radius: 0.75rem;
  border: 1px solid #f3f4f6;
  box-shadow: 0 1px 2px 0 rgba(0,0,0,0.05);
  transition: all 0.2s;
}
.card:hover {
  box-shadow: 0 4px 6px -1px rgba(0,0,0,0.1), 0 2px 4px -2px rgba(0,0,0,0.1);
}

.input-field {
  width: 100%;
  padding: 0.625rem 1rem;
  border: 1px solid #d1d5db;
  border-radius: 0.5rem;
  color: #111827;
  transition: all 0.2s;
}
.input-field::placeholder {
  color: #9ca3af;
}
.input-field:focus {
  outline: none;
  box-shadow: 0 0 0 2px rgba(0,114,206,0.2);
  border-color: #0072CE;
}

.badge {
  display: inline-flex;
  align-items: center;
  padding: 0.125rem 0.625rem;
  border-radius: 9999px;
  font-size: 0.75rem;
  font-weight: 600;
}

.badge-admin { background-color: #f3e8ff; color: #7e22ce; }
.badge-instructor { background-color: #dbeafe; color: #1d4ed8; }
.badge-staff { background-color: #fef3c7; color: #b45309; }
.badge-student { background-color: #d1fae5; color: #047857; }

.page-container {
  max-width: 80rem;
  margin-left: auto;
  margin-right: auto;
  padding-left: 1rem;
  padding-right: 1rem;
}
@media(min-width:640px) {
  .page-container { padding-left: 1.5rem; padding-right: 1.5rem; }
}
@media(min-width:1024px) {
  .page-container { padding-left: 2rem; padding-right: 2rem; }
}

.section-title {
  font-size: 1.875rem;
  font-weight: 800;
  color: #111827;
  letter-spacing: -0.025em;
}
@media(min-width:640px) {
  .section-title { font-size: 2.25rem; line-height: 2.5rem; }
}

.section-subtitle {
  margin-top: 1rem;
  font-size: 1.125rem;
  color: #6b7280;
  max-width: 42rem;
}

/* ===== CUSTOM ANIMATIONS ===== */
.animate-fade-in {
  animation: fadeIn 0.5s ease-out forwards;
}

.animate-slide-up {
  animation: slideUp 0.6s ease-out forwards;
}

.animate-slide-down {
  animation: slideDown 0.3s ease-out forwards;
}

.animate-pulse-slow {
  animation: pulse 3s ease-in-out infinite;
}

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

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

@keyframes slideDown {
  from { opacity: 0; transform: translateY(-10px); }
  to { opacity: 1; transform: translateY(0); }
}

@keyframes pulse {
  0%, 100% { opacity: 1; }
  50% { opacity: 0.5; }
}

/* Loading spinner */
.spinner {
  border: 3px solid #e2e8f0;
  border-top: 3px solid #0072CE;
  border-radius: 50%;
  width: 40px;
  height: 40px;
  animation: spin 0.8s linear infinite;
}

@keyframes spin {
  to { transform: rotate(360deg); }
}

/* ===== BASE STYLES ===== */
:root {
  --color-primary: #0072CE;
  --color-primary-dark: #005fa8;
  --color-primary-light: #60a5fa;
  --color-accent: #00A19D;
  --color-surface: #ffffff;
  --color-surface-alt: #f8fafc;
  --color-text: #0f172a;
  --color-text-secondary: #64748b;
  --color-border: #e2e8f0;
  --radius-sm: 0.375rem;
  --radius-md: 0.5rem;
  --radius-lg: 0.75rem;
  --radius-xl: 1rem;
}

*, ::before, ::after {
  border-color: var(--color-border);
}

body {
  background-color: var(--color-surface);
  color: var(--color-text);
  font-family: 'Inter', system-ui, -apple-system, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.antialiased {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Scrollbar */
::-webkit-scrollbar { width: 6px; height: 6px; }
::-webkit-scrollbar-track { background: #f1f5f9; }
::-webkit-scrollbar-thumb { background: #94a3b8; border-radius: 3px; }
::-webkit-scrollbar-thumb:hover { background: #64748b; }

/* ===== BASIC RESETS ===== */
[hidden] { display: none !important; }

/* ===== TABLE STYLES ===== */
table { width: 100%; border-collapse: collapse; }
th { text-align: left; font-weight: 600; font-size: 0.75rem; text-transform: uppercase; color: #6b7280; padding: 0.75rem 1rem; border-bottom: 1px solid #e5e7eb; }
td { padding: 0.75rem 1rem; border-bottom: 1px solid #f3f4f6; font-size: 0.875rem; }

/* ===== FORM ELEMENTS ===== */
select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3E%3C/svg%3E");
  background-position: right 0.5rem center;
  background-repeat: no-repeat;
  background-size: 1.5em 1.5em;
  padding-right: 2.5rem;
}

input[type='checkbox'], input[type='radio'] {
  accent-color: #0072CE;
}

textarea {
  resize: vertical;
}

/* ===== SR-ONLY ===== */
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}

/* ===== TEXT UTILITY ===== */
.bg-clip-text {
  -webkit-background-clip: text;
  background-clip: text;
}

.text-transparent {
  color: transparent;
}

/* ===== BACKDROP ===== */
.backdrop-blur-sm {
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
}

/* ===== RING UTILITY ===== */
.ring-2 {
  box-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
}
.ring-amber-400 {
  --tw-ring-color: #fbbf24;
}
.ring-blue-500 {
  --tw-ring-color: #3b82f6;
}

/* ===== LIST STYLE ===== */
.list-disc {
  list-style-type: disc;
  padding-left: 1.5rem;
}
.list-decimal {
  list-style-type: decimal;
  padding-left: 1.5rem;
}

/* ===== DIVIDE ===== */
.divide-y > * + * {
  border-top-width: 1px;
}
.divide-gray-100 > * + * {
  border-color: #f3f4f6;
}
.divide-gray-200 > * + * {
  border-color: #e5e7eb;
}

/* ===== LINE CLAMP ===== */
.line-clamp-2 {
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.line-clamp-3 {
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

/* ===== FILL (SVG icons) ===== */
.fill-smc-500 { fill: #0072CE; }
.fill-current { fill: currentColor; }
.fill-white { fill: #fff; }
.fill-green-500 { fill: #22c55e; }
.fill-yellow-500 { fill: #eab308; }
.fill-red-500 { fill: #ef4444; }

/* ===== STROKE ===== */
.stroke-current { stroke: currentColor; }

/* ===== ASPECT RATIO ===== */
.aspect-video { aspect-ratio: 16 / 9; }
.aspect-square { aspect-ratio: 1 / 1; }

/* ===== OBJECT FIT ===== */
.object-cover { object-fit: cover; }
.object-center { object-position: center; }

/* ===== BREAK WORDS ===== */
.break-all { word-break: break-all; }
.break-words { overflow-wrap: break-word; }

/* ===== UNDERLINE ===== */
.underline { text-decoration: underline; }
.no-underline { text-decoration: none; }

/* ===== SELECT ===== */
.select-none { user-select: none; }
.select-all { user-select: all; }
