@font-face{font-family:"Averia Serif Libre";font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/averiaseriflibre/v19/neIWzD2ms4wxr6GvjeD0X88SHPyX2xYOoguP.woff2) format("woff2");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:"Averia Serif Libre";font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/averiaseriflibre/v19/neIVzD2ms4wxr6GvjeD0X88SHPyX2xYGGS6axq0r.woff2) format("woff2");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:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko70yyygA.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko50yyygA.woff2) format("woff2");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:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko40yyygA.woff2) format("woff2");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:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko20yw.woff2) format("woff2");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:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko70yyygA.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko50yyygA.woff2) format("woff2");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:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko40yyygA.woff2) format("woff2");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:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko20yw.woff2) format("woff2");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:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko70yyygA.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko50yyygA.woff2) format("woff2");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:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko40yyygA.woff2) format("woff2");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:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko20yw.woff2) format("woff2");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:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko70yyygA.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko50yyygA.woff2) format("woff2");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:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko40yyygA.woff2) format("woff2");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:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko20yw.woff2) format("woff2");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:Plus Jakarta Sans;font-style:normal;font-weight:800;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko70yyygA.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:800;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko50yyygA.woff2) format("woff2");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:Plus Jakarta Sans;font-style:normal;font-weight:800;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko40yyygA.woff2) format("woff2");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:Plus Jakarta Sans;font-style:normal;font-weight:800;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko20yw.woff2) format("woff2");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{--bg: #f8f4ea;--surface: #ffffff;--cream-card: #fbf7ec;--input-bg: #fdfbf4;--ink: #22354a;--mid: #3d4c5e;--muted: #8a7d5e;--faint: #a99e82;--line: #e3dac4;--border-input: #dcd3bc;--row-div: #f3eddd;--total-row: #f6f1e2;--primary: #0f3557;--primary-ink: #154871;--navy-700: #12395b;--accent: #c9a227;--gold-300: #e3c766;--gold-tan: #ebd9a4;--accent-soft: #fbf3dc;--gold-tint-border: #e8d9a8;--gold-tint-text: #8a6d1a;--no: #9a3b2e;--maroon-fill: #8c3b2e;--err-bg: #f9ede8;--err-border: #e7c9bf;--radius: 12px;--shadow: 0 1px 2px rgba(15, 53, 87, .06);--shadow-auth: 0 10px 30px rgba(15, 53, 87, .1);--focus-ring: 0 0 0 3px rgba(201, 162, 39, .18);--display: "Averia Serif Libre", Georgia, serif;--body: "Plus Jakarta Sans", system-ui, -apple-system, sans-serif}*{box-sizing:border-box}html,body{margin:0}body{font-family:var(--body);color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}app-shell>*:not(app-header):not(router-outlet){flex:1 1 auto;display:flex;flex-direction:column;min-width:0}.card-head-navy{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 16px;border-radius:calc(var(--radius) - 1px) calc(var(--radius) - 1px) 0 0;background-color:var(--primary);background-image:radial-gradient(circle at 30% 50%,rgba(201,162,39,.1) 0 2px,transparent 3px);background-size:40px 40px}.card-head-navy .cht{font-family:var(--display);font-size:12.5px;font-weight:700;text-transform:uppercase;letter-spacing:.16em;color:var(--gold-300)}.card-head-navy .chm{font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--cream-card);opacity:.75}.page-head{margin:6px 0 20px}.page-head h1,.page-title{font-family:var(--display);font-weight:700;font-size:26px;letter-spacing:-.01em;margin:0;color:var(--primary)}.page-title{margin:6px 0 20px}.page-head .sub{color:var(--mid);margin:5px 0 0;font-size:14.5px;max-width:52ch}svg.lucide{flex:none;vertical-align:-2px}.ghost,.rm,.toast-close,.expand-btn,.btn-danger,.cta,.add,.logout-text,.yn button{display:inline-flex;align-items:center;justify-content:center;gap:6px}.ghost:active:not(:disabled),.cta:active:not(:disabled),.btn-danger:active:not(:disabled){transform:translateY(1px)}.is-busy svg.lucide,.state svg.lucide{animation:spin-360 .8s linear infinite}@keyframes spin-360{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.is-busy svg.lucide,.state svg.lucide{animation:none}}.tabs{display:inline-flex;gap:4px;background:#efe9d9;border-radius:999px;padding:4px;margin-bottom:18px}.tabs button{border:1px solid transparent;background:transparent;font:inherit;font-size:14px;font-weight:500;color:var(--muted);padding:9px 18px;border-radius:999px;cursor:pointer;transition:all .18s ease}.tabs button.on{background:var(--surface);border-color:var(--accent);color:var(--primary);font-weight:700;box-shadow:0 1px 2px #0f35571f}.ghost{border:1px solid var(--line);background:var(--surface);color:var(--ink);font:inherit;font-size:13.5px;font-weight:500;padding:9px 16px;border-radius:999px;cursor:pointer;transition:all .18s ease}.ghost:hover:not(:disabled){border-color:var(--primary);color:var(--primary)}.ghost.danger:hover:not(:disabled){border-color:var(--no);color:var(--no)}.ghost:disabled{opacity:.55;cursor:default}.ghost.sm{padding:6px 12px;font-size:12.5px}.cta{padding:14px;border:0;border-radius:999px;background:var(--primary);color:var(--cream-card);font:inherit;font-size:15.5px;font-weight:600;cursor:pointer;transition:transform .12s ease,background .18s ease}.cta:hover:not(:disabled){background:var(--primary-ink)}.cta:disabled{opacity:.6;cursor:default}.field{display:block;margin-bottom:16px}.field>span{display:block;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:7px}.field>span em{color:var(--no);font-style:normal}.field>span small{font-weight:500;text-transform:none;letter-spacing:0}.field input,.field textarea{width:100%;padding:13px 15px;border:1px solid var(--border-input);border-radius:10px;background:var(--input-bg);font:inherit;font-size:16px;color:var(--ink);box-sizing:border-box;resize:vertical;transition:border-color .18s ease,box-shadow .18s ease}.field input:focus,.field textarea:focus{outline:none;border-color:var(--accent);box-shadow:var(--focus-ring)}.err{color:var(--no);font-size:13.5px;margin:4px 0 14px}.err.banner{background:var(--err-bg);border:1px solid var(--err-border);border-radius:10px;padding:10px 14px;margin-bottom:18px}.ok.banner{color:var(--primary);background:#0f355717;border:1px solid rgba(15,53,87,.25);border-radius:10px;padding:10px 14px;font-size:13.5px;margin:12px 0 0}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:22px 24px;margin-bottom:28px}.panel.has-navy-head{padding:0;overflow:hidden}.panel-body{padding:18px 24px 22px}.table-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow)}.table-wrap.flat{border:0;border-radius:0;box-shadow:none}.empty{color:var(--muted);text-align:center;padding:40px 0}.modal-overlay{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:20px;background:#0c203480;animation:overlay-in .15s ease}.modal{width:100%;max-width:440px;background:var(--surface);border:1px solid var(--line);border-radius:calc(var(--radius) + 4px);box-shadow:0 24px 60px #0f35574d;padding:26px 26px 22px;animation:modal-in .18s ease}.modal-title{font-family:var(--display);font-weight:700;font-size:21px;margin:0 0 12px;color:var(--no)}@keyframes overlay-in{0%{opacity:0}}@keyframes modal-in{0%{opacity:0;transform:translateY(8px) scale(.98)}}@media(prefers-reduced-motion:reduce){.modal-overlay,.modal{animation:none}}
