*,:before,:after{box-sizing:border-box;margin:0;padding:0}button{color:inherit;font:inherit}:root{--green-950:#052010;--green-900:#0d2818;--green-800:#1b4332;--green-700:#2d6a4f;--green-600:#40916c;--green-500:#52b788;--green-400:#74c69d;--green-300:#95d5b2;--green-200:#b7e4c7;--green-100:#d8f3dc;--green-50:#f0fff4;--gold-700:#92690b;--gold-600:#b8860b;--gold-500:#d4a843;--gold-400:#e2b95a;--gold-200:#f5dfa0;--gold-100:#fef3c7;--gray-950:#0a0f14;--gray-900:#111827;--gray-800:#1f2937;--gray-700:#374151;--gray-600:#4b5563;--gray-500:#6b7280;--gray-400:#9ca3af;--gray-300:#d1d5db;--gray-200:#e5e7eb;--gray-100:#f3f4f6;--gray-50:#f9fafb;--warm-bg:#f8f6f2;--warm-50:#f4f1ec;--warm-100:#ede7dc;--warm-200:#ddd3c5;--warm-300:#c9b9a6;--red-600:#dc2626;--red-100:#fee2e2;--amber-600:#d97706;--white:#fff;--black:#0a0f14;--primary:var(--green-800);--primary-hover:var(--green-700);--accent:var(--gold-500);--accent-hover:var(--gold-600);--bg:var(--warm-bg);--bg-subtle:var(--warm-50);--surface:var(--white);--surface-raised:var(--white);--surface-hover:var(--warm-50);--border:var(--warm-100);--border-strong:var(--warm-200);--border-focus:var(--green-500);--text:#16213e;--text-secondary:#374151;--text-muted:var(--gray-500);--text-subtle:var(--gray-400);--text-inverse:var(--white);--font-sans:"Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-serif:"Lora", "Georgia", serif;--font-mono:"JetBrains Mono", "Courier New", monospace;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-xl:20px;--radius-2xl:28px;--radius-full:9999px;--shadow-xs:0 1px 2px #0000000a;--shadow-sm:0 1px 3px #00000014, 0 1px 2px #0000000d;--shadow-md:0 4px 8px #00000012, 0 2px 4px #0000000d;--shadow-lg:0 10px 24px #00000014, 0 4px 8px #0000000a;--shadow-xl:0 20px 40px #0000001a, 0 8px 16px #0000000f;--shadow-glow:0 0 0 3px #40916c2e;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-inout:cubic-bezier(.4, 0, .2, 1);--transition-fast:.12s var(--ease-inout);--transition-base:.22s var(--ease-out);--transition-slow:.36s var(--ease-out)}.dark{--primary:var(--green-400);--primary-hover:var(--green-300);--accent:var(--gold-400);--accent-hover:var(--gold-500);--bg:#0e1117;--bg-subtle:#131920;--surface:#161d27;--surface-raised:#1c2534;--surface-hover:#1e2a3a;--border:#ffffff12;--border-strong:#ffffff21;--border-focus:var(--green-500);--text:#edf0f5;--text-secondary:#c8d0dc;--text-muted:#7a8899;--text-subtle:#4d5d70;--text-inverse:#0e1117;--shadow-sm:0 1px 3px #00000080;--shadow-md:0 4px 8px #00000080;--shadow-lg:0 10px 24px #0009;--shadow-xl:0 20px 40px #000000b3;--shadow-glow:0 0 0 3px #74c69d2e}html{-webkit-font-smoothing:antialiased;scroll-behavior:smooth;height:100%;font-size:16px;overflow:hidden}body{height:100%;font-family:var(--font-sans);background:var(--bg);color:var(--text);line-height:1.6;transition:background-color .22s,color .22s;overflow:hidden}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--warm-200);border-radius:99px}.dark ::-webkit-scrollbar-thumb{background:#ffffff1a}::selection{background:var(--green-100);color:var(--green-900)}.dark ::selection{color:var(--green-200);background:#74c69d33}:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px;border-radius:var(--radius-sm)}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slide-down{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}@keyframes scale-in{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}@keyframes notif-pop{0%{opacity:0;transform:scale(.4)rotate(-12deg)}to{opacity:1;transform:scale(1)rotate(0)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes cursor-blink{0%,50%{opacity:1}51%,to{opacity:0}}@keyframes loading-bounce{0%,80%,to{opacity:.2;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}@keyframes toast-slide{0%{opacity:0;transform:translate(calc(100% + 16px))}to{opacity:1;transform:translate(0)}}@keyframes section-reveal{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes typing-dot{0%,60%,to{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-4px)}}@keyframes pulse-glow{0%,to{box-shadow:0 0 #40916c66}50%{box-shadow:0 0 0 8px #40916c00}}@keyframes progress-bar{0%{width:0}to{width:100%}}.animate-fade-in{animation:.22s forwards fade-in}.animate-slide-up{animation:.36s forwards slide-up}.animate-scale-in{animation:.22s forwards scale-in}svg.sidebar-logo-mark,svg.nav-mark,svg.about-logo-mark,svg.notfound-mark,svg.pwa-prompt-mark,svg.auth-loading-mark,svg.admin-loading-mark{box-shadow:none;background:0 0}.pwa-prompt{z-index:9998;background:var(--green-900);color:#fff;border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);border:1px solid #ffffff1a;align-items:center;gap:14px;width:calc(100% - 32px);max-width:420px;padding:16px 20px;animation:.4s cubic-bezier(.16,1,.3,1) forwards slide-up;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.pwa-prompt-mark{background:linear-gradient(135deg, var(--green-600), var(--green-400));color:#fff;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:13px;font-weight:800;display:flex}.pwa-prompt-content{flex:1;min-width:0}.pwa-prompt-title{color:#fff;margin-bottom:2px;font-size:14px;font-weight:700}.pwa-prompt-desc{color:var(--green-200);font-size:12px;line-height:1.4}.pwa-prompt-actions{flex-direction:column;flex-shrink:0;gap:6px;display:flex}.pwa-prompt-install{color:var(--green-900);border-radius:var(--radius-md);cursor:pointer;font-size:13px;font-weight:700;font-family:var(--font-sans);transition:all var(--transition-fast);white-space:nowrap;background:#fff;border:none;padding:8px 16px}.pwa-prompt-install:hover{background:var(--green-50)}.pwa-prompt-dismiss{color:#ffffff80;cursor:pointer;font-size:12px;font-family:var(--font-sans);text-align:center;transition:color var(--transition-fast);background:0 0;border:none;padding:6px}.pwa-prompt-dismiss:hover{color:#fff}
