/* Owner reference: Russian-first learning journey. Presentation only. */
.plan-experience,.plan-shell { color:#142b4a; }
.plan-shell .plan-secondary { margin:2px 0 10px;color:#537092;font-size:14px;font-weight:600;letter-spacing:0; }
.plan-shell .plan-eyebrow { color:#1760b3; }
.plan-shell .plan-panel { border:1px solid #dbe8f7;border-radius:22px;box-shadow:0 8px 26px rgba(24,72,128,.06); }
.plan-shell .plan-button { min-height:46px;border-radius:12px;font-size:14px; }
.plan-shell .plan-button-secondary { background:#eff6ff; }
.plan-hero { min-height:215px;background:linear-gradient(105deg,#fff 25%,#e3f2ff); }
.plan-hero h2 { font-size:clamp(30px,3.1vw,43px);margin:7px 0 3px; }
.plan-hero .plan-secondary { font-size:15px; }
.plan-hero img[data-mascot-state] { width:215px;height:190px;object-fit:contain;mix-blend-mode:multiply;
  -webkit-mask-image:radial-gradient(ellipse 66% 68% at 50% 51%,#000 46%,transparent 90%);
  mask-image:radial-gradient(ellipse 66% 68% at 50% 51%,#000 46%,transparent 90%); }
.plan-stepper { padding:14px;gap:3px; }
.plan-stepper span { flex-direction:column;gap:5px;text-align:center;font-size:12px;position:relative; }
.plan-stepper span:not(:last-child)::after { content:"";position:absolute;left:calc(50% + 22px);right:calc(-50% + 22px);top:17px;height:2px;background:#dbe7f5; }
.plan-stepper .is-done b { background:#dff2ea;color:#147657; }
.plan-stepper .is-done::after { background:#72bca1!important; }
.plan-wizard-stage { min-height:340px;padding:30px; }
.plan-wizard-stage h2 { font-size:26px;margin-bottom:0; }
.plan-wizard-stage .plan-help { font-size:14px;margin:12px 0 20px; }
.plan-languages { display:grid;grid-template-columns:repeat(2,minmax(0,1fr)); }
.plan-languages .plan-choice { display:grid;justify-items:start;min-height:130px;padding:20px; }
.plan-language-flag { font-size:32px;line-height:1; }
.plan-languages .plan-choice strong { font-size:19px; }
.plan-languages .plan-choice small { color:#5b718f;font-size:13px; }
.plan-levels { display:grid;grid-template-columns:repeat(4,minmax(0,1fr)); }
.plan-levels .plan-level { min-height:112px;padding:18px; }
.plan-level strong { font-size:27px; }
.plan-level small { font-size:13px; }
.plan-step-label { font-size:16px;margin:22px 0 12px; }
.plan-paces .plan-choice { min-height:118px;padding:18px; }
.plan-paces .plan-choice strong { font-size:17px; }
.plan-presets { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:13px; }
.plan-presets button { font:inherit;min-height:45px;background:#f5f9ff;border:1px solid #cfdeee;border-radius:11px;color:#274969;font-weight:700;cursor:pointer; }
.plan-presets button.is-selected { background:#eaf4ff;border-color:#1267d6;color:#0c4fa9; }
.plan-summary { background:#f5faff;padding:25px; }
.plan-summary-icon { object-fit:contain;background:none;width:46px;height:46px; }
.plan-summary-head h2 { font-size:22px; }
.plan-summary-compact { background:transparent;border:0;padding:0; }
.plan-summary-compact div { padding:13px 0; }
.plan-summary-compact dt { font-size:13px; }
.plan-summary-compact dd { font-size:14px; }
.plan-summary-create { width:100%;margin-top:15px; }
.plan-estimate { margin:15px 0 0; }

.plan-dashboard { gap:16px; }
.plan-dashboard-hero { min-height:235px;background:linear-gradient(110deg,#fff 18%,#e8f4ff);overflow:hidden; }
.plan-dashboard-hero-copy { min-width:0; }
.plan-dashboard-hero h2 { font-size:clamp(30px,3.5vw,43px);margin-bottom:2px; }
.plan-dashboard-hero .plan-mascot { display:block;width:210px;height:200px;object-fit:contain;mix-blend-mode:multiply;
  -webkit-mask-image:radial-gradient(ellipse 66% 68% at 50% 51%,#000 46%,transparent 90%);
  mask-image:radial-gradient(ellipse 66% 68% at 50% 51%,#000 46%,transparent 90%); }
.plan-dashboard-route { margin:18px 0 14px; }
.plan-dashboard-route span[data-cefr] { border-color:#bed9f5;background:#eaf4ff;font-size:16px;font-weight:800; }
.plan-dashboard-route span:last-child { background:#f2f8ff; }
.plan-dashboard-end { margin:0;font-size:13px;color:#4d6887; }
.plan-section-head { display:flex;justify-content:space-between;align-items:flex-start;gap:16px; }
.plan-section-head h3 { font-size:24px;margin:4px 0; }
.plan-section-head p { margin:0;color:#5a6f8a;font-size:13px; }
.plan-journey-overall { display:grid;text-align:right;font-size:28px;color:#0c5ec4;white-space:nowrap; }
.plan-journey-overall small { font-size:11px;color:#58708e; }
.plan-journey-track { display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);list-style:none;margin:24px 0 18px;padding:0; }
.plan-journey-stage { position:relative;display:grid;justify-items:center;align-content:start;gap:9px;min-width:0;text-align:center; }
.plan-journey-node { display:grid;place-items:center;width:66px;height:66px;border-radius:50%;border:3px solid #c8dbef;background:#f0f6fd;color:#527392;font-weight:850;font-size:19px;z-index:1; }
.plan-journey-stage[data-stage=completed] .plan-journey-node { background:#e0f4ed;border-color:#68b59a;color:#167654; }
.plan-journey-stage[data-stage=active] .plan-journey-node { width:76px;height:76px;background:#1267d6;border-color:#75b8ff;color:#fff;box-shadow:0 8px 22px #1267d644;font-size:24px; }
.plan-journey-connector { position:absolute;left:calc(50% + 35px);right:calc(-50% + 35px);top:34px;height:3px;background:#d3e3f3; }
.plan-journey-stage-copy { display:grid;gap:3px;width:min(100%,150px);color:#58708e; }
.plan-journey-stage-copy strong { font-size:16px;color:#16365e; }
.plan-journey-stage-copy span,.plan-journey-stage-copy small { font-size:12px; }
.plan-journey-mini { height:5px;border-radius:6px;background:#e3edf7;overflow:hidden; }
.plan-journey-mini i { display:block;height:100%;background:#1774de; }
.plan-journey-caption { margin:-9px 0 0;color:#526b89;font-size:12px; }
.plan-dashboard-grid { grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr); }
.plan-dashboard-next { background:#f4f9ff; }
.plan-dashboard-next h3 { margin:8px 0 12px; }
.plan-next-date { display:flex;gap:12px;align-items:center;flex-wrap:wrap;font-weight:750; }
.plan-next-date span { border-radius:999px;padding:5px 9px;background:#e5f1ff;color:#0b5db9;font-size:12px; }
.plan-next-facts { display:flex;gap:14px;margin:15px 0 20px;color:#385976;font-size:13px; }
.plan-quick-stats { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:18px 0; }
.plan-quick-stats div { display:grid;gap:5px;border-radius:14px;background:#f4f9ff;padding:13px; }
.plan-quick-stats strong { color:#0a58b4;font-size:24px; }
.plan-quick-stats span { font-size:11px;color:#536b88; }
.plan-streak-summary,.plan-dashboard-details p { color:#496583;font-size:13px;margin:8px 0 0; }
.plan-dashboard-details p span { margin:0 9px; }
.plan-reschedule,.plan-dashboard-reviews { display:flex;align-items:center;gap:20px;margin:0; }
.plan-reschedule .plan-mascot,.plan-dashboard-reviews .plan-mascot { float:none;width:115px;height:115px;margin:0; }
.plan-reschedule p,.plan-dashboard-reviews p { margin:7px 0 14px;color:#526b89; }
.plan-reschedule-actions { display:flex;gap:10px;flex-wrap:wrap; }

.plan-today { gap:16px; }
.plan-today-hero { display:flex;align-items:center;justify-content:space-between;min-height:205px;
  background:linear-gradient(110deg,#fff 24%,#e8f4ff);overflow:hidden; }
.plan-today-hero-copy { position:relative;z-index:1; }
.plan-today-hero h2 { font-size:clamp(28px,3.4vw,41px);margin:7px 0 1px; }
.plan-today-hero p { margin:5px 0 12px; }
.plan-today > .plan-today-hero .plan-mascot { position:static;width:190px;height:180px;opacity:1;mix-blend-mode:multiply;
  -webkit-mask-image:radial-gradient(ellipse 66% 68% at 50% 51%,#000 46%,transparent 90%);
  mask-image:radial-gradient(ellipse 66% 68% at 50% 51%,#000 46%,transparent 90%); }
.plan-today > .plan-today-hero h2,.plan-today > .plan-today-hero p { max-width:none; }
.plan-today-overview { display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:17px; }
.plan-today-overview > div:not(.plan-today-progress) { display:grid;gap:3px;min-width:140px;flex:1;padding:11px;border-radius:12px;background:#f4f9ff; }
.plan-today-overview small { font-size:11px;color:#5b7290; }
.plan-today-overview strong { font-size:16px;color:#123e75; }
.plan-today-progress { min-width:180px;flex:1;color:#245c9f;font-size:12px;font-weight:750; }
.plan-today .plan-today-progress .plan-dashboard-bar { margin:7px 0 0; }
.plan-today-layout { display:grid;grid-template-columns:minmax(0,1.6fr) minmax(230px,.7fr);align-items:start;gap:16px; }
.plan-today-main { min-width:0; }
.plan-today-main .plan-section-head { padding:6px 2px 14px; }
.plan-today-main .plan-section-head h3 { margin:0;font-size:23px; }
.plan-today-task { display:grid;grid-template-columns:30px 52px minmax(0,1fr) auto;gap:13px;align-items:center;padding:16px; }
.plan-task-number { color:#8ba3be;font-size:13px;font-weight:800;align-self:start;padding-top:12px; }
.plan-today-task .most-task-icon { width:48px;height:48px;align-self:start; }
.plan-task-main { min-width:0; }
.plan-today-task .plan-task-main { display:block; }
.plan-task-type { color:#165cae;font-size:13px;font-weight:800; }
.plan-task-type small { display:block;color:#6a819b;font-size:11px;font-weight:600; }
.plan-today-task h3 { margin:6px 0;font-size:16px;line-height:1.3;overflow-wrap:anywhere; }
.plan-today-task p { margin:0;color:#526b88;font-size:12px; }
.plan-task-meta { display:flex;gap:11px;flex-wrap:wrap;margin-top:10px;color:#56718f;font-size:11px; }
.plan-task-status { color:#0b63b5;font-weight:750; }
.plan-today-task[data-state=completed] .plan-task-status { color:#167654; }
.plan-today-actions { display:grid;justify-items:stretch;gap:6px;min-width:118px; }
.plan-today-actions .plan-button { min-height:34px;padding:6px 10px;font-size:11px;white-space:normal; }
.plan-today-side { position:sticky;top:18px; }
.plan-today-side h3 { margin:0 0 15px;font-size:18px; }
.plan-today-side ol { list-style:none;padding:0;margin:0;display:grid;gap:12px; }
.plan-today-side li { display:flex;align-items:center;gap:9px;color:#244969;font-size:13px;font-weight:750; }
.plan-today-side li .most-task-icon { flex:none;width:30px;height:30px; }
.plan-today-side li small { display:block;color:#67809b;font-size:11px;font-weight:500;overflow-wrap:anywhere; }
.plan-note-workspace { max-width:980px; }
.plan-note-head { background:linear-gradient(110deg,#fff 35%,#eff7ff); }
.plan-note-identity { display:flex;gap:15px;align-items:center; }
.plan-note-identity .most-task-icon { width:60px;height:60px;flex:none; }
.plan-note-identity h2 { margin:4px 0 0;font-size:28px; }
.plan-note-head h3 { margin:4px 0 0;font-size:17px; }
.plan-note-head p { margin:0;color:#526b89; }
.plan-note-editor label { font-weight:800;color:#193e6a; }
.plan-note-editor textarea { min-height:260px;background:#fbfdff; }
.plan-note-footer { display:flex;justify-content:space-between;gap:12px;color:#58718b;font-size:12px; }
.plan-note-footer [role=status] { color:#167654; }
.ai-builder { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;padding:25px; }
.ai-builder label { display:grid;gap:7px;color:#193e68;font-weight:750; }
.ai-builder label input,.ai-builder label select { min-height:44px;border:1px solid #cddff1;border-radius:11px;padding:9px 12px;background:#fafdff;color:#153b67;font:inherit; }
.ai-builder .ai-output-label { grid-column:1/-1; }
.ai-builder #copyAiPrompt { justify-self:start;min-width:170px; }
.ai-builder #aiCopyState { align-self:center;color:#167654; }
.ai-builder #aiPrompt { min-height:180px;padding:15px;border-radius:13px;border:1px solid #d2e2f3;background:#f7fbff;color:#264768;line-height:1.55; }
@media(max-width:960px) {
  .plan-today-layout { grid-template-columns:1fr; }
  .plan-today-side { position:static; }
  .plan-today-side ol { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:650px) {
  .plan-hero { padding:22px;min-height:145px; }
  .plan-hero img[data-mascot-state] { display:block;width:92px;height:100px; }
  .plan-hero h2 { font-size:27px; }
  .plan-hero p:not(.plan-secondary) { font-size:12px; }
  .plan-stepper { padding:9px 3px; }
  .plan-stepper span { font-size:9px; }
  .plan-stepper span:not(:last-child)::after { display:none; }
  .plan-wizard-stage { min-height:0;padding:20px; }
  .plan-levels { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .plan-languages .plan-choice { min-width:0;min-height:115px;padding:13px; }
  .plan-paces { grid-template-columns:1fr; }
  .plan-paces .plan-choice { min-height:70px; }
  .plan-weekdays { grid-template-columns:repeat(7,minmax(0,1fr)); }
  .plan-day { padding:10px 1px;font-size:11px; }
  .plan-dashboard-hero { display:flex;align-items:center;min-height:180px; }
  .plan-dashboard-hero h2 { font-size:27px; }
  .plan-dashboard-hero .plan-mascot { display:block;width:100px;height:112px; }
  .plan-dashboard-route { gap:5px;margin:10px 0; }
  .plan-dashboard-route span,.plan-dashboard-route strong { padding:5px 7px;font-size:11px; }
  .plan-dashboard-route span[data-cefr] { font-size:13px; }
  .plan-journey-node { width:48px;height:48px;font-size:14px; }
  .plan-journey-stage[data-stage=active] .plan-journey-node { width:54px;height:54px;font-size:17px; }
  .plan-journey-connector { top:25px;left:calc(50% + 25px);right:calc(-50% + 25px); }
  .plan-journey-stage-copy strong { font-size:13px; }
  .plan-journey-stage-copy span,.plan-journey-stage-copy small { font-size:10px; }
  .plan-quick-stats { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .plan-quick-stats div { padding:9px; }
  .plan-quick-stats strong { font-size:19px; }
  .plan-reschedule,.plan-dashboard-reviews { align-items:flex-start; }
  .plan-reschedule .plan-mascot,.plan-dashboard-reviews .plan-mascot { width:66px;height:66px; }
  .plan-today-hero { display:flex;min-height:185px; }
  .plan-today-hero h2 { font-size:25px; }
  .plan-today > .plan-today-hero .plan-mascot { width:90px;height:100px;flex:none; }
  .plan-today-overview > div:not(.plan-today-progress) { min-width:125px; }
  .plan-today-progress { min-width:100%; }
  .plan-today-task { grid-template-columns:25px 44px minmax(0,1fr);gap:8px; }
  .plan-today-task .most-task-icon { width:42px;height:42px; }
  .plan-today-actions { grid-column:2/-1;display:flex;justify-content:flex-start;min-width:0; }
  .plan-today-side ol { grid-template-columns:1fr; }
  .ai-builder { grid-template-columns:1fr; }
}
