.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.55rem 1.25rem;border-radius:var(--radius-sm);font-size:.9rem;font-weight:600;font-family:var(--font-body);cursor:pointer;transition:all .15s ease;border:none;text-decoration:none;white-space:nowrap;line-height:1.4}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{color:var(--color-accent-primary-text);background:var(--color-accent-primary)}.btn-primary:hover{background:var(--color-accent-primary-hover);color:var(--color-accent-primary-text)}.btn-secondary{color:var(--color-accent-secondary);background:transparent;border:1px solid var(--color-accent-secondary)}.btn-secondary:hover{background:#087f8c0f;color:var(--color-accent-secondary-hover);border-color:var(--color-accent-secondary-hover)}.btn-outline{color:var(--color-text-primary);background:transparent;border:1px solid var(--color-border)}.btn-outline:hover{border-color:var(--color-text-secondary);background:var(--color-bg-surface-hover)}.btn-ghost{color:var(--color-text-secondary);background:transparent}.btn-ghost:hover{color:var(--color-text-primary);background:var(--color-bg-surface-hover)}.btn-success{color:var(--color-text-on-dark);background:var(--color-success)}.btn-success:hover{background:var(--color-success-hover);color:var(--color-text-on-dark)}.btn-full{width:100%}.btn-lg{padding:.7rem 1.5rem;font-size:.95rem}.btn-google{font-weight:500}.google-icon{flex-shrink:0}.msg{padding:.6rem .85rem;border-radius:var(--radius-sm);font-size:.83rem;margin-bottom:1rem;line-height:1.45}.msg-error{background:var(--color-danger-bg);border:1px solid var(--color-danger-border);color:var(--color-danger)}.msg-success{background:var(--color-success-bg);border:1px solid var(--color-success-border);color:var(--color-success)}.alert{padding:.75rem 1rem;border-radius:var(--radius-sm);font-size:.875rem;font-weight:500;margin-bottom:2rem}.alert-success{background:var(--color-success-bg);border:1px solid var(--color-success-border);color:var(--color-success)}.field{display:flex;flex-direction:column;gap:.35rem}.field label{font-size:.82rem;font-weight:600;color:var(--color-text-secondary)}.field input{padding:.6rem .85rem;border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-bg-primary);color:var(--color-text-primary);font-size:.9rem;font-family:var(--font-body);transition:border-color .15s ease,box-shadow .15s ease;width:100%}.field input::placeholder{color:var(--color-text-tertiary);opacity:.7}.field input:focus{outline:none;border-color:var(--color-accent-secondary);box-shadow:0 0 0 3px #087f8c1f}.field input[aria-invalid=true]{border-color:var(--color-danger)}.field-error{font-size:.78rem;color:var(--color-danger);min-height:1rem;line-height:1.3}.auth-divider{display:flex;align-items:center;gap:1rem;margin:1.5rem 0;color:var(--color-text-tertiary);font-size:.8rem}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:var(--color-border)}.auth-footer{text-align:center;margin-top:1.5rem;font-size:.85rem;color:var(--color-text-secondary)}.auth-footer a{font-weight:600}:root{--color-bg-primary: #f8f9fa;--color-bg-surface: #ffffff;--color-bg-surface-hover: #f0f1f3;--color-bg-primary-alpha: rgba(248, 249, 250, .9);--color-border: #e2e4e9;--color-text-primary: #000814;--color-text-secondary: #001d3d;--color-text-tertiary: #4a5568;--color-text-on-dark: #ffffff;--color-accent-primary: #ffc300;--color-accent-primary-hover: #ffd60a;--color-accent-primary-glow: rgba(255, 195, 0, .12);--color-accent-primary-text: #000814;--color-accent-secondary: #087f8c;--color-accent-secondary-hover: #0a9faf;--color-accent-light: #ffd60a;--color-success: #2ecc71;--color-success-hover: #27ae60;--color-success-bg: rgba(46, 204, 113, .08);--color-success-border: rgba(46, 204, 113, .2);--color-warning: #f39c12;--color-danger: #e74c3c;--color-danger-bg: rgba(231, 76, 60, .06);--color-danger-border: rgba(231, 76, 60, .18);--font-body: "DM Sans", system-ui, sans-serif;--font-mono: "Space Mono", monospace;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--shadow-card: 0 1px 3px rgba(0, 0, 0, .06), 0 0 0 1px rgba(0, 0, 0, .04);--shadow-elevated: 0 8px 32px rgba(0, 0, 0, .08), 0 0 0 1px rgba(0, 0, 0, .04);--max-width: 1200px;--header-height: 64px;--color-bg: var(--color-bg-primary);--color-surface: var(--color-bg-surface);--color-surface-hover: var(--color-bg-surface-hover);--color-text: var(--color-text-primary);--color-text-muted: var(--color-text-secondary);--color-accent: var(--color-accent-primary);--color-accent-hover: var(--color-accent-primary-hover);--color-accent-glow: var(--color-accent-primary-glow)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-family:var(--font-body);background:var(--color-bg-primary);color:var(--color-text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{min-height:100dvh;line-height:1.6}a{color:var(--color-accent-secondary);text-decoration:none;transition:color .15s ease}a:hover{color:var(--color-accent-secondary-hover)}img{max-width:100%;display:block}.container{width:100%;max-width:var(--max-width);margin:0 auto;padding:0 1.5rem}.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}.logo[data-astro-cid-tvrurpns]{display:inline-flex;align-items:center;text-decoration:none;transition:opacity .15s ease}.logo[data-astro-cid-tvrurpns]:hover{opacity:.85}.logo-full[data-astro-cid-tvrurpns]{flex-shrink:0;width:auto}.logo-mobile[data-astro-cid-tvrurpns]{display:none;flex-shrink:0}@media(max-width:768px){.logo-full[data-astro-cid-tvrurpns]{display:none}.logo-mobile[data-astro-cid-tvrurpns]{display:block}}.header[data-astro-cid-3ef6ksr2]{position:sticky;top:0;z-index:100;height:var(--header-height);border-bottom:1px solid var(--color-border);background:var(--color-bg-primary-alpha);backdrop-filter:blur(16px)}.header-inner[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;justify-content:space-between;height:100%;gap:2rem}.nav-desktop[data-astro-cid-3ef6ksr2]{display:flex;gap:.25rem}.nav-link[data-astro-cid-3ef6ksr2]{padding:.4rem .75rem;border-radius:var(--radius-sm);color:var(--color-text-tertiary);font-size:.9rem;font-weight:500;transition:all .15s ease}.nav-link[data-astro-cid-3ef6ksr2]:hover{color:var(--color-text-primary);background:var(--color-bg-surface-hover)}.auth-section-desktop[data-astro-cid-3ef6ksr2]{display:flex;align-items:center}.user-menu[data-astro-cid-3ef6ksr2],.auth-buttons[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;gap:.5rem}.header[data-astro-cid-3ef6ksr2] .btn[data-astro-cid-3ef6ksr2]{padding:.45rem 1rem;font-size:.875rem}.hamburger[data-astro-cid-3ef6ksr2]{display:none;flex-direction:column;justify-content:center;gap:5px;width:36px;height:36px;padding:6px;border:none;border-radius:var(--radius-sm);background:transparent;cursor:pointer;transition:background .15s ease;-webkit-tap-highlight-color:transparent}.hamburger[data-astro-cid-3ef6ksr2]:hover{background:var(--color-bg-surface-hover)}.hamburger-line[data-astro-cid-3ef6ksr2]{display:block;width:100%;height:2px;background:var(--color-text-primary);border-radius:1px;transition:transform .25s ease,opacity .2s ease;transform-origin:center}.hamburger[data-astro-cid-3ef6ksr2].is-active .hamburger-line[data-astro-cid-3ef6ksr2]:nth-child(1){transform:translateY(7px) rotate(45deg)}.hamburger[data-astro-cid-3ef6ksr2].is-active .hamburger-line[data-astro-cid-3ef6ksr2]:nth-child(2){opacity:0}.hamburger[data-astro-cid-3ef6ksr2].is-active .hamburger-line[data-astro-cid-3ef6ksr2]:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.mobile-menu[data-astro-cid-3ef6ksr2]{display:none;position:fixed;top:var(--header-height);left:0;right:0;width:100%;height:calc(100vh - var(--header-height));height:calc(100dvh - var(--header-height));max-height:calc(100vh - var(--header-height));max-height:calc(100dvh - var(--header-height));background:var(--color-bg-surface);border-top:1px solid var(--color-border);box-shadow:var(--shadow-elevated);padding:1.5rem;flex-direction:column;gap:1.5rem;transform:translate(100%);transition:transform .3s cubic-bezier(.4,0,.2,1);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;z-index:101}.mobile-menu[data-astro-cid-3ef6ksr2].is-open{transform:translate(0)}.mobile-nav[data-astro-cid-3ef6ksr2]{display:flex;flex-direction:column;gap:.25rem}.mobile-nav-link[data-astro-cid-3ef6ksr2]{display:block;padding:.65rem .75rem;border-radius:var(--radius-sm);color:var(--color-text-secondary);font-size:.95rem;font-weight:500;transition:all .15s ease}.mobile-nav-link[data-astro-cid-3ef6ksr2]:hover{color:var(--color-text-primary);background:var(--color-bg-surface-hover)}.mobile-auth[data-astro-cid-3ef6ksr2]{display:flex;flex-direction:column;gap:.5rem;margin-top:auto;border-top:1px solid var(--color-border);padding-top:1.5rem}.mobile-overlay[data-astro-cid-3ef6ksr2]{display:none;position:fixed;inset:0;background:#0000004d;z-index:99;opacity:0;transition:opacity .3s ease}.mobile-overlay[data-astro-cid-3ef6ksr2].is-visible{opacity:1}@media(max-width:768px){.nav-desktop[data-astro-cid-3ef6ksr2],.auth-section-desktop[data-astro-cid-3ef6ksr2]{display:none}.hamburger[data-astro-cid-3ef6ksr2],.mobile-menu[data-astro-cid-3ef6ksr2]{display:flex}.mobile-overlay[data-astro-cid-3ef6ksr2]{display:block;pointer-events:none}.mobile-overlay[data-astro-cid-3ef6ksr2].is-visible{pointer-events:auto}.mobile-menu[data-astro-cid-3ef6ksr2] .btn[data-astro-cid-3ef6ksr2]{padding:.55rem 1.25rem;font-size:.9rem}}
