.crsp-page{--ink:#0b2034;--muted:#5d6f7b;--line:#dbe5e0;--soft:#f5f8f6;--mint:#75d5c1;--mint-dark:#247d70;--cream:#fffdf7;color:var(--ink)}
.crsp-page *{box-sizing:border-box}.crsp-page button,.crsp-page input,.crsp-page select{font:inherit}.crsp-page button{cursor:pointer}.crsp-hero{padding:48px 0 58px;background:linear-gradient(135deg,#f4faf7,#fffaf0)}
.crsp-hero-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);gap:48px;align-items:center}.crsp-hero h1{font-size:clamp(2.5rem,5vw,4.6rem);line-height:.98;letter-spacing:-.05em;margin:.18em 0}.crsp-kicker{font-size:1.35rem;line-height:1.35;font-weight:750;max-width:660px;margin:.7rem 0}.crsp-lead{font-size:1.08rem;line-height:1.7;color:var(--muted);max-width:690px}.crsp-actions,.crsp-actions-row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.crsp-actions button,.crsp-actions-row button,.crsp-top-actions button,.crsp-card button,.crsp-empty button,.crsp-requirement-toolbar button{border:1px solid #bfd0c8;background:#fff;color:var(--ink);padding:11px 15px;border-radius:9px;font-weight:750}.crsp-actions button:hover,.crsp-card button:hover,.crsp-actions-row button:hover{border-color:var(--mint-dark);background:#f4fbf8}.crsp-trust{font-size:.92rem;color:var(--muted);margin-top:16px}
.crsp-visual{border:1px solid var(--line);background:rgba(255,255,255,.82);border-radius:24px;padding:32px;box-shadow:0 22px 55px rgba(11,32,52,.09)}.crsp-flow{display:grid;grid-template-columns:1fr auto 1.2fr;align-items:center;gap:18px}.crsp-inputs{display:grid;gap:10px}.crsp-inputs span,.crsp-stack{border:1px solid var(--line);background:#fff;border-radius:12px;padding:14px;font-weight:750}.crsp-inputs span:nth-child(2){transform:translateX(12px)}.crsp-stack{display:grid;gap:10px;padding:24px;background:var(--ink);color:#fff}.crsp-stack span{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--mint)}.crsp-stack strong{font-size:1.2rem}.crsp-stack i{font-style:normal;font-weight:500;color:#c6d2d8;font-size:.8rem}.crsp-arrow{font-size:2rem;color:var(--mint-dark)}.crsp-visual>p{font-size:.84rem;color:var(--muted);margin:22px 0 0;text-align:center}
.crsp-app{padding:54px 0 80px;background:#fff}.crsp-appbar{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:15px 18px;background:var(--ink);color:#fff;border-radius:14px 14px 0 0}.crsp-appbar>div:first-child{display:grid;gap:2px}.crsp-appbar span{font-size:.78rem;color:#b8c9d1}.crsp-top-actions{display:flex;gap:8px}.crsp-top-actions button{background:transparent;color:#fff;border-color:#486074;padding:8px 11px}.crsp-tabs{display:grid;grid-template-columns:repeat(5,1fr);border:1px solid var(--line);border-top:0;background:#fff}.crsp-tabs button{border:0;border-bottom:3px solid transparent;background:#fff;padding:15px 8px;color:var(--muted);font-weight:750}.crsp-tabs button[aria-selected=true]{color:var(--ink);border-color:var(--mint-dark);background:#f4faf7}.crsp-panel{padding:34px;border:1px solid var(--line);border-top:0;border-radius:0 0 14px 14px;min-height:420px}.crsp-panel[hidden]{display:none}
.crsp-head,.crsp-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.crsp-head{margin-bottom:28px}.crsp-head h2,.crsp-card h2,.crsp-card h3{margin-top:0}.crsp-head p,.crsp-card p,.crsp-guide p{color:var(--muted);line-height:1.7}.crsp-card{border:1px solid var(--line);border-radius:14px;padding:22px;margin:18px 0;background:#fff}.crsp-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.crsp-field,.crsp-inline-form label,.crsp-req-controls label,.crsp-category-controls label{display:grid;gap:7px}.crsp-field>span,.crsp-inline-form label>span,.crsp-req-controls label>span,.crsp-category-controls label>span{font-size:.82rem;color:#4d616d;font-weight:650}.crsp-field input,.crsp-field select,.crsp-inline-form input,.crsp-inline-form select,.crsp-req-controls select,.crsp-category-controls input,.crsp-category-controls select,.crsp-requirement-toolbar input{width:100%;border:1px solid #bdcbc5;border-radius:8px;background:#fff;color:var(--ink);padding:10px 11px;font-weight:500}.crsp-page input:focus,.crsp-page select:focus,.crsp-page button:focus-visible,.crsp-page summary:focus-visible,.crsp-page a:focus-visible{outline:3px solid rgba(36,125,112,.35);outline-offset:2px}.crsp-check-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.crsp-check-grid label{display:flex;align-items:center;gap:8px;padding:11px;border:1px solid var(--line);border-radius:9px}.crsp-muted{color:var(--muted)}.crsp-inline-form{display:grid;grid-template-columns:2fr 1.5fr 1fr auto;align-items:end;gap:12px;margin-top:18px}.crsp-table-wrap{overflow-x:auto}.crsp-page table{border-collapse:collapse;width:100%;font-size:.92rem}.crsp-page th,.crsp-page td{text-align:left;padding:11px;border-bottom:1px solid var(--line)}.crsp-page th{font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.crsp-link{padding:4px 7px!important;border:0!important;color:#9a3131!important;background:transparent!important}.crsp-import{background:#f7fbf9}.crsp-import-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:18px 0}.crsp-import-list label{display:flex;gap:10px;border:1px solid var(--line);background:#fff;padding:12px;border-radius:9px}.crsp-import-list span{display:grid}.crsp-import-list small{color:var(--muted);margin-top:3px}
.crsp-requirement-toolbar{display:flex;gap:12px;align-items:center;margin-bottom:18px}.crsp-requirement-toolbar label{flex:1}.crsp-requirement-toolbar strong{white-space:nowrap}.crsp-requirement-group{border:1px solid var(--line);border-radius:12px;margin:12px 0;overflow:hidden}.crsp-requirement-group>summary{padding:15px 18px;font-weight:800;background:var(--soft);cursor:pointer}.crsp-requirement-group>summary span{float:right;color:var(--muted);font-weight:500;font-size:.82rem}.crsp-requirement{display:grid;grid-template-columns:1.4fr 1fr;gap:18px;align-items:center;padding:15px 18px;border-top:1px solid var(--line)}.crsp-requirement.is-selected{background:#fbfefd}.crsp-req-main{display:flex;gap:12px;align-items:flex-start}.crsp-req-main input{margin-top:4px}.crsp-req-main span{display:grid}.crsp-req-main small{color:var(--muted);margin-top:4px}.crsp-req-controls{display:grid;grid-template-columns:1fr 1.25fr;gap:10px}
.crsp-metrics{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin:20px 0}.crsp-metric{display:grid;align-content:start;gap:6px;padding:16px;background:var(--soft);border:1px solid var(--line);border-radius:12px;min-height:100px}.crsp-metric span{font-size:.78rem;color:var(--muted)}.crsp-metric strong{font-size:1.55rem}.crsp-metric small{color:var(--muted)}.crsp-architecture-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.crsp-architecture-grid button{display:grid;text-align:left;gap:5px;font-weight:500}.crsp-architecture-grid button strong{font-size:1rem}.crsp-architecture-grid button span{color:var(--muted);line-height:1.45}.crsp-architecture-grid button.is-active{border:2px solid var(--mint-dark);background:#f2fbf8}.crsp-category-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.crsp-category{border:1px solid var(--line);border-radius:12px;padding:18px}.crsp-category h3{margin:8px 0 0}.crsp-pill,.crsp-status{display:inline-block;border-radius:999px;background:#e9f4f0;color:#27675f;padding:4px 8px;font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;font-weight:850}.crsp-essential{background:#e7f3ef;color:#145e52}.crsp-recommended{background:#eef2fb;color:#375682}.crsp-add_later{background:#f4f1ea;color:#725e30}.crsp-status{background:#f2f4f5;color:#50616a}.crsp-reason{font-size:.88rem;border-left:3px solid var(--mint);padding-left:11px}.crsp-category-controls{display:grid;grid-template-columns:1fr 1.25fr;gap:10px;margin-top:14px}.crsp-two-col{display:grid;grid-template-columns:1fr 1fr;gap:18px}.crsp-signal-list{list-style:none;padding:0;margin:0}.crsp-signal-list li{display:flex;justify-content:space-between;gap:10px;border-bottom:1px solid var(--line);padding:10px 0}.crsp-signal-list span{font-size:.75rem;color:var(--muted)}.crsp-callout{border-left:3px solid var(--mint);padding:6px 0 6px 13px;margin:12px 0}.crsp-callout p{margin:.2rem 0}.crsp-empty{text-align:center;padding:70px 20px;background:var(--soft);border:1px dashed #b9c9c2;border-radius:14px}.crsp-empty p{color:var(--muted)}
.crsp-research-list{display:grid;gap:16px;margin-top:20px}.crsp-research-card{border:1px solid var(--line);border-radius:14px;padding:22px}.crsp-research-card>p{color:var(--muted)}.crsp-research-card details{border-top:1px solid var(--line);margin-top:18px;padding-top:14px}.crsp-research-card summary{font-weight:800;cursor:pointer}.crsp-checklist{columns:2;gap:36px}.crsp-checklist li{break-inside:avoid;margin:8px 0;line-height:1.45}.crsp-notice{background:#fff7e6;border:1px solid #ead59e;border-radius:9px;padding:12px 14px;color:#5a4b27!important}.crsp-actions-row{margin:18px 0}
.crsp-guide{max-width:none}.crsp-guide>h2{font-size:2rem}.crsp-guide-lead{font-size:1.12rem;max-width:800px}.crsp-jump{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0 30px}.crsp-jump a{border:1px solid var(--line);border-radius:999px;padding:7px 12px;text-decoration:none}.crsp-guide article{max-width:860px}.crsp-guide article h3{margin-top:34px;font-size:1.35rem}.crsp-faq details{border-top:1px solid var(--line);padding:14px 0}.crsp-faq summary{font-weight:800;cursor:pointer}.crsp-important{max-width:860px;margin-top:34px;background:#fff8e8;border-left:4px solid #d4a431;padding:20px}.crsp-related{margin-top:44px}.crsp-related-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.crsp-related-grid>a,.crsp-related-grid>div{display:block;border:1px solid var(--line);border-radius:12px;padding:18px;text-decoration:none;color:var(--ink)}.crsp-related-grid p{font-size:.9rem}
@media(max-width:980px){.crsp-hero-grid{grid-template-columns:1fr}.crsp-visual{max-width:700px}.crsp-grid{grid-template-columns:repeat(2,1fr)}.crsp-metrics{grid-template-columns:repeat(3,1fr)}.crsp-check-grid,.crsp-related-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.crsp-hero{padding:32px 0 40px}.crsp-hero-grid{gap:28px}.crsp-visual{padding:20px}.crsp-flow{grid-template-columns:1fr}.crsp-arrow{transform:rotate(90deg);justify-self:center}.crsp-inputs span:nth-child(2){transform:none}.crsp-app{padding-top:30px}.crsp-appbar,.crsp-head,.crsp-card-head{align-items:stretch;flex-direction:column}.crsp-top-actions{width:100%}.crsp-tabs{display:flex;overflow-x:auto}.crsp-tabs button{min-width:132px}.crsp-panel{padding:20px 14px}.crsp-grid,.crsp-check-grid,.crsp-inline-form,.crsp-requirement,.crsp-req-controls,.crsp-metrics,.crsp-architecture-grid,.crsp-category-grid,.crsp-category-controls,.crsp-two-col,.crsp-import-list,.crsp-related-grid{grid-template-columns:1fr}.crsp-requirement-toolbar{align-items:stretch;flex-direction:column}.crsp-checklist{columns:1}.crsp-metric{min-height:auto}.crsp-actions-row button{width:100%}}
@media print{header,footer,.crsp-hero,.crsp-appbar,.crsp-tabs,.crsp-top-actions,.crsp-actions-row,.crsp-category-controls,.crsp-architecture,.crsp-guide,.crsp-head button{display:none!important}.crsp-app{padding:0}.crsp-panel{display:none!important;border:0;padding:0}.crsp-panel#crsp-panel-plan,.crsp-panel#crsp-panel-research{display:block!important;min-height:0}.crsp-category,.crsp-card,.crsp-research-card{break-inside:avoid;box-shadow:none}.crsp-research-card details{display:block}.crsp-research-card details>*{display:block}.crsp-page{color:#000}.crsp-container{max-width:none}}
