/* Crazy Ltd. — identidade compartilhada. Estrutura original preservada na camada base. */
.product-picture { display: contents; }
:root {
  color-scheme: dark;
  --font-sans: "Segoe UI Variable", "Segoe UI", system-ui, sans-serif;
  --bg: #101113; --panel: #17181c; --panel2: #1e1f24;
  --text: #f4f3f2; --muted: #aaa5af; --line: #303036;
  --brand: #b83e45; --brand2: #e57c81; --brand-soft: rgba(184,62,69,.12);
  --danger: #fa9299; --ok: #87d5b1; --warn: #e8c286;
  --type-xs: .75rem; --type-sm: .8125rem; --type-control: .875rem; --type-body: .9375rem; --type-lead: 1.125rem;
  --space-1: 4px; --space-2: 8px; --space-3: 12px; --space-4: 16px;
  --space-5: 24px; --space-6: 32px; --space-7: 48px; --space-8: 72px;
  --radius-sm: 8px; --radius: 16px; --radius-lg: 24px; --control-height: 48px;
  --shadow: 0 16px 48px rgb(0 0 0 / .18); --transition: 180ms ease;
}
/* Fundamentos e interação */
html { scroll-padding-top: 100px; }
body { background: var(--bg); color: var(--text); font: 400 var(--type-body)/1.65 var(--font-sans); text-rendering: optimizeLegibility; -webkit-font-smoothing: antialiased; }
button,input,textarea,select { font-family: var(--font-sans); }
h1,h2,h3,h4,h5,h6 { font-family: var(--font-sans); font-weight: 650; text-wrap: balance; letter-spacing: -.035em; text-transform: none; }
h1 { line-height: 1.12; } h2 { font-size: clamp(24px,3vw,34px); line-height: 1.2; } h3 { font-size: 20px; line-height: 1.35; }
p { font-size: var(--type-body); line-height: 1.7; } small { font-size: var(--type-sm); line-height: 1.5; }
a,button { -webkit-tap-highlight-color: transparent; }
a { transition: color var(--transition), border-color var(--transition), background var(--transition); }
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible { outline: 2px solid var(--brand2); outline-offset: 4px; }
/* hidden pertence aos scripts: pagamentos, abas, menus e modais. */
[hidden] { display: none !important; }
::selection { background: #733138; color: #fff; } ::placeholder { color: #92929f; opacity: 1; }
.container { width: min(1280px,calc(100% - 80px)); }
.section { padding: var(--space-8) 0; }
.section-head { align-items: end; gap: var(--space-5); margin-bottom: var(--space-6); }
.section-head h1,.section-head h2 { font-size: clamp(28px,3vw,36px); line-height: 1.2; margin: var(--space-2) 0 0; }
.section-head>a,.portal-panel-head>a { font-size: var(--type-control); color: var(--brand2); font-weight: 600; }
.section-head p,.muted,.table-sub { font-size: var(--type-sm); color: var(--muted); }
.eyebrow { color: var(--brand2); font-size: var(--type-xs); font-weight: 650; letter-spacing: .13em; line-height: 1.5; }
.badge,.admin-badge,.status { font-size: var(--type-xs); font-weight: 600; line-height: 1.5; padding: 5px 10px; letter-spacing: .01em; }
.badge,.admin-badge { border-color: #653038; color: #f0a7ad; background: var(--brand-soft); }
.status { white-space: nowrap; }
.status-paid,.status-active,.status-answered { color: #a2e4c6; background: #19372d; }
.status-pending,.status-open,.status-waiting-user { color: #f0d49f; background: #3b3020; }
.status-cancelled,.status-refunded,.status-disabled,.status-inactive { color: #ffb4ba; background: #3e252c; }
.status-closed { color: #c1c1cc; background: #303039; }
.skip-link { position: fixed; top: -100px; left: 20px; z-index: 1500; padding: var(--space-3) 20px; background: var(--text); color: var(--bg); border-radius: var(--radius-sm); }
.skip-link:focus { top: 12px; }
.btn { min-height: var(--control-height); gap: 10px; padding: var(--space-3) 22px; border: 1px solid transparent; border-radius: var(--radius-sm); background: #ad363e; color: #fff; font-size: var(--type-control); font-weight: 650; line-height: 1.4; letter-spacing: 0; text-transform: none; box-shadow: inset 0 1px 0 rgb(255 255 255 / .08); transition: background var(--transition),border-color var(--transition),transform var(--transition); }
.btn:hover { background: #c0444c; transform: translateY(-1px); filter: none; }
.btn-sm { min-height: 42px; padding: 10px var(--space-4); font-size: var(--type-sm); }
.btn-xs { min-height: 36px; padding: var(--space-2) var(--space-3); font-size: var(--type-xs); }
.btn-ghost { background: rgb(255 255 255 / .025); border-color: var(--line); color: #e8e5e7; box-shadow: none; }
.btn-ghost:hover { background: #27272e; border-color: #55505b; }
.btn-danger { background: #352027; color: #ffb3b8; border-color: #60313c; box-shadow: none; }
.btn-danger:hover { background: #512a35; border-color: #97505f; }
.btn:disabled,.btn.is-disabled,.btn[aria-disabled="true"] { opacity: .5; cursor: not-allowed; transform: none; }
.actions { gap: var(--space-2); flex-wrap: wrap; }
.panel,.stat-card,.auth-card,.plan-card { background: var(--panel); border: 1px solid var(--line); border-radius: var(--radius); box-shadow: none; }
.panel { padding: var(--space-5); }
.form-grid { gap: 20px var(--space-5); }
.form-grid label,.auth-card label,.inline-form label,.admin-record-editor label { display: grid; gap: var(--space-2); margin: 0; color: #dddae0; font-size: var(--type-control); font-weight: 500; min-width: 0; }
.form-grid label small { font-size: var(--type-sm); color: var(--muted); font-weight: 400; }
:where(.form-grid,.auth-card,.auth-panel,.filters,.search,.table-action,.inline-form,.admin-record-editor,.profile-form-modern,.profile-password-fields) :is(input:not([type="checkbox"]):not([type="radio"]):not([type="file"]):not([type="hidden"]),select,textarea),.checkout-v2-coupon-form input { width: 100%; min-width: 0; min-height: 48px; height: auto; padding: var(--space-3) 14px; border: 1px solid #3a383f; border-radius: var(--radius-sm); background-color: #121316; color: var(--text); font-size: var(--type-body); line-height: 1.5; font-weight: 400; transition: border-color var(--transition),box-shadow var(--transition); }
:where(.form-grid,.auth-panel,.filters,.search,.inline-form,.admin-record-editor,.profile-form-modern,.profile-password-fields) :is(input,select,textarea):focus,.checkout-v2-coupon-form input:focus { border-color: #d16c75; box-shadow: 0 0 0 3px var(--brand-soft); outline: none; }
textarea { resize: vertical; }
select { appearance: none; min-height: 48px; padding: var(--space-3) 42px var(--space-3) 14px; border: 1px solid #3a383f; border-radius: var(--radius-sm); color: var(--text); background-color: #121316; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%23beb8c3' stroke-width='1.6'%3E%3Cpath d='m4 6 4 4 4-4'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 14px center; background-size: 16px; font-size: var(--type-control); cursor: pointer; }
:where(.form-grid,.filters,.table-action,.inline-form,.admin-record-editor) select { padding-right: 42px; }
select:hover { border-color: #77707d; } select option { background: #1c1c22; color: var(--text); }
input[type="checkbox"],input[type="radio"] { accent-color: var(--brand); }
input:disabled,textarea:disabled,select:disabled { color: #9c96a2; cursor: not-allowed; }
.check { display: flex; align-items: center; gap: 10px; } .check input { width: 18px; height: 18px; min-height: 0; flex: 0 0 auto; }
.filters,.search { gap: var(--space-3); margin-bottom: var(--space-5); } .filters select { width: auto; min-width: 190px; } .filters input,.search input { flex: 1; min-width: 0; }
.inline-form { gap: var(--space-4); padding: var(--space-5); align-items: end; } .inline-form label { flex: 1; } .inline-form .btn { min-height: 48px; }
.table-wrap { border-color: var(--line); border-radius: var(--radius); background: var(--panel); scrollbar-width: thin; scrollbar-color: #6d3c45 transparent; }
table { font-size: var(--type-control); } th,td { padding: 18px 20px; border-bottom-color: #2b2a31; }
th { background: #1d1e23; color: #b3aeb9; font-size: 11px; font-weight: 650; letter-spacing: .09em; } td { color: #e6e1e8; }
tbody tr:hover { background: rgb(255 255 255 / .018); } .table-sub { margin-top: var(--space-1); }
.table-action { gap: 10px; } .table-action input,.table-action select { min-height: 40px; padding-top: var(--space-2); padding-bottom: var(--space-2); font-size: var(--type-sm); } .table-action .btn { white-space: nowrap; }
.empty-state { padding: var(--space-7) var(--space-5); color: var(--muted); } .empty-state h3 { margin: 0 0 var(--space-2); font-size: 22px; font-weight: 600; } .empty-state p { font-size: var(--type-control); margin: 0 auto 20px; max-width: 480px; }
.toast-root { top: 96px; right: 24px; max-width: calc(100% - 32px); }
.toast { border-color: #396d57; border-radius: 12px; background: #1b3027; color: #e5fff1; padding: var(--space-4) 20px; font-size: var(--type-control); box-shadow: var(--shadow); }
.toast.error { background: #39212b; border-color: #915262; color: #ffe5eb; }

/* Cabeçalho, menus e rodapé */
.site-header { background: rgb(16 17 19 / .94); border-color: var(--line); backdrop-filter: blur(20px); }
.nav-wrap { min-height: 84px; display: flex; gap: var(--space-6); }
.brand { gap: var(--space-3); font-size: 19px; font-weight: 700; letter-spacing: -.035em; white-space: nowrap; }
.brand-mark { width: 38px; height: 38px; border-radius: 0; background: none; box-shadow: none; overflow: hidden; }
.brand-mark img,.page-loader-mark img { width: 100%; height: 100%; object-fit: contain; }
.nav-shell { display: flex; align-items: center; justify-content: space-between; flex: 1; gap: var(--space-5); position: static; padding: 0; border: 0; background: none; box-shadow: none; }
.nav-center { margin: auto; gap: 28px; }
.nav>a { position: relative; color: #ada9b3; font-size: var(--type-control); font-weight: 500; padding: 29px 0; }
.nav>a:hover,.nav>a.active { color: var(--text); } .nav>a.active:after { height: 2px; background: var(--brand2); bottom: 17px; }
.nav-actions { gap: 14px; } .nav-enter { min-width: 110px; }
.nav-account-support { display: flex; align-items: center; gap: 12px; min-width: 0; }
.header-support { display: flex; align-items: center; gap: 4px; flex: 0 0 auto; }
.header-support a { display: inline-flex; align-items: center; justify-content: center; width: 34px; min-height: 44px; color: #aaa5af; border: 0; background: transparent; border-radius: 6px; }
.header-support a[href^="https://discord.gg/"] { color: #5865f2; }
.header-support a[href^="https://wa.me/"] { color: #25d366; }
.header-support a:hover { filter: brightness(1.2); }
.header-support svg { display: block; width: 22px; height: 22px; fill: currentColor; }
.header-support a[href^="https://wa.me/"] svg { width: 24px; height: 24px; }
@media (min-width: 1001px) and (max-width: 1150px) {
  .public-support-header .nav-wrap { gap: 16px; }
  .public-support-header .nav-center { gap: 12px; }
  .public-support-header .nav-actions { gap: 10px; }
  .public-support-header .nav-account-support { gap: 8px; }
  .public-support-header .account-trigger { max-width: 180px; }
}
@media (max-width: 1000px) {
  .nav-account-support { width: 100%; }
  .nav-account-support>.account-menu,.nav-account-support>.nav-enter { flex: 1; min-width: 0; }
  .nav-account-support>.account-menu { width: auto; }
}
.language-trigger,.account-trigger { min-height: 42px; height: auto; border-radius: var(--radius-sm); border-color: var(--line); background: #19191e; }
.language-code,.language-option-name { font-size: var(--type-xs); font-weight: 600; } .language-option small { color: #b1a5b6; font-size: 10px; }
.language-menu,.account-dropdown { background: #1d1d24; border-color: #45404a; border-radius: 12px; }
.language-option { height: 44px; color: #cec6d4; } .account-trigger { max-width: 230px; }
.account-trigger-copy strong,.account-dropdown-head strong { font-size: var(--type-sm); }
.account-trigger-copy small,.account-dropdown-head small { font-size: 11px; color: #b1a6b7; }
.account-admin-mark,.account-dropdown-admin { font-size: 9px; }
.account-dropdown-links>a,.account-logout { min-height: 44px; }
.account-dropdown-links>a>span:nth-child(2),.account-logout>span:nth-child(2) { font-size: var(--type-sm); }
.account-dropdown { background: radial-gradient(ellipse at top right,rgba(184,62,69,.065),transparent 65%),#1d1d24; border-color: #4a3c46; box-shadow: inset 0 1px 0 #ffffff08,0 20px 48px #0006; }
.account-dropdown-head { border-bottom-color: #ffffff0b; }
.account-dropdown-head .account-avatar { box-shadow: 0 0 0 1px #ffffff12; }
.account-menu-icon { color: #d5adb8; background: #382730; box-shadow: inset 0 0 0 1px #b8799026; }
.account-menu-icon .account-action-icon { display: block; width: 17px; height: 17px; }
.account-menu-icon--profile { color: #c7bed3; background: #2c2834; box-shadow: inset 0 0 0 1px #a995c026; }
.account-menu-icon--admin { color: #eea1ae; background: #3b272f; box-shadow: inset 0 0 0 1px #df758c30; }
.account-menu-icon--logout { color: #d58b94; background: #33252c; box-shadow: inset 0 0 0 1px #bd687b26; }
.account-dropdown-links>a:hover,.account-logout:hover { background: #b83e4510; }
.account-dropdown-links>a:hover .account-menu-icon,.account-logout:hover .account-menu-icon { color: #f4c0cd; background: #4a2c38; box-shadow: inset 0 0 0 1px #d885a047; }
.account-logout:hover { color: #f0a4ae; }
.mobile-menu { width: 44px; min-height: 44px; border-radius: var(--radius-sm); }
.footer { background: #131417; border-top: 1px solid var(--line); padding: 56px 0 var(--space-5); }
.footer-grid { grid-template-columns: minmax(240px,1.8fr) 1fr 1fr; gap: 64px; }
.footer-about p { max-width: 360px; font-size: var(--type-control); color: var(--muted); margin: var(--space-4) 0 0; }
.footer-links,.footer-socials { gap: var(--space-3); }
.footer-links strong,.footer-socials strong { font-size: var(--type-xs); letter-spacing: .09em; font-weight: 600; text-transform: uppercase; margin-bottom: var(--space-2); }
.footer-links a { width: fit-content; font-size: var(--type-control); color: var(--muted); } .footer-links a:hover { color: #fff; }
.footer-social-link { display: flex; gap: 10px; align-items: center; font-size: var(--type-control); color: var(--muted); width: fit-content; }
.footer-social-link svg { width: 18px; height: 18px; fill: currentColor; } .footer-social-link:hover { color: var(--brand2); }
.footer-bottom { margin-top: 40px; padding-top: var(--space-5); border-color: var(--line); color: var(--muted); font-size: var(--type-xs); }
.page-loader { background: rgb(16 17 19 / .97); } .page-loader-mark { background: transparent; box-shadow: none; }

/* Vitrine e catálogo */
.home-hero { padding: 84px 0 64px; }
.home-hero-grid { grid-template-columns: minmax(0,1.35fr) minmax(0,1fr); gap: 60px; align-items: center; }
.hero-copy { max-width: 710px; }
.hero h1 { font-size: clamp(40px,4.7vw,68px); font-weight: 650; letter-spacing: -.055em; line-height: 1.08; margin: var(--space-5) 0; }
.hero-purple { color: var(--brand2); } .hero p { max-width: 560px; font-size: 17px; line-height: 1.75; color: #b0abb5; }
.hero-actions { gap: var(--space-3); margin: var(--space-6) 0; } .hero-actions .btn { min-height: 50px; min-width: 150px; }
.trust-row { gap: var(--space-4); font-size: var(--type-xs); color: #b0a8b6; }
.hero-collection { position: relative; border: 1px solid #413039; border-radius: 20px; background: #19171c; overflow: hidden; box-shadow: var(--shadow); transform: rotate(1.5deg); }
.hero-collection-top,.hero-collection-bottom { position: relative; z-index: 1; display: flex; justify-content: space-between; align-items: center; gap: var(--space-4); padding: 22px var(--space-5); }
.hero-collection-top { border-bottom: 1px solid rgb(255 255 255 / .07); color: #c1a7b0; font-size: 10px; font-weight: 600; letter-spacing: .14em; }
.hero-collection-top>span:last-child { font-size: 22px; line-height: 1; }
.hero-emblem { min-height: 290px; position: relative; display: grid; place-content: center; justify-items: center; background: radial-gradient(ellipse at center,#4a232b 0,#24181e 45%,#19171c 72%); }
.hero-emblem:before,.hero-emblem:after { content: ""; position: absolute; width: 240px; height: 240px; top: 12px; left: calc(50% - 120px); border: 1px solid rgb(229 124 129 / .14); border-radius: 50%; pointer-events: none; }
.hero-emblem:after { width: 285px; height: 285px; left: calc(50% - 142.5px); top: -11px; }
.hero-emblem img { position: relative; width: 164px; height: 164px; object-fit: contain; filter: drop-shadow(0 12px 32px #301018); }
.hero-emblem>span { position: relative; margin-top: 22px; font-size: 10px; color: #e4afb8; letter-spacing: .3em; }
.hero-collection-bottom { background: #1f1b20; border-top: 1px solid #3b2b33; }
.hero-edition { font-size: 9px; color: #a7919e; line-height: 1.8; letter-spacing: .06em; }
.hero-edition strong { font-size: var(--type-sm); color: #eee4e9; font-weight: 500; letter-spacing: -.015em; }
.hero-collection-bottom a { display: flex; gap: 10px; align-items: center; color: #f2b2b8; font-size: var(--type-xs); }
.confidence-section { padding: 44px 0 64px; border-bottom: 1px solid var(--line); }
.confidence-head { text-align: left; margin-bottom: 28px; } .confidence-head h2 { font-size: 30px; margin: 10px 0; }
.confidence-head p { max-width: 620px; margin: 0; font-size: var(--type-control); color: var(--muted); }
.confidence-grid { grid-template-columns: repeat(4,minmax(0,1fr)); gap: var(--space-4); }
.confidence-card { min-height: 0; padding: var(--space-5); background: #17171b; border: 1px solid var(--line); border-radius: var(--radius); }
.confidence-icon { width: 42px; height: 42px; border-radius: 12px; color: #e68990; background: var(--brand-soft); border-color: #543039; }
.confidence-card h3 { font-size: 17px; font-weight: 600; margin: 20px 0 10px; letter-spacing: -.025em; }
.confidence-card p { font-size: var(--type-control); color: var(--muted); line-height: 1.7; }
.product-grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: var(--space-5); }
.product-card { min-width: 0; border: 1px solid var(--line); border-radius: var(--radius); background: var(--panel); box-shadow: none; }
.product-card:hover { border-color: #76515d; transform: translateY(-4px); box-shadow: var(--shadow); }
.product-image { aspect-ratio: 16/10; background: radial-gradient(ellipse at center,#35232e,#1b1b23); }
.product-image>span:not(.catalog-image-shade) { color: #d797a4; font-size: 24px; font-weight: 600; letter-spacing: -.035em; }
.catalog-image-shade { position: absolute; inset: auto 0 0; width: auto; height: 35%; }
.product-body { padding: var(--space-5); } .product-body h3 { font-size: 22px; margin: var(--space-4) 0 10px; font-weight: 600; }
.product-body p { margin: 0; height: auto; min-height: 48px; color: var(--muted); font-size: var(--type-control); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.product-foot { margin-top: var(--space-5); padding-top: 20px; border-top: 1px solid var(--line); align-items: center; gap: var(--space-4); }
.product-foot small { color: var(--muted); font-size: var(--type-xs); }
.product-foot strong,.catalog-price strong { font-size: 23px; font-weight: 600; letter-spacing: -.03em; }
.catalog-product-button { min-width: 0; font-size: var(--type-sm); }
.section-muted { background: #141518; border-color: var(--line); }
.category-grid { grid-template-columns: repeat(4,minmax(0,1fr)); gap: var(--space-4); }
.category-card { padding: 28px; background: #1a1b20; border-color: var(--line); }
.category-card h3 { font-size: 21px; font-weight: 600; margin-top: var(--space-5); } .category-card p { color: var(--muted); font-size: var(--type-control); } .category-card>span { color: var(--brand2); font-size: 20px; }
.page-hero,.support-hero,.reviews-hero { padding: 64px 0 var(--space-6); }
.page-hero h1,.support-hero h1,.reviews-intro h1,.terms-hero h1 { font-size: clamp(36px,5vw,56px); line-height: 1.12; letter-spacing: -.045em; margin: var(--space-4) 0; font-weight: 650; }
.page-hero p,.support-hero p,.reviews-intro p,.terms-hero p { font-size: 16px; color: var(--muted); line-height: 1.7; }
.products-catalog-section { padding: var(--space-5) 0 80px; } .products-toolbar { gap: var(--space-5); margin-bottom: var(--space-6); } .products-count { color: var(--muted); font-size: var(--type-xs); }
.chip { min-height: 42px; display: inline-flex; align-items: center; padding: var(--space-2) 18px; font-size: var(--type-control); border-color: var(--line); background: #1a1b20; }
.chip.active { background: #43242c; color: #ffc4c9; border-color: #8c4854; } .chip:hover { border-color: #b87783; }

/* Suporte público, termos e avaliações */
.support-section { padding: var(--space-5) 0 80px; }
.support-channel,.support-steps,.support-security,.terms-card,.review-card,.reviews-summary { background: var(--panel); border-color: var(--line); border-radius: var(--radius); box-shadow: none; }
.support-channel { min-height: 430px; padding: var(--space-6); } .support-channel h2 { font-size: 32px; line-height: 1.2; margin: var(--space-4) 0; }
.support-label,.support-pill,.support-status { font-size: var(--type-xs); } .support-benefits span { font-size: var(--type-control); color: #c6becb; }
.support-channel-copy p,.support-step p,.support-security p { font-size: var(--type-control); color: var(--muted); }
.support-step b,.support-step>strong { font-size: var(--type-control); } .support-step { background: #1e1e25; border-color: var(--line); padding: 20px; }
.terms-shell { max-width: 1120px; } .terms-page { padding: 64px 0 80px; } .terms-card { padding: 28px; } .terms-card h2 { font-size: 23px; }
.terms-card p,.terms-card li,.terms-rule p { font-size: var(--type-body); color: #b8b0c0; line-height: 1.8; } .terms-card-index { font-size: var(--type-sm); }
.reviews-summary { padding: 28px; } .reviews-score>strong { font-size: 48px; } .reviews-summary small,.reviews-total span { font-size: var(--type-sm); }
.reviews-heading-row h2 { font-size: 26px; } .review-card { padding: 26px; } .review-user strong { font-size: var(--type-body); }
.review-user small,.review-card-foot,.reviews-pagination-row { font-size: var(--type-sm); color: var(--muted); }
.review-comment { font-size: var(--type-body); line-height: 1.8; color: #dfd8e5; } .review-stars { color: #e7b477; font-size: 18px; }
.reviews-filter-pill,.review-verified-pill { font-size: var(--type-xs); padding: var(--space-2) var(--space-3); }

/* Produto e planos */
.product-showcase-section { padding: var(--space-6) 0 80px; }
.product-breadcrumb { display: flex; gap: var(--space-3); color: var(--muted); font-size: var(--type-sm); margin-bottom: 28px; overflow-wrap: anywhere; }
.product-breadcrumb>a { color: #e9b0b9; flex: 0 0 auto; }
.product-showcase { grid-template-columns: minmax(0,1.15fr) minmax(0,1fr); gap: 40px; }
.product-main-media { aspect-ratio: 16/12; background: radial-gradient(ellipse,#382530,#17181e); border-color: var(--line); border-radius: var(--radius); }
.product-main-media>span { font-size: 38px; letter-spacing: -.04em; color: #d697a4; }
.product-buy-panel { top: 108px; padding: var(--space-6); border: 1px solid #4f343f; border-radius: var(--radius); background: var(--panel); box-shadow: var(--shadow); }
.product-buy-head h1 { margin: 20px 0 var(--space-4); font-size: clamp(30px,3vw,42px); font-weight: 650; line-height: 1.15; }
.product-short-description { font-size: var(--type-body); line-height: 1.7; color: var(--muted); }
.product-section-label { font-size: var(--type-xs); color: #c8b6c9; font-weight: 600; letter-spacing: .08em; }
.product-description-panel { padding: 28px; background: var(--panel); border-color: var(--line); border-radius: var(--radius); }
.product-full-description { font-size: var(--type-body); line-height: 1.85; color: #c2bacb; margin-top: 18px; }
.product-plan-area { margin-top: 28px; } .product-plan-list { gap: var(--space-3); margin-top: 14px; }
.product-plan-row { min-height: 68px; padding: var(--space-4); gap: var(--space-4); background: #121316; border-color: var(--line); border-radius: 10px; }
.product-plan-row:has(input:checked) { border-color: #c56674; background: #302029; box-shadow: inset 3px 0 0 var(--brand2); }
.product-plan-row.is-out { opacity: .65; }
.product-plan-row:focus-within { outline: 2px solid var(--brand2); outline-offset: 3px; }
.product-plan-name strong { font-size: var(--type-body); font-weight: 500; } .product-plan-name small { font-size: var(--type-xs); } .product-plan-price { font-size: 16px; font-weight: 650; }
.product-total-box { margin-top: 28px; padding: var(--space-5) 0; border-color: var(--line); }
.product-total-box>span { font-size: var(--type-xs); color: var(--muted); } .product-total-box strong { font-size: 36px; font-weight: 650; color: var(--text); line-height: 1.15; margin-top: var(--space-2); }
.product-buy-now { min-height: 52px; border-radius: var(--radius-sm); font-size: var(--type-body); text-transform: none; letter-spacing: 0; }
.product-payment-note { font-size: var(--type-xs); color: var(--muted); line-height: 1.7; margin: var(--space-4) var(--space-1) 0; }

/* Login e cadastro */
.auth-body,.auth-showcase,.auth-form-side { background: var(--bg); }
.auth-split { grid-template-columns: 1.05fr 1fr; }
.auth-showcase { padding: var(--space-7) 64px; border-right: 1px solid var(--line); background: radial-gradient(ellipse at 20% 60%,#2e2029,#151418 70%); }
.auth-showcase:before,.auth-showcase:after { opacity: .12; }
.auth-showcase h1 { font-size: clamp(38px,4.2vw,62px); line-height: 1.12; text-transform: none; letter-spacing: -.055em; font-weight: 650; }
.auth-showcase h1 span { color: var(--brand2); } .auth-showcase-copy>p { color: #beb1c3; font-size: 16px; line-height: 1.8; }
.auth-benefit { min-height: 80px; gap: var(--space-4); border-color: #3b2e3b; } .auth-benefit strong { font-size: var(--type-body); font-weight: 500; }
.auth-benefit small { font-size: var(--type-sm); color: #b5a8bd; } .auth-benefit-icon { width: 40px; height: 40px; border-color: #593442; color: #f0a2b1; }
.auth-showcase-foot { font-size: 11px; color: #b1a4b8; } .auth-form-side { padding: 108px 40px 64px; }
.auth-panel { max-width: 440px; width: 100%; } .auth-panel h1 { font-size: 34px; line-height: 1.2; font-weight: 650; margin: var(--space-3) 0; }
.auth-panel>p { font-size: var(--type-body); color: var(--muted); line-height: 1.7; margin-bottom: 28px; }
.auth-panel>label { gap: var(--space-2); margin: 18px 0; font-size: var(--type-control); font-weight: 500; color: #d7cddb; } .auth-panel label>span { font-size: var(--type-control); }
.auth-panel-icon { width: 48px; height: 48px; font-size: 22px; margin-bottom: var(--space-5); background: var(--brand-soft); color: var(--brand2); border-color: #65313d; }
.auth-password-field input { padding-right: 52px; } .auth-password-toggle { right: 6px; width: 36px; height: 36px; color: #b3a7bd; } .auth-password-toggle svg { width: 20px; height: 20px; }
.auth-check { margin: 20px 0; color: #c0b4cb; font-size: var(--type-control); font-weight: 400; } .auth-submit { min-height: 50px; font-size: var(--type-body); }
.auth-switch { font-size: var(--type-control); color: var(--muted); margin-top: 26px; } .auth-switch a,.auth-help a { color: #efb0bb; }
.auth-help { color: var(--muted); font-size: var(--type-sm); } .auth-topbar a { color: var(--muted); font-size: var(--type-sm); }

/* Painéis e navegação interna */
.dashboard-body { --panel-header-height:76px; background: #121316; }
.dashboard-site-header { height:var(--panel-header-height); display:flex; align-items:center; }
.dashboard-body main,.dashboard-body .dashboard-layout { min-height:calc(100vh - var(--panel-header-height)); }
.dashboard-body .panel-sidebar { top:var(--panel-header-height); height:calc(100dvh - var(--panel-header-height)); }
.dashboard-topbar { height:100%; padding: 0 var(--space-6); gap: var(--space-5); }
.dashboard-topbar-left,.dashboard-topbar-right { gap: var(--space-4); }
.dashboard-topbar-section,.dashboard-store-link { font-size: var(--type-sm); color: #b9b0c0; }
.dashboard-role-badge { font-size: 10px; padding: 6px 10px; }
.dashboard-site-header .language-trigger,.dashboard-site-header .account-trigger { height: 42px; }
.dashboard-site-header .dashboard-store-link,.dashboard-site-header .dashboard-role-badge { height:42px; justify-content:center; line-height:1; }
.panel-section { padding: 0; }
.dashboard-layout { width: 100%; max-width: none; margin: 0; min-height: calc(100vh - 76px); grid-template-columns: 244px minmax(0,1fr); gap: 0; align-items: stretch; }
.panel-sidebar { position: sticky; top: 76px; left: auto; width: auto; min-width: 0; height: calc(100dvh - 76px); max-height: none; padding: var(--space-5) var(--space-4); margin: 0; border: 0; border-right: 1px solid var(--line); border-radius: 0; background: #17181b; display: flex; flex-direction: column; overflow: auto; gap: 20px; }
.sidebar-profile-card { display: flex; align-items: center; gap: var(--space-3); padding: var(--space-3); margin: 0; border: 1px solid var(--line); background: #1d1e23; border-radius: 12px; }
.sidebar-avatar { width: 38px; height: 38px; border-radius: 10px; color: #edb1bd; background: #422630; }
.sidebar-profile-meta strong { font-size: var(--type-control); font-weight: 600; } .sidebar-profile-meta small { color: var(--muted); font-size: var(--type-xs); max-width: 150px; }
.sidebar-group { display: grid; gap: var(--space-1); }
.sidebar-group-title { display: block; color: #95909e; font-size: 11px; font-weight: 600; letter-spacing: .09em; padding: 0 var(--space-3); margin: 0 0 var(--space-2); }
.panel-sidebar .sidebar-link { display: flex; align-items: center; justify-content: flex-start; gap: var(--space-3); padding: var(--space-3); min-height: 46px; color: #b5aeba; font-size: var(--type-control); font-weight: 500; line-height: 1.4; text-align: left; border-radius: var(--radius-sm); background: transparent; border: 0; }
.panel-sidebar .sidebar-link > span { min-width: 0; }
.sidebar-link:hover { background: #222228; color: #fff; }
.sidebar-link.active { background: #39232c; color: #ffd1d8; box-shadow: inset 3px 0 0 var(--brand2); }
.panel-sidebar .sidebar-icon { display: block; width: 20px; height: 20px; flex: 0 0 20px; align-self: center; margin: 0; padding: 0; border-radius: 0; background: transparent; color: #b08b9c; }
.sidebar-link.active .sidebar-icon { color: #ef9caa; }
.sidebar-footer-card { display: grid; margin-top: auto; padding: var(--space-4) var(--space-3); border: 1px solid var(--line); background: transparent; border-radius: 10px; gap: var(--space-1); }
.sidebar-footer-card small { font-size: 11px; color: var(--muted); } .sidebar-footer-card strong { font-size: var(--type-xs); font-weight: 500; }
.sidebar-button { display: flex; width: 100%; margin: 0; color: #dd99a6; cursor: pointer; }
.panel-pagination { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: var(--space-4); margin-top: var(--space-5); }
.panel-pagination p { margin: 0; color: var(--muted); font-size: var(--type-sm); }
.panel-pagination .reviews-pagination { justify-content: flex-start; gap: 6px; }
.panel-pagination .reviews-page-button { min-width: 36px; height: 36px; border-radius: var(--radius-sm); border-color: var(--line); background: var(--panel); color: var(--text); font-size: var(--type-sm); font-weight: 600; }
.panel-pagination .reviews-page-button:hover { border-color: var(--brand2); }
.panel-pagination .reviews-page-button.is-active { background: #39232c; border-color: #78424f; color: #ffd1d8; }
.dashboard-main { width: min(1320px,calc(100% - 72px)); max-width: none; margin: 0 auto; padding: 40px 0 64px; min-width: 0; }
.portal-main { gap: 28px; grid-template-columns: minmax(0,1fr); }
.portal-main>* { min-width: 0; }
.dashboard-main>.section-head { min-height: 80px; margin-bottom: 28px; }
.dashboard-main .section-head h1 { font-size: 34px; margin: var(--space-2) 0; line-height: 1.2; font-weight: 650; }
.portal-hero { min-height: 110px; padding: 0 0 var(--space-2); align-items: center; gap: var(--space-5); }
.portal-hero h1 { margin: 10px 0; font-size: clamp(30px,3vw,42px); line-height: 1.15; font-weight: 650; }
.portal-hero h1 span { color: var(--brand2); background: none; -webkit-text-fill-color: currentColor; }
.portal-hero p { font-size: var(--type-body); color: var(--muted); max-width: 700px; line-height: 1.7; } .portal-hero-button { flex: 0 0 auto; }
.portal-stats { gap: var(--space-4); grid-template-columns: repeat(4,minmax(0,1fr)); }
.portal-stat-card,.portal-info-card { background: var(--panel); border-color: var(--line); padding: var(--space-5); border-radius: 12px; }
.portal-stat-card small,.portal-info-card small { font-size: var(--type-sm); color: #b1a7bb; }
.portal-stat-card strong { font-size: clamp(25px,2.4vw,34px); margin: var(--space-3) 0 var(--space-2); line-height: 1.2; font-weight: 600; letter-spacing: -.04em; overflow-wrap: anywhere; }
.portal-stat-card span,.portal-info-card span { font-size: var(--type-xs); color: var(--muted); line-height: 1.6; }
.portal-info-card strong { font-size: 16px; margin: 10px 0; font-weight: 600; }
.portal-grid-dashboard { grid-template-columns: minmax(0,1.55fr) minmax(280px,.8fr); gap: var(--space-5); }
.portal-panel { padding: var(--space-5); background: var(--panel); border: 1px solid var(--line); border-radius: var(--radius); }
.portal-panel-head { margin: 0 0 20px; padding: 0 0 20px; min-height: 0; border-bottom: 1px solid var(--line); gap: 20px; align-items: center; }
.portal-panel-head h2 { font-size: 22px; margin: var(--space-2) 0 0; line-height: 1.25; font-weight: 600; }
.portal-order-row { padding: 18px; gap: var(--space-4); background: #1b1c21; border-color: var(--line); }
.portal-order-row strong { font-size: 16px; font-weight: 600; } .portal-order-row span,.portal-order-row small { font-size: var(--type-xs); }
.portal-order-meta strong { font-size: var(--type-body); color: var(--text); }
.portal-account-ring { margin: var(--space-5) auto; width: 150px; height: 150px; }
.portal-account-ring-inner { background: var(--panel); } .portal-account-ring-inner strong { font-size: 32px; font-weight: 600; } .portal-account-ring-inner span { font-size: var(--type-xs); }
.portal-summary-card,.portal-footer-note { background: #251d23; border-color: #47303b; padding: 18px; gap: var(--space-2); }
.portal-summary-card strong,.portal-footer-note strong { font-size: var(--type-body); font-weight: 500; }
.portal-summary-card small,.portal-summary-card span,.portal-footer-note span { font-size: var(--type-sm); color: var(--muted); }
.portal-quick-grid { gap: var(--space-4); }
.portal-quick-card,.portal-action-card { padding: 20px; background: #1b1c21; border-color: var(--line); border-radius: 12px; gap: 14px; }
.portal-quick-card strong,.portal-action-card strong { font-size: var(--type-body); font-weight: 500; }
.portal-quick-card small,.portal-action-card span { font-size: var(--type-sm); color: var(--muted); }
.portal-admin-summary-list { gap: var(--space-3); } .portal-admin-summary-list>div { padding: 18px; background: #1b1c21; border-color: var(--line); }
.portal-admin-summary-list span { font-size: var(--type-control); color: var(--muted); } .portal-admin-summary-list strong { font-size: 22px; font-weight: 600; }
.mine-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
.portal-product-card .product-body { padding: var(--space-5); } .portal-product-card .product-body p { min-height: 0; font-size: var(--type-sm); }
.license-box { padding: var(--space-4); background: #121316; border-color: var(--line); } .license-box>small { font-size: var(--type-xs); margin-bottom: var(--space-3); }
.license-row-icon,.mine-grid .license-row-icon { grid-template-columns: minmax(0,1fr) 44px 44px; gap: var(--space-2); }
.license-row-icon input,.mine-grid .license-row-icon input { grid-column: auto; height: 44px; font-size: var(--type-control); background: #1b1a21; }
.key-icon-button { width: 44px; height: 44px; background: #262029; border-color: #4e3544; }
.product-resource-actions { gap: var(--space-3); margin-top: 20px; } .product-resource-button { font-size: var(--type-sm); min-height: 44px; }

/* Tickets e chat: seletores do envio e dos eventos em tempo real preservados */
.ticket-row,.admin-ticket-row { padding: 22px var(--space-5); gap: var(--space-5); background: var(--panel); border: 1px solid var(--line); border-radius: 12px; align-items: center; }
.ticket-row:hover { border-color: #875361; background: #201b22; } .ticket-list,.portal-ticket-list { gap: 14px; }
.ticket-row strong { font-size: 17px; line-height: 1.5; font-weight: 600; overflow-wrap: anywhere; margin: 5px 0; }
.ticket-row small,.ticket-row div>span:not(.status):not(.badge) { font-size: var(--type-sm); color: var(--muted); line-height: 1.7; overflow-wrap: anywhere; }
.ticket-meta { gap: 10px; flex-shrink: 0; } .portal-status-strip { gap: var(--space-2); flex-wrap: wrap; }
.admin-inbox-filters { padding: 20px; border: 1px solid var(--line); border-radius: 12px; background: var(--panel); }
.admin-ticket-link { display: flex; align-items: center; gap: 18px; }
.admin-ticket-link>div { min-width: 0; }
.inbox-avatar { width: 46px; height: 46px; flex: 0 0 46px; display: grid; place-items: center; border: 1px solid #633e50; border-radius: 14px; background: #392632; color: #f3bacb; font-size: 18px; font-weight: 600; }
.portal-status-chip { font-size: var(--type-xs); padding: var(--space-2) var(--space-3); background: #24212a; border-color: #3e3545; color: #c6b9cf; }
.ticket-create-form { padding: var(--space-6); gap: 28px var(--space-5); }
.ticket-form-intro { padding-bottom: var(--space-5); border-bottom: 1px solid var(--line); }
.ticket-form-intro h2 { font-size: 24px; margin: 10px 0 var(--space-2); } .ticket-form-intro p { margin: 0; color: var(--muted); font-size: var(--type-control); }
.ticket-form-actions { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding-top: var(--space-5); border-top: 1px solid var(--line); }
.ticket-form-actions small { font-size: var(--type-sm); color: var(--muted); }
.ticket-conversation-nav { display: flex; align-items: center; gap: var(--space-4); margin-bottom: var(--space-5); font-size: var(--type-sm); }
.ticket-conversation-nav a { color: #bfb1c8; padding: var(--space-2) 0; } .ticket-conversation-nav span { padding: var(--space-2) 14px; border: 1px solid #66404e; border-radius: var(--radius-sm); background: var(--brand-soft); color: #efb5c2; }
.ticket-chat-header { min-height: 108px; padding: var(--space-5); background: var(--panel); border: 1px solid var(--line); border-radius: 16px 16px 0 0; gap: var(--space-5); align-items: center; }
.ticket-chat-requester { align-items: center; gap: var(--space-4); min-width: 0; flex: 1; }
.ticket-chat-avatar,.ticket-chat-avatar img { width: 52px; height: 52px; min-width: 52px; max-width: 52px; max-height: 52px; border-radius: 14px; object-fit: cover; background: #3c2632; color: #f1bac9; font-size: 20px; }
.ticket-chat-user { width: 140px; min-width: 0; } .ticket-chat-user strong { max-width: 140px; font-size: var(--type-control); line-height: 1.5; }
.ticket-chat-user small,.ticket-chat-label { font-size: 11px; color: var(--muted); } .ticket-chat-label { letter-spacing: .05em; }
.ticket-chat-subject h1 { font-size: 22px; font-weight: 600; margin: var(--space-1) 0; line-height: 1.3; text-transform: none; letter-spacing: -.025em; }
.ticket-chat-subject p { font-size: var(--type-sm); color: var(--muted); margin: 5px 0 0; } .ticket-chat-status { flex-wrap: wrap; }
.chat-shell { margin-top: 0; border: 1px solid var(--line); border-top: 0; border-radius: 0 0 16px 16px; background: #141519; box-shadow: var(--shadow); }
.chat-shell .conversation { min-height: 380px; height: min(56vh,660px); max-height: none; padding: var(--space-6); gap: var(--space-5); overscroll-behavior: contain; scrollbar-width: thin; scrollbar-color: #65404d transparent; }
.chat-shell .message { max-width: min(86%,800px); gap: var(--space-3); }
.message-avatar { width: 36px; height: 36px; flex-basis: 36px; border-radius: 12px; background: #2b2730; color: #d9cadf; }
.message-bubble { padding: var(--space-4) 20px; border: 1px solid #353039; border-radius: 16px 16px 16px 4px; background: #222228; }
.message-own .message-bubble { background: #452732; border-color: #71404f; border-radius: 16px 16px 4px 16px; }
.message-author { gap: 10px; row-gap: 5px; } .message-author strong { font-size: var(--type-sm); font-weight: 600; color: #f0e5f5; }
.message-author small { color: #b2a5bc; font-size: 11px; } .message-author .admin-badge { padding: 2px 6px; font-size: 9px; }
.message-bubble p { margin-top: var(--space-2); font-size: var(--type-body); line-height: 1.75; color: #eee5f2; overflow-wrap: anywhere; }
.message-link { color: #ffc2d1; text-decoration: underline; text-underline-offset: 3px; word-break: break-word; }
.message-images { margin-top: 14px; gap: 10px; } .message-image { border-color: #6d4356; border-radius: 10px; }
.ticket-chat-composer { padding: 22px var(--space-5); background: #1b1c21; border-top: 1px solid var(--line); gap: var(--space-3); }
.ticket-composer-label-row { margin: 0 0 var(--space-1); gap: var(--space-4); } .ticket-composer-label-row>span { font-size: var(--type-sm); font-weight: 500; color: #dfd0e6; }
.ticket-composer-label-row>small { font-size: 11px; color: var(--muted); }
.ticket-composer-row { grid-template-columns: auto minmax(0,1fr) auto; gap: var(--space-3); align-items: end; } .ticket-composer-tools { gap: var(--space-2); align-self: end; }
.ticket-chat-tool { width: 44px; min-width: 44px; height: 48px; border-radius: var(--radius-sm); background: #28232c; border-color: #48384e; color: #d0b8db; }
.ticket-chat-tool:hover { color: #fff; background: #3a2b41; border-color: #a6739f; } .ticket-chat-tool svg { width: 20px; height: 20px; }
.ticket-chat-composer textarea { min-height: 72px; max-height: 180px; padding: 14px var(--space-4); border-color: #4b3b51; border-radius: 10px; background: #121316; font-size: var(--type-body); line-height: 1.6; }
.ticket-chat-send { min-height: 48px; height: 48px; min-width: 106px; padding: 0 18px; font-size: var(--type-control); } .ticket-chat-send svg { width: 18px; height: 18px; }
.ticket-composer-footer { padding: 0 0 0 104px; }
.ticket-chat-composer .composer-hint { padding: 0; font-size: 11px; color: #b3a7bd; line-height: 1.6; }
.ticket-chat-composer .emoji-picker { left: 24px; bottom: 150px; background: #25212b; border-color: #60415c; } .emoji-picker button { min-height: 42px; }

/* Administração, estoque, perfil e modais */
.admin-management-main { gap: 28px; } .admin-management-main>.admin-management-head { min-height: 80px; margin: 0; }
.admin-management-head p { font-size: var(--type-control); color: var(--muted); }
.admin-management-card { background: var(--panel); border: 1px solid var(--line); border-radius: var(--radius); }
.admin-management-card-head { padding: 22px var(--space-5); min-height: 76px; background: transparent; border-bottom-color: var(--line); }
.admin-management-card-title h2 { font-size: 20px; font-weight: 600; }
.admin-management-total,.admin-record-id { font-size: var(--type-xs); background: #26212b; color: #c4b5d0; }
.admin-management-form { padding: var(--space-5); gap: 20px; } .admin-management-form label { margin: 0; font-size: var(--type-control); }
.admin-management-submit { padding: 0; } .admin-management-submit .btn { font-size: var(--type-control); min-height: 48px; }
.admin-record-row { grid-template-columns: minmax(220px,.8fr) minmax(0,1.5fr); padding: var(--space-5); gap: var(--space-5); }
.admin-record-summary { gap: var(--space-3); } .admin-record-name strong { font-size: var(--type-body); } .admin-record-name small { font-size: var(--type-xs); }
.admin-record-editor { gap: var(--space-3); grid-template-columns: minmax(100px,1fr) minmax(100px,1fr) 132px; } .admin-record-editor label { font-size: var(--type-xs); }
.admin-record-actions { grid-column: 1/-1; min-height: 40px; gap: 10px; justify-content: end; }
.admin-record-actions .btn { height: auto; min-height: 40px; font-size: var(--type-sm); padding: 10px var(--space-4); }
.coupon-record-row { grid-template-columns: minmax(180px,1fr) minmax(280px,1fr); } .coupon-record-editor { grid-template-columns: minmax(130px,1fr) auto; align-items: end; }
.coupon-record-editor .admin-record-actions { grid-column: auto; } .admin-discount-badge { font-size: var(--type-sm); padding: var(--space-2) var(--space-3); height: auto; }
.admin-product-form { padding: var(--space-5); gap: 28px; }
.admin-product-form-section,.admin-product-resource-section { padding: var(--space-5); border-color: var(--line); background: #1d1d24; border-radius: 12px; }
.admin-product-form-intro p,.admin-product-form-section-head p,.admin-product-resource-head p { font-size: var(--type-control); color: var(--muted); }
.admin-product-form-section-head h2,.admin-product-resource-head h2,.product-plans-section h2 { font-size: 22px; }
.admin-plan-card { padding: var(--space-5); background: #15161a; border-color: var(--line); border-radius: 12px; }
.admin-plan-index { font-size: var(--type-control); font-weight: 600; } .admin-plan-fields { gap: 20px; } .admin-plan-fields label { font-size: var(--type-sm); }
.plan-stock-input { margin-top: 20px; } .plan-stock-input small { font-size: var(--type-sm); }
.admin-product-submit-bar { gap: var(--space-4); padding: 20px; background: #232027; border-color: #50404f; border-radius: 12px; }
.admin-user-editor { padding: 0; overflow: hidden; } .admin-user-editor-head,.admin-user-summary,.admin-user-form { padding: 28px; }
.admin-user-identity h2 { font-size: 26px; } .admin-user-identity p,.admin-user-summary span,.admin-user-summary small { font-size: var(--type-sm); color: var(--muted); }
.admin-user-form-section-head h3 { font-size: 20px; }
.admin-role-option { display: grid; grid-template-columns: auto minmax(0,1fr) auto; gap: 14px; align-items: center; padding: 20px; background: #211d26; border-color: #4c384c; }
.admin-role-option strong { font-size: var(--type-body); } .admin-role-option small,.admin-role-alert,.admin-user-form-section-head p { font-size: var(--type-sm); }
.stock-key-row { padding: var(--space-4); gap: var(--space-4); border-color: var(--line); background: #1d1c24; }
.stock-key-row code { font-size: var(--type-control); overflow-wrap: anywhere; word-break: break-word; } .stock-key-row small { font-size: var(--type-xs); color: var(--muted); }
.stock-plan-card h2 { font-size: 24px; } .stock-plan-numbers span { font-size: var(--type-sm); color: var(--muted); }
.stock-detail-summary .panel { background: var(--panel); padding: var(--space-5); }
.profile-page-hero { min-height: 90px; padding: 0; } .profile-page-hero h1 { font-size: 38px; margin: 10px 0; } .profile-page-hero p { font-size: var(--type-body); }
.profile-overview-card { padding: var(--space-5); background: var(--panel); border-color: var(--line); gap: var(--space-5); }
.profile-overview-copy h2 { font-size: 24px; line-height: 1.3; } .profile-overview-copy p { font-size: var(--type-control); color: var(--muted); overflow-wrap: anywhere; }
.profile-overview-copy small { font-size: var(--type-xs); color: var(--muted); } .profile-security-summary { min-width: 0; gap: var(--space-3); }
.profile-security-item { padding: 14px; background: #1e1c25; border-color: #3f3449; }
.profile-security-item>span { font-size: 11px; } .profile-security-item>strong { font-size: var(--type-control); } .profile-security-item>small { font-size: var(--type-xs); color: var(--muted); }
.profile-page-tabs.profile-tabs-modern { padding: 5px; background: #1e1d25; border-color: #433647; }
.profile-tabs-modern .profile-tab,.profile-page-tabs.profile-tabs-modern .profile-tab { min-height: 42px; padding: 10px 18px; font-size: var(--type-control); font-weight: 500; }
.profile-tab.active { background: #432632; border-color: #9a5266; }
.profile-account-card-redesign,.profile-password-card-redesign { background: var(--panel); border-color: var(--line); }
.profile-account-card-redesign { padding: 0; } .profile-account-shell-redesign { grid-template-columns: 250px minmax(0,1fr); }
.profile-media-card-redesign { padding: 28px; background: #1d1a22; } .profile-details-card-redesign,.profile-password-card-redesign { padding: 28px; }
.profile-media-card-redesign .profile-media-head h3,.profile-section-head-redesign h3 { font-size: 21px; margin: 6px 0; }
.profile-media-card-redesign .profile-media-head p,.profile-section-head-redesign p { font-size: var(--type-control); color: var(--muted); }
.profile-media-card-redesign .profile-media-actions .btn,.profile-actions-redesign .profile-save-button { min-height: 42px; padding: 10px 14px; font-size: var(--type-sm); }
.profile-media-card-redesign>small,.profile-field-note { font-size: var(--type-xs); line-height: 1.7; color: var(--muted); }
.profile-policy-badge { font-size: 11px; padding: 7px 10px; line-height: 1.5; height: auto; }
.profile-field>span:first-child,.profile-form-modern label span,.profile-password-card label span { font-size: var(--type-sm); color: #cabbd4; font-weight: 500; letter-spacing: 0; }
.profile-form-redesign,.profile-password-fields { gap: var(--space-5); } .profile-password-policy { min-width: 220px; padding: var(--space-4); background: #1c2924; }
.profile-password-policy>span,.profile-password-policy>small { font-size: var(--type-xs); } .profile-password-policy>strong { font-size: var(--type-control); }
.profile-password-card-redesign .auth-password-field input { padding-right: 52px; } .profile-password-card-redesign .auth-password-toggle { width: 36px; height: 36px; }
.customer-review-purchase-card { padding: 28px; gap: var(--space-6); background: #1c1c23; border-color: var(--line); }
.customer-review-section-head h3,.portal-review-copy h3 { font-size: 23px; }
.customer-review-section-head p,.portal-review-copy p { font-size: var(--type-control); line-height: 1.8; color: var(--muted); }
.portal-review-form textarea { font-size: var(--type-body); padding: var(--space-4); background: #121316; border-color: var(--line); }
.review-rating-input label { font-size: 32px; } .review-rating-input input:focus-visible+label { outline: 2px solid var(--brand2); outline-offset: 2px; }
.portal-own-review-card { padding: var(--space-5); background: #1f1d27; border-color: var(--line); } .portal-own-review-card p { font-size: var(--type-body); }
.admin-reviews-main { display: block; } .admin-reviews-main>.section-head { min-height: 80px; margin-bottom: 28px; }
.admin-review-card { padding: var(--space-5); gap: 20px; } .admin-review-user strong { font-size: var(--type-body); }
.admin-review-user small,.admin-review-meta { font-size: var(--type-xs); color: var(--muted); } .admin-review-content p { font-size: var(--type-body); line-height: 1.75; }
.resource-modal { padding: var(--space-5); }
.resource-modal-card { width: min(850px,100%); max-height: calc(100dvh - 48px); overflow: auto; background: #1c1b23; border: 1px solid #524056; border-radius: 20px; padding: var(--space-6); }
.resource-modal-header h2 { font-size: 28px; }
.resource-modal-header p,.resource-upload-copy span,.resource-file-selected,.resource-modal-note span { font-size: var(--type-control); color: var(--muted); overflow-wrap: anywhere; }
.resource-upload-card { padding: var(--space-5); background: #24202b; border-color: #4f3c54; } .resource-upload-copy strong { font-size: 17px; }
.resource-modal-close { width: 44px; height: 44px; font-size: 24px; }

/* Checkout: etapas originais e cupom permanente */
.checkout-body { background: var(--bg); overflow-x: visible; }
.checkout-v2-shell { background: var(--bg); grid-template-columns: minmax(340px,42%) minmax(0,58%); }
.checkout-v2-order-pane { background: #18171c; border-right-color: var(--line); }
.checkout-v2-order-pane:after,.checkout-v2-flow-pane:before,.checkout-v2-flow-pane:after { display: none; }
.checkout-v2-order-inner { width: min(520px,calc(100% - 80px)); padding: 44px 0; }
.checkout-v2-brand-row { align-items: start; flex-wrap: wrap; gap: 20px; } .checkout-v2-brand { font-size: 20px; }
.checkout-v2-brand-mark { width: 40px; height: 40px; background: none; border: 0; box-shadow: none; }
.checkout-v2-brand-mark img { width: 100%; height: 100%; } .checkout-v2-top-actions { gap: var(--space-4); flex-wrap: wrap; }
.checkout-v2-back { font-size: var(--type-sm); color: #c3b3cd; } .checkout-v2-total-head { margin-top: var(--space-7); }
.checkout-v2-total-head>span { font-size: var(--type-xs); color: #c8b3c6; font-weight: 500; }
.checkout-v2-total-head>strong { font-size: 48px; margin-top: var(--space-3); font-weight: 600; line-height: 1.2; }
.checkout-v2-total-head>small { font-size: var(--type-sm); color: var(--muted); }
.checkout-v2-product { margin-top: var(--space-6); padding: var(--space-5) 0; grid-template-columns: 64px minmax(0,1fr) auto; gap: var(--space-4); border-color: #3d303f; }
.checkout-v2-product-image { width: 64px; height: 64px; background: #2e2432; border-color: #58405c; }
.checkout-v2-product-copy>strong { font-size: 16px; white-space: normal; overflow-wrap: anywhere; line-height: 1.5; }
.checkout-v2-product-copy>span { font-size: var(--type-control); color: #c4b4cf; } .checkout-v2-product-copy>small { font-size: 10px; margin-top: 6px; color: var(--muted); }
.checkout-v2-product-price { font-size: var(--type-body); } .checkout-v2-totals { gap: 18px; padding-top: var(--space-5); }
.checkout-v2-totals>div,.checkout-v2-totals strong { font-size: var(--type-control); color: #c4b6cf; font-weight: 400; }
.checkout-v2-totals .checkout-v2-coupon-line strong { font-size: var(--type-xs); color: #f6aebf; }
.checkout-v2-totals .checkout-v2-grand-total { margin-top: var(--space-2); padding-top: var(--space-5); border-color: #4a354c; color: var(--text); }
.checkout-v2-totals .checkout-v2-grand-total strong { font-size: 28px; font-weight: 600; } .checkout-v2-totals .is-discount { color: #a4e8c4; }
.checkout-v2-side-actions { gap: var(--space-3); }
.checkout-v2-side-actions>a { padding: 14px; background: #24202a; border-color: #46334b; border-radius: 10px; }
.checkout-v2-side-actions strong { font-size: var(--type-sm); color: #e5d4ed; } .checkout-v2-side-actions small { font-size: 11px; color: #b0a0bd; }
.checkout-v2-flow-pane { background: var(--bg); overflow: visible; }
.checkout-v2-flow-inner { width: min(760px,calc(100% - 80px)); padding: var(--space-7) 0; }
.checkout-v2-stepper { gap: 0; margin-bottom: var(--space-7); } .checkout-v2-step { gap: 10px; }
.checkout-v2-step strong { font-size: 11px; white-space: normal; color: #a89bb1; line-height: 1.5; }
.checkout-v2-step-dot { width: 30px; height: 30px; flex: 0 0 30px; font-size: var(--type-xs); border-color: #6b4f71; background: #24202b; }
.checkout-v2-step.is-active .checkout-v2-step-dot { background: #b14253; border-color: #d98d9e; box-shadow: 0 0 0 4px rgb(184 62 69 / .12); }
.checkout-v2-kicker { font-size: 11px; color: #d590a8; letter-spacing: .1em; font-weight: 600; }
.checkout-v2-section-head h1,.checkout-v2-state-card h1 { font-size: clamp(28px,2.8vw,38px); margin: var(--space-3) 0; line-height: 1.18; font-weight: 650; }
.checkout-v2-section-head p,.checkout-v2-state-card>p { font-size: var(--type-control); color: #b6a8c2; line-height: 1.8; }
.checkout-v2-field-block { margin-top: var(--space-6); } .checkout-v2-field-block>label { margin-bottom: 10px; font-size: var(--type-control); font-weight: 500; color: #d4c5df; }
.checkout-v2-input-shell { height: 52px; grid-template-columns: 40px minmax(0,1fr) auto; border-color: #4b3a55; background: #19171e; border-radius: var(--radius-sm); }
.checkout-v2-input-shell input { font-size: var(--type-control); color: #ddcfe7; } .checkout-v2-verified { font-size: 11px; color: #9cddb9; padding-right: 14px; }
.checkout-v2-coupon-details { padding: 22px; margin: 28px 0; border: 1px solid #57384a; border-radius: 12px; background: #241c24; }
.checkout-coupon-title { margin: 0 0 14px; font-size: var(--type-body); line-height: 1.5; font-weight: 500; letter-spacing: 0; color: #eed8e5; }
.checkout-v2-coupon-form { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: var(--space-3); margin: 0; }
.checkout-v2-coupon-form input { height: 48px; text-transform: uppercase; background: #17131b; border-color: #745064; font-size: var(--type-control); }
.checkout-v2-coupon-form .btn { min-height: 48px; font-size: var(--type-sm); padding: var(--space-3) var(--space-4); border-color: #8e5a71; background: #4b293c; color: #ffe0eb; }
.checkout-v2-coupon-form .btn:hover { background: #68384e; }
.checkout-v2-coupon-applied { display: block; margin-top: 14px; font-size: var(--type-sm); line-height: 1.7; color: #a5e5c3; }
.checkout-coupon-feedback { grid-column: 1/-1; margin: 0; padding: var(--space-3) 14px; border: 1px solid #3d7258; border-radius: var(--radius-sm); background: #1b3027; color: #b4edcf; font-size: var(--type-sm); line-height: 1.7; }
.checkout-coupon-feedback.is-error { background: #39212b; border-color: #915262; color: #ffc6d1; }
.checkout-v2-payment-block { margin-top: 28px; } .checkout-v2-payment-options { margin-top: 14px; gap: var(--space-3); }
.checkout-v2-payment-option { min-height: 90px; padding: 18px; gap: 14px; grid-template-columns: 20px 40px minmax(0,1fr) auto; border: 1px solid #49364e; border-radius: 10px; background: #1d1a22; }
.checkout-v2-payment-option.is-selected { background: #30202d; border-color: #cf8198; box-shadow: inset 3px 0 0 #d8879d; }
.checkout-v2-payment-option:focus-within { outline: 2px solid var(--brand2); outline-offset: 3px; }
.checkout-v2-radio { width: 18px; height: 18px; } .checkout-v2-method-icon { width: 40px; height: 40px; background: #3b2838; border-color: #724b65; }
.checkout-v2-method-copy strong { font-size: var(--type-control); font-weight: 600; } .checkout-v2-method-copy small { font-size: var(--type-xs); color: #b5a5c1; margin-top: var(--space-1); }
.checkout-v2-method-meta small { font-size: 11px; color: #b9abc6; } .checkout-v2-method-meta b { font-size: 10px; }
.checkout-v2-consent-note { background: #1c1a22; padding: var(--space-4); gap: var(--space-3); border-color: #3b3045; }
.checkout-v2-consent-note p { font-size: var(--type-xs); color: #bbaac9; line-height: 1.7; }
.checkout-v2-primary { min-height: 52px; font-size: var(--type-control); background: #ad363e; border-radius: var(--radius-sm); }
.checkout-v2-secure-line { font-size: var(--type-xs); color: #ad9dbb; margin-top: 18px; }
.checkout-v2-confirm-summary { padding: 22px; background: #1e1a25; border-color: #4e3657; }
.checkout-v2-confirm-summary>div strong { font-size: 17px; } .checkout-v2-confirm-summary span,.checkout-v2-confirm-summary small { font-size: var(--type-sm); color: #beadcd; }
.checkout-v2-confirm-summary>strong { font-size: 24px; }
.checkout-v2-confirm-method { padding: var(--space-5); background: #251c2b; border-color: #734b72; }
.checkout-v2-confirm-method>p { font-size: var(--type-control); color: #c4afd6; } .checkout-v2-confirm-method-head>div span { font-size: var(--type-xs); } .checkout-v2-confirm-method-head>div strong { font-size: 16px; }
.checkout-v2-method-badge { font-size: 11px; padding: 6px 10px; } .checkout-v2-confirm-method li { font-size: var(--type-xs); padding: var(--space-2) var(--space-3); background: #35233d; color: #ceb3e0; }
.checkout-v2-confirm-actions { grid-template-columns: 1fr; gap: 18px; } .checkout-v2-text-button { min-height: 40px; font-size: var(--type-sm); color: #c6a9d9; text-align: left; }
.checkout-inline-error,.checkout-warning { font-size: var(--type-control); padding: var(--space-4); border-radius: 10px; line-height: 1.7; }
.checkout-v2-pix-layout { grid-template-columns: minmax(200px,.9fr) minmax(0,1.1fr); gap: 20px; }
.checkout-v2-pix-qr-card,.checkout-v2-pix-copy-card,.checkout-v2-online-card,.checkout-v2-state-card { background: #1f1926; border-color: #53345f; border-radius: var(--radius); padding: var(--space-5); }
.checkout-v2-pix-label strong { font-size: var(--type-body); } .checkout-v2-pix-label small,.checkout-v2-pix-timer span { font-size: var(--type-xs); } .checkout-v2-pix-timer strong { font-size: 22px; }
.checkout-v2-pix-qr { width: min(260px,100%); padding: var(--space-4); } .checkout-v2-pix-copy-card h2 { font-size: 24px; } .checkout-v2-pix-copy-card>p { font-size: var(--type-control); color: var(--muted); }
.checkout-v2-pix-code { font-size: var(--type-xs); line-height: 1.7; min-height: 128px; padding: var(--space-4); background: #15111a; border-color: #573b66; }
.checkout-v2-payment-status { padding: var(--space-4); background: #2b2135; border-color: #563866; } .checkout-v2-payment-status strong { font-size: var(--type-sm); } .checkout-v2-payment-status small { font-size: 11px; color: #baa3cc; }
.checkout-v2-security-card { padding: 20px; background: #1a1f21; border-color: #344b42; } .checkout-v2-security-card strong { font-size: var(--type-control); } .checkout-v2-security-card p { font-size: var(--type-xs); color: #afbbba; }
.checkout-v2-online-copy>span { font-size: 11px; } .checkout-v2-online-copy h2 { font-size: 28px; } .checkout-v2-online-copy p { font-size: var(--type-control); color: var(--muted); }
.checkout-v2-online-methods span { font-size: var(--type-xs); } .checkout-v2-state-card { padding: 40px; } .checkout-v2-success-actions .btn { font-size: var(--type-control); }

/* Responsividade: navegação, formulários, tabelas e conversa */
@media (max-width: 1200px) {
  .container { width: calc(100% - 56px); }
  .nav-center { gap: 20px; } .nav-wrap { gap: var(--space-5); }
  .home-hero-grid { gap: 36px; } .hero h1 { font-size: 52px; } .hero-collection-bottom { flex-wrap: wrap; }
  .confidence-card { padding: 20px; }
  .dashboard-layout { grid-template-columns: 220px minmax(0,1fr); } .dashboard-main { width: calc(100% - 48px); }
  .portal-stats { grid-template-columns: repeat(2,minmax(0,1fr)); } .portal-grid-dashboard { grid-template-columns: 1fr; }
  .portal-quick-grid-three { grid-template-columns: 1fr; }
  .admin-record-row,.coupon-record-row { grid-template-columns: 1fr; }
  .profile-overview-card { align-items: start; flex-direction: column; } .profile-security-summary { width: 100%; }
  .profile-account-shell-redesign { grid-template-columns: 1fr; }
  .profile-section-head-redesign,.profile-password-header { flex-wrap: wrap; gap: var(--space-4); }
  .checkout-v2-order-inner,.checkout-v2-flow-inner { width: calc(100% - 48px); }
  .checkout-v2-step strong { display: none; } .checkout-v2-stepper { margin-bottom: 36px; }
  .checkout-v2-method-meta { display: none; } .checkout-v2-payment-option { grid-template-columns: 20px 40px minmax(0,1fr); }
  .checkout-v2-pix-layout { grid-template-columns: 1fr; }
}
@media (max-width: 1000px) {
  .nav-wrap { min-height: 76px; flex-wrap: wrap; }
  .mobile-menu { display: grid; place-items: center; margin-left: auto; }
  .nav-shell { display: none; position: absolute; top: calc(100% + 8px); left: 24px; right: 24px; padding: 20px; background: #1c1c22; border: 1px solid #47404e; border-radius: 12px; box-shadow: var(--shadow); }
  .nav-shell.open { display: flex; align-items: stretch; flex-direction: column; gap: 20px; }
  .nav { display: flex; position: static; flex-direction: column; align-items: stretch; padding: 0; border: 0; background: none; margin: 0; gap: 0; }
  .nav>a { padding: var(--space-3); font-size: var(--type-body); border-radius: var(--radius-sm); } .nav>a.active { background: #38232d; } .nav>a.active:after { display: none; }
  .nav-actions { width: 100%; justify-content: space-between; }
  .home-hero { padding: 56px 0; } .home-hero-grid { grid-template-columns: 1fr 1fr; gap: var(--space-6); } .hero h1 { font-size: 44px; }
  .hero-emblem { min-height: 260px; } .hero-emblem img { width: 130px; height: 130px; }
  .confidence-grid,.category-grid,.product-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .product-showcase { grid-template-columns: 1fr; } .product-buy-panel { position: static; }
  .dashboard-body { --panel-header-height:72px; }
  .dashboard-body .panel-sidebar { top:auto; height:auto; }
  .dashboard-layout { grid-template-columns: 1fr; } .dashboard-topbar { padding: 0 var(--space-5); }
  .dashboard-topbar-section,.dashboard-topbar-divider,.dashboard-role-badge { display: none; }
  .panel-sidebar { position: static; top: auto; height: auto; width: 100%; padding: var(--space-3) var(--space-5); border-right: 0; border-bottom: 1px solid var(--line); flex-direction: row; align-items: center; gap: var(--space-3); overflow-x: auto; }
  .sidebar-profile-card,.sidebar-group-title,.sidebar-footer-card { display: none; }
  .sidebar-group { display: flex; align-items: center; gap: var(--space-1); flex: 0 0 auto; }
  .panel-sidebar .sidebar-link { white-space: nowrap; padding: 10px 14px; font-size: var(--type-sm); min-height: 42px; }
  .sidebar-button { width: auto; flex: 0 0 auto; } .dashboard-main { width: calc(100% - 48px); padding-top: var(--space-6); }
  .portal-info-cards { grid-template-columns: repeat(3,minmax(0,1fr)); } .portal-grid-dashboard { grid-template-columns: 1.4fr 1fr; }
  .portal-hero { align-items: start; }
  .profile-media-card-redesign { display: grid; grid-template-columns: auto 1fr; gap: 20px; }
  .auth-showcase { padding: 40px; } .auth-showcase h1 { font-size: 46px; } .footer-grid { gap: var(--space-6); }
}
@media (max-width: 760px) {
  .container { width: calc(100% - 40px); } .section { padding: var(--space-7) 0; } .panel-section { padding: 0; }
  .home-hero-grid { grid-template-columns: 1fr; gap: 40px; } .hero-copy { max-width: 620px; }
  .hero h1 { font-size: clamp(38px,7vw,52px); }
  .hero-collection { max-width: 540px; width: 100%; transform: none; }
  .hero-emblem { min-height: 230px; }
  .hero-emblem:before { width: 200px; height: 200px; left: calc(50% - 100px); top: 0; }
  .hero-emblem:after { width: 240px; height: 240px; left: calc(50% - 120px); top: -20px; }
  .hero-emblem img { width: 120px; height: 120px; } .hero-collection-bottom { flex-wrap: nowrap; }
  .hero-actions { flex-direction: row; } .hero-actions .btn { min-width: 0; }
  .trust-row { display: flex; flex-wrap: wrap; gap: var(--space-2) var(--space-4); } .section-head { align-items: start; gap: 20px; }
  .page-hero,.support-hero,.reviews-hero { padding: var(--space-7) 0 var(--space-5); }
  .support-channel-grid,.support-info-grid { grid-template-columns: 1fr; } .support-channel { min-height: 0; padding: 28px; }
  .support-channel-copy { margin-top: var(--space-5); } .support-step-grid { grid-template-columns: 1fr; }
  .reviews-hero-grid { grid-template-columns: 1fr; gap: 28px; }
  .reviews-heading-row,.reviews-heading-actions,.reviews-pagination-row { flex-wrap: wrap; gap: var(--space-4); }
  .reviews-grid,.terms-content { grid-template-columns: 1fr; } .terms-card { padding: var(--space-5); }
  .footer-grid { grid-template-columns: 1fr 1fr; } .footer-about { grid-column: 1/-1; }
  .auth-split { display: block; } .auth-showcase { display: none; }
  .auth-form-side { padding: 116px var(--space-5) var(--space-7); min-height: 100dvh; }
  .auth-topbar { top: 36px; left: 24px; } .auth-language-corner { top: 24px; right: 24px; }
  .dashboard-topbar-left .brand { font-size: 17px; } .dashboard-topbar-right { gap: 10px; } .dashboard-store-link { display: none; }
  .account-trigger { min-width: 0; max-width: 170px; } .dashboard-site-header .account-trigger { min-width: 0; } .account-admin-mark { display: none; }
  .dashboard-main { width: calc(100% - 40px); padding: 28px 0 var(--space-7); }
  .portal-hero { flex-direction: column; gap: 20px; } .portal-hero h1 { font-size: 34px; }
  .portal-grid-dashboard,.portal-info-cards { grid-template-columns: 1fr; } .portal-stat-card { padding: 20px; }
  .portal-panel,.panel { padding: 22px; } .portal-panel-head { flex-direction: column; align-items: start; }
  .mine-grid { grid-template-columns: 1fr; } .form-grid { grid-template-columns: 1fr; gap: var(--space-5); } .full-field { grid-column: 1/-1; }
  .filters,.search { flex-direction: column; align-items: stretch; } .filters select,.filters input,.filters .btn { width: 100%; min-width: 0; }
  .ticket-row { flex-direction: column; align-items: start; gap: 18px; } .ticket-meta { flex-wrap: wrap; width: 100%; }
  .admin-ticket-row { align-items: stretch; } .admin-ticket-row .ticket-meta { justify-content: start; } .admin-ticket-row .ticket-meta .btn { margin-left: auto; }
  .ticket-create-form { padding: var(--space-5); } .ticket-form-actions { align-items: stretch; flex-direction: column; } .ticket-form-actions .btn { width: 100%; }
  .ticket-chat-header { padding: 20px; gap: 18px; flex-direction: column; align-items: stretch; }
  .ticket-chat-requester { flex-wrap: wrap; gap: var(--space-3); } .ticket-chat-user { width: auto; flex: 1; } .ticket-chat-divider { display: none; }
  .ticket-chat-subject { flex: 0 0 100%; padding: var(--space-4) 0 0; margin: 0; border-top: 1px solid var(--line); }
  .ticket-chat-subject h1 { font-size: 22px; } .ticket-chat-status { width: 100%; padding: 0; }
  .chat-shell .conversation { height: min(55dvh,560px); min-height: 300px; padding: 20px 14px; gap: 20px; }
  .chat-shell .message { max-width: 96%; gap: var(--space-2); } .message-bubble { padding: 13px 15px; }
  .message-avatar { width: 28px; height: 28px; flex-basis: 28px; font-size: var(--type-xs); border-radius: 9px; }
  .message-bubble p { font-size: var(--type-body); } .ticket-chat-composer { padding: 18px 14px; } .ticket-composer-label-row>small { display: none; }
  .ticket-composer-row { grid-template-columns: 1fr auto; gap: var(--space-3); }
  .ticket-chat-composer textarea { grid-column: 1/-1; grid-row: 1; width: 100%; min-height: 88px; font-size: 16px; }
  .ticket-composer-tools { grid-column: 1; grid-row: 2; flex-direction: row; } .ticket-chat-send { grid-column: 2; grid-row: 2; width: auto; }
  .ticket-composer-footer { padding: 0; } .ticket-chat-composer .emoji-picker { left: 14px; bottom: 115px; }
  .inline-form { align-items: stretch; flex-direction: column; } .inline-form label { width: 100%; min-width: 0; }
  .admin-management-form,.admin-product-form { padding: 22px; } .admin-record-row { padding: 22px; }
  .admin-record-editor { grid-template-columns: repeat(2,minmax(0,1fr)); } .coupon-record-editor { grid-template-columns: 1fr; }
  .admin-record-actions,.coupon-record-editor .admin-record-actions { grid-column: 1/-1; justify-content: start; flex-wrap: wrap; }
  .admin-product-form-section,.admin-product-resource-section,.admin-plan-card { padding: 20px; }
  .admin-plan-fields,.admin-product-section-fields,.admin-user-fields,.admin-role-options,.customer-review-purchase-card { grid-template-columns: 1fr; }
  .admin-product-submit-bar { position: static; } .profile-account-card-redesign { padding: 0; }
  .profile-media-card-redesign { display: grid; grid-template-columns: 1fr; }
  .profile-security-summary,.profile-form-redesign,.profile-password-fields { grid-template-columns: 1fr; }
  .profile-password-policy { min-width: 0; width: 100%; }
  .profile-section-head-redesign,.profile-password-header { flex-direction: column; align-items: start; }
  .profile-details-card-redesign,.profile-password-card-redesign { padding: var(--space-5); }
  .profile-page-tabs.profile-tabs-modern { width: 100%; } .profile-page-tabs.profile-tabs-modern .profile-tab { flex: 1; }
  .resource-modal { padding: var(--space-4); } .resource-modal-card { max-height: calc(100dvh - 32px); padding: var(--space-5); }
  .resource-upload-grid { grid-template-columns: 1fr; } .resource-modal-header h2 { font-size: 25px; }
  .checkout-v2-shell { display: block; min-height: 100dvh; } .checkout-v2-order-pane { border-right: 0; border-bottom: 1px solid var(--line); }
  .checkout-v2-order-inner { width: calc(100% - 40px); min-height: 0; padding: 28px 0; }
  .checkout-v2-flow-inner { width: calc(100% - 40px); min-height: 0; padding: var(--space-6) 0 var(--space-7); }
  .checkout-v2-brand-row { flex-wrap: wrap; } .checkout-v2-total-head { margin-top: 28px; } .checkout-v2-total-head>strong { font-size: 38px; }
  .checkout-v2-order-spacer,.checkout-v2-side-actions { display: none; } .checkout-v2-stepper { margin-bottom: var(--space-6); }
  .checkout-v2-step strong { display: block; font-size: 10px; }
  .checkout-v2-product { grid-template-columns: 56px minmax(0,1fr) auto; } .checkout-v2-product-image { width: 56px; height: 56px; }
  .checkout-v2-confirm-actions { grid-template-columns: 1fr; }
}
@media (max-width: 480px) {
  .container { width: calc(100% - 32px); } .hero h1 { font-size: 40px; } .hero p { font-size: 16px; }
  .hero-actions .btn { flex: 1; padding: var(--space-3); font-size: var(--type-sm); }
  .hero-collection-top,.hero-collection-bottom { padding: 18px; } .hero-collection-bottom a { font-size: 11px; }
  .confidence-grid,.category-grid,.product-grid { grid-template-columns: 1fr; } .confidence-grid { gap: var(--space-3); }
  .confidence-card { padding: 22px; } .confidence-head h2 { font-size: 27px; }
  .products-toolbar { align-items: start; flex-direction: column; gap: var(--space-4); } .products-chips { gap: var(--space-2); } .chip { padding: var(--space-2) 14px; font-size: var(--type-sm); }
  .product-body { padding: 22px; } .product-showcase { gap: var(--space-5); } .product-buy-panel,.product-description-panel { padding: var(--space-5); }
  .product-plan-row { gap: 10px; padding: var(--space-4) var(--space-3); grid-template-columns: minmax(0,1fr) auto 18px; }
  .product-plan-name strong { font-size: var(--type-control); } .product-plan-price { font-size: var(--type-body); }
  .footer-grid { grid-template-columns: 1fr 1fr; gap: var(--space-6) var(--space-4); } .footer-about { grid-column: 1/-1; }
  .dashboard-topbar { padding: 0 var(--space-4); } .dashboard-topbar-left .brand>span:last-child { display: none; }
  .dashboard-topbar-right { gap: var(--space-2); } .account-trigger { max-width: 152px; } .language-trigger { gap: 6px; padding: 0 var(--space-2); }
  .dashboard-main { width: calc(100% - 32px); } .panel-sidebar { padding: 10px var(--space-4); } .portal-hero h1 { font-size: 31px; }
  .portal-stats { grid-template-columns: repeat(2,minmax(0,1fr)); gap: var(--space-3); } .portal-stat-card { padding: 18px var(--space-4); }
  .portal-stat-card small { font-size: var(--type-xs); } .portal-stat-card strong { font-size: 25px; } .portal-stat-card span { font-size: 11px; }
  .portal-order-row { flex-direction: column; align-items: start; gap: var(--space-3); }
  .portal-order-meta { display: flex; width: 100%; justify-content: space-between; align-items: center; text-align: left; gap: var(--space-3); }
  .portal-panel,.ticket-create-form { padding: 20px; } .ticket-row { padding: 20px; }
  .ticket-conversation-nav { gap: var(--space-3); flex-wrap: wrap; } .message-author { gap: 5px var(--space-2); } .message-author small { flex-basis: 100%; } .message-bubble { padding: var(--space-3); }
  .profile-overview-card { padding: 20px; } .profile-overview-identity { gap: 14px; } .profile-overview-copy h2 { font-size: 21px; }
  .admin-record-summary { grid-template-columns: auto minmax(0,1fr); } .admin-record-editor,.coupon-record-editor { grid-template-columns: 1fr; }
  .admin-user-editor-head,.admin-user-summary,.admin-user-form { padding: 22px; } .stock-key-row { flex-wrap: wrap; } .stock-key-row code { flex-basis: 100%; }
  .checkout-v2-coupon-details { padding: 18px; } .checkout-v2-coupon-form { grid-template-columns: 1fr; }
  .checkout-v2-coupon-form .btn { width: 100%; } .checkout-v2-coupon-form input { font-size: 16px; }
  .checkout-v2-payment-option { padding: var(--space-4) var(--space-3); gap: 10px; grid-template-columns: 18px 34px minmax(0,1fr); }
  .checkout-v2-method-icon { width: 34px; height: 38px; } .checkout-v2-method-copy strong { font-size: var(--type-sm); }
  .checkout-v2-input-shell { grid-template-columns: 36px minmax(0,1fr); } .checkout-v2-verified { display: none; } .checkout-v2-input-shell input { font-size: 16px; }
  .checkout-v2-step strong { display: none; } .checkout-v2-product-price { grid-column: 2/-1; justify-self: start; } .checkout-v2-product-copy>strong { font-size: var(--type-body); }
  .checkout-v2-confirm-method-head { grid-template-columns: 36px minmax(0,1fr); } .checkout-v2-method-badge { grid-column: 1/-1; width: fit-content; }
  .checkout-v2-state-card { padding: var(--space-5); } .checkout-v2-success-actions { flex-direction: column; } .checkout-v2-online-card { grid-template-columns: 1fr; }
  .toast-root { right: 16px; top: 88px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *,*::before,*::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
}
