*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--color-background);color:var(--color-text);font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,sans-serif;font-size:16px;line-height:23px;-webkit-font-smoothing:antialiased}button,input,textarea{font:inherit;color:inherit}a{color:inherit}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}.t{margin:0}.tone-default{color:var(--color-text)}.tone-secondary{color:var(--color-textSecondary)}.tone-tertiary{color:var(--color-textTertiary)}.tone-inverse{color:var(--color-textInverse)}.tone-accent{color:var(--color-accent)}.tone-success{color:var(--color-success)}.tone-warning{color:var(--color-warning)}.tone-danger{color:var(--color-danger)}.align-center{text-align:center}.align-right{text-align:right}.align-left{text-align:left}.clamp-1{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.prose{max-width:340px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.app{min-height:100%;display:flex;flex-direction:column}.nav{position:sticky;top:0;z-index:10;background:var(--color-surface);border-bottom:1px solid var(--color-border)}.nav-inner{max-width:640px;margin:0 auto;padding:0 var(--space-xl);height:56px;display:flex;align-items:center;justify-content:space-between;gap:var(--space-md)}.nav-brand{font-weight:700;letter-spacing:-.2px;text-decoration:none}.nav-tabs{display:flex;gap:var(--space-xs);margin:0;padding:0;list-style:none}.nav-tab{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:0 12px;border-radius:var(--radius-control);text-decoration:none;color:var(--color-textSecondary);font-size:14px;font-weight:600}.nav-tab:hover{color:var(--color-text)}.nav-tab.active{color:var(--color-text);background:var(--color-surfaceSunken)}.nav-badge{background:var(--color-warning);color:var(--color-textInverse);font-size:11px;line-height:16px;border-radius:999px;padding:1px 6px;min-width:18px;text-align:center}@media(max-width:420px){.nav-tab-label{display:none}.nav-tab{padding:0 10px}}.screen{flex:1;display:flex;flex-direction:column;min-height:100%}.screen-body{flex:1;width:100%;max-width:640px;margin:0 auto;padding:var(--space-xl) var(--space-xl) var(--space-xxxl)}.screen-body.fixed{display:flex;flex-direction:column;min-height:0}.screen-footer{position:sticky;bottom:0;background:var(--color-background);border-top:1px solid var(--color-border);box-shadow:0 -2px 16px #14161a0f}.screen-footer-inner{max-width:640px;margin:0 auto;padding:var(--space-lg) var(--space-xl);display:flex;flex-direction:column;gap:var(--space-md)}.header{display:flex;flex-direction:column;gap:var(--space-xs);margin-bottom:var(--space-xxl)}.header-controls{display:flex;align-items:center;justify-content:space-between;min-height:44px;margin-left:calc(-1 * var(--space-md))}.icon-button{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border:0;background:transparent;border-radius:999px;cursor:pointer;color:var(--color-text)}.icon-button:hover{background:var(--color-surfaceSunken)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);width:100%;border-radius:var(--radius-control);padding:var(--space-sm) var(--space-lg);border:1px solid transparent;cursor:pointer;font-size:17px;line-height:22px;font-weight:600;letter-spacing:-.2px;transition:transform var(--duration-fast) ease,opacity var(--duration-fast) ease}.btn:active:not(:disabled){transform:scale(.985)}.btn:disabled{opacity:.45;cursor:default}.btn-large{min-height:56px}.btn-medium{min-height:48px}.btn-primary{background:var(--color-surfaceInverse);color:var(--color-textInverse)}.btn-secondary{background:var(--color-surface);border-color:var(--color-border);color:var(--color-text)}.btn-secondary:hover:not(:disabled){background:var(--color-surfaceSunken)}.btn-quiet{background:transparent;color:var(--color-text)}.btn-quiet:hover:not(:disabled){background:var(--color-surfaceSunken)}.btn-danger{background:var(--color-danger);color:var(--color-textInverse)}.btn-label{flex-shrink:1;text-align:center}.btn.fit{width:auto;padding-left:var(--space-md);padding-right:var(--space-md);font-size:15px}.spinner{display:inline-block;width:18px;height:18px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin .8s linear infinite}.spinner-small{width:14px;height:14px}@keyframes spin{to{transform:rotate(360deg)}}.card{border:1px solid var(--color-border);background:var(--color-surface);border-radius:var(--radius-card);overflow:hidden}.card.padded{padding:var(--space-lg)}.card-sunken{background:var(--color-surfaceSunken);border-color:transparent}.card-success{background:var(--color-successSurface);border-color:var(--color-successBorder)}.card-warning{background:var(--color-warningSurface);border-color:var(--color-warningBorder)}.card-danger{background:var(--color-dangerSurface);border-color:var(--color-dangerBorder)}.card-link{display:block;width:100%;text-decoration:none;color:inherit;cursor:pointer;border:0;background:transparent;padding:0;text-align:left}.card-link:hover{opacity:.85}.card-inset{padding:0 var(--space-lg)}.divider{height:1px;background:var(--color-border)}.stack{display:flex;flex-direction:column}.stack-xs{gap:var(--space-xs)}.stack-sm{gap:var(--space-sm)}.stack-md{gap:var(--space-md)}.stack-lg{gap:var(--space-lg)}.stack-xl{gap:var(--space-xl)}.stack-xxl{gap:var(--space-xxl)}.stack-xxxl{gap:var(--space-xxxl)}.centred{align-items:center}.callout{display:flex;gap:var(--space-sm);align-items:flex-start;color:var(--color-textTertiary)}.callout .icon{flex-shrink:0;margin-top:2px}.section-header{display:flex;align-items:center;justify-content:space-between}.summary{display:flex;align-items:flex-start;gap:var(--space-lg)}.summary-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--space-xs)}.inline-row{display:flex;align-items:center;gap:var(--space-md)}.baseline-row{display:flex;align-items:baseline;gap:6px}.split-row{display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-md);font-variant-numeric:tabular-nums}.permission{display:flex;gap:var(--space-md);align-items:flex-start}.permission .icon{flex-shrink:0;margin-top:3px}.grow{flex:1;min-width:0}.state{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--space-md);padding:var(--space-huge) 0}.state-icon{width:56px;height:56px;border-radius:28px;display:flex;align-items:center;justify-content:center;background:var(--color-surfaceSunken);color:var(--color-textTertiary);margin-bottom:var(--space-xs)}.loading{display:flex;flex-direction:column;align-items:center;gap:var(--space-md);padding:var(--space-xxxl) 0;color:var(--color-textTertiary)}.error-box{border:1px solid var(--color-dangerBorder);background:var(--color-dangerSurface);border-radius:var(--radius-card);padding:var(--space-lg);display:flex;flex-direction:column;gap:var(--space-sm)}.error-title{display:flex;align-items:flex-start;gap:var(--space-sm);color:var(--color-danger)}.error-title .icon{flex-shrink:0;margin-top:3px}.badge{display:inline-flex;align-items:center;gap:var(--space-xs);border-radius:999px;padding:3px var(--space-sm);font-size:13px;line-height:18px;font-weight:600}.badge.plain{padding:0;background:transparent}.badge-success{color:var(--color-success);background:var(--color-successSurface)}.badge-warning{color:var(--color-warning);background:var(--color-warningSurface)}.badge-danger{color:var(--color-danger);background:var(--color-dangerSurface)}.badge-accent{color:var(--color-accent);background:var(--color-accentSurface)}.badge-neutral{color:var(--color-textSecondary);background:var(--color-surfaceSunken)}.dot{width:6px;height:6px;border-radius:3px;background:currentColor;flex-shrink:0}.confidence{border:1px solid;border-radius:var(--radius-md);padding:var(--space-md);display:flex;flex-direction:column;gap:var(--space-xs)}.confidence-head{display:flex;align-items:center;gap:var(--space-sm);font-weight:600}.confidence-success{color:var(--color-success);background:var(--color-successSurface);border-color:var(--color-successBorder)}.confidence-warning{color:var(--color-warning);background:var(--color-warningSurface);border-color:var(--color-warningBorder)}.confidence-danger{color:var(--color-danger);background:var(--color-dangerSurface);border-color:var(--color-dangerBorder)}.confidence-accent{color:var(--color-accent);background:var(--color-accentSurface);border-color:var(--color-accentSurface)}.confidence-neutral{color:var(--color-textSecondary);background:var(--color-surfaceSunken);border-color:var(--color-border)}.field{display:flex;flex-direction:column;gap:var(--space-sm)}.input{width:100%;border:1px solid var(--color-border);background:var(--color-surface);border-radius:var(--radius-control);padding:var(--space-md) var(--space-lg);min-height:52px;font-size:16px;line-height:23px}.input::placeholder{color:var(--color-textTertiary)}.input:focus{outline:none;border-color:var(--color-borderStrong)}.input.invalid{border-color:var(--color-danger)}textarea.input{min-height:96px;resize:vertical}.reveal{align-self:flex-end;border:0;background:transparent;padding:0;cursor:pointer;color:var(--color-textSecondary);font-size:13px;font-weight:600}.search{display:flex;align-items:center;gap:var(--space-sm);background:var(--color-surfaceSunken);border-radius:var(--radius-control);padding:0 var(--space-md);height:48px;color:var(--color-textTertiary)}.search input{flex:1;min-width:0;border:0;background:transparent;height:100%;color:var(--color-text);outline:none}.switch{display:flex;background:var(--color-surfaceSunken);border-radius:var(--radius-control);padding:3px;margin-bottom:var(--space-lg)}.switch button{flex:1;min-height:40px;border:0;border-radius:var(--radius-md);background:transparent;cursor:pointer;font-size:13px;font-weight:600;color:var(--color-textSecondary)}.switch button[aria-selected=true]{background:var(--color-surface);color:var(--color-text)}.row{display:flex;align-items:center;gap:var(--space-md);width:100%;text-align:left;background:transparent;border:0;padding:var(--space-lg)}button.row{cursor:pointer}button.row:hover{background:var(--color-surfaceSunken)}.row-select{min-height:56px;padding:var(--space-md) var(--space-lg)}.row-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.row-value{color:var(--color-textSecondary);text-align:right;max-width:55%;flex-shrink:1}.row .icon{flex-shrink:0}.list{margin:0;padding:0;list-style:none}.list-empty{padding:var(--space-xxxl) 0}.booking-field{display:flex;align-items:center;gap:12px;width:100%;padding:var(--space-md) 0;text-align:left;background:transparent;border:0}button.booking-field{cursor:pointer}button.booking-field:hover{opacity:.7}.booking-field-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.booking-field-label{display:flex;align-items:center;gap:var(--space-sm)}.doc-row{display:flex;align-items:center;gap:var(--space-md);width:100%;padding:var(--space-md) 0;text-align:left;background:transparent;border:0;cursor:pointer}.doc-row:hover{opacity:.7}.doc-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.doc-meta{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-sm)}.doc-amount{flex-shrink:0}.thumb{flex-shrink:0;border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-surfaceSunken);object-fit:cover;display:block}.thumb-page{display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.thumb-line{border-radius:2px;background:var(--color-borderStrong)}.thumb-button{border:0;padding:0;background:transparent;cursor:pointer;line-height:0}.thumb-button:hover{opacity:.7}.step{display:flex;align-items:center;gap:var(--space-md);animation:rise var(--duration-base) ease both}.step-waiting{opacity:.35}.step-mark{width:20px;display:flex;justify-content:center;align-items:center}.step-mark .dot{background:var(--color-borderStrong)}@keyframes rise{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.usage-header{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.usage-track{height:6px;border-radius:999px;background:var(--color-surfaceSunken);overflow:hidden}.usage-fill{height:100%;border-radius:999px;transition:width var(--duration-slow) ease}.progress{height:4px;border-radius:999px;background:var(--color-surfaceSunken);overflow:hidden}.progress-fill{height:100%;border-radius:999px;background:var(--color-accent);transition:width var(--duration-fast) linear}.progress-thin{height:3px;margin-top:4px}.drop{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-md);padding:36px 20px;border-radius:var(--radius-lg);background:var(--color-surfaceInverse);color:var(--color-textInverse);border:2px dashed transparent;cursor:pointer;text-align:center;transition:opacity var(--duration-fast) ease,border-color var(--duration-fast) ease}.drop:hover{opacity:.92}.drop.dragging{border-color:var(--color-textInverse);opacity:.85}.drop-hint{opacity:.8;max-width:360px}.drop-choose{display:inline-block;margin-top:var(--space-xs);background:var(--color-textInverse);color:var(--color-surfaceInverse);border-radius:999px;padding:10px 18px;font-weight:600}.sheet{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surfaceSunken);overflow:hidden;aspect-ratio:1 / 1.3;display:flex;align-items:center;justify-content:center}.sheet img,.sheet iframe{width:100%;height:100%;object-fit:contain;border:0;display:block}.sheet-file{display:flex;flex-direction:column;align-items:center;gap:var(--space-md);padding:var(--space-xxl)}.image-body{flex:1;display:flex;align-items:center;justify-content:center;min-height:60vh}.image-full{max-width:100%;max-height:80vh;object-fit:contain}.pdf-full{width:100%;height:80vh;border:0}.preview-row{display:flex;justify-content:center}.success-body{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:28px;padding:48px 0}.success-mark{width:92px;height:92px;border-radius:46px;border:1px solid var(--color-successBorder);background:var(--color-successSurface);color:var(--color-success);display:flex;align-items:center;justify-content:center;animation:pop var(--duration-slow) cubic-bezier(.2,.8,.2,1) both}@keyframes pop{0%{opacity:0;transform:scale(.7)}to{opacity:1;transform:none}}.dialog-scrim{position:fixed;inset:0;background:var(--color-scrim);display:flex;align-items:center;justify-content:center;padding:var(--space-xl);z-index:100}.dialog{background:var(--color-surface);border-radius:var(--radius-card);padding:var(--space-xxl);max-width:400px;width:100%;display:flex;flex-direction:column;gap:var(--space-lg);box-shadow:0 12px 40px #0000002e}.dialog-actions{display:flex;flex-direction:column;gap:var(--space-sm)}.notice-button{display:block;width:100%;padding:0;text-align:left;background:transparent;border:0;cursor:pointer}.notice-button:hover{opacity:.85}.notice-row{display:flex;align-items:center;gap:12px}.notice-text{flex:1;min-width:0}.button-pair{display:flex;gap:var(--space-md)}.button-pair>*{flex:1}.pay-row{display:flex;align-items:center;gap:var(--space-md);min-height:44px;padding:var(--space-sm) 0;color:inherit;text-decoration:none}.pay-row:hover .pay-row-title{text-decoration:underline}.pay-row .icon{flex-shrink:0;color:var(--color-textSecondary)}.field-pair{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,1.3fr);gap:var(--space-md)}.field-pair-reverse{grid-template-columns:minmax(0,1.3fr) minmax(0,3fr)}.chips{display:flex;gap:var(--space-sm)}.chip{min-height:44px;min-width:76px;padding:0 var(--space-lg);border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);color:var(--color-text);font:inherit;font-weight:600;cursor:pointer}.chip[aria-checked=true]{border-color:var(--color-accent);background:var(--color-accentSurface);color:var(--color-accent)}.qr-card{margin:0;align-self:center;width:min(100%,360px);padding:var(--space-lg) var(--space-lg) var(--space-xl);border:1px solid var(--color-border);border-radius:var(--radius-card);background:#fff;display:flex;flex-direction:column;align-items:center;gap:var(--space-sm)}.qr-image{display:block;width:100%;max-width:300px;aspect-ratio:1;image-rendering:pixelated}.qr-card figcaption{display:flex;flex-direction:column;align-items:center;gap:2px;text-align:center}.qr-iban{color:#14161a;font-weight:600;font-variant-numeric:tabular-nums}.qr-payee{color:#5b6068;font-size:13px}.footer-links{justify-content:center;flex-wrap:wrap}.page-strip{display:flex;gap:var(--space-md);overflow-x:auto;padding:var(--space-xs) 0}.page-tile{margin:0;display:flex;flex-direction:column;gap:var(--space-xs);flex-shrink:0}.page-sheet{position:relative;width:116px;height:156px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surfaceSunken);overflow:hidden;display:flex;align-items:center;justify-content:center}.page-sheet img{width:100%;height:100%;object-fit:cover}.page-remove{position:absolute;top:6px;right:6px;width:24px;height:24px;border-radius:12px;border:0;background:var(--color-cameraChrome);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer}.row-center{display:flex;align-items:center;gap:var(--space-md)}.iban-choices{display:flex;flex-direction:column;gap:var(--space-sm)}.iban-choice{display:flex;align-items:flex-start;gap:var(--space-md);padding:var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);color:var(--color-text);font:inherit;text-align:left;cursor:pointer}.iban-choice[aria-checked=true]{border-color:var(--color-accent);background:var(--color-accentSurface)}.iban-radio{flex:none;width:22px;height:22px;margin-top:1px;border:2px solid var(--color-borderStrong);border-radius:50%;box-sizing:border-box}.iban-choice[aria-checked=true] .iban-radio{border-color:var(--color-accent);background:radial-gradient(circle,var(--color-accent) 0 5px,transparent 5.5px)}.iban-choice-text{display:flex;flex-direction:column;gap:2px;min-width:0}.iban{font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.screen-body.wide,.screen-footer-inner.wide{max-width:1120px}.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--space-xxl);align-items:start}.split-panel{position:sticky;top:var(--space-xl);display:flex;flex-direction:column;max-height:calc(100vh - 2 * var(--space-xl));border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface)}.split-panel-body{overflow-y:auto;padding:var(--space-xl);display:flex;flex-direction:column;gap:var(--space-lg)}.split-panel-actions{border-top:1px solid var(--color-border);padding:var(--space-lg) var(--space-xl);display:flex;flex-direction:column;gap:var(--space-sm)}.tx-row{min-height:64px;padding:var(--space-md) var(--space-lg)}.tx-row.current{background:var(--color-surfaceSunken);box-shadow:inset 3px 0 0 var(--color-accent)}.tx-row-end{display:flex;flex-direction:column;align-items:flex-end;gap:var(--space-xs);flex-shrink:0}.balances{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-md)}.reason{display:flex;align-items:flex-start;gap:var(--space-sm)}.reason .icon{flex-shrink:0;margin-top:2px}.remittance{align-self:flex-start;background:var(--color-surfaceSunken);border-radius:var(--radius-sm);padding:var(--space-xs) var(--space-md);overflow-wrap:anywhere}.facts{margin:0;display:flex;flex-direction:column;gap:var(--space-sm)}.fact{display:grid;grid-template-columns:7.5em minmax(0,1fr);gap:var(--space-md)}.fact dd{margin:0;overflow-wrap:anywhere}.block{display:block}.item-cards{display:flex;flex-direction:column;gap:var(--space-sm)}.item-card{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);padding:var(--space-lg);display:flex;flex-direction:column;gap:var(--space-md)}.item-card.selected{border-color:var(--color-accent)}.item-card-head{display:flex;align-items:flex-start;gap:var(--space-md);width:100%;padding:0;border:0;background:transparent;color:inherit;font:inherit;text-align:left}button.item-card-head{cursor:pointer}.item-card .radio{flex:none;width:22px;height:22px;margin-top:1px;border:2px solid var(--color-borderStrong);border-radius:50%;box-sizing:border-box}.item-card.selected .radio{border-color:var(--color-accent);background:radial-gradient(circle,var(--color-accent) 0 5px,transparent 5.5px)}.item-card-open{text-align:right;flex-shrink:0}.item-card-link{display:inline-flex;align-items:center;gap:var(--space-xs);align-self:flex-start;color:var(--color-accent);font-size:13px;font-weight:600;text-decoration:none}.item-card-link:hover{text-decoration:underline}.checks{width:100%;border-collapse:collapse;table-layout:fixed;font-size:13px;line-height:18px;border-top:1px solid var(--color-border)}.checks th,.checks td{padding:var(--space-xs) var(--space-sm) var(--space-xs) 0;text-align:left;vertical-align:top;overflow-wrap:anywhere}.checks thead th{padding-top:var(--space-md);font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--color-textTertiary)}.checks thead th:first-child{width:7.5em}.checks tbody th{font-weight:400;color:var(--color-textSecondary);white-space:nowrap}.check-mark{display:inline-flex;width:18px;color:var(--color-textTertiary)}.check-same .check-mark{color:var(--color-success)}.check-differs .check-mark,.check-differs .check-note{color:var(--color-warning)}.check-note{display:block;color:var(--color-textTertiary)}a.row-link{color:inherit;text-decoration:none}a.row-link:hover{background:var(--color-surfaceSunken)}
