@import "https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700;800&family=Inter:wght@400;500;600;700&display=swap";:root{--color-primary:#134d8b;--color-primary-hover:#0e3a69;--color-primary-light:#e7f0f9;--color-secondary:#c72127;--color-secondary-light:#fbeaea;--color-bg-body:#f1f5f9;--color-bg-card:#fff;--color-bg-sidebar:#1e293b;--color-text-main:#0f172a;--color-text-muted:#64748b;--color-text-inverse:#f8fafc;--color-border:#e2e8f0;--color-success:#10b981;--color-success-light:#d1fae5;--color-warning:#f59e0b;--color-warning-light:#fef3c7;--color-danger:#ef4444;--color-danger-light:#fee2e2;--font-family:"Montserrat", "Inter", system-ui, -apple-system, sans-serif;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--shadow-glow:0 0 15px #134d8b4d;--radius-sm:.375rem;--radius-md:.5rem;--radius-lg:.75rem;--radius-xl:1rem}*{box-sizing:border-box;margin:0;padding:0}ul,ol,li{list-style:none}a{color:inherit;text-decoration:none}button,input,select,textarea{color:inherit;background:0 0;border:none;outline:none;font-family:inherit}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#94a3b8}body{font-family:var(--font-family);background-color:var(--color-bg-body);color:var(--color-text-main);-webkit-font-smoothing:antialiased;line-height:1.5}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.hidden{display:none}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.items-start{align-items:flex-start}.items-center{align-items:center}.items-end{align-items:flex-end}.items-stretch{align-items:stretch}.justify-start{justify-content:flex-start}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-between{justify-content:space-between}.flex-1{flex:1}.flex-shrink-0{flex-shrink:0}.flex-wrap{flex-wrap:wrap}.min-w-0{min-width:0}.self-start{align-self:flex-start}.self-center{align-self:center}.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-12{grid-template-columns:repeat(12,minmax(0,1fr))}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.relative{position:relative}.absolute{position:absolute}.fixed{position:fixed}.sticky{position:sticky}.top-0{top:0}.top-1{top:.25rem}.top-2{top:.5rem}.top-3{top:.75rem}.top-4{top:1rem}.top-1\/2{top:50%}.top-20{top:5rem}.top-full{top:100%}.bottom-0{bottom:0}.bottom-4{bottom:1rem}.bottom-6{bottom:1.5rem}.left-0{left:0}.left-3{left:.75rem}.left-4{left:1rem}.left-6{left:1.5rem}.right-0{right:0}.right-1{right:.25rem}.right-2{right:.5rem}.right-3{right:.75rem}.right-4{right:1rem}.right-6{right:1.5rem}.inset-0{inset:0}.-translate-y-1\/2{transform:translateY(-50%)}.-right-4{right:-1rem}.-right-10{right:-2.5rem}.-top-4{top:-1rem}.-top-1{top:-.25rem}.-right-1{right:-.25rem}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.w-full{width:100%}.w-screen{width:100vw}.h-full{height:100%}.h-screen{height:100vh}.min-h-screen{min-height:100vh}.max-w-xs{max-width:20rem}.max-w-sm{max-width:24rem}.max-w-md{max-width:28rem}.max-w-lg{max-width:32rem}.max-w-xl{max-width:36rem}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.max-w-5xl{max-width:64rem}.w-2{width:.5rem}.h-2{height:.5rem}.w-4{width:1rem}.h-4{height:1rem}.w-6{width:1.5rem}.h-6{height:1.5rem}.w-8{width:2rem}.h-8{height:2rem}.w-10{width:2.5rem}.h-10{height:2.5rem}.w-12{width:3rem}.h-12{height:3rem}.w-16{width:4rem}.h-16{height:4rem}.w-20{width:5rem}.h-20{height:5rem}.w-32{width:8rem}.w-40{width:10rem}.w-64{width:16rem}.h-\[72px\]{height:72px}.h-\[calc\(100vh-72px\)\]{height:calc(100vh - 72px)}.h-\[calc\(100vh-108px\)\]{height:calc(100vh - 108px)}.min-w-\[300px\]{min-width:300px}.min-w-\[600px\]{min-width:600px}.min-h-\[60px\]{min-height:60px}.min-h-\[80px\]{min-height:80px}.min-h-\[100px\]{min-height:100px}.min-h-\[120px\]{min-height:120px}.min-h-\[150px\]{min-height:150px}.min-h-\[200px\]{min-height:200px}.min-h-\[300px\]{min-height:300px}.min-h-\[400px\]{min-height:400px}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-12{padding-top:3rem;padding-bottom:3rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-10{padding-left:2.5rem;padding-right:2.5rem}.pt-2{padding-top:.5rem}.pt-4{padding-top:1rem}.pt-5{padding-top:1.25rem}.pb-2{padding-bottom:.5rem}.pb-10{padding-bottom:2.5rem}.pb-20{padding-bottom:5rem}.pl-2{padding-left:.5rem}.pl-4{padding-left:1rem}.pl-10{padding-left:2.5rem!important}.pr-2{padding-right:.5rem}.pr-8{padding-right:2rem}.m-4{margin:1rem}.mb-0{margin-bottom:0}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-auto{margin-top:auto}.ml-auto{margin-left:auto}.ml-3{margin-left:.75rem}.mx-auto{margin-left:auto;margin-right:auto}.mx-2{margin-left:.5rem;margin-right:.5rem}.mx-6{margin-left:1.5rem;margin-right:1.5rem}.border{border:1px solid var(--color-border)}.border-2{border-width:2px}.border-t{border-top:1px solid var(--color-border)}.border-b{border-bottom:1px solid var(--color-border)}.border-b-0{border-bottom-width:0}.border-b-4{border-bottom-width:4px}.border-l{border-left:1px solid var(--color-border)}.border-l-4{border-left:4px solid var(--color-border)}.border-r{border-right:1px solid var(--color-border)}.border-x{border-left:1px solid var(--color-border);border-right:1px solid var(--color-border)}.border-dashed{border-style:dashed}.border-transparent{border-color:#0000}.border-primary{border-color:var(--color-primary)}.border-success{border-color:var(--color-success)}.border-warning{border-color:var(--color-warning)}.border-danger{border-color:var(--color-danger)}.rounded{border-radius:.25rem}.rounded-md{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-full{border-radius:9999px}.rounded-none{border-radius:0}.rounded-t{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.rounded-t-lg{border-top-left-radius:var(--radius-lg);border-top-right-radius:var(--radius-lg)}.rounded-b-xl{border-bottom-left-radius:var(--radius-xl);border-bottom-right-radius:var(--radius-xl)}.rounded-r-lg{border-top-right-radius:var(--radius-lg);border-bottom-right-radius:var(--radius-lg)}.text-xs{font-size:.75rem}.text-sm{font-size:.875rem}.text-base{font-size:1rem}.text-lg{font-size:1.125rem}.text-xl{font-size:1.25rem}.text-2xl{font-size:1.5rem}.text-3xl{font-size:1.875rem}.text-4xl{font-size:2.25rem}.text-5xl{font-size:3rem}.text-6xl{font-size:3.75rem}.font-normal{font-weight:400}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.font-black{font-weight:900}.font-mono{font-family:monospace}.italic{font-style:italic}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.whitespace-nowrap{white-space:nowrap}.uppercase{text-transform:uppercase}.text-white{color:#fff}.text-main{color:var(--color-text-main)}.text-muted{color:var(--color-text-muted)}.text-primary{color:var(--color-primary)}.text-danger{color:var(--color-danger)}.text-success{color:var(--color-success)}.text-warning{color:var(--color-warning)}.bg-white{--bg-opacity:1;background-color:rgba(255, 255, 255, var(--bg-opacity))}.bg-transparent{background-color:#0000}.bg-black{--bg-opacity:1;background-color:rgba(0, 0, 0, var(--bg-opacity))}.bg-card{--bg-opacity:1;background-color:rgba(255, 255, 255, var(--bg-opacity))}.bg-body{--bg-opacity:1;background-color:rgba(241, 245, 249, var(--bg-opacity))}.bg-primary{--bg-opacity:1;background-color:rgba(79, 70, 229, var(--bg-opacity))}.bg-primary-light{--bg-opacity:1;background-color:rgba(224, 231, 255, var(--bg-opacity))}.bg-success{--bg-opacity:1;background-color:rgba(16, 185, 129, var(--bg-opacity))}.bg-success-light{--bg-opacity:1;background-color:rgba(209, 250, 229, var(--bg-opacity))}.bg-warning{--bg-opacity:1;background-color:rgba(245, 158, 11, var(--bg-opacity))}.bg-warning-light{--bg-opacity:1;background-color:rgba(254, 243, 199, var(--bg-opacity))}.bg-danger{--bg-opacity:1;background-color:rgba(239, 68, 68, var(--bg-opacity))}.bg-danger-light{--bg-opacity:1;background-color:rgba(254, 226, 226, var(--bg-opacity))}.bg-secondary{--bg-opacity:1;background-color:rgba(199, 33, 39, var(--bg-opacity))}.bg-opacity-10{--bg-opacity:.1}.bg-opacity-20{--bg-opacity:.2}.bg-opacity-30{--bg-opacity:.3}.bg-opacity-50{--bg-opacity:.5}.bg-gradient-to-br{background-image:linear-gradient(to bottom right, var(--color-primary), var(--color-secondary))}.opacity-0{opacity:0}.opacity-10{opacity:.1}.opacity-20{opacity:.2}.opacity-30{opacity:.3}.opacity-50{opacity:.5}.opacity-75{opacity:.75}.opacity-80{opacity:.8}.opacity-100{opacity:1}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.overflow-x-auto{overflow-x:auto}.overflow-x-hidden{overflow-x:hidden}.scrollbar-hide::-webkit-scrollbar{display:none}.scrollbar-hide{-ms-overflow-style:none;scrollbar-width:none}.cursor-pointer{cursor:pointer}.cursor-not-allowed{cursor:not-allowed}.select-none{-webkit-user-select:none;user-select:none}.resize-none{resize:none}.resize-y{resize:vertical}.outline-none{outline:none}.shadow-sm{box-shadow:var(--shadow-sm)}.shadow-md{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}.shadow-xl{box-shadow:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a}.drop-shadow-sm{filter:drop-shadow(0 1px 1px #0000000d)}.rotate-45{transform:rotate(45deg)}.transition-all{transition:all .25s cubic-bezier(.4,0,.2,1)}.transition-colors{transition:color .15s,background-color .15s,border-color .15s}.transition-opacity{transition:opacity .15s}.transition-transform{transition:transform .15s}.duration-200{transition-duration:.2s}.hover-lift:hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:.3s ease-out forwards fadeIn}@keyframes slideInRight{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.1)}}.animate-pulse{animation:2s cubic-bezier(.4,0,.6,1) infinite pulse}@keyframes ping{75%,to{opacity:0;transform:scale(2)}}.animate-ping{animation:1.5s cubic-bezier(0,0,.2,1) infinite ping}.group:hover .group-hover\:opacity-100{opacity:1}.group:hover .group-hover\:text-primary{color:var(--color-primary)}.group:hover .group-hover\:border-primary{border-color:var(--color-primary)}.group:hover .group-hover\:scale-110{transform:scale(1.1)}.group-focus-within\:text-primary:focus-within{color:var(--color-primary)}.hover\:underline:hover{text-decoration:underline}.hover\:bg-white:hover{background-color:#fff}.hover\:text-main:hover{color:var(--color-text-main)}.hover\:text-primary:hover{color:var(--color-primary)}.hover\:text-danger:hover{color:var(--color-danger)}.hover\:bg-primary-light:hover{background-color:var(--color-primary-light)}.hover\:bg-danger-light:hover{background-color:var(--color-danger-light)}.hover\:shadow-glow:hover{box-shadow:var(--shadow-glow)}.hover\:shadow-lg:hover{box-shadow:var(--shadow-lg)}.btn{border-radius:var(--radius-md);cursor:pointer;white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;gap:.5rem;padding:.5rem 1rem;font-family:inherit;font-size:.875rem;font-weight:500;transition:all .2s;display:inline-flex}.btn-sm{padding:.25rem .5rem;font-size:.75rem}.btn:active{transform:scale(.98)}.btn-primary{background-image:linear-gradient(135deg, var(--color-primary-hover) 0%, var(--color-primary) 50%, #1a5fa8 100%);color:#fff;box-shadow:0 2px 8px -2px #134d8b73}.btn-primary:hover{background-image:linear-gradient(135deg, #0a2c50 0%, var(--color-primary-hover) 60%, var(--color-primary) 100%);transform:translateY(-1px);box-shadow:0 4px 14px #134d8b73}.btn-outline{border-color:var(--color-border);color:var(--color-text-main);background-color:#0000}.btn-outline:hover{background-color:var(--color-bg-body);border-color:var(--color-text-muted)}.btn-ghost{color:var(--color-text-muted);background-color:#0000}.btn-ghost:hover{background-color:var(--color-bg-body);color:var(--color-primary)}.btn-icon{border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-bg-card);width:2rem;height:2rem;color:var(--color-text-muted);justify-content:center;align-items:center;transition:all .2s;display:inline-flex}.btn-icon:hover{background:var(--color-bg-body);color:var(--color-primary)}.form-group{flex-direction:column;gap:.5rem;margin-bottom:1.25rem;display:flex}.form-label{color:var(--color-text-main);font-size:.875rem;font-weight:600}.input{border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg-card);width:100%;color:var(--color-text-main);outline:none;padding:.625rem .875rem;font-family:inherit;font-size:.875rem;transition:all .2s}.input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.input.border-danger,.input.border-danger:focus{border-color:var(--color-danger);box-shadow:0 0 0 3px var(--color-danger-light)}.custom-checkbox{appearance:none;border:2px solid var(--color-border);background-color:var(--color-bg-card);cursor:pointer;border-radius:4px;width:1.25rem;height:1.25rem;transition:all .2s;position:relative}.custom-checkbox:checked{background-color:var(--color-primary);border-color:var(--color-primary)}.custom-checkbox:checked:after{content:"";border:2px solid #fff;border-width:0 2px 2px 0;width:5px;height:10px;position:absolute;top:1px;left:5px;transform:rotate(45deg)}.badge{white-space:nowrap;border-radius:9999px;align-items:center;padding:.25rem .75rem;font-size:.75rem;font-weight:700;line-height:1;display:inline-flex}.badge-success{background-color:var(--color-success-light);color:#065f46}.badge-warning{background-color:var(--color-warning-light);color:#92400e}.badge-danger{background-color:var(--color-danger-light);color:#991b1b}.badge-neutral{color:#475569;background-color:#f1f5f9}.badge-primary{background-color:var(--color-primary-light);color:var(--color-primary-hover)}.modal-backdrop{z-index:60;padding:max(1rem, env(safe-area-inset-top)) 1rem 1rem;background:#0f172a73;justify-content:center;align-items:flex-start;display:flex;position:fixed;inset:0;overflow-y:auto}.modal-content{background:var(--color-bg-card);border-radius:var(--radius-lg);border:1px solid var(--color-border);width:100%;max-height:calc(100vh - 2rem);box-shadow:var(--shadow-lg);flex-direction:column;margin:auto 0;display:flex;overflow:hidden}.modal-header{border-bottom:1px solid var(--color-border);flex-shrink:0;padding:1.25rem 1.5rem}.modal-body{min-height:0;padding:1.5rem;overflow-y:auto}.modal-footer{border-top:1px solid var(--color-border);background:var(--color-bg-body);flex-shrink:0;padding:1rem 1.5rem}.table-container{border-radius:var(--radius-lg);width:100%;overflow-x:auto}.table{border-collapse:separate;border-spacing:0;width:100%;font-size:.875rem}.table th{background-color:var(--color-primary);color:#fff;text-align:left;border-bottom:3px solid var(--color-secondary);white-space:nowrap;text-transform:uppercase;letter-spacing:.06em;padding:1rem;font-size:.72rem;font-weight:700}.table td{border-bottom:1px solid var(--color-border);color:var(--color-text-main);padding:1rem;transition:background-color .2s}.table tbody tr:hover td{background-color:#f8fafc}.empty-state{text-align:center;color:var(--color-text-muted);flex-direction:column;justify-content:center;align-items:center;padding:3rem 1rem;animation:.4s ease-out fadeIn;display:flex}.empty-state-icon{background-color:var(--color-bg-body);width:64px;height:64px;color:var(--color-primary);border-radius:50%;justify-content:center;align-items:center;margin-bottom:1rem;display:flex}@media (height<=760px){.login-card{transform:scale(.88)}}@media (height<=640px){.login-card{transform:scale(.75)}}@media (height<=540px){.login-card{transform:scale(.62)}}.page-hero{border-radius:var(--radius-xl);color:#fff;box-shadow:var(--shadow-md);background-image:linear-gradient(135deg,#0e3a69 0%,#134d8b 55%,#1a5fa8 100%);padding:1.75rem 2rem;position:relative;overflow:hidden}.page-hero:before{content:"";background:var(--color-secondary);width:6px;position:absolute;top:0;bottom:0;left:0}.page-hero:after{content:"";background:radial-gradient(circle,#ffffff24,#0000 70%);width:260px;height:260px;position:absolute;top:-60px;right:-60px}.page-hero h2{letter-spacing:-.01em;color:#fff;font-size:1.6rem;font-weight:800}.page-hero p{color:#ffffffd9;margin-top:.25rem}.stat-card{--stat-color:var(--color-primary);--stat-color-2:#1a5fa8;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);align-items:center;gap:1rem;padding:1.5rem;transition:transform .2s,box-shadow .2s;display:flex;position:relative;overflow:hidden}.stat-card:before{content:"";background:linear-gradient(90deg, var(--stat-color), var(--stat-color-2));height:4px;position:absolute;top:0;left:0;right:0}.stat-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}.stat-icon{border-radius:var(--radius-lg);color:#fff;background:linear-gradient(135deg, var(--stat-color), var(--stat-color-2));width:3.25rem;height:3.25rem;box-shadow:0 6px 14px -5px var(--stat-color);flex-shrink:0;justify-content:center;align-items:center;display:flex}:is(.stat-card:has(.stat-icon--success),.stat-icon--success){--stat-color:#0ea371;--stat-color-2:#34d399}:is(.stat-card:has(.stat-icon--warning),.stat-icon--warning){--stat-color:#f59e0b;--stat-color-2:#fbbf24}:is(.stat-card:has(.stat-icon--secondary),.stat-icon--secondary){--stat-color:#c72127;--stat-color-2:#e04a50}:is(.stat-card:has(.stat-icon--danger),.stat-icon--danger){--stat-color:#ef4444;--stat-color-2:#f87171}.stat-label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.78rem;font-weight:700}.stat-value{color:var(--color-text-main);font-size:2rem;font-weight:800;line-height:1.15}.nav-active{background-image:linear-gradient(135deg, var(--color-primary-hover) 0%, var(--color-primary) 70%, #1a5fa8 100%);box-shadow:0 4px 12px -4px #134d8b80;color:#fff!important;border-left:4px solid var(--color-secondary)!important}@media (width<=1023px){.app-sidebar{z-index:40;box-shadow:var(--shadow-lg);transition:transform .25s;position:fixed;top:108px;left:0;transform:translate(-100%);width:16rem!important}.app-sidebar.app-sidebar--open{transform:translate(0)}.sidebar-backdrop{z-index:35;background:#0f172a80;position:fixed;inset:108px 0 0}}@media (width>=1024px){.sidebar-backdrop{display:none}}@media (width<=639px){main .justify-between{flex-wrap:wrap;row-gap:.75rem}main .flex.gap-2,main .flex.gap-3{flex-wrap:wrap}}.max-w-16{max-width:4rem}@media (width>=640px){.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:w-auto{width:auto}.sm\:flex-none{flex:none}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:block{display:block}.sm\:pl-2{padding-left:.5rem}.sm\:self-center{align-self:center}.sm\:max-w-xs{max-width:20rem}.sm\:max-w-\[200px\]{max-width:200px}}@media (width>=768px){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:block{display:block}.md\:flex{display:flex}.md\:inline-flex{display:inline-flex}.md\:inline{display:inline}.md\:left-\[280px\]{left:280px}.md\:col-span-2{grid-column:span 2/span 2}.md\:col-span-8{grid-column:span 8/span 8}.md\:col-span-12{grid-column:span 12/span 12}}@media (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\:col-span-2{grid-column:span 2/span 2}.lg\:col-span-3{grid-column:span 3/span 3}}.whitespace-pre-wrap{white-space:pre-wrap}.font-serif{font-family:Georgia,Times New Roman,serif}.banner{border-radius:var(--radius-md);align-items:center;gap:.5rem;padding:.75rem 1rem;font-size:.875rem;font-weight:500;display:flex}.banner--warning{background-color:var(--color-warning-light);color:#92400e;border:1px solid #f59e0b40}.banner--danger{background-color:var(--color-danger-light);color:#991b1b;border:1px solid #ef444440}.dropzone{border:2px dashed var(--color-border);border-radius:var(--radius-lg);text-align:center;cursor:pointer;background:radial-gradient(ellipse at 50% 0%, var(--color-primary-light) 0%, transparent 65%), var(--color-bg-card);background-position:0 100%;background-size:100% 200%;flex-direction:column;align-items:center;padding:2.75rem 2rem;transition:border-color .2s,background-position .35s,box-shadow .2s;display:flex;position:relative}.dropzone:hover{border-color:var(--color-primary);background-position:0 0}.dropzone--drag{border-color:var(--color-primary);box-shadow:0 0 0 4px var(--color-primary-light), var(--shadow-md);background-position:0 0;border-style:solid}.dropzone--drag .dropzone-icon{transform:translateY(-4px)scale(1.08)}.dropzone--disabled{opacity:.6;pointer-events:none}.dropzone-icon{background-color:var(--color-primary-light);width:4rem;height:4rem;color:var(--color-primary);box-shadow:inset 0 0 0 8px var(--color-bg-card);outline:1px solid var(--color-border);border-radius:9999px;justify-content:center;align-items:center;margin-bottom:1rem;transition:transform .25s;display:flex}.dropzone:hover .dropzone-icon{transform:translateY(-4px)scale(1.08)}.filetype-tag{border-radius:var(--radius-sm);border:1px solid var(--color-border);background-color:var(--color-bg-body);letter-spacing:.04em;color:var(--color-text-muted);text-transform:uppercase;align-items:center;gap:.3rem;padding:.2rem .6rem;font-size:.6875rem;font-weight:700;display:inline-flex}.file-card{border:1px solid var(--color-border);border-left:4px solid var(--color-success);border-radius:var(--radius-md);background-color:var(--color-bg-card);box-shadow:var(--shadow-sm);align-items:center;gap:.875rem;margin-top:1.25rem;padding:.875rem 1rem;display:flex}.file-card-icon{border-radius:var(--radius-sm);background-color:var(--color-success-light);width:2.5rem;height:2.5rem;color:var(--color-success);flex-shrink:0;justify-content:center;align-items:center;display:flex}.file-card-meta{flex:1;min-width:0}.file-card-name{color:var(--color-text-main);text-overflow:ellipsis;white-space:nowrap;font-size:.875rem;font-weight:600;overflow:hidden}.file-card-size{color:var(--color-text-muted);margin-top:.125rem;font-size:.75rem}.file-card-remove{border-radius:var(--radius-sm);width:2rem;height:2rem;color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;transition:background-color .15s,color .15s;display:flex}.file-card-remove:hover{background-color:var(--color-danger-light);color:var(--color-danger)}.editor{border:1px solid var(--color-border);border-radius:var(--radius-lg);background-color:var(--color-bg-card);transition:border-color .2s,box-shadow .2s;overflow:hidden}.editor:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.editor-toolbar{background-color:var(--color-bg-body);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;padding:.5rem .75rem;display:flex}.editor-tabs{background-color:var(--color-bg-card);border-radius:var(--radius-md);border:1px solid var(--color-border);gap:.25rem;padding:.2rem;display:inline-flex}.editor-tab{border-radius:var(--radius-sm);color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;align-items:center;gap:.4rem;padding:.3rem .8rem;font-size:.8125rem;font-weight:600;transition:background-color .15s,color .15s;display:inline-flex}.editor-tab:hover{color:var(--color-text-main)}.editor-tab--active{background-color:var(--color-primary);color:#fff}.editor-tab--active:hover{color:#fff}.editor-hint{color:var(--color-text-muted);align-items:center;gap:.35rem;font-size:.75rem;display:inline-flex}.editor-textarea{resize:vertical;width:100%;min-height:320px;color:var(--color-text-main);background-color:var(--color-bg-card);border:none;outline:none;padding:1.25rem 1.5rem;font-family:Georgia,Times New Roman,serif;font-size:.9375rem;line-height:1.75;display:block}.editor-textarea::placeholder{color:#a3aec2;font-style:italic}.editor-preview{min-height:320px;max-height:480px;padding:1.25rem 1.5rem;overflow-y:auto}.editor-statusbar{background-color:var(--color-bg-body);border-top:1px solid var(--color-border);color:var(--color-text-muted);font-variant-numeric:tabular-nums;justify-content:flex-end;align-items:center;gap:1rem;padding:.45rem 1rem;font-size:.75rem;display:flex}.editor-count--ok{color:var(--color-success);font-weight:600}.editor-count--low{color:var(--color-warning);font-weight:600}.markdown-body{color:var(--color-text-main);font-size:.9375rem;line-height:1.75}.markdown-body>:first-child{margin-top:0}.markdown-body h1,.markdown-body h2,.markdown-body h3,.markdown-body h4{margin:1.5em 0 .5em;font-weight:700;line-height:1.3}.markdown-body h1{border-bottom:1px solid var(--color-border);padding-bottom:.3em;font-size:1.375rem}.markdown-body h2{font-size:1.125rem}.markdown-body h3{font-size:1rem}.markdown-body h4{font-size:.9375rem}.markdown-body p{margin:0 0 .875em}.markdown-body ul,.markdown-body ol{margin:0 0 .875em;padding-left:1.5rem}.markdown-body ul{list-style:outside}.markdown-body ol{list-style:decimal}.markdown-body li{list-style:inherit;margin-bottom:.25em}.markdown-body blockquote{border-left:3px solid var(--color-primary);color:var(--color-text-muted);margin:0 0 .875em;padding:.25em 0 .25em 1rem;font-style:italic}.markdown-body code{background-color:var(--color-bg-body);border:1px solid var(--color-border);border-radius:.25rem;padding:.1em .35em;font-family:SF Mono,SFMono-Regular,Consolas,monospace;font-size:.8125em}.markdown-body pre{background-color:var(--color-bg-sidebar);color:var(--color-text-inverse);border-radius:var(--radius-md);margin:0 0 .875em;padding:1rem;overflow-x:auto}.markdown-body pre code{color:inherit;background:0 0;border:none;padding:0;font-size:.8125rem}.markdown-body table{border-collapse:collapse;width:100%;margin:0 0 .875em}.markdown-body th,.markdown-body td{border:1px solid var(--color-border);text-align:left;padding:.4rem .75rem}.markdown-body th{background-color:var(--color-bg-body);font-weight:600}.markdown-body a{color:var(--color-primary);text-decoration:underline}.markdown-body hr{border:none;border-top:1px solid var(--color-border);margin:1.5em 0}.submitted-preview{background-color:var(--color-bg-card);max-height:420px;overflow-y:auto}
