

/* Start:/bitrix/templates/candys-rise/css/foba-helper-ui.css?178929622010101*/
/* Interface-only overrides. Game descriptions and theme colors stay intact. */
.foba-enhanced { --foba-ui-accent:#00d8e8; --foba-accent:#154e55; --foba-text-main:#e8edf0; min-width:0; }
.foba-enhanced *, .rules-sidebar *, .rules-content * { box-sizing:border-box; }
.foba-enhanced [hidden], .rules-sidebar [hidden] { display:none !important; }
.foba-enhanced .filter-controls { display:flex; flex-direction:column; padding:1rem; border:1px solid #363d43; border-radius:12px; background:#191d21; gap:.85rem; margin-bottom:1.25rem; }
.foba-enhanced .filter-primary-row { display:flex; flex-wrap:wrap; align-items:end; gap:.75rem; }
.foba-enhanced .search-container { flex:1 1 17rem; min-width:0; }
.foba-enhanced .foba-input, .foba-enhanced .foba-select { min-height:46px; font:inherit; font-size:1rem; min-width:0; max-width:100%; width:100%; padding:.75rem; border:1px solid #44515d; border-radius:7px; background-color:#11171d; color:#f1f5f9; }
.foba-enhanced .foba-ui-sort { display:flex; flex-direction:column; gap:.35rem; flex:0 1 17rem; min-width:0; font-size:.8rem; color:#bdc7cf; }
.foba-enhanced .filter-toggle-btn { min-height:46px; padding:.7rem 1rem; color:#e8edf0; }
.foba-enhanced .filter-panel { grid-template-columns:repeat(auto-fit,minmax(min(100%,190px),1fr)); padding:1rem; gap:1rem; background:#13171b; border-color:#35414a; }
.foba-enhanced .filter-group label { text-transform:none; font-size:.86rem; line-height:1.4; color:#c4cdd4; }
.foba-ui-summary { display:flex; flex-wrap:wrap; align-items:center; gap:.65rem; outline-offset:5px; }
.foba-ui-count { margin-right:auto; color:#dce7ed; font-size:.94rem; font-variant-numeric:tabular-nums; }
.foba-ui-button, .foba-ui-chip { border:1px solid #46535f; border-radius:7px; padding:.55rem .85rem; background:#242d35; color:#e8f0f5; font:inherit; font-size:.86rem; line-height:1.35; cursor:pointer; min-height:40px; }
.foba-ui-button:hover, .foba-ui-chip:hover { border-color:#00d8e8; background:#17363c; }
.foba-ui-chips { display:flex; flex-wrap:wrap; gap:.4rem; }
.foba-ui-chips:empty { display:none; }
.foba-ui-chip { border-color:#365c65; color:#bcecf0; max-width:100%; overflow-wrap:anywhere; text-align:left; }
.foba-ui-options { display:flex; gap:1rem; }
.foba-ui-check { display:flex; align-items:center; gap:.5rem; min-height:32px; color:#becad2; font-size:.88rem; cursor:pointer; }
.foba-ui-check input { width:18px; height:18px; accent-color:#00aebd; flex:none; }
.foba-enhanced :is(button,a,input,select,[role="button"]):focus-visible, .rules-sidebar :is(button,input,a):focus-visible { outline:2px solid #67e8f9; outline-offset:3px; }
.foba-enhanced .tabs-header, .foba-enhanced .rb-tabs { gap:.5rem; flex-wrap:wrap; margin-bottom:1rem; }
.foba-enhanced .tab-btn, .foba-enhanced .rb-tab { min-height:42px; padding:.65rem .95rem; white-space:normal; line-height:1.35; }
.foba-enhanced .grid-2, .foba-enhanced .keywords-grid { grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr)); gap:1rem; }
.foba-enhanced .filterable-item { min-width:0; overflow-wrap:anywhere; }
.foba-enhanced .tab-content.active { opacity:1; }
.foba-enhanced .item-header { align-items:flex-start; gap:.7rem; }
.foba-enhanced .item-header h3 { min-width:0; line-height:1.3; }
.foba-enhanced .cost-badge { flex-shrink:0; white-space:nowrap; }
.foba-enhanced .item-description { font-size:.98rem; line-height:1.6; }
.foba-enhanced .multi-select-dropdown { max-height:18rem; overflow:auto; overscroll-behavior:contain; z-index:30; }
.foba-enhanced .multi-select-option { min-height:40px; }
.foba-ui-done { display:none; grid-column:1/-1; }
.foba-enhanced .no-results { grid-column:1/-1; padding:2rem 1rem; line-height:1.6; }
.foba-enhanced .no-results p { margin:0 0 1rem; }
.foba-enhanced .expandable-trigger { min-height:40px; display:flex; align-items:center; cursor:pointer; }
.foba-hub.helper-section .grid-2 { grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr)) !important; }
.foba-hub.helper-section .tool-card { text-align:center; padding:1.25rem !important; min-height:150px; }
.foba-hub.helper-section .tool-card :is(h3,p,.card-icon) { text-align:center; }
.foba-hub.helper-section .tool-card h3 { font-size:1.05rem !important; line-height:1.4; }
.foba-hub.helper-section .tool-card p { font-size:.9rem !important; line-height:1.45 !important; }
.foba-hub.helper-section .card-icon { font-size:1.8rem !important; }
.rules-layout { min-width:0; }
.rules-content { min-width:0; overflow-wrap:anywhere; }
.rules-content .rule-text { line-height:1.7; }
.rules-content .chapter-nav { gap:1rem; flex-wrap:wrap; }
.rules-sidebar { overscroll-behavior:contain; }
.rules-sidebar .foba-input { width:100%; box-sizing:border-box; margin-bottom:1rem; font-size:16px; min-height:44px; }
.rules-sidebar .chapter-link { display:block; padding:.65rem .75rem; line-height:1.4; }
.foba-nav-close { display:none; }
@media (max-width:768px) {
  .helper-section.foba-enhanced { padding:1rem .65rem; }
  .foba-enhanced .helper-header { align-items:flex-start; flex-direction:column; gap:.65rem; margin-bottom:1.2rem; }
  .foba-enhanced .page-title { font-size:clamp(1.6rem,6vw,2rem); line-height:1.2; overflow-wrap:anywhere; }
  .foba-enhanced .grid-2, .foba-enhanced .keywords-grid, .foba-enhanced .rb-grid { grid-template-columns:minmax(0,1fr); }
  .foba-enhanced .filter-controls { padding:.8rem; }
  .foba-enhanced .search-container { flex-basis:100%; }
  .foba-enhanced .foba-ui-sort { flex:1 1 10rem; }
  .foba-enhanced .filter-panel { grid-template-columns:minmax(0,1fr); padding:.8rem; }
  .foba-enhanced .foba-ui-done { display:block; width:100%; }
  .foba-enhanced .foba-ui-summary { gap:.55rem; }
  .foba-enhanced .foba-ui-count { flex-basis:100%; }
  .foba-enhanced .tabs-header, .foba-enhanced .rb-tabs { flex-wrap:nowrap; overflow-x:auto; padding-bottom:.5rem; scrollbar-width:thin; }
  .foba-enhanced .tab-btn, .foba-enhanced .rb-tab { flex:0 0 auto; white-space:nowrap; max-width:85vw; }
  .foba-enhanced .item-card, .foba-enhanced .keyword-card, .foba-enhanced .race-card { padding:1rem; }
  .foba-enhanced .multi-select-dropdown { position:static; margin-top:.5rem; box-shadow:none; }
  .foba-hub.helper-section .grid-2 { grid-template-columns:minmax(0,1fr) !important; }
  .foba-hub.helper-section .tool-card { min-height:0; }
  .foba-nav-open { overflow:hidden; }
  .rules-layout { display:block; }
  .rules-content { padding:1rem .75rem !important; }
  .rules-sidebar { width:min(88vw,340px) !important; max-height:100dvh; overflow-y:auto; z-index:1002 !important; }
  .sidebar-overlay { z-index:1001 !important; }
  .foba-nav-close { display:block; margin:0 0 1rem auto; }
  .foba-module-header { gap:.75rem; flex-wrap:wrap; }
  .foba-module-header .foba-title { font-size:1.7rem; }
  .chapter-nav .foba-btn { flex:1; text-align:center; }
  .rb-container.foba-enhanced { width:100%; padding:1rem .65rem; }
  .foba-list.foba-enhanced .scenario-grid { grid-template-columns:minmax(0,1fr); padding:.65rem; }
}
@media (prefers-reduced-motion:reduce) { .foba-enhanced *, .rules-sidebar { animation:none !important; transition:none !important; scroll-behavior:auto !important; } }
@media (prefers-reduced-motion:reduce) { .foba-enhanced .filterable-item { opacity:1; } }

/* Category panels are multi-select filters, distinct from navigation tabs. */
.foba-enhanced .foba-facet { min-width:0; margin:0 0 1rem; padding:.9rem; border:1px solid #343f48; border-radius:10px; background:#151a1e; }
.foba-enhanced .foba-facet-head { display:flex; flex-wrap:wrap; align-items:baseline; gap:.35rem .85rem; margin-bottom:.7rem; }
.foba-enhanced .foba-facet-title { margin:0; color:#e4edf2; font:600 .96rem/1.4 Inter,sans-serif; text-transform:none; }
.foba-enhanced .foba-facet-hint { color:#aebcc6; font-size:.8rem; line-height:1.4; }
.foba-enhanced .foba-facet-options { display:flex; flex-wrap:wrap !important; align-items:stretch; gap:.5rem; padding:0; margin:0; border:0; background:none; overflow:visible; }
.foba-enhanced .foba-facet-choice { display:flex; align-items:center; justify-content:flex-start; flex:0 1 auto; gap:.45rem; min-width:0; max-width:22rem; min-height:44px; margin:0; padding:.6rem .75rem; border:1px solid #465560; border-radius:7px; background:#202930; color:#dce5eb; font:500 .9rem/1.35 Inter,sans-serif; text-align:left; white-space:normal; box-shadow:none; }
.foba-enhanced .foba-facet-choice::after { content:none; }
.foba-enhanced .foba-facet-choice:hover:not([aria-disabled="true"]) { border-color:#7ccbd3; background:#263b43; color:#fff; }
.foba-enhanced .foba-facet-choice.active { border-color:#31d0dd; background:#123e45; color:#d1fbff; }
.foba-enhanced .foba-facet-choice[aria-disabled="true"] { background:#191f24; color:#8897a3; border-color:#303a43; cursor:not-allowed; }
.foba-enhanced .foba-facet-check { display:inline-block; flex:none; width:1em; font-size:.9rem; color:#63eff5; }
.foba-enhanced .foba-facet-check[hidden] { display:inline-block !important; visibility:hidden; }
.foba-enhanced .foba-facet-label { min-width:0; overflow-wrap:anywhere; }
.foba-enhanced .foba-facet-count { flex:none; min-width:2.1em; margin-left:auto; padding:.12rem .35rem; border-radius:4px; color:#b9cad5; background:#11181d; font-size:.75rem; text-align:center; font-variant-numeric:tabular-nums; }
.foba-enhanced .foba-facet-choice.active .foba-facet-count { background:#0b2a30; color:#aff7ff; }
.foba-enhanced .foba-facet-more { width:100%; margin-top:.6rem; min-height:44px; }
.foba-enhanced .filter-primary-row > .filter-toggle-btn { flex:0 0 auto; }
@media(max-width:768px) {
  .foba-enhanced .foba-facet { padding:.75rem; }
  .foba-enhanced .foba-facet-options { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
  .foba-enhanced .foba-facet-choice { max-width:none; width:100%; padding:.6rem .45rem; gap:.3rem; font-size:.84rem; }
  .foba-enhanced .foba-facet-hint { font-size:.76rem; }
  .foba-enhanced .foba-facet-count { padding:.12rem .25rem; min-width:1.7em; }
}
@media(max-width:380px) { .foba-enhanced .foba-facet-options { grid-template-columns:minmax(0,1fr); } }

/* End */


/* Start:/foba-helper/rules_books/generator-v2.css?179229601628666*/
/* FOBA generators: scoped, loaded in the head before the content is painted. */
.foba-generator{--fg-accent:var(--ds-accent,#73DCE6);--fg-bg:var(--ds-bg,#101419);--fg-panel:var(--ds-panel,#182127);--fg-section:var(--ds-inset,#11191F);--fg-border:var(--ds-line,#3D515B);--fg-muted:var(--ds-muted,#BACAD2);color:var(--ds-text,#EDF3F6);max-width:1280px;margin:0 auto;padding:0 0 48px;font-family:var(--ds-font,'Tektur',sans-serif);font-size:16px;line-height:1.6;overflow-wrap:anywhere;color-scheme:dark}
.foba-generator *{box-sizing:border-box}
.foba-generator header{position:static;inset:auto;z-index:auto;width:auto;height:auto;min-height:0;box-shadow:none;background:none;border:0;padding:0}
.foba-generator [hidden]{display:none!important}
.foba-generator h1,.foba-generator h2,.foba-generator h3,.foba-generator h4{font-family:var(--ds-font,'Tektur',sans-serif);line-height:1.25;letter-spacing:0;text-transform:none;color:var(--ds-text,#EDF3F6);margin:0 0 16px;text-wrap:balance}
.foba-generator h1{font-size:clamp(25px,3.4vw,34px)}
.foba-generator h2{font-size:clamp(22px,2.8vw,27px)}
.foba-generator h3{font-size:20px}.foba-generator h4{font-size:17px}
.foba-generator p{margin:0 0 14px}.foba-generator ul,.foba-generator ol{padding-left:23px;margin:10px 0 18px}
.foba-generator a{color:var(--fg-accent);text-decoration:underline;text-underline-offset:3px}
.foba-generator :is(.fg-header,.generator-header){display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"back eyebrow" "title title" "lead lead";align-items:center;gap:14px 18px;margin:0 0 24px;padding:28px 32px;border:1px solid var(--fg-border);border-top:3px solid var(--ds-brand,#FFA3A3);border-radius:16px;background:linear-gradient(120deg,#25262E 0,var(--fg-panel) 58%);box-shadow:0 8px 28px #0002}
.foba-generator :is(.fg-header,.generator-header)>a{grid-area:back;display:inline-block;margin:0;font-size:13px;line-height:1.4}
.foba-generator :is(.fg-header,.generator-header)>:is(.fg-eyebrow,.generator-eyebrow){grid-area:eyebrow;justify-self:end;text-align:right;font-size:12px;line-height:1.4;letter-spacing:.055em;margin:0;color:var(--ds-brand,#FFA3A3)}
.foba-generator :is(.fg-header,.generator-header)>h1{grid-area:title;margin:2px 0 0;line-height:1.18}
.foba-generator :is(.fg-header,.generator-header)>p:not(.fg-eyebrow):not(.generator-eyebrow){grid-area:lead;max-width:74ch;font-size:16px;line-height:1.65;margin:0;color:var(--fg-muted)}
.foba-generator :is(.fg-muted,.generator-note){color:var(--fg-muted);font-size:14px;line-height:1.55}
.foba-generator :is(.fg-step,.fg-card,.generator-panel,.generator-result-card){background:var(--fg-panel);border:1px solid var(--fg-border);border-radius:14px;padding:22px;margin-bottom:18px;min-width:0}
.foba-generator :is(.fg-step,.generator-panel)>:last-child,.foba-generator :is(.fg-card,.generator-result-card)>:last-child{margin-bottom:0}
.foba-generator :is(.fg-grid,.generator-choice-grid,.generator-module-grid){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:16px 0 20px;align-items:stretch}
.foba-generator :is(.fg-choice,.generator-choice,.generator-module){appearance:none;display:flex;flex-direction:column;gap:6px;justify-content:flex-start;text-align:left;white-space:normal;width:100%;min-width:0;min-height:70px;padding:15px 16px;background:#121b22;border:1px solid #43545f;border-radius:10px;color:#edf3f7;font:inherit;line-height:1.4;cursor:pointer;position:relative;transition:border-color .15s,background-color .15s}
.foba-generator :is(.fg-choice,.generator-choice,.generator-module):hover{border-color:#799da9;background:#202c33}
.foba-generator :is(.fg-choice,.generator-choice,.generator-module)[aria-pressed=true],.foba-generator .fg-choice.selected,.foba-generator .generator-choice.is-selected{border:2px solid var(--fg-accent);padding:14px 15px;background:#1a3943;box-shadow:inset 0 0 0 1px #8ee5e919}
.foba-generator .fg-choice[aria-pressed=true] .fg-choice-title{color:#bff5f7}
.foba-generator .fg-choice[data-module]{min-height:52px;justify-content:center}
.foba-generator .generator-module:not(button){cursor:default;background:#1b2c33;border-color:#57727d}
.foba-generator .generator-module>span{font-size:13px;color:#b9cbd3}
.foba-generator :is(.fg-choice,.generator-choice,.generator-module) strong{display:block;font-size:16px;color:#f1f8fc}
.foba-generator :is(.fg-choice,.generator-choice,.generator-module) :is(small,.fg-muted,.generator-note){display:block;color:#b9cbd3;font-size:13px}
.foba-generator button:focus-visible,.foba-generator input:focus-visible,.foba-generator textarea:focus-visible,.foba-generator select:focus-visible,.foba-generator a:focus-visible,.foba-generator summary:focus-visible{outline:3px solid #f3c87a;outline-offset:3px}
.foba-generator button:disabled{opacity:.45;cursor:not-allowed}
.foba-generator :is(.fg-toolbar,.fg-actions,.generator-actions){display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:16px 0}
.foba-generator .fg-workspace-nav{padding:18px 22px;margin:0 0 24px;border:1px solid var(--fg-border);border-radius:14px;background:var(--fg-panel)}
.foba-generator .fg-workspace-nav>.fg-toolbar{justify-content:space-between;gap:8px 14px;margin:0 0 14px;padding:0;border:0;background:none}
.foba-generator .fg-workspace-nav>.fg-toolbar>.fg-muted{font-size:13px;line-height:1.5;flex:1 1 180px}
.foba-generator .fg-workspace-nav>.fg-toolbar>.fg-button{min-height:44px;padding:9px 12px;font-size:13px;background:transparent}
.foba-generator :is(.fg-button,.generator-button,.generator-actions button,.fg-actions button){appearance:none;width:auto;min-height:44px;padding:10px 16px;line-height:1.3;border:1px solid #52626b;border-radius:9px;background:#27333b;color:#edf3f7;font:inherit;font-size:14px;cursor:pointer;text-decoration:none;white-space:normal}
.foba-generator :is(.fg-button,.generator-button,.generator-actions button,.fg-actions button):hover{background:#34464f;border-color:var(--fg-accent)}
.foba-generator :is(.fg-button--primary,.generator-button-primary,.generator-primary){background:var(--ds-brand,#FFA3A3);border-color:var(--ds-brand,#FFA3A3);color:#21191D;font-weight:700}
.foba-generator :is(.fg-button--primary,.generator-button-primary,.generator-primary):hover{background:#FFC2C2;color:#21191D}
.foba-generator .generator-actions>button:not(.secondary){background:var(--ds-brand,#FFA3A3);border-color:var(--ds-brand,#FFA3A3);color:#21191D;font-weight:700}
.foba-generator .generator-actions>button:not(.secondary):hover{background:#FFC2C2}
.foba-generator .fg-button[aria-pressed=true]{background:#1a3943;border-color:var(--fg-accent);color:#d4f7f8}
.foba-generator :is(input:not([type=checkbox]):not([type=radio]),textarea,select){display:block;width:100%;max-width:100%;padding:11px 12px;background:#11171b;border:1px solid #51626c;border-radius:9px;color:#edf3f7;font:inherit;font-size:16px;min-height:44px;line-height:1.45}
.foba-generator textarea{resize:vertical;min-height:88px}
.foba-generator label{display:block;margin-bottom:7px;font-size:14px;color:#d4e2e8}
.foba-generator :is(.fg-field,.generator-field){min-width:0;margin:12px 0 20px}
.foba-generator :is(.fg-columns,.generator-form-grid){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 20px;align-items:start;margin:18px 0}
.foba-generator .fg-columns>.fg-field{margin:0}
.foba-generator .fg-field>span{display:block;margin-bottom:6px}
.foba-generator .fg-field>small{display:block;margin-top:6px;font-size:12px;line-height:1.45}
.foba-generator :is(.fg-progress,.generator-progress){margin:0 0 16px}
.foba-generator .generator-progress>span{display:block;font-size:12px;color:#b9cbd3;margin-bottom:6px}
.foba-generator :is(.fg-progress,.generator-progress) progress{width:100%;height:6px;accent-color:var(--fg-accent)}
.foba-generator :is(.fg-progress,.generator-progress) :is(nav,.fg-toolbar){display:flex;gap:6px;flex-wrap:wrap;align-items:center;margin:10px 0}
.foba-generator :is(.fg-progress,.generator-progress) button{appearance:none;padding:7px 10px;min-height:44px;background:transparent;border:1px solid #45565f;border-radius:8px;color:#b7c8d1;font:inherit;font-size:13px;cursor:pointer}
.foba-generator :is(.fg-progress,.generator-progress) button[aria-current=step]{border-color:var(--fg-accent);background:#173039;color:#bff7f8}
.foba-generator .fg-error,.foba-generator .generator-error{border-left:3px solid #ed9ba2;background:#36252b;padding:12px 14px;border-radius:6px;color:#ffe3e7;margin:14px 0}
.foba-generator :is(.fg-tag,.generator-badge){display:inline-block;max-width:100%;padding:3px 9px;border:1px solid #48616b;background:#23343b;border-radius:20px;color:#bfedf0;font-size:12px;margin:0 5px 5px 0;vertical-align:middle}
.foba-generator .fg-style-image{display:block;width:100%;aspect-ratio:2/1;object-fit:contain;border-radius:8px;background:#f4f0e8;margin:0 0 10px}
.foba-generator .fg-style-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.foba-generator :is(.fg-event,.generator-answer-row){border:1px solid var(--fg-border);border-radius:12px;padding:18px;margin-bottom:14px;background:#192128}
.foba-generator .fg-event-header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:12px}
.foba-generator .fg-event-header h3{margin:0}.foba-generator .fg-event .fg-toolbar{margin:8px 0 0}
.foba-generator .fg-event[data-pinned=true]{border-color:#cba766}
.foba-generator :is(.fg-details,details){border:1px solid #40515a;border-radius:9px;padding:12px 14px;margin:12px 0;background:#151d22}
.foba-generator summary{color:#c7f2f4;cursor:pointer;font-size:15px;font-weight:600}
.foba-generator details[open]>summary{margin-bottom:14px}
.foba-generator details :is(p,li){font-size:14px;line-height:1.65}
.foba-generator :is(.generator-result-grid,.fg-result-grid){display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:20px;align-items:start}
.foba-generator .generator-result-card{margin:0}.foba-generator .generator-result-card h3{font-size:21px;overflow-wrap:anywhere}
.foba-generator .generator-answer-list{display:grid;gap:8px}.foba-generator .generator-answer-row{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;padding:12px;margin:0}
.foba-generator .generator-answer-row p{margin:0;font-size:14px}.foba-generator .generator-answer-row button{font-size:13px;min-height:38px;padding:8px 12px}
.foba-generator .generator-answer-list>button{display:flex;flex-direction:column;gap:7px;text-align:left;padding:16px;border:1px solid var(--fg-border);border-radius:10px;background:#19272f;color:#edf3f7;font:inherit;cursor:pointer}.foba-generator .generator-answer-list>button:hover{border-color:var(--fg-accent)}.foba-generator .generator-answer-list>button span{font-size:14px;color:#b9ced5}
.foba-generator button.secondary{background:transparent;color:#c8e1e4;border:1px solid #58727d}
.foba-generator .fg-note,.foba-generator .generator-notice{padding:12px 14px;border-left:3px solid #65999c;background:#1d3037;border-radius:7px;margin:14px 0;font-size:14px;color:#d1e5ea}
.foba-generator .fg-checkbox{display:flex;gap:10px;align-items:flex-start;cursor:pointer;margin:12px 0}.foba-generator .fg-checkbox input{margin-top:5px;accent-color:var(--fg-accent)}
.foba-generator .special-text{color:#a5ebef;font-weight:700}.foba-generator .fg-plain-text{white-space:pre-wrap}
.foba-generator :is(.fg-eyebrow,.generator-eyebrow){font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--fg-accent);margin-bottom:10px}
.foba-generator .fg-lead{max-width:780px;color:#c1ced6;font-size:16px}
.foba-generator .fg-progress{display:flex;gap:6px;flex-wrap:wrap;padding:6px;border:1px solid #35464f;border-radius:10px;background:#151e25}.foba-generator .fg-progress-item{appearance:none;padding:6px 9px;min-height:36px;border:1px solid transparent;border-radius:7px;background:transparent;color:#b7c8d1;font:inherit;font-size:12px;line-height:1.35;cursor:pointer}.foba-generator .fg-progress-item[aria-current=step]{background:#193b43;border-color:#79d8de;color:#e0fbfc}
.foba-generator .fg-choice-title{font-weight:700;font-size:16px}.foba-generator .fg-choice-description{font-size:13px;color:#b4c8d1;line-height:1.5}
.foba-generator .fg-progress-item{display:inline-flex;align-items:center;gap:5px}
.foba-generator .fg-progress-item>span{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;border-radius:5px;background:#263640;color:#c4dce4;font-size:11px}
.foba-generator .fg-progress-item[aria-current=step]>span{background:#a1e7eb;color:#17303a}
.foba-generator .generator-panel h2{scroll-margin-top:90px}
.foba-generator .fg-step-header{margin:0 0 18px;padding:0 0 15px;border-bottom:1px solid #40515b}
.foba-generator .fg-step-header>.fg-eyebrow{font-size:11px;letter-spacing:.06em;margin:0 0 7px}
.foba-generator .fg-step-header>h2{margin:0;scroll-margin-top:90px}
.foba-generator .fg-step>.fg-actions{margin:22px 0 0;padding-top:16px;border-top:1px solid #40515b}
.foba-generator .fg-style-pair{display:block;width:100%}.foba-generator .fg-style-labels{display:grid;grid-template-columns:1fr 1fr;margin-top:-6px;color:#c8e1e4;font-size:12px;text-align:center}
.foba-generator .fg-style-card{min-width:0;display:flex;flex-direction:column;gap:7px}.foba-generator .fg-style-card>.fg-choice{flex:1}.foba-generator .fg-style-card>.fg-button{align-self:flex-start;font-size:12px;min-height:36px;padding:7px 11px}
.foba-generator .fg-section,.foba-generator .fg-step>details.fg-details{margin:0 0 20px;padding:19px;border:1px solid #455762;border-radius:12px;background:var(--fg-section)}
.foba-generator .fg-section>h3{margin:0 0 12px;padding-bottom:11px;border-bottom:1px solid #344853;font-size:18px;line-height:1.3}
.foba-generator .fg-section>.fg-muted{margin-bottom:12px;font-size:13px}
.foba-generator .fg-section>.fg-grid{margin:12px 0 16px}
.foba-generator .fg-step>details.fg-details>summary{font-size:17px;color:#e0edf2;line-height:1.4}
.foba-generator .fg-step>details.fg-details[open]>summary{margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid #344853}
.foba-generator .fg-step>details.fg-details>p.fg-muted{font-size:13px;margin-bottom:12px}
.foba-generator :is(.fg-section,.fg-step>details.fg-details)>.fg-custom{margin:15px 0 12px;padding-top:14px;border-top:1px solid #344853}
.foba-generator .fg-section-actions{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 0}
.foba-generator .fg-section-actions>.fg-button{min-height:36px;padding:7px 11px;font-size:13px;background:#212f38}
.foba-generator .fg-selection-count{font-size:12px;font-weight:400;color:#b8c9d2;margin-left:10px}
#foba-background-generator .fg-goals-picked{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:12px 0 16px;padding:12px;border:1px solid #46616d;border-left:3px solid var(--fg-accent);border-radius:9px;background:#1a2a32;min-width:0}
#foba-background-generator .fg-goals-picked>p{margin:0;flex-basis:100%;font-size:13px}
#foba-background-generator .fg-goal-chips{display:flex;flex-wrap:wrap;gap:8px;min-width:0;max-width:100%}
#foba-background-generator .fg-goal-chip{appearance:none;display:inline-flex;align-items:center;gap:8px;max-width:100%;min-height:44px;padding:8px 12px;border:1px solid #8ee5e9;border-radius:9px;background:#1a3943;color:#d4f7f8;font:inherit;font-size:13px;line-height:1.4;white-space:normal;text-align:left;cursor:pointer;overflow-wrap:anywhere}
#foba-background-generator .fg-goal-chip:hover{background:#244953}
#foba-background-generator details.fg-goals-group{padding:0;overflow:hidden;background:#111b22}
#foba-background-generator details.fg-goals-group>summary{min-height:44px;padding:13px 14px;line-height:1.4;color:#e0edf2}
#foba-background-generator details.fg-goals-group[open]>summary{margin:0;border-bottom:1px solid #344853;background:#203039}
#foba-background-generator details.fg-goals-group>.fg-grid{margin:0;padding:12px;gap:10px}
.foba-generator .fg-choice-group{margin:18px 0 22px}
.foba-generator .fg-choice-group>h4{font-size:15px;line-height:1.4;margin:0 0 11px;padding-bottom:8px;border-bottom:1px solid #344853;color:#c5dce6}
.foba-generator .fg-choice-group>.fg-grid{margin:0}
.foba-generator .fg-check{display:flex;align-items:flex-start;gap:9px;margin:14px 0;cursor:pointer}.foba-generator .fg-check input{margin-top:5px;accent-color:var(--fg-accent)}
.foba-generator .fg-result-detail{border-top:1px solid var(--fg-border);padding:14px 0}.foba-generator .fg-result-detail h3{font-size:16px;margin-bottom:8px}.foba-generator .fg-result-detail p{font-size:14px}
.foba-generator .fg-event-actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}.foba-generator .fg-event-actions button{min-height:36px;padding:7px 11px;font-size:12px}.foba-generator .fg-event-note{padding-left:12px;border-left:2px solid #698a98;color:#bacdd5}
.foba-generator .fg-event>header{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid #3b515d}
.foba-generator .fg-event>header>h3{margin:0;font-size:21px;color:#c8f3f5}.foba-generator .fg-event>header>.fg-tag{margin:0}
.foba-generator .fg-event-effects{margin:16px 0;padding:13px 15px;border:1px solid #426370;border-left:3px solid #82cdd4;border-radius:7px;background:#21313a}
.foba-generator .fg-event-effects>h4{margin:0 0 7px;font-size:13px;color:#b4e3e8}.foba-generator .fg-event-effects>p{margin:0;font-size:15px;line-height:1.55;color:#ecf3f7}
.foba-generator .fg-style-dialog form{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px}.foba-generator .fg-style-dialog form h3{margin:0}
.foba-generator .fg-style-dialog form button{flex-shrink:0;white-space:nowrap}
@media(max-width:400px){.foba-generator .fg-style-dialog form{align-items:flex-start;gap:8px}.foba-generator .fg-style-dialog form h3{font-size:16px;line-height:1.35;overflow-wrap:normal;word-break:normal}.foba-generator .fg-style-dialog form button{padding:10px 12px}}
.foba-generator :is(.generator-warning,.generator-status){font-size:14px;color:#cbd8de}.foba-generator .generator-warning{padding:12px;border-left:3px solid #d5b36d;background:#332f23;border-radius:7px}.foba-generator .generator-canon{white-space:pre-line;font-size:14px;line-height:1.6}.foba-generator .generator-skills{font-size:14px}.foba-generator .generator-status{min-height:20px;margin-top:16px}
.foba-generator dialog{width:min(1100px,94vw);max-height:92vh;margin:auto;padding:18px;background:#19232a;color:#edf3f7;border:1px solid var(--fg-border);border-radius:14px;overflow:auto}.foba-generator .fg-style-dialog p{margin-top:12px}
.foba-generator dialog::backdrop{background:#000b}.foba-generator dialog img{width:100%;display:block;background:#f4f0e8;border-radius:8px}
@media(max-width:900px){.foba-generator .generator-result-grid{grid-template-columns:1fr}.foba-generator .generator-result-card{padding:22px}}
@media print{.foba-generator header{display:block!important}.foba-generator .generator-back{display:none!important}}
@media print{.foba-generator .generator-panel,.foba-generator .generator-warning,.foba-generator .fg-note{background:#fff!important;color:#161616!important;border-color:#aaa}.foba-generator .generator-status{display:none!important}}
@media(max-width:600px){.foba-generator{padding:16px 14px 36px}.foba-generator :is(.fg-header,.generator-header){gap:7px 12px;margin-bottom:12px;padding-bottom:13px}.foba-generator :is(.fg-header,.generator-header)>a{font-size:12px}.foba-generator :is(.fg-header,.generator-header)>:is(.fg-eyebrow,.generator-eyebrow){font-size:10px;letter-spacing:.025em}.foba-generator :is(.fg-header,.generator-header)>p:not(.fg-eyebrow):not(.generator-eyebrow){font-size:13px;line-height:1.45}.foba-generator>.fg-toolbar{padding:8px 10px}.foba-generator :is(.fg-step,.fg-card,.generator-panel,.generator-result-card){padding:17px 14px;border-radius:12px}.foba-generator :is(.fg-grid,.generator-choice-grid,.generator-module-grid,.fg-columns,.generator-form-grid){grid-template-columns:1fr;gap:10px}.foba-generator .fg-section,.foba-generator .fg-step>details.fg-details{padding:15px 12px;margin-bottom:16px;border-radius:10px}.foba-generator .fg-section>h3,.foba-generator .fg-step>details.fg-details>summary{font-size:17px}.foba-generator :is(.fg-choice,.generator-choice,.generator-module){min-height:64px;padding:13px 14px}.foba-generator :is(.fg-choice,.generator-choice,.generator-module)[aria-pressed=true]{padding:12px 13px}.foba-generator .fg-choice[data-module]{min-height:48px}.foba-generator :is(.fg-actions,.generator-actions){gap:8px}.foba-generator :is(.fg-actions,.generator-actions)>button{flex:1 1 auto;min-width:110px}.foba-generator .fg-section-actions>.fg-button{min-height:40px}.foba-generator .fg-style-grid{grid-template-columns:1fr}.foba-generator .generator-answer-row{grid-template-columns:1fr}.foba-generator .fg-progress{padding:5px;gap:4px}.foba-generator .fg-progress button{font-size:11px;padding:6px 7px}.foba-generator .fg-event{padding:15px}}
@media print{header,footer,.feedback-fab,#feedback-fab,.foba-generator .fg-no-print,.foba-generator .generator-no-print,.foba-generator :is(.fg-toolbar,.fg-actions,.generator-actions,.fg-progress,.generator-progress),.foba-generator dialog{display:none!important}.foba-generator{max-width:none;padding:0;margin:0;color:#161616;background:#fff;font-size:11pt}.foba-generator :is(.fg-card,.fg-event,.generator-result-card,details){background:#fff;color:#161616;border-color:#bbb;break-inside:avoid;padding:12px}.foba-generator :is(h1,h2,h3,h4,p,summary,.fg-muted,.generator-note,strong){color:#161616}.foba-generator .fg-grid,.foba-generator .generator-result-grid{display:block}.foba-generator .generator-result-card{margin-bottom:15px}.foba-generator a{color:#161616}.foba-generator .fg-style-image{max-width:500px}.foba-generator .fg-tag,.foba-generator .generator-badge{color:#161616;border-color:#aaa;background:#fff}}
@media print{.foba-generator :is(.fg-header,.generator-header){display:block!important;background:none;border:0;padding:0;margin:0 0 16px}.foba-generator :is(.fg-header,.generator-header)>a{display:none!important}.foba-generator :is(.fg-header,.generator-header)>:is(.fg-eyebrow,.generator-eyebrow){text-align:left;margin-bottom:6px}.foba-generator :is(.fg-header,.generator-header)>h1{font-size:24pt;margin-bottom:8px}.foba-generator :is(.fg-step,.fg-section){background:#fff;color:#161616;border-color:#bbb;box-shadow:none}.foba-generator .fg-section{padding:12px}.foba-generator :is(.fg-section>h3,.fg-step-header,.fg-choice-group>h4,.fg-custom){border-color:#bbb}.foba-generator .fg-step>details.fg-details>summary{color:#161616}.foba-generator .fg-section-actions{display:none!important}}
@media(max-width:600px){.foba-generator>.fg-toolbar>.fg-button,.foba-generator .fg-progress button,.foba-generator .fg-section-actions>.fg-button{min-height:44px}.foba-generator .fg-event-effects{padding:12px}}
@media print{.foba-generator .fg-event-effects{background:#fff;color:#161616;border-color:#999}.foba-generator .fg-event-effects>:is(h4,p){color:#161616}}
/* Design-system finish: readable hierarchy without a second page gutter. */
.foba-generator h1{font-size:clamp(27px,3.1vw,40px);font-weight:650;max-width:30ch}
.foba-generator :is(button,input,select,textarea){font-family:inherit}
.foba-generator :is(.fg-step,.generator-panel){padding:24px;border-radius:16px}
.foba-generator :is(.fg-section,.fg-step>details.fg-details){padding:22px;margin-bottom:24px;border-color:var(--fg-border)}
.foba-generator .fg-section>h3{font-size:20px;padding-bottom:14px}
.foba-generator .fg-choice{border-color:#465B65;background:#18242C}
.foba-generator :is(.fg-choice,.generator-choice,.generator-module)[aria-pressed=true]{background:#213E47;border-color:var(--fg-accent)}
.foba-generator .fg-choice-description{font-size:14px;line-height:1.6;color:var(--fg-muted)}
.foba-generator .fg-choice-title{font-size:16px;line-height:1.4;color:var(--ds-text,#EDF3F6)}
.foba-generator .fg-workspace-nav .fg-progress{margin:0;padding:0;border:0;border-radius:0;background:none;gap:8px}
.foba-generator .fg-progress-item{font-size:13px;min-height:44px;gap:7px;padding:8px 11px;border:1px solid var(--fg-border);background:var(--fg-section);color:var(--fg-muted)}
.foba-generator .fg-progress-item>span{width:22px;height:22px;flex-shrink:0;font-size:12px}
.foba-generator .fg-progress-item[aria-current=step]{background:#213E47;color:var(--ds-text,#EDF3F6);border-color:var(--fg-accent)}
.foba-generator .fg-progress-item[aria-current=step]>span{background:var(--fg-accent);color:#13252B}
.foba-generator :is(.fg-actions,.generator-actions){gap:10px;padding-top:18px;border-top:1px solid var(--fg-border)}
.foba-generator .generator-status:empty{height:0;min-height:0;margin:0}
.foba-generator .fg-step-header>.fg-eyebrow{font-size:12px;letter-spacing:.04em}
.foba-generator .generator-result-card{background:var(--fg-section);padding:20px}
.foba-generator .generator-result-card h3{font-size:23px;line-height:1.3}
.foba-generator .generator-result-card :is(p,li){font-size:15px;line-height:1.65}
.foba-generator :is(.fg-tag,.generator-badge){font-size:12px;line-height:1.5}
.foba-generator .fg-event-effects{background:#21343D;border-left-color:var(--fg-accent)}
.foba-generator .fg-style-card>.fg-button{min-height:44px;font-size:13px}
@media(max-width:700px){
 .foba-generator{padding:0 0 32px;font-size:15px}
 .foba-generator :is(.fg-header,.generator-header){padding:18px 16px;gap:12px;margin-bottom:16px;border-radius:12px;grid-template-columns:minmax(0,1fr);grid-template-areas:"back" "eyebrow" "title" "lead"}
 .foba-generator :is(.fg-header,.generator-header)>a{font-size:13px;min-height:32px;display:flex;align-items:center}
 .foba-generator :is(.fg-header,.generator-header)>:is(.fg-eyebrow,.generator-eyebrow){justify-self:start;text-align:left;font-size:12px;letter-spacing:.04em}
 .foba-generator :is(.fg-header,.generator-header)>p:not(.fg-eyebrow):not(.generator-eyebrow){font-size:15px;line-height:1.6}
 .foba-generator h1{font-size:clamp(25px,7vw,32px)}
 .foba-generator :is(.fg-step,.generator-panel,.generator-result-card){padding:18px 14px;border-radius:12px}
 .foba-generator .fg-workspace-nav{padding:16px 14px;margin-bottom:16px;border-radius:12px}
 .foba-generator .fg-workspace-nav .fg-progress{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .foba-generator .fg-workspace-nav .fg-progress button{font-size:12px;text-align:left;min-height:44px;padding:8px;min-width:0;overflow-wrap:anywhere}
 .foba-generator :is(.fg-section,.fg-step>details.fg-details){padding:16px 12px;margin-bottom:18px;border-radius:10px}
 .foba-generator .fg-section>h3{font-size:18px}
 .foba-generator :is(.fg-grid,.generator-choice-grid,.generator-module-grid,.fg-columns,.generator-form-grid){grid-template-columns:1fr;gap:10px}
 .foba-generator :is(.fg-actions,.generator-actions)>button{min-width:0;flex:1 1 120px;font-size:14px}
 .foba-generator .fg-choice-description{font-size:14px}
 .foba-generator .fg-event{padding:16px 12px}
 .foba-generator .fg-style-grid{grid-template-columns:1fr}
}
@media print{
 .foba-generator .fg-workspace-nav{display:none!important}
 .foba-generator :is(.fg-header,.generator-header){display:block!important;background:none!important;border:0;padding:0;margin:0 0 16px;box-shadow:none}
 .foba-generator :is(.fg-header,.generator-header)>a{display:none!important}
 .foba-generator :is(.fg-header,.generator-header)>:is(.fg-eyebrow,.generator-eyebrow){text-align:left;color:#161616;display:block;margin-bottom:6px}
 .foba-generator :is(.fg-header,.generator-header)>p:not(.fg-eyebrow):not(.generator-eyebrow){color:#161616}
 .foba-generator :is(.fg-step,.generator-panel,.generator-result-card){background:#fff!important;color:#161616;border-color:#AAA;box-shadow:none}
 .foba-generator :is(.fg-actions,.generator-actions,.fg-style-card>.fg-button){display:none!important}
}

/* Wave31: character choices; hidden results must remain hidden despite card flex rules. */
#foba-background-generator .fg-traits [hidden]{display:none!important}.fg-traits-picked{margin-bottom:1rem}.fg-traits .fg-goal-chips{flex-wrap:wrap}.fg-trait-group summary{font-weight:600}.fg-profile-traits{padding:1rem;margin:1rem 0;border:1px solid var(--fg-border,#40545e);border-radius:10px;background:var(--fg-panel,#17252d)}.fg-traits input[type=search]{width:100%;min-width:0}.generator-roleplay{border-left:3px solid var(--generator-accent,#71d9e7)}.generator-roleplay li{margin:.4rem 0}@media print{.fg-traits input[type=search],.fg-profile-traits button{display:none}}

/* End */


/* Start:/bitrix/templates/candys-rise/css/site-menu-v66.css?1792818691528*/
/* Scoped navigation headings; keep native details and existing responsive layout. */
body.site-design .ds-nav-panel>.ds-nav-section{grid-column:1/-1;font:inherit;font-size:12px;font-weight:700;letter-spacing:.025em;line-height:1.5;margin:8px 0 2px;padding:10px 12px 6px;color:var(--ds-accent);border-top:1px solid var(--ds-line)}
body.site-design .ds-nav-panel>a>span{min-width:0;overflow-wrap:anywhere}

.rt65 button:disabled{opacity:.5;cursor:not-allowed;border-style:dashed}.rt65 button:disabled:hover{border-color:#52666f}

/* End */


/* Start:/bitrix/templates/candys-rise/css/modern-style.css?179039105428349*/
/* ============================================
  MODERN MINIMALIST DESIGN SYSTEM
  Inspired by YouTube, Gemini, Apple
  ============================================ */

:root {
    /* Brand Colors */
    --color-bg: #0f0f0f;
    --color-surface: #1e1f20;
    --color-surface-hover: #2a2b2c;
    --color-border: rgba(255, 255, 255, 0.1);

    --color-accent: #FFA3A3;
    --color-accent-hover: #ffb8b8;
    --color-accent-active: #ff8e8e;

    /* Text */
    --color-text: #ffffff;
    --color-text-secondary: #aaaaaa;
    --color-text-tertiary: #808080;

    /* Spacing (relative units) */
    --spacing-xs: 0.25rem;
    --spacing-sm: 0.5rem;
    --spacing-md: 1rem;
    --spacing-lg: 1.5rem;
    --spacing-xl: 2rem;
    --spacing-xxl: 3rem;
    --spacing-xxxl: 4rem;

    /* Typography */
    --font-main: 'Tektur', sans-serif;
    --font-body: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;

    /* Layout */
    --header-height: 4rem;
    --max-width: 87.5rem;
    /* 87.5rem */
    --content-padding: clamp(1rem, 5vw, 3rem);

    /* Border Radius */
    --radius-sm: 0.375rem;
    --radius-md: 0.5rem;
    --radius-lg: 0.75rem;
    --radius-full: 624.9375rem;

    /* Transitions */
    --transition-fast: 150ms cubic-bezier(0.4, 0, 0.2, 1);
    --transition-base: 200ms cubic-bezier(0.4, 0, 0.2, 1);

    /* Shadows (minimal) */
    --shadow-sm: 0 0.062rem 0.125rem 0 rgba(0, 0, 0, 0.3);
    --shadow-md: 0 0.25rem 0.375rem -0.062rem rgba(0, 0, 0, 0.4);
}

/* ============================================
   RESET & BASE
   ============================================ */

*,
*::before,
*::after {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

html {
    font-size: 1rem;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

body {
    font-family: var(--font-body);
    font-size: 1rem;
    line-height: 1.6;
    color: var(--color-text);
    background-color: var(--color-bg);
    padding-top: var(--header-height);
    min-height: 100vh;
    display: flex;
    flex-direction: column;
}

/* Scrollbar */
::-webkit-scrollbar {
    width: 0.5rem;
}

::-webkit-scrollbar-track {
    background: var(--color-bg);
}

::-webkit-scrollbar-thumb {
    background: var(--color-surface-hover);
    border-radius: var(--radius-sm);
}

::-webkit-scrollbar-thumb:hover {
    background: var(--color-text-tertiary);
}

/* ============================================
   TYPOGRAPHY
   ============================================ */

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: var(--font-main);
    font-weight: 600;
    line-height: 1.2;
    color: var(--color-text);
}

h1 {
    font-size: clamp(1.75rem, 4vw, 2.5rem);
    margin-bottom: var(--spacing-lg);
}

h2 {
    font-size: clamp(1.5rem, 3vw, 2rem);
    margin-bottom: var(--spacing-md);
}

h3 {
    font-size: clamp(1.25rem, 2.5vw, 1.5rem);
    margin-bottom: var(--spacing-md);
}

h4 {
    font-size: 1.125rem;
    margin-bottom: var(--spacing-sm);
}

p {
    margin-bottom: var(--spacing-md);
    color: var(--color-text-secondary);
}

a {
    color: inherit;
    text-decoration: none;
    transition: color var(--transition-fast);
}

a:hover {
    color: var(--color-accent);
}

img {
    max-width: 100%;
    height: auto;
    display: block;
}

button {
    font-family: inherit;
    cursor: pointer;
    border: none;
    background: none;
}

.mobile-only {
    display: none;
}

/* ============================================
   HEADER - FIXED
   ============================================ */

.site-header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    height: var(--header-height);
    background: rgba(15, 15, 15, 0.95);
    backdrop-filter: blur(1.25rem);
    -webkit-backdrop-filter: blur(1.25rem);
    border-bottom: 0.062rem solid var(--color-border);
    z-index: 1000;
}

.header-container {
    max-width: var(--max-width);
    height: 100%;
    margin: 0 auto;
    padding: 0 var(--content-padding);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--spacing-lg);
}

/* Logo */
.logo {
    font-family: var(--font-main);
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--color-accent);
    letter-spacing: 0.05em;
    white-space: nowrap;
    transition: color var(--transition-fast);
}

.logo:hover {
    color: var(--color-accent-hover);
}

/* Mobile Menu Toggle */
.mobile-menu-toggle {
    display: none;
    flex-direction: column;
    gap: 0.25rem;
    width: 2rem;
    height: 2rem;
    padding: 0.25rem;
    justify-content: center;
    align-items: center;
}

.mobile-menu-toggle span {
    width: 100%;
    height: 0.125rem;
    background: var(--color-text);
    border-radius: var(--radius-full);
    transition: all var(--transition-base);
}

.mobile-menu-toggle[aria-expanded="true"] span:nth-child(1) {
    transform: translateY(0.375rem) rotate(45deg);
}

.mobile-menu-toggle[aria-expanded="true"] span:nth-child(2) {
    opacity: 0;
}

.mobile-menu-toggle[aria-expanded="true"] span:nth-child(3) {
    transform: translateY(-0.375rem) rotate(-45deg);
}

/* Navigation */
.main-nav {
    display: flex;
    align-items: center;
    gap: var(--spacing-xl);
}

.nav-link {
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--color-text-secondary);
    transition: color var(--transition-fast);
    position: relative;
}

.nav-link:hover {
    color: var(--color-text);
}

/* User Actions */
.user-actions {
    display: flex;
    align-items: center;
    gap: var(--spacing-md);
}

/* ============================================
   BUTTONS
   ============================================ */

.btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.5rem 1rem;
    font-size: 0.875rem;
    font-weight: 500;
    border-radius: var(--radius-full);
    transition: all var(--transition-fast);
    white-space: nowrap;
}

.btn-text {
    color: var(--color-text-secondary);
    background: transparent;
}

.btn-text:hover {
    color: var(--color-text);
    background: rgba(255, 255, 255, 0.05);
}

.btn-primary {
    color: var(--color-bg);
    background: var(--color-accent);
    font-weight: 600;
}

.btn-primary:hover {
    background: var(--color-accent-hover);
    transform: translateY(-0.062rem);
}

.btn-primary:active {
    background: var(--color-accent-active);
    transform: translateY(0);
}

/* Header sign-in is a label-sized button, not a shrinking circular control. */
.site-header .user-actions:has(.site-login) {
    flex-shrink: 0;
}

.site-header .user-actions .site-login {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    width: auto;
    min-width: 88px;
    min-height: 44px;
    box-sizing: border-box;
    gap: 8px;
    padding: 10px 14px;
    border-radius: 10px;
    font: 600 14px/1.2 Inter, Arial, sans-serif;
    white-space: nowrap;
    text-decoration: none;
}

.site-header .site-login svg {
    display: block;
    flex: 0 0 18px;
    width: 18px;
    height: 18px;
}

.site-header .site-login:focus-visible {
    outline: 2px solid var(--color-accent);
    outline-offset: 3px;
}

/* ============================================
   MAIN CONTENT
   ============================================ */

.site-main {
    flex: 1;
    width: 100%;
}

.content-container {
    max-width: var(--max-width);
    margin: 0 auto;
    padding: var(--spacing-xl) var(--content-padding);
}

/* Breadcrumbs */
.breadcrumbs-wrapper {
    max-width: var(--max-width);
    margin: 0 auto;
    padding: var(--spacing-md) var(--content-padding) 0;
}

.breadcrumbs {
    display: flex;
    align-items: center;
    gap: var(--spacing-sm);
    font-size: 0.75rem;
    color: var(--color-text-tertiary);
    flex-wrap: wrap;
}

.breadcrumb-link {
    color: var(--color-text-tertiary);
    transition: color var(--transition-fast);
}

.breadcrumb-link:hover {
    color: var(--color-text-secondary);
}

.breadcrumb-separator {
    color: var(--color-text-tertiary);
    user-select: none;
}

.breadcrumb-current {
    color: var(--color-accent);
}

/* ============================================
   FOOTER
   ============================================ */

.site-footer {
    background: var(--color-surface);
    border-top: 0.062rem solid var(--color-border);
    margin-top: auto;
    padding: var(--spacing-xxl) 0;
}

.footer-container {
    max-width: var(--max-width);
    margin: 0 auto;
    padding: 0 var(--content-padding);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--spacing-lg);
    text-align: center;
}

.footer-logo {
    font-family: var(--font-main);
    font-size: 1.125rem;
    font-weight: 700;
    color: var(--color-accent);
    letter-spacing: 0.05em;
}

.footer-nav {
    display: flex;
    gap: var(--spacing-lg);
    flex-wrap: wrap;
    justify-content: center;
}

.footer-nav a {
    font-size: 0.875rem;
    color: var(--color-text-secondary);
    transition: color var(--transition-fast);
}

.footer-nav a:hover {
    color: var(--color-text);
}

.footer-credits {
    font-size: 0.75rem;
    color: var(--color-text-tertiary);
}

.footer-credits p {
    margin: 0;
    color: inherit;
}

/* ============================================
   CARDS & PANELS
   ============================================ */

.card {
    background: var(--color-surface);
    border: 0.062rem solid var(--color-border);
    border-radius: var(--radius-md);
    padding: var(--spacing-lg);
    transition: border-color var(--transition-fast);
}

.card:hover {
    border-color: var(--color-accent);
}

/* ============================================
   FORMS
   ============================================ */

.form-group {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-xs);
    margin-bottom: var(--spacing-md);
}

.form-label {
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--color-text-secondary);
}

.form-input,
.form-textarea,
.form-select {
    width: 100%;
    padding: 0.75rem;
    font-family: var(--font-body);
    font-size: 0.875rem;
    color: var(--color-text);
    background: rgba(255, 255, 255, 0.05);
    border: 0.062rem solid var(--color-border);
    border-radius: var(--radius-sm);
    transition: all var(--transition-fast);
}

.form-input:focus,
.form-textarea:focus,
.form-select:focus {
    outline: none;
    border-color: var(--color-accent);
    background: rgba(255, 255, 255, 0.08);
}

/* ============================================
   GRID LAYOUTS
   ============================================ */

.grid {
    display: grid;
    gap: var(--spacing-lg);
}

.grid-2 {
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 20rem), 1fr));
}

.grid-3 {
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 15rem), 1fr));
}

.grid-4 {
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 12rem), 1fr));
}

/* ============================================
   UTILITY CLASSES
   ============================================ */

.text-center {
    text-align: center;
}

.text-right {
    text-align: right;
}

.mt-xs {
    margin-top: var(--spacing-xs);
}

.mt-sm {
    margin-top: var(--spacing-sm);
}

.mt-md {
    margin-top: var(--spacing-md);
}

.mt-lg {
    margin-top: var(--spacing-lg);
}

.mt-xl {
    margin-top: var(--spacing-xl);
}

.mb-xs {
    margin-bottom: var(--spacing-xs);
}

.mb-sm {
    margin-bottom: var(--spacing-sm);
}

.mb-md {
    margin-bottom: var(--spacing-md);
}

.mb-lg {
    margin-bottom: var(--spacing-lg);
}

.mb-xl {
    margin-bottom: var(--spacing-xl);
}

.hidden {
    display: none;
}

/* ============================================
   RESPONSIVE DESIGN (GLOBAL)
   ============================================ */

/* Tablet and below */
@media (max-width: 64rem) {
    :root {
        --header-height: 5.5rem;
    }

    .mobile-only {
        display: flex;
    }

    .header-container {
        gap: var(--spacing-md);
    }

    .nav-link {
        font-size: 0.8125rem;
    }

    .news-layout {
        display: flex !important;
    }

    .news-sidebar {
        position: static;
        max-height: none;
    }
}

/* Mobile */
@media (max-width: 48rem) {
    :root {
        --header-height: 5.5rem;
        --content-padding: 1rem;
    }

    .mobile-only {
        display: flex;
    }

    .mobile-menu-toggle {
        display: flex;
    }

    .main-nav {
        position: fixed;
        top: var(--header-height);
        left: 0;
        right: 0;
        flex-direction: column;
        gap: 0;
        background: rgba(15, 15, 15, 0.98);
        backdrop-filter: blur(1.25rem);
        border-bottom: 0.062rem solid var(--color-border);
        padding: var(--spacing-md) 0;
        transform: translateY(-100%);
        opacity: 0;
        visibility: hidden;
        transition: all var(--transition-base);
    }

    .main-nav.active {
        transform: translateY(0);
        opacity: 1;
        visibility: visible;
    }

    .nav-link {
        width: 100%;
        padding: var(--spacing-md) var(--content-padding);
        font-size: 1rem;
    }

    .user-actions {
        gap: var(--spacing-sm);
    }

    .btn {
        padding: 0.375rem 0.75rem;
        font-size: 0.8125rem;
    }

    .footer-container {
        padding: var(--spacing-lg) var(--content-padding);
    }

    .footer-nav {
        flex-direction: column;
        gap: var(--spacing-md);
    }

    .hero-section,
    .about-section,
    .contacts-section,
    .helper-section,
    .support-section,
    .dashboard-section,
    .login-section {
        padding: var(--spacing-xl) 0;
    }

    .system-card,
    .tool-card,
    .contact-card {
        padding: var(--spacing-lg);
    }

    .about-content,
    .support-card {
        padding: var(--spacing-xl);
    }

    .card-icon {
        font-size: 2.5rem;
    }

    .news-tabs {
        display: flex;
        gap: var(--spacing-md);
        margin-bottom: var(--spacing-lg);
        border-bottom: 0.062rem solid var(--color-border);
        padding-bottom: var(--spacing-xs);
    }

    .news-tab {
        background: transparent;
        color: var(--color-text-secondary);
        font-family: var(--font-main);
        font-size: 1rem;
        padding: var(--spacing-sm) var(--spacing-md);
        border-bottom: 0.125rem solid transparent;
        transition: all var(--transition-fast);
        cursor: pointer;
    }

    .news-tab.active {
        color: var(--color-accent);
        border-bottom-color: var(--color-accent);
    }

    .news-detail {
        padding: var(--spacing-xl);
    }

    .news-item-content {
        padding: var(--spacing-md);
    }
}

/* Small mobile */
@media (max-width: 30rem) {
    .header-container {
        gap: var(--spacing-sm);
    }

    .logo {
        font-size: 1rem;
    }

    .user-actions {
        flex-direction: column;
        align-items: stretch;
        gap: var(--spacing-xs);
    }

    .btn {
        width: 100%;
        padding: 0.5rem;
    }

    .system-card img,
    .contact-card img {
        width: 5rem;
        height: 5rem;
    }

    .card-icon {
        font-size: 2rem;
    }
}

/* ============================================
   DASHBOARD & CHARACTER CARDS
   ============================================ */

.dashboard-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(min(100%, 18rem), 1fr));
    gap: 1rem;
}

.character-card {
    display: flex;
    align-items: center;
    padding: 0.75rem;
    gap: 1rem;
    border-radius: var(--radius-md);
    border: 0.062rem solid var(--color-border);
    background: var(--color-surface);
    transition: all var(--transition-base);
    text-decoration: none;
    color: inherit;
    min-height: 5.5rem;
    position: relative;
    overflow: hidden;
}

.character-card:hover {
    transform: translateY(-0.188rem);
    border-color: var(--color-accent);
    box-shadow: var(--shadow-md);
    background: var(--color-surface-hover);
}

.character-avatar {
    width: 3.75rem;
    height: 3.75rem;
    border-radius: var(--radius-sm);
    background-size: cover;
    background-position: center;
    flex-shrink: 0;
    border: 0.062rem solid rgba(255, 255, 255, 0.05);
}

.character-info-box {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 0.25rem;
    min-width: 0;
    flex: 1;
}

.character-name {
    font-family: var(--font-main);
    font-size: 1.05rem;
    font-weight: 600;
    color: var(--color-text);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.character-meta {
    font-size: 0.85rem;
    color: var(--color-text-secondary);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* ============================================
   LOGIN & FORMS
   ============================================ */

.login-container {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: calc(100vh - var(--header-height) - 10rem);
    padding: var(--spacing-xl) 0;
}

.login-card {
    width: 100%;
    max-width: 25rem;
    padding: var(--spacing-xxl);
    background: var(--color-surface);
    border: 0.062rem solid var(--color-border);
    border-radius: var(--radius-lg);
}

.login-form {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-lg);
}

.login-footer {
    margin-top: var(--spacing-lg);
    text-align: center;
    font-size: 0.875rem;
    color: var(--color-text-secondary);
}

.login-footer a {
    color: var(--color-accent);
}

/* ============================================
   NEWS SECTION
   ============================================ */

.news-layout {
    display: grid;
    grid-template-columns: 18.75rem 1fr;
    gap: var(--spacing-xl);
    align-items: start;
}

.news-sidebar {
    position: sticky;
    top: calc(var(--header-height) + var(--spacing-lg));
    max-height: calc(100vh - var(--header-height) - var(--spacing-xl));
    overflow-y: auto;
    padding-right: var(--spacing-sm);
}

.news-item {
    display: flex;
    flex-direction: column;
    background: var(--color-surface);
    border: 0.062rem solid var(--color-border);
    border-radius: var(--radius-md);
    padding: var(--spacing-lg);
    margin-bottom: var(--spacing-lg);
    transition: all var(--transition-fast);
}

.news-item:hover {
    border-color: var(--color-accent);
    transform: translateY(-0.125rem);
}

.news-date {
    font-size: 0.75rem;
    color: var(--color-text-tertiary);
    margin-bottom: var(--spacing-xs);
}

.news-title {
    font-size: 1.25rem;
    margin-bottom: var(--spacing-sm);
}

.news-preview {
    font-size: 0.875rem;
    color: var(--color-text-secondary);
    line-height: 1.6;
}

/* ============================================
   CONTENT PAGES STYLES
   ============================================ */

/* Page Sections */
.hero-section,
.about-section,
.contacts-section,
.helper-section,
.support-section,
.dashboard-section,
.login-section {
    padding: var(--spacing-xxl) 0;
}

.page-title {
    text-align: center;
    margin-bottom: var(--spacing-xl);
}

/* Hero Section (Home Page) */
.hero-section {
    text-align: center;
}

.system-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--spacing-md);
    padding: var(--spacing-xxl) var(--spacing-xl);
    text-align: center;
    transition: all var(--transition-base);
    position: relative;
    overflow: hidden;
}

.system-card::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, transparent, rgba(255, 163, 163, 0.05));
    opacity: 0;
    transition: opacity var(--transition-base);
}

.system-card:hover::before {
    opacity: 1;
}

.system-card:hover {
    transform: translateY(-0.375rem);
    border-color: var(--color-accent);
}

.system-card img {
    width: 7rem;
    height: 7rem;
    object-fit: contain;
    transition: transform var(--transition-base);
}

.system-card:hover img {
    transform: scale(1.1);
}

.system-card h3 {
    font-size: clamp(1.25rem, 2.5vw, 1.75rem);
    margin: 0;
}

.accent {
    color: var(--color-accent);
}

/* Tool Cards (Helper Pages) */
.tool-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: var(--spacing-xl);
    gap: var(--spacing-sm);
    transition: all var(--transition-base);
}

.tool-card:hover {
    transform: translateY(-0.25rem);
    border-color: var(--color-accent);
}

.card-icon {
    font-size: 3rem;
    line-height: 1;
    margin-bottom: var(--spacing-sm);
}

.tool-card h3 {
    margin: 0;
    font-size: 1.125rem;
}

.tool-card p {
    margin: 0;
    font-size: 0.875rem;
    color: var(--color-text-secondary);
}

/* About Page */
.about-content {
    padding: var(--spacing-xxl);
}

.about-content h2 {
    color: var(--color-accent);
    margin-bottom: var(--spacing-lg);
}

.about-content h3 {
    margin-top: var(--spacing-xl);
    margin-bottom: var(--spacing-md);
    padding-bottom: var(--spacing-sm);
    border-bottom: 0.062rem solid var(--color-border);
}

.about-content p {
    line-height: 1.8;
    margin-bottom: var(--spacing-md);
}

.feature-card {
    padding: var(--spacing-lg);
    background: rgba(255, 255, 255, 0.02);
    border-radius: var(--radius-sm);
    border: 0.062rem solid var(--color-border);
    transition: all var(--transition-fast);
}

.feature-card:hover {
    background: rgba(255, 255, 255, 0.04);
    border-color: var(--color-accent);
}

.feature-card h4 {
    color: var(--color-accent);
    margin-bottom: var(--spacing-xs);
    font-size: 1rem;
}

.feature-card p {
    font-size: 0.875rem;
    color: var(--color-text-secondary);
    margin: 0;
}

/* Contacts Page */
.contacts-section {
    text-align: center;
}

.contact-card {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: var(--spacing-xxl);
    transition: all var(--transition-base);
    background: rgba(255, 255, 255, 0.02);
}

.contact-card:hover {
    transform: translateY(-0.375rem);
    border-color: var(--color-accent);
    background: rgba(255, 255, 255, 0.05);
}

.contact-card img {
    width: 5rem;
    height: 5rem;
    object-fit: contain;
    filter: drop-shadow(0 0 0.5rem rgba(255, 255, 255, 0.1));
    transition: transform var(--transition-base);
}

.contact-card:hover img {
    transform: scale(1.1);
}

/* Support Page */
.support-card {
    max-width: 50rem;
    margin: 0 auto;
    padding: var(--spacing-xxxl) var(--spacing-xxl);
    text-align: center;
}

.support-card h1 {
    margin-bottom: var(--spacing-lg);
}

.support-card img {
    max-width: 18.75rem;
    margin: var(--spacing-xl) auto;
    border-radius: var(--radius-md);
}

.support-card p {
    font-size: 1.125rem;
    margin-bottom: var(--spacing-xl);
    color: var(--color-text-secondary);
}

/* Dashboard (Login Page - Logged In) */
.dashboard-section h2 {
    margin-top: 2rem;
    font-size: 1.5rem;
    margin-bottom: var(--spacing-lg);
    padding-bottom: var(--spacing-sm);
    border-bottom: 0.062rem solid var(--color-border);
    color: var(--color-text-secondary);
}

.add-character-card {
    background: rgba(255, 255, 255, 0.01);
    border: 0.062rem dashed var(--color-border);
    cursor: pointer;
}

.add-character-card:hover {
    background: rgba(255, 255, 255, 0.03);
    border-color: var(--color-accent);
}

.add-avatar-placeholder {
    width: 3.75rem;
    height: 3.75rem;
    border-radius: var(--radius-sm);
    border: 0.062rem dashed var(--color-border);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--color-text-tertiary);
    flex-shrink: 0;
    transition: all var(--transition-base);
    background: rgba(255, 255, 255, 0.01);
}

.add-character-card:hover .add-avatar-placeholder {
    border-color: var(--color-accent);
    color: var(--color-accent);
    background: rgba(255, 163, 163, 0.05); /* --color-accent is #FFA3A3 */
}

.plus-svg {
    transition: transform var(--transition-base);
}

.add-character-card:hover .plus-svg {
    transform: rotate(90deg) scale(1.1);
}

.add-title {
    font-family: var(--font-main);
    font-size: 1.05rem;
    font-weight: 600;
    color: var(--color-text-secondary);
    transition: color var(--transition-base);
}

.add-character-card:hover .add-title {
    color: var(--color-accent);
}

.add-subtitle {
    font-size: 0.8rem;
    color: var(--color-text-tertiary);
}

/* Login Form */
.login-section {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: calc(100vh - var(--header-height) - 10rem);
}

.tab-content {
    display: block;
}

@media (max-width: 48rem) {
    .news-tabs {
        display: flex;
    }

    .tab-content {
        display: none;
    }

    .tab-content.active {
        display: -webkit-box;
        -webkit-line-clamp: 3;
        line-clamp: 3;
        -webkit-box-orient: vertical;
        overflow: hidden;
    }

    .site-main {
        flex: 1;
        width: 100%;
        margin-top: -3rem;
    }
}

/* News Detail (Article) */
.news-detail {
    max-width: 50rem;
    margin: 0 auto;
    padding: var(--spacing-xxl);
}

.news-detail-header {
    margin-bottom: var(--spacing-xl);
    padding-bottom: var(--spacing-lg);
    border-bottom: 0.062rem solid var(--color-border);
}

.news-detail-header h1 {
    margin-bottom: var(--spacing-md);
}

.news-detail-meta {
    display: flex;
    gap: var(--spacing-md);
    flex-wrap: wrap;
    align-items: center;
    font-size: 0.875rem;
    color: var(--color-text-secondary);
}

.news-source {
    color: var(--color-accent);
    text-decoration: none;
    transition: color var(--transition-fast);
}

.news-source:hover {
    color: var(--color-accent-hover);
}

.news-detail-content {
    margin-bottom: var(--spacing-xl);
}

.news-content-block {
    margin-bottom: var(--spacing-xl);
}

.news-content-image {
    margin-bottom: var(--spacing-md);
    border-radius: var(--radius-md);
    overflow: hidden;
}

.news-content-image img {
    width: 100%;
    height: auto;
    display: block;
}

.news-content-text {
    line-height: 1.8;
    color: var(--color-text-secondary);
}

.news-content-text p {
    margin-bottom: var(--spacing-md);
}

.news-files {
    margin-top: var(--spacing-xl);
    padding-top: var(--spacing-lg);
    border-top: 0.062rem solid var(--color-border);
}

.news-files h3 {
    margin-bottom: var(--spacing-md);
    font-size: 1.125rem;
}

.files-list {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-sm);
}

.file-link {
    display: inline-flex;
    align-items: center;
    gap: var(--spacing-xs);
}

.news-detail-footer {
    margin-top: var(--spacing-xl);
    padding-top: var(--spacing-lg);
    border-top: 0.062rem solid var(--color-border);
}

.news-authors {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-xs);
    font-size: 0.875rem;
    color: var(--color-text-secondary);
}

.author-name {
    font-style: italic;
}

/* End */


/* Start:/bitrix/templates/candys-rise/css/rpg-refresh.css?17899269218334*/
/* Shared FOBA helpers and electronic sheets. No changes to game values. */
body[data-rpg-surface] { --rpg-line:#36434d; --rpg-soft:#b8c5ce; }
body[data-rpg-surface] :is(input,select,textarea,button) { font-family:Inter,Arial,sans-serif; }
body[data-rpg-surface] :is(button,a,input,select,textarea,summary,[role="button"]):focus-visible { outline:2px solid #66e0e8; outline-offset:3px; }
body[data-rpg-surface] input,body[data-rpg-surface] select,body[data-rpg-surface] textarea { max-width:100%; font-size:1rem; }
body[data-rpg-surface] :is(.item-card,.keyword-card,.race-card,.panel,.character-card) { border-color:var(--rpg-line); }
body[data-rpg-surface] :is(.item-description,.rule-text,.meta-row,.character-meta,.char-meta) { font-family:Inter,Arial,sans-serif; line-height:1.6; }
body[data-rpg-surface] :is(.item-header h3,.tool-card h3,.character-name) { font-family:Inter,Arial,sans-serif; font-weight:650; line-height:1.4; text-wrap:balance; }
body[data-rpg-surface] :is(.item-card,.panel) { box-shadow:none; }
body[data-rpg-surface] .item-meta .meta-row { gap:.75rem; padding-block:.38rem; align-items:baseline; }
body[data-rpg-surface] .meta-row .label { color:#b8c5ce; }
body[data-rpg-surface] .meta-row .value { text-align:right; overflow-wrap:anywhere; }
body[data-rpg-surface] .item-description { padding-top:.6rem; }
body[data-rpg-surface] .special-text { color:#75e1ea; }
body[data-rpg-surface] .filter-controls { scroll-margin-top:5rem; }
body[data-rpg-surface] .foba-facet-hint { max-width:55ch; }
body[data-rpg-surface] .foba-facet-options { align-items:stretch; }
body[data-rpg-surface] .foba-facet-choice { border-radius:8px; }
body[data-rpg-surface] .foba-facet-choice.active { box-shadow:inset 0 -2px 0 #39c6d5; }
body[data-rpg-surface] .foba-ui-summary { border-top:1px solid var(--rpg-line); padding-top:.7rem; }
body[data-rpg-surface] .rules-content :is(p,li) { max-width:90ch; }
body[data-rpg-surface] :is(.rule-text,.item-description) :is(ul,ol) { padding-left:1.4rem; }
body[data-rpg-surface] :is(.rule-text,.item-description) li+li { margin-top:.4rem; }
body[data-rpg-surface] .chapter-nav a { white-space:normal; }
body[data-rpg-surface] #foba-helper-home .tool-card { display:flex; flex-direction:column; align-items:center; justify-content:flex-start; gap:.45rem; }
body[data-rpg-surface] #foba-helper-home .tool-card :is(h3,p) { margin:0; width:100%; text-align:center; }
body[data-rpg-surface=account] .site-main { padding-top:1rem; }
body[data-rpg-surface=account] :is(.view-char-section,.dashboard-section) { width:100%; max-width:1280px; margin-inline:auto; }
body[data-rpg-surface=account] .char-header { grid-template-columns:190px minmax(0,1fr); gap:1.5rem; padding:1.25rem; }
body[data-rpg-surface=account] .char-info { gap:1rem; justify-content:flex-start; min-width:0; }
body[data-rpg-surface=account] .char-info-header { gap:1rem; flex-wrap:wrap; }
body[data-rpg-surface=account] .char-name { font:700 clamp(1.55rem,3vw,2.4rem)/1.2 Inter,Arial,sans-serif; }
body[data-rpg-surface=account] .char-avatar-container { max-height:245px; overflow:hidden; border-radius:9px; }
body[data-rpg-surface=account] .char-avatar-container img { width:100%; max-height:245px; object-fit:cover; object-position:top; }
body[data-rpg-surface=account] .char-stats-bar { margin:0; gap:.5rem; }
body[data-rpg-surface=account] .mini-stat { padding:.75rem .4rem; }
body[data-rpg-surface=account] .header-actions { flex-wrap:wrap; gap:.5rem; }
body[data-rpg-surface=account] .header-actions a { min-height:42px; display:inline-flex; align-items:center; justify-content:center; }
body[data-rpg-surface=account] .tabs-nav { display:flex; flex-wrap:wrap; gap:.5rem; padding:.7rem 0; margin-block:.5rem 1rem; overflow:visible; }
body[data-rpg-surface=account] .tabs-nav .tab-btn { min-height:44px; white-space:normal; flex:1 1 135px; margin:0; }
body[data-rpg-surface=account] .panel { padding:1.2rem; border:1px solid var(--rpg-line); border-radius:12px; }
body[data-rpg-surface=account] .panel :is(h3,h4) { font-family:Inter,Arial,sans-serif; line-height:1.4; }
body[data-rpg-surface=account] textarea { min-height:180px; resize:vertical; line-height:1.6; padding:.85rem; }
body[data-rpg-surface=account] .inventory-controls { display:flex; gap:.7rem; flex-wrap:wrap; align-items:end; }
body[data-rpg-surface=account] .inventory-controls input { flex:1 1 180px; }
body[data-rpg-surface=account] .dashboard-grid { grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr)); gap:1rem; }
body[data-rpg-surface=account] .character-card { min-width:0; }
body[data-rpg-surface=account] .character-name { overflow-wrap:anywhere; }
.rpg-account-tools { display:flex; gap:.7rem; flex-wrap:wrap; padding:1rem; margin-bottom:1rem; border:1px solid var(--rpg-line); border-radius:12px; background:#181e24; }
.rpg-account-tools input { flex:1 1 220px; padding:.7rem; border:1px solid #52616e; border-radius:7px; background:#10161c; color:#f5f8fa; }
.rpg-account-tools select { padding:.7rem; background:#10161c; color:#f5f8fa; border:1px solid #52616e; border-radius:7px; }
.rpg-save-status { color:#c5d4df; font:500 .9rem/1.5 Inter,sans-serif; padding:.5rem 0; }
.rpg-account-tools [hidden],.dashboard-section [hidden] { display:none !important; }
.rpg-archive { margin-top:2rem; padding:1rem; border:1px solid var(--rpg-line); border-radius:10px; }
.rpg-archive summary { cursor:pointer; padding:.5rem; }
.rpg-archive li { margin:.7rem 0; }
@media(max-width:768px) {
 body[data-rpg-surface] :is(.helper-section,.view-char-section,.dashboard-section) { padding-inline:.75rem; }
 body[data-rpg-surface] :is(input,select,textarea) { font-size:16px; min-height:44px; }
 body[data-rpg-surface] .item-meta .meta-row { flex-wrap:wrap; row-gap:.2rem; }
 body[data-rpg-surface] .item-meta .meta-row .value { margin-left:auto; }
 body[data-rpg-surface] #foba-helper-home .grid-2 { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
 body[data-rpg-surface] #foba-helper-home .tool-card { padding:.85rem .5rem !important; }
 body[data-rpg-surface] #foba-helper-home .tool-card h3 { font-size:.88rem !important; }
 body[data-rpg-surface] .rules-content table { display:block; max-width:100%; overflow-x:auto; }
 body[data-rpg-surface] .rules-sidebar { padding-bottom:3rem; }
 body[data-rpg-surface=account] .char-header { grid-template-columns:minmax(0,1fr); padding:1rem; gap:1rem; }
 body[data-rpg-surface=account] .char-sidebar { display:grid; grid-template-columns:82px minmax(0,1fr); align-items:center; gap:1rem; width:100%; }
 body[data-rpg-surface=account] .char-avatar-container { width:82px; height:96px; margin:0; }
 body[data-rpg-surface=account] .char-avatar-container img { height:96px; object-fit:cover; }
 body[data-rpg-surface=account] .char-info-header { align-items:flex-start; text-align:left; gap:.75rem; }
 body[data-rpg-surface=account] :is(.char-name,.char-meta) { text-align:left; }
 body[data-rpg-surface=account] .char-stats-bar { grid-template-columns:repeat(3,minmax(0,1fr)); }
 body[data-rpg-surface=account] .char-info .stats-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
 body[data-rpg-surface=account] .tabs-nav .tab-btn { flex:1 1 110px; font-size:.8rem; padding:.7rem .4rem; }
 body[data-rpg-surface=account] .panel { padding:1rem; }
 body[data-rpg-surface] #social-promo { display:none !important; }
 body[data-rpg-surface] .foba-facet-choice { padding:.6rem .5rem; gap:.3rem; }
 body[data-rpg-surface] .foba-facet-label { overflow-wrap:normal; }
 body[data-rpg-surface=account] .view-char-section #tab-main .panel:first-child > ul { grid-template-columns:minmax(0,1fr) !important; }
 body[data-rpg-surface=account] .view-char-section #tab-main .panel:first-child li { gap:1rem; align-items:baseline; }
 body[data-rpg-surface=account] .view-char-section #tab-main .panel:first-child li > span:first-child { min-width:0; overflow-wrap:anywhere; }
 body[data-rpg-surface=account] .view-char-section #tab-main .panel:first-child li > span:last-child { flex:0 0 1.5em; text-align:right; }
 body[data-rpg-surface=account] .grid-2-col { grid-template-columns:minmax(0,1fr); }
 .rpg-account-tools select { width:100%; }
}
@media(prefers-reduced-motion:reduce) { body[data-rpg-surface] * { scroll-behavior:auto !important; animation:none !important; transition:none !important; } }

/* End */
/* /bitrix/templates/candys-rise/css/foba-helper-ui.css?178929622010101 */
/* /foba-helper/rules_books/generator-v2.css?179229601628666 */
/* /bitrix/templates/candys-rise/css/site-menu-v66.css?1792818691528 */
/* /bitrix/templates/candys-rise/css/modern-style.css?179039105428349 */
/* /bitrix/templates/candys-rise/css/rpg-refresh.css?17899269218334 */
