@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+Arabic:wght@400;500;600;700;800&display=swap");

:root {
  --ink: #17122b;
  --ink-soft: #5e5878;
  --canvas: #f6f2ff;
  --paper: #fffefe;
  --line: rgba(38, 25, 70, 0.12);
  --violet: #6d3cf3;
  --violet-deep: #2c155f;
  --violet-soft: #e6dcff;
  --cobalt: #4679f4;
  --sky: #dceaff;
  --mint: #bdeed6;
  --pink: #ffc8eb;
  --orange: #ffbd63;
  --shadow: 0 18px 55px rgba(53, 31, 111, 0.12);
  --radius: 22px;
  --display: "Sora", "Avenir Next", sans-serif;
  --body: "Manrope", "Avenir Next", sans-serif;
  --mono: "DM Mono", monospace;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
html.i18n-pending body { visibility: hidden; }
html[lang="ar"] { --display: "Noto Sans Arabic", "Manrope", Tahoma, sans-serif; --body: "Noto Sans Arabic", "Manrope", Tahoma, sans-serif; }
body { margin: 0; color: var(--ink); background: var(--canvas); font-family: var(--body); font-size: 16px; }
main > section { position: relative; isolation: isolate; overflow-x: clip; }
body::before { content: ""; position: fixed; z-index: -1; inset: 0; pointer-events: none; opacity: .42; background-image: radial-gradient(rgba(109, 60, 243, .13) .75px, transparent .75px); background-size: 16px 16px; mask-image: linear-gradient(90deg, transparent, black 18%, black 82%, transparent); }
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; }
button { font: inherit; }
.sr-only { clip: rect(0 0 0 0); clip-path: inset(50%); height: 1px; overflow: hidden; position: absolute; white-space: nowrap; width: 1px; }
.skip-link { position: fixed; z-index: 100; top: 12px; left: 12px; padding: 10px 14px; color: white; background: var(--violet); transform: translateY(-150%); border-radius: 8px; }
.skip-link:focus { transform: translateY(0); }
.site-shell { width: min(1240px, calc(100% - 40px)); margin: 0 auto; }

.site-header { position: sticky; top: 14px; z-index: 20; display: grid; grid-template-columns: 1fr auto auto 1fr; gap: 8px; align-items: center; min-height: 68px; margin-top: 14px; padding: 10px 12px 10px 18px; border: 1px solid rgba(38, 25, 70, .11); border-radius: 16px; background: rgba(255, 254, 254, .82); box-shadow: 0 5px 20px rgba(47, 29, 86, .06); backdrop-filter: blur(18px); }
.brand { display: inline-flex; align-items: center; width: max-content; gap: 9px; color: var(--ink); font-family: var(--display); font-weight: 700; letter-spacing: -.06em; font-size: 1.16rem; }
.brand img { width: 32px; height: 32px; object-fit: contain; }
.site-nav { display: flex; gap: 6px; align-items: center; justify-content: center; }
.site-nav a { padding: 8px 11px; color: var(--ink-soft); font-size: .81rem; font-weight: 700; transition: color .2s ease, background .2s ease; border-radius: 8px; }
.site-nav a:hover, .site-nav a:focus-visible { color: var(--violet); background: var(--violet-soft); outline: none; }
.header-cta { justify-self: end; display: inline-flex; align-items: center; gap: 8px; padding: 11px 14px; color: white; background: var(--ink); border-radius: 9px; font-size: .78rem; font-weight: 800; transition: transform .2s ease, background .2s ease; }
.header-cta:hover, .header-cta:focus-visible { background: var(--violet); transform: translateY(-1px); outline: none; }
.menu-toggle { display: none; }
.language-toggle { display: inline-flex; align-items: center; justify-content: center; gap: 7px; min-height: 38px; padding: 7px 10px; border: 1px solid rgba(38, 25, 70, .12); border-radius: 10px; color: var(--ink); background: rgba(255,255,255,.88); font-size: .74rem; font-weight: 800; cursor: pointer; transition: color .2s ease, border-color .2s ease, transform .2s ease, background .2s ease; }
.language-toggle:hover, .language-toggle:focus-visible { color: var(--violet); border-color: rgba(109,60,243,.3); background: var(--violet-soft); outline: none; transform: translateY(-1px); }
.language-toggle-code { display: grid; min-width: 23px; height: 23px; padding: 0 4px; place-items: center; border-radius: 7px; color: white; background: var(--violet); font-family: var(--body); font-size: .67rem; line-height: 1; }
.language-toggle-floating { position: fixed; z-index: 50; top: 18px; right: 18px; box-shadow: var(--shadow); }
html[dir="rtl"] .language-toggle-floating { right: auto; left: 18px; }

.hero { display: grid; grid-template-columns: minmax(0, .92fr) minmax(510px, 1.08fr); gap: 64px; align-items: center; min-height: 665px; padding: 78px 30px 64px; }
.eyebrow { display: flex; align-items: center; gap: 8px; margin: 0; color: var(--ink-soft); font-family: var(--mono); font-size: .67rem; font-weight: 500; letter-spacing: .07em; text-transform: uppercase; }
.eyebrow-dot { width: 8px; height: 8px; border-radius: 50%; background: var(--violet); box-shadow: 0 0 0 4px rgba(109, 60, 243, .12); }
.eyebrow-dot.orange { background: #ff922e; box-shadow: 0 0 0 4px rgba(255, 146, 46, .14); }.eyebrow-dot.blue { background: var(--cobalt); box-shadow: 0 0 0 4px rgba(70, 121, 244, .14); }.eyebrow-dot.pink { background: #e960b7; box-shadow: 0 0 0 4px rgba(233, 96, 183, .14); }.eyebrow-dot.mint { background: #2cbf83; box-shadow: 0 0 0 4px rgba(44, 191, 131, .14); }
.hero h1, .section-heading h2, .feature-copy h2, .tools-heading h2, .everywhere-copy h2, .closing-cta h2 { margin: 16px 0 0; font-family: var(--display); letter-spacing: -.075em; }
.hero h1 { max-width: 8ch; font-size: clamp(3.7rem, 6.2vw, 5.65rem); line-height: .98; }
.hero h1 span { position: relative; display: inline-block; color: var(--violet); }
.hero h1 span::after { content: ""; position: absolute; z-index: -1; right: -4px; bottom: 4px; left: -4px; height: .33em; border-radius: 99px; background: var(--pink); transform: rotate(-1.5deg); }
.hero-description { max-width: 51ch; margin: 25px 0 0; color: var(--ink-soft); font-size: 1rem; line-height: 1.75; }
.hero-actions, .download-actions { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; margin-top: 29px; }
.button { display: inline-flex; align-items: center; justify-content: center; gap: 9px; min-height: 48px; padding: 0 17px; border: 1px solid transparent; border-radius: 9px; font-size: .84rem; font-weight: 800; transition: transform .2s ease, box-shadow .2s ease, background .2s ease; }
.button:hover, .button:focus-visible { transform: translateY(-2px); outline: none; }
.button-primary { color: white; background: var(--violet); box-shadow: 0 9px 18px rgba(109, 60, 243, .22); }.button-primary:hover, .button-primary:focus-visible { background: #5630cf; box-shadow: 0 12px 22px rgba(109, 60, 243, .28); }
.button-quiet { color: var(--ink); border-color: var(--line); background: rgba(255, 255, 255, .55); }.button-quiet:hover, .button-quiet:focus-visible { background: white; }
.platform-note { margin: 17px 0 0; color: var(--ink-soft); font-size: .72rem; }
.hero-store-actions { margin-top: 17px; gap: 9px; }
.hero-store-actions .store-badge { height: 51px; border-radius: 7px; transition: transform .2s ease, filter .2s ease; }
.hero-store-actions .store-badge:hover, .hero-store-actions .store-badge:focus-visible { filter: brightness(1.05); transform: translateY(-2px); outline: none; }
.hero-store-actions .app-store { height: 47px; }

.hero-visual { position: relative; min-height: 510px; isolation: isolate; }
.hero-visual::before { content: ""; position: absolute; z-index: -3; inset: 19px 0 0 14px; border-radius: 50%; background: radial-gradient(circle at 48% 40%, #e7dcff 0, #e7dcff 34%, transparent 65%); }
.orbit { position: absolute; z-index: -2; border: 1px dashed rgba(109, 60, 243, .25); border-radius: 50%; }.orbit-one { width: 490px; height: 490px; top: -11px; left: 18px; }.orbit-two { width: 390px; height: 390px; top: 39px; left: 68px; border-color: rgba(70, 121, 244, .24); }
.spark { position: absolute; z-index: 2; color: var(--orange); font-size: 28px; }.spark-one { top: 39px; right: 21px; }.spark-two { bottom: 40px; left: 4px; color: var(--violet); font-size: 20px; }
.workspace-window { position: absolute; top: 65px; left: 50%; width: min(100%, 570px); height: 380px; overflow: hidden; border: 7px solid white; border-radius: 18px; background: #f9f8ff; box-shadow: 0 30px 68px rgba(47, 29, 104, .19), 0 2px 0 rgba(38, 25, 70, .1); transform: translateX(-50%) rotate(1.7deg); }
.window-sidebar { display: flex; flex-direction: column; align-items: center; gap: 17px; width: 52px; height: 100%; padding: 13px 0; background: #23125e; }.window-brand { width: 29px; height: 29px; padding: 3px; border-radius: 8px; background: rgba(255,255,255,.12); }.window-brand img { width: 100%; height: 100%; object-fit: contain; }.nav-glyph { width: 18px; height: 18px; border: 2px solid #aa96fc; border-radius: 5px; opacity: .72; }.nav-glyph:nth-of-type(3) { border-radius: 50%; }.nav-glyph:nth-of-type(4) { width: 20px; height: 13px; border-radius: 3px; }.nav-glyph.selected { background: #a58dff; border-color: #a58dff; box-shadow: inset 0 -5px 0 #6c47e5; }.nav-glyph.small { width: 15px; height: 15px; }.sidebar-spacer { flex: 1; }
.window-main { position: absolute; inset: 0 0 0 52px; padding: 17px 20px; }.window-topline { display: flex; align-items: center; justify-content: space-between; color: #8c87a1; font-size: 8px; font-weight: 700; }.top-avatar { display: grid; width: 20px; height: 20px; place-items: center; border-radius: 50%; color: white; background: #f09363; font-size: 8px; }.workspace-intro { display: flex; align-items: center; justify-content: space-between; margin: 15px 0 13px; }.workspace-intro p, .workspace-intro h2 { margin: 0; }.workspace-intro p { color: #8f8a9f; font-size: 7px; font-weight: 700; letter-spacing: .8px; }.workspace-intro h2 { margin-top: 4px; font-family: var(--display); font-size: 17px; letter-spacing: -.8px; }.sun-badge { display: grid; width: 30px; height: 30px; place-items: center; border-radius: 10px; background: #fff0d8; font-size: 15px; }
.today-grid, .workspace-bottom { display: grid; grid-template-columns: 1.56fr .85fr; gap: 10px; }.workspace-bottom { margin-top: 10px; grid-template-columns: 1.4fr 1fr; }.today-card, .ai-mini-card { border: 1px solid #e8e3f2; border-radius: 9px; background: white; }.today-card { padding: 12px; }.card-top { display: flex; justify-content: space-between; align-items: center; color: #8e899f; font-size: 7px; font-weight: 800; letter-spacing: .55px; }.live-pill { padding: 4px 5px; border-radius: 99px; color: #1c8760; background: #dff8ed; letter-spacing: 0; }.schedule-card h3 { margin: 7px 0 5px; font-family: var(--display); font-size: 13px; letter-spacing: -.55px; }.schedule-card p { display: flex; gap: 4px; align-items: center; margin: 0; color: #777288; font-size: 7px; }.pin { width: 5px; height: 5px; border-radius: 50%; background: #f59159; }.time-line { display: flex; gap: 6px; align-items: center; margin-top: 12px; color: #5d5870; font-size: 7px; }.time-line span { flex: 1; height: 4px; border-radius: 10px; background: linear-gradient(90deg, #7b52f6 0 55%, #e8e4f2 55%); }.progress-card { display: flex; flex-direction: column; justify-content: space-between; padding: 12px; background: #efe9ff; color: #53349d; font-size: 7px; font-weight: 800; letter-spacing: .55px; }.progress-card strong { color: #361d7b; font-family: var(--display); font-size: 26px; letter-spacing: -1.8px; }.progress-card em { font-family: var(--body); font-size: 7px; font-style: normal; letter-spacing: 0; }.streak-row { display: flex; gap: 2px; }.streak-row i { width: 10px; height: 4px; border-radius: 4px; background: #aa91fd; }.streak-row i:nth-last-child(-n+2) { background: #d6c9ff; }.more { letter-spacing: 0; }.file-line { display: flex; gap: 8px; align-items: center; margin-top: 10px; }.file-icon { display: grid; width: 22px; height: 22px; place-items: center; border-radius: 6px; color: #496dd0; background: #dce8ff; font-size: 14px; }.file-line strong, .file-line small { display: block; }.file-line strong { font-size: 8px; }.file-line small { margin-top: 3px; color: #888397; font-size: 7px; }.mini-progress { height: 3px; margin-top: 10px; border-radius: 9px; background: #ede9f6; }.mini-progress span { display: block; width: 69%; height: 100%; border-radius: inherit; background: #6090ff; }.ai-mini-card { display: flex; align-items: center; gap: 7px; padding: 9px; color: white; background: #2e176e; }.ai-star { color: #ffc46c; font-size: 15px; }.ai-mini-card small, .ai-mini-card strong { display: block; }.ai-mini-card small { color: #d9cbff; font-size: 6px; letter-spacing: .5px; }.ai-mini-card strong { margin-top: 4px; font-size: 8px; line-height: 1.28; }.ai-mini-card button { display: grid; flex: none; width: 19px; height: 19px; margin-left: auto; padding: 0; place-items: center; border: 0; border-radius: 50%; color: #2e176e; background: #ffcc7b; cursor: default; }
.floating-note { position: absolute; z-index: 4; display: flex; align-items: center; gap: 6px; padding: 10px 12px; border: 1px solid rgba(56, 33, 121, .1); border-radius: 11px; background: white; box-shadow: 0 14px 30px rgba(51, 33, 103, .13); color: #453d5f; font-size: 9px; font-weight: 700; }.floating-note span { display: grid; width: 18px; height: 18px; place-items: center; border-radius: 5px; color: #4f2eb5; background: #eee8ff; font-size: 11px; }.note-one { bottom: 8px; right: 14px; transform: rotate(-4deg); }.note-two { top: 43px; left: -10px; color: #267857; }.note-two span { color: #1f9b66; background: #dff8ed; }

.ticker-section { position: relative; left: 50%; width: 100vw; margin-left: -50vw; overflow: hidden; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); background: #fffdf9; }.ticker-track { display: flex; align-items: center; width: max-content; min-height: 64px; direction: ltr; will-change: transform; }.ticker-group { display: flex; flex-shrink: 0; align-items: center; gap: 0; direction: ltr; }.ticker-track span { padding: 0 25px; font-family: var(--display); font-size: 1rem; font-weight: 700; letter-spacing: -.055em; white-space: nowrap; }.ticker-track i { color: #f09d40; font-style: normal; padding: 0 2px; }
.section { padding: 122px 30px; }
.flow-section { padding-bottom: 102px; }.section-heading { max-width: 715px; }.section-heading h2, .feature-copy h2, .tools-heading h2, .everywhere-copy h2 { font-size: clamp(2.4rem, 4.25vw, 4rem); line-height: 1.06; }.section-heading > p:last-child, .feature-copy > p:not(.eyebrow), .everywhere-copy > p:not(.eyebrow) { max-width: 58ch; margin: 20px 0 0; color: var(--ink-soft); line-height: 1.7; }
.flow-steps { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin-top: 52px; }.flow-card { position: relative; min-height: 280px; padding: 26px; overflow: hidden; border: 1px solid var(--line); border-radius: var(--radius); background: var(--paper); }.flow-card:nth-child(2) { transform: translateY(27px); }.flow-card:nth-child(3) { background: #fff8ec; }.step-number { position: absolute; top: 24px; right: 25px; color: #aaa1bf; font-family: var(--mono); font-size: .67rem; }.flow-icon { display: grid; width: 47px; height: 47px; place-items: center; border-radius: 14px; font-family: var(--display); font-size: 22px; }.flow-icon.purple { color: #5f3acf; background: #e9e1ff; }.flow-icon.blue { color: #3962c7; background: #ddecff; }.flow-icon.orange { color: #b96410; background: #ffe0ac; }.flow-card h3 { max-width: 13ch; margin: 47px 0 0; font-family: var(--display); font-size: 1.24rem; letter-spacing: -.06em; line-height: 1.16; }.flow-card p { max-width: 34ch; margin: 12px 0 0; color: var(--ink-soft); font-size: .82rem; line-height: 1.68; }

.feature-showcase { display: grid; grid-template-columns: .86fr 1.14fr; gap: 80px; align-items: center; padding-top: 120px; padding-bottom: 120px; }.feature-copy h2 { max-width: 10ch; }.text-link { display: inline-flex; gap: 7px; margin-top: 28px; padding-bottom: 3px; border-bottom: 1px solid var(--violet); color: var(--violet); font-size: .85rem; font-weight: 800; }.reader-preview { position: relative; max-width: 570px; min-height: 480px; padding: 11px; border: 6px solid #29223a; border-radius: 17px; background: #29223a; box-shadow: var(--shadow); transform: rotate(-1.5deg); }.reader-toolbar { display: flex; align-items: center; justify-content: space-between; height: 31px; padding: 0 8px; border-radius: 6px 6px 0 0; color: #d5d0e3; font-size: 9px; }.reader-toolbar > span { font-size: 20px; }.reader-toolbar b { margin-right: auto; margin-left: 10px; font-size: 8px; }.reader-toolbar div { display: flex; gap: 13px; }.reader-page { position: relative; min-height: 425px; padding: 31px 46px; overflow: hidden; border-radius: 4px; background: #fffefa; color: #3b3748; }.page-label { margin: 0; color: #8e87a2; font-family: var(--mono); font-size: 7px; letter-spacing: .12em; }.reader-page h3 { margin: 18px 0 17px; color: #28223b; font-family: Georgia, serif; font-size: 26px; font-weight: 400; letter-spacing: -.7px; }.reader-page > p:not(.page-label) { max-width: 49ch; font-family: Georgia, serif; font-size: 11px; line-height: 1.75; }.reader-page mark { padding: 2px; background: #ffd978; }.reader-diagram { display: flex; align-items: center; justify-content: center; margin: 28px 0 22px; }.reader-diagram span { display: grid; width: 33px; height: 33px; place-items: center; border: 1px solid #b8a5ea; border-radius: 50%; color: #7050c5; background: #f0ebff; font-family: var(--mono); font-size: 10px; }.reader-diagram i { width: 56px; height: 1px; background: #b9a9e3; }.reader-page .faded-paragraph { color: #918a9f; }.selection-menu { position: absolute; bottom: 40px; left: 44px; display: flex; padding: 4px; border-radius: 7px; background: #28213c; box-shadow: 0 8px 15px rgba(34, 26, 56, .28); }.selection-menu button { padding: 6px 8px; border: 0; border-radius: 4px; color: #e8e4f1; background: transparent; font-size: 7px; cursor: default; }.selection-menu .ask-button { color: #322264; background: #f8c869; font-weight: 800; }

/* Website component system — inspired by shadcn's clear surface, state, and control hierarchy. */
.document-stage { display: grid; grid-template-columns: .82fr 1.18fr; gap: 72px; align-items: center; padding-top: 135px; padding-bottom: 145px; }
.document-stage-copy h2, .ai-panel-copy h2, .study-lock-copy h2, .chat-copy h2 { margin: 16px 0 0; font-family: var(--display); font-size: clamp(2.35rem, 4.1vw, 4rem); line-height: 1.06; letter-spacing: -.075em; }
.document-stage-copy h2 span, .study-lock-copy h2 span { color: var(--violet); }
.document-stage-copy > p:not(.eyebrow), .ai-panel-copy > p:not(.eyebrow), .study-lock-copy > p:not(.eyebrow), .chat-copy > p:not(.eyebrow) { max-width: 52ch; margin: 20px 0 0; color: var(--ink-soft); font-size: .94rem; line-height: 1.75; }
.document-stage-points { display: grid; gap: 9px; margin-top: 26px; color: #5d5576; font-size: .77rem; font-weight: 700; }
.document-stage-points span { display: flex; align-items: center; gap: 9px; }.document-stage-points b { display: grid; width: 23px; height: 23px; place-items: center; border-radius: 7px; color: #6540d5; background: #e8e0ff; font-family: var(--mono); font-size: .57rem; }
.document-shelf { position: relative; min-height: 365px; isolation: isolate; }.document-shelf::before { content: ""; position: absolute; z-index: -2; top: 2px; right: 4%; bottom: 1px; left: 5%; border-radius: 24px; background: linear-gradient(145deg, #ece4ff, #d9e6ff); transform: rotate(2deg); }.shelf-shadow { position: absolute; z-index: -1; right: 12%; bottom: 14px; left: 10%; height: 28px; border-radius: 50%; background: rgba(67, 43, 139, .18); filter: blur(16px); }
.document-card { position: absolute; width: 194px; margin: 0; padding: 9px; border: 1px solid rgba(54, 36, 99, .13); border-radius: 14px; background: rgba(255,255,255,.94); box-shadow: 0 20px 36px rgba(55, 34, 119, .16); transition: transform .32s cubic-bezier(.2,.8,.2,1), box-shadow .32s ease; }.document-card p { margin: 9px 4px 2px; color: #4d4665; font-size: .67rem; font-weight: 800; }.document-card p em { display: block; margin-top: 3px; color: #938aa4; font-size: .59rem; font-style: normal; font-weight: 600; }.document-card:hover { z-index: 4; box-shadow: 0 27px 46px rgba(55, 34, 119, .24); }.document-card-back { top: 47px; left: 2%; transform: rotate(-10deg); }.document-card-back:hover { transform: translateY(-14px) rotate(-7deg); }.document-card-front { z-index: 2; top: 25px; left: 50%; transform: translateX(-50%) rotate(2deg); }.document-card-front:hover { transform: translateX(-50%) translateY(-15px) rotate(0); }.document-card-side { right: 0; bottom: 28px; transform: rotate(10deg); }.document-card-side:hover { transform: translateY(-13px) rotate(6deg); }
.document-card-thumb { position: relative; display: flex; flex-direction: column; height: 214px; overflow: hidden; border-radius: 9px; }.thumb-pdf { padding: 22px; color: #f8f4ff; background: linear-gradient(145deg, #311270, #7a52f3 55%, #c8b8ff); }.thumb-pdf::after { content: ""; position: absolute; width: 150px; height: 150px; right: -49px; bottom: -55px; border: 1px solid rgba(255,255,255,.35); border-radius: 50%; box-shadow: 0 0 0 24px rgba(255,255,255,.09), 0 0 0 51px rgba(255,255,255,.06); }.thumb-pdf > span, .thumb-pdf small { position: relative; z-index: 1; font-family: var(--mono); font-size: .57rem; letter-spacing: .12em; }.thumb-pdf strong { position: relative; z-index: 1; margin-top: auto; font-family: var(--display); font-size: 1.5rem; line-height: .94; letter-spacing: -.09em; }.thumb-pdf small { margin-top: 12px; color: #e4d9ff; }.thumb-pdf i { position: relative; z-index: 1; width: 47%; height: 4px; margin-top: 8px; border-radius: 99px; background: #febd63; }.thumb-notes { padding: 23px 17px; background: #fff9e8; }.thumb-notes span { color: #594f6b; font-family: Georgia, serif; font-size: 1.45rem; font-style: italic; }.thumb-notes i { height: 5px; margin-top: 15px; border-radius: 99px; background: #d7c68f; }.thumb-notes i:nth-of-type(2) { width: 81%; }.thumb-notes i:nth-of-type(3) { width: 55%; }.thumb-photo { display: grid; place-items: center; background: linear-gradient(135deg, #b8d7fa, #f6ddc9 54%, #d3b8f6); }.thumb-photo::before { content: ""; position: absolute; width: 95px; height: 120px; border: 7px solid rgba(255,255,255,.6); border-radius: 7px; transform: rotate(-9deg); }.thumb-photo span { position: relative; z-index: 1; color: white; font-size: 44px; text-shadow: 0 4px 12px rgba(54,36,99,.26); }.document-pop { position: absolute; z-index: 3; right: -49px; bottom: 42px; display: flex; align-items: center; gap: 8px; padding: 8px 9px 8px 12px; border: 1px solid rgba(38,25,70,.11); border-radius: 9px; color: #352557; background: white; box-shadow: 0 13px 24px rgba(59,37,125,.15); font-size: .61rem; font-weight: 800; white-space: nowrap; }.document-pop b { display: grid; width: 18px; height: 18px; place-items: center; border-radius: 5px; color: white; background: var(--violet); }

.ai-workbench { padding-top: 22px; padding-bottom: 120px; }.ai-workbench-panel { display: grid; grid-template-columns: .92fr 1.08fr; gap: 50px; align-items: center; overflow: hidden; padding: 58px 62px; border: 1px solid rgba(74,47,137,.12); border-radius: 27px; color: #f9f7ff; background: radial-gradient(circle at 83% 18%, rgba(169,137,255,.4), transparent 28%), linear-gradient(135deg, #21104e, #3d1b82 53%, #1e1450); box-shadow: 0 22px 50px rgba(46,22,103,.17); }.ai-panel-copy .eyebrow { color: #d9caff; }.ai-panel-copy .eyebrow-dot { background: #ffc47a; box-shadow: 0 0 0 4px rgba(255,196,122,.15); }.ai-panel-copy > p:not(.eyebrow) { color: #d9cfef; }.generation-chips { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 25px; }.generation-chips span { padding: 7px 9px; border: 1px solid rgba(234,226,255,.18); border-radius: 8px; color: #e9e2ff; background: rgba(255,255,255,.08); font-size: .66rem; font-weight: 700; }
.generation-preview { position: relative; padding: 12px; border: 1px solid rgba(255,255,255,.17); border-radius: 17px; background: rgba(255,255,255,.11); box-shadow: 0 20px 45px rgba(14,6,42,.3); backdrop-filter: blur(14px); transform: rotate(1.7deg); }.generation-topbar { display: flex; align-items: center; gap: 9px; padding: 7px 8px 13px; color: #e0d5ff; font-family: var(--mono); font-size: .58rem; letter-spacing: .08em; }.generation-topbar b { margin-left: auto; color: #f8f5ff; font-family: var(--body); font-size: .62rem; letter-spacing: 0; }.generation-queue { display: grid; gap: 7px; }.generation-queue > div { display: flex; align-items: center; gap: 10px; padding: 11px; border: 1px solid rgba(71,46,129,.14); border-radius: 10px; background: #fdfcff; }.queue-icon { display: grid; width: 31px; height: 31px; place-items: center; border-radius: 8px; font-size: .84rem; font-style: normal; }.summary-icon { color: #784be9; background: #ebe1ff; }.flashcard-icon { color: #2e71d2; background: #ddebff; }.quiz-icon { color: #16835c; background: #dff8ed; }.generation-queue span { display: grid; gap: 2px; }.generation-queue strong { color: #322750; font-size: .71rem; }.generation-queue small { color: #877f9b; font-size: .6rem; }.generation-queue em { margin-left: auto; padding: 4px 6px; border-radius: 99px; color: #208159; background: #e1f7eb; font-size: .55rem; font-style: normal; font-weight: 800; }.generation-preview button { display: flex; width: 100%; align-items: center; justify-content: space-between; margin-top: 9px; padding: 11px; border: 0; border-radius: 10px; color: white; background: #6d3cf3; font-family: var(--body); font-size: .67rem; font-weight: 800; }.generation-preview button span { display: grid; width: 20px; height: 20px; place-items: center; border-radius: 6px; color: #4b26ad; background: #ffcc7b; font-size: .87rem; }

.tool-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; padding-top: 102px; }.tools-heading { grid-column: 1 / -1; margin-bottom: 25px; }.tool-card { position: relative; display: flex; min-height: 382px; overflow: hidden; border-radius: var(--radius); }.tool-card-copy { position: relative; z-index: 2; width: min(64%, 340px); padding: 31px; }.tool-card .card-kicker { color: currentColor; font-family: var(--mono); font-size: .64rem; font-weight: 500; letter-spacing: .09em; }.tool-card h3 { margin: 15px 0 0; font-family: var(--display); font-size: clamp(1.45rem, 2.2vw, 2rem); letter-spacing: -.065em; line-height: 1.1; }.tool-card p { margin: 14px 0 0; font-size: .81rem; line-height: 1.62; }.mind-map-card { color: #f9f5ff; background: #29135d; }.mind-map-card .card-kicker { color: #d6c5ff; }.mind-map-card p { color: #d8cdf2; }.quiz-card { color: #1c315a; background: #dbe9ff; }.quiz-card .card-kicker { color: #496ca9; }.quiz-card p { color: #51698e; }.lock-card { grid-column: 1 / -1; color: #263d35; background: #c4f0da; }.lock-card .tool-card-copy { width: min(45%, 420px); }.lock-card .card-kicker { color: #33755a; }.lock-card p { color: #507665; }
.mind-map-art { position: absolute; right: 22px; bottom: 13px; width: 285px; height: 244px; }.central-node, .node { position: absolute; z-index: 2; display: grid; place-items: center; border: 1px solid rgba(239,226,255,.3); border-radius: 99px; background: #4d2b9e; box-shadow: 0 8px 16px rgba(6, 2, 24, .18); }.central-node { top: 101px; left: 102px; width: 79px; height: 42px; color: white; font-family: var(--display); font-size: 11px; }.node { padding: 8px 10px; color: #dfd4ff; font-size: 8px; }.node-one { top: 28px; left: 4px; }.node-two { top: 3px; right: 22px; }.node-three { right: -2px; bottom: 33px; }.mind-map-art i { position: absolute; z-index: 1; height: 1px; background: #a180f4; transform-origin: left center; }.b-one { top: 110px; left: 104px; width: 100px; transform: rotate(-137deg); }.b-two { top: 105px; left: 171px; width: 106px; transform: rotate(-48deg); }.b-three { top: 137px; left: 175px; width: 104px; transform: rotate(31deg); }.quiz-art { position: absolute; right: 29px; bottom: 32px; width: 210px; padding: 17px; border: 1px solid rgba(45,73,130,.16); border-radius: 12px; background: rgba(255,255,255,.78); box-shadow: 0 16px 24px rgba(56,83,137,.13); transform: rotate(3deg); }.quiz-count { display: block; color: #7387ae; font-family: var(--mono); font-size: 7px; }.quiz-art p { margin: 12px 0; color: #263d69; font-family: var(--display); font-size: 11px; font-weight: 700; line-height: 1.4; }.quiz-art div { margin-top: 6px; padding: 7px; border: 1px solid #dce3f2; border-radius: 5px; color: #5c6f96; font-size: 8px; }.quiz-art div b { margin-right: 6px; color: #5573c9; }.correct-choice { position: absolute; right: 11px; bottom: 11px; display: grid; width: 17px; height: 17px; place-items: center; border-radius: 50%; color: white; background: #48ba7e; font-size: 10px; }.lock-art { position: absolute; right: 9%; bottom: -51px; width: 310px; height: 310px; padding: 38px; border: 1px solid rgba(37,90,65,.14); border-radius: 50%; background: rgba(255,255,255,.32); }.focus-ring { display: grid; width: 150px; height: 150px; margin: 0 auto; place-content: center; text-align: center; border: 10px solid rgba(255,255,255,.58); border-top-color: #45bc85; border-radius: 50%; }.focus-ring span { color: #285a47; font-family: var(--display); font-size: 22px; font-weight: 700; letter-spacing: -1px; }.focus-ring small { margin-top: 4px; color: #48836b; font-family: var(--mono); font-size: 6px; letter-spacing: .07em; }.tiny-streak { display: flex; justify-content: center; gap: 6px; margin-top: 25px; }.tiny-streak i { width: 16px; height: 6px; border-radius: 8px; background: #65c89b; }.tiny-streak i:nth-last-child(-n+2) { background: #a0dfbd; }

.study-lock-section { display: grid; grid-template-columns: .86fr 1.14fr; gap: 78px; align-items: center; padding-top: 142px; padding-bottom: 130px; }.lock-feature-list { display: grid; gap: 9px; margin-top: 27px; color: #346956; font-size: .76rem; font-weight: 800; }.lock-feature-list span { display: flex; align-items: center; gap: 8px; }.lock-feature-list span::first-letter { color: #25a36c; }
.study-lock-preview { position: relative; display: grid; min-height: 496px; place-items: center; overflow: hidden; border-radius: 27px; background: radial-gradient(circle at 46% 26%, #dff9eb, transparent 34%), #c5f0d9; }.study-lock-preview::before { content: ""; position: absolute; width: 455px; height: 455px; border: 1px dashed rgba(29,132,89,.27); border-radius: 50%; }.study-lock-preview::after { content: ""; position: absolute; width: 355px; height: 355px; border: 1px solid rgba(32,132,91,.12); border-radius: 50%; }.lock-mobile-shell { position: relative; z-index: 2; width: 245px; min-height: 450px; padding: 13px 13px 17px; overflow: hidden; border: 7px solid #173129; border-radius: 34px; color: #f9fffb; background: linear-gradient(160deg, #2d8b65, #1d5d46 70%, #174434); box-shadow: 0 27px 42px rgba(38,102,72,.27); transform: rotate(5deg); }.lock-mobile-status { display: flex; align-items: center; gap: 5px; color: #daf9e8; font-size: .58rem; font-weight: 800; }.lock-mobile-status span { margin-right: auto; }.lock-mobile-status i { width: 8px; height: 5px; border-radius: 2px; background: currentColor; }.lock-mobile-top { display: flex; align-items: center; margin-top: 24px; }.lock-mark { display: grid; width: 25px; height: 25px; place-items: center; border-radius: 8px; color: #1e6f50; background: #b7f5d3; font-size: .9rem; }.lock-mobile-top small { margin-left: 8px; color: #caf1dc; font-family: var(--mono); font-size: .48rem; letter-spacing: .1em; }.lock-mobile-top button { margin-left: auto; padding: 0; border: 0; color: #d6fae5; background: transparent; }.lock-mobile-copy { margin-top: 29px; }.lock-mobile-copy h3 { margin: 0; font-family: var(--display); font-size: 1.7rem; line-height: .98; letter-spacing: -.08em; }.lock-mobile-copy p { margin: 12px 0 0; color: #cbefdc; font-size: .62rem; line-height: 1.55; }.lock-task { display: flex; align-items: center; gap: 8px; margin-top: 26px; padding: 11px 9px; border: 1px solid rgba(229,255,239,.18); border-radius: 11px; background: rgba(238,255,246,.12); }.lock-task > span { display: grid; width: 21px; height: 21px; place-items: center; border-radius: 7px; color: #277555; background: #d9f9e7; font-family: var(--mono); font-size: .5rem; }.lock-task div { display: grid; gap: 2px; }.lock-task small, .lock-task em { color: #bce5cf; font-family: var(--mono); font-size: .43rem; font-style: normal; letter-spacing: .07em; }.lock-task strong { font-size: .65rem; }.lock-task b { display: grid; width: 22px; height: 22px; margin-left: auto; place-items: center; border-radius: 7px; color: #216348; background: #ffcc7b; }.lock-blocked { margin-top: 19px; padding: 10px 8px; border-radius: 10px; background: rgba(7,52,37,.24); }.lock-blocked small { color: #b8e6cc; font-family: var(--mono); font-size: .43rem; letter-spacing: .08em; }.lock-blocked div { display: flex; gap: 7px; margin-top: 9px; }.lock-blocked span { display: grid; width: 28px; height: 28px; place-items: center; border-radius: 8px; color: #c9f0da; background: rgba(233,255,242,.13); font-size: .7rem; }.lock-blocked span:last-child { font-family: var(--mono); font-size: .5rem; }.lock-unlock-note { position: absolute; z-index: 3; right: 4%; bottom: 65px; display: flex; align-items: center; gap: 8px; padding: 10px; border: 1px solid rgba(30,109,76,.12); border-radius: 11px; color: #295b47; background: rgba(255,255,255,.9); box-shadow: 0 14px 26px rgba(47,108,79,.15); transform: rotate(-3deg); }.lock-unlock-note > span { display: grid; width: 21px; height: 21px; place-items: center; border-radius: 7px; color: white; background: #30ae76; font-size: .7rem; }.lock-unlock-note small, .lock-unlock-note b { display: block; }.lock-unlock-note small { color: #64907c; font-family: var(--mono); font-size: .46rem; letter-spacing: .07em; }.lock-unlock-note b { margin-top: 2px; font-size: .59rem; }

.chat-section { display: grid; grid-template-columns: 1.1fr .9fr; gap: 78px; align-items: center; padding-top: 124px; padding-bottom: 142px; }.chat-preview { max-width: 585px; padding: 11px; border: 6px solid #29223a; border-radius: 18px; background: #29223a; box-shadow: var(--shadow); transform: rotate(1.5deg); }.chat-bar { display: flex; align-items: center; gap: 9px; padding: 6px 5px 13px; color: white; }.chat-orb { display: grid; width: 24px; height: 24px; place-items: center; border-radius: 8px; color: #35175f; background: #ffc56f; font-size: .85rem; }.chat-bar div { display: grid; gap: 1px; }.chat-bar b { font-family: var(--display); font-size: .68rem; }.chat-bar small { color: #bfb5d6; font-size: .55rem; }.chat-bar i { margin-left: auto; color: #bfb5d6; font-size: .7rem; font-style: normal; }.chat-thread { min-height: 294px; padding: 27px 25px; border-radius: 6px; background: #f9f8ff; }.chat-bubble { max-width: 77%; margin: 0; padding: 10px 12px; font-size: .7rem; line-height: 1.55; }.user-bubble { margin-left: auto; border-radius: 10px 10px 2px 10px; color: white; background: #6d3cf3; }.ai-bubble { position: relative; display: grid; grid-template-columns: 17px 1fr; gap: 7px; margin-top: 17px; border: 1px solid #e8e3f2; border-radius: 3px 10px 10px; color: #514a65; background: white; }.ai-bubble > span { display: grid; width: 17px; height: 17px; place-items: center; border-radius: 5px; color: #44218d; background: #eee6ff; font-size: .53rem; }.ai-bubble p { grid-column: 2; margin: -17px 0 0; }.chat-source { grid-column: 2; display: flex; align-items: center; gap: 5px; margin-top: 2px; padding: 6px; border-radius: 5px; color: #726a85; background: #f2eff9; font-size: .52rem; }.chat-source i { padding: 3px 4px; border-radius: 3px; color: #4b26ae; background: #ddd0ff; font-family: var(--mono); font-size: .43rem; font-style: normal; }.chat-source b { margin-left: auto; color: #6640dc; }.chat-composer { display: flex; align-items: center; gap: 7px; margin-top: 10px; padding: 9px 10px 9px 13px; border: 1px solid #e4deef; border-radius: 9px; color: #aaa2b7; background: white; font-size: .62rem; }.chat-composer b { display: grid; width: 22px; height: 22px; margin-left: auto; place-items: center; border-radius: 6px; color: #fff; background: #6d3cf3; font-size: .75rem; }

.everywhere-section { display: grid; grid-template-columns: 1fr .92fr; gap: 72px; align-items: center; padding-top: 150px; padding-bottom: 135px; }.everywhere-visual { position: relative; min-height: 370px; border-radius: var(--radius); background: #f1e9ff; }.device { position: absolute; background: #2b1f49; box-shadow: 0 23px 42px rgba(49,25,112,.2); }.laptop { bottom: 22px; left: 30px; width: 392px; height: 260px; padding: 8px; border-radius: 13px 13px 4px 4px; transform: rotate(-4deg); }.laptop-screen { display: grid; grid-template-columns: 38px 1fr; height: 100%; overflow: hidden; border-radius: 7px; background: #faf9ff; }.laptop-sidebar { background: #2a1766; }.laptop-content { padding: 25px 16px; color: #2d2450; font-family: var(--display); font-size: 13px; }.laptop-columns { display: grid; grid-template-columns: 1.4fr 1fr; gap: 8px; margin-top: 21px; }.laptop-columns span { height: 126px; border-radius: 6px; background: #ebe5fb; }.laptop-columns span:first-child { background: linear-gradient(#eeeaff 26%, #d8e6ff 26% 54%, #f5e5ff 54%); }.laptop-columns span:last-child { grid-column: 2; background: #dcf4e7; }.laptop-base { position: absolute; right: -20px; bottom: -9px; left: -20px; height: 13px; border-radius: 3px 3px 10px 10px; background: #4b3c73; }.phone { right: 35px; bottom: 12px; width: 163px; height: 318px; padding: 8px; border-radius: 27px; background: #171328; transform: rotate(8deg); }.phone-screen { position: relative; height: 100%; padding: 35px 14px 12px; overflow: hidden; border-radius: 20px; background: #f8f5ff; }.phone-island { position: absolute; top: 8px; left: 50%; width: 54px; height: 14px; border-radius: 99px; background: #19152a; transform: translateX(-50%); }.phone-screen > small { color: #948ca8; font-family: var(--mono); font-size: 6px; }.phone-screen > b { display: block; margin-top: 8px; color: #2c214a; font-family: var(--display); font-size: 15px; letter-spacing: -.8px; line-height: 1.05; }.phone-class { margin-top: 25px; padding: 12px 9px; border-radius: 8px; color: white; background: #6d3cf3; }.phone-class small, .phone-class strong, .phone-class span { display: block; }.phone-class small { color: #d7cbff; font-family: var(--mono); font-size: 5px; }.phone-class strong { margin-top: 7px; font-family: var(--display); font-size: 8px; }.phone-class span { margin-top: 4px; color: #dcd4fd; font-size: 6px; }.phone-tabs { position: absolute; right: 17px; bottom: 16px; left: 17px; display: flex; justify-content: space-around; }.phone-tabs i { width: 12px; height: 4px; border-radius: 8px; background: #c8bfdd; }.phone-tabs i:first-child { background: #7046ed; }.everywhere-copy h2 { max-width: 10ch; }.store-actions { display: flex; flex-wrap: wrap; gap: 7px; align-items: center; }.store-badge { display: inline-flex; height: 41px; overflow: hidden; align-items: center; }.store-badge img { width: auto; height: 100%; }.app-store { height: 37px; }

.pricing-section { padding-top: 130px; padding-bottom: 135px; }.pricing-heading { max-width: 680px; }.pricing-heading h2 { margin: 16px 0 0; font-family: var(--display); font-size: clamp(2.5rem, 4.4vw, 4.1rem); line-height: 1.04; letter-spacing: -.075em; }.pricing-heading h2 span { color: var(--violet); }.pricing-heading > p:not(.eyebrow) { max-width: 55ch; margin: 20px 0 0; color: var(--ink-soft); line-height: 1.7; }.pricing-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 15px; align-items: stretch; margin-top: 48px; }.price-card { position: relative; display: flex; min-height: 445px; flex-direction: column; padding: 27px; overflow: hidden; border: 1px solid var(--line); border-radius: 21px; background: var(--paper); box-shadow: 0 12px 32px rgba(53,31,111,.05); }.price-card-top { display: flex; align-items: center; justify-content: space-between; }.price-kicker { color: #8e85a4; font-family: var(--mono); font-size: .59rem; font-weight: 600; letter-spacing: .08em; }.price-icon { display: grid; width: 30px; height: 30px; place-items: center; border-radius: 9px; color: #6942d8; background: #eee7ff; }.price-card h3 { margin: 22px 0 0; font-family: var(--display); font-size: 1.7rem; letter-spacing: -.065em; }.price-description { min-height: 53px; margin: 11px 0 0; color: var(--ink-soft); font-size: .76rem; line-height: 1.6; }.price-value { display: flex; align-items: baseline; gap: 7px; margin-top: 23px; }.price-value strong { font-family: var(--display); font-size: 2.2rem; letter-spacing: -.075em; }.price-value span { color: #8e85a4; font-size: .67rem; }.price-button { display: flex; align-items: center; justify-content: space-between; min-height: 43px; margin-top: 21px; padding: 0 13px; border: 1px solid var(--line); border-radius: 9px; font-size: .73rem; font-weight: 800; transition: transform .2s ease, background .2s ease, box-shadow .2s ease; }.price-button:hover, .price-button:focus-visible { transform: translateY(-2px); outline: none; }.price-button span { font-size: 1rem; }.price-button-quiet { color: var(--ink); background: rgba(255,255,255,.7); }.price-button-quiet:hover, .price-button-quiet:focus-visible { border-color: var(--violet); color: var(--violet); background: #faf8ff; }.price-button-primary { border-color: var(--violet); color: white; background: var(--violet); box-shadow: 0 9px 18px rgba(109,60,243,.2); }.price-button-primary:hover, .price-button-primary:focus-visible { background: #5630cf; box-shadow: 0 13px 23px rgba(109,60,243,.27); }.price-card ul { display: grid; gap: 9px; margin: 25px 0 0; padding: 0; list-style: none; color: #5e5878; font-size: .71rem; line-height: 1.4; }.price-card li { display: flex; gap: 7px; align-items: baseline; }.price-card li::before { content: "✓"; color: #2ca975; font-weight: 900; }.early-price-card { border: 2px solid var(--violet); background: linear-gradient(155deg, #fff, #f6f0ff); box-shadow: 0 22px 46px rgba(89,51,175,.16); }.early-price-card .price-icon { color: #5930bf; background: #dfd1ff; }.early-bird-ribbon { position: absolute; top: 0; right: 21px; left: 21px; padding: 7px 8px; border-radius: 0 0 8px 8px; color: #48239b; background: #ffc76e; font-family: var(--mono); font-size: .51rem; font-weight: 700; letter-spacing: .06em; text-align: center; }.early-price-card .price-card-top { margin-top: 24px; }.price-saving { margin: 8px 0 0; color: #6e5a9d; font-size: .65rem; }.price-saving b { color: var(--violet); }.pricing-footnote { margin: 22px 0 0; color: #8a829d; font-family: var(--mono); font-size: .59rem; line-height: 1.6; }

.closing-cta { position: relative; overflow: hidden; display: flex; flex-direction: column; align-items: center; padding: 64px 25px 72px; border-radius: 26px; color: white; text-align: center; background: #2b155f; }.closing-cta::before, .closing-cta::after { content: ""; position: absolute; z-index: 0; border: 1px solid rgba(204,184,255,.25); border-radius: 50%; }.closing-cta::before { width: 780px; height: 780px; top: -570px; }.closing-cta::after { width: 560px; height: 560px; bottom: -470px; right: -150px; }.closing-cta > * { position: relative; z-index: 1; }.closing-cta img { width: 72px; height: 72px; margin-bottom: 22px; object-fit: contain; filter: drop-shadow(0 8px 14px rgba(0,0,0,.24)); }.closing-cta .eyebrow { color: #d8c9fb; }.closing-cta h2 { margin-top: 15px; font-size: clamp(2.55rem, 5.5vw, 4.9rem); line-height: 1; }.closing-cta h2 span { color: #ffc767; }.button-light { margin-top: 28px; color: #2b155f; background: white; }.button-light:hover, .button-light:focus-visible { background: #ffc767; }
.site-footer { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 16px 22px; padding: 42px 0 48px; color: #756d89; font-size: .71rem; }.site-footer > p { margin: 0; }.site-footer nav { display: flex; justify-content: flex-end; gap: 17px; }.site-footer nav a:hover, .site-footer nav a:focus-visible { color: var(--violet); outline: none; }.footer-brand { font-size: 1rem; }.footer-brand img { width: 26px; height: 26px; }.social-links { display: flex; grid-column: 1 / -1; flex-wrap: wrap; gap: 7px; padding-top: 16px; border-top: 1px solid var(--line); }.social-links a { display: inline-flex; align-items: center; gap: 5px; padding: 7px 9px; border: 1px solid var(--line); border-radius: 8px; color: var(--ink-soft); background: rgba(255,255,255,.5); font-size: .64rem; font-weight: 800; transition: color .2s ease, border-color .2s ease, transform .2s ease, background .2s ease; }.social-links a span { color: #958ca7; font-family: var(--mono); font-size: .52rem; font-weight: 500; }.social-links a:hover, .social-links a:focus-visible { border-color: rgba(109,60,243,.35); color: var(--violet); background: #faf8ff; outline: none; transform: translateY(-2px); }
.reveal { opacity: 0; transform: translateY(16px); transition: opacity .65s ease, transform .65s ease; }.reveal.is-visible { opacity: 1; transform: translateY(0); }

/* RTL-safe full-bleed ticker and aligned pricing cards. */
.ticker-section { left: auto; width: auto; margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw); }
.pricing-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.price-card { min-height: 505px; }
.price-card-top { margin-top: 24px; }
.price-card h3 { min-height: 38px; }
.price-description { min-height: 77px; }
.price-value { min-height: 42px; }
.price-saving { min-height: 20px; }
.price-saving-empty { visibility: hidden; }
.price-card ul { min-height: 125px; }
.social-links { justify-content: flex-start; gap: 9px; }
.social-links a { min-height: 36px; padding: 7px 11px; }
.social-icon { width: 17px; height: 17px; flex: none; }
.social-name { color: var(--ink); }
@media (min-width: 981px) and (max-width: 1200px) {
  .pricing-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 980px) {
  .price-card { min-height: auto; }
  .price-card-top { margin-top: 0; }
}

@media (max-width: 980px) {
  .site-header { grid-template-columns: 1fr auto auto auto; }
  .site-nav { position: absolute; top: calc(100% + 8px); right: 0; left: 0; display: none; padding: 8px; border: 1px solid var(--line); border-radius: 14px; background: rgba(255,254,254,.97); box-shadow: var(--shadow); }
  .site-nav.is-open { display: flex; flex-direction: column; align-items: stretch; }
  .site-nav a { padding: 12px; }
  .menu-toggle { display: grid; width: 37px; height: 37px; margin-left: auto; padding: 9px; gap: 5px; border: 1px solid var(--line); border-radius: 8px; background: white; }
  .menu-toggle span:not(.sr-only) { display: block; height: 2px; background: var(--ink); }
  html[dir="rtl"] .menu-toggle { margin-right: auto; margin-left: 0; }
}

@media (max-width: 980px) { .site-shell { width: min(100% - 30px, 720px); }.site-header { grid-template-columns: 1fr auto; }.site-nav { position: absolute; top: calc(100% + 8px); right: 0; left: 0; display: none; padding: 8px; border: 1px solid var(--line); border-radius: 14px; background: rgba(255,254,254,.97); box-shadow: var(--shadow); }.site-nav.is-open { display: flex; flex-direction: column; align-items: stretch; }.site-nav a { padding: 12px; }.menu-toggle { display: grid; width: 37px; height: 37px; margin-left: auto; padding: 9px; gap: 5px; border: 1px solid var(--line); border-radius: 8px; background: white; }.menu-toggle span:not(.sr-only) { display: block; height: 2px; background: var(--ink); }.header-cta { display: none; }.hero { grid-template-columns: 1fr; gap: 32px; min-height: auto; padding: 77px 10px 60px; }.hero-copy { text-align: center; }.hero h1 { max-width: none; }.hero-description { margin-right: auto; margin-left: auto; }.hero-actions, .hero-store-actions { justify-content: center; }.hero-visual { width: min(100%, 590px); margin: 0 auto; }.flow-steps { grid-template-columns: 1fr; }.flow-card:nth-child(2) { transform: none; }.flow-card { min-height: auto; }.feature-showcase, .everywhere-section { grid-template-columns: 1fr; gap: 52px; }.feature-copy { max-width: 650px; }.reader-preview { margin: 0 auto; }.tool-grid { grid-template-columns: 1fr; }.lock-card { grid-column: auto; }.site-footer { grid-template-columns: 1fr; text-align: center; }.footer-brand, .site-footer nav { justify-self: center; }.site-footer nav { justify-content: center; } }
@media (max-width: 980px) { .document-stage, .study-lock-section, .chat-section { grid-template-columns: 1fr; gap: 47px; }.document-stage-copy, .document-shelf, .study-lock-copy, .study-lock-preview, .chat-copy, .chat-preview { grid-column: auto; grid-row: auto; }.document-shelf, .study-lock-preview, .chat-preview { margin-right: auto; margin-left: auto; }.ai-workbench-panel { grid-template-columns: 1fr; gap: 38px; padding: 48px 40px; }.document-stage { padding-top: 100px; padding-bottom: 108px; }.study-lock-section, .chat-section { padding-top: 105px; padding-bottom: 105px; } html[dir="rtl"] .hero { grid-template-columns: 1fr; } html[dir="rtl"] .hero-copy, html[dir="rtl"] .hero-visual { grid-column: auto; grid-row: auto; } html[dir="rtl"] .hero-copy { text-align: center; } html[dir="rtl"] .hero-description { margin-right: auto; } html[dir="rtl"] .hero-actions, html[dir="rtl"] .download-actions, html[dir="rtl"] .hero-store-actions { justify-content: center; } html[dir="rtl"] .document-stage, html[dir="rtl"] .study-lock-section, html[dir="rtl"] .chat-section { grid-template-columns: 1fr; } }
@media (max-width: 980px) { .pricing-section { padding-top: 100px; padding-bottom: 105px; }.pricing-grid { grid-template-columns: 1fr; max-width: 560px; margin-right: auto; margin-left: auto; }.price-card { min-height: auto; }.pricing-heading { max-width: 650px; }.pricing-footnote { max-width: 560px; margin-right: auto; margin-left: auto; } }
@media (min-width: 981px) { html[dir="rtl"] .tool-grid { grid-template-columns: 1fr 1fr; } html[dir="rtl"] .tool-grid .lock-card { grid-column: 1 / -1; } }
@media (max-width: 600px) { .site-shell { width: min(100% - 24px, 470px); }.site-header { min-height: 59px; margin-top: 10px; padding: 8px 10px 8px 13px; }.hero { padding-top: 56px; }.hero h1 { font-size: clamp(3rem, 15vw, 4.3rem); }.hero-visual { min-height: 351px; }.workspace-window { top: 43px; width: 94%; height: 267px; border-width: 5px; border-radius: 12px; }.window-sidebar { width: 36px; gap: 11px; padding-top: 9px; }.window-brand { width: 22px; height: 22px; padding: 2px; }.nav-glyph { width: 12px; height: 12px; border-width: 1px; border-radius: 3px; }.nav-glyph:nth-of-type(4) { width: 14px; height: 9px; }.window-main { left: 36px; padding: 11px 12px; }.window-topline { font-size: 6px; }.top-avatar { width: 15px; height: 15px; font-size: 6px; }.workspace-intro { margin: 9px 0; }.workspace-intro p { font-size: 5px; }.workspace-intro h2 { font-size: 12px; }.sun-badge { width: 22px; height: 22px; font-size: 11px; }.today-grid, .workspace-bottom { gap: 6px; }.today-card { padding: 7px; }.card-top { font-size: 4.8px; }.live-pill { padding: 2px; }.schedule-card h3 { margin: 5px 0 3px; font-size: 9px; }.schedule-card p, .time-line { font-size: 5px; }.time-line { margin-top: 8px; }.progress-card { padding: 7px; font-size: 5px; }.progress-card strong { font-size: 19px; }.progress-card em { font-size: 5px; }.streak-row i { width: 6px; height: 3px; }.file-line { gap: 4px; margin-top: 6px; }.file-icon { width: 15px; height: 15px; font-size: 10px; }.file-line strong { font-size: 5.5px; }.file-line small { margin-top: 1px; font-size: 5px; }.mini-progress { margin-top: 6px; }.ai-mini-card { gap: 4px; padding: 5px; }.ai-star { font-size: 10px; }.ai-mini-card small { font-size: 4px; }.ai-mini-card strong { margin-top: 2px; font-size: 5px; }.ai-mini-card button { width: 12px; height: 12px; font-size: 8px; }.floating-note { padding: 7px 8px; border-radius: 8px; font-size: 7px; }.floating-note span { width: 13px; height: 13px; font-size: 8px; }.note-one { right: 1px; bottom: 4px; }.note-two { left: -4px; top: 29px; }.orbit-one { width: 340px; height: 340px; top: -2px; left: 50%; transform: translateX(-50%); }.orbit-two { width: 270px; height: 270px; top: 32px; left: 50%; transform: translateX(-50%); }.spark-one { right: 0; font-size: 18px; }.ticker-track { min-height: 52px; }.ticker-track span { padding: 0 18px; font-size: .84rem; }.section { padding: 82px 4px; }.section-heading h2, .feature-copy h2, .tools-heading h2, .everywhere-copy h2 { font-size: 2.45rem; }.flow-steps { margin-top: 35px; }.flow-card { padding: 23px; }.feature-showcase { gap: 37px; }.reader-preview { min-height: 390px; border-width: 4px; }.reader-page { min-height: 340px; padding: 23px 22px; }.reader-page h3 { margin: 13px 0; font-size: 22px; }.reader-page > p:not(.page-label) { font-size: 9px; }.reader-diagram { margin: 20px 0; }.selection-menu { bottom: 25px; left: 18px; }.selection-menu button { padding: 5px 4px; font-size: 5.5px; }.tool-grid { padding-top: 76px; }.tool-card { min-height: 350px; }.tool-card-copy { width: 68%; padding: 24px; }.lock-card .tool-card-copy { width: 64%; }.tool-card h3 { font-size: 1.5rem; }.mind-map-art { right: -43px; bottom: -2px; transform: scale(.82); transform-origin: bottom right; }.quiz-art { right: -11px; bottom: 21px; transform: rotate(3deg) scale(.83); transform-origin: bottom right; }.lock-art { right: -74px; bottom: -62px; transform: scale(.78); }.everywhere-section { gap: 35px; padding-top: 88px; }.everywhere-visual { min-height: 300px; }.laptop { bottom: 28px; left: 9px; width: 287px; height: 190px; }.phone { right: 15px; bottom: 13px; transform: rotate(7deg) scale(.77); transform-origin: bottom right; }.site-footer { padding-top: 33px; }.site-footer nav { flex-wrap: wrap; }.reveal { opacity: 1; transform: none; } }
@media (max-width: 600px) { .document-stage, .study-lock-section, .chat-section { gap: 34px; padding-top: 82px; padding-bottom: 82px; }.document-stage-copy h2, .ai-panel-copy h2, .study-lock-copy h2, .chat-copy h2 { font-size: 2.45rem; }.document-shelf { width: 100%; min-height: 318px; }.document-card { width: 156px; padding: 7px; border-radius: 11px; }.document-card-back { top: 49px; left: -9px; }.document-card-side { right: -10px; bottom: 31px; }.document-card-thumb { height: 171px; }.thumb-pdf { padding: 17px; }.thumb-pdf strong { font-size: 1.2rem; }.document-pop { right: -10px; bottom: 5px; font-size: .54rem; }.ai-workbench { padding-top: 5px; padding-bottom: 82px; }.ai-workbench-panel { gap: 27px; padding: 35px 23px; border-radius: 20px; }.generation-preview { transform: none; }.generation-topbar { gap: 5px; font-size: .48rem; }.generation-topbar b { font-size: .55rem; }.study-lock-preview { min-height: 445px; border-radius: 20px; }.lock-mobile-shell { transform: rotate(3deg) scale(.9); }.lock-unlock-note { right: -4px; bottom: 39px; }.chat-preview { width: 100%; border-width: 4px; transform: none; }.chat-thread { min-height: 270px; padding: 21px 15px; }.chat-bubble { max-width: 88%; }.chat-copy .text-link { margin-top: 23px; } html[dir="rtl"] .document-stage-copy, html[dir="rtl"] .study-lock-copy, html[dir="rtl"] .chat-copy { text-align: right; } }
@media (max-width: 600px) { .pricing-section { padding-top: 82px; padding-bottom: 82px; }.pricing-heading h2 { font-size: 2.45rem; }.pricing-grid { gap: 12px; margin-top: 32px; }.price-card { padding: 23px; border-radius: 17px; }.price-card h3 { font-size: 1.55rem; }.price-value strong { font-size: 2rem; }.early-bird-ribbon { right: 16px; left: 16px; font-size: .45rem; } }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; }.ticker-track { animation: none; }.reveal { opacity: 1; transform: none; transition: none; } * { transition-duration: .01ms !important; } }

/* Keep Arabic copy RTL while preserving the same visual order as English. */
html[dir="rtl"] .pricing-grid { direction: ltr; }
html[dir="rtl"] .pricing-grid .price-card { direction: rtl; text-align: right; }
html[dir="rtl"] .site-footer { direction: ltr; }
html[dir="rtl"] .site-footer > p { direction: rtl; text-align: left; }
html[dir="rtl"] .site-footer nav { direction: ltr; }
html[dir="rtl"] .site-footer nav a { direction: rtl; }
html[dir="rtl"] .social-links { direction: ltr; }
html[dir="rtl"] .social-links a { direction: ltr; }
html[dir="rtl"] .site-header { direction: ltr; }
html[dir="rtl"] .site-header .brand,
html[dir="rtl"] .site-header .site-nav,
html[dir="rtl"] .site-header .site-nav a,
html[dir="rtl"] .site-header .header-cta,
html[dir="rtl"] .site-header .language-toggle { direction: rtl; }
html[dir="rtl"] .site-header .site-nav { direction: ltr; }
html[dir="rtl"] .header-cta { justify-self: end; }
html[dir="rtl"] .site-nav a { text-align: right; }
html[dir="rtl"] .ticker-section { display: none; }
@media (max-width: 980px) {
  html[dir="rtl"] .menu-toggle { margin-right: 0; margin-left: auto; }
}

/* Final mobile RTL reset: desktop mirroring rules must not force columns on
   narrow phones. Keep copy RTL while stacking every visual section. */
@media (max-width: 980px) {
  html[dir="rtl"] body { overflow-x: hidden; }
  html[dir="rtl"] .hero,
  html[dir="rtl"] .feature-showcase,
  html[dir="rtl"] .everywhere-section,
  html[dir="rtl"] .document-stage,
  html[dir="rtl"] .study-lock-section,
  html[dir="rtl"] .chat-section { grid-template-columns: 1fr !important; }
  html[dir="rtl"] .hero-copy,
  html[dir="rtl"] .hero-visual,
  html[dir="rtl"] .document-stage-copy,
  html[dir="rtl"] .document-shelf,
  html[dir="rtl"] .study-lock-copy,
  html[dir="rtl"] .study-lock-preview,
  html[dir="rtl"] .chat-copy,
  html[dir="rtl"] .chat-preview { grid-column: auto !important; grid-row: auto !important; }
  html[dir="rtl"] .hero-copy { text-align: center; }
  html[dir="rtl"] .hero-description { margin-right: auto; margin-left: auto; }
  html[dir="rtl"] .hero-actions,
  html[dir="rtl"] .download-actions,
  html[dir="rtl"] .hero-store-actions { justify-content: center; }
  html[dir="rtl"] .document-stage-copy,
  html[dir="rtl"] .study-lock-copy,
  html[dir="rtl"] .chat-copy { text-align: right; }
  html[dir="rtl"] .document-shelf,
  html[dir="rtl"] .study-lock-preview,
  html[dir="rtl"] .chat-preview { direction: ltr; margin-right: auto; margin-left: auto; }
}

@media (max-width: 600px) {
  html[dir="rtl"] .site-shell { width: min(100% - 24px, 470px); }
  html[dir="rtl"] .hero { padding-right: 10px; padding-left: 10px; }
  html[dir="rtl"] .hero h1 { max-width: none; }
  html[dir="rtl"] .tool-grid { grid-template-columns: 1fr !important; }
  html[dir="rtl"] .pricing-grid { grid-template-columns: 1fr !important; }
  html[dir="rtl"] .footer-main { grid-template-columns: 1fr 1fr !important; }
}

/* Keep the chat conversation inside its frame as copy wraps. */
.chat-thread { overflow: hidden; }
.chat-bubble { overflow-wrap: anywhere; }
.ai-bubble { align-items: start; }
.ai-bubble p { margin: 0; }

/* Footer redesign: a branded, grouped surface with a quiet legal bar. */
.site-footer { display: block; padding: 54px 0 28px; border-top: 1px solid var(--line); color: var(--ink-soft); }
.footer-main { display: grid; grid-template-columns: 1.35fr .7fr .8fr 1.65fr; gap: 34px; align-items: start; }
.footer-brand-block { display: grid; gap: 11px; }
.footer-brand { font-size: 1.2rem; }
.footer-brand img { width: 34px; height: 34px; }
.footer-tagline { margin: 0; max-width: 22ch; color: var(--ink-soft); font-size: .76rem; line-height: 1.6; }
.footer-store-links { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 5px; }
.footer-store-links a { display: block; height: 35px; overflow: hidden; border-radius: 6px; transition: transform .2s ease, filter .2s ease; }
.footer-store-links a:hover, .footer-store-links a:focus-visible { transform: translateY(-2px); filter: brightness(1.05); outline: none; }
.footer-store-links img { width: auto; height: 100%; }
.footer-column { display: grid; gap: 13px; }
.footer-column h3 { margin: 2px 0 0; color: var(--ink); font-family: var(--mono); font-size: .61rem; letter-spacing: .08em; text-transform: uppercase; }
.footer-links { display: grid; justify-content: start; gap: 9px; }
.footer-links a { color: var(--ink-soft); font-size: .72rem; font-weight: 700; transition: color .2s ease, transform .2s ease; }
.footer-links a:hover, .footer-links a:focus-visible { color: var(--violet); transform: translateX(2px); outline: none; }
.footer-social-column .social-links { display: flex; grid-column: auto; gap: 7px; padding: 0; border: 0; }
.footer-social-column .social-links a { min-height: 32px; padding: 6px 8px; }
.footer-social-column .social-links a span:last-child { display: none; }
.footer-bottom { display: flex; justify-content: space-between; gap: 18px; margin-top: 42px; padding-top: 20px; border-top: 1px solid var(--line); color: #8a829d; font-family: var(--mono); font-size: .58rem; }
.footer-bottom p, .footer-bottom span { margin: 0; }
html[dir="rtl"] .footer-main, html[dir="rtl"] .footer-bottom { direction: ltr; }
html[dir="rtl"] .footer-main > *, html[dir="rtl"] .footer-bottom > * { direction: rtl; text-align: right; }
html[dir="rtl"] .footer-social-column .social-links { direction: ltr; }
@media (max-width: 900px) { .footer-main { grid-template-columns: 1fr 1fr; } .footer-brand-block { grid-column: 1 / -1; } }
@media (max-width: 600px) { .site-footer { padding-top: 42px; } .footer-main { grid-template-columns: 1fr 1fr; gap: 28px 20px; } .footer-social-column { grid-column: 1 / -1; } .footer-bottom { display: grid; gap: 8px; margin-top: 30px; } }

.preferred-source-prompt { display: grid; gap: 7px; width: min(100%, 280px); max-width: 280px; margin-top: 19px; overflow: visible; }
.preferred-source-header { display: flex; min-width: 0; align-items: center; justify-self: center; }
.preferred-source-header [google-add-preferred-source-btn] { display: flex; min-height: 40px; }
.preferred-source-label { margin: 0; color: var(--ink); font-family: var(--mono); font-size: .61rem; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.preferred-source-copy { margin: 0; color: var(--ink-soft); font-size: .69rem; line-height: 1.55; }
.preferred-source-prompt [google-add-preferred-source-btn] { min-height: 40px; margin-top: 2px; }
.blog-footer .preferred-source-prompt { grid-column: 1 / -1; justify-self: start; }
.article-page > .preferred-source-prompt { max-width: 280px; margin-top: 42px; padding-top: 24px; border-top: 1px solid var(--line); }
html[dir="rtl"] .preferred-source-prompt { text-align: right; }
html[dir="rtl"] .blog-footer .preferred-source-prompt { justify-self: end; }
@media (max-width: 900px) { .preferred-source-prompt { margin-right: auto; margin-left: auto; } }
@media (max-width: 600px) { .preferred-source-prompt { max-width: 280px; text-align: center; } .blog-footer .preferred-source-prompt, html[dir="rtl"] .blog-footer .preferred-source-prompt { justify-self: center; } html[dir="rtl"] .preferred-source-prompt { text-align: center; } }
/* One-shot product motion: every sequence settles into a stable end state. */
.js .site-header { opacity: 0; transform: translateY(-12px); }
.is-ready .site-header { animation: nav-arrive .6s cubic-bezier(.2,.75,.25,1) 1 both; }
.hero-visual.reveal.is-visible .workspace-window { animation: workspace-arrive .9s cubic-bezier(.18,.85,.3,1.08) .12s 1 both; }
.hero-visual.reveal.is-visible .note-one { animation: note-arrive-right .65s cubic-bezier(.18,.85,.3,1.18) .82s 1 both; }
.hero-visual.reveal.is-visible .note-two { animation: note-arrive-left .65s cubic-bezier(.18,.85,.3,1.18) .62s 1 both; }
.hero-visual.reveal.is-visible .spark-one { animation: sparkle-in .55s ease-out .95s 1 both; }
.hero-visual.reveal.is-visible .spark-two { animation: sparkle-in .55s ease-out 1.08s 1 both; }
.hero-visual.reveal.is-visible .mini-progress span { animation: progress-fill .85s cubic-bezier(.2,.75,.3,1) 1.08s 1 both; transform-origin: left; }
.hero-visual.reveal.is-visible .streak-row i { animation: streak-pop .4s cubic-bezier(.2,.8,.25,1.25) 1 both; }
.hero-visual.reveal.is-visible .streak-row i:nth-child(1) { animation-delay: .76s; }.hero-visual.reveal.is-visible .streak-row i:nth-child(2) { animation-delay: .82s; }.hero-visual.reveal.is-visible .streak-row i:nth-child(3) { animation-delay: .88s; }.hero-visual.reveal.is-visible .streak-row i:nth-child(4) { animation-delay: .94s; }.hero-visual.reveal.is-visible .streak-row i:nth-child(5) { animation-delay: 1s; }.hero-visual.reveal.is-visible .streak-row i:nth-child(6) { animation-delay: 1.06s; }.hero-visual.reveal.is-visible .streak-row i:nth-child(7) { animation-delay: 1.12s; }
.flow-card.reveal.is-visible .flow-icon { animation: icon-settle .65s cubic-bezier(.16,.82,.2,1.14) .16s 1 both; }
.reader-preview.reveal.is-visible .selection-menu { animation: selection-arrive .55s cubic-bezier(.18,.85,.25,1.15) .58s 1 both; }
.document-shelf.reveal.is-visible .document-card-back { animation: document-back-arrive .62s cubic-bezier(.16,.82,.2,1.13) .08s 1 both; }
.document-shelf.reveal.is-visible .document-card-front { animation: document-front-arrive .76s cubic-bezier(.16,.84,.2,1.12) .22s 1 both; }
.document-shelf.reveal.is-visible .document-card-side { animation: document-side-arrive .62s cubic-bezier(.16,.82,.2,1.13) .42s 1 both; }
.document-shelf.reveal.is-visible .document-pop { animation: document-pop-arrive .5s cubic-bezier(.16,.84,.2,1.18) .82s 1 both; }
.ai-workbench-panel.reveal.is-visible .generation-preview { animation: generation-arrive .72s cubic-bezier(.18,.84,.2,1.08) .14s 1 both; }
.ai-workbench-panel.reveal.is-visible .generation-queue > div { animation: queue-arrive .42s cubic-bezier(.18,.84,.2,1.1) 1 both; }.ai-workbench-panel.reveal.is-visible .generation-queue > div:nth-child(1) { animation-delay: .46s; }.ai-workbench-panel.reveal.is-visible .generation-queue > div:nth-child(2) { animation-delay: .56s; }.ai-workbench-panel.reveal.is-visible .generation-queue > div:nth-child(3) { animation-delay: .66s; }
.study-lock-preview.reveal.is-visible .lock-mobile-shell { animation: lock-phone-arrive .8s cubic-bezier(.16,.84,.2,1.1) .16s 1 both; }.study-lock-preview.reveal.is-visible .lock-unlock-note { animation: unlock-note-arrive .48s cubic-bezier(.16,.84,.2,1.16) .86s 1 both; }
.chat-preview.reveal.is-visible .user-bubble { animation: chat-right-arrive .42s cubic-bezier(.18,.84,.2,1.08) .24s 1 both; }.chat-preview.reveal.is-visible .ai-bubble { animation: chat-left-arrive .52s cubic-bezier(.18,.84,.2,1.08) .58s 1 both; }.chat-preview.reveal.is-visible .chat-source { animation: source-arrive .42s cubic-bezier(.18,.84,.2,1.08) 1.02s 1 both; }
.mind-map-card.reveal.is-visible .central-node { animation: node-arrive .55s cubic-bezier(.18,.85,.25,1.15) .2s 1 both; }
.mind-map-card.reveal.is-visible .node-one { animation: node-arrive .5s cubic-bezier(.18,.85,.25,1.15) .45s 1 both; }.mind-map-card.reveal.is-visible .node-two { animation: node-arrive .5s cubic-bezier(.18,.85,.25,1.15) .58s 1 both; }.mind-map-card.reveal.is-visible .node-three { animation: node-arrive .5s cubic-bezier(.18,.85,.25,1.15) .71s 1 both; }
.quiz-card.reveal.is-visible .quiz-art { animation: card-deal .7s cubic-bezier(.18,.85,.25,1.12) .18s 1 both; }
.quiz-card.reveal.is-visible .correct-choice { animation: answer-pop .45s cubic-bezier(.18,.85,.25,1.2) .82s 1 both; }
.lock-card.reveal.is-visible .focus-ring { animation: focus-settle .8s cubic-bezier(.18,.8,.25,1.08) .2s 1 both; }
.everywhere-visual.reveal.is-visible .laptop { animation: laptop-arrive .75s cubic-bezier(.18,.82,.25,1.08) .12s 1 both; }.everywhere-visual.reveal.is-visible .phone { animation: phone-arrive .75s cubic-bezier(.18,.82,.25,1.08) .34s 1 both; }

@keyframes nav-arrive { to { opacity: 1; transform: translateY(0); } }
@keyframes workspace-arrive { from { opacity: 0; transform: translate(-50%, 26px) rotate(-2deg) scale(.94); } to { opacity: 1; transform: translateX(-50%) rotate(1.7deg) scale(1); } }
@keyframes note-arrive-right { from { opacity: 0; transform: translate(22px, 12px) rotate(3deg) scale(.8); } to { opacity: 1; transform: translate(0) rotate(-4deg) scale(1); } }
@keyframes note-arrive-left { from { opacity: 0; transform: translate(-22px, 10px) rotate(-3deg) scale(.8); } to { opacity: 1; transform: translate(0) rotate(0) scale(1); } }
@keyframes sparkle-in { 0% { opacity: 0; transform: rotate(-40deg) scale(.25); } 70% { opacity: 1; transform: rotate(12deg) scale(1.25); } 100% { opacity: 1; transform: rotate(0) scale(1); } }
@keyframes progress-fill { from { transform: scaleX(.05); } to { transform: scaleX(1); } }
@keyframes streak-pop { from { opacity: .2; transform: translateY(5px) scale(.6); } to { opacity: 1; transform: translateY(0) scale(1); } }
@keyframes document-back-arrive { from { opacity: 0; transform: translate(-36px, 34px) rotate(-17deg) scale(.82); } to { opacity: 1; transform: rotate(-10deg) scale(1); } }
@keyframes document-front-arrive { from { opacity: 0; transform: translate(-50%, 40px) rotate(-6deg) scale(.8); } 72% { opacity: 1; transform: translate(-50%, -8px) rotate(3deg) scale(1.04); } to { opacity: 1; transform: translateX(-50%) rotate(2deg) scale(1); } }
@keyframes document-side-arrive { from { opacity: 0; transform: translate(35px, 30px) rotate(17deg) scale(.82); } to { opacity: 1; transform: rotate(10deg) scale(1); } }
@keyframes document-pop-arrive { from { opacity: 0; transform: translateY(15px) scale(.7); } to { opacity: 1; transform: translateY(0) scale(1); } }
@keyframes generation-arrive { from { opacity: 0; transform: translateY(24px) rotate(-2deg) scale(.94); } to { opacity: 1; transform: rotate(1.7deg) scale(1); } }
@keyframes queue-arrive { from { opacity: 0; transform: translateX(18px) scale(.96); } to { opacity: 1; transform: translateX(0) scale(1); } }
@keyframes lock-phone-arrive { from { opacity: 0; transform: translateY(31px) rotate(-3deg) scale(.86); } to { opacity: 1; transform: rotate(5deg) scale(1); } }
@keyframes unlock-note-arrive { from { opacity: 0; transform: translate(17px, 13px) rotate(4deg) scale(.75); } to { opacity: 1; transform: rotate(-3deg) scale(1); } }
@keyframes chat-right-arrive { from { opacity: 0; transform: translateX(17px) scale(.95); } to { opacity: 1; transform: translateX(0) scale(1); } }
@keyframes chat-left-arrive { from { opacity: 0; transform: translateX(-17px) scale(.95); } to { opacity: 1; transform: translateX(0) scale(1); } }
@keyframes source-arrive { from { opacity: 0; transform: translateY(7px); } to { opacity: 1; transform: translateY(0); } }
@keyframes icon-settle { from { opacity: 0; transform: translateY(12px) rotate(-9deg) scale(.78); } to { opacity: 1; transform: translateY(0) rotate(0) scale(1); } }
@keyframes selection-arrive { from { opacity: 0; transform: translateY(10px) scale(.9); } to { opacity: 1; transform: translateY(0) scale(1); } }
@keyframes node-arrive { from { opacity: 0; transform: scale(.55); } to { opacity: 1; transform: scale(1); } }
@keyframes card-deal { from { opacity: 0; transform: translate(28px, 24px) rotate(10deg) scale(.86); } to { opacity: 1; transform: translate(0) rotate(3deg) scale(1); } }
@keyframes answer-pop { from { opacity: 0; transform: scale(.3); } to { opacity: 1; transform: scale(1); } }
@keyframes focus-settle { from { opacity: 0; transform: rotate(-35deg) scale(.75); } to { opacity: 1; transform: rotate(0) scale(1); } }
@keyframes laptop-arrive { from { opacity: 0; transform: translate(-35px, 30px) rotate(-8deg) scale(.9); } to { opacity: 1; transform: translate(0) rotate(-4deg) scale(1); } }
@keyframes phone-arrive { from { opacity: 0; transform: translate(28px, 34px) rotate(14deg) scale(.82); } to { opacity: 1; transform: translate(0) rotate(8deg) scale(1); } }

/* Legal pages */
.policy-page .page-shell { width: min(1160px, calc(100% - 40px)); margin: 0 auto; }
.policy-page main { padding-top: 46px; }
.policy-hero { position: relative; overflow: hidden; padding: 64px 66px; border: 1px solid var(--line); border-radius: 24px; background: var(--paper); }
.policy-hero::before { content: ""; position: absolute; top: -190px; right: -120px; width: 430px; height: 430px; border-radius: 50%; background: #e8dfff; }
.policy-hero::after { content: "✦"; position: absolute; top: 44px; right: 58px; color: #f0a642; font-size: 30px; transform: rotate(8deg); }
.policy-hero > * { position: relative; z-index: 1; }
.policy-hero h1 { max-width: 9ch; margin: 15px 0 0; font-family: var(--display); font-size: clamp(3.1rem, 7vw, 6rem); line-height: .98; letter-spacing: -.075em; }
.policy-hero > p:not(.eyebrow) { max-width: 64ch; margin: 21px 0 0; color: var(--ink-soft); line-height: 1.72; }
.policy-hero > p:last-child { font-family: var(--mono); font-size: .68rem; letter-spacing: .04em; text-transform: uppercase; }
.policy-language-links { display: flex; gap: 8px; margin-top: 26px; }
.policy-language-links a { padding: 8px 12px; border: 1px solid var(--line); border-radius: 8px; background: #faf8ff; color: var(--violet); font-size: .76rem; font-weight: 800; }
.policy-language-links a:hover, .policy-language-links a:focus-visible { border-color: var(--violet); background: var(--violet-soft); outline: none; }
.policy-layout { display: grid; grid-template-columns: 220px minmax(0, 1fr); gap: 34px; align-items: start; padding: 70px 0 110px; }
.policy-toc { position: sticky; top: 100px; display: grid; gap: 3px; padding: 12px; border: 1px solid var(--line); border-radius: 15px; background: rgba(255, 254, 254, .76); backdrop-filter: blur(15px); }
.policy-toc::before { content: "ON THIS PAGE"; padding: 8px 10px 10px; color: #9189a6; font-family: var(--mono); font-size: .61rem; letter-spacing: .08em; }
.policy-toc a { padding: 9px 10px; border-radius: 7px; color: var(--ink-soft); font-size: .75rem; font-weight: 700; line-height: 1.35; }
.policy-toc a:hover, .policy-toc a:focus-visible { color: var(--violet); background: var(--violet-soft); outline: none; }
.policy-content { display: grid; gap: 13px; }
.policy-card { scroll-margin-top: 110px; padding: 34px 38px; border: 1px solid var(--line); border-radius: 17px; background: var(--paper); }
.policy-card:nth-child(3n+2) { background: #f9f6ff; }.policy-card:nth-child(3n+3) { background: #fffaf1; }
.policy-card h2 { margin: 0; font-family: var(--display); font-size: clamp(1.45rem, 3vw, 2rem); line-height: 1.15; letter-spacing: -.055em; }
.policy-card p, .policy-card li { color: var(--ink-soft); font-size: .9rem; line-height: 1.78; }
.policy-card p { margin: 16px 0 0; }.policy-card p + p { margin-top: 12px; }
.policy-card ul { display: grid; gap: 9px; margin: 18px 0 0; padding-left: 20px; }.policy-card li { padding-left: 4px; }
.policy-card strong { color: var(--ink); }
.policy-card .text-link { margin-top: 0; color: var(--violet); font-size: inherit; font-weight: 800; }
.policy-card-ar { border-right: 4px solid var(--violet); background: #f4efff !important; }
.policy-card-ar p, .policy-card-ar li { font-family: "Noto Sans Arabic", "Manrope", Tahoma, sans-serif; }
html[lang="en"] .privacy-page .policy-card-ar { display: none; }
html[lang="ar"] .privacy-page .policy-content > .policy-card:not(.policy-card-ar), html[lang="ar"] .privacy-page #ar-summary { display: none; }
.privacy-page .policy-language-links, .privacy-page .policy-toc a[href="#ar-summary"] { display: none; }

/* Arabic layout */
html[lang="ar"] h1, html[lang="ar"] h2, html[lang="ar"] h3, html[lang="ar"] .brand, html[lang="ar"] .button { letter-spacing: -.035em; }
html[dir="rtl"] .site-header { padding-right: 18px; padding-left: 12px; }
html[dir="rtl"] .header-cta { justify-self: start; }
html[dir="rtl"] .hero-copy, html[dir="rtl"] .section-heading, html[dir="rtl"] .feature-copy, html[dir="rtl"] .tools-heading, html[dir="rtl"] .everywhere-copy, html[dir="rtl"] .closing-cta, html[dir="rtl"] .policy-hero, html[dir="rtl"] .policy-card, html[dir="rtl"] .smart-download-copy, html[dir="rtl"] .jadwaly-hero-copy { text-align: right; }
html[dir="rtl"] .step-number { right: auto; left: 25px; }
html[dir="rtl"] .policy-card ul { padding-right: 20px; padding-left: 0; }
html[dir="rtl"] .policy-card li { padding-right: 4px; padding-left: 0; }
html[dir="rtl"] .policy-card-ar { border-right: 1px solid var(--line); border-left: 4px solid var(--violet); }
html[dir="rtl"] .policy-hero::before { right: auto; left: -120px; }
html[dir="rtl"] .policy-hero::after { right: auto; left: 58px; }
html[dir="rtl"] .policy-toc::before { content: "في هذه الصفحة"; }
html[dir="rtl"] .store-choice-link:hover, html[dir="rtl"] .store-choice-link:focus-visible { transform: translateX(-3px); }
html[dir="rtl"] .workspace-window, html[dir="rtl"] .mind-map-art, html[dir="rtl"] .quiz-art, html[dir="rtl"] .lock-art, html[dir="rtl"] .everywhere-visual { direction: ltr; }
html[dir="rtl"] .ticker-track, html[dir="rtl"] .ticker-group { direction: ltr; }
html[dir="rtl"] .ticker-group span { direction: rtl; }
html[dir="rtl"] .eyebrow { justify-content: flex-start; letter-spacing: 0; }
html[dir="rtl"] .hero { grid-template-columns: minmax(510px, 1.08fr) minmax(0, .92fr); }
html[dir="rtl"] .hero-copy { grid-column: 2; grid-row: 1; }
html[dir="rtl"] .hero-visual { grid-column: 1; grid-row: 1; }
html[dir="rtl"] .hero-description, html[dir="rtl"] .document-stage-copy > p:not(.eyebrow), html[dir="rtl"] .ai-panel-copy > p:not(.eyebrow), html[dir="rtl"] .study-lock-copy > p:not(.eyebrow), html[dir="rtl"] .chat-copy > p:not(.eyebrow) { margin-right: 0; margin-left: auto; }
html[dir="rtl"] .hero-actions, html[dir="rtl"] .download-actions, html[dir="rtl"] .hero-store-actions { justify-content: flex-start; }
html[dir="rtl"] .document-stage { grid-template-columns: 1.18fr .82fr; }
html[dir="rtl"] .document-stage-copy { grid-column: 2; grid-row: 1; }
html[dir="rtl"] .document-shelf { grid-column: 1; grid-row: 1; direction: ltr; }
html[dir="rtl"] .document-stage-points { align-items: start; }
html[dir="rtl"] .ai-workbench-panel { direction: rtl; }
html[dir="rtl"] .ai-panel-copy, html[dir="rtl"] .generation-preview { direction: rtl; text-align: right; }
html[dir="rtl"] .generation-topbar b, html[dir="rtl"] .generation-queue em { margin-right: auto; margin-left: 0; }
html[dir="rtl"] .generation-preview button span { margin-right: auto; margin-left: 0; }
html[dir="rtl"] .study-lock-section { grid-template-columns: 1.14fr .86fr; }
html[dir="rtl"] .study-lock-copy { grid-column: 2; grid-row: 1; }
html[dir="rtl"] .study-lock-preview { grid-column: 1; grid-row: 1; direction: ltr; }
html[dir="rtl"] .chat-section { grid-template-columns: .9fr 1.1fr; }
html[dir="rtl"] .chat-copy { grid-column: 2; grid-row: 1; }
html[dir="rtl"] .chat-preview { grid-column: 1; grid-row: 1; direction: ltr; }
html[dir="rtl"] .text-link { flex-direction: row-reverse; }
html[dir="rtl"] .closing-cta { text-align: center; }
html[dir="rtl"] .closing-cta .eyebrow { justify-content: center; }
@media (min-width: 981px) {
  html[dir="rtl"] .hero-copy, html[dir="rtl"] .section-heading, html[dir="rtl"] .feature-copy, html[dir="rtl"] .tools-heading, html[dir="rtl"] .document-stage-copy, html[dir="rtl"] .ai-panel-copy, html[dir="rtl"] .study-lock-copy, html[dir="rtl"] .chat-copy, html[dir="rtl"] .everywhere-copy { text-align: right; }
  html[dir="rtl"] .hero-copy h1, html[dir="rtl"] .hero-copy .hero-description, html[dir="rtl"] .hero-copy .hero-actions, html[dir="rtl"] .hero-copy .hero-store-actions { margin-right: 0; margin-left: auto; }
  html[dir="rtl"] .mind-map-card .tool-card-copy, html[dir="rtl"] .quiz-card .tool-card-copy { width: 48%; }
  html[dir="rtl"] .mind-map-card .mind-map-art { right: auto; left: 22px; }
  html[dir="rtl"] .quiz-card .quiz-art { right: auto; left: 29px; }
  html[dir="rtl"] .lock-card .tool-card-copy { width: 47%; }
  html[dir="rtl"] .lock-card .lock-art { right: auto; left: 9%; }
}

/* RTL keeps each marketing block in its own vertical rhythm. The artwork
   remains LTR, while copy and controls mirror cleanly around it. */
html[dir="rtl"] .tool-grid { direction: rtl; }
html[dir="rtl"] .tool-grid > * { direction: rtl; }
html[dir="rtl"] .tool-grid .mind-map-art, html[dir="rtl"] .tool-grid .quiz-art, html[dir="rtl"] .tool-grid .lock-art { direction: ltr; }
html[dir="rtl"] .tool-grid .mind-map-card, html[dir="rtl"] .tool-grid .quiz-card, html[dir="rtl"] .tool-grid .lock-card { min-height: 382px; }
html[dir="rtl"] .ai-workbench-panel, html[dir="rtl"] .document-stage, html[dir="rtl"] .study-lock-section, html[dir="rtl"] .chat-section { isolation: isolate; }
html[dir="rtl"] .study-lock-section, html[dir="rtl"] .chat-section { clear: both; }

/* Smart download page */
.smart-download-page { min-height: 100vh; overflow-x: hidden; }
.smart-download-shell { display: grid; width: min(980px, calc(100% - 32px)); min-height: 100vh; margin: 0 auto; padding: 25px 0 35px; grid-template-rows: auto 1fr auto; align-items: center; }
.smart-download-brand { align-self: start; }
.smart-download-brand img { width: 38px; height: 38px; }
.smart-download-card { display: grid; grid-template-columns: .88fr 1.12fr; min-height: 520px; overflow: hidden; border: 1px solid var(--line); border-radius: 25px; background: var(--paper); box-shadow: var(--shadow); }
.smart-download-art { position: relative; display: grid; min-height: 430px; place-items: center; overflow: hidden; background: #2b155f; }
.smart-download-art::before { content: ""; position: absolute; inset: 0; opacity: .3; background-image: radial-gradient(rgba(255,255,255,.5) .7px, transparent .7px); background-size: 17px 17px; mask-image: radial-gradient(circle, black, transparent 70%); }
.smart-download-art img { position: relative; z-index: 2; width: min(76%, 300px); filter: drop-shadow(0 26px 24px rgba(0,0,0,.25)); animation: download-logo-arrive .9s cubic-bezier(.18,.85,.25,1.08) 1 both; }
.download-orbit { position: absolute; z-index: 1; border: 1px solid rgba(214,197,255,.28); border-radius: 50%; }.orbit-a { width: 390px; height: 390px; }.orbit-b { width: 290px; height: 290px; border-style: dashed; }
.download-spark { position: absolute; z-index: 3; top: 17%; right: 14%; color: #ffc767; font-size: 30px; animation: sparkle-in .55s ease-out .75s 1 both; }
.smart-download-copy { display: flex; flex-direction: column; justify-content: center; padding: 54px; }
.smart-download-copy h1 { max-width: 10ch; margin: 17px 0 0; font-family: var(--display); font-size: clamp(2.35rem, 5vw, 4.1rem); line-height: 1.02; letter-spacing: -.072em; }
.smart-download-copy > p:not(.eyebrow):not(.download-status) { max-width: 49ch; margin: 18px 0 0; color: var(--ink-soft); line-height: 1.67; }
.in-app-guide { display: grid; grid-template-columns: auto 1fr; gap: 9px 12px; margin-top: 25px; padding: 16px; border: 1px solid rgba(109,60,243,.16); border-radius: 12px; background: #f3efff; }
.in-app-guide[hidden], .smart-download-actions[hidden], .store-choice[hidden] { display: none; }
.guide-number { display: grid; width: 23px; height: 23px; place-items: center; border-radius: 50%; color: white; background: var(--violet); font-family: var(--mono); font-size: .66rem; }
.in-app-guide p { align-self: center; margin: 1px 0; color: #5f557d; font-size: .76rem; line-height: 1.5; }.in-app-guide strong { color: var(--ink); }
.smart-download-actions { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 24px; }.copy-link-button { cursor: pointer; }
.download-status { min-height: 1.2em; margin: 14px 0 0; color: #8a829d; font-family: var(--mono); font-size: .64rem; }
.store-choice { display: grid; gap: 8px; margin-top: 27px; }
.store-choice-link { display: flex; align-items: center; gap: 13px; padding: 11px 13px; border: 1px solid var(--line); border-radius: 10px; background: white; transition: transform .2s ease, border-color .2s ease, background .2s ease; }
.store-choice-link:hover, .store-choice-link:focus-visible { border-color: var(--violet); background: #faf8ff; transform: translateX(3px); outline: none; }
.store-choice-icon { display: grid; width: 36px; height: 36px; place-items: center; border-radius: 9px; color: white; background: var(--ink); font-size: 1.15rem; }.play-icon { background: var(--cobalt); font-size: .82rem; }.web-choice .store-choice-icon { background: var(--violet); }
.store-choice-link small, .store-choice-link strong { display: block; }.store-choice-link small { color: #8a829d; font-size: .62rem; }.store-choice-link strong { margin-top: 1px; font-family: var(--display); font-size: .92rem; letter-spacing: -.03em; }
.smart-download-footnote { align-self: end; margin: 20px 0 0; color: #8a829d; font-family: var(--mono); font-size: .65rem; text-align: center; }
@keyframes download-logo-arrive { from { opacity: 0; transform: translateY(28px) rotate(-5deg) scale(.88); } to { opacity: 1; transform: translateY(0) rotate(0) scale(1); } }

@media (max-width: 760px) {
  .policy-page .page-shell { width: min(100% - 24px, 560px); }
  .policy-page main { padding-top: 30px; }
  .policy-hero { padding: 42px 24px 38px; border-radius: 19px; }
  .policy-hero::before { top: -220px; right: -220px; }.policy-hero::after { top: 25px; right: 27px; font-size: 22px; }
  .policy-hero h1 { font-size: clamp(3rem, 15vw, 4.4rem); }
  .policy-layout { grid-template-columns: 1fr; gap: 18px; padding: 45px 0 80px; }
  .policy-toc { position: static; grid-template-columns: 1fr 1fr; }.policy-toc::before { grid-column: 1 / -1; }
  .policy-card { padding: 26px 23px; }
  .smart-download-shell { min-height: auto; padding: 18px 0 28px; }
  .smart-download-card { grid-template-columns: 1fr; margin-top: 27px; }
  .smart-download-art { min-height: 285px; }.smart-download-art img { width: min(63%, 235px); }.orbit-a { width: 310px; height: 310px; }.orbit-b { width: 225px; height: 225px; }
  .smart-download-copy { padding: 34px 25px 38px; }.smart-download-copy h1 { font-size: clamp(2.35rem, 12vw, 3.35rem); }
  .smart-download-actions { display: grid; }.smart-download-actions .button { width: 100%; }
}

@media (max-width: 600px) {
  .quiz-card.reveal.is-visible .quiz-art { animation-name: card-deal-mobile; }
  .everywhere-visual.reveal.is-visible .phone { animation-name: phone-arrive-mobile; }
  .site-header .language-toggle > span:last-child { display: none; }
  .site-header .language-toggle { width: 37px; padding: 6px; }
}

@media (max-width: 980px) {
  .site-header { grid-template-columns: 1fr auto auto; }
  html[dir="rtl"] .menu-toggle { margin-right: auto; margin-left: 0; }
}

@keyframes card-deal-mobile { from { opacity: 0; transform: translate(20px, 22px) rotate(9deg) scale(.68); } to { opacity: 1; transform: rotate(3deg) scale(.83); } }
@keyframes phone-arrive-mobile { from { opacity: 0; transform: translate(25px, 30px) rotate(14deg) scale(.6); } to { opacity: 1; transform: rotate(7deg) scale(.77); } }

@media (prefers-reduced-motion: reduce) {
  .is-ready .site-header, .is-ready .ticker-track, .hero-visual.reveal.is-visible *, .flow-card.reveal.is-visible .flow-icon, .reader-preview.reveal.is-visible .selection-menu, .tool-card.reveal.is-visible *, .everywhere-visual.reveal.is-visible *, .smart-download-art img, .download-spark { animation: none !important; opacity: 1; }
}

/* Final physical-order overrides for Arabic desktop and mobile headers. */
html[dir="rtl"] .site-header { direction: ltr; }
html[dir="rtl"] .site-header .brand,
html[dir="rtl"] .site-header .site-nav,
html[dir="rtl"] .site-header .site-nav a,
html[dir="rtl"] .site-header .language-toggle,
html[dir="rtl"] .site-header .header-cta { direction: rtl; }
html[dir="rtl"] .site-header .site-nav { direction: ltr; }
html[dir="rtl"] .header-cta { justify-self: end !important; }
html[dir="rtl"] .site-nav a { text-align: right; }
@media (max-width: 980px) {
  html[dir="rtl"] .menu-toggle { margin-right: 0; margin-left: auto; }
}

/* FAQ section */
.faq-section { display: grid; grid-template-columns: .78fr 1.22fr; gap: 72px; align-items: start; padding-top: 128px; padding-bottom: 135px; }
.faq-heading { position: sticky; top: 112px; }
.faq-heading h2 { margin: 16px 0 0; font-family: var(--display); font-size: clamp(2.5rem, 4.4vw, 4.1rem); line-height: 1.04; letter-spacing: -.075em; }
.faq-heading h2 span { color: var(--violet); }
.faq-heading > p:not(.eyebrow) { max-width: 38ch; margin: 20px 0 0; color: var(--ink-soft); line-height: 1.7; }
.faq-heading .text-link { margin-top: 26px; }
.faq-list { display: grid; gap: 10px; }
.faq-item { overflow: hidden; border: 1px solid var(--line); border-radius: 15px; background: rgba(255,254,254,.78); box-shadow: 0 10px 28px rgba(53,31,111,.04); }
.faq-item summary { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 21px 22px; color: var(--ink); font-size: .88rem; font-weight: 800; line-height: 1.4; cursor: pointer; list-style: none; }
.faq-item summary::-webkit-details-marker { display: none; }
.faq-item summary::after { content: "+"; display: grid; flex: none; width: 25px; height: 25px; place-items: center; border-radius: 7px; color: var(--violet); background: var(--violet-soft); font-family: var(--mono); font-size: .9rem; font-weight: 500; }
.faq-item[open] summary { color: var(--violet); }
.faq-item[open] summary::after { content: "−"; }
.faq-answer { padding: 0 22px 21px; color: var(--ink-soft); font-size: .78rem; line-height: 1.75; }
.faq-answer p { margin: 0; max-width: 67ch; }
.faq-answer a { color: var(--violet); font-weight: 800; text-decoration: underline; text-underline-offset: 3px; }
html[dir="rtl"] .faq-section { direction: ltr; }
html[dir="rtl"] .faq-heading, html[dir="rtl"] .faq-list { direction: rtl; text-align: right; }
html[dir="rtl"] .faq-item summary { text-align: right; }
@media (max-width: 980px) {
  .faq-section { grid-template-columns: 1fr; gap: 37px; padding-top: 100px; padding-bottom: 105px; }
  .faq-heading { position: static; }
  .faq-heading > p:not(.eyebrow) { max-width: 58ch; }
}
@media (max-width: 600px) {
  .faq-section { gap: 29px; padding-top: 82px; padding-bottom: 82px; }
  .faq-heading h2 { font-size: 2.45rem; }
  .faq-item summary { padding: 17px 16px; font-size: .8rem; }
  .faq-answer { padding: 0 16px 17px; font-size: .74rem; }
}

/* Translation feature section */
.translation-section { display:grid; grid-template-columns:.84fr 1.16fr; gap:72px; align-items:center; padding-top:125px; padding-bottom:135px; }
.translation-copy h2 { margin:16px 0 0; font-family:var(--display); font-size:clamp(2.5rem,4.4vw,4.1rem); line-height:1.04; letter-spacing:-.075em; }
.translation-copy h2 span { color:var(--violet); }
.translation-copy > p:not(.eyebrow) { max-width:52ch; margin:20px 0 0; color:var(--ink-soft); line-height:1.72; }
.translation-points { display:grid; gap:10px; margin-top:27px; color:#5d5576; font-size:.76rem; font-weight:800; }
.translation-points span { display:flex; align-items:center; gap:9px; }
.translation-points b { display:grid; width:25px; height:25px; place-items:center; border-radius:8px; color:#6942d8; background:#e9e1ff; font-family:var(--mono); font-size:.7rem; }
.translation-visual { position:relative; display:grid; min-height:505px; place-items:center; overflow:hidden; border-radius:27px; background:radial-gradient(circle at 43% 32%,#eee6ff,transparent 36%),linear-gradient(145deg,#d9e7ff,#eee6ff 57%,#fdf7ef); }
.translation-orbit { position:absolute; border:1px dashed rgba(109,60,243,.25); border-radius:50%; }
.translation-orbit-one { width:430px; height:430px; }
.translation-orbit-two { width:325px; height:325px; border-color:rgba(70,121,244,.2); }
.translation-phone { position:relative; z-index:2; width:min(275px,66%); min-height:420px; padding:17px 15px; overflow:hidden; border:7px solid #211744; border-radius:31px; color:#f9f6ff; background:linear-gradient(160deg,#4b24a1,#25145f 70%,#18123d); box-shadow:0 28px 48px rgba(49,27,120,.24); transform:rotate(-4deg); }
.translation-phone-top { display:flex; justify-content:space-between; color:#d6c9f7; font-family:var(--mono); font-size:.55rem; }
.translation-phone > small { display:block; margin-top:29px; color:#b9a8e8; font-family:var(--mono); font-size:.52rem; letter-spacing:.08em; }
.translation-source,.translation-result { margin:17px 0 0; padding:12px; border-radius:10px; font-size:.68rem; line-height:1.6; }
.translation-source { color:#4c4267; background:#fbfaff; }
.translation-arrow { width:29px; height:29px; margin:13px auto 0; display:grid; place-items:center; border-radius:50%; color:#3d1b87; background:#ffca73; font-weight:900; }
.translation-result { color:#44336f; background:#ede6ff; }
.translation-badge { display:inline-flex; margin-top:18px; padding:6px 8px; border-radius:99px; color:#2d865d; background:#dff7e9; font-family:var(--mono); font-size:.48rem; letter-spacing:.04em; }
.translation-web-card { position:absolute; z-index:3; right:8%; bottom:56px; display:flex; align-items:center; gap:9px; padding:11px 12px; border:1px solid rgba(47,31,105,.12); border-radius:11px; color:#433963; background:rgba(255,255,255,.92); box-shadow:0 16px 30px rgba(59,39,122,.16); transform:rotate(5deg); }
.translation-web-card > div { display:grid; gap:3px; }
.translation-web-card small { color:#9389a7; font-family:var(--mono); font-size:.48rem; letter-spacing:.08em; }
.translation-web-card strong { font-size:.65rem; }
.translation-web-card em { color:#8c7cad; font-size:.55rem; font-style:normal; }
.translation-web-dot { width:10px; height:10px; border-radius:50%; background:#f5a552; box-shadow:0 0 0 5px #fff0d8; }
html[dir="rtl"] .translation-section { direction:ltr; }
html[dir="rtl"] .translation-copy { direction:rtl; text-align:right; }
html[dir="rtl"] .translation-visual { direction:ltr; }
@media (max-width:980px) { .translation-section { grid-template-columns:1fr; gap:42px; padding-top:100px; padding-bottom:105px; } .translation-copy { max-width:650px; } .translation-visual { width:min(100%,620px); margin:0 auto; } }
@media (max-width:600px) { .translation-section { gap:30px; padding-top:82px; padding-bottom:82px; } .translation-copy h2 { font-size:2.45rem; } .translation-visual { min-height:440px; border-radius:20px; } .translation-phone { width:245px; min-height:390px; } .translation-web-card { right:3%; bottom:34px; } }

/* Bottom app download CTA: a Jadwaly-native take on the scan-to-download panel. */
.download-cta { position:relative; display:grid; grid-template-columns:1.02fr .58fr .72fr; gap:28px; min-height:390px; align-items:center; overflow:hidden; padding:60px 58px 58px; border-radius:28px; color:#fff; background:linear-gradient(117deg,#15152d 0%,#241653 48%,#3c217c 100%); box-shadow:0 28px 60px rgba(40,22,94,.18); }
.download-cta::before,.download-cta::after { content:""; position:absolute; border:1px solid rgba(216,199,255,.2); border-radius:50%; pointer-events:none; }
.download-cta::before { width:620px; height:620px; top:-470px; left:32%; }
.download-cta::after { width:420px; height:420px; right:-170px; bottom:-310px; border-style:dashed; }
.download-cta > * { position:relative; z-index:1; }
.download-cta-copy { max-width:480px; }
.download-cta .eyebrow { color:#dacbff; }
.download-cta-copy h2 { margin:16px 0 0; font-family:var(--display); font-size:clamp(2.45rem,4.5vw,4.1rem); line-height:1.02; letter-spacing:-.075em; }
.download-cta-copy h2 span { color:#ffc767; }
.download-cta-copy > p:not(.eyebrow) { max-width:43ch; margin:19px 0 0; color:#d4cbe9; line-height:1.7; }
.download-cta-stores { margin-top:26px; gap:10px; }
.download-cta-stores .store-badge { height:53px; border-radius:8px; transition:transform .2s ease,filter .2s ease; }
.download-cta-stores .app-store { height:49px; }
.download-cta-stores .store-badge:hover,.download-cta-stores .store-badge:focus-visible { filter:brightness(1.08); transform:translateY(-2px); outline:none; }
.download-cta-web-link { display:inline-flex; align-items:center; gap:8px; margin-top:17px; color:#f3edff; font-size:.72rem; font-weight:800; text-decoration:underline; text-underline-offset:4px; }
.download-cta-web-link span { color:#ffc767; font-size:1rem; text-decoration:none; }
.download-cta-qr { display:grid; justify-items:center; gap:9px; align-self:center; text-align:center; }
.download-qr-frame { display:grid; width:145px; height:145px; padding:9px; place-items:center; border-radius:18px; background:#fff; box-shadow:0 17px 35px rgba(5,4,18,.28); transform:rotate(2deg); }
.download-qr-frame img { display:block; width:100%; height:100%; border-radius:8px; }
.download-cta-qr strong { color:#fff; font-size:.72rem; }
.download-cta-qr span { max-width:18ch; color:#c9bee6; font-size:.62rem; line-height:1.45; }
.download-cta-phone { display:flex; min-height:330px; align-items:flex-end; justify-content:center; }
.download-phone-shell { position:relative; width:174px; height:342px; padding:8px; border:2px solid rgba(255,255,255,.36); border-radius:30px; background:#0f1021; box-shadow:0 26px 35px rgba(5,4,18,.34); transform:rotate(7deg) translateY(8px); }
.download-phone-island { position:absolute; z-index:2; top:16px; left:50%; width:58px; height:15px; border-radius:99px; background:#11101d; transform:translateX(-50%); }
.download-phone-screen { position:relative; height:100%; padding:37px 14px 15px; overflow:hidden; border-radius:23px; background:linear-gradient(155deg,#f8f5ff,#eee6ff); color:#2e2251; }
.download-phone-screen > small { color:#817695; font-family:var(--mono); font-size:6px; letter-spacing:.06em; }
.download-phone-screen > b { display:block; margin-top:9px; font-family:var(--display); font-size:18px; letter-spacing:-.06em; line-height:1.05; }
.download-phone-card { display:grid; gap:4px; margin-top:20px; padding:12px 10px; border-radius:10px; box-shadow:0 10px 18px rgba(48,31,100,.1); }
.download-phone-card span,.download-phone-card em { font-family:var(--mono); font-size:6px; font-style:normal; }
.download-phone-card strong { font-family:var(--display); font-size:9px; letter-spacing:-.04em; }
.download-phone-card.purple { color:#fff; background:#6335d4; }
.download-phone-card.purple span,.download-phone-card.purple em { color:#d9ccff; }
.download-phone-card.mint { margin-top:9px; color:#285c4d; background:#d0f1e2; }
.download-phone-card.mint span,.download-phone-card.mint em { color:#548877; }
.download-phone-tabs { position:absolute; right:15px; bottom:16px; left:15px; display:flex; justify-content:space-around; }
.download-phone-tabs i { width:13px; height:4px; border-radius:99px; background:#c4b9dc; }
.download-phone-tabs i:first-child { background:#6335d4; }
.download-phone-spark { position:absolute; top:42px; right:7%; color:#ffc767; font-size:30px; animation:sparkle-in .55s ease-out .6s 1 both; }
html[dir="rtl"] .download-cta { direction:ltr; }
html[dir="rtl"] .download-cta-copy { direction:rtl; text-align:right; }
html[dir="rtl"] .download-cta-qr { direction:rtl; }
@media (max-width:980px) { .download-cta { grid-template-columns:1fr .68fr; padding:50px 40px; } .download-cta-phone { grid-column:1 / -1; min-height:280px; } .download-phone-shell { transform:rotate(6deg) translateY(20px) scale(.9); } }
@media (max-width:600px) { .download-cta { grid-template-columns:1fr; gap:31px; padding:40px 24px 45px; border-radius:21px; text-align:center; } .download-cta-copy { max-width:none; } html[dir="rtl"] .download-cta-copy { text-align:center; } .download-cta-copy h2 { font-size:2.5rem; } .download-cta-copy > p:not(.eyebrow) { margin-right:auto; margin-left:auto; } .download-cta-stores { justify-content:center; } .download-cta-web-link { justify-content:center; } .download-cta-qr { order:3; } .download-cta-phone { grid-column:auto; min-height:260px; order:2; } .download-phone-shell { transform:rotate(5deg) scale(.83); } .download-phone-spark { top:20px; right:18%; } }

/* Lottie treatment for the supplied System Regular animated icon set. */
.lottie-icon { overflow:hidden; }
.lottie-icon svg { display:block; width:100%; height:100%; }
.flow-icon.lottie-icon svg { width:31px; height:31px; filter:brightness(0) saturate(100%) invert(27%) sepia(56%) saturate(1464%) hue-rotate(228deg) brightness(87%); }
.flow-icon.blue.lottie-icon svg { filter:brightness(0) saturate(100%) invert(38%) sepia(48%) saturate(1165%) hue-rotate(188deg) brightness(89%); }
.flow-icon.orange.lottie-icon svg { filter:brightness(0) saturate(100%) invert(45%) sepia(64%) saturate(1084%) hue-rotate(357deg) brightness(88%); }
.price-icon.lottie-icon { display:grid; width:38px; height:38px; place-items:center; padding:7px; }
.price-icon.lottie-icon svg { width:100%; height:100%; filter:brightness(0) saturate(100%) invert(35%) sepia(73%) saturate(2148%) hue-rotate(244deg) brightness(89%); }
.lock-mark.lottie-icon svg { width:18px; height:18px; filter:brightness(0) saturate(100%) invert(36%) sepia(24%) saturate(1049%) hue-rotate(105deg) brightness(87%); }
.chat-orb.lottie-icon svg { width:18px; height:18px; filter:brightness(0) saturate(100%) invert(21%) sepia(42%) saturate(1849%) hue-rotate(240deg) brightness(83%); }
.download-phone-spark.lottie-icon { width:32px; height:32px; color:#ffc767; }
.download-phone-spark.lottie-icon svg { filter:brightness(0) saturate(100%) invert(79%) sepia(87%) saturate(780%) hue-rotate(330deg) brightness(103%); }
@media (prefers-reduced-motion: reduce) { .download-phone-spark.lottie-icon { animation:none; } }

/* App subscription palette: Free violet, Weekly amber, Monthly cyan, Annual pink. */
.free-price-card { --plan-accent:#6D5EF5; --plan-soft:#ECEAFF; }
.weekly-price-card { --plan-accent:#F59E0B; --plan-soft:#FFF1D6; }
.monthly-price-card { --plan-accent:#38BDF8; --plan-soft:#E0F5FF; }
.early-price-card { --plan-accent:#EC4899; --plan-soft:#FCE7F3; border-color:#EC4899; background:linear-gradient(155deg,#fff,#fff5fb); }
.price-card .price-icon { color:var(--plan-accent); background:var(--plan-soft); }
.price-card .price-button-quiet:hover,.price-card .price-button-quiet:focus-visible { border-color:var(--plan-accent); color:var(--plan-accent); background:var(--plan-soft); }
.early-price-card .price-icon { color:#EC4899; background:#FBCFE8; }
.early-price-card .early-bird-ribbon { color:#9D174D; background:#F9A8D4; }
.early-price-card .price-button-primary { border-color:#EC4899; background:#EC4899; box-shadow:0 9px 18px rgba(236,72,153,.2); }
.early-price-card .price-button-primary:hover,.early-price-card .price-button-primary:focus-visible { background:#DB2777; box-shadow:0 13px 23px rgba(236,72,153,.27); }
.queue-icon.lottie-icon svg { width:20px; height:20px; }
.summary-icon.lottie-icon svg { filter:brightness(0) saturate(100%) invert(37%) sepia(68%) saturate(1560%) hue-rotate(234deg) brightness(92%); }
.flashcard-icon.lottie-icon svg { filter:brightness(0) saturate(100%) invert(42%) sepia(72%) saturate(1150%) hue-rotate(178deg) brightness(88%); }
.quiz-icon.lottie-icon svg { filter:brightness(0) saturate(100%) invert(42%) sepia(49%) saturate(1017%) hue-rotate(111deg) brightness(91%); }
.lock-unlock-note > span.lottie-icon svg { width:14px; height:14px; filter:brightness(0) invert(1); }
.translation-points b.lottie-icon svg { width:16px; height:16px; filter:brightness(0) saturate(100%) invert(35%) sepia(73%) saturate(2148%) hue-rotate(244deg) brightness(89%); }

/* Persistent dark mode. The same violet / accent system is kept, with softer
   surfaces and higher contrast for long study sessions. */
.theme-toggle { display:inline-flex; align-items:center; justify-content:center; gap:7px; min-height:38px; padding:7px 10px; border:1px solid rgba(38,25,70,.12); border-radius:10px; color:var(--ink); background:rgba(255,255,255,.88); font-size:.74rem; font-weight:800; cursor:pointer; transition:color .2s ease,border-color .2s ease,transform .2s ease,background .2s ease; }
.theme-toggle:hover,.theme-toggle:focus-visible { color:var(--violet); border-color:rgba(109,60,243,.3); background:var(--violet-soft); outline:none; transform:translateY(-1px); }
.theme-toggle-icon { display:grid; width:23px; height:23px; place-items:center; border-radius:7px; color:var(--ink); background:var(--violet-soft); font-size:.9rem; line-height:1; }
@media (min-width:1321px) { .site-header { grid-template-columns:1fr auto auto auto auto; } }
@media (max-width:1320px) { .site-header { grid-template-columns:1fr auto auto auto auto; } }
@media (max-width:980px) { .site-header { grid-template-columns:1fr auto auto auto; } }
@media (max-width:600px) { .theme-toggle { width:37px; padding:6px; } .theme-toggle-label { display:none; } }

html[data-theme="dark"] { color-scheme:dark; --ink:#f7f3ff; --ink-soft:#bcb3d2; --canvas:#0b0915; --paper:#161226; --line:rgba(228,218,255,.16); --violet:#9575ff; --violet-deep:#d9cbff; --violet-soft:#2b2050; --cobalt:#76a4ff; --sky:#1e2c48; --mint:#1a4d3d; --pink:#5b284f; --orange:#ffc767; --shadow:0 18px 55px rgba(0,0,0,.32); }
html[data-theme="dark"] body { background:var(--canvas); }
html[data-theme="dark"] body::before { opacity:.16; background-image:radial-gradient(rgba(149,117,255,.32) .75px,transparent .75px); }
html[data-theme="dark"] .site-header { border-color:var(--line); background:rgba(20,17,35,.86); box-shadow:0 5px 20px rgba(0,0,0,.25); }
html[data-theme="dark"] .site-nav { background:#141123; border-color:var(--line); }
html[data-theme="dark"] .site-nav a { color:var(--ink-soft); }
html[data-theme="dark"] .menu-toggle { border-color:var(--line); background:#171326; }
html[data-theme="dark"] .menu-toggle span:not(.sr-only) { background:var(--ink); }
html[data-theme="dark"] .theme-toggle,html[data-theme="dark"] .language-toggle { border-color:var(--line); color:var(--ink); background:#171326; }
html[data-theme="dark"] .theme-toggle-icon { color:#1b1430; background:#ffc767; }
html[data-theme="dark"] .header-cta { color:#171124; background:#f4efff; }
html[data-theme="dark"] .header-cta:hover { color:white; background:var(--violet); }
html[data-theme="dark"] .hero-visual::before { background:radial-gradient(circle at 48% 40%,#2b2050 0,#2b2050 34%,transparent 65%); }
html[data-theme="dark"] .workspace-window { border-color:#2d2645; background:#151225; box-shadow:0 30px 68px rgba(0,0,0,.42),0 2px 0 rgba(255,255,255,.08); }
html[data-theme="dark"] .today-card,html[data-theme="dark"] .ai-mini-card { border-color:var(--line); background:#1b172d; }
html[data-theme="dark"] .progress-card { background:#2a2050; color:#ded4ff; }
html[data-theme="dark"] .file-line small { color:#aaa0bd; }
html[data-theme="dark"] .ticker-section { border-color:var(--line); background:#14111f; }
html[data-theme="dark"] .flow-card,html[data-theme="dark"] .price-card,html[data-theme="dark"] .faq-item { border-color:var(--line); background:var(--paper); box-shadow:0 12px 32px rgba(0,0,0,.2); }
html[data-theme="dark"] .flow-card:nth-child(3) { background:#2a2118; }
html[data-theme="dark"] .button-quiet { color:var(--ink); background:#1b172d; border-color:var(--line); }
html[data-theme="dark"] .button-quiet:hover { background:#26203d; }
html[data-theme="dark"] .reader-page,html[data-theme="dark"] .chat-thread { color:#e9e2f7; background:#19162a; }
html[data-theme="dark"] .reader-page h3 { color:#f6f0ff; }
html[data-theme="dark"] .reader-page .faded-paragraph { color:#a9a0b7; }
html[data-theme="dark"] .reader-page mark { color:#271d00; background:#ffd978; }
html[data-theme="dark"] .document-card { border-color:var(--line); background:#1b172d; box-shadow:0 20px 36px rgba(0,0,0,.34); }
html[data-theme="dark"] .document-card p { color:#ddd4ef; }
html[data-theme="dark"] .document-shelf::before { background:linear-gradient(145deg,#2b2050,#1c304d); }
html[data-theme="dark"] .thumb-notes { background:#332b1b; }
html[data-theme="dark"] .thumb-notes span { color:#f4e6c3; }
html[data-theme="dark"] .generation-queue > div { border-color:var(--line); background:#1a162a; }
html[data-theme="dark"] .generation-queue strong { color:#eee7fa; }
html[data-theme="dark"] .generation-queue small { color:#a9a0ba; }
html[data-theme="dark"] .quiz-art,html[data-theme="dark"] .phone-screen { border-color:var(--line); background:#1b172d; }
html[data-theme="dark"] .quiz-art p,html[data-theme="dark"] .phone-screen > b { color:#eee7fa; }
html[data-theme="dark"] .quiz-art div { border-color:var(--line); color:#c5bbd7; background:#211b34; }
html[data-theme="dark"] .everywhere-visual { background:#241b43; }
html[data-theme="dark"] .translation-visual { background:radial-gradient(circle at 43% 32%,#33245d,transparent 36%),linear-gradient(145deg,#1a2b48,#281d4b 57%,#33231d); }
html[data-theme="dark"] .translation-web-card { border-color:var(--line); color:#eee7fa; background:rgba(25,20,43,.92); }
html[data-theme="dark"] .translation-source { color:#4c4267; background:#fbfaff; }
html[data-theme="dark"] .translation-result { color:#44336f; background:#ede6ff; }
html[data-theme="dark"] .faq-item summary { color:#eee7fa; }
html[data-theme="dark"] .faq-answer { color:#bcb3d2; }
html[data-theme="dark"] .document-pop { border-color:var(--line); color:#eee7fa; background:#1b172d; }
html[data-theme="dark"] .social-links a { border-color:var(--line); color:#c8bfd9; background:rgba(255,255,255,.05); }
html[data-theme="dark"] .footer-bottom { border-color:var(--line); color:#9f96b6; }
html[data-theme="dark"] .site-footer { border-color:var(--line); }
html[data-theme="dark"] .price-button-quiet { color:var(--ink); background:rgba(255,255,255,.06); }
html[data-theme="dark"] .early-price-card { background:linear-gradient(155deg,#21172b,#291a37); }
html[data-theme="dark"] .price-card ul { color:#c9bfdc; }
html[data-theme="dark"] .price-kicker,html[data-theme="dark"] .price-value span { color:#a59bb9; }

/* Keep wide visual components clipped inside the viewport; their own tracks
   can still animate without making the document horizontally scrollable. */
html,body { max-width:100%; overflow-x:hidden; }

/* Mobile layout polish: keep the Study Lock artwork inside its column and
   center every footer control rather than letting flex rows hug the left edge. */
@media (max-width:600px) {
  .study-lock-section { grid-template-columns:minmax(0,1fr) !important; gap:32px; padding-right:12px; padding-left:12px; }
  .study-lock-copy { width:100%; max-width:100%; }
  .study-lock-copy h2 { max-width:12ch; margin-right:auto; margin-left:auto; font-size:clamp(2.35rem,12vw,3.2rem); }
  .study-lock-copy > p:not(.eyebrow) { max-width:35ch; margin-right:auto; margin-left:auto; }
  .lock-feature-list { width:max-content; max-width:100%; margin-right:auto; margin-left:auto; }
  .study-lock-preview { width:100%; min-height:430px; margin-right:auto; margin-left:auto; }
  .lock-mobile-shell { width:225px; min-height:410px; transform:rotate(3deg) scale(.9); }
  .lock-unlock-note { right:2%; bottom:28px; max-width:82%; }
  .footer-main { text-align:center; }
  .footer-brand-block { justify-items:center; }
  .footer-store-links, .footer-social-column .social-links { justify-content:center; }
  .footer-column { justify-items:center; }
  .footer-links { justify-items:center; }
  .footer-bottom { justify-items:center; text-align:center; }
}

/* The Preferred Sources control is part of the header on content pages. Keep
   its own grid lane so it does not wrap beside the brand or CTA. */
@media (min-width: 981px) { .site-header { grid-template-columns: 1fr auto auto auto auto auto; } }
@media (max-width: 980px) { .site-header { grid-template-columns: 1fr auto auto auto auto; } }
@media (max-width: 600px) {
  .site-header { grid-template-columns: 1fr auto auto auto; }
  .preferred-source-header { grid-column: 1 / -1; grid-row: 2; justify-self: center; padding-top: 5px; }
}

/* Preferred Sources uses Google's documented deeplink inside a compact,
   Jadwaly-styled Google Search control. */
.preferred-source-fallback {
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr) auto;
  width: 100%;
  min-height: 58px;
  gap: 10px;
  align-items: center;
  padding: 8px 12px;
  border: 1px solid rgba(109, 60, 243, .2);
  border-radius: 16px;
  color: var(--ink);
  background: rgba(255, 255, 255, .76);
  box-shadow: 0 10px 26px rgba(61, 39, 119, .08);
  text-align: left;
  transition: color .2s ease, border-color .2s ease, background .2s ease, transform .2s ease;
}
.google-preferred-logo { display: grid; width: 30px; height: 30px; place-items: center; border-radius: 50%; background: #fff; box-shadow: 0 4px 12px rgba(36, 28, 58, .11); }
.google-preferred-logo svg { display: block; width: 21px; height: 21px; }
.google-preferred-copy { display: grid; min-width: 0; gap: 1px; }
.google-preferred-copy small { color: var(--ink-soft); font-family: var(--body); font-size: .55rem; font-weight: 700; line-height: 1.2; }
.google-preferred-copy strong { color: var(--ink); font-size: .69rem; font-weight: 800; line-height: 1.25; }
.google-preferred-arrow { color: var(--violet); font-size: .9rem; font-weight: 800; }
.preferred-source-fallback:hover,
.preferred-source-fallback:focus-visible {
  border-color: var(--violet);
  background: var(--violet-soft);
  outline: none;
  transform: translateY(-2px);
}
html[dir="rtl"] .preferred-source-fallback { text-align: right; }

/* Secondary pages share the homepage's light liquid-glass language. */
html:not(.home-redesign) {
  color-scheme: light;
  --glass: rgba(255, 255, 255, .7);
  --glass-strong: rgba(255, 255, 255, .9);
  --glass-line: rgba(255, 255, 255, .86);
  --shadow-soft: 0 18px 60px rgba(67, 42, 126, .1);
  --shadow-float: 0 28px 90px rgba(67, 42, 126, .16);
}

html:not(.home-redesign),
html:not(.home-redesign) body,
html[data-theme="dark"]:not(.home-redesign),
html[data-theme="dark"]:not(.home-redesign) body {
  color-scheme: light;
  --ink: #18142c;
  --ink-soft: #645f78;
  --canvas: #f8f7ff;
  --paper: rgba(255, 255, 255, .78);
  --line: rgba(59, 42, 103, .1);
  --violet: #6d3cf3;
  --violet-deep: #2d1762;
  --violet-soft: #ebe5ff;
  --cobalt: #4f7cf7;
  --sky: #dceaff;
  --mint: #c9f3df;
  --pink: #ffd7ed;
  --orange: #ffc875;
  --shadow: var(--shadow-soft);
  background: #f8f7ff;
}

body:not(.home-page) {
  min-height: 100vh;
  background:
    radial-gradient(circle at 7% 4%, rgba(109, 60, 243, .14), transparent 25rem),
    radial-gradient(circle at 94% 12%, rgba(79, 124, 247, .13), transparent 29rem),
    linear-gradient(180deg, #fbfaff 0%, #f8f7ff 54%, #fbfaf7 100%);
}

body:not(.home-page)::before {
  z-index: 80;
  opacity: .02;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  background-size: auto;
  mask-image: none;
}

body:not(.home-page) .site-header {
  top: 16px;
  min-height: 74px;
  margin-top: 16px;
  padding: 10px 12px 10px 20px;
  border: 1px solid var(--glass-line);
  border-radius: 24px;
  background: var(--glass);
  box-shadow: 0 1px 0 rgba(255,255,255,.92) inset, 0 16px 46px rgba(54,36,102,.09);
  backdrop-filter: blur(24px) saturate(160%);
  -webkit-backdrop-filter: blur(24px) saturate(160%);
}

body:not(.home-page) .brand { gap: 10px; font-size: 1.2rem; }
body:not(.home-page) .brand img {
  width: 38px;
  height: 38px;
  filter: drop-shadow(0 8px 12px rgba(78,47,160,.18));
}
body:not(.home-page) .site-nav { gap: 3px; }
body:not(.home-page) .site-nav a {
  padding: 10px 11px;
  border-radius: 999px;
  font-size: .76rem;
}
body:not(.home-page) .theme-toggle { display: none !important; }
body:not(.home-page) .header-cta {
  min-height: 44px;
  padding: 0 18px;
  border-radius: 14px;
  color: #fff;
  background: linear-gradient(135deg, #2d1762, #6d3cf3);
  box-shadow: 0 10px 24px rgba(72,37,154,.22);
}
body:not(.home-page) .header-cta:hover,
body:not(.home-page) .header-cta:focus-visible {
  color: #fff;
  background: linear-gradient(135deg, #3a1c7c, #7b4cff);
  box-shadow: 0 14px 32px rgba(72,37,154,.28);
}

body:not(.home-page) .preferred-source-header { min-height: 44px; }
body:not(.home-page) .preferred-source-header .preferred-source-fallback {
  grid-template-columns: 26px auto;
  width: auto;
  min-width: 132px;
  min-height: 44px;
  gap: 8px;
  padding: 6px 10px;
  border-color: rgba(109,60,243,.14);
  border-radius: 14px;
  background: rgba(255,255,255,.68);
  box-shadow: 0 8px 22px rgba(62,39,117,.06);
}
body:not(.home-page) .preferred-source-header .google-preferred-logo { width: 26px; height: 26px; }
body:not(.home-page) .preferred-source-header .google-preferred-logo svg { width: 18px; height: 18px; }
body:not(.home-page) .preferred-source-header .google-preferred-copy small,
body:not(.home-page) .preferred-source-header .google-preferred-arrow { display: none; }
body:not(.home-page) .preferred-source-header .google-preferred-copy strong { font-size: .68rem; white-space: nowrap; }

body:not(.home-page) .policy-hero,
body:not(.home-page) .policy-toc,
body:not(.home-page) .policy-card,
body:not(.home-page) .smart-download-card,
body:not(.home-page) .account-status-card,
body:not(.home-page) .jadwaly-device-card {
  border-color: var(--glass-line);
  background: var(--glass);
  box-shadow: 0 1px 0 rgba(255,255,255,.9) inset, var(--shadow-soft);
  backdrop-filter: blur(20px) saturate(145%);
  -webkit-backdrop-filter: blur(20px) saturate(145%);
}

body:not(.home-page) .site-footer,
body:not(.home-page) .blog-footer {
  border-color: rgba(59,42,103,.09);
}

@media (min-width: 981px) {
  body:not(.home-page) .site-header { grid-template-columns: 1fr auto auto auto auto; }
}

@media (max-width: 980px) {
  body:not(.home-page) .site-header { grid-template-columns: 1fr auto auto; }
  body:not(.home-page) .site-nav {
    border-color: var(--glass-line);
    border-radius: 18px;
    background: rgba(255,255,255,.94);
    box-shadow: var(--shadow-soft);
    backdrop-filter: blur(22px);
  }
  body:not(.home-page) .preferred-source-header {
    grid-column: 1 / -1;
    grid-row: 2;
    justify-self: center;
    padding-top: 5px;
  }
}

@media (max-width: 600px) {
  body:not(.home-page) .site-header {
    min-height: 64px;
    margin-top: 10px;
    padding: 9px 10px 9px 14px;
    border-radius: 20px;
  }
  body:not(.home-page) .brand { font-size: 1.05rem; }
  body:not(.home-page) .brand img { width: 34px; height: 34px; }
  body:not(.home-page) .preferred-source-header .preferred-source-fallback { min-height: 42px; }
}
