@charset "UTF-8";@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-cyrillic-ext-wght-normal-IYF56FF6.woff2") format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-cyrillic-wght-normal-JEOLYBOO.woff2") format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-greek-ext-wght-normal-EOVOK2B5.woff2") format("woff2-variations");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-greek-wght-normal-IRE366VL.woff2") format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-vietnamese-wght-normal-CE5GGD3W.woff2") format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-latin-ext-wght-normal-HA22NDSG.woff2") format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-latin-wght-normal-NRMW37G5.woff2") format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/fraunces-vietnamese-wght-normal-T2Q77LJF.woff2") format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/fraunces-latin-ext-wght-normal-34SSUN6Q.woff2") format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/fraunces-latin-wght-normal-PV4JEXUJ.woff2") format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--green-900: #12392e;--green-800: #1f5c4a;--green-700: #2a7560;--green-100: #e3f1e9;--green-50: #f3f8f4;--mint: #a7d8b8;--gold: #f2c14e;--gold-600: #d9a52c;--ink: #17221e;--ink-2: #4b5a54;--ink-3: #6b7a74;--line: #dfe6e2;--bg: #ffffff;--bg-soft: #f6f8f5;--danger: #c2412d;--radius: 16px;--radius-sm: 10px;--shadow: 0 1px 2px rgba(18, 57, 46, .06), 0 8px 24px rgba(18, 57, 46, .08);--font: "Inter Variable", system-ui, -apple-system, sans-serif;--font-display: "Fraunces Variable", Georgia, serif}*,*:before,*:after{box-sizing:border-box}body{margin:0;font-family:var(--font);color:var(--ink);background:var(--bg);line-height:1.6;-webkit-font-smoothing:antialiased}a{color:var(--green-700)}h1,h2,h3{line-height:1.2;margin:0 0 .5em}h1,h2{font-family:var(--font-display);font-weight:700;letter-spacing:-.01em}p{margin:0 0 1em}code{font-size:.9em;padding:.1em .35em;border-radius:6px;background:var(--bg-soft)}.container{width:100%;max-width:1180px;margin:0 auto;padding:0 24px}.container.narrow{max-width:520px}.section{padding:56px 0}.section-soft{background:var(--bg-soft)}.eyebrow{display:inline-block;margin-bottom:.8rem;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--green-700)}.muted{color:var(--ink-3)}.small{font-size:.85rem}.card{padding:24px;background:var(--bg);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;padding:.75em 1.4em;border:2px solid transparent;border-radius:999px;font:600 1rem/1.2 var(--font);text-decoration:none;cursor:pointer;transition:background .15s,border-color .15s}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-sm{padding:.55em 1.1em;font-size:.9rem}.btn-lg{padding:.95em 1.7em;font-size:1.05rem}.btn-block{width:100%}.btn-primary{background:var(--green-800);color:#fff}.btn-primary:hover:not(:disabled){background:var(--green-900)}.btn-accent{background:var(--gold);color:var(--green-900)}.btn-accent:hover:not(:disabled){background:var(--gold-600)}.btn-ghost{background:transparent;color:var(--green-800);border-color:var(--line)}.btn-ghost:hover:not(:disabled){border-color:var(--green-800)}.link{padding:0;border:0;background:none;color:var(--green-700);font:inherit;text-decoration:underline;cursor:pointer}.badge{display:inline-block;margin-left:6px;padding:.2em .65em;border-radius:999px;font-size:.72rem;font-weight:600}.badge-green{background:var(--green-100);color:var(--green-800)}.badge-amber{background:#fdebd6;color:#9a5512}.alert{padding:12px 16px;border-radius:var(--radius-sm);font-size:.95rem}.alert-error{background:#fbe9e6;color:var(--danger)}.alert-warning{background:#fdf3dc;color:#7a5a0c}.alert-info{background:var(--green-50);color:var(--green-800)}input,select{width:100%;padding:.7em .9em;border:1.5px solid var(--line);border-radius:var(--radius-sm);background:var(--bg);color:var(--ink);font:inherit}input:focus,select:focus{outline:2px solid var(--mint);border-color:var(--green-700)}input.ng-touched.ng-invalid,select.ng-touched.ng-invalid{border-color:var(--danger)}.field{display:block;margin-bottom:16px}.field>span{display:block;margin-bottom:6px;font-weight:500}.field-error{display:block;margin-top:4px;color:var(--danger)}.auth-card h1{font-size:1.8rem}.auth-links{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;margin:16px 0 0;font-size:.92rem}
