/* CLASSMIRROR V131 PREMIUM — public tools page */
.cm131-page{--cm131-ink:#252a3b;--cm131-muted:#70778a;--cm131-purple:#6849ef;--cm131-purple-dark:#3f2b95;--cm131-soft:#f7f8fc;--cm131-border:#e4e6ef;overflow:hidden;color:var(--cm131-ink);background:#fff}
.cm131-container{width:min(1180px,calc(100% - 40px));margin:0 auto}
.cm131-hero{position:relative;padding:86px 0 92px;background:radial-gradient(circle at 80% 18%,rgba(117,88,246,.17),transparent 24%),radial-gradient(circle at 8% 82%,rgba(86,222,184,.12),transparent 24%),linear-gradient(180deg,#fbfaff 0%,#fff 100%)}
.cm131-hero-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);gap:70px;align-items:center}
.cm131-eyebrow,.cm131-kicker{display:inline-flex;align-items:center;min-height:29px;padding:5px 11px;color:#5c45c5;font-size:10px;font-weight:950;letter-spacing:.06em;text-transform:uppercase;background:#efecff;border:1px solid #ded7ff;border-radius:999px}
.cm131-hero h1{max-width:760px;margin:16px 0 18px;color:#24283a;font-size:clamp(42px,5.6vw,72px);line-height:.98;letter-spacing:-.045em}
.cm131-hero-lead{max-width:720px;margin:0;color:#656d81;font-size:17px;line-height:1.75}
.cm131-hero-actions{display:flex;flex-wrap:wrap;gap:11px;margin-top:28px}
.cm131-button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 19px;color:#4d3aaa;font-size:13px;font-weight:900;text-decoration:none;background:#fff;border:1px solid #dcd7f4;border-radius:13px;transition:transform .15s ease,box-shadow .15s ease}
.cm131-button:hover{transform:translateY(-2px)}
.cm131-button.primary{color:#fff;background:linear-gradient(135deg,#5d42db,#7657f4);border-color:transparent;box-shadow:0 12px 28px rgba(93,66,219,.22)}
.cm131-button.secondary{background:#fff}
.cm131-language-pills{display:flex;flex-wrap:wrap;gap:7px;margin-top:23px}
.cm131-language-pills span{min-width:38px;padding:6px 9px;color:#5d49bd;font-size:9px;font-weight:950;text-align:center;background:#f2f0ff;border-radius:999px}
.cm131-hero-visual{position:relative;width:min(100%,500px);aspect-ratio:1/1;margin:auto}
.cm131-orbit{position:absolute;inset:12%;border:1px solid rgba(103,76,224,.18);border-radius:50%}
.cm131-orbit-two{inset:26%;border-style:dashed}
.cm131-core{position:absolute;top:50%;left:50%;display:flex;width:170px;height:170px;align-items:center;justify-content:center;flex-direction:column;gap:5px;color:#fff;text-align:center;background:linear-gradient(145deg,#36267e,#6a4be9);border:9px solid rgba(255,255,255,.86);border-radius:50%;box-shadow:0 28px 60px rgba(71,47,161,.27);transform:translate(-50%,-50%)}
.cm131-core-icon{font-size:39px}
.cm131-core strong{font-size:18px}
.cm131-core small{max-width:110px;color:rgba(255,255,255,.72);font-size:10px}
.cm131-satellite{position:absolute;display:flex;min-width:122px;align-items:center;gap:8px;padding:11px 13px;color:#383d50;font-size:11px;background:rgba(255,255,255,.93);border:1px solid #e4e0f7;border-radius:14px;box-shadow:0 14px 30px rgba(57,46,104,.10)}
.cm131-satellite span{font-size:19px}
.cm131-satellite.one{top:13%;left:0}
.cm131-satellite.two{right:0;top:27%}
.cm131-satellite.three{right:12%;bottom:8%}
.cm131-section{padding:82px 0;background:#fff}
.cm131-section.soft{background:var(--cm131-soft)}
.cm131-heading{max-width:800px;margin:0 auto 32px;text-align:center}
.cm131-heading h2,.cm131-focus-copy h2,.cm131-feature-panel h2,.cm131-math-copy h2,.cm131-progress-copy h2{margin:12px 0 10px;color:#282d3f;font-size:clamp(30px,4vw,45px);line-height:1.08;letter-spacing:-.025em}
.cm131-heading p,.cm131-focus-copy p,.cm131-feature-panel p,.cm131-math-copy p,.cm131-progress-copy p{margin:0;color:var(--cm131-muted);line-height:1.75}
.cm131-tools-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}
.cm131-tool-card{display:flex;min-height:260px;flex-direction:column;padding:22px;background:#fff;border:1px solid var(--cm131-border);border-radius:20px;box-shadow:0 9px 28px rgba(44,48,76,.05);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.cm131-tool-card:hover{transform:translateY(-4px);border-color:#d4cdfb;box-shadow:0 16px 36px rgba(69,52,145,.10)}
.cm131-tool-card.accent{background:linear-gradient(160deg,#faf9ff,#f2efff);border-color:#d9d2ff}
.cm131-tool-top{display:flex;align-items:center;justify-content:space-between;gap:12px}
.cm131-tool-icon{display:grid;width:50px;height:50px;place-items:center;font-size:25px;background:#f1efff;border-radius:14px}
.cm131-tool-number{color:#b4aacd;font-size:10px;font-weight:950;letter-spacing:.08em}
.cm131-tool-card h3{margin:18px 0 8px;font-size:18px}
.cm131-tool-card p{flex:1;margin:0;color:#73798b;font-size:12px;line-height:1.67}
.cm131-chip{align-self:flex-start;margin-top:18px;padding:6px 9px;color:#5b48b2;font-size:9px;font-weight:950;background:#f1efff;border-radius:999px}
.cm131-focus-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(500px,1.15fr);gap:64px;align-items:center}
.cm131-flow{display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;gap:10px;align-items:center;padding:24px;background:#fff;border:1px solid #e3e5ec;border-radius:23px;box-shadow:0 14px 38px rgba(40,46,76,.07)}
.cm131-flow-step{min-height:110px;padding:16px 12px;text-align:center;background:#f8f8fc;border:1px solid #ebecf2;border-radius:15px}
.cm131-flow-step span{display:grid;width:30px;height:30px;margin:0 auto 10px;place-items:center;color:#5e49bf;font-size:10px;font-weight:950;background:#ece9ff;border-radius:50%}
.cm131-flow-step strong{font-size:11px}
.cm131-flow-step.active{color:#fff;background:linear-gradient(145deg,#4b35b2,#6b4ce9);border-color:transparent}
.cm131-flow-step.active span{color:#fff;background:rgba(255,255,255,.15)}
.cm131-flow-arrow{color:#968ab8;font-size:19px}
.cm131-duo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.cm131-feature-panel{position:relative;min-height:420px;padding:34px;overflow:hidden;border-radius:26px}
.cm131-feature-panel.voice{background:linear-gradient(150deg,#f3f0ff,#fbfaff);border:1px solid #ded7ff}
.cm131-feature-panel.writing{background:linear-gradient(150deg,#f4fcfa,#fbfffe);border:1px solid #d7eee8}
.cm131-panel-icon{display:grid;width:58px;height:58px;margin-bottom:22px;place-items:center;font-size:29px;background:#fff;border-radius:17px;box-shadow:0 10px 25px rgba(50,49,79,.08)}
.cm131-wave{position:absolute;right:32px;bottom:32px;left:32px;display:flex;height:86px;align-items:center;justify-content:center;gap:9px;padding:18px;background:rgba(255,255,255,.72);border:1px solid rgba(218,212,248,.8);border-radius:18px}
.cm131-wave i{display:block;width:8px;height:26px;background:#6a4be9;border-radius:999px}
.cm131-wave i:nth-child(2),.cm131-wave i:nth-child(7){height:44px}
.cm131-wave i:nth-child(3),.cm131-wave i:nth-child(6){height:64px}
.cm131-wave i:nth-child(4),.cm131-wave i:nth-child(5){height:38px}
.cm131-writing-demo{position:absolute;right:32px;bottom:32px;left:32px;display:grid;gap:12px;padding:20px 22px;color:#3d4650;font-family:Georgia,serif;font-size:22px;background:rgba(255,255,255,.78);border:1px solid #d8ece7;border-radius:18px}
.cm131-writing-demo .line{height:1px;background:#c9deda}
.cm131-section.math{background:linear-gradient(180deg,#fff,#fbfaff)}
.cm131-math-grid{display:grid;grid-template-columns:minmax(420px,.9fr) minmax(0,1.1fr);gap:70px;align-items:center}
.cm131-math-visual{position:relative;min-height:390px}
.cm131-math-card{position:absolute;display:grid;place-items:center;color:#40356e;background:#fff;border:1px solid #ded8f3;border-radius:22px;box-shadow:0 18px 45px rgba(58,47,110,.10)}
.cm131-math-card.fraction{top:24px;left:24px;width:145px;height:170px;font-size:38px;font-weight:900}
.cm131-math-card.fraction hr{width:70px;margin:0;border:0;border-top:3px solid #5a47ae}
.cm131-math-card.equation{top:120px;right:20px;width:280px;height:118px;font-family:Georgia,serif;font-size:23px}
.cm131-math-card.table{bottom:10px;left:80px;display:grid;width:310px;height:110px;grid-template-columns:repeat(3,1fr);gap:0;padding:16px;font-size:13px}
.cm131-math-card.table span,.cm131-math-card.table b{text-align:center}
.cm131-progress-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr);gap:70px;align-items:center}
.cm131-progress-card{padding:27px;background:#fff;border:1px solid #e1e4ec;border-radius:23px;box-shadow:0 16px 38px rgba(40,46,76,.08)}
.cm131-progress-row{display:flex;align-items:center;gap:14px}
.cm131-progress-row>span{font-size:31px}
.cm131-progress-row small{display:block;color:#858b9b;font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}
.cm131-progress-row strong{display:block;margin-top:4px;font-size:17px}
.cm131-progress-bar{height:10px;margin-top:20px;overflow:hidden;background:#ececf3;border-radius:999px}
.cm131-progress-bar span{display:block;height:100%;background:linear-gradient(90deg,#5a42d6,#7556f2);border-radius:inherit}
.cm131-progress-meta{display:flex;justify-content:space-between;gap:12px;margin-top:8px;color:#777d8d;font-size:10px}
.cm131-revision-chip{margin-top:18px;padding:12px 14px;color:#4c5d59;font-size:11px;font-weight:850;background:#eef9f6;border:1px solid #d7eee8;border-radius:12px}
.cm131-section.audience{background:#fff}
.cm131-audience-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.cm131-audience-grid article{min-height:220px;padding:26px;text-align:center;background:#fafafe;border:1px solid #e6e7ee;border-radius:20px}
.cm131-audience-grid article>span{font-size:34px}
.cm131-audience-grid h3{margin:13px 0 8px;font-size:18px}
.cm131-audience-grid p{margin:0;color:#747b8d;font-size:12px;line-height:1.7}
.cm131-final{padding:0 0 86px;background:#fff}
.cm131-final-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:38px;align-items:center;padding:44px;color:#fff;background:radial-gradient(circle at 88% 12%,rgba(103,239,197,.20),transparent 28%),linear-gradient(135deg,#291c63,#6849ef);border-radius:28px;box-shadow:0 26px 65px rgba(50,33,119,.23)}
.cm131-kicker.light{color:#e6e1ff;background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.16)}
.cm131-final h2{margin:12px 0 10px;color:#fff;font-size:clamp(30px,4vw,44px);line-height:1.05}
.cm131-final p{max-width:760px;margin:0;color:rgba(255,255,255,.74);line-height:1.7}
.cm131-final-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}
.cm131-button.white{color:#4b319f;background:#fff;border-color:#fff}
.cm131-button.ghost{color:#fff;background:rgba(255,255,255,.09);border-color:rgba(255,255,255,.23)}
html[dir="rtl"] .cm131-page,html[dir="rtl"] .cm131-tool-card,html[dir="rtl"] .cm131-feature-panel,html[dir="rtl"] .cm131-progress-card{direction:rtl}
html[dir="rtl"] .cm131-flow-arrow{transform:rotate(180deg)}
@media(max-width:1050px){
  .cm131-hero-grid,.cm131-focus-grid,.cm131-math-grid,.cm131-progress-grid{grid-template-columns:1fr}
  .cm131-hero-visual{width:min(100%,450px)}
  .cm131-tools-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cm131-final-card{grid-template-columns:1fr}
  .cm131-final-actions{justify-content:flex-start}
}
@media(max-width:760px){
  .cm131-container{width:min(100% - 26px,1180px)}
  .cm131-hero{padding:58px 0 66px}
  .cm131-hero-grid{gap:45px}
  .cm131-hero h1{font-size:42px}
  .cm131-hero-lead{font-size:14px}
  .cm131-section{padding:60px 0}
  .cm131-tools-grid,.cm131-duo-grid,.cm131-audience-grid{grid-template-columns:1fr}
  .cm131-tool-card{min-height:0}
  .cm131-flow{grid-template-columns:1fr}
  .cm131-flow-arrow{transform:rotate(90deg);text-align:center}
  html[dir="rtl"] .cm131-flow-arrow{transform:rotate(90deg)}
  .cm131-feature-panel{min-height:430px;padding:25px}
  .cm131-math-visual{min-height:320px}
  .cm131-math-card.fraction{width:112px;height:138px}
  .cm131-math-card.equation{right:0;width:220px;font-size:18px}
  .cm131-math-card.table{left:20px;width:260px}
  .cm131-final-card{padding:30px 24px;border-radius:23px}
  .cm131-final-actions,.cm131-hero-actions{display:grid;grid-template-columns:1fr}
  .cm131-button{width:100%}
}
