/* IDS · Eight Origin Story character primer, responsive + accessible */
.ids-cp{color:#e9edf2;margin:22px 0 34px;padding:clamp(17px,3vw,32px);border:1px solid #635261;border-top:5px solid #c94f64;border-radius:10px;background:linear-gradient(135deg,#1c1723,#111923 58%,#0b111c);scroll-margin-top:110px}
.ids-cp *{box-sizing:border-box}
.ids-cp-title h2{color:#fff;font-size:clamp(1.75rem,3vw,2.45rem);line-height:1.2;margin:5px 0 13px}
.ids-cp-title>p{max-width:85ch;line-height:1.7}
.ids-cp-eyebrow{font-weight:850;letter-spacing:.13em;font-size:.78rem;color:#ef9fac!important}
.ids-cp-important{padding:16px 18px;border-left:4px solid #d77286;background:#27202c;color:#f2e4e8!important;margin:19px 0 22px}
.ids-cp strong{color:#fff}
.ids-cp h3{color:#fff;font-size:1.22rem;line-height:1.35;margin:0 0 12px}
.ids-cp p{line-height:1.7}
.ids-cp-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:15px;margin:22px 0}
.ids-cp-feature{border:1px solid #546071;background:#151f2c;padding:19px 21px;border-radius:7px;min-width:0}
.ids-cp-feature>p{font-size:.94rem}
.ids-cp-controls{display:grid;grid-template-columns:1fr;gap:11px;margin:18px 0}
.ids-cp-controls label{display:flex;flex-direction:column;gap:7px;font-weight:800;color:#fff;font-size:.91rem}
.ids-cp-controls select{width:100%;padding:12px 12px;min-height:47px;border:1px solid #93a1af;border-radius:5px;background:#f2f4f8;color:#101a24;font-size:.94rem;font-weight:650;appearance:auto}
.ids-cp-controls select:focus-visible{outline:3px solid #ffb4c0;outline-offset:3px}
.ids-cp-status{margin:12px 0;font-size:.91rem;color:#ffbbca!important;font-weight:900;padding:9px 13px;background:#322330;border-radius:4px}
.ids-cp-visual{display:flex;min-height:170px;flex-direction:column;justify-content:center;align-items:center;gap:10px;background:repeating-linear-gradient(45deg,#172536,#172536 13px,#1d2c3e 14px,#1d2c3e 15px);border:1px solid #465c76;border-radius:9px;text-align:center;padding:20px;position:relative;overflow:hidden}
.ids-cp-visual:before{content:"";position:absolute;inset:12px auto auto 50%;transform:translateX(-50%);width:150px;height:150px;border:1px solid #8b5469;border-radius:50%;box-shadow:0 0 45px #d44b6440}
.ids-cp-visual span{position:relative;z-index:1}
.ids-cp-weapon{font-size:clamp(1.08rem,2vw,1.42rem);font-weight:900;color:#fff;text-shadow:0 0 16px #e4637a}
.ids-cp-archetype{font-weight:800;font-size:.84rem;text-transform:uppercase;letter-spacing:.1em;background:#713046;color:#fff;padding:6px 16px;border-radius:5px}
.ids-cp-lens{font-size:.76rem;letter-spacing:.08em;color:#d0e4f0;font-weight:800}
.ids-cp-pulse{width:70%;height:2px;background:linear-gradient(90deg,transparent,#e36d86,transparent)}
.ids-cp-sub{margin:13px 0 0}
.ids-cp-caution{font-size:.81rem!important;color:#bed0df!important}
.ids-cp-rotation{border-top:3px solid #bd6077}
.ids-cp-rotation h3{font-size:1.35rem}
.ids-cp-note{border-left:3px solid #8ea7bc;padding:12px 13px;background:#1c2c3b;color:#d4e3f0;font-size:.82rem!important}
.ids-cp-four{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.ids-cp-four article{min-width:0;padding:21px 22px;border:1px solid #485a6d;background:#131d2a;border-radius:7px;border-top:3px solid #a95a70}
.ids-cp-four article h3{font-size:1.17rem}
.ids-cp-four article p{font-size:.92rem}
.ids-cp a{color:#ffc1cf!important;text-underline-offset:3px}
.ids-cp a:hover{color:#fff!important}
.ids-cp-end{margin-top:14px;padding:22px 24px;border:1px solid #52657a;background:#182635;border-radius:8px}
.ids-cp-end p{font-size:.95rem}
.ids-cp-sources{margin-top:16px;padding:15px;background:#111922;border:1px solid #43576b;border-radius:6px}
.ids-cp-sources summary{font-weight:850;color:#f6c4cf;cursor:pointer}
.ids-cp-sources p{font-size:.86rem}
@media(max-width:850px){.ids-cp-grid,.ids-cp-four{grid-template-columns:1fr}.ids-cp{margin-left:0;margin-right:0}}
@media(max-width:500px){.ids-cp{padding:14px}.ids-cp-feature,.ids-cp-four article,.ids-cp-end{padding:16px}}

/* More actionable, 7.9-era class guide: visible five-stage priorities, gear tiers and quest rescue */
.ids-cp-five{margin:14px 0 17px;padding:15px 18px 15px 45px;background:#242b37;border:1px solid #748399;border-radius:6px;counter-reset:crew}
.ids-cp-five li{margin:0 0 12px;padding-left:3px;line-height:1.58;font-weight:700;color:#f3f6fb}
.ids-cp-five li:last-child{margin-bottom:0}
.ids-cp-practical,.ids-cp-navigator{padding:20px 22px;border:1px solid #526576;background:#15202d;border-radius:8px;margin-top:16px;scroll-margin-top:110px}
.ids-cp-practical h3,.ids-cp-navigator h3{font-size:1.3rem;color:#fff}
.ids-cp-tiers{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px;margin:16px 0}
.ids-cp-tiers article{background:#233042;border:1px solid #65768a;border-top:3px solid #db8194;padding:15px;min-width:0;border-radius:5px}
.ids-cp-tiers strong{display:block;font-weight:900;margin-bottom:8px;color:#ffccda}
.ids-cp-tiers p{font-size:.84rem;margin:0}
.ids-cp-mission-search{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end;margin:14px 0 8px}
.ids-cp-mission-search label{grid-column:1/-1;color:#fff;font-weight:800}
.ids-cp-mission-search input{padding:13px;color:#162031;background:#fff;min-height:46px;border:2px solid #b9c4d1;border-radius:5px}
.ids-cp-mission-search button{padding:12px 16px;min-height:46px;border:1px solid #ffc3cf;border-radius:5px;background:#812e4b;color:#fff;font-weight:900;cursor:pointer}
.ids-cp-mission-search button:hover{background:#ab3b5c}
.ids-cp-practical ol{padding-left:23px}
.ids-cp-practical li{line-height:1.65;margin:0 0 10px}
.ids-cp-patch{margin:17px 0 2px;padding:13px 16px;border-left:4px solid #d78d9d;background:#2a2733;font-size:.87rem}
@media(max-width:540px){.ids-cp-mission-search{grid-template-columns:1fr}.ids-cp-mission-search label{grid-column:auto}.ids-cp-practical,.ids-cp-navigator{padding:14px}}
