:root{--tcp-navy:#082f55;--tcp-navy-2:#0a3a65;--tcp-green:#55784e;--tcp-green-soft:#edf4ec;--tcp-ink:#102a46;--tcp-muted:#687789;--tcp-line:#dce4ea;--tcp-soft:#f6f8fa;--tcp-white:#fff;--tcp-shadow:0 8px 24px rgba(8,46,83,.05)}
.tcp-portal-shell,.tcp-module-page{display:grid;grid-template-columns:228px minmax(0,1fr);width:100%;max-width:1600px;margin:0 auto;background:#fff;min-height:760px}.tcp-portal-side{padding:22px 14px 20px;background:#fff;border-right:1px solid #e2e8ed;display:flex;flex-direction:column}.tcp-portal-logo{width:158px!important;max-height:70px;object-fit:contain;margin:0 auto 18px}.tcp-portal-divider{height:1px;background:#dce4ea;margin:0 8px 18px}.tcp-portal-side nav{display:grid;gap:6px}.tcp-portal-side nav a{display:flex;gap:12px;align-items:center;padding:12px 13px;border-radius:7px;color:var(--tcp-ink);font-weight:600;font-size:15px}.tcp-portal-side nav a:hover{background:#f5f8f9}.tcp-portal-side nav a.active{background:var(--tcp-green-soft);color:#355d35;border-left:3px solid #5f8057}.tcp-portal-logout{margin-top:auto;padding:18px 13px;color:#445568;font-size:14px}.tcp-portal-main,.tcp-module-main{min-width:0;background:#f5f7f9}
.tcp-portal-hero{height:210px;background-size:cover;background-position:center;display:flex;align-items:flex-end;padding:28px 34px;color:#fff}.tcp-portal-hero h1{font:48px/1 Georgia,"Times New Roman",serif;margin:0;text-shadow:0 2px 8px rgba(0,0,0,.18)}.tcp-portal-body{padding:22px 24px 28px}.tcp-portal-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:18px}.tcp-portal-actions a{border:1px solid var(--tcp-line);border-radius:9px;padding:20px;display:grid;grid-template-columns:1fr auto;gap:7px 12px;align-items:center;background:#fff;box-shadow:0 5px 15px rgba(8,46,83,.025)}.tcp-portal-actions a:hover{border-color:#c7d5df;box-shadow:0 10px 24px rgba(8,46,83,.06)}.tcp-portal-actions strong{font:20px Georgia,"Times New Roman",serif}.tcp-portal-actions span{grid-column:1;color:#647286;font-size:14px;line-height:1.4}.tcp-portal-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.tcp-panel{border:1px solid var(--tcp-line);border-radius:9px;padding:21px;background:#fff}.tcp-panel h2{font:22px Georgia,"Times New Roman",serif;margin:0 0 16px}.tcp-kv{padding:10px 0;border-bottom:1px solid #e6ecf0;display:flex;justify-content:space-between;gap:18px}.tcp-kv:last-child{border-bottom:0}.tcp-kv span{color:var(--tcp-muted);font-size:14px}.tcp-good{color:#147335}.tcp-muted{color:var(--tcp-muted)}.tcp-panel ul{margin:0;padding-left:19px;color:#445568;line-height:1.75;font-size:14px}.tcp-portal-footer-image{height:120px;background-size:cover;background-position:center 48%;filter:saturate(.65) brightness(.72)}
/* Professional application-style module pages */
.tcp-module-hero{min-height:116px;background:#fff;display:flex;align-items:center;padding:23px 30px;border-bottom:1px solid #dfe6eb;color:var(--tcp-ink)}.tcp-module-hero-copy{display:flex;flex-direction:column;gap:4px;border-left:4px solid var(--tcp-green);padding-left:16px}.tcp-module-eyebrow{font-size:10px;letter-spacing:.20em;text-transform:uppercase;color:#5b7355;font-weight:800}.tcp-module-hero h1{font:32px/1.08 Georgia,"Times New Roman",serif;margin:0;color:var(--tcp-ink);text-shadow:none}.tcp-module-hero p{margin:3px 0 0;color:var(--tcp-muted);font-size:14px;line-height:1.45}.tcp-module-wrap{padding:22px 26px 38px;max-width:1260px}.tcp-stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:16px}.tcp-stat-card{background:#fff;border:1px solid var(--tcp-line);border-radius:10px;padding:18px 20px;box-shadow:var(--tcp-shadow);display:flex;flex-direction:column;min-height:118px}.tcp-stat-card>span{font-size:13px;color:var(--tcp-muted);font-weight:650;margin-bottom:8px}.tcp-stat-card strong{font:30px/1.1 Georgia,"Times New Roman",serif;color:var(--tcp-ink);margin-bottom:auto}.tcp-stat-card small{font-size:12px;color:var(--tcp-muted);margin-top:12px}.tcp-stat-card .tcp-status-good{color:#287344;background:#eef6ef;border-radius:999px;padding:5px 9px;width:max-content;font-weight:700}.tcp-content-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,1fr);gap:16px;margin-bottom:16px}.tcp-content-grid-pay{align-items:start}.tcp-work-card,.tcp-info-card{background:#fff;border:1px solid #dbe3e9;border-radius:10px;padding:20px;box-shadow:0 5px 18px rgba(8,46,83,.035)}.tcp-work-card h3,.tcp-info-card h3{font:22px/1.2 Georgia,"Times New Roman",serif;color:var(--tcp-ink);margin:0 0 14px}.tcp-card-heading{padding-bottom:16px;border-bottom:1px solid #e7edf1;margin-bottom:16px}.tcp-card-heading>div{display:flex;align-items:flex-start;gap:12px}.tcp-card-heading h3{margin:0 0 4px}.tcp-card-heading p{margin:0;color:var(--tcp-muted);font-size:14px}.tcp-card-icon{width:36px;height:36px;border-radius:8px;background:#edf3f8;color:var(--tcp-navy);display:grid;place-items:center;font-size:18px;flex:0 0 auto}.tcp-payment-preview{display:grid;gap:8px}.tcp-payment-preview label{font-size:13px;font-weight:700;color:#42546a;margin-top:6px}.tcp-faux-input,.tcp-faux-select{height:48px;border:1px solid #d7e0e7;background:#fff;border-radius:7px;display:flex;align-items:center;justify-content:space-between;padding:0 14px;font-size:15px;color:#263d55}.tcp-disabled-action{margin-top:8px;height:48px;border:0;border-radius:7px;background:#5f8057;color:#fff;font-weight:700;font-size:15px;opacity:.72;cursor:not-allowed}.tcp-payment-preview small{font-size:12px;color:var(--tcp-muted);line-height:1.45}.tcp-info-card{background:#f8fafb}.tcp-info-card ul{margin:0;padding-left:20px;color:#42546a;line-height:1.8;font-size:14px}.tcp-history-card{margin-top:0}.tcp-empty-state{background:#f8fafb;border:1px dashed #d8e0e7;border-radius:8px;padding:20px;color:var(--tcp-muted);font-size:14px}.tcp-profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}.tcp-profile-row{display:grid;grid-template-columns:130px 1fr;gap:16px;padding:11px 0;border-bottom:1px solid #e7edf1;font-size:14px}.tcp-profile-row:last-child{border-bottom:0}.tcp-profile-row span{color:var(--tcp-muted)}.tcp-profile-row strong{font-weight:650;color:#263d55}.tcp-password-card p{margin:0;color:var(--tcp-muted)}
.tcp-login-box{max-width:470px;margin:40px auto;background:#fff;border:1px solid var(--tcp-line);border-radius:10px;padding:28px;box-shadow:0 12px 32px rgba(8,46,83,.07)}
@media(max-width:1050px){.tcp-stat-grid{grid-template-columns:1fr 1fr}.tcp-content-grid{grid-template-columns:1fr}}
@media(max-width:900px){.tcp-portal-shell,.tcp-module-page{grid-template-columns:1fr}.tcp-portal-side{border-right:0;border-bottom:1px solid #e4e9ee;padding:12px 16px}.tcp-portal-logo{width:145px!important;margin:0 0 10px}.tcp-portal-divider{display:none}.tcp-portal-side nav{display:flex;overflow-x:auto;gap:6px;padding-bottom:2px}.tcp-portal-side nav a{justify-content:center;white-space:nowrap}.tcp-portal-logout{display:none}.tcp-portal-hero{height:190px;padding:24px}.tcp-portal-hero h1{font-size:42px}.tcp-portal-actions{grid-template-columns:1fr}.tcp-portal-grid{grid-template-columns:1fr}.tcp-module-hero{min-height:104px;padding:18px 22px}.tcp-module-hero h1{font-size:30px}.tcp-module-wrap{padding:22px}.tcp-profile-grid{grid-template-columns:1fr}}
@media(max-width:600px){.tcp-portal-body,.tcp-module-wrap{padding:16px}.tcp-portal-hero{height:160px}.tcp-portal-hero h1{font-size:36px}.tcp-page-heading h2{font-size:27px}.tcp-stat-grid{grid-template-columns:1fr}.tcp-stat-card{min-height:105px}.tcp-profile-row{grid-template-columns:1fr;gap:3px}.tcp-module-hero{min-height:96px}.tcp-module-hero h1{font-size:27px}}

/* v1.4 Maintenance module */
.tcp-alert{border-radius:9px;padding:14px 16px;margin-bottom:16px;font-size:14px;border:1px solid}.tcp-alert strong{margin-right:4px}.tcp-alert-success{background:#eef7ef;border-color:#c9dfca;color:#285e35}.tcp-alert-error{background:#fff2f2;border-color:#ebcaca;color:#8a3030}.tcp-maintenance-grid{grid-template-columns:minmax(0,2fr) minmax(270px,.85fr)}.tcp-maint-form{display:grid;gap:16px}.tcp-property-chip{display:flex;justify-content:space-between;gap:18px;align-items:center;background:#f6f8fa;border:1px solid #e1e7ec;border-radius:8px;padding:12px 14px;font-size:13px}.tcp-property-chip span{color:var(--tcp-muted);font-weight:700}.tcp-property-chip strong{color:#263d55;text-align:right}.tcp-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.tcp-field{display:grid;gap:7px}.tcp-field label{font-size:13px;font-weight:750;color:#334a61}.tcp-field label>span{color:#8f3b3b}.tcp-field .tcp-optional{color:#788797;font-weight:500}.tcp-field select,.tcp-field textarea,.tcp-field input[type=file]{width:100%;border:1px solid #d5dee6;background:#fff;border-radius:7px;font:inherit;color:#203850}.tcp-field select{height:46px;padding:0 12px}.tcp-field textarea{padding:12px;resize:vertical;min-height:132px}.tcp-field input[type=file]{padding:11px}.tcp-field small{font-size:12px;color:var(--tcp-muted);line-height:1.45}.tcp-emergency-note{background:#fff8e8;border:1px solid #ead9a8;border-radius:8px;padding:12px 14px;color:#665425;font-size:13px;line-height:1.45}.tcp-emergency-note strong{color:#4d411f}.tcp-primary-action{height:48px;border:0;border-radius:7px;background:var(--tcp-navy);color:#fff;font-size:15px;font-weight:800;padding:0 20px;cursor:pointer;justify-self:start}.tcp-primary-action:hover{background:var(--tcp-navy-2)}.tcp-side-note{margin-top:18px;padding-top:16px;border-top:1px solid #dfe6eb;display:grid;gap:5px;font-size:13px}.tcp-side-note strong{color:#263d55}.tcp-side-note span{color:var(--tcp-muted);line-height:1.45}.tcp-maint-history{display:grid;gap:10px}.tcp-maint-item{border:1px solid #dfe6eb;border-radius:9px;padding:15px 16px;background:#fff}.tcp-maint-item-top{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.tcp-maint-ticket{display:block;color:var(--tcp-muted);font-size:11px;font-weight:750;letter-spacing:.04em;text-transform:uppercase;margin-bottom:3px}.tcp-maint-item h4{font:19px/1.2 Georgia,"Times New Roman",serif;color:var(--tcp-ink);margin:0}.tcp-maint-item p{margin:9px 0 0;color:#506175;font-size:13px;line-height:1.5}.tcp-maint-meta{display:flex;gap:12px;flex-wrap:wrap;color:#7b8998;font-size:12px;margin-top:7px}.tcp-status-pill{border-radius:999px;padding:6px 10px;font-size:11px;font-weight:800;white-space:nowrap}.tcp-status-submitted{background:#eef3f7;color:#39566e}.tcp-status-in_review{background:#fff5dd;color:#7a5a12}.tcp-status-scheduled{background:#eef1fb;color:#435c9b}.tcp-status-completed{background:#eaf6ed;color:#2d7040}.tcp-activity-row{display:flex;justify-content:space-between;gap:14px;padding-bottom:10px;border-bottom:1px solid #e6ecf0}.tcp-activity-row span{color:#445568}.tcp-activity-row strong{color:#2d7040}.tcp-info-card .tcp-side-note span{display:block}
@media(max-width:900px){.tcp-maintenance-grid{grid-template-columns:1fr}}
@media(max-width:600px){.tcp-form-grid{grid-template-columns:1fr}.tcp-property-chip{align-items:flex-start;flex-direction:column;gap:3px}.tcp-property-chip strong{text-align:left}.tcp-primary-action{width:100%}.tcp-maint-item-top{flex-direction:column}.tcp-status-pill{align-self:flex-start}}

/* v1.5 — subtle scenic module headers + profile image card */
.tcp-module-main{background:#f4f7f9}
.tcp-module-hero{
  min-height:132px;
  padding:22px 30px;
  border-bottom:1px solid #d7e1e8;
  color:#fff;
  background-size:cover;
  background-position:center;
  position:relative;
  overflow:hidden;
}
.tcp-module-hero::after{
  content:"";
  position:absolute;
  inset:auto 0 0 0;
  height:22px;
  background:linear-gradient(to bottom,rgba(244,247,249,0),rgba(244,247,249,.85));
}
.tcp-module-hero-copy{
  position:relative;
  z-index:1;
  display:flex;
  flex-direction:column;
  gap:4px;
  border-left:4px solid rgba(170,198,154,.95);
  padding-left:16px;
  max-width:620px;
}
.tcp-module-eyebrow{color:#e5f0df}
.tcp-module-hero h1{color:#fff;text-shadow:0 2px 10px rgba(0,0,0,.22)}
.tcp-module-hero p{color:rgba(255,255,255,.92);font-size:14px;line-height:1.45;max-width:540px}
.tcp-profile-image-card{
  min-height:168px;
  border-radius:12px;
  overflow:hidden;
  background-size:cover;
  background-position:center;
  display:flex;
  align-items:flex-end;
  padding:22px;
  margin-bottom:16px;
  box-shadow:0 8px 24px rgba(8,46,83,.05);
}
.tcp-profile-image-copy{
  color:#fff;
  max-width:420px;
}
.tcp-profile-image-copy span{
  display:inline-block;
  font-size:11px;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:#d9e9d2;
  margin-bottom:8px;
  font-weight:800;
}
.tcp-profile-image-copy h3{
  margin:0 0 6px;
  font:28px/1.1 Georgia,"Times New Roman",serif;
  color:#fff;
}
.tcp-profile-image-copy p{
  margin:0;
  font-size:14px;
  line-height:1.5;
  color:rgba(255,255,255,.93);
}
@media(max-width:900px){
  .tcp-module-hero{min-height:120px;padding:18px 22px}
  .tcp-profile-image-card{min-height:150px;padding:18px}
}
@media(max-width:600px){
  .tcp-module-hero{min-height:110px}
  .tcp-profile-image-copy h3{font-size:24px}
}

/* v1.6 — lighter, uniform resident portal visual system */
.tcp-module-main{background:#f6f8fa}
.tcp-module-hero{
  min-height:118px;
  padding:20px 30px;
  border-bottom:1px solid #dfe6eb;
  color:var(--tcp-ink);
  background-size:cover;
  background-position:center 52%;
  position:relative;
  overflow:hidden;
  isolation:isolate;
}
.tcp-module-hero::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(255,255,255,.93) 0%,rgba(255,255,255,.87) 42%,rgba(255,255,255,.68) 72%,rgba(255,255,255,.52) 100%);
  z-index:-1;
}
.tcp-module-hero::after{
  content:"";
  position:absolute;
  left:0;right:0;bottom:0;
  height:1px;
  background:rgba(8,47,85,.08);
}
.tcp-module-hero-copy{
  position:relative;
  z-index:1;
  display:flex;
  flex-direction:column;
  gap:3px;
  border-left:3px solid var(--tcp-green);
  padding-left:15px;
  max-width:620px;
}
.tcp-module-eyebrow{color:#587255;font-size:10px;letter-spacing:.18em;font-weight:800}
.tcp-module-hero h1{color:var(--tcp-ink);text-shadow:none;font-size:31px}
.tcp-module-hero p{color:#5e6d7d;font-size:14px;line-height:1.45;max-width:520px}
.tcp-module-wrap{padding-top:20px}
.tcp-stat-card,.tcp-work-card,.tcp-info-card,.tcp-panel,.tcp-portal-actions a{
  box-shadow:0 3px 12px rgba(8,46,83,.035);
}
.tcp-profile-image-card{
  min-height:145px;
  border:1px solid #dce4ea;
  border-radius:10px;
  background-size:cover;
  background-position:center 58%;
  position:relative;
  isolation:isolate;
  box-shadow:0 3px 12px rgba(8,46,83,.035);
}
.tcp-profile-image-card::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(255,255,255,.92),rgba(255,255,255,.72));
  z-index:-1;
}
.tcp-profile-image-copy{color:var(--tcp-ink);max-width:430px}
.tcp-profile-image-copy span{color:#587255}
.tcp-profile-image-copy h3{color:var(--tcp-ink);font-size:25px}
.tcp-profile-image-copy p{color:#5e6d7d}
@media(max-width:900px){
  .tcp-module-hero{min-height:110px;padding:18px 22px}
}
@media(max-width:600px){
  .tcp-module-hero{min-height:104px}
  .tcp-module-hero::before{background:rgba(255,255,255,.88)}
}

/* v1.7 — private documents + AutoPay */
.tcp-documents-grid{grid-template-columns:minmax(0,2.2fr) minmax(260px,.8fr)}
.tcp-doc-list{display:grid;gap:10px}
.tcp-doc-row{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:14px;align-items:center;border:1px solid #dde5eb;border-radius:9px;padding:14px;background:#fff}
.tcp-doc-icon{width:40px;height:40px;border-radius:8px;background:#edf3f8;color:var(--tcp-navy);display:grid;place-items:center;font-size:18px}
.tcp-doc-main{min-width:0}.tcp-doc-category{display:block;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#66798a;font-weight:800;margin-bottom:3px}
.tcp-doc-main h4{font:19px/1.2 Georgia,"Times New Roman",serif;color:var(--tcp-ink);margin:0 0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tcp-doc-date{font-size:12px;color:var(--tcp-muted)}
.tcp-doc-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.tcp-doc-actions a{display:inline-flex;align-items:center;justify-content:center;min-width:74px;height:36px;padding:0 12px;border:1px solid #ccd8e1;border-radius:7px;background:#fff;color:var(--tcp-navy);font-size:13px;font-weight:750}.tcp-doc-actions a:hover{background:#f4f8fa;border-color:#b9c9d5}
.tcp-autopay-form{display:grid;gap:14px}.tcp-autopay-summary{display:flex;justify-content:space-between;gap:20px;padding:12px 14px;border:1px solid #e0e6eb;border-radius:8px;background:#f8fafb}.tcp-autopay-summary span{color:var(--tcp-muted);font-size:13px}.tcp-autopay-summary strong{color:var(--tcp-ink);font-size:14px}.tcp-consent{display:flex;gap:10px;align-items:flex-start;padding:14px;border:1px solid #dce5eb;border-radius:8px;background:#fff}.tcp-consent input{margin-top:3px}.tcp-consent span{font-size:13px;line-height:1.5;color:#43566a}.tcp-autopay-form small{font-size:12px;line-height:1.5;color:var(--tcp-muted)}
.tcp-autopay-active{padding:18px;border:1px solid #cfe2d1;background:#f2f8f2;border-radius:9px;margin-bottom:14px}.tcp-autopay-badge{display:inline-block;border-radius:999px;background:#e3f2e5;color:#2f6b3d;padding:5px 9px;font-size:11px;font-weight:800;margin-bottom:10px}.tcp-autopay-active h4{font:22px/1.25 Georgia,"Times New Roman",serif;color:var(--tcp-ink);margin:0 0 6px}.tcp-autopay-active p{margin:0;color:#5d6f7e;font-size:13px}.tcp-secondary-action{height:42px;border:1px solid #cad5dd;border-radius:7px;background:#fff;color:var(--tcp-ink);font-size:14px;font-weight:750;padding:0 16px;cursor:pointer}.tcp-secondary-action:hover{background:#f6f8fa}
.tcp-payment-history{display:grid;gap:8px}.tcp-payment-row{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:12px 14px;border:1px solid #e0e6eb;border-radius:8px;background:#fff}.tcp-payment-row>div{display:grid;gap:3px}.tcp-payment-row strong{font-size:15px;color:var(--tcp-ink)}.tcp-payment-row div span{font-size:12px;color:var(--tcp-muted)}.tcp-payment-status{display:inline-flex;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:800;background:#eef2f5;color:#536577}.tcp-payment-status-succeeded{background:#eaf6ed;color:#2d7040}.tcp-payment-status-processing{background:#eef1fb;color:#435c9b}.tcp-payment-status-failed,.tcp-payment-status-requires_action,.tcp-payment-status-requires_payment_method{background:#fff0f0;color:#8a3030}
@media(max-width:900px){.tcp-documents-grid{grid-template-columns:1fr}}
@media(max-width:600px){.tcp-doc-row{grid-template-columns:36px 1fr}.tcp-doc-icon{width:34px;height:34px}.tcp-doc-actions{grid-column:1/-1;justify-content:flex-start;padding-left:50px}.tcp-payment-row{align-items:flex-start;flex-direction:column}.tcp-autopay-summary{flex-direction:column;gap:3px}.tcp-autopay-form .tcp-primary-action{width:100%}}
/* v1.11 accessible forms, ledger and mobile resident navigation */
.tcp-module-page,.tcp-portal-shell{box-sizing:border-box}.tcp-module-page *, .tcp-portal-shell *{box-sizing:border-box}
.tcp-work-card{margin-bottom:18px;min-width:0}.tcp-work-card h2{font:25px/1.3 Georgia,serif;color:var(--tcp-ink);margin:0 0 18px}.tcp-field input:not([type=checkbox]){width:100%;max-width:100%;min-width:0;min-height:46px;border:1px solid #b5c3ce;border-radius:7px;padding:10px;font:inherit}.tcp-field{margin-bottom:12px;min-width:0}.tcp-kv strong,.tcp-profile-row strong,.tcp-break,.tcp-panel p,.tcp-work-card p{overflow-wrap:anywhere;min-width:0}.tcp-kv strong{text-align:right}.tcp-module-main,.tcp-portal-main{min-width:0}.tcp-work-card fieldset{border:1px solid #dce4ea;padding:14px;margin:14px 0}.tcp-work-card legend{font-weight:600}.tcp-photo-links{display:flex;gap:12px;flex-wrap:wrap;margin-top:12px}.tcp-photo-links a{text-decoration:underline}.tcp-ledger-table{width:100%;max-width:100%;overflow:auto;margin:16px 0}.tcp-ledger-table table{border-collapse:collapse;width:100%;font-size:14px}.tcp-ledger-table th,.tcp-ledger-table td{text-align:left;padding:12px 10px;border-bottom:1px solid var(--tcp-line);overflow-wrap:anywhere}.tcp-ledger-table caption{text-align:left;font-weight:700;margin-bottom:12px}.tcp-ledger-table a{text-decoration:underline}.tcp-ledger-table+nav{display:flex;gap:18px}.tcp-welcome{font-size:17px}.tcp-primary-action,.tcp-secondary-action{height:auto;min-height:44px;padding:12px 18px}.tcp-consent input{flex-shrink:0;min-width:18px;min-height:18px}.tcp-login-box input:not([type=checkbox]){width:100%;max-width:100%;min-height:44px}.tcp-login-box label{display:block;margin-bottom:6px}.tcp-login-box input[type=submit]{background:#082f55;border:0;color:white;border-radius:6px;padding:12px;cursor:pointer}.tcp-login-box{margin:32px auto;width:calc(100% - 32px)}
.tcp-module-page a:focus-visible,.tcp-module-page button:focus-visible,.tcp-module-page input:focus-visible,.tcp-module-page select:focus-visible,.tcp-module-page textarea:focus-visible,.tcp-portal-shell a:focus-visible{outline:3px solid #a46b00;outline-offset:3px}
@media(max-width:900px){.tcp-portal-side nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));overflow:visible}.tcp-portal-side nav a{font-size:13px;padding:10px 5px;gap:5px;white-space:normal;min-height:44px}.tcp-portal-logout{display:inline-flex;align-self:flex-end;margin:8px 0 0;padding:10px 12px;min-height:44px}.tcp-module-page,.tcp-portal-shell{min-height:0}.tcp-portal-side{min-width:0}.tcp-module-hero h1{font-size:30px}}
@media(max-width:600px){.tcp-ledger-table table{font-size:12px;table-layout:fixed}.tcp-ledger-table th,.tcp-ledger-table td{padding:8px 3px}.tcp-ledger-table th:nth-child(2){width:25%}.tcp-module-wrap,.tcp-portal-body{padding:12px}.tcp-work-card,.tcp-panel{padding:16px}.tcp-module-hero{padding:20px 16px}.tcp-module-hero h1{font-size:28px}.tcp-kv{gap:10px}.tcp-payment-row{overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
@media(max-width:600px){
 .tcp-ledger-table{overflow:visible}.tcp-ledger-table table,.tcp-ledger-table tbody{display:block;width:100%}.tcp-ledger-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.tcp-ledger-table tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;margin-bottom:12px;border:1px solid #dce4ea;border-radius:8px;padding:14px}.tcp-ledger-table td{display:block;border:0;padding:0;min-width:0;font-size:14px;order:3}.tcp-ledger-table td::before{content:attr(data-label);display:block;font-size:11px;line-height:1.4;font-weight:700;color:#536577;margin-bottom:3px}.tcp-ledger-table td:nth-child(1){order:0}.tcp-ledger-table td:nth-child(3){order:1}.tcp-ledger-table td:nth-child(2){order:2;grid-column:1/-1}.tcp-ledger-table td a{display:inline-flex;min-height:36px;align-items:center}
}
@media(max-width:600px){.tcp-ledger-table caption{display:block;width:100%;font-size:14px}}
