/* TSPLUS-P17-DOCS-LUXURY v1.0.0 — compact premium Docs landing */
body[data-tsplus-p17-docs="1"] {
    --p17-ink: #30231c;
    --p17-navy: #18233d;
    --p17-navy-2: #243451;
    --p17-orange: #ed7d35;
    --p17-orange-2: #f5a064;
    --p17-cream: #fff7ef;
    --p17-paper: #fffdfb;
    --p17-muted: #746a64;
    --p17-line: rgba(71, 48, 34, .10);
    background: var(--p17-paper);
}

body[data-tsplus-p17-docs="1"] *,
body[data-tsplus-p17-docs="1"] *::before,
body[data-tsplus-p17-docs="1"] *::after { box-sizing: border-box; }

body[data-tsplus-p17-docs="1"] #docsShell {
    color: var(--p17-ink);
    background: var(--p17-paper);
    font-family: Inter, sans-serif;
}

body[data-tsplus-p17-docs="1"] #docsShell .docs-container {
    width: min(1180px, calc(100% - 40px));
    max-width: none;
    margin-inline: auto;
}

body[data-tsplus-p17-docs="1"] .docs-topbar {
    position: sticky;
    top: 0;
    z-index: 45;
    height: auto;
    color: var(--p17-ink);
    background: rgba(255, 253, 251, .88);
    border-bottom: 1px solid rgba(92, 66, 47, .08);
    box-shadow: 0 10px 34px rgba(55, 37, 25, .045);
    backdrop-filter: blur(18px) saturate(1.18);
    -webkit-backdrop-filter: blur(18px) saturate(1.18);
}

body[data-tsplus-p17-docs="1"] .docs-topbar-inner {
    min-height: 62px;
    height: auto;
    padding-block: 8px;
    grid-template-columns: 145px minmax(260px, 620px) 1fr;
    gap: 22px;
}

body[data-tsplus-p17-docs="1"] .docs-brand { gap: 11px; color: var(--p17-navy); }
body[data-tsplus-p17-docs="1"] .docs-brand-logo { width: 52px; height: 39px; object-fit: contain; }
body[data-tsplus-p17-docs="1"] .docs-brand b { font-size: 14px; letter-spacing: -.02em; }

body[data-tsplus-p17-docs="1"] .docs-search-trigger,
body[data-tsplus-p17-docs="1"] .docs-home-search {
    color: #746a64;
    background: rgba(255,255,255,.94);
    border: 1px solid rgba(77,55,40,.11);
    box-shadow: 0 12px 34px rgba(51,35,24,.07), inset 0 1px 0 #fff;
    transition: border-color .24s ease, box-shadow .24s ease, transform .24s ease;
}

body[data-tsplus-p17-docs="1"] .docs-search-trigger { min-height: 42px; border-radius: 13px; }
body[data-tsplus-p17-docs="1"] .docs-search-trigger:hover,
body[data-tsplus-p17-docs="1"] .docs-home-search:hover {
    border-color: rgba(237,125,53,.42);
    box-shadow: 0 16px 38px rgba(117,63,31,.11), 0 0 0 3px rgba(237,125,53,.07);
}

body[data-tsplus-p17-docs="1"] .docs-search-trigger svg,
body[data-tsplus-p17-docs="1"] .docs-home-search svg { color: var(--p17-orange); }

body[data-tsplus-p17-docs="1"] .docs-search-trigger kbd,
body[data-tsplus-p17-docs="1"] .docs-home-search kbd {
    color: #776a62;
    background: #faf6f2;
    border: 1px solid rgba(76,53,38,.09);
    border-radius: 7px;
    box-shadow: none;
}

body[data-tsplus-p17-docs="1"] .docs-actions { justify-content: flex-end; }
body[data-tsplus-p17-docs="1"] .docs-version,
body[data-tsplus-p17-docs="1"] .docs-language,
body[data-tsplus-p17-docs="1"] .docs-theme {
    border-color: rgba(77,55,40,.10);
    background: rgba(255,255,255,.82);
    box-shadow: 0 8px 24px rgba(48,34,25,.05);
}
body[data-tsplus-p17-docs="1"] .docs-version { color: #71665f; }
body[data-tsplus-p17-docs="1"] .docs-language,
body[data-tsplus-p17-docs="1"] .docs-theme { color: var(--p17-navy); border-radius: 11px; }

body[data-tsplus-p17-docs="1"] .docs-home-hero {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    min-height: 0;
    color: var(--p17-ink);
    background:
        radial-gradient(circle at 92% 12%, rgba(237,125,53,.20), transparent 31%),
        radial-gradient(circle at 10% 88%, rgba(255,255,255,.94), transparent 35%),
        linear-gradient(135deg, #fffaf5 0%, #fff0e2 100%);
    border-bottom: 1px solid rgba(95,64,43,.08);
}

body[data-tsplus-p17-docs="1"] .docs-home-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    opacity: .32;
    background-image:
        linear-gradient(rgba(52,37,28,.06) 1px, transparent 1px),
        linear-gradient(90deg, rgba(52,37,28,.06) 1px, transparent 1px);
    background-size: 56px 56px;
    mask-image: linear-gradient(to right, #000, transparent 80%);
}

body[data-tsplus-p17-docs="1"] .docs-home-grid {
    min-height: 0;
    padding-block: 50px 54px;
    grid-template-columns: minmax(0, .94fr) minmax(410px, 1.06fr);
    align-items: center;
    gap: 48px;
}

body[data-tsplus-p17-docs="1"] .docs-home-copy {
    width: 100%;
    height: auto;
    max-width: 610px;
}

body[data-tsplus-p17-docs="1"] .docs-kicker {
    position: relative;
    min-height: 24px;
    padding: 6px 11px 6px 27px;
    color: #b9551e;
    background: rgba(255,255,255,.72);
    border: 1px solid rgba(237,125,53,.18);
    border-radius: 999px;
    font-size: 10px;
    font-weight: 780;
    letter-spacing: .13em;
    box-shadow: 0 8px 22px rgba(92,48,24,.06);
}

body[data-tsplus-p17-docs="1"] .docs-kicker::before {
    content: "";
    position: absolute;
    left: 11px;
    top: 50%;
    width: 8px;
    height: 8px;
    transform: translateY(-50%);
    border-radius: 50%;
    background: linear-gradient(135deg, var(--p17-orange-2), var(--p17-orange));
    box-shadow: 0 0 0 4px rgba(237,125,53,.12);
}

body[data-tsplus-p17-docs="1"] .docs-home-copy h1 {
    max-width: 660px;
    margin: 18px 0 15px;
    color: var(--p17-navy);
    font-size: clamp(36px, 4.05vw, 48px);
    font-weight: 760;
    line-height: 1.07;
    letter-spacing: -.047em;
    text-wrap: balance;
}

body[data-tsplus-p17-docs="1"] .docs-home-copy > p {
    max-width: 585px;
    margin: 0;
    color: var(--p17-muted);
    font-size: 14.5px;
    line-height: 1.72;
}

body[data-tsplus-p17-docs="1"] .docs-home-search {
    width: min(100%, 580px);
    min-height: 54px;
    margin-top: 24px;
    padding: 10px 13px 10px 17px;
    border-radius: 15px;
    font-size: 14px;
}

body[data-tsplus-p17-docs="1"] .docs-home-search:hover { transform: translateY(-1px); }

body[data-tsplus-p17-docs="1"] .docs-home-stats {
    width: auto;
    height: auto;
    margin-top: 16px;
    gap: 7px;
}

body[data-tsplus-p17-docs="1"] .docs-home-stats span {
    min-height: 27px;
    padding: 6px 10px;
    color: #776a62;
    background: rgba(255,255,255,.72);
    border: 1px solid rgba(77,55,40,.08);
    border-radius: 999px;
    box-shadow: 0 8px 21px rgba(60,39,26,.045);
    font-size: 10.5px;
}
body[data-tsplus-p17-docs="1"] .docs-home-stats b { color: var(--p17-navy); }

body[data-tsplus-p17-docs="1"] .docs-home-visual {
    width: 100%;
    height: auto;
    min-height: 360px;
    align-items: center;
}

body[data-tsplus-p17-docs="1"] .docs-suite-visual {
    position: relative;
    width: 100%;
    height: 360px;
    padding: 24px 21px 18px;
    overflow: hidden;
    color: #fff;
    background:
        radial-gradient(circle at 95% 4%, rgba(245,160,100,.30), transparent 34%),
        linear-gradient(145deg, #18233d, #253653);
    border: 1px solid rgba(255,255,255,.13);
    border-radius: 27px;
    box-shadow: 0 26px 65px rgba(29,31,45,.20), inset 0 1px 0 rgba(255,255,255,.13);
}

body[data-tsplus-p17-docs="1"] .docs-suite-visual::after {
    content: "";
    position: absolute;
    width: 210px;
    height: 210px;
    right: -90px;
    bottom: -100px;
    border: 1px solid rgba(255,255,255,.10);
    border-radius: 50%;
    box-shadow: 0 0 0 38px rgba(255,255,255,.025), 0 0 0 76px rgba(255,255,255,.018);
    pointer-events: none;
}

body[data-tsplus-p17-docs="1"] .docs-suite-visual > img {
    position: relative;
    z-index: 2;
    width: 100%;
    height: calc(100% - 32px);
    margin-top: 16px;
    object-fit: contain;
    filter: drop-shadow(0 18px 26px rgba(4,10,22,.24));
}

body[data-tsplus-p17-docs="1"] .docs-suite-badge {
    z-index: 4;
    top: 16px;
    left: 18px;
    width: auto;
    min-height: 49px;
    padding: 6px 14px 6px 9px;
    color: var(--p17-navy);
    background: rgba(255,255,255,.95);
    border: 1px solid rgba(255,255,255,.74);
    border-radius: 14px;
    box-shadow: 0 14px 34px rgba(8,15,29,.18);
    font-size: 10px;
    letter-spacing: .07em;
}
body[data-tsplus-p17-docs="1"] .docs-suite-badge img { width: 46px; height: 34px; }

body[data-tsplus-p17-docs="1"] .docs-orbit { border-color: rgba(237,125,53,.20); }
body[data-tsplus-p17-docs="1"] .docs-orbit-one { opacity: .72; }
body[data-tsplus-p17-docs="1"] .docs-orbit-two { opacity: .48; }

body[data-tsplus-p17-docs="1"] .docs-products {
    position: relative;
    overflow: hidden;
    padding: 66px 0 78px;
    color: var(--p17-ink);
    background:
        radial-gradient(circle at 92% 12%, rgba(237,125,53,.075), transparent 26%),
        linear-gradient(180deg, #fffdfb, #fffaf6);
}

body[data-tsplus-p17-docs="1"] .docs-section-heading {
    align-items: end;
    grid-template-columns: minmax(0, .82fr) minmax(320px, 1.18fr);
    gap: 40px;
    margin-bottom: 28px;
}

body[data-tsplus-p17-docs="1"] .docs-section-heading > div > span {
    color: #c25e25;
    font-size: 10px;
    font-weight: 780;
    letter-spacing: .14em;
}

body[data-tsplus-p17-docs="1"] .docs-section-heading h2 {
    margin-top: 7px;
    color: var(--p17-navy);
    font-size: clamp(29px, 3vw, 36px);
    font-weight: 750;
    line-height: 1.08;
    letter-spacing: -.035em;
}

body[data-tsplus-p17-docs="1"] .docs-section-heading > p {
    max-width: 560px;
    justify-self: end;
    margin: 0;
    color: var(--p17-muted);
    font-size: 13.5px;
    line-height: 1.68;
}

body[data-tsplus-p17-docs="1"] .docs-product-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

body[data-tsplus-p17-docs="1"] .docs-product-card {
    position: relative;
    min-height: 242px;
    height: auto;
    padding: 21px;
    gap: 15px;
    overflow: hidden;
    color: var(--p17-ink);
    background: rgba(255,255,255,.82);
    border: 1px solid rgba(72,50,35,.09);
    border-radius: 20px;
    box-shadow: 0 15px 40px rgba(48,31,20,.065), inset 0 1px 0 #fff;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    transition: transform .28s ease, box-shadow .28s ease, border-color .28s ease;
}

body[data-tsplus-p17-docs="1"] .docs-product-card::before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 3px;
    background: linear-gradient(180deg, var(--p17-card-accent, #ed7d35), transparent 82%);
    opacity: .9;
}

body[data-tsplus-p17-docs="1"] .docs-product-card::after {
    content: "";
    position: absolute;
    width: 180px;
    height: 180px;
    right: -100px;
    top: -110px;
    border-radius: 50%;
    background: var(--p17-card-glow, rgba(237,125,53,.09));
    transition: transform .32s ease;
    pointer-events: none;
}

body[data-tsplus-p17-docs="1"] .docs-product-card:hover {
    transform: translateY(-4px);
    border-color: rgba(237,125,53,.23);
    box-shadow: 0 24px 54px rgba(49,30,17,.12), inset 0 1px 0 #fff;
}
body[data-tsplus-p17-docs="1"] .docs-product-card:hover::after { transform: scale(1.13); }

body[data-tsplus-p17-docs="1"] .docs-product-1 { --p17-card-accent: #ed7d35; --p17-card-glow: rgba(237,125,53,.11); }
body[data-tsplus-p17-docs="1"] .docs-product-2 { --p17-card-accent: #2aaa7b; --p17-card-glow: rgba(42,170,123,.10); }
body[data-tsplus-p17-docs="1"] .docs-product-3 { --p17-card-accent: #5678c5; --p17-card-glow: rgba(86,120,197,.10); }
body[data-tsplus-p17-docs="1"] .docs-product-4 { --p17-card-accent: #9a65b7; --p17-card-glow: rgba(154,101,183,.10); }

body[data-tsplus-p17-docs="1"] .docs-product-logo {
    position: relative;
    z-index: 1;
    width: 100%;
    height: 72px;
    padding: 16px 18px;
    border: 1px solid rgba(72,50,35,.055);
    border-radius: 15px;
}
body[data-tsplus-p17-docs="1"] .docs-product-logo img { width: auto; max-width: 72%; max-height: 41px; object-fit: contain; }

body[data-tsplus-p17-docs="1"] .docs-product-copy {
    position: relative;
    z-index: 1;
    width: 100%;
    height: auto;
}
body[data-tsplus-p17-docs="1"] .docs-product-copy p {
    margin: 0;
    color: var(--p17-muted);
    font-size: 12.5px;
    line-height: 1.62;
}

body[data-tsplus-p17-docs="1"] .docs-product-card footer {
    position: relative;
    z-index: 1;
    margin-top: auto;
    padding-top: 11px;
    border-top-color: rgba(76,53,38,.08);
}
body[data-tsplus-p17-docs="1"] .docs-product-card footer b { color: var(--p17-navy); font-size: 10.5px; }
body[data-tsplus-p17-docs="1"] .docs-product-card footer span {
    display: grid;
    place-items: center;
    width: 30px;
    height: 30px;
    color: #fff;
    background: var(--p17-card-accent, var(--p17-orange));
    border-radius: 50%;
    box-shadow: 0 8px 18px color-mix(in srgb, var(--p17-card-accent, var(--p17-orange)) 28%, transparent);
}

body[data-tsplus-p17-docs="1"] .docs-search-dialog {
    border: 1px solid rgba(71,49,34,.10);
    border-radius: 19px;
    box-shadow: 0 28px 80px rgba(25,24,31,.22);
}
body[data-tsplus-p17-docs="1"] .docs-search-panel > header { background: #fffaf6; }

body[data-tsplus-p17-docs="1"] #docsShell[data-theme="dark"] {
    --p17-ink: #f4eee9;
    --p17-navy: #fff7ef;
    --p17-muted: #b7afa9;
    --p17-paper: #0f1522;
    color: #f4eee9;
    background: #0f1522;
}
body[data-tsplus-p17-docs="1"] #docsShell[data-theme="dark"] .docs-topbar {
    color: #f4eee9;
    background: rgba(15,21,34,.88);
    border-bottom-color: rgba(255,255,255,.08);
}
body[data-tsplus-p17-docs="1"] #docsShell[data-theme="dark"] .docs-home-hero {
    color: #f4eee9;
    background: radial-gradient(circle at 88% 8%, rgba(237,125,53,.20), transparent 32%), linear-gradient(145deg, #101828, #17233a);
}
body[data-tsplus-p17-docs="1"] #docsShell[data-theme="dark"] .docs-kicker,
body[data-tsplus-p17-docs="1"] #docsShell[data-theme="dark"] .docs-home-stats span,
body[data-tsplus-p17-docs="1"] #docsShell[data-theme="dark"] .docs-search-trigger,
body[data-tsplus-p17-docs="1"] #docsShell[data-theme="dark"] .docs-home-search,
body[data-tsplus-p17-docs="1"] #docsShell[data-theme="dark"] .docs-version,
body[data-tsplus-p17-docs="1"] #docsShell[data-theme="dark"] .docs-language,
body[data-tsplus-p17-docs="1"] #docsShell[data-theme="dark"] .docs-theme {
    color: #d7d0ca;
    background: rgba(255,255,255,.07);
    border-color: rgba(255,255,255,.10);
}
body[data-tsplus-p17-docs="1"] #docsShell[data-theme="dark"] .docs-home-copy h1,
body[data-tsplus-p17-docs="1"] #docsShell[data-theme="dark"] .docs-home-stats b,
body[data-tsplus-p17-docs="1"] #docsShell[data-theme="dark"] .docs-section-heading h2,
body[data-tsplus-p17-docs="1"] #docsShell[data-theme="dark"] .docs-product-card footer b { color: #fff7ef; }
body[data-tsplus-p17-docs="1"] #docsShell[data-theme="dark"] .docs-products {
    color: #f4eee9;
    background: radial-gradient(circle at 92% 10%, rgba(237,125,53,.10), transparent 28%), #0f1522;
}
body[data-tsplus-p17-docs="1"] #docsShell[data-theme="dark"] .docs-product-card {
    color: #f4eee9;
    background: rgba(255,255,255,.045);
    border-color: rgba(255,255,255,.085);
    box-shadow: 0 18px 46px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.06);
}
body[data-tsplus-p17-docs="1"] #docsShell[data-theme="dark"] .docs-product-logo { border-color: rgba(255,255,255,.06); }
body[data-tsplus-p17-docs="1"] #docsShell[data-theme="dark"] .docs-product-card footer { border-top-color: rgba(255,255,255,.08); }

@media (max-width: 1040px) {
    body[data-tsplus-p17-docs="1"] .docs-topbar-inner { grid-template-columns: 130px minmax(240px, 1fr) auto; gap: 15px; }
    body[data-tsplus-p17-docs="1"] .docs-home-grid { grid-template-columns: minmax(0, .9fr) minmax(380px, 1.1fr); gap: 30px; }
    body[data-tsplus-p17-docs="1"] .docs-suite-visual { height: 335px; }
}

@media (max-width: 860px) {
    body[data-tsplus-p17-docs="1"] .docs-home-grid { grid-template-columns: minmax(0, 1fr); gap: 31px; padding-block: 42px 50px; }
    body[data-tsplus-p17-docs="1"] .docs-home-copy { max-width: 680px; }
    body[data-tsplus-p17-docs="1"] .docs-home-visual { max-width: 640px; min-height: 0; }
    body[data-tsplus-p17-docs="1"] .docs-suite-visual { height: 350px; }
    body[data-tsplus-p17-docs="1"] .docs-section-heading { grid-template-columns: minmax(0, 1fr); gap: 13px; }
    body[data-tsplus-p17-docs="1"] .docs-section-heading > p { justify-self: start; }
}

@media (max-width: 700px) {
    body[data-tsplus-p17-docs="1"] #docsShell .docs-container { width: min(100% - 28px, 1180px); }
    body[data-tsplus-p17-docs="1"] .docs-topbar-inner { grid-template-columns: 1fr auto; min-height: 58px; }
    body[data-tsplus-p17-docs="1"] .docs-topbar .docs-search-trigger { display: none; }
    body[data-tsplus-p17-docs="1"] .docs-actions { width: auto; }
    body[data-tsplus-p17-docs="1"] .docs-version { display: none; }
    body[data-tsplus-p17-docs="1"] .docs-home-grid { padding-block: 31px 42px; }
    body[data-tsplus-p17-docs="1"] .docs-home-copy h1 { margin-top: 15px; font-size: clamp(31px, 9.3vw, 38px); line-height: 1.09; }
    body[data-tsplus-p17-docs="1"] .docs-home-copy > p { font-size: 13.5px; }
    body[data-tsplus-p17-docs="1"] .docs-home-search { margin-top: 19px; min-height: 51px; }
    body[data-tsplus-p17-docs="1"] .docs-home-stats { flex-wrap: wrap; }
    body[data-tsplus-p17-docs="1"] .docs-suite-visual { height: 276px; padding: 18px 14px 11px; border-radius: 22px; }
    body[data-tsplus-p17-docs="1"] .docs-suite-badge { top: 12px; left: 12px; min-height: 43px; padding-right: 10px; font-size: 8.5px; }
    body[data-tsplus-p17-docs="1"] .docs-suite-badge img { width: 40px; height: 30px; }
    body[data-tsplus-p17-docs="1"] .docs-products { padding: 49px 0 59px; }
    body[data-tsplus-p17-docs="1"] .docs-section-heading { margin-bottom: 21px; }
    body[data-tsplus-p17-docs="1"] .docs-section-heading h2 { font-size: 29px; }
    body[data-tsplus-p17-docs="1"] .docs-product-grid { grid-template-columns: minmax(0, 1fr); gap: 11px; }
    body[data-tsplus-p17-docs="1"] .docs-product-card { min-height: 218px; padding: 18px; border-radius: 18px; }
    body[data-tsplus-p17-docs="1"] .docs-product-logo { height: 67px; padding: 14px 15px; }
    body[data-tsplus-p17-docs="1"] .docs-product-logo img { max-width: 84%; max-height: 38px; }
}

@media (prefers-reduced-motion: reduce) {
    body[data-tsplus-p17-docs="1"] *,
    body[data-tsplus-p17-docs="1"] *::before,
    body[data-tsplus-p17-docs="1"] *::after {
        scroll-behavior: auto !important;
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: .01ms !important;
    }
}

