
:root {
  --ink: #172238;
  --muted: #67748a;
  --blue: #2f68e8;
  --blue-dark: #2357c6;
  --line: #dfe5ee;
  --soft: #f3f6fb;
  --paper: #ffffff;
}

/* Generator: announcements with tear-off phone numbers */
.noticeHeroBadge {
  width:216px; height:246px; flex:0 0 auto; padding:34px 25px 0; overflow:hidden;
  background:#fff; border:1px solid #dce3ec; border-radius:10px;
  box-shadow:0 20px 55px rgba(30,51,86,.09); transform:rotate(2deg);
}
.noticeHeroBadge > strong { display:block; text-align:center; font-size:25px; letter-spacing:.035em; }
.noticeHeroBadge > i { display:block; width:100%; height:6px; margin:17px 0 0; border-radius:8px; background:#e4e8ef; }
.noticeHeroBadge > i.short { width:72%; margin-top:9px; }
.noticeHeroBadge > div { height:91px; margin:35px -25px 0; border-top:1px dashed #aeb8c8; display:grid; grid-template-columns:repeat(3,1fr); }
.noticeHeroBadge > div span { min-width:0; padding:8px 0; border-left:1px dashed #ccd3de; writing-mode:vertical-rl; transform:rotate(180deg); color:#59677c; font-size:7px; white-space:nowrap; text-align:center; }
.noticeHeroBadge > div span:first-child { border-left:0; }
.noticeWorkspace {
  max-width:1380px; margin:0 auto 84px; padding:0 28px; display:grid;
  grid-template-columns:minmax(330px,410px) minmax(0,1fr); gap:24px; align-items:start;
}
.noticeBuilder .field textarea {
  width:100%; min-height:112px; padding:11px 13px; resize:vertical; border:1px solid #dbe1e9;
  border-radius:11px; outline:none; color:var(--ink); background:#fff; line-height:1.45; transition:.15s ease;
}
.noticeBuilder .field textarea:focus { border-color:#7ea2f4; box-shadow:0 0 0 3px #edf2ff; }
.noticePresets { display:grid; grid-template-columns:repeat(3,1fr); gap:7px; margin-bottom:16px; }
.noticePresets button { min-height:34px; padding:6px 7px; border:1px solid #e1e6ed; border-radius:9px; background:#fff; color:#526078; font-size:10px; font-weight:750; cursor:pointer; }
.noticePresets button.active { border-color:#b9cbf8; background:#f2f6ff; color:#315fc8; }
.noticeSegments { grid-template-columns:repeat(3,1fr); }
.noticeTextSizes { margin-bottom:15px; }
.fieldLabel { display:block; margin-bottom:4px; color:#536077; font-size:12px; font-weight:650; }
.noticeThemes { margin-top:10px; }
.themeSwatch.noticeMono { background:linear-gradient(135deg,#fff 0 48%,#e4e4e4 48% 52%,#fff 52%); }
.themeSwatch.noticeBlue { background:linear-gradient(135deg,#f3f7ff,#c9dcff); }
.themeSwatch.noticeWarm { background:linear-gradient(135deg,#fff8ea,#ffdba2); }
.noticePreview { min-width:0; padding:20px; overflow:hidden; background:#e5e9ef; border:1px solid #d9dee6; border-radius:24px; }
.noticeSheet {
  --notice-accent:#151515; --notice-soft:#f3f3f3; width:min(100%,760px); aspect-ratio:210/297;
  margin:0 auto; padding:5.5% 5.5% 4.2%; display:flex; flex-direction:column; background:#fff; color:#171717;
  box-shadow:0 4px 18px rgba(37,48,66,.16); container-type:inline-size; overflow:hidden;
}
.theme-notice-blue { --notice-accent:#2059bb; --notice-soft:#eaf1ff; }
.theme-notice-warm { --notice-accent:#9b5312; --notice-soft:#fff0d2; }
.noticeContent { min-height:0; flex:1; display:flex; flex-direction:column; align-items:center; justify-content:center; padding:2cqw 2cqw 5cqw; text-align:center; }
.noticeHeading { max-width:100%; margin:0; color:var(--notice-accent); font-size:7cqw; line-height:.95; font-weight:900; letter-spacing:.025em; overflow-wrap:anywhere; }
.noticeBody { max-width:92%; margin:4.8cqw 0 0; white-space:pre-line; font-size:3.3cqw; line-height:1.36; font-weight:590; overflow-wrap:anywhere; }
.noticePhoneMain { margin:5cqw 0 0; padding:1.4cqw 2.4cqw; border-radius:1.2cqw; background:var(--notice-soft); color:var(--notice-accent); font-size:4cqw; line-height:1; font-weight:850; letter-spacing:.02em; }
.size-small .noticeBody { font-size:2.7cqw; }
.size-large .noticeBody { font-size:4.05cqw; line-height:1.25; }
.tearOffs { height:29%; display:grid; grid-template-columns:repeat(var(--tear-count),1fr); border-top:.16cqw dashed #6e7784; }
.tearOff { min-width:0; position:relative; display:flex; align-items:center; justify-content:center; border-left:.13cqw dashed #a8afb9; overflow:hidden; }
.tearOff:first-child { border-left:0; }
.tearOff::after { content:""; position:absolute; top:-.2cqw; left:-.8cqw; width:1.3cqw; height:.8cqw; border-radius:50%; background:#fff; border:.11cqw solid #848d99; }
.tearOff span { max-height:90%; writing-mode:vertical-rl; transform:rotate(180deg); color:#283241; font-size:1.75cqw; line-height:1; font-weight:700; white-space:nowrap; }

@media (max-width:980px) {
  .noticeHeroBadge { display:none; }
  .noticeWorkspace { grid-template-columns:1fr; }
  .noticeBuilder { position:relative; top:0; }
}

@media (max-width:620px) {
  .noticeWorkspace { padding:0 12px; gap:14px; margin-bottom:66px; }
  .noticeBuilder { padding:7px 16px 20px; border-radius:18px; }
  .noticePreview { padding:10px; border-radius:16px; }
  .noticePresets { grid-template-columns:repeat(2,1fr); }
  .noticeHeading { font-size:7.4cqw; }
  .noticeBody { font-size:3.45cqw; }
  .size-small .noticeBody { font-size:2.8cqw; }
  .size-large .noticeBody { font-size:4.1cqw; }
}

@media print {
  .noticePage .noticeWorkspace { display:block; max-width:none; margin:0; padding:0; }
  .noticePage .noticePreview { display:block; margin:0; padding:0; overflow:visible; border:0; background:#fff; }
  .noticePage .noticeSheet { width:210mm; height:297mm; aspect-ratio:auto; margin:0; padding:14mm 14mm 11mm; box-shadow:none; overflow:hidden; }
  .noticePage .noticeContent { padding:5mm 6mm 12mm; }
  .noticePage .noticeHeading { font-size:19mm; }
  .noticePage .noticeBody { margin-top:11mm; font-size:8mm; }
  .noticePage .size-small .noticeBody { font-size:6.5mm; }
  .noticePage .size-large .noticeBody { font-size:9.5mm; }
  .noticePage .noticePhoneMain { margin-top:11mm; padding:3mm 5mm; border-radius:2mm; font-size:10mm; }
  .noticePage .tearOffs { height:77mm; border-top:.4mm dashed #555; }
  .noticePage .tearOff { border-left:.3mm dashed #888; }
  .noticePage .tearOff span { font-size:4mm; }
  .noticePage .tearOff::after { display:none; }
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: #eef2f7;
  color: var(--ink);
  font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
button, input, textarea { font: inherit; }
button { color: inherit; }

.siteHeader {
  height: 70px;
  padding: 0 max(24px, calc((100vw - 1380px) / 2));
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: rgba(255,255,255,.93);
  border-bottom: 1px solid #e8ecf2;
  position: sticky;
  top: 0;
  z-index: 20;
  backdrop-filter: blur(14px);
}
.brand { display:flex; align-items:center; gap:11px; color:var(--ink); text-decoration:none; font-weight:750; letter-spacing:-.02em; }
.brandMark { width:34px; height:34px; display:grid; place-items:center; border-radius:10px; background:var(--blue); color:white; box-shadow:0 7px 18px rgba(47,104,232,.22); }
.headerLink { color:#536077; text-decoration:none; font-size:14px; font-weight:600; }
.headerLink:hover { color:var(--blue); }

.hero {
  max-width: 1380px;
  margin: 0 auto;
  padding: 66px 28px 48px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:48px;
}
.eyebrow { margin:0 0 14px; color:var(--blue); text-transform:uppercase; letter-spacing:.12em; font-size:12px; font-weight:800; }
.hero h1 { margin:0; max-width:760px; color:#152036; font-size:clamp(42px, 5vw, 72px); line-height:.98; letter-spacing:-.055em; font-weight:790; }
.heroText { max-width:670px; margin:24px 0 0; color:#667187; font-size:18px; line-height:1.65; }
.heroBadge {
  width:190px;
  height:230px;
  flex:0 0 auto;
  padding:24px 23px;
  background:#fff;
  border:1px solid #dce3ec;
  border-radius:10px 10px 28px 10px;
  box-shadow:0 20px 55px rgba(30,51,86,.09);
  transform:rotate(2deg);
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  position:relative;
  overflow:hidden;
}
.heroBadge::after { content:""; position:absolute; inset:auto -35px -40px auto; width:120px; height:120px; border-radius:50%; background:#e9f0ff; }
.heroBadgeTop { font-size:13px; font-weight:800; color:var(--blue); margin-bottom:24px; }
.heroBadgeLine { width:100%; height:7px; background:#e7ebf1; border-radius:10px; margin-bottom:10px; }
.heroBadgeLine.short { width:68%; }
.heroBadge strong { margin-top:18px; font-size:54px; line-height:.9; letter-spacing:-.06em; color:#1f57cf; z-index:1; }
.heroBadge small { margin-top:7px; color:#718098; font-size:11px; font-weight:650; z-index:1; }

.workspace {
  max-width: 1380px;
  margin: 0 auto 84px;
  padding: 0 28px;
  display:grid;
  grid-template-columns:minmax(330px, 410px) minmax(0, 1fr);
  gap:24px;
  align-items:start;
}
.builder { background:#fff; border:1px solid #e0e5ed; border-radius:24px; box-shadow:0 10px 35px rgba(28,43,70,.06); padding:10px 24px 24px; position:sticky; top:92px; }
.stepBlock { padding:22px 0; border-bottom:1px solid #edf0f4; }
.stepTitle { display:flex; align-items:center; gap:10px; margin-bottom:17px; }
.stepTitle > span { width:26px; height:26px; display:grid; place-items:center; border-radius:8px; background:#eaf0ff; color:var(--blue); font-size:12px; font-weight:850; }
.stepTitle h2 { margin:0; font-size:16px; letter-spacing:-.02em; }
.field { display:flex; flex-direction:column; gap:7px; margin-top:11px; color:#536077; font-size:12px; font-weight:650; }
.field input, .addSubject input { width:100%; height:43px; padding:0 13px; border:1px solid #dbe1e9; border-radius:11px; outline:none; color:var(--ink); background:#fff; transition:.15s ease; }
.field input:focus, .addSubject input:focus { border-color:#7ea2f4; box-shadow:0 0 0 3px #edf2ff; }
.twoFields { display:grid; grid-template-columns:1fr 104px; gap:10px; }
.segmented { display:grid; grid-template-columns:1fr 1fr; margin-top:13px; padding:3px; gap:3px; background:#f2f4f8; border-radius:11px; }
.segmented button { height:34px; border:0; border-radius:8px; background:transparent; font-size:12px; font-weight:700; cursor:pointer; }
.segmented button.active { background:#fff; color:var(--blue); box-shadow:0 1px 5px rgba(34,48,77,.09); }
.subjectActions { display:flex; gap:13px; margin:-2px 0 12px; }
.subjectActions button { padding:0; border:0; background:none; color:var(--blue); font-size:11px; font-weight:700; cursor:pointer; }
.subjectGrid { display:grid; grid-template-columns:1fr 1fr; gap:7px; }
.subjectOption { min-height:36px; padding:8px 9px; display:flex; align-items:center; gap:8px; border:1px solid #e2e6ed; border-radius:9px; color:#435066; font-size:11px; font-weight:600; cursor:pointer; }
.subjectOption:has(input:checked) { border-color:#b9cbf8; background:#f4f7ff; color:#264eaa; }
.subjectOption input { width:15px; height:15px; margin:0; accent-color:var(--blue); }
.customChips { display:flex; flex-wrap:wrap; gap:6px; margin-top:9px; }
.customChips button { border:1px solid #cfdbf5; background:#f5f8ff; color:#365aa9; border-radius:20px; padding:5px 8px 5px 10px; font-size:11px; cursor:pointer; }
.customChips span { margin-left:6px; color:#8ba0cf; }
.addSubject { display:grid; grid-template-columns:1fr auto; gap:7px; margin-top:10px; }
.addSubject input { height:38px; font-size:11px; }
.addSubject button { border:0; border-radius:9px; padding:0 12px; background:#edf2ff; color:var(--blue); font-size:11px; font-weight:750; cursor:pointer; }
.themeGrid { display:grid; grid-template-columns:repeat(3, 1fr); gap:7px; }
.themeCard { border:1px solid #e1e6ed; border-radius:11px; background:#fff; padding:7px; text-align:left; cursor:pointer; }
.themeCard.selected { border-color:#7da1f1; box-shadow:0 0 0 2px #eaf0ff; }
.themeSwatch { display:block; height:31px; border-radius:7px; margin-bottom:7px; border:1px solid #e0e4eb; }
.themeSwatch.grid { background-color:#f7faff; background-image:linear-gradient(#d9e5ff 1px, transparent 1px),linear-gradient(90deg,#d9e5ff 1px,transparent 1px); background-size:8px 8px; }
.themeSwatch.mint { background:linear-gradient(135deg,#eafbf5,#c8f0e2); }
.themeSwatch.mono { background:linear-gradient(135deg,#fff,#ededed); }
.themeCard > span { display:block; }
.themeCard strong, .themeCard small { display:block; }
.themeCard strong { font-size:11px; }
.themeCard small { margin-top:2px; color:#8490a2; font-size:9px; }
.copiesRow { display:flex; justify-content:space-between; align-items:center; gap:10px; margin-top:13px; color:#647187; font-size:11px; font-weight:650; }
.segmented.compact { width:126px; margin:0; }
.segmented.compact button { height:29px; font-size:10px; }
.printButton { width:100%; min-height:52px; margin-top:20px; border:0; border-radius:13px; background:var(--blue); color:#fff; display:flex; align-items:center; justify-content:center; gap:9px; font-weight:750; font-size:14px; cursor:pointer; box-shadow:0 10px 24px rgba(47,104,232,.2); transition:.15s ease; }
.printButton:hover { background:var(--blue-dark); transform:translateY(-1px); }
.printButton:disabled { opacity:.4; cursor:not-allowed; transform:none; box-shadow:none; }
.printButton span { transform:rotate(-45deg); font-size:18px; }
.printHint { margin:8px 0 0; text-align:center; color:#8994a5; font-size:10px; }

.previewArea { min-width:0; background:#e5e9ef; border:1px solid #d9dee6; border-radius:24px; padding:20px; overflow:hidden; }
.previewHead { display:flex; justify-content:space-between; align-items:center; gap:20px; margin:0 2px 17px; }
.previewHead p { margin:0 0 3px; color:#303c50; font-size:13px; font-weight:800; }
.previewHead span { color:#7d899a; font-size:10px; }
.previewZoom { padding:6px 9px; background:rgba(255,255,255,.65); border-radius:8px; font-weight:700; }
.sheets { display:flex; flex-direction:column; align-items:center; gap:22px; }
.sheet { width:min(100%, 760px); aspect-ratio:210/297; padding:4.3%; background:#fff; box-shadow:0 4px 18px rgba(37,48,66,.16); container-type:inline-size; overflow:hidden; }
.labelsGrid { height:100%; display:grid; grid-template-columns:repeat(2, 1fr); grid-template-rows:repeat(6, 1fr); gap:1.6cqw; position:relative; }
.notebookLabel { position:relative; overflow:hidden; display:flex; flex-direction:column; align-items:center; justify-content:center; padding:2.2cqw 2.6cqw 1.8cqw; border-radius:1.05cqw; text-align:center; }
.notebookLabel::before { content:""; position:absolute; inset:0; border-radius:inherit; pointer-events:none; }
.labelKicker { margin:0 0 .7cqw; font-size:1.55cqw; line-height:1; font-weight:850; letter-spacing:.17em; }
.labelSubject { margin:0; max-width:92%; font-family:Georgia, "Times New Roman", serif; font-size:2.55cqw; line-height:1.02; font-weight:700; }
.labelRule { width:54%; height:1px; margin:1.25cqw 0 1.05cqw; opacity:.34; background:currentColor; }
.labelMeta { margin:0; font-size:1.42cqw; line-height:1.2; font-weight:620; }
.labelName { margin:.45cqw 0 0; font-size:1.58cqw; line-height:1.1; font-weight:820; }
.labelSchool { margin:.42cqw 0 0; font-size:1.28cqw; opacity:.72; }
.labelCorner { position:absolute; width:8cqw; height:8cqw; right:-3.5cqw; top:-3.8cqw; border-radius:50%; opacity:.55; }
.theme-grid .notebookLabel { color:#244371; background-color:#f9fbff; background-image:linear-gradient(rgba(98,145,222,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(98,145,222,.12) 1px,transparent 1px); background-size:2cqw 2cqw; border:.13cqw solid #99b7e7; }
.theme-grid .notebookLabel::before { border:.45cqw solid rgba(255,255,255,.78); box-shadow:inset 0 0 0 .13cqw rgba(99,140,207,.35); }
.theme-grid .labelCorner { background:#96b9f1; }
.theme-grid .labelKicker { color:#3869b4; }
.theme-mint .notebookLabel { color:#234c48; background:linear-gradient(145deg,#f3fdf9,#e0f7ee); border:.13cqw solid #9cd6c2; }
.theme-mint .notebookLabel::before { border:.45cqw solid rgba(255,255,255,.72); box-shadow:inset 0 0 0 .13cqw rgba(68,139,114,.28); }
.theme-mint .labelCorner { background:#82d1b6; }
.theme-mint .labelKicker { color:#39856f; }
.theme-mono .notebookLabel { color:#1d1d1d; background:#fff; border:.15cqw solid #5c5c5c; }
.theme-mono .notebookLabel::before { border:.35cqw solid #fff; box-shadow:inset 0 0 0 .1cqw #aaa; }
.theme-mono .labelCorner { background:#d8d8d8; }
.theme-mono .labelKicker { color:#333; }
.emptyPreview { position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; color:#8a95a5; text-align:center; }
.emptyPreview span { width:38px; height:38px; display:grid; place-items:center; border-radius:50%; background:#f0f3f7; color:#acb5c2; font-size:17px; }
.emptyPreview strong { margin-top:12px; color:#697589; font-size:1.8cqw; }
.emptyPreview p { margin:5px 0 0; font-size:1.3cqw; }

.how { max-width:1120px; margin:0 auto 100px; padding:0 28px; }
.how h2 { margin:0; max-width:580px; font-size:clamp(31px,4vw,48px); line-height:1.06; letter-spacing:-.045em; }
.howGrid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin-top:35px; }
.howGrid article { background:#fff; border:1px solid #e1e6ee; border-radius:18px; padding:25px; }
.howGrid article > span { color:#7ea2f4; font-size:11px; font-weight:850; letter-spacing:.08em; }
.howGrid h3 { margin:24px 0 8px; font-size:17px; letter-spacing:-.02em; }
.howGrid p { margin:0; color:#718096; font-size:13px; line-height:1.55; }
.faq { max-width:1120px; margin:0 auto 105px; padding:58px 28px 0; border-top:1px solid #dce2e9; display:grid; grid-template-columns:.8fr 1.2fr; gap:75px; }
.faqIntro h2 { margin:0; font-size:clamp(31px,4vw,47px); line-height:1.05; letter-spacing:-.045em; }
.faqIntro > p:last-child { max-width:370px; margin:18px 0 0; color:#718096; font-size:13px; line-height:1.65; }
.faqList details { border-bottom:1px solid #dce2e9; }
.faqList details:first-child { border-top:1px solid #dce2e9; }
.faqList summary { list-style:none; padding:19px 34px 19px 0; position:relative; color:#344157; font-size:14px; font-weight:720; cursor:pointer; }
.faqList summary::-webkit-details-marker { display:none; }
.faqList summary::after { content:"+"; position:absolute; right:4px; top:16px; color:#7693ce; font-size:21px; font-weight:400; }
.faqList details[open] summary::after { content:"–"; }
.faqList details p { margin:-5px 38px 19px 0; color:#748196; font-size:12px; line-height:1.65; }
.footer { min-height:82px; max-width:1380px; margin:0 auto; padding:22px 28px; border-top:1px solid #dfe4eb; display:flex; justify-content:space-between; align-items:center; gap:20px; color:#7b8799; font-size:11px; }
.footer strong { color:#4a576d; font-size:12px; }
.footer a { color:inherit; text-decoration:none; }
.footer a:hover { color:var(--blue); }
.footerBrand { display:flex; align-items:center; gap:18px; flex-wrap:wrap; }
.developerCredit { color:#61708a !important; font-weight:650; white-space:nowrap; }
.developerCredit:hover { color:var(--blue) !important; }

.adSlot {
  width:min(calc(100% - 56px), 1180px);
  min-height:112px;
  margin:0 auto 82px;
  border:1px dashed #cfd7e4;
  border-radius:16px;
  background:#f7f9fc;
  overflow:hidden;
}
.adSlot[hidden] { display:none !important; }
.adSlotFooter { margin-bottom:34px; }

.shareCta {
  max-width:1120px;
  margin:0 auto 72px;
  padding:34px 36px;
  display:grid;
  grid-template-columns:minmax(0, 1fr) auto;
  align-items:center;
  gap:36px;
  border:1px solid #dbe3ef;
  border-radius:22px;
  background:linear-gradient(135deg,#fff,#f5f8ff);
  box-shadow:0 10px 32px rgba(34,49,76,.045);
}
.shareCta .eyebrow { margin-bottom:9px; }
.shareCta h2 { margin:0; font-size:clamp(24px,3vw,34px); line-height:1.08; letter-spacing:-.035em; }
.shareCta > div > p:last-child { max-width:680px; margin:12px 0 0; color:#718096; font-size:13px; line-height:1.6; }
.shareAction { min-width:190px; text-align:center; }
.shareButton { min-width:180px; min-height:48px; padding:0 18px; border:0; border-radius:13px; background:var(--blue); color:#fff; font-size:13px; font-weight:750; cursor:pointer; box-shadow:0 9px 22px rgba(47,104,232,.18); }
.shareButton:hover { background:var(--blue-dark); }
.shareButton span { display:inline-block; margin-right:8px; transform:rotate(-45deg); font-size:16px; }
.shareFeedback { min-height:16px; margin:8px 0 0 !important; color:#647187 !important; font-size:10px !important; }

/* Главная страница Просто A4 */
.hubHero {
  min-height:590px;
  max-width:1380px;
  margin:0 auto;
  padding:88px 28px 92px;
  display:grid;
  grid-template-columns:minmax(0, 1fr) 360px;
  align-items:center;
  gap:70px;
}
.hubHeroCopy h1 {
  max-width:880px;
  margin:0;
  color:#152036;
  font-size:clamp(46px,6vw,82px);
  line-height:.96;
  letter-spacing:-.058em;
  font-weight:790;
}
.hubHeroCopy > p:last-of-type {
  max-width:690px;
  margin:26px 0 0;
  color:#667187;
  font-size:18px;
  line-height:1.7;
}
.hubPrimary {
  width:max-content;
  margin-top:32px;
  padding:15px 20px;
  display:flex;
  align-items:center;
  gap:18px;
  border-radius:13px;
  background:var(--blue);
  color:#fff;
  text-decoration:none;
  font-size:14px;
  font-weight:750;
  box-shadow:0 10px 26px rgba(47,104,232,.2);
}
.hubPrimary:hover { background:var(--blue-dark); }
.paperStack { height:390px; position:relative; }
.paper {
  width:235px;
  height:332px;
  position:absolute;
  top:23px;
  left:61px;
  background:#fff;
  border:1px solid #dde3eb;
  border-radius:7px 7px 24px 7px;
  box-shadow:0 24px 60px rgba(32,48,75,.11);
}
.paperBack { transform:rotate(-8deg) translate(-30px,8px); background:#eaf0fd; }
.paperFront { padding:42px 35px; transform:rotate(4deg); }
.paperFront::after { content:""; width:105px; height:105px; position:absolute; right:-35px; bottom:-32px; border-radius:50%; background:#edf2ff; }
.paperFront span { display:block; margin-bottom:62px; color:var(--blue); font-size:45px; line-height:1; font-weight:820; letter-spacing:-.06em; }
.paperFront i { display:block; width:100%; height:7px; margin:11px 0; border-radius:10px; background:#e7ebf1; }
.paperFront i.short { width:68%; }
.hubTools { max-width:1180px; margin:0 auto 110px; padding:72px 28px 0; border-top:1px solid #dce2e9; }
.hubSectionHead { max-width:670px; }
.hubSectionHead h2, .hubAbout h2, .seoIntro h2 { margin:0; color:#1c283d; font-size:clamp(32px,4vw,49px); line-height:1.05; letter-spacing:-.045em; }
.hubSectionHead > p:last-child { margin:17px 0 0; color:#718096; font-size:14px; line-height:1.65; }
.toolGrid { margin-top:36px; display:grid; gap:16px; }
.toolCard {
  min-height:190px;
  padding:28px;
  display:grid;
  grid-template-columns:58px minmax(0,1fr) auto;
  align-items:center;
  gap:22px;
  border:1px solid #dce3ec;
  border-radius:22px;
  background:#fff;
  color:inherit;
  text-decoration:none;
  box-shadow:0 10px 34px rgba(34,49,76,.05);
  transition:.16s ease;
}
.toolCard:hover { transform:translateY(-2px); border-color:#bfd0f5; box-shadow:0 15px 38px rgba(34,49,76,.09); }
.toolIcon { width:58px; height:58px; display:grid; place-items:center; border-radius:16px; background:#eaf0ff; color:var(--blue); font-size:20px; font-weight:850; }
.toolIcon.notice { background:#fff3dc; color:#a96112; }
.toolStatus { margin:0 0 7px; color:#3d7d62; font-size:10px; text-transform:uppercase; letter-spacing:.08em; font-weight:800; }
.toolCard h3 { margin:0; font-size:23px; letter-spacing:-.03em; }
.toolCard div > p:last-child { max-width:650px; margin:9px 0 0; color:#718096; font-size:13px; line-height:1.55; }
.toolArrow { width:42px; height:42px; display:grid; place-items:center; border-radius:50%; background:#f1f5fc; color:var(--blue); font-size:20px; }
.hubAbout, .seoIntro { max-width:1180px; margin:0 auto 110px; padding:64px 28px 0; border-top:1px solid #dce2e9; }
.hubBenefits { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin-top:38px; }
.hubBenefits article { padding:25px; border:1px solid #e1e6ee; border-radius:18px; background:#fff; }
.hubBenefits article > strong { color:#7ea2f4; font-size:11px; letter-spacing:.08em; }
.hubBenefits h3 { margin:23px 0 8px; font-size:17px; letter-spacing:-.02em; }
.hubBenefits p { margin:0; color:#718096; font-size:13px; line-height:1.55; }
.seoIntro { padding-top:58px; }
.seoIntro h2 { max-width:780px; }
.seoIntroGrid { display:grid; grid-template-columns:1fr 1fr; gap:38px; margin-top:28px; }
.seoIntroGrid p { margin:0; color:#68768b; font-size:14px; line-height:1.72; }

@media (max-width: 980px) {
  .hero { padding-top:48px; }
  .heroBadge { display:none; }
  .workspace { grid-template-columns:1fr; }
  .builder { position:relative; top:0; }
  .previewArea { padding:14px; }
  .hubHero { grid-template-columns:1fr; min-height:auto; padding-top:64px; }
  .paperStack { display:none; }
  .shareCta { margin-left:28px; margin-right:28px; }
}

@media (max-width: 620px) {
  .siteHeader { height:62px; padding:0 16px; }
  .brand { font-size:14px; }
  .brandMark { width:30px; height:30px; border-radius:9px; }
  .headerLink { display:none; }
  .hero { padding:42px 17px 32px; }
  .hero h1 { font-size:41px; }
  .heroText { margin-top:18px; font-size:15px; }
  .workspace { padding:0 12px; gap:14px; margin-bottom:66px; }
  .builder { padding:7px 16px 20px; border-radius:18px; }
  .twoFields { grid-template-columns:1fr 92px; }
  .subjectGrid { grid-template-columns:1fr; }
  .themeCard { padding:5px; }
  .themeSwatch { height:25px; }
  .themeCard small { display:none; }
  .previewArea { margin:0 -1px; border-radius:16px; padding:10px; }
  .previewHead { padding:2px 2px 0; }
  .previewZoom { display:none; }
  .sheet { width:100%; }
  .how { padding:0 17px; margin-bottom:70px; }
  .howGrid { grid-template-columns:1fr; }
  .faq { margin-bottom:72px; padding:45px 17px 0; grid-template-columns:1fr; gap:30px; }
  .footer { margin:0 17px; padding:22px 0; flex-direction:column; align-items:flex-start; }
  .footerBrand { flex-direction:column; align-items:flex-start; gap:6px; }
  .developerCredit { white-space:normal; }
  .adSlot { width:calc(100% - 34px); min-height:90px; margin-bottom:58px; }
  .shareCta { margin:0 17px 56px; padding:26px 22px; grid-template-columns:1fr; gap:22px; }
  .shareAction { min-width:0; width:100%; text-align:left; }
  .shareButton { width:100%; }
  .hubHero { padding:52px 17px 68px; }
  .hubHeroCopy h1 { font-size:44px; }
  .hubHeroCopy > p:last-of-type { margin-top:20px; font-size:15px; }
  .hubPrimary { width:100%; justify-content:space-between; margin-top:27px; }
  .hubTools { margin-bottom:72px; padding:52px 17px 0; }
  .toolGrid { margin-top:27px; }
  .toolCard { min-height:0; padding:21px; grid-template-columns:48px 1fr; gap:16px; }
  .toolIcon { width:48px; height:48px; border-radius:13px; }
  .toolArrow { display:none; }
  .toolCard h3 { font-size:19px; }
  .toolCard div > p:last-child { font-size:12px; }
  .hubAbout, .seoIntro { margin-bottom:72px; padding:48px 17px 0; }
  .hubBenefits, .seoIntroGrid { grid-template-columns:1fr; gap:14px; }
  .seoIntroGrid { margin-top:22px; }
}

@media print {
  @page { size:A4 portrait; margin:0; }
  html, body { width:210mm; background:#fff; }
  body { margin:0; print-color-adjust:exact; -webkit-print-color-adjust:exact; }
  .noPrint { display:none !important; }
  .workspace, .previewArea, .sheets { display:block; margin:0; padding:0; border:0; background:#fff; }
  .workspace { max-width:none; }
  .previewArea { overflow:visible; }
  .sheet { width:210mm; height:297mm; aspect-ratio:auto; padding:12mm; box-shadow:none; margin:0; break-after:page; page-break-after:always; overflow:hidden; }
  .sheet:last-child { break-after:auto; page-break-after:auto; }
  .labelsGrid { gap:3.4mm; }
}
