/* The Paycheck Reset — portal
   Ledger-paper direction: warm paper, navy ink, one gold rule.
   Georgia for figures because they should read like a ledger, not a dashboard. */

.pr-shell{--ink:#12293f;--navy:#14456b;--gold:#c9a227;--paper:#faf7f0;--panel:#f2eee3;--rule:#e2dccd;--muted:#6b7d8c;--pos:#2f6f4f;--alert:#a33b32;
  background:var(--paper);color:var(--ink);padding:32px;border-radius:4px;
  font-family:'Open Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif;font-size:15px;line-height:1.6}
.pr-shell *{box-sizing:border-box}

.pr-eyebrow{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin:0 0 6px}
.pr-display{font-family:Georgia,'Times New Roman',serif;font-weight:normal;font-size:28px;line-height:1.2;letter-spacing:-.3px;margin:0 0 10px;color:var(--ink)}
.pr-lede{color:#54626e;margin:0 0 24px;max-width:62ch}

/* gate */
.pr-gate{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,420px);gap:40px;align-items:start}
.pr-gate__pitch{padding-top:8px}
.pr-pitchlist{list-style:none;padding:0;margin:20px 0 0}
.pr-pitchlist li{padding:8px 0 8px 20px;border-top:1px solid var(--rule);position:relative;font-size:14px;color:#54626e}
.pr-pitchlist li:before{content:'';position:absolute;left:0;top:16px;width:8px;height:2px;background:var(--gold)}
.pr-gate__card{background:#fff;border:1px solid var(--rule);border-top:3px solid var(--gold);padding:24px}

.pr-tabs{display:flex;gap:20px;border-bottom:1px solid var(--rule);margin:0 0 20px}
.pr-tab{padding:0 0 10px;font-size:14px;color:var(--muted);text-decoration:none;border-bottom:2px solid transparent;margin-bottom:-1px}
.pr-tab.is-on{color:var(--ink);border-bottom-color:var(--gold);font-weight:600}

/* forms */
.pr-field{display:block;margin:0 0 16px}
.pr-label{display:block;font-size:13px;font-weight:600;margin:0 0 5px;color:var(--ink)}
.pr-form input[type=text],.pr-form input[type=email],.pr-form input[type=tel],
.pr-form input[type=password],.pr-form input[type=date],.pr-form select,.pr-form textarea{
  width:100%;padding:10px 12px;border:1px solid #ddd4bd;background:var(--panel);border-radius:3px;
  font-family:inherit;font-size:15px;color:var(--ink)}
.pr-form .pr-num{font-family:Georgia,serif;font-size:16px}
.pr-form input:focus,.pr-form select:focus,.pr-form textarea:focus{outline:2px solid var(--navy);outline-offset:1px;background:#fff}
.pr-field--money{position:relative}
.pr-help{display:block;font-size:12px;color:var(--muted);margin-top:5px}
.pr-error{background:#fdf2f1;border-left:3px solid var(--alert);padding:10px 12px;font-size:14px;margin:0 0 16px;color:#7d2c25}

.pr-consent{display:flex;gap:10px;align-items:flex-start;font-size:12px;line-height:1.55;color:#54626e;
  background:var(--panel);padding:12px;border:1px solid var(--rule);margin:0 0 18px}
.pr-consent input{margin-top:3px;flex-shrink:0}
.pr-check{display:flex;gap:9px;align-items:flex-start;padding:7px 0;font-size:14px}
.pr-check input{margin-top:4px}

.pr-btn{display:inline-block;background:var(--gold);color:#3a2f06;border:none;padding:12px 22px;font-family:inherit;
  font-size:15px;font-weight:600;border-radius:3px;cursor:pointer;text-decoration:none}
.pr-btn:hover{background:#b8931f}
.pr-btn--sm{padding:8px 14px;font-size:13px}
.pr-btn--ghost{background:transparent;border:1px solid var(--gold);color:var(--navy)}
.pr-disclosure{font-size:11px;line-height:1.6;color:#8a8168;margin:16px 0 0;padding-top:14px;border-top:1px solid var(--rule)}

/* portal chrome */
.pr-topbar{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin:0 0 8px}
.pr-signout,.pr-back,.pr-link{font-size:13px;color:var(--muted);text-decoration:underline}
.pr-back{display:block;margin:0 0 10px}
.pr-banner{background:var(--panel);border-left:3px solid var(--navy);padding:12px 16px;margin:0 0 22px;font-size:14px}
.pr-banner p{margin:0}
.pr-banner--win{border-left-color:var(--gold);display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}

.pr-layout{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:32px;align-items:start}

.pr-progress{margin:0 0 20px}
.pr-progress__bar{height:3px;background:var(--rule);overflow:hidden}
.pr-progress__bar span{display:block;height:100%;background:var(--gold)}
.pr-progress__text{font-size:12px;color:var(--muted);margin:7px 0 0}

.pr-list{list-style:none;padding:0;margin:0;counter-reset:none}
.pr-item{border-top:1px solid var(--rule)}
.pr-item:last-child{border-bottom:1px solid var(--rule)}
.pr-item a{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:14px;align-items:baseline;
  padding:16px 0;text-decoration:none;color:inherit}
.pr-item a:hover{background:rgba(201,162,39,.05)}
.pr-item__num{font-family:Georgia,serif;font-size:14px;color:var(--muted)}
.pr-item__title{display:block;font-weight:600;font-size:16px;margin:0 0 3px}
.pr-item__intro{display:block;font-size:13px;color:var(--muted);line-height:1.5}
.pr-item__state{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);white-space:nowrap}
.pr-item.is-done .pr-item__num{color:var(--gold)}
.pr-item.is-done .pr-item__state{color:var(--pos)}

/* the ledger — the spine of this thing */
.pr-ledger{background:var(--panel);border:1px solid var(--rule);padding:18px;position:sticky;top:20px}
.pr-ledger__head{font-family:Georgia,serif;font-weight:normal;font-size:15px;margin:0 0 12px;padding-bottom:10px;border-bottom:1px solid var(--rule)}
.pr-ledger__empty{font-size:12px;color:var(--muted);line-height:1.6;margin:0}
.pr-ledger dl{margin:0}
.pr-ledger__row{padding:9px 0;border-bottom:1px dotted var(--rule)}
.pr-ledger__row:last-child{border-bottom:none}
.pr-ledger__row dt{font-size:11px;color:var(--muted);margin:0 0 2px;line-height:1.4}
.pr-ledger__row dd{margin:0;font-family:Georgia,serif;font-size:19px;color:var(--ink)}
.pr-tone--alert dd{color:var(--alert)}
.pr-tone--positive dd{color:var(--pos)}
.pr-ledger__note{font-size:11px;color:var(--muted);margin:14px 0 0;padding-top:10px;border-top:1px solid var(--rule)}

/* worksheet bits */
.pr-calc{background:var(--panel);border-left:3px solid var(--navy);padding:14px 16px;margin:0 0 18px}
.pr-calc__label{display:block;font-size:12px;color:var(--muted);margin:0 0 3px}
.pr-calc__value{display:block;font-family:Georgia,serif;font-size:26px;color:var(--ink)}
.pr-calc__help{display:block;font-size:12px;color:var(--muted);margin-top:5px}
.pr-calc.pr-tone--alert{border-left-color:var(--alert)}
.pr-calc.pr-tone--alert .pr-calc__value{color:var(--alert)}
.pr-calc.pr-tone--positive{border-left-color:var(--pos)}
.pr-calc.pr-tone--positive .pr-calc__value{color:var(--pos)}

.pr-rows{margin:0 0 20px}
.pr-table{width:100%;border-collapse:collapse;margin:6px 0 8px}
.pr-table th{text-align:left;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);
  font-weight:600;padding:0 6px 6px 0;border-bottom:1px solid var(--rule)}
.pr-table td{padding:4px 6px 4px 0}
.pr-table input{width:100%;padding:8px 9px;border:1px solid #ddd4bd;background:var(--panel);border-radius:3px;font-family:inherit;font-size:14px}
.pr-addrow{background:none;border:1px dashed #c8bfa6;color:var(--muted);padding:7px 12px;font-family:inherit;
  font-size:13px;cursor:pointer;border-radius:3px}
.pr-addrow:hover{border-color:var(--gold);color:var(--navy)}

.pr-actions{display:flex;align-items:center;gap:18px;margin-top:24px;padding-top:20px;border-top:1px solid var(--rule)}
fieldset.pr-field{border:none;padding:0;margin:0 0 16px}

@media (max-width:820px){
  .pr-shell{padding:20px}
  .pr-gate,.pr-layout{grid-template-columns:1fr;gap:26px}
  .pr-ledger{position:static}
  .pr-item a{grid-template-columns:30px minmax(0,1fr);row-gap:4px}
  .pr-item__state{grid-column:2}
}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

.pr-notice{background:#f0f5f0;border-left:3px solid var(--pos);padding:10px 12px;font-size:14px;margin:0 0 16px;color:#2a5c40}
.pr-cardhead{font-family:Georgia,serif;font-weight:normal;font-size:19px;margin:0 0 6px;color:var(--ink)}
