button,input,select,textarea{font:inherit}
.side{min-width:0}
button,a,input,select,textarea{touch-action:manipulation}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--ink-900);outline-offset:3px}
.primary,.secondary{display:inline-flex;align-items:center;justify-content:center;padding:.7rem 1rem;border-radius:var(--radius-control);cursor:pointer;font-weight:600;text-decoration:none}
.primary{background:var(--ink-900);color:var(--paper);border:1px solid var(--ink-900)}
.secondary{background:var(--surface-1);color:var(--ink-900);border:1px solid var(--line-strong)}
button:disabled{opacity:.5;cursor:not-allowed}
input,select,textarea{padding:.65rem .75rem;max-width:100%;border:1px solid var(--line-strong);border-radius:var(--radius-control);background:var(--surface-1);color:var(--ink-900)}
textarea{width:100%;resize:vertical;min-height:6rem}
.stack{display:grid;gap:var(--space-snug)}
.stack label{font-size:var(--text-small);font-weight:600}
.stack p{margin:0}
.toolbar{display:flex;gap:var(--space-snug);align-items:center;flex-wrap:wrap;margin-bottom:var(--space-base)}
.toolbar label{display:flex;gap:var(--space-tight);align-items:center}
.muted{color:var(--ink-700);font-size:var(--text-small)}
.login-panel{padding:var(--space-block)}
.login-panel h1{font-size:var(--text-title);margin-top:0}
.account-form{margin-top:var(--space-block)}
.result{margin-top:var(--space-base);padding:var(--space-base);border:1px solid var(--line);border-radius:var(--radius-control);overflow-wrap:anywhere}
.result[data-tone=ok]{background:var(--ok-surface);border-color:var(--ok-line)}
.result[data-tone=warn]{background:var(--warn-surface);border-color:var(--warn-line)}
.result ul{padding-left:1.25rem}
.transaction{padding:var(--space-base) var(--space-block);overflow-wrap:anywhere}
.transaction + .transaction{border-top:1px solid var(--line)}
.transaction .summary{display:flex;justify-content:space-between;gap:var(--space-base)}
.transaction .amount{font-weight:650;white-space:nowrap}
.transaction p{margin:.35rem 0 .75rem}
.transaction .toolbar{margin:0}
.transaction select{flex:1;min-width:10rem}
.pager{display:flex;justify-content:space-between;align-items:center;gap:var(--space-base);margin-top:var(--space-base)}
.messages{max-height:32rem;overflow:auto;display:grid;gap:var(--space-base);padding:var(--space-block);overscroll-behavior:contain}
.message{padding:var(--space-base);background:var(--surface-2);border-radius:var(--radius-control);max-width:92%;overflow-wrap:anywhere}
.message[data-role=client]{margin-left:auto;background:var(--surface-sunken)}
.message p{white-space:pre-wrap;margin:.4rem 0 0}
.message small{color:var(--ink-500)}
.confirmation{border:1px solid var(--warn-line);padding:var(--space-base);border-radius:var(--radius-control);margin-bottom:var(--space-base)}
.confirmation .toolbar{margin:.7rem 0 0}
.trace{list-style:decimal;padding-left:1.5rem;overflow-wrap:anywhere}
.trace li{margin:.6rem 0}
.profile-row{cursor:default}
.profile-row .a{white-space:normal;overflow-wrap:anywhere;max-width:60%;text-align:right}
.side .foot .secondary{margin-top:var(--space-base);width:100%}
.head .who{white-space:normal;overflow-wrap:anywhere;max-width:45%}
@media(max-width:40rem){.head{align-items:flex-start;flex-direction:column}.head .who{max-width:100%;text-align:left}.transaction .summary{flex-direction:column;gap:.25rem}.transaction .toolbar>*{width:100%}.main{padding-bottom:5rem}.pager{gap:.5rem}.pager button{padding:.65rem}}
@media(max-width:56rem){.app{grid-template-columns:minmax(0,1fr)}}
.eyebrow{color:var(--ink-500);font-size:var(--text-micro);font-weight:650;letter-spacing:.06em;text-transform:uppercase}
.login-panel>p{margin-bottom:var(--space-base)}
.login-panel h1,.setup-content h1{font-size:clamp(1.7rem,4vw,2.3rem);line-height:1.15;letter-spacing:-.03em;margin:.7rem 0 1rem}
.text-button{font:inherit;background:none;border:0;padding:0;color:var(--ink-900);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.account-switch{font-size:var(--text-small);text-align:center;padding-top:.5rem}
#telegram-login:not(:empty){padding-top:var(--space-block);margin-top:var(--space-base);border-top:1px solid var(--line)}
.setup-steps{list-style:none;display:flex;justify-content:space-between;gap:.6rem;padding:0;margin:0 0 1.8rem;font-size:.7rem;color:var(--ink-500)}
.setup-steps li{display:flex;align-items:center;gap:.4rem;line-height:1.3}
.setup-steps span{display:grid;place-items:center;flex-shrink:0;width:1.6rem;height:1.6rem;border:1px solid var(--line-strong);border-radius:50%;font-weight:650}
.setup-steps [aria-current=step]{color:var(--ink-900);font-weight:650}
.setup-steps [aria-current=step] span{color:var(--paper);background:var(--ink-900);border-color:var(--ink-900)}
.setup-steps [data-done=true] span{background:var(--ok-surface);color:var(--ok);border-color:var(--ok-line)}
.setup-content p{line-height:1.6}
.setup-content .result{margin:1.5rem 0}
.setup-content .official-link{margin-bottom:.5rem;text-align:center}
.setup-content .primary{margin-top:1.5rem;width:100%}
.shell .login-panel,.shell .setup-content{padding:0}
.entry-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:0 0 1.5rem}
.entry-choice{display:flex;flex-direction:column;align-items:flex-start;gap:.7rem;padding:1.5rem;border:1px solid var(--line-strong);border-radius:var(--radius-card);background:var(--surface-1);text-align:left;color:var(--ink-900);cursor:pointer;box-shadow:var(--shadow-raised)}
.entry-choice:hover{background:var(--surface-2);border-color:var(--ink-500)}
.entry-choice strong{font-size:1.08rem;letter-spacing:-.015em}
.entry-choice>span:not(.choice-symbol){font-size:var(--text-small);line-height:1.6;color:var(--ink-700);flex:1}
.entry-choice b{font-size:var(--text-small);font-weight:600;margin-top:.5rem}
.choice-symbol{display:grid;place-items:center;width:2.5rem;height:2.5rem;border:1px solid var(--line);border-radius:.6rem;background:var(--paper);font-size:1.25rem}
.connection-note{margin:1.5rem 0}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem}
.form-grid .field-wide{grid-column:1/-1}
.receipt-fields{border:1px solid var(--line);border-radius:var(--radius-control);padding:1.2rem;margin:0}
.receipt-fields legend{font-weight:600;font-size:var(--text-small);padding:0 .5rem}
.check-label{display:flex;align-items:center;gap:.65rem;padding:.7rem 0}
.check-label input{width:1.2rem;height:1.2rem;flex-shrink:0}
.source-tags{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.8rem}
.source-tags span{font-size:.75rem;padding:.2rem .5rem;border-radius:var(--radius-pill);background:var(--surface-sunken);color:var(--ink-700)}
.document-row .t{overflow-wrap:anywhere}
.empty .primary{margin-top:1.25rem}
.hidden{display:none!important}
#payroll-panel,#reports-panel,#report-editor{display:grid;gap:1.5rem;min-width:0}
#payroll-result:empty,#report-result:empty,#report-editor:empty{display:none}
.calculation-totals dd{margin:0;font-size:1.5rem;font-weight:700;overflow-wrap:anywhere}
.calculator-details{border-top:1px solid var(--line);padding-top:1rem}
.calculator-details summary{cursor:pointer;font-weight:600;margin-bottom:1rem}
.calculation-totals{display:grid;grid-template-columns:1fr 1fr;gap:1rem;padding:1.4rem;background:var(--surface-sunken);border-radius:var(--radius-control)}
.calculation-totals span{display:block;font-size:.8rem;color:var(--ink-700)}
.calculation-totals strong{display:block;font-size:1.6rem;margin-top:.4rem;overflow-wrap:anywhere}
.calculation-lines{margin:0}.calculation-lines>div{display:flex;justify-content:space-between;gap:1rem;border-bottom:1px solid var(--line);padding:.7rem 0}
.calculation-lines dt{font-size:.85rem}.calculation-lines dd{margin:0;font-weight:600;text-align:right;white-space:nowrap}
.report-fields{overflow-x:auto}.report-fields table{width:100%;border-collapse:collapse}.report-fields td,.report-fields th{padding:.5rem;text-align:left}
.report-fields input{min-width:7rem;width:100%}.report-facts{display:grid;grid-template-columns:1fr 1fr;gap:0 1.2rem}
@media(max-width:40rem){.calculation-totals,.report-facts{grid-template-columns:1fr}.calculation-lines>div{flex-wrap:wrap}.calculation-lines dd{margin-left:auto}}
@media(max-width:72rem){.entry-choices{grid-template-columns:1fr}.entry-choice{gap:.5rem;padding:1.2rem}.entry-choice .choice-symbol{display:none}.entry-choice b{margin-top:.25rem}}
@media(max-width:40rem){.form-grid{grid-template-columns:1fr}.setup-steps{gap:.45rem;font-size:.65rem}.setup-steps li{align-items:flex-start;flex-direction:column}.document-row{flex-wrap:wrap}.document-row .t{flex-basis:100%}.setup-content .secondary{width:100%}.head h1{font-size:1.8rem}}
