

:root {
    --bg-primary: #0a0a0a !important;
    --bg-secondary: #121212 !important;
    --text-primary: #ffffff !important;
    --text-secondary: rgba(255, 255, 255, 0.7) !important;
    --text-muted: rgba(255, 255, 255, 0.45) !important;
    --accent-red: #ff3131 !important;
    --accent-red-hover: #ff5252 !important;
    --accent-red-glow: rgba(255, 49, 49, 0.35);
    --accent: #ff3131;
    --border-color: rgba(255, 255, 255, 0.1);
    --font-family: 'Plus Jakarta Sans', 'Outfit', sans-serif;
}

*, *::before, *::after {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

html, body {
    height: 100%;
    background-color: #0a0a0a !important;
    color: #ffffff !important;
    font-family: var(--font-family) !important;
    overflow-x: hidden !important;
}

body {
    display: flex;
    overflow: hidden;
}

button,
input,
textarea,
select {
    font: inherit;
}


.sidebar {
    background: #0a0a0a !important;
    border-right: 1px solid rgba(255, 255, 255, 0.05) !important;
    width: 280px !important;
    height: 100vh !important;
    display: flex !important;
    flex-direction: column !important;
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    z-index: 1000 !important;
    transition: transform 0.3s ease;
}

.sidebar-top {
    display: flex !important;
    flex-direction: column !important;
    flex: 1 !important;
    overflow-y: auto !important;
}

.sidebar-header {
    padding: 24px 20px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
}

.claude-style-logo {
    font-size: 1.25rem;
    font-weight: 800;
    color: #fff;
    text-decoration: none !important;
}

.claude-style-logo .accent-red {
    color: var(--accent-red);
}

.new-chat-btn-claude {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    margin: 0 16px 20px !important;
    padding: 10px 5px !important;
    background: rgba(255, 49, 49, 0.1) !important;
    color: #ff3131 !important;
    border-radius: 12px !important;
    border: 1px solid rgba(255, 49, 49, 0.2) !important;
    cursor: pointer !important;
    flex-shrink: 0 !important;
}

.sidebar-nav-claude {
    display: flex !important;
    flex-direction: column !important;
    gap: 4px !important;
    padding: 0 12px !important;
}

.nav-item-claude {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    padding: 10px 16px !important;
    color: rgba(255, 255, 255, 0.6) !important;
    border-radius: 8px !important;
    font-size: 0.9rem !important;
    font-weight: 500 !important;
    cursor: pointer !important;
    transition: all 0.2s !important;
    border: none !important;
    background: none !important;
    width: 100% !important;
    text-align: left !important;
}

.nav-item-claude:hover, .nav-item-claude.active {
    background: rgba(255, 255, 255, 0.05) !important;
    color: #fff !important;
}

.nav-item-claude.admin-nav-item {
    display: none !important;
}

.nav-item-claude.admin-nav-item.admin-visible {
    display: flex !important;
}

.nav-item-claude.active {
    color: var(--accent-red) !important;
    font-weight: 700 !important;
}

.applications-nav-toggle {
    position: relative !important;
}

.applications-chevron {
    margin-left: auto !important;
    opacity: 0.5 !important;
    transition: transform 0.2s ease, opacity 0.2s ease !important;
}

.applications-nav-toggle[aria-expanded="true"] .applications-chevron {
    transform: rotate(180deg) !important;
    opacity: 0.9 !important;
}

.apps-dropdown {
    display: none !important;
   
}

.apps-dropdown.open {
    display: block !important;
}

.app-launch-card {
    display: grid !important;
    grid-template-columns: 32px 1fr auto !important;
    align-items: center !important;
    gap: 10px !important;
    min-height: 54px !important;
    padding: 0 10px !important;
    border: 1px solid rgba(255, 49, 49, 0.18) !important;
    border-radius: 12px !important;    
    color: rgba(255, 255, 255, 0.6);
    text-decoration: none !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04) !important;
    transition: border-color 0.2s ease, background 0.2s ease, transform 0.2s ease !important;
    margin-bottom: 5px;
}

.app-launch-card:hover {
    transform: translateX(2px) !important;
    border-color: rgba(255, 49, 49, 0.42) !important;
    background:
        linear-gradient(135deg, rgba(255, 49, 49, 0.18), rgba(255, 255, 255, 0.05)),
        rgba(255, 255, 255, 0.035) !important;
}

.app-launch-icon {
    width: 32px !important;
    height: 32px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 10px !important;   
    background: rgba(255, 49, 49, 0.13) !important;
}

.app-launch-copy {
    display: flex !important;
    flex-direction: column !important;
    min-width: 0 !important;
}

.app-launch-title {
    font-size: 0.84rem !important;
    font-weight: 800 !important;
    line-height: 1.15 !important;
}

.app-launch-subtitle {
    color: var(--text-muted) !important;
    font-size: 0.72rem !important;
    line-height: 1.2 !important;
}

.app-launch-cost {
    padding: 4px 7px !important;
    border-radius: 999px !important;
    background: rgba(255, 49, 49, 0.13) !important;
    color: #ff6b6b !important;
    font-size: 0.68rem !important;
    font-weight: 800 !important;
    white-space: nowrap !important;
}

.new-chat-btn-claude {
    margin: 0 14px 14px !important;
    min-height: 44px !important;
    padding: 0 12px !important;
    border-radius: 8px !important;
    font-weight: 700 !important;
}

.sidebar-nav-claude {
    gap: 2px !important;
    padding: 0 14px !important;
}

.nav-item-claude {
    min-height: 42px !important;
    padding: 0 12px !important;
    border-radius: 8px !important;
    text-decoration: none !important;
}

.sidebar-top > .nav-item-claude,
.nav-item-claude.admin-nav-item {
    width: calc(100% - 28px) !important;
    margin: 2px 14px 0 !important;
}

#searchBtn {
    margin-top: 10px !important;
    position: relative !important;
}

#searchBtn::before {
    content: "" !important;
    position: absolute !important;
    left: 2px !important;
    right: 2px !important;
    top: -6px !important;
    border-top: 1px solid rgba(255, 255, 255, 0.055) !important;
}

.nav-item-claude.admin-nav-item {
    color: rgba(255, 255, 255, 0.52) !important;
}

.nav-item-claude.admin-nav-item:hover {
    color: #fff !important;
}

.apps-dropdown {
    padding: 2px 0 8px !important;
}

.app-launch-card {
    grid-template-columns: 30px minmax(0, 1fr) auto !important;
    min-height: 42px !important;
    gap: 10px !important;
    margin: 2px 0 !important;
    padding: 5px 8px !important;
    border-color: transparent !important;
    border-radius: 8px !important;
    background: transparent !important;
    color: rgba(255, 255, 255, 0.62) !important;
    box-shadow: none !important;
}

.app-launch-card:hover,
.app-launch-card-active {
    transform: none !important;
    border-color: rgba(255, 49, 49, 0.22) !important;
    background: rgba(255, 49, 49, 0.09) !important;
    color: #fff !important;
}

.app-launch-card-active {
    border-color: rgba(255, 49, 49, 0.36) !important;
}

.app-launch-icon {
    width: 30px !important;
    height: 30px !important;
    border-radius: 8px !important;
    color: currentColor !important;
    background: rgba(255, 255, 255, 0.045) !important;
}

.app-launch-card:hover .app-launch-icon,
.app-launch-card-active .app-launch-icon {
    color: var(--accent-red) !important;
    background: rgba(255, 49, 49, 0.14) !important;
}

.app-launch-title {
    display: block !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

.app-launch-cost {
    padding: 3px 7px !important;
    font-size: 0.66rem !important;
    background: rgba(255, 49, 49, 0.14) !important;
}

body.code-launch-active {
    overflow: hidden !important;
}

.code-launch-overlay {
    position: fixed !important;
    inset: 0 !important;
    z-index: 99999 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 28px !important;
    background:
        linear-gradient(180deg, rgba(3, 7, 18, 0.96), rgba(8, 8, 10, 0.98)),
        #050507 !important;
    color: #fff !important;
    opacity: 0 !important;
    transform: scale(1.02) !important;
    transition: opacity 0.24s ease, transform 0.24s ease !important;
    overflow: hidden !important;
}

.code-launch-overlay.is-ready {
    opacity: 1 !important;
    transform: scale(1) !important;
}

.code-launch-overlay::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    background:
        linear-gradient(rgba(255, 49, 49, 0.07) 1px, transparent 1px),
        linear-gradient(90deg, rgba(56, 189, 248, 0.055) 1px, transparent 1px) !important;
    background-size: 46px 46px !important;
    transform: perspective(900px) rotateX(58deg) translateY(-18%) scale(1.18) !important;
    transform-origin: center !important;
    animation: codeLaunchGrid 5s linear infinite !important;
    opacity: 0.55 !important;
}

.code-launch-overlay::after {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    pointer-events: none !important;
    background: repeating-linear-gradient(
        0deg,
        rgba(255, 255, 255, 0.035) 0,
        rgba(255, 255, 255, 0.035) 1px,
        transparent 1px,
        transparent 5px
    ) !important;
    mix-blend-mode: screen !important;
    opacity: 0.18 !important;
}

.code-launch-grid {
    position: absolute !important;
    inset: 0 !important;
    background:
        linear-gradient(125deg, rgba(255, 49, 49, 0.18), transparent 36%),
        linear-gradient(315deg, rgba(56, 189, 248, 0.12), transparent 42%),
        linear-gradient(180deg, transparent, rgba(34, 197, 94, 0.055)) !important;
    opacity: 0.88 !important;
    pointer-events: none !important;
}


.code-launch-shell.code-launch-shell-v166 {
    width: min(1040px, 100%) !important;
    border-radius: 18px !important;
    background:
        linear-gradient(180deg, rgba(20, 22, 28, 0.96), rgba(8, 10, 14, 0.96)),
        #0b0d12 !important;
}

.code-launch-shell-v166 .code-launch-stage {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 28px !important;
    min-height: min(620px, calc(100vh - 110px)) !important;
    padding: clamp(26px, 4vw, 46px) !important;
}

.code-launch-shell-v166 .code-launch-copy-panel {
    align-items: center !important;
    justify-content: flex-start !important;
    text-align: center !important;
    width: 100% !important;
}

.code-launch-shell-v166 .code-launch-badge {
    margin-bottom: 16px !important;
    padding: 7px 12px !important;
    border-color: rgba(255, 49, 49, 0.28) !important;
    background: rgba(255, 49, 49, 0.08) !important;
    color: #ff9a9a !important;
    letter-spacing: 0.18em !important;
}

.code-launch-shell-v166 .code-launch-badge::before {
    content: "" !important;
    width: 8px !important;
    height: 8px !important;
    border-radius: 999px !important;
    background: #ff3131 !important;
    box-shadow: 0 0 18px rgba(255, 49, 49, 0.72) !important;
}

.code-launch-shell-v166 .code-launch-question {
    max-width: 820px !important;
    margin: 0 auto 10px !important;
    font-size: clamp(2.25rem, 5vw, 4.7rem) !important;
    line-height: 1.02 !important;
    text-align: center !important;
}

.code-launch-shell-v166 .code-launch-subtitle {
    max-width: 520px !important;
    margin: 0 auto !important;
    color: rgba(255, 255, 255, 0.5) !important;
    font-size: 0.95rem !important;
}

.code-launch-shell-v166 .code-launch-picker-panel {
    width: min(860px, 100%) !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.code-launch-shell-v166 .code-launch-picker-head {
    margin-bottom: 12px !important;
    padding: 0 2px !important;
}

.code-launch-shell-v166 .code-launch-picker-head strong {
    color: rgba(255, 255, 255, 0.74) !important;
    font-size: 0.76rem !important;
    letter-spacing: 0.16em !important;
}

.code-launch-shell-v166 .code-launch-picker-head span {
    display: none !important;
}

.code-launch-shell-v166 .code-launch-options {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 12px !important;
}

.code-launch-shell-v166 .code-launch-card {
    min-height: 230px !important;
    padding: 18px !important;
    align-items: center !important;
    text-align: center !important;
    border-radius: 16px !important;
    border-color: rgba(255, 255, 255, 0.1) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.02)),
        rgba(12, 15, 22, 0.86) !important;
}

.code-launch-shell-v166 .code-launch-card:hover,
.code-launch-shell-v166 .code-launch-card.selected {
    border-color: color-mix(in srgb, var(--language-accent), white 18%) !important;
    background:
        linear-gradient(180deg, color-mix(in srgb, var(--language-accent), transparent 82%), rgba(255, 255, 255, 0.03)),
        rgba(13, 17, 26, 0.96) !important;
}

.code-launch-shell-v166 .code-launch-card-logo {
    width: 112px !important;
    height: 112px !important;
    margin: 0 auto 16px !important;
    border-radius: 20px !important;
}

.code-launch-shell-v166 .code-launch-card-logo img {
    width: 88px !important;
    height: 88px !important;
}

.code-launch-shell-v166 .code-launch-web-logo {
    transform: scale(1.82) !important;
}

.code-launch-shell-v166 .code-launch-card-copy {
    align-items: center !important;
    gap: 7px !important;
}

.code-launch-shell-v166 .code-launch-card-copy strong {
    font-size: 1rem !important;
}

.code-launch-shell-v166 .code-launch-card-copy small {
    color: rgba(255, 255, 255, 0.45) !important;
    font-size: 0.73rem !important;
}

.code-launch-card-action {
    margin-top: 14px !important;
    padding: 7px 12px !important;
    border-radius: 999px !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    color: rgba(255, 255, 255, 0.72) !important;
    font-size: 0.72rem !important;
    font-weight: 900 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.1em !important;
}

.code-launch-shell-v166 .code-launch-card:hover .code-launch-card-action,
.code-launch-shell-v166 .code-launch-card.selected .code-launch-card-action {
    color: #fff !important;
    border-color: color-mix(in srgb, var(--language-accent), white 22%) !important;
    background: color-mix(in srgb, var(--language-accent), transparent 78%) !important;
}

@media (max-width: 940px) {
    .code-launch-shell-v166 .code-launch-options {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 620px) {
    .code-launch-shell-v166 .code-launch-options {
        grid-template-columns: 1fr !important;
    }

    .code-launch-shell-v166 .code-launch-card {
        min-height: 176px !important;
    }

    .code-launch-shell-v166 .code-launch-card-logo {
        width: 86px !important;
        height: 86px !important;
    }

    .code-launch-shell-v166 .code-launch-card-logo img {
        width: 68px !important;
        height: 68px !important;
    }
}

.code-launch-shell {
    position: relative !important;
    z-index: 2 !important;
    width: min(940px, 100%) !important;
    border: 1px solid rgba(255, 255, 255, 0.13) !important;
    border-radius: 18px !important;
    background:
        linear-gradient(145deg, rgba(255, 49, 49, 0.15), rgba(255, 255, 255, 0.035) 32%, rgba(56, 189, 248, 0.08)),
        rgba(9, 9, 12, 0.88) !important;
    box-shadow:
        0 38px 90px rgba(0, 0, 0, 0.72),
        0 0 0 1px rgba(255, 255, 255, 0.04) inset,
        0 0 70px rgba(255, 49, 49, 0.16) !important;
    backdrop-filter: blur(22px) !important;
    overflow: hidden !important;
    animation: codeLaunchShellIn 0.55s cubic-bezier(0.2, 0.9, 0.2, 1) both !important;
}

.code-launch-topline {
    min-height: 46px !important;
    display: flex !important;
    align-items: center !important;
    gap: 9px !important;
    padding: 0 18px !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
    background: rgba(255, 255, 255, 0.035) !important;
}

.code-launch-topline span {
    width: 11px !important;
    height: 11px !important;
    border-radius: 50% !important;
    background: #ff3131 !important;
    box-shadow: 0 0 16px rgba(255, 49, 49, 0.55) !important;
}

.code-launch-topline span:nth-child(2) {
    background: #fbbf24 !important;
    box-shadow: 0 0 16px rgba(251, 191, 36, 0.5) !important;
}

.code-launch-topline span:nth-child(3) {
    background: #22c55e !important;
    box-shadow: 0 0 16px rgba(34, 197, 94, 0.48) !important;
}

.code-launch-topline strong {
    margin-left: 8px !important;
    color: rgba(255, 255, 255, 0.66) !important;
    font-size: 0.78rem !important;
    letter-spacing: 0.14em !important;
    text-transform: uppercase !important;
}

.code-launch-terminal {
    min-height: 520px !important;
    padding: clamp(26px, 5vw, 54px) !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
}

.code-launch-command {
    width: fit-content !important;
    max-width: 100% !important;
    padding: 8px 12px !important;
    border: 1px solid rgba(255, 49, 49, 0.25) !important;
    border-radius: 999px !important;
    background: rgba(255, 49, 49, 0.08) !important;
    color: #ff7a7a !important;
    font-family: Consolas, "Fira Code", monospace !important;
    font-size: clamp(0.74rem, 2.4vw, 0.88rem) !important;
    font-weight: 700 !important;
    margin-bottom: 22px !important;
    overflow-wrap: anywhere !important;
}

.code-launch-question {
    min-height: 1.2em !important;
    margin: 0 0 30px !important;
    font-size: clamp(1.85rem, 4.9vw, 4.35rem) !important;
    line-height: 1.02 !important;
    font-weight: 900 !important;
    letter-spacing: 0 !important;
    text-wrap: balance !important;
    text-shadow: 0 0 24px rgba(255, 49, 49, 0.24) !important;
    max-width: 830px !important;
    overflow: hidden !important;
}

.code-launch-question::after {
    content: "_" !important;
    color: #ff3131 !important;
    animation: codeLaunchCursor 0.8s steps(2, start) infinite !important;
}

.code-launch-options {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 16px !important;
}

.code-launch-card {
    position: relative !important;
    min-height: 186px !important;
    padding: 18px !important;
    border: 1px solid rgba(255, 255, 255, 0.12) !important;
    border-radius: 16px !important;
    background:
        linear-gradient(160deg, color-mix(in srgb, var(--language-accent), transparent 78%), rgba(255, 255, 255, 0.025)),
        rgba(255, 255, 255, 0.035) !important;
    color: #fff !important;
    cursor: pointer !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    text-align: left !important;
    overflow: hidden !important;
    opacity: 0 !important;
    transform: translateY(24px) scale(0.96) !important;
    animation: codeLaunchCardIn 0.48s cubic-bezier(0.2, 0.9, 0.2, 1) forwards !important;
    animation-delay: var(--delay) !important;
    transition: transform 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, background 0.2s ease !important;
}

.code-launch-card::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    background: linear-gradient(120deg, transparent, rgba(255,255,255,0.12), transparent) !important;
    transform: translateX(-110%) !important;
    transition: transform 0.55s ease !important;
}

.code-launch-card:hover,
.code-launch-card.selected {
    transform: translateY(-7px) scale(1.02) !important;
    border-color: color-mix(in srgb, var(--language-accent), white 20%) !important;
    box-shadow: 0 24px 48px rgba(0, 0, 0, 0.42), 0 0 26px color-mix(in srgb, var(--language-accent), transparent 62%) !important;
}

.code-launch-card:hover::before,
.code-launch-card.selected::before {
    transform: translateX(110%) !important;
}

.code-launch-card-logo {
    width: 68px !important;
    height: 68px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 16px !important;
    background: rgba(255, 255, 255, 0.08) !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    margin-bottom: 18px !important;
}

.code-launch-card-logo img {
    width: 52px !important;
    height: 52px !important;
    object-fit: contain !important;
}

.code-launch-web-logo {
    display: grid !important;
    grid-template-columns: repeat(2, auto) !important;
    gap: 2px !important;
    color: #fff !important;
    font-size: 0.48rem !important;
    font-weight: 900 !important;
    line-height: 1 !important;
}

.code-launch-web-logo span {
    padding: 3px 4px !important;
    border-radius: 4px !important;
    background: rgba(56, 189, 248, 0.36) !important;
}

.code-launch-web-logo span:nth-child(3) {
    grid-column: 1 / -1 !important;
    background: rgba(251, 191, 36, 0.34) !important;
}

.code-launch-card-copy {
    position: relative !important;
    z-index: 1 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
}

.code-launch-card-copy strong {
    font-size: 1.05rem !important;
    line-height: 1.1 !important;
    font-weight: 900 !important;
}

.code-launch-card-copy small {
    color: rgba(255, 255, 255, 0.58) !important;
    font-size: 0.78rem !important;
    line-height: 1.35 !important;
    font-weight: 600 !important;
}

.code-launch-status {
    min-height: 42px !important;
    margin-top: 24px !important;
    color: #fff !important;
    font-weight: 900 !important;
    font-size: clamp(1.1rem, 3vw, 1.8rem) !important;
}

.code-launch-status strong {
    display: block !important;
    width: 100% !important;
    height: 4px !important;
    margin-top: 12px !important;
    border-radius: 999px !important;
    background: linear-gradient(90deg, #ff3131, #38bdf8, #22c55e) !important;
    transform-origin: left !important;
    animation: codeLaunchBar 1.05s ease forwards !important;
}

.code-launch-overlay.is-launching .code-launch-shell {
    animation: codeLaunchBlast 1.05s ease forwards !important;
}

.code-mode-hero {
    width: min(960px, 100%) !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(280px, 380px) !important;
    gap: 26px !important;
    align-items: center !important;
    text-align: left !important;
}

.code-mode-copy {
    min-width: 0 !important;
}

.code-mode-kicker {
    display: inline-flex !important;
    align-items: center !important;
    gap: 9px !important;
    padding: 8px 12px !important;
    border-radius: 999px !important;
    border: 1px solid rgba(255, 49, 49, 0.24) !important;
    background: rgba(255, 49, 49, 0.08) !important;
    color: #ff8b8b !important;
    font-size: 0.78rem !important;
    font-weight: 900 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
    margin-bottom: 18px !important;
}

.code-mode-kicker img {
    width: 17px !important;
    height: 17px !important;
    object-fit: contain !important;
    border-radius: 4px !important;
}

.code-mode-title {
    margin: 0 0 16px !important;
    font-size: clamp(2.35rem, 5vw, 4.5rem) !important;
    line-height: 1 !important;
    letter-spacing: 0 !important;
    font-weight: 900 !important;
}

.code-mode-title span {
    color: var(--accent-red) !important;
    text-shadow: 0 0 22px rgba(255, 49, 49, 0.18) !important;
}

.code-mode-subtitle {
    color: rgba(255, 255, 255, 0.66) !important;
    max-width: 620px !important;
    font-size: 1rem !important;
    font-weight: 650 !important;
}

.code-mode-language-strip {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    flex-wrap: wrap !important;
    margin-top: 22px !important;
}

.code-mode-language-pill {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 9px 12px !important;
    border-radius: 999px !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    background: rgba(255, 255, 255, 0.045) !important;
    color: rgba(255, 255, 255, 0.84) !important;
    font-size: 0.82rem !important;
    font-weight: 800 !important;
}

.code-mode-language-pill img {
    width: 20px !important;
    height: 20px !important;
    object-fit: contain !important;
}

.code-mode-web-mark {
    display: inline-grid !important;
    place-items: center !important;
    width: 20px !important;
    height: 20px !important;
    border-radius: 6px !important;
    background: linear-gradient(135deg, #38bdf8, #22c55e) !important;
    color: #061017 !important;
    font-size: 0.55rem !important;
    font-weight: 1000 !important;
}

.code-mode-terminal-card {
    position: relative !important;
    border-radius: 18px !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    background:
        linear-gradient(145deg, rgba(255, 49, 49, 0.1), rgba(255, 255, 255, 0.026) 45%, rgba(56, 189, 248, 0.07)),
        #101012 !important;
    overflow: hidden !important;
    box-shadow: 0 24px 55px rgba(0, 0, 0, 0.38) !important;
}

.code-mode-terminal-bar {
    display: flex !important;
    align-items: center !important;
    gap: 7px !important;
    min-height: 38px !important;
    padding: 0 14px !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
    color: rgba(255, 255, 255, 0.42) !important;
    font-size: 0.72rem !important;
    font-weight: 900 !important;
}

.code-mode-terminal-dot {
    width: 9px !important;
    height: 9px !important;
    border-radius: 50% !important;
    background: #ff3131 !important;
}

.code-mode-terminal-dot:nth-child(2) { background: #fbbf24 !important; }
.code-mode-terminal-dot:nth-child(3) { background: #22c55e !important; margin-right: 6px !important; }

.code-mode-terminal-card pre {
    margin: 0 !important;
    padding: 20px !important;
    color: rgba(255, 255, 255, 0.86) !important;
    font-family: Consolas, "Fira Code", monospace !important;
    font-size: clamp(0.78rem, 2vw, 0.92rem) !important;
    line-height: 1.6 !important;
    overflow-x: auto !important;
    white-space: pre !important;
}

.code-mode-starters {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 10px !important;
    margin-top: 22px !important;
}

.code-mode-starter {
    min-height: 52px !important;
    padding: 10px 12px !important;
    border-radius: 12px !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    background: rgba(255, 255, 255, 0.045) !important;
    color: rgba(255, 255, 255, 0.78) !important;
    cursor: pointer !important;
    font-size: 0.78rem !important;
    font-weight: 800 !important;
    text-align: left !important;
    transition: transform 0.18s ease, border-color 0.18s ease, background 0.18s ease !important;
}

.code-mode-starter:hover {
    transform: translateY(-2px) !important;
    border-color: rgba(255, 49, 49, 0.32) !important;
    background: rgba(255, 49, 49, 0.08) !important;
    color: #fff !important;
}

@keyframes codeLaunchGrid {
    from { background-position: 0 0, 0 0; }
    to { background-position: 0 46px, 46px 0; }
}

@keyframes codeLaunchRain {
    from { transform: translateY(-90px); opacity: 0; }
    14% { opacity: 1; }
    to { transform: translateY(calc(100vh + 120px)); opacity: 0; }
}

@keyframes codeLaunchShellIn {
    from { transform: translateY(28px) scale(0.96); opacity: 0; filter: blur(8px); }
    to { transform: translateY(0) scale(1); opacity: 1; filter: blur(0); }
}

@keyframes codeLaunchCursor {
    50% { opacity: 0; }
}

@keyframes typewriterReveal {
    from {
        clip-path: inset(0 100% 0 0);
        opacity: 0.4;
        filter: blur(4px);
        transform: translateY(8px);
    }
    to {
        clip-path: inset(0 0 0 0);
        opacity: 1;
        filter: blur(0);
        transform: translateY(0);
    }
}

.typewriterReveal {
    animation: typewriterReveal 0.72s cubic-bezier(0.18, 0.9, 0.22, 1) both !important;
}

@keyframes codeLaunchCardIn {
    to { opacity: 1; transform: translateY(0) scale(1); }
}

@keyframes codeLaunchBar {
    from { transform: scaleX(0); }
    to { transform: scaleX(1); }
}

@keyframes codeLaunchBlast {
    0% { transform: scale(1); filter: saturate(1); }
    55% { transform: scale(1.03); filter: saturate(1.35); }
    100% { transform: scale(1.22); opacity: 0; filter: blur(14px) saturate(1.5); }
}

@media (max-width: 940px) {
    .code-launch-options {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .code-mode-hero {
        grid-template-columns: 1fr !important;
        text-align: center !important;
    }

    .code-mode-language-strip {
        justify-content: center !important;
    }
}

@media (max-width: 620px) {
    .code-launch-overlay {
        padding: 14px !important;
    }

    .code-launch-terminal {
        min-height: 0 !important;
        padding: 22px !important;
    }

    .code-launch-options,
    .code-mode-starters {
        grid-template-columns: 1fr !important;
    }

    .code-launch-card {
        min-height: 132px !important;
    }

    .code-mode-terminal-card {
        display: none !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    .code-launch-overlay *,
    .code-launch-overlay::before,
    .code-launch-overlay::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }
}


.code-launch-overlay {
    background:
        linear-gradient(135deg, rgba(67, 13, 22, 0.76), rgba(2, 10, 18, 0.94) 48%, rgba(4, 40, 42, 0.78)),
        #050608 !important;
}

.code-launch-overlay::before {
    background:
        linear-gradient(rgba(255, 255, 255, 0.025) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.025) 1px, transparent 1px),
        linear-gradient(120deg, rgba(255, 49, 49, 0.06), transparent 42%, rgba(34, 211, 238, 0.05)) !important;
    background-size: 38px 38px, 38px 38px, 100% 100% !important;
    transform: perspective(900px) rotateX(56deg) translateY(-18%) scale(1.26) !important;
}

.code-launch-shell {
    width: min(1180px, 100%) !important;
    border-radius: 22px !important;
    border: 1px solid rgba(255, 255, 255, 0.13) !important;
    background:
        linear-gradient(145deg, rgba(255, 255, 255, 0.06), rgba(255, 255, 255, 0.02)),
        rgba(8, 10, 14, 0.88) !important;
    box-shadow:
        0 40px 120px rgba(0, 0, 0, 0.72),
        0 0 0 1px rgba(255, 255, 255, 0.04) inset,
        0 0 70px rgba(34, 211, 238, 0.1),
        0 0 80px rgba(255, 49, 49, 0.12) !important;
}

.code-launch-stage {
    position: relative !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1.05fr) minmax(360px, 0.95fr) !important;
    gap: clamp(22px, 4vw, 42px) !important;
    align-items: stretch !important;
    min-height: min(660px, calc(100vh - 96px)) !important;
    padding: clamp(24px, 4.5vw, 54px) !important;
}

.code-launch-copy-panel,
.code-launch-picker-panel {
    position: relative !important;
    z-index: 1 !important;
}

.code-launch-copy-panel {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    min-width: 0 !important;
}

.code-launch-badge {
    width: fit-content !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 9px !important;
    margin-bottom: 18px !important;
    padding: 8px 12px !important;
    border-radius: 999px !important;
    border: 1px solid rgba(34, 211, 238, 0.22) !important;
    background: rgba(34, 211, 238, 0.08) !important;
    color: #9be8ff !important;
    font-size: 0.74rem !important;
    font-weight: 950 !important;
    letter-spacing: 0.12em !important;
    text-transform: uppercase !important;
}

.code-launch-badge span {
    width: 9px !important;
    height: 9px !important;
    border-radius: 999px !important;
    background: #22d3ee !important;
    box-shadow: 0 0 18px rgba(34, 211, 238, 0.8) !important;
}

.code-launch-command {
    margin-bottom: 18px !important;
    color: #ff8a8a !important;
    background: rgba(255, 49, 49, 0.1) !important;
}

.code-launch-question {
    max-width: 640px !important;
    margin-bottom: 18px !important;
    font-size: clamp(2.35rem, 5.8vw, 5.25rem) !important;
}

.code-launch-subtitle {
    max-width: 600px !important;
    color: rgba(255, 255, 255, 0.68) !important;
    font-size: clamp(0.95rem, 1.8vw, 1.08rem) !important;
    line-height: 1.55 !important;
    font-weight: 650 !important;
}

.code-launch-picker-panel {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    padding: 18px !important;
    border-radius: 20px !important;
    border: 1px solid rgba(255, 255, 255, 0.11) !important;
    background:
        linear-gradient(145deg, rgba(34, 211, 238, 0.09), rgba(255, 49, 49, 0.08) 52%, rgba(255,255,255,0.025)),
        rgba(255, 255, 255, 0.035) !important;
    box-shadow: 0 24px 70px rgba(0, 0, 0, 0.28), inset 0 1px 0 rgba(255, 255, 255, 0.05) !important;
}

.code-launch-picker-head {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 14px !important;
    margin-bottom: 16px !important;
    color: #fff !important;
}

.code-launch-picker-head strong {
    font-size: 0.92rem !important;
    font-weight: 950 !important;
    letter-spacing: 0.04em !important;
    text-transform: uppercase !important;
}

.code-launch-picker-head span {
    color: rgba(255, 255, 255, 0.48) !important;
    font-size: 0.72rem !important;
    font-weight: 850 !important;
}

.code-launch-options {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 14px !important;
}

.code-launch-card {
    min-height: 188px !important;
    opacity: 1 !important;
    transform: translateY(0) scale(1) !important;
    animation: codeLaunchCardIn 0.42s cubic-bezier(0.18, 0.9, 0.2, 1) both !important;
    background:
        linear-gradient(160deg, color-mix(in srgb, var(--language-accent), transparent 76%), rgba(255, 255, 255, 0.035)),
        rgba(10, 12, 16, 0.72) !important;
}

.code-launch-card-logo {
    width: 86px !important;
    height: 86px !important;
    margin-bottom: 14px !important;
    background:
        linear-gradient(145deg, color-mix(in srgb, var(--language-accent), transparent 74%), rgba(255,255,255,0.06)) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06), 0 18px 32px rgba(0, 0, 0, 0.22) !important;
}

.code-launch-card-logo img {
    width: 68px !important;
    height: 68px !important;
}

.code-launch-web-logo {
    transform: scale(1.42) !important;
}

.code-launch-card-copy strong {
    font-size: 1.15rem !important;
}

.code-launch-status {
    grid-column: 1 / -1 !important;
    margin: 0 !important;
}

@media (max-width: 960px) {
    .code-launch-stage {
        grid-template-columns: 1fr !important;
        min-height: auto !important;
    }

    .code-launch-copy-panel {
        text-align: center !important;
        align-items: center !important;
    }

    .code-launch-question {
        max-width: 760px !important;
    }
}

@media (max-width: 620px) {
    .code-launch-stage {
        padding: 18px !important;
    }

    .code-launch-picker-panel {
        padding: 12px !important;
    }

    .code-launch-options {
        grid-template-columns: 1fr !important;
    }

    .code-launch-card {
        min-height: 146px !important;
    }
}


.code-launch-overlay.code-launch-clean {
    background:
        linear-gradient(140deg, rgba(9, 9, 12, 0.98), rgba(10, 10, 14, 0.98) 45%, rgba(31, 7, 9, 0.96)),
        #060608 !important;
}

.code-launch-overlay.code-launch-clean::before {
    background:
        linear-gradient(rgba(255, 49, 49, 0.035) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 49, 49, 0.024) 1px, transparent 1px),
        linear-gradient(135deg, rgba(255, 49, 49, 0.08), transparent 44%, rgba(255, 255, 255, 0.018)) !important;
    background-size: 42px 42px, 42px 42px, 100% 100% !important;
    opacity: 0.48 !important;
}

.code-launch-overlay.code-launch-clean::after {
    opacity: 0.08 !important;
}

.code-launch-overlay.code-launch-clean .code-launch-grid {
    background:
        linear-gradient(145deg, rgba(255, 49, 49, 0.11), transparent 40%),
        linear-gradient(320deg, rgba(120, 10, 16, 0.12), transparent 45%) !important;
}

.code-launch-clean .code-launch-clean-shell {
    width: min(980px, 100%) !important;
    border: 1px solid rgba(255, 255, 255, 0.11) !important;
    border-radius: 18px !important;
    background:
        linear-gradient(180deg, rgba(18, 22, 30, 0.94), rgba(8, 11, 17, 0.96)),
        #0a0d14 !important;
    box-shadow:
        0 34px 95px rgba(0, 0, 0, 0.58),
        0 0 0 1px rgba(255, 255, 255, 0.035) inset,
        0 0 64px rgba(255, 49, 49, 0.11) !important;
    backdrop-filter: blur(18px) !important;
}

.code-launch-clean .code-launch-command,
.code-launch-clean .code-launch-topline {
    display: none !important;
}

.code-launch-clean .code-launch-stage {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 28px !important;
    min-height: min(560px, calc(100vh - 110px)) !important;
    padding: clamp(26px, 4vw, 46px) !important;
}

.code-launch-clean .code-launch-copy-panel {
    width: 100% !important;
    align-items: center !important;
    text-align: center !important;
}

.code-launch-clean .code-launch-badge {
    margin-bottom: 16px !important;
    padding: 7px 12px !important;
    border: 1px solid rgba(255, 49, 49, 0.3) !important;
    border-radius: 999px !important;
    background: rgba(255, 49, 49, 0.08) !important;
    color: #ff9a9a !important;
    font-size: 0.72rem !important;
    font-weight: 950 !important;
    letter-spacing: 0.18em !important;
}

.code-launch-clean .code-launch-badge::before {
    content: "" !important;
    width: 8px !important;
    height: 8px !important;
    border-radius: 999px !important;
    background: #ff3131 !important;
    box-shadow: 0 0 18px rgba(255, 49, 49, 0.72) !important;
}

.code-launch-clean .code-launch-question {
    max-width: 790px !important;
    margin: 0 auto 10px !important;
    color: #ffffff !important;
    font-size: clamp(2.2rem, 4.7vw, 4.35rem) !important;
    line-height: 1.03 !important;
    text-align: center !important;
    text-shadow: 0 20px 52px rgba(0, 0, 0, 0.34) !important;
}

.code-launch-clean .code-launch-question::after {
    content: none !important;
    display: none !important;
}

.code-launch-clean .code-launch-question.is-typing {
    opacity: 1 !important;
}

.code-launch-clean .code-launch-subtitle {
    max-width: 480px !important;
    margin: 0 auto !important;
    color: rgba(255, 255, 255, 0.48) !important;
    font-size: 0.92rem !important;
}

.code-launch-clean .code-launch-picker-panel {
    width: min(830px, 100%) !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.code-launch-clean .code-launch-picker-head {
    margin-bottom: 12px !important;
    padding: 0 2px !important;
}

.code-launch-clean .code-launch-picker-head strong {
    color: rgba(255, 255, 255, 0.7) !important;
    font-size: 0.74rem !important;
    letter-spacing: 0.16em !important;
}

.code-launch-clean .code-launch-picker-head span {
    display: none !important;
}

.code-launch-clean .code-launch-options {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 12px !important;
}

.code-launch-clean .code-launch-card {
    min-height: 220px !important;
    padding: 18px !important;
    align-items: center !important;
    text-align: center !important;
    border-radius: 16px !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.052), rgba(255, 255, 255, 0.018)),
        rgba(11, 15, 23, 0.9) !important;
}

.code-launch-clean .code-launch-card:hover,
.code-launch-clean .code-launch-card.selected {
    border-color: rgba(255, 49, 49, 0.48) !important;
    background:
        linear-gradient(180deg, rgba(255, 49, 49, 0.13), rgba(255, 255, 255, 0.03)),
        rgba(13, 18, 28, 0.98) !important;
}

.code-launch-clean .code-launch-card-logo {
    width: 108px !important;
    height: 108px !important;
    margin: 0 auto 16px !important;
    border-radius: 20px !important;
    background:
        linear-gradient(145deg, rgba(255, 49, 49, 0.14), rgba(255,255,255,0.055)) !important;
}

.code-launch-clean .code-launch-card-logo img {
    width: 86px !important;
    height: 86px !important;
}

.code-launch-clean .code-launch-web-logo {
    transform: scale(1.78) !important;
}

.code-launch-clean .code-launch-web-logo span {
    background: rgba(255, 49, 49, 0.34) !important;
}

.code-launch-clean .code-launch-web-logo span:nth-child(3) {
    background: rgba(255, 107, 107, 0.34) !important;
}

.code-launch-clean .code-launch-card-copy {
    align-items: center !important;
    gap: 7px !important;
}

.code-launch-clean .code-launch-card-copy strong {
    font-size: 1rem !important;
}

.code-launch-clean .code-launch-card-copy small {
    color: rgba(255, 255, 255, 0.45) !important;
    font-size: 0.72rem !important;
}

.code-launch-clean .code-launch-card-action {
    margin-top: 14px !important;
}

.code-launch-clean .code-launch-status strong {
    background: linear-gradient(90deg, #ff3131, #ff6b6b) !important;
}

@media (max-width: 940px) {
    .code-launch-clean .code-launch-options {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 620px) {
    .code-launch-clean .code-launch-options {
        grid-template-columns: 1fr !important;
    }

    .code-launch-clean .code-launch-card {
        min-height: 172px !important;
    }

    .code-launch-clean .code-launch-card-logo {
        width: 84px !important;
        height: 84px !important;
    }

    .code-launch-clean .code-launch-card-logo img {
        width: 66px !important;
        height: 66px !important;
    }
}


.code-launch-clean {
    --cursor-glow-x: 24vw;
    --cursor-glow-y: 28vh;
}

.code-launch-cursor-glow {
    position: absolute !important;
    inset: 0 !important;
    z-index: 1 !important;
    pointer-events: none !important;
    opacity: 0.46 !important;
    background:
        radial-gradient(circle 330px at var(--cursor-glow-x) var(--cursor-glow-y),
            rgba(255, 49, 49, 0.34) 0%,
            rgba(255, 49, 49, 0.18) 26%,
            rgba(255, 49, 49, 0.06) 52%,
            transparent 72%) !important;
    mix-blend-mode: screen !important;
    transition: opacity 0.18s ease !important;
}

.code-launch-clean.has-cursor-glow .code-launch-cursor-glow {
    opacity: 0.78 !important;
}

.code-launch-clean .code-launch-clean-shell {
    border-color: rgba(255, 49, 49, 0.18) !important;
    background:
        linear-gradient(180deg, rgba(16, 13, 16, 0.96), rgba(8, 8, 10, 0.98)),
        #09090b !important;
    box-shadow:
        0 34px 95px rgba(0, 0, 0, 0.62),
        0 0 0 1px rgba(255, 255, 255, 0.03) inset,
        0 0 72px rgba(255, 49, 49, 0.12) !important;
}

.code-launch-clean .code-launch-card {
    border-color: rgba(255, 49, 49, 0.15) !important;
    background:
        linear-gradient(180deg, rgba(255, 49, 49, 0.045), rgba(255, 255, 255, 0.015)),
        rgba(11, 11, 15, 0.92) !important;
}

.code-launch-clean .code-launch-card:hover,
.code-launch-clean .code-launch-card.selected {
    border-color: rgba(255, 49, 49, 0.52) !important;
    background:
        linear-gradient(180deg, rgba(255, 49, 49, 0.14), rgba(255, 255, 255, 0.025)),
        rgba(14, 12, 17, 0.98) !important;
    box-shadow: 0 20px 44px rgba(0, 0, 0, 0.34), 0 0 24px rgba(255, 49, 49, 0.18) !important;
}

.code-launch-clean .code-launch-card-logo {
    border-color: rgba(255, 49, 49, 0.2) !important;
    background:
        linear-gradient(145deg, rgba(255, 49, 49, 0.16), rgba(255,255,255,0.04)) !important;
}

.code-launch-clean .code-launch-card-action {
    border-color: rgba(255, 49, 49, 0.18) !important;
}

.code-launch-clean .code-launch-card:hover .code-launch-card-action,
.code-launch-clean .code-launch-card.selected .code-launch-card-action {
    border-color: rgba(255, 49, 49, 0.45) !important;
    background: rgba(255, 49, 49, 0.14) !important;
}

.sidebar-history-label-claude {
    padding: 20px 20px 8px !important;
    font-size: 0.75rem !important;
    font-weight: 700 !important;
    color: var(--text-muted) !important;
    text-transform: uppercase !important;
}

.sidebar-history-claude {
    flex: 1 !important;
    overflow-y: auto !important;
}

.sidebar-footer-claude {
    padding: 16px !important;
    border-top: 1px solid rgba(255, 255, 255, 0.05) !important;
    position: relative !important;
}

.user-profile-claude {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    padding: 10px !important;
    border-radius: 12px !important;
    cursor: pointer !important;
    width: 100% !important;
    border: 1px solid transparent !important;
    transition: background 0.18s ease, border-color 0.18s ease !important;
}

.user-profile-claude:hover,
.user-profile-claude.menu-open {
    background: rgba(255, 49, 49, 0.09) !important;
    border-color: rgba(255, 49, 49, 0.2) !important;
}

.user-profile-claude.menu-open #profileMenuChevron {
    transform: rotate(180deg) !important;
    color: var(--accent-red) !important;
    opacity: 0.95 !important;
}

.profile-menu-claude {
    position: absolute !important;
    left: 10px !important;
    right: 10px !important;
    bottom: 74px !important;
    z-index: 1300 !important;
    display: none !important;
    padding: 10px !important;
    border-radius: 14px !important;
    border: 1px solid rgba(255, 49, 49, 0.24) !important;
    background:
        linear-gradient(160deg, rgba(255, 49, 49, 0.12), rgba(255, 255, 255, 0.025) 34%),
        #0d0d0f !important;
    box-shadow: 0 18px 45px rgba(0, 0, 0, 0.55), 0 0 0 1px rgba(255, 255, 255, 0.03) inset !important;
}

.profile-menu-claude.open {
    display: block !important;
}

.profile-menu-head {
    display: flex !important;
    align-items: center !important;
    gap: 11px !important;
    padding: 8px 8px 12px !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.07) !important;
    margin-bottom: 6px !important;
}

.profile-menu-avatar {
    width: 38px !important;
    height: 38px !important;
    border-radius: 50% !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
    overflow: hidden !important;
    background: linear-gradient(135deg, #ff3131, #800000) !important;
    color: #fff !important;
    font-size: 0.78rem !important;
    font-weight: 900 !important;
    box-shadow: 0 0 18px rgba(255, 49, 49, 0.2) !important;
}

.profile-menu-avatar img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
}

.profile-menu-copy {
    min-width: 0 !important;
    display: flex !important;
    flex-direction: column !important;
}

.profile-menu-copy strong {
    color: #fff !important;
    font-size: 0.9rem !important;
    line-height: 1.15 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

.profile-menu-copy span {
    color: rgba(255, 255, 255, 0.52) !important;
    font-size: 0.72rem !important;
    margin-top: 2px !important;
}

.profile-menu-item {
    width: 100% !important;
    min-height: 38px !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    padding: 9px 8px !important;
    border: 0 !important;
    border-radius: 10px !important;
    background: transparent !important;
    color: rgba(255, 255, 255, 0.82) !important;
    text-decoration: none !important;
    cursor: pointer !important;
    font-size: 0.88rem !important;
    font-weight: 650 !important;
    text-align: left !important;
}

.profile-menu-item svg {
    width: 18px !important;
    height: 18px !important;
    flex-shrink: 0 !important;
    color: var(--accent-red) !important;
}

.profile-menu-item:hover {
    background: rgba(255, 49, 49, 0.12) !important;
    color: #fff !important;
}

.profile-menu-item.danger {
    color: #ff5b5b !important;
    border-top: 1px solid rgba(255, 255, 255, 0.07) !important;
    margin-top: 6px !important;
    padding-top: 12px !important;
}

.user-avatar-claude {
    width: 32px !important;
    height: 32px !important;
    background: linear-gradient(135deg, #ff3131, #8b0000) !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-weight: 800 !important;
    color: #fff !important;
    flex-shrink: 0 !important;
    overflow: hidden !important;
}

.user-avatar-claude img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
}

.user-info-claude {
    display: flex !important;
    flex-direction: column !important;
    min-width: 0 !important;
}

.user-name-claude {
    font-size: 0.8rem !important;
    font-weight: 700 !important;
    color: #fff !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

.user-plan-claude {
    font-size: 0.7rem !important;
    color: var(--accent-red) !important;
    font-weight: 600 !important;
}


.chat-main,
.chat-main-claude {
    margin-left: 280px !important;
    min-height: 100vh !important;
    height: 100vh !important;
    width: calc(100vw - 280px) !important;
    display: flex !important;
    flex-direction: column !important;
    background: #0a0a0a !important;
    position: relative !important;
    flex: 1 !important;
    overflow: hidden !important;
    min-width: 0 !important;
}

.chat-topbar-claude {
    min-height: 56px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 12px 24px !important;
    flex-shrink: 0 !important;
    background: linear-gradient(180deg, rgba(10, 10, 10, 0.96), rgba(10, 10, 10, 0.72)) !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.04) !important;
}

.sidebar-toggle-claude,
.sidebar-collapse-btn {
    width: 36px !important;
    height: 36px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: 8px !important;
    background: rgba(255, 255, 255, 0.035) !important;
    color: rgba(255, 255, 255, 0.75) !important;
    cursor: pointer !important;
}

.sidebar-toggle-claude {
    display: none !important;
}

.sidebar-collapse-btn:hover,
.sidebar-toggle-claude:hover {
    color: #fff !important;
    border-color: rgba(255, 49, 49, 0.35) !important;
}

.topbar-right-claude {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    margin-left: auto !important;
}

.topbar-plan-badge {
    color: var(--text-muted) !important;
    font-size: 0.82rem !important;
    font-weight: 600 !important;
}

.topbar-plan-badge a {
    color: var(--accent-red) !important;
    text-decoration: none !important;
}

.topbar-plan-badge a:hover {
    color: var(--accent-red-hover) !important;
}

.welcome-screen-claude {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 1 !important;
    min-height: 0 !important;
    padding: 40px 24px 24px !important;
    text-align: center !important;
}

.welcome-greeting-claude {
    width: min(100%, 720px) !important;
}

.welcome-title-claude {
    font-size: clamp(2.6rem, 5vw, 4.4rem) !important;
    line-height: 1.08 !important;
    font-weight: 800 !important;
    margin-bottom: 20px !important;
    letter-spacing: 0 !important;
    overflow-wrap: anywhere !important;
}
.welcome-title-claude .highlight { color: var(--accent-red) !important; }

.welcome-sub-claude {
    color: rgba(255, 255, 255, 0.78) !important;
    font-size: 1rem !important;
    font-weight: 500 !important;
}

.typewriter-cursor {
    display: none !important;
    width: 0.08em;
    height: 0.9em;
    margin-left: 0.05em;
    background: var(--accent-red);
    vertical-align: -0.08em;
    animation: cursorBlink 1s steps(2, start) infinite;
}

@keyframes cursorBlink {
    50% { opacity: 0; }
}


.chat-messages {
    flex: 1 !important;
    overflow-y: auto !important;
    display: flex !important;
    flex-direction: column !important;
    min-height: 0 !important;
    padding: 24px 0 !important;
    scrollbar-color: rgba(255, 255, 255, 0.18) transparent !important;
}

.message {
    max-width: 800px !important;
    margin: 0 auto 32px !important;
    display: flex !important;
    gap: 24px !important;
    padding: 0 20px !important;
}

.message-avatar {
    width: 36px !important;
    height: 36px !important;
    border-radius: 8px !important;
    flex-shrink: 0 !important;
    background: rgba(255, 255, 255, 0.06) !important;
    color: #fff !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-weight: 800 !important;
    overflow: hidden !important;
}

.message-avatar img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
}

.message-body {
    flex: 1 !important;
    min-width: 0 !important;
}

.message-role {
    font-size: 0.85rem !important;
    font-weight: 800 !important;
    margin-bottom: 8px !important;
}

.message.user .message-role { color: #fff !important; }
.message.assistant .message-role { color: var(--accent-red) !important; }

.message-text {
    font-size: 1.05rem !important;
    line-height: 1.6 !important;
    color: rgba(255, 255, 255, 0.9) !important;
}


.chat-input-area,
.chat-input-area-claude {
    width: 100% !important;
    max-width: 840px !important;
    margin: 0 auto !important;
    padding: 0 20px 40px !important;
    flex-shrink: 0 !important;
    position: relative !important;
    z-index: 2 !important;
}

.chat-input-container-claude {
    background: #161618 !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    border-radius: 18px !important;
    padding: 10px 14px !important;
    display: flex !important;
    flex-direction: column !important;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.5) !important;
}

.chat-input-wrapper-claude {
    width: 100% !important;
}

#chatInput {
    background: transparent !important;
    border: none !important;
    color: #fff !important;
    font-size: 1.02rem !important;
    font-family: inherit !important;
    resize: none !important;
    outline: none !important;
    min-height: 38px !important;
    margin-bottom: 8px !important;
    width: 100% !important;
    line-height: 1.45 !important;
    max-height: 150px !important;
}

.input-bottom-actions-claude {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    border-top: 1px solid rgba(255, 255, 255, 0.05) !important;
    padding-top: 8px !important;
    position: relative !important;
    gap: 10px !important;
}

.input-left-actions-claude {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    flex: 1 !important;
    min-width: 0 !important;
}

.input-bottom-actions-claude > div { display: flex !important; align-items: center !important; gap: 8px !important; }


.model-selector-claude {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 6px 12px !important;
    background: rgba(255, 255, 255, 0.04) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: 20px !important;
    cursor: pointer !important;
    position: relative !important;
    font-size: 0.85rem !important;
    font-weight: 600 !important;
}

#selectedModelIcon img, .option-icon img { width: 16px !important; height: 16px !important; object-fit: contain !important; border-radius: 4px !important; }

.selector-options-claude {
    position: absolute !important;
    bottom: calc(100% + 12px) !important;
    right: 0 !important;
    left: auto !important;
    width: 320px !important;
    max-width: min(320px, calc(100vw - 48px)) !important;
    background: #161618 !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    border-radius: 16px !important;
    display: none !important;
    flex-direction: column !important;
    box-shadow: 0 20px 50px rgba(0,0,0,0.6) !important;
    z-index: 10000 !important;
}

.selector-options-claude.open { display: flex !important; }

.option-claude {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    padding: 12px 16px !important;
    cursor: pointer !important;
    color: rgba(255, 255, 255, 0.86) !important;
}

.option-claude:hover { background: rgba(255, 255, 255, 0.05) !important; }

.option-info {
    display: flex !important;
    flex-direction: column !important;
    min-width: 0 !important;
    flex: 1 !important;
}

.option-name {
    font-weight: 700 !important;
    font-size: 0.86rem !important;
}

.option-desc,
.option-gem-cost {
    color: var(--text-muted) !important;
    font-size: 0.74rem !important;
}


.send-btn-claude { background: var(--accent-red) !important; color: #fff !important; width: 36px !important; height: 36px !important; border-radius: 10px !important; display: flex !important; align-items: center !important; justify-content: center !important; border: none !important; cursor: pointer !important; }
.attach-btn-claude { background: rgba(255, 255, 255, 0.05) !important; color: rgba(255, 255, 255, 0.6) !important; width: 36px !important; height: 36px !important; border-radius: 10px !important; display: flex !important; align-items: center !important; justify-content: center !important; border: none !important; cursor: pointer !important; }
.mic-btn-claude { background: rgba(255, 255, 255, 0.05) !important; color: rgba(255, 255, 255, 0.5) !important; width: 36px !important; height: 36px !important; border-radius: 10px !important; display: flex !important; align-items: center !important; justify-content: center !important; border: none !important; cursor: pointer !important; }
.stop-btn-claude { background: rgba(255, 255, 255, 0.05) !important; color: rgba(255, 255, 255, 0.5) !important; width: 36px !important; height: 36px !important; border-radius: 10px !important; align-items: center !important; justify-content: center !important; border: none !important; cursor: pointer !important; }

.send-btn-claude:hover,
.attach-btn-claude:hover,
.mic-btn-claude:hover,
.stop-btn-claude:hover {
    transform: translateY(-1px) !important;
    filter: brightness(1.08) !important;
}

.sidebar-overlay {
    display: none !important;
    position: fixed !important;
    inset: 0 !important;
    z-index: 900 !important;
    background: rgba(0, 0, 0, 0.52) !important;
}

.conversation-list {
    display: flex !important;
    flex-direction: column !important;
    gap: 4px !important;
    padding: 0 8px 16px !important;
}

.empty-history {
    display: flex !important;
    align-items: center !important;
    min-height: 36px !important;
    padding: 0 12px !important;
    color: var(--text-muted) !important;
    font-size: 0.86rem !important;
}

.conv-item {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    width: 100% !important;
    min-height: 38px !important;
    padding: 8px 8px 8px 12px !important;
    color: rgba(255, 255, 255, 0.7) !important;
    border-radius: 8px !important;
    cursor: pointer !important;
}

.conv-item:hover,
.conv-item.active {
    background: rgba(255, 255, 255, 0.055) !important;
    color: #fff !important;
}

.conv-item-text {
    flex: 1 !important;
    min-width: 0 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    font-size: 0.84rem !important;
}

.conv-delete-btn {
    width: 28px !important;
    height: 28px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border: none !important;
    border-radius: 8px !important;
    background: transparent !important;
    color: rgba(255, 255, 255, 0.38) !important;
    cursor: pointer !important;
    opacity: 0 !important;
}

.conv-item:hover .conv-delete-btn {
    opacity: 1 !important;
}

.conv-delete-btn:hover {
    background: rgba(255, 49, 49, 0.14) !important;
    color: var(--accent-red) !important;
}


.side-panel-overlay {
    position: fixed !important;
    inset: 0 !important;
    background: rgba(0, 0, 0, 0.6) !important;
    z-index: 2000 !important;
    display: none !important;
}

.side-panel-overlay.open { display: block !important; }

.side-panel {
    position: fixed !important;
    top: 0 !important;
    right: 0 !important;
    width: 400px !important;
    height: 100vh !important;
    background: #111113 !important;
    border-left: 1px solid rgba(255, 255, 255, 0.1) !important;
    z-index: 2001 !important;
    transform: translateX(100%) !important;
    transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
    display: flex !important;
    flex-direction: column !important;
}

.side-panel.open { transform: translateX(0) !important; }

.side-panel-header {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    padding: 20px !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.06) !important;
    color: #fff !important;
    font-weight: 700 !important;
}

.side-panel-close { margin-left: auto !important; background: none !important; border: none !important; color: rgba(255, 255, 255, 0.5) !important; cursor: pointer !important; font-size: 1.5rem !important; }

.side-panel-body { flex: 1 !important; overflow-y: auto !important; padding: 20px !important; }

.side-panel-empty {
    color: var(--text-muted) !important;
    line-height: 1.5 !important;
    font-size: 0.9rem !important;
    margin-bottom: 16px !important;
}

.side-panel-new-btn,
.settings-action-btn,
.action-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    min-height: 38px !important;
    padding: 9px 14px !important;
    border: 1px solid rgba(255, 255, 255, 0.09) !important;
    border-radius: 10px !important;
    background: rgba(255, 255, 255, 0.055) !important;
    color: rgba(255, 255, 255, 0.86) !important;
    cursor: pointer !important;
    font-size: 0.86rem !important;
    font-weight: 700 !important;
}

.settings-action-btn.primary,
.pulse-red {
    background: var(--accent-red) !important;
    border-color: transparent !important;
    color: #fff !important;
}

.project-create-form {
    display: grid;
    gap: 10px;
    margin: 12px 0 16px;
}

.project-create-form[hidden] {
    display: none !important;
}

.project-create-input {
    width: 100%;
    min-height: 40px;
    border: 1px solid rgba(229, 57, 53, 0.28);
    border-radius: 8px;
    background: rgba(0, 0, 0, 0.32);
    color: #fff;
    padding: 0 12px;
    outline: none;
}

.project-create-input:focus {
    border-color: var(--accent-red);
    box-shadow: 0 0 0 3px rgba(229, 57, 53, 0.15);
}

.project-create-actions {
    display: flex;
    gap: 8px;
}

.project-create-cancel,
.project-create-submit {
    min-height: 34px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 8px;
    padding: 0 12px;
    font-weight: 700;
    cursor: pointer;
}

.project-create-cancel {
    background: rgba(255, 255, 255, 0.06);
    color: rgba(255, 255, 255, 0.78);
}

.project-create-submit {
    background: var(--accent-red);
    border-color: transparent;
    color: #fff;
}

.projects-list-claude {
    display: grid;
    gap: 8px;
    margin-top: 14px;
}

.project-item-claude {
    width: 100%;
    display: flex;
    align-items: center;
    gap: 10px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.04);
    color: #fff;
    padding: 10px;
    text-align: left;
    cursor: pointer;
}

.project-item-claude:hover,
.project-item-claude.active {
    border-color: rgba(229, 57, 53, 0.5);
    background: rgba(229, 57, 53, 0.12);
}

.project-icon-claude {
    display: inline-flex;
    color: var(--accent-red);
}

.project-info-claude {
    min-width: 0;
}

.project-name-claude {
    font-size: 0.9rem;
    font-weight: 800;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.project-meta-claude {
    margin-top: 2px;
    color: rgba(255, 255, 255, 0.48);
    font-size: 0.75rem;
}

.active-project-bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin: 0 0 10px;
    padding: 10px;
    border: 1px solid rgba(229, 57, 53, 0.28);
    border-radius: 8px;
    background: rgba(229, 57, 53, 0.1);
}

.active-project-copy {
    min-width: 0;
}

.active-project-label {
    display: block;
    color: rgba(255, 255, 255, 0.5);
    font-size: 0.68rem;
    font-weight: 800;
    text-transform: uppercase;
}

.active-project-copy strong {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: #fff;
    font-size: 0.85rem;
}

.active-project-clear {
    flex: 0 0 auto;
    width: 26px;
    height: 26px;
    border: 0;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.08);
    color: rgba(255, 255, 255, 0.72);
    cursor: pointer;
}


.toast-notification {
    position: fixed;
    top: 24px;
    right: 24px;
    background: rgba(15, 15, 20, 0.95);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-left: 4px solid var(--accent-red);
    color: white;
    padding: 12px 20px;
    border-radius: 12px;
    font-size: 0.85rem;
    font-weight: 600;
    z-index: 10000;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5);
    transform: translateX(120%);
    transition: transform 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

.toast-notification.visible { transform: translateX(0); }

.settings-modal {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.8);
    backdrop-filter: blur(8px);
    z-index: 3000;
    align-items: center;
    justify-content: center;
}

.settings-modal.open { display: flex; }

.settings-modal-box {
    background: #141418;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 20px;
    width: 900px;
    height: 700px;
    max-width: 95vw;
    max-height: 90vh;
    display: flex;
    overflow: hidden;
    position: relative;
}

.settings-modal-close,
.share-modal-close,
.modal-close {
    width: 36px !important;
    height: 36px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border: none !important;
    border-radius: 10px !important;
    background: rgba(255, 255, 255, 0.06) !important;
    color: rgba(255, 255, 255, 0.72) !important;
    cursor: pointer !important;
    font-size: 1.25rem !important;
    line-height: 1 !important;
}

.settings-modal-close {
    position: absolute !important;
    top: 14px !important;
    right: 14px !important;
    z-index: 2 !important;
}

.settings-layout {
    display: flex !important;
    width: 100% !important;
    min-width: 0 !important;
}

.settings-sidebar {
    width: 245px !important;
    flex-shrink: 0 !important;
    padding: 18px 12px !important;
    border-right: 1px solid rgba(255, 255, 255, 0.07) !important;
    background: rgba(255, 255, 255, 0.02) !important;
    overflow-y: auto !important;
}

.settings-tab {
    width: 100% !important;
    min-height: 40px !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    padding: 10px 12px !important;
    border: none !important;
    border-radius: 10px !important;
    background: transparent !important;
    color: rgba(255, 255, 255, 0.64) !important;
    cursor: pointer !important;
    text-align: left !important;
    font-size: 0.86rem !important;
    font-weight: 650 !important;
}

.settings-tab:hover,
.settings-tab.active {
    background: rgba(255, 255, 255, 0.06) !important;
    color: #fff !important;
}

.settings-content {
    flex: 1 !important;
    min-width: 0 !important;
    overflow-y: auto !important;
    padding: 34px 34px 28px !important;
}

.settings-pane {
    display: none !important;
}

.settings-pane.active {
    display: block !important;
}

.settings-card,
.settings-row,
.subscription-card {
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: 14px !important;
    background: rgba(255, 255, 255, 0.035) !important;
}

.settings-card {
    padding: 18px !important;
    margin-bottom: 14px !important;
}

.settings-card-title,
.pricing-title,
.sub-card-header h3 {
    color: #fff !important;
    margin-bottom: 8px !important;
}

.settings-card-desc,
.pricing-subtitle,
.settings-row-sub,
.sub-footer-text {
    color: var(--text-muted) !important;
    line-height: 1.5 !important;
    font-size: 0.86rem !important;
}

.settings-row {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 16px !important;
    padding: 16px !important;
    margin-bottom: 12px !important;
}

.settings-row-label {
    color: rgba(255, 255, 255, 0.88) !important;
    font-weight: 700 !important;
}

.subscription-card {
    width: min(100%, 760px) !important;
    margin: 0 auto !important;
    padding: 24px !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 18px !important;
    position: relative !important;
    overflow: hidden !important;
}

.subscription-card::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    pointer-events: none !important;
    background:
        radial-gradient(circle at 88% 0%, rgba(255, 49, 49, 0.18), transparent 34%),
        linear-gradient(90deg, rgba(255, 49, 49, 0.12), transparent 28%, transparent 72%, rgba(255, 49, 49, 0.08)) !important;
    opacity: 0.75 !important;
}

.sub-card-header,
.timer-container,
.sub-quotas,
.sub-footer-text,
#manageSubBtn,
#lifetimeMessage {
    position: relative !important;
    z-index: 1 !important;
}

.sub-card-header {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 14px !important;
    flex-wrap: wrap !important;
}

.sub-card-header h3 {
    margin: 0 !important;
    font-size: 1.35rem !important;
    line-height: 1.15 !important;
}

.sub-badge {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 28px !important;
    padding: 5px 10px !important;
    border-radius: 999px !important;
    border: 1px solid rgba(255, 49, 49, 0.36) !important;
    background: rgba(255, 49, 49, 0.16) !important;
    color: #ff7474 !important;
    font-size: 0.72rem !important;
    font-weight: 900 !important;
    letter-spacing: 0.8px !important;
}

.timer-container {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(88px, 1fr)) !important;
    gap: 12px !important;
    align-items: stretch !important;
    margin: 0 !important;
}

.timer-sep {
    display: none !important;
}

.timer-segment {
    min-width: 0 !important;
    min-height: 96px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    padding: 14px 10px !important;
    border-radius: 16px !important;
    border: 1px solid rgba(255, 49, 49, 0.22) !important;
    background:
        linear-gradient(180deg, rgba(255, 49, 49, 0.11), rgba(255, 255, 255, 0.03)),
        rgba(0, 0, 0, 0.25) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.035) !important;
    text-align: center !important;
}

.timer-val {
    display: block !important;
    color: #fff !important;
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace !important;
    font-size: clamp(1.65rem, 4vw, 2.25rem) !important;
    font-weight: 950 !important;
    line-height: 1 !important;
    letter-spacing: 0 !important;
    text-shadow: 0 0 18px rgba(255, 49, 49, 0.18) !important;
}

.timer-label {
    display: block !important;
    color: rgba(255, 255, 255, 0.58) !important;
    font-size: 0.68rem !important;
    font-weight: 900 !important;
    letter-spacing: 0.7px !important;
    text-transform: uppercase !important;
    line-height: 1.1 !important;
    white-space: nowrap !important;
}

.sub-quotas {
    margin-top: 0 !important;
    padding: 14px 16px !important;
    border: 1px solid rgba(255, 49, 49, 0.16) !important;
    border-radius: 14px !important;
    background: rgba(255, 255, 255, 0.035) !important;
}

.sub-quotas > div {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 14px !important;
}

.sub-quotas span:last-child {
    color: var(--accent-red) !important;
    font-weight: 900 !important;
    white-space: nowrap !important;
}

.sub-footer-text {
    margin: 0 !important;
}

#manageSubBtn {
    min-height: 44px !important;
    margin-top: 2px !important;
}

#lifetimeMessage {
    border: 1px solid rgba(255, 49, 49, 0.2) !important;
    border-radius: 16px !important;
    background: rgba(255, 49, 49, 0.08) !important;
}

#pane-applications .settings-empty {
    display: none !important;
}

.settings-apps-grid {
    display: grid !important;
    gap: 12px !important;
}

.settings-app-card {
    display: grid !important;
    grid-template-columns: 44px 1fr auto !important;
    align-items: center !important;
    gap: 14px !important;
    padding: 16px !important;
    border: 1px solid rgba(255, 49, 49, 0.18) !important;
    border-radius: 14px !important;
    background:
        linear-gradient(135deg, rgba(255, 49, 49, 0.12), rgba(255, 255, 255, 0.035)),
        rgba(255, 255, 255, 0.03) !important;
    color: #fff !important;
    text-decoration: none !important;
}

.settings-app-card:hover {
    border-color: rgba(255, 49, 49, 0.42) !important;
    background:
        linear-gradient(135deg, rgba(255, 49, 49, 0.18), rgba(255, 255, 255, 0.05)),
        rgba(255, 255, 255, 0.04) !important;
}

.settings-app-icon {
    width: 44px !important;
    height: 44px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 12px !important;
    background: rgba(255, 49, 49, 0.14) !important;
    color: var(--accent-red) !important;
}

.settings-app-copy {
    display: flex !important;
    flex-direction: column !important;
    min-width: 0 !important;
}

.settings-app-title {
    font-size: 0.98rem !important;
    font-weight: 800 !important;
}

.settings-app-subtitle {
    color: var(--text-muted) !important;
    font-size: 0.84rem !important;
    line-height: 1.45 !important;
}

.settings-app-cost {
    padding: 6px 10px !important;
    border-radius: 999px !important;
    background: rgba(255, 49, 49, 0.13) !important;
    color: #ff6b6b !important;
    font-size: 0.74rem !important;
    font-weight: 800 !important;
    white-space: nowrap !important;
}

.settings-select {
    min-height: 36px !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    border-radius: 9px !important;
    background: #19191d !important;
    color: #fff !important;
    padding: 0 10px !important;
}


body.theme-contrast .settings-modal-box,
body.theme-contrast .profile-menu-claude,
body.theme-contrast .chat-input-container-claude {
    background: #050506 !important;
    border-color: rgba(255, 49, 49, 0.36) !important;
}

.settings-modal {
    background:
        linear-gradient(rgba(255, 49, 49, 0.05) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 49, 49, 0.04) 1px, transparent 1px),
        rgba(0, 0, 0, 0.86) !important;
    background-size: 34px 34px, 34px 34px, 100% 100% !important;
}

.settings-modal-box {
    width: min(980px, 95vw) !important;
    height: min(760px, 90vh) !important;
    background:
        radial-gradient(circle at 78% 8%, rgba(255, 49, 49, 0.16), transparent 28%),
        linear-gradient(180deg, rgba(18, 18, 22, 0.98), rgba(8, 8, 10, 0.98)) !important;
    border: 1px solid rgba(255, 49, 49, 0.24) !important;
    box-shadow:
        0 28px 90px rgba(0, 0, 0, 0.75),
        0 0 0 1px rgba(255, 255, 255, 0.035) inset,
        0 0 44px rgba(255, 49, 49, 0.08) !important;
}

.settings-modal-close:hover,
.share-modal-close:hover,
.modal-close:hover {
    color: #fff !important;
    background: rgba(255, 49, 49, 0.16) !important;
    border: 1px solid rgba(255, 49, 49, 0.28) !important;
}

.settings-sidebar {
    background:
        linear-gradient(180deg, rgba(255, 49, 49, 0.08), transparent 36%),
        rgba(5, 5, 7, 0.78) !important;
    border-right: 1px solid rgba(255, 49, 49, 0.16) !important;
}

.settings-tab {
    position: relative !important;
    color: rgba(255, 255, 255, 0.62) !important;
    transition: color 0.16s ease, background 0.16s ease, transform 0.16s ease !important;
}

.settings-tab svg {
    color: rgba(255, 255, 255, 0.48) !important;
}

.settings-tab:hover,
.settings-tab.active {
    color: #fff !important;
    background: rgba(255, 49, 49, 0.12) !important;
    box-shadow: inset 0 0 0 1px rgba(255, 49, 49, 0.18) !important;
}

.settings-tab.active svg,
.settings-tab:hover svg {
    color: var(--accent-red) !important;
}

.settings-tab.active::before {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    top: 10px !important;
    bottom: 10px !important;
    width: 3px !important;
    border-radius: 999px !important;
    background: var(--accent-red) !important;
    box-shadow: 0 0 16px var(--accent-red-glow) !important;
}

.settings-content {
    scrollbar-color: rgba(255, 49, 49, 0.38) transparent !important;
}

.settings-card,
.settings-row,
.subscription-card,
.settings-editor {
    border-color: rgba(255, 49, 49, 0.16) !important;
    background:
        linear-gradient(135deg, rgba(255, 49, 49, 0.08), rgba(255, 255, 255, 0.025)),
        rgba(10, 10, 13, 0.82) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.035) !important;
}

.settings-row:hover,
.settings-card:hover {
    border-color: rgba(255, 49, 49, 0.27) !important;
}

.settings-action-btn,
.settings-play-btn {
    border: 1px solid rgba(255, 49, 49, 0.22) !important;
    background: rgba(255, 49, 49, 0.09) !important;
    color: rgba(255, 255, 255, 0.9) !important;
    transition: background 0.16s ease, border-color 0.16s ease, transform 0.16s ease !important;
}

.settings-action-btn:hover,
.settings-play-btn:hover {
    background: rgba(255, 49, 49, 0.18) !important;
    border-color: rgba(255, 49, 49, 0.42) !important;
    color: #fff !important;
    transform: translateY(-1px) !important;
}

.settings-action-btn.primary {
    background: linear-gradient(135deg, var(--accent-red), #9f1010) !important;
    box-shadow: 0 14px 34px rgba(255, 49, 49, 0.2) !important;
}

.settings-action-btn.danger,
#settingsDeleteAllChats,
#settingsDeleteAccountParams {
    border-color: rgba(239, 68, 68, 0.32) !important;
    background: rgba(239, 68, 68, 0.12) !important;
    color: #ff6b6b !important;
}

.settings-select,
.settings-textarea {
    border: 1px solid rgba(255, 49, 49, 0.18) !important;
    background: #070709 !important;
    color: #fff !important;
    outline: none !important;
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.025) !important;
}

.settings-select:focus,
.settings-textarea:focus {
    border-color: rgba(255, 49, 49, 0.52) !important;
    box-shadow: 0 0 0 3px rgba(255, 49, 49, 0.12) !important;
}

.settings-val-group,
.settings-voice-controls {
    display: inline-flex !important;
    align-items: center !important;
    gap: 9px !important;
    flex-wrap: wrap !important;
    justify-content: flex-end !important;
}

.settings-color-dot {
    width: 18px !important;
    height: 18px !important;
    border-radius: 999px !important;
    box-shadow: 0 0 18px var(--accent-red-glow) !important;
    border: 1px solid rgba(255, 255, 255, 0.18) !important;
}

.settings-play-btn {
    min-height: 36px !important;
    padding: 0 12px !important;
    border-radius: 10px !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 7px !important;
    cursor: pointer !important;
    font-weight: 800 !important;
}

.toggle-switch {
    position: relative !important;
    display: inline-flex !important;
    width: 48px !important;
    height: 28px !important;
    flex-shrink: 0 !important;
}

.toggle-switch input {
    opacity: 0 !important;
    width: 0 !important;
    height: 0 !important;
}

.toggle-slider {
    position: absolute !important;
    inset: 0 !important;
    cursor: pointer !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, 0.13) !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    transition: background 0.18s ease, border-color 0.18s ease !important;
}

.toggle-slider::before {
    content: "" !important;
    position: absolute !important;
    width: 22px !important;
    height: 22px !important;
    left: 2px !important;
    top: 2px !important;
    border-radius: 999px !important;
    background: #fff !important;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.35) !important;
    transition: transform 0.18s ease, background 0.18s ease !important;
}

.toggle-switch input:checked + .toggle-slider {
    background: rgba(255, 49, 49, 0.72) !important;
    border-color: rgba(255, 49, 49, 0.78) !important;
}

.toggle-switch input:checked + .toggle-slider::before {
    transform: translateX(20px) !important;
    background: #fff !important;
}

.settings-editor {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    padding: 16px !important;
    margin: -2px 0 12px !important;
    border-radius: 14px !important;
}

.settings-editor[hidden] {
    display: none !important;
}

.settings-textarea {
    width: 100% !important;
    min-height: 130px !important;
    resize: vertical !important;
    border-radius: 12px !important;
    padding: 12px !important;
    line-height: 1.5 !important;
}

.settings-editor-actions {
    display: flex !important;
    justify-content: flex-end !important;
    gap: 10px !important;
}

.pricing-header {
    margin-bottom: 18px !important;
}

.pricing-title .text-red,
.text-red {
    color: var(--accent-red) !important;
}

.gem-table th,
.gem-table td {
    border-color: rgba(255, 49, 49, 0.12) !important;
}

.share-modal,
.modal-overlay {
    display: none !important;
    position: fixed !important;
    inset: 0 !important;
    z-index: 3200 !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 24px !important;
    background: rgba(0, 0, 0, 0.78) !important;
    backdrop-filter: blur(8px) !important;
}

.share-modal.open,
.modal-overlay.open {
    display: flex !important;
}

.share-modal-box,
.modal {
    width: min(100%, 440px) !important;
    max-height: min(90vh, 720px) !important;
    overflow: auto !important;
    border: 1px solid rgba(255, 255, 255, 0.11) !important;
    border-radius: 18px !important;
    background: #141418 !important;
    color: #fff !important;
    box-shadow: 0 24px 80px rgba(0, 0, 0, 0.62) !important;
}

.share-modal-header,
.modal-header {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 16px !important;
    padding: 18px 20px !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.07) !important;
}

.share-modal-header span,
.modal-header h3 {
    color: #fff !important;
    font-size: 1.02rem !important;
    font-weight: 800 !important;
    line-height: 1.3 !important;
}

.share-modal-body,
.modal-body {
    padding: 20px !important;
}

.share-modal-info {
    color: var(--text-muted) !important;
    margin-bottom: 14px !important;
}

.share-options {
    display: grid !important;
    gap: 10px !important;
}

.share-option-btn {
    width: 100% !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    padding: 12px 14px !important;
    border: 1px solid rgba(255, 255, 255, 0.09) !important;
    border-radius: 12px !important;
    background: rgba(255, 255, 255, 0.045) !important;
    color: rgba(255, 255, 255, 0.88) !important;
    cursor: pointer !important;
    text-align: left !important;
    font-weight: 700 !important;
}

.share-option-btn:hover {
    border-color: rgba(255, 49, 49, 0.32) !important;
    background: rgba(255, 49, 49, 0.1) !important;
}

.share-option-btn:disabled,
.share-option-btn.is-loading {
    opacity: 0.7 !important;
    cursor: wait !important;
}

.share-option-btn.primary {
    border-color: rgba(255, 49, 49, 0.34) !important;
    background: rgba(255, 49, 49, 0.13) !important;
    color: #fff !important;
}

.share-link-result {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: 8px !important;
    padding: 10px !important;
    border: 1px solid rgba(255, 255, 255, 0.09) !important;
    border-radius: 12px !important;
    background: rgba(0, 0, 0, 0.16) !important;
}

.share-link-result[hidden] {
    display: none !important;
}

.share-link-result input {
    min-width: 0 !important;
    height: 36px !important;
    padding: 0 11px !important;
    border-radius: 9px !important;
    border: 1px solid rgba(255, 255, 255, 0.11) !important;
    background: rgba(255, 255, 255, 0.055) !important;
    color: rgba(255, 255, 255, 0.88) !important;
    outline: none !important;
    font-size: 0.84rem !important;
}

.share-link-result button {
    height: 36px !important;
    padding: 0 12px !important;
    border-radius: 9px !important;
    border: 0 !important;
    background: var(--accent-red) !important;
    color: #fff !important;
    font-weight: 850 !important;
    cursor: pointer !important;
}

.share-toast {
    display: none !important;
    margin-top: 14px !important;
    color: var(--accent-red) !important;
    font-weight: 700 !important;
}

.chat-input-field {
    background: rgba(255, 255, 255, 0.06) !important;
    border: 1px solid rgba(255, 255, 255, 0.12) !important;
    border-radius: 10px !important;
    color: #fff !important;
    outline: none !important;
}

.modal-actions {
    padding: 0 20px 20px !important;
}

.premium-loader,
.success-checkmark {
    color: var(--accent-red) !important;
}


.quick-actions-claude { display: flex !important; gap: 10px !important; margin-top: 16px !important; justify-content: center !important; }
.quick-action-btn { padding: 8px 16px !important; background: rgba(255, 255, 255, 0.03) !important; border: 1px solid rgba(255, 255, 255, 0.06) !important; border-radius: 12px !important; color: rgba(255, 255, 255, 0.5) !important; font-size: 0.8rem !important; cursor: pointer !important; }


html,
body {
    background: #050505 !important;
}

.sidebar {
    background:
        linear-gradient(180deg, rgba(20, 8, 8, 0.96), rgba(7, 7, 8, 0.98)),
        #080808 !important;
    border-right: 1px solid rgba(255, 49, 49, 0.14) !important;
    box-shadow: 18px 0 50px rgba(0, 0, 0, 0.32) !important;
}

.chat-main-claude {
    background:
        linear-gradient(rgba(255, 49, 49, 0.055) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 49, 49, 0.045) 1px, transparent 1px),
        linear-gradient(180deg, rgba(95, 0, 0, 0.18), rgba(5, 5, 5, 0.92) 38%, #050505 100%) !important;
    background-size: 44px 44px, 44px 44px, 100% 100% !important;
}

.chat-main-claude::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background:
        linear-gradient(180deg, rgba(5, 5, 5, 0.08), rgba(5, 5, 5, 0.74)),
        linear-gradient(90deg, rgba(5, 5, 5, 0.7), transparent 20%, transparent 80%, rgba(5, 5, 5, 0.7));
    z-index: 0;
}

.chat-main-claude > * {
    position: relative;
    z-index: 1;
}

.chat-topbar-claude {
    background: rgba(8, 8, 10, 0.72) !important;
    backdrop-filter: blur(18px) saturate(1.25) !important;
    border-bottom: 1px solid rgba(255, 49, 49, 0.1) !important;
}

.topbar-plan-badge {
    padding: 7px 10px !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, 0.035) !important;
}

.welcome-greeting-claude {
    text-align: left !important;
    width: min(100%, 820px) !important;
}

.welcome-title-claude {
    color: #fff !important;
    text-shadow: 0 18px 70px rgba(255, 49, 49, 0.2) !important;
}

.welcome-sub-claude {
    color: rgba(255, 255, 255, 0.72) !important;
}

.chat-messages {
    padding: 34px 0 26px !important;
}

.message {
    width: min(100%, 940px) !important;
    max-width: none !important;
    padding: 0 30px !important;
    margin-bottom: 26px !important;
}

.message-avatar {
    border-radius: 12px !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    background: linear-gradient(145deg, rgba(255, 49, 49, 0.22), rgba(255, 255, 255, 0.055)) !important;
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.35) !important;
}

.message.assistant .message-avatar {
    border-color: rgba(255, 49, 49, 0.35) !important;
}

.message-body {
    max-width: 760px !important;
}

.message.user {
    flex-direction: row-reverse !important;
}

.message.user .message-body {
    flex: 0 1 auto !important;
    max-width: min(680px, 72%) !important;
}

.message.user .message-role {
    text-align: right !important;
}

.message-role {
    letter-spacing: 0 !important;
    text-transform: none !important;
}

.message-text {
    overflow-wrap: anywhere !important;
}

.message.user .message-text {
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    box-shadow: 0 18px 45px rgba(0, 0, 0, 0.24) !important;
}



.message.user .message-text {
    padding: 12px 16px !important;
    border-radius: 18px 18px 6px 18px !important;
    background: linear-gradient(135deg, rgba(255, 49, 49, 0.22), rgba(95, 10, 10, 0.86)) !important;
    color: #fff !important;
}

.content-text h1,
.content-text h2,
.content-text h3 {
    color: #fff !important;
    line-height: 1.16 !important;
    margin: 0 0 14px !important;
}

.content-text h1 {
    font-size: 2rem !important;
}

.content-text p,
.content-text br {
    line-height: 1.75 !important;
}

.code-block-wrapper {
    margin: 16px 0 !important;
    overflow: hidden !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    border-radius: 14px !important;
    background: #08090c !important;
}

.code-block-header {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    padding: 10px 12px !important;
    background: rgba(255, 255, 255, 0.045) !important;
    color: rgba(255, 255, 255, 0.78) !important;
}

.code-lang-info,
.copy-code-btn {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
}

.code-lang-info {
    min-width: 0 !important;
}

.code-file-label {
    max-width: 260px !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    color: rgba(255, 255, 255, 0.48) !important;
    font-size: 0.72rem !important;
    font-weight: 700 !important;
}

.copy-code-btn {
    border: 1px solid rgba(255, 255, 255, 0.09) !important;
    border-radius: 8px !important;
    background: rgba(255, 255, 255, 0.055) !important;
    color: rgba(255, 255, 255, 0.72) !important;
    padding: 6px 9px !important;
    cursor: pointer !important;
}

.code-block-wrapper pre {
    margin: 0 !important;
    padding: 16px !important;
    overflow-x: auto !important;
}

.project-zip-card {
    display: grid !important;
    grid-template-columns: 38px minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 12px !important;
    margin-top: 12px !important;
    padding: 12px !important;
    border: 1px solid rgba(255, 49, 49, 0.22) !important;
    border-radius: 10px !important;
    background: rgba(255, 49, 49, 0.075) !important;
}

.project-zip-icon {
    width: 38px !important;
    height: 38px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 9px !important;
    background: rgba(255, 49, 49, 0.14) !important;
    color: var(--accent-red) !important;
}

.project-zip-icon svg {
    width: 18px !important;
    height: 18px !important;
}

.project-zip-copy {
    min-width: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 3px !important;
}

.project-zip-copy strong {
    color: #fff !important;
    font-size: 0.9rem !important;
    line-height: 1.2 !important;
}

.project-zip-copy span {
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    color: rgba(255, 255, 255, 0.55) !important;
    font-size: 0.76rem !important;
}

.project-zip-download {
    min-height: 34px !important;
    padding: 0 12px !important;
    border-radius: 8px !important;
    border: 1px solid rgba(255, 49, 49, 0.32) !important;
    background: rgba(255, 49, 49, 0.16) !important;
    color: #fff !important;
    font-size: 0.78rem !important;
    font-weight: 800 !important;
    cursor: pointer !important;
}

.project-zip-download:hover {
    background: rgba(255, 49, 49, 0.26) !important;
}

.chat-input-area-claude {
    max-width: 900px !important;
    padding-bottom: 30px !important;
}

.chat-input-container-claude {
    background:
        linear-gradient(180deg, rgba(26, 26, 31, 0.94), rgba(14, 14, 17, 0.96)),
        rgba(18, 18, 20, 0.94) !important;
    border: 1px solid rgba(255, 49, 49, 0.18) !important;
    border-radius: 22px !important;
    box-shadow:
        0 28px 70px rgba(0, 0, 0, 0.5),
        0 0 0 1px rgba(255, 255, 255, 0.035),
        0 0 42px rgba(255, 49, 49, 0.08) !important;
    backdrop-filter: blur(18px) saturate(1.2) !important;
}

#chatInput::placeholder {
    color: rgba(255, 255, 255, 0.38) !important;
}

.input-bottom-actions-claude {
    border-top: 1px solid rgba(255, 255, 255, 0.07) !important;
}

.input-controls-claude {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    position: relative !important;
}

.model-selector-claude {
    min-height: 36px !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, 0.055) !important;
    border-color: rgba(255, 255, 255, 0.1) !important;
    color: rgba(255, 255, 255, 0.88) !important;
    transition: border-color 0.18s ease, background 0.18s ease, transform 0.18s ease !important;
}

.model-selector-claude:hover,
.model-selector-claude[aria-expanded="true"] {
    background: rgba(255, 49, 49, 0.12) !important;
    border-color: rgba(255, 49, 49, 0.38) !important;
}

.selector-options-claude {
    left: 0 !important;
    right: auto !important;
    bottom: calc(100% + 14px) !important;
    width: 360px !important;
    max-width: min(360px, calc(100vw - 34px)) !important;
    padding: 8px !important;
    border-radius: 18px !important;
    background:
        linear-gradient(rgba(255, 49, 49, 0.06) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 49, 49, 0.045) 1px, transparent 1px),
        rgba(15, 15, 19, 0.98) !important;
    background-size: 28px 28px, 28px 28px, 100% 100% !important;
    border: 1px solid rgba(255, 49, 49, 0.24) !important;
    box-shadow: 0 24px 70px rgba(0, 0, 0, 0.66), 0 0 36px rgba(255, 49, 49, 0.08) !important;
    backdrop-filter: blur(18px) saturate(1.25) !important;
}

.selector-options-claude.open {
    display: flex !important;
    animation: modelMenuIn 0.16s ease-out !important;
}

@keyframes modelMenuIn {
    from {
        opacity: 0;
        transform: translateY(8px) scale(0.98);
    }
    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

.option-claude {
    border-radius: 12px !important;
    padding: 12px 12px !important;
}

.option-claude:hover,
.option-claude.active {
    background: rgba(255, 49, 49, 0.12) !important;
}

.option-claude.active {
    box-shadow: inset 0 0 0 1px rgba(255, 49, 49, 0.22) !important;
}

.option-icon {
    width: 28px !important;
    height: 28px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 9px !important;
    background: rgba(255, 255, 255, 0.06) !important;
}

.send-btn-claude,
.attach-btn-claude,
.mic-btn-claude,
.stop-btn-claude {
    border-radius: 12px !important;
}

.send-btn-claude {
    box-shadow: 0 10px 24px rgba(255, 49, 49, 0.24) !important;
}

.quick-actions-claude {
    justify-content: flex-start !important;
}

.quick-action-btn {
    display: inline-flex !important;
    align-items: center !important;
    gap: 7px !important;
    border-radius: 999px !important;
    color: rgba(255, 255, 255, 0.62) !important;
}

.quick-action-btn:hover {
    background: rgba(255, 49, 49, 0.1) !important;
    border-color: rgba(255, 49, 49, 0.24) !important;
    color: #fff !important;
}


.chat-main-claude {
    --page-cursor-glow-x: 58%;
    --page-cursor-glow-y: 32%;
    background:
        radial-gradient(circle at 58% 32%, rgba(255, 49, 49, 0.12), transparent 34%),
        linear-gradient(rgba(255, 49, 49, 0.05) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 49, 49, 0.045) 1px, transparent 1px),
        #050505 !important;
    background-size: 100% 100%, 43px 43px, 43px 43px, 100% 100% !important;
}

.chat-main-claude::before {
    background:
        linear-gradient(180deg, rgba(5, 5, 5, 0.08), rgba(5, 5, 5, 0.42) 62%, rgba(5, 5, 5, 0.78)),
        linear-gradient(90deg, rgba(5, 5, 5, 0.68), transparent 18%, transparent 82%, rgba(5, 5, 5, 0.68)) !important;
}

.chat-main-claude::after {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    z-index: 0 !important;
    pointer-events: none !important;
    opacity: 0.42 !important;
    background:
        radial-gradient(circle 390px at var(--page-cursor-glow-x) var(--page-cursor-glow-y),
            rgba(255, 49, 49, 0.26) 0%,
            rgba(255, 49, 49, 0.14) 30%,
            rgba(255, 49, 49, 0.045) 55%,
            transparent 74%) !important;
    mix-blend-mode: screen !important;
    transition: opacity 0.18s ease !important;
}

.chat-main-claude.has-page-cursor-glow::after {
    opacity: 0.82 !important;
}

.chat-messages {
    padding: 36px 0 24px !important;
}

.message {
    width: min(100%, 940px) !important;
    max-width: none !important;
    margin: 0 auto 30px !important;
    padding: 0 34px !important;
    gap: 22px !important;
    align-items: flex-start !important;
}

.message.user {
    flex-direction: row !important;
}

.message-body,
.message.user .message-body {
    flex: 1 1 auto !important;
    max-width: 780px !important;
    min-width: 0 !important;
}

.message-role,
.message.user .message-role {
    text-align: left !important;
    text-transform: uppercase !important;
    letter-spacing: 1.6px !important;
    font-size: 0.72rem !important;
    font-weight: 800 !important;
    margin-bottom: 8px !important;
}

.message.user .message-role {
    color: rgba(255, 255, 255, 0.36) !important;
}

.message.assistant .message-role {
    color: var(--accent-red) !important;
    text-shadow: 0 0 18px rgba(255, 49, 49, 0.35) !important;
}

.message-avatar {
    width: 38px !important;
    height: 38px !important;
    border-radius: 11px !important;
    background: rgba(255, 255, 255, 0.06) !important;
    border: 1px solid rgba(255, 255, 255, 0.11) !important;
    box-shadow: none !important;
    color: #fff !important;
    font-size: 0.92rem !important;
}

.message.assistant .message-avatar {
    background: radial-gradient(circle, rgba(255, 49, 49, 0.18), rgba(15, 15, 18, 0.98)) !important;
    border-color: rgba(255, 49, 49, 0.42) !important;
    box-shadow: 0 0 24px rgba(255, 49, 49, 0.42) !important;
}

.message-text,
.message.user .message-text,
.message.assistant .message-text {
    position: relative !important;
    padding: 4px 0px 4px 10px !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
}

.message.assistant .message-text {
    position: relative !important;
    padding: 4px 0px 4px 10px !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
}

.message.assistant .message-text::before { display: none !important; }

.message-text .content-text {
    position: relative !important;
    z-index: 1 !important;
}

.content-text strong {
    color: #fff !important;
    font-weight: 850 !important;
}

.content-text h1,
.content-text h2,
.content-text h3 {
    margin: 0 0 16px !important;
    color: #fff !important;
}

.content-text h1 {
    font-size: 2rem !important;
}

.chat-input-area-claude {
    max-width: 900px !important;
}

.chat-input-container-claude {
    border-radius: 18px !important;
    border: 1px solid rgba(255, 255, 255, 0.09) !important;
    background:
        radial-gradient(circle at 50% 0%, rgba(255, 49, 49, 0.1), transparent 42%),
        rgba(14, 14, 17, 0.92) !important;
    box-shadow:
        0 24px 70px rgba(0, 0, 0, 0.48),
        0 0 0 1px rgba(255, 49, 49, 0.055) !important;
}

.selector-options-claude {
    background:
        linear-gradient(rgba(255, 49, 49, 0.065) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 49, 49, 0.045) 1px, transparent 1px),
        rgba(14, 14, 18, 0.98) !important;
    border-color: rgba(255, 49, 49, 0.25) !important;
    max-height: min(520px, calc(100vh - 180px)) !important;
    overflow-y: auto !important;
    scrollbar-color: rgba(255, 49, 49, 0.35) transparent !important;
}

.option-gem-cost {
    flex-shrink: 0 !important;
    min-width: 56px !important;
    padding: 4px 8px !important;
    border-radius: 999px !important;
    text-align: center !important;
    font-weight: 850 !important;
    font-size: 0.72rem !important;
}

.option-gem-cost.low-cost {
    color: #ff4a4a !important;
    background: rgba(255, 49, 49, 0.12) !important;
    border: 1px solid rgba(255, 49, 49, 0.16) !important;
}

.option-gem-cost.premium-cost {
    color: #c5a7ff !important;
    background: rgba(124, 77, 255, 0.22) !important;
    border: 1px solid rgba(164, 125, 255, 0.25) !important;
}


@media (max-width: 768px) {
    .sidebar { transform: translateX(-100%); }
    .sidebar.open { transform: translateX(0); }
    .sidebar.open + .sidebar-overlay,
    .sidebar-overlay.open { display: block !important; }
    .chat-main,
    .chat-main-claude {
        margin-left: 0 !important;
        width: 100vw !important;
    }
    .sidebar-toggle-claude {
        display: inline-flex !important;
    }
    .chat-topbar-claude {
        padding: 10px 14px !important;
    }
    .topbar-plan-badge {
        font-size: 0.76rem !important;
    }
    .welcome-screen-claude {
        padding: 28px 18px 16px !important;
    }
    .welcome-title-claude {
        font-size: clamp(2rem, 12vw, 3.1rem) !important;
    }
    .chat-input-area,
    .chat-input-area-claude {
        padding: 0 12px 18px !important;
    }
    .chat-input-container-claude {
        border-radius: 18px !important;
        padding: 14px !important;
    }
    .quick-actions-claude {
        justify-content: flex-start !important;
        overflow-x: auto !important;
        padding-bottom: 2px !important;
    }
    .quick-action-btn {
        flex-shrink: 0 !important;
    }
    .settings-modal-box {
        width: 100vw !important;
        height: 100vh !important;
        max-width: none !important;
        max-height: none !important;
        border-radius: 0 !important;
    }
    .settings-layout {
        flex-direction: column !important;
    }
    .settings-sidebar {
        width: 100% !important;
        display: flex !important;
        gap: 6px !important;
        overflow-x: auto !important;
        border-right: 0 !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.07) !important;
    }
    .settings-tab {
        width: auto !important;
        flex-shrink: 0 !important;
        white-space: nowrap !important;
    }
    .settings-content {
        padding: 22px 16px !important;
    }
    .subscription-card {
        padding: 18px !important;
    }
    .timer-container {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
    .timer-segment {
        min-height: 86px !important;
    }
}


.chat-input-area-claude {
    max-width: 860px !important;
    padding: 0 18px 22px !important;
}

.chat-input-container-claude {
    border-radius: 16px !important;
    padding: 12px 18px 10px !important;
}

#chatInput {
    min-height: 30px !important;
    max-height: 108px !important;
    height: 30px;
    margin-bottom: 8px !important;
    font-size: 0.98rem !important;
    line-height: 1.45 !important;
}

.input-bottom-actions-claude {
    padding-top: 9px !important;
    gap: 10px !important;
}

.input-bottom-actions-claude > div,
.input-controls-claude {
    gap: 9px !important;
}

.attach-btn-claude,
.mic-btn-claude,
.send-btn-claude,
.stop-btn-claude {
    width: 34px !important;
    height: 34px !important;
    min-width: 34px !important;
    border-radius: 10px !important;
}

.model-selector-claude {
    min-height: 34px !important;
    padding: 5px 11px !important;
    font-size: 0.82rem !important;
}

.quick-actions-claude {
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    margin-top: 0 !important;
    overflow-x: auto !important;
    scrollbar-width: none !important;
}

.quick-actions-claude::-webkit-scrollbar { display: none; }

.quick-action-btn {
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    padding: 6px 10px !important;
    background: rgba(255, 255, 255, 0.04) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: 12px !important;
    color: rgba(255, 255, 255, 0.7) !important;
    font-size: 0.78rem !important;
    font-weight: 600 !important;
    white-space: nowrap !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
}

.quick-action-btn:hover {
    background: rgba(255, 255, 255, 0.08) !important;
    color: #fff !important;
    border-color: rgba(255, 49, 49, 0.3) !important;
}

@media (max-width: 768px) {
    html,
    body {
        overflow: hidden !important;
    }

    .sidebar {
        width: min(82vw, 300px) !important;
    }

    .chat-main-claude {
        min-height: 100dvh !important;
        height: 100dvh !important;
        width: 100vw !important;
        margin-left: 0 !important;
    }

    .chat-topbar-claude {
        min-height: 48px !important;
        padding: 8px 10px !important;
    }

    .topbar-plan-badge {
        max-width: calc(100vw - 64px) !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
        padding: 6px 9px !important;
        font-size: 0.72rem !important;
    }

    .chat-messages {
        padding: 22px 0 12px !important;
    }

    .welcome-screen-claude {
        justify-content: flex-start !important;
        padding: 38px 14px 12px !important;
    }

    .welcome-greeting-claude {
        width: 100% !important;
    }

    .welcome-title-claude {
        font-size: clamp(2.15rem, 13vw, 3.45rem) !important;
        line-height: 1.03 !important;
    }

    .message {
        width: 100% !important;
        padding: 0 14px !important;
        gap: 12px !important;
        margin-bottom: 22px !important;
    }

    .message-avatar {
        width: 32px !important;
        height: 32px !important;
        border-radius: 9px !important;
    }

    .message-body,
    .message.user .message-body {
        max-width: calc(100vw - 72px) !important;
    }

    .message.assistant .message-text {
    position: relative !important;
    padding: 4px 0px 4px 10px !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
}
}

.sidebar-gems-card {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    padding: 12px 14px !important;
    background: rgba(255, 49, 49, 0.04) !important;
    border: 1px solid rgba(255, 49, 49, 0.15) !important;
    border-radius: 14px !important;
    margin-bottom: 16px !important;
    cursor: pointer !important;
    transition: all 0.22s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.sidebar-gems-card:hover {
    background: rgba(255, 49, 49, 0.08) !important;
    border-color: rgba(255, 49, 49, 0.3) !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 15px rgba(255, 49, 49, 0.08) !important;
}

.sidebar-gems-icon {
    width: 32px !important;
    height: 32px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: radial-gradient(circle, rgba(255, 49, 49, 0.22), rgba(255, 49, 49, 0.06)) !important;
    border: 1px solid rgba(255, 49, 49, 0.32) !important;
    color: #ff3131 !important;
    font-weight: 850 !important;
    font-size: 0.95rem !important;
    border-radius: 9px !important;
    flex-shrink: 0 !important;
    box-shadow: 0 0 10px rgba(255, 49, 49, 0.2) !important;
}

.sidebar-gems-info {
    display: flex !important;
    flex-direction: column !important;
    min-width: 0 !important;
}

.sidebar-gems-label {
    color: rgba(255, 255, 255, 0.48) !important;
    font-size: 0.68rem !important;
    font-weight: 800 !important;
    letter-spacing: 0.4px !important;
    text-transform: uppercase !important;
}

.sidebar-gems-value {
    color: #fff !important;
    font-size: 0.9rem !important;
    font-weight: 850 !important;
}

.topbar-gems-badge {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    min-height: 34px !important;
    padding: 5px 12px 5px 8px !important;
    border: 1px solid rgba(255, 49, 49, 0.18) !important;
    border-radius: 999px !important;
    background: rgba(255, 49, 49, 0.075) !important;
    color: rgba(255, 255, 255, 0.88) !important;
    font-size: 0.8rem !important;
    font-weight: 800 !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
}

.topbar-gems-badge .gem-dot {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 20px !important;
    height: 20px !important;
    border-radius: 6px !important;
    background: #ff3131 !important;
    color: #fff !important;
    font-size: 0.68rem !important;
    font-weight: 850 !important;
    box-shadow: 0 0 8px rgba(255, 49, 49, 0.4) !important;
}

.topbar-share-btn {
    min-height: 32px !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 7px !important;
    padding: 6px 11px !important;
    border-radius: 999px !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    background: rgba(255, 255, 255, 0.055) !important;
    color: rgba(255, 255, 255, 0.82) !important;
    font-size: 0.76rem !important;
    font-weight: 800 !important;
    cursor: pointer !important;
    transition: background 0.16s ease, border-color 0.16s ease, transform 0.16s ease !important;
}

.topbar-share-btn:hover {
    border-color: rgba(255, 49, 49, 0.34) !important;
    background: rgba(255, 49, 49, 0.12) !important;
    transform: translateY(-1px) !important;
}

.topbar-share-btn svg {
    flex: 0 0 auto !important;
}

.selected-model-cost {
    flex-shrink: 0 !important;
    padding: 3px 7px !important;
    border-radius: 999px !important;
    background: rgba(124, 77, 255, 0.18) !important;
    color: #cdb8ff !important;
    font-size: 0.68rem !important;
    font-weight: 850 !important;
}

.sidebar-gems-card.is-low,
.topbar-gems-badge.is-low,
.selected-model-cost.is-low {
    border-color: rgba(255, 49, 49, 0.42) !important;
    background: rgba(255, 49, 49, 0.16) !important;
    color: #ff6b6b !important;
}

@media (max-width: 768px) {
    .topbar-gems-badge {
        min-height: 30px !important;
        padding: 4px 9px 4px 6px !important;
        font-size: 0.72rem !important;
    }

    .selected-model-cost {
        display: none !important;
    }

    .apps-dropdown {
        padding-left: 18px !important;
        padding-right: 8px !important;
    }

    .app-launch-card {
        grid-template-columns: 30px 1fr !important;
    }

    .app-launch-cost {
        grid-column: 2 !important;
        justify-self: start !important;
        margin-top: 2px !important;
    }

    .settings-app-card {
        grid-template-columns: 40px 1fr !important;
        align-items: flex-start !important;
    }

    .settings-app-cost {
        grid-column: 2 !important;
        justify-self: start !important;
    }
}

.topbar-gems-badge:hover {
    background: rgba(255, 49, 49, 0.16) !important;
    border-color: rgba(255, 49, 49, 0.4) !important;
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(255, 49, 49, 0.12);
}

.topbar-buy-gems-btn:hover {
    background: #ff4d4d !important;
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(255, 49, 49, 0.25);
}


.claude-thinking-container {
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 8px;
    padding: 12px 16px;
    margin-bottom: 8px;
    margin-top: 4px;
    color: #e5e7eb;
    display: flex;
    flex-direction: column;
    gap: 8px;
    width: fit-content;
    min-width: 200px;
    transition: all 0.2s ease;
    cursor: default;
}
.claude-thinking-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
}
.claude-thinking-container.expanded .claude-thinking-header {
    cursor: pointer;
}
.claude-thinking-container.expanded .claude-thinking-header:hover {
    opacity: 0.8;
}
.claude-spinner-row {
    display: flex;
    align-items: center;
    gap: 12px;
}
.claude-thinking-text {
    font-size: 0.95rem;
    font-weight: 500;
    color: #d1d5db;
}
.claude-chevron {
    transition: transform 0.3s ease;
    color: #9ca3af;
    display: none;
}
.claude-thinking-container.expanded .claude-chevron {
    display: block;
}
.claude-thinking-container.expanded .claude-chevron {
    transform: rotate(180deg);
}
.claude-thinking-steps {
    display: none;
    flex-direction: column;
    gap: 8px;
    padding-left: 20px;
    margin-top: 4px;
    border-left: 1px solid rgba(255,255,255,0.1);
    margin-left: 9px;
    padding-top: 6px;
    padding-bottom: 4px;
}
.claude-thinking-container.expanded .claude-thinking-steps {
    display: flex;
}
.claude-step {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 0.85rem;
    color: #9ca3af;
}
.claude-step.active {
    color: #e5e7eb;
}
.claude-step.completed {
    color: var(--accent-red, #ef4444);
}
.claude-spinner {
    width: 20px;
    height: 20px;
    animation: claude-spin 2s linear infinite;
    color: var(--accent-red, #ef4444);
}
@keyframes claude-spin {
    to { transform: rotate(360deg); }
}



.preview-panel-overlay {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.5);
    z-index: 8000;
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    animation: previewFadeIn 0.25s ease;
}
.preview-panel-overlay.open {
    display: block;
}

@keyframes previewFadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}

.preview-panel {
    position: fixed;
    top: 0;
    right: 0;
    width: 50vw;
    height: 100vh;
    background: #0a0a0c;
    border-left: 1px solid rgba(255, 255, 255, 0.08);
    z-index: 8001;
    display: none;
    flex-direction: column;
    box-shadow: -20px 0 60px rgba(0, 0, 0, 0.6);
    transform: translateX(100%);
    transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1);
}
.preview-panel.open {
    display: flex;
    transform: translateX(0);
}

.preview-panel-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 14px 20px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.07);
    background: rgba(15, 15, 18, 0.95);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    flex-shrink: 0;
}

.preview-panel-title {
    display: flex;
    align-items: center;
    gap: 10px;
    font-weight: 700;
    font-size: 0.92rem;
    color: #fff;
    letter-spacing: -0.01em;
}

.preview-panel-title-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: 8px;
    background: rgba(255, 49, 49, 0.15);
    border: 1px solid rgba(255, 49, 49, 0.25);
    color: #ff3131;
}

.preview-panel-actions {
    display: flex;
    align-items: center;
    gap: 6px;
}

.preview-panel-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 7px 12px;
    border: 1px solid rgba(255, 255, 255, 0.09);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.05);
    color: rgba(255, 255, 255, 0.7);
    cursor: pointer;
    font-size: 0.8rem;
    font-weight: 600;
    transition: all 0.2s ease;
}

.preview-panel-btn:hover {
    background: rgba(255, 49, 49, 0.12);
    border-color: rgba(255, 49, 49, 0.3);
    color: #fff;
}

.preview-panel-close {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border: 1px solid rgba(255, 255, 255, 0.09);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.05);
    color: rgba(255, 255, 255, 0.6);
    cursor: pointer;
    transition: all 0.2s ease;
    font-size: 1.1rem;
    padding: 0;
}

.preview-panel-close:hover {
    background: rgba(255, 49, 49, 0.15);
    border-color: rgba(255, 49, 49, 0.35);
    color: #fff;
}

.preview-panel-tabs {
    display: flex;
    border-bottom: 1px solid rgba(255, 255, 255, 0.06);
    background: rgba(12, 12, 15, 0.9);
    flex-shrink: 0;
}

.preview-tab {
    padding: 10px 20px;
    font-size: 0.82rem;
    font-weight: 600;
    color: rgba(255, 255, 255, 0.45);
    border: none;
    background: none;
    cursor: pointer;
    border-bottom: 2px solid transparent;
    transition: all 0.2s ease;
}

.preview-tab:hover {
    color: rgba(255, 255, 255, 0.7);
}

.preview-tab.active {
    color: #ff3131;
    border-bottom-color: #ff3131;
}

.preview-panel-body {
    flex: 1;
    position: relative;
    overflow: hidden;
    background: #fff;
}

.preview-iframe {
    width: 100%;
    height: 100%;
    border: none;
    background: #fff;
}

.preview-code-view {
    width: 100%;
    height: 100%;
    overflow: auto;
    padding: 20px;
    background: #08090c;
    display: none;
}

.preview-code-view.active {
    display: block;
}

.preview-code-view pre {
    margin: 0;
    white-space: pre-wrap;
    word-break: break-word;
    font-size: 0.88rem;
    line-height: 1.65;
    color: rgba(255, 255, 255, 0.85);
}


.code-block-actions {
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

.preview-code-btn,
.download-code-btn {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    border: 1px solid rgba(255, 255, 255, 0.09);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.055);
    color: rgba(255, 255, 255, 0.72);
    padding: 6px 9px;
    cursor: pointer;
    font-size: 0.78rem;
    font-weight: 600;
    transition: all 0.2s ease;
}

.preview-code-btn:hover {
    background: rgba(255, 49, 49, 0.12);
    border-color: rgba(255, 49, 49, 0.3);
    color: #fff;
}

.download-code-btn:hover {
    background: rgba(255, 255, 255, 0.1);
    border-color: rgba(255, 255, 255, 0.18);
    color: #fff;
}


@media (max-width: 1100px) {
    .preview-panel {
        width: 65vw;
    }
}

@media (max-width: 768px) {
    .preview-panel {
        width: 100vw;
        border-left: none;
    }
    .preview-panel-header {
        padding: 12px 14px;
    }
}




.hljs {
    display: block;
    overflow-x: auto;
    padding: 0 !important;
    background: #1e1e1e !important;
    color: #d4d4d4 !important;
    font-family: 'Cascadia Code', 'Fira Code', 'JetBrains Mono', 'Consolas', 'Courier New', monospace !important;
    font-size: 0.845rem !important;
    line-height: 1.65 !important;
}


.code-block-wrapper {
    background: #1e1e1e !important;
    border-color: rgba(255,255,255,0.08) !important;
}

.code-block-wrapper pre {
    background: #1e1e1e !important;
    margin: 0 !important;
    padding: 18px 20px !important;
    overflow-x: auto !important;
    font-family: 'Cascadia Code', 'Fira Code', 'JetBrains Mono', 'Consolas', 'Courier New', monospace !important;
    font-size: 0.845rem !important;
    line-height: 1.65 !important;
}

.code-block-wrapper pre code {
    background: transparent !important;
    padding: 0 !important;
    color: #d4d4d4 !important;
    font-family: inherit !important;
    font-size: inherit !important;
    line-height: inherit !important;
    white-space: pre !important;
}




.hljs-keyword,
.hljs-built_in,
.hljs-type {
    color: #569cd6 !important;  
}


.hljs-string,
.hljs-addition {
    color: #ce9178 !important;  
}


.hljs-number,
.hljs-literal {
    color: #b5cea8 !important;  
}


.hljs-title,
.hljs-title.function_,
.hljs-title.class_ {
    color: #dcdcaa !important;  
}


.hljs-variable,
.hljs-variable.language_,
.hljs-params,
.hljs-property {
    color: #9cdcfe !important;  
}


.hljs-comment,
.hljs-quote,
.hljs-deletion {
    color: #6a9955 !important;  
    font-style: italic !important;
}


.hljs-regexp {
    color: #d16969 !important;
}


.hljs-meta,
.hljs-meta .hljs-keyword {
    color: #9b9b9b !important;
}


.hljs-operator,
.hljs-punctuation {
    color: #d4d4d4 !important;
}


.hljs-symbol,
.hljs-bullet {
    color: #b5cea8 !important;
}



.hljs-tag {
    color: #808080 !important;  
}
.hljs-tag .hljs-name {
    color: #569cd6 !important;  
}
.hljs-tag .hljs-attr {
    color: #9cdcfe !important;  
}
.hljs-tag .hljs-string {
    color: #ce9178 !important;  
}


.hljs-selector-tag {
    color: #d7ba7d !important;  
}
.hljs-selector-class,
.hljs-selector-id {
    color: #d7ba7d !important;
}
.hljs-selector-pseudo {
    color: #d7ba7d !important;
}
.hljs-attribute {
    color: #9cdcfe !important;  
}
.hljs-section {
    color: #dcdcaa !important;
}


.hljs-decorator {
    color: #dcdcaa !important;
}


.hljs-link {
    color: #ce9178 !important;
    text-decoration: underline !important;
}


.hljs-emphasis { font-style: italic !important; }
.hljs-strong { font-weight: bold !important; color: #d4d4d4 !important; }


code:not([class]),
.message-content code:not(.hljs) {
    background: rgba(255, 255, 255, 0.08) !important;
    color: #ce9178 !important;
    padding: 2px 6px !important;
    border-radius: 4px !important;
    font-family: 'Cascadia Code', 'Fira Code', 'Consolas', monospace !important;
    font-size: 0.83em !important;
    border: 1px solid rgba(255,255,255,0.07) !important;
}


.code-block-wrapper pre::-webkit-scrollbar { height: 5px; }
.code-block-wrapper pre::-webkit-scrollbar-track { background: transparent; }
.code-block-wrapper pre::-webkit-scrollbar-thumb { background: rgba(255,255,255,0.18); border-radius: 4px; }
.code-block-wrapper pre::-webkit-scrollbar-thumb:hover { background: rgba(255,255,255,0.32); }


.onboarding-overlay {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.7);
    z-index: 99998;
    backdrop-filter: blur(2px);
    animation: onboardingFadeIn 0.3s ease;
}

@keyframes onboardingFadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}

.onboarding-highlight {
    position: relative;
    z-index: 99999 !important;
    box-shadow: 0 0 0 4px var(--accent-red, #ff3131), 0 0 20px rgba(255, 49, 49, 0.4) !important;
    border-radius: 12px !important;
}

.onboarding-tooltip {
    position: fixed;
    z-index: 100000;
    background: #111118;
    border: 1px solid rgba(255, 49, 49, 0.3);
    border-radius: 16px;
    padding: 20px 24px;
    max-width: 320px;
    width: 90vw;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.6), 0 0 30px rgba(255, 49, 49, 0.15);
    animation: onboardingSlideIn 0.35s cubic-bezier(0.16, 1, 0.3, 1);
}

@keyframes onboardingSlideIn {
    from { opacity: 0; transform: translateY(10px) scale(0.95); }
    to { opacity: 1; transform: translateY(0) scale(1); }
}

.onboarding-step-counter {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 0.7rem;
    font-weight: 800;
    color: var(--accent-red, #ff3131);
    text-transform: uppercase;
    letter-spacing: 1.5px;
    margin-bottom: 10px;
}

.onboarding-step-counter svg {
    width: 14px;
    height: 14px;
    stroke: var(--accent-red, #ff3131);
}

.onboarding-tooltip h3 {
    font-size: 1.05rem;
    font-weight: 700;
    color: #fff;
    margin: 0 0 8px 0;
}

.onboarding-tooltip p {
    font-size: 0.85rem;
    color: rgba(255, 255, 255, 0.6);
    line-height: 1.5;
    margin: 0 0 18px 0;
}

.onboarding-next-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: var(--accent-red, #ff3131);
    color: #fff;
    border: none;
    border-radius: 10px;
    padding: 10px 22px;
    font-size: 0.85rem;
    font-weight: 700;
    cursor: pointer;
    transition: all 0.2s ease;
    width: 100%;
    justify-content: center;
}

.onboarding-next-btn:hover {
    background: #e02020;
    transform: translateY(-1px);
    box-shadow: 0 4px 15px rgba(255, 49, 49, 0.4);
}

.onboarding-skip-btn {
    display: block;
    width: 100%;
    text-align: center;
    margin-top: 8px;
    background: none;
    border: none;
    color: rgba(255, 255, 255, 0.35);
    font-size: 0.75rem;
    cursor: pointer;
    padding: 6px;
    transition: color 0.2s;
}

.onboarding-skip-btn:hover {
    color: rgba(255, 255, 255, 0.6);
}

@media (max-width: 768px) {
    .onboarding-tooltip {
        max-width: 280px;
        padding: 16px 18px;
    }
}

.message-actions {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 3px !important;
    margin: 8px 0 0 6px !important;
    padding: 2px !important;
    width: max-content !important;
    opacity: 1 !important;
    min-height: 32px !important;
    position: relative !important;
    z-index: 2 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

.message.assistant:hover .message-actions {
    opacity: 1 !important;
}

.message-action-btn {
    appearance: none !important;
    -webkit-appearance: none !important;
    width: 32px !important;
    min-width: 32px !important;
    height: 30px !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    outline: 0 !important;
    border-radius: 7px !important;
    background: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    color: rgba(255,255,255,0.62) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 32px !important;
    cursor: pointer !important;
    transition: background 0.16s ease, color 0.16s ease, transform 0.16s ease !important;
}

.message-action-icon {
    display: block !important;
    width: 17px !important;
    height: 17px !important;
    color: inherit !important;
    fill: none !important;
    stroke: currentColor !important;
    stroke-width: 2 !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
    transform: none !important;
    pointer-events: none !important;
}

.message-action-btn:hover,
.message-action-btn.active {
    background: rgba(255,255,255,0.075) !important;
    color: #fff !important;
}

.message-action-btn[data-feedback="like"].active {
    color: #35d07f !important;
    background: rgba(53, 208, 127, 0.12) !important;
}

.message-action-btn[data-feedback="dislike"].active {
    color: #ff5c5c !important;
    background: rgba(255, 92, 92, 0.12) !important;
}

.message-action-btn:active {
    transform: scale(0.94) !important;
}

.message-action-btn::-moz-focus-inner {
    border: 0 !important;
    padding: 0 !important;
}

.sidebar-search-row {
    display: grid !important;
    grid-template-columns: 18px minmax(0, 1fr) 24px !important;
    align-items: center !important;
    gap: 7px !important;
    margin: 8px 8px 8px !important;
    padding: 7px 8px !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: 9px !important;
    background: rgba(255, 255, 255, 0.045) !important;
    color: rgba(255, 255, 255, 0.55) !important;
}

.sidebar-search-row[hidden] {
    display: none !important;
}

.sidebar-search-row input {
    width: 100% !important;
    min-width: 0 !important;
    border: 0 !important;
    outline: 0 !important;
    background: transparent !important;
    color: #fff !important;
    font-size: 0.82rem !important;
}

.sidebar-search-row input::placeholder {
    color: rgba(255, 255, 255, 0.38) !important;
}

.sidebar-search-row button {
    width: 24px !important;
    height: 24px !important;
    border: 0 !important;
    border-radius: 7px !important;
    background: transparent !important;
    color: rgba(255, 255, 255, 0.52) !important;
    cursor: pointer !important;
}

.agent-mode-btn.active {
    color: #fff !important;
    border-color: rgba(255, 49, 49, 0.55) !important;
    background: rgba(255, 49, 49, 0.18) !important;
    box-shadow: inset 0 0 0 1px rgba(255, 49, 49, 0.16) !important;
}

.project-zip-actions {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 7px !important;
    flex-wrap: wrap !important;
}

.project-zip-save {
    min-height: 34px !important;
    padding: 0 12px !important;
    border-radius: 8px !important;
    border: 1px solid rgba(255, 255, 255, 0.12) !important;
    background: rgba(255, 255, 255, 0.055) !important;
    color: rgba(255, 255, 255, 0.86) !important;
    font-size: 0.78rem !important;
    font-weight: 800 !important;
    cursor: pointer !important;
}

.project-zip-save.saved,
.project-zip-save:disabled {
    cursor: default !important;
    border-color: rgba(53, 208, 127, 0.28) !important;
    background: rgba(53, 208, 127, 0.12) !important;
    color: #9af0c3 !important;
}

.project-files-section {
    margin-top: 18px !important;
    padding-top: 16px !important;
    border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
}

.project-files-section[hidden] {
    display: none !important;
}

.project-files-head {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    margin-bottom: 10px !important;
}

.project-files-head strong {
    color: #fff !important;
    font-size: 0.88rem !important;
}

.project-files-head span {
    min-width: 24px !important;
    height: 24px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 999px !important;
    background: rgba(255, 49, 49, 0.14) !important;
    color: #ff8b8b !important;
    font-size: 0.74rem !important;
    font-weight: 850 !important;
}

.project-files-empty {
    margin: 0 !important;
    color: rgba(255, 255, 255, 0.42) !important;
    font-size: 0.82rem !important;
}

.project-files-list {
    display: grid !important;
    gap: 8px !important;
}

.project-file-item {
    display: grid !important;
    grid-template-columns: 30px minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 9px !important;
    min-height: 46px !important;
    padding: 8px !important;
    border: 1px solid rgba(255, 255, 255, 0.075) !important;
    border-radius: 8px !important;
    background: rgba(255, 255, 255, 0.035) !important;
}

.project-file-icon {
    width: 30px !important;
    height: 30px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 8px !important;
    background: rgba(255, 49, 49, 0.1) !important;
    color: var(--accent-red) !important;
}

.project-file-copy {
    min-width: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 2px !important;
}

.project-file-copy strong,
.project-file-copy span {
    min-width: 0 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

.project-file-copy strong {
    color: rgba(255, 255, 255, 0.86) !important;
    font-size: 0.82rem !important;
}

.project-file-copy span {
    color: rgba(255, 255, 255, 0.46) !important;
    font-size: 0.72rem !important;
}

.project-file-actions {
    display: inline-flex !important;
    gap: 4px !important;
}

.project-file-actions button {
    width: 28px !important;
    height: 28px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border: 0 !important;
    border-radius: 7px !important;
    background: transparent !important;
    color: rgba(255, 255, 255, 0.52) !important;
    cursor: pointer !important;
}

.project-file-actions button:hover {
    background: rgba(255, 255, 255, 0.075) !important;
    color: #fff !important;
}

@media (max-width: 768px) {
    .input-bottom-actions-claude {
        align-items: stretch !important;
        flex-direction: column !important;
    }

    .input-left-actions-claude,
    .input-controls-claude {
        width: 100% !important;
        min-width: 0 !important;
    }

    .input-controls-claude {
        justify-content: space-between !important;
    }

    .model-selector-claude {
        flex: 1 1 auto !important;
        min-width: 0 !important;
        max-width: none !important;
    }

    #selectedModelText {
        min-width: 0 !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }

    .project-zip-card {
        grid-template-columns: 34px minmax(0, 1fr) !important;
    }

    .project-zip-actions {
        grid-column: 1 / -1 !important;
        justify-content: flex-start !important;
    }

    .side-panel {
        width: min(94vw, 390px) !important;
    }
}

@media (max-width: 480px) {
    .quick-action-btn span {
        max-width: 86px !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }

    .project-file-item {
        grid-template-columns: 28px minmax(0, 1fr) !important;
    }

    .project-file-actions {
        grid-column: 2 / 3 !important;
        justify-content: flex-start !important;
    }
}

.api-settings-head {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    gap: 18px !important;
    margin-bottom: 18px !important;
}

.api-settings-head h2 {
    color: #fff !important;
    font-size: 1.45rem !important;
    margin: 0 0 6px !important;
}

.api-settings-head p,
.api-create-card p {
    color: rgba(255, 255, 255, 0.56) !important;
    margin: 0 !important;
}

.api-credit-pill {
    min-width: 150px !important;
    padding: 12px 14px !important;
    border-radius: 12px !important;
    border: 1px solid rgba(255, 49, 49, 0.22) !important;
    background: rgba(255, 49, 49, 0.09) !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 4px !important;
    text-align: right !important;
}

.api-credit-pill span {
    color: rgba(255, 255, 255, 0.52) !important;
    font-size: 0.72rem !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
}

.api-credit-pill strong {
    color: #fff !important;
    font-size: 1.2rem !important;
}

.api-grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1.4fr) minmax(240px, 0.8fr) !important;
    gap: 14px !important;
    margin-bottom: 14px !important;
}

.api-form-row {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(180px, 0.8fr) auto !important;
    gap: 10px !important;
    margin-top: 14px !important;
}

.settings-text-input {
    min-height: 40px !important;
    border: 1px solid rgba(255, 49, 49, 0.18) !important;
    border-radius: 10px !important;
    background: #070709 !important;
    color: #fff !important;
    padding: 0 12px !important;
    outline: none !important;
}

.api-new-key {
    display: grid !important;
    grid-template-columns: 1fr auto !important;
    gap: 8px !important;
    align-items: center !important;
    margin-top: 12px !important;
    padding: 12px !important;
    border: 1px solid rgba(53, 208, 127, 0.24) !important;
    border-radius: 10px !important;
    background: rgba(53, 208, 127, 0.08) !important;
}

.api-new-key[hidden] {
    display: none !important;
}

.api-new-key span {
    grid-column: 1 / -1 !important;
    color: rgba(255, 255, 255, 0.66) !important;
    font-size: 0.78rem !important;
}

.api-new-key code,
.api-doc-code {
    min-width: 0 !important;
    overflow-x: auto !important;
    border-radius: 10px !important;
    background: rgba(0, 0, 0, 0.42) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    color: #f5f5f5 !important;
}

.api-new-key code {
    padding: 10px !important;
    white-space: nowrap !important;
}

.api-pricing-list {
    display: grid !important;
    gap: 8px !important;
}

.api-pricing-row,
.api-usage-row {
    display: grid !important;
    gap: 3px !important;
    padding: 9px 0 !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.07) !important;
}

.api-pricing-row:last-child,
.api-usage-row:last-child {
    border-bottom: 0 !important;
}

.api-pricing-row strong,
.api-usage-row span {
    color: #fff !important;
}

.api-pricing-row span,
.api-usage-row small {
    color: rgba(255, 255, 255, 0.52) !important;
    font-size: 0.76rem !important;
}

.api-card-title-row {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    margin-bottom: 10px !important;
}

.api-table-wrap {
    overflow-x: auto !important;
}

.api-table {
    width: 100% !important;
    border-collapse: collapse !important;
    min-width: 680px !important;
}

.api-table th,
.api-table td {
    padding: 10px !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.075) !important;
    text-align: left !important;
    font-size: 0.82rem !important;
}

.api-table th {
    color: rgba(255, 255, 255, 0.48) !important;
    font-weight: 850 !important;
    text-transform: uppercase !important;
}

.api-table code {
    color: #fff !important;
}

.api-table td span {
    color: rgba(255, 255, 255, 0.48) !important;
    font-size: 0.74rem !important;
}

.api-status {
    display: inline-flex !important;
    align-items: center !important;
    min-height: 24px !important;
    padding: 0 8px !important;
    border-radius: 999px !important;
    font-size: 0.72rem !important;
    font-weight: 850 !important;
}

.api-status.active {
    color: #9af0c3 !important;
    background: rgba(53, 208, 127, 0.12) !important;
}

.api-status.revoked {
    color: #ff8585 !important;
    background: rgba(255, 92, 92, 0.12) !important;
}

.api-doc-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
}

.api-doc-code {
    margin: 8px 0 0 !important;
    padding: 12px !important;
    font-size: 0.76rem !important;
    line-height: 1.45 !important;
}

.api-usage-list {
    margin-top: 14px !important;
}

@media (max-width: 760px) {
    .api-settings-head,
    .api-grid,
    .api-doc-grid {
        grid-template-columns: 1fr !important;
        display: grid !important;
    }

    .api-credit-pill {
        width: 100% !important;
        text-align: left !important;
    }

    .api-form-row {
        grid-template-columns: 1fr !important;
    }
}

.chat-messages[hidden],
.chat-input-area-claude[hidden],
.api-workspace[hidden] {
    display: none !important;
}

.chat-main-claude.api-page-open {
    overflow: hidden !important;
}

.chat-main-claude.api-page-open .topbar-share-btn {
    display: none !important;
}

.api-workspace {
    flex: 1 !important;
    min-height: 0 !important;
    overflow-y: auto !important;
    background: #060608 !important;
}
