.fr{--color-primary: #2563eb;--color-primary-hover: #1d4ed8;--color-primary-ring: #3b82f6;--color-primary-tint: #eff6ff;--color-surface: #ffffff;--color-surface-muted: #f9fafb;--color-border: #e5e7eb;--color-border-input: #d1d5db;--color-text-heading: #111827;--color-text-body: #374151;--color-text-secondary: #4b5563;--color-text-muted: #6b7280;--gradient-hero: linear-gradient(to right, #eef2ff, #ffffff, #fdf2f8);--radius-input: .5rem;--radius-card: 1rem;--shadow-card: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-raised: 0 10px 15px -3px rgb(0 0 0 / .1);color:var(--color-text-body);background:#fcfcfd;line-height:1.5;-webkit-font-smoothing:antialiased}.fr *{box-sizing:border-box}.fr-container{max-width:60rem;margin-inline:auto;padding-inline:1rem;padding-bottom:1rem}@media (min-width: 640px){.fr-container{padding-inline:1.5rem}}@media (min-width: 1024px){.fr-container{padding-inline:2rem}}.fr .card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);box-shadow:var(--shadow-card);padding:1.5rem}.fr .card--raised{box-shadow:var(--shadow-raised)}.fr .btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;background:var(--color-primary);color:#fff;font-weight:600;padding:.55rem 1.25rem;border-radius:var(--radius-input);border:0;cursor:pointer;text-decoration:none;transition:.15s;font-size:1rem}.fr .btn:hover:not(:disabled){background:var(--color-primary-hover)}.fr .btn:focus-visible{outline:2px solid var(--color-primary-ring);outline-offset:2px}.fr .btn:disabled{opacity:.5;cursor:not-allowed}.fr .btn--sm{padding:.38rem .8rem;font-size:.82rem}.fr .btn--ghost{background:var(--color-surface);color:var(--color-text-body);border:1px solid var(--color-border-input)}.fr .btn--ghost:hover:not(:disabled){background:var(--color-surface-muted)}.fr label.field{display:block;font-size:.875rem;font-weight:600;color:var(--color-text-body);margin-bottom:.4rem}.fr .input{width:100%;padding:.7rem .8rem;border:1px solid var(--color-border-input);border-radius:var(--radius-input);background:var(--color-surface);color:var(--color-text-heading);font-size:.95rem;font-family:inherit}.fr .input:focus{outline:2px solid var(--color-primary-ring);outline-offset:1px;border-color:var(--color-primary-ring)}.fr .mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.9rem}.fr .area{min-height:11rem;resize:vertical;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.9rem;line-height:1.55;white-space:pre;overflow-wrap:normal;overflow-x:auto}.fr .area--out{background:var(--color-surface-muted)}.fr .controls{display:grid;grid-template-columns:1fr;gap:1rem}@media (min-width: 640px){.fr .controls{grid-template-columns:1fr 1fr}}.fr .options{display:flex;align-items:center;gap:1.25rem;flex-wrap:wrap;margin-top:1.1rem}.fr .check{display:inline-flex;align-items:center;gap:.45rem;font-size:.88rem;color:var(--color-text-secondary);cursor:pointer;user-select:none}.fr .check input{width:1rem;height:1rem;accent-color:var(--color-primary);cursor:pointer}.fr .matchcount{margin-left:auto;font-size:.82rem;font-weight:600;color:var(--color-text-muted);font-variant-numeric:tabular-nums}.fr .matchcount--active{color:var(--color-primary)}.fr .regex-hint{margin:1rem 0 0;padding:.65rem .8rem;border-radius:var(--radius-input);font-size:.82rem;line-height:1.5;background:var(--color-primary-tint);color:var(--color-primary-hover);border:1px solid #bfdbfe}.fr h2.section{font-size:1.5rem;font-weight:700;color:var(--color-text-heading);letter-spacing:-.01em;margin:0}.fr .muted{color:var(--color-text-muted)}.fr code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.85em;background:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:.35rem;padding:.05rem .3rem}.fr .stack{margin-top:2rem;display:grid;gap:1.25rem}.fr .io{margin-top:1.25rem}.fr .io-head{display:flex;align-items:flex-end;justify-content:space-between;gap:.75rem;flex-wrap:wrap;margin-bottom:.4rem}.fr .io-head .field{margin-bottom:0}.fr .io-actions{display:inline-flex;gap:.4rem;flex-wrap:wrap}.fr .note{margin:1rem 0 0;padding:.65rem .8rem;border-radius:var(--radius-input);font-size:.84rem;line-height:1.45}.fr .note--warn{background:#fffbeb;color:#b45309;border:1px solid #fde68a}.fr .how{margin-top:3.25rem}.fr .how h2.section{text-align:center}.fr .how__lead{text-align:center;color:var(--color-text-secondary);margin:.6rem auto 1.75rem;max-width:46rem}.fr .steps{display:grid;grid-template-columns:1fr;gap:1.1rem}@media (min-width: 720px){.fr .steps{grid-template-columns:repeat(3,1fr)}}.fr .step{text-align:center;padding:1.75rem 1.25rem}.fr .step__n{width:2.5rem;height:2.5rem;margin:0 auto .9rem;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-weight:800;font-size:1.1rem;color:var(--color-primary);background:var(--color-primary-tint);border:1px solid #bfdbfe}.fr .step h3{font-size:1.05rem;font-weight:700;color:var(--color-text-heading);margin:0 0 .4rem}.fr .step p{margin:0;font-size:.9rem;color:var(--color-text-secondary)}.fr .about{margin-top:2rem;max-width:52rem;margin-inline:auto}.fr .about h3{font-size:1.2rem;font-weight:700;color:var(--color-text-heading);margin:0 0 .75rem}.fr .about p{margin:0 0 1rem;color:var(--color-text-body);font-size:.98rem;line-height:1.65}.fr .about p:last-child{margin-bottom:0}.fr .about strong{color:var(--color-text-heading)}.fr .privacy-line{margin-top:1.75rem;display:flex;align-items:center;gap:1rem;background:#ecfdf5;border:1px solid #a7f3d0}.fr .privacy-line__icon{font-size:1.5rem;flex:0 0 auto}.fr .privacy-line strong{color:#065f46}.fr .privacy-line p{margin:0;color:#047857;font-size:.95rem}.fr .foot{margin:2.5rem 0 1rem;padding-top:1.25rem;border-top:1px solid var(--color-border);text-align:center}.fr .foot p{margin:0;font-size:.85rem}
