.ai-shop { padding-bottom:64px }
.ai-shop header>p, .ai-copy>p, .ai-cart-row p { color:#526176 }
.ai-notice { border:1px solid #edb39d; border-left:4px solid #dc4b22; background:#fff5ef; padding:16px 20px; margin:24px 0; border-radius:8px }
.ai-notice p { margin:4px 0 0 }
.ai-plate { --ink:#143749; --accent:#8fe1cf; background:var(--ink); color:white; padding:22px 24px; display:grid; gap:13px; align-content:start; min-height:214px; box-sizing:border-box }
.ai-plate-research { --ink:#26345a; --accent:#a7caff }
.ai-plate-legal { --ink:#373344; --accent:#e6ce98 }
.ai-plate-clinical { --ink:#174447; --accent:#a1e5d0 }
.ai-plate-engineering { --ink:#293746; --accent:#f2c88d }
.ai-plate-finance { --ink:#273e39; --accent:#c3dc9f }
.ai-area { font-size:.74rem; font-weight:700; letter-spacing:.09em; text-transform:uppercase }
.ai-plate .ai-area { color:var(--accent); border-bottom:1px solid #ffffff44; padding-bottom:10px }
.ai-model strong { display:block; font-size:clamp(25px,2.35vw,38px); letter-spacing:-.045em; line-height:1.1; color:#fff; overflow-wrap:anywhere }
.ai-model small { display:block; font-size:.84rem; margin-top:3px; color:var(--accent) }
.ai-copy { min-width:0; display:flex; flex-direction:column; justify-content:center; padding:clamp(20px,3vw,36px) }
.ai-copy h2 { font-size:clamp(1.18rem,2.2vw,1.65rem); line-height:1.2; margin:0 }
.ai-cart h3 { font-size:1.15rem; margin:0 }
.ai-copy h2 a { color:inherit }
.ai-copy>p { margin:8px 0 14px }
.ai-price { font-size:1.25rem }
.ai-output { min-width:0; margin:4px 0 18px; padding:14px 0; border-block:1px solid #d7dfe8 }
.ai-output h3, .ai-scope h3 { font-size:1rem; margin:0; line-height:1.3 }
.ai-output>p { color:#465768; font-size:.85rem; margin:2px 0 6px }
.ai-output .ai-system-link { display:inline-block; color:#154d80; font-weight:650; margin:10px 0 2px; text-decoration:underline; text-underline-offset:2px }
.ai-output .ai-speed { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:baseline; gap:4px 8px; text-decoration:none; color:#193f62; padding:4px 0; margin-bottom:5px; font-size:.9rem }
.ai-speed b { color:#172d43; white-space:nowrap; font-variant-numeric:tabular-nums }
.ai-speed meter { --fill:#24758b; display:block; grid-column:1/-1; width:100%; height:7px; border:0; border-radius:6px; background:#e5eaf0; appearance:none }
.ai-speed meter::-webkit-meter-bar { height:7px; border:0; border-radius:6px; background:#e5eaf0 }
.ai-speed meter::-webkit-meter-optimum-value { background:var(--fill); border-radius:6px }
.ai-speed meter::-moz-meter-bar { background:var(--fill); border-radius:6px }
.ai-scope { padding:18px clamp(18px,3vw,36px); color:#172133 }
.ai-scope p { margin:7px 0; line-height:1.5 }
#service-includes { scroll-margin-top:6rem }
@media(max-width:620px) {
    .ai-output .ai-speed { grid-template-columns:minmax(0,1fr); gap:1px }
    .ai-speed b { font-size:.83rem }
}
.ai-cap-tags { display:flex; flex-wrap:wrap; gap:6px; list-style:none; padding:0; margin:0 0 15px }
.ai-cap-tags li { margin:0; padding:3px 9px; border-radius:5px; font-size:.8rem; font-weight:600; line-height:1.45; max-width:100%; overflow-wrap:anywhere }
.ai-tag-search { background:#d9f2e7; color:#13533a }
.ai-tag-writing { background:#e9e2f8; color:#493077 }
.ai-tag-analysis { background:#fde7cc; color:#693c13 }
.ai-tag-extract { background:#dceeff; color:#194970 }
.ai-cart-row .ai-cap-tags { margin:6px 0 }
.ai-actions, .ai-select { display:flex; align-items:center; flex-wrap:wrap; gap:12px }
.ai-actions { margin-top:12px }
.ai-select { margin:0 }
.ai-shop .ai-actions .btn, .ai-cart .ai-select .btn { background:#152436; border:1px solid #152436; color:#fff; text-decoration:none; cursor:pointer }
.ai-shop .ai-actions .btn:hover, .ai-cart .ai-select .btn:hover { color:#fff; background:#344b63 }
.ai-shop a.ai-info, .ai-cart a.ai-info { color:#154d80; font-weight:650; text-decoration:underline; text-underline-offset:3px; font-size:.93rem }
.ai-detail { display:grid; grid-template-columns:1fr 1fr; align-items:start; gap:32px; margin:22px 0 }
.ai-detail .ai-plate { border-radius:12px }
.ai-detail h1 { font-size:clamp(27px,4vw,44px); line-height:1.08 }
.ai-dialog { width:min(650px,94vw); max-width:94vw; max-height:88vh; max-height:88dvh; box-sizing:border-box; margin:auto; border:1px solid #c4ced7; border-radius:16px; padding:0; background:white; color:#172133; overflow:auto; overscroll-behavior:contain; box-shadow:0 24px 90px #15243640 }
.ai-dialog::backdrop { background:#101b2cb3 }
.ai-dialog-head { position:sticky; top:0; z-index:1; padding:18px 26px; border-bottom:1px solid #d6dfe6; background:white; display:flex; flex-direction:row-reverse; justify-content:space-between; gap:14px; align-items:center }
.ai-dialog .ai-dialog-head h2 { font-size:clamp(16px,2vw,22px); margin:0; line-height:1.2 }
.ai-dialog [data-ai-close] { font:inherit; font-weight:600; cursor:pointer; background:#fff; color:#23303c; border:1px solid #a6afb7; border-radius:6px; padding:7px 14px }
.ai-shop :focus-visible, .ai-cart :focus-visible { outline:3px solid #1674bb; outline-offset:2px }
.ai-cart, .ai-pdp { margin-block:28px }
.ai-cart-row { display:flex; gap:18px; align-items:center; justify-content:space-between; padding:14px 0; border-bottom:1px solid #dfe5eb }
.ai-cart-row>div>p { margin:3px 0 }
.ai-pdp li { margin:6px 0 }
.ai-catalog { max-width:1120px; margin-inline:auto; color:#20252a }
.ai-catalog>header h1 { margin-bottom:20px }
.ai-purchase-note { padding:16px 20px; margin-bottom:28px; border:1px solid #cbd0d5; border-radius:4px; background:#f6f7f8 }
.ai-purchase-note p { margin:4px 0; max-width:83ch }
.ai-spec-fold { margin-top:8px }
.ai-spec-fold summary { width:fit-content; cursor:pointer; color:#37404a; font-weight:600; font-size:.9rem }
.ai-spec-fold .ai-output { max-width:38rem; margin:10px 0 0; border-bottom:0 }
.ai-spec-fold .ai-system-link, .ai-catalog .ai-info { color:#20252a }
.ai-grid { display:grid; gap:12px }
.ai-card { display:grid; grid-template-columns:minmax(0,29fr) minmax(0,71fr); background:white; border:1px solid #d3d8dd; border-radius:9px; padding:12px; gap:clamp(14px,2.5vw,36px) }
.ai-card .ai-plate { background:#edf0f2; color:#26313b; border-radius:5px; min-width:0; min-height:0; padding:14px 18px; gap:8px; align-content:center }
.ai-card .ai-area { color:#535a61; padding:0; border:0; text-transform:none; letter-spacing:0; font-size:.88rem; font-weight:600 }
.ai-card .ai-model strong { color:inherit; font-size:clamp(17px,1.65vw,24px); line-height:1.15; letter-spacing:-.03em }
.ai-card .ai-model small { color:#545b62; font-size:.8rem }
.ai-card .ai-copy { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:clamp(12px,2vw,30px); padding:8px 12px 8px 0; min-width:0 }
.ai-summary h2 { margin:0; font-size:clamp(19px,1.8vw,25px); line-height:1.25; overflow-wrap:anywhere }
.ai-summary p { margin:8px 0 0; color:#4a5057; font-size:.95rem; line-height:1.55; max-width:59ch }
.ai-card .ai-actions { margin:0; display:grid; justify-items:end; align-content:start; gap:8px; min-width:0 }
.ai-card .ai-price { font-variant-numeric:tabular-nums; font-size:1.14rem }
.ai-addon-price { display:grid; text-align:right; line-height:1.3 }
.ai-addon-price small { font-size:.78rem; color:#535d66 }
.ai-card .ai-actions .ai-info { display:inline-block; border:1px solid #adb6bd; border-radius:5px; padding:6px 11px; color:#26313b; font-weight:600; font-size:.85rem; text-decoration:none }
.ai-card .ai-actions .ai-info:hover { border-color:#26313b; background:#f1f3f4 }
.ai-card .ai-select { flex-direction:column; align-items:flex-end }
.ai-card .ai-select select { max-width:min(100%,160px) }
@media(max-width:850px) {
    .ai-card .ai-copy { grid-template-columns:1fr; gap:10px }
    .ai-card .ai-actions { display:flex; flex-wrap:wrap; justify-content:flex-start; align-items:center; gap:6px 14px }
}
@media(max-width:620px){
    .ai-detail { grid-template-columns:1fr }
    .ai-card { grid-template-columns:minmax(0,39fr) minmax(0,61fr); gap:10px; padding:8px }
    .ai-card .ai-plate { padding:12px 8px }
    .ai-card .ai-copy { padding:5px 2px }
    .ai-addon-price { text-align:left }
    .ai-card .ai-model small { font-size:.75rem; overflow-wrap:anywhere }
    .ai-summary p { font-size:.88rem }
    .ai-purchase-note { padding:12px 14px; margin-bottom:18px }
    .ai-card .ai-actions .btn { max-width:100%; padding:8px 10px; white-space:normal }
    .ai-card .ai-select, .ai-card .ai-select label, .ai-card .ai-select select { max-width:100%; min-width:0 }
    .ai-cart-row { align-items:flex-start; flex-direction:column }
    .ai-copy, .ai-dialog-head { padding:16px }
    .ai-plate { min-height:auto }
}
.ai-summary .ai-card-benchmark .ai-system-link { color:inherit; text-decoration:underline; text-underline-offset:2px }
