@charset "UTF-8";

:root {
    --bg: #f5efe6;
    --bg-soft: #fffaf3;
    --ink: #17202f;
    --ink-soft: #536074;
    --line: rgba(23, 32, 47, 0.1);
    --card: rgba(255, 255, 255, 0.82);
    --brand: #ff7a18;
    --brand-dark: #d95f06;
    --teal: #0f766e;
    --gold: #f3d17a;
    --shadow: 0 18px 50px rgba(23, 32, 47, 0.08);
    --radius-xl: 28px;
    --radius-lg: 22px;
    --radius-md: 16px;
    --container: 1180px;
    --cat-shell: #ffc98a;
    --cat-shell-soft: #ffe7c7;
    --cat-mark-bg: #ffffff;
    --cat-mark-bg-soft: #f4fbfd;
    --cat-band-start: #9bf2ff;
    --cat-band-end: #39d2e8;
    --cat-band-shadow: rgba(57, 210, 232, 0.34);
    --cat-core-start: #ffc07a;
    --cat-core-end: #ff7a18;
    --cat-stroke: rgba(18, 40, 56, 0.12);
}

* {
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

body {
    margin: 0;
    color: var(--ink);
    font-family: "Avenir Next", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
    background:
        radial-gradient(circle at top left, rgba(255, 122, 24, 0.16), transparent 24rem),
        radial-gradient(circle at top right, rgba(15, 118, 110, 0.12), transparent 30rem),
        linear-gradient(180deg, #fffaf4 0%, #f5efe6 100%);
}

a {
    color: inherit;
    text-decoration: none;
}

img,
video {
    max-width: 100%;
    display: block;
    border-radius: 18px;
}

button,
input,
textarea,
select {
    font: inherit;
}

.container {
    width: min(calc(100% - 2rem), var(--container));
    margin: 0 auto;
}

.section {
    padding: 3.5rem 0;
}

.page-shell {
    min-height: 100vh;
}

.site-header {
    position: sticky;
    top: 0;
    z-index: 30;
    backdrop-filter: blur(18px);
    background: rgba(255, 250, 243, 0.82);
    border-bottom: 1px solid var(--line);
}

.header-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 1rem 0;
}

.brand {
    display: inline-flex;
    align-items: center;
    gap: 0.85rem;
    padding: 0.42rem 0.82rem 0.42rem 0.48rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.7);
    border: 1px solid rgba(255, 255, 255, 0.72);
    box-shadow: var(--shadow);
    transition: transform 180ms ease, box-shadow 180ms ease, background 180ms ease;
}

.brand:hover {
    transform: translateY(-1px);
    background: rgba(255, 255, 255, 0.82);
}

.brand-copy {
    display: grid;
    gap: 0.08rem;
}

.brand strong,
.brand small {
    display: block;
}

.brand small,
.muted {
    color: var(--ink-soft);
}

.brand-mark {
    position: relative;
    display: grid;
    place-items: center;
    width: 50px;
    height: 50px;
    border-radius: 18px;
    background:
        radial-gradient(circle at 18% 18%, rgba(155, 242, 255, 0.46), transparent 38%),
        radial-gradient(circle at 78% 82%, rgba(255, 192, 122, 0.22), transparent 44%),
        linear-gradient(180deg, var(--cat-mark-bg), var(--cat-mark-bg-soft));
    border: 1px solid rgba(57, 210, 232, 0.18);
    box-shadow:
        0 12px 24px rgba(16, 38, 55, 0.1),
        0 0 14px rgba(57, 210, 232, 0.08),
        inset 0 1px 0 rgba(255, 255, 255, 0.92);
    overflow: hidden;
}

.brand-mark::before,
.brand-mark::after {
    content: "";
    position: absolute;
    inset: auto;
    pointer-events: none;
}

.brand-mark::before {
    inset: 4px;
    border-radius: 14px;
    border: 1px solid rgba(18, 40, 56, 0.06);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.92), rgba(244, 250, 252, 0.72));
}

.brand-mark::after {
    top: 7px;
    right: 7px;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(57, 210, 232, 0.18), transparent 72%);
    opacity: 0.8;
}

.brand-face {
    position: relative;
    z-index: 1;
    width: 26px;
    height: 21px;
    border-radius: 42% 42% 50% 50%;
    background: linear-gradient(180deg, var(--cat-shell), var(--cat-shell-soft));
    box-shadow:
        inset 0 -4px 6px rgba(255, 255, 255, 0.56),
        0 4px 10px rgba(16, 38, 55, 0.08);
}

.brand-face::before,
.brand-face::after {
    content: "";
    position: absolute;
    top: -5px;
    width: 10px;
    height: 11px;
    border-radius: 4px 4px 2px 2px;
    background: linear-gradient(180deg, var(--cat-shell), var(--cat-shell-soft));
    box-shadow: inset 0 -2px 4px rgba(255, 255, 255, 0.22);
}

.brand-face::before {
    left: 2px;
    transform: rotate(-28deg);
}

.brand-face::after {
    right: 2px;
    transform: rotate(28deg);
}

.brand-eye-band {
    position: absolute;
    left: 50%;
    top: 5px;
    width: 15px;
    height: 6px;
    transform: translateX(-50%);
    border-radius: 999px;
    background: linear-gradient(90deg, var(--cat-band-start), var(--cat-band-end));
    box-shadow:
        0 0 10px var(--cat-band-shadow),
        inset 0 1px 0 rgba(255, 255, 255, 0.32);
}

.brand-core {
    position: absolute;
    left: 50%;
    bottom: 4px;
    width: 7px;
    height: 7px;
    transform: translateX(-50%);
    border-radius: 50%;
    background: linear-gradient(180deg, var(--cat-core-start), var(--cat-core-end));
    box-shadow: 0 0 0 3px rgba(255, 122, 24, 0.12);
}

.site-nav {
    display: flex;
    align-items: center;
    gap: 0.9rem;
}

.site-nav a,
.ghost-link {
    padding: 0.75rem 1rem;
    border-radius: 999px;
    color: var(--ink-soft);
    transition: 180ms ease;
}

.site-nav a:hover,
.site-nav a.active,
.ghost-link:hover {
    color: var(--ink);
    background: rgba(23, 32, 47, 0.06);
}

.nav-toggle {
    display: none;
    border: 0;
    background: rgba(23, 32, 47, 0.06);
    padding: 0.75rem 1rem;
    border-radius: 999px;
}

.hero-section {
    padding-top: 4rem;
}

.hero-grid,
.split-grid,
.tool-layout,
.admin-two-col {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.5rem;
}

.hero-copy h1,
.page-hero h1 {
    margin: 0.35rem 0 1rem;
    font-size: clamp(2.4rem, 4vw, 4.4rem);
    line-height: 0.98;
    letter-spacing: -0.04em;
}

.lead {
    max-width: 62ch;
    font-size: 1.08rem;
    line-height: 1.75;
    color: var(--ink-soft);
}

.eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    color: var(--teal);
    text-transform: uppercase;
    letter-spacing: 0.18em;
    font-size: 0.76rem;
    font-weight: 700;
}

.button-row,
.chip-row,
.hero-points,
.footer-links {
    display: flex;
    gap: 0.75rem;
    flex-wrap: wrap;
}

.button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.45rem;
    border: 0;
    border-radius: 999px;
    padding: 0.9rem 1.2rem;
    background: linear-gradient(135deg, var(--brand), #ff9d45);
    color: #fff;
    cursor: pointer;
    box-shadow: 0 12px 24px rgba(255, 122, 24, 0.18);
}

.button.secondary {
    background: linear-gradient(135deg, var(--teal), #2ea89f);
    box-shadow: 0 12px 24px rgba(15, 118, 110, 0.16);
}

.button.ghost,
.section-link {
    background: rgba(255, 255, 255, 0.7);
    color: var(--ink);
    box-shadow: none;
    border: 1px solid var(--line);
}

.button.small {
    padding: 0.6rem 0.9rem;
    font-size: 0.92rem;
}

.hero-stage,
.hero-card,
.tool-card,
.story-card,
.nav-cluster,
.nav-link-card,
.nav-tool-card,
.process-card,
.editor-panel,
.result-panel,
.admin-panel,
.metric-card,
.auth-card {
    background: var(--card);
    border: 1px solid rgba(255, 255, 255, 0.65);
    border-radius: var(--radius-xl);
    box-shadow: var(--shadow);
}

.hero-stage {
    padding: 1.35rem;
}

.home-hero-section {
    padding-top: 4.6rem;
    padding-bottom: 1.75rem;
    overflow: hidden;
}

.home-hero-shell {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(420px, 0.95fr);
    gap: 1.5rem;
    align-items: center;
}

.home-hero-copy {
    position: relative;
    z-index: 1;
}

.home-hero-copy h1 {
    max-width: 11ch;
}

.home-platform-row {
    display: flex;
    flex-wrap: wrap;
    gap: 0.7rem;
    margin-top: 1.25rem;
}

.home-platform-row span,
.home-deliverable-list span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.56rem 0.9rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.76);
    border: 1px solid rgba(23, 32, 47, 0.08);
    color: var(--ink-soft);
    backdrop-filter: blur(14px);
}

.home-hero-note-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.9rem;
    margin-top: 1.5rem;
}

.home-hero-note,
.home-value-card,
.home-flow-card,
.home-tool-card,
.home-story-panel,
.home-nav-cluster,
.home-cta-panel {
    background: rgba(255, 255, 255, 0.84);
    border: 1px solid rgba(255, 255, 255, 0.72);
    box-shadow: var(--shadow);
}

.home-hero-note {
    padding: 1rem 1rem 1.05rem;
    border-radius: 24px;
}

.home-hero-note strong,
.home-value-card h3,
.home-flow-card h3,
.home-tool-card h3,
.home-nav-head h3,
.home-story-card h3,
.home-news-card h3,
.home-deliverable-head h3 {
    margin: 0;
}

.home-hero-note p,
.home-value-card p,
.home-flow-card p,
.home-tool-card p,
.home-nav-head p,
.home-story-card p,
.home-news-card p,
.home-cta-panel p {
    color: var(--ink-soft);
}

.home-hero-note p,
.home-value-card p,
.home-flow-card p,
.home-tool-card p,
.home-nav-head p,
.home-story-card p,
.home-news-card p {
    margin-bottom: 0;
    line-height: 1.68;
}

.home-hero-stage {
    position: relative;
    min-height: 600px;
    padding: 1.4rem;
    border-radius: 36px;
    overflow: hidden;
    background:
        radial-gradient(circle at 22% 18%, rgba(255, 179, 95, 0.48), transparent 22rem),
        radial-gradient(circle at 78% 28%, rgba(15, 118, 110, 0.22), transparent 20rem),
        linear-gradient(145deg, rgba(255, 250, 244, 0.98), rgba(255, 243, 228, 0.94));
    border: 1px solid rgba(255, 255, 255, 0.75);
    box-shadow: 0 24px 60px rgba(23, 32, 47, 0.12);
}

.hero-blob,
.hero-gridline {
    position: absolute;
    inset: auto;
    pointer-events: none;
}

.hero-blob {
    border-radius: 999px;
    filter: blur(18px);
    opacity: 0.75;
}

.hero-blob-a {
    top: 42px;
    right: 38px;
    width: 140px;
    height: 140px;
    background: rgba(255, 122, 24, 0.28);
    animation: heroBlob 7s ease-in-out infinite;
}

.hero-blob-b {
    bottom: 48px;
    left: 54px;
    width: 170px;
    height: 170px;
    background: rgba(15, 118, 110, 0.2);
    animation: heroBlob 9s ease-in-out infinite reverse;
}

.hero-gridline {
    inset: 0;
    background-image:
        linear-gradient(rgba(23, 32, 47, 0.06) 1px, transparent 1px),
        linear-gradient(90deg, rgba(23, 32, 47, 0.06) 1px, transparent 1px);
    background-size: 42px 42px;
    mask-image: linear-gradient(180deg, rgba(0, 0, 0, 0.5), transparent 88%);
    opacity: 0.4;
}

.launch-core {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 272px;
    min-height: 272px;
    padding: 1.35rem 1.2rem;
    border-radius: 50%;
    display: grid;
    place-items: center;
    text-align: center;
    transform: translate(-50%, -50%);
    background: rgba(255, 255, 255, 0.92);
    border: 1px solid rgba(255, 255, 255, 0.9);
    box-shadow: 0 20px 55px rgba(23, 32, 47, 0.14);
    animation: coreLift 6s ease-in-out infinite;
}

.launch-core-tag {
    position: absolute;
    top: 20px;
    padding: 0.42rem 0.8rem;
    border-radius: 999px;
    background: rgba(255, 122, 24, 0.12);
    color: var(--brand-dark);
    font-size: 0.8rem;
    font-weight: 700;
    letter-spacing: 0.08em;
}

.launch-core strong {
    font-size: 1.25rem;
    letter-spacing: -0.03em;
}

.launch-core p {
    margin: 0;
    color: var(--ink-soft);
}

.launch-core-cat {
    position: relative;
    width: 128px;
    height: 128px;
    display: grid;
    place-items: center;
}

.launch-cat-face {
    position: absolute;
    inset: 18px;
    border-radius: 30px;
    background: linear-gradient(145deg, var(--brand), #ffcf92);
    box-shadow: inset 0 -8px 16px rgba(255, 255, 255, 0.18);
}

.launch-cat-face::before,
.launch-cat-face::after {
    content: "";
    position: absolute;
    top: -18px;
    width: 34px;
    height: 34px;
    background: linear-gradient(145deg, var(--brand), #ffcf92);
    clip-path: polygon(50% 0%, 0% 100%, 100% 100%);
}

.launch-cat-face::before {
    left: 10px;
}

.launch-cat-face::after {
    right: 10px;
}

.launch-ring {
    position: absolute;
    border-radius: 50%;
    border: 1px dashed rgba(23, 32, 47, 0.14);
}

.launch-ring-a {
    inset: 2px;
    animation: spin 18s linear infinite;
}

.launch-ring-b {
    inset: 16px;
    animation: spin 13s linear infinite reverse;
}

.launch-ring-c {
    inset: 30px;
    animation: spin 22s linear infinite;
}

.launch-card {
    position: absolute;
    width: 220px;
    padding: 1rem;
    border-radius: 24px;
    background: rgba(255, 255, 255, 0.88);
    border: 1px solid rgba(255, 255, 255, 0.8);
    box-shadow: 0 18px 40px rgba(23, 32, 47, 0.1);
    backdrop-filter: blur(14px);
    animation: floatCard 7s ease-in-out infinite;
}

.launch-card span,
.home-flow-card strong {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 999px;
    background: rgba(255, 122, 24, 0.12);
    color: var(--brand-dark);
    font-weight: 700;
}

.launch-card strong {
    display: block;
    margin-top: 0.7rem;
    margin-bottom: 0.45rem;
    font-size: 1rem;
}

.launch-card p {
    margin: 0;
    color: var(--ink-soft);
    line-height: 1.58;
    font-size: 0.92rem;
}

.launch-card-a {
    top: 42px;
    left: 28px;
}

.launch-card-b {
    top: 58px;
    right: 28px;
    animation-delay: -1.3s;
}

.launch-card-c {
    top: 230px;
    right: 8px;
    animation-delay: -2.6s;
}

.launch-card-d {
    bottom: 42px;
    left: 26px;
    animation-delay: -1.8s;
}

.launch-card-e {
    right: 76px;
    bottom: 64px;
    animation-delay: -3.2s;
}

.home-value-section {
    padding-top: 1.4rem;
}

.home-value-grid,
.home-flow-grid,
.home-tool-grid,
.home-nav-grid {
    display: grid;
    gap: 1rem;
}

.home-value-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.home-value-card,
.home-flow-card,
.home-nav-cluster,
.home-cta-panel {
    padding: 1.2rem;
    border-radius: 28px;
}

.home-value-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    border-radius: 16px;
    background: linear-gradient(135deg, rgba(255, 122, 24, 0.14), rgba(15, 118, 110, 0.12));
    color: var(--teal);
    font-weight: 800;
    margin-bottom: 0.9rem;
}

.home-flow-section {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.2), rgba(255, 246, 235, 0.72));
}

.home-flow-shell {
    display: grid;
    gap: 1.2rem;
}

.home-flow-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.home-flow-card {
    position: relative;
}

.home-flow-card strong {
    margin-bottom: 1rem;
}

.home-deliverable-board {
    padding: 1.15rem 1.2rem;
    border-radius: 28px;
    background: rgba(255, 255, 255, 0.75);
    border: 1px solid rgba(23, 32, 47, 0.08);
}

.home-deliverable-head {
    margin-bottom: 1rem;
}

.home-deliverable-head h3 {
    margin-top: 0.3rem;
    font-size: 1.4rem;
}

.home-deliverable-list {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
}

.home-marquee {
    overflow: hidden;
    border-radius: 999px;
    border: 1px solid rgba(23, 32, 47, 0.08);
    background: rgba(255, 255, 255, 0.66);
}

.home-marquee-track {
    display: flex;
    gap: 0.8rem;
    width: max-content;
    padding: 0.75rem 0.8rem;
    animation: marqueeMove 22s linear infinite;
}

.home-marquee-track span {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.5rem 0.88rem;
    border-radius: 999px;
    background: rgba(255, 250, 243, 0.92);
    color: var(--ink-soft);
    white-space: nowrap;
}

.home-tool-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.home-tool-card {
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 1rem;
    padding: 1rem 1.05rem;
    border-radius: 24px;
    transition: transform 0.16s ease, box-shadow 0.16s ease, border-color 0.16s ease;
}

.home-tool-card:hover,
.home-value-card:hover,
.home-flow-card:hover,
.home-nav-cluster:hover {
    transform: translateY(-4px);
    border-color: rgba(255, 122, 24, 0.22);
    box-shadow: 0 20px 48px rgba(23, 32, 47, 0.12);
}

.home-tool-arrow {
    color: var(--ink-soft);
    font-size: 1.15rem;
}

.home-story-section {
    padding-top: 2rem;
}

.home-story-shell {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}

.home-story-panel {
    padding: 1.2rem;
    border-radius: 30px;
}

.home-story-list,
.home-news-list,
.home-nav-list {
    display: grid;
    gap: 0.85rem;
}

.home-story-card,
.home-news-card,
.home-nav-link {
    padding: 1rem;
    border-radius: 22px;
    background: rgba(23, 32, 47, 0.04);
    border: 1px solid rgba(23, 32, 47, 0.06);
}

.home-story-card strong {
    display: inline-block;
    margin-top: 0.85rem;
    color: var(--brand-dark);
}

.home-nav-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.home-nav-head {
    margin-bottom: 0.9rem;
}

.home-nav-link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    color: var(--ink);
}

.home-nav-link small {
    color: var(--ink-soft);
}

.home-cta-panel {
    text-align: center;
    padding: 2rem 1.4rem;
    background:
        radial-gradient(circle at top center, rgba(255, 179, 95, 0.28), transparent 18rem),
        linear-gradient(145deg, rgba(255, 255, 255, 0.94), rgba(255, 243, 228, 0.9));
}

.home-cta-panel h2 {
    margin: 0.35rem auto 0.85rem;
    max-width: 12ch;
    font-size: clamp(2rem, 3vw, 3.2rem);
    line-height: 1.02;
    letter-spacing: -0.04em;
}

.home-cta-panel p {
    max-width: 36rem;
    margin: 0 auto 1.2rem;
    font-size: 1.04rem;
    line-height: 1.75;
}

.home-hero-shell-v2 {
    grid-template-columns: minmax(0, 1fr) minmax(560px, 1.04fr);
    gap: 1.1rem;
    align-items: center;
}

.home-hero-copy-v2 {
    display: grid;
    align-content: center;
    gap: 0.05rem;
    padding-right: 0.4rem;
}

.home-hero-copy-v2 h1 {
    max-width: 9.1ch;
}

.home-hero-copy-v2 .lead {
    max-width: 31rem;
    margin-bottom: 0.55rem;
}

.home-promise-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.85rem;
    margin-top: 1.5rem;
}

.home-promise-card,
.home-outcome-card,
.home-proof-panel,
.home-proof-card,
.home-stage-strip article {
    background: rgba(255, 255, 255, 0.84);
    border: 1px solid rgba(255, 255, 255, 0.72);
    box-shadow: var(--shadow);
}

.home-promise-card {
    padding: 1rem 1rem 1.05rem;
    border-radius: 24px;
}

.home-promise-card strong,
.home-outcome-card h3,
.home-proof-card h3 {
    display: block;
    margin: 0 0 0.45rem;
}

.home-promise-card p,
.home-outcome-card p,
.home-proof-card p {
    margin: 0;
    color: var(--ink-soft);
    line-height: 1.66;
}

.home-promise-strip {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.75rem;
    margin-top: 1rem;
}

.home-promise-strip article {
    position: relative;
    display: grid;
    gap: 0.14rem;
    padding: 0.82rem 0.95rem 0.82rem 1.2rem;
    border-radius: 22px;
    background: rgba(255, 255, 255, 0.8);
    border: 1px solid rgba(255, 255, 255, 0.76);
    box-shadow: var(--shadow);
}

.home-promise-strip article::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0.8rem;
    width: 0.28rem;
    height: 1.2rem;
    transform: translateY(-50%);
    border-radius: 999px;
    background: linear-gradient(180deg, var(--brand), var(--teal));
    opacity: 0.9;
}

.home-promise-strip strong {
    display: block;
    margin: 0;
    font-size: 0.95rem;
}

.home-promise-strip small {
    display: block;
    margin: 0;
    color: var(--ink-soft);
    font-size: 0.82rem;
    line-height: 1.45;
}

.home-cat-stage {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1.02fr) minmax(250px, 0.88fr);
    gap: 0.9rem;
    align-items: start;
    padding: 1.08rem;
    border-radius: 36px;
    overflow: hidden;
    background:
        radial-gradient(circle at 16% 12%, rgba(255, 177, 92, 0.34), transparent 20rem),
        radial-gradient(circle at 84% 20%, rgba(88, 198, 255, 0.18), transparent 18rem),
        linear-gradient(145deg, rgba(255, 250, 244, 0.98), rgba(241, 247, 250, 0.95));
    border: 1px solid rgba(255, 255, 255, 0.82);
    box-shadow: 0 24px 60px rgba(23, 32, 47, 0.12);
}

.home-cat-stage::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(120deg, transparent, rgba(255, 255, 255, 0.22), transparent);
    transform: translateX(-100%);
    animation: sheenSweep 7s ease-in-out infinite;
    pointer-events: none;
}

.home-cat-visual {
    position: relative;
    min-height: 438px;
    border-radius: 30px;
    overflow: hidden;
    display: grid;
    place-items: center;
    background:
        radial-gradient(circle at 50% 45%, rgba(255, 255, 255, 0.94), rgba(255, 249, 242, 0.7) 46%, transparent 70%),
        linear-gradient(180deg, rgba(12, 26, 39, 0.03), rgba(12, 26, 39, 0.08));
    border: 1px solid rgba(255, 255, 255, 0.78);
}

.cat-stage-glow,
.cat-stage-grid,
.cat-orbit,
.cat-floating-chip {
    position: absolute;
    pointer-events: none;
}

.cat-stage-glow {
    border-radius: 999px;
    filter: blur(22px);
    opacity: 0.75;
}

.cat-stage-glow-a {
    top: 32px;
    left: 44px;
    width: 128px;
    height: 128px;
    background: rgba(255, 122, 24, 0.26);
    animation: heroBlob 8s ease-in-out infinite;
}

.cat-stage-glow-b {
    right: 34px;
    bottom: 30px;
    width: 160px;
    height: 160px;
    background: rgba(15, 118, 110, 0.18);
    animation: heroBlob 10s ease-in-out infinite reverse;
}

.cat-stage-grid {
    inset: 0;
    background-image:
        linear-gradient(rgba(23, 32, 47, 0.06) 1px, transparent 1px),
        linear-gradient(90deg, rgba(23, 32, 47, 0.06) 1px, transparent 1px);
    background-size: 36px 36px;
    mask-image: linear-gradient(180deg, rgba(0, 0, 0, 0.45), transparent 90%);
    opacity: 0.42;
}

.cat-orbit {
    top: 50%;
    left: 50%;
    border-radius: 50%;
    border: 1px dashed rgba(23, 32, 47, 0.16);
    transform: translate(-50%, -50%);
}

.cat-orbit-a {
    width: 330px;
    height: 330px;
    animation: spin 24s linear infinite;
}

.cat-orbit-b {
    width: 264px;
    height: 264px;
    animation: spin 18s linear infinite reverse;
}

.cat-orbit-c {
    width: 204px;
    height: 204px;
    animation: spin 12s linear infinite;
}

.smart-cat {
    position: relative;
    width: 250px;
    height: 300px;
    display: grid;
    place-items: center;
    z-index: 1;
    animation: catFloat 6.5s ease-in-out infinite;
}

.smart-cat-pulse {
    position: absolute;
    inset: 54px 34px 60px;
    border-radius: 50%;
    border: 1px solid rgba(15, 118, 110, 0.16);
    box-shadow:
        0 0 0 18px rgba(15, 118, 110, 0.05),
        0 0 0 36px rgba(255, 122, 24, 0.05);
    animation: catPulse 3.4s ease-in-out infinite;
}

.smart-cat-ear {
    position: absolute;
    top: 22px;
    width: 82px;
    height: 98px;
    clip-path: polygon(50% 0%, 0% 100%, 100% 100%);
    background: linear-gradient(180deg, var(--cat-shell), var(--cat-shell-soft));
    transform-origin: 50% 88%;
    filter: drop-shadow(0 10px 18px rgba(23, 32, 47, 0.12));
}

.smart-cat-ear::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 10px;
    width: 42px;
    height: 48px;
    transform: translateX(-50%);
    clip-path: polygon(50% 0%, 0% 100%, 100% 100%);
    background: linear-gradient(180deg, rgba(202, 246, 255, 0.84), rgba(139, 232, 248, 0.58));
}

.smart-cat-ear-left {
    left: 20px;
    animation: catEarLeft 4s ease-in-out infinite;
}

.smart-cat-ear-right {
    right: 20px;
    animation: catEarRight 4s ease-in-out infinite;
}

.smart-cat-face {
    position: absolute;
    bottom: 34px;
    width: 196px;
    height: 188px;
    border-radius: 34% 34% 42% 42%;
    background:
        radial-gradient(circle at 50% 24%, rgba(255, 255, 255, 0.72), transparent 26%),
        linear-gradient(180deg, var(--cat-shell), var(--cat-shell-soft));
    box-shadow:
        inset 0 -12px 16px rgba(255, 255, 255, 0.38),
        0 24px 46px rgba(23, 32, 47, 0.12);
}

.smart-cat-face::before {
    content: "";
    position: absolute;
    inset: 18px 22px 20px;
    border-radius: 40% 40% 44% 44%;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.34), rgba(210, 246, 252, 0.18));
}

.smart-cat-face::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 34%;
    width: 45%;
    height: 11%;
    transform: translateX(-50%);
    border-radius: 999px;
    background: linear-gradient(90deg, var(--cat-band-start), var(--cat-band-end));
    box-shadow:
        0 0 18px var(--cat-band-shadow),
        inset 0 1px 0 rgba(255, 255, 255, 0.36);
}

.smart-cat-eye {
    position: absolute;
    top: 78px;
    width: 18px;
    height: 8px;
    border-radius: 999px;
    background: rgba(18, 40, 56, 0.82);
    box-shadow: none;
    animation: catBlink 6s ease-in-out infinite;
    z-index: 2;
}

.smart-cat-eye::after {
    content: "";
    position: absolute;
    top: 2px;
    right: 3px;
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.78);
}

.smart-cat-eye-left {
    left: 58px;
}

.smart-cat-eye-right {
    right: 58px;
}

.smart-cat-nose {
    position: absolute;
    top: 114px;
    left: 50%;
    width: 12px;
    height: 10px;
    transform: translateX(-50%);
    clip-path: polygon(50% 100%, 0 0, 100% 0);
    background: rgba(255, 122, 24, 0.86);
}

.smart-cat-mouth {
    position: absolute;
    top: 128px;
    left: 50%;
    width: 22px;
    height: 10px;
    transform: translateX(-50%);
    border-bottom: 2px solid rgba(18, 40, 56, 0.48);
    border-radius: 0 0 18px 18px;
}

.smart-cat-whisker {
    position: absolute;
    width: 52px;
    height: 2px;
    background: rgba(18, 40, 56, 0.14);
}

.smart-cat-whisker-left-top {
    top: 120px;
    left: 4px;
    transform: rotate(14deg);
}

.smart-cat-whisker-left-bottom {
    top: 134px;
    left: 2px;
    transform: rotate(-6deg);
}

.smart-cat-whisker-right-top {
    top: 120px;
    right: 4px;
    transform: rotate(-14deg);
}

.smart-cat-whisker-right-bottom {
    top: 134px;
    right: 2px;
    transform: rotate(6deg);
}

.smart-cat-core {
    position: absolute;
    bottom: 10px;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: linear-gradient(180deg, var(--cat-core-start), var(--cat-core-end));
    box-shadow:
        0 0 0 10px rgba(255, 122, 24, 0.08),
        0 10px 22px rgba(255, 122, 24, 0.18);
}

.cat-floating-chip {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.54rem 0.9rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.86);
    border: 1px solid rgba(255, 255, 255, 0.78);
    color: var(--ink);
    box-shadow: 0 12px 24px rgba(23, 32, 47, 0.1);
    font-size: 0.84rem;
    font-weight: 700;
}

.cat-floating-chip-a {
    top: 40px;
    left: 34px;
    animation: floatCard 7s ease-in-out infinite;
}

.cat-floating-chip-b {
    top: 76px;
    right: 34px;
    animation: floatCard 7s ease-in-out infinite -1.8s;
}

.cat-floating-chip-c {
    bottom: 48px;
    right: 62px;
    animation: floatCard 7s ease-in-out infinite -3.1s;
}

.home-position-panel {
    display: grid;
    align-content: start;
    align-self: center;
    gap: 0.68rem;
    padding: 0.95rem;
    border-radius: 30px;
    background:
        linear-gradient(180deg, rgba(18, 31, 46, 0.96), rgba(14, 26, 39, 0.92));
    color: #eff7fb;
    border: 1px solid rgba(112, 212, 255, 0.16);
    box-shadow: 0 18px 42px rgba(10, 20, 30, 0.18);
}

.home-position-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.8rem;
}

.home-position-panel .eyebrow {
    color: #8ee4de;
}

.home-position-panel h2 {
    margin: 0;
    font-size: clamp(1.12rem, 1.55vw, 1.48rem);
    line-height: 1.08;
    letter-spacing: -0.03em;
}

.home-position-summary {
    margin: 0;
    color: rgba(239, 247, 251, 0.76);
    font-size: 0.94rem;
    line-height: 1.56;
}

.home-position-matrix {
    display: grid;
    gap: 0.52rem;
}

.home-position-row {
    display: grid;
    gap: 0.2rem;
    padding: 0.72rem 0.82rem;
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.06);
    border: 1px solid rgba(255, 255, 255, 0.08);
}

.home-position-row span {
    color: #8ee4de;
    font-size: 0.8rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.home-position-row strong {
    margin: 0;
    font-size: 0.92rem;
    line-height: 1.4;
}

.home-position-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 0.55rem;
}

.home-position-tags span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.45rem 0.74rem;
    border-radius: 999px;
    background: rgba(112, 212, 255, 0.12);
    border: 1px solid rgba(112, 212, 255, 0.16);
    color: #def8ff;
    font-size: 0.82rem;
}

.home-stage-strip {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.72rem;
}

.home-stage-strip article {
    padding: 0.78rem 0.92rem;
    border-radius: 20px;
}

.home-stage-strip strong {
    display: block;
    margin-bottom: 0.18rem;
    font-size: 0.92rem;
}

.home-stage-strip p {
    margin: 0;
    color: var(--ink-soft);
    font-size: 0.84rem;
    line-height: 1.45;
}

.home-outcome-section {
    padding-top: 1.1rem;
}

.home-outcome-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
}

.home-outcome-card {
    padding: 1.2rem;
    border-radius: 28px;
}

.home-outcome-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 46px;
    height: 46px;
    margin-bottom: 0.9rem;
    border-radius: 15px;
    background: linear-gradient(135deg, rgba(255, 122, 24, 0.14), rgba(88, 198, 255, 0.12));
    color: var(--teal);
    font-weight: 800;
}

.home-tool-grid-compact {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.home-tool-card-compact {
    min-height: 176px;
}

.home-proof-section {
    padding-top: 1.6rem;
}

.home-proof-shell {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}

.home-proof-panel {
    padding: 1.2rem;
    border-radius: 30px;
}

.home-proof-list {
    display: grid;
    gap: 0.85rem;
}

.home-proof-card {
    padding: 1rem;
    border-radius: 22px;
    background: rgba(23, 32, 47, 0.04);
    border: 1px solid rgba(23, 32, 47, 0.06);
}

.home-proof-card .story-meta strong {
    color: var(--brand-dark);
}

.home-proof-card .section-link {
    margin-top: 0.9rem;
}

.home-cta-panel-v2 {
    padding: 2rem 1.4rem;
    background:
        radial-gradient(circle at top center, rgba(255, 179, 95, 0.28), transparent 18rem),
        radial-gradient(circle at 80% 20%, rgba(88, 198, 255, 0.14), transparent 12rem),
        linear-gradient(145deg, rgba(255, 255, 255, 0.94), rgba(255, 243, 228, 0.9));
}

@keyframes sheenSweep {
    0%, 100% {
        transform: translateX(-110%);
    }
    45%, 55% {
        transform: translateX(120%);
    }
}

@keyframes catFloat {
    0%, 100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(-10px);
    }
}

@keyframes catEarLeft {
    0%, 100% {
        transform: rotate(-6deg);
    }
    14%, 22% {
        transform: rotate(-14deg);
    }
    48% {
        transform: rotate(-4deg);
    }
}

@keyframes catEarRight {
    0%, 100% {
        transform: rotate(6deg);
    }
    14%, 22% {
        transform: rotate(14deg);
    }
    48% {
        transform: rotate(4deg);
    }
}

@keyframes catBlink {
    0%, 44%, 48%, 100% {
        transform: scaleY(1);
    }
    46% {
        transform: scaleY(0.18);
    }
}

@keyframes catPulse {
    0%, 100% {
        transform: scale(0.98);
        opacity: 0.45;
    }
    50% {
        transform: scale(1.06);
        opacity: 0.75;
    }
}

@keyframes heroBlob {
    0%, 100% {
        transform: translate3d(0, 0, 0) scale(1);
    }
    50% {
        transform: translate3d(0, -14px, 0) scale(1.04);
    }
}

@keyframes coreLift {
    0%, 100% {
        transform: translate(-50%, -50%) translateY(0);
    }
    50% {
        transform: translate(-50%, -50%) translateY(-8px);
    }
}

@keyframes floatCard {
    0%, 100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(-10px);
    }
}

@keyframes marqueeMove {
    from {
        transform: translateX(0);
    }
    to {
        transform: translateX(-50%);
    }
}

.hero-card-main {
    display: grid;
    gap: 1rem;
    align-items: center;
    grid-template-columns: 180px 1fr;
    padding: 1.2rem;
}

.cat-constellation {
    position: relative;
    aspect-ratio: 1;
    border-radius: 24px;
    background:
        linear-gradient(145deg, rgba(255, 122, 24, 0.16), rgba(15, 118, 110, 0.1)),
        #fff8f0;
    overflow: hidden;
}

.cat-face {
    position: absolute;
    inset: 28px;
    border-radius: 28px;
    background: linear-gradient(145deg, #ff8d36, #ffcd8c);
}

.cat-face::before,
.cat-face::after {
    content: "";
    position: absolute;
    top: -18px;
    width: 38px;
    height: 38px;
    background: linear-gradient(145deg, #ff8d36, #ffcd8c);
    clip-path: polygon(50% 0%, 0% 100%, 100% 100%);
}

.cat-face::before {
    left: 12px;
}

.cat-face::after {
    right: 12px;
}

.orbit {
    position: absolute;
    inset: 14px;
    border-radius: 50%;
    border: 1px dashed rgba(23, 32, 47, 0.15);
}

.orbit-a {
    animation: spin 18s linear infinite;
}

.orbit-b {
    inset: 30px;
    animation: spin 14s linear infinite reverse;
}

.orbit-c {
    inset: 46px;
    animation: spin 22s linear infinite;
}

@keyframes spin {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

.hero-card-label,
.badge {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    padding: 0.35rem 0.7rem;
    border-radius: 999px;
    background: rgba(23, 32, 47, 0.06);
    color: var(--ink);
    font-size: 0.82rem;
}

.stat-grid,
.metric-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
    margin-top: 1rem;
}

.stat-card,
.metric-card {
    padding: 1.2rem;
    border-radius: 22px;
    background: rgba(255, 255, 255, 0.72);
    border: 1px solid var(--line);
}

.stat-card strong,
.metric-card strong {
    display: block;
    font-size: 2rem;
    letter-spacing: -0.05em;
}

.section-head {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1.25rem;
}

.section-head h2,
.panel-head h2,
.admin-head h1,
.auth-card h1 {
    margin: 0.3rem 0 0;
    font-size: clamp(1.6rem, 2vw, 2.5rem);
    letter-spacing: -0.03em;
}

.card-grid,
.process-grid,
.nav-preview-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
}

.tool-card,
.process-card,
.story-card,
.nav-cluster,
.nav-tool-card,
.editor-panel,
.result-panel,
.admin-panel,
.auth-card {
    padding: 1.2rem;
}

.tool-card-top,
.story-meta,
.panel-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    margin-bottom: 0.9rem;
}

.icon-chip {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 52px;
    padding: 0.75rem 0.9rem;
    border-radius: 16px;
    background: linear-gradient(135deg, rgba(255, 122, 24, 0.14), rgba(15, 118, 110, 0.14));
    color: var(--teal);
    font-weight: 700;
}

.chip {
    padding: 0.35rem 0.7rem;
    border-radius: 999px;
    background: rgba(23, 32, 47, 0.05);
    color: var(--ink-soft);
    font-size: 0.82rem;
}

.process-card strong {
    color: var(--brand-dark);
    font-size: 1.1rem;
}

.warm-section {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.45), rgba(255, 244, 230, 0.85));
}

.stack-list {
    display: grid;
    gap: 1rem;
}

.story-card.large h2 {
    margin-top: 0;
}

.nav-link-card,
.nav-tool-card {
    display: flex;
    justify-content: space-between;
    gap: 0.8rem;
}

.nav-cluster .stack-list {
    margin-top: 1rem;
}

.link-arrow {
    color: var(--ink-soft);
    font-size: 1.2rem;
}

.tool-form,
.editor-form {
    display: grid;
    gap: 1rem;
}

.form-grid {
    display: grid;
    gap: 1rem;
}

.form-grid.two {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.field {
    display: grid;
    gap: 0.55rem;
}

.field span {
    font-weight: 700;
}

.field small {
    color: var(--ink-soft);
}

.field input,
.field textarea,
.field select {
    width: 100%;
    border: 1px solid var(--line);
    background: rgba(255, 255, 255, 0.88);
    border-radius: 16px;
    padding: 0.9rem 1rem;
    color: var(--ink);
}

.field textarea {
    resize: vertical;
}

.field-inline {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.85rem 1rem;
    border: 1px solid var(--line);
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.72);
}

.field-inline input {
    width: auto;
    margin: 0;
}

.field-inline span {
    font-weight: 600;
}

.checkbox-field {
    align-content: end;
}

.checkbox-field input {
    width: auto;
    justify-self: start;
}

.result-card,
.empty-state {
    padding: 1rem;
    border-radius: 22px;
    background: rgba(255, 255, 255, 0.72);
    border: 1px solid var(--line);
}

.result-toolbar {
    display: flex;
    justify-content: end;
    margin-bottom: 1rem;
}

.result-body,
.article-body {
    color: var(--ink-soft);
    line-height: 1.8;
}

.result-media {
    margin-top: 1rem;
}

.page-hero {
    padding-top: 3rem;
    padding-bottom: 1rem;
}

.compact-page-hero h1 {
    font-size: clamp(2rem, 3vw, 3rem);
}

.group-block + .group-block,
.top-gap {
    margin-top: 2rem;
}

.toolbox-page-hero {
    padding-top: 1.9rem;
    padding-bottom: 0.25rem;
}

.toolbox-hero-shell,
.toolbox-group,
.toolbox-card {
    background: rgba(255, 255, 255, 0.84);
    border: 1px solid rgba(255, 255, 255, 0.72);
    box-shadow: var(--shadow);
}

.toolbox-hero-shell {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(360px, 0.92fr);
    gap: 1rem;
    padding: 1rem 1.05rem;
    border-radius: 32px;
    overflow: hidden;
    background:
        radial-gradient(circle at 14% 20%, rgba(255, 179, 95, 0.24), transparent 20rem),
        radial-gradient(circle at 88% 18%, rgba(88, 198, 255, 0.16), transparent 18rem),
        linear-gradient(145deg, rgba(255, 250, 244, 0.98), rgba(242, 247, 250, 0.95));
}

.toolbox-hero-shell::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: linear-gradient(120deg, transparent, rgba(255, 255, 255, 0.2), transparent);
    transform: translateX(-100%);
    animation: sheenSweep 8s ease-in-out infinite;
}

.toolbox-hero-copy {
    position: relative;
    z-index: 1;
    display: grid;
    align-content: center;
    gap: 0.1rem;
}

.toolbox-hero-copy h1 {
    margin: 0.28rem 0 0.72rem;
    font-size: clamp(2.1rem, 3.2vw, 3.45rem);
    line-height: 1.02;
    max-width: 10.4ch;
}

.toolbox-hero-copy .lead {
    max-width: 34rem;
    margin: 0.28rem 0 0;
    font-size: 1rem;
    line-height: 1.68;
}

.toolbox-hero-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 0.7rem;
    margin-top: 1rem;
}

.toolbox-hero-meta article {
    display: inline-flex;
    align-items: baseline;
    gap: 0.5rem;
    padding: 0.78rem 0.95rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.84);
    border: 1px solid rgba(255, 255, 255, 0.74);
    box-shadow: var(--shadow);
}

.toolbox-hero-meta strong {
    display: inline-flex;
    align-items: baseline;
    font-size: 1.25rem;
    letter-spacing: -0.05em;
}

.toolbox-hero-meta span {
    color: var(--ink-soft);
    font-size: 0.88rem;
    white-space: nowrap;
}

.toolbox-hero-stage {
    position: relative;
    z-index: 1;
    min-height: 232px;
}

.toolbox-hero-console {
    position: relative;
    min-height: 100%;
    padding: 1rem;
    border-radius: 28px;
    overflow: hidden;
    background:
        radial-gradient(circle at 72% 28%, rgba(255, 161, 72, 0.18), transparent 11rem),
        linear-gradient(160deg, rgba(15, 30, 44, 0.96), rgba(9, 20, 34, 0.94));
    border: 1px solid rgba(112, 212, 255, 0.14);
    box-shadow: 0 18px 42px rgba(10, 20, 30, 0.16);
}

.toolbox-hero-console::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.06) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.06) 1px, transparent 1px);
    background-size: 34px 34px;
    mask-image: linear-gradient(180deg, rgba(0, 0, 0, 0.44), transparent 92%);
    opacity: 0.36;
}

.toolbox-search {
    display: grid;
    gap: 0.55rem;
    padding: 1rem;
    border-radius: 24px;
    background: rgba(23, 32, 47, 0.04);
    border: 1px solid var(--line);
}

.toolbox-search-compact {
    position: relative;
    z-index: 1;
    max-width: calc(100% - 168px);
    padding: 0;
    border: 0;
    background: none;
}

.toolbox-search span {
    font-size: 0.85rem;
    font-weight: 700;
    color: var(--ink-soft);
}

.toolbox-search-compact span {
    color: rgba(223, 238, 248, 0.78);
}

.toolbox-search input {
    width: 100%;
    border: 1px solid var(--line);
    border-radius: 16px;
    padding: 0.9rem 1rem;
    background: rgba(255, 255, 255, 0.9);
}

.toolbox-search-compact input {
    border-color: rgba(255, 255, 255, 0.08);
    background: rgba(255, 255, 255, 0.96);
    box-shadow: 0 12px 24px rgba(4, 13, 24, 0.14);
}

.toolbox-index {
    display: flex;
    flex-wrap: wrap;
    gap: 0.7rem;
}

.toolbox-index-compact {
    position: relative;
    z-index: 1;
    max-width: calc(100% - 168px);
    margin-top: 0.7rem;
    gap: 0.55rem;
}

.toolbox-index a {
    display: inline-flex;
    align-items: center;
    gap: 0.65rem;
    padding: 0.8rem 1rem;
    border-radius: 999px;
    background: rgba(23, 32, 47, 0.04);
    border: 1px solid transparent;
    color: var(--ink-soft);
    transition: 180ms ease;
}

.toolbox-index-compact a {
    padding: 0.62rem 0.82rem;
    background: rgba(255, 255, 255, 0.08);
    border-color: rgba(255, 255, 255, 0.08);
    color: rgba(239, 247, 251, 0.86);
}

.toolbox-index a strong {
    display: inline-flex;
    min-width: 30px;
    justify-content: center;
    padding: 0.25rem 0.45rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.82);
    color: var(--ink);
    font-size: 0.82rem;
}

.toolbox-index-compact a strong {
    background: rgba(255, 255, 255, 0.14);
    color: #eff7fb;
}

.toolbox-index a.active,
.toolbox-index a:hover {
    color: var(--ink);
    border-color: rgba(255, 122, 24, 0.22);
    background: rgba(255, 122, 24, 0.08);
}

.toolbox-index-compact a.active,
.toolbox-index-compact a:hover {
    color: #fff;
    border-color: rgba(255, 161, 72, 0.28);
    background: rgba(255, 161, 72, 0.16);
}

.toolbox-cat-pocket,
.toolbox-cat-grid,
.toolbox-cat-orbit,
.toolbox-cat-glow,
.toolbox-cat-chip {
    position: absolute;
    pointer-events: none;
}

.toolbox-cat-pocket {
    right: 0.75rem;
    bottom: 0.65rem;
    width: 150px;
    height: 172px;
}

.toolbox-cat-grid {
    inset: 16px 0 0 16px;
    border-radius: 22px;
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.08) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.08) 1px, transparent 1px);
    background-size: 22px 22px;
    mask-image: linear-gradient(180deg, rgba(0, 0, 0, 0.42), transparent 92%);
    opacity: 0.4;
}

.toolbox-cat-orbit {
    top: 50%;
    left: 50%;
    border-radius: 50%;
    border: 1px dashed rgba(255, 255, 255, 0.16);
    transform: translate(-50%, -50%);
}

.toolbox-cat-orbit-a {
    width: 118px;
    height: 118px;
    animation: spin 16s linear infinite;
}

.toolbox-cat-orbit-b {
    width: 84px;
    height: 84px;
    animation: spin 12s linear infinite reverse;
}

.toolbox-cat-glow {
    border-radius: 999px;
    filter: blur(16px);
    opacity: 0.72;
}

.toolbox-cat-glow-a {
    top: 10px;
    right: 8px;
    width: 66px;
    height: 66px;
    background: rgba(255, 145, 68, 0.34);
    animation: heroBlob 8s ease-in-out infinite;
}

.toolbox-cat-glow-b {
    left: 8px;
    bottom: 12px;
    width: 72px;
    height: 72px;
    background: rgba(88, 198, 255, 0.22);
    animation: heroBlob 10s ease-in-out infinite reverse;
}

.toolbox-cat {
    position: absolute;
    inset: 0;
    display: grid;
    place-items: center;
    animation: catFloat 5.8s ease-in-out infinite;
}

.toolbox-cat-ear {
    position: absolute;
    top: 24px;
    width: 40px;
    height: 52px;
    clip-path: polygon(50% 0%, 0% 100%, 100% 100%);
    background: linear-gradient(180deg, var(--cat-shell), var(--cat-shell-soft));
    transform-origin: 50% 88%;
    filter: drop-shadow(0 8px 14px rgba(7, 15, 24, 0.2));
}

.toolbox-cat-ear::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 6px;
    width: 20px;
    height: 24px;
    transform: translateX(-50%);
    clip-path: polygon(50% 0%, 0% 100%, 100% 100%);
    background: linear-gradient(180deg, rgba(202, 246, 255, 0.84), rgba(139, 232, 248, 0.58));
}

.toolbox-cat-ear-left {
    left: 32px;
    animation: catEarLeft 4.2s ease-in-out infinite;
}

.toolbox-cat-ear-right {
    right: 32px;
    animation: catEarRight 4.2s ease-in-out infinite;
}

.toolbox-cat-face {
    position: absolute;
    bottom: 30px;
    width: 92px;
    height: 90px;
    border-radius: 34% 34% 42% 42%;
    background:
        radial-gradient(circle at 50% 24%, rgba(255, 255, 255, 0.72), transparent 26%),
        linear-gradient(180deg, var(--cat-shell), var(--cat-shell-soft));
    box-shadow:
        inset 0 -8px 14px rgba(255, 255, 255, 0.26),
        0 16px 28px rgba(6, 14, 22, 0.2);
}

.toolbox-cat-face::before {
    content: "";
    position: absolute;
    inset: 10px 12px 12px;
    border-radius: 38% 38% 44% 44%;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.34), rgba(210, 246, 252, 0.18));
}

.toolbox-cat-face::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 34%;
    width: 44%;
    height: 11%;
    transform: translateX(-50%);
    border-radius: 999px;
    background: linear-gradient(90deg, var(--cat-band-start), var(--cat-band-end));
    box-shadow:
        0 0 12px var(--cat-band-shadow),
        inset 0 1px 0 rgba(255, 255, 255, 0.36);
}

.toolbox-cat-eye {
    position: absolute;
    top: 38px;
    width: 8px;
    height: 4px;
    border-radius: 999px;
    background: rgba(18, 40, 56, 0.82);
    box-shadow: none;
    animation: catBlink 6s ease-in-out infinite;
    z-index: 2;
}

.toolbox-cat-eye-left {
    left: 27px;
}

.toolbox-cat-eye-right {
    right: 27px;
}

.toolbox-cat-nose {
    position: absolute;
    top: 53px;
    left: 50%;
    width: 7px;
    height: 6px;
    transform: translateX(-50%);
    clip-path: polygon(50% 100%, 0 0, 100% 0);
    background: rgba(255, 122, 24, 0.86);
}

.toolbox-cat-mouth {
    position: absolute;
    top: 64px;
    left: 50%;
    width: 12px;
    height: 6px;
    transform: translateX(-50%);
    border-bottom: 2px solid rgba(18, 40, 56, 0.44);
    border-radius: 0 0 12px 12px;
}

.toolbox-cat-core {
    position: absolute;
    bottom: 14px;
    width: 14px;
    height: 14px;
    border-radius: 50%;
    background: linear-gradient(180deg, var(--cat-core-start), var(--cat-core-end));
    box-shadow:
        0 0 0 6px rgba(255, 122, 24, 0.08),
        0 8px 18px rgba(255, 122, 24, 0.18);
}

.toolbox-cat-chip {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.34rem 0.6rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.14);
    border: 1px solid rgba(255, 255, 255, 0.12);
    color: #eef7fb;
    font-size: 0.72rem;
    font-weight: 700;
    box-shadow: 0 8px 18px rgba(4, 13, 24, 0.16);
}

.toolbox-cat-chip-a {
    left: 6px;
    top: 20px;
    animation: floatCard 7s ease-in-out infinite;
}

.toolbox-cat-chip-b {
    right: 0;
    bottom: 18px;
    animation: floatCard 7s ease-in-out infinite -2.1s;
}

.toolbox-section {
    padding-top: 0.65rem;
}

.toolbox-group + .toolbox-group {
    margin-top: 1rem;
}

.toolbox-group {
    padding: 1.25rem;
    border-radius: 30px;
}

.toolbox-group-head {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1rem;
}

.toolbox-group-head h2 {
    margin: 0.28rem 0 0;
    font-size: clamp(1.4rem, 2vw, 2.1rem);
    letter-spacing: -0.03em;
}

.toolbox-counter {
    margin: 0;
    color: var(--ink-soft);
    font-weight: 700;
}

.toolbox-card-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.95rem;
}

.toolbox-card {
    display: grid;
    gap: 0.85rem;
    padding: 1rem;
    border-radius: 24px;
}

.toolbox-card-top,
.toolbox-card-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.8rem;
}

.toolbox-card-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    border-radius: 16px;
    background: linear-gradient(135deg, rgba(255, 122, 24, 0.14), rgba(15, 118, 110, 0.12));
    font-size: 1.25rem;
}

.toolbox-card-badges {
    display: flex;
    flex-wrap: wrap;
    justify-content: end;
    gap: 0.5rem;
}

.ghost-badge {
    background: rgba(23, 32, 47, 0.06);
    color: var(--ink-soft);
}

.toolbox-card h3 {
    margin: 0;
    font-size: 1.06rem;
}

.toolbox-card p {
    margin: 0;
    color: var(--ink-soft);
    line-height: 1.66;
    min-height: 3.2em;
}

.toolbox-page-shell {
    display: grid;
    gap: 0.85rem;
}

.toolbox-hero-shell-dual {
    align-items: center;
}

.toolbox-hero-shell-dual .toolbox-hero-copy .lead {
    max-width: 38rem;
}

.toolbox-lane-preview {
    position: relative;
    z-index: 1;
    display: grid;
    gap: 0.75rem;
    max-width: calc(100% - 168px);
}

.toolbox-lane-card {
    display: grid;
    gap: 0.24rem;
    padding: 0.85rem 0.95rem;
    border-radius: 22px;
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.08);
    color: #eef7fb;
}

.toolbox-lane-card.is-primary {
    background: linear-gradient(145deg, rgba(255, 161, 72, 0.22), rgba(255, 255, 255, 0.1));
    border-color: rgba(255, 161, 72, 0.22);
}

.toolbox-lane-card span {
    color: rgba(142, 228, 222, 0.9);
    font-size: 0.76rem;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.toolbox-lane-card strong {
    font-size: 1.1rem;
    letter-spacing: -0.03em;
}

.toolbox-lane-card p {
    margin: 0;
    color: rgba(239, 247, 251, 0.78);
    line-height: 1.55;
    font-size: 0.9rem;
}

.toolbox-dual-section {
    padding-top: 0.4rem;
}

.toolbox-mode-switch {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    padding: 0.4rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.84);
    border: 1px solid rgba(255, 255, 255, 0.76);
    box-shadow: var(--shadow);
}

.toolbox-mode-switch button {
    border: 0;
    padding: 0.78rem 1.2rem;
    border-radius: 999px;
    background: transparent;
    color: var(--ink-soft);
    font: inherit;
    font-weight: 700;
    cursor: pointer;
    transition: 180ms ease;
}

.toolbox-mode-switch button.is-active {
    background: linear-gradient(135deg, var(--brand), #ff9d45);
    color: #fff;
    box-shadow: 0 12px 24px rgba(255, 122, 24, 0.18);
}

.toolbox-mode-pane {
    display: grid;
    gap: 1rem;
    margin-top: 1rem;
}

.toolbox-mode-pane[hidden] {
    display: none;
}

.toolbox-pane-head,
.toolbox-control-bar,
.foundation-capability-card,
.toolbox-summary-card,
.toolbox-empty-card {
    background: rgba(255, 255, 255, 0.84);
    border: 1px solid rgba(255, 255, 255, 0.72);
    box-shadow: var(--shadow);
}

.toolbox-pane-head {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 1rem;
    padding: 1.1rem 1.2rem;
    border-radius: 28px;
}

.toolbox-pane-head h2 {
    margin: 0.28rem 0 0;
    font-size: clamp(1.55rem, 2.2vw, 2.4rem);
    letter-spacing: -0.04em;
}

.toolbox-pane-head p {
    max-width: 30rem;
    margin: 0;
    color: var(--ink-soft);
    line-height: 1.7;
}

.toolbox-mode-summary {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.85rem;
}

.toolbox-summary-card {
    display: grid;
    gap: 0.35rem;
    padding: 1rem;
    border-radius: 24px;
}

.toolbox-summary-card span {
    color: var(--teal);
    font-size: 0.82rem;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.toolbox-summary-card strong {
    font-size: 1.06rem;
}

.toolbox-summary-card p,
.toolbox-summary-card small {
    margin: 0;
    color: var(--ink-soft);
}

.toolbox-control-bar {
    display: grid;
    gap: 0.9rem;
    padding: 1rem;
    border-radius: 28px;
}

.toolbox-surface-search {
    padding: 0;
    border: 0;
    background: none;
}

.toolbox-surface-index {
    gap: 0.6rem;
}

.toolbox-surface-index a {
    background: rgba(23, 32, 47, 0.04);
    border-color: rgba(23, 32, 47, 0.06);
}

.foundation-capability-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.9rem;
}

.foundation-capability-card {
    display: grid;
    gap: 0.65rem;
    padding: 1rem;
    border-radius: 26px;
}

.foundation-capability-card.is-live {
    background:
        radial-gradient(circle at top right, rgba(255, 179, 95, 0.18), transparent 10rem),
        rgba(255, 255, 255, 0.9);
}

.foundation-capability-card.is-planned {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.82), rgba(247, 249, 251, 0.9));
}

.foundation-capability-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.6rem;
}

.foundation-io {
    color: var(--ink-soft);
    font-size: 0.82rem;
    white-space: nowrap;
}

.foundation-capability-card h3 {
    margin: 0;
    font-size: 1.1rem;
}

.foundation-capability-card p {
    margin: 0;
    color: var(--ink-soft);
    line-height: 1.62;
    min-height: 4.8em;
}

.foundation-capability-foot {
    display: flex;
    align-items: baseline;
    gap: 0.45rem;
}

.foundation-capability-foot strong {
    font-size: 1.4rem;
    letter-spacing: -0.04em;
}

.foundation-capability-foot span {
    color: var(--ink-soft);
    font-size: 0.86rem;
}

.foundation-card-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.foundation-tool-card {
    background: rgba(255, 255, 255, 0.9);
}

.foundation-group.is-planned {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.9), rgba(246, 248, 251, 0.95));
}

.foundation-plan-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.55rem 0.85rem;
    border-radius: 999px;
    background: rgba(23, 32, 47, 0.06);
}

.toolbox-empty-card {
    display: grid;
    gap: 0.7rem;
    padding: 1.2rem;
    border-radius: 24px;
}

.toolbox-empty-card strong {
    font-size: 1.05rem;
}

.toolbox-empty-card p {
    margin: 0;
    color: var(--ink-soft);
    line-height: 1.68;
}

.button.is-disabled {
    pointer-events: none;
    opacity: 0.72;
}

.navigation-hero {
    padding-bottom: 0.75rem;
}

.navigation-hero-panel,
.navigation-sidebar-card,
.navigation-group,
.navigation-card {
    background: rgba(255, 255, 255, 0.84);
    border: 1px solid rgba(255, 255, 255, 0.72);
    box-shadow: var(--shadow);
}

.navigation-hero-panel {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 1.5rem;
    padding: 1.5rem;
    border-radius: 30px;
}

.navigation-hero-copy {
    max-width: 760px;
}

.navigation-hero-stats {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.85rem;
    min-width: 260px;
}

.navigation-stat-card {
    padding: 1rem 1.1rem;
    border-radius: 22px;
    background: rgba(23, 32, 47, 0.04);
    border: 1px solid var(--line);
}

.navigation-stat-card strong {
    display: block;
    font-size: 1.8rem;
    letter-spacing: -0.05em;
}

.navigation-filter-bar {
    display: grid;
    gap: 1rem;
    margin-top: 1.1rem;
}

.navigation-search {
    display: grid;
    gap: 0.5rem;
}

.navigation-search span {
    font-weight: 700;
}

.navigation-search input {
    width: 100%;
    padding: 0.95rem 1rem;
    border-radius: 18px;
    border: 1px solid var(--line);
    background: rgba(255, 255, 255, 0.82);
}

.navigation-mobile-index {
    display: none;
    gap: 0.7rem;
    overflow-x: auto;
    padding-bottom: 0.25rem;
}

.navigation-mobile-chip {
    flex: 0 0 auto;
    padding: 0.68rem 0.95rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.88);
    border: 1px solid var(--line);
    color: var(--ink-soft);
    font-size: 0.92rem;
}

.navigation-section-wrap {
    padding-top: 1.5rem;
}

.navigation-shell {
    display: grid;
    grid-template-columns: 260px minmax(0, 1fr);
    gap: 1.25rem;
    align-items: start;
}

.navigation-sidebar {
    position: sticky;
    top: 6rem;
}

.navigation-sidebar-card {
    border-radius: 28px;
    padding: 1.2rem;
}

.navigation-sidebar-head {
    margin-bottom: 1rem;
}

.navigation-sidebar-head h2 {
    margin: 0.3rem 0 0;
    font-size: 1.45rem;
}

.navigation-index {
    display: grid;
    gap: 0.55rem;
}

.navigation-index-link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.85rem;
    padding: 0.88rem 0.95rem;
    border-radius: 18px;
    background: rgba(23, 32, 47, 0.03);
    color: var(--ink-soft);
    transition: transform 0.16s ease, background 0.16s ease, color 0.16s ease;
}

.navigation-index-link:hover,
.navigation-index-link.active {
    background: rgba(255, 122, 24, 0.12);
    color: var(--ink);
    transform: translateX(2px);
}

.navigation-index-link strong {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 34px;
    padding: 0.3rem 0.5rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.88);
    font-size: 0.8rem;
}

.navigation-main {
    display: grid;
    gap: 1.2rem;
}

.navigation-group {
    padding: 1.2rem;
    border-radius: 28px;
    scroll-margin-top: 6.5rem;
}

.navigation-group-head {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1rem;
}

.navigation-group-head h2 {
    margin: 0.35rem 0 0;
    font-size: 1.1rem;
    line-height: 1.6;
    color: var(--ink-soft);
    font-weight: 500;
}

.navigation-count {
    flex: 0 0 auto;
    padding: 0.5rem 0.8rem;
    border-radius: 999px;
    background: rgba(23, 32, 47, 0.06);
    color: var(--ink-soft);
    font-size: 0.85rem;
}

.navigation-card-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(210px, 1fr));
    gap: 0.8rem;
}

.navigation-card {
    display: grid;
    gap: 0.75rem;
    padding: 0.95rem;
    border-radius: 22px;
    min-height: 160px;
    transition: transform 0.16s ease, box-shadow 0.16s ease, border-color 0.16s ease;
}

.navigation-card:hover {
    transform: translateY(-3px);
    border-color: rgba(255, 122, 24, 0.28);
    box-shadow: 0 18px 40px rgba(23, 32, 47, 0.1);
}

.navigation-card-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.7rem;
}

.navigation-card-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    border-radius: 14px;
    overflow: hidden;
    background: linear-gradient(135deg, rgba(255, 122, 24, 0.14), rgba(15, 118, 110, 0.12));
    color: var(--teal);
    font-weight: 700;
    font-size: 0.88rem;
}

.navigation-card-icon-text {
    display: none;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
}

.navigation-card-icon.is-text-visible .navigation-card-icon-text {
    display: inline-flex;
}

.navigation-card-icon.is-text-visible img {
    display: none;
}

.navigation-card-icon img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 0;
}

.navigation-card-copy h3 {
    margin: 0;
    font-size: 1rem;
}

.navigation-card-copy small {
    display: inline-block;
    margin-top: 0.25rem;
    color: var(--teal);
    font-size: 0.76rem;
    letter-spacing: 0.02em;
}

.navigation-card-copy p {
    margin: 0.55rem 0 0;
    color: var(--ink-soft);
    line-height: 1.55;
    font-size: 0.9rem;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.navigation-group[hidden],
.navigation-card[hidden] {
    display: none;
}

.flash-stack {
    display: grid;
    gap: 0.75rem;
    margin-top: 1rem;
}

.flash {
    padding: 0.95rem 1.1rem;
    border-radius: 18px;
    border: 1px solid var(--line);
}

.flash-success {
    background: rgba(15, 118, 110, 0.12);
}

.flash-error {
    background: rgba(220, 38, 38, 0.12);
}

.site-footer {
    padding: 3rem 0 4rem;
}

.footer-grid {
    display: grid;
    grid-template-columns: 1.3fr 1fr 1fr;
    gap: 1.5rem;
}

.footer-brand {
    margin-bottom: 1rem;
}

.auth-screen {
    min-height: 100vh;
    display: grid;
    place-items: center;
    padding: 2rem;
}

.auth-card {
    width: min(100%, 520px);
}

.theme-admin {
    background:
        radial-gradient(circle at top left, rgba(15, 118, 110, 0.1), transparent 28rem),
        linear-gradient(180deg, #f7f7fb, #efeff5);
}

.admin-shell {
    min-height: 100vh;
    display: grid;
    grid-template-columns: 290px 1fr;
}

.admin-sidebar {
    padding: 1.4rem;
    border-right: 1px solid var(--line);
    background: rgba(255, 255, 255, 0.84);
    backdrop-filter: blur(18px);
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.admin-main {
    padding: 1.5rem;
}

.admin-brand {
    margin-bottom: 0.6rem;
}

.admin-user-card {
    display: flex;
    align-items: center;
    gap: 0.8rem;
    padding: 1rem;
    border-radius: 20px;
    background: rgba(23, 32, 47, 0.04);
}

.avatar-dot {
    width: 14px;
    height: 14px;
    border-radius: 999px;
    background: linear-gradient(135deg, var(--brand), var(--gold));
    box-shadow: 0 0 0 6px rgba(255, 122, 24, 0.14);
}

.admin-nav {
    display: grid;
    gap: 0.35rem;
}

.admin-nav a,
.admin-logout {
    padding: 0.9rem 1rem;
    border-radius: 16px;
    color: var(--ink-soft);
}

.admin-nav a.active,
.admin-nav a:hover {
    color: var(--ink);
    background: rgba(23, 32, 47, 0.06);
}

.admin-head {
    margin-bottom: 1rem;
}

.admin-section {
    display: grid;
    gap: 1rem;
}

.details-card {
    border: 1px solid var(--line);
    border-radius: 22px;
    background: rgba(255, 255, 255, 0.72);
}

.details-card summary {
    cursor: pointer;
    list-style: none;
    padding: 1rem 1.2rem;
    display: flex;
    justify-content: space-between;
    gap: 1rem;
}

.details-card[open] summary {
    border-bottom: 1px solid var(--line);
}

.details-card > :not(summary) {
    padding: 1rem 1.2rem 1.2rem;
}

.table-wrap {
    overflow-x: auto;
}

.table {
    width: 100%;
    border-collapse: collapse;
}

.table th,
.table td {
    text-align: left;
    padding: 0.9rem;
    border-bottom: 1px solid var(--line);
}

@media (max-width: 1080px) {
    .card-grid,
    .process-grid,
    .nav-preview-grid,
    .toolbox-card-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .hero-grid,
    .split-grid,
    .tool-layout,
    .admin-two-col,
    .footer-grid,
    .admin-shell {
        grid-template-columns: 1fr;
    }

    .admin-sidebar {
        border-right: 0;
        border-bottom: 1px solid var(--line);
    }

    .navigation-shell,
    .navigation-hero-panel {
        grid-template-columns: 1fr;
    }

    .navigation-hero-panel {
        display: grid;
    }

    .toolbox-hero-shell {
        grid-template-columns: 1fr;
    }

    .toolbox-search-compact,
    .toolbox-index-compact {
        max-width: calc(100% - 156px);
    }

    .toolbox-hero-stage {
        min-height: 220px;
    }

    .toolbox-lane-preview {
        max-width: calc(100% - 156px);
    }

    .toolbox-mode-summary,
    .foundation-capability-grid,
    .foundation-card-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .toolbox-pane-head {
        display: grid;
        align-items: start;
    }

    .navigation-sidebar {
        display: none;
    }

    .navigation-mobile-index {
        display: flex;
    }

    .home-hero-shell,
    .home-hero-shell-v2,
    .home-story-shell {
        grid-template-columns: 1fr;
    }

    .home-value-grid,
    .home-nav-grid,
    .home-promise-grid,
    .home-promise-strip,
    .home-outcome-grid,
    .home-tool-grid-compact,
    .home-proof-shell,
    .home-stage-strip {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .home-hero-copy h1 {
        max-width: 13ch;
    }

    .home-cat-stage {
        grid-template-columns: 1fr;
    }

    .home-cat-visual {
        min-height: 390px;
    }
}

@media (max-width: 760px) {
    .site-nav {
        position: absolute;
        top: calc(100% + 0.5rem);
        left: 1rem;
        right: 1rem;
        display: none;
        flex-direction: column;
        align-items: stretch;
        padding: 0.75rem;
        background: rgba(255, 250, 243, 0.98);
        border: 1px solid var(--line);
        border-radius: 22px;
        box-shadow: var(--shadow);
    }

    .site-nav.open {
        display: flex;
    }

    .nav-toggle {
        display: inline-flex;
    }

    .card-grid,
    .process-grid,
    .nav-preview-grid,
    .toolbox-card-grid,
    .form-grid.two,
    .stat-grid,
    .metric-grid {
        grid-template-columns: 1fr;
    }

    .hero-card-main {
        grid-template-columns: 1fr;
    }

    .home-hero-shell,
    .home-hero-shell-v2,
    .home-hero-note-grid,
    .home-value-grid,
    .home-flow-grid,
    .home-tool-grid,
    .home-story-shell,
    .home-nav-grid,
    .home-promise-grid,
    .home-promise-strip,
    .home-outcome-grid,
    .home-tool-grid-compact,
    .home-proof-shell,
    .home-stage-strip {
        grid-template-columns: 1fr;
    }

    .home-hero-copy h1,
    .home-cta-panel h2 {
        max-width: none;
    }

    .home-platform-row {
        gap: 0.5rem;
    }

    .home-cat-stage,
    .home-position-panel,
    .home-proof-panel,
    .home-cta-panel-v2 {
        padding: 1rem;
    }

    .home-cat-visual {
        min-height: 340px;
    }

    .smart-cat {
        width: 204px;
        height: 252px;
    }

    .smart-cat-ear {
        width: 68px;
        height: 82px;
        top: 20px;
    }

    .smart-cat-face {
        width: 160px;
        height: 154px;
        bottom: 28px;
    }

    .smart-cat-eye {
        top: 64px;
        width: 14px;
        height: 6px;
    }

    .smart-cat-eye-left {
        left: 48px;
    }

    .smart-cat-eye-right {
        right: 48px;
    }

    .smart-cat-nose {
        top: 94px;
    }

    .smart-cat-mouth {
        top: 106px;
    }

    .smart-cat-whisker {
        width: 44px;
    }

    .cat-orbit-a {
        width: 260px;
        height: 260px;
    }

    .cat-orbit-b {
        width: 210px;
        height: 210px;
    }

    .cat-orbit-c {
        width: 162px;
        height: 162px;
    }

    .cat-floating-chip-c {
        right: 30px;
        bottom: 28px;
    }

    .navigation-hero-stats,
    .navigation-card-grid {
        grid-template-columns: 1fr;
    }

    .toolbox-page-hero {
        padding-top: 1.3rem;
    }

    .toolbox-hero-shell,
    .toolbox-hero-console {
        padding: 0.92rem;
    }

    .toolbox-hero-stage {
        min-height: auto;
    }

    .toolbox-hero-meta {
        gap: 0.55rem;
        margin-top: 0.82rem;
    }

    .toolbox-search-compact,
    .toolbox-index-compact {
        max-width: none;
    }

    .toolbox-lane-preview {
        max-width: none;
    }

    .toolbox-mode-switch {
        display: grid;
        grid-template-columns: 1fr 1fr;
        width: 100%;
    }

    .toolbox-mode-switch button {
        width: 100%;
    }

    .toolbox-pane-head,
    .toolbox-control-bar {
        padding: 0.95rem;
    }

    .toolbox-mode-summary,
    .foundation-capability-grid,
    .foundation-card-grid {
        grid-template-columns: 1fr;
    }

    .toolbox-cat-pocket {
        position: relative;
        right: auto;
        bottom: auto;
        width: 100%;
        height: 128px;
        margin-top: 0.45rem;
    }

    .toolbox-cat-grid {
        inset: 8px 0 0;
    }

    .toolbox-cat-chip-a {
        left: 0;
        top: 10px;
    }

    .toolbox-cat-chip-b {
        right: 8px;
        bottom: 8px;
    }

    .toolbox-cat-ear {
        width: 34px;
        height: 44px;
        top: 18px;
    }

    .toolbox-cat-ear-left {
        left: 36px;
    }

    .toolbox-cat-ear-right {
        right: 36px;
    }

    .toolbox-cat-face {
        width: 80px;
        height: 78px;
        bottom: 20px;
    }

    .toolbox-cat-eye {
        top: 33px;
        width: 7px;
        height: 3px;
    }

    .toolbox-cat-eye-left {
        left: 23px;
    }

    .toolbox-cat-eye-right {
        right: 23px;
    }

    .toolbox-cat-nose {
        top: 46px;
    }

    .toolbox-cat-mouth {
        top: 56px;
    }

    .foundation-capability-card p {
        min-height: auto;
    }

    .toolbox-group-head {
        display: grid;
        align-items: start;
    }

    .toolbox-card p {
        min-height: auto;
    }

    .navigation-group-head {
        display: grid;
        align-items: start;
    }

    .navigation-card {
        min-height: auto;
    }
}

.site-nav-cta {
    margin-left: 0.2rem;
}

.site-announce-bar {
    border-top: 1px solid rgba(255, 255, 255, 0.62);
    background: linear-gradient(180deg, rgba(255, 122, 24, 0.08), rgba(255, 255, 255, 0.02));
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.42);
}

.site-announce-inner {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.72rem 0;
}

.site-announce-inner p {
    margin: 0;
    color: var(--ink-soft);
    line-height: 1.6;
}

.site-announce-label {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.35rem 0.72rem;
    border-radius: 999px;
    background: rgba(255, 122, 24, 0.12);
    color: var(--brand-dark);
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.launch-stat-grid,
.launch-surface-shell,
.category-pill-grid,
.resource-feature-grid,
.faq-shell,
.story-timeline {
    display: grid;
    gap: 1rem;
}

.launch-stat-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-top: 1.1rem;
}

.launch-stat-card,
.launch-surface-panel,
.category-pill-card,
.resource-feature-card,
.tool-detail-hero-shell,
.tool-detail-brief,
.tool-detail-note,
.timeline-card,
.faq-panel,
.faq-item,
.news-feature-card,
.showcase-story-card,
.news-story-card {
    background: rgba(255, 255, 255, 0.86);
    border: 1px solid rgba(255, 255, 255, 0.72);
    box-shadow: var(--shadow);
}

.launch-stat-card {
    padding: 1rem 1.1rem;
    border-radius: 22px;
}

.launch-stat-card strong {
    display: block;
    font-size: 1.7rem;
    letter-spacing: -0.05em;
}

.launch-stat-card span {
    color: var(--ink-soft);
}

.launch-surface-section {
    padding-top: 0;
}

.launch-surface-shell {
    grid-template-columns: 1.1fr 1fr;
}

.launch-surface-panel,
.faq-panel,
.news-feature-card,
.tool-detail-hero-shell {
    padding: 1.25rem;
    border-radius: 30px;
}

.category-pill-grid,
.resource-feature-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.category-pill-card,
.resource-feature-card,
.timeline-card,
.tool-detail-brief,
.tool-detail-note {
    padding: 1rem 1.05rem;
    border-radius: 24px;
}

.category-pill-card strong,
.resource-feature-card strong,
.tool-detail-brief strong,
.tool-detail-note h3,
.timeline-card h3 {
    display: block;
    margin: 0 0 0.55rem;
    font-size: 1rem;
}

.category-pill-card p,
.resource-feature-card p,
.tool-detail-brief p,
.tool-detail-note p,
.timeline-card p {
    margin: 0;
    color: var(--ink-soft);
    line-height: 1.65;
}

.resource-feature-card small {
    display: inline-block;
    margin-top: 0.7rem;
    color: var(--teal);
    font-weight: 600;
}

.editorial-hero .lead,
.tool-detail-hero .lead {
    max-width: 760px;
}

.showcase-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.showcase-story-card,
.news-story-card {
    min-height: 100%;
}

.faq-shell {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.faq-list {
    display: grid;
    gap: 0.85rem;
}

.faq-item {
    border-radius: 24px;
    overflow: hidden;
}

.faq-item summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 1rem 1.1rem;
    cursor: pointer;
    list-style: none;
}

.faq-item summary span {
    color: var(--ink-soft);
    font-size: 0.9rem;
}

.faq-item[open] summary {
    border-bottom: 1px solid rgba(23, 32, 47, 0.08);
}

.faq-answer {
    padding: 1rem 1.1rem 1.15rem;
}

.faq-answer p {
    margin: 0 0 0.8rem;
    color: var(--ink-soft);
}

.news-feature-section {
    padding-top: 0;
}

.news-feature-card h2 {
    margin: 0.6rem 0 0.9rem;
    font-size: clamp(2rem, 5vw, 2.8rem);
    line-height: 1.1;
}

.news-feature-card p {
    max-width: 760px;
    margin: 0 0 1rem;
    color: var(--ink-soft);
    line-height: 1.7;
}

.news-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.tool-detail-hero {
    padding-bottom: 1.6rem;
}

.tool-detail-hero-shell {
    display: grid;
    grid-template-columns: 1.2fr 0.8fr;
    gap: 1.15rem;
}

.tool-detail-meta {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.tool-detail-hero-side,
.tool-detail-side-stack {
    display: grid;
    gap: 0.9rem;
}

.tool-detail-side-stack {
    margin-top: 1rem;
}

.footer-summary {
    max-width: 38rem;
}

@media (max-width: 1080px) {
    .launch-stat-grid,
    .news-grid,
    .showcase-grid,
    .faq-shell,
    .launch-surface-shell,
    .tool-detail-hero-shell {
        grid-template-columns: 1fr 1fr;
    }

    .launch-surface-shell,
    .faq-shell {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 760px) {
    .site-announce-inner {
        display: grid;
        gap: 0.45rem;
    }

    .launch-stat-grid,
    .category-pill-grid,
    .resource-feature-grid,
    .showcase-grid,
    .news-grid,
    .tool-detail-hero-shell {
        grid-template-columns: 1fr;
    }

    .launch-surface-panel,
    .faq-panel,
    .tool-detail-hero-shell,
    .news-feature-card {
        padding: 1rem;
    }

    .news-feature-card h2 {
        font-size: 1.7rem;
    }
}

.home-refresh-hero {
    padding-top: 4.8rem;
    padding-bottom: 2.2rem;
}

.home-refresh-hero-shell {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1.14fr) minmax(320px, 0.86fr);
    gap: 1.2rem;
    align-items: start;
}

.home-refresh-copy {
    display: grid;
    align-content: start;
    gap: 1rem;
    padding: 0.2rem 0;
}

.home-refresh-copy h1 {
    margin: 0;
    max-width: 10ch;
    font-size: clamp(3rem, 5.3vw, 5.25rem);
    line-height: 0.94;
    letter-spacing: -0.06em;
}

.home-refresh-copy .lead {
    max-width: 37rem;
    margin: 0;
}

.home-refresh-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 0.7rem;
}

.home-refresh-tags span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.58rem 0.92rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.7);
    border: 1px solid rgba(23, 32, 47, 0.08);
    color: var(--ink-soft);
    backdrop-filter: blur(14px);
}

.home-refresh-stats {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
    gap: 0.85rem;
}

.home-refresh-stat,
.home-module-card,
.home-curated-card,
.home-refresh-cta {
    background: rgba(255, 255, 255, 0.84);
    border: 1px solid rgba(255, 255, 255, 0.74);
    box-shadow: var(--shadow);
}

.home-refresh-stat {
    display: grid;
    gap: 0.35rem;
    min-height: 124px;
    padding: 1rem 1.05rem;
    border-radius: 24px;
}

.home-refresh-stat strong {
    display: block;
    font-size: clamp(1.75rem, 3vw, 2.15rem);
    letter-spacing: -0.06em;
}

.home-refresh-stat span {
    color: var(--ink-soft);
    line-height: 1.55;
}

.home-refresh-side {
    display: grid;
    gap: 1rem;
}

.home-surface-card {
    position: relative;
    overflow: hidden;
    padding: 1.3rem;
    border-radius: 32px;
    background: rgba(255, 255, 255, 0.84);
    border: 1px solid rgba(255, 255, 255, 0.76);
    box-shadow: var(--shadow);
}

.home-surface-card::before {
    content: "";
    position: absolute;
    inset: 0 auto auto 0;
    width: 12rem;
    height: 12rem;
    background: radial-gradient(circle, rgba(255, 122, 24, 0.12), transparent 70%);
    pointer-events: none;
}

.home-mini-head,
.home-panel-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
}

.home-hero-summary {
    background:
        radial-gradient(circle at top left, rgba(255, 179, 95, 0.18), transparent 14rem),
        linear-gradient(180deg, rgba(20, 30, 44, 0.98), rgba(14, 24, 38, 0.94));
    border-color: rgba(88, 198, 255, 0.14);
    color: #f4fbff;
}

.home-hero-summary::before {
    background: radial-gradient(circle, rgba(88, 198, 255, 0.14), transparent 70%);
}

.home-hero-summary .badge,
.home-hero-summary .eyebrow {
    color: #d4f6ff;
    background: rgba(255, 255, 255, 0.08);
}

.home-hero-summary h2,
.home-panel-head h3,
.home-refresh-cta h2 {
    margin: 0;
    letter-spacing: -0.04em;
}

.home-hero-summary h2 {
    margin-top: 0.85rem;
    font-size: clamp(1.65rem, 2.3vw, 2.3rem);
    line-height: 1.04;
}

.home-hero-summary > p {
    margin: 0.7rem 0 0;
    color: rgba(244, 251, 255, 0.76);
    line-height: 1.68;
}

.home-summary-list {
    display: grid;
    gap: 0.8rem;
    margin-top: 1.1rem;
}

.home-summary-item {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 0.9rem;
    padding: 0.92rem 1rem;
    border-radius: 22px;
    background: rgba(255, 255, 255, 0.06);
    border: 1px solid rgba(255, 255, 255, 0.08);
}

.home-summary-item > span,
.home-module-index {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border-radius: 14px;
    font-weight: 800;
    letter-spacing: -0.03em;
}

.home-summary-item > span {
    background: rgba(255, 255, 255, 0.1);
    color: #fff;
}

.home-summary-item strong,
.home-sequence-item strong,
.home-module-card strong,
.home-link-item strong,
.home-story-item h3,
.home-news-item h3,
.home-curated-card h3 {
    display: block;
    margin: 0;
}

.home-summary-item p {
    margin: 0.3rem 0 0;
    color: rgba(244, 251, 255, 0.72);
    line-height: 1.58;
}

.home-hero-sequence {
    background:
        radial-gradient(circle at top center, rgba(255, 179, 95, 0.2), transparent 14rem),
        linear-gradient(145deg, rgba(255, 255, 255, 0.94), rgba(255, 244, 231, 0.92));
}

.home-sequence-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
    gap: 0.8rem;
    margin-top: 1rem;
}

.home-sequence-item,
.home-link-item,
.home-story-item,
.home-news-item {
    display: grid;
    gap: 0.35rem;
    padding: 0.95rem 1rem;
    border-radius: 22px;
    background: rgba(23, 32, 47, 0.04);
    border: 1px solid rgba(23, 32, 47, 0.06);
}

.home-sequence-item small {
    color: var(--brand-dark);
    font-size: 0.8rem;
    font-weight: 700;
    letter-spacing: 0.08em;
}

.home-sequence-item p,
.home-module-card p,
.home-curated-card p,
.home-link-item p,
.home-story-item p,
.home-news-item p,
.home-refresh-cta p {
    margin: 0;
    color: var(--ink-soft);
    line-height: 1.68;
}

.home-refresh-section {
    padding-top: 1.8rem;
}

.home-tools-section {
    padding-top: 1.2rem;
}

.home-module-grid,
.home-curated-grid,
.home-library-grid {
    display: grid;
    gap: 1rem;
}

.home-module-grid {
    grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
}

.home-module-card {
    display: grid;
    gap: 0.9rem;
    min-height: 220px;
    padding: 1.15rem;
    border-radius: 28px;
}

.home-module-index {
    background: linear-gradient(135deg, rgba(255, 122, 24, 0.14), rgba(88, 198, 255, 0.14));
    color: var(--teal);
}

.home-curated-grid {
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
}

.home-curated-card {
    display: grid;
    gap: 0.85rem;
    min-height: 210px;
    padding: 1.2rem;
    border-radius: 28px;
    transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease;
}

.home-curated-card:hover,
.home-link-item:hover {
    transform: translateY(-2px);
    box-shadow: 0 22px 48px rgba(23, 32, 47, 0.12);
}

.home-curated-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.home-curated-arrow {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    border-radius: 999px;
    background: rgba(23, 32, 47, 0.06);
    color: var(--ink);
    font-size: 1rem;
}

.home-library-section {
    padding-top: 1.2rem;
}

.home-library-grid {
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    align-items: stretch;
}

.home-library-panel {
    display: grid;
    align-content: start;
    gap: 1rem;
    min-height: 100%;
}

.home-panel-head h3 {
    margin-top: 0.35rem;
    font-size: clamp(1.35rem, 2vw, 1.7rem);
    line-height: 1.1;
}

.home-link-list,
.home-story-list-refresh,
.home-news-list-refresh {
    display: grid;
    gap: 0.75rem;
}

.home-link-item,
.home-story-item,
.home-news-item {
    position: relative;
    overflow: hidden;
}

.home-link-item small {
    color: var(--teal);
    font-weight: 700;
}

.home-story-item .story-meta strong {
    color: var(--brand-dark);
}

.home-news-item .story-meta small {
    color: var(--ink-soft);
}

.home-refresh-cta {
    padding: 2.2rem 1.4rem;
    border-radius: 36px;
    text-align: center;
    background:
        radial-gradient(circle at top center, rgba(255, 179, 95, 0.24), transparent 18rem),
        radial-gradient(circle at 82% 24%, rgba(88, 198, 255, 0.12), transparent 14rem),
        linear-gradient(145deg, rgba(255, 255, 255, 0.96), rgba(255, 244, 231, 0.92));
}

.home-refresh-cta h2 {
    max-width: 16ch;
    margin: 0.45rem auto 0;
    font-size: clamp(2rem, 3.4vw, 3.35rem);
    line-height: 0.98;
}

.home-refresh-cta p {
    max-width: 42rem;
    margin: 0.95rem auto 0;
}

.home-refresh-cta .button-row {
    justify-content: center;
    margin-top: 1.3rem;
}

@media (max-width: 1180px) {
    .home-refresh-hero-shell {
        grid-template-columns: 1fr;
    }

    .home-refresh-copy h1 {
        max-width: 11ch;
    }
}

@media (max-width: 760px) {
    .home-refresh-hero {
        padding-top: 3.8rem;
        padding-bottom: 1.4rem;
    }

    .home-refresh-copy h1 {
        max-width: none;
        font-size: clamp(2.35rem, 12vw, 3.45rem);
    }

    .home-surface-card,
    .home-refresh-cta {
        padding: 1rem;
        border-radius: 28px;
    }

    .home-summary-item {
        grid-template-columns: 1fr;
    }

    .home-mini-head,
    .home-panel-head {
        display: grid;
    }

    .home-refresh-section .section-head,
    .home-tools-section .section-head,
    .home-library-section .section-head {
        display: grid;
        align-items: flex-start;
    }

    .home-refresh-stats,
    .home-sequence-grid {
        grid-template-columns: 1fr;
    }

    .home-module-card,
    .home-curated-card {
        min-height: auto;
    }

    .home-refresh-cta h2 {
        max-width: none;
    }
}

body {
    min-height: 100vh;
    line-height: 1.5;
    overflow-x: hidden;
}

.page-shell {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    overflow-x: clip;
}

main {
    flex: 1;
    display: block;
    min-width: 0;
}

.section {
    padding: clamp(2.75rem, 5vw, 4rem) 0;
}

.page-hero {
    padding-top: clamp(2.25rem, 4vw, 3.2rem);
}

.section-head {
    flex-wrap: wrap;
    align-items: flex-end;
}

.section-head h2,
.panel-head h2,
.toolbox-group-head h2 {
    line-height: 1.08;
}

.story-meta,
.panel-head,
.tool-card-top,
.toolbox-card-top,
.toolbox-card-footer,
.toolbox-group-head,
.navigation-group-head {
    flex-wrap: wrap;
}

.hero-grid,
.split-grid,
.tool-layout {
    align-items: start;
}

.card-grid,
.showcase-grid,
.news-grid,
.faq-shell {
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    align-items: stretch;
}

.toolbox-card-grid,
.foundation-card-grid {
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
}

.navigation-card-grid {
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

.tool-layout {
    grid-template-columns: minmax(0, 0.94fr) minmax(0, 1.06fr);
}

.story-card,
.tool-card,
.nav-cluster,
.nav-link-card,
.nav-tool-card,
.editor-panel,
.result-panel,
.toolbox-group,
.navigation-group,
.faq-panel,
.launch-surface-panel,
.tool-detail-hero-shell {
    min-height: 100%;
}

.footer-grid > div,
.toolbox-page-shell,
.navigation-main {
    min-width: 0;
}

.related-tools {
    display: grid;
    gap: 0.9rem;
}

.related-tools h3 {
    margin: 0;
}

.site-footer {
    margin-top: auto;
}

.home-stable-hero {
    padding-top: 4rem;
    padding-bottom: 2rem;
}

.home-stable-hero-grid {
    align-items: stretch;
}

.home-stable-copy {
    display: grid;
    align-content: center;
    gap: 1rem;
}

.home-stable-chip-row {
    margin-top: 0.1rem;
}

.home-stable-chip-row .chip {
    padding: 0.55rem 0.85rem;
    background: rgba(255, 255, 255, 0.74);
    border: 1px solid rgba(23, 32, 47, 0.08);
}

.home-stable-stage {
    padding: 1.25rem;
}

.home-stable-stage .panel-head {
    align-items: flex-start;
    margin-bottom: 1rem;
}

.home-stable-stage .panel-head h2 {
    max-width: 16ch;
}

.home-stable-stat-grid {
    margin-top: 0;
}

.home-stable-step-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.home-stable-step-card,
.home-stable-panel,
.home-stable-module-card {
    min-height: 100%;
}

.home-stable-step-card p,
.home-stable-module-card p,
.home-stable-list-card p,
.nav-link-card p {
    margin: 0.35rem 0 0;
    color: var(--ink-soft);
    line-height: 1.65;
}

.home-stable-module-grid {
    grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
}

.home-stable-section {
    padding-top: 1.25rem;
}

.home-stable-module-card {
    display: grid;
    gap: 0.8rem;
}

.home-stable-surface-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.home-stable-list-card {
    padding: 1rem;
    border-radius: 20px;
    background: rgba(23, 32, 47, 0.04);
    border: 1px solid rgba(23, 32, 47, 0.06);
}

.home-stable-list-card h3 {
    margin: 0;
    font-size: 1.02rem;
}

.home-stable-list-card .story-meta {
    margin-bottom: 0.65rem;
}

.home-stable-list-card .story-meta strong {
    color: var(--brand-dark);
}

.home-stable-cta h2 {
    max-width: 13ch;
}

@media (max-width: 1080px) {
    .home-stable-step-grid,
    .home-stable-surface-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    .section {
        padding: 2.35rem 0;
    }

    .hero-stage,
    .tool-card,
    .story-card,
    .nav-cluster,
    .editor-panel,
    .result-panel,
    .toolbox-group,
    .navigation-group,
    .faq-panel,
    .news-feature-card,
    .launch-surface-panel,
    .tool-detail-hero-shell {
        padding: 1rem;
        border-radius: 24px;
    }

    .panel-head,
    .section-head,
    .toolbox-pane-head,
    .toolbox-group-head,
    .navigation-group-head {
        display: grid;
        align-items: flex-start;
    }

    .toolbox-card-footer,
    .nav-link-card,
    .nav-tool-card {
        display: grid;
        align-items: flex-start;
    }

    .home-stable-hero {
        padding-top: 3.4rem;
    }

    .home-stable-step-grid,
    .home-stable-surface-grid {
        grid-template-columns: 1fr;
    }

    .home-stable-stage .panel-head h2,
    .home-stable-cta h2 {
        max-width: none;
    }

    .home-stable-hero .button-row,
    .home-stable-cta .button-row {
        flex-direction: column;
    }

    .home-stable-hero .button-row .button,
    .home-stable-cta .button-row .button {
        width: 100%;
    }
}

:root {
    --bg: #fff7ec;
    --bg-soft: #fffdf9;
    --ink: #182033;
    --ink-soft: #616b82;
    --line: rgba(24, 32, 51, 0.08);
    --card: rgba(255, 255, 255, 0.84);
    --brand: #ff8c4b;
    --brand-dark: #f36d2c;
    --teal: #18b29a;
    --gold: #ffd06d;
    --shadow: 0 28px 70px rgba(24, 32, 51, 0.1);
    --radius-xl: 34px;
    --radius-lg: 26px;
    --radius-md: 18px;
    --container: 1220px;
}

body {
    color: var(--ink);
    font-family: "SF Pro Display", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
    background:
        radial-gradient(circle at top left, rgba(255, 140, 75, 0.18), transparent 28rem),
        radial-gradient(circle at 85% 12%, rgba(24, 178, 154, 0.1), transparent 24rem),
        linear-gradient(180deg, #fffdf8 0%, #fff7ec 48%, #fffaf3 100%);
}

img,
video {
    border-radius: 24px;
}

.container {
    width: min(calc(100% - 2rem), var(--container));
}

.site-header {
    position: sticky;
    overflow: visible;
    backdrop-filter: blur(20px);
    background: rgba(255, 252, 247, 0.82);
    box-shadow: 0 10px 28px rgba(24, 32, 51, 0.04);
}

.site-header-glow {
    position: absolute;
    border-radius: 999px;
    filter: blur(24px);
    pointer-events: none;
    opacity: 0.64;
}

.site-header-glow-a {
    width: 160px;
    height: 56px;
    left: 8%;
    top: -12px;
    background: rgba(255, 140, 75, 0.18);
}

.site-header-glow-b {
    width: 180px;
    height: 60px;
    right: 10%;
    top: -10px;
    background: rgba(24, 178, 154, 0.12);
}

.header-inner {
    position: relative;
    z-index: 1;
    overflow: visible;
    padding: 1rem 0;
}

.header-actions {
    position: relative;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    gap: 0.6rem;
    margin-left: 0.65rem;
}

.brand {
    gap: 0.72rem;
    padding: 0.34rem 0.78rem 0.34rem 0.38rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.76);
    border: 1px solid rgba(24, 32, 51, 0.06);
    box-shadow: 0 12px 28px rgba(24, 32, 51, 0.06);
}

.brand-mark {
    display: grid;
    place-items: center;
    width: 52px;
    height: 52px;
    border-radius: 18px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(255, 248, 239, 0.96));
    border: 1px solid rgba(24, 32, 51, 0.06);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.98),
        0 10px 22px rgba(24, 32, 51, 0.06);
}

.brand-mark::before {
    inset: 7px;
    border-radius: 14px;
    border: 1px solid rgba(24, 32, 51, 0.04);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.52), rgba(255, 255, 255, 0.08));
}

.brand-mark::after {
    top: auto;
    right: 8px;
    bottom: 8px;
    width: 10px;
    height: 10px;
    background: rgba(24, 178, 154, 0.16);
    animation: none;
}

.brand-mark img {
    position: relative;
    z-index: 2;
    width: 74%;
    height: 74%;
    object-fit: contain;
    animation: none;
}

.brand-copy strong {
    font-size: 1rem;
    letter-spacing: -0.02em;
}

.brand-copy small {
    font-size: 0.74rem;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.site-nav {
    margin-left: auto;
    gap: 0.5rem;
}

.site-nav-head {
    display: none;
}

.site-nav a,
.ghost-link {
    padding: 0.78rem 1rem;
    color: var(--ink-soft);
    font-weight: 600;
}

.site-nav a:hover,
.site-nav a.active,
.ghost-link:hover {
    color: var(--ink);
    background: rgba(24, 32, 51, 0.05);
}

.site-nav-cta {
    margin-left: 0.35rem;
}

.button {
    padding: 0.92rem 1.3rem;
    border-radius: 999px;
    background: linear-gradient(135deg, #ff9959, #ff7c3a 58%, #ff6a2d);
    box-shadow: 0 16px 32px rgba(255, 124, 58, 0.22);
    transition: transform 180ms ease, box-shadow 180ms ease, filter 180ms ease;
}

.button:hover {
    transform: translateY(-2px);
    box-shadow: 0 20px 36px rgba(255, 124, 58, 0.28);
    filter: saturate(1.03);
}

.button.secondary {
    background: linear-gradient(135deg, #18b29a, #36c4b0);
    box-shadow: 0 16px 32px rgba(24, 178, 154, 0.18);
}

.button.ghost,
.section-link {
    background: rgba(255, 255, 255, 0.78);
    border: 1px solid rgba(24, 32, 51, 0.08);
}

.button.ghost:hover,
.section-link:hover {
    background: rgba(255, 255, 255, 0.94);
}

.section-head h2,
.panel-head h2,
.toolbox-group-head h2,
.navigation-group-head h2,
.news-feature-card h2 {
    letter-spacing: -0.045em;
}

.hero-surface,
.story-card,
.tool-card,
.nav-cluster,
.nav-link-card,
.nav-tool-card,
.editor-panel,
.result-panel,
.toolbox-group,
.toolbox-pane-head,
.toolbox-control-bar,
.toolbox-summary-card,
.toolbox-card,
.foundation-capability-card,
.toolbox-empty-card,
.navigation-sidebar-card,
.navigation-group,
.navigation-card,
.news-feature-card,
.faq-panel,
.faq-item,
.launch-surface-panel,
.tool-detail-note,
.tool-detail-brief,
.tool-detail-hero-shell {
    background: rgba(255, 255, 255, 0.84);
    border: 1px solid rgba(255, 255, 255, 0.88);
    box-shadow: var(--shadow);
    backdrop-filter: blur(14px);
}

.hero-surface,
.toolbox-pane-head,
.toolbox-control-bar,
.navigation-sidebar-card,
.navigation-group,
.news-feature-card,
.story-card,
.editor-panel,
.result-panel,
.faq-panel {
    border-radius: 34px;
}

.hero-surface {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1.02fr) minmax(320px, 0.98fr);
    gap: clamp(1rem, 1.8vw, 1.45rem);
    padding: clamp(1.3rem, 2.4vw, 1.85rem);
    overflow: hidden;
    background:
        radial-gradient(circle at 14% 16%, rgba(255, 176, 108, 0.16), transparent 20rem),
        radial-gradient(circle at 84% 18%, rgba(79, 183, 227, 0.1), transparent 18rem),
        linear-gradient(145deg, rgba(255, 252, 247, 0.98), rgba(255, 246, 237, 0.96));
}

.hero-surface::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.34), transparent 48%);
    opacity: 0.8;
}

.neo-page-hero {
    padding-top: 2.1rem;
    padding-bottom: 1rem;
}

.neo-page-hero-shell {
    align-items: center;
}

.neo-page-hero-shell-compact {
    grid-template-columns: minmax(0, 1.08fr) minmax(280px, 0.82fr);
}

.neo-page-hero-copy,
.home-neo-copy {
    position: relative;
    z-index: 1;
    display: grid;
    align-content: center;
    gap: 1.05rem;
    min-width: 0;
}

.neo-page-hero-copy h1,
.home-neo-copy h1 {
    margin: 0;
    font-weight: 700;
    line-height: 1.06;
    letter-spacing: -0.035em;
    text-wrap: balance;
}

.neo-page-hero-copy h1 {
    font-size: clamp(2.15rem, 3.9vw, 3.55rem);
    max-width: min(100%, 12.5em);
}

.home-neo-copy h1 {
    font-size: clamp(2.8rem, 5vw, 4.55rem);
    max-width: min(100%, 11.2em);
}

.lead {
    max-width: 40rem;
    color: var(--ink-soft);
    font-size: 1.02rem;
    line-height: 1.82;
}

.neo-metric-row {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.75rem;
}

.neo-metric-row article {
    display: grid;
    gap: 0.3rem;
    padding: 0.9rem 0.95rem;
    border-radius: 22px;
    background: rgba(255, 255, 255, 0.78);
    border: 1px solid rgba(255, 255, 255, 0.88);
}

.neo-metric-row strong {
    display: block;
    font-size: 1.55rem;
    letter-spacing: -0.05em;
}

.neo-metric-row span {
    color: var(--ink-soft);
}

.hero-visual-card {
    position: relative;
    min-height: 320px;
    padding: 1.15rem;
    border-radius: 28px;
    overflow: hidden;
    background:
        radial-gradient(circle at 50% 34%, rgba(255, 255, 255, 0.78), rgba(255, 247, 238, 0.3) 42%, transparent 72%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.52), rgba(255, 255, 255, 0.18));
    border: 1px solid rgba(24, 32, 51, 0.05);
}

.hero-visual-card::before,
.hero-visual-card::after {
    content: "";
    position: absolute;
    border-radius: 999px;
    filter: blur(18px);
    pointer-events: none;
}

.hero-visual-card::before {
    width: 120px;
    height: 120px;
    top: 18px;
    left: 24px;
    background: rgba(255, 140, 75, 0.09);
}

.hero-visual-card::after {
    width: 128px;
    height: 128px;
    right: 18px;
    bottom: 18px;
    background: rgba(24, 178, 154, 0.08);
}

.hero-visual-image {
    position: relative;
    z-index: 1;
    display: block;
    width: min(100%, 500px);
    margin: 0 auto;
    filter: drop-shadow(0 18px 24px rgba(24, 32, 51, 0.08));
    animation: mascotFloat 8s ease-in-out infinite;
}

.floating-chip {
    position: absolute;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.48rem 0.78rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.72);
    border: 1px solid rgba(24, 32, 51, 0.05);
    color: #556077;
    font-size: 0.78rem;
    font-weight: 600;
    box-shadow: 0 10px 18px rgba(24, 32, 51, 0.06);
    animation: chipDrift 6.2s ease-in-out infinite;
}

.floating-chip-a {
    top: 24px;
    left: 22px;
}

.floating-chip-b {
    top: 58px;
    right: 24px;
    animation-delay: -1.9s;
}

.floating-chip-c {
    right: 48px;
    bottom: 28px;
    animation-delay: -3.4s;
}

.home-neo-hero {
    padding-top: 4.5rem;
    padding-bottom: 1.25rem;
}

.home-neo-hero-shell {
    margin-bottom: 1rem;
}

.home-neo-visual,
.neo-page-hero-visual {
    align-self: stretch;
}

.neo-page-hero-visual-small {
    min-height: 280px;
}

.home-neo-tag-row {
    display: flex;
    flex-wrap: wrap;
    gap: 0.65rem;
}

.home-neo-tag-row span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.62rem 0.94rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.8);
    border: 1px solid rgba(24, 32, 51, 0.08);
    color: var(--ink-soft);
}

.home-neo-stats {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1rem;
}

.home-neo-stat-card {
    min-height: 126px;
    border-radius: 26px;
    background: rgba(255, 255, 255, 0.84);
}

.home-neo-stat-card span {
    color: var(--ink-soft);
}

.home-neo-section {
    padding-top: 1.4rem;
}

.home-neo-foundation-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.04fr) minmax(380px, 0.96fr);
    gap: 1rem;
    align-items: stretch;
}

.home-neo-module-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}

.neo-module-card {
    height: 100%;
    min-height: 206px;
    display: grid;
    gap: 0.85rem;
}

.home-neo-workboard {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1rem;
    align-content: start;
    height: 100%;
    padding: 1.35rem;
}

.home-neo-workboard-main {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(248px, 0.72fr);
    gap: 1rem;
    align-items: stretch;
}

.home-neo-step-list {
    display: grid;
    gap: 0.78rem;
    align-content: start;
}

.home-neo-step-card {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 0.9rem;
    padding: 1rem;
    border-radius: 24px;
    background: rgba(24, 32, 51, 0.04);
    border: 1px solid rgba(24, 32, 51, 0.06);
    min-height: 104px;
    align-items: start;
}

.home-neo-step-card span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 46px;
    height: 46px;
    border-radius: 15px;
    background: linear-gradient(135deg, rgba(255, 140, 75, 0.18), rgba(79, 183, 227, 0.14));
    color: var(--teal);
    font-weight: 800;
}

.home-neo-step-card strong,
.neo-module-card h3,
.neo-tool-card h3,
.neo-list-card h3 {
    display: block;
    margin: 0;
}

.home-neo-step-card p,
.neo-module-card p,
.neo-tool-card p,
.neo-link-card p,
.neo-list-card p,
.home-neo-cta p {
    margin: 0.32rem 0 0;
    color: var(--ink-soft);
    line-height: 1.66;
}

.home-neo-inline-visual img {
    width: 100%;
    max-width: 280px;
    margin: 0 auto;
    animation: mascotFloat 7.2s ease-in-out infinite;
}

.home-neo-inline-visual {
    display: grid;
    place-items: center;
    min-height: 100%;
    padding: 1rem;
    border-radius: 28px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.74), rgba(255, 248, 241, 0.82));
    border: 1px solid rgba(24, 32, 51, 0.05);
}

.home-neo-tool-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
}

.neo-tool-card {
    display: grid;
    gap: 0.9rem;
    min-height: 230px;
    padding: 1.15rem;
    border-radius: 30px;
    background: rgba(255, 255, 255, 0.84);
    border: 1px solid rgba(255, 255, 255, 0.88);
    box-shadow: var(--shadow);
    transition: transform 180ms ease, box-shadow 180ms ease;
}

.neo-tool-card:hover,
.neo-link-card:hover,
.neo-list-card:hover,
.toolbox-card:hover,
.navigation-card:hover,
.story-card:hover,
.tool-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 34px 60px rgba(24, 32, 51, 0.12);
}

.neo-tool-card-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.8rem;
}

.neo-tool-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    border-radius: 999px;
    background: rgba(24, 32, 51, 0.05);
    color: var(--ink);
    font-size: 1rem;
}

.home-neo-surface-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
}

.neo-surface-panel {
    padding: 1.2rem;
}

.neo-link-card {
    align-items: flex-start;
    padding: 1rem;
    border-radius: 22px;
    background: rgba(24, 32, 51, 0.04);
    border: 1px solid rgba(24, 32, 51, 0.06);
}

.neo-link-card strong {
    display: block;
    margin: 0;
}

.neo-link-card small {
    display: inline-block;
    margin-top: 0.55rem;
    color: var(--teal);
    font-weight: 700;
}

.neo-list-card {
    padding: 1rem;
    border-radius: 22px;
    background: rgba(24, 32, 51, 0.04);
    border: 1px solid rgba(24, 32, 51, 0.06);
    transition: transform 180ms ease, box-shadow 180ms ease;
}

.neo-list-card .story-meta {
    margin-bottom: 0.75rem;
}

.neo-list-card .story-meta strong {
    color: var(--brand-dark);
}

.home-neo-cta {
    grid-template-columns: minmax(0, 1fr) minmax(260px, 0.8fr);
    align-items: center;
}

.home-neo-cta-copy {
    position: relative;
    z-index: 1;
    display: grid;
    gap: 0.95rem;
}

.home-neo-cta h2 {
    margin: 0;
    max-width: 11ch;
    font-size: clamp(2.25rem, 4vw, 3.7rem);
    line-height: 0.96;
    letter-spacing: -0.05em;
}

.home-neo-cta-visual img {
    width: 100%;
    max-width: 340px;
    margin-left: auto;
    animation: mascotFloat 7.4s ease-in-out infinite;
}

.neo-filter-bar {
    padding-top: 0.85rem;
}

.neo-toolbox-section {
    padding-top: 0.6rem;
}

.navigation-sidebar-card,
.navigation-group {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.9), rgba(255, 250, 244, 0.94));
}

.toolbox-mode-switch {
    margin-bottom: 1rem;
}

.toolbox-pane-head,
.toolbox-control-bar,
.toolbox-group,
.navigation-sidebar-card,
.navigation-group,
.news-feature-card,
.faq-panel {
    border: 1px solid rgba(255, 255, 255, 0.92);
}

.toolbox-card,
.toolbox-summary-card,
.foundation-capability-card,
.toolbox-empty-card,
.navigation-card,
.news-story-card,
.showcase-story-card,
.faq-item {
    border-radius: 24px;
}

.toolbox-card,
.toolbox-summary-card,
.foundation-capability-card,
.toolbox-empty-card {
    background: rgba(255, 255, 255, 0.82);
}

.toolbox-card,
.toolbox-summary-card,
.foundation-capability-card,
.toolbox-empty-card,
.navigation-card,
.story-card,
.tool-card,
.nav-link-card,
.faq-item,
.news-feature-card {
    transition: transform 180ms ease, box-shadow 180ms ease;
}

.toolbox-card h3,
.navigation-card-copy h3 {
    letter-spacing: -0.025em;
}

.navigation-filter-bar,
.toolbox-control-bar {
    gap: 1rem;
}

.toolbox-control-bar,
.toolbox-pane-head {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.88), rgba(255, 248, 241, 0.92));
}

.toolbox-index a,
.navigation-index-link,
.navigation-mobile-chip {
    background: rgba(255, 255, 255, 0.74);
}

.news-feature-card {
    background:
        radial-gradient(circle at 92% 18%, rgba(79, 183, 227, 0.12), transparent 12rem),
        radial-gradient(circle at 10% 0%, rgba(255, 140, 75, 0.12), transparent 12rem),
        linear-gradient(145deg, rgba(255, 255, 255, 0.96), rgba(255, 248, 241, 0.92));
}

.tool-layout {
    gap: 1rem;
}

.result-panel {
    position: sticky;
    top: 6.4rem;
    align-self: start;
}

.field input,
.field textarea,
.field select,
.navigation-search input,
.toolbox-search input {
    border-radius: 18px;
    border: 1px solid rgba(24, 32, 51, 0.08);
    background: rgba(255, 255, 255, 0.94);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.9);
}

.field input:focus,
.field textarea:focus,
.field select:focus,
.navigation-search input:focus,
.toolbox-search input:focus {
    outline: 0;
    border-color: rgba(255, 140, 75, 0.38);
    box-shadow: 0 0 0 4px rgba(255, 140, 75, 0.12);
}

.result-card,
.empty-state {
    border-radius: 24px;
    background: rgba(255, 255, 255, 0.8);
}

.site-footer {
    position: relative;
    padding: 3.2rem 0 4rem;
}

.site-footer::before {
    content: "";
    position: absolute;
    inset: 1.2rem 0 auto;
    height: 220px;
    background:
        radial-gradient(circle at 12% 10%, rgba(255, 140, 75, 0.12), transparent 22rem),
        radial-gradient(circle at 88% 8%, rgba(24, 178, 154, 0.1), transparent 20rem);
    pointer-events: none;
}

.footer-grid {
    position: relative;
    z-index: 1;
    padding: 1.5rem;
    border-radius: 36px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.92), rgba(255, 247, 238, 0.94));
    border: 1px solid rgba(255, 255, 255, 0.94);
    box-shadow: var(--shadow);
}

.footer-links {
    display: grid;
    gap: 0.55rem;
}

.footer-summary {
    line-height: 1.72;
}

body.has-motion [data-reveal] {
    opacity: 0;
    transform: translateY(18px) scale(0.992);
    transition: opacity 380ms ease, transform 460ms cubic-bezier(0.22, 1, 0.36, 1);
}

body.has-motion [data-reveal].is-visible {
    opacity: 1;
    transform: none;
}

@keyframes brandPulse {
    0%, 100% {
        transform: scale(0.95);
        opacity: 0.72;
    }
    50% {
        transform: scale(1.08);
        opacity: 1;
    }
}

@keyframes mascotFloat {
    0%, 100% {
        transform: translateY(0px);
    }
    50% {
        transform: translateY(-10px);
    }
}

@keyframes chipDrift {
    0%, 100% {
        transform: translateY(0px);
    }
    50% {
        transform: translateY(-6px);
    }
}

@media (max-width: 1180px) {
    .hero-surface,
    .neo-page-hero-shell,
    .neo-page-hero-shell-compact,
    .home-neo-foundation-grid,
    .home-neo-workboard-main,
    .home-neo-cta {
        grid-template-columns: 1fr;
    }

    .home-neo-stats,
    .home-neo-tool-grid,
    .home-neo-surface-grid,
    .neo-metric-row {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    .brand {
        padding-right: 0.7rem;
    }

    .brand-copy small {
        letter-spacing: 0.02em;
    }

    .site-nav {
        background: rgba(255, 252, 247, 0.98);
    }

    .hero-surface,
    .toolbox-pane-head,
    .toolbox-control-bar,
    .toolbox-group,
    .navigation-sidebar-card,
    .navigation-group,
    .news-feature-card,
    .story-card,
    .editor-panel,
    .result-panel,
    .faq-panel,
    .footer-grid {
        padding: 1rem;
        border-radius: 28px;
    }

    .home-neo-hero {
        padding-top: 3.8rem;
    }

    .home-neo-copy h1,
    .neo-page-hero-copy h1,
    .home-neo-cta h2 {
        max-width: none;
    }

    .home-neo-stats,
    .home-neo-module-grid,
    .home-neo-tool-grid,
    .home-neo-surface-grid,
    .neo-metric-row {
        grid-template-columns: 1fr;
    }

    .hero-visual-card {
        min-height: 260px;
    }

    .floating-chip {
        display: none;
    }

    .floating-chip-c {
        right: 22px;
        bottom: 20px;
    }

    .result-panel {
        position: static;
    }

    .footer-grid {
        grid-template-columns: 1fr;
    }
}

@media (prefers-reduced-motion: reduce) {
    .brand-mark img,
    .hero-visual-image,
    .floating-chip,
    .brand-mark::after {
        animation: none !important;
    }

    body.has-motion [data-reveal] {
        opacity: 1;
        transform: none;
        transition: none;
    }
}

/* Visual refinement pass */

html {
    scroll-behavior: smooth;
}

body::before {
    content: "";
    position: fixed;
    inset: -12% -10% auto;
    height: 58vh;
    pointer-events: none;
    background:
        radial-gradient(circle at 12% 18%, rgba(255, 158, 92, 0.18), transparent 24rem),
        radial-gradient(circle at 88% 14%, rgba(24, 178, 154, 0.12), transparent 22rem);
    filter: blur(14px);
    z-index: 0;
    animation: ambientSweep 22s ease-in-out infinite;
}

.page-shell {
    position: relative;
    isolation: isolate;
}

main {
    position: relative;
    z-index: 1;
    display: grid;
    gap: clamp(2.2rem, 4vw, 3.3rem);
    padding-bottom: 2rem;
}

.section {
    position: relative;
    padding: clamp(1.2rem, 2.5vw, 1.85rem) 0;
}

.container {
    width: min(calc(100% - 2rem), 1180px);
}

.site-header {
    background: rgba(255, 251, 246, 0.78);
    box-shadow: 0 12px 30px rgba(24, 32, 51, 0.05);
}

.site-header-glow {
    animation: headerGlowDrift 14s ease-in-out infinite;
}

.site-header-glow-b {
    animation-delay: -6.5s;
}

.header-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.brand {
    padding: 0.32rem 0.82rem 0.32rem 0.36rem;
    background: rgba(255, 255, 255, 0.82);
}

.brand-mark {
    width: 50px;
    height: 50px;
    border-radius: 17px;
    background: rgba(255, 255, 255, 0.96);
    border: 1px solid rgba(24, 32, 51, 0.05);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.96),
        0 10px 24px rgba(24, 32, 51, 0.06);
}

.brand-mark::after {
    background: radial-gradient(circle, rgba(24, 178, 154, 0.16), rgba(24, 178, 154, 0.02) 72%);
}

.brand-mark::before {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.5), rgba(255, 255, 255, 0.08));
}

.brand-mark img {
    width: 86%;
    height: 86%;
    object-fit: contain;
    filter: drop-shadow(0 6px 12px rgba(24, 32, 51, 0.08));
}

.brand-copy strong {
    font-size: 1.02rem;
}

.brand-copy small {
    letter-spacing: 0.08em;
    text-transform: none;
}

.site-nav {
    align-items: center;
}

.site-nav a,
.ghost-link {
    position: relative;
    transition: color 180ms ease, background 180ms ease, transform 180ms ease;
}

.site-nav a:hover,
.ghost-link:hover {
    transform: translateY(-1px);
}

.site-nav a.active::after {
    content: "";
    position: absolute;
    left: 1rem;
    right: 1rem;
    bottom: 0.46rem;
    height: 2px;
    border-radius: 999px;
    background: linear-gradient(135deg, var(--brand), var(--teal));
}

.eyebrow {
    letter-spacing: 0.12em;
}

.button-row {
    display: flex;
    flex-wrap: wrap;
    gap: 0.78rem;
}

.section-head,
.panel-head,
.toolbox-group-head,
.navigation-group-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 1rem;
}

.section-head,
.panel-head {
    margin-bottom: 1rem;
}

.section-head h2,
.panel-head h2,
.toolbox-group-head h2,
.navigation-group-head h2 {
    margin: 0.3rem 0 0;
    max-width: 18ch;
    font-size: clamp(1.8rem, 3vw, 2.6rem);
    line-height: 1.08;
    letter-spacing: -0.045em;
}

.hero-surface,
.story-card,
.tool-card,
.nav-link-card,
.editor-panel,
.result-panel,
.toolbox-group,
.toolbox-pane-head,
.toolbox-control-bar,
.toolbox-summary-card,
.toolbox-card,
.foundation-capability-card,
.toolbox-empty-card,
.navigation-sidebar-card,
.navigation-group,
.navigation-card,
.news-feature-card,
.faq-panel,
.faq-item,
.tool-detail-note,
.tool-detail-brief,
.neo-tool-card,
.neo-list-card,
.neo-link-card {
    border-color: rgba(24, 32, 51, 0.06);
    box-shadow: 0 22px 52px rgba(24, 32, 51, 0.08);
}

.hero-surface {
    gap: clamp(1.2rem, 2.2vw, 1.8rem);
    padding: clamp(1.5rem, 2.8vw, 2.1rem);
    border-radius: 36px;
}

.hero-surface::after {
    content: "";
    position: absolute;
    inset: auto -4% -18% 48%;
    height: 180px;
    pointer-events: none;
    background: radial-gradient(circle, rgba(255, 170, 108, 0.18), transparent 68%);
    filter: blur(28px);
    opacity: 0.72;
    animation: heroGlowDrift 18s ease-in-out infinite;
}

.home-neo-hero-shell {
    grid-template-columns: minmax(0, 1.08fr) minmax(320px, 0.92fr);
}

.neo-page-hero-shell {
    grid-template-columns: minmax(0, 1.06fr) minmax(280px, 0.84fr);
}

.neo-page-hero-shell-compact {
    grid-template-columns: minmax(0, 1fr) minmax(260px, 0.76fr);
}

.neo-page-hero-copy,
.home-neo-copy {
    gap: 1.08rem;
}

.neo-page-hero-copy h1 {
    max-width: 12em;
}

.home-neo-copy h1 {
    max-width: 10.6em;
}

.lead {
    max-width: 38rem;
}

.hero-visual-card {
    display: grid;
    place-items: center;
}

.hero-visual-card::before,
.hero-visual-card::after {
    animation: auraPulse 16s ease-in-out infinite;
}

.hero-visual-card::after {
    animation-delay: -8s;
}

.hero-visual-image {
    transition: transform 500ms cubic-bezier(0.22, 1, 0.36, 1), filter 500ms ease;
}

.hero-visual-card:hover .hero-visual-image {
    transform: translateY(-6px) scale(1.018);
    filter: drop-shadow(0 22px 30px rgba(24, 32, 51, 0.1));
}

.home-neo-tag-row span,
.toolbox-index a,
.navigation-index-link,
.navigation-mobile-chip {
    transition: transform 180ms ease, background 180ms ease, border-color 180ms ease, box-shadow 180ms ease;
}

.home-neo-tag-row span:hover,
.toolbox-index a:hover,
.navigation-index-link:hover,
.navigation-mobile-chip:hover {
    transform: translateY(-2px);
}

.home-neo-stats,
.neo-metric-row {
    gap: 1rem;
}

.home-neo-stat-card,
.neo-metric-row article {
    padding: 1.05rem 1.1rem;
    background: rgba(255, 255, 255, 0.76);
    border: 1px solid rgba(24, 32, 51, 0.05);
}

.home-neo-stat-card strong,
.neo-metric-row strong {
    transition: transform 220ms ease;
}

.home-neo-stat-card:hover strong,
.neo-metric-row article:hover strong {
    transform: translateY(-2px);
}

.home-neo-foundation-grid {
    grid-template-columns: minmax(0, 1fr) minmax(360px, 0.88fr);
    gap: 1.15rem;
}

.home-neo-module-grid {
    gap: 1.05rem;
}

.neo-module-card {
    padding: 1.08rem;
    border-radius: 28px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.84), rgba(255, 248, 241, 0.86));
}

.home-neo-workboard {
    gap: 1.05rem;
    background:
        radial-gradient(circle at 85% 15%, rgba(79, 183, 227, 0.12), transparent 14rem),
        linear-gradient(180deg, rgba(255, 255, 255, 0.9), rgba(255, 247, 239, 0.94));
}

.home-neo-workboard-main {
    grid-template-columns: minmax(0, 1fr) minmax(220px, 0.68fr);
}

.home-neo-step-card {
    background: rgba(255, 255, 255, 0.72);
    border-color: rgba(24, 32, 51, 0.05);
}

.home-neo-inline-visual {
    padding: 1.2rem;
}

.home-neo-inline-visual img {
    max-width: 248px;
}

.home-neo-tool-grid {
    gap: 1.05rem;
}

.neo-tool-card,
.navigation-card,
.showcase-story-card,
.news-story-card,
.toolbox-card,
.toolbox-summary-card,
.foundation-capability-card,
.neo-list-card,
.neo-link-card {
    height: 100%;
}

.home-neo-surface-grid {
    grid-template-columns: minmax(0, 1.04fr) repeat(2, minmax(0, 0.98fr));
    gap: 1.05rem;
    align-items: stretch;
}

.neo-surface-panel {
    height: 100%;
}

.toolbox-pane-head,
.toolbox-control-bar,
.navigation-sidebar-card,
.navigation-group,
.news-feature-card,
.faq-panel,
.editor-panel,
.result-panel {
    padding: clamp(1.1rem, 2vw, 1.35rem);
}

.toolbox-mode-summary {
    gap: 1rem;
}

.toolbox-summary-card {
    padding: 1.05rem;
}

.toolbox-control-bar {
    grid-template-columns: minmax(280px, 0.92fr) minmax(0, 1fr);
    align-items: start;
}

.toolbox-control-bar > * {
    min-width: 0;
}

.toolbox-surface-index {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(128px, 1fr));
}

.navigation-shell {
    grid-template-columns: 250px minmax(0, 1fr);
    gap: 1rem;
}

.navigation-main {
    gap: 1rem;
}

.navigation-card-grid {
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 1rem;
}

.showcase-grid {
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 1rem;
}

.news-grid {
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 1rem;
}

.faq-shell {
    max-width: 980px;
    margin: 0 auto;
    grid-template-columns: 1fr;
}

.faq-panel {
    overflow: hidden;
}

.tool-layout {
    grid-template-columns: minmax(0, 1.08fr) minmax(320px, 0.92fr);
    gap: 1rem;
}

.result-card,
.empty-state {
    padding: 1rem;
    border: 1px solid rgba(24, 32, 51, 0.05);
}

.footer-grid {
    grid-template-columns: minmax(0, 1.18fr) minmax(0, 0.82fr) minmax(0, 0.82fr);
    gap: 1rem;
}

body.has-motion [data-reveal] {
    transition-delay: var(--reveal-delay, 0ms);
}

@keyframes ambientSweep {
    0%, 100% {
        transform: translate3d(0, 0, 0) scale(1);
        opacity: 0.9;
    }
    50% {
        transform: translate3d(0, 22px, 0) scale(1.04);
        opacity: 1;
    }
}

@keyframes headerGlowDrift {
    0%, 100% {
        transform: translateX(0) scale(1);
        opacity: 0.55;
    }
    50% {
        transform: translateX(18px) scale(1.08);
        opacity: 0.82;
    }
}

@keyframes auraPulse {
    0%, 100% {
        transform: scale(1) translateY(0);
        opacity: 0.75;
    }
    50% {
        transform: scale(1.08) translateY(8px);
        opacity: 1;
    }
}

@keyframes heroGlowDrift {
    0%, 100% {
        transform: translate3d(0, 0, 0);
    }
    50% {
        transform: translate3d(-16px, -10px, 0);
    }
}

@media (max-width: 1180px) {
    .home-neo-surface-grid,
    .tool-layout,
    .toolbox-control-bar,
    .footer-grid {
        grid-template-columns: 1fr;
    }

    .home-neo-foundation-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 900px) {
    .navigation-shell,
    .neo-page-hero-shell,
    .neo-page-hero-shell-compact,
    .home-neo-workboard-main {
        grid-template-columns: 1fr;
    }

    .navigation-sidebar {
        position: static;
    }
}

@media (max-width: 760px) {
    main {
        gap: 1.8rem;
    }

    .home-neo-stats,
    .neo-metric-row {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .toolbox-mode-summary,
    .foundation-capability-grid {
        grid-template-columns: 1fr;
    }

    .toolbox-surface-index {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 560px) {
    .home-neo-stats,
    .neo-metric-row,
    .toolbox-surface-index {
        grid-template-columns: 1fr;
    }
}

/* Responsive architecture pass */

body.theme-public,
.page-shell {
    overflow-x: clip;
}

.navigation-mobile-index,
.home-neo-tag-row,
.home-neo-stats,
.neo-metric-row,
.toolbox-mode-summary,
.toolbox-surface-index {
    scrollbar-width: none;
}

.navigation-mobile-index::-webkit-scrollbar,
.home-neo-tag-row::-webkit-scrollbar,
.home-neo-stats::-webkit-scrollbar,
.neo-metric-row::-webkit-scrollbar,
.toolbox-mode-summary::-webkit-scrollbar,
.toolbox-surface-index::-webkit-scrollbar {
    display: none;
}

@media (min-width: 1100px) {
    .container {
        width: min(calc(100% - 3rem), 1240px);
    }

    .showcase-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .faq-shell {
        max-width: none;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .tool-layout {
        grid-template-columns: minmax(0, 1fr) minmax(340px, 0.84fr);
    }

    .home-neo-surface-grid {
        grid-template-columns: minmax(0, 1.06fr) repeat(2, minmax(0, 0.97fr));
    }
}

@media (max-width: 900px) {
    .section {
        padding: 1rem 0;
    }

    .site-header {
        z-index: 40;
        backdrop-filter: blur(16px);
    }

    .header-inner {
        padding: 0.8rem 0;
        gap: 0.75rem;
    }

    .brand {
        min-width: 0;
        max-width: calc(100% - 68px);
        padding: 0.28rem 0.7rem 0.28rem 0.34rem;
        box-shadow: 0 10px 22px rgba(24, 32, 51, 0.06);
    }

    .brand-mark {
        width: 46px;
        height: 46px;
        border-radius: 15px;
    }

    .brand-copy {
        min-width: 0;
    }

    .brand-copy small {
        display: none;
    }

    .nav-toggle {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        min-width: 44px;
        height: 44px;
        padding: 0 0.95rem;
        border-radius: 999px;
        border: 1px solid rgba(24, 32, 51, 0.08);
        background: rgba(255, 255, 255, 0.88);
        box-shadow: 0 10px 24px rgba(24, 32, 51, 0.06);
    }

    .site-nav {
        position: fixed;
        top: 4.6rem;
        left: 0.8rem;
        right: 0.8rem;
        z-index: 42;
        display: flex;
        flex-direction: column;
        align-items: stretch;
        gap: 0.45rem;
        max-height: calc(100vh - 5.4rem);
        padding: 0.75rem;
        overflow-y: auto;
        background: rgba(255, 251, 246, 0.97);
        border: 1px solid rgba(24, 32, 51, 0.08);
        border-radius: 24px;
        box-shadow: 0 24px 60px rgba(24, 32, 51, 0.18);
        opacity: 0;
        pointer-events: none;
        transform: translateY(-10px) scale(0.985);
        transition: opacity 220ms ease, transform 260ms cubic-bezier(0.22, 1, 0.36, 1);
    }

    .site-nav.open {
        opacity: 1;
        pointer-events: auto;
        transform: none;
    }

    body.nav-open {
        overflow: hidden;
    }

    body.nav-open::after {
        content: "";
        position: fixed;
        inset: 0;
        background: rgba(24, 32, 51, 0.18);
        backdrop-filter: blur(3px);
        z-index: 35;
    }

    .site-nav a,
    .site-nav .site-nav-cta {
        width: 100%;
        padding: 0.95rem 1rem;
        border-radius: 18px;
        background: rgba(24, 32, 51, 0.035);
    }

    .site-nav a.active::after {
        display: none;
    }

    .site-nav-cta {
        margin-left: 0;
    }

    .site-announce-inner {
        padding: 0.58rem 0;
        gap: 0.55rem;
    }

    .site-announce-label {
        font-size: 0.7rem;
    }

    .home-neo-hero,
    .neo-page-hero {
        padding-top: 0.75rem;
    }

    .hero-surface,
    .home-neo-hero-shell,
    .neo-page-hero-shell,
    .neo-page-hero-shell-compact,
    .home-neo-cta,
    .home-neo-foundation-grid,
    .home-neo-workboard-main,
    .tool-layout,
    .toolbox-control-bar,
    .navigation-shell,
    .footer-grid {
        grid-template-columns: 1fr;
    }

    .hero-surface {
        gap: 1rem;
        padding: 1.1rem;
        border-radius: 28px;
    }

    .hero-surface::after {
        inset: auto -10% -22% 30%;
        height: 150px;
    }

    .home-neo-copy,
    .neo-page-hero-copy {
        gap: 0.85rem;
    }

    .home-neo-copy h1 {
        font-size: clamp(2.2rem, 8.6vw, 3.25rem);
        max-width: none;
    }

    .neo-page-hero-copy h1 {
        font-size: clamp(1.95rem, 8vw, 2.8rem);
        max-width: none;
    }

    .lead {
        max-width: none;
        font-size: 0.97rem;
        line-height: 1.72;
    }

    .button-row {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        width: 100%;
    }

    .button-row .button {
        width: 100%;
        justify-content: center;
    }

    .hero-visual-card {
        min-height: 220px;
        padding: 0.95rem;
        order: 2;
    }

    .hero-visual-image {
        width: min(100%, 320px);
    }

    .home-neo-tag-row {
        display: grid;
        grid-auto-flow: column;
        grid-auto-columns: max-content;
        gap: 0.6rem;
        overflow-x: auto;
        padding-bottom: 0.2rem;
    }

    .home-neo-tag-row span {
        white-space: nowrap;
    }

    .home-neo-stats,
    .neo-metric-row,
    .toolbox-mode-summary {
        display: grid;
        grid-auto-flow: column;
        grid-auto-columns: minmax(168px, 76vw);
        gap: 0.8rem;
        overflow-x: auto;
        padding-bottom: 0.25rem;
        scroll-snap-type: x proximity;
    }

    .home-neo-stat-card,
    .neo-metric-row article,
    .toolbox-summary-card {
        scroll-snap-align: start;
    }

    .home-neo-module-grid,
    .home-neo-tool-grid,
    .home-neo-surface-grid,
    .navigation-card-grid,
    .showcase-grid,
    .news-grid,
    .faq-shell,
    .toolbox-card-grid,
    .foundation-capability-grid,
    .foundation-card-grid {
        grid-template-columns: 1fr;
    }

    .home-neo-workboard {
        padding: 1rem;
    }

    .home-neo-inline-visual {
        min-height: 180px;
        padding: 0.95rem;
    }

    .home-neo-inline-visual img,
    .home-neo-cta-visual img {
        max-width: 220px;
        margin: 0 auto;
    }

    .section-head,
    .panel-head,
    .toolbox-group-head,
    .navigation-group-head {
        display: grid;
        align-items: start;
    }

    .section-head h2,
    .panel-head h2,
    .toolbox-group-head h2,
    .navigation-group-head h2 {
        max-width: none;
        font-size: clamp(1.45rem, 6vw, 2.05rem);
    }

    .toolbox-mode-switch {
        position: sticky;
        top: 5rem;
        z-index: 8;
        display: grid;
        grid-template-columns: 1fr 1fr;
        width: 100%;
        margin-bottom: 0.85rem;
    }

    .toolbox-mode-switch button {
        width: 100%;
    }

    .toolbox-surface-index,
    .navigation-mobile-index {
        display: grid;
        grid-auto-flow: column;
        grid-auto-columns: max-content;
        gap: 0.6rem;
        overflow-x: auto;
        padding-bottom: 0.2rem;
    }

    .toolbox-surface-index a,
    .navigation-mobile-chip {
        white-space: nowrap;
    }

    .navigation-mobile-index {
        margin-top: 0.25rem;
    }

    .navigation-sidebar {
        display: none;
    }

    .navigation-card {
        min-height: auto;
    }

    .tool-layout {
        gap: 0.9rem;
    }

    .editor-panel,
    .result-panel,
    .toolbox-group,
    .toolbox-pane-head,
    .toolbox-control-bar,
    .navigation-group,
    .faq-panel,
    .news-feature-card,
    .footer-grid {
        border-radius: 24px;
        padding: 1rem;
    }

    .result-panel {
        position: static;
        order: 2;
    }

    .editor-panel {
        order: 1;
    }

    .footer-grid {
        gap: 0.9rem;
    }
}

@media (max-width: 560px) {
    .container {
        width: min(calc(100% - 1rem), 100%);
    }

    main {
        gap: 1.5rem;
    }

    .header-inner {
        gap: 0.55rem;
    }

    .brand {
        max-width: calc(100% - 62px);
        padding-right: 0.55rem;
    }

    .brand-mark img {
        width: 88%;
        height: 88%;
    }

    .brand-copy strong {
        font-size: 0.94rem;
    }

    .site-nav {
        top: 4.35rem;
        left: 0.5rem;
        right: 0.5rem;
        max-height: calc(100vh - 4.95rem);
        padding: 0.6rem;
    }

    .site-announce-inner {
        display: grid;
        gap: 0.35rem;
    }

    .button-row {
        grid-template-columns: 1fr;
    }

    .home-neo-copy h1 {
        font-size: clamp(2rem, 10vw, 2.7rem);
    }

    .neo-page-hero-copy h1 {
        font-size: clamp(1.8rem, 9vw, 2.35rem);
    }

    .hero-visual-card {
        min-height: 190px;
    }

    .hero-visual-image {
        width: min(100%, 260px);
    }

    .home-neo-inline-visual {
        min-height: 150px;
    }

    .home-neo-stats,
    .neo-metric-row,
    .toolbox-mode-summary {
        grid-auto-columns: minmax(154px, 82vw);
    }

    .toolbox-mode-switch {
        top: 4.65rem;
    }

    .toolbox-mode-switch button {
        padding: 0.72rem 0.85rem;
        font-size: 0.92rem;
    }

    .toolbox-surface-index {
        grid-auto-columns: max-content;
    }

    .home-neo-tag-row span,
    .navigation-mobile-chip,
    .toolbox-surface-index a {
        font-size: 0.82rem;
    }
}

/* Logo motion system */

.logo-motion-stage {
    position: relative;
    isolation: isolate;
    display: grid;
    place-items: center;
    overflow: hidden;
    --motion-core-x: 0px;
    --motion-core-y: 0px;
    --motion-grid-x: 0px;
    --motion-grid-y: 0px;
    --motion-tilt-x: 0deg;
    --motion-tilt-y: 0deg;
    --logo-stage-size: min(74%, 360px);
    background:
        radial-gradient(circle at 50% 18%, rgba(255, 255, 255, 0.98), rgba(255, 249, 243, 0.62) 30%, transparent 68%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.82), rgba(245, 250, 255, 0.55));
}

.hero-visual-card.logo-motion-stage {
    padding: 0.85rem;
}

.home-neo-inline-visual.logo-motion-stage,
.home-neo-cta-visual.logo-motion-stage {
    position: relative;
    isolation: isolate;
    display: grid;
    place-items: center;
    min-height: 100%;
    padding: 1rem;
    overflow: hidden;
    border-radius: 28px;
    background:
        radial-gradient(circle at 50% 18%, rgba(255, 255, 255, 0.96), rgba(255, 249, 243, 0.54) 32%, transparent 72%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.8), rgba(245, 250, 255, 0.58));
    border: 1px solid rgba(24, 32, 51, 0.06);
    box-shadow: 0 22px 52px rgba(24, 32, 51, 0.08);
}

.logo-motion-grid,
.logo-motion-aura,
.logo-motion-trace,
.logo-motion-ring,
.logo-motion-orbit,
.logo-motion-beam {
    pointer-events: none;
}

.logo-motion-stage::before,
.logo-motion-stage::after {
    content: "";
    position: absolute;
    border-radius: 999px;
    pointer-events: none;
}

.logo-motion-stage::before {
    width: 180px;
    height: 180px;
    top: -24px;
    left: -30px;
    background: radial-gradient(circle, rgba(255, 156, 95, 0.28), rgba(255, 156, 95, 0.02) 68%);
    filter: blur(10px);
    animation: logoGlowDriftA 16s ease-in-out infinite;
}

.logo-motion-stage::after {
    width: 210px;
    height: 210px;
    right: -48px;
    bottom: -56px;
    background: radial-gradient(circle, rgba(83, 192, 217, 0.22), rgba(83, 192, 217, 0.02) 70%);
    filter: blur(12px);
    animation: logoGlowDriftB 18s ease-in-out infinite;
}

.logo-motion-grid {
    position: absolute;
    inset: 10% 8%;
    border-radius: 26px;
    background-image:
        linear-gradient(rgba(101, 120, 149, 0.12) 1px, transparent 1px),
        linear-gradient(90deg, rgba(101, 120, 149, 0.12) 1px, transparent 1px);
    background-size: 28px 28px;
    opacity: 0.45;
    mask-image: radial-gradient(circle at 50% 48%, #000 32%, rgba(0, 0, 0, 0.58) 54%, transparent 82%);
    transform: perspective(900px) rotateX(70deg) translate3d(var(--motion-grid-x), var(--motion-grid-y), 0);
    transform-origin: center 65%;
    transition: transform 320ms ease;
}

.logo-motion-aura {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 54%;
    aspect-ratio: 1;
    border-radius: 50%;
    transform: translate(-50%, -50%);
    background: radial-gradient(circle, rgba(255, 255, 255, 0.78), rgba(255, 255, 255, 0.08) 58%, transparent 74%);
    opacity: 0.8;
    mix-blend-mode: screen;
    animation: auraOrbit 10s ease-in-out infinite;
}

.logo-motion-aura-b {
    width: 68%;
    opacity: 0.52;
    animation-delay: -5s;
}

.logo-motion-trace {
    position: absolute;
    width: 38%;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.82), transparent);
    opacity: 0.68;
    filter: blur(0.2px);
    --trace-rotation: 12deg;
}

.logo-motion-trace-a {
    top: 28%;
    right: 12%;
    --trace-rotation: 12deg;
    transform: rotate(var(--trace-rotation));
    animation: traceSweep 8s ease-in-out infinite;
}

.logo-motion-trace-b {
    bottom: 24%;
    left: 12%;
    --trace-rotation: -18deg;
    transform: rotate(var(--trace-rotation));
    animation: traceSweep 10s ease-in-out infinite reverse;
}

.logo-motion-core {
    position: relative;
    z-index: 2;
    width: var(--logo-stage-size);
    aspect-ratio: 1;
    display: grid;
    place-items: center;
    transform-style: preserve-3d;
    transform: translate3d(var(--motion-core-x), var(--motion-core-y), 0) rotateX(var(--motion-tilt-x)) rotateY(var(--motion-tilt-y));
    transition: transform 320ms cubic-bezier(0.22, 1, 0.36, 1);
}

.logo-motion-ring {
    position: absolute;
    inset: 0;
    border-radius: 50%;
    border: 1px solid rgba(82, 101, 132, 0.12);
}

.logo-motion-ring-a {
    inset: 4%;
    border-color: rgba(255, 147, 87, 0.38);
    box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.46) inset;
    animation: logoSpin 18s linear infinite;
}

.logo-motion-ring-b {
    inset: 17%;
    border-style: dashed;
    border-width: 1.5px;
    border-color: rgba(72, 170, 220, 0.38);
    animation: logoSpinReverse 14s linear infinite;
}

.logo-motion-ring-c {
    inset: 31%;
    border-color: rgba(255, 255, 255, 0.72);
    box-shadow:
        0 0 0 1px rgba(24, 32, 51, 0.04) inset,
        0 0 34px rgba(83, 192, 217, 0.12);
    animation: logoRingPulse 6s ease-in-out infinite;
}

.logo-motion-orbit {
    position: absolute;
    width: 14px;
    height: 14px;
    border-radius: 50%;
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.98), rgba(255, 246, 238, 0.92));
    box-shadow:
        0 0 0 6px rgba(255, 255, 255, 0.22),
        0 8px 18px rgba(24, 32, 51, 0.08);
}

.logo-motion-orbit-a {
    top: 11%;
    right: 21%;
    animation: orbitDriftA 6.5s ease-in-out infinite;
}

.logo-motion-orbit-b {
    bottom: 18%;
    left: 12%;
    width: 12px;
    height: 12px;
    background: linear-gradient(135deg, rgba(80, 184, 227, 0.92), rgba(255, 255, 255, 0.95));
    animation: orbitDriftB 7.5s ease-in-out infinite;
}

.logo-motion-orbit-c {
    top: 42%;
    left: 8%;
    width: 10px;
    height: 10px;
    background: linear-gradient(135deg, rgba(255, 154, 94, 0.95), rgba(255, 255, 255, 0.96));
    animation: orbitDriftC 5.8s ease-in-out infinite;
}

.logo-motion-beam {
    position: absolute;
    inset: 18% 21%;
    border-radius: 999px;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.85), rgba(131, 223, 239, 0.65), transparent);
    mix-blend-mode: screen;
    opacity: 0.74;
    transform: rotate(-16deg) translateY(-180%);
    filter: blur(1px);
    animation: beamSweep 5.6s ease-in-out infinite;
}

.logo-motion-logo-shell {
    position: relative;
    z-index: 1;
    width: 42%;
    aspect-ratio: 1;
    display: grid;
    place-items: center;
    border-radius: 30%;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(255, 246, 239, 0.9));
    border: 1px solid rgba(24, 32, 51, 0.05);
    box-shadow:
        0 28px 40px rgba(24, 32, 51, 0.12),
        inset 0 1px 0 rgba(255, 255, 255, 0.95);
    animation: logoShellFloat 8.2s ease-in-out infinite;
}

.logo-motion-logo-shell::before {
    content: "";
    position: absolute;
    inset: 14%;
    border-radius: 28%;
    background: linear-gradient(135deg, rgba(255, 154, 94, 0.18), rgba(83, 192, 217, 0.14));
    filter: blur(10px);
    opacity: 0.9;
}

.logo-motion-logo-shell::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    border: 1px solid rgba(255, 255, 255, 0.82);
}

.logo-motion-logo {
    position: relative;
    z-index: 1;
    width: 74%;
    height: 74%;
    object-fit: contain;
    filter: drop-shadow(0 14px 26px rgba(24, 32, 51, 0.12));
    animation: logoMarkPulse 7s ease-in-out infinite;
}

.logo-motion-badge {
    position: absolute;
    left: 1rem;
    bottom: 1rem;
    z-index: 3;
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    padding: 0.6rem 0.9rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.72);
    border: 1px solid rgba(24, 32, 51, 0.06);
    box-shadow: 0 12px 24px rgba(24, 32, 51, 0.08);
    color: #49556c;
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    backdrop-filter: blur(10px);
}

.logo-motion-badge::before {
    content: "";
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--brand), var(--teal));
    box-shadow: 0 0 0 6px rgba(255, 153, 89, 0.12);
}

.logo-motion-chip {
    backdrop-filter: blur(10px);
}

.home-neo-visual.logo-motion-stage {
    --logo-stage-size: min(76%, 400px);
}

.logo-motion-stage-compact {
    --logo-stage-size: min(72%, 290px);
}

.logo-motion-stage-inline {
    --logo-stage-size: min(70%, 250px);
    min-height: 240px;
}

.logo-motion-stage-cta {
    --logo-stage-size: min(70%, 290px);
    min-height: 280px;
}

.logo-motion-stage-inline .logo-motion-badge {
    top: 1rem;
    right: 1rem;
    bottom: auto;
    left: auto;
}

.logo-motion-stage-inline .floating-chip-a {
    bottom: 1rem;
    left: 1rem;
    top: auto;
}

.logo-motion-stage-inline .floating-chip-b {
    top: 1rem;
    left: 1rem;
    right: auto;
}

.logo-motion-stage-inline .floating-chip-c {
    display: none;
}

.logo-motion-stage-cta .logo-motion-badge {
    top: 1rem;
    right: 1rem;
    bottom: auto;
    left: auto;
}

.logo-motion-stage-cta .floating-chip-a {
    bottom: 1rem;
    left: 1rem;
    top: auto;
}

.logo-motion-stage-cta .floating-chip-b {
    top: 1rem;
    left: 1rem;
    right: auto;
}

.logo-motion-stage-cta .floating-chip-c {
    display: none;
}

.logo-motion-stage-compact .logo-motion-badge {
    top: 1rem;
    bottom: auto;
}

.logo-motion-stage-compact .floating-chip-b {
    top: auto;
    right: 1rem;
    bottom: 1rem;
}

.logo-motion-stage-compact .floating-chip-c {
    display: none;
}

.hero-visual-card.logo-motion-stage:hover .logo-motion-core {
    transform: translate3d(var(--motion-core-x), calc(var(--motion-core-y) - 4px), 0) rotateX(var(--motion-tilt-x)) rotateY(var(--motion-tilt-y));
}

@keyframes logoGlowDriftA {
    0%, 100% {
        transform: translate3d(0, 0, 0) scale(1);
    }
    50% {
        transform: translate3d(14px, 10px, 0) scale(1.06);
    }
}

@keyframes logoGlowDriftB {
    0%, 100% {
        transform: translate3d(0, 0, 0) scale(1);
    }
    50% {
        transform: translate3d(-12px, -14px, 0) scale(1.08);
    }
}

@keyframes auraOrbit {
    0%, 100% {
        transform: translate(-50%, -50%) scale(0.96);
        opacity: 0.62;
    }
    50% {
        transform: translate(-50%, -50%) scale(1.08);
        opacity: 0.9;
    }
}

@keyframes traceSweep {
    0%, 100% {
        opacity: 0.28;
        transform: translateX(-12px) rotate(var(--trace-rotation));
    }
    50% {
        opacity: 0.78;
        transform: translateX(12px) rotate(var(--trace-rotation));
    }
}

@keyframes logoSpin {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}

@keyframes logoSpinReverse {
    0% {
        transform: rotate(360deg);
    }
    100% {
        transform: rotate(0deg);
    }
}

@keyframes logoRingPulse {
    0%, 100% {
        transform: scale(0.98);
        opacity: 0.72;
    }
    50% {
        transform: scale(1.04);
        opacity: 1;
    }
}

@keyframes orbitDriftA {
    0%, 100% {
        transform: translate3d(0, 0, 0);
    }
    50% {
        transform: translate3d(-10px, 12px, 0);
    }
}

@keyframes orbitDriftB {
    0%, 100% {
        transform: translate3d(0, 0, 0);
    }
    50% {
        transform: translate3d(12px, -10px, 0);
    }
}

@keyframes orbitDriftC {
    0%, 100% {
        transform: translate3d(0, 0, 0);
    }
    50% {
        transform: translate3d(10px, 8px, 0);
    }
}

@keyframes beamSweep {
    0%, 18% {
        transform: rotate(-16deg) translateY(-180%);
        opacity: 0;
    }
    30%, 70% {
        opacity: 0.82;
    }
    100% {
        transform: rotate(-16deg) translateY(180%);
        opacity: 0;
    }
}

@keyframes logoShellFloat {
    0%, 100% {
        transform: translateY(0px);
    }
    50% {
        transform: translateY(-8px);
    }
}

@keyframes logoMarkPulse {
    0%, 100% {
        transform: scale(1);
        filter: drop-shadow(0 14px 26px rgba(24, 32, 51, 0.12));
    }
    50% {
        transform: scale(1.03);
        filter: drop-shadow(0 18px 30px rgba(24, 32, 51, 0.14));
    }
}

@media (max-width: 900px) {
    .logo-motion-stage {
        --logo-stage-size: min(76%, 290px);
    }

    .home-neo-inline-visual.logo-motion-stage,
    .home-neo-cta-visual.logo-motion-stage {
        min-height: 200px;
    }

    .logo-motion-badge {
        padding: 0.54rem 0.82rem;
        font-size: 0.72rem;
    }
}

@media (max-width: 560px) {
    .logo-motion-stage {
        --logo-stage-size: min(80%, 220px);
    }

    .logo-motion-grid {
        inset: 12% 6%;
        background-size: 24px 24px;
        opacity: 0.36;
    }

    .logo-motion-badge,
    .logo-motion-stage-inline .logo-motion-badge,
    .logo-motion-stage-cta .logo-motion-badge,
    .logo-motion-stage-compact .logo-motion-badge {
        top: auto;
        right: auto;
        bottom: 0.8rem;
        left: 50%;
        transform: translateX(-50%);
        white-space: nowrap;
    }

    .logo-motion-orbit-a,
    .logo-motion-orbit-b,
    .logo-motion-orbit-c,
    .logo-motion-trace {
        opacity: 0.6;
    }
}

@media (prefers-reduced-motion: reduce) {
    .logo-motion-stage::before,
    .logo-motion-stage::after,
    .logo-motion-grid,
    .logo-motion-aura,
    .logo-motion-trace,
    .logo-motion-ring,
    .logo-motion-orbit,
    .logo-motion-beam,
    .logo-motion-logo-shell,
    .logo-motion-logo {
        animation: none !important;
        transform: none !important;
        transition: none !important;
    }
}

/* Mobile refinement pass */

@media (max-width: 900px) {
    main {
        gap: 1.35rem;
        padding-bottom: 1.4rem;
    }

    .section {
        padding: 0.95rem 0;
    }

    .container {
        width: min(calc(100% - 1.25rem), 100%);
    }

    .site-header {
        background: rgba(255, 251, 246, 0.92);
        box-shadow: 0 12px 28px rgba(24, 32, 51, 0.08);
    }

    .header-inner {
        gap: 0.6rem;
        padding: 0.72rem 0;
    }

    .brand {
        gap: 0.65rem;
        max-width: calc(100% - 60px);
        padding: 0.24rem 0.68rem 0.24rem 0.3rem;
        border-radius: 20px;
    }

    .brand-copy strong {
        font-size: 0.92rem;
        line-height: 1.08;
    }

    .nav-toggle {
        min-width: 46px;
        height: 46px;
        padding: 0 0.88rem;
        font-size: 0.84rem;
        font-weight: 700;
        letter-spacing: 0.04em;
    }

    .nav-toggle[aria-expanded="true"] {
        color: #fff;
        background: linear-gradient(135deg, var(--brand), #ff9d45);
        border-color: transparent;
        box-shadow: 0 14px 30px rgba(255, 122, 24, 0.18);
    }

    .site-nav {
        top: 4.35rem;
        left: 0.65rem;
        right: 0.65rem;
        max-height: calc(100vh - 5rem);
        padding: 0.7rem;
        gap: 0.5rem;
        border-radius: 22px;
    }

    .site-nav a,
    .site-nav .site-nav-cta {
        min-height: 48px;
        padding: 0.9rem 1rem;
        border-radius: 16px;
        font-size: 0.95rem;
    }

    .site-announce-inner {
        align-items: start;
        padding: 0.56rem 0 0.68rem;
    }

    .site-announce-inner p {
        margin: 0;
        line-height: 1.55;
        font-size: 0.86rem;
    }

    .home-neo-hero,
    .neo-page-hero {
        padding-top: 0.35rem;
    }

    .hero-surface {
        gap: 0.95rem;
        padding: 1rem;
        border-radius: 26px;
    }

    .hero-surface::after {
        inset: auto -14% -20% 24%;
        height: 132px;
        opacity: 0.62;
    }

    .home-neo-copy,
    .neo-page-hero-copy,
    .home-neo-cta-copy {
        gap: 0.82rem;
    }

    .home-neo-copy h1 {
        font-size: clamp(2.05rem, 9vw, 2.8rem);
        line-height: 1.03;
    }

    .neo-page-hero-copy h1 {
        font-size: clamp(1.8rem, 8vw, 2.35rem);
        line-height: 1.08;
    }

    .home-neo-cta h2 {
        font-size: clamp(1.8rem, 7vw, 2.35rem);
        line-height: 1.04;
        max-width: none;
    }

    .lead {
        font-size: 0.95rem;
        line-height: 1.68;
    }

    .button-row {
        grid-template-columns: 1fr;
        gap: 0.65rem;
    }

    .button-row .button,
    .button-row .section-link {
        width: 100%;
        justify-content: center;
    }

    .section-head,
    .panel-head,
    .toolbox-group-head,
    .navigation-group-head {
        gap: 0.75rem;
    }

    .section-head h2,
    .panel-head h2,
    .toolbox-group-head h2,
    .navigation-group-head h2,
    .news-feature-card h2 {
        font-size: clamp(1.42rem, 6vw, 2rem);
        line-height: 1.14;
        max-width: none;
    }

    .section-link {
        justify-self: start;
    }

    .hero-visual-card {
        min-height: 208px;
        padding: 0.9rem;
    }

    .hero-visual-card.logo-motion-stage,
    .home-neo-inline-visual.logo-motion-stage,
    .home-neo-cta-visual.logo-motion-stage {
        min-height: 208px;
    }

    .logo-motion-stage {
        --logo-stage-size: min(74%, 240px);
    }

    .logo-motion-badge {
        padding: 0.5rem 0.76rem;
        font-size: 0.7rem;
        letter-spacing: 0.06em;
    }

    .home-neo-tag-row,
    .home-neo-stats,
    .neo-metric-row,
    .toolbox-mode-summary,
    .toolbox-surface-index,
    .navigation-mobile-index {
        overflow: visible;
        padding-bottom: 0;
        grid-auto-flow: row;
        grid-auto-columns: initial;
        scroll-snap-type: none;
    }

    .home-neo-tag-row {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 0.55rem;
    }

    .home-neo-tag-row span {
        width: 100%;
        min-height: 42px;
        padding: 0.62rem 0.72rem;
        font-size: 0.83rem;
        text-align: center;
        white-space: normal;
    }

    .home-neo-stats,
    .neo-metric-row {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 0.7rem;
    }

    .home-neo-stat-card,
    .neo-metric-row article {
        min-height: 0;
        padding: 0.9rem 0.82rem;
        border-radius: 20px;
    }

    .home-neo-stat-card strong,
    .neo-metric-row strong {
        font-size: 1.28rem;
    }

    .home-neo-module-grid,
    .home-neo-tool-grid,
    .home-neo-surface-grid,
    .navigation-card-grid,
    .showcase-grid,
    .news-grid,
    .faq-shell,
    .toolbox-card-grid,
    .foundation-capability-grid,
    .foundation-card-grid {
        gap: 0.85rem;
    }

    .neo-module-card,
    .neo-tool-card,
    .toolbox-card,
    .toolbox-summary-card,
    .foundation-capability-card,
    .navigation-card,
    .news-story-card,
    .showcase-story-card,
    .neo-list-card,
    .neo-link-card,
    .faq-item {
        min-height: 0;
        padding: 0.95rem;
        border-radius: 20px;
    }

    .neo-module-card,
    .neo-tool-card,
    .toolbox-card,
    .foundation-capability-card,
    .navigation-card,
    .news-story-card,
    .showcase-story-card {
        gap: 0.75rem;
    }

    .home-neo-workboard {
        gap: 0.85rem;
        padding: 1rem;
        border-radius: 26px;
    }

    .home-neo-workboard-main {
        gap: 0.8rem;
    }

    .home-neo-step-card {
        grid-template-columns: 40px 1fr;
        gap: 0.75rem;
        min-height: 0;
        padding: 0.85rem;
        border-radius: 20px;
    }

    .home-neo-step-card span {
        width: 40px;
        height: 40px;
        border-radius: 12px;
        font-size: 0.84rem;
    }

    .home-neo-inline-visual {
        padding: 0.9rem;
        border-radius: 24px;
    }

    .home-neo-cta {
        align-items: start;
    }

    .home-neo-cta-visual {
        border-radius: 24px;
    }

    .story-meta,
    .toolbox-card-top,
    .toolbox-card-footer,
    .foundation-capability-top,
    .panel-head {
        flex-wrap: wrap;
        align-items: flex-start;
    }

    .toolbox-card-badges {
        justify-content: flex-start;
    }

    .toolbox-card p,
    .foundation-capability-card p {
        min-height: 0;
    }

    .toolbox-card-footer {
        gap: 0.7rem;
    }

    .toolbox-card-footer .button {
        width: 100%;
        justify-content: center;
    }

    .toolbox-mode-switch {
        top: 4.75rem;
        gap: 0.32rem;
        padding: 0.32rem;
        border-radius: 20px;
        backdrop-filter: blur(12px);
    }

    .toolbox-mode-switch button {
        min-height: 46px;
        padding: 0.72rem 0.78rem;
        font-size: 0.9rem;
    }

    .toolbox-pane-head,
    .toolbox-control-bar,
    .toolbox-group,
    .navigation-group,
    .news-feature-card,
    .faq-panel,
    .editor-panel,
    .result-panel,
    .footer-grid,
    .story-card {
        padding: 1rem;
        border-radius: 24px;
    }

    .toolbox-pane-head p,
    .news-feature-card p,
    .story-card p,
    .faq-answer p,
    .article-body,
    .result-body {
        font-size: 0.94rem;
        line-height: 1.68;
    }

    .toolbox-mode-summary {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 0.7rem;
    }

    .toolbox-control-bar {
        gap: 0.75rem;
    }

    .toolbox-surface-index,
    .navigation-mobile-index {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 0.55rem;
        margin-top: 0;
    }

    .toolbox-surface-index a,
    .navigation-mobile-chip {
        display: flex;
        align-items: center;
        width: 100%;
        min-height: 44px;
        justify-content: space-between;
        padding: 0.76rem 0.82rem;
        border-radius: 16px;
        font-size: 0.84rem;
        white-space: normal;
        line-height: 1.35;
    }

    .toolbox-surface-index a strong {
        min-width: 28px;
        padding: 0.22rem 0.38rem;
        font-size: 0.76rem;
    }

    .toolbox-group,
    .navigation-group {
        scroll-margin-top: 6.2rem;
    }

    .toolbox-counter,
    .navigation-count {
        align-self: start;
        padding: 0.42rem 0.68rem;
        font-size: 0.78rem;
    }

    .foundation-capability-top {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.5rem;
    }

    .foundation-io {
        white-space: normal;
        line-height: 1.45;
    }

    .foundation-capability-foot {
        justify-content: space-between;
    }

    .foundation-capability-card .button,
    .foundation-capability-card .button.is-disabled {
        width: 100%;
        justify-content: center;
    }

    .navigation-filter-bar {
        gap: 0.75rem;
        margin-top: 0.85rem;
    }

    .navigation-search span,
    .toolbox-search span {
        font-size: 0.84rem;
    }

    .navigation-card {
        gap: 0.68rem;
    }

    .navigation-card-copy h3 {
        line-height: 1.35;
    }

    .navigation-card-copy p {
        -webkit-line-clamp: 3;
        font-size: 0.9rem;
    }

    .field input,
    .field textarea,
    .field select,
    .navigation-search input,
    .toolbox-search input {
        min-height: 48px;
        padding: 0.84rem 0.92rem;
        font-size: 0.95rem;
    }

    .field textarea {
        min-height: 132px;
    }

    .tool-detail-meta {
        flex-wrap: wrap;
        gap: 0.5rem;
    }

    .chip-row {
        gap: 0.45rem;
    }

    .chip {
        padding: 0.32rem 0.62rem;
        font-size: 0.78rem;
    }

    .tool-layout.has-result .result-panel {
        order: 1;
    }

    .tool-layout.has-result .editor-panel {
        order: 2;
    }

    .result-toolbar {
        margin-bottom: 0.75rem;
    }

    .result-toolbar .button {
        width: 100%;
        justify-content: center;
    }

    .result-media img,
    .result-media video {
        display: block;
        width: 100%;
        border-radius: 16px;
    }

    .tool-detail-side-stack,
    .related-tools .stack-list {
        gap: 0.75rem;
    }

    .faq-item summary {
        align-items: flex-start;
        padding: 0.95rem 1rem;
    }

    .faq-item summary strong {
        line-height: 1.45;
    }

    .faq-item summary span {
        font-size: 0.82rem;
    }

    .faq-answer {
        padding: 0.95rem 1rem 1rem;
    }

    .news-feature-card .button,
    .news-story-card .button {
        width: 100%;
        justify-content: center;
    }

    .site-footer {
        padding: 2.1rem 0 2.5rem;
    }

    .site-footer::before {
        inset: 0.7rem 0 auto;
        height: 180px;
    }

    .footer-grid {
        gap: 0;
        padding: 1.1rem;
        border-radius: 28px;
    }

    .footer-grid > div + div {
        margin-top: 1rem;
        padding-top: 1rem;
        border-top: 1px solid rgba(24, 32, 51, 0.07);
    }

    .footer-summary {
        margin: 0.75rem 0 0;
        font-size: 0.92rem;
        line-height: 1.68;
    }

    .footer-grid h4 {
        margin: 0 0 0.7rem;
        font-size: 0.94rem;
    }

    .footer-links {
        gap: 0.6rem;
    }
}

@media (max-width: 620px) {
    .container {
        width: min(calc(100% - 1rem), 100%);
    }

    main {
        gap: 1.2rem;
    }

    .brand {
        max-width: calc(100% - 56px);
    }

    .brand-mark {
        width: 44px;
        height: 44px;
    }

    .brand-copy strong {
        font-size: 0.9rem;
    }

    .nav-toggle {
        min-width: 44px;
        height: 44px;
        padding: 0 0.78rem;
        font-size: 0.8rem;
    }

    .site-nav {
        left: 0.5rem;
        right: 0.5rem;
        top: 4.2rem;
    }

    .home-neo-tag-row,
    .home-neo-stats,
    .neo-metric-row,
    .toolbox-mode-summary,
    .toolbox-surface-index,
    .navigation-mobile-index {
        grid-template-columns: 1fr;
    }

    .hero-surface {
        padding: 0.9rem;
        border-radius: 22px;
    }

    .hero-visual-card,
    .hero-visual-card.logo-motion-stage,
    .home-neo-inline-visual.logo-motion-stage,
    .home-neo-cta-visual.logo-motion-stage {
        min-height: 188px;
    }

    .logo-motion-stage {
        --logo-stage-size: min(78%, 210px);
    }

    .logo-motion-badge {
        font-size: 0.68rem;
    }

    .section-head h2,
    .panel-head h2,
    .toolbox-group-head h2,
    .navigation-group-head h2,
    .news-feature-card h2 {
        font-size: clamp(1.3rem, 6.5vw, 1.72rem);
    }

    .home-neo-copy h1 {
        font-size: clamp(1.95rem, 10vw, 2.45rem);
    }

    .neo-page-hero-copy h1 {
        font-size: clamp(1.65rem, 8.8vw, 2.05rem);
    }

    .home-neo-cta h2 {
        font-size: clamp(1.6rem, 8vw, 2rem);
    }

    .neo-module-card,
    .neo-tool-card,
    .toolbox-card,
    .toolbox-summary-card,
    .foundation-capability-card,
    .navigation-card,
    .news-story-card,
    .showcase-story-card,
    .neo-list-card,
    .neo-link-card,
    .faq-item,
    .story-card,
    .editor-panel,
    .result-panel,
    .news-feature-card,
    .faq-panel,
    .toolbox-group,
    .toolbox-pane-head,
    .toolbox-control-bar,
    .navigation-group,
    .footer-grid {
        padding: 0.9rem;
        border-radius: 20px;
    }

    .home-neo-step-card {
        grid-template-columns: 36px 1fr;
        padding: 0.8rem;
    }

    .home-neo-step-card span {
        width: 36px;
        height: 36px;
    }

    .toolbox-mode-switch {
        top: 4.55rem;
    }
}

@media (max-width: 420px) {
    .brand-copy strong {
        font-size: 0.86rem;
    }

    .lead,
    .toolbox-pane-head p,
    .news-feature-card p,
    .story-card p,
    .faq-answer p,
    .article-body,
    .result-body {
        font-size: 0.92rem;
    }

    .home-neo-tag-row span,
    .toolbox-surface-index a,
    .navigation-mobile-chip {
        font-size: 0.8rem;
    }
}

.site-announcement {
    position: relative;
    display: grid;
    justify-items: end;
    gap: 0.72rem;
    overflow: visible;
    z-index: 6;
}

.site-announcement-trigger {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 0.58rem;
    min-width: 92px;
    height: 44px;
    padding: 0 0.82rem 0 0.5rem;
    border: 0;
    border-radius: 999px;
    background:
        radial-gradient(circle at 12% 18%, rgba(255, 255, 255, 0.98), rgba(255, 245, 236, 0.92) 44%, rgba(255, 233, 216, 0.95) 100%);
    border: 1px solid rgba(24, 32, 51, 0.06);
    box-shadow:
        0 12px 28px rgba(24, 32, 51, 0.1),
        inset 0 1px 0 rgba(255, 255, 255, 0.92);
    cursor: pointer;
    overflow: hidden;
    isolation: isolate;
    transition: transform 180ms ease, box-shadow 180ms ease, filter 180ms ease, background 180ms ease;
}

.site-announcement-trigger::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 0;
    border-radius: inherit;
    background: linear-gradient(115deg, transparent 12%, rgba(255, 255, 255, 0.72) 36%, transparent 58%);
    opacity: 0.76;
    transform: translateX(-165%) skewX(-18deg);
    animation: announcementSweep 4.8s ease-in-out infinite;
    pointer-events: none;
}

.site-announcement-trigger:hover,
.site-announcement.open .site-announcement-trigger {
    transform: translateY(-2px);
    box-shadow:
        0 22px 44px rgba(24, 32, 51, 0.16),
        inset 0 1px 0 rgba(255, 255, 255, 0.96);
}

.site-announcement-trigger__halo {
    position: absolute;
    inset: -5px;
    border-radius: 999px;
    background: radial-gradient(circle, rgba(255, 144, 77, 0.18), rgba(255, 144, 77, 0.02) 72%);
    animation: announcementPulse 2.2s ease-in-out infinite;
}

.site-announcement-trigger__icon-shell {
    position: absolute;
    left: 0.42rem;
    top: 50%;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    border-radius: 999px;
    background: linear-gradient(135deg, rgba(255, 152, 91, 0.18), rgba(85, 204, 220, 0.12));
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.78);
    transform: translateY(-50%);
    animation: announcementCoreFloat 2.8s ease-in-out infinite;
}

.site-announcement-trigger__icon-shell::before {
    content: "";
    position: absolute;
    inset: -4px;
    border-radius: inherit;
    border: 1.5px solid rgba(255, 122, 60, 0.22);
    border-left-color: transparent;
    border-bottom-color: transparent;
    opacity: 0.88;
    animation: announcementOrbit 2.9s linear infinite;
}

.site-announcement-trigger__icon-shell::after {
    content: "";
    position: absolute;
    inset: 4px;
    border-radius: inherit;
    background: radial-gradient(circle at 30% 26%, rgba(255, 255, 255, 0.92), rgba(255, 255, 255, 0.12) 62%, transparent 76%);
    opacity: 0.75;
    animation: announcementInnerPulse 2.4s ease-in-out infinite;
}

.site-announcement-trigger__icon {
    position: relative;
    z-index: 1;
    width: 18px;
    height: 18px;
    color: #ff7a3c;
    filter: drop-shadow(0 6px 12px rgba(255, 122, 60, 0.14));
    transform-origin: 50% 3px;
    animation: announcementBellSwing 3s ease-in-out infinite;
}

.site-announcement-trigger__label {
    position: relative;
    z-index: 1;
    margin-left: 1.85rem;
    color: #344158;
    font-size: 0.82rem;
    font-weight: 800;
    letter-spacing: 0.08em;
}

.site-announcement-trigger__dot {
    position: absolute;
    top: 9px;
    right: 9px;
    z-index: 2;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: linear-gradient(135deg, #2cc4b6, #5ad6ee);
    box-shadow: 0 0 0 6px rgba(44, 196, 182, 0.12);
    animation: announcementBeacon 1.8s ease-in-out infinite;
}

.site-announcement:hover .site-announcement-trigger__icon-shell,
.site-announcement.open .site-announcement-trigger__icon-shell {
    animation-duration: 1.8s;
}

.site-announcement:hover .site-announcement-trigger__icon,
.site-announcement.open .site-announcement-trigger__icon {
    animation-duration: 1.2s;
}

.site-announcement-panel {
    position: absolute;
    top: calc(100% + 0.9rem);
    right: 0;
    z-index: 84;
    width: min(24rem, calc(100vw - 1rem));
    max-height: min(58vh, 24rem);
    overflow: auto;
    padding: 1rem 1rem 1.05rem;
    border-radius: 24px;
    background:
        radial-gradient(circle at 100% 0%, rgba(85, 204, 220, 0.12), transparent 10rem),
        radial-gradient(circle at 0% 0%, rgba(255, 160, 96, 0.14), transparent 10rem),
        linear-gradient(180deg, rgba(255, 252, 247, 0.98), rgba(255, 247, 240, 0.98));
    border: 1px solid rgba(255, 255, 255, 0.82);
    box-shadow:
        0 24px 60px rgba(24, 32, 51, 0.18),
        inset 0 1px 0 rgba(255, 255, 255, 0.86);
    opacity: 0;
    transform: translateY(-6px) scale(0.96);
    transform-origin: top right;
    pointer-events: none;
    transition: opacity 220ms ease, transform 260ms cubic-bezier(0.22, 1, 0.36, 1);
}

.site-announcement.open .site-announcement-panel {
    opacity: 1;
    transform: none;
    pointer-events: auto;
}

.site-announcement-panel__head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 0.85rem;
    margin-bottom: 0.75rem;
}

.site-announcement-panel__eyebrow {
    display: inline-flex;
    margin-bottom: 0.28rem;
    color: var(--teal);
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.site-announcement-panel__head strong {
    display: block;
    color: #1e2839;
    font-size: 1rem;
    letter-spacing: -0.02em;
}

.site-announcement-panel__close {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border: 0;
    border-radius: 999px;
    background: rgba(24, 32, 51, 0.05);
    color: #5d687d;
    font-size: 1.1rem;
    cursor: pointer;
    transition: background 160ms ease, transform 160ms ease, color 160ms ease;
}

.site-announcement-panel__close:hover {
    transform: rotate(90deg);
    background: rgba(24, 32, 51, 0.08);
    color: #1f2738;
}

.site-announcement-panel p {
    margin: 0;
    color: #526076;
    line-height: 1.7;
    font-size: 0.94rem;
}

@keyframes announcementPulse {
    0%, 100% {
        transform: scale(0.9);
        opacity: 0.42;
    }
    50% {
        transform: scale(1.08);
        opacity: 0.9;
    }
}

@keyframes announcementSweep {
    0%, 12% {
        transform: translateX(-165%) skewX(-18deg);
    }
    28%, 100% {
        transform: translateX(165%) skewX(-18deg);
    }
}

@keyframes announcementCoreFloat {
    0%, 100% {
        transform: translateY(-50%) scale(1);
    }
    50% {
        transform: translateY(calc(-50% - 1px)) scale(1.05);
    }
}

@keyframes announcementOrbit {
    0% {
        transform: rotate(0deg) scale(0.96);
        opacity: 0.58;
    }
    50% {
        transform: rotate(180deg) scale(1.03);
        opacity: 0.92;
    }
    100% {
        transform: rotate(360deg) scale(0.96);
        opacity: 0.58;
    }
}

@keyframes announcementInnerPulse {
    0%, 100% {
        transform: scale(0.92);
        opacity: 0.5;
    }
    50% {
        transform: scale(1.08);
        opacity: 0.86;
    }
}

@keyframes announcementBellSwing {
    0%, 40%, 100% {
        transform: rotate(0deg);
    }
    45% {
        transform: rotate(15deg);
    }
    52% {
        transform: rotate(-12deg);
    }
    60% {
        transform: rotate(8deg);
    }
    68% {
        transform: rotate(-5deg);
    }
    76% {
        transform: rotate(3deg);
    }
}

@keyframes announcementBeacon {
    0%, 100% {
        transform: scale(1);
        box-shadow: 0 0 0 6px rgba(44, 196, 182, 0.12);
    }
    50% {
        transform: scale(1.18);
        box-shadow: 0 0 0 10px rgba(44, 196, 182, 0.04);
    }
}

@media (max-width: 900px) {
    .header-actions {
        gap: 0.48rem;
        margin-left: 0.45rem;
    }

    .site-announcement {
        z-index: 54;
    }

    .site-announcement-trigger {
        min-width: 44px;
        height: 44px;
        padding: 0;
        justify-content: center;
        border-radius: 16px;
    }

    .site-announcement-trigger__icon-shell {
        left: 50%;
        width: 28px;
        height: 28px;
        transform: translate(-50%, -50%);
    }

    .site-announcement-trigger__label {
        display: none;
    }

    .site-announcement-panel {
        top: calc(100% + 0.72rem);
        right: 0;
        width: min(21rem, calc(100vw - 1rem));
        padding: 0.95rem;
        border-radius: 22px;
    }
}

@media (max-width: 560px) {
    .site-announcement-trigger {
        width: 42px;
        height: 42px;
        border-radius: 15px;
    }

    .site-announcement-trigger__icon-shell {
        width: 26px;
        height: 26px;
    }

    .site-announcement-trigger__icon {
        width: 16px;
        height: 16px;
    }

    .site-announcement-panel {
        top: calc(100% + 0.65rem);
        right: -0.15rem;
        width: min(19.5rem, calc(100vw - 0.8rem));
        padding: 0.9rem;
        border-radius: 20px;
    }

    .site-announcement-panel__head {
        margin-bottom: 0.65rem;
    }

    .site-announcement-panel p {
        font-size: 0.9rem;
        line-height: 1.62;
    }
}

@media (prefers-reduced-motion: reduce) {
    .site-announcement-trigger,
    .site-announcement-panel,
    .site-announcement-panel__close,
    .site-announcement-trigger__halo,
    .site-announcement-trigger__dot,
    .site-announcement-trigger::after,
    .site-announcement-trigger__icon-shell,
    .site-announcement-trigger__icon-shell::before,
    .site-announcement-trigger__icon-shell::after,
    .site-announcement-trigger__icon {
        animation: none !important;
        transition: none !important;
    }
}

.site-nav-backdrop {
    display: none;
}

.nav-toggle-copy {
    display: inline-flex;
    align-items: center;
    letter-spacing: 0.08em;
}

.nav-toggle-icon {
    position: relative;
    display: inline-flex;
    width: 18px;
    height: 14px;
}

.nav-toggle-icon span {
    position: absolute;
    left: 0;
    width: 100%;
    height: 2px;
    border-radius: 999px;
    background: currentColor;
    transform-origin: center;
    transition: transform 220ms ease, opacity 180ms ease, top 220ms ease, background 180ms ease;
}

.nav-toggle-icon span:nth-child(1) {
    top: 0;
}

.nav-toggle-icon span:nth-child(2) {
    top: 6px;
}

.nav-toggle-icon span:nth-child(3) {
    top: 12px;
}

@media (max-width: 900px) {
    .site-header {
        overflow: visible;
        isolation: isolate;
        z-index: 72;
    }

    .header-inner {
        z-index: 65;
    }

    .site-nav-backdrop {
        position: fixed;
        inset: 0;
        z-index: 60;
        display: block;
        border: 0;
        padding: 0;
        margin: 0;
        background:
            radial-gradient(circle at 50% 12%, rgba(255, 163, 97, 0.12), transparent 18rem),
            rgba(14, 21, 34, 0.24);
        backdrop-filter: blur(6px);
        opacity: 0;
        pointer-events: none;
        transition: opacity 220ms ease;
    }

    .site-nav-backdrop.open {
        opacity: 1;
        pointer-events: auto;
    }

    body.nav-open::after {
        display: none;
    }

    .nav-toggle {
        position: relative;
        z-index: 78;
        gap: 0.56rem;
        min-width: 92px;
        color: #334055;
        background:
            linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(255, 247, 239, 0.96));
        border-color: rgba(24, 32, 51, 0.08);
        box-shadow:
            inset 0 1px 0 rgba(255, 255, 255, 0.92),
            0 14px 28px rgba(24, 32, 51, 0.08);
    }

    .nav-toggle-copy {
        font-size: 0.82rem;
        font-weight: 800;
    }

    .nav-toggle[aria-expanded="true"] {
        color: #fff;
        background:
            linear-gradient(135deg, #ff9f63, #ff7f42 54%, #ff6b34);
    }

    .nav-toggle[aria-expanded="true"] .nav-toggle-icon span:nth-child(1) {
        top: 6px;
        transform: rotate(45deg);
    }

    .nav-toggle[aria-expanded="true"] .nav-toggle-icon span:nth-child(2) {
        opacity: 0;
    }

    .nav-toggle[aria-expanded="true"] .nav-toggle-icon span:nth-child(3) {
        top: 6px;
        transform: rotate(-45deg);
    }

    .site-nav {
        top: calc(env(safe-area-inset-top, 0px) + 4.85rem);
        left: 0.7rem;
        right: 0.7rem;
        z-index: 76;
        gap: 0.58rem;
        padding: 0.9rem;
        border-radius: 26px;
        background:
            radial-gradient(circle at 14% 0%, rgba(255, 171, 109, 0.18), transparent 11rem),
            radial-gradient(circle at 88% 6%, rgba(83, 192, 217, 0.12), transparent 10rem),
            linear-gradient(180deg, rgba(255, 252, 247, 0.98), rgba(255, 247, 240, 0.98));
        border: 1px solid rgba(255, 255, 255, 0.78);
        box-shadow:
            0 24px 60px rgba(24, 32, 51, 0.2),
            inset 0 1px 0 rgba(255, 255, 255, 0.86);
        transform: translateY(-14px) scale(0.96);
    }

    .site-nav.open {
        transform: translateY(0) scale(1);
    }

    .site-nav-head {
        display: block;
        padding: 0 0 0.1rem;
    }

    .site-nav-kicker {
        display: inline-flex;
        color: rgba(73, 86, 108, 0.9);
        font-size: 0.72rem;
        font-weight: 800;
        letter-spacing: 0.16em;
        text-transform: uppercase;
    }

    .site-nav > * {
        opacity: 0;
        transform: translateY(10px);
        transition: transform 240ms cubic-bezier(0.22, 1, 0.36, 1), opacity 180ms ease;
    }

    .site-nav.open > * {
        opacity: 1;
        transform: none;
    }

    .site-nav.open > *:nth-child(1) {
        transition-delay: 40ms;
    }

    .site-nav.open > *:nth-child(2) {
        transition-delay: 70ms;
    }

    .site-nav.open > *:nth-child(3) {
        transition-delay: 100ms;
    }

    .site-nav.open > *:nth-child(4) {
        transition-delay: 130ms;
    }

    .site-nav.open > *:nth-child(5) {
        transition-delay: 160ms;
    }

    .site-nav.open > *:nth-child(6) {
        transition-delay: 190ms;
    }

    .site-nav.open > *:nth-child(7) {
        transition-delay: 220ms;
    }

    .site-nav a,
    .site-nav .site-nav-cta {
        position: relative;
        display: flex;
        align-items: center;
        justify-content: space-between;
        min-height: 50px;
        padding: 0.92rem 1rem;
        border-radius: 18px;
        background: rgba(255, 255, 255, 0.72);
        border: 1px solid rgba(24, 32, 51, 0.05);
        box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.82);
    }

    .site-nav a::before {
        content: "";
        width: 8px;
        height: 8px;
        border-radius: 50%;
        background: linear-gradient(135deg, rgba(255, 153, 89, 0.95), rgba(83, 192, 217, 0.95));
        box-shadow: 0 0 0 6px rgba(255, 153, 89, 0.08);
        flex: 0 0 auto;
        margin-right: 0.8rem;
    }

    .site-nav a {
        gap: 0.1rem;
        font-size: 0.96rem;
        font-weight: 700;
        color: #324056;
    }

    .site-nav a:hover,
    .site-nav a:active {
        transform: translateY(-1px);
        background: rgba(255, 255, 255, 0.9);
    }

    .site-nav a.active {
        color: #1c2435;
        background:
            linear-gradient(135deg, rgba(255, 159, 99, 0.18), rgba(83, 192, 217, 0.12));
        border-color: rgba(255, 153, 89, 0.18);
    }

    .site-nav .site-nav-cta {
        margin-top: 0.15rem;
        justify-content: center;
        gap: 0.5rem;
        border: 0;
        box-shadow: 0 16px 32px rgba(255, 124, 58, 0.18);
    }

    .site-nav .site-nav-cta::before {
        content: "";
        width: 9px;
        height: 9px;
        border-radius: 50%;
        background: rgba(255, 255, 255, 0.92);
        box-shadow: 0 0 0 6px rgba(255, 255, 255, 0.14);
    }
}

@media (max-width: 620px) {
    .nav-toggle {
        min-width: 86px;
        gap: 0.48rem;
    }

    .nav-toggle-copy {
        font-size: 0.78rem;
    }

    .site-nav {
        left: 0.55rem;
        right: 0.55rem;
        top: calc(env(safe-area-inset-top, 0px) + 4.55rem);
        padding: 0.82rem;
        border-radius: 22px;
    }

    .site-nav a,
    .site-nav .site-nav-cta {
        min-height: 48px;
        padding: 0.88rem 0.92rem;
        border-radius: 16px;
    }
}

.page-console main {
    padding-top: 0.2rem;
}

.header-actions-auth,
.header-actions-console {
    margin-left: auto;
}

.header-actions-console {
    gap: 0.85rem;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.console-user-pill {
    display: flex;
    align-items: center;
    gap: 0.8rem;
    min-width: 0;
    padding: 0.4rem 0.78rem 0.4rem 0.42rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.82);
    border: 1px solid rgba(24, 32, 51, 0.06);
    box-shadow: 0 14px 32px rgba(24, 32, 51, 0.08);
}

.console-user-avatar {
    display: grid;
    place-items: center;
    width: 44px;
    height: 44px;
    border-radius: 15px;
    background: linear-gradient(135deg, var(--brand), var(--teal));
    color: #fff;
    font-weight: 700;
    font-size: 1rem;
    box-shadow: 0 10px 24px rgba(255, 140, 75, 0.2);
}

.console-user-copy {
    display: grid;
    min-width: 0;
    gap: 0.12rem;
}

.console-user-copy strong {
    font-size: 0.94rem;
    line-height: 1.1;
}

.console-user-copy small {
    max-width: 22rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: var(--ink-soft);
    font-size: 0.75rem;
}

.console-home-shell {
    padding-top: 0.85rem;
}

.console-mode-switch {
    margin-bottom: 1.2rem;
}

.console-pane-head {
    margin-bottom: 1rem;
}

.console-pane-head h2 {
    font-size: clamp(1.35rem, 2vw, 1.9rem);
}

.console-pane-head p {
    max-width: 34rem;
    color: var(--ink-soft);
}

.page-auth {
    background:
        radial-gradient(circle at 12% 14%, rgba(255, 140, 75, 0.24), transparent 28rem),
        radial-gradient(circle at 86% 18%, rgba(24, 178, 154, 0.15), transparent 26rem),
        linear-gradient(180deg, #fffaf3 0%, #fff5e8 45%, #fff9f2 100%);
}

.page-auth .site-header {
    background: rgba(255, 251, 245, 0.72);
    box-shadow: 0 12px 30px rgba(24, 32, 51, 0.03);
}

.page-auth .site-header-glow {
    opacity: 0.78;
}

.auth-stage {
    padding: 1.2rem 0 4rem;
}

.auth-shell {
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(380px, 0.92fr);
    gap: 1.25rem;
    align-items: stretch;
}

.auth-showcase,
.auth-panel {
    position: relative;
    overflow: hidden;
    border-radius: 34px;
    border: 1px solid rgba(24, 32, 51, 0.08);
    box-shadow: 0 32px 90px rgba(24, 32, 51, 0.1);
}

.auth-showcase {
    display: grid;
    align-content: space-between;
    gap: 1.35rem;
    min-height: 720px;
    padding: clamp(1.45rem, 3vw, 2.3rem);
    background:
        radial-gradient(circle at 14% 16%, rgba(255, 181, 119, 0.3), transparent 16rem),
        radial-gradient(circle at 84% 20%, rgba(24, 178, 154, 0.18), transparent 18rem),
        linear-gradient(145deg, rgba(255, 255, 255, 0.94), rgba(255, 246, 234, 0.82));
}

.auth-showcase::before,
.auth-panel::before {
    content: "";
    position: absolute;
    inset: auto auto -18% -12%;
    width: 240px;
    height: 240px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(255, 140, 75, 0.16), transparent 68%);
    pointer-events: none;
}

.auth-showcase-register::before {
    background: radial-gradient(circle, rgba(24, 178, 154, 0.18), transparent 68%);
}

.auth-panel {
    align-self: center;
    display: grid;
    gap: 1.15rem;
    padding: clamp(1.35rem, 3vw, 2rem);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(255, 250, 243, 0.88));
    backdrop-filter: blur(18px);
}

.auth-showcase-copy {
    position: relative;
    z-index: 1;
    display: grid;
    gap: 0.9rem;
    max-width: 36rem;
}

.auth-showcase-copy h1 {
    margin: 0;
    font-size: clamp(2.35rem, 5vw, 4rem);
    line-height: 0.98;
    letter-spacing: -0.05em;
}

.auth-showcase-copy p {
    margin: 0;
    max-width: 32rem;
    font-size: 1.02rem;
    line-height: 1.78;
    color: rgba(24, 32, 51, 0.78);
}

.auth-kicker {
    width: fit-content;
    padding: 0.42rem 0.88rem;
    background: rgba(24, 32, 51, 0.06);
}

.auth-chip-row {
    position: relative;
    z-index: 1;
    display: flex;
    flex-wrap: wrap;
    gap: 0.6rem;
}

.auth-chip-row span {
    display: inline-flex;
    align-items: center;
    padding: 0.55rem 0.88rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.72);
    border: 1px solid rgba(24, 32, 51, 0.06);
    color: #314055;
    font-size: 0.86rem;
    font-weight: 600;
    box-shadow: 0 12px 26px rgba(24, 32, 51, 0.06);
}

.auth-visual-stage {
    min-height: 280px;
    padding: 1.05rem;
    border-radius: 28px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.48), rgba(255, 246, 236, 0.2));
    border: 1px solid rgba(24, 32, 51, 0.06);
}

.auth-feature-grid {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.85rem;
}

.auth-feature-card {
    min-height: 0;
    padding: 1rem;
    border-radius: 22px;
    background: rgba(255, 255, 255, 0.7);
    border: 1px solid rgba(24, 32, 51, 0.06);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.82);
}

.auth-feature-card strong {
    display: block;
    margin-bottom: 0.45rem;
    font-size: 0.96rem;
}

.auth-feature-card p {
    margin: 0;
    color: var(--ink-soft);
    line-height: 1.65;
    font-size: 0.88rem;
}

.auth-tabs {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.35rem;
    padding: 0.34rem;
    border-radius: 999px;
    background: rgba(24, 32, 51, 0.06);
}

.auth-tabs a {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    min-height: 48px;
    border-radius: 999px;
    color: var(--ink-soft);
    font-weight: 700;
}

.auth-tabs a.is-active {
    color: #fff;
    background: linear-gradient(135deg, var(--brand), #ff9e53);
    box-shadow: 0 16px 30px rgba(255, 140, 75, 0.2);
}

.auth-heading {
    position: relative;
    z-index: 1;
    display: grid;
    gap: 0.45rem;
}

.auth-heading h2 {
    margin: 0;
    font-size: clamp(1.9rem, 3vw, 2.7rem);
    line-height: 1.02;
    letter-spacing: -0.04em;
}

.auth-heading p {
    margin: 0;
    color: var(--ink-soft);
    line-height: 1.75;
}

.auth-debug-note {
    position: relative;
    z-index: 1;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 0.85rem;
    padding: 0.95rem 1rem;
    border-radius: 20px;
    background: linear-gradient(135deg, rgba(255, 140, 75, 0.12), rgba(24, 178, 154, 0.08));
    border: 1px solid rgba(24, 32, 51, 0.06);
}

.auth-debug-note strong {
    font-size: 0.88rem;
}

.auth-debug-note span {
    color: var(--ink-soft);
    font-size: 0.88rem;
    word-break: break-all;
    text-align: right;
}

.auth-form-card {
    position: relative;
    z-index: 1;
    display: grid;
    gap: 0.95rem;
}

.auth-panel .field {
    display: grid;
    gap: 0.45rem;
}

.auth-panel .field span {
    font-weight: 700;
    color: #27334c;
}

.auth-panel .field input,
.auth-panel .field textarea,
.auth-panel .field select {
    min-height: 56px;
    padding: 0.95rem 1rem;
    border-radius: 20px;
    background: rgba(255, 250, 244, 0.94);
    border: 1px solid rgba(24, 32, 51, 0.08);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.84);
}

.auth-panel .field textarea {
    min-height: 140px;
}

.auth-panel .field input:focus,
.auth-panel .field textarea:focus,
.auth-panel .field select:focus {
    border-color: rgba(255, 140, 75, 0.52);
    box-shadow: 0 0 0 4px rgba(255, 140, 75, 0.12);
    background: #fff;
}

.auth-form-card .button {
    width: 100%;
    justify-content: center;
    min-height: 56px;
    font-size: 1rem;
}

.auth-link-stack {
    position: relative;
    z-index: 1;
    display: grid;
    gap: 0.75rem;
}

.auth-link-card {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
    padding: 1rem 1.05rem;
    border-radius: 22px;
    background: rgba(24, 32, 51, 0.04);
    border: 1px solid rgba(24, 32, 51, 0.06);
    transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease;
}

.auth-link-card:hover {
    transform: translateY(-2px);
    border-color: rgba(255, 140, 75, 0.2);
    box-shadow: 0 18px 34px rgba(24, 32, 51, 0.08);
}

.auth-link-card-muted {
    background: rgba(24, 178, 154, 0.06);
}

.auth-link-card strong {
    display: block;
    margin-bottom: 0.22rem;
}

.auth-link-card p {
    margin: 0;
    color: var(--ink-soft);
    line-height: 1.6;
    font-size: 0.9rem;
}

.form-grid.three {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.form-grid.four {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.field-span-2 {
    grid-column: span 2;
}

.page-studio main {
    padding-top: 0.6rem;
}

.studio-shell-section {
    padding-top: 1rem;
}

.studio-shell {
    display: grid;
    grid-template-columns: minmax(260px, 300px) minmax(0, 1fr);
    gap: 1rem;
    align-items: start;
}

.studio-sidebar,
.studio-panel {
    position: relative;
    overflow: hidden;
    border-radius: 30px;
    border: 1px solid rgba(24, 32, 51, 0.08);
    background: rgba(255, 255, 255, 0.88);
    box-shadow: 0 24px 60px rgba(24, 32, 51, 0.08);
}

.studio-sidebar {
    display: grid;
    gap: 0.9rem;
    padding: 1rem;
    background:
        radial-gradient(circle at top left, rgba(255, 181, 119, 0.26), transparent 15rem),
        linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(255, 248, 240, 0.88));
}

.studio-sidebar-head {
    display: grid;
    gap: 0.22rem;
    padding-bottom: 0.1rem;
}

.studio-sidebar-head h1 {
    margin: 0;
    font-size: clamp(1.34rem, 1.65vw, 1.74rem);
    line-height: 1.05;
}

.studio-sidebar-head p {
    margin: 0;
    color: var(--ink-soft);
    line-height: 1.72;
}

.studio-nav {
    display: grid;
    gap: 0.72rem;
}

.studio-nav a {
    display: flex;
    align-items: center;
    gap: 0.8rem;
    min-height: 74px;
    padding: 0.95rem 1rem;
    border-radius: 24px;
    background: rgba(255, 255, 255, 0.78);
    border: 1px solid rgba(24, 32, 51, 0.06);
    transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease, background 180ms ease;
}

.studio-nav a:hover,
.studio-nav a.is-active {
    transform: translateY(-2px);
    border-color: rgba(255, 140, 75, 0.2);
    box-shadow: 0 18px 34px rgba(24, 32, 51, 0.08);
}

.studio-nav a.is-active {
    order: -1;
    background:
        radial-gradient(circle at top right, rgba(255, 179, 124, 0.24), transparent 10rem),
        linear-gradient(180deg, rgba(255, 252, 248, 0.98), rgba(255, 245, 232, 0.96));
    border-color: rgba(255, 140, 75, 0.26);
    box-shadow:
        0 22px 40px rgba(24, 32, 51, 0.08),
        inset 0 1px 0 rgba(255, 255, 255, 0.88);
}

.studio-nav-icon {
    display: grid;
    place-items: center;
    width: 44px;
    height: 44px;
    border-radius: 16px;
    background: linear-gradient(135deg, rgba(255, 168, 102, 0.22), rgba(255, 219, 179, 0.58));
    color: var(--brand-dark);
    font-size: 1rem;
    font-weight: 800;
    letter-spacing: 0.04em;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.9);
}

.studio-nav a:hover .studio-nav-icon,
.studio-nav a.is-active .studio-nav-icon {
    background: linear-gradient(135deg, rgba(255, 145, 72, 0.92), rgba(255, 188, 133, 0.98));
    color: #fff;
    box-shadow:
        0 16px 28px rgba(255, 145, 72, 0.2),
        inset 0 1px 0 rgba(255, 255, 255, 0.34);
}

.studio-nav-label {
    font-size: 0.97rem;
    font-weight: 700;
    line-height: 1.4;
    color: var(--ink-strong);
}

.studio-quick-links {
    display: grid;
    gap: 0.7rem;
}

.studio-quick-link {
    display: grid;
    gap: 0.24rem;
    padding: 0.95rem 1rem;
    border-radius: 22px;
    background: rgba(24, 32, 51, 0.04);
    border: 1px solid rgba(24, 32, 51, 0.06);
    transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease;
}

.studio-quick-link:hover {
    transform: translateY(-2px);
    border-color: rgba(89, 145, 255, 0.22);
    box-shadow: 0 20px 40px rgba(21, 35, 68, 0.08);
}

.studio-quick-link span {
    color: var(--ink-soft);
    line-height: 1.6;
}

.studio-gallery-card {
    padding: 0.95rem 1rem;
    border-radius: 22px;
    background: rgba(24, 32, 51, 0.04);
    border: 1px solid rgba(24, 32, 51, 0.06);
}

.studio-gallery-card strong {
    display: block;
    margin-bottom: 0.38rem;
}

.studio-gallery-card p,
.studio-gallery-card small {
    margin: 0;
    color: var(--ink-soft);
    line-height: 1.6;
}

.studio-main {
    display: grid;
    gap: 1rem;
}

.studio-topbar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
    padding: 1rem 1.15rem;
    border-radius: 28px;
    border: 1px solid rgba(24, 32, 51, 0.08);
    background: rgba(255, 255, 255, 0.86);
    box-shadow: 0 18px 46px rgba(24, 32, 51, 0.06);
}

.studio-mode-switch {
    margin: 0;
    flex: 0 0 auto;
}

.studio-mode-switch a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    padding: 0.8rem 1.2rem;
    border-radius: 999px;
    color: var(--ink-soft);
    font-weight: 700;
}

.studio-mode-switch a.is-active {
    color: #fff;
    background: linear-gradient(135deg, var(--brand), #ff9e53);
    box-shadow: 0 18px 32px rgba(255, 140, 75, 0.2);
}

.studio-topbar-copy {
    display: grid;
    gap: 0.18rem;
    text-align: right;
}

.studio-topbar-copy strong {
    font-size: 0.96rem;
}

.studio-topbar-copy span {
    color: var(--ink-soft);
    font-size: 0.86rem;
}

.studio-workspace {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(360px, 0.95fr);
    gap: 1rem;
}

.studio-workspace-single {
    grid-template-columns: minmax(0, 1fr);
}

.studio-workspace-focus {
    grid-template-columns: 1fr;
    align-items: start;
}

.studio-panel {
    display: grid;
    gap: 1rem;
    padding: 1.2rem;
}

.studio-panel-form {
    align-content: start;
}

.studio-panel-live {
    align-content: start;
    position: static;
    top: auto;
}

.studio-panel-head-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
}

.studio-panel-toggle {
    flex: 0 0 auto;
}

.studio-form-shell {
    display: grid;
    gap: 1rem;
    max-height: 2200px;
    opacity: 1;
    overflow: hidden;
    transition:
        max-height 0.42s ease,
        opacity 0.28s ease,
        transform 0.28s ease,
        margin 0.28s ease;
}

.studio-panel-form.is-collapsed .studio-form-shell {
    max-height: 0;
    opacity: 0;
    transform: translateY(-0.18rem);
    margin-top: 0;
    pointer-events: none;
}

.studio-form {
    display: grid;
    gap: 0.95rem;
}

.studio-form .field {
    display: grid;
    gap: 0.42rem;
}

.studio-form .field small {
    color: var(--ink-soft);
    line-height: 1.6;
}

.studio-check-row {
    display: flex;
    flex-wrap: wrap;
    gap: 0.85rem 1rem;
    color: var(--ink-soft);
    font-size: 0.92rem;
}

.studio-check-row label {
    display: inline-flex;
    align-items: center;
    gap: 0.42rem;
}

.studio-result-card {
    display: grid;
    gap: 1rem;
    padding: 1.08rem;
    border-radius: 24px;
    background: linear-gradient(180deg, rgba(24, 32, 51, 0.03), rgba(255, 249, 242, 0.86));
    border: 1px solid rgba(24, 32, 51, 0.06);
    box-shadow: 0 18px 44px rgba(113, 82, 54, 0.07);
}

.studio-result-card-processing {
    background:
        radial-gradient(circle at top right, rgba(255, 186, 122, 0.24), transparent 18rem),
        radial-gradient(circle at bottom left, rgba(255, 223, 179, 0.46), transparent 18rem),
        linear-gradient(180deg, rgba(255, 252, 248, 0.96), rgba(255, 244, 234, 0.94));
    border-color: rgba(255, 162, 102, 0.22);
    color: var(--ink);
}

.studio-result-card-processing p,
.studio-result-card-processing .studio-result-meta span,
.studio-result-card-processing .studio-processing-copy p {
    color: rgba(83, 96, 116, 0.92);
}

.studio-result-card-success {
    background:
        radial-gradient(circle at top left, rgba(77, 203, 143, 0.16), transparent 15rem),
        linear-gradient(180deg, rgba(250, 255, 252, 0.96), rgba(244, 255, 248, 0.94));
}

.studio-result-card-danger {
    background:
        radial-gradient(circle at top left, rgba(255, 104, 104, 0.14), transparent 15rem),
        linear-gradient(180deg, rgba(255, 251, 251, 0.98), rgba(255, 244, 244, 0.95));
}

.studio-result-card-empty {
    min-height: 360px;
    align-content: center;
    background:
        radial-gradient(circle at top left, rgba(255, 195, 143, 0.12), transparent 16rem),
        linear-gradient(180deg, rgba(255, 252, 248, 0.98), rgba(250, 246, 241, 0.96));
}

.studio-result-meta {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    align-items: center;
}

.studio-result-meta strong {
    display: block;
}

.studio-result-meta span {
    color: var(--ink-soft);
    font-size: 0.88rem;
}

.studio-status-pill {
    display: inline-flex;
    align-items: center;
    gap: 0.55rem;
    padding: 0.62rem 0.88rem;
    border-radius: 999px;
    font-size: 0.82rem;
    font-weight: 700;
    border: 1px solid rgba(24, 32, 51, 0.08);
    background: rgba(255, 255, 255, 0.88);
}

.studio-status-pill-processing {
    color: #9b5411;
    background: rgba(255, 186, 122, 0.18);
    border-color: rgba(255, 162, 102, 0.24);
}

.studio-status-pill-success {
    color: #127a46;
    background: rgba(77, 203, 143, 0.14);
    border-color: rgba(77, 203, 143, 0.24);
}

.studio-status-pill-danger {
    color: #b13a3a;
    background: rgba(255, 104, 104, 0.12);
    border-color: rgba(255, 104, 104, 0.22);
}

.studio-status-pill-pending {
    color: #925d0d;
    background: rgba(255, 188, 84, 0.14);
    border-color: rgba(255, 188, 84, 0.22);
}

.studio-status-dot {
    width: 0.6rem;
    height: 0.6rem;
    border-radius: 999px;
    background: currentColor;
    box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.32);
    animation: studioPulseDot 1.7s ease-out infinite;
}

.studio-live-panel {
    display: grid;
    gap: 1rem;
}

.studio-processing-shell {
    display: grid;
    grid-template-columns: minmax(220px, 0.9fr) minmax(0, 1fr);
    gap: 1rem;
    align-items: center;
    padding: 1rem 1.05rem;
    border-radius: 28px;
    background: rgba(255, 255, 255, 0.52);
    border: 1px solid rgba(255, 180, 120, 0.18);
}

.studio-processing-copy {
    display: grid;
    gap: 0.35rem;
}

.studio-processing-copy strong,
.studio-processing-copy p {
    margin: 0;
}

.studio-processing-stage {
    position: relative;
    width: 100%;
    max-width: 280px;
    aspect-ratio: var(--studio-task-aspect, 1 / 1);
    margin: 0 auto;
    border-radius: 24px;
    overflow: hidden;
    background:
        linear-gradient(135deg, rgba(255, 252, 248, 0.98), rgba(255, 238, 217, 0.92)),
        linear-gradient(180deg, rgba(255, 255, 255, 0.75), rgba(255, 248, 240, 0.82));
    border: 1px solid rgba(255, 176, 118, 0.22);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.88),
        0 18px 36px rgba(24, 32, 51, 0.08);
}

.studio-processing-stage::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(90deg, rgba(255, 255, 255, 0.08) 0 8%, transparent 8% 16%, rgba(255, 255, 255, 0.06) 16% 24%, transparent 24% 32%, rgba(255, 255, 255, 0.05) 32% 40%, transparent 40% 48%, rgba(255, 255, 255, 0.07) 48% 56%, transparent 56% 64%, rgba(255, 255, 255, 0.06) 64% 72%, transparent 72% 80%, rgba(255, 255, 255, 0.08) 80% 88%, transparent 88% 100%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.1) 0 8%, transparent 8% 16%, rgba(255, 255, 255, 0.06) 16% 24%, transparent 24% 32%, rgba(255, 255, 255, 0.05) 32% 40%, transparent 40% 48%, rgba(255, 255, 255, 0.07) 48% 56%, transparent 56% 64%, rgba(255, 255, 255, 0.06) 64% 72%, transparent 72% 80%, rgba(255, 255, 255, 0.08) 80% 88%, transparent 88% 100%);
    opacity: 0.52;
    mix-blend-mode: soft-light;
}

.studio-processing-mesh,
.studio-processing-beam,
.studio-processing-orbit {
    position: absolute;
    pointer-events: none;
}

.studio-processing-mesh {
    inset: 0;
    background:
        linear-gradient(rgba(255, 255, 255, 0.2) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.18) 1px, transparent 1px);
    background-size: 18px 18px;
    opacity: 0.34;
    mask-image: linear-gradient(180deg, rgba(0, 0, 0, 0.08), rgba(0, 0, 0, 0.78));
    animation: studioMeshShift 7.2s linear infinite;
}

.studio-processing-glow {
    position: absolute;
    border-radius: 999px;
    filter: blur(26px);
    opacity: 0.72;
    animation: studioGlowFloat 3.8s ease-in-out infinite;
}

.studio-processing-glow.glow-a {
    top: 10%;
    left: 12%;
    width: 34%;
    height: 28%;
    background: rgba(255, 173, 114, 0.42);
}

.studio-processing-glow.glow-b {
    right: 10%;
    bottom: 12%;
    width: 38%;
    height: 30%;
    background: rgba(255, 226, 189, 0.72);
    animation-delay: 1.2s;
}

.studio-processing-beam {
    left: -16%;
    width: 40%;
    height: 150%;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0), rgba(255, 250, 242, 0.78), rgba(255, 255, 255, 0));
    opacity: 0.46;
    transform: rotate(14deg);
    filter: blur(2px);
    animation: studioBeamSweep 4.6s linear infinite;
}

.studio-processing-beam.beam-b {
    left: auto;
    right: -18%;
    width: 34%;
    opacity: 0.24;
    transform: rotate(-16deg);
    animation-duration: 6.1s;
    animation-direction: reverse;
}

.studio-processing-orbit {
    border-radius: 999px;
    border: 1px solid rgba(255, 194, 139, 0.36);
    animation: studioSpin 9s linear infinite;
}

.studio-processing-orbit.orbit-a {
    inset: 10%;
}

.studio-processing-orbit.orbit-b {
    inset: 19%;
    border-style: dashed;
    opacity: 0.72;
    animation: studioSpinReverse 7.6s linear infinite;
}

.studio-processing-cat {
    position: absolute;
    inset: 14%;
    display: grid;
    place-items: center;
}

.studio-processing-cat img {
    width: min(62%, 180px);
    image-rendering: pixelated;
    filter:
        blur(7px)
        saturate(1.05)
        drop-shadow(0 24px 40px rgba(255, 140, 75, 0.18));
    transform: scale(1.08);
    opacity: 0.9;
    animation: studioCatResolve 2.8s steps(6, end) infinite alternate;
}

.studio-processing-steps {
    display: flex;
    flex-wrap: wrap;
    gap: 0.55rem;
    margin-top: 0.3rem;
}

.studio-processing-steps span {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 0.32rem;
    padding: 0.46rem 0.72rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.72);
    border: 1px solid rgba(255, 184, 125, 0.2);
    color: #8a5717;
    font-size: 0.8rem;
    font-weight: 700;
}

.studio-processing-steps span::before {
    content: "";
    width: 0.42rem;
    height: 0.42rem;
    border-radius: 999px;
    background: currentColor;
    box-shadow: 0 0 0 0 rgba(255, 184, 125, 0.4);
    animation: studioPulseDot 1.7s ease-out infinite;
}

.studio-result-card h3,
.studio-result-card p {
    margin: 0;
}

.studio-result-card p {
    color: var(--ink-soft);
    line-height: 1.72;
}

.studio-panel-live .studio-result-card {
    align-content: start;
}

.studio-music-hero {
    display: grid;
    gap: 0.82rem;
}

.studio-music-hero-stage {
    position: relative;
    min-height: 240px;
    overflow: hidden;
    border-radius: 24px;
    border: 1px solid rgba(232, 173, 122, 0.14);
    background:
        radial-gradient(circle at top left, rgba(255, 196, 147, 0.14), transparent 12rem),
        linear-gradient(180deg, rgba(255, 252, 248, 0.98), rgba(249, 243, 236, 0.97));
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.78);
}

.studio-music-hero-stage img,
.studio-music-hero-stage video,
.studio-music-hero-stage .studio-audio-poster,
.resource-card-visual .studio-music-hero-stage img,
.resource-card-visual .studio-music-hero-stage video,
.resource-card-visual .studio-music-hero-stage .studio-audio-poster {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 240px;
    object-fit: cover;
}

.studio-music-track-row {
    position: absolute;
    top: 0.9rem;
    left: 0.9rem;
    right: 4.4rem;
    display: flex;
    flex-wrap: wrap;
    gap: 0.58rem;
    z-index: 2;
}

.studio-music-track-pill {
    position: relative;
    display: inline-grid;
    gap: 0.12rem;
    min-height: 2.7rem;
    min-width: 6.6rem;
    padding: 0.62rem 0.9rem 0.62rem 2.9rem;
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 18px;
    background:
        linear-gradient(135deg, rgba(29, 36, 52, 0.82), rgba(62, 45, 34, 0.72)),
        rgba(18, 24, 37, 0.68);
    color: #fff;
    text-align: left;
    backdrop-filter: blur(18px);
    box-shadow:
        0 18px 38px rgba(18, 24, 37, 0.16),
        inset 0 1px 0 rgba(255, 255, 255, 0.16);
    cursor: pointer;
    isolation: isolate;
    transition:
        transform 180ms ease,
        background 180ms ease,
        border-color 180ms ease,
        box-shadow 180ms ease;
}

.studio-music-track-pill::before {
    content: '▶';
    position: absolute;
    top: 50%;
    left: 0.82rem;
    transform: translateY(-50%);
    display: grid;
    place-items: center;
    width: 1.72rem;
    height: 1.72rem;
    border-radius: 999px;
    background: linear-gradient(135deg, rgba(255, 196, 146, 0.96), rgba(255, 142, 77, 0.98));
    color: #fffaf4;
    font-size: 0.74rem;
    font-weight: 900;
    text-indent: 0.08em;
    box-shadow:
        0 10px 22px rgba(255, 140, 75, 0.28),
        inset 0 1px 0 rgba(255, 255, 255, 0.32);
}

.studio-music-track-pill::after {
    content: '';
    position: absolute;
    inset: 1px;
    border-radius: inherit;
    background: linear-gradient(140deg, rgba(255, 255, 255, 0.14), rgba(255, 255, 255, 0));
    opacity: 0.6;
    z-index: -1;
}

.studio-music-track-pill:hover {
    transform: translateY(-2px) scale(1.01);
    border-color: rgba(255, 218, 183, 0.34);
    box-shadow:
        0 22px 40px rgba(18, 24, 37, 0.2),
        0 0 0 1px rgba(255, 230, 206, 0.08);
}

.studio-music-track-pill:focus-visible {
    outline: none;
    border-color: rgba(255, 214, 178, 0.48);
    box-shadow:
        0 0 0 4px rgba(255, 179, 116, 0.16),
        0 22px 40px rgba(18, 24, 37, 0.2);
}

.studio-music-track-pill strong,
.studio-music-track-pill span {
    line-height: 1.2;
}

.studio-music-track-pill strong {
    font-size: 0.84rem;
    font-weight: 800;
    letter-spacing: 0.01em;
}

.studio-music-track-pill span {
    color: rgba(255, 243, 232, 0.74);
    font-size: 0.72rem;
}

.studio-music-summary-copy {
    display: grid;
    gap: 0.18rem;
}

.studio-music-summary-copy strong,
.studio-music-summary-copy p {
    margin: 0;
}

.studio-music-summary-copy p {
    color: var(--ink-soft);
}

.studio-result-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.8rem;
}

.studio-media-grid {
    display: grid;
    gap: 0.8rem;
}

.studio-media-card {
    overflow: hidden;
    border-radius: 22px;
    border: 1px solid rgba(24, 32, 51, 0.08);
    background: #fff;
}

.studio-media-stage,
.resource-card-stage {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    background:
        radial-gradient(circle at top left, rgba(255, 190, 138, 0.14), transparent 14rem),
        linear-gradient(180deg, rgba(255, 252, 248, 0.98), rgba(248, 243, 236, 0.96));
}

.studio-media-stage[data-media-preview],
.resource-card-stage[data-media-preview],
.studio-copy-visual[data-media-preview] {
    cursor: pointer;
}

.studio-media-stage[data-media-preview]:focus-visible,
.resource-card-stage[data-media-preview]:focus-visible,
.studio-copy-visual[data-media-preview]:focus-visible {
    outline: 2px solid rgba(255, 153, 82, 0.6);
    outline-offset: 3px;
}

.studio-media-fallback {
    display: grid;
    place-items: center;
    min-height: 220px;
    font-weight: 800;
    letter-spacing: 0.12em;
    color: var(--ink-soft);
    background:
        radial-gradient(circle at top, rgba(89, 145, 255, 0.14), transparent 14rem),
        linear-gradient(180deg, rgba(248, 250, 255, 1), rgba(245, 247, 251, 1));
}

.studio-media-card img,
.studio-media-card video,
.studio-media-card audio {
    display: block;
    width: 100%;
}

.studio-media-card img,
.studio-media-card video {
    max-height: 320px;
    object-fit: cover;
}

.studio-media-stage img,
.studio-media-stage video,
.resource-card-stage img,
.resource-card-stage video {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 240px;
    object-fit: cover;
}

.studio-media-stage-audio,
.resource-card-stage-audio {
    min-height: 240px;
}

.resource-card-stage {
    min-height: 220px;
    height: 100%;
    border-radius: 20px;
}

.resource-card-stage img,
.resource-card-stage video,
.resource-card-stage .studio-audio-poster {
    min-height: 220px;
}

.studio-media-trigger {
    position: absolute;
    left: 50%;
    bottom: 1rem;
    transform: translateX(-50%);
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    min-height: 2.6rem;
    padding: 0.78rem 1rem;
    border: 0;
    border-radius: 999px;
    background: rgba(18, 24, 37, 0.74);
    color: #fff;
    font-weight: 700;
    backdrop-filter: blur(16px);
    box-shadow: 0 20px 40px rgba(18, 24, 37, 0.18);
    cursor: pointer;
    transition: transform 180ms ease, background 180ms ease, box-shadow 180ms ease;
    z-index: 2;
}

.studio-media-trigger:hover {
    transform: translateX(-50%) translateY(-2px);
    background: rgba(18, 24, 37, 0.86);
    box-shadow: 0 26px 44px rgba(18, 24, 37, 0.22);
}

.studio-media-trigger-icon {
    position: relative;
    display: inline-grid;
    place-items: center;
    width: 1.5rem;
    height: 1.5rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.16);
    flex: 0 0 auto;
}

.studio-media-trigger-icon.is-play::before {
    content: "";
    margin-left: 0.1rem;
    border-top: 0.34rem solid transparent;
    border-bottom: 0.34rem solid transparent;
    border-left: 0.52rem solid #fff;
}

.studio-media-trigger-icon.is-zoom::before {
    content: "+";
    font-size: 1rem;
    line-height: 1;
    font-weight: 800;
}

.studio-audio-poster {
    position: relative;
    display: grid;
    place-items: center;
    gap: 0.55rem;
    min-height: 240px;
    padding: 1.2rem;
    text-align: center;
    background:
        radial-gradient(circle at top, rgba(255, 202, 154, 0.28), transparent 13rem),
        linear-gradient(180deg, rgba(255, 250, 246, 0.98), rgba(248, 243, 236, 0.96));
}

.studio-audio-poster strong,
.studio-audio-poster small {
    position: relative;
    z-index: 1;
}

.studio-audio-poster small {
    color: var(--ink-soft);
}

.studio-audio-wave {
    width: 3.6rem;
    height: 0.56rem;
    border-radius: 999px;
    background: linear-gradient(90deg, rgba(255, 159, 94, 0.26), rgba(255, 121, 86, 0.78), rgba(255, 208, 169, 0.32));
    animation: studioAudioPulse 1.8s ease-in-out infinite;
}

.studio-audio-wave:nth-child(2) {
    width: 5rem;
    animation-delay: 0.18s;
}

.studio-audio-wave:nth-child(3) {
    width: 4.1rem;
    animation-delay: 0.36s;
}

.studio-media-caption {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 0.8rem;
    padding: 0.75rem 0.9rem;
}

.studio-media-caption-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.55rem;
    justify-content: flex-end;
}

.studio-media-caption a {
    color: var(--brand);
    font-weight: 700;
}

.studio-history-list {
    display: grid;
    gap: 0.72rem;
}

.studio-history-card {
    display: grid;
    grid-template-columns: 88px minmax(0, 1fr) auto;
    gap: 0.8rem;
    align-items: center;
    padding: 0.92rem 1rem;
    border-radius: 20px;
    background: rgba(24, 32, 51, 0.04);
    border: 1px solid rgba(24, 32, 51, 0.06);
}

.studio-history-card-success {
    border-color: rgba(77, 203, 143, 0.22);
    background: rgba(77, 203, 143, 0.08);
}

.studio-history-card-danger {
    border-color: rgba(255, 104, 104, 0.22);
    background: rgba(255, 104, 104, 0.06);
}

.studio-history-card-processing,
.studio-history-card-pending {
    border-color: rgba(89, 145, 255, 0.2);
    background: rgba(89, 145, 255, 0.06);
}

.studio-history-thumb {
    width: 88px;
    height: 88px;
    overflow: hidden;
    border-radius: 18px;
    background: rgba(24, 32, 51, 0.06);
}

.studio-history-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.studio-history-thumb video,
.studio-history-thumb .studio-history-audio-thumb {
    width: 100%;
    height: 100%;
}

.studio-history-thumb video {
    object-fit: cover;
    display: block;
}

.studio-history-audio-thumb {
    display: grid;
    place-items: center;
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.16em;
    color: #9b6121;
    background:
        radial-gradient(circle at top, rgba(255, 202, 154, 0.34), transparent 10rem),
        linear-gradient(180deg, rgba(255, 251, 247, 0.98), rgba(247, 240, 232, 0.96));
}

.studio-history-card strong {
    display: block;
    margin-bottom: 0.18rem;
}

.studio-history-card p,
.studio-history-card small,
.studio-history-card span {
    margin: 0;
    color: var(--ink-soft);
}

.studio-history-meta {
    display: grid;
    gap: 0.12rem;
    text-align: right;
    flex: 0 0 auto;
}

.studio-empty-state {
    min-height: 240px;
}

.studio-inline-error {
    margin: 0;
}

.studio-form.is-submitting {
    opacity: 0.9;
}

.studio-submit-note {
    display: grid;
    gap: 0.38rem;
    padding: 1rem 1.05rem;
    border-radius: 22px;
    background: linear-gradient(180deg, rgba(255, 249, 242, 0.96), rgba(255, 255, 255, 0.98));
    border: 1px solid rgba(255, 158, 83, 0.16);
}

.studio-submit-note strong,
.studio-submit-note p {
    margin: 0;
}

.studio-submit-note p {
    color: var(--ink-soft);
    line-height: 1.72;
}

.studio-submit-note-processing {
    border-color: rgba(89, 145, 255, 0.18);
    background: linear-gradient(180deg, rgba(247, 249, 255, 0.96), rgba(255, 255, 255, 0.98));
}

.studio-submit-note-success {
    border-color: rgba(77, 203, 143, 0.2);
    background: linear-gradient(180deg, rgba(247, 255, 250, 0.96), rgba(255, 255, 255, 0.98));
}

.studio-submit-note-error {
    border-color: rgba(255, 104, 104, 0.18);
    background: linear-gradient(180deg, rgba(255, 249, 249, 0.96), rgba(255, 255, 255, 0.98));
}

.resource-library-section {
    padding-top: 1rem;
}

.resource-library-section .metric-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.85rem;
    margin-top: 0.85rem;
}

.resource-library-section .metric-card {
    display: grid;
    gap: 0.28rem;
    min-height: 0;
    padding: 1rem 1.05rem;
    border-radius: 22px;
}

.resource-library-section .metric-card strong {
    font-size: clamp(1.4rem, 2vw, 1.82rem);
    line-height: 1;
}

.resource-library-section .metric-card span {
    font-size: 0.84rem;
    letter-spacing: 0.01em;
}

.resource-library-hero {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    align-items: end;
    padding: 1.25rem 1.35rem;
    border-radius: 30px;
    border: 1px solid rgba(24, 32, 51, 0.08);
    background:
        radial-gradient(circle at top left, rgba(89, 145, 255, 0.12), transparent 22rem),
        radial-gradient(circle at bottom right, rgba(255, 156, 107, 0.14), transparent 22rem),
        rgba(255, 255, 255, 0.88);
    box-shadow: 0 24px 60px rgba(24, 32, 51, 0.08);
}

.resource-library-hero h1,
.resource-library-hero p {
    margin: 0;
}

.resource-library-hero h1 {
    margin-top: 0.25rem;
    margin-bottom: 0.55rem;
    font-size: clamp(2rem, 3vw, 3.1rem);
}

.resource-library-hero p {
    color: var(--ink-soft);
    max-width: 42rem;
    line-height: 1.75;
}

.resource-library-actions {
    display: flex;
    gap: 0.75rem;
    flex-wrap: wrap;
}

.resource-library-filter {
    margin-top: 1rem;
}

.resource-library-group {
    margin-top: 1rem;
}

.resource-filter-actions {
    align-items: end;
}

.resource-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
    margin-top: 1rem;
    align-items: stretch;
}

.resource-card {
    display: grid;
    grid-template-rows: auto auto 1fr auto;
    gap: 0.9rem;
    height: 100%;
    padding: 0.95rem;
    position: relative;
    overflow: hidden;
    border-radius: 24px;
    border: 1px solid rgba(24, 32, 51, 0.08);
    background: rgba(255, 255, 255, 0.92);
    box-shadow: 0 20px 48px rgba(24, 32, 51, 0.08);
}

.resource-card::before {
    content: "";
    position: absolute;
    inset: 0 0 auto;
    height: 110px;
    background: linear-gradient(180deg, rgba(255, 196, 146, 0.12), rgba(255, 255, 255, 0));
    pointer-events: none;
}

.resource-card-success {
    border-color: rgba(77, 203, 143, 0.22);
}

.resource-card-danger {
    border-color: rgba(255, 104, 104, 0.22);
}

.resource-card-processing,
.resource-card-pending {
    border-color: rgba(89, 145, 255, 0.2);
}

.resource-card-visual {
    position: relative;
    overflow: hidden;
    min-height: 220px;
    border-radius: 20px;
    background: rgba(24, 32, 51, 0.05);
    border: 1px solid rgba(24, 32, 51, 0.06);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.68);
}

.resource-card-visual .studio-music-hero,
.resource-card-visual .studio-music-hero-stage {
    height: 100%;
}

.resource-card-visual .studio-music-hero-stage,
.resource-card-visual .studio-music-hero-stage img,
.resource-card-visual .studio-music-hero-stage video,
.resource-card-visual .studio-music-hero-stage .studio-audio-poster {
    min-height: 220px;
}

.resource-card-visual img {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 220px;
    object-fit: cover;
}

.resource-card-visual > .resource-card-stage,
.resource-card-visual > img {
    width: 100%;
    height: 100%;
}

.resource-card-stage img,
.resource-card-stage video,
.resource-card-visual > img {
    transition: transform 260ms ease, filter 260ms ease;
}

.resource-card:hover .resource-card-stage img,
.resource-card:hover .resource-card-stage video,
.resource-card:hover .resource-card-visual > img {
    transform: scale(1.03);
}

.resource-card-fallback {
    display: grid;
    place-items: center;
    min-height: 220px;
    font-weight: 800;
    letter-spacing: 0.12em;
    color: var(--ink-soft);
}

.resource-card-badge {
    position: absolute;
    top: 0.8rem;
    right: 0.8rem;
    display: inline-flex;
    align-items: center;
    min-height: 2rem;
    padding: 0.45rem 0.75rem;
    border-radius: 999px;
    font-size: 0.76rem;
    font-weight: 800;
    color: #fff;
    background: rgba(24, 32, 51, 0.72);
    backdrop-filter: blur(14px);
}

.resource-card-copy {
    display: grid;
    gap: 0.32rem;
    align-content: start;
}

.resource-card-copy strong,
.resource-card-copy p,
.resource-card-copy small {
    margin: 0;
}

.resource-card-copy strong {
    line-height: 1.45;
}

.resource-card-copy p,
.resource-card-copy small {
    color: var(--ink-soft);
    line-height: 1.65;
}

.resource-card-copy p {
    font-weight: 600;
}

.resource-card-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.65rem;
    margin-top: auto;
    align-items: stretch;
}

.resource-card-inline-form {
    margin: 0;
    display: block;
}

.resource-card-actions > * {
    min-width: 0;
}

.resource-card-actions > :last-child:nth-child(odd) {
    grid-column: 1 / -1;
}

.resource-card-actions .button,
.resource-card-inline-form .button {
    width: 100%;
    justify-content: center;
}

.media-lightbox-open {
    overflow: hidden;
}

.media-lightbox {
    position: fixed;
    inset: 0;
    display: grid;
    place-items: center;
    padding: 1.5rem;
    z-index: 80;
}

.media-lightbox[hidden] {
    display: none;
}

.media-lightbox-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(16, 21, 33, 0.62);
    backdrop-filter: blur(18px);
}

.media-lightbox-dialog {
    position: relative;
    width: min(94vw, 1380px);
    height: min(94vh, 980px);
    max-height: 94vh;
    display: grid;
    grid-template-rows: auto minmax(0, 1fr);
    gap: 0.9rem;
    padding: clamp(0.95rem, 2vw, 1.2rem);
    border-radius: 32px;
    overflow: hidden;
    background:
        linear-gradient(180deg, rgba(255, 252, 248, 0.97), rgba(250, 246, 239, 0.95)),
        rgba(255, 252, 248, 0.94);
    border: 1px solid rgba(255, 255, 255, 0.56);
    box-shadow:
        0 42px 120px rgba(16, 21, 33, 0.28),
        inset 0 1px 0 rgba(255, 255, 255, 0.6);
    z-index: 1;
}

.media-lightbox-dialog::before {
    content: '';
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at top left, rgba(255, 211, 175, 0.34), transparent 24rem),
        radial-gradient(circle at right center, rgba(255, 241, 226, 0.42), transparent 20rem);
    pointer-events: none;
}

.media-lightbox-head {
    position: relative;
    z-index: 1;
    padding-right: 3rem;
}

.media-lightbox-close {
    position: absolute;
    top: 0.8rem;
    right: 0.8rem;
    width: 2.8rem;
    height: 2.8rem;
    display: grid;
    place-items: center;
    border: 1px solid rgba(255, 226, 199, 0.44);
    border-radius: 999px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.8), rgba(255, 245, 235, 0.88)),
        rgba(255, 255, 255, 0.74);
    color: #6f4a24;
    font-size: 1.4rem;
    cursor: pointer;
    backdrop-filter: blur(14px);
    box-shadow:
        0 14px 28px rgba(38, 28, 16, 0.12),
        inset 0 1px 0 rgba(255, 255, 255, 0.7);
    transition:
        transform 180ms ease,
        box-shadow 180ms ease,
        background 180ms ease;
    z-index: 2;
}

.media-lightbox-close:hover {
    transform: translateY(-1px) scale(1.03);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.92), rgba(255, 239, 223, 0.94)),
        rgba(255, 255, 255, 0.84);
    box-shadow:
        0 18px 34px rgba(38, 28, 16, 0.16),
        inset 0 1px 0 rgba(255, 255, 255, 0.76);
}

.media-lightbox-close:focus-visible {
    outline: none;
    box-shadow:
        0 0 0 4px rgba(255, 184, 124, 0.18),
        0 18px 34px rgba(38, 28, 16, 0.16);
}

.media-lightbox-body {
    position: relative;
    display: grid;
    min-height: 0;
    overflow: auto;
    border-radius: 26px;
    background:
        radial-gradient(circle at top left, rgba(255, 211, 177, 0.18), transparent 18rem),
        linear-gradient(180deg, rgba(255, 255, 255, 0.92), rgba(252, 247, 240, 0.96));
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.62),
        inset 0 0 0 1px rgba(236, 220, 203, 0.34);
}

.media-lightbox-body img,
.media-lightbox-body video {
    display: block;
    width: auto;
    max-width: 100%;
    height: auto;
    max-height: 100%;
    object-fit: contain;
    border-radius: 22px;
    background: rgba(255, 255, 255, 0.9);
    margin: auto;
}

.media-lightbox-audio {
    display: grid;
    gap: 1rem;
    padding: clamp(1.2rem, 3vw, 2rem);
}

.media-lightbox-audio-cover {
    position: relative;
    display: grid;
    justify-items: center;
    gap: 0.65rem;
    padding: 2rem 1rem;
    border-radius: 22px;
    background:
        radial-gradient(circle at top, rgba(255, 205, 162, 0.4), transparent 15rem),
        linear-gradient(180deg, rgba(255, 252, 248, 0.98), rgba(248, 243, 236, 0.96));
    overflow: hidden;
}

.audio-visualizer {
    position: relative;
    display: grid;
    grid-auto-flow: column;
    align-items: end;
    justify-content: center;
    gap: 0.38rem;
    min-height: 8.5rem;
    width: 100%;
    isolation: isolate;
}

.audio-visualizer::before {
    content: '';
    position: absolute;
    inset: 10% 18%;
    border-radius: 999px;
    background: radial-gradient(circle, rgba(255, 176, 112, 0.26), transparent 70%);
    filter: blur(22px);
    opacity: 0.9;
    z-index: -1;
}

.audio-visualizer-bar {
    width: clamp(0.26rem, 0.55vw, 0.52rem);
    min-height: 0.8rem;
    height: 6.4rem;
    border-radius: 999px;
    background: linear-gradient(180deg, rgba(255, 243, 226, 0.96), rgba(255, 170, 110, 0.92) 38%, rgba(239, 111, 77, 0.98));
    box-shadow:
        0 0 0 1px rgba(255, 255, 255, 0.18),
        0 12px 24px rgba(239, 111, 77, 0.16);
    transform-origin: center bottom;
    transform: scaleY(var(--visualizer-scale, 0.18));
    transition: transform 120ms linear, opacity 160ms ease;
    opacity: 0.86;
}

.audio-visualizer.is-playing .audio-visualizer-bar {
    opacity: 1;
}

.audio-visualizer.is-buffering .audio-visualizer-bar {
    animation: audioVisualizerDrift 1.2s ease-in-out infinite;
}

.audio-visualizer.is-fallback .audio-visualizer-bar {
    animation: audioVisualizerPulse 1.5s ease-in-out infinite;
}

.audio-visualizer-bar:nth-child(4n + 2) {
    animation-delay: 0.12s;
}

.audio-visualizer-bar:nth-child(4n + 3) {
    animation-delay: 0.24s;
}

.audio-visualizer-bar:nth-child(4n + 4) {
    animation-delay: 0.36s;
}

.media-lightbox-audio-visualizer {
    padding-inline: 0.8rem;
}

.media-lightbox-audio-copy {
    display: grid;
    gap: 0.28rem;
}

.media-lightbox-audio-copy strong,
.media-lightbox-audio-copy p {
    margin: 0;
}

.media-lightbox-audio-copy p {
    color: var(--ink-soft);
}

.media-lightbox-audio audio {
    width: 100%;
}

.media-lightbox-copy {
    display: grid;
    gap: 1rem;
    padding: clamp(1rem, 2vw, 1.45rem);
}

.media-lightbox-copy-head {
    display: grid;
    gap: 0.55rem;
}

.media-lightbox-copy-head strong {
    font-size: clamp(1.05rem, 2vw, 1.3rem);
    color: #4b372a;
}

.media-lightbox-copy-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 0.55rem;
}

.media-lightbox-copy-meta span {
    display: inline-flex;
    align-items: center;
    min-height: 2rem;
    padding: 0.32rem 0.78rem;
    border-radius: 999px;
    border: 1px solid rgba(229, 185, 145, 0.24);
    background: rgba(255, 252, 247, 0.82);
    color: #8b694f;
    font-size: 0.82rem;
    font-weight: 700;
}

.media-lightbox-copy-grid {
    display: grid;
    grid-template-columns: minmax(0, 0.84fr) minmax(0, 1.16fr);
    gap: 1rem;
}

.media-lightbox-copy-card {
    display: grid;
    gap: 0.75rem;
    min-height: 0;
    padding: 1rem;
    border-radius: 24px;
    border: 1px solid rgba(230, 191, 156, 0.22);
    background:
        radial-gradient(circle at top left, rgba(255, 240, 224, 0.58), transparent 16rem),
        linear-gradient(180deg, rgba(255, 252, 248, 0.98), rgba(252, 246, 239, 0.96));
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.7),
        0 18px 36px rgba(114, 83, 55, 0.06);
}

.media-lightbox-copy-card-label {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    min-height: 2rem;
    padding: 0.32rem 0.74rem;
    border-radius: 999px;
    background: rgba(234, 160, 100, 0.12);
    color: #b16c3a;
    font-size: 0.78rem;
    font-weight: 800;
    letter-spacing: 0.08em;
}

.media-lightbox-copy-card pre {
    margin: 0;
    min-height: 0;
    max-height: min(62vh, 560px);
    overflow: auto;
    white-space: pre-wrap;
    word-break: break-word;
    color: #564235;
    font: inherit;
    line-height: 1.82;
}

.media-lightbox-copy-card-result pre {
    padding: 1rem 1.05rem;
    border-radius: 20px;
    border: 1px solid rgba(229, 190, 154, 0.18);
    background: rgba(255, 250, 244, 0.78);
}

.media-lightbox-copy-actions {
    display: flex;
    justify-content: flex-end;
    gap: 0.65rem;
}

.media-lightbox-music {
    display: grid;
    grid-template-columns: minmax(280px, 0.88fr) minmax(0, 1.12fr);
    gap: clamp(1rem, 2vw, 1.35rem);
    padding: clamp(1rem, 2vw, 1.5rem);
}

.media-lightbox-music-left,
.media-lightbox-music-right {
    display: grid;
    gap: 0.9rem;
    align-content: start;
}

.media-lightbox-music-left audio {
    display: none;
}

.media-lightbox-music-cover {
    position: relative;
    min-height: 360px;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    border-radius: 28px;
    border: 1px solid rgba(255, 255, 255, 0.62);
    background:
        radial-gradient(circle at top left, rgba(255, 207, 173, 0.22), transparent 18rem),
        linear-gradient(180deg, rgba(255, 252, 248, 0.99), rgba(248, 243, 236, 0.96));
    box-shadow:
        0 24px 54px rgba(40, 28, 18, 0.12),
        inset 0 1px 0 rgba(255, 255, 255, 0.5);
    transition: transform 260ms ease, box-shadow 260ms ease;
}

.media-lightbox-music-cover::after {
    content: '';
    position: absolute;
    inset: auto 0 0;
    height: 38%;
    background: linear-gradient(180deg, rgba(37, 26, 18, 0), rgba(37, 26, 18, 0.28));
    pointer-events: none;
}

.media-lightbox-music-cover.is-playing {
    transform: translateY(-2px) scale(1.01);
    box-shadow:
        0 28px 58px rgba(239, 111, 77, 0.2),
        inset 0 1px 0 rgba(255, 255, 255, 0.52);
}

.media-lightbox-music-cover img,
.media-lightbox-music-cover-fallback {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 360px;
}

.media-lightbox-music-cover img {
    object-fit: cover;
}

.media-lightbox-music-cover-fallback {
    display: grid;
    place-items: center;
    font-weight: 800;
    letter-spacing: 0.12em;
    color: #8a5e31;
    background:
        radial-gradient(circle at top, rgba(255, 207, 171, 0.36), transparent 18rem),
        linear-gradient(180deg, rgba(255, 252, 248, 0.98), rgba(244, 237, 228, 0.96));
}

.media-lightbox-music-spectrum {
    position: absolute;
    inset: auto 1.1rem 1.1rem 1.1rem;
    min-height: 5.6rem;
    padding: 1rem 0.9rem 0.8rem;
    border-radius: 24px;
    background:
        linear-gradient(180deg, rgba(29, 20, 13, 0.08), rgba(29, 20, 13, 0.38)),
        rgba(255, 255, 255, 0.08);
    backdrop-filter: blur(16px);
}

.media-lightbox-music-cover.is-playing .media-lightbox-music-spectrum {
    background:
        linear-gradient(180deg, rgba(29, 20, 13, 0.06), rgba(29, 20, 13, 0.48)),
        rgba(255, 255, 255, 0.1);
}

.media-lightbox-music-play {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.7rem;
    min-height: 3.45rem;
    padding: 0.75rem 1.15rem;
    border: 1px solid rgba(255, 221, 191, 0.34);
    border-radius: 999px;
    background: linear-gradient(135deg, #ffaf6e, #ff8a4d 52%, #f36d4b);
    color: #fff;
    font-weight: 800;
    letter-spacing: 0.01em;
    cursor: pointer;
    overflow: hidden;
    box-shadow:
        0 20px 38px rgba(255, 140, 75, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.28);
    transition:
        transform 180ms ease,
        box-shadow 180ms ease,
        background 180ms ease;
}

.media-lightbox-music-play::before {
    content: '▶';
    display: grid;
    place-items: center;
    width: 2rem;
    height: 2rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.18);
    color: #fffdf9;
    font-size: 0.82rem;
    font-weight: 900;
    text-indent: 0.08em;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.26);
}

.media-lightbox-music-play::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(120deg, transparent 20%, rgba(255, 255, 255, 0.24) 50%, transparent 78%);
    transform: translateX(-130%);
    transition: transform 520ms ease;
    pointer-events: none;
}

.media-lightbox-music-play:hover {
    transform: translateY(-1px) scale(1.01);
    box-shadow:
        0 24px 42px rgba(255, 140, 75, 0.28),
        inset 0 1px 0 rgba(255, 255, 255, 0.34);
}

.media-lightbox-music-play:hover::after {
    transform: translateX(130%);
}

.media-lightbox-music.is-playing .media-lightbox-music-play {
    background: linear-gradient(135deg, #f58e59, #ec6d48 52%, #d95746);
}

.media-lightbox-music.has-play-error .media-lightbox-music-play {
    background: linear-gradient(135deg, #d18e75, #c56a5f 52%, #b4514f);
    box-shadow:
        0 18px 34px rgba(181, 81, 79, 0.18),
        inset 0 1px 0 rgba(255, 255, 255, 0.22);
}

.media-lightbox-music.is-playing .media-lightbox-music-play::before {
    content: '❚❚';
    text-indent: 0;
    font-size: 0.68rem;
}

.media-lightbox-music-play:disabled {
    opacity: 0.58;
    cursor: not-allowed;
    box-shadow: none;
}

.media-lightbox-music-play:focus-visible {
    outline: none;
    box-shadow:
        0 0 0 4px rgba(255, 190, 140, 0.18),
        0 24px 42px rgba(255, 140, 75, 0.28);
}

.media-lightbox-music-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 0.55rem;
}

.media-lightbox-music-time {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.8rem;
    padding: 0.2rem 0.2rem 0;
    color: #8d6540;
    font-size: 0.82rem;
    font-weight: 700;
    letter-spacing: 0.02em;
}

.media-lightbox-music-meta span {
    display: inline-flex;
    align-items: center;
    min-height: 2rem;
    padding: 0.34rem 0.8rem;
    border-radius: 999px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.9), rgba(255, 246, 238, 0.82)),
        rgba(255, 255, 255, 0.72);
    border: 1px solid rgba(232, 173, 122, 0.18);
    color: #7d5630;
    font-size: 0.78rem;
    font-weight: 700;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.45);
}

.media-lightbox-music-copy {
    display: grid;
    gap: 0.28rem;
}

.media-lightbox-music-copy strong,
.media-lightbox-music-copy p {
    margin: 0;
}

.media-lightbox-music-copy strong {
    font-size: clamp(1.28rem, 2.4vw, 1.78rem);
    line-height: 1.1;
    letter-spacing: -0.02em;
}

.media-lightbox-music-copy p {
    color: var(--ink-soft);
    line-height: 1.7;
}

.media-lightbox-music-lyrics {
    display: grid;
    gap: 0.6rem;
    min-height: 0;
    padding: 1.05rem 1.1rem;
    border-radius: 24px;
    border: 1px solid rgba(232, 173, 122, 0.14);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.78), rgba(255, 249, 242, 0.84)),
        rgba(255, 255, 255, 0.72);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.56),
        inset 0 0 0 1px rgba(249, 231, 214, 0.26);
}

.media-lightbox-music-lyrics-title {
    font-size: 0.78rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: #8a5e31;
}

.media-lightbox-music-lyrics pre {
    margin: 0;
    max-height: min(52vh, 420px);
    overflow: auto;
    white-space: pre-wrap;
    word-break: break-word;
    color: var(--ink);
    font: inherit;
    line-height: 1.75;
}

.media-lightbox-music-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.65rem;
}

.media-lightbox-music-actions .button,
.media-lightbox-music-actions a {
    min-height: 2.9rem;
    padding-inline: 1rem;
    border-radius: 16px;
    border: 1px solid rgba(232, 173, 122, 0.16);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.92), rgba(255, 246, 238, 0.84)),
        rgba(255, 255, 255, 0.88);
    box-shadow:
        0 12px 24px rgba(40, 28, 18, 0.08),
        inset 0 1px 0 rgba(255, 255, 255, 0.62);
    transition:
        transform 180ms ease,
        box-shadow 180ms ease,
        border-color 180ms ease;
}

.media-lightbox-music-actions .button:hover,
.media-lightbox-music-actions a:hover {
    transform: translateY(-1px);
    border-color: rgba(232, 173, 122, 0.28);
    box-shadow:
        0 16px 28px rgba(40, 28, 18, 0.12),
        inset 0 1px 0 rgba(255, 255, 255, 0.68);
}

@keyframes audioVisualizerPulse {
    0%, 100% {
        transform: scaleY(0.24);
    }
    50% {
        transform: scaleY(0.88);
    }
}

@keyframes audioVisualizerDrift {
    0%, 100% {
        transform: scaleY(0.26);
    }
    35% {
        transform: scaleY(0.62);
    }
    70% {
        transform: scaleY(0.42);
    }
}

@keyframes studioSpin {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}

@keyframes studioSpinReverse {
    from {
        transform: rotate(360deg);
    }
    to {
        transform: rotate(0deg);
    }
}

@keyframes studioCorePulse {
    0%,
    100% {
        transform: scale(0.92);
        opacity: 0.9;
    }
    50% {
        transform: scale(1.04);
        opacity: 1;
    }
}

@keyframes studioGlowFloat {
    0%,
    100% {
        transform: translate3d(0, 0, 0) scale(0.94);
        opacity: 0.58;
    }
    50% {
        transform: translate3d(8px, -10px, 0) scale(1.08);
        opacity: 0.86;
    }
}

@keyframes studioMeshShift {
    from {
        transform: translate3d(0, 0, 0);
    }
    to {
        transform: translate3d(18px, 18px, 0);
    }
}

@keyframes studioBeamSweep {
    from {
        transform: translate3d(-14%, -8%, 0) rotate(14deg);
    }
    to {
        transform: translate3d(168%, 8%, 0) rotate(14deg);
    }
}

@keyframes studioCatResolve {
    0% {
        filter:
            blur(8px)
            saturate(0.92)
            drop-shadow(0 24px 40px rgba(255, 140, 75, 0.16));
        transform: scale(1.12);
        opacity: 0.76;
    }
    45% {
        filter:
            blur(5px)
            saturate(1)
            drop-shadow(0 24px 40px rgba(255, 140, 75, 0.18));
        transform: scale(1.08);
        opacity: 0.88;
    }
    100% {
        filter:
            blur(0.8px)
            saturate(1.08)
            drop-shadow(0 24px 40px rgba(255, 140, 75, 0.22));
        transform: scale(1);
        opacity: 1;
    }
}

@keyframes studioAudioPulse {
    0%,
    100% {
        transform: scaleX(0.88);
        opacity: 0.56;
    }
    50% {
        transform: scaleX(1);
        opacity: 1;
    }
}

@keyframes studioPulseDot {
    0% {
        box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.32);
    }
    70% {
        box-shadow: 0 0 0 10px rgba(255, 255, 255, 0);
    }
    100% {
        box-shadow: 0 0 0 0 rgba(255, 255, 255, 0);
    }
}

.studio-entry-grid .studio-entry-card .toolbox-card-icon {
    min-width: 86px;
    width: auto;
    padding: 0 0.8rem;
    font-size: 0.82rem;
    letter-spacing: 0.08em;
}

@media (max-width: 1120px) {
    .auth-shell {
        grid-template-columns: 1fr;
    }

    .auth-showcase {
        min-height: 0;
    }

    .studio-shell,
    .studio-workspace {
        grid-template-columns: 1fr;
    }

    .resource-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .resource-library-section .metric-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    .header-actions-console {
        gap: 0.6rem;
    }

    .console-user-copy small {
        max-width: 10rem;
    }

    .auth-stage {
        padding-top: 0.85rem;
    }

    .auth-showcase,
    .auth-panel {
        border-radius: 28px;
    }

    .auth-feature-grid {
        grid-template-columns: 1fr;
    }

    .form-grid.three,
    .form-grid.four {
        grid-template-columns: 1fr;
    }

    .studio-topbar,
    .studio-result-meta,
    .resource-library-hero {
        display: grid;
    }

    .studio-topbar-copy,
    .studio-history-meta {
        text-align: left;
    }

    .studio-history-card,
    .studio-processing-shell {
        grid-template-columns: 1fr;
    }

    .media-lightbox-music {
        grid-template-columns: 1fr;
    }

    .media-lightbox-copy-grid {
        grid-template-columns: 1fr;
    }

    .studio-media-caption,
    .resource-card-actions {
        justify-content: flex-start;
    }

    .resource-library-section .metric-grid,
    .resource-grid {
        grid-template-columns: 1fr;
    }

    .resource-card-actions {
        grid-template-columns: 1fr;
    }

    .media-lightbox {
        padding: 0.9rem;
    }

    .media-lightbox-dialog {
        border-radius: 22px;
        padding: 0.8rem;
        width: min(96vw, 96vw);
        height: min(96vh, 96vh);
        max-height: 96vh;
    }

    .studio-music-track-row {
        right: 0.9rem;
    }
}

@media (max-width: 620px) {
    .page-auth .header-inner,
    .page-console .header-inner {
        display: grid;
        gap: 0.75rem;
    }

    .header-actions-auth,
    .header-actions-console {
        width: 100%;
        margin-left: 0;
    }

    .header-actions-console .button {
        flex: 0 0 auto;
    }

    .console-user-pill {
        flex: 1 1 auto;
    }

    .console-user-copy small {
        max-width: 100%;
    }

    .auth-showcase,
    .auth-panel {
        padding: 1rem;
    }

    .auth-showcase-copy h1 {
        font-size: clamp(2rem, 9vw, 2.8rem);
    }

    .auth-debug-note {
        display: grid;
    }
}

:root {
    --bg: #eef3f8;
    --bg-soft: #f8fbff;
    --ink: #0f172a;
    --ink-soft: #5f6b7d;
    --line: rgba(15, 23, 42, 0.08);
    --card: rgba(255, 255, 255, 0.84);
    --brand: #111827;
    --brand-dark: #060b16;
    --teal: #4c78ff;
    --gold: #9ad7ff;
    --shadow: 0 28px 72px rgba(15, 23, 42, 0.08);
    --radius-xl: 32px;
    --radius-lg: 24px;
    --radius-md: 18px;
    --container: 1200px;
}

body {
    background:
        radial-gradient(circle at 0% 0%, rgba(76, 120, 255, 0.14), transparent 28rem),
        radial-gradient(circle at 100% 8%, rgba(56, 189, 248, 0.12), transparent 24rem),
        linear-gradient(180deg, #f8fbff 0%, #f1f5fa 48%, #eef3f8 100%);
}

body::before {
    content: "";
    position: fixed;
    inset: 0;
    pointer-events: none;
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.12) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.12) 1px, transparent 1px);
    background-size: 5.5rem 5.5rem;
    mask-image: linear-gradient(180deg, rgba(0, 0, 0, 0.14), transparent 72%);
    opacity: 0.36;
}

.container {
    width: min(calc(100% - 2.5rem), var(--container));
}

.section {
    padding: 4.5rem 0;
}

.site-header {
    background: rgba(248, 251, 255, 0.74);
    border-bottom: 1px solid rgba(15, 23, 42, 0.06);
    box-shadow: 0 10px 34px rgba(15, 23, 42, 0.04);
}

.site-header-glow {
    opacity: 0.55;
    filter: blur(54px);
}

.header-inner {
    gap: 1.4rem;
    padding: 1rem 0;
}

.brand,
.admin-brand {
    padding: 0.52rem 0.92rem 0.52rem 0.56rem;
    border: 1px solid rgba(255, 255, 255, 0.7);
    background: rgba(255, 255, 255, 0.76);
    box-shadow: 0 16px 36px rgba(15, 23, 42, 0.08);
}

.brand-copy strong {
    font-size: 0.98rem;
    letter-spacing: -0.03em;
}

.brand-copy small {
    font-size: 0.74rem;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.brand-mark {
    width: 52px;
    height: 52px;
    border-radius: 18px;
}

.site-nav {
    gap: 0.55rem;
    flex-wrap: wrap;
}

.site-nav a {
    display: inline-flex;
    align-items: center;
    min-height: 2.8rem;
    padding: 0 1rem;
    border-radius: 999px;
    color: var(--ink-soft);
    font-size: 0.92rem;
    border: 1px solid transparent;
    background: rgba(255, 255, 255, 0.42);
    transition: transform 180ms ease, box-shadow 180ms ease, background 180ms ease, border-color 180ms ease, color 180ms ease;
}

.site-nav a.active,
.site-nav a:hover {
    color: var(--ink);
    border-color: rgba(15, 23, 42, 0.08);
    background: rgba(255, 255, 255, 0.88);
    box-shadow: 0 12px 28px rgba(15, 23, 42, 0.08);
    transform: translateY(-1px);
}

.header-actions {
    gap: 0.7rem;
}

.console-user-pill {
    padding: 0.45rem 0.6rem;
    border-radius: 999px;
    border: 1px solid rgba(15, 23, 42, 0.08);
    background: rgba(255, 255, 255, 0.84);
    box-shadow: 0 12px 30px rgba(15, 23, 42, 0.08);
}

.console-user-avatar {
    width: 2.25rem;
    height: 2.25rem;
    background: linear-gradient(135deg, #111827, #334155);
    color: #fff;
    box-shadow: 0 10px 22px rgba(15, 23, 42, 0.22);
}

.console-user-copy strong {
    font-size: 0.92rem;
}

.console-user-copy small {
    color: var(--ink-soft);
}

.button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    min-height: 46px;
    padding: 0 1.2rem;
    border-radius: 999px;
    border: 1px solid transparent;
    background: linear-gradient(180deg, #111827 0%, #0f172a 100%);
    color: #fff;
    box-shadow: 0 18px 34px rgba(15, 23, 42, 0.16);
    transition: transform 180ms ease, box-shadow 180ms ease, background 180ms ease, color 180ms ease, border-color 180ms ease;
}

.button:hover {
    transform: translateY(-1px);
    box-shadow: 0 20px 40px rgba(15, 23, 42, 0.22);
}

.button.secondary,
.button.ghost {
    color: var(--ink);
    border-color: rgba(15, 23, 42, 0.08);
    background: rgba(255, 255, 255, 0.78);
    box-shadow: none;
}

.button.secondary:hover,
.button.ghost:hover,
.button.ghost.small:hover {
    background: rgba(255, 255, 255, 0.96);
    box-shadow: 0 14px 28px rgba(15, 23, 42, 0.08);
}

.button.small {
    min-height: 40px;
    padding: 0 1rem;
    font-size: 0.88rem;
}

.badge,
.chip,
.home-neo-tag-row span,
.navigation-mobile-chip,
.navigation-index-link,
.toolbox-index a {
    border-radius: 999px;
    border: 1px solid rgba(15, 23, 42, 0.06);
    background: rgba(255, 255, 255, 0.82);
    color: var(--ink);
}

.ghost-badge {
    background: rgba(76, 120, 255, 0.08);
    border-color: rgba(76, 120, 255, 0.12);
    color: #3053a8;
}

.hero-surface,
.toolbox-group,
.toolbox-pane-head,
.toolbox-control-bar,
.toolbox-summary-card,
.toolbox-card,
.toolbox-empty-card,
.navigation-sidebar-card,
.navigation-group,
.navigation-card,
.news-feature-card,
.news-story-card,
.story-card,
.faq-panel,
.editor-panel,
.result-panel,
.admin-panel,
.auth-showcase,
.auth-panel,
.resource-card {
    position: relative;
    overflow: hidden;
    border-radius: 30px;
    border: 1px solid rgba(255, 255, 255, 0.78);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(255, 255, 255, 0.84));
    box-shadow: 0 28px 70px rgba(15, 23, 42, 0.08);
    backdrop-filter: blur(18px);
}

.hero-surface::after,
.toolbox-group::after,
.toolbox-pane-head::after,
.toolbox-control-bar::after,
.navigation-group::after,
.news-feature-card::after,
.auth-panel::after,
.auth-showcase::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: linear-gradient(135deg, rgba(76, 120, 255, 0.06), transparent 38%, rgba(15, 23, 42, 0.03));
}

.section-head,
.panel-head,
.navigation-group-head {
    gap: 1rem;
    align-items: flex-end;
}

.section-head h2,
.panel-head h2,
.navigation-group-head h2,
.news-feature-card h2,
.home-neo-copy h1,
.neo-page-hero-copy h1,
.home-neo-cta h2,
.auth-showcase-copy h1,
.auth-heading h2 {
    letter-spacing: -0.05em;
    line-height: 1.04;
}

.home-neo-hero,
.neo-page-hero {
    padding-top: 2.75rem;
}

.home-neo-hero-shell,
.neo-page-hero-shell,
.neo-page-hero-shell-compact {
    grid-template-columns: minmax(0, 1.08fr) minmax(320px, 0.88fr);
    gap: 2rem;
    align-items: center;
    padding: 2.3rem;
}

.home-neo-copy,
.neo-page-hero-copy,
.home-neo-cta-copy {
    gap: 1rem;
}

.home-neo-copy h1 {
    max-width: 11ch;
    font-size: clamp(3rem, 6.2vw, 5rem);
}

.neo-page-hero-copy h1 {
    max-width: 12ch;
    font-size: clamp(2.7rem, 5vw, 4.2rem);
}

.lead,
.home-neo-step-card p,
.neo-module-card p,
.neo-tool-card p,
.neo-link-card p,
.neo-list-card p,
.home-neo-cta p,
.console-pane-head p,
.resource-library-hero p,
.news-feature-card p,
.auth-showcase-copy p,
.auth-heading p,
.toolbox-card p {
    color: var(--ink-soft);
    line-height: 1.8;
}

.logo-motion-stage {
    min-height: 100%;
    border-radius: 30px;
    background:
        radial-gradient(circle at 50% 42%, rgba(76, 120, 255, 0.18), transparent 36%),
        linear-gradient(160deg, rgba(9, 15, 29, 0.98), rgba(17, 27, 47, 0.94));
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08), 0 28px 60px rgba(8, 12, 24, 0.28);
}

.logo-motion-badge,
.floating-chip.logo-motion-chip {
    border: 1px solid rgba(255, 255, 255, 0.12);
    background: rgba(255, 255, 255, 0.08);
    color: rgba(240, 245, 255, 0.94);
}

.home-neo-tag-row {
    gap: 0.7rem;
}

.home-neo-tag-row span {
    padding: 0.78rem 1rem;
    color: var(--ink-soft);
}

.home-neo-tag-row span:hover,
.toolbox-index a:hover,
.navigation-index-link:hover,
.navigation-mobile-chip:hover {
    transform: translateY(-1px);
    box-shadow: 0 12px 24px rgba(15, 23, 42, 0.08);
}

.home-neo-stats,
.neo-metric-row,
.metric-grid {
    gap: 1rem;
}

.home-neo-stat-card,
.neo-metric-row article,
.metric-card {
    padding: 1.15rem 1.2rem;
    border-radius: 24px;
    border: 1px solid rgba(255, 255, 255, 0.76);
    background: rgba(255, 255, 255, 0.82);
    box-shadow: 0 18px 40px rgba(15, 23, 42, 0.08);
}

.home-neo-stat-card strong,
.neo-metric-row strong,
.metric-card strong {
    font-size: clamp(1.55rem, 2.4vw, 2rem);
    letter-spacing: -0.04em;
}

.home-neo-stat-card span,
.neo-metric-row span,
.metric-card span {
    color: var(--ink-soft);
}

.home-neo-foundation-grid,
.home-neo-workboard-main,
.home-neo-cta,
.footer-shell {
    gap: 1.2rem;
}

.home-neo-module-grid,
.home-neo-tool-grid,
.home-neo-surface-grid,
.toolbox-card-grid,
.navigation-card-grid,
.news-grid,
.resource-grid {
    gap: 1.2rem;
}

.neo-module-card,
.neo-tool-card,
.neo-list-card,
.neo-link-card,
.toolbox-card,
.navigation-card,
.news-story-card,
.resource-card,
.faq-item {
    padding: 1.3rem;
    border-radius: 26px;
    border: 1px solid rgba(15, 23, 42, 0.06);
    background: rgba(255, 255, 255, 0.86);
    box-shadow: 0 18px 36px rgba(15, 23, 42, 0.07);
}

.neo-tool-card:hover,
.neo-link-card:hover,
.neo-list-card:hover,
.toolbox-card:hover,
.navigation-card:hover,
.news-story-card:hover,
.resource-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 24px 42px rgba(15, 23, 42, 0.1);
}

.home-neo-workboard {
    padding: 1.4rem;
}

.home-neo-signal-panel,
.home-neo-cta-panel {
    display: grid;
    gap: 0.9rem;
}

.home-neo-signal-item,
.home-neo-cta-point {
    padding: 1.05rem 1.1rem;
    border-radius: 22px;
    border: 1px solid rgba(15, 23, 42, 0.06);
    background: rgba(246, 249, 253, 0.96);
}

.home-neo-signal-item strong,
.home-neo-cta-point strong {
    display: block;
    margin-bottom: 0.35rem;
    font-size: 1rem;
}

.home-neo-signal-item p,
.home-neo-cta-point p {
    margin: 0;
    color: var(--ink-soft);
    line-height: 1.7;
}

.home-neo-cta {
    grid-template-columns: minmax(0, 1.05fr) minmax(300px, 0.95fr);
    align-items: stretch;
    padding: 1.6rem;
}

.section-link {
    color: var(--ink);
}

.toolbox-mode-switch {
    max-width: 420px;
    margin: 0 auto 1.25rem;
    padding: 0.35rem;
    border-radius: 999px;
    border: 1px solid rgba(15, 23, 42, 0.08);
    background: rgba(255, 255, 255, 0.78);
    box-shadow: 0 16px 38px rgba(15, 23, 42, 0.08);
}

.toolbox-mode-switch button {
    min-height: 46px;
    border-radius: 999px;
    color: var(--ink-soft);
}

.toolbox-mode-switch button.is-active {
    background: linear-gradient(180deg, #111827 0%, #0f172a 100%);
    color: #fff;
    box-shadow: 0 14px 28px rgba(15, 23, 42, 0.16);
}

.console-overview-strip {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
    margin-bottom: 1.25rem;
}

.console-overview-item {
    padding: 1rem 1.05rem;
    border-radius: 22px;
    border: 1px solid rgba(255, 255, 255, 0.7);
    background: rgba(255, 255, 255, 0.78);
    box-shadow: 0 18px 36px rgba(15, 23, 42, 0.08);
}

.console-overview-item strong {
    display: block;
    margin-bottom: 0.35rem;
}

.console-overview-item p {
    margin: 0;
    color: var(--ink-soft);
    line-height: 1.7;
}

.toolbox-pane-head,
.toolbox-control-bar,
.toolbox-group,
.resource-library-hero {
    padding: 1.35rem 1.4rem;
}

.toolbox-group-head h2,
.console-pane-head h2,
.resource-library-hero h1,
.resource-library-hero p {
    max-width: none;
}

.toolbox-card-icon {
    min-width: 3.6rem;
    min-height: 2.55rem;
    padding: 0 0.85rem;
    border-radius: 16px;
    background: rgba(15, 23, 42, 0.05);
    color: var(--ink);
    font-weight: 700;
}

.studio-entry-grid .studio-entry-card .toolbox-card-icon {
    min-width: auto;
}

.toolbox-search input,
.navigation-search input,
.auth-panel .field input,
.auth-panel .field textarea,
.auth-panel .field select,
.field input,
.field textarea,
.field select {
    border-radius: 18px;
    border: 1px solid rgba(15, 23, 42, 0.08);
    background: rgba(245, 248, 252, 0.95);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.8);
}

.toolbox-search input:focus,
.navigation-search input:focus,
.auth-panel .field input:focus,
.auth-panel .field textarea:focus,
.auth-panel .field select:focus,
.field input:focus,
.field textarea:focus,
.field select:focus {
    border-color: rgba(76, 120, 255, 0.32);
    box-shadow: 0 0 0 4px rgba(76, 120, 255, 0.1);
}

.page-console main {
    padding-top: 1rem;
}

.resource-library-hero {
    display: grid;
    gap: 1.2rem;
}

.resource-card-badge {
    background: rgba(15, 23, 42, 0.76);
}

.resource-card-copy p,
.resource-card-copy small {
    line-height: 1.7;
}

.navigation-shell {
    grid-template-columns: 280px minmax(0, 1fr);
    gap: 1.2rem;
}

.navigation-sidebar {
    position: sticky;
    top: 6.5rem;
    align-self: start;
}

.navigation-sidebar-card,
.navigation-group,
.news-feature-card {
    padding: 1.45rem;
}

.navigation-index-link,
.navigation-mobile-chip {
    padding: 0.85rem 1rem;
}

.navigation-card-copy small,
.story-meta small {
    color: var(--ink-soft);
}

.faq-item {
    overflow: hidden;
}

.faq-item summary {
    padding: 1.1rem 1.2rem;
}

.faq-answer {
    padding: 0 1.2rem 1.2rem;
}

.site-footer {
    margin-top: 2rem;
    padding: 1.4rem 0 2.4rem;
    background: transparent;
    border-top: 0;
}

.site-footer::before {
    display: none;
}

.footer-shell {
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr) minmax(0, 0.9fr);
    align-items: start;
}

.footer-brand-block,
.footer-link-block,
.footer-meta-block {
    display: grid;
    gap: 0.9rem;
}

.footer-kicker {
    display: block;
    color: var(--ink-soft);
    font-size: 0.78rem;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.footer-summary {
    max-width: 30rem;
    line-height: 1.8;
}

.footer-links-inline,
.footer-meta-stack {
    display: flex;
    flex-wrap: wrap;
    gap: 0.7rem;
}

.footer-links-inline a,
.footer-meta-stack span {
    display: inline-flex;
    align-items: center;
    min-height: 2.9rem;
    padding: 0 1rem;
    border-radius: 999px;
    border: 1px solid rgba(15, 23, 42, 0.08);
    background: rgba(255, 255, 255, 0.76);
    color: var(--ink);
}

.theme-admin .admin-shell {
    background: transparent;
}

.admin-sidebar {
    padding: 1.5rem;
    background: linear-gradient(180deg, rgba(9, 15, 29, 0.98), rgba(14, 21, 38, 0.96));
    color: rgba(237, 243, 255, 0.92);
    border-right: 1px solid rgba(255, 255, 255, 0.08);
}

.admin-user-card {
    border-radius: 22px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    background: rgba(255, 255, 255, 0.06);
    color: rgba(237, 243, 255, 0.92);
}

.admin-nav a,
.admin-logout {
    border-radius: 18px;
    color: rgba(237, 243, 255, 0.72);
}

.admin-nav a.active,
.admin-nav a:hover {
    background: rgba(255, 255, 255, 0.08);
    color: #fff;
}

.admin-main {
    padding: 2rem 2rem 3rem;
}

.theme-admin .admin-panel {
    border-radius: 28px;
    border: 1px solid rgba(255, 255, 255, 0.78);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.97), rgba(255, 255, 255, 0.9));
    box-shadow: 0 26px 60px rgba(15, 23, 42, 0.08);
}

.theme-admin {
    background:
        radial-gradient(circle at top left, rgba(76, 120, 255, 0.14), transparent 30rem),
        linear-gradient(180deg, #f3f7fc 0%, #ebf1f8 100%);
}

.auth-screen {
    min-height: 100vh;
    display: grid;
    place-items: center;
    padding: 2rem 1.25rem;
}

.theme-admin .auth-screen {
    position: relative;
    overflow: hidden;
}

.theme-admin .auth-screen::before {
    content: "";
    position: absolute;
    left: 50%;
    top: 8%;
    width: min(92vw, 980px);
    height: 24rem;
    transform: translateX(-50%);
    border-radius: 48px;
    background:
        radial-gradient(circle at 20% 28%, rgba(76, 120, 255, 0.28), transparent 28rem),
        linear-gradient(135deg, rgba(9, 15, 29, 0.96), rgba(17, 27, 47, 0.92));
    filter: blur(26px);
    opacity: 0.5;
    pointer-events: none;
}

.theme-admin .auth-card {
    position: relative;
    z-index: 1;
    display: grid;
    gap: 1rem;
    width: min(100%, 500px);
    padding: 2rem;
    border-radius: 34px;
    border: 1px solid rgba(255, 255, 255, 0.78);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(255, 255, 255, 0.88));
    box-shadow: 0 32px 78px rgba(15, 23, 42, 0.12);
}

.theme-admin .auth-card .brand {
    width: fit-content;
}

.theme-admin .auth-card h1 {
    margin: 0.2rem 0 0;
    font-size: clamp(2.2rem, 4vw, 3rem);
    letter-spacing: -0.05em;
    line-height: 1.04;
}

.theme-admin .auth-card .tool-form {
    display: grid;
    gap: 1rem;
}

.theme-admin .auth-card .field {
    display: grid;
    gap: 0.45rem;
}

.theme-admin .auth-card .field span {
    font-size: 0.92rem;
    color: var(--ink-soft);
}

.theme-admin .auth-card .field input {
    min-height: 3.5rem;
}

.page-auth .site-header {
    background: rgba(248, 251, 255, 0.72);
}

.auth-stage {
    padding-top: 1.2rem;
    padding-bottom: 4rem;
}

.auth-shell {
    grid-template-columns: minmax(0, 1.06fr) minmax(360px, 0.94fr);
    gap: 1.3rem;
}

.auth-showcase {
    padding: 1.7rem;
    color: #eef4ff;
    border: 1px solid rgba(97, 122, 255, 0.2);
    background:
        radial-gradient(circle at 12% 10%, rgba(76, 120, 255, 0.32), transparent 30rem),
        linear-gradient(160deg, rgba(9, 15, 29, 0.99), rgba(14, 23, 40, 0.96));
    box-shadow: 0 34px 76px rgba(8, 12, 24, 0.3);
}

.auth-showcase::before {
    opacity: 1;
}

.auth-showcase-copy {
    display: grid;
    gap: 0.85rem;
    max-width: 34rem;
}

.auth-kicker {
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    width: fit-content;
    min-height: 2rem;
    padding: 0 0.8rem;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, 0.12);
    background: rgba(255, 255, 255, 0.08);
    color: rgba(233, 240, 255, 0.86);
    font-size: 0.76rem;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.auth-showcase-copy h1 {
    margin: 0;
    max-width: 10ch;
    color: #fff;
    font-size: clamp(3rem, 5.2vw, 4.8rem);
}

.auth-showcase-copy p {
    margin: 0;
    max-width: 34rem;
    color: rgba(233, 240, 255, 0.78);
}

.auth-chip-row {
    gap: 0.65rem;
}

.auth-chip-row span {
    color: rgba(233, 240, 255, 0.84);
    border-color: rgba(255, 255, 255, 0.08);
    background: rgba(255, 255, 255, 0.08);
}

.auth-visual-stage {
    min-height: 20rem;
}

.auth-feature-list {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.85rem;
}

.auth-feature-item {
    padding: 1rem 1.05rem;
    border-radius: 22px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    background: rgba(255, 255, 255, 0.06);
}

.auth-feature-item strong {
    display: block;
    margin-bottom: 0.35rem;
    color: #fff;
}

.auth-feature-item p {
    margin: 0;
    color: rgba(233, 240, 255, 0.72);
    line-height: 1.7;
}

.auth-panel {
    padding: 1.7rem;
}

.auth-tabs {
    padding: 0.35rem;
    border-radius: 999px;
    border: 1px solid rgba(15, 23, 42, 0.08);
    background: rgba(245, 248, 252, 0.9);
}

.auth-tabs a {
    border-radius: 999px;
    color: var(--ink-soft);
}

.auth-tabs a.is-active {
    background: rgba(255, 255, 255, 0.98);
    box-shadow: 0 12px 24px rgba(15, 23, 42, 0.08);
    color: var(--ink);
}

.auth-heading {
    gap: 0.55rem;
}

.auth-heading h2 {
    margin: 0;
    font-size: clamp(2.2rem, 4vw, 3.1rem);
}

.auth-form-card {
    gap: 1rem;
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
}

.auth-panel .field input,
.auth-panel .field select {
    min-height: 3.5rem;
}

.auth-inline-note {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    color: var(--ink-soft);
    font-size: 0.93rem;
}

.auth-inline-note a {
    color: var(--ink);
    font-weight: 700;
}

.auth-admin-link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 1rem 1.05rem;
    border-radius: 22px;
    border: 1px solid rgba(15, 23, 42, 0.06);
    background: rgba(245, 248, 252, 0.92);
}

.auth-admin-link strong,
.auth-admin-link span {
    display: block;
}

.auth-admin-link span {
    color: var(--ink-soft);
    text-align: right;
}

@media (max-width: 1120px) {
    .home-neo-hero-shell,
    .neo-page-hero-shell,
    .neo-page-hero-shell-compact,
    .home-neo-cta,
    .footer-shell,
    .auth-shell,
    .navigation-shell {
        grid-template-columns: 1fr;
    }

    .auth-feature-list,
    .console-overview-strip {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .navigation-sidebar {
        position: static;
    }
}

@media (max-width: 760px) {
    .container {
        width: min(calc(100% - 1.25rem), var(--container));
    }

    .section {
        padding: 3.2rem 0;
    }

    .home-neo-copy h1,
    .neo-page-hero-copy h1,
    .auth-showcase-copy h1,
    .home-neo-cta h2 {
        max-width: none;
    }

    .home-neo-hero-shell,
    .neo-page-hero-shell,
    .neo-page-hero-shell-compact,
    .hero-surface,
    .toolbox-group,
    .toolbox-pane-head,
    .toolbox-control-bar,
    .auth-showcase,
    .auth-panel,
    .navigation-sidebar-card,
    .navigation-group,
    .news-feature-card,
    .admin-panel {
        padding: 1.2rem;
    }

    .home-neo-stats,
    .home-neo-module-grid,
    .home-neo-tool-grid,
    .home-neo-surface-grid,
    .toolbox-card-grid,
    .resource-grid,
    .news-grid,
    .metric-grid,
    .auth-feature-list,
    .console-overview-strip {
        grid-template-columns: 1fr;
    }

    .button-row,
    .footer-links-inline,
    .footer-meta-stack {
        flex-wrap: wrap;
    }

    .auth-inline-note,
    .auth-admin-link {
        display: grid;
    }

    .auth-admin-link span {
        text-align: left;
    }
}

@media (max-width: 620px) {
    .site-header {
        padding-bottom: 0.1rem;
    }

    .brand,
    .admin-brand {
        width: 100%;
        justify-content: flex-start;
    }

    .toolbox-mode-switch {
        max-width: none;
    }

    .footer-links-inline a,
    .footer-meta-stack span {
        width: 100%;
        justify-content: center;
    }
}

/* Warm visual refinement */

:root {
    --bg: #faf4ee;
    --bg-soft: #fffbf7;
    --ink: #2b241f;
    --ink-soft: #7d6f63;
    --line: rgba(113, 82, 54, 0.07);
    --card: rgba(255, 252, 248, 0.84);
    --brand: #e6a16f;
    --brand-dark: #d58b56;
    --teal: #e1b38a;
    --gold: #f6d3ad;
    --shadow: 0 24px 64px rgba(113, 82, 54, 0.08);
}

body {
    background:
        radial-gradient(circle at 0% 0%, rgba(237, 171, 122, 0.12), transparent 32rem),
        radial-gradient(circle at 100% 8%, rgba(255, 228, 202, 0.28), transparent 24rem),
        linear-gradient(180deg, #fffdf9 0%, #fbf6f0 54%, #f8f2eb 100%);
}

body::before {
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.14) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.14) 1px, transparent 1px);
}

.site-header {
    background: rgba(255, 252, 248, 0.8);
    border-bottom: 1px solid rgba(113, 82, 54, 0.05);
    box-shadow: 0 12px 36px rgba(113, 82, 54, 0.04);
}

.site-header-glow-a {
    background: radial-gradient(circle, rgba(237, 171, 122, 0.18), rgba(237, 171, 122, 0) 72%);
}

.site-header-glow-b {
    background: radial-gradient(circle, rgba(255, 228, 202, 0.34), rgba(255, 228, 202, 0) 74%);
}

.brand,
.admin-brand,
.console-user-pill {
    background: rgba(255, 252, 248, 0.84);
    border-color: rgba(255, 255, 255, 0.74);
    box-shadow: 0 16px 34px rgba(113, 82, 54, 0.06);
}

.site-nav a {
    background: rgba(255, 252, 247, 0.48);
}

.site-nav a.active,
.site-nav a:hover {
    border-color: rgba(214, 144, 91, 0.1);
    background: rgba(255, 252, 248, 0.98);
    box-shadow: 0 12px 24px rgba(113, 82, 54, 0.06);
}

.console-user-avatar {
    background: linear-gradient(135deg, #edb182, #d8925d);
    box-shadow: 0 10px 22px rgba(216, 146, 93, 0.18);
}

.button {
    background: linear-gradient(180deg, #ebb184 0%, #d99361 100%);
    box-shadow: 0 18px 34px rgba(217, 147, 97, 0.18);
}

.button:hover {
    box-shadow: 0 20px 40px rgba(217, 147, 97, 0.22);
}

.button.secondary,
.button.ghost {
    border-color: rgba(214, 144, 91, 0.1);
    background: rgba(255, 252, 248, 0.94);
}

.button.secondary:hover,
.button.ghost:hover,
.button.ghost.small:hover {
    background: rgba(255, 253, 250, 0.99);
    box-shadow: 0 14px 28px rgba(113, 82, 54, 0.06);
}

.badge,
.chip,
.home-neo-tag-row span,
.navigation-mobile-chip,
.navigation-index-link,
.toolbox-index a {
    border-color: rgba(214, 144, 91, 0.08);
    background: rgba(255, 252, 248, 0.92);
}

.ghost-badge {
    background: rgba(230, 161, 111, 0.1);
    border-color: rgba(230, 161, 111, 0.14);
    color: #b67743;
}

.hero-surface,
.toolbox-group,
.toolbox-pane-head,
.toolbox-control-bar,
.toolbox-summary-card,
.toolbox-card,
.toolbox-empty-card,
.navigation-sidebar-card,
.navigation-group,
.navigation-card,
.news-feature-card,
.news-story-card,
.story-card,
.faq-panel,
.editor-panel,
.result-panel,
.admin-panel,
.auth-panel,
.resource-card {
    border-color: rgba(255, 255, 255, 0.8);
    background: linear-gradient(180deg, rgba(255, 253, 250, 0.97), rgba(255, 249, 243, 0.9));
    box-shadow: 0 26px 64px rgba(113, 82, 54, 0.06);
}

.hero-surface::after,
.toolbox-group::after,
.toolbox-pane-head::after,
.toolbox-control-bar::after,
.navigation-group::after,
.news-feature-card::after,
.auth-panel::after,
.auth-showcase::after {
    background: linear-gradient(135deg, rgba(234, 175, 132, 0.08), transparent 42%, rgba(255, 236, 216, 0.16));
}

.home-neo-copy h1,
.neo-page-hero-copy h1,
.home-neo-cta h2,
.auth-heading h2,
.theme-admin .auth-card h1 {
    position: relative;
    width: fit-content;
    max-width: 100%;
    background-image: linear-gradient(120deg, #3d322a 0%, #6f5947 28%, #dfa77a 50%, #6f5947 72%, #3d322a 100%);
    background-size: 220% 100%;
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    -webkit-text-fill-color: transparent;
    animation: headingToneShift 10s ease-in-out infinite;
}

.home-neo-copy h1::after,
.neo-page-hero-copy h1::after,
.home-neo-cta h2::after,
.auth-heading h2::after,
.theme-admin .auth-card h1::after {
    content: "";
    display: block;
    width: min(8rem, 36%);
    height: 0.32rem;
    margin-top: 0.9rem;
    border-radius: 999px;
    background: linear-gradient(90deg, rgba(230, 161, 111, 0.46), rgba(255, 236, 216, 0));
    animation: headingLineFloat 7s ease-in-out infinite;
}

.home-neo-copy h1 {
    max-width: 12ch;
    font-size: clamp(2.35rem, 4.15vw, 3.45rem);
}

.neo-page-hero-copy h1 {
    max-width: 12.5ch;
    font-size: clamp(2.05rem, 3.55vw, 2.9rem);
}

.auth-showcase-copy h1 {
    position: relative;
    max-width: 11ch;
    font-size: clamp(2.25rem, 3.9vw, 3.2rem);
    background-image: linear-gradient(120deg, rgba(94, 64, 39, 0.92) 0%, rgba(162, 112, 74, 0.92) 32%, rgba(255, 243, 232, 0.98) 50%, rgba(162, 112, 74, 0.92) 68%, rgba(94, 64, 39, 0.92) 100%);
    background-size: 220% 100%;
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    -webkit-text-fill-color: transparent;
    animation: headingToneShift 11s ease-in-out infinite;
}

.auth-showcase-copy h1::after {
    content: "";
    display: block;
    width: min(8rem, 34%);
    height: 0.32rem;
    margin-top: 0.9rem;
    border-radius: 999px;
    background: linear-gradient(90deg, rgba(236, 182, 139, 0.56), rgba(255, 245, 233, 0));
    animation: headingLineFloat 7.6s ease-in-out infinite;
}

.auth-heading h2,
.theme-admin .auth-card h1 {
    font-size: clamp(1.85rem, 2.9vw, 2.35rem);
}

.home-neo-cta h2 {
    font-size: clamp(2.15rem, 3.45vw, 2.95rem);
}

.lead {
    max-width: 36rem;
}

.home-neo-stat-card,
.neo-metric-row article,
.metric-card,
.console-overview-item,
.home-neo-signal-item,
.home-neo-cta-point {
    border-color: rgba(214, 144, 91, 0.07);
    background: rgba(255, 252, 248, 0.88);
    box-shadow: 0 18px 36px rgba(113, 82, 54, 0.06);
}

.toolbox-mode-switch {
    border-color: rgba(214, 144, 91, 0.08);
    background: rgba(255, 251, 247, 0.86);
}

.toolbox-mode-switch button.is-active {
    background: linear-gradient(180deg, #ebb184 0%, #d99361 100%);
    box-shadow: 0 14px 28px rgba(217, 147, 97, 0.18);
}

.toolbox-card-icon {
    background: rgba(230, 161, 111, 0.08);
    color: #b67743;
}

.toolbox-search input,
.navigation-search input,
.auth-panel .field input,
.auth-panel .field textarea,
.auth-panel .field select,
.field input,
.field textarea,
.field select {
    border-color: rgba(214, 144, 91, 0.1);
    background: rgba(255, 252, 248, 0.97);
}

.toolbox-search input:focus,
.navigation-search input:focus,
.auth-panel .field input:focus,
.auth-panel .field textarea:focus,
.auth-panel .field select:focus,
.field input:focus,
.field textarea:focus,
.field select:focus {
    border-color: rgba(230, 161, 111, 0.32);
    box-shadow: 0 0 0 4px rgba(230, 161, 111, 0.1);
}

.logo-motion-stage {
    background:
        radial-gradient(circle at 50% 20%, rgba(255, 248, 241, 0.48), transparent 34%),
        radial-gradient(circle at 18% 18%, rgba(247, 200, 164, 0.2), transparent 28%),
        radial-gradient(circle at 82% 78%, rgba(255, 234, 211, 0.24), transparent 28%),
        linear-gradient(180deg, rgba(255, 250, 245, 0.92), rgba(252, 244, 237, 0.86));
    border: 1px solid rgba(220, 189, 160, 0.34);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.74),
        0 22px 48px rgba(113, 82, 54, 0.08);
}

.logo-motion-stage::before {
    background: radial-gradient(circle, rgba(244, 204, 171, 0.22), rgba(244, 204, 171, 0.02) 68%);
}

.logo-motion-stage::after {
    background: radial-gradient(circle, rgba(255, 236, 216, 0.2), rgba(255, 236, 216, 0.02) 70%);
}

.logo-motion-grid {
    background-image:
        linear-gradient(rgba(209, 171, 138, 0.14) 1px, transparent 1px),
        linear-gradient(90deg, rgba(209, 171, 138, 0.14) 1px, transparent 1px);
}

.logo-motion-aura {
    background: radial-gradient(circle, rgba(238, 205, 174, 0.42), rgba(255, 255, 255, 0.08) 58%, transparent 74%);
    mix-blend-mode: normal;
}

.logo-motion-trace {
    background: linear-gradient(90deg, transparent, rgba(221, 171, 129, 0.62), transparent);
}

.logo-motion-ring {
    border-color: rgba(190, 156, 127, 0.16);
}

.logo-motion-ring-a {
    border-color: rgba(226, 171, 127, 0.3);
}

.logo-motion-ring-b {
    border-color: rgba(223, 186, 149, 0.28);
}

.logo-motion-ring-c {
    box-shadow:
        0 0 0 1px rgba(255, 251, 246, 0.46) inset,
        0 0 28px rgba(240, 208, 178, 0.18);
}

.logo-motion-orbit-b {
    background: linear-gradient(135deg, rgba(255, 243, 232, 0.98), rgba(239, 194, 154, 0.94));
}

.logo-motion-beam {
    background: linear-gradient(90deg, transparent, rgba(255, 248, 241, 0.72), rgba(239, 201, 165, 0.54), transparent);
}

.logo-motion-logo-shell::before {
    background: linear-gradient(135deg, rgba(244, 188, 143, 0.18), rgba(255, 236, 216, 0.14));
}

.logo-motion-badge,
.floating-chip.logo-motion-chip {
    border-color: rgba(218, 186, 156, 0.28);
    background: rgba(255, 252, 247, 0.74);
    color: #8f755d;
    box-shadow: 0 12px 24px rgba(113, 82, 54, 0.06);
}

.logo-motion-badge::before {
    background: linear-gradient(135deg, #f0c39d, #dfa074);
    box-shadow: 0 0 0 6px rgba(240, 195, 157, 0.14);
}

.auth-showcase {
    color: var(--ink);
    border-color: rgba(228, 192, 158, 0.22);
    background:
        radial-gradient(circle at 12% 10%, rgba(244, 202, 165, 0.28), transparent 30rem),
        linear-gradient(160deg, rgba(255, 251, 246, 0.98), rgba(251, 242, 233, 0.94) 68%, rgba(248, 236, 226, 0.92));
    box-shadow: 0 30px 68px rgba(113, 82, 54, 0.08);
}

.auth-feature-item {
    border-color: rgba(214, 144, 91, 0.08);
    background: rgba(255, 252, 248, 0.76);
}

.auth-tabs {
    background: rgba(255, 251, 246, 0.94);
    border-color: rgba(214, 144, 91, 0.08);
}

.auth-admin-link {
    border-color: rgba(214, 144, 91, 0.08);
    background: rgba(255, 251, 246, 0.94);
}

.footer-links-inline a,
.footer-meta-stack span {
    border-color: rgba(214, 144, 91, 0.07);
    background: rgba(255, 252, 248, 0.86);
}

.theme-admin {
    background:
        radial-gradient(circle at top left, rgba(237, 171, 122, 0.12), transparent 28rem),
        linear-gradient(180deg, #fdf9f4 0%, #f7efe6 100%);
}

.admin-sidebar {
    background: linear-gradient(180deg, rgba(155, 103, 63, 0.95), rgba(176, 120, 74, 0.93));
    border-right-color: rgba(255, 219, 187, 0.12);
}

.theme-admin .auth-screen::before {
    background:
        radial-gradient(circle at 20% 28%, rgba(244, 191, 146, 0.22), transparent 28rem),
        linear-gradient(135deg, rgba(248, 236, 224, 0.86), rgba(239, 220, 202, 0.82));
}

.theme-admin .auth-card {
    background: linear-gradient(180deg, rgba(255, 253, 250, 0.97), rgba(255, 249, 243, 0.92));
    box-shadow: 0 32px 78px rgba(113, 82, 54, 0.08);
}

.auth-showcase-copy p,
.auth-feature-item p,
.auth-chip-row span {
    color: var(--ink-soft);
}

.auth-feature-item strong {
    color: var(--ink);
}

.auth-kicker {
    border-color: rgba(214, 144, 91, 0.12);
    background: rgba(255, 250, 244, 0.84);
    color: #a37b58;
}

.auth-chip-row span {
    border-color: rgba(214, 144, 91, 0.08);
    background: rgba(255, 251, 247, 0.82);
}

@keyframes headingToneShift {
    0%,
    100% {
        background-position: 0% 50%;
    }
    50% {
        background-position: 100% 50%;
    }
}

@keyframes headingLineFloat {
    0%,
    100% {
        transform: scaleX(0.92);
        opacity: 0.76;
    }
    50% {
        transform: scaleX(1.04);
        opacity: 1;
    }
}

@media (max-width: 760px) {
    .home-neo-copy h1 {
        font-size: clamp(2rem, 8.2vw, 2.75rem);
    }

    .neo-page-hero-copy h1,
    .auth-showcase-copy h1,
    .home-neo-cta h2 {
        font-size: clamp(1.9rem, 7.4vw, 2.5rem);
    }

    .auth-heading h2,
    .theme-admin .auth-card h1 {
        font-size: clamp(1.7rem, 6.6vw, 2rem);
    }
}

@media (prefers-reduced-motion: reduce) {
    .home-neo-copy h1,
    .neo-page-hero-copy h1,
    .home-neo-cta h2,
    .auth-heading h2,
    .auth-showcase-copy h1,
    .theme-admin .auth-card h1,
    .home-neo-copy h1::after,
    .neo-page-hero-copy h1::after,
    .home-neo-cta h2::after,
    .auth-heading h2::after,
    .auth-showcase-copy h1::after,
    .theme-admin .auth-card h1::after {
        animation: none !important;
    }
}

/* Resource library final overrides */
.page-library .resource-library-section .metric-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.8rem;
    margin-top: 0.9rem;
}

.page-library .resource-library-section .metric-card {
    display: grid;
    gap: 0.32rem;
    min-height: 0;
    padding: 1rem 1.05rem;
    border-radius: 22px;
    background: linear-gradient(180deg, rgba(255, 252, 248, 0.98), rgba(255, 248, 241, 0.9));
    box-shadow: 0 18px 34px rgba(113, 82, 54, 0.06);
}

.page-library .resource-library-section .metric-card strong {
    font-size: clamp(1.35rem, 1.8vw, 1.82rem);
    line-height: 1;
}

.page-library .resource-library-section .metric-card span {
    font-size: 0.84rem;
    color: rgba(92, 71, 56, 0.78);
}

.page-library .resource-grid {
    display: block;
    column-count: 3;
    column-gap: 1rem;
}

.page-library .resource-card {
    display: inline-flex;
    flex-direction: column;
    gap: 0.95rem;
    width: 100%;
    height: auto;
    min-height: 0;
    margin: 0 0 1rem;
    padding: 1.2rem;
    border-radius: 26px;
    background: linear-gradient(180deg, rgba(255, 253, 250, 0.98), rgba(255, 248, 241, 0.92));
    box-shadow: 0 24px 54px rgba(113, 82, 54, 0.06);
    break-inside: avoid;
    page-break-inside: avoid;
    vertical-align: top;
}

.page-library .resource-card::before {
    background: linear-gradient(180deg, rgba(236, 184, 145, 0.12), transparent 44%);
}

.page-library .resource-card-visual {
    aspect-ratio: 1 / 1;
    min-height: 0;
    border-radius: 24px;
    background: linear-gradient(180deg, rgba(252, 244, 234, 0.96), rgba(255, 250, 244, 0.88));
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.88);
}

.page-library .resource-card-visual.resource-card-visual-collage {
    aspect-ratio: auto;
    height: auto;
    min-height: 0;
}

.page-library .resource-card-visual.resource-card-visual-collage .resource-card-collage {
    height: auto;
}

.page-library .resource-card-visual > .resource-card-stage,
.page-library .resource-card-visual > img {
    height: 100%;
    min-height: 0;
}

.page-library .resource-card-stage,
.page-library .resource-card-stage img,
.page-library .resource-card-stage video,
.page-library .resource-card-stage .studio-audio-poster {
    min-height: 0;
}

.page-library .resource-card-badge {
    top: 0.85rem;
    right: 0.85rem;
    background: rgba(57, 50, 43, 0.66);
}

.page-library .resource-card-copy {
    gap: 0.4rem;
    min-height: 0;
}

.page-library .resource-card-copy strong {
    display: -webkit-box;
    font-size: 1.02rem;
    line-height: 1.45;
    color: #2f2721;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.page-library .resource-card-copy p,
.page-library .resource-card-copy small {
    color: rgba(92, 71, 56, 0.78);
}

.page-library .resource-card-copy p {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
}

.page-library .resource-card-copy small {
    font-size: 0.86rem;
}

.page-library .resource-card-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.6rem;
    align-items: center;
    margin-top: 0.15rem;
    padding-top: 0;
}

.page-library .resource-card-actions > *,
.page-library .resource-card-inline-form {
    flex: 1 1 0;
    min-width: 6.9rem;
    margin: 0;
}

.page-library .resource-card-actions .button,
.page-library .resource-card-inline-form .button {
    width: 100%;
    min-height: 42px;
    padding: 0 0.95rem;
    border-radius: 999px;
    justify-content: center;
    white-space: nowrap;
    box-shadow: none;
}

.page-library .resource-card-actions .button.ghost,
.page-library .resource-card-inline-form .button.ghost {
    border-color: rgba(214, 144, 91, 0.1);
    background: rgba(255, 252, 248, 0.96);
}

.page-library .resource-card-actions .button.ghost:hover,
.page-library .resource-card-inline-form .button.ghost:hover {
    box-shadow: 0 12px 24px rgba(113, 82, 54, 0.08);
}

.studio-song-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0.9rem;
}

.studio-song-grid-library {
    margin-top: 0.2rem;
}

.studio-song-card {
    display: grid;
    grid-template-columns: minmax(0, 190px) minmax(0, 1fr);
    gap: 1rem;
    padding: 1rem;
    border-radius: 26px;
    border: 1px solid rgba(232, 173, 122, 0.16);
    background:
        radial-gradient(circle at top left, rgba(255, 196, 147, 0.14), transparent 13rem),
        radial-gradient(circle at bottom right, rgba(255, 236, 211, 0.52), transparent 12rem),
        linear-gradient(180deg, rgba(255, 252, 248, 0.98), rgba(250, 244, 237, 0.97));
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.88),
        0 22px 44px rgba(205, 155, 111, 0.08);
}

.studio-song-card-visual {
    position: relative;
}

.studio-song-stage {
    min-height: 188px;
    border-radius: 22px;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.72);
}

.studio-song-stage img,
.studio-song-stage video,
.studio-song-stage .studio-audio-poster {
    min-height: 188px;
}

.studio-song-status {
    position: absolute;
    top: 0.85rem;
    right: 0.85rem;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    padding: 0.42rem 0.72rem;
    border-radius: 999px;
    background: rgba(18, 24, 37, 0.74);
    color: #fff;
    font-size: 0.76rem;
    font-weight: 700;
    backdrop-filter: blur(14px);
}

.studio-song-card-copy {
    display: grid;
    gap: 0.85rem;
    align-content: start;
    min-width: 0;
}

.studio-song-card-head {
    display: grid;
    gap: 0.48rem;
}

.studio-song-card-kicker {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
}

.studio-song-card-kicker span {
    display: inline-flex;
    align-items: center;
    min-height: 1.9rem;
    padding: 0.2rem 0.66rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.72);
    border: 1px solid rgba(232, 173, 122, 0.16);
    color: #7d5630;
    font-size: 0.76rem;
    font-weight: 700;
}

.studio-song-card-head strong {
    display: block;
    font-size: 1.08rem;
    line-height: 1.45;
}

.studio-song-card-head p {
    margin: 0;
    color: var(--ink-soft);
    line-height: 1.58;
}

.studio-song-preview-line {
    padding: 0.72rem 0.82rem;
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.66);
    border: 1px solid rgba(232, 173, 122, 0.12);
    color: #765d48;
    font-size: 0.9rem;
    line-height: 1.66;
}

.studio-song-audio-player {
    width: 100%;
    min-width: 0;
    height: 46px;
}

.studio-song-lyrics {
    border-radius: 18px;
    border: 1px solid rgba(233, 185, 142, 0.22);
    background: rgba(255, 255, 255, 0.7);
    overflow: hidden;
}

.studio-song-lyrics summary {
    cursor: pointer;
    list-style: none;
    padding: 0.82rem 0.95rem;
    font-weight: 700;
    color: #7f5422;
}

.studio-song-lyrics summary::-webkit-details-marker {
    display: none;
}

.studio-song-lyrics pre {
    margin: 0;
    padding: 0 0.95rem 0.95rem;
    white-space: pre-wrap;
    word-break: break-word;
    color: var(--ink);
    font: inherit;
    line-height: 1.72;
}

.studio-song-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.6rem;
}

.studio-song-actions .button {
    min-height: 2.5rem;
    box-shadow: none;
}

.page-library .studio-song-grid {
    grid-template-columns: 1fr;
    gap: 0.82rem;
}

.page-library .studio-song-card {
    grid-template-columns: minmax(0, 140px) minmax(0, 1fr);
    gap: 0.9rem;
    padding: 0.82rem;
    border-radius: 22px;
    box-shadow: 0 16px 34px rgba(205, 155, 111, 0.06);
}

.page-library .studio-song-stage,
.page-library .studio-song-stage img,
.page-library .studio-song-stage video,
.page-library .studio-song-stage .studio-audio-poster {
    min-height: 140px;
}

@media (max-width: 1120px) {
    .page-library .resource-library-section .metric-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .page-library .resource-grid {
        column-count: 2;
    }

    .studio-workspace-focus {
        grid-template-columns: 1fr;
    }

    .studio-panel-live {
        position: static;
        top: auto;
    }
}

@media (max-width: 820px) {
    .page-library .resource-card-actions > *,
    .page-library .resource-card-inline-form {
        flex-basis: calc(50% - 0.3rem);
    }
}

@media (max-width: 760px) {
    .page-library .resource-library-section .metric-grid {
        grid-template-columns: 1fr;
    }

    .page-library .resource-grid {
        column-count: 1;
    }

    .page-library .resource-card-actions > *,
    .page-library .resource-card-inline-form {
        flex-basis: 100%;
    }

    .studio-song-card,
    .page-library .studio-song-card {
        grid-template-columns: 1fr;
    }

    .studio-panel-head-row {
        align-items: flex-start;
    }

    .studio-panel-toggle {
        width: 100%;
    }

    .studio-song-stage,
    .studio-song-stage img,
    .studio-song-stage video,
    .studio-song-stage .studio-audio-poster,
    .page-library .studio-song-stage,
    .page-library .studio-song-stage img,
    .page-library .studio-song-stage video,
    .page-library .studio-song-stage .studio-audio-poster {
        min-height: 188px;
    }
}

/* Console glass tabs */
[data-glass-tabs] {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    padding: 0.34rem;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, 0.76);
    background:
        linear-gradient(180deg, rgba(255, 254, 252, 0.82), rgba(255, 248, 241, 0.72)),
        rgba(255, 255, 255, 0.26);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.86),
        0 20px 44px rgba(113, 82, 54, 0.08);
    backdrop-filter: blur(24px) saturate(145%);
    -webkit-backdrop-filter: blur(24px) saturate(145%);
}

[data-glass-tabs]::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    pointer-events: none;
    background:
        radial-gradient(circle at top left, rgba(255, 255, 255, 0.64), transparent 34%),
        linear-gradient(135deg, rgba(238, 192, 158, 0.22), transparent 52%, rgba(255, 255, 255, 0.18));
    opacity: 0.95;
}

.glass-tabs-indicator {
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 0;
    border-radius: 999px;
    opacity: 0;
    pointer-events: none;
    z-index: 0;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.92), rgba(255, 248, 241, 0.8)),
        linear-gradient(135deg, rgba(255, 255, 255, 0.88), rgba(243, 210, 181, 0.5));
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.92),
        inset 0 -1px 0 rgba(228, 190, 160, 0.34),
        0 10px 24px rgba(176, 124, 81, 0.12);
    transition:
        transform 440ms cubic-bezier(0.2, 0.9, 0.22, 1),
        width 440ms cubic-bezier(0.2, 0.9, 0.22, 1),
        height 440ms cubic-bezier(0.2, 0.9, 0.22, 1),
        opacity 180ms ease;
}

.glass-tabs-indicator::before {
    content: "";
    position: absolute;
    inset: 1px;
    border-radius: inherit;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.86), rgba(255, 255, 255, 0.22) 42%, rgba(255, 255, 255, 0.12)),
        radial-gradient(circle at top, rgba(255, 255, 255, 0.82), transparent 56%);
    opacity: 0.9;
}

[data-glass-tabs].has-active-tab .glass-tabs-indicator {
    opacity: 1;
}

[data-glass-tabs] > a,
[data-glass-tabs] > button {
    position: relative;
    z-index: 1;
    min-height: 48px;
    border-radius: 999px;
    background: transparent !important;
    box-shadow: none !important;
    color: rgba(92, 71, 56, 0.72);
    transition:
        color 220ms ease,
        transform 280ms cubic-bezier(0.22, 1, 0.36, 1),
        opacity 220ms ease;
}

[data-glass-tabs] > a:hover,
[data-glass-tabs] > button:hover {
    transform: translateY(-1px);
    color: rgba(64, 49, 38, 0.9);
}

[data-glass-tabs] > a:active,
[data-glass-tabs] > button:active {
    transform: scale(0.985);
}

[data-glass-tabs] > a.is-active,
[data-glass-tabs] > a[aria-selected="true"],
[data-glass-tabs] > button.is-active,
[data-glass-tabs] > button[aria-selected="true"] {
    color: #3f3127;
}

[data-glass-tabs] > a::after,
[data-glass-tabs] > button::after {
    content: "";
    position: absolute;
    inset: 0.52rem 18%;
    border-radius: 999px;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.28), transparent);
    opacity: 0;
    transform: translateX(-18%);
    transition: opacity 220ms ease, transform 420ms ease;
    pointer-events: none;
}

[data-glass-tabs] > a.is-active::after,
[data-glass-tabs] > a[aria-selected="true"]::after,
[data-glass-tabs] > button.is-active::after,
[data-glass-tabs] > button[aria-selected="true"]::after {
    opacity: 0.95;
    transform: translateX(12%);
}

.auth-tabs[data-glass-tabs] {
    gap: 0.35rem;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.auth-tabs[data-glass-tabs] a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.toolbox-mode-switch[data-glass-tabs] {
    gap: 0.38rem;
}

.toolbox-mode-switch[data-glass-tabs] button,
.toolbox-mode-switch[data-glass-tabs] a {
    padding: 0.8rem 1.18rem;
    font-weight: 700;
}

.studio-mode-switch[data-glass-tabs] {
    margin: 0;
}

@media (prefers-reduced-motion: reduce) {
    .glass-tabs-indicator,
    [data-glass-tabs] > a,
    [data-glass-tabs] > button,
    [data-glass-tabs] > a::after,
    [data-glass-tabs] > button::after {
        transition: none !important;
    }
}

/* Mobile polish final overrides */
@media (max-width: 900px) {
    .page-console .header-inner,
    .page-auth .header-inner {
        display: grid;
        grid-template-columns: 1fr;
        align-items: stretch;
        gap: 0.75rem;
    }

    .header-actions-console,
    .header-actions-auth {
        width: 100%;
        margin-left: 0;
    }

    .header-actions-console {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 0.55rem;
        justify-content: stretch;
    }

    .header-actions-console .button {
        width: 100%;
        min-height: 42px;
        padding: 0 0.85rem;
        justify-content: center;
        font-size: 0.84rem;
    }

    .console-user-pill {
        grid-column: 1 / -1;
        padding: 0.5rem 0.72rem 0.5rem 0.46rem;
    }

    .console-user-copy small {
        max-width: none;
    }

    .home-neo-stats,
    .metric-grid,
    .console-overview-strip {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .auth-shell,
    .studio-shell,
    .navigation-shell {
        grid-template-columns: 1fr;
    }

    .auth-panel {
        order: 1;
    }

    .auth-showcase {
        order: 2;
        min-height: 0;
    }

    .navigation-sidebar {
        display: none;
    }

    .navigation-mobile-index {
        display: flex;
    }

    .studio-main {
        order: 1;
    }

    .studio-sidebar {
        order: 2;
        position: static;
    }

    .studio-nav {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .studio-nav a {
        min-height: 0;
        justify-content: center;
        padding: 0.88rem 0.72rem;
        border-radius: 20px;
    }

    .studio-nav-icon {
        width: 40px;
        height: 40px;
        border-radius: 14px;
    }

    .studio-nav-label {
        font-size: 0.88rem;
        text-align: center;
    }
}

@media (max-width: 760px) {
    .container {
        width: min(calc(100% - 1rem), var(--container));
    }

    .section {
        padding: 2.45rem 0;
    }

    .site-header {
        background: rgba(255, 249, 242, 0.92);
    }

    .header-inner {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        align-items: center;
        gap: 0.7rem 0.55rem;
        padding: 0.82rem 0;
    }

    .brand,
    .admin-brand {
        width: auto;
        min-width: 0;
        max-width: 100%;
        gap: 0.7rem;
        padding: 0.34rem 0.68rem 0.34rem 0.42rem;
        border-radius: 22px;
    }

    .brand-mark,
    .admin-brand .brand-mark {
        width: 44px;
        height: 44px;
        border-radius: 15px;
    }

    .brand-copy strong {
        font-size: 0.98rem;
    }

    .brand-copy small {
        font-size: 0.72rem;
    }

    .header-actions {
        gap: 0.45rem;
    }

    .header-actions:not(.header-actions-console):not(.header-actions-auth) {
        display: flex;
        align-items: center;
        justify-content: flex-end;
    }

    .header-actions:not(.header-actions-console):not(.header-actions-auth) .button.small {
        min-height: 40px;
        padding: 0 0.9rem;
    }

    .site-announcement-trigger {
        min-width: 42px;
        width: 42px;
        padding: 0;
        justify-content: center;
    }

    .site-announcement-trigger__label,
    .nav-toggle-copy {
        display: none;
    }

    .nav-toggle {
        min-width: 42px;
        width: 42px;
        min-height: 42px;
        padding: 0;
        border-radius: 14px;
    }

    .page-console .header-inner,
    .page-auth .header-inner {
        grid-template-columns: 1fr;
        align-items: stretch;
    }

    .header-actions-console,
    .header-actions-auth {
        justify-content: stretch;
    }

    .home-neo-hero {
        padding-top: 1rem;
    }

    .home-neo-hero-shell,
    .neo-page-hero-shell,
    .neo-page-hero-shell-compact,
    .home-neo-cta,
    .hero-surface,
    .toolbox-group,
    .toolbox-pane-head,
    .toolbox-control-bar,
    .auth-showcase,
    .auth-panel,
    .navigation-sidebar-card,
    .navigation-group,
    .news-feature-card,
    .admin-panel,
    .studio-sidebar,
    .studio-panel,
    .resource-library-hero {
        padding: 1.05rem;
        border-radius: 24px;
    }

    .home-neo-hero-shell,
    .neo-page-hero-shell,
    .neo-page-hero-shell-compact {
        gap: 1rem;
        align-items: start;
    }

    .home-neo-copy,
    .neo-page-hero-copy,
    .home-neo-cta-copy {
        gap: 0.75rem;
    }

    .home-neo-copy h1,
    .neo-page-hero-copy h1,
    .auth-showcase-copy h1,
    .home-neo-cta h2 {
        font-size: clamp(1.9rem, 8.3vw, 2.7rem);
        line-height: 1.08;
    }

    .lead,
    .home-neo-copy p,
    .neo-page-hero-copy p,
    .home-neo-cta-copy p {
        font-size: 0.96rem;
        line-height: 1.72;
    }

    .button-row {
        display: grid;
        grid-template-columns: 1fr;
        gap: 0.6rem;
    }

    .button-row .button,
    .button-row .section-link {
        width: 100%;
        justify-content: center;
    }

    .home-neo-tag-row,
    .auth-chip-row,
    .navigation-mobile-index {
        display: flex;
        flex-wrap: nowrap;
        gap: 0.55rem;
        overflow-x: auto;
        padding-bottom: 0.12rem;
        scrollbar-width: none;
    }

    .home-neo-tag-row::-webkit-scrollbar,
    .auth-chip-row::-webkit-scrollbar,
    .navigation-mobile-index::-webkit-scrollbar {
        display: none;
    }

    .home-neo-tag-row span,
    .auth-chip-row span,
    .navigation-mobile-chip {
        white-space: nowrap;
    }

    .logo-motion-stage-home,
    .neo-page-hero-visual,
    .auth-visual-stage {
        min-height: 240px;
        max-height: 300px;
    }

    .home-neo-stats,
    .metric-grid,
    .console-overview-strip {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 0.75rem;
    }

    .metric-card,
    .home-neo-stat-card,
    .neo-metric-row article {
        padding: 0.95rem 1rem;
        border-radius: 20px;
    }

    .section-head,
    .panel-head,
    .toolbox-group-head,
    .resource-library-hero,
    .navigation-group-head,
    .studio-topbar {
        display: grid;
        gap: 0.6rem;
        align-items: start;
    }

    .section-link,
    .toolbox-counter,
    .navigation-count {
        justify-self: flex-start;
    }

    .toolbox-mode-switch,
    .console-mode-switch,
    .studio-mode-switch,
    .auth-tabs {
        width: 100%;
        max-width: none;
    }

    .toolbox-mode-switch[data-glass-tabs] button,
    .toolbox-mode-switch[data-glass-tabs] a,
    .auth-tabs[data-glass-tabs] a {
        padding: 0.78rem 0.72rem;
        font-size: 0.92rem;
    }

    .studio-topbar-copy {
        text-align: left;
    }

    .studio-workspace,
    .studio-workspace-single,
    .home-neo-surface-grid,
    .home-neo-foundation-grid,
    .home-neo-workboard-main,
    .home-neo-module-grid,
    .home-neo-tool-grid,
    .toolbox-card-grid,
    .news-grid,
    .faq-shell {
        grid-template-columns: 1fr;
    }

    .studio-shell-section {
        padding-top: 0.6rem;
    }

    .studio-nav {
        gap: 0.5rem;
    }

    .studio-nav a {
        gap: 0.58rem;
        min-height: 66px;
        padding: 0.8rem 0.72rem;
    }

    .studio-nav-icon {
        width: 38px;
        height: 38px;
        border-radius: 13px;
        font-size: 0.92rem;
    }

    .studio-nav-label {
        font-size: 0.84rem;
        line-height: 1.34;
    }

    .resource-library-hero h1 {
        font-size: clamp(1.8rem, 8vw, 2.35rem);
        margin-bottom: 0.35rem;
    }

    .resource-library-hero p {
        line-height: 1.68;
    }

    .resource-library-actions {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        width: 100%;
        gap: 0.55rem;
    }

    .resource-library-actions .button {
        width: 100%;
        justify-content: center;
    }

    .page-library .resource-library-section .metric-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 0.7rem;
    }

    .page-library .resource-grid {
        column-count: 1;
        column-gap: 0.9rem;
    }

    .page-library .resource-card {
        padding: 0.95rem;
        border-radius: 22px;
    }

    .page-library .resource-card-visual {
        aspect-ratio: 1 / 1;
        border-radius: 20px;
    }

    .page-library .resource-card-visual.resource-card-visual-collage {
        aspect-ratio: auto;
    }

    .page-library .resource-card-actions > *,
    .page-library .resource-card-inline-form {
        flex-basis: calc(50% - 0.3rem);
    }

    .resource-library-filter .form-grid.four,
    .tool-form .form-grid.two,
    .tool-form .form-grid.three,
    .tool-form .form-grid.four {
        grid-template-columns: 1fr;
    }

    .navigation-filter-bar {
        gap: 0.75rem;
        margin-top: 0.85rem;
    }

    .navigation-search {
        gap: 0.38rem;
    }

    .navigation-search span {
        font-size: 0.86rem;
    }

    .navigation-search input {
        padding: 0.88rem 0.95rem;
        border-radius: 16px;
    }

    .navigation-section-wrap {
        padding-top: 1rem;
    }

    .navigation-main {
        gap: 0.9rem;
    }

    .navigation-group {
        scroll-margin-top: 5.2rem;
    }

    .navigation-group-head {
        margin-bottom: 0.8rem;
    }

    .navigation-group-head h2 {
        font-size: 0.96rem;
        line-height: 1.62;
    }

    .navigation-count {
        padding: 0.4rem 0.72rem;
        font-size: 0.78rem;
    }

    .navigation-card-grid {
        grid-template-columns: 1fr;
        gap: 0.72rem;
    }

    .navigation-card {
        min-height: 0;
        padding: 0.92rem;
        border-radius: 20px;
    }

    .navigation-card-copy p {
        -webkit-line-clamp: 3;
    }

    .news-feature-card .button,
    .news-story-card .button {
        width: 100%;
        justify-content: center;
    }

    .table-wrap {
        margin-inline: -0.1rem;
        padding-bottom: 0.2rem;
    }

    .table {
        min-width: 560px;
    }

    .site-footer {
        margin-top: 1.4rem;
        padding: 1.2rem 0 2rem;
    }

    .footer-shell {
        grid-template-columns: 1fr;
        gap: 1rem;
    }

    .footer-brand-block,
    .footer-link-block,
    .footer-meta-block {
        gap: 0.7rem;
    }

    .footer-links-inline {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 0.55rem;
    }

    .footer-links-inline a,
    .footer-meta-stack span {
        min-height: 2.7rem;
        justify-content: center;
    }

    .footer-meta-stack {
        display: grid;
        gap: 0.55rem;
    }
}

@media (max-width: 560px) {
    .header-inner {
        grid-template-columns: 1fr;
    }

    .header-actions:not(.header-actions-console):not(.header-actions-auth) {
        width: 100%;
        justify-content: space-between;
    }

    .home-neo-stats,
    .metric-grid,
    .console-overview-strip,
    .resource-library-actions,
    .footer-links-inline,
    .header-actions-console {
        grid-template-columns: 1fr;
    }

    .console-user-pill {
        align-items: flex-start;
    }

    .console-user-copy small {
        white-space: normal;
        line-height: 1.45;
    }

    .studio-nav {
        grid-template-columns: 1fr;
    }

    .page-library .resource-card-actions > *,
    .page-library .resource-card-inline-form {
        flex-basis: 100%;
    }

    .footer-links-inline a {
        width: 100%;
    }
}

.copy-studio-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.55fr) minmax(320px, 0.9fr);
    gap: 24px;
    align-items: start;
}

.copy-thread-panel,
.copy-compose-panel {
    min-height: 0;
}

.copy-thread {
    display: grid;
    gap: 18px;
    max-height: min(72vh, 980px);
    overflow: auto;
    padding-right: 4px;
}

.copy-thread-empty {
    padding: 28px;
    border-radius: 28px;
    border: 1px solid rgba(214, 178, 143, 0.24);
    background:
        radial-gradient(circle at top left, rgba(255, 243, 231, 0.88), transparent 58%),
        rgba(255, 252, 248, 0.9);
    color: rgba(103, 79, 60, 0.92);
}

.copy-thread-empty strong {
    display: block;
    font-size: 1rem;
    margin-bottom: 10px;
}

.copy-thread-entry {
    display: grid;
    gap: 14px;
}

.copy-message-row {
    display: flex;
    align-items: flex-start;
    gap: 12px;
}

.copy-message-row-user {
    justify-content: flex-end;
}

.copy-message-row-assistant {
    justify-content: flex-start;
}

.copy-message-avatar {
    flex: 0 0 42px;
    width: 42px;
    height: 42px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 0.82rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    background: rgba(235, 156, 95, 0.14);
    color: #b56838;
    border: 1px solid rgba(235, 156, 95, 0.22);
    box-shadow: 0 16px 34px rgba(232, 180, 138, 0.16);
}

.copy-message-avatar-assistant {
    background: linear-gradient(135deg, rgba(255, 239, 220, 0.96), rgba(255, 250, 244, 0.92));
    color: #7b5a40;
}

.copy-message-card {
    width: min(100%, 760px);
    border-radius: 28px;
    padding: 18px 20px;
    border: 1px solid rgba(214, 178, 143, 0.24);
    background: rgba(255, 252, 248, 0.94);
    box-shadow: 0 22px 54px rgba(220, 188, 153, 0.14);
}

.copy-message-card-user {
    background: linear-gradient(135deg, rgba(255, 236, 214, 0.98), rgba(255, 248, 239, 0.92));
}

.copy-message-card-assistant {
    background:
        radial-gradient(circle at top left, rgba(255, 243, 231, 0.96), transparent 56%),
        rgba(255, 253, 249, 0.96);
}

.copy-message-card-loading {
    position: relative;
    overflow: hidden;
}

.copy-message-card-loading::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(110deg, transparent 0%, rgba(255, 255, 255, 0.46) 40%, transparent 80%);
    transform: translateX(-100%);
    animation: copy-shimmer 1.8s ease-in-out infinite;
    pointer-events: none;
}

.copy-message-card-error {
    border-color: rgba(201, 117, 103, 0.22);
    background: rgba(255, 247, 245, 0.95);
}

.copy-message-meta,
.copy-message-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.copy-message-meta {
    margin-bottom: 12px;
    color: rgba(132, 106, 84, 0.76);
    font-size: 0.9rem;
}

.copy-message-meta strong {
    color: #5d4331;
    font-size: 0.96rem;
}

.copy-message-toolbar {
    margin-bottom: 12px;
}

.copy-message-toolbar span {
    color: rgba(132, 106, 84, 0.78);
    font-size: 0.88rem;
}

.copy-message-body {
    margin: 0;
    color: #4f3d31;
    font-size: 0.98rem;
    font-family: inherit;
    line-height: 1.78;
    white-space: pre-wrap;
    word-break: break-word;
}

.copy-message-body-assistant {
    padding: 18px;
    border-radius: 22px;
    background: rgba(255, 248, 240, 0.82);
    border: 1px solid rgba(224, 196, 166, 0.2);
}

.copy-message-loading {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 12px;
}

.copy-message-loading span {
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: rgba(226, 146, 89, 0.72);
    animation: copy-pulse 1.2s ease-in-out infinite;
}

.copy-message-loading span:nth-child(2) {
    animation-delay: 0.15s;
}

.copy-message-loading span:nth-child(3) {
    animation-delay: 0.3s;
}

.copy-compose-form {
    display: grid;
    gap: 18px;
}

.copy-prompt-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.copy-prompt-chip {
    appearance: none;
    border: 1px solid rgba(214, 178, 143, 0.24);
    background: rgba(255, 251, 246, 0.92);
    color: #7f614a;
    border-radius: 999px;
    padding: 10px 14px;
    font: inherit;
    font-size: 0.86rem;
    cursor: pointer;
    transition: transform 180ms ease, border-color 180ms ease, background 180ms ease;
}

.copy-prompt-chip:hover {
    transform: translateY(-1px);
    border-color: rgba(229, 156, 96, 0.32);
    background: rgba(255, 245, 234, 0.96);
}

.copy-compose-tips {
    font-size: 0.88rem;
    color: rgba(132, 106, 84, 0.76);
}

.studio-copy-result {
    display: grid;
    gap: 12px;
}

.studio-copy-result-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.studio-copy-result-head strong {
    font-size: 0.98rem;
    color: #5f4634;
}

.studio-copy-result-body {
    margin: 0;
    padding: 18px;
    border-radius: 24px;
    border: 1px solid rgba(214, 178, 143, 0.22);
    background: rgba(255, 248, 240, 0.88);
    white-space: pre-wrap;
    word-break: break-word;
    color: #503e33;
    line-height: 1.78;
    font-size: 0.98rem;
    font-family: inherit;
}

.studio-copy-visual {
    position: relative;
    width: 100%;
    height: 100%;
    min-height: 100%;
    display: grid;
    grid-template-rows: auto auto minmax(0, 1fr) auto;
    align-content: stretch;
    gap: 0.78rem;
    padding: 1.15rem;
    border-radius: inherit;
    background:
        radial-gradient(circle at top left, rgba(255, 241, 226, 0.95), transparent 58%),
        linear-gradient(180deg, rgba(255, 252, 248, 0.98), rgba(255, 246, 237, 0.96));
    color: #664c39;
    transition: transform 220ms ease, box-shadow 220ms ease, background 220ms ease;
}

.studio-copy-visual::after {
    content: "";
    position: absolute;
    inset: 14px;
    border-radius: 22px;
    border: 1px solid rgba(214, 178, 143, 0.16);
    pointer-events: none;
}

.studio-copy-visual-head {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 0.6rem;
}

.studio-copy-visual-label {
    display: inline-flex;
    width: fit-content;
    padding: 7px 12px;
    border-radius: 999px;
    background: rgba(233, 153, 94, 0.12);
    color: #bd7442;
    font-size: 0.74rem;
    font-weight: 700;
    letter-spacing: 0.12em;
}

.studio-copy-visual-chip {
    display: inline-flex;
    align-items: center;
    min-height: 1.85rem;
    max-width: 52%;
    padding: 0.2rem 0.68rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.7);
    border: 1px solid rgba(221, 186, 152, 0.22);
    color: #8a6548;
    font-size: 0.76rem;
    font-weight: 700;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.studio-copy-visual strong {
    position: relative;
    z-index: 1;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    font-size: 1rem;
    line-height: 1.68;
}

.studio-copy-visual p {
    position: relative;
    z-index: 1;
    margin: 0;
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden;
    color: rgba(114, 89, 68, 0.76);
    font-size: 0.87rem;
    line-height: 1.72;
}

.studio-copy-visual-foot {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.55rem;
    padding-top: 0.78rem;
    border-top: 1px solid rgba(218, 183, 150, 0.18);
    color: rgba(128, 96, 70, 0.82);
    font-size: 0.8rem;
    font-weight: 700;
}

.studio-copy-visual-foot span:last-child {
    display: inline-flex;
    align-items: center;
    min-height: 1.8rem;
    padding: 0.18rem 0.64rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.66);
    border: 1px solid rgba(220, 188, 156, 0.18);
}

.studio-copy-visual.is-interactive:hover {
    transform: translateY(-2px);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.82), 0 22px 36px rgba(214, 163, 121, 0.14);
    background:
        radial-gradient(circle at top left, rgba(255, 236, 216, 0.98), transparent 58%),
        linear-gradient(180deg, rgba(255, 253, 250, 1), rgba(255, 246, 237, 0.98));
}

.studio-copy-visual.is-interactive:hover .studio-copy-visual-foot span:last-child {
    background: rgba(239, 165, 104, 0.12);
    color: #b16837;
}

.studio-copy-visual-history {
    padding: 1rem;
    gap: 0.68rem;
}

.studio-copy-visual-history strong {
    -webkit-line-clamp: 2;
    font-size: 0.94rem;
}

.studio-copy-visual-history p {
    -webkit-line-clamp: 3;
    font-size: 0.82rem;
}

.studio-copy-visual-history .studio-copy-visual-foot {
    padding-top: 0.65rem;
    font-size: 0.75rem;
}

.studio-history-thumb-copy {
    padding: 0;
    background: none;
}

@keyframes copy-pulse {
    0%, 80%, 100% {
        transform: scale(0.8);
        opacity: 0.52;
    }
    40% {
        transform: scale(1);
        opacity: 1;
    }
}

@keyframes copy-shimmer {
    100% {
        transform: translateX(100%);
    }
}

@media (max-width: 1180px) {
    .copy-studio-layout {
        grid-template-columns: 1fr;
    }

    .copy-thread {
        max-height: none;
    }
}

@media (max-width: 720px) {
    .copy-message-card {
        width: 100%;
        padding: 16px;
        border-radius: 22px;
    }

    .copy-message-avatar {
        flex-basis: 36px;
        width: 36px;
        height: 36px;
    }

    .copy-message-meta,
    .copy-message-toolbar {
        flex-direction: column;
        align-items: flex-start;
    }

    .copy-prompt-chips {
        gap: 8px;
    }

    .copy-prompt-chip {
        width: 100%;
        text-align: left;
    }

    .studio-copy-visual {
        padding: 18px;
    }

    .media-lightbox-copy {
        padding: 0.95rem;
    }

    .media-lightbox-copy-actions {
        justify-content: stretch;
    }

.media-lightbox-copy-actions .button {
        width: 100%;
        justify-content: center;
    }
}

/* JD Buyer Show Workflow */
.jd-workflow-page {
    display: grid;
    gap: 26px;
}

.jd-workflow-hero {
    display: grid;
    gap: 16px;
    padding-top: 6px;
}

.jd-workflow-chip-row {
    gap: 10px;
}

.jd-workflow-chip {
    background: rgba(255, 246, 236, 0.96);
    border-color: rgba(226, 182, 136, 0.22);
    color: #9a6742;
    font-weight: 600;
}

.jd-workflow-hero-copy {
    display: grid;
    gap: 10px;
    max-width: 880px;
}

.jd-workflow-hero-copy h1 {
    margin: 0;
    font-size: clamp(1.9rem, 3.2vw, 2.7rem);
    line-height: 1.08;
    letter-spacing: -0.03em;
    color: #3f2a1c;
}

.jd-workflow-hero-copy p {
    margin: 0;
    color: rgba(92, 66, 45, 0.76);
    line-height: 1.78;
    max-width: 760px;
}

.jd-workflow-stack {
    grid-template-columns: minmax(0, 1fr);
    gap: 22px;
}

.jd-workflow-stack.has-current-task {
    grid-template-columns: minmax(340px, 380px) minmax(0, 1fr);
    align-items: stretch;
}

.jd-workflow-form-panel {
    gap: 18px;
    align-content: start;
}

.jd-workflow-form-panel .studio-form-shell {
    gap: 1.15rem;
}

.jd-workflow-form-panel.is-collapsed .studio-form-shell {
    max-height: 0;
    margin-bottom: 0;
}

.jd-workflow-live-panel {
    height: 100%;
}

.jd-workflow-live-panel[hidden] {
    display: none;
}

.jd-workflow-form-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.jd-workflow-form-grid-uploads {
    align-items: start;
}

.jd-workflow-form .field-upload {
    gap: 10px;
}

.jd-workflow-form .field-upload input[type="file"] {
    width: 100%;
    border-radius: 18px;
    border: 1px dashed rgba(220, 182, 142, 0.38);
    background: rgba(255, 251, 246, 0.92);
    padding: 12px 14px;
    color: #6b4b33;
}

.jd-workflow-form .field-upload input[type="file"]:disabled {
    opacity: 0.58;
    cursor: not-allowed;
    background: rgba(247, 239, 232, 0.86);
}

.jd-workflow-form .field-upload small {
    display: block;
    color: rgba(107, 79, 54, 0.74);
    line-height: 1.65;
}

.jd-workflow-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

.jd-workflow-state {
    padding: 12px 14px;
    border-radius: 18px;
    font-size: 0.95rem;
    line-height: 1.6;
    border: 1px solid rgba(217, 184, 147, 0.2);
    background: rgba(255, 248, 241, 0.84);
    color: #78583c;
}

.jd-workflow-state-inline {
    margin-top: 2px;
}

.jd-workflow-state.is-success {
    background: rgba(243, 252, 244, 0.96);
    border-color: rgba(119, 177, 122, 0.22);
    color: #366342;
}

.jd-workflow-state.is-error {
    background: rgba(255, 244, 242, 0.96);
    border-color: rgba(216, 132, 121, 0.22);
    color: #8c4139;
}

.jd-workflow-state.is-info {
    background: rgba(255, 249, 243, 0.96);
    border-color: rgba(228, 182, 123, 0.24);
    color: #7b5a33;
}

.jd-source-board {
    display: grid;
    gap: 18px;
}

.jd-workflow-form-panel .jd-source-board {
    padding-top: 2px;
}

.jd-workflow-form-panel.is-collapsed .jd-source-board {
    display: none;
}

.jd-compact-summary {
    display: grid;
    gap: 16px;
    padding: 18px;
    border-radius: 24px;
    border: 1px solid rgba(221, 188, 152, 0.18);
    background:
        linear-gradient(180deg, rgba(255, 253, 250, 0.98), rgba(255, 247, 239, 0.92)),
        rgba(255, 255, 255, 0.92);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.8),
        0 16px 34px rgba(118, 84, 53, 0.08);
}

.jd-workflow-form-panel:not(.is-collapsed) .jd-compact-summary {
    display: none;
}

.jd-compact-summary-copy {
    display: grid;
    gap: 0.35rem;
}

.jd-compact-summary-copy strong,
.jd-compact-summary-copy p {
    margin: 0;
}

.jd-compact-summary-copy strong {
    color: #4b3222;
    line-height: 1.48;
}

.jd-compact-summary-copy p {
    color: rgba(108, 78, 54, 0.76);
    line-height: 1.68;
    font-size: 0.9rem;
}

.jd-compact-summary-media {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.jd-compact-media-card {
    display: grid;
    gap: 10px;
    padding: 10px;
    border-radius: 20px;
    background: rgba(255, 255, 255, 0.9);
    border: 1px solid rgba(223, 190, 155, 0.16);
}

.jd-compact-media-card img {
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    border-radius: 16px;
    display: block;
}

.jd-compact-media-card span {
    color: #62442d;
    font-size: 0.82rem;
    font-weight: 700;
}

.jd-source-section {
    display: grid;
    gap: 14px;
    padding: 18px;
    border-radius: 24px;
    border: 1px solid rgba(220, 189, 153, 0.18);
    background: linear-gradient(180deg, rgba(255, 253, 250, 0.98), rgba(255, 248, 241, 0.9));
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.56);
}

.jd-source-section-note {
    background: rgba(255, 251, 246, 0.82);
}

.jd-source-head strong {
    display: block;
    color: #513726;
    font-size: 1rem;
}

.jd-source-head p {
    margin: 6px 0 0;
    color: rgba(95, 68, 48, 0.74);
    line-height: 1.7;
}

.jd-source-summary-card {
    padding: 16px 18px;
    border-radius: 20px;
    background: rgba(255, 252, 248, 0.96);
    border: 1px solid rgba(226, 194, 159, 0.18);
}

.jd-source-summary-card strong {
    display: block;
    color: #4f3524;
    font-size: 1rem;
}

.jd-source-summary-card p {
    margin: 8px 0 0;
    color: rgba(95, 68, 48, 0.74);
    line-height: 1.72;
}

.jd-source-summary-card.is-muted {
    background: rgba(255, 248, 241, 0.94);
}

.jd-image-choice-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(172px, 1fr));
    gap: 16px;
}

.jd-image-choice-card {
    position: relative;
    padding: 10px;
    border-radius: 24px;
    border: 1px solid rgba(223, 190, 155, 0.16);
    background: rgba(255, 255, 255, 0.96);
    box-shadow: 0 16px 34px rgba(186, 143, 95, 0.08);
    transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease, background 180ms ease;
}

.jd-image-choice-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 20px 36px rgba(186, 143, 95, 0.12);
}

.jd-image-choice-card.is-active {
    border-color: rgba(235, 151, 87, 0.36);
    background: linear-gradient(180deg, rgba(255, 249, 242, 0.98), rgba(255, 255, 255, 0.96));
    box-shadow: 0 24px 44px rgba(221, 152, 88, 0.22);
}

.jd-image-choice-card.is-active::after {
    content: '';
    position: absolute;
    inset: 0;
    border-radius: 24px;
    box-shadow:
        inset 0 0 0 2px rgba(235, 151, 87, 0.44),
        inset 0 0 0 7px rgba(255, 238, 220, 0.42);
    pointer-events: none;
}

.jd-image-choice-button {
    width: 100%;
    display: grid;
    gap: 12px;
    padding: 0;
    border: 0;
    background: transparent;
    text-align: left;
    cursor: pointer;
    position: relative;
}

.jd-image-choice-button img {
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    display: block;
    border-radius: 18px;
    transition: transform 180ms ease, filter 180ms ease;
}

.jd-image-choice-card.is-active .jd-image-choice-button img {
    transform: scale(1.03);
    filter: saturate(1.08);
}

.jd-image-choice-label {
    display: block;
    padding: 0 4px 0;
    color: #64472f;
    font-weight: 600;
    line-height: 1.4;
}

.jd-image-choice-meta {
    display: block;
    padding: 0 4px 4px;
    color: rgba(112, 82, 57, 0.74);
    font-size: 0.8rem;
    font-weight: 600;
    line-height: 1.4;
}

.jd-image-choice-check {
    position: absolute;
    top: 12px;
    left: 12px;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    min-height: 32px;
    padding: 0 12px;
    border-radius: 999px;
    background: rgba(60, 44, 31, 0.82);
    color: #fffdf9;
    font-size: 0.82rem;
    font-weight: 700;
    opacity: 0;
    transform: translateY(-4px);
    transition: opacity 180ms ease, transform 180ms ease;
}

.jd-image-choice-card.is-active .jd-image-choice-check {
    opacity: 1;
    transform: translateY(0);
}

.jd-image-preview-button {
    position: absolute;
    top: 14px;
    right: 14px;
    z-index: 3;
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    padding: 0 12px;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, 0.36);
    background: rgba(255, 255, 255, 0.9);
    color: #6d4f35;
    font-size: 0.82rem;
    font-weight: 600;
    cursor: pointer;
    box-shadow: 0 10px 20px rgba(120, 85, 50, 0.12);
    transition: transform 180ms ease, box-shadow 180ms ease, background 180ms ease;
}

.jd-image-preview-button:hover {
    transform: translateY(-1px);
    background: rgba(255, 255, 255, 0.98);
    box-shadow: 0 14px 24px rgba(120, 85, 50, 0.16);
}

.jd-flow-note strong {
    display: block;
    color: #4f3524;
    font-size: 0.98rem;
}

.jd-flow-note p {
    margin: 8px 0 0;
    color: rgba(96, 70, 49, 0.76);
    line-height: 1.72;
}

.studio-workflow-result-grid {
    padding-top: 8px;
    display: grid;
    gap: 12px;
}

.studio-workflow-result-note {
    color: rgba(114, 84, 57, 0.76);
    font-size: 0.88rem;
    line-height: 1.68;
}

.studio-workflow-collage,
.resource-card-collage {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.studio-workflow-collage-cell,
.resource-card-collage-cell {
    position: relative;
    overflow: hidden;
    border-radius: 20px;
    background: rgba(252, 247, 241, 0.92);
}

.studio-workflow-collage-cell-button,
.resource-card-collage-cell-button {
    position: relative;
    display: block;
    width: 100%;
    padding: 0;
    border: 0;
    background: transparent;
    cursor: pointer;
    overflow: hidden;
    border-radius: inherit;
}

.studio-workflow-collage-cell img,
.resource-card-collage-cell img {
    width: 100%;
    aspect-ratio: 3 / 4;
    object-fit: cover;
    display: block;
    transition: transform 220ms ease, filter 220ms ease;
}

.studio-workflow-collage-cell-button:hover img,
.resource-card-collage-cell-button:hover img {
    transform: scale(1.03);
    filter: saturate(1.06);
}

.studio-workflow-collage-cell-chip,
.resource-card-collage-cell-chip {
    position: absolute;
    left: 10px;
    bottom: 10px;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    padding: 0 12px;
    border-radius: 999px;
    background: rgba(34, 25, 18, 0.68);
    color: #fff9f2;
    font-size: 0.76rem;
    font-weight: 700;
    backdrop-filter: blur(14px);
}

.studio-workflow-collage-empty,
.resource-card-collage-empty {
    aspect-ratio: 3 / 4;
    display: grid;
    place-items: center;
    color: rgba(125, 92, 63, 0.58);
    font-size: 0.92rem;
}

.resource-card-collage {
    padding: 14px;
    border-radius: 28px;
    background: linear-gradient(180deg, rgba(255, 251, 246, 0.96), rgba(255, 248, 241, 0.9));
    box-shadow: inset 0 0 0 1px rgba(219, 188, 153, 0.12);
}

.media-lightbox-gallery {
    display: grid;
    grid-template-columns: minmax(0, 58%) minmax(320px, 42%);
    gap: 1rem;
    padding: clamp(1rem, 2vw, 1.35rem);
    align-items: stretch;
    min-height: 0;
    height: 100%;
}

.media-lightbox-gallery-stage {
    display: grid;
    grid-template-rows: minmax(0, 1fr) auto;
    gap: 0.85rem;
    height: 100%;
    min-height: 0;
    min-width: 0;
}

.media-lightbox-gallery-stage img {
    width: auto;
    max-width: 100%;
    height: auto;
    max-height: 100%;
    min-height: 0;
    object-fit: contain;
    border-radius: 24px;
    background: rgba(255, 255, 255, 0.92);
    justify-self: center;
    align-self: center;
}

.media-lightbox-gallery-meta {
    display: grid;
    gap: 0.2rem;
}

.media-lightbox-gallery-meta strong,
.media-lightbox-gallery-meta p {
    margin: 0;
}

.media-lightbox-gallery-meta p {
    color: rgba(114, 84, 57, 0.74);
}

.media-lightbox-gallery-side {
    display: grid;
    grid-template-rows: minmax(0, 1fr) auto;
    gap: 0.9rem;
    height: 100%;
    min-height: 0;
    min-width: 0;
}

.media-lightbox-gallery-thumbs {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.75rem;
    height: 100%;
    min-height: 0;
    grid-auto-rows: 1fr;
    align-content: stretch;
    overflow: auto;
    padding-right: 0.14rem;
}

.media-lightbox-gallery-thumb {
    display: grid;
    grid-template-rows: minmax(0, 1fr) auto;
    gap: 0.45rem;
    padding: 0.42rem;
    border: 1px solid rgba(229, 190, 154, 0.18);
    border-radius: 18px;
    background: rgba(255, 252, 248, 0.88);
    cursor: pointer;
    transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease;
    min-height: 0;
}

.media-lightbox-gallery-thumb:hover {
    transform: translateY(-1px);
    box-shadow: 0 16px 30px rgba(118, 84, 53, 0.08);
}

.media-lightbox-gallery-thumb.is-active {
    border-color: rgba(235, 151, 87, 0.3);
    box-shadow: 0 18px 34px rgba(221, 152, 88, 0.14);
    background: linear-gradient(180deg, rgba(255, 248, 240, 0.98), rgba(255, 255, 255, 0.94));
}

.media-lightbox-gallery-thumb img {
    width: 100%;
    height: 100%;
    min-height: 0;
    object-fit: cover;
    border-radius: 14px;
}

.media-lightbox-gallery-thumb span {
    color: #5f412b;
    font-size: 0.82rem;
    font-weight: 700;
}

.media-lightbox-gallery-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.7rem;
    justify-content: stretch;
}

.media-lightbox-gallery-actions > * {
    flex: 1 1 0;
}

img[data-media-retry].is-media-retrying,
.media-lightbox img.is-media-retrying,
.resource-card img.is-media-retrying,
.studio-result-card img.is-media-retrying,
.studio-history-card img.is-media-retrying,
.jd-image-choice-card img.is-media-retrying,
.jd-compact-media-card img.is-media-retrying {
    opacity: 0.62;
    filter: saturate(0.88);
    transition: opacity 180ms ease, filter 180ms ease;
}

@media (max-width: 900px) {
    .jd-workflow-stack.has-current-task {
        grid-template-columns: 1fr;
    }

    .jd-workflow-form-grid {
        grid-template-columns: 1fr;
    }

    .media-lightbox-gallery {
        grid-template-columns: 1fr;
    }

    .media-lightbox-gallery-stage,
    .media-lightbox-gallery-side {
        min-height: 0;
    }
}

@media (max-width: 640px) {
    .jd-workflow-actions .button {
        width: 100%;
        justify-content: center;
    }

    .jd-image-choice-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .jd-compact-summary-media {
        grid-template-columns: 1fr 1fr;
    }

    .jd-source-section {
        padding: 16px;
    }

    .studio-workflow-collage,
    .resource-card-collage {
        gap: 8px;
    }

    .media-lightbox-gallery-thumbs {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .media-lightbox-gallery-actions .button,
    .media-lightbox-gallery-actions a {
        width: 100%;
        justify-content: center;
    }
}

/* 小七启号 Rebrand */
:root {
    --bg: #edf6ff;
    --bg-soft: #f7fbff;
    --ink: #16324d;
    --ink-soft: #69809b;
    --line: rgba(109, 152, 194, 0.2);
    --card: rgba(255, 255, 255, 0.84);
    --brand: #67b5ef;
    --brand-dark: #3e87d6;
    --teal: #88d7ff;
    --gold: #c8edff;
    --shadow: 0 22px 54px rgba(74, 123, 168, 0.12);
    --cat-shell: #d5f1ff;
    --cat-shell-soft: #f4fbff;
    --cat-mark-bg: #ffffff;
    --cat-mark-bg-soft: #eef7ff;
    --cat-band-start: #9fe4ff;
    --cat-band-end: #67b5ef;
    --cat-band-shadow: rgba(103, 181, 239, 0.28);
    --cat-core-start: #dff7ff;
    --cat-core-end: #76c8ff;
    --cat-stroke: rgba(18, 50, 77, 0.12);
}

body {
    background:
        radial-gradient(circle at top left, rgba(164, 220, 255, 0.28), transparent 28rem),
        radial-gradient(circle at top right, rgba(116, 183, 241, 0.16), transparent 26rem),
        radial-gradient(circle at bottom left, rgba(204, 236, 255, 0.24), transparent 24rem),
        linear-gradient(180deg, #fafdff 0%, #edf6ff 52%, #e8f2ff 100%);
}

.site-header {
    background: rgba(248, 252, 255, 0.8);
    border-bottom-color: rgba(144, 190, 225, 0.2);
    box-shadow: 0 12px 38px rgba(103, 160, 213, 0.08);
}

.site-header-glow {
    filter: blur(30px);
    opacity: 0.82;
}

.site-header-glow-a {
    background: radial-gradient(circle, rgba(162, 223, 255, 0.72), transparent 72%);
}

.site-header-glow-b {
    background: radial-gradient(circle, rgba(115, 186, 245, 0.34), transparent 74%);
}

.brand {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.9), rgba(242, 248, 255, 0.82));
    border-color: rgba(175, 214, 241, 0.42);
    box-shadow: 0 18px 40px rgba(91, 144, 192, 0.12);
}

.brand-mark {
    background:
        radial-gradient(circle at 18% 18%, rgba(162, 226, 255, 0.44), transparent 38%),
        radial-gradient(circle at 82% 82%, rgba(255, 255, 255, 0.52), transparent 44%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(237, 247, 255, 0.92));
    border-color: rgba(127, 192, 235, 0.24);
    box-shadow:
        0 18px 30px rgba(72, 134, 181, 0.12),
        0 0 18px rgba(115, 193, 243, 0.1),
        inset 0 1px 0 rgba(255, 255, 255, 0.98);
}

.brand-mark img {
    position: relative;
    z-index: 1;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: inherit;
}

.site-nav a:hover,
.site-nav a.active,
.ghost-link:hover {
    color: var(--ink);
    background: linear-gradient(180deg, rgba(120, 198, 250, 0.13), rgba(223, 244, 255, 0.88));
}

.nav-toggle {
    background: rgba(117, 181, 235, 0.12);
}

.button {
    background: linear-gradient(135deg, #63b0eb, #84d9ff);
    color: #fbfeff;
    box-shadow: 0 16px 32px rgba(92, 165, 226, 0.2);
}

.button:hover {
    box-shadow: 0 20px 34px rgba(92, 165, 226, 0.24);
}

.button.secondary {
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.96), rgba(231, 244, 255, 0.94));
    color: var(--ink);
    box-shadow: 0 18px 32px rgba(124, 182, 225, 0.14);
    border: 1px solid rgba(157, 204, 237, 0.32);
}

.button.ghost,
.section-link {
    background: rgba(255, 255, 255, 0.74);
    color: var(--ink);
    border-color: rgba(152, 196, 229, 0.24);
}

.badge,
.chip,
.home-neo-tag-row span,
.home-platform-row span,
.home-deliverable-list span {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.92), rgba(238, 248, 255, 0.9));
    color: #4c7aa2;
    border-color: rgba(150, 197, 232, 0.22);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.8);
}

.badge.ghost-badge {
    background: rgba(112, 190, 244, 0.1);
    color: #4d82af;
}

.hero-surface,
.toolbox-card,
.story-card,
.metric-card,
.auth-showcase,
.auth-panel,
.admin-sidebar,
.neo-surface-panel,
.neo-tool-card,
.tool-card,
.editor-panel,
.result-panel,
.admin-panel {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.9), rgba(246, 251, 255, 0.84));
    border-color: rgba(173, 214, 242, 0.24);
    box-shadow: 0 22px 52px rgba(82, 134, 177, 0.1);
}

.hero-surface::after,
.auth-panel::after,
.auth-showcase::after {
    background: linear-gradient(135deg, rgba(169, 225, 255, 0.2), transparent 58%);
}

.metric-card {
    background:
        radial-gradient(circle at top right, rgba(171, 226, 255, 0.22), transparent 42%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(242, 248, 255, 0.92));
}

.metric-card strong {
    color: #2f6fa7;
}

.console-user-pill {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.92), rgba(236, 246, 255, 0.9));
    border-color: rgba(163, 205, 236, 0.28);
    box-shadow: 0 14px 26px rgba(97, 147, 188, 0.08);
}

.console-user-avatar {
    background: linear-gradient(135deg, #67b5ef, #8ddbff);
    color: #ffffff;
    box-shadow: 0 8px 18px rgba(87, 166, 228, 0.26);
}

.site-announcement-trigger {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.94), rgba(239, 248, 255, 0.92));
    border-color: rgba(168, 211, 241, 0.28);
    box-shadow: 0 18px 34px rgba(88, 142, 185, 0.1);
}

.site-announcement-trigger__icon-shell {
    background: linear-gradient(180deg, rgba(235, 248, 255, 0.92), rgba(211, 237, 255, 0.92));
    color: #4687bd;
}

.site-announcement-trigger__dot {
    background: linear-gradient(180deg, #87daff, #67b5ef);
}

.page-hero h1,
.home-neo-copy h1,
.auth-showcase-copy h1,
.auth-heading h2 {
    color: transparent;
    background: linear-gradient(135deg, #193958 0%, #2f79b4 46%, #66b7ee 100%);
    -webkit-background-clip: text;
    background-clip: text;
}

.page-hero h1,
.home-neo-copy h1 {
    text-shadow: 0 10px 22px rgba(120, 186, 235, 0.08);
}

.eyebrow {
    color: #62a9de;
}

.home-neo-hero-shell,
.neo-page-hero-shell,
.auth-shell,
.toolbox-card-grid,
.home-neo-stats {
    position: relative;
}

.home-neo-hero-shell::before,
.neo-page-hero-shell::before,
.auth-shell::before {
    content: "";
    position: absolute;
    inset: auto auto 12% -4%;
    width: 180px;
    height: 180px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(173, 227, 255, 0.5), transparent 70%);
    filter: blur(20px);
    pointer-events: none;
    animation: xqqhFloat 9s ease-in-out infinite;
}

.home-neo-hero-shell::after,
.neo-page-hero-shell::after,
.auth-shell::after {
    content: "";
    position: absolute;
    inset: 6% -2% auto auto;
    width: 132px;
    height: 132px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(119, 197, 246, 0.28), transparent 72%);
    filter: blur(18px);
    pointer-events: none;
    animation: xqqhFloat 11s ease-in-out infinite reverse;
}

.logo-motion-stage {
    background:
        radial-gradient(circle at 22% 24%, rgba(182, 232, 255, 0.34), transparent 24rem),
        radial-gradient(circle at 78% 24%, rgba(126, 193, 246, 0.18), transparent 18rem),
        linear-gradient(150deg, rgba(252, 254, 255, 0.98), rgba(231, 243, 255, 0.94));
    border-color: rgba(167, 210, 239, 0.24);
    box-shadow: 0 28px 56px rgba(86, 142, 188, 0.14);
}

.logo-motion-stage::before {
    background:
        linear-gradient(90deg, rgba(104, 176, 235, 0.09) 1px, transparent 1px),
        linear-gradient(rgba(104, 176, 235, 0.09) 1px, transparent 1px);
    background-size: 26px 26px;
    opacity: 0.58;
}

.logo-motion-stage::after {
    background:
        radial-gradient(circle at center, rgba(124, 202, 248, 0.18), transparent 60%);
    opacity: 0.9;
}

.logo-motion-grid {
    opacity: 0.44;
}

.logo-motion-digit {
    position: absolute;
    z-index: 0;
    font-size: clamp(3.4rem, 7vw, 5.8rem);
    font-weight: 700;
    letter-spacing: -0.08em;
    color: rgba(113, 187, 241, 0.18);
    text-shadow: 0 12px 24px rgba(160, 220, 255, 0.18);
    pointer-events: none;
    animation: xqqhDigit 8s ease-in-out infinite;
}

.logo-motion-digit-a {
    left: 6%;
    top: 10%;
}

.logo-motion-digit-b {
    right: 8%;
    bottom: 8%;
    animation-delay: -3s;
}

.logo-motion-aura {
    background: radial-gradient(circle, rgba(171, 226, 255, 0.32), transparent 72%);
}

.logo-motion-trace,
.logo-motion-ring,
.logo-motion-orbit,
.logo-motion-beam {
    border-color: rgba(111, 185, 238, 0.22);
}

.logo-motion-ring-a,
.logo-motion-ring-b,
.logo-motion-ring-c {
    box-shadow: 0 0 0 1px rgba(104, 176, 235, 0.16);
}

.logo-motion-beam {
    background: linear-gradient(180deg, rgba(126, 198, 247, 0), rgba(126, 198, 247, 0.34), rgba(126, 198, 247, 0));
    animation: xqqhSweep 4.2s linear infinite;
}

.logo-motion-logo-shell {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(232, 244, 255, 0.9));
    box-shadow:
        0 22px 34px rgba(90, 145, 190, 0.12),
        inset 0 1px 0 rgba(255, 255, 255, 0.96);
}

.logo-motion-logo {
    animation: xqqhFloat 6.4s ease-in-out infinite;
    filter: drop-shadow(0 18px 20px rgba(109, 184, 236, 0.14));
}

.logo-motion-badge,
.floating-chip.logo-motion-chip {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.94), rgba(232, 246, 255, 0.9));
    color: #4e7ea7;
    border: 1px solid rgba(171, 215, 242, 0.26);
    box-shadow: 0 12px 24px rgba(92, 149, 193, 0.08);
}

.floating-chip.logo-motion-chip {
    animation: xqqhFloat 8.4s ease-in-out infinite;
}

.logo-motion-badge::before {
    background: linear-gradient(180deg, #86dbff, #62afea);
}

.toolbox-mode-switch,
.auth-tabs {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.88), rgba(237, 247, 255, 0.84));
    border: 1px solid rgba(170, 214, 242, 0.24);
    box-shadow: 0 18px 36px rgba(93, 145, 188, 0.08);
}

.toolbox-mode-switch button.is-active,
.auth-tabs .is-active {
    background: linear-gradient(180deg, rgba(111, 188, 241, 0.2), rgba(230, 245, 255, 0.94));
    color: #1d5d8d;
}

.admin-sidebar {
    background:
        radial-gradient(circle at top left, rgba(175, 229, 255, 0.28), transparent 32%),
        linear-gradient(180deg, rgba(249, 253, 255, 0.98), rgba(236, 245, 255, 0.96));
}

.admin-nav a.active,
.admin-nav a:hover {
    background: linear-gradient(180deg, rgba(110, 186, 241, 0.16), rgba(229, 244, 255, 0.92));
}

@keyframes xqqhFloat {
    0%, 100% {
        transform: translate3d(0, 0, 0);
    }
    50% {
        transform: translate3d(0, -10px, 0);
    }
}

@keyframes xqqhSweep {
    0% {
        transform: translateY(-22%) scaleY(0.94);
        opacity: 0;
    }
    18% {
        opacity: 0.76;
    }
    54% {
        opacity: 0.42;
    }
    100% {
        transform: translateY(114%) scaleY(1.04);
        opacity: 0;
    }
}

@keyframes xqqhDigit {
    0%, 100% {
        transform: translate3d(0, 0, 0) scale(1);
        opacity: 0.22;
    }
    50% {
        transform: translate3d(0, -12px, 0) scale(1.06);
        opacity: 0.42;
    }
}
