:root{color:#172033;background:#f3f6fb;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5;font-synthesis:none}*,*:before,*:after{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.skip-link{position:fixed;top:.5rem;left:.5rem;z-index:1000;padding:.65rem .85rem;border-radius:.5rem;background:#fff;color:#102744;font-weight:700;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.session-nav{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.75rem 1rem;background:#172033;color:#fff}.session-nav-links{display:flex;min-width:0;align-items:center;flex-wrap:wrap;gap:.75rem}.session-nav a{padding:.35rem .45rem;border-radius:.35rem;color:#fff}.session-nav a[aria-current=page]{background:#fff;color:#172033;text-decoration:none}.session-nav-logout{flex:0 0 auto;padding:.45rem .75rem;border:1px solid #fff;border-radius:.35rem;background:transparent;color:#fff;cursor:pointer}.dashboard-page{position:relative}a{color:#174ea6}button,input,select,textarea{font:inherit}:focus-visible{outline:3px solid #f4b942;outline-offset:3px}.auth-page{display:grid;min-height:calc(100vh - 3rem);place-items:center;padding:2rem 1rem}.auth-card{width:100%;max-width:32rem;min-width:0;padding:clamp(1.5rem,4vw,2.5rem);border:1px solid #dbe3ef;border-radius:1rem;background:#fff;box-shadow:0 1.25rem 3rem #142a4c1f}.auth-brand{display:grid;width:2.75rem;height:2.75rem;margin-bottom:1.25rem;place-items:center;border-radius:.8rem;background:#163d73;color:#fff;font-size:1.25rem;font-weight:800}.auth-card h1{margin:0;color:#102744;font-size:clamp(1.75rem,5vw,2.25rem);line-height:1.15}.auth-description{margin:.75rem 0 1.5rem;color:#4c5c70;overflow-wrap:anywhere}.auth-form{display:grid;min-width:0;gap:1rem}.auth-form label{display:grid;min-width:0;gap:.4rem;color:#25364d;font-weight:650}.auth-form input,.auth-form select{width:100%;min-height:2.75rem;padding:.65rem .8rem;border:1px solid #aab7c8;border-radius:.55rem;background:#fff;color:#172033}.auth-form input:hover,.auth-form select:hover{border-color:#657891}.auth-form-grid{display:grid;min-width:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.field-hint{margin:-.25rem 0 0;color:#58697d;font-size:.85rem}.primary-action,.secondary-action{display:inline-flex;min-height:2.75rem;align-items:center;justify-content:center;border-radius:.55rem;font-weight:700;text-decoration:none}.primary-action{width:100%;border:1px solid #163d73;background:#163d73;color:#fff}.primary-action:disabled{border-color:#8290a0;background:#8290a0;cursor:not-allowed}.secondary-action{padding:.55rem .8rem;border:1px solid #b7c7dd;background:#eef4fc;color:#174070}.form-message{margin-bottom:1rem;padding:.75rem .9rem;border:1px solid;border-radius:.55rem}.form-message-error{border-color:#e5abab;background:#fff0f0;color:#8b1111}.form-message-success{border-color:#9ed5b4;background:#ecfbf2;color:#0b6236}.auth-switch{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:1rem;color:#4c5c70}.auth-footer{display:flex;flex-wrap:wrap;gap:1rem;margin-top:1.5rem;padding-top:1rem;border-top:1px solid #e2e8f1;font-size:.875rem}.state-page{max-width:36rem;margin:4rem auto;padding:2rem;text-align:center}@media(max-width:36rem){.auth-page{align-items:start;padding:1rem .75rem}.auth-form-grid{grid-template-columns:1fr}.auth-switch{align-items:stretch;flex-direction:column}.secondary-action{width:100%}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}.page-shell{width:min(1120px,calc(100% - 2rem));margin:2rem auto}.role-dashboard{min-width:0;position:relative}.role-dashboard section,.role-dashboard form,.role-dashboard label,.role-dashboard input,.role-dashboard select,.role-dashboard textarea{min-width:0}.role-dashboard input,.role-dashboard select,.role-dashboard textarea{max-width:100%}.page-heading{display:flex;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}.page-heading h1{margin:.2rem 0 .4rem}.page-heading p{margin:0;color:#52606d}.eyebrow{color:#176b54!important;font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.notice{display:grid;gap:.45rem;margin:1rem 0;padding:1rem;border:1px solid #ccd5df;border-radius:.75rem}.notice button{justify-self:start}.notice-error{color:#7f1d1d;background:#fff1f2;border-color:#fecdd3}.notice-success{color:#166534;background:#f0fdf4;border-color:#bbf7d0}.reconciliation-filters,.resolution-actions{display:flex;align-items:end;flex-wrap:wrap;gap:.75rem}.reconciliation-filters label,.resolution-form label{display:grid;gap:.35rem;color:#344054;font-weight:700}.reconciliation-list{display:grid;gap:1rem;margin-top:1.25rem}.reconciliation-card,.empty-panel{padding:1rem;background:#fff;border:1px solid #d9e0e7;border-radius:.75rem}.reconciliation-card header,.reconciliation-card header div{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.65rem}.reconciliation-card dl{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.75rem;margin:1rem 0}.reconciliation-card dt{color:#667085;font-size:.78rem;font-weight:700;text-transform:uppercase}.reconciliation-card dd{margin:.2rem 0 0;overflow-wrap:anywhere}.resolution-form{display:grid;gap:.75rem;padding-top:1rem;border-top:1px solid #e6ebf0}.resolution-form textarea{width:100%;min-height:5rem;resize:vertical}.status-exception{color:#991b1b;background:#fee2e2}.status-mismatch{color:#92400e;background:#fef3c7}.reward-history table{background:#fff;border:1px solid #d9e0e7}.reward-history th,.reward-history td{padding:.7rem;border-bottom:1px solid #e6ebf0;text-align:left}.reward-history th button{padding:0;color:inherit;background:transparent;border:0;font:inherit}.status-pill{display:inline-block;padding:.25rem .55rem;color:#344054;background:#eef2f6;border-radius:999px;font-size:.82rem;font-weight:700;white-space:nowrap}.status-points_posted{color:#166534;background:#dcfce7}.status-pending{color:#854d0e;background:#fef9c3}.status-partially_refunded,.status-fully_refunded,.status-reversed,.status-reversal{color:#9a3412;background:#ffedd5}@media(max-width:600px){.page-shell{width:min(100% - 1rem,1120px);margin-top:1rem}.session-nav{align-items:stretch;flex-direction:column}.session-nav-links{align-items:stretch;flex-direction:column;gap:.25rem}.session-nav a,.session-nav-logout{min-height:2.75rem;display:inline-flex;align-items:center}.session-nav-logout{justify-content:center}.page-heading{align-items:stretch;flex-direction:column}}
