.hmrc-journey{width:100%;margin:0;padding:1.5rem 0;color:var(--app-text,light-dark(#13273f, var(--color-primary)))}
.hmrc-journey h2{font-size:1.35rem;font-weight:650;margin-bottom:1rem}
.hmrc-journey h3{font-size:1.15rem}
.journey-card{background:var(--app-surface,light-dark(#fff, var(--color-surface)));border:1px solid light-dark(#dce5ef, var(--color-border-strong));border-radius:14px;padding:1.5rem;margin-bottom:1.25rem;min-width:0}
.journey-scope{display:flex;align-items:end;gap:1.2rem;flex-wrap:wrap}
.journey-scope label{min-width:160px;font-weight:600;font-size:.85rem}
.journey-scope select{margin-top:.4rem}
.journey-tag{display:inline-block;background:light-dark(#edf3ff, var(--color-surface));color:light-dark(#244d86, var(--color-primary));border-radius:20px;padding:.25rem .6rem;font-size:.78rem;line-height:1.5}
.journey-tag.success{background:light-dark(#e5f5ed, var(--color-surface));color:light-dark(#176645, var(--color-success))}
.journey-steps{display:flex;list-style:none;padding:0;margin:1.5rem 0;gap:.6rem}
.journey-steps li{flex:1;padding:1rem;position:relative;display:flex;flex-direction:column;align-items:center;gap:.65rem;color:light-dark(#637187, var(--color-primary));font-size:.9rem}
.journey-steps li:not(:last-child)::after{content:"";position:absolute;height:2px;background:light-dark(#cadbe6, var(--color-surface));top:2.3rem;left:58%;width:84%}
.journey-steps li.active{color:light-dark(#087580, var(--color-primary));font-weight:750}
.journey-steps li span{position:relative;z-index:1;display:grid;place-items:center;width:2.75rem;height:2.75rem;border-radius:50%;background:light-dark(#eaf0f9, var(--color-surface));box-shadow:0 0 0 7px light-dark(#f6f8fc, var(--color-border-strong))}
.journey-steps li.active span,.journey-steps li.complete span{background:linear-gradient(135deg,light-dark(#16b89c, var(--color-success-soft)),light-dark(#007e84, var(--color-primary-soft)));color:white}
.journey-steps li.complete::after{background:light-dark(#08969a, var(--color-primary-soft))}
.journey-periods{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:.8rem;margin:1rem 0}
.journey-period{display:flex;flex-direction:column;align-items:start;gap:.6rem;text-align:left;border:1px solid light-dark(#dce5ef, var(--color-border-strong));border-radius:10px;padding:1.1rem;background:light-dark(#f8faff, var(--color-surface));color:inherit;text-decoration:none;font-size:.9rem}
.journey-period.selected,.journey-period:hover{border-color:light-dark(#078c91, var(--color-border-strong));background:light-dark(#e9f8f5, var(--color-surface));box-shadow:0 8px 22px #13344e0c}
.journey-period:focus-visible{outline:3px solid light-dark(#2860ed, var(--color-border-strong));outline-offset:2px}
.journey-actions{display:flex;gap:.75rem;justify-content:flex-end;align-items:center;flex-wrap:wrap;margin-top:1.5rem}
.journey-date{font-weight:650;color:light-dark(#214fc3, var(--color-primary))}
.journey-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:1.5rem 0}
.journey-metrics article{border:1px solid light-dark(#dce5ef, var(--color-border-strong));border-radius:10px;padding:1.25rem;background:light-dark(#f8faff, var(--color-surface))}
.journey-metrics span,.journey-metrics strong{display:block}
.journey-metrics strong,.journey-amount{font-size:1.9rem;font-weight:650;margin:.5rem 0;letter-spacing:-.03em}
.journey-metrics span{font-size:.85rem;color:light-dark(#52667c, var(--color-primary))}
.journey-note{padding:1rem;border-radius:10px;background:light-dark(#edf4ff, var(--color-surface));margin:1rem 0}
.hmrc-journey details{margin-top:1rem;border-top:1px solid light-dark(#dce5ef, var(--color-border-strong));padding-top:1rem}
.hmrc-journey summary{font-weight:600;margin-bottom:.8rem;cursor:pointer}
.journey-inline-link{display:inline-block;margin:.75rem}
.journey-section-heading{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}
.journey-table-toolbar{display:flex;align-items:end;flex-wrap:wrap;gap:.5rem}
.journey-table-toolbar>input{max-width:300px;height:38px}
.journey-table-toolbar label{font-size:.75rem;color:light-dark(#52667c, var(--color-primary))}
.journey-filter-start{margin-left:auto}
.journey-column-settings>div{display:flex;align-items:center;gap:.35rem}
.journey-column-settings input[type=number]{width:70px;margin-left:.4rem}
.journey-table-toolbar select{font-size:.8rem}
.journey-column-settings{display:flex;gap:1rem;flex-wrap:wrap;padding:1rem;background:light-dark(#f4f7fb, var(--color-surface));margin-top:1rem}
.journey-table-caption{font-size:.8rem;color:light-dark(#52667c, var(--color-primary));margin:1rem 0}
.journey-history-table{font-size:.82rem;margin-bottom:0}
.journey-history-table th{background:light-dark(#f1f5fa, var(--color-surface));color:light-dark(#536c8b, var(--color-primary));font-size:.8rem;white-space:nowrap}
.journey-history-table td{padding:.95rem .7rem;vertical-align:middle;max-width:260px;overflow-wrap:anywhere}
.journey-sort{border:0;background:transparent;color:inherit;padding:0;font-weight:650}
.journey-table-footer{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding-top:1rem;font-size:.8rem}
.journey-table-footer>div{display:flex;gap:.4rem}
.journey-empty{text-align:center;padding:2rem!important;color:light-dark(#52667c, var(--color-primary));background:light-dark(#f8faff, var(--color-surface));border-radius:10px}
.journey-modal-backdrop{position:fixed;inset:0;z-index:1100;background:#10223c88;display:flex;align-items:center;justify-content:center;padding:1rem}
.journey-modal{width:min(1050px,100%);max-height:90vh;overflow:auto;background:var(--app-surface,light-dark(#fff, var(--color-surface)));border-radius:16px;box-shadow:0 18px 60px #10223c55;padding:1.25rem}
.journey-modal-body{padding:1.2rem 0;min-height:250px}
.journey-tabs{display:flex;gap:.5rem;flex-wrap:wrap;border-bottom:1px solid light-dark(#dce5ef, var(--color-border-strong));padding:1rem 0}
.hmrc-journey pre{white-space:pre-wrap;overflow-wrap:anywhere;padding:1rem;background:light-dark(#f2f5fa, var(--color-surface));color:light-dark(#13273f, var(--color-primary));border-radius:8px;font-size:.8rem;max-height:50vh;overflow:auto}
.journey-detail-list{display:grid;grid-template-columns:170px minmax(0,1fr);gap:.7rem}
.journey-detail-list dd{margin:0;overflow-wrap:anywhere}
.journey-detail-list dt{color:light-dark(#536c8b, var(--color-primary))}
@media(max-width:800px){.hmrc-journey{padding:1rem}.journey-metrics{grid-template-columns:1fr}.journey-steps{display:grid;grid-template-columns:1fr 1fr}.journey-steps li{padding:.4rem}.journey-table-footer{align-items:start;flex-direction:column}.journey-card{padding:1rem}.journey-detail-list{grid-template-columns:1fr}.journey-modal{max-height:95vh}.journey-actions .btn{flex:1}}
.hmrc-history-page { max-width:none; }
.hmrc-history-grid { background:light-dark(white, var(--color-surface)); border:1px solid light-dark(#d9e2ea, var(--color-border-strong)); border-radius:14px; padding:0; overflow:hidden; min-width:0; }
.hmrc-history-grid table { margin:0; }
.hmrc-export-scope { width:auto; }
.hmrc-history-page .hmrc-history-footer { margin-top:0; }
.hmrc-history-page details.business-row-actions { margin:0; border:0; padding:0; }
.hmrc-history-page .business-row-actions summary { margin:0; }
.hmrc-search-form { display:grid; grid-template-columns:1fr 1fr; gap:1rem; padding-top:1rem; }
.hmrc-search-form label { display:grid; gap:.35rem; font-size:.9rem; }
.hmrc-search-form .full { grid-column:1 / -1; }
.hmrc-sort-rule { display:flex; gap:.4rem; margin-bottom:.5rem; }
.hmrc-sort-rule select { min-width:0; }
.hmrc-history-page .journey-modal .journey-actions { position:sticky; bottom:-1.25rem; padding:1rem 0; background:light-dark(white, var(--color-surface)); z-index:2; }
@media(max-width:640px) { .hmrc-search-form { grid-template-columns:1fr; } .hmrc-search-form .full { grid-column:auto; } .hmrc-sort-rule { flex-wrap:wrap; } }
.hmrc-journey .app-page-header{background:linear-gradient(110deg,light-dark(#fff, var(--color-surface)),light-dark(#eaf7f5, var(--color-surface)));border:1px solid light-dark(#dce5ef, var(--color-border-strong));border-radius:16px;padding:1.5rem 2rem;margin-bottom:1.5rem}
.hmrc-journey h1{font-size:clamp(1.7rem,2.2vw,2.45rem);font-weight:750;letter-spacing:-.035em;color:light-dark(#102d48, var(--color-primary))}
.hmrc-journey .btn-primary{background:linear-gradient(120deg,light-dark(#07969b, var(--color-primary-soft)),light-dark(#087580, var(--color-primary-soft)));border-color:light-dark(#087580, var(--color-border-strong));border-radius:9px;padding:.65rem 1.25rem;font-weight:650}
.quarter-number{font-size:1.5rem;color:light-dark(#102d48, var(--color-primary))}.quarter-state{display:flex;gap:.65rem;align-items:center;font-weight:650;margin-top:.65rem;color:light-dark(#087580, var(--color-primary))}
.journey-period{min-height:190px;padding:1.5rem;border-radius:14px;transition:background .15s,box-shadow .15s}
.income-tax-tools{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;margin:1.5rem 0}
.journey-tool{display:flex;align-items:center;gap:1rem;border:1px solid light-dark(#dce5ef, var(--color-border-strong));border-radius:14px;padding:1.5rem;color:light-dark(#102d48, var(--color-primary));background:linear-gradient(130deg,light-dark(#fff, var(--color-surface)),light-dark(#f0f7fb, var(--color-surface)));text-decoration:none}
.journey-tool>div{flex:1}.journey-tool strong,.journey-tool span{display:block}.journey-tool span{font-size:.85rem;color:light-dark(#536c8b, var(--color-primary));margin-top:.3rem}.journey-tool:hover{border-color:light-dark(#098b92, var(--color-border-strong));color:light-dark(#087580, var(--color-primary))}
.receipt-banner{display:flex;align-items:center;gap:1rem;background:light-dark(#e3f7f1, var(--color-surface));border:1px solid light-dark(#b9e7db, var(--color-border-strong));border-radius:14px;padding:1.5rem;color:light-dark(#006c66, var(--color-primary));margin:1.5rem 0}
.journey-confirm{display:flex;gap:.75rem;align-items:center;font-weight:650;padding:1rem;background:light-dark(#eff7fb, var(--color-surface));border-radius:10px;margin:1.5rem 0}.journey-confirm input{width:1.2rem;height:1.2rem;accent-color:#087580}
.hmrc-connection-indicator{display:inline-flex;position:relative;align-items:center;justify-content:center;border-radius:50%;width:44px;height:44px;background:light-dark(#e3f7f1, var(--color-surface));color:light-dark(#087b67, var(--color-success));flex-shrink:0;cursor:help}
.hmrc-connection-indicator.needs-attention{background:light-dark(#fff2db, var(--color-primary-soft));color:light-dark(#a76000, var(--color-warning))}
.hmrc-connection-tooltip{display:none;position:absolute;top:calc(100% + 8px);right:0;width:280px;padding:.8rem;border-radius:9px;background:#102d48;color:white;box-shadow:0 8px 25px #102d4822;font-size:.85rem;z-index:20}
.hmrc-connection-indicator:hover .hmrc-connection-tooltip,.hmrc-connection-indicator:focus .hmrc-connection-tooltip{display:block}
.hmrc-connection-indicator:focus-visible,.journey-tool:focus-visible{outline:3px solid light-dark(#078c91, var(--color-border-strong));outline-offset:4px}
@media(max-width:900px){.income-tax-tools{grid-template-columns:1fr}.journey-steps li::after{display:none}.hmrc-journey .app-page-header{padding:1.25rem}.journey-scope label{width:100%}}
@media(prefers-reduced-motion:reduce){.journey-period{transition:none}}

.journey-tool{width:100%;text-align:left}.journey-period.accepted{background:light-dark(#e6f8f1, var(--color-surface));border-color:light-dark(#b9e6d8, var(--color-border-strong))}.journey-period.upcoming{background:light-dark(#f5f8fc, var(--color-surface));color:light-dark(#637187, var(--color-primary))}.journey-period.upcoming .quarter-state{color:light-dark(#637187, var(--color-primary))}
.income-tax-footer{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding:1rem 1.5rem;border:1px solid light-dark(#c1e9df, var(--color-border-strong));border-radius:12px;background:light-dark(#eaf8f3, var(--color-surface));color:light-dark(#126757, var(--color-success));font-size:.9rem}.income-tax-footer span{display:flex;gap:.6rem;align-items:center}
