:root {
    --tfsra-red: #b80f1b;
    --tfsra-red-dark: #8f0710;
    --tfsra-orange: #ef7d12;
    --tfsra-cream: #fff9f3;
    --tfsra-bg: #f7f4f1;
    --tfsra-text: #1f2937;
    --tfsra-muted: #667085;
    --tfsra-border: #eadfd6;
    --tfsra-green: #168a4b;
    --tfsra-blue: #1f6690;
    --tfsra-shadow: 0 10px 30px rgba(123, 28, 19, .09);
}

.tfsra-app,
.tfsra-app * { box-sizing: border-box; }

.tfsra-app {
    max-width: 1180px;
    margin: 22px auto;
    background: var(--tfsra-bg);
    color: var(--tfsra-text);
    border-radius: 32px;
    overflow: hidden;
    box-shadow: var(--tfsra-shadow);
    font-family: Tahoma, Arial, sans-serif;
}

.tfsra-hero {
    position: relative;
    min-height: 190px;
    padding: 34px 38px;
    display: flex;
    align-items: center;
    gap: 20px;
    color: #fff;
    background:
        radial-gradient(circle at 15% 15%, rgba(255,255,255,.12), transparent 28%),
        linear-gradient(120deg, #9d0712 0%, #cf1d1e 54%, #ef8c16 100%);
}

.tfsra-hero::after {
    content: "";
    position: absolute;
    inset: auto 0 0;
    height: 58px;
    opacity: .17;
    background: repeating-linear-gradient(15deg, transparent 0 24px, rgba(255,255,255,.4) 25px 27px);
}

.tfsra-brand-icon {
    position: relative;
    z-index: 1;
    width: 92px;
    height: 92px;
    border-radius: 30px;
    display: grid;
    place-items: center;
    font-size: 48px;
    background: rgba(255,255,255,.16);
    border: 1px solid rgba(255,255,255,.28);
    box-shadow: inset 0 0 28px rgba(255,255,255,.07);
}

.tfsra-brand-copy { position: relative; z-index: 1; }
.tfsra-brand-copy h1 { margin: 0 0 9px; color: #fff; font-size: clamp(27px, 4vw, 44px); font-weight: 800; }
.tfsra-brand-copy p { margin: 0 0 12px; font-size: 17px; opacity: .95; }
.tfsra-brand-copy small { display: inline-flex; padding: 7px 12px; border-radius: 99px; background: rgba(255,255,255,.13); }

.tfsra-tabs {
    display: flex;
    gap: 4px;
    overflow-x: auto;
    scrollbar-width: thin;
    padding: 10px 12px 0;
    background: #fff;
    border-bottom: 1px solid var(--tfsra-border);
    position: sticky;
    top: 0;
    z-index: 20;
}

.tfsra-tab {
    flex: 1 0 125px;
    border: 0;
    background: transparent;
    color: #5b6472;
    padding: 13px 12px 14px;
    cursor: pointer;
    border-bottom: 4px solid transparent;
    font: inherit;
    font-weight: 700;
}
.tfsra-tab span { margin-left: 6px; }
.tfsra-tab:hover { color: var(--tfsra-red); }
.tfsra-tab.is-active { color: var(--tfsra-red); border-bottom-color: var(--tfsra-red); }

.tfsra-main { padding: 24px; min-height: 560px; }
.tfsra-view { display: none; }
.tfsra-view.is-active { display: block; animation: tfsraFade .24s ease; }
@keyframes tfsraFade { from { opacity: 0; transform: translateY(4px); } to { opacity: 1; transform: none; } }

.tfsra-section-title {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 2px 0 18px;
}
.tfsra-section-title > div { display: flex; align-items: center; gap: 10px; }
.tfsra-section-title h2 { margin: 0; font-size: 25px; color: var(--tfsra-red-dark); }
.tfsra-title-icon { width: 48px; height: 48px; border-radius: 17px; display: grid; place-items: center; background: #fff1df; font-size: 25px; border: 1px solid #f0d9c1; }
.tfsra-icon-button { width: 42px; height: 42px; border-radius: 14px; background: #fff; border: 1px solid var(--tfsra-border); font-size: 24px; cursor: pointer; color: var(--tfsra-red); }

.tfsra-card {
    background: #fff;
    border: 1px solid var(--tfsra-border);
    border-radius: 25px;
    padding: 22px;
    margin-bottom: 18px;
    box-shadow: 0 8px 24px rgba(72, 50, 34, .045);
}
.tfsra-card h3 { margin: 0 0 17px; color: var(--tfsra-red-dark); }
.tfsra-card h4 { margin: 0 0 12px; }

.tfsra-kpi-grid,
.tfsra-forecast-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
}
.tfsra-kpi,
.tfsra-forecast-card {
    position: relative;
    min-height: 138px;
    padding: 20px;
    border-radius: 23px;
    background: #fff;
    border: 1px solid var(--tfsra-border);
    box-shadow: 0 8px 20px rgba(55, 38, 24, .055);
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.tfsra-kpi > span,
.tfsra-forecast-card > span { font-size: 28px; margin-bottom: 12px; }
.tfsra-kpi small,
.tfsra-forecast-card small { color: var(--tfsra-muted); font-size: 14px; }
.tfsra-kpi strong,
.tfsra-forecast-card strong { display: block; margin-top: 6px; font-size: 27px; color: var(--tfsra-red-dark); direction: ltr; text-align: right; }
.tfsra-kpi-wide { grid-column: span 2; }

.tfsra-forecast-card.red { border-right: 6px solid var(--tfsra-red); background: #fff7f7; }
.tfsra-forecast-card.green { border-right: 6px solid var(--tfsra-green); background: #f4fcf7; }
.tfsra-forecast-card.orange { border-right: 6px solid var(--tfsra-orange); background: #fff9f2; }
.tfsra-forecast-card.blue { border-right: 6px solid var(--tfsra-blue); background: #f5faff; }
.tfsra-forecast-card.green strong { color: var(--tfsra-green); }
.tfsra-forecast-card.orange strong { color: #c45e02; }
.tfsra-forecast-card.blue strong { color: var(--tfsra-blue); }

.tfsra-quick-actions {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    gap: 10px;
    margin-top: 18px;
}
.tfsra-quick-actions button {
    border: 1px solid #f1cbb2;
    background: #fff9f3;
    color: var(--tfsra-red-dark);
    padding: 15px;
    border-radius: 17px;
    font: inherit;
    font-weight: 700;
    cursor: pointer;
}
.tfsra-quick-actions button:hover { background: #fff0e4; }

.tfsra-form label { display: block; color: #4a5565; font-size: 14px; font-weight: 700; }
.tfsra-form input,
.tfsra-form select,
.tfsra-form textarea,
.tfsra-inline-form input,
.tfsra-list-tools input,
.tfsra-import-card input[type=file] {
    width: 100%;
    margin-top: 7px;
    border: 1px solid #d9dfe7;
    border-radius: 14px;
    min-height: 48px;
    padding: 10px 13px;
    background: #fff;
    color: var(--tfsra-text);
    font: inherit;
    outline: none;
}
.tfsra-form textarea { min-height: 76px; resize: vertical; }
.tfsra-form input:focus,
.tfsra-form select:focus,
.tfsra-form textarea:focus,
.tfsra-inline-form input:focus,
.tfsra-list-tools input:focus { border-color: var(--tfsra-orange); box-shadow: 0 0 0 3px rgba(239,125,18,.12); }

.tfsra-fields { display: grid; gap: 14px; margin-bottom: 15px; }
.tfsra-fields.two { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.tfsra-fields.three { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.tfsra-fields.four { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.tfsra-fields.five { grid-template-columns: repeat(5, minmax(0, 1fr)); }

.tfsra-location-box,
.tfsra-pricing-box {
    border: 1px solid #f0dfd1;
    background: var(--tfsra-cream);
    border-radius: 20px;
    padding: 16px;
    margin: 16px 0;
}
.tfsra-location-box > div:first-child { display: flex; flex-direction: column; gap: 4px; margin-bottom: 13px; }
.tfsra-location-box small { color: var(--tfsra-muted); }

.tfsra-button-row { display: flex; flex-wrap: wrap; gap: 9px; align-items: center; }
.tfsra-btn {
    border: 0;
    border-radius: 14px;
    min-height: 45px;
    padding: 11px 17px;
    cursor: pointer;
    font: inherit;
    font-weight: 800;
    transition: .18s ease;
}
.tfsra-btn:hover { transform: translateY(-1px); filter: brightness(.98); }
.tfsra-btn.primary { background: linear-gradient(135deg, var(--tfsra-red), #d82128); color: #fff; }
.tfsra-btn.secondary { background: #f5eee8; color: var(--tfsra-red-dark); }
.tfsra-btn.orange { background: linear-gradient(135deg, #ef7d12, #f59b1b); color: #fff; }
.tfsra-btn.outline { background: #fff; color: var(--tfsra-red-dark); border: 1px solid #e2b9a7; }
.tfsra-btn.wide { width: 100%; }
.tfsra-btn:disabled { opacity: .55; cursor: not-allowed; transform: none; }

.tfsra-segmented { display: flex; gap: 9px; margin-bottom: 15px; }
.tfsra-segmented label { flex: 1; cursor: pointer; }
.tfsra-segmented input { display: none; }
.tfsra-segmented span { display: block; text-align: center; border: 1px solid #dfc9bc; background: #fff; padding: 11px; border-radius: 13px; color: #6a4c3f; }
.tfsra-segmented input:checked + span { background: var(--tfsra-red); color: #fff; border-color: var(--tfsra-red); }

.tfsra-price-preview,
.tfsra-invoice-total {
    padding: 15px;
    border-radius: 15px;
    background: #fff;
    border: 1px dashed #dfb9a1;
    color: #67493c;
    margin-top: 8px;
}
.tfsra-price-preview strong,
.tfsra-invoice-total strong { color: var(--tfsra-red); font-size: 22px; margin-right: 6px; }

.tfsra-import-card { display: grid; grid-template-columns: minmax(0, 1fr) minmax(300px, .9fr); gap: 15px; align-items: center; }
.tfsra-import-card p { margin: 4px 0 0; color: var(--tfsra-muted); }
.tfsra-import-card form { display: grid; grid-template-columns: 1fr auto; gap: 8px; align-items: end; }
.tfsra-import-card details { grid-column: 1 / -1; color: #6d584e; }
.tfsra-import-card summary { cursor: pointer; color: var(--tfsra-red); font-weight: 800; }

.tfsra-list-tools { margin: 16px 0 11px; }
.tfsra-list { display: grid; gap: 11px; }
.tfsra-list-item {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 14px;
    align-items: center;
    padding: 16px;
    border-radius: 19px;
    border: 1px solid var(--tfsra-border);
    background: #fff;
}
.tfsra-list-item h4 { margin: 0 0 5px; color: #2d3643; }
.tfsra-list-item p { margin: 0; color: var(--tfsra-muted); font-size: 13px; }
.tfsra-list-item .tfsra-meta { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 8px; }
.tfsra-chip { display: inline-flex; padding: 5px 9px; border-radius: 99px; background: #f7eee8; color: #814126; font-size: 12px; }
.tfsra-list-actions { display: flex; flex-wrap: wrap; gap: 7px; justify-content: flex-end; }
.tfsra-mini-btn { border: 1px solid #e8d3c5; background: #fff8f3; color: var(--tfsra-red-dark); border-radius: 11px; padding: 8px 10px; font: inherit; font-size: 12px; font-weight: 700; cursor: pointer; text-decoration: none; }
.tfsra-empty { padding: 36px 18px; text-align: center; color: var(--tfsra-muted); background: rgba(255,255,255,.55); border-radius: 20px; border: 1px dashed #dccdbf; }

.tfsra-sale-items { display: grid; gap: 10px; margin: 13px 0; }
.tfsra-sale-row { display: grid; grid-template-columns: minmax(0, 2fr) minmax(110px, .6fr) auto; gap: 9px; align-items: end; padding: 12px; background: #fff9f5; border: 1px solid #efd9cb; border-radius: 16px; }
.tfsra-sale-row select,
.tfsra-sale-row input { width: 100%; min-height: 45px; border: 1px solid #d8dfe8; border-radius: 12px; padding: 8px 10px; font: inherit; background: #fff; }
.tfsra-remove-row { width: 42px; height: 42px; border: 0; border-radius: 12px; background: #ffe5e5; color: #a71313; cursor: pointer; font-size: 18px; }
.tfsra-line-price { grid-column: 1 / -1; color: #715b50; font-size: 13px; }

.tfsra-inline-form { display: grid; grid-template-columns: 1fr auto; gap: 9px; max-width: 520px; }
.tfsra-checkbox { display: flex !important; align-items: center; gap: 9px; min-height: 48px; margin-top: 24px; }
.tfsra-checkbox input { width: 20px; min-height: auto; margin: 0; }
.tfsra-muted { color: var(--tfsra-muted); line-height: 1.8; }
.tfsra-subtitle { margin: 22px 0 10px; color: var(--tfsra-red-dark); }

.tfsra-notice { margin-bottom: 15px; padding: 13px 15px; border-radius: 14px; background: #f5f7fa; border: 1px solid #d8dee7; }
.tfsra-notice.success { background: #edf9f1; border-color: #bfe5cc; color: #126735; }
.tfsra-notice.error { background: #fff0f0; border-color: #f1bfc1; color: #9e161c; }
.tfsra-loading { opacity: .6; pointer-events: none; }

.tfsra-login { max-width: 540px; margin: 50px auto; text-align: center; padding: 38px; border-radius: 28px; background: linear-gradient(135deg, #aa0c16, #ec8515); color: #fff; box-shadow: var(--tfsra-shadow); }
.tfsra-login-icon { font-size: 60px; }
.tfsra-login h2 { color: #fff; }
.tfsra-login a { display: inline-block; margin-top: 12px; padding: 12px 28px; border-radius: 99px; background: #fff; color: var(--tfsra-red); text-decoration: none; font-weight: 800; }

@media (max-width: 900px) {
    .tfsra-app { margin: 0; border-radius: 0; }
    .tfsra-main { padding: 16px; }
    .tfsra-kpi-grid,
    .tfsra-forecast-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .tfsra-quick-actions { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .tfsra-fields.four,
    .tfsra-fields.five { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .tfsra-import-card { grid-template-columns: 1fr; }
    .tfsra-import-card form { grid-template-columns: 1fr; }
}

@media (max-width: 600px) {
    .tfsra-hero { min-height: 160px; padding: 24px 18px; }
    .tfsra-brand-icon { width: 70px; height: 70px; border-radius: 22px; font-size: 38px; }
    .tfsra-brand-copy p { font-size: 14px; }
    .tfsra-tab { flex-basis: 105px; padding: 12px 8px; font-size: 13px; }
    .tfsra-fields.two,
    .tfsra-fields.three,
    .tfsra-fields.four,
    .tfsra-fields.five { grid-template-columns: 1fr; }
    .tfsra-card { padding: 16px; border-radius: 20px; }
    .tfsra-kpi,
    .tfsra-forecast-card { min-height: 125px; padding: 15px; }
    .tfsra-kpi strong,
    .tfsra-forecast-card strong { font-size: 22px; }
    .tfsra-list-item { grid-template-columns: 1fr; }
    .tfsra-list-actions { justify-content: flex-start; }
    .tfsra-sale-row { grid-template-columns: 1fr 100px auto; }
    .tfsra-inline-form { grid-template-columns: 1fr; }
    .tfsra-import-card form { display: block; }
    .tfsra-import-card button { width: 100%; margin-top: 9px; }
}

/* Account and customer helper additions */
.tfsra-account-bar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:10px;font-size:12px}.tfsra-account-bar span,.tfsra-account-bar a{display:inline-flex;padding:7px 11px;border-radius:999px;background:rgba(255,255,255,.15);color:#fff;text-decoration:none}.tfsra-account-bar a{background:#fff;color:var(--tfsra-red-dark);font-weight:800}.tfsra-customer-tools{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:9px;align-items:end;margin-top:15px}.tfsra-customer-tools .tfsra-list-tools{margin:0}.tfsra-privacy-note{font-size:12px;color:var(--tfsra-muted);margin:9px 2px 14px}.tfsra-address{margin-top:5px!important}.tfsra-chip.distance{background:#eef8ff;color:#155f87}.tfsra-mini-btn.primary{background:var(--tfsra-red);color:#fff;border-color:var(--tfsra-red)}

/* Lightweight activation and login screen */
.tfsra-auth,.tfsra-auth *{box-sizing:border-box}.tfsra-auth{position:relative;max-width:520px;margin:20px auto;padding:28px 22px 24px;overflow:hidden;border-radius:30px;color:#2c3138;background:linear-gradient(180deg,#fffaf4 0%,#fff1e3 56%,#df2a24 100%);box-shadow:0 18px 45px rgba(125,23,15,.16);font-family:Tahoma,Arial,sans-serif;text-align:center}.tfsra-auth:before,.tfsra-auth:after{content:"";position:absolute;border-radius:50%;pointer-events:none}.tfsra-auth:before{width:220px;height:220px;left:-120px;top:180px;background:rgba(244,135,37,.12)}.tfsra-auth:after{width:250px;height:250px;right:-150px;bottom:130px;background:rgba(255,255,255,.1)}.tfsra-auth> *{position:relative;z-index:1}.tfsra-auth-top{margin-bottom:18px}.tfsra-auth-bird{width:84px;height:84px;display:grid;place-items:center;margin:0 auto 10px;border-radius:50%;font-size:48px;background:linear-gradient(145deg,#ffe49c,#f6a522);box-shadow:0 10px 22px rgba(205,73,22,.18)}.tfsra-auth h1{margin:0;color:#a40d16;font-size:clamp(29px,7vw,42px);line-height:1.25}.tfsra-auth-top p{margin:8px 0 0;color:#4c535c}.tfsra-auth-alert{display:grid;gap:4px;margin:0 0 14px;padding:12px;border-radius:15px;background:#fff0f0;border:1px solid #f0bfc1;color:#94141a}.tfsra-auth-alert span{font-size:13px}.tfsra-device-card{position:relative;margin:0 auto 14px;padding:25px 18px 18px;border-radius:24px;background:rgba(255,255,255,.9);border:1px solid rgba(221,166,126,.5);box-shadow:0 10px 25px rgba(114,60,24,.09)}.tfsra-device-shield{position:absolute;top:-18px;right:calc(50% - 22px);width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#e32125,#f27622);color:#fff;font-weight:900;border:4px solid #fff}.tfsra-device-card p{margin:6px 0;color:#303741;line-height:1.65}.tfsra-device-card p strong{color:#b10f18}.tfsra-device-code{direction:ltr;font-size:48px;font-weight:900;letter-spacing:9px;color:#e83f1d;line-height:1.15}.tfsra-device-card small{color:#8a7d75}.tfsra-auth-form{display:grid;gap:10px;margin-top:11px}.tfsra-auth-input{display:flex;align-items:center;gap:8px;min-height:56px;padding:0 15px;border-radius:17px;background:#fff;border:1px solid #e9cdbc;box-shadow:0 6px 15px rgba(98,50,20,.04)}.tfsra-auth-input span{font-size:19px}.tfsra-auth-input input{flex:1;width:100%;border:0;outline:0;background:transparent;font:inherit;font-size:16px;text-align:right;color:#222;min-height:52px}.tfsra-auth-button{min-height:54px;border:0;border-radius:17px;font:inherit;font-size:17px;font-weight:900;cursor:pointer;transition:.18s ease}.tfsra-auth-button:disabled{opacity:.55;cursor:wait}.tfsra-auth-button.primary{color:#fff;background:linear-gradient(135deg,#b90e19,#f14a20);box-shadow:0 9px 18px rgba(185,14,25,.19)}.tfsra-auth-button.secondary{color:#951018;background:#fff;border:1px solid #e7b8a2}.tfsra-login-details{margin-top:12px;border-radius:17px;background:rgba(255,255,255,.75);border:1px solid rgba(224,163,126,.55);padding:0 13px 13px}.tfsra-login-details summary{padding:14px 4px;cursor:pointer;color:#8f151a;font-weight:800}.tfsra-remember{display:flex;align-items:center;gap:7px;font-size:13px;color:#5d636b;text-align:right}.tfsra-remember input{width:17px;height:17px}.tfsra-subscription-note{margin-top:14px;padding:12px;border-radius:15px;background:rgba(255,255,255,.84);color:#5b4037;font-size:13px;line-height:1.7}.tfsra-whatsapp{display:block;margin-top:15px;color:#fff;text-decoration:none;line-height:1.7}.tfsra-whatsapp strong{display:inline-block;direction:ltr;font-size:27px;letter-spacing:1px}.tfsra-auth-logout{display:inline-block;margin-top:12px;color:#981119;font-weight:800}.tfsra-auth-notice{padding:11px 13px;margin:10px 0;border-radius:13px;font-size:14px}.tfsra-auth-notice.error{background:#fff0f0;color:#97171d;border:1px solid #efbdc0}.tfsra-auth-notice.success{background:#eaf8ef;color:#116837;border:1px solid #b9dfc6}

@media(max-width:600px){.tfsra-auth{margin:0 auto;border-radius:0;min-height:100vh;padding:24px 17px}.tfsra-device-code{font-size:43px}.tfsra-customer-tools{grid-template-columns:1fr}.tfsra-customer-tools .tfsra-btn{width:100%}.tfsra-account-bar{font-size:11px}}

/* Customer statement and lightweight export UI */
.tfsra-modal[hidden]{display:none!important}.tfsra-modal{position:fixed;inset:0;z-index:999999;display:grid;place-items:center;padding:18px}.tfsra-modal-backdrop{position:absolute;inset:0;background:rgba(23,18,15,.62);backdrop-filter:blur(3px)}.tfsra-modal-card{position:relative;z-index:1;width:min(980px,100%);max-height:92vh;overflow:auto;background:#fffaf6;border:1px solid #ead8ca;border-radius:24px;padding:22px;box-shadow:0 24px 70px rgba(0,0,0,.25)}.tfsra-modal-card h2{margin:0 0 16px;color:var(--tfsra-red-dark)}.tfsra-modal-close{position:absolute;left:14px;top:12px;width:38px;height:38px;border:0;border-radius:50%;background:#fff0eb;color:#a7131b;font-size:25px;cursor:pointer}.tfsra-modal-open{overflow:hidden}.tfsra-statement-content{margin-top:16px}.tfsra-statement-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}.tfsra-statement-summary>div{padding:13px;border-radius:14px;background:#fff;border:1px solid #ead9cc}.tfsra-statement-summary small{display:block;color:var(--tfsra-muted);margin-bottom:5px}.tfsra-statement-summary strong{color:var(--tfsra-red-dark);font-size:17px}.tfsra-statement-table-wrap{overflow:auto;border:1px solid #ead9cc;border-radius:14px;background:#fff}.tfsra-statement-table{width:100%;border-collapse:collapse;min-width:780px}.tfsra-statement-table th,.tfsra-statement-table td{padding:10px;border-bottom:1px solid #eee5df;text-align:right;white-space:nowrap;font-size:13px}.tfsra-statement-table th{background:var(--tfsra-red-dark);color:#fff}.tfsra-statement-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:15px}.tfsra-statement-actions[hidden]{display:none}.tfsra-btn.whatsapp{background:#159447;color:#fff;border-color:#159447}.tfsra-quick-actions button#tfsra-export-my-data{background:#fff8ed;color:#8e3f10;border:1px solid #f1c899}
@media(max-width:700px){.tfsra-modal{padding:0}.tfsra-modal-card{height:100vh;max-height:none;border-radius:0;padding:17px}.tfsra-statement-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.tfsra-statement-actions .tfsra-btn{flex:1 1 100%}}

/* Offline/PWA synchronization */
.tfsra-sync-bar{position:sticky;top:0;z-index:40;display:flex;align-items:center;gap:9px;padding:9px 16px;background:#effaf3;border-bottom:1px solid #bfe2ca;color:#195b34;font-size:12px}.tfsra-sync-bar.is-offline{background:#fff4dc;border-color:#efcf85;color:#7b5313}.tfsra-sync-bar.has-pending{background:#fff7e9}.tfsra-network-dot{width:10px;height:10px;border-radius:50%;background:#1f9d54;box-shadow:0 0 0 4px rgba(31,157,84,.12)}.tfsra-network-dot.offline{background:#dc8b16;box-shadow:0 0 0 4px rgba(220,139,22,.14)}.tfsra-sync-bar #tfsra-pending-text{margin-inline-start:auto}.tfsra-sync-button{border:1px solid currentColor;border-radius:999px;background:#fff;padding:5px 10px;color:inherit;font:inherit;font-weight:800;cursor:pointer}.tfsra-sync-button:disabled{opacity:.5;cursor:not-allowed}.tfsra-notice.pending{background:#fff7e4;border-color:#e8ca80;color:#74500e}.tfsra-chip.success{background:#e8f7ed;color:#176b38}.tfsra-chip.danger{background:#ffeded;color:#a01b22}.tfsra-chip.pending{background:#fff3db;color:#81530d}

/* Stock transfer documents and account cards */
.tfsra-info-card{background:linear-gradient(135deg,#fff8ee,#fff);border-right:5px solid #ee8616}.tfsra-company-account-lines{padding:12px;border-radius:14px;background:#fff;border:1px dashed #dfc3af;line-height:1.9;margin-bottom:12px}.tfsra-button-align{display:flex;align-items:end}.tfsra-button-align .tfsra-btn{width:100%}

/* Invoice rows with batch and free-sample support */
.tfsra-sale-row{grid-template-columns:minmax(0,1.6fr) minmax(0,1.4fr) minmax(90px,.55fr) minmax(150px,.8fr) auto}.tfsra-sample-checkbox{margin-top:0!important;min-height:45px!important;padding:8px 10px;border:1px solid #ead3c6;border-radius:12px;background:#fff}.tfsra-batch-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}

@media(max-width:700px){.tfsra-sync-bar{flex-wrap:wrap}.tfsra-sync-bar #tfsra-pending-text{margin-inline-start:0;flex:1}.tfsra-sale-row{grid-template-columns:1fr}.tfsra-remove-row{justify-self:start}.tfsra-line-price{grid-column:1}.tfsra-sample-checkbox{margin-top:0!important}}
.tfsra-mini-btn.danger{background:#fff0f0;border-color:#efb7b7;color:#a61d24}.tfsra-error-text{color:#a61d24;font-weight:700;margin:.35rem 0 0}.tfsra-sync-bar.is-syncing{opacity:.88}.tfsra-sync-bar.is-syncing .tfsra-network-dot{animation:tfsraPulse 1s infinite alternate}@keyframes tfsraPulse{to{transform:scale(1.35);opacity:.55}}

/* Subscription cards - v1.5 */
.tfsra-auth-pricing{margin-top:14px;padding:14px;border-radius:18px;background:rgba(255,255,255,.9);border:1px solid rgba(224,163,126,.55);color:#353b43}.tfsra-auth-pricing h2{margin:0 0 11px;color:#981119;font-size:19px}.tfsra-auth-plans{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.tfsra-auth-plan{display:grid;gap:4px;padding:11px 8px;border:1px solid #ebd2c2;border-radius:14px;background:#fff}.tfsra-auth-plan strong{color:#9d1119;font-size:15px}.tfsra-auth-plan span{font-size:20px;font-weight:900;color:#e2451f}.tfsra-auth-plan small{color:#777;font-size:11px}.tfsra-auth-plan.is-free{background:linear-gradient(145deg,#edf9f0,#fff);border-color:#b7dfc1}.tfsra-auth-plan.is-free strong,.tfsra-auth-plan.is-free span{color:#14733b}.tfsra-auth-pricing>p{margin:10px 0 0;color:#665b54;font-size:12px;line-height:1.6}
@media(max-width:380px){.tfsra-auth-plans{grid-template-columns:1fr 1fr}.tfsra-auth-plan{padding:9px 5px}.tfsra-auth-plan span{font-size:17px}}

/* Credit, collections and referral workflow - v1.6 */
.tfsra-collection-kpis,.tfsra-customer-finance-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:0 0 16px}.tfsra-collection-kpis article,.tfsra-customer-finance-grid article{min-width:0;padding:14px;border:1px solid #ead9cc;border-radius:16px;background:#fff;box-shadow:0 4px 14px rgba(90,40,20,.04)}.tfsra-collection-kpis small,.tfsra-customer-finance-grid small{display:block;color:var(--tfsra-muted);margin-bottom:6px}.tfsra-collection-kpis strong,.tfsra-customer-finance-grid strong{display:block;color:var(--tfsra-red-dark);font-size:18px;word-break:break-word}.tfsra-customer-finance-grid span{display:block;margin-top:5px;color:var(--tfsra-muted);font-size:12px}.tfsra-collection-kpis article.pending,.tfsra-customer-finance-grid article.pending{background:#fff8e7;border-color:#edcc79}.tfsra-collection-kpis article.danger,.tfsra-customer-finance-grid article.danger{background:#fff0f0;border-color:#efbfc2}.tfsra-cheque-fields{margin:4px 0 15px;padding:14px;border:1px dashed #d99f72;border-radius:16px;background:#fff9f2}.tfsra-cheque-fields[hidden]{display:none}.tfsra-customer-detail-card{width:min(1050px,100%)}.tfsra-credit-terms{padding:12px 14px;margin:12px 0;border-radius:14px;background:#fff3e9;color:#654638}.tfsra-pending-cheques{padding:13px;border:1px solid #efd1a3;border-radius:15px;background:#fffaf0}.tfsra-pending-cheques h3{margin:0 0 8px;color:#8a520c}.tfsra-pending-cheques>div{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:8px 0;border-bottom:1px solid #f0e0c5}.tfsra-pending-cheques>div:last-child{border-bottom:0}.tfsra-credit-doc-form{margin-top:16px;background:#fff}.tfsra-referral-card{text-align:center;background:linear-gradient(145deg,#fff8ee,#fff)}.tfsra-referral-code{display:inline-block;direction:ltr;margin:12px 0 16px;padding:12px 22px;border:2px dashed #dc6f2c;border-radius:16px;background:#fff;font-size:30px;font-weight:900;letter-spacing:5px;color:var(--tfsra-red-dark)}.tfsra-referral-rules{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:15px}.tfsra-referral-rules span{padding:12px;border-radius:14px;background:#fff3e9;color:#6d3d24;border:1px solid #efd2bf}.tfsra-form label small{display:block;margin-top:5px;color:var(--tfsra-muted);font-weight:400;line-height:1.5}

@media(max-width:900px){.tfsra-collection-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.tfsra-customer-finance-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.tfsra-main{padding:12px}.tfsra-hero{padding:20px 14px}.tfsra-tabs{scroll-snap-type:x proximity}.tfsra-tab{scroll-snap-align:start;flex-basis:92px;min-width:92px}.tfsra-collection-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.tfsra-collection-kpis article{padding:11px}.tfsra-collection-kpis strong{font-size:15px}.tfsra-customer-finance-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.tfsra-customer-finance-grid article{padding:11px}.tfsra-customer-finance-grid strong{font-size:15px}.tfsra-referral-rules{grid-template-columns:1fr}.tfsra-referral-code{font-size:25px;letter-spacing:3px}.tfsra-pending-cheques>div{align-items:flex-start;flex-direction:column}.tfsra-button-row .tfsra-btn{flex:1 1 100%}.tfsra-list-actions .tfsra-mini-btn{flex:1 1 auto;text-align:center}.tfsra-modal-card{padding:15px}.tfsra-credit-doc-form{padding:13px}}
@media(max-width:420px){
    .tfsra-customer-finance-grid{grid-template-columns:1fr}
    .tfsra-customer-finance-grid article{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px}
    .tfsra-customer-finance-grid article small{margin:0}
    .tfsra-customer-finance-grid article span{grid-column:1/-1}
    .tfsra-collection-kpis{grid-template-columns:1fr 1fr}
    .tfsra-collection-kpis article{min-height:86px}
}

/* Personal workflow, debt aging, returns and daily review - v1.7 */
.tfsra-assistant-kpis,.tfsra-aging-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:16px}.tfsra-assistant-kpis article,.tfsra-aging-grid article{min-width:0;padding:15px;border:1px solid var(--tfsra-border);border-radius:17px;background:#fff;box-shadow:0 5px 16px rgba(83,45,25,.045)}.tfsra-assistant-kpis small,.tfsra-aging-grid small{display:block;color:var(--tfsra-muted);line-height:1.5;margin-bottom:6px}.tfsra-assistant-kpis strong,.tfsra-aging-grid strong{display:block;color:var(--tfsra-red-dark);font-size:18px;direction:ltr;text-align:right;word-break:break-word}.tfsra-assistant-kpis article.warning,.tfsra-aging-grid article.warning{background:#fff8e9;border-color:#ebcf8b}.tfsra-assistant-kpis article.danger,.tfsra-aging-grid article.danger{background:#fff1f1;border-color:#ecc0c3}.tfsra-alert-list{display:grid;gap:9px}.tfsra-alert{display:grid;gap:4px;padding:13px 15px;border-radius:15px;border-right:5px solid var(--tfsra-blue);background:#f4f9fd}.tfsra-alert strong{color:#2d3643}.tfsra-alert span{color:var(--tfsra-muted);font-size:13px}.tfsra-alert.danger{background:#fff0f0;border-right-color:#c72b32}.tfsra-alert.warning{background:#fff8e7;border-right-color:#db8a15}.tfsra-alert.success{background:#edf9f1;border-right-color:#168a4b}.tfsra-alert.info{background:#f1f8fc;border-right-color:#1f6690}.tfsra-aging-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.tfsra-workflow-panel>summary{cursor:pointer;list-style:none;font-size:18px;font-weight:900;color:var(--tfsra-red-dark);padding:3px 0 14px}.tfsra-workflow-panel>summary::-webkit-details-marker{display:none}.tfsra-workflow-panel>summary::after{content:'⌄';float:left;color:var(--tfsra-orange);font-size:24px}.tfsra-workflow-panel[open]>summary::after{transform:rotate(180deg)}.tfsra-close-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:14px 0}.tfsra-close-grid article{min-width:0;padding:13px;border:1px solid var(--tfsra-border);border-radius:16px;background:#fff9f5}.tfsra-close-grid article>strong{display:block;color:var(--tfsra-red-dark);margin-bottom:5px}.tfsra-close-grid article>small{display:block;color:var(--tfsra-muted);line-height:1.5}.tfsra-close-grid input{min-height:43px}.tfsra-close-grid [data-difference].is-negative{color:#a61d24;font-weight:900}.tfsra-close-grid [data-difference].is-positive{color:#16703b;font-weight:900}.tfsra-close-total{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:14px 0;padding:14px 16px;border-radius:15px;background:#fff1e5;color:#683c28}.tfsra-close-total strong{color:var(--tfsra-red-dark);font-size:20px}.tfsra-sale-return-card{width:min(1040px,100%)}.tfsra-sale-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:8px 0 16px}.tfsra-sale-summary-grid article{min-width:0;padding:12px;border:1px solid var(--tfsra-border);border-radius:14px;background:#fff}.tfsra-sale-summary-grid small{display:block;color:var(--tfsra-muted);margin-bottom:5px}.tfsra-sale-summary-grid strong{display:block;color:var(--tfsra-red-dark);word-break:break-word}.tfsra-return-items{display:grid;gap:9px;margin-bottom:13px}.tfsra-return-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(160px,.35fr);gap:12px;align-items:center;padding:13px;border:1px solid var(--tfsra-border);border-radius:15px;background:#fff}.tfsra-return-row strong,.tfsra-return-row small{display:block}.tfsra-return-row small{color:var(--tfsra-muted);margin-top:4px;line-height:1.55}.tfsra-return-row label{margin:0}.tfsra-cancel-sale-box{margin-top:20px;padding:16px;border:1px solid #efb6ba;border-radius:18px;background:#fff2f2}.tfsra-cancel-sale-box[hidden]{display:none}.tfsra-cancel-sale-box h3{color:#a31b23;margin:0 0 7px}.tfsra-btn.danger{background:#b82028;color:#fff}.tfsra-subtitle{color:var(--tfsra-red-dark);margin:18px 0 10px}.tfsra-customer-code{font-size:12px;color:var(--tfsra-muted)}

@media(max-width:900px){.tfsra-assistant-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.tfsra-aging-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tfsra-close-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tfsra-sale-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.tfsra-app{margin:0 auto;border-radius:0;box-shadow:none;min-height:100vh}.tfsra-hero{min-height:142px}.tfsra-brand-icon{width:68px;height:68px;border-radius:22px;font-size:36px}.tfsra-brand-copy p{font-size:14px}.tfsra-section-title h2{font-size:21px}.tfsra-card{padding:14px;border-radius:19px}.tfsra-assistant-kpis,.tfsra-aging-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.tfsra-assistant-kpis article,.tfsra-aging-grid article{padding:11px}.tfsra-assistant-kpis strong,.tfsra-aging-grid strong{font-size:15px}.tfsra-close-grid{grid-template-columns:1fr}.tfsra-return-row{grid-template-columns:1fr}.tfsra-sale-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tfsra-list-item{grid-template-columns:1fr;align-items:start}.tfsra-list-actions{justify-content:flex-start;width:100%}.tfsra-list-actions>*{flex:1 1 auto;text-align:center}.tfsra-close-total{align-items:flex-start;flex-direction:column}.tfsra-workflow-panel>summary{font-size:16px}}
@media(max-width:380px){.tfsra-assistant-kpis,.tfsra-aging-grid,.tfsra-sale-summary-grid{grid-template-columns:1fr}.tfsra-tab{flex-basis:86px;min-width:86px;padding-inline:7px}.tfsra-brand-copy h1{font-size:25px}.tfsra-brand-copy small{font-size:11px}}

/* Cash counter and install experience - v1.8 */
.tfsra-account-install{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:7px 11px;border:0;border-radius:999px;background:#ffd36b;color:#6c2d12;font:inherit;font-size:12px;font-weight:900;cursor:pointer}.tfsra-account-install[hidden]{display:none!important}
.tfsra-install-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:center;margin-top:16px;background:linear-gradient(135deg,#fff7eb,#fff);border-color:#efcaa8}.tfsra-install-card[hidden]{display:none!important}.tfsra-install-card h3{margin:0 0 5px;color:var(--tfsra-red-dark)}.tfsra-install-card p{margin:0;color:var(--tfsra-muted);line-height:1.7}.tfsra-install-icon{display:grid;place-items:center;width:56px;height:56px;border-radius:18px;background:linear-gradient(135deg,#b80f1a,#ef7d12);font-size:29px;box-shadow:0 8px 20px rgba(170,45,24,.16)}
.tfsra-cash-counter-summary{display:grid;grid-template-columns:2fr 1fr;gap:10px;margin-bottom:15px}.tfsra-cash-counter-summary article{padding:18px;border-radius:19px;background:linear-gradient(135deg,#a90f18,#e04b25);color:#fff;box-shadow:0 8px 20px rgba(134,32,24,.15)}.tfsra-cash-counter-summary article:last-child{background:linear-gradient(135deg,#1d5c7e,#3186aa)}.tfsra-cash-counter-summary small{display:block;opacity:.88;margin-bottom:7px}.tfsra-cash-counter-summary strong{display:block;direction:ltr;text-align:right;font-size:28px;line-height:1.2}.tfsra-cash-denominations{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:16px}.tfsra-cash-denomination{display:grid!important;grid-template-columns:minmax(70px,.8fr) minmax(80px,1fr);grid-template-areas:'value input' 'total total';gap:8px;align-items:center;padding:13px;border:1px solid #ecd7c7;border-radius:17px;background:#fffaf5;transition:.18s ease}.tfsra-cash-denomination.has-value{border-color:#e2772f;background:#fff2e6;box-shadow:0 5px 15px rgba(202,101,38,.09)}.tfsra-cash-denomination .tfsra-note-value{grid-area:value;font-size:18px;font-weight:900;color:var(--tfsra-red-dark)}.tfsra-cash-denomination input{grid-area:input;margin:0!important;min-height:46px!important;text-align:center;font-weight:900;font-size:18px}.tfsra-cash-denomination [data-line-total]{grid-area:total;display:block;padding-top:7px;border-top:1px dashed #e4c9b6;color:#176f3c;font-size:14px;direction:ltr;text-align:right}.tfsra-cash-actions{margin-top:15px}.tfsra-cash-breakdown{margin-top:7px!important;line-height:1.7!important;color:#6f4b3b!important}.tfsra-view[data-view-panel="cash-counter"] .tfsra-info-card{margin-bottom:14px}
@media(max-width:760px){.tfsra-install-card{grid-template-columns:auto minmax(0,1fr)}.tfsra-install-card .tfsra-btn{grid-column:1/-1;width:100%}.tfsra-cash-denominations{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.tfsra-install-card{grid-template-columns:1fr;text-align:center}.tfsra-install-icon{margin:auto}.tfsra-cash-counter-summary{grid-template-columns:1fr 1fr}.tfsra-cash-counter-summary article{padding:14px}.tfsra-cash-counter-summary strong{font-size:21px}.tfsra-cash-denominations{grid-template-columns:1fr}.tfsra-cash-denomination{grid-template-columns:90px minmax(0,1fr)}.tfsra-cash-actions .tfsra-btn{width:100%}.tfsra-account-bar{align-items:stretch}.tfsra-account-bar>*{justify-content:center}}

/* Customer entry, pricing visibility, exports and sticky icon navigation - v1.9 */
.tfsra-app{overflow:visible}
.tfsra-hero{border-radius:32px 32px 0 0}
.tfsra-tabs{
    display:grid;
    grid-template-columns:repeat(7,minmax(0,1fr));
    gap:6px;
    overflow:visible;
    padding:8px 10px;
    position:sticky;
    top:var(--wp-admin--admin-bar--height,0px);
    z-index:9990;
    background:rgba(255,255,255,.97);
    backdrop-filter:blur(12px);
    box-shadow:0 7px 18px rgba(67,42,27,.08);
}
.tfsra-tab{
    min-width:0;
    min-height:62px;
    padding:7px 4px;
    border:1px solid transparent;
    border-radius:14px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:4px;
    line-height:1.15;
    white-space:normal;
}
.tfsra-tab:hover{background:#fff5ec;border-color:#f0d3bf}
.tfsra-tab.is-active{background:linear-gradient(145deg,#fff1e8,#fff);border-color:#e7bca7;border-bottom-color:#e7bca7;box-shadow:0 4px 12px rgba(140,47,25,.08)}
.tfsra-tab .tfsra-tab-icon{margin:0;font-size:22px;line-height:1}
.tfsra-tab .tfsra-tab-label{margin:0;font-size:11px;text-align:center}
.tfsra-phone-picker-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end}
.tfsra-contact-picker{min-height:48px;margin-top:7px;padding:8px 12px;border:1px solid #e6bda8;border-radius:14px;background:#fff6ef;color:var(--tfsra-red-dark);font:inherit;font-size:12px;font-weight:800;cursor:pointer;white-space:nowrap}
.tfsra-contact-picker:hover{background:#ffecde}
.tfsra-fixed-pricing-note{margin:4px 0 0;padding:12px 14px;border-radius:14px;background:#fff;border:1px dashed #dfb9a1;color:#6a4c3f;line-height:1.7}
.tfsra-template-download{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:10px;align-items:center;padding:12px;border:1px dashed #e6c5ad;border-radius:15px;background:#fffaf5}
.tfsra-template-download small{color:var(--tfsra-muted)}
.tfsra-product-export-tools{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-top:14px;padding:15px;border:1px solid #ead7c8;border-radius:18px;background:#fff9f4}
.tfsra-product-export-tools strong{color:var(--tfsra-red-dark)}
.tfsra-product-export-tools small{flex-basis:100%;color:var(--tfsra-muted)}
#product-fixed-price-panel{grid-template-columns:minmax(180px,360px)}

@media(max-width:900px){
    .tfsra-app{border-radius:0}
    .tfsra-hero{border-radius:0}
    .tfsra-tab .tfsra-tab-label{font-size:10px}
}
@media(max-width:600px){
    .tfsra-tabs{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;padding:6px 5px}
    .tfsra-tab{min-height:48px;padding:5px 2px;border-radius:11px}
    .tfsra-tab .tfsra-tab-icon{font-size:20px}
    .tfsra-tab .tfsra-tab-label{display:none}
    .tfsra-phone-picker-row{grid-template-columns:1fr}
    .tfsra-contact-picker{width:100%;margin-top:0}
    .tfsra-product-export-tools{align-items:stretch}
    .tfsra-product-export-tools .tfsra-button-row,.tfsra-product-export-tools .tfsra-btn{width:100%}
}
@media(max-width:380px){
    .tfsra-tabs{grid-template-columns:repeat(7,minmax(0,1fr));gap:2px;padding-inline:3px}
    .tfsra-tab{min-height:45px}
    .tfsra-tab .tfsra-tab-icon{font-size:18px}
}
body.admin-bar .tfsra-tabs{top:32px}
@media(max-width:782px){body.admin-bar .tfsra-tabs{top:46px}}

/* v1.9.2: HTML hidden must win over grid/flex display rules. */
.tfsra-app [hidden]{display:none!important}

.tfsra-contact-picker{flex:0 0 46px;width:46px;min-width:46px;height:46px;padding:0!important;font-size:21px!important;border-radius:13px!important;display:inline-grid!important;place-items:center}
.tfsra-phone-picker-row{display:flex;align-items:center;gap:8px}.tfsra-phone-picker-row>input{min-width:0;flex:1}
.tfsra-transfer-entry{background:linear-gradient(145deg,#fff8ee,#fff)}
.tfsra-transfer-items{display:grid;gap:10px;margin:12px 0}.tfsra-transfer-item-row{display:grid;grid-template-columns:2fr 1.3fr .8fr auto;gap:9px;align-items:end;padding:11px;border:1px solid var(--tfsra-border);border-radius:15px;background:#fff}.tfsra-transfer-item-row label{margin:0}.tfsra-transfer-source-banner{margin:0 0 14px;padding:12px 14px;border-radius:14px;background:#fff4df;border:1px solid #efc877;color:#71440c}.tfsra-transfer-source-banner strong,.tfsra-transfer-source-banner span{display:block}.tfsra-transfer-source-banner span{margin-top:4px;font-size:13px}
.tfsra-transfer-lines{display:grid;gap:6px;margin-top:9px}.tfsra-transfer-lines span{display:flex;justify-content:space-between;gap:10px;padding:7px 9px;border-radius:10px;background:#fff8f1;font-size:13px}.tfsra-transfer-lines b{color:var(--tfsra-red-dark)}
.tfsra-reconciliation-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.tfsra-reconciliation-row{display:grid;grid-template-columns:minmax(0,1.2fr) repeat(3,minmax(0,1fr));gap:8px;align-items:center;padding:10px;border:1px solid var(--tfsra-border);border-radius:14px;background:#fff}.tfsra-reconciliation-row>strong{color:var(--tfsra-red-dark)}.tfsra-reconciliation-row small{color:var(--tfsra-muted)}.tfsra-reconciliation-row input{min-width:0}.tfsra-reconciliation-row .difference{font-weight:900}.tfsra-reconciliation-row .difference.ok{color:#16834b}.tfsra-reconciliation-row .difference.bad{color:#b52028}.tfsra-reconciliation-total{display:flex;justify-content:space-between;gap:12px;align-items:center;margin:13px 0;padding:14px;border-radius:14px;background:#fff1e6}.tfsra-reconciliation-total strong{font-size:20px;color:var(--tfsra-red-dark)}
@media(max-width:720px){.tfsra-transfer-item-row{grid-template-columns:1fr}.tfsra-reconciliation-grid{grid-template-columns:1fr}.tfsra-reconciliation-row{grid-template-columns:1fr 1fr}.tfsra-reconciliation-row>strong{grid-column:1/-1}.tfsra-reconciliation-row small{font-size:11px}.tfsra-contact-picker{display:inline-grid!important}}

/* v1.9.3: mobile navigation, theme isolation, contact picker and safe install guidance. */
.tfsra-app,
.tfsra-app input,
.tfsra-app select,
.tfsra-app textarea,
.tfsra-app button {
    color-scheme: only light;
}

body.tfsra-app-page {
    margin: 0;
    background: var(--tfsra-bg, #f7f4f1);
}
body.tfsra-app-page #masthead,
body.tfsra-app-page .site-header,
body.tfsra-app-page .site-footer,
body.tfsra-app-page #colophon,
body.tfsra-app-page .entry-header,
body.tfsra-app-page .wp-block-post-title,
body.tfsra-app-page > .wp-site-blocks > header,
body.tfsra-app-page > .wp-site-blocks > footer {
    display: none !important;
}
body.tfsra-app-page .site,
body.tfsra-app-page .site-content,
body.tfsra-app-page .content-area,
body.tfsra-app-page .entry-content,
body.tfsra-app-page .wp-site-blocks,
body.tfsra-app-page .wp-block-post-content,
body.tfsra-app-page .wp-block-group,
body.tfsra-app-page .wp-block-group__inner-container {
    width: 100% !important;
    max-width: none !important;
    margin-inline: 0 !important;
}
body.tfsra-app-page .entry-content,
body.tfsra-app-page .wp-block-post-content {
    padding: 0 !important;
}

.tfsra-tabs {
    grid-template-columns: repeat(7, minmax(0, 1fr));
    align-items: stretch;
}
.tfsra-tab {
    min-height: 64px;
}
.tfsra-tab .tfsra-tab-label {
    display: block;
    line-height: 1.18;
    text-wrap: balance;
}

.tfsra-phone-picker-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 8px;
    align-items: end;
}
.tfsra-contact-picker {
    width: auto;
    min-width: 156px;
    height: 48px;
    padding: 8px 12px !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 7px;
    border-radius: 14px !important;
    font-size: 12px !important;
    line-height: 1.25;
    white-space: normal;
}
.tfsra-contact-picker > span:first-child {
    font-size: 20px;
    flex: 0 0 auto;
}
.tfsra-contact-picker.is-fallback {
    background: #fff6dd;
    border-color: #e6bd65;
    color: #6b4700;
}
.tfsra-contact-help {
    display: block;
    margin-top: 6px;
    color: #8a5b1f;
    font-size: 11px;
    line-height: 1.6;
}

.tfsra-install-guide-card {
    max-width: 560px;
}
.tfsra-install-steps {
    color: var(--tfsra-text);
    line-height: 1.8;
}
.tfsra-install-steps ol {
    margin: 12px 0 18px;
    padding-inline-start: 24px;
}
.tfsra-install-warning {
    display: grid;
    gap: 6px;
    padding: 13px 14px;
    border: 1px solid #e8b96a;
    border-radius: 15px;
    background: #fff7df;
    color: #704800;
}
.tfsra-install-warning span {
    font-size: 13px;
}

@media (max-width: 900px) {
    .tfsra-tabs {
        grid-template-columns: repeat(6, minmax(0, 1fr));
    }
    .tfsra-tab {
        min-height: 60px;
    }
}

@media (max-width: 600px) {
    .tfsra-app {
        width: 100%;
        max-width: none;
        margin: 0;
    }
    .tfsra-tabs {
        grid-template-columns: repeat(5, minmax(0, 1fr));
        gap: 4px;
        padding: 6px 5px;
    }
    .tfsra-tab {
        min-height: 57px;
        padding: 5px 2px;
        gap: 3px;
    }
    .tfsra-tab .tfsra-tab-icon {
        font-size: 20px;
    }
    .tfsra-tab .tfsra-tab-label {
        display: block;
        font-size: 9.5px;
        line-height: 1.15;
        max-width: 100%;
    }
    .tfsra-phone-picker-row {
        grid-template-columns: 1fr;
    }
    .tfsra-contact-picker {
        width: 100%;
        min-width: 0;
        margin-top: 0;
        font-size: 13px !important;
    }
}

@media (max-width: 360px) {
    .tfsra-tabs {
        grid-template-columns: repeat(5, minmax(0, 1fr));
        gap: 3px;
        padding-inline: 3px;
    }
    .tfsra-tab {
        min-height: 55px;
        padding-inline: 1px;
    }
    .tfsra-tab .tfsra-tab-icon {
        font-size: 18px;
    }
    .tfsra-tab .tfsra-tab-label {
        font-size: 8.7px;
    }
}

/* v1.9.4: official trofarm.online logo and safer Samsung shortcut-only installation path. */
.tfsra-brand-icon,
.tfsra-auth-bird {
    overflow: hidden;
    border-radius: 50%;
    background: #fff;
    padding: 0;
}
.tfsra-brand-icon img,
.tfsra-auth-bird img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: inherit;
}
.tfsra-brand-icon {
    border: 3px solid rgba(255,255,255,.82);
    box-shadow: 0 10px 26px rgba(72,0,0,.22);
}
.tfsra-auth-bird {
    border: 2px solid #e7bd55;
    box-shadow: 0 10px 24px rgba(146,61,12,.16);
}
.tfsra-install-icon {
    overflow: hidden;
    padding: 3px;
    background: #fff;
    border: 1px solid #e8c770;
}
.tfsra-install-icon img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 14px;
}


/* v2.2.9: keep backup and restore entry visible on every device. */
.tfsra-account-backup{background:#fff!important;color:#7b1d22!important;border:1px solid rgba(255,255,255,.7)!important}
.tfsra-tab-backups{background:linear-gradient(145deg,#fff4d8,#fff)!important;border-color:#e9bf61!important}
.tfsra-view[data-view-panel="backups"] .tfsra-card{border-color:#e4c07d}
@media(max-width:600px){.tfsra-account-backup{width:100%}.tfsra-view[data-view-panel="backups"] .tfsra-button-row .tfsra-btn{width:100%}}
