:root{font-family:var(--font-ui,"Golos Text"),system-ui,sans-serif;color:#24272b;background:#f5f6f8;font-synthesis:none;color-scheme:light}
*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible{outline:3px solid #adc6f5;outline-offset:3px}.topbar{height:88px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;background:white;border-bottom:1px solid #e4e6ea}.topbar h1{font-size:24px;font-weight:600;letter-spacing:-.7px;margin:0}.format{font-size:14px;color:#636a75;border:1px solid #e1e4e8;border-radius:6px;padding:6px 10px}.workspace{max-width:1440px;margin:0 auto;display:grid;grid-template-columns:370px minmax(0,1fr);gap:56px;padding:40px 5% 64px;align-items:start}.editor{background:#fff;border:1px solid #e4e6ea;border-radius:14px;padding:28px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:21px 16px}label{display:flex;flex-direction:column;gap:8px;font-size:14px;font-weight:500;min-width:0}.wide{grid-column:1/-1}input{width:100%;min-width:0;height:44px;border:1px solid #dce0e5;border-radius:7px;padding:10px 12px;background:white;color:#24272b;font-size:16px;transition:border-color .15s}input::placeholder{color:#8b9099;font-size:14px}input:hover{border-color:#aeb6c1}input:focus{border-color:#4263a3;outline:3px solid #e9effa}.count-label{display:grid;grid-template-columns:1fr 86px;align-items:center;padding-top:5px}.count-label input{font-variant-numeric:tabular-nums}.actions{display:grid;gap:10px;margin-top:28px}button{height:46px;border-radius:7px;font-size:15px;font-weight:500}.primary{display:flex;align-items:center;justify-content:space-between;background:#253e67;border:1px solid #253e67;color:#fff;padding:0 16px}.primary:hover{background:#1d3153}.primary span{font-size:22px;font-weight:400}.secondary{background:white;color:#363c45;border:1px solid #dce0e5}.secondary:hover{background:#f4f6f9}button:disabled{cursor:wait;opacity:.55}.message{font-size:13px;line-height:1.45;color:#657084;margin:12px 0 0}.message:empty{display:none}.error{color:#af2836}.preview-area{min-width:0}.preview-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 18px}.preview-toolbar h2{font-size:14px;font-weight:500;margin:0}.preview-toolbar span{color:#777f8b;font-size:13px}.paper-frame{width:100%;overflow:auto;padding:1px 2px 18px}.paper{width:100%;min-height:920px;background:white;padding:28px 5.3% 70px;box-shadow:0 3px 16px #2632470c;border:1px solid #e0e3e8;color:#000;font:10pt/1.18 "Times New Roman",Times,serif;overflow-wrap:anywhere}.doc-title{text-align:center;font-size:10pt;font-weight:400;margin:0 0 20px}.meta-table{width:100%;border-collapse:collapse;table-layout:fixed;margin:0 0 8px}.meta-table td{width:50%;padding:0 10px 7px 0;vertical-align:top}.meta-line{margin:0 0 8px;line-height:1.45}.filled{border-bottom:.5px solid #000;padding:0 2px}.blank{display:inline-block;border-bottom:.5px solid #000;min-width:100px;vertical-align:baseline}.meta-line .blank{min-width:65%}.signature{display:inline-block;width:130px;border-bottom:.5px solid #000}.teacher{margin-top:20px}.comments{margin:20px 0 6px}.comment-line{height:15px;border-bottom:.5px solid #000}.score-table{border-collapse:collapse;width:100%;table-layout:fixed;margin-top:20px;font:10pt/1.1 "Times New Roman",Times,serif;break-inside:avoid}.score-table th,.score-table td{border:.5px solid #000;padding:6px 4px;text-align:center;font-weight:400;overflow-wrap:normal}.score-table td{height:27px}.score-table.compact th{font-size:9pt}.answer-title{margin-top:26px}.continuation{margin-top:10px}
@media(min-width:1350px){.paper{min-height:1040px}}@media(max-width:1050px){.workspace{grid-template-columns:330px minmax(0,1fr);gap:28px;padding-left:24px;padding-right:24px}.editor{padding:22px}.paper{font-size:9pt;padding:24px 20px;min-height:770px}.score-table{font-size:9pt}.meta-table td{display:block;width:100%}.meta-table colgroup{display:none}.signature{width:90px}.score-table th{padding:5px 2px}}@media(max-width:760px){.topbar{height:72px;padding:0 22px}.topbar h1{font-size:22px}.workspace{display:block;padding:24px 18px 40px}.editor{max-width:520px;margin:0 auto 30px;padding:24px}.preview-area{max-width:640px;margin:auto}.paper{min-width:580px;min-height:820px;padding:24px 36px;font-size:10pt}.meta-table td{display:table-cell;width:50%}.preview-toolbar{padding:0 4px}.score-table{font-size:10pt}.paper-frame{border-radius:2px}.count-label{grid-template-columns:1fr 90px}}
@page{size:A4 portrait;margin:7.5mm 15mm 20mm}
@media print{html,body{background:white;margin:0;padding:0}.topbar,.editor,.preview-toolbar,noscript{display:none!important}.workspace,.preview-area,.paper-frame{display:block;margin:0;padding:0;width:auto;max-width:none;overflow:visible}.paper{width:auto;min-width:0;min-height:0;border:0;box-shadow:none;padding:0;font-size:10pt;overflow:visible}.doc-title{margin-bottom:20px}.meta-table td{display:table-cell;width:50%}.score-table{font-size:10pt}.score-table th{padding:6px 4px}.score-table,.meta-table,.meta-line,.comments,.answer-title{break-inside:avoid}.answer-title{break-after:avoid}.signature{width:130px}}

/* Fit the complete document to the available screen width. Print stays A4. */
.site-footer { padding: 0 18px 32px; text-align: center; font-size: 14px; }
.site-footer a, .privacy-page a { color: #253e67; text-underline-offset: 4px; }
.privacy-page { max-width: 760px; margin: 32px auto; padding: 32px; background: white; border: 1px solid #e4e6ea; border-radius: 14px; line-height: 1.65; overflow-wrap: anywhere; }
.privacy-page h1 { font-size: 28px; line-height: 1.25; }
.privacy-page h2 { font-size: 19px; margin-top: 28px; }
.privacy-page .revision { color: #657084; font-size: 14px; }
@media screen {
  .paper-frame { width: 100%; padding: 0; overflow: hidden; height: var(--preview-height, auto); }
  .paper { width: 794px; min-width: 794px; max-width: none; min-height: 1123px; margin: 0; padding: 28px 56px 76px; font: 10pt/1.18 "Times New Roman", Times, serif; transform: scale(var(--preview-scale, 1)); transform-origin: top left; }
  .paper .meta-table td { display: table-cell; width: 50%; }
  .paper .meta-table colgroup { display: table-column-group; }
  .paper .score-table { font-size: 10pt; }
  .paper .score-table th { padding: 6px 4px; }
  .paper .score-table.compact th { font-size: 9pt; }
  .paper .signature { width: 130px; }
}
@media screen and (max-width:760px) {
  .privacy-page { margin: 20px 16px; padding: 24px 20px; }
  .privacy-page h1 { font-size: 25px; }
}
@media print {
  .site-footer, .privacy-back { display: none !important; }
  .paper { transform: none !important; }
  .paper-frame { height: auto !important; overflow: visible !important; }
  .privacy-page { border: 0; margin: 0; padding: 0; max-width: none; }
}
/* Tool navigation and title page */
[hidden] { display: none !important; }
.tool-tabs { display:flex; gap:6px; padding:4px; border:1px solid #e4e6ea; border-radius:10px; background:#f5f6f8; }
.tool-tabs button { border:0; padding:0 18px; height:40px; color:#657084; background:transparent; border-radius:6px; white-space:nowrap; }
.tool-tabs button[aria-selected=true] { background:#fff; color:#24272b; box-shadow:0 1px 4px #26324712; }
textarea { font:inherit; font-size:16px; line-height:1.45; width:100%; min-width:0; padding:10px 12px; border:1px solid #dce0e5; border-radius:7px; color:#24272b; resize:vertical; }
textarea:focus-visible { outline:3px solid #e9effa; border-color:#4263a3; }
textarea::placeholder { color:#8b9099; font-size:14px; }
.title-sheet { display:flex; flex-direction:column; min-height:945px; font:14pt/1.4 "Times New Roman",Times,serif; color:#000; }
.title-sheet p { margin:0; white-space:pre-line; }
.title-institution { text-align:center; }
.title-subject { text-align:center; margin-top:100px; }
.title-subject h3 { font: bold 14pt/1.4 "Times New Roman",Times,serif; margin:0 0 16px; }
.title-subject > p:first-of-type { margin-bottom:16px; }
.title-authors { width:50%; margin:72px 0 64px auto; text-align:left; }
.title-authors .title-reviewer { margin-top:24px; }
.title-location { text-align:center; margin-top:auto !important; padding-top:24px; }
@media screen { .paper.title-paper { padding:76px 57px 76px 113px; } }
@media screen and (max-width:760px) {
  .topbar { gap:12px; padding:0 16px; }
  .tool-tabs { min-width:0; gap:2px; }
  .tool-tabs button { font-size:14px; padding:0 10px; }
  .format { flex-shrink:0; }
}
@media screen and (max-width:360px) { .topbar .format { display:none; } }
@media print {
  body.title-mode { page: title-page; }
  .title-sheet { min-height:247mm; }
  .title-paper { padding:0; }
  .title-subject { margin-top:26mm; }
  .title-authors { margin-top:19mm; margin-bottom:15mm; }
}
@page title-page { size:A4 portrait; margin:20mm 15mm 25mm 30mm; }
/* Shared controls and themes */
:root{--surface:#fff;--canvas:#f5f6f8;--text:#24272b;--muted:#657084;--line:#dce0e5;--accent:#253e67;--link:#253e67;--hover:#eef1f7}
:root[data-theme=dark]{color-scheme:dark;--surface:#20252d;--canvas:#15191f;--text:#eef1f6;--muted:#afb9c9;--line:#46505f;--accent:#a9c5fa;--link:#b5ceff;--hover:#303947}
@media screen{html,body{background:var(--canvas);color:var(--text)}.topbar,.editor,.privacy-page{background:var(--surface);border-color:var(--line)}input,textarea,select,.secondary{background:var(--surface);color:var(--text);border-color:var(--line)}.secondary:hover{background:var(--hover)}.tool-tabs{background:var(--canvas);border-color:var(--line)}.tool-tabs button{color:var(--muted)}.tool-tabs button[aria-selected=true]{background:var(--surface);color:var(--text)}.primary{background:var(--accent);border-color:var(--accent)}[data-theme=dark] .primary{color:#14223a}[data-theme=dark] .primary:hover{background:#c4d8ff}.message,.preview-toolbar span,.privacy-page .revision,.help{color:var(--muted)}.error{color:#bb3144}[data-theme=dark] .error{color:#ff9ba8}.site-footer a,.privacy-page a,.help a{color:var(--link)}.paper{color-scheme:light;color:#000;background:white}.paper.bibliography-paper{padding:76px 57px 76px 113px}}
select{font:inherit;font-size:16px;width:100%;min-width:0;min-height:44px;padding:10px;border:1px solid var(--line);border-radius:7px}button,select,textarea{outline-offset:3px}button:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #829fd2}.topbar{height:auto;min-height:88px;gap:20px;padding-top:16px;padding-bottom:16px}.tool-tabs{min-width:0;flex-wrap:wrap}.tool-tabs button{white-space:normal;height:auto;min-height:42px}.theme-toggle{padding:0 14px;flex-shrink:0}.utility-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}.utility-actions button{height:auto;min-height:42px;padding:8px}.help{font-size:13px;line-height:1.55;margin:0 0 16px}.help summary{cursor:pointer;text-decoration:underline;text-underline-offset:3px}.source-list{margin:20px 0}.source-row{padding:12px 0;border-bottom:1px solid var(--line)}.source-row p{font-size:14px;margin:0 0 8px;overflow-wrap:anywhere}.source-row>div{display:flex;flex-wrap:wrap;gap:5px}.source-row button{height:34px;padding:0 8px;font-size:12px}.bibliography-sheet{font:14pt/1.5 "Times New Roman",Times,serif}.bibliography-sheet h3{text-align:center;font: bold 14pt/1.5 "Times New Roman",Times,serif;margin:0 0 12pt}.bibliography-sheet p{margin:0;text-indent:1.25cm;text-align:justify;overflow-wrap:anywhere}.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,12px);padding:12px 20px;border-radius:10px;max-width:calc(100% - 32px);background:var(--text);color:var(--canvas);font-size:14px;box-shadow:0 4px 24px #0003;opacity:0;pointer-events:none;transition:opacity .15s,transform .15s;z-index:20}.toast.visible{opacity:1;transform:translate(-50%,0)}
@media(max-width:760px){.topbar{flex-wrap:wrap;gap:10px;justify-content:flex-end}.tool-tabs{width:100%;display:grid;grid-template-columns:1fr 1fr 1fr;order:1}.tool-tabs button{font-size:13px;padding:8px 5px;line-height:1.3}.theme-toggle{height:34px;font-size:13px}.editor{padding:20px}.fields{gap:18px 12px}input{padding:10px 9px;font-size:16px}.workspace{padding-left:12px;padding-right:12px}.utility-actions button{font-size:14px}}
@media print{.toast{display:none!important}html,body{color:#000!important;background:#fff!important}body.bibliography-mode{page:bibliography-page}.bibliography-paper{padding:0}.bibliography-sheet p{orphans:2;widows:2}.bibliography-sheet h3{break-after:avoid}}
@page bibliography-page{size:A4 portrait;margin:20mm 15mm 20mm 30mm}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}

.tool-heading{font-size:18px;line-height:1.4;font-weight:600;margin:0 0 8px}
/* Portal integration: shared theme, clear return path, two generators. */
:root {font-family:var(--font-ui,"Golos Text"),system-ui,sans-serif;--accent:#2758ce;--canvas:#f5f7fb;--text:#243147;--surface:#fff;--line:#e8ecf2;--link:#2758ce;}
:root[data-theme=dark] {--canvas:#111925;--surface:#1a2535;--text:#e1e8f3;--line:#334159;--accent:#a9c5fa;--link:#b5ceff;}
.back-link {color:var(--link);font-size:14px;white-space:nowrap;text-decoration:none;}
.back-link:hover {text-decoration:underline;}
.tool-tabs {margin-left:auto;}
.editor .help {line-height:1.6;}
@media(max-width:760px){.tool-tabs{grid-template-columns:1fr 1fr;}.back-link{margin-right:auto;}.utility-actions{grid-template-columns:1fr;}}
@media print {.back-link,.site-footer,.toast {display:none!important;}}
