.rsi-workspace{max-width:1200px;margin:auto;padding:28px 30px 64px;color:var(--text,#243044)}
.rsi-header,.rsi-section-head,.rsi-card-head{display:flex;align-items:center;justify-content:space-between;gap:16px}
.rsi-header{align-items:flex-start;margin-bottom:24px}.rsi-header h1{font-size:28px;margin:6px 0 10px;letter-spacing:-.5px}.rsi-header p,.rsi-help,.rsi-scope-note{color:var(--muted);line-height:1.7}.rsi-header p{margin:0;max-width:620px}.rsi-eyebrow{font-size:11px;letter-spacing:2px;color:var(--muted);font-weight:600}
.rsi-capabilities{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.rsi-capability{background:#fff;border:1px solid #dfe6ee;border-radius:12px;padding:16px 18px;display:flex;flex-wrap:wrap;align-items:center;gap:8px}.rsi-capability strong{flex:1;font-size:15px}.rsi-capability span{font-size:11px;padding:3px 7px;background:#f0f4f9;border-radius:5px;color:#5f7188}.rsi-capability small{width:100%;color:var(--muted)}.rsi-scope-note{font-size:12px;margin:12px 0 24px}
.rsi-tabs{display:flex;gap:6px;border-bottom:1px solid #e2e8f0;margin-bottom:24px;overflow-x:auto}.rsi-tabs button{padding:12px 15px;background:none;border:0;border-bottom:2px solid transparent;color:var(--muted);white-space:nowrap;cursor:pointer;font:inherit;font-size:13px}.rsi-tabs button.on{border-color:#246ba9;color:#246ba9;font-weight:600}
.rsi-section-head{margin:18px 0}.rsi-section-head h2,.rsi-card-head h2{font-size:17px;margin:0}.rsi-card{background:#fff;border:1px solid #dfe6ee;border-radius:14px;padding:24px;margin:18px 0;box-shadow:0 2px 5px #24304403}.rsi-card h2{font-size:21px}.rsi-card h3{font-size:15px;margin-top:24px}.rsi-card p,.rsi-card dd{line-height:1.7;overflow-wrap:anywhere}.rsi-empty{padding:44px 24px;text-align:center;background:#f8fafc;border:1px dashed #d6e0eb;border-radius:14px;color:var(--muted);line-height:1.8}.rsi-empty h3{color:#344b66;font-size:17px}.rsi-empty p{max-width:480px;margin:8px auto 22px}.rsi-case-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.rsi-case{padding:22px;background:#fff;border:1px solid #dce5ee;border-radius:12px;text-align:left;cursor:pointer;transition:box-shadow .15s,border-color .15s;font:inherit;color:inherit}.rsi-case:hover{border-color:#8faeca;box-shadow:0 4px 16px #23456b0a}.rsi-case h3{font-size:17px;line-height:1.6;margin:14px 0 10px;overflow-wrap:anywhere}.rsi-case p,.rsi-case small{font-size:12px;color:var(--muted)}.rsi-badge{display:inline-flex;padding:4px 9px;background:#edf4f9;color:#396386;border-radius:5px;font-size:11px;font-weight:600}
.rsi-row{display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid #edf1f5;padding:16px 0}.rsi-row:last-child{border-bottom:0}.rsi-row>div{min-width:0}.rsi-row strong{font-size:14px;font-weight:550;overflow-wrap:anywhere}.rsi-row small{display:block;font-size:11px;color:var(--muted);line-height:1.65;margin-top:5px;overflow-wrap:anywhere}.rsi-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:12px;color:var(--muted)}.rsi-primary-actions{padding:20px 0 8px;border-top:1px solid #e5ebf0;margin-top:20px}.rsi-help{font-size:12px}.rsi-error{padding:13px 16px;background:#fff6eb;border:1px solid #f0dcc1;border-radius:8px;color:#8e5c23;font-size:13px;line-height:1.6;margin:12px 0}.rsi-rail{display:flex;margin:28px 0;gap:4px}.rsi-rail span{flex:1;display:flex;align-items:center;justify-content:center;gap:7px;padding:12px 4px;background:#f3f6f9;color:var(--muted);font-size:11px}.rsi-rail b{display:grid;place-items:center;border:1px solid #cdd6e1;border-radius:50%;height:20px;width:20px;font-weight:500}.rsi-rail .current{background:#e5eff9;color:#266a9f}.rsi-rail .current b{background:#266a9f;color:#fff;border-color:#266a9f}.rsi-rail .past{color:#346a61;background:#eff7f4}.rsi-plan{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 26px;margin:18px 0}.rsi-plan dt{font-size:11px;color:var(--muted);margin-bottom:6px}.rsi-plan dd{font-size:13px;margin:0;white-space:pre-wrap}.rsi-result{background:#f4f8fb;border-radius:10px;padding:1px 18px 16px;margin-top:22px}.rsi-history{padding:8px 0;border-bottom:1px solid #e9edf2}.rsi-history h4{font-size:13px}.rsi-card details{margin-top:20px;font-size:12px}.rsi-card summary{cursor:pointer;color:#607892}
.rsi-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:22px}.rsi-form label{display:flex;flex-direction:column;gap:8px;font-size:12px;color:#54677e;min-width:0}.rsi-form input,.rsi-form select,.rsi-form textarea{width:100%;box-sizing:border-box;border:1px solid #d4dee9;border-radius:7px;padding:10px 11px;background:#fff;color:#233d56;font:inherit;font-size:13px}.rsi-form textarea{resize:vertical;line-height:1.7}.rsi-form input:focus,.rsi-form select:focus,.rsi-form textarea:focus{outline:2px solid #b3d2ef;outline-offset:1px}.rsi-wide{grid-column:1/-1}.rsi-form .rsi-check{flex-direction:row;align-items:flex-start;line-height:1.65}.rsi-check input{width:16px;margin-top:2px;flex-shrink:0}.rsi-evidence-text{white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;font:12px/1.8 ui-monospace,monospace;background:#f5f7fa;border-radius:8px;padding:18px;max-height:520px;overflow:auto}.rsi-chat-note{font-size:12px;line-height:1.7;color:var(--muted);padding:14px;background:#f2f6fb;border-radius:9px;margin:10px}.rsi-chat-message{margin:14px 10px;padding:14px;background:#f6f8fb;border-radius:10px}.rsi-chat-message.user{background:#eaf2fb}.rsi-chat-message strong{font-size:11px;color:var(--muted)}.rsi-chat-message pre{white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;font:13px/1.8 inherit;margin:8px 0 0}.rsi-chat-message .btn{margin:7px 4px 0 0;max-width:100%;overflow:hidden;text-overflow:ellipsis}
@media(max-width:900px){.rsi-workspace{padding:20px 16px}.rsi-capabilities{grid-template-columns:1fr}.rsi-case-grid,.rsi-form,.rsi-plan{grid-template-columns:1fr}.rsi-wide{grid-column:1}.rsi-rail span{flex-direction:column;font-size:10px}.rsi-card{padding:18px}.rsi-row{align-items:flex-start;flex-direction:column}}

.rsi-workspace{--accent:var(--action-text);font-size:14px;line-height:1.65}
.rsi-workspace *{box-sizing:border-box;min-width:0}
.rsi-workspace h1,.rsi-workspace h2,.rsi-workspace h3{overflow-wrap:anywhere}
.rsi-header>.btn,.rsi-card-head>.btn,.rsi-section-head>.btn{flex:none;white-space:nowrap}
.rsi-workspace .btn{min-height:44px;white-space:normal;font-size:14px}
.rsi-workspace .rsi-header>.btn{white-space:nowrap}
.rsi-workspace input:not([type=checkbox]),.rsi-workspace select{min-height:44px}
.rsi-workspace :focus-visible,.rsi-workspace .rsi-form :focus-visible{outline:2px solid var(--action-text);outline-offset:3px}
.rsi-workspace .rsi-tabs button{min-height:44px}
.rsi-workspace .rsi-row small,.rsi-help,.rsi-plan dt{font-size:13px}
.rsi-workspace .rsi-form .rsi-check{display:flex;flex-direction:row;align-items:flex-start;min-height:44px}
.rsi-workspace .rsi-check input{width:18px;height:18px;flex:none;margin:3px 4px 0 0}
@media(max-width:960px){
  .rsi-workspace{padding:20px 4px 72px;font-size:16px}
  .rsi-workspace .rsi-form input,.rsi-workspace .rsi-form select,.rsi-workspace .rsi-form textarea{font-size:16px}
  .rsi-card-head,.rsi-section-head{flex-wrap:wrap;align-items:flex-start}
  .rsi-card-head>div{max-width:100%}
  .rsi-workspace .rsi-tabs{max-width:100%}
}
