:root{--navy: #12354e;--indigo: #40456a;--teal: #0093a5;--gold: #fcb315;--light-teal: #a5c8d1;--white: #ffffff;--cream: #f7f5f1;--ink: #12354e;--ink-muted: #5a6b7a;--ink-faint: #8a99a5;--rule: #dde4e9;--surface: #f2f5f7;--danger: #b3261e;--danger-bg: #fdf0ef;--font-body: "Roboto", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--s1: 4px;--s2: 8px;--s3: 12px;--s4: 16px;--s5: 24px;--s6: 32px;--s7: 48px;--s8: 64px;--radius: 10px;--radius-sm: 6px;--shadow-card: 0 1px 3px rgba(18, 53, 78, .08), 0 4px 16px rgba(18, 53, 78, .06)}*,*:before,*:after{box-sizing:border-box}body{margin:0;font-family:var(--font-body);font-size:15px;line-height:1.55;color:var(--ink);background:var(--surface);-webkit-font-smoothing:antialiased}h1,h2,h3{margin:0;font-weight:500;line-height:1.25}h1{font-size:26px;letter-spacing:-.01em}h2{font-size:19px}h3{font-size:16px}p{margin:0 0 var(--s4)}a{color:var(--teal);text-decoration:none}a:hover{text-decoration:underline}:focus-visible{outline:2px solid var(--teal);outline-offset:2px;border-radius:var(--radius-sm)}.g-card{background:var(--white);border-radius:var(--radius);box-shadow:var(--shadow-card);padding:var(--s5)}.g-btn{font-family:inherit;font-size:15px;font-weight:500;padding:11px var(--s5);border:0;border-radius:var(--radius-sm);background:var(--gold);color:var(--navy);cursor:pointer;transition:filter .15s ease}.g-btn:hover:not(:disabled){filter:brightness(.94)}.g-btn:disabled{opacity:.5;cursor:not-allowed}.g-btn-quiet{background:transparent;color:var(--teal);padding:6px var(--s3)}.g-btn-quiet:hover:not(:disabled){background:#0093a514;filter:none}.g-field{margin-bottom:var(--s4)}.g-field label{display:block;font-size:13px;font-weight:500;color:var(--ink-muted);margin-bottom:var(--s2)}.g-field input{width:100%;font-family:inherit;font-size:15px;padding:10px var(--s3);border:1px solid var(--rule);border-radius:var(--radius-sm);background:var(--white);color:var(--ink)}.g-field input:focus{outline:2px solid var(--teal);outline-offset:-1px;border-color:transparent}.g-error{background:var(--danger-bg);color:var(--danger);font-size:14px;padding:var(--s3) var(--s4);border-radius:var(--radius-sm);margin-bottom:var(--s4)}.g-topbar{display:flex;align-items:center;justify-content:space-between;gap:var(--s4);padding:var(--s3) var(--s5);background:var(--navy);color:var(--white)}.g-topbar a{color:var(--light-teal)}.g-topbar-brand{display:flex;align-items:baseline;gap:var(--s2);font-size:16px;font-weight:500}.g-topbar-tool{color:var(--light-teal);font-weight:400}.g-topbar-right{display:flex;align-items:center;gap:var(--s4);font-size:13px;color:var(--light-teal)}.g-topbar .g-btn-quiet{color:var(--light-teal)}.g-topbar .g-btn-quiet:hover{background:#ffffff1a}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}.hub-page{max-width:900px;margin:0 auto;padding:var(--s6)}.hub-header{margin-bottom:var(--s7)}.hub-header h1{font-size:26px;font-weight:500;margin:0 0 var(--s2);color:var(--ink)}.hub-header p{font-size:15px;color:var(--ink-muted);margin:0}.hub-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--s5)}.tool-card{display:block;padding:var(--s5);background:var(--white);border-radius:var(--radius);box-shadow:var(--shadow-card);border:2px solid transparent;transition:all .15s ease;text-decoration:none;position:relative}.tool-available{cursor:pointer}.tool-available:hover{border-color:var(--teal);box-shadow:0 1px 3px #12354e14,0 4px 16px #0093a51a}.tool-available:active{transform:translateY(1px)}.tool-disabled{opacity:.7;cursor:default}.tool-card h2{font-size:18px;font-weight:500;margin:0 0 var(--s3);color:var(--ink)}.tool-card p{font-size:14px;color:var(--ink-muted);margin:0 0 var(--s4);line-height:1.5}.tool-status{display:inline-block;font-size:12px;font-weight:500;padding:4px 8px;border-radius:var(--radius-sm);background:var(--cream);color:var(--ink-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--s4)}.tool-available .tool-status{background:#0093a51a;color:var(--teal)}.tool-note{font-size:13px;color:var(--ink-muted);margin:var(--s4) 0 0!important}.tool-note a{color:var(--teal);text-decoration:underline}.tool-note a:hover{text-decoration-thickness:2px}@media (max-width: 640px){.hub-page{padding:var(--s5)}.hub-header h1{font-size:22px}.hub-grid{grid-template-columns:1fr}}
