.tsv2{min-height:70vh;background:#fff;color:#141f29}
.tsv2 *{box-sizing:border-box}
.tsv2-shell{width:min(100% - 40px,1160px);margin:auto;padding:34px 0 80px}
.tsv2-header{margin:0 0 20px}
.tsv2-header h1{margin:0 0 5px;color:#00223d;font-size:clamp(24px,2.4vw,30px);line-height:1.3}
.tsv2-header p{margin:0;color:#5c6975;font-size:14px}
.tsv2-entry{display:grid;gap:12px;max-width:1040px}
.tsv2-camera{display:none}
.tsv2-composer{padding:18px;border:1px solid #dbe0e5;border-radius:14px;background:#f2f6f9}
.tsv2-composer label,.tsv2-refine label{display:block;margin:0 0 9px;color:#00223d;font-size:14px;font-weight:800}
.tsv2 textarea,.tsv2 input:not([type=checkbox]){display:block;width:100%;min-height:100px;padding:14px 15px;border:1px solid #dbe0e5;border-radius:9px;background:#fff;color:#141f29;font:inherit;resize:vertical}
.tsv2 input:not([type=checkbox]){min-height:48px}
.tsv2 textarea:focus,.tsv2 input:focus{outline:2px solid #367492;outline-offset:2px}
.tsv2-modes{display:flex;flex-wrap:wrap;gap:7px;margin:13px 0 10px}
.tsv2-modes span{padding:6px 9px;border-radius:999px;background:#fff;color:#5c6975;font-size:11px}
.tsv2-modes .is-active{background:#e8f2fa;color:#00223d;font-weight:800}
.tsv2-composer p{margin:0 0 14px;color:#5c6975;font-size:11px}
.tsv2-primary{display:inline-flex;min-height:44px;align-items:center;justify-content:center;padding:10px 18px;border:0;border-radius:10px;background:#ff7f00;color:#fff!important;font:inherit;font-size:13px;font-weight:800;text-align:center;text-decoration:none;cursor:pointer}
.tsv2-primary:hover{background:#de6c00}
.tsv2-primary:disabled{opacity:.6;cursor:wait}
.tsv2-composer>.tsv2-primary{width:100%}
.tsv2.is-decision .tsv2-header,.tsv2.is-processing .tsv2-header,.tsv2.is-error .tsv2-header{display:none}
.tsv2-section-label{font-size:11px;font-weight:800;letter-spacing:.02em}
.tsv2-processing{max-width:1040px}
.tsv2-retained{display:grid;width:fit-content;max-width:100%;gap:3px;padding:11px 14px;border:1px solid #dbe0e5;border-radius:10px;background:#f2f6f9}
.tsv2-retained strong{color:#00223d;font-size:14px;overflow-wrap:anywhere}
.tsv2-retained span{color:#5c6975;font-size:11px}
.tsv2-processing-card{min-height:240px;margin-top:14px;padding:20px;border:1px solid #dbe0e5;border-radius:14px;background:#fff}
.tsv2-processing-card h2{margin:0 0 18px;color:#00223d;font-size:22px}
.tsv2-processing-card ol{display:grid;gap:14px;margin:0;padding:0;list-style:none}
.tsv2-processing-card li{display:flex;align-items:center;gap:10px;color:#5c6975;font-size:14px}
.tsv2-processing-card li span{display:grid;flex:none;place-items:center;width:24px;height:24px;border-radius:50%;background:#f2f6f9;color:#5c6975;font-size:11px;font-weight:800}
.tsv2-processing-card li.is-current{color:#141f29;font-weight:700}
.tsv2-processing-card li.is-current span{background:#00223d;color:#fff}
.tsv2-error{max-width:1040px;padding:18px;border-radius:14px;background:#fcebeb}
.tsv2-error-tag{display:inline-flex;padding:5px 9px;border-radius:999px;background:#b21f1f;color:#fff;font-size:10px;font-weight:800}
.tsv2-error h2{margin:9px 0 5px;color:#b21f1f;font-size:24px}
.tsv2-error>p{margin:0 0 14px;color:#141f29;font-size:13px}
.tsv2-error .tsv2-retained{margin:0 0 14px;background:#fff}
.tsv2-error-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.tsv2-error-actions .tsv2-primary{min-width:220px}
.tsv2-error-actions button:not(.tsv2-primary){min-height:44px;border:0;background:transparent;color:#00223d;font:inherit;font-weight:800;cursor:pointer}
.tsv2-message{margin:0 0 12px;padding:12px 14px;border-radius:10px;background:#fff8e9;color:#725018;font-size:13px}
.tsv2-result{max-width:1160px}
.tsv2-decision{--decision-bg:#00223d;padding:18px 20px;border-radius:14px;background:var(--decision-bg);color:#fff}
.tsv2-ready .tsv2-decision{--decision-bg:#147d4d}
.tsv2-conditional .tsv2-decision,.tsv2-information .tsv2-decision{--decision-bg:#b86e0f}
.tsv2-expert .tsv2-decision{--decision-bg:#613d9e}
.tsv2-unsupported .tsv2-decision,.tsv2-undetermined .tsv2-decision{--decision-bg:#5c6975}
.tsv2-decision .tsv2-section-label{color:#fff;opacity:.9}
.tsv2-status{display:inline-flex;margin-top:6px;padding:4px 9px;border-radius:999px;background:#fff;color:var(--decision-bg);font-size:11px;font-weight:800}
.tsv2-decision h2{margin:7px 0 5px;color:#fff;font-size:clamp(22px,2.3vw,30px);line-height:1.3}
.tsv2-decision p{margin:0;color:#fff;font-size:12px}
.tsv2-product{display:flex;align-items:center;justify-content:space-between;gap:12px;width:fit-content;max-width:100%;margin:12px 0;padding:9px 12px;border:1px solid #dbe0e5;border-radius:10px;background:#fff}
.tsv2-product span{display:grid;min-width:0;gap:2px}
.tsv2-product small{color:#5c6975;font-size:11px}
.tsv2-product strong{font-size:13px;overflow-wrap:anywhere}
.tsv2-product button,.tsv2-footer button{flex:none;border:0;background:transparent;color:#155879;font:inherit;font-size:12px;font-weight:800;text-decoration:underline;cursor:pointer}
.tsv2-core{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:18px;margin:0 0 12px}
.tsv2-conditions{padding:12px 0}
.tsv2-result h3{margin:0 0 9px;color:#00223d;font-size:14px}
.tsv2-conditions h3{color:#de6c00}
.tsv2-conditions ul{display:grid;gap:8px;margin:0;padding:0;list-style:none;counter-reset:condition}
.tsv2-conditions li{display:flex;align-items:flex-start;gap:9px;font-size:13px;line-height:1.4;counter-increment:condition}
.tsv2-conditions li::before{content:counter(condition);display:grid;flex:none;place-items:center;width:21px;height:21px;border-radius:50%;background:#f2f6f9;color:#00223d;font-size:10px;font-weight:800}
.tsv2-next{padding:14px;border-radius:12px;background:#e8f7f0}
.tsv2-next h3{margin-bottom:5px;color:#147d4d;font-size:11px}
.tsv2-next>strong{display:block;color:#141f29;font-size:16px;line-height:1.35}
.tsv2-next p{margin:5px 0 0;color:#5c6975;font-size:11px}
.tsv2-actions{margin-top:10px}
.tsv2-actions .tsv2-primary{min-width:190px;background:#147d4d}
.tsv2-actions .tsv2-primary:hover{background:#0e653d}
.tsv2-refine{margin:10px 0;padding:15px;border:1px solid #dbe0e5;border-radius:10px;background:#fbfcfd}
.tsv2-refinement{margin:10px 0;padding:11px 13px;border:1px solid #dbe0e5;border-radius:10px;background:#fff}
.tsv2-refinement>summary{color:#00223d;font-size:12px;font-weight:800;cursor:pointer}
.tsv2-refinement>summary span{margin-left:6px;color:#5c6975;font-size:11px;font-weight:500}
.tsv2-refinement .tsv2-refine:last-child{margin-bottom:0}
.tsv2-refine h3{margin:7px 0 9px}
.tsv2-refine p{margin:7px 0;color:#5c6975;font-size:13px}
.tsv2-refine small{display:block;margin-top:10px;color:#5c6975}
.tsv2-refine>.tsv2-primary{margin-top:10px}
.tsv2-options{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.tsv2-options button{min-height:44px;padding:8px 12px;border:1px solid #a9b7c2;border-radius:8px;background:#fff;color:#00223d;font:inherit;cursor:pointer}
.tsv2-options button:hover{border-color:#367492;background:#e8f2fa}
.tsv2-refine form{margin-top:12px}
.tsv2-refine form .tsv2-primary{margin-top:9px}
.tsv2-detail{margin:10px 0;padding:11px 13px;border-radius:10px;background:#f2f6f9}
.tsv2-detail summary{color:#00223d;font-size:12px;font-weight:800;cursor:pointer}
.tsv2-detail>div{padding-top:16px}
.tsv2-detail ul{display:grid;gap:10px;margin:0 0 14px;padding:0;list-style:none}
.tsv2-detail li{display:grid;gap:3px}
.tsv2-detail li span{color:#5c6975}
.tsv2-detail a,.tsv2-footer a{color:#155879;font-weight:800}
.tsv2-footer{display:flex;flex-wrap:wrap;gap:18px;padding:15px 2px}
.tsv2-page [data-product-context-shell],.tsv2-page .product-context-shell{display:none!important}
@media(max-width:600px){
  .tsv2-shell{width:min(100% - 32px,1160px);padding:14px 0 56px}
  .tsv2-header{margin-bottom:12px}
  .tsv2-header h1{font-size:21px}
  .tsv2-header p{font-size:11px}
  .tsv2-camera{display:grid;align-content:center;gap:4px;min-height:124px;padding:14px;border:1px solid #dbe0e5;border-radius:13px;background:#e8f2fa;color:#00223d}
  .tsv2-camera strong{font-size:21px}
  .tsv2-camera span{color:#5c6975;font-size:11px}
  .tsv2-composer{padding:12px}
  .tsv2 textarea{min-height:80px}
  .tsv2-modes{gap:5px;margin:10px 0}
  .tsv2-modes span{padding:5px 7px;font-size:10px}
  .tsv2-composer p{font-size:10px}
  .tsv2-decision{padding:12px}
  .tsv2-decision h2{font-size:21px}
  .tsv2-decision p{font-size:10px}
  .tsv2-product{width:100%;margin:10px 0;padding:9px}
  .tsv2-product small{font-size:10px}
  .tsv2-product strong{font-size:12px}
  .tsv2-core{grid-template-columns:1fr;gap:10px}
  .tsv2-conditions{padding:10px;border:1px solid #dbe0e5;border-radius:9px}
  .tsv2-conditions li{gap:6px;font-size:11px}
  .tsv2-next{padding:11px}
  .tsv2-next>strong{font-size:13px}
  .tsv2-actions .tsv2-primary{width:100%;min-height:44px}
  .tsv2-options{display:grid}
  .tsv2-options button{text-align:left}
  .tsv2-error h2{font-size:20px}
  .tsv2-error-actions .tsv2-primary{width:100%}
}
