.companion-case{max-width:880px;margin:auto;color:#293c48;container-type:inline-size;padding-bottom:24px}.companion-case *{box-sizing:border-box}.cc-intro{padding:24px 0 28px}.cc-intro>small{font-size:10px;color:#788e97;letter-spacing:1px}.cc-intro h1{font-size:32px;line-height:1.3;letter-spacing:-1px;margin:12px 0}.companion-case p{font-size:12px;line-height:1.8;color:#687883;margin:8px 0}.cc-role{display:flex;gap:14px;margin-top:22px;font-size:11px;color:#73818a}.cc-role b{white-space:nowrap;color:#425563}.cc-section{border-top:1px solid #dfe6ea;padding:30px 0 34px}.cc-heading{display:flex;gap:15px;align-items:start;margin-bottom:22px}.cc-heading>span{font-size:24px;font-weight:300;color:#9eafb8;line-height:1.3}.cc-heading small{display:block;color:#84929a;font-size:10px;margin-bottom:6px}.cc-heading h2{font-size:19px;line-height:1.5;margin:0;font-weight:600}.cc-context{display:grid;grid-template-columns:1fr 1.35fr;gap:32px}.cc-scenarios{display:flex;gap:8px;margin-top:16px}.cc-scenarios span{background:#eef4f5;border-radius:6px;padding:7px 14px;font-size:11px}.cc-shift{border-left:2px solid #bed1d9;padding-left:20px}.cc-shift>div+div{margin-top:16px}.cc-shift small{display:block;font-size:10px;color:#8a979e;margin-bottom:4px}.cc-shift strong{font-size:12px;font-weight:500}.cc-journey{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));list-style:none;padding:0;margin:0;gap:16px}.cc-journey li{min-width:0}.cc-step{min-height:95px;border-top:2px solid #c0d5dd;padding-top:12px}.cc-step small{font-size:10px;color:#7e939d}.companion-case h3{font-size:14px;line-height:1.5;margin:5px 0}.companion-case figure{margin:0}.cc-journey figure{padding:14px 8px;background:#f4f7f7;border-radius:8px;text-align:center}.cc-journey img{display:block;width:100%;height:250px;object-fit:contain}.companion-case figcaption{font-size:10px;color:#8b969c;line-height:1.6;margin-top:10px;text-align:center}.cc-decision{display:grid;grid-template-columns:1fr 1.25fr;gap:28px;align-items:center;padding:22px 0}.cc-decision+.cc-decision{border-top:1px solid #edf0f2}.cc-options,.cc-reward{display:flex;align-items:center;justify-content:center;gap:10px;padding:20px 8px;background:#f3f7f8;border-radius:8px}.cc-options span,.cc-reward span{font-size:11px;padding:9px 12px;background:white;border:1px solid #e1e9ed;border-radius:6px}.cc-reward b{font-weight:400;color:#8ba0ab}.cc-states{display:flex;gap:7px;align-items:center}.cc-states figure{flex:1;min-width:0}.cc-states img{width:100%;height:110px;object-fit:contain}.cc-states>span{font-size:13px;color:#95a8b0}.cc-delivery{display:grid;grid-template-columns:1fr 220px;gap:40px;align-items:center}.cc-delivery ul{list-style:none;padding:0;margin:0}.cc-delivery li{padding:14px 0;border-bottom:1px solid #e8edef}.cc-delivery strong{display:block;font-size:15px;margin-bottom:4px}.cc-delivery li span{font-size:11px;color:#7b8992}.cc-delivery video{display:block;height:270px;width:100%;object-fit:contain;background:#f2f6f7;border-radius:8px}.cc-next{padding-top:14px;font-size:11px!important}@container(max-width:580px){.cc-intro h1{font-size:26px}.cc-context,.cc-decision{grid-template-columns:1fr;gap:15px}.cc-heading h2{font-size:17px}.cc-journey{gap:8px}.cc-journey img{height:190px}.cc-step p{font-size:11px}.cc-delivery{grid-template-columns:1fr 160px;gap:20px}.cc-role{flex-direction:column;gap:5px}}@container(max-width:380px){.cc-journey{grid-template-columns:1fr}.cc-journey li{display:grid;grid-template-columns:1fr 1fr;gap:12px}.cc-step{min-height:0}.cc-delivery{grid-template-columns:1fr}.cc-delivery video{height:240px}}

/* Companion case: rationale before implementation; inherits existing Finder theme. */
.cc-scenario-table{margin:22px 0;border-top:1px solid #dfe6ea;font-size:12px;line-height:1.7}.cc-scenario-table>[role=row]{display:grid;grid-template-columns:60px minmax(0,1fr) minmax(0,1.2fr);gap:16px;padding:14px 0;border-bottom:1px solid #dfe6ea}.cc-scenario-table b{font-size:11px;color:#687883;font-weight:500}.cc-scenario-table span{color:#687883}.cc-choice{border-left:2px solid #bed1d9;padding:2px 0 2px 18px;margin-top:24px}.cc-rule-heading{margin-top:32px;padding-top:24px;border-top:1px solid #dfe6ea}.cc-intro h1,.cc-heading h2{overflow-wrap:anywhere;min-width:0}@container(max-width:380px){.cc-scenario-table>[role=row]{grid-template-columns:38px minmax(0,1fr) minmax(0,1fr);gap:8px;font-size:11px}.cc-options,.cc-reward{flex-wrap:wrap}.cc-heading{gap:10px}}
