.tf-main-root{background:#F8FAFC;min-height:100vh;padding-bottom:80px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;color:#0F172A;overflow-x:clip;max-width:100vw}.tf-container,.tf-main-root{width:100%;box-sizing:border-box}.tf-container{max-width:1160px;margin:0 auto;padding:0 20px;min-width:0}.tf-hero-section{background:radial-gradient(120% 100% at 50% 0,#EEF4FF 0,#F8FAFC 60%,#FFFFFF 100%);border-bottom:1px solid #e2e8f0;padding:clamp(24px,4vw,44px) 16px clamp(20px,3.5vw,32px);text-align:center;width:100%;box-sizing:border-box}.tf-breadcrumb-wrap{display:flex;justify-content:center;width:100%;margin-bottom:12px}.tf-breadcrumb{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:#64748B;flex-wrap:wrap;justify-content:center}.tf-breadcrumb a{color:#1E40AF;text-decoration:none;font-weight:500}.tf-breadcrumb a:hover{text-decoration:underline}.tf-breadcrumb-sep{color:#94A3B8;font-size:11px}.tf-hero-badge-wrap{display:flex;justify-content:center;width:100%;margin-bottom:12px}.tf-hero-badge{display:inline-flex;align-items:center;justify-content:center;gap:6px;background:#EFF6FF;border:1px solid #bfdbfe;padding:4px 14px;border-radius:100px;font-size:11px;font-weight:700;color:#1E40AF;letter-spacing:.3px;text-transform:uppercase;max-width:100%;box-sizing:border-box;line-height:1.4}.tf-beacon-dot{width:6px;height:6px;border-radius:50%;background:#047857;flex-shrink:0}.tf-hero-title{font-size:clamp(22px,4.2vw,38px);font-weight:800;color:#0F172A;letter-spacing:-.025em;line-height:1.2;margin:0 0 10px}.tf-hero-description,.tf-hero-title{word-break:break-word;overflow-wrap:break-word}.tf-hero-description{font-size:clamp(13px,1.3vw,15px);color:#475569;line-height:1.6;max-width:760px;margin:0 auto 16px}.tf-proof-bar{justify-content:center;flex-wrap:wrap;gap:6px 14px;background:#FFFFFF;padding:5px 14px;border-radius:100px;border:1px solid #e2e8f0;box-shadow:0 1px 3px rgba(15,23,42,.04);font-size:11.5px;color:#334155;max-width:100%;box-sizing:border-box}.tf-proof-bar,.tf-proof-item{display:inline-flex;align-items:center}.tf-proof-item{gap:5px;font-weight:500;white-space:nowrap}.tf-proof-item strong{font-weight:700;color:#0F172A}.tf-proof-divider{color:#CBD5E1;font-size:10px}.tf-content-workspace{padding-top:24px}.tf-section-header{margin-bottom:20px}.tf-section-badge{font-size:10.5px;font-weight:800;color:#1E40AF;text-transform:uppercase;letter-spacing:.6px;display:inline-flex;align-items:center;gap:4px;margin-bottom:4px}.tf-section-title{font-size:clamp(18px,3vw,24px);font-weight:800;color:#0F172A;margin:0 0 6px;letter-spacing:-.02em;line-height:1.3;word-break:break-word}.tf-section-desc{font-size:13.5px;color:#475569;line-height:1.6;margin:0;max-width:820px;word-break:break-word}.tf-checker-card{background:#FFFFFF;border:1.5px solid #bfdbfe;border-radius:16px;padding:24px;margin-bottom:36px;box-shadow:0 4px 20px rgba(30,64,175,.05);box-sizing:border-box;width:100%;min-width:0}.tf-checker-head{display:flex;align-items:center;gap:12px;border-bottom:1px solid #f1f5f9;padding-bottom:16px;margin-bottom:20px}.tf-checker-icon{width:42px;height:42px;border-radius:10px;background:#EFF6FF;border:1px solid #bfdbfe;color:#1E40AF;display:flex;align-items:center;justify-content:center;flex-shrink:0}.tf-checker-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start}.tf-form-group{margin-bottom:14px}.tf-form-label{display:block;font-size:11.5px;font-weight:700;color:#334155;text-transform:uppercase;letter-spacing:.3px;margin-bottom:6px}.tf-status-selector-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;width:100%;box-sizing:border-box}.tf-status-btn{background:#F8FAFC;border:1.5px solid #cbd5e1;border-radius:8px;padding:8px 9px;text-align:left;cursor:pointer;display:flex;flex-direction:column;justify-content:center;transition:all .15s ease;font-family:inherit;box-sizing:border-box;width:100%;min-width:0}.tf-status-btn:nth-child(5){grid-column:span 2}.tf-status-btn:hover{background:#EFF6FF;border-color:#93C5FD}.tf-status-btn.active{background:#1E40AF;border-color:#1E40AF;color:#FFFFFF;box-shadow:0 2px 8px rgba(30,64,175,.18)}.tf-status-btn-top{display:flex;align-items:center;gap:6px;font-size:11.5px;font-weight:700;color:#0F172A;line-height:1.2}.tf-status-btn.active .tf-status-btn-top{color:#FFFFFF}.tf-status-btn-label,.tf-status-btn-sub{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tf-status-btn-sub{font-size:10px;color:#64748B;font-weight:500;margin-top:2px;margin-left:19px;line-height:1.2}.tf-status-btn.active .tf-status-btn-sub{color:#DBEAFE}.tf-input,.tf-select{width:100%;max-width:100%;padding:9px 12px;border-radius:8px;border:1.5px solid #cbd5e1;font-size:13px;font-weight:600;color:#0F172A;background:#FFFFFF;outline:none;font-family:inherit;box-sizing:border-box;transition:border-color .15s ease}.tf-input:focus,.tf-select:focus{border-color:#1E40AF}.tf-checkbox-group{display:flex;flex-direction:column;gap:8px;margin-top:6px}.tf-checkbox-label{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;color:#475569;font-weight:500;cursor:pointer}.tf-checkbox-label input{cursor:pointer;accent-color:#1E40AF;width:15px;height:15px}.tf-verdict-box{background:#F8FAFC;border:1.5px solid #e2e8f0;border-radius:12px;padding:18px;box-sizing:border-box}.tf-verdict-mandatory{background:#EFF6FF;border-color:#93C5FD}.tf-verdict-exempt{background:#F0FDF4;border-color:#86EFAC}.tf-verdict-credit{background:#FFFBEB;border-color:#FDE68A}.tf-verdict-badge{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:100px;font-size:11px;font-weight:800;letter-spacing:.3px;text-transform:uppercase;margin-bottom:8px}.tf-verdict-mandatory .tf-verdict-badge{background:#1E40AF;color:#FFFFFF}.tf-verdict-exempt .tf-verdict-badge{background:#047857;color:#FFFFFF}.tf-verdict-credit .tf-verdict-badge{background:#B45309;color:#FFFFFF}.tf-verdict-title{font-size:16px;font-weight:800;color:#0F172A;margin:0 0 6px;line-height:1.3}.tf-verdict-text{font-size:12.5px;color:#475569;line-height:1.55;margin:0 0 10px}.tf-verdict-stat{font-size:11.5px;font-weight:700;color:#1E3A8A;background:rgba(255,255,255,.7);padding:6px 10px;border-radius:6px;border:1px solid rgba(0,0,0,.05);display:inline-block}.tf-table-card{background:#FFFFFF;border:1px solid #e2e8f0;border-radius:14px;padding:22px;margin-bottom:36px;box-shadow:0 1px 3px rgba(15,23,42,.03);box-sizing:border-box;width:100%;min-width:0}.tf-table-wrap{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;margin-top:14px;margin-bottom:14px;border:1px solid #e2e8f0;border-radius:8px}.tf-table{width:100%;border-collapse:collapse;font-size:13px;text-align:left;min-width:580px}.tf-table th{background:#F8FAFC;font-weight:700;border-bottom:2px solid #cbd5e1;font-size:11.5px;text-transform:uppercase;letter-spacing:.3px;white-space:nowrap}.tf-table td,.tf-table th{padding:10px 14px;color:#334155}.tf-table td{border-bottom:1px solid #f1f5f9}.tf-table tr:last-child td{border-bottom:none}.tf-table tr:hover td{background:#F8FAFC}.tf-row-highlight td{background:#EFF6FF!important;font-weight:600;color:#1E40AF!important}.tf-row-alert td{background:#FEF2F2!important;color:#991B1B!important;font-weight:700}.tf-callout-strip{background:#EFF6FF;border-left:4px solid #1e40af;border-radius:0 8px 8px 0;padding:10px 14px;font-size:12.5px;color:#1E3A8A;line-height:1.5;display:flex;align-items:flex-start;gap:8px}.tf-calendar-section{margin-bottom:36px}.tf-filter-pills{display:flex;overflow-x:auto;gap:6px;padding-bottom:6px;margin-bottom:16px;scrollbar-width:none;-webkit-overflow-scrolling:touch}.tf-filter-pills::-webkit-scrollbar{display:none}.tf-filter-btn{padding:6px 12px;border-radius:7px;border:1px solid #e2e8f0;background:#FFFFFF;color:#475569;font-size:12px;font-weight:600;cursor:pointer;white-space:nowrap;flex-shrink:0;transition:all .15s ease;font-family:inherit;display:inline-flex;align-items:center;gap:5px}.tf-filter-btn:hover{color:#1E40AF;border-color:#CBD5E1;background:#F8FAFC}.tf-filter-btn.active{background:#1E40AF;border-color:#1E40AF;color:#FFFFFF;font-weight:700}.tf-calendar-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr));gap:14px}.tf-date-card{background:#FFFFFF;border:1px solid #e2e8f0;border-radius:12px;padding:16px;display:flex;gap:14px;box-sizing:border-box;transition:all .2s ease}.tf-date-card:hover{border-color:#BFDBFE;transform:translateY(-2px);box-shadow:0 4px 14px rgba(30,64,175,.05)}.tf-date-badge{display:flex;flex-direction:column;align-items:center;justify-content:center;width:52px;height:54px;border-radius:8px;background:#F1F5F9;border:1px solid #cbd5e1;flex-shrink:0;text-align:center}.tf-date-month{font-size:10px;font-weight:800;color:#64748B;text-transform:uppercase;line-height:1}.tf-date-day{font-size:18px;font-weight:900;color:#0F172A;line-height:1.1}.tf-date-year{font-size:9px;color:#64748B;font-weight:600;line-height:1}.tf-date-badge.urgent{background:#EFF6FF;border-color:#93C5FD}.tf-date-badge.urgent .tf-date-day,.tf-date-badge.urgent .tf-date-month{color:#1E40AF}.tf-date-badge.alert{background:#FEF2F2;border-color:#FCA5A5}.tf-date-badge.alert .tf-date-day,.tf-date-badge.alert .tf-date-month{color:#DC2626}.tf-date-info{flex:1 1 auto;min-width:0}.tf-date-title{font-size:14.5px;font-weight:800;color:#0F172A;margin:0 0 3px;line-height:1.3}.tf-date-form-tag{font-size:9.5px;font-weight:700;background:#F1F5F9;color:#475569;padding:1px 5px;border-radius:4px;display:inline-block;margin-bottom:4px}.tf-date-desc{font-size:12px;color:#64748B;line-height:1.45;margin:0}.tf-deduction-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:16px;margin-bottom:36px}.tf-deduction-card{background:#FFFFFF;border:1px solid #e2e8f0;border-radius:14px;padding:20px;box-sizing:border-box}.tf-deduction-head{display:flex;align-items:center;gap:10px;margin-bottom:12px;padding-bottom:10px;border-bottom:1px solid #f1f5f9}.tf-deduction-icon{width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.tf-deduction-icon.blue{background:#EFF6FF;border:1px solid #bfdbfe;color:#1E40AF}.tf-deduction-icon.indigo{background:#EEF2FF;border:1px solid #c7d2fe;color:#4338CA}.tf-deduction-title{font-size:16px;font-weight:800;color:#0F172A;margin:0}.tf-feature-list{padding-left:18px;margin:0 0 12px;font-size:13px;color:#475569;line-height:1.6}.tf-feature-list li{margin-bottom:6px}.tf-penalty-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:16px;margin-bottom:36px}.tf-penalty-card{border-radius:12px;padding:18px;box-sizing:border-box;display:flex;flex-direction:column;justify-content:space-between}.tf-penalty-card.red{background:#FEF2F2;border:1px solid #fca5a5;color:#7F1D1D}.tf-penalty-card.amber{background:#FFFBEB;border:1px solid #fde68a;color:#78350F}.tf-penalty-card.emerald{background:#F0FDF4;border:1px solid #a7f3d0;color:#065F46}.tf-penalty-tag{font-size:10px;font-weight:800;letter-spacing:.4px;text-transform:uppercase;margin-bottom:6px}.tf-penalty-title{font-size:16px;font-weight:800;margin:0 0 6px;line-height:1.3}.tf-penalty-desc{font-size:12.5px;line-height:1.55;margin:0}.tf-tools-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr));gap:14px;margin-bottom:36px}.tf-tool-card{background:#FFFFFF;border:1px solid #e2e8f0;border-radius:12px;padding:18px;text-decoration:none;display:flex;flex-direction:column;justify-content:space-between;box-sizing:border-box;transition:all .2s cubic-bezier(.16,1,.3,1)}.tf-tool-card:hover{border-color:#BFDBFE;transform:translateY(-2px);box-shadow:0 6px 18px rgba(30,64,175,.06)}.tf-tool-icon-box{width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;margin-bottom:12px}.tf-tool-title{font-size:15px;font-weight:800;color:#0F172A;margin:0 0 4px;display:flex;align-items:center;justify-content:space-between}.tf-tool-desc{font-size:12px;color:#64748B;line-height:1.45;margin:0}.tf-faq-card{background:#FFFFFF;border:1px solid #e2e8f0;border-radius:14px;padding:24px;margin-top:36px;box-sizing:border-box}.tf-faq-item{border-bottom:1px solid #f1f5f9;padding:14px 0}.tf-faq-item:last-child{border-bottom:none;padding-bottom:0}.tf-faq-question-btn{width:100%;display:flex;justify-content:space-between;align-items:center;text-align:left;background:none;border:none;padding:0;font-size:14.5px;font-weight:700;color:#0F172A;cursor:pointer;font-family:inherit;gap:10px}.tf-faq-chevron{transition:transform .2s ease;color:#64748B;flex-shrink:0}.tf-faq-chevron.open{transform:rotate(180deg);color:#1E40AF}.tf-faq-answer{font-size:13px;color:#475569;line-height:1.6;margin-top:8px}.tf-bottom-strip{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding-top:20px;margin-top:36px;border-top:1px solid #e2e8f0;box-sizing:border-box;width:100%}.tf-bottom-back{display:inline-flex;align-items:center;gap:5px;color:#1E40AF;font-weight:600;font-size:13px;text-decoration:none}.tf-bottom-back:hover{text-decoration:underline}.tf-bottom-links{display:inline-flex;align-items:center;gap:10px;font-size:12px;color:#64748B;flex-wrap:wrap}.tf-bottom-links a{color:#475569;text-decoration:none;font-weight:500}.tf-bottom-links a:hover{color:#1E40AF;text-decoration:underline}@media (max-width:768px){.tf-container{padding:0 14px}.tf-hero-section{padding:20px 12px 24px}.tf-proof-bar{border-radius:12px;padding:6px 10px;flex-direction:column;gap:4px;width:100%}.tf-proof-divider{display:none}.tf-checker-grid{grid-template-columns:1fr;gap:16px}.tf-checker-card,.tf-table-card{padding:16px}.tf-faq-card{padding:18px}}@media (max-width:480px){.tf-container{padding:0 10px}.tf-hero-section{padding:16px 8px 20px}.tf-hero-title{font-size:21px}.tf-hero-description{font-size:12.5px}.tf-checker-card{padding:14px 12px;border-radius:12px}.tf-checker-head{gap:8px;padding-bottom:12px;margin-bottom:14px}.tf-checker-icon{width:36px;height:36px}.tf-date-card{padding:12px;gap:10px}.tf-date-badge{width:46px;height:48px}.tf-date-day{font-size:16px}.tf-bottom-strip{flex-direction:column;align-items:center;text-align:center;gap:8px}}@media (max-width:340px){.tf-container{padding:0 6px}.tf-hero-title{font-size:18.5px}.tf-checker-card,.tf-deduction-card,.tf-faq-card,.tf-table-card{padding:12px 8px}}