/*! tailwindcss v4.3.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-leading:initial;--tw-border-style:solid;--tw-font-weight:initial;--tw-tracking:initial;--tw-duration:initial;--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000}}}@layer theme{:root,:host{--font-sans:Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:"SFMono-Regular", Consolas, ui-monospace, monospace;--color-white:#fff;--spacing:.25rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--font-weight-black:900;--radius-xl:.75rem;--radius-2xl:1rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}:root{color-scheme:dark;--bg:#071018;--panel:#0d1823;--line:#223447;--text:#e8f0f6;--muted:#93a4b5;--accent:#f5c451;--accent2:#6dd3b8;--danger:#ff7a8a;--warning:#ffbd66;--info:#7db8ff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-height:100vh;font-family:var(--font-sans);--tw-leading:1.55;color:#e8f0f6;background-color:#071018;background-image:radial-gradient(circle at 10% 0,#193246 0,#0000 31%),radial-gradient(circle at 90% 0,#2e2b1c 0,#0000 28%);margin:0;font-size:15px;line-height:1.55}a{color:inherit}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}code,pre,textarea{font-family:var(--font-mono)}pre{overflow-wrap:break-word;white-space:pre-wrap;color:#cbd8e2}details{border-style:var(--tw-border-style);padding-inline:calc(var(--spacing) * 3.5);padding-block:calc(var(--spacing) * 3);background-color:#091722;border-width:1px;border-color:#223447;border-radius:13px}summary{cursor:pointer;--tw-font-weight:var(--font-weight-extrabold);font-weight:var(--font-weight-extrabold)}}@layer components{.muted{color:#93a4b5}.empty{color:#647586;font-style:italic}.eyebrow{--tw-font-weight:var(--font-weight-extrabold);font-size:11px;font-weight:var(--font-weight-extrabold);--tw-tracking:.15em;letter-spacing:.15em;color:#f5c451;text-transform:uppercase;display:block}.badge{align-items:center;gap:var(--spacing);border-style:var(--tw-border-style);padding-inline:calc(var(--spacing) * 2.5);padding-block:var(--spacing);--tw-font-weight:var(--font-weight-extrabold);font-size:11px;font-weight:var(--font-weight-extrabold);white-space:nowrap;color:#b9c7d3;background-color:#122130;border-width:1px;border-color:#223447;border-radius:3.40282e38px;display:inline-flex}.badge-success{color:#99e7d4;background-color:#12332d;border-color:#2f7162}.badge-warning{color:#ffd28a;background-color:#3a2d17;border-color:#806333}.badge-danger{color:#ffadb8;background-color:#351923;border-color:#7d3f4a}.badge-neutral{color:#b8c5d1}.btn{min-height:calc(var(--spacing) * 10.5);border-radius:var(--radius-xl);border-style:var(--tw-border-style);padding-inline:15px;padding-block:calc(var(--spacing) * 2.5);--tw-font-weight:var(--font-weight-extrabold);font-weight:var(--font-weight-extrabold);color:#e8f0f6;transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;background-color:#142535;border-width:1px;border-color:#223447;justify-content:center;align-items:center;text-decoration-line:none;transition-duration:.15s;display:inline-flex}.btn:hover{--tw-translate-y:-1px;translate:var(--tw-translate-x) var(--tw-translate-y);background-color:#183047;border-color:#3b566f}.btn-primary{color:#19200f;background-color:#f5c451;border-color:#d9aa3d}.btn-primary:hover{background-color:#ffd56e}.btn-secondary{background-color:#162a3a}.btn-danger{color:#ffb0bb;background-color:#321923;border-color:#6f3540}.btn-danger:hover{background-color:#48212d;border-color:#a84f60}.btn-small{min-height:calc(var(--spacing) * 8.5);padding-inline:calc(var(--spacing) * 2.5);padding-block:calc(var(--spacing) * 1.5);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.btn:disabled{--tw-translate-y:0;translate:var(--tw-translate-x) var(--tw-translate-y)}.panel{border-style:var(--tw-border-style);background:linear-gradient(#0f1c28f5,#0a151ff0);border-width:1px;border-color:#223447;border-radius:20px;padding:22px;box-shadow:0 24px 70px #00000047}.panel+.panel{margin-top:18px}.panel-head{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px;display:flex}.panel-head h2{--tw-leading:1.2;--tw-font-weight:var(--font-weight-bold);font-size:23px;line-height:1.2;font-weight:var(--font-weight-bold);margin-top:3px;margin-bottom:0}.stack{gap:calc(var(--spacing) * 4);flex-direction:column;display:flex}.inline-form{margin-top:calc(var(--spacing) * 2.5);margin-right:calc(var(--spacing) * 2);display:inline-block}.inline-delete-form{margin:0;display:inline-flex}.field{border-radius:var(--radius-2xl);border-style:var(--tw-border-style);padding:calc(var(--spacing) * 3.5);transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));background-color:#07131d57;border-width:1px;border-color:#0000;flex-direction:column;gap:7px;display:flex}.field:focus-within{background-color:#07131d9e;border-color:#28445b}.field-label{--tw-font-weight:var(--font-weight-extrabold);font-weight:var(--font-weight-extrabold);color:#dce7ef}.required-mark{--tw-font-weight:var(--font-weight-black);font-weight:var(--font-weight-black);color:#f5c451}.optional-mark{margin-left:var(--spacing);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);color:#718596}.field-guidance{margin-bottom:var(--spacing);border-left-style:var(--tw-border-style);color:#b9c9d6;background-color:#0b1a26;border-color:#4d718d;border-left-width:3px;border-top-right-radius:11px;border-bottom-right-radius:11px;flex-direction:column;gap:7px;padding-block:11px;padding-inline:13px;font-size:13px;display:flex}.field-guide-line{align-items:flex-start;gap:calc(var(--spacing) * 2.5);grid-template-columns:112px minmax(0,1fr);display:grid}.field-guide-line>b{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-font-weight:var(--font-weight-black);font-weight:var(--font-weight-black);color:#f4cf74}.field-guide-line span{min-width:0}.field-guide-line pre{border-style:var(--tw-border-style);font-family:var(--font-mono);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-leading:1.55;color:#c7d5df;background-color:#0000;border-width:0;margin:0;padding:0;line-height:1.55}.field-guide-line ul{margin:0;padding-left:18px}.field-guide-line li{margin-block:calc(var(--spacing) * .5)}.field-guide-example{border-top-style:var(--tw-border-style);border-color:#1e3344;border-top-width:1px;padding-top:7px}.field input:not([type=checkbox]),.field textarea,.field select,.copy-box textarea,.patent-ai-prompt-box textarea{resize:vertical;border-style:var(--tw-border-style);width:100%;padding-inline:13px;padding-block:calc(var(--spacing) * 3);color:#e8f0f6;--tw-outline-style:none;background-color:#07131d;border-width:1px;border-color:#2a4054;border-radius:13px;outline-style:none}.field textarea{min-height:110px}.field input:not([type=checkbox]):focus,.field textarea:focus,.field select:focus,.copy-box textarea:focus,.patent-ai-prompt-box textarea:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);--tw-ring-color:#f5c4511f;border-color:#e7b949}.field textarea::placeholder,.field input::placeholder{color:#607487;opacity:1}.field textarea:placeholder-shown{background:linear-gradient(#07131d,#091824)}.check-row{align-items:center;gap:calc(var(--spacing) * 2);border-radius:var(--radius-xl);border-style:var(--tw-border-style);width:max-content;padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 2.5);background-color:#07131d;border-width:1px;border-color:#2a4054;display:flex}.check-row input{accent-color:#f5c451;width:18px;height:18px}.field-invalid{background-color:#3e151f7a;border-color:#c95769;box-shadow:0 0 0 3px #ff7a8a17}.field-invalid input:not([type=checkbox]),.field-invalid textarea,.field-invalid select{border-color:#d45d70}.field-error-text{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold);color:#ff9eab;margin:0}.validation-summary{margin-bottom:calc(var(--spacing) * 2);border-style:var(--tw-border-style);padding-inline:calc(var(--spacing) * 4);padding-block:calc(var(--spacing) * 3.5);color:#ffb5bf;background-color:#381923;border-width:1px;border-color:#8a3f4d;border-radius:14px}.form-actions{margin-top:var(--spacing);gap:calc(var(--spacing) * 2.5);flex-wrap:wrap;display:flex}.notice{margin-block:calc(var(--spacing) * 3.5);border-style:var(--tw-border-style);color:#c8d9e7;background-color:#102435;border-width:1px;border-color:#30506a;border-radius:14px;padding-block:13px;padding-inline:15px}.notice a{color:#8acbff;text-underline-offset:2px;transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));text-decoration-line:underline;text-decoration-color:#0000}@media (hover:hover){.notice a:hover{text-decoration-color:currentColor}}.notice-ok{color:#aee8d9;background-color:#0f3029;border-color:#2d6659}.notice-warning{color:#ffd695;background-color:#392b16;border-color:#7c6032}.flash{border-style:var(--tw-border-style);padding-inline:calc(var(--spacing) * 4);padding-block:calc(var(--spacing) * 3.5);background-color:#122334;border-width:1px;border-color:#223447;border-radius:14px;margin-bottom:18px}.flash-success{color:#acf0dc;background-color:#103129;border-color:#2e6c5e}.flash-warning{color:#ffda9e;background-color:#3b2e18;border-color:#806536}.flash-error{color:#ffb5bf;background-color:#381923;border-color:#7d3f4b}.issues{flex-direction:column;gap:11px;display:flex}.issue{border-style:var(--tw-border-style);border-width:1px;border-left-style:var(--tw-border-style);background-color:#0a1621;border-color:#223447;border-left-width:4px;border-radius:14px;padding-block:13px;padding-inline:15px}.issue-error{border-left-color:#ff7a8a}.issue-warning{border-left-color:#ffbd66}.issue-info{border-left-color:#7db8ff}.issue p{margin-block:calc(var(--spacing) * 2)}.issue-head{justify-content:space-between;align-items:center;gap:calc(var(--spacing) * 3);display:flex}.issue-head code{color:#8295a7;font-size:11px}.coach-question{color:#d8e7f3}.assessment{border-style:var(--tw-border-style);background-color:#0b1c29;border-width:1px;border-color:#2b485f;border-radius:15px;padding:15px}.assessment p{margin-bottom:0}.ai-list{margin-top:calc(var(--spacing) * 4);border-top-style:var(--tw-border-style);padding-top:calc(var(--spacing) * 3.5);border-color:#223447;border-top-width:1px}.ai-list h3{margin-top:0;margin-bottom:calc(var(--spacing) * 2.5)}.ai-list li{margin-block:calc(var(--spacing) * 2)}.ai-list li span{color:#93a4b5;font-size:13px;display:block}.copy-box{margin-block:calc(var(--spacing) * 4)}.copy-box-head{justify-content:space-between;align-items:center;gap:calc(var(--spacing) * 3);margin-bottom:7px;display:flex}.proposal{gap:calc(var(--spacing) * 2.5);border-style:var(--tw-border-style);background-color:#091722;border-width:1px;border-color:#223447;border-radius:14px;grid-template-columns:22px 1fr;padding:13px;display:grid}.proposal input{accent-color:#f5c451;width:18px;height:18px;margin-top:3px}.proposal span{gap:calc(var(--spacing) * 1.5);flex-direction:column;display:flex}.proposal code{color:#85c8ff}.proposal small{color:#93a4b5}.step-purpose{margin-top:calc(var(--spacing) * -1);font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height));color:#aebdca;margin-bottom:18px}.step-guide{border-radius:var(--radius-2xl);border-style:var(--tw-border-style);padding:calc(var(--spacing) * 4);background:linear-gradient(#122636eb,#08141eeb);border-width:1px;border-color:#2d465d;margin-bottom:18px}.step-guide-head{margin-bottom:calc(var(--spacing) * 2);justify-content:space-between;align-items:baseline;gap:calc(var(--spacing) * 3);display:flex}.step-guide-head h3{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height));--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold);margin:0}.guide-main{margin-top:calc(var(--spacing) * 2);margin-bottom:calc(var(--spacing) * 3);color:#d6e4ee}.guide-grid{gap:calc(var(--spacing) * 2.5);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.guide-card{border-style:var(--tw-border-style);padding:calc(var(--spacing) * 3);background-color:#07131d;border-width:1px;border-color:#223447;border-radius:13px;margin:0}.guide-card>b{--tw-font-weight:var(--font-weight-black);font-weight:var(--font-weight-black);color:#f4cf74}.guide-card ul{margin-top:calc(var(--spacing) * 2);padding-left:calc(var(--spacing) * 5);color:#c6d4df;margin-bottom:0}.guide-card li{margin-block:var(--spacing)}.guide-avoid{background-color:#120e16;border-color:#4b3945}.app-shell{grid-template-columns:290px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{border-right-style:var(--tw-border-style);height:100vh;padding-inline:calc(var(--spacing) * 4);background-color:#050e16f0;border-color:#223447;border-right-width:1px;padding-block:22px;position:sticky;top:0;overflow-y:auto}.brand{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height));--tw-font-weight:var(--font-weight-black);font-weight:var(--font-weight-black);--tw-tracking:-.04em;letter-spacing:-.04em;margin-inline:5px;margin-top:0;margin-bottom:18px;text-decoration-line:none;display:block}.brand span{color:#f5c451}.sidebar-user{margin-bottom:calc(var(--spacing) * 3.5);border-style:var(--tw-border-style);padding:calc(var(--spacing) * 3);background-color:#0b1a26;border-width:1px;border-color:#223447;border-radius:13px}.sidebar-user>b,.sidebar-user>span,.sidebar-user>small{display:block}.sidebar-user>span{text-overflow:ellipsis;color:#9fb0be;font-size:11px;overflow:hidden}.sidebar-user>small{margin-block:calc(var(--spacing) * 1.5);color:#dfc476}.sidebar-user a{color:#9acfff;font-size:11px;text-decoration-line:none}.progress-box{margin-bottom:calc(var(--spacing) * 5);border-style:var(--tw-border-style);background-color:#0c1a26;border-width:1px;border-color:#223447;border-radius:15px;padding:13px}.progress-box>div:first-child{justify-content:space-between;align-items:baseline;display:flex}.progress-box b{color:#f5c451;font-size:21px}.progress-box span{color:#93a4b5;font-size:11px}.progress-track{margin-top:calc(var(--spacing) * 2);background-color:#172a39;border-radius:3.40282e38px;height:7px;overflow:hidden}.progress-track i{background:linear-gradient(90deg,#f5c451,#6dd3b8);border-radius:3.40282e38px;height:100%;display:block}.nav-group{margin-block:17px}.nav-title{margin-inline:calc(var(--spacing) * 2);--tw-font-weight:var(--font-weight-black);font-size:10px;font-weight:var(--font-weight-black);--tw-tracking:.12em;letter-spacing:.12em;color:#66798b;text-transform:uppercase;margin-top:0;margin-bottom:7px}.nav-step{padding-inline:9px;padding-block:calc(var(--spacing) * 2);color:#a8b7c4;border-radius:10px;grid-template-columns:9px 1fr;align-items:center;gap:9px;font-size:13px;text-decoration-line:none;display:grid}.nav-step:hover{color:#e8f0f6;background-color:#101f2c}.nav-step.active{color:var(--color-white);background-color:#182b3b}.nav-step i{background-color:#405365;border-radius:3.40282e38px;width:7px;height:7px}.nav-step.status-done i{background-color:#6dd3b8}.nav-step.status-error i{background-color:#ff7a8a}.nav-step.active i{background-color:#f5c451;box-shadow:0 0 0 4px #f5c45121}.workspace{width:100%;min-width:0;max-width:1140px;padding-inline:calc(var(--spacing) * 7);margin-inline:auto;padding-top:26px;padding-bottom:50px}.topbar{margin-bottom:calc(var(--spacing) * 5);align-items:center;gap:calc(var(--spacing) * 3.5);display:flex}.topbar h1{margin-top:calc(var(--spacing) * .5);--tw-leading:1.15;--tw-font-weight:var(--font-weight-bold);font-size:26px;line-height:1.15;font-weight:var(--font-weight-bold);margin-bottom:0}.top-actions{justify-content:flex-end;align-items:center;gap:calc(var(--spacing) * 2);flex-wrap:wrap;margin-left:auto;display:flex}.menu-button{height:calc(var(--spacing) * 10.5);width:calc(var(--spacing) * 10.5);border-radius:var(--radius-xl);border-style:var(--tw-border-style);color:var(--color-white);background-color:#122232;border-width:1px;border-color:#223447;display:none}footer{padding-inline:var(--spacing);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));color:#6f8293;padding-top:22px}.metric-grid{gap:calc(var(--spacing) * 3);grid-template-columns:repeat(3,minmax(0,1fr));margin-block:15px;display:grid}.metric-grid div{border-style:var(--tw-border-style);text-align:center;background-color:#091722;border-width:1px;border-color:#223447;border-radius:14px;padding:15px}.metric-grid b{color:#f5c451;font-size:26px;display:block}.metric-grid span{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));color:#93a4b5}.summary-grid{gap:calc(var(--spacing) * 3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.summary-grid article{border-style:var(--tw-border-style);background-color:#091722;border-width:1px;border-color:#223447;border-radius:15px;padding:15px}.summary-grid h3{margin-top:0;margin-bottom:calc(var(--spacing) * 2);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:#d8e5ee}.summary-grid p{white-space:normal;margin:0}.review-issues>article{margin-block:calc(var(--spacing) * 3.5);border-top-style:var(--tw-border-style);border-color:#223447;border-top-width:1px;padding-top:13px}.review-issues>article>a{margin-bottom:calc(var(--spacing) * 2.5);color:#f6ce73;display:inline-block}.landing{max-width:1180px;margin-inline:auto;padding-block:52px;padding-inline:22px}.public-shell{max-width:1220px;padding-inline:22px;padding-top:calc(var(--spacing) * 6);margin-inline:auto;padding-bottom:60px}.public-nav{margin-bottom:calc(var(--spacing) * 12);border-bottom-style:var(--tw-border-style);padding-inline:calc(var(--spacing) * .5);padding-top:calc(var(--spacing) * .5);padding-bottom:calc(var(--spacing) * 4);border-color:#223447;border-bottom-width:1px;justify-content:space-between;align-items:center;gap:18px;display:flex}.public-nav .brand{margin:0}.public-nav nav{align-items:center;gap:calc(var(--spacing) * 2);flex-wrap:wrap;display:flex}.public-nav nav a{padding-inline:11px;padding-block:calc(var(--spacing) * 2);--tw-font-weight:var(--font-weight-extrabold);font-size:13px;font-weight:var(--font-weight-extrabold);color:#b8c7d3;border-radius:10px;text-decoration-line:none}.public-nav nav a:hover{color:var(--color-white);background-color:#132433}.public-hero{max-width:900px;margin-bottom:30px}.public-hero h1{margin-top:calc(var(--spacing) * 1.5);margin-bottom:calc(var(--spacing) * 2);--tw-leading:1;--tw-tracking:-.045em;letter-spacing:-.045em;font-size:clamp(36px,6vw,68px);line-height:1}.public-hero p{max-width:820px;font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height));color:#b3c2ce}.compact-hero h1{font-size:clamp(34px,5vw,54px)}.hero-badges{gap:calc(var(--spacing) * 2);flex-wrap:wrap;display:flex}.auth-grid,.dashboard-grid,.account-grid{align-items:flex-start;gap:calc(var(--spacing) * 5);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.pricing-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:18px;display:grid}.price-card{height:100%}.price-card h2{margin-block:calc(var(--spacing) * 1.5);font-size:34px}.price-card ul{padding-left:calc(var(--spacing) * 5);color:#bccad5}.price-card li{margin-block:7px}.price-card.current-plan{border-color:#d6a83b;box-shadow:0 0 0 2px #f5c4511a,0 24px 70px #00000047}.price-limit{align-items:baseline;gap:calc(var(--spacing) * 2);border-style:var(--tw-border-style);background-color:#091722;border-width:1px;border-color:#223447;border-radius:13px;margin-block:18px;padding:13px;display:flex}.price-limit b{color:#f5c451;font-size:34px}.price-limit span{color:#93a4b5}.account-plan .logout-form{margin-top:calc(var(--spacing) * 6)}.project-list{flex-direction:column;gap:9px;display:flex}.project-item{align-items:center;gap:calc(var(--spacing) * 2);border-style:var(--tw-border-style);padding:calc(var(--spacing) * 2);background-color:#091722;border-width:1px;border-color:#223447;border-radius:13px;grid-template-columns:minmax(0,1fr) auto;display:grid}.project-item>a{justify-content:space-between;gap:calc(var(--spacing) * 4);min-width:0;padding-inline:calc(var(--spacing) * 1.5);padding-block:var(--spacing);border-radius:10px;text-decoration-line:none;display:flex}.project-item:hover{border-color:#46637c}.project-item span{text-align:right;font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));color:#93a4b5}.project-item form{margin:0}.quota-box{margin-block:calc(var(--spacing) * 3.5);border-style:var(--tw-border-style);padding:calc(var(--spacing) * 3.5);background-color:#0c2232;border-width:1px;border-color:#31536d;border-radius:14px}.quota-box>div:first-child{justify-content:space-between;gap:15px;display:flex}.quota-box span,.quota-box small{color:#afc1cf}.quota-box small{margin-top:calc(var(--spacing) * 2);display:block}.admin-metrics{margin-bottom:calc(var(--spacing) * 5);gap:calc(var(--spacing) * 3.5);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.admin-metrics article{text-align:center}.admin-metrics b{color:#f5c451;font-size:34px;display:block}.admin-metrics span{color:#93a4b5}.admin-table-wrap{overflow:auto}.admin-table{border-collapse:collapse;width:100%;min-width:850px}.admin-table th,.admin-table td{border-bottom-style:var(--tw-border-style);padding:calc(var(--spacing) * 2.5);text-align:left;vertical-align:middle;border-color:#223447;border-bottom-width:1px}.admin-table th{color:#8599aa;text-transform:uppercase;font-size:11px}.admin-table td small{color:#93a4b5;display:block}.admin-table select{border-style:var(--tw-border-style);min-width:125px;padding:calc(var(--spacing) * 2);color:#e8f0f6;background-color:#07131d;border-width:1px;border-color:#2a4054;border-radius:9px}.admin-table input[type=checkbox]{accent-color:#f5c451;width:18px;height:18px}.patent-plan-card{border-style:var(--tw-border-style);padding:calc(var(--spacing) * 3.5);background-color:#091722;border-width:1px;border-color:#223447;border-radius:15px}.patent-plan-card-primary{background-color:#081a27;border-color:#34536b}.patent-plan-card-primary .copy-box-head>div{gap:var(--spacing);flex-direction:column;display:flex}.patent-plan-card pre{margin-top:calc(var(--spacing) * 2);border-radius:var(--radius-xl);border-style:var(--tw-border-style);max-height:340px;padding:calc(var(--spacing) * 3);background-color:#06111a;border-width:1px;border-color:#1f3547;margin-bottom:0;overflow:auto}.patent-mode-field{margin-top:0}.patent-expert-box{--tw-border-style:dashed;border-style:dashed}.patent-expert-box .check-row{margin-block:calc(var(--spacing) * 3);width:100%}.patent-mode-heading{margin-top:18px;margin-bottom:calc(var(--spacing) * 2);border-top-style:var(--tw-border-style);padding-top:calc(var(--spacing) * 3);border-color:#223447;border-top-width:1px}.patent-results{margin-top:calc(var(--spacing) * 5)}.patent-result-card{margin-block:calc(var(--spacing) * 3);border-style:var(--tw-border-style);padding:calc(var(--spacing) * 4);background-color:#091722;border-width:1px;border-color:#223447;border-radius:15px}.patent-card-head{justify-content:space-between;align-items:flex-start;gap:calc(var(--spacing) * 3.5);display:flex}.patent-card-head h4{margin-top:0;margin-bottom:calc(var(--spacing) * 1.5);--tw-leading:1.25;line-height:1.25}.patent-card-head a{color:#8acbff;font-size:13px}.patent-card-score{padding-top:calc(var(--spacing) * .5);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-font-weight:var(--font-weight-black);font-weight:var(--font-weight-black);white-space:nowrap;color:#f5c451}.patent-card-meta{margin-top:7px;margin-bottom:calc(var(--spacing) * 2.5);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));color:#93a4b5}.patent-text{margin-top:calc(var(--spacing) * 2.5);margin-bottom:calc(var(--spacing) * 3);overflow-wrap:break-word;white-space:pre-wrap;color:#c2cfda}.patent-match-details,.patent-brief-details{margin-block:calc(var(--spacing) * 2.5);background-color:#07131d;border-color:#263a4d}.patent-match-details pre{margin-top:calc(var(--spacing) * 2);max-height:180px;margin-bottom:0;overflow:auto}.patent-ai-prompt-box{margin-top:calc(var(--spacing) * 3)}.patent-export-hint{margin-top:18px}.patent-export-actions{margin-top:calc(var(--spacing) * -1)}.export-preview{resize:vertical;border-style:var(--tw-border-style);width:100%;min-height:70vh;padding:calc(var(--spacing) * 3.5);font-family:var(--font-mono);white-space:pre-wrap;color:#e8f0f6;background-color:#07131d;border-width:1px;border-color:#2a4054;border-radius:13px}}@layer utilities{.fixed{position:fixed}.static{position:static}.block{display:block}.contents{display:contents}.hidden{display:none}.table{display:table}}@media (max-width:900px){.app-shell{display:block}.sidebar{z-index:30;width:290px;transition-property:left;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.2s;transition-duration:.2s;position:fixed;top:0;left:-310px;box-shadow:0 24px 70px #00000047}body.menu-open .sidebar{left:0}.workspace{padding-inline:15px;padding-top:18px;padding-bottom:calc(var(--spacing) * 10)}.menu-button{display:block}.topbar{align-items:flex-start}.top-actions .badge{display:none}.summary-grid,.pricing-grid,.auth-grid,.dashboard-grid,.account-grid{grid-template-columns:repeat(1,minmax(0,1fr))}.public-nav{margin-bottom:30px}.admin-metrics{grid-template-columns:repeat(1,minmax(0,1fr))}}@media (max-width:780px){.guide-grid{grid-template-columns:repeat(1,minmax(0,1fr))}.step-guide-head{display:block}.step-guide{padding:13px}}@media (max-width:680px){.patent-card-head{display:block}.patent-card-score{margin-top:calc(var(--spacing) * 1.5)}}@media (max-width:620px){.landing{padding-inline:calc(var(--spacing) * 3.5);padding-block:30px}.public-shell{padding-inline:calc(var(--spacing) * 3.5);padding-top:18px;padding-bottom:calc(var(--spacing) * 10)}.public-nav{align-items:flex-start}.public-nav nav{justify-content:flex-end}.field-guide-line{grid-template-columns:repeat(1,minmax(0,1fr));gap:3px}.field{padding:11px}.public-hero p{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}}@media (max-width:580px){.panel{border-radius:var(--radius-2xl);padding:17px}.topbar h1{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.top-actions{gap:5px}.top-actions .btn{padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 1.5)}.metric-grid{grid-template-columns:repeat(1,minmax(0,1fr))}.form-actions{flex-direction:column}.form-actions .btn{width:100%}.project-item{grid-template-columns:repeat(1,minmax(0,1fr))}.project-item>a{flex-direction:column}.project-item span{text-align:left}.project-item form .btn{width:100%}}.landing-hero{grid-template-columns:minmax(0,1.25fr) minmax(340px,.75fr);align-items:center;gap:42px;min-height:570px;padding:38px 0 58px;display:grid}.landing-hero-copy h1{letter-spacing:-.055em;max-width:820px;margin:8px 0 18px;font-size:clamp(44px,6.8vw,82px);line-height:.96}.landing-hero-copy>p{color:#b9c8d4;max-width:760px;margin:0;font-size:18px}.landing-actions{flex-wrap:wrap;gap:10px;margin-top:28px;display:flex}.landing-stat-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:34px;display:grid}.landing-stat-row span{border-top:1px solid #31475a;flex-direction:column;gap:2px;min-width:0;padding:12px 0;display:flex}.landing-stat-row b{color:#f4cf74}.landing-stat-row small{color:#8498a9}.hero-search-preview{background:linear-gradient(160deg,#12293afa,#07111afa);border-color:#35536b;position:relative;overflow:hidden;transform:rotate(1.2deg)}.preview-window-head{color:#a8b8c5;align-items:center;gap:7px;margin:-4px 0 22px;font-size:12px;display:flex}.preview-window-head span{background:#40566a;border-radius:999px;width:8px;height:8px}.preview-window-head span:first-child{background:#f5c451}.preview-window-head b{margin-left:auto}.preview-field{background:#07131d;border:1px solid #34516a;border-radius:16px;flex-direction:column;gap:8px;padding:16px;display:flex}.preview-field small{color:#7e94a6}.preview-field span{color:#dbe6ee;line-height:1.45}.preview-mode{color:#b8c8d4;justify-content:space-between;align-items:center;gap:12px;margin-top:13px;font-size:13px;display:flex}.preview-results{gap:8px;margin-top:22px;display:grid}.preview-results i{background:linear-gradient(90deg,#172e3fe6,#0a1823cc);border:1px solid #20384c;border-radius:14px;height:68px;display:block}.preview-results i:nth-child(2){width:88%}.preview-results i:nth-child(3){width:72%}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:0 0 18px;display:grid}.product-card{position:relative;overflow:hidden}.product-card-featured{border-color:#846a34}.product-card h2{margin:8px 0 10px;font-size:30px;line-height:1.12}.product-card p{color:#afbfcc}.product-card ul{gap:8px;margin:18px 0 22px;padding:0;display:grid}.product-card li{color:#c8d5de;padding-left:20px;position:relative}.product-card li:before{content:"";background:#6dd3b8;border-radius:999px;width:7px;height:7px;position:absolute;top:.58em;left:0}.product-card-featured li:before{background:#f5c451}.product-index{color:#42596c;letter-spacing:-.05em;font-size:48px;font-weight:900;position:absolute;top:18px;right:20px}.product-icon{color:#f5c451;background:#102536;border:1px solid #39536a;border-radius:15px;place-items:center;width:48px;height:48px;margin-bottom:18px;font-size:26px;font-weight:900;display:grid}.feature-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:18px 0 20px;display:grid}.feature-grid b{color:#e1eaf0}.feature-grid p{color:#8fa2b2;margin:7px 0 0}.patent-public-hero{max-width:980px}.standalone-search-layout{grid-template-columns:minmax(0,1.55fr) minmax(280px,.65fr);align-items:start;gap:18px;display:grid}.standalone-search-form{margin:0}.search-history{position:sticky;top:18px;margin:0!important}.search-history-list{flex-direction:column;gap:8px;display:flex}.search-history-item{color:#d8e5ee;text-align:left;background:#081620;border:1px solid #22394c;border-radius:13px;flex-direction:column;gap:7px;width:100%;padding:12px;transition:border-color .15s,background-color .15s,transform .15s;display:flex}.search-history-item:hover{background:#0d1e2b;border-color:#506d84;transform:translateY(-1px)}.search-history-item>span{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.search-history-item small{color:#6f8495;font-size:10px}.search-history-item em{color:#9cafbd;font-size:12px;font-style:normal;line-height:1.4;overflow:hidden}.search-example-row{flex-wrap:wrap;gap:7px;margin-top:-7px;display:flex}.search-example{color:#a9c7dc;background:#091b28bf;border:1px dashed #3c566b;border-radius:999px;padding:7px 10px;font-size:11px}.search-example:hover{color:#f4d58a;border-color:#e1b64d}.ajax-status{border:0 solid #0000;border-radius:12px;min-height:0;padding:0;font-size:13px}.ajax-status:not(:empty){border-width:1px;min-height:44px;padding:11px 13px}.ajax-status-loading{color:#b8daf2;background:#0d2638;border-color:#315879}.ajax-status-success{color:#aee8d9;background:#0f3029;border-color:#2d6659}.ajax-status-error{color:#ffb5bf;background:#381923;border-color:#8a3f4d}.btn-loading{position:relative}.btn-loading:before{content:"";border:2px solid;border-right-color:#0000;border-radius:999px;width:14px;height:14px;margin-right:8px;animation:.7s linear infinite patent-spin}@keyframes patent-spin{to{transform:rotate(360deg)}}.patent-empty-state{color:#a8bac7;text-align:center;background:#06111a8c;border:1px dashed #31485c;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:7px;min-height:150px;padding:28px;display:flex}.patent-empty-state b{color:#dbe6ee;font-size:18px}.patent-results-panel{margin-top:18px!important}.standalone-query-summary{background:#07131d;border:1px solid #274155;border-radius:14px;margin-bottom:14px;padding:14px}.standalone-query-summary>div{justify-content:space-between;gap:14px;margin-bottom:8px;display:flex}.standalone-query-summary span{color:#718697;font-size:11px}.standalone-query-summary pre{max-height:180px;margin:0;overflow:auto}.login-cta{flex-direction:column;justify-content:center;align-items:flex-start;min-height:320px;display:flex}.quick-tool-card{border-color:#4e6545;justify-content:space-between;align-items:center;gap:18px;margin-bottom:18px;text-decoration:none;display:flex}.quick-tool-card:hover{border-color:#a78237}.quick-tool-card p{color:#9eafbc;margin:4px 0 0}@media (max-width:980px){.landing-hero{grid-template-columns:1fr;min-height:auto;padding-top:22px}.hero-search-preview{max-width:620px;transform:none}.standalone-search-layout{grid-template-columns:1fr}.search-history{position:static}}@media (max-width:760px){.landing-hero-copy h1{font-size:clamp(40px,12vw,62px)}.product-grid,.feature-grid,.landing-stat-row{grid-template-columns:1fr}.landing-stat-row span{padding:8px 0}}@media (max-width:540px){.landing-actions .btn{width:100%}.landing-hero{gap:26px;padding-bottom:34px}.hero-search-preview{padding:15px}.standalone-query-summary>div,.search-history-item>span{flex-direction:column;align-items:flex-start;gap:2px}}.product-grid>.panel,.standalone-search-layout>.panel{margin-top:0}:root{--surface:#0d1a26b8;--surface-soft:#0d1c2975;--surface-strong:#0b1a26;--control-line:#385065}body{background-color:#071018;background-image:linear-gradient(#0a1620 0,#071018 540px)}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline-offset:3px;outline:2px solid #f5c451}.panel{background:var(--surface);box-shadow:none;border:0}.panel+.panel{margin-top:24px}.panel-head{margin-bottom:22px}.stack{gap:24px}.badge,.btn{box-shadow:none;border:0}.btn:hover{border-color:#0000}.btn-secondary{background:#172a39}.btn-danger{background:#321923}details{background:0 0;border:0;border-radius:0;padding:10px 0}details>summary{color:#b5c9d8}details[open]>summary{margin-bottom:10px}.field{background:0 0;border:0;border-radius:0;gap:9px;padding:0}.field:focus-within{background:0 0;border-color:#0000}.field-label{font-size:15px}.field-guidance{color:#a9bac7;background:0 0;border:0;border-radius:0;gap:5px;margin:0 0 3px;padding:0;line-height:1.5}.field-guide-line{grid-template-columns:128px minmax(0,1fr)}.field-guide-line>b{color:#829bad;font-weight:750}.field-guide-example{border-top:0;padding-top:0}.field-guide-line pre{color:#b8c8d3}.field input:not([type=checkbox]),.field textarea,.field select,.copy-box textarea,.patent-ai-prompt-box textarea,.export-preview{border:1px solid var(--control-line);background:#07131d;box-shadow:0 1px #ffffff06,inset 0 1px 2px #00000029}.field input:not([type=checkbox]):focus,.field textarea:focus,.field select:focus,.copy-box textarea:focus,.patent-ai-prompt-box textarea:focus{border-color:#e7b949;box-shadow:0 0 0 3px #f5c4511a}.check-row{background:#0b1a26;border:0}.field-invalid{background:#3e151f61;border:0;padding:14px;box-shadow:inset 3px 0 #c95769}.notice,.flash,.validation-summary,.assessment,.issue{border:0;border-radius:10px;box-shadow:inset 3px 0 #4d718d}.notice-ok,.flash-success{box-shadow:inset 3px 0 #55a891}.notice-warning,.flash-warning{box-shadow:inset 3px 0 #b58b43}.flash-error,.validation-summary{box-shadow:inset 3px 0 #c95769}.issue-error{box-shadow:inset 3px 0 #ff7a8a}.issue-warning{box-shadow:inset 3px 0 #ffbd66}.issue-info{box-shadow:inset 3px 0 #7db8ff}.step-guide{background:#0f23319e;border:0;padding:22px 22px 22px 25px;box-shadow:inset 3px 0 #466a83}.guide-grid{gap:28px}.guide-card,.guide-avoid{background:0 0;border:0;border-radius:0;padding:0}.guide-card>b{color:#dcbf76}.sidebar{border-right-color:#5b74882e}.sidebar-user,.progress-box{background:#0f202dc2;border:0}.public-nav{border-bottom-color:#5b748833}.metric-grid div,.summary-grid article,.admin-metrics article{background:var(--surface-soft);border:0}.project-item{background:#0a1925b8;border:0}.project-item:hover{background:#122837d1;border-color:#0000}.price-card.current-plan{box-shadow:none;background:linear-gradient(150deg,#3c30167a,#0d1a26bd);border:0}.price-limit,.quota-box{background:0 0;border:0;padding:0}.quota-box .progress-track{background:#49627647}.proposal{background:#091722b8;border:0}.patent-plan-card{background:#081926a8;border:0}.patent-plan-card-primary{border:0}.patent-plan-card pre{background:#040f17a8;border:0}.patent-expert-box{border-top:1px solid #576f8233;padding-top:18px}.patent-result-card{background:0 0;border:0;border-bottom:1px solid #5b74882e;border-radius:0;margin:0;padding:24px 0}.patent-result-card:last-child{border-bottom:0}.patent-match-details,.patent-brief-details{background:0 0;border:0;padding:8px 0}.patent-mode-heading{border-top:0;margin-top:30px;padding-top:0}.patent-empty-state{text-align:left;background:#0a192585;border:0;align-items:flex-start;min-height:0;padding:24px}.standalone-query-summary{background:#07131d94;border:0;box-shadow:inset 3px 0 #38576d}.landing-hero{gap:64px}.landing-stat-row{gap:24px}.landing-stat-row span{border-top:0;padding:0}.hero-search-preview{box-shadow:none;background:linear-gradient(155deg,#132b3be0,#08141eb8);border:0;border-radius:24px;padding:30px;position:relative;overflow:hidden;transform:none}.hero-search-preview:after{content:"";background:#f5c4510f;border-radius:999px;width:250px;height:250px;position:absolute;bottom:-115px;right:-100px}.hero-search-preview h2{max-width:480px;margin:8px 0 22px;font-size:29px;line-height:1.15}.preview-comparison{gap:17px;display:grid}.preview-comparison>div{z-index:1;position:relative}.preview-comparison small{color:#7f94a5;letter-spacing:.08em;text-transform:uppercase;margin-bottom:4px;font-size:11px;font-weight:800;display:block}.preview-comparison p{color:#9eafbb;margin:0}.preview-query-good{padding:14px 0 14px 17px;box-shadow:inset 3px 0 #f5c451}.preview-query-good p{color:#e0e8ee;font-size:16px}.preview-breakdown{z-index:1;color:#a9bac7;gap:7px;margin:20px 0 0;padding:0;display:grid;position:relative}.preview-breakdown b{color:#d4e0e8}.preview-mode{z-index:1;margin-top:22px;position:relative}.product-card-featured{background:linear-gradient(150deg,#342c1670,#0d1a26bf);border:0}.product-icon{background:0 0;border:0;border-radius:0;width:auto;height:auto;margin-bottom:17px;font-size:33px;display:block}.feature-grid{gap:28px;margin-top:28px}.feature-grid article{background:0 0;border:0;border-radius:0;padding:0}.search-primer{grid-template-columns:minmax(220px,.7fr) minmax(0,1.8fr);gap:44px;margin:0 0 42px;display:grid}.search-primer-intro h2{margin:6px 0 8px;font-size:28px;line-height:1.15}.search-primer-intro p{color:#91a4b3;margin:0}.search-primer-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;display:grid}.search-primer-grid article{grid-template-columns:28px 1fr;align-items:start;gap:10px;display:grid}.search-primer-grid article>span{color:#f5c451;font-size:20px;font-weight:900}.search-primer-grid b{color:#dbe6ed}.search-primer-grid p{color:#9dafbd;margin:7px 0}.search-primer-grid small{color:#cfdae2;line-height:1.45}.standalone-search-layout{gap:32px}.standalone-search-form{padding:28px}.search-side{gap:30px;display:grid;position:sticky;top:18px}.search-mode-help,.search-history{background:0 0;border:0;margin:0;padding:5px 2px;position:static}.search-mode-help h2,.search-history h2{margin:5px 0 12px;font-size:21px;line-height:1.2}.search-mode-help dl{gap:15px;margin:0;display:grid}.search-mode-help dl>div{gap:3px;display:grid}.search-mode-help dt{color:#d8e4ec;font-weight:800}.search-mode-help dd{color:#8fa3b2;margin:0;font-size:13px;line-height:1.48}.search-history .panel-head{margin-bottom:8px}.search-history-list{gap:5px}.search-history-item{background:0 0;border:0;border-radius:0;padding:12px 28px 12px 12px;position:relative}.search-history-item:after{color:#587186;content:"↗";position:absolute;top:15px;right:3px}.search-history-item:hover{background:#12283773;border-color:#0000;transform:none;box-shadow:inset 2px 0 #4e6f86}.search-example-row{gap:8px;margin-top:-6px}.search-example{color:#a9c2d3;background:#142633;border:0;padding:8px 11px}.search-example:hover{color:#f0d58f;background:#1a3142}.ajax-status{border:0;border-radius:8px}.ajax-status:not(:empty){border-width:0;min-height:0;padding:11px 13px;box-shadow:inset 3px 0 #4d718d}.ajax-status-success{box-shadow:inset 3px 0 #55a891}.ajax-status-error{box-shadow:inset 3px 0 #c95769}.ajax-page-progress{z-index:1000;pointer-events:none;opacity:0;transform-origin:0;background:linear-gradient(90deg,#f5c451,#6dd3b8);width:100%;height:3px;position:fixed;top:0;left:0;transform:scaleX(.05)}body.is-ajax-navigating .ajax-page-progress{opacity:1;animation:1.1s ease-in-out infinite alternate ajax-progress}body.is-ajax-navigating [data-app-root]{opacity:.86;transition:opacity .16s}.ajax-toast{z-index:1001;color:#dce8f0;opacity:0;pointer-events:none;background:#142535;border-radius:11px;max-width:min(420px,100vw - 32px);padding:13px 15px;transition:opacity .16s,transform .16s;position:fixed;bottom:20px;right:20px;transform:translateY(10px);box-shadow:0 18px 45px #00000057}.ajax-toast.is-visible{opacity:1;transform:translateY(0)}.ajax-toast-error{box-shadow:inset 3px 0 #c95769,0 18px 45px #00000057}.ajax-toast-success{box-shadow:inset 3px 0 #55a891,0 18px 45px #00000057}@keyframes ajax-progress{0%{transform:scaleX(.12)}to{transform:scaleX(.82)}}@media (max-width:980px){.landing-hero{gap:34px}.search-primer{grid-template-columns:1fr;gap:22px}.search-primer-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.search-side{grid-template-columns:repeat(2,minmax(0,1fr));position:static}}@media (max-width:760px){.search-primer-grid,.search-side{grid-template-columns:1fr}.feature-grid{gap:22px}}@media (max-width:620px){.field{padding:0}.field-guide-line{grid-template-columns:1fr;gap:1px}.hero-search-preview{padding:22px}.standalone-search-form{padding:20px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}body.is-ajax-navigating .ajax-page-progress{animation:none;transform:scaleX(1)}.ajax-toast,body.is-ajax-navigating [data-app-root]{transition:none}}@property --tw-leading{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}
/* v25: режимные поля патентного поиска и более спокойная визуальная иерархия */
.patent-mode-lead{max-width:760px;margin:0 0 9px;color:#95a8b7;font-size:13px;line-height:1.55}.patent-all-mode-note{margin:0;padding:13px 0 13px 17px;color:#b9c9d4;background:transparent;box-shadow:inset 3px 0 #c99e3f}.patent-all-mode-note b{color:#efd17e}.patent-query-fields{display:grid}.patent-query-section{padding:27px 0 30px;border-top:1px solid rgba(91,116,136,.2)}.patent-query-section[hidden],.patent-all-mode-note[hidden]{display:none!important}.patent-query-heading{display:grid;grid-template-columns:minmax(190px,.8fr) minmax(0,1.2fr);align-items:start;gap:24px;margin-bottom:15px}.patent-query-heading h3{margin:5px 0 0;color:#e1eaf0;font-size:21px;line-height:1.2}.patent-query-heading>p{margin:0;color:#a2b3c0;line-height:1.55}.patent-query-rules{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:0 0 17px;color:#8fa3b2;font-size:13px;line-height:1.5}.patent-query-rules p{margin:0}.patent-query-rules b{color:#c9d5dd}.patent-query-control{display:grid;gap:7px}.patent-query-control>span{color:#dce7ef;font-weight:800}.patent-query-control textarea,.patent-json-import textarea{width:100%;min-height:132px;resize:vertical;padding:13px;border:1px solid #2a4054;border-radius:13px;outline:none;background:#07131d;color:#e8f0f6;box-shadow:0 1px rgba(255,255,255,.025),inset 0 1px 2px rgba(0,0,0,.16)}.patent-query-control textarea:focus,.patent-json-import textarea:focus{border-color:#e7b949;box-shadow:0 0 0 3px rgba(245,196,81,.1)}.patent-query-control textarea::placeholder,.patent-json-import textarea::placeholder{color:#607487}.patent-query-example{display:flex;align-items:flex-start;justify-content:space-between;gap:22px;margin-top:13px;color:#9eafbb}.patent-query-example b{display:block;margin-bottom:3px;color:#d7e2e9;font-size:12px}.patent-query-example p{margin:0;line-height:1.5}.patent-query-example button{flex:0 0 auto;padding:2px 0;border:0;background:transparent;color:#8acbff;font-size:12px;font-weight:800;text-decoration:underline;text-decoration-color:transparent;text-underline-offset:3px}.patent-query-example button:hover{color:#f0d58f;text-decoration-color:currentColor}.patent-manual-intro{max-width:820px;margin:8px 0 2px}.patent-json-import{margin-top:4px;padding-top:17px;border-top:1px solid rgba(91,116,136,.18)}.patent-json-import p{margin:8px 0 12px}.patent-export-bar{display:flex;align-items:center;justify-content:space-between;gap:22px;margin:18px 0 4px;padding:15px 0 0;border-top:1px solid rgba(91,116,136,.2)}.patent-export-bar>div:first-child{display:grid;gap:2px}.patent-export-bar span{color:#8fa3b2;font-size:12px}.patent-export-bar .form-actions{margin:0;flex:0 0 auto}.search-history-item{text-decoration:none}.search-history-item.is-active{background:rgba(18,40,55,.58);box-shadow:inset 2px 0 #f5c451}.search-history-results{display:block;color:#7690a3!important;font-size:10px!important;font-style:normal}@media(max-width:760px){.patent-query-heading,.patent-query-rules{grid-template-columns:1fr;gap:8px}.patent-query-heading{margin-bottom:12px}.patent-query-example,.patent-export-bar{align-items:stretch;flex-direction:column}.patent-query-example button{align-self:flex-start}.patent-export-bar .form-actions{width:100%}}

/* v25: independent project panes and calmer content hierarchy. */
body.project-page { overflow: hidden; }
body.project-page .app-shell { height: 100vh; min-height: 0; }
body.project-page .sidebar {
  height: 100vh;
  overscroll-behavior: contain;
  overflow-anchor: none;
  scrollbar-gutter: stable;
}

/* v70: отдельный визуальный редактор веполя для шага 1.7. */
.vepol-editor { display: grid; gap: 15px; }
.vepol-editor-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; }
.vepol-editor-head p { max-width: 760px; margin: 5px 0 0; color: #9fb1bf; line-height: 1.55; }
.vepol-editor-head .btn { flex: 0 0 auto; }
.vepol-workbench { display: grid; grid-template-columns: minmax(340px, .92fr) minmax(390px, 1.08fr); gap: 22px; align-items: start; }
.vepol-diagram-shell { min-width: 0; padding: 12px; border: 1px solid #24394b; border-radius: 8px; background: #071520; }
.vepol-diagram { display: block; width: 100%; height: auto; aspect-ratio: 28 / 17; }
.vepol-node circle,
.vepol-node rect { fill: #0d2030; stroke: #49657a; stroke-width: 2; }
.vepol-node-field rect { fill: #11242a; stroke: #68cdb8; }
.vepol-node text { fill: #e8f0f6; text-anchor: middle; font-family: system-ui, -apple-system, sans-serif; pointer-events: none; }
.vepol-node-code { font-size: 19px; font-weight: 800; }
.vepol-node-name { font-size: 12px; fill: #a9bbc8 !important; }
.vepol-link { fill: none; stroke-width: 3; stroke-linecap: round; stroke-linejoin: round; }
.vepol-link.is-useful { stroke: #7ce3cb; }
.vepol-link.is-harmful { stroke: #ff8293; }
.vepol-link.is-insufficient { stroke: #f2c461; stroke-dasharray: 11 8; }
.vepol-link.is-uncontrolled { stroke: #6fb7ff; stroke-dasharray: 12 6 2 6; }
.vepol-link.is-excessive { stroke: #f09a61; }
.vepol-link.is-missing { stroke: #8197a8; stroke-dasharray: 3 9; }
.vepol-link.is-neutral { stroke: #d4dee6; }
#vepolArrowUseful path { fill: #7ce3cb; }
#vepolArrowHarmful path { fill: #ff8293; }
#vepolArrowInsufficient path { fill: #f2c461; }
#vepolArrowMissing path { fill: #8197a8; }
.vepol-link-label { text-anchor: middle; paint-order: stroke; stroke: #071520; stroke-width: 7px; stroke-linejoin: round; font-size: 11px; font-weight: 700; }
.vepol-link-label.is-useful { fill: #7ce3cb; }
.vepol-link-label.is-harmful { fill: #ff8293; }
.vepol-link-label.is-insufficient { fill: #f2c461; }
.vepol-link-label.is-uncontrolled { fill: #6fb7ff; }
.vepol-link-label.is-excessive { fill: #f09a61; }
.vepol-link-label.is-missing { fill: #8197a8; }
.vepol-link-label.is-neutral { fill: #d4dee6; }
.vepol-legend { display: flex; flex-wrap: wrap; gap: 8px 14px; padding: 0 4px 3px; color: #8fa3b2; font-size: 11px; }
.vepol-legend span { display: inline-flex; align-items: center; gap: 6px; }
.vepol-legend i { width: 23px; height: 0; border-top: 2px solid currentColor; }
.vepol-legend .is-useful { color: #7ce3cb; }
.vepol-legend .is-harmful { color: #ff8293; }
.vepol-legend .is-insufficient { color: #f2c461; border-top-style: dashed; }
.vepol-legend .is-uncontrolled {height:2px;border:0;background:repeating-linear-gradient(to right,#6fb7ff 0 9px,transparent 9px 13px,#6fb7ff 13px 15px,transparent 15px 20px)}
.vepol-legend .is-excessive{position:relative;color:#f09a61}.vepol-legend .is-excessive::after{position:absolute;top:3px;left:0;width:23px;border-top:2px solid currentColor;content:""}
.vepol-legend .is-missing { color: #8197a8; border-top-style: dotted; }
.vepol-controls { display: grid; gap: 13px; min-width: 0; }
.vepol-controls label { display: grid; gap: 5px; color: #bdcbd5; font-size: 12px; font-weight: 700; }
.vepol-controls input,
.vepol-controls select,
.vepol-controls textarea { width: 100%; border: 1px solid #2a4054; border-radius: 7px; background: #071520; color: #e8f0f6; outline: 0; }
.vepol-controls input,
.vepol-controls select { min-height: 40px; padding: 8px 10px; }
.vepol-controls textarea { min-height: 94px; padding: 10px 11px; resize: vertical; line-height: 1.5; }
.vepol-controls input:focus,
.vepol-controls select:focus,
.vepol-controls textarea:focus { border-color: #d9ae46; box-shadow: 0 0 0 3px rgba(245,196,81,.1); }
.vepol-control-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 11px; align-items: end; }
.vepol-control-grid-last { grid-template-columns: minmax(220px, 1fr) auto; }
.vepol-control-grid-last .btn { min-height: 40px; }
.vepol-source-choice { display: inline-flex; width: max-content; max-width: 100%; margin: 0; padding: 0; border: 0; }
.vepol-source-choice legend { margin-bottom: 6px; color: #bdcbd5; font-size: 12px; font-weight: 700; }
.vepol-source-choice label { display: block; }
.vepol-source-choice input { position: absolute; width: 1px; height: 1px; opacity: 0; pointer-events: none; }
.vepol-source-choice span { display: block; min-width: 74px; padding: 8px 15px; border: 1px solid #2a4054; background: #071520; color: #9fb1bf; text-align: center; cursor: pointer; }
.vepol-source-choice label:first-of-type span { border-radius: 7px 0 0 7px; }
.vepol-source-choice label:last-of-type span { margin-left: -1px; border-radius: 0 7px 7px 0; }
.vepol-source-choice input:checked + span { position: relative; border-color: #d9ae46; background: #2a2718; color: #f5d17e; }
.vepol-source-choice input:focus-visible + span { outline: 2px solid #d9ae46; outline-offset: 2px; }
.vepol-status { min-height: 20px; color: #8fa3b2; font-size: 12px; }
.vepol-status.is-success { color: #91d9c6; }
.vepol-status.is-warning { color: #e4bd70; }
.vepol-source-details textarea { min-height: 235px; }

@media (max-width: 1050px) {
  .vepol-workbench { grid-template-columns: 1fr; }
  .vepol-diagram-shell { max-width: 680px; }
}
@media (max-width: 620px) {
  .vepol-editor-head { flex-direction: column; }
  .vepol-editor-head .btn { width: 100%; }
  .vepol-control-grid,
  .vepol-control-grid-last { grid-template-columns: 1fr; }
  .vepol-diagram-shell { padding: 5px; }
  .vepol-legend { padding: 2px 7px 7px; }
}
body.project-page .workspace {
  height: 100vh;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
  scroll-padding-top: 18px;
}

/* Containers no longer imitate input fields. Full outlines remain on real controls. */
.panel {
  border-color: transparent;
  box-shadow: 0 18px 55px rgba(0,0,0,.22);
}
.step-guide,
.guide-card,
.notice,
.flash,
.issue,
.assessment,
.patent-plan-card,
.patent-result-card,
.quota-box,
.metric-grid > div,
.summary-grid > article,
.price-limit,
.project-item,
details {
  border-color: transparent;
}
.step-guide { background: linear-gradient(180deg, rgba(18,38,54,.7), rgba(8,20,30,.36)); }
.guide-card { background: rgba(7,19,29,.58); }
.notice,
.flash,
.issue { box-shadow: inset 3px 0 rgba(77,113,141,.72); }
.notice-ok,
.flash-success { box-shadow: inset 3px 0 #3d8b78; }
.notice-warning,
.flash-warning { box-shadow: inset 3px 0 #9a7337; }
.flash-error,
.issue-error { box-shadow: inset 3px 0 #a94e5f; }
.issue-warning { box-shadow: inset 3px 0 #a97837; }
.issue-info { box-shadow: inset 3px 0 #4d7fae; }
.field-guidance {
  border-left-width: 2px;
  background: rgba(11,26,38,.42);
}
.field-guide-example { border-top-color: rgba(89,116,137,.14); }
.patent-result-card {
  background: rgba(9,23,34,.72);
  box-shadow: inset 2px 0 rgba(77,113,141,.34);
}
.patent-match-details,
.patent-brief-details {
  background: rgba(7,19,29,.54);
  border-color: transparent;
}
.search-primer-grid article,
.search-mode-help dl > div { padding-right: 10px; }
.search-history-item.is-active { background: rgba(18,40,55,.58); }

@media (max-width: 900px) {
  body.project-page { overflow: auto; }
  body.project-page .app-shell { height: auto; min-height: 100vh; }
  body.project-page .workspace {
    height: auto;
    overflow: visible;
    scrollbar-gutter: auto;
  }
  body.project-page .sidebar { scrollbar-gutter: auto; }
}

/* v26: compact teaching assistant at the top of every ARIZ step. */
.ai-assistant {
  margin: 0 0 18px;
  padding: 0;
  overflow: clip;
  border: 0;
  background: linear-gradient(135deg, rgba(18,39,55,.88), rgba(10,22,32,.9));
  box-shadow: 0 14px 42px rgba(0,0,0,.2);
}
.ai-assistant + .panel { margin-top: 0; }
.ai-assistant-summary {
  display: grid;
  grid-template-columns: 34px minmax(0,1fr) auto auto;
  align-items: center;
  gap: 13px;
  min-height: 76px;
  padding: 14px 18px;
  list-style: none;
  cursor: pointer;
  user-select: none;
}
.ai-assistant-summary::-webkit-details-marker { display: none; }
.ai-assistant-summary::marker { content: ""; }
.ai-assistant-summary:hover { background: rgba(28,57,77,.32); }
.ai-assistant-mark {
  display: grid;
  width: 32px;
  height: 32px;
  place-items: center;
  border-radius: 50%;
  color: #f4cf74;
  background: rgba(245,196,81,.11);
  font-size: 17px;
}
.ai-assistant-title { display: grid; min-width: 0; gap: 1px; }
.ai-assistant-title .eyebrow { font-size: 9px; }
.ai-assistant-title > b { color: #edf4f8; font-size: 17px; line-height: 1.2; }
.ai-assistant-title > small {
  overflow: hidden;
  color: #8fa4b4;
  font-size: 12px;
  font-weight: 500;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.ai-assistant-provider { display: flex; align-items: center; }
.ai-assistant-toggle {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: #9fb2c0;
  font-size: 11px;
  font-weight: 800;
}
.ai-assistant-toggle::before { content: "Развернуть"; }
.ai-assistant-toggle::after {
  content: "⌄";
  color: #f4cf74;
  font-size: 18px;
  line-height: 1;
  transform: translateY(-1px);
}
.ai-assistant[open] .ai-assistant-toggle::before { content: "Свернуть"; }
.ai-assistant[open] .ai-assistant-toggle::after { content: "⌃"; transform: translateY(2px); }
.ai-assistant[open] .ai-assistant-summary { background: rgba(20,45,62,.32); }
.ai-assistant-body { padding: 4px 22px 22px; }
.ai-assistant-lead {
  max-width: 880px;
  margin: 4px 0 18px;
  color: #b8c8d3;
  font-size: 14px;
  line-height: 1.6;
}

.mentor-reference {
  margin: 0 0 19px;
  padding: 15px 16px 14px 18px;
  background: rgba(7,19,29,.42);
  box-shadow: inset 3px 0 rgba(245,196,81,.58);
}
.mentor-reference-head { display: grid; gap: 2px; margin-bottom: 10px; }
.mentor-reference-head > b { color: #dce7ee; }
.mentor-source-note { margin: 9px 0 0; }
.mentor-source-note p {
  margin: 0;
  color: #e7edf1;
  font-size: 14px;
  line-height: 1.55;
}
.mentor-source-note cite {
  display: block;
  margin-top: 3px;
  color: #7f95a6;
  font-size: 11px;
  font-style: normal;
}
.mentor-reference-meaning { margin: 12px 0 0; color: #adbeca; }

.ai-handoff {
  display: grid;
  grid-template-columns: minmax(220px,.8fr) minmax(300px,1.2fr) auto;
  align-items: start;
  gap: 22px;
  margin: 16px 0 19px;
  padding: 16px 17px;
  background: rgba(37,31,16,.45);
  box-shadow: inset 3px 0 rgba(245,196,81,.64);
}
.ai-handoff h3 { margin: 3px 0 0; color: #efd88e; font-size: 17px; line-height: 1.3; }
.ai-handoff ol { margin: 0; padding-left: 20px; color: #bdcbd5; }
.ai-handoff li { margin: 3px 0; padding-left: 3px; }
.ai-handoff .btn { align-self: center; }
.ai-response-form { max-width: 780px; }
.ai-response-field { padding: 0; background: transparent; }
.ai-response-field:focus-within { border-color: transparent; background: transparent; }
.ai-response-field > .muted { margin-top: -2px; font-size: 12px; }
.ai-response-input { min-height: 94px !important; max-height: 230px; }
.ai-secondary-actions { margin-top: 17px; padding-top: 4px; }
.ai-prompt-source { display: none !important; }
.ai-raw-response { margin-top: 13px; }

.mentor-lesson {
  margin-top: 20px;
  padding-top: 22px;
  border-top: 1px solid rgba(104,132,153,.2);
}
.mentor-lesson-head { display: grid; gap: 3px; margin-bottom: 12px; }
.mentor-lesson-head h3 { margin: 0; color: #eef4f7; font-size: 23px; line-height: 1.22; }
.mentor-lesson-intro { max-width: 900px; margin: 0 0 20px; color: #c6d4dd; font-size: 15px; line-height: 1.65; }
.mentor-lesson h4 { margin: 0 0 10px; color: #dbe7ee; font-size: 16px; }
.mentor-checked { margin: 0 0 23px; }
.mentor-checked ol,
.mentor-practice ol,
.mentor-method ol { margin: 0; padding-left: 21px; }
.mentor-checked li,
.mentor-practice li,
.mentor-method li { margin: 5px 0; padding-left: 3px; color: #b8c7d1; }

.mentor-walkthrough { margin: 0 0 24px; }
.mentor-walkthrough ol { margin: 0; padding-left: 23px; }
.mentor-walkthrough li { margin: 0 0 12px; padding-left: 5px; color: #c4d1da; }
.mentor-walkthrough li::marker { color: #f1c75d; font-weight: 800; }
.mentor-walkthrough li b { display: block; color: #e5edf2; line-height: 1.45; }
.mentor-walkthrough li span { display: block; margin-top: 3px; color: #9fb1be; line-height: 1.55; }

.mentor-commentary { margin: 0 0 24px; }
.mentor-commentary article {
  margin: 10px 0 0;
  padding: 12px 15px;
  background: rgba(7,19,29,.4);
  box-shadow: inset 2px 0 rgba(245,196,81,.46);
}
.mentor-source-thought { margin: 0; color: #ebeff2; font-size: 14px; line-height: 1.55; }
.mentor-commentary small { display: block; margin: 3px 0 8px; color: #7f95a5; }
.mentor-commentary p { margin: 7px 0 0; color: #b8c7d1; }

.mentor-example {
  margin: 0 0 24px;
  padding: 15px 17px;
  background: rgba(12,35,50,.42);
  box-shadow: inset 3px 0 rgba(109,211,184,.48);
}
.mentor-example p { margin: 7px 0; color: #b9c9d3; line-height: 1.58; }
.mentor-example p:last-child { margin-bottom: 0; }

.mentor-fields { margin-top: 4px; }
.mentor-field {
  padding: 19px 0 18px;
  border-top: 1px solid rgba(104,132,153,.18);
}
.mentor-field:first-of-type { border-top: 0; }
.mentor-field header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 10px;
}
.mentor-field header > div { display: grid; min-width: 0; gap: 2px; }
.mentor-field header b { color: #e6eef3; font-size: 16px; }
.mentor-field header code { color: #70899c; font-size: 11px; }
.mentor-field > p { max-width: 920px; margin: 8px 0; color: #b7c6d0; line-height: 1.58; }
.mentor-field-good { color: #b9d9d0 !important; }
.mentor-field-problem { color: #e0c3c7 !important; }
.mentor-method { margin: 13px 0 0; }
.mentor-method > b { color: #f0d27e; }
.mentor-worked-example {
  margin-top: 13px;
  padding: 12px 14px;
  background: rgba(12,35,50,.56);
  box-shadow: inset 2px 0 rgba(109,211,184,.45);
}
.mentor-worked-example > b { color: #9fddcd; }
.mentor-worked-example p { margin: 5px 0 0; color: #bfd0da; }
.mentor-self-check {
  margin-top: 13px !important;
  color: #d8e4eb !important;
  font-style: italic;
}
.mentor-practice {
  margin-top: 7px;
  padding: 16px 17px;
  background: rgba(15,48,41,.42);
  box-shadow: inset 3px 0 rgba(109,211,184,.58);
}
.mentor-practice h4 { color: #a9e3d4; }
.ai-proposals { margin-top: 23px; padding-top: 20px; border-top: 1px solid rgba(104,132,153,.18); }

@media (max-width: 820px) {
  .ai-assistant-summary { grid-template-columns: 32px minmax(0,1fr) auto; }
  .ai-assistant-provider { display: none; }
  .ai-handoff { grid-template-columns: 1fr; gap: 13px; }
  .ai-handoff .btn { justify-self: start; }
}
@media (max-width: 560px) {
  .ai-assistant-summary { grid-template-columns: 28px minmax(0,1fr); gap: 10px; padding: 13px 14px; }
  .ai-assistant-mark { width: 28px; height: 28px; }
  .ai-assistant-toggle { display: none; }
  .ai-assistant-title > small { white-space: normal; }
  .ai-assistant-body { padding: 3px 15px 17px; }
  .mentor-reference { padding: 13px 13px 12px 16px; }
  .mentor-field header { display: grid; gap: 8px; }
  .mentor-field header .badge { justify-self: start; }
}

/* v27: официальный формат «один шаг — одна рабочая запись». */
.official-step-guide {
  margin-bottom: 22px;
  padding: 13px 0 15px 17px;
  border: 0;
  border-left: 2px solid rgba(77,113,141,.9);
  border-radius: 0;
  background: linear-gradient(90deg, rgba(11,26,38,.66), rgba(11,26,38,0) 78%);
  box-shadow: none;
}
.official-step-guide .step-guide-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 16px;
  margin: 0 0 6px;
}
.official-step-guide .step-guide-head small {
  color: #718596;
  font-size: 11px;
  text-align: right;
}
.official-step-guide .guide-main {
  max-width: 900px;
  margin: 6px 0 11px;
  color: #d6e4ee;
}
.guide-check { max-width: 940px; color: #c6d4df; }
.guide-check > b,
.official-self-check > b { color: #f4cf74; }
.guide-check ol,
.official-self-check ul { margin: 7px 0 0; padding-left: 22px; }
.guide-check ol { list-style: decimal; }
.official-self-check ul { list-style: disc; }
.guide-check li,
.official-self-check li { margin: 4px 0; }
.official-self-check {
  max-width: 940px;
  margin-top: 12px;
  padding-top: 10px;
  border-top: 1px solid rgba(104,132,153,.16);
  color: #aebdca;
}

.official-guide-example {
  margin-top: 11px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}
.official-guide-example summary {
  width: max-content;
  max-width: 100%;
  color: #9fc4de;
  font-size: 13px;
  font-weight: 750;
}
.official-guide-example pre {
  max-width: 920px;
  margin: 9px 0 0;
  padding: 1px 0 1px 14px;
  border-left: 2px solid rgba(109,211,184,.42);
  color: #b9cbd7;
  background: transparent;
}
.step-panel .step-form > .field,
.official-answer-field {
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}
.step-panel .step-form > .field:focus-within,
.official-answer-field:focus-within {
  border-color: transparent;
  background: transparent;
}
.step-panel .step-form > .field + .field { margin-top: 5px; }
.step-panel .step-form .field-label { margin-bottom: 3px; }
.official-answer-field textarea {
  min-height: 230px;
  line-height: 1.62;
}
.official-answer-field[data-field-path="official_answers.situation"] textarea { min-height: 250px; }
.project-settings {
  margin: -2px 0 6px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}
.project-settings > summary {
  display: inline-flex;
  align-items: baseline;
  gap: 9px;
  color: #9fb1c0;
  font-size: 13px;
  font-weight: 750;
}
.project-settings > summary small { color: #66798b; font-size: 11px; font-weight: 600; }
.project-settings-grid {
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(190px, 1fr);
  gap: 12px;
  margin-top: 12px;
  padding: 13px 0 4px;
  border-top: 1px solid rgba(104,132,153,.16);
}
.project-settings-grid .field {
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}
.project-settings-grid .field:focus-within { border-color: transparent; background: transparent; }
@media (max-width: 620px) {
  .official-step-guide { padding: 11px 0 13px 13px; }
  .official-step-guide .step-guide-head { display: block; }
  .official-step-guide .step-guide-head small { display: block; margin-top: 4px; text-align: left; }
  .official-guide-example summary { width: auto; }
  .official-answer-field textarea { min-height: 210px; }
  .project-settings-grid { grid-template-columns: 1fr; }
  .project-settings > summary { display: flex; flex-wrap: wrap; }
}

/* Спокойная подсказка шага и естественный комментарий наставника. */
.ai-assistant-title > small {
  max-width: 760px;
  white-space: normal;
  line-height: 1.35;
}
.ai-assistant-body { padding-top: 9px; }
.mentor-reference { display: none !important; }

.ai-handoff {
  grid-template-columns: minmax(0,1fr) auto;
  gap: 18px;
  padding: 15px 17px;
}
.ai-handoff p {
  max-width: 760px;
  margin: 0;
  color: #bdcbd5;
  line-height: 1.58;
}

.ai-handoff p > b { color: #e5edf2; }
.mentor-response-status { margin: 18px 0 10px; }
.mentor-response {
  max-width: 930px;
  margin: 0;
  padding: 0;
}
.mentor-prose { display: flow-root; }
.mentor-prose p {
  margin: 0 0 15px;
  color: #c8d5de;
  font-size: 15px;
  line-height: 1.72;
}
.mentor-prose p:first-child { color: #e1e9ee; }
.mentor-prose p:last-child { margin-bottom: 0; }

.ai-proposals-simple {
  max-width: 930px;
  margin-top: 22px;
  padding-top: 18px;
  border-top: 1px solid rgba(104,132,153,.18);
}
.ai-proposal-intro {
  max-width: 820px;
  margin: 0;
  color: #aebfca;
}
.ai-proposal-intro b { color: #e5edf2; }
.ai-proposals-simple .proposal {
  grid-template-columns: 22px minmax(0,1fr);
  border: 0;
  border-left: 2px solid rgba(109,211,184,.45);
  border-radius: 0;
  background: rgba(7,19,29,.32);
  padding: 13px 15px;
}
.proposal-value {
  display: block;
  color: #dce7ed;
  line-height: 1.62;
}
.ai-proposals-simple .proposal small {
  margin-top: 8px;
  color: #879aa8;
  line-height: 1.5;
}

.official-step-guide .guide-main,
.guide-check,
.official-self-check { display: none !important; }
.official-guide-text {
  max-width: 940px;
  margin: 7px 0 0;
  color: #c7d5df;
  line-height: 1.68;
}
.official-guide-example {
  margin-top: 15px;
  padding: 0;
}
.official-guide-example-label {
  display: block;
  margin-bottom: 6px;
  color: #82a8c2;
  font-size: 12px;
  font-weight: 750;
}
.official-guide-example pre {
  margin-top: 0;
  padding-left: 13px;
  line-height: 1.58;
}
.official-answer-field textarea::placeholder {
  color: #536b7e;
  opacity: 1;
}

@media (max-width: 820px) {
  .ai-handoff { grid-template-columns: 1fr; }
  .ai-handoff .btn { justify-self: start; }
}

/* v29: два восстанавливаемых графических редактора для шага 1.3. */
.conflict-diagram-field { margin: 0; }
.conflict-modeler { display: grid; gap: 18px; }
.conflict-modeler-top {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 16px;
}
.conflict-axis-label,
.conflict-check-label,
.conflict-pane-head label,
.diagram-template-label,
.diagram-selection label {
  display: grid;
  gap: 6px;
  color: #d9e5ec;
  font-size: 13px;
  font-weight: 750;
}
.conflict-axis-label { flex: 1 1 620px; max-width: 760px; }
.conflict-axis-label > span,
.conflict-check-label > span { font-size: 14px; }
.conflict-modeler input,
.conflict-modeler textarea,
.conflict-modeler select {
  width: 100%;
  border: 1px solid #2a4054;
  border-radius: 11px;
  outline: 0;
  background: #07131d;
  color: #e8f0f6;
  padding: 10px 12px;
}
.conflict-modeler input:focus,
.conflict-modeler textarea:focus,
.conflict-modeler select:focus {
  border-color: #d9ae46;
  box-shadow: 0 0 0 3px rgba(245,196,81,.1);
}
.conflict-modeler-note {
  max-width: 970px;
  margin: -4px 0 0;
  color: #9fb1bf;
  line-height: 1.62;
}
.conflict-diagram-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 14px;
  align-items: start;
}
.conflict-diagram-pane {
  min-width: 0;
  padding: 16px;
  border-radius: 17px;
  background: rgba(7,19,29,.52);
  box-shadow: inset 0 0 0 1px rgba(72,99,120,.23);
}
.conflict-pane-head {
  display: grid;
  grid-template-columns: minmax(0,1.45fr) minmax(150px,.85fr);
  gap: 12px;
  align-items: end;
}
.conflict-pane-head > div { display: grid; gap: 7px; min-width: 0; }
.conflict-pane-head .eyebrow { margin-bottom: 1px; }
.diagram-template-description {
  min-height: 42px;
  margin: 10px 0 11px;
  color: #91a5b4;
  font-size: 12px;
  line-height: 1.45;
}
.diagram-toolbar {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  margin-bottom: 10px;
}
.diagram-tool {
  min-height: 30px;
  border: 0;
  border-radius: 8px;
  background: rgba(26,45,60,.72);
  color: #b9c9d4;
  padding: 6px 9px;
  font-size: 11px;
  font-weight: 750;
}
.diagram-tool:hover,
.diagram-tool.is-active { background: #203a4f; color: #f3f7f9; }
.diagram-tool.is-active { box-shadow: inset 0 0 0 1px rgba(245,196,81,.58); color: #f4cf74; }
.diagram-tool-danger { margin-left: auto; color: #dca3ac; background: rgba(73,31,42,.42); }
.diagram-canvas-shell {
  position: relative;
  width: 100%;
  height: 340px;
  overflow: hidden;
  border: 1px solid rgba(55,82,103,.78);
  border-radius: 14px;
  background-color: #06111a;
  background-image: radial-gradient(rgba(84,111,132,.24) .8px, transparent .8px);
  background-size: 22px 22px;
}
.diagram-canvas-shell canvas {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  touch-action: none;
  cursor: default;
}
.diagram-canvas-shell canvas:focus-visible { outline: 2px solid #e0b44d; outline-offset: -3px; }
.diagram-empty {
  position: absolute;
  inset: 0;
  display: grid;
  place-content: center;
  gap: 4px;
  padding: 28px;
  text-align: center;
  pointer-events: none;
  color: #60788b;
}
.diagram-empty b { color: #7f95a5; }
.diagram-empty span { max-width: 250px; font-size: 12px; }
.diagram-operation-hint,
.diagram-next-hint {
  margin: 9px 2px 0;
  color: #8095a5;
  font-size: 12px;
  line-height: 1.48;
}
.diagram-next-hint {
  padding-left: 10px;
  border-left: 2px solid rgba(109,211,184,.38);
  color: #9fb8b2;
}
.diagram-selection {
  margin-top: 10px;
  padding-top: 11px;
  border-top: 1px solid rgba(72,99,120,.26);
}
.diagram-selection-grid {
  display: grid;
  grid-template-columns: minmax(0,1.4fr) minmax(145px,.8fr);
  gap: 9px;
}
.diagram-selection input,
.diagram-selection select { padding: 8px 10px; font-size: 12px; }
.diagram-link-actions { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 9px; }
.diagram-delete {
  margin-top: 9px;
  border: 0;
  background: transparent;
  color: #d6949f;
  padding: 4px 0;
  font-size: 12px;
  font-weight: 750;
}
.diagram-delete:hover { color: #ffb0bb; text-decoration: underline; text-underline-offset: 3px; }
.conflict-check-label { max-width: 940px; }
.conflict-check-label textarea { min-height: 72px; resize: vertical; }
.conflict-modeler-status {
  min-height: 21px;
  margin-top: -8px;
  color: #8fa3b2;
  font-size: 13px;
}
.conflict-modeler-status.is-success { color: #91d9c6; }
.conflict-modeler-status.is-warning { color: #e4bd70; }
.conflict-modeler-status.is-error { color: #ff9eab; font-weight: 700; }
.diagram-source-details {
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}
.diagram-source-details > summary {
  display: inline-flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 8px;
  color: #a9bbc7;
  font-size: 13px;
  font-weight: 800;
}
.diagram-source-details > summary small { color: #667d8f; font-size: 11px; font-weight: 600; }
.diagram-source-details > p { max-width: 800px; margin: 10px 0; color: #8498a8; font-size: 12px; }
.diagram-source-actions { display: flex; flex-wrap: wrap; gap: 7px; margin-bottom: 9px; }
.diagram-source-details textarea {
  min-height: 290px;
  resize: vertical;
  font-family: var(--font-mono);
  font-size: 12px;
  line-height: 1.55;
  color: #b9cbd7;
}
.conflict-modeler.is-invalid { padding-left: 12px; box-shadow: inset 3px 0 rgba(255,122,138,.68); }
.is-diagram-invalid { border-color: #c95769 !important; box-shadow: 0 0 0 3px rgba(255,122,138,.08) !important; }

@media (max-width: 1100px) {
  .conflict-pane-head { grid-template-columns: 1fr; }
  .diagram-template-description { min-height: 0; }
}
@media (max-width: 820px) {
  .conflict-diagram-grid { grid-template-columns: 1fr; }
  .conflict-pane-head { grid-template-columns: minmax(0,1.4fr) minmax(150px,.8fr); }
  .diagram-canvas-shell { height: 330px; }
}
@media (max-width: 620px) {
  .conflict-modeler-top { align-items: stretch; flex-direction: column; }
  .conflict-axis-label { flex: 0 0 auto; max-width: none; }
  .conflict-modeler-top .btn { width: 100%; }
  .conflict-diagram-pane { padding: 12px; border-radius: 14px; }
  .conflict-pane-head,
  .diagram-selection-grid { grid-template-columns: 1fr; }
  .diagram-toolbar { gap: 4px; }
  .diagram-tool { flex: 1 1 auto; }
  .diagram-tool-danger { margin-left: 0; }
  .diagram-canvas-shell { height: 300px; }
  .diagram-source-actions .btn { flex: 1 1 150px; }
}

/* v29: вспомогательные действия и компактный просмотр схемы от ИИ. */
.conflict-modeler-top-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 7px;
}
.proposal-diagram { align-items: start; }
.proposal-diagram-title {
  color: #e4edf2;
  font-size: 13px;
}
.proposal-diagram .proposal-value {
  line-height: 1.58;
  color: #bfd0db;
}
.proposal-diagram-source {
  margin: 4px 0 0;
  padding: 0;
  border: 0;
  background: transparent;
}
.proposal-diagram-source > summary {
  color: #7893a6;
  font-size: 11px;
  font-weight: 700;
}
.proposal-diagram-source pre {
  max-height: 230px;
  margin: 8px 0 0;
  overflow: auto;
  border-radius: 10px;
  background: #06111a;
  padding: 10px;
  color: #9eb3c1;
  font-size: 11px;
  line-height: 1.5;
}
@media (max-width: 620px) {
  .conflict-modeler-top-actions { width: 100%; }
  .conflict-modeler-top-actions .btn { flex: 1 1 180px; }
}

/* v32: local ARIZ appendices, complete matrix picker and principle examples. */
.official-step-prose {
  padding: 15px 0 15px 17px;
  border-left: 2px solid rgba(77,113,141,.9);
  background: linear-gradient(90deg, rgba(11,26,38,.6), rgba(11,26,38,0) 82%);
  box-shadow: none;
}
.official-step-prose p {
  max-width: 980px;
  margin: 0;
  color: #c7d5df;
  font-size: 15px;
  line-height: 1.72;
}
.official-step-prose .official-step-extra {
  margin-top: 8px;
  color: #7f95a6;
  font-size: 12px;
}
.official-step-prose .official-step-extra a {
  color: #9fcdf0;
  text-decoration: underline;
  text-decoration-color: transparent;
  text-underline-offset: 3px;
}
.official-step-prose .official-step-extra a:hover { text-decoration-color: currentColor; }

.triz-tool-text {
  max-width: 1000px;
  margin: 0 0 18px;
  color: #b9c9d4;
  line-height: 1.68;
}
.triz-reference-hero p { max-width: 1000px; }
.triz-matrix-form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 15px;
}
.triz-parameter-hint {
  min-height: 38px;
  color: #7f95a6;
  font-size: 12px;
  line-height: 1.45;
}
.triz-matrix-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 11px;
}
.triz-matrix-result {
  margin-top: 18px;
  padding-top: 18px;
  border-top: 1px solid rgba(104,132,153,.18);
}
.triz-result-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 13px;
}
.triz-result-head > div { display: grid; gap: 3px; }
.triz-result-head b { color: #e6eef3; }
.triz-result-head small { color: #8095a5; }
.triz-result-principles {
  display: grid;
  grid-template-columns: minmax(0,1fr);
  gap: 12px;
}
.triz-result-principle {
  display: grid;
  grid-template-columns: 36px minmax(0,1fr);
  gap: 11px;
  padding: 14px;
  border-radius: 14px;
  background: rgba(7,19,29,.5);
  box-shadow: inset 2px 0 rgba(109,211,184,.42);
}
.triz-result-principle > span,
.triz-principle > span,
.triz-physical-row > span {
  display: grid;
  place-items: center;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  color: #19200f;
  background: #f5c451;
  font-weight: 900;
}
.triz-result-principle b { color: #e7eff4; }
.triz-result-principle p { margin: 7px 0 0; color: #b2c2cc; line-height: 1.55; }
.triz-result-example { color: #94aaa0 !important; }
.triz-result-examples {
  margin-top: 10px;
  color: #9fb8b1;
}
.triz-result-examples strong { color: #c8ded7; }
.triz-result-examples ul,
.triz-principle-examples ul {
  margin: 7px 0 0;
  padding-left: 19px;
}
.triz-result-examples li,
.triz-principle-examples li {
  margin: 6px 0;
  line-height: 1.55;
}
.triz-matrix-note { margin-top: 12px; }

.triz-appendix-list,
.triz-physical-list { display: grid; gap: 12px; }
.triz-appendix-row {
  display: grid;
  grid-template-columns: 34px minmax(230px,.7fr) minmax(0,1.3fr);
  align-items: center;
  gap: 16px;
  padding: 15px 0;
  border-top: 1px solid rgba(104,132,153,.17);
}
.triz-appendix-row:first-child { border-top: 0; }
.triz-appendix-index {
  align-self: start;
  color: #f4cf74;
  font-size: 19px;
  font-weight: 900;
}
.triz-appendix-diagram {
  min-width: 0;
  padding: 8px;
  border-radius: 14px;
  background: rgba(5,16,25,.62);
}
.triz-conflict-svg { display: block; width: 100%; height: auto; min-height: 0; }
.triz-conflict-svg .triz-diagram-node rect {
  fill: #102535;
  stroke: #4f6b80;
  stroke-width: 1.5;
}
.triz-conflict-svg .triz-diagram-node text {
  fill: #e7eef3;
  font-size: 14px;
  font-weight: 800;
  text-anchor: middle;
}
.triz-conflict-svg g > line,
.triz-conflict-svg g > path {
  fill: none;
  stroke-width: 2.5;
}
.triz-conflict-svg marker path { stroke: none; }
.triz-conflict-svg .triz-marker-useful { fill: #6dd3b8; }
.triz-conflict-svg .triz-marker-harmful { fill: #ff8b99; }
.triz-conflict-svg .triz-marker-missing { fill: #83bdf0; }
.triz-conflict-svg g > text {
  fill: #92a8b7;
  font-size: 10px;
  text-anchor: middle;
}
.triz-conflict-svg .triz-link-useful line,
.triz-conflict-svg .triz-link-useful path { stroke: #6dd3b8; }
.triz-conflict-svg .triz-link-harmful line,
.triz-conflict-svg .triz-link-harmful path { stroke: #ff8b99; }
.triz-conflict-svg .triz-link-missing line,
.triz-conflict-svg .triz-link-missing path { stroke: #83bdf0; stroke-dasharray: 8 5; }
.triz-conflict-svg .triz-link-silence line,
.triz-conflict-svg .triz-link-silence path { stroke: #7f94a5; stroke-dasharray: 2 7; }
.triz-appendix-copy h3,
.triz-physical-row h3,
.triz-principle h3 { margin: 0; color: #e4edf2; font-size: 17px; line-height: 1.35; }
.triz-appendix-copy p,
.triz-physical-row p,
.triz-principle p { margin: 7px 0 0; color: #afbfca; line-height: 1.6; }
.triz-example { color: #9fb8b1 !important; }
.triz-example b { color: #c8ded7; }

.triz-physical-row {
  display: grid;
  grid-template-columns: 38px minmax(0,1fr);
  gap: 13px;
  padding: 15px 16px;
  border-radius: 14px;
  background: rgba(7,19,29,.43);
  box-shadow: inset 2px 0 rgba(245,196,81,.38);
}
.triz-physical-row small {
  display: block;
  margin-top: 9px;
  color: #7f95a6;
}

.triz-principles-grid {
  display: grid;
  grid-template-columns: minmax(0,1fr);
  gap: 12px;
}
.triz-principle {
  display: grid;
  grid-template-columns: 42px minmax(0,1fr);
  align-items: start;
  gap: 14px;
  padding: 17px 18px;
  border-radius: 14px;
  background: rgba(7,19,29,.46);
  scroll-margin-top: 20px;
}
.triz-principle:target { box-shadow: inset 3px 0 #f5c451, 0 0 0 2px rgba(245,196,81,.12); }
.triz-principle-examples {
  margin-top: 12px;
  padding-top: 11px;
  border-top: 1px solid rgba(104,132,153,.16);
  color: #9fb8b1;
}
.triz-principle-examples b { color: #c8ded7; }

.triz-standards-section {
  scroll-margin-top: 18px;
}
.triz-standards-intro,
.triz-standards-source {
  max-width: 940px;
  margin: 0 0 12px;
  color: #afbfca;
  line-height: 1.65;
}
.triz-standards-source {
  margin-bottom: 20px;
  color: #8599aa;
  font-size: 13px;
}
.triz-standards-source a {
  color: #8acbff;
  text-underline-offset: 3px;
}
.triz-standard-classes,
.triz-standard-groups {
  display: grid;
  gap: 18px;
}
.triz-standard-class {
  padding: 18px 20px 20px;
  border-radius: 15px;
  background: rgba(7,19,29,.43);
  box-shadow: inset 3px 0 rgba(245,196,81,.42);
}
.triz-standard-class > header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 14px;
  margin-bottom: 10px;
}
.triz-standard-class > header span {
  display: block;
  color: #f1cf7c;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.triz-standard-class h3 {
  margin: 3px 0 0;
  color: #e4edf2;
  font-size: 20px;
  line-height: 1.25;
}
.triz-standard-class > header small {
  flex: 0 0 auto;
  color: #9fb2c0;
  font-size: 12px;
  font-weight: 800;
}
.triz-standard-class > p,
.triz-standard-group > p {
  margin: 0;
  color: #aabac6;
  line-height: 1.58;
}
.triz-standard-groups {
  margin-top: 15px;
  gap: 14px;
}
.triz-standard-group {
  padding-top: 14px;
  border-top: 1px solid rgba(104,132,153,.17);
}
.triz-standard-group h4 {
  margin: 0 0 7px;
  color: #dfe9ef;
  font-size: 16px;
  line-height: 1.35;
}
.triz-standard-group h4 code,
.triz-standard-list code {
  color: #f0d58f;
  font-family: var(--font-sans);
  font-weight: 900;
}
.triz-standard-list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 9px;
  margin: 12px 0 0;
  padding: 0;
}
.triz-standard-list li {
  display: grid;
  grid-template-columns: 58px minmax(0,1fr);
  gap: 9px;
  align-items: start;
  min-width: 0;
  color: #d6e1e8;
  line-height: 1.45;
}
.triz-standard-list b,
.triz-standard-list small {
  display: block;
}
.triz-standard-list b {
  color: #e2ebf1;
  font-size: 14px;
}
.triz-standard-list small {
  margin-top: 3px;
  color: #8fa3b2;
  font-size: 12px;
  line-height: 1.45;
}

.triz-parameters-details { scroll-margin-top: 18px; }
.triz-parameters-details > summary {
  color: #e2ebf1;
  font-size: 21px;
  font-weight: 800;
}
.triz-parameters-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 10px;
  margin-top: 15px;
}
.triz-parameters-grid article {
  padding: 13px 14px;
  border-radius: 13px;
  background: rgba(7,19,29,.46);
}
.triz-parameters-grid b { display: block; color: #e3edf2; }
.triz-parameters-grid small { display: block; margin-top: 3px; color: #718596; }
.triz-parameters-grid p { margin: 7px 0 0; color: #aabac6; line-height: 1.5; }

@media (max-width: 900px) {
  .triz-appendix-row { grid-template-columns: 30px minmax(190px,.8fr) minmax(0,1.2fr); gap: 11px; }
  .triz-parameters-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 720px) {
  .triz-matrix-form,
  .triz-result-principles,
  .triz-principles-grid { grid-template-columns: 1fr; }
  .triz-standard-list { grid-template-columns: 1fr; }
  .triz-appendix-row { grid-template-columns: 30px minmax(0,1fr); align-items: start; }
  .triz-appendix-diagram,
  .triz-appendix-copy { grid-column: 2; }
  .triz-parameters-grid { grid-template-columns: 1fr; }
  .triz-result-head { display: grid; }
}
@media (max-width: 520px) {
  .triz-matrix-actions .btn { flex: 1 1 150px; }
  .triz-standard-class { padding: 16px 15px 17px; }
  .triz-standard-class > header { display: block; }
  .triz-standard-class > header small { display: block; margin-top: 5px; }
  .triz-standard-list li { grid-template-columns: 54px minmax(0,1fr); }
  .triz-appendix-row { grid-template-columns: 1fr; }
  .triz-appendix-index,
  .triz-appendix-diagram,
  .triz-appendix-copy { grid-column: 1; }
  .triz-appendix-index { margin-bottom: -8px; }
}


/* v33: дословный официальный текст АРИЗ и условные обозначения схем. */
.official-step-verbatim {
  padding: 19px 21px 20px 24px;
  border-left: 2px solid rgba(77,113,141,.9);
  background: linear-gradient(90deg, rgba(11,26,38,.62), rgba(11,26,38,0) 86%);
}
.official-source-label {
  margin: 0 0 9px;
  color: #82a8c2;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .11em;
  text-transform: uppercase;
}
.official-source-text {
  max-width: 960px;
  white-space: pre-wrap;
  color: #d5e0e7;
  font-family: var(--font-sans);
  font-size: 14px;
  line-height: 1.68;
}
.official-source-text .official-inline-reference {
  color: #9fcbe7;
  text-decoration: underline;
  text-decoration-color: rgba(159,203,231,.42);
  text-underline-offset: 3px;
}
.official-source-text .official-inline-reference:hover {
  color: #f0d58f;
  text-decoration-color: currentColor;
}
.official-step-explanation {
  max-width: 940px;
  margin: 18px 0 0;
  padding: 13px 15px 13px 17px;
  color: #afc0cb;
  background: rgba(7,19,29,.42);
  box-shadow: inset 2px 0 rgba(109,211,184,.48);
  line-height: 1.62;
}
.diagram-notation-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 9px 18px;
  align-items: center;
  margin: -3px 0 2px;
  padding: 10px 0 4px;
  color: #aebfca;
  font-size: 12px;
}
.diagram-notation-legend > span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  white-space: nowrap;
}
.diagram-notation-legend svg {
  width: 76px;
  height: 18px;
  overflow: visible;
}
.diagram-notation-legend path {
  fill: none;
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.diagram-notation-legend .legend-useful { stroke: #5ecdb0; }
.diagram-notation-legend .legend-harmful { stroke: #ef7d8d; }
.diagram-notation-legend .legend-insufficient {
  stroke: #e7b95b;
  stroke-dasharray: 7 5;
}
.diagram-notation-legend .legend-arrow { stroke: none; }
.diagram-notation-legend .legend-useful-fill { fill: #5ecdb0; }
.diagram-notation-legend .legend-harmful-fill { fill: #ef7d8d; }
.diagram-notation-legend .legend-insufficient-fill { fill: #e7b95b; }
.diagram-notation-note {
  max-width: 970px;
  margin: 0 0 5px;
  color: #879cac;
  font-size: 12px;
  line-height: 1.58;
}
@media (max-width: 620px) {
  .official-step-verbatim { padding: 15px 13px 16px 16px; }
  .official-source-text { font-size: 13px; line-height: 1.62; }
  .diagram-notation-legend { align-items: flex-start; flex-direction: column; gap: 7px; }
}

/* v33: пояснение условных линий и сведения многозвенной схемы в таблице 1. */
.triz-notation-help {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
  margin: 19px 0 24px;
}
.triz-notation-help article {
  min-width: 0;
  padding: 15px 16px;
  border-radius: 14px;
  background: rgba(7,19,29,.5);
  box-shadow: inset 2px 0 rgba(77,113,141,.42);
}
.triz-notation-help article > b { color: #e0e9ef; }
.triz-notation-help article > p {
  margin: 7px 0 12px;
  color: #9eb0bd;
  font-size: 13px;
  line-height: 1.55;
}
.triz-notation-svg,
.triz-reduction-svg {
  display: block;
  width: 100%;
  height: auto;
  color: #aebfca;
}
.triz-notation-svg text,
.triz-reduction-svg text {
  fill: #aebfca;
  font: 12px system-ui, sans-serif;
}
.triz-notation-svg path,
.triz-reduction-svg path {
  fill: none;
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.triz-notation-svg marker path,
.triz-reduction-svg marker path { fill: currentColor; stroke: none; }
.triz-notation-svg .notation-useful,
.triz-reduction-svg .reduction-useful { stroke: #6dd3b8; color: #6dd3b8; }
.triz-notation-svg .notation-harmful,
.triz-reduction-svg .reduction-harmful { stroke: #ff8b99; color: #ff8b99; }
.triz-notation-svg .notation-insufficient,
.triz-reduction-svg .reduction-insufficient {
  stroke: #83bdf0;
  color: #83bdf0;
  stroke-dasharray: 8 5;
}
.triz-reduction-svg .reduction-node circle { fill: #5a78d5; }
@media (max-width: 820px) {
  .triz-notation-help { grid-template-columns: 1fr; }
}

/* v34: примеры вынесены из полей, уточнены схемы и упрощён проектный патентный поиск. */
.official-working-example {
  max-width: 940px;
  margin: 18px 0 0;
  padding: 14px 16px 15px 18px;
  background: rgba(7,19,29,.5);
  box-shadow: inset 3px 0 rgba(245,196,81,.55);
}
.official-working-example > span {
  display: block;
  margin-bottom: 7px;
  color: #e9cd80;
  font-size: 12px;
  font-weight: 800;
}
.official-working-example pre {
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  color: #c7d4dd;
  font-family: var(--font-sans);
  font-size: 13px;
  line-height: 1.62;
  white-space: pre-wrap;
}
.diagram-notation-legend .legend-unregulated {
  stroke: #76ace8;
  stroke-dasharray: 12 5 2 5;
}
.diagram-notation-legend .legend-unknown {
  stroke: #a9bdca;
  stroke-dasharray: 5 5;
}
.diagram-notation-legend .legend-unregulated-fill { fill: #76ace8; }
.diagram-notation-legend .legend-unknown-fill { fill: #a9bdca; }

.patent-tool-intro {
  max-width: 900px;
  margin: -5px 0 18px;
  color: #aebfca;
  line-height: 1.62;
}
.patent-project-form { gap: 18px; }
.patent-mode-tabs {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 6px;
  max-width: 600px;
  padding: 5px;
  border-radius: 14px;
  background: rgba(6,17,26,.7);
}
.patent-mode-tab {
  min-height: 42px;
  padding: 9px 14px;
  border: 0;
  border-radius: 10px;
  background: transparent;
  color: #91a6b5;
  font-weight: 800;
}
.patent-mode-tab:hover { color: #e8f0f6; background: rgba(24,48,65,.45); }
.patent-mode-tab.is-active {
  background: #193247;
  color: #f0f5f8;
  box-shadow: inset 0 0 0 1px rgba(245,196,81,.24);
}
.patent-shared-mode { max-width: 780px; }
.patent-tab-panel {
  display: grid;
  gap: 17px;
  padding-top: 3px;
}
.patent-tab-panel[hidden] { display: none !important; }
.patent-tab-panel .patent-plan-card { margin: 0; }
.patent-query-fields-compact { gap: 0; }
.patent-query-section-compact {
  padding: 18px 0 21px;
  border-top: 1px solid rgba(91,116,136,.18);
}
.patent-query-section-compact:first-child { border-top: 0; padding-top: 4px; }
.patent-query-section-compact .patent-query-heading {
  grid-template-columns: minmax(190px,.8fr) minmax(0,1.2fr);
  gap: 18px;
  margin-bottom: 10px;
}
.patent-query-section-compact .patent-query-heading h3 { font-size: 18px; }
.patent-query-brief {
  margin: 0 0 12px;
  color: #9eb0bd;
  font-size: 12px;
  line-height: 1.55;
}
.patent-query-brief b { color: #cdd9e1; }
.patent-query-brief span { display: block; margin-top: 3px; color: #8297a7; }
.patent-query-section-compact .patent-query-example {
  margin-top: 10px;
  padding-top: 0;
  font-size: 12px;
}
.patent-ai-compact {
  display: grid;
  gap: 14px;
  margin-top: 3px;
  padding: 16px 17px;
  background: rgba(37,31,16,.42);
  box-shadow: inset 3px 0 rgba(245,196,81,.58);
}
.patent-ai-compact-head {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  align-items: center;
  gap: 18px;
}
.patent-ai-compact-head b { color: #e9edf0; }
.patent-ai-compact-head p {
  margin: 4px 0 0;
  color: #96a9b7;
  font-size: 12px;
}
.patent-ai-hidden-source {
  position: fixed !important;
  left: -10000px !important;
  width: 1px !important;
  height: 1px !important;
  opacity: 0 !important;
  pointer-events: none !important;
}
.patent-ai-response {
  display: grid;
  gap: 7px;
  color: #d8e4eb;
  font-size: 13px;
  font-weight: 800;
}
.patent-ai-response small { color: #74899a; font-weight: 600; }
.patent-ai-response textarea {
  width: 100%;
  min-height: 112px;
  resize: vertical;
  padding: 12px 13px;
  border: 1px solid #2a4054;
  border-radius: 12px;
  outline: none;
  background: #07131d;
  color: #e8f0f6;
}
.patent-ai-response textarea:focus {
  border-color: #e7b949;
  box-shadow: 0 0 0 3px rgba(245,196,81,.1);
}
@media (max-width: 760px) {
  .patent-mode-tabs { max-width: none; }
  .patent-query-section-compact .patent-query-heading { grid-template-columns: 1fr; gap: 5px; }
  .patent-ai-compact-head { grid-template-columns: 1fr; }
  .patent-ai-compact-head .btn { justify-self: start; }
}
@media (max-width: 520px) {
  .patent-mode-tabs { grid-template-columns: 1fr; }
  .official-working-example { padding: 12px 13px 13px 15px; }
}

/* v34: отдельное обозначение «безмолвия» и управляемого действия в таблице 1. */
.triz-conflict-svg .triz-marker-unknown { fill: #a9bdca; }
.triz-conflict-svg .triz-link-unknown path {
  stroke: #a9bdca;
  stroke-dasharray: 5 5;
}
.triz-conflict-svg .triz-link-unregulated line,
.triz-conflict-svg .triz-link-unregulated path {
  stroke: #76ace8;
  stroke-dasharray: 13 5 2 5;
}
.triz-notation-svg .notation-unknown {
  stroke: #a9bdca;
  color: #a9bdca;
  stroke-dasharray: 5 5;
}
.triz-notation-svg .notation-unregulated {
  stroke: #76ace8;
  color: #76ace8;
  stroke-dasharray: 13 5 2 5;
}


/* v34.1: согласованный двухрежимный патентный поиск и более читаемые схемы. */
.patent-project-tabs {
  display: grid;
  gap: 18px;
}
.patent-project-tabs .patent-shared-mode {
  max-width: 780px;
  margin: 0;
}
.patent-project-tabs .patent-tab-panel {
  display: grid;
  gap: 17px;
  padding-top: 1px;
}
.patent-project-tabs .patent-tab-panel[hidden] { display: none !important; }
.patent-project-tabs .patent-search-action { margin-top: 0; padding-top: 2px; }
.patent-project-tabs .patent-ai-compact { margin-top: 2px; }
.patent-project-tabs .patent-ai-response textarea { min-height: 96px; }
.patent-query-control-compact > span {
  display: grid;
  gap: 3px;
  margin-bottom: 7px;
  color: #dce7ef;
}
.patent-query-control-compact > span small {
  color: #8398a8;
  font-weight: 500;
  line-height: 1.45;
}
.patent-query-example-compact {
  align-items: flex-start;
  padding-left: 12px;
  border-left: 2px solid rgba(109,211,184,.32);
}
.patent-query-example-compact p { margin: 0; }
.patent-query-example-compact button { white-space: nowrap; }
.diagram-tool[data-add-unknown-node] {
  color: #c2d0d9;
  background: rgba(33,48,59,.72);
}
@media (max-width: 620px) {
  .patent-project-tabs .patent-mode-tabs { grid-template-columns: 1fr 1fr; }
  .patent-query-example-compact { flex-direction: column; }
}
.official-step-explanation b { color: #dce7ee; }


/* v36: official ARIZ text is shown verbatim, not summarized. */
.official-step-verbatim-guide {
  padding: 17px 0 18px 18px;
  border-left-color: rgba(245,196,81,.68);
}
.official-step-verbatim {
  max-width: 980px;
  margin: 0;
  white-space: pre-wrap;
  color: #d6e4ee;
  font-family: var(--font-sans);
  font-size: 14px;
  line-height: 1.68;
}
.official-step-comment {
  max-width: 940px;
  margin-top: 15px;
  padding: 12px 14px;
  background: rgba(7,19,29,.36);
  box-shadow: inset 3px 0 rgba(109,211,184,.45);
}
.official-step-comment b {
  color: #aee2d5;
}
.official-step-comment p {
  margin: 6px 0 0;
  color: #b9c9d4;
  line-height: 1.62;
}

.official-step-verbatim .official-inline-reference {
  color: #9fcbe7;
  text-decoration: underline;
  text-decoration-color: rgba(159,203,231,.42);
  text-underline-offset: 3px;
}
.official-step-verbatim .official-inline-reference:hover {
  color: #f0d58f;
  text-decoration-color: currentColor;
}

.official-step-verbatim-guide .official-step-extra {
  margin-top: 14px;
}
.official-step-verbatim-guide .official-step-extra a {
  display: inline-flex;
  margin-right: 10px;
  color: #9ccfff;
  text-decoration: none;
  border-bottom: 1px solid rgba(156,207,255,.32);
}
.official-step-verbatim-guide .official-step-extra a:hover { color: #f4d58a; border-bottom-color: currentColor; }


/* v36 override: the <pre> itself is plain; the surrounding aside carries the visual accent. */
.official-step-verbatim-guide .official-step-verbatim {
  padding: 0;
  border-left: 0;
  background: transparent;
}


/* v37: calmer official ARIZ guidance formatting. */
.official-step-verbatim-guide {
  padding: 0 0 18px 0;
  border-left: 0 !important;
  background: transparent !important;
}
.official-step-verbatim {
  max-width: 980px;
  white-space: pre-wrap;
  color: #d6e4ee;
  font-family: var(--font-sans);
  font-size: 14px;
  line-height: 1.64;
}
.official-step-verbatim .official-example-line,
.official-step-verbatim .official-example-text {
  color: #f0d58f;
}
.official-step-verbatim .official-example-line,
.official-step-verbatim .official-important-line,
.official-step-verbatim .official-key-line {
  font-weight: 800;
}
.official-step-verbatim .official-important-line {
  color: #e6edf2;
}
.official-step-verbatim .official-key-line {
  color: #e2edf3;
}
.official-step-verbatim .official-inline-reference {
  color: #9fd4ff;
  font-weight: 800;
  text-decoration: underline;
  text-decoration-color: rgba(159,212,255,.42);
  text-underline-offset: 3px;
}
.official-step-verbatim .official-inline-reference:hover {
  color: #f0d58f;
  text-decoration-color: currentColor;
}
.official-step-verbatim-guide .official-step-extra a {
  display: inline-flex;
  margin-right: 10px;
  color: #9ccfff;
  text-decoration: none;
  border-bottom: 1px solid rgba(156,207,255,.32);
}


/* v37: official ARIZ guidance cleanup. */
.official-step-verbatim-guide {
  padding: 0 0 18px 0 !important;
  border-left: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
.official-step-verbatim-guide .official-step-verbatim {
  padding: 0 !important;
  border-left: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
.official-step-verbatim {
  max-width: 980px;
  white-space: pre-wrap;
  color: #d6e4ee;
  font-family: var(--font-sans);
  font-size: 14px;
  line-height: 1.64;
}
.official-step-verbatim .official-example-line,
.official-step-verbatim .official-example-text { color: #f0d58f; }
.official-step-verbatim .official-example-line,
.official-step-verbatim .official-important-line,
.official-step-verbatim .official-key-line { font-weight: 800; }
.official-step-verbatim .official-important-line { color: #e6edf2; }
.official-step-verbatim .official-key-line { color: #e2edf3; }
.official-step-verbatim .official-inline-reference {
  color: #9fd4ff;
  font-weight: 800;
  text-decoration: underline;
  text-decoration-color: rgba(159,212,255,.42);
  text-underline-offset: 3px;
}
.official-step-verbatim .official-inline-reference:hover {
  color: #f0d58f;
  text-decoration-color: currentColor;
}

/* v38: cleaner official text, step 1.3 figures, full-width project scroll, and calmer diagrams. */
body.project-page .workspace {
  max-width: none;
  margin-inline: 0;
  width: 100%;
}
body.project-page .workspace > .topbar,
body.project-page .workspace > .flash,
body.project-page .workspace > .panel,
body.project-page .workspace > .ai-assistant,
body.project-page .workspace > footer {
  max-width: 1140px;
  margin-left: auto;
  margin-right: auto;
}
body.project-page .workspace > .ai-assistant { margin-top: 18px; }

.official-step-verbatim { color: #d5e2ea; line-height: 1.67; }
.official-step-verbatim .official-example-line,
.official-step-verbatim .official-example-text {
  color: #f2d37a;
  font-weight: 800;
  background: rgba(245,196,81,.075);
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
  border-radius: 5px;
  padding: 0 3px;
}
.official-step-verbatim .official-important-line,
.official-step-verbatim .official-key-line {
  color: inherit;
  font-weight: 800;
}
.official-step-verbatim .official-note-text { color: #c2d0da; }
.official-step-verbatim .official-inline-reference {
  color: #9fd4ff;
  font-weight: 800;
  text-decoration: underline;
  text-decoration-color: rgba(159,212,255,.42);
  text-underline-offset: 3px;
}

.official-step-figures {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 12px;
  max-width: 980px;
  margin: 15px 0 4px;
}
.official-step-figures > div {
  min-width: 0;
  border-radius: 14px;
  background: rgba(6,17,26,.54);
  box-shadow: inset 0 0 0 1px rgba(72,99,120,.24);
  padding: 10px 12px;
}
.official-step-figures > .wide { grid-column: 1 / -1; }
.step13-example-svg { width: 100%; height: auto; overflow: visible; }
.step13-example-svg text { fill: #cbd9e3; font: 700 13px system-ui, sans-serif; }
.step13-example-svg path { fill: none; stroke-linecap: round; stroke-linejoin: round; stroke-width: 3; }
.step13-example-svg marker path { fill: currentColor; stroke: none; }
.step13-example-svg .u { stroke: #6dd3b8; color: #6dd3b8; }
.step13-example-svg .h { stroke: #ff8795; color: #ff8795; }
.step13-example-svg .i { stroke: #83bdf0; color: #83bdf0; stroke-dasharray: 10 7; }
.step13-example-svg .none { stroke: #8da5b5; color: #8da5b5; stroke-dasharray: 4 8; }
.step13-example-svg .spark { stroke: #ff8795; stroke-width: 2.3; }
@media (max-width: 720px) { .official-step-figures { grid-template-columns: 1fr; } }

/* v38: точечная полировка официального текста, схем и рабочей области. */
body.project-page .workspace {
  max-width: none;
  margin: 0;
}
body.project-page .step-panel,
body.project-page .ai-assistant,
body.project-page footer {
  max-width: 1180px;
}
body.project-page .step-panel,
body.project-page .ai-assistant {
  margin-left: 0;
  margin-right: auto;
}
.official-step-verbatim-guide {
  padding-bottom: 16px !important;
}
.official-step-verbatim {
  line-height: 1.58 !important;
}
.official-step-verbatim .official-example-line,
.official-step-verbatim .official-example-text {
  display: block;
  color: #f0d58f !important;
  font-weight: 800 !important;
}
.official-step-verbatim .official-example-line {
  margin-top: 10px;
  padding-top: 8px;
  border-top: 1px solid rgba(245,196,81,.18);
}
.official-step-verbatim .official-example-text {
  padding-left: 12px;
  background: linear-gradient(90deg, rgba(245,196,81,.08), rgba(245,196,81,0) 72%);
}
.official-step-verbatim .official-important-line,
.official-step-verbatim .official-note-text,
.official-step-verbatim .official-key-line {
  color: inherit !important;
}
.official-step-verbatim .official-important-line,
.official-step-verbatim .official-key-line {
  font-weight: 800 !important;
}
.official-step-figures {
  max-width: 980px;
  margin: 13px 0 17px;
  padding: 14px 15px 16px;
  border-radius: 16px;
  background: rgba(6,17,26,.46);
  box-shadow: inset 3px 0 rgba(245,196,81,.44);
}
.official-figure-pair {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 12px;
}
.official-step-figures b {
  display: block;
  margin: 0 0 7px;
  color: #f0d58f;
  font-size: 13px;
}
.official-ariz-diagram {
  width: 100%;
  min-height: 130px;
  border-radius: 13px;
  background: rgba(7,19,29,.62);
}
.official-ariz-diagram text {
  fill: #dce8ef;
  font: 700 15px var(--font-sans);
}
.official-ariz-diagram .v38-small,
.official-ariz-diagram .line-small,
.official-ariz-diagram text.v38-small {
  fill: #8398a8;
  font-size: 10px;
}
.official-ariz-diagram path,
.official-ariz-diagram circle {
  vector-effect: non-scaling-stroke;
}
.official-ariz-diagram circle { fill: #7694ee; }
.official-ariz-diagram marker path,
.official-ariz-diagram defs path { fill: currentColor; }
.official-ariz-diagram .line-useful,
.official-ariz-diagram .v38-useful {
  fill: none;
  stroke: #5ecdb0;
  stroke-width: 3;
  stroke-linecap: round;
  color: #5ecdb0;
}
.official-ariz-diagram .line-harmful,
.official-ariz-diagram .v38-harm {
  fill: none;
  stroke: #ff8393;
  stroke-width: 3;
  stroke-linecap: round;
  color: #ff8393;
}
.official-ariz-diagram .line-insufficient,
.official-ariz-diagram .v38-insufficient {
  fill: none;
  stroke: #76ace8;
  stroke-width: 3;
  stroke-dasharray: 10 7;
  stroke-linecap: round;
  color: #76ace8;
}
.official-ariz-diagram .line-unknown {
  fill: none;
  stroke: #a9bdca;
  stroke-width: 3;
  stroke-dasharray: 5 6;
  stroke-linecap: round;
  color: #a9bdca;
}
.official-figure-reduction {
  margin-top: 12px;
}
.conflict-modeler-top-simple {
  align-items: flex-start;
}
.conflict-modeler-top-simple .conflict-modeler-note {
  flex: 1 1 620px;
  margin: 0;
}
.conflict-modeler-note-secondary {
  margin-top: -7px;
}
.diagram-canvas-shell {
  height: 330px;
}
@media (max-width: 820px) {
  .official-figure-pair { grid-template-columns: 1fr; }
  body.project-page .step-panel,
  body.project-page .ai-assistant,
  body.project-page footer { max-width: none; }
}

/* v38: final polish for ARIZ hints, diagrams and project scroll. */
body.project-page .workspace {
  max-width: none;
  margin-inline: 0;
}

.official-step-verbatim {
  line-height: 1.62;
}
.official-step-verbatim .official-example-line,
.official-step-verbatim .official-example-text {
  color: #f4cf74 !important;
  font-weight: 800 !important;
}
.official-step-verbatim .official-important-line,
.official-step-verbatim .official-key-line {
  color: inherit !important;
  font-weight: 800 !important;
}
.official-step-verbatim .official-example-line {
  text-shadow: 0 0 18px rgba(245,196,81,.12);
}

.official-step-figures {
  max-width: 980px;
  margin: 14px 0 4px;
  display: grid;
  gap: 14px;
}
.official-step-figure-pair {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 12px;
}
.official-step-figures figure {
  margin: 0;
  padding: 12px 13px 10px;
  border-radius: 13px;
  background: rgba(7,19,29,.42);
  box-shadow: inset 0 0 0 1px rgba(72,99,120,.22);
}
.official-step-figures figcaption {
  margin: 0 0 6px;
  color: #f4cf74;
  font-size: 13px;
  font-weight: 800;
}
.official-step-figures svg {
  width: 100%;
  height: auto;
  min-height: 112px;
  color: #cfe0ea;
}
.official-step-figure-reduction {
  padding: 12px 13px 10px;
  border-radius: 13px;
  background: rgba(7,19,29,.34);
  box-shadow: inset 0 0 0 1px rgba(72,99,120,.18);
}
.official-step-figure-reduction > span {
  display: block;
  margin-bottom: 6px;
  color: #aebfca;
  font-size: 13px;
  line-height: 1.55;
}
.fig-lines text {
  fill: #dfeaf0;
  font: 800 17px var(--font-sans);
}
.fig-useful,
.fig-harm,
.fig-insufficient,
.fig-spark {
  fill: none;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 4.2;
}
.fig-useful { stroke: #6dd3b8; }
.fig-harm { stroke: #ff8393; }
.fig-insufficient { stroke: #7cb7ee; stroke-dasharray: 12 8; }
.fig-spark { stroke: #ff8393; stroke-width: 3; }

.conflict-modeler-top-simple {
  align-items: start;
}
.conflict-modeler-note-secondary {
  margin-top: -10px;
}
.diagram-canvas-shell {
  height: 325px;
}
@media (max-width: 760px) {
  .official-step-figure-pair { grid-template-columns: 1fr; }
  .official-step-figures svg { min-height: 96px; }
}

/* v38: правки официального текста, схем 1.3 и рабочего скролла. */
body.project-page .workspace {
  width: 100%;
  max-width: none;
  margin-inline: 0;
}
body.project-page .workspace > .topbar,
body.project-page .workspace > .flash,
body.project-page .workspace > .panel,
body.project-page .workspace > .ai-assistant,
body.project-page .workspace > footer {
  max-width: 1140px;
  margin-left: auto;
  margin-right: auto;
}
.official-step-verbatim-guide {
  padding-left: 0;
  border-left: 0;
  box-shadow: none;
}
.official-step-verbatim-guide .official-step-verbatim {
  padding: 0;
  border-left: 0;
  background: transparent;
  color: #d5e0e7;
  white-space: pre-wrap;
  line-height: 1.7;
}
.official-step-verbatim .official-example-line,
.official-step-verbatim .official-example-text {
  color: #f0d58f;
  font-weight: 800;
}
.official-step-verbatim .official-key-line {
  color: inherit;
  font-weight: 800;
}
.official-step-verbatim .official-important-line {
  color: inherit;
  font-weight: 800;
}
.official-step-verbatim .official-note-text {
  color: #c7d4dd;
}
.official-step-figures {
  margin: 16px 0 4px;
  padding: 14px 16px;
  border-radius: 16px;
  background: rgba(7,19,29,.52);
  box-shadow: inset 2px 0 rgba(245,196,81,.42);
}
.official-figure-pair {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 14px;
}
.official-step-figures b {
  display: block;
  margin-bottom: 6px;
  color: #f0d58f;
  font-size: 13px;
}
.official-ariz-diagram {
  width: 100%;
  height: auto;
  min-height: 110px;
  color: #b7c6d1;
}
.official-ariz-diagram text {
  fill: #dbe7ee;
  font: 700 15px system-ui, sans-serif;
}
.official-ariz-diagram marker path { fill: currentColor; stroke: none; }
.official-ariz-diagram path {
  fill: none;
  stroke-width: 3;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.official-ariz-diagram .line-useful { stroke: #6dd3b8; color: #6dd3b8; }
.official-ariz-diagram .line-harmful { stroke: #ff8b99; color: #ff8b99; }
.official-ariz-diagram .line-insufficient { stroke: #8fc5f1; color: #8fc5f1; stroke-dasharray: 12 8; }
.official-ariz-diagram .line-unknown { stroke: #a9bdca; color: #a9bdca; stroke-dasharray: 5 7; }
.official-figure-reduction {
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid rgba(104,132,153,.18);
}
.conflict-modeler-top {
  justify-content: flex-start;
}
.conflict-modeler-top-actions {
  justify-content: flex-start;
}
.diagram-canvas-shell {
  height: 320px;
}
@media (max-width: 820px) {
  .official-figure-pair { grid-template-columns: 1fr; }
  body.project-page .workspace > .topbar,
  body.project-page .workspace > .flash,
  body.project-page .workspace > .panel,
  body.project-page .workspace > .ai-assistant,
  body.project-page .workspace > footer { max-width: none; }
}

/* v38: final cleanup for official guidance, diagram editor, quota and scroll. */
body.project-page .workspace {
  max-width: none;
  margin-inline: 0;
  width: 100%;
}
body.project-page .workspace > .topbar,
body.project-page .workspace > .flash,
body.project-page .workspace > .panel,
body.project-page .workspace > .ai-assistant,
body.project-page .workspace > footer {
  max-width: 1140px;
  margin-left: auto;
  margin-right: auto;
}
body.project-page .workspace > .ai-assistant { margin-top: 18px; }

.official-step-verbatim { color: #d5e2ea; line-height: 1.67; }
.official-step-verbatim .official-example-line,
.official-step-verbatim .official-example-text {
  color: #f2d37a;
  font-weight: 800;
  background: rgba(245,196,81,.075);
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
  border-radius: 5px;
  padding: 0 3px;
}
.official-step-verbatim .official-important-line,
.official-step-verbatim .official-key-line {
  color: inherit;
  font-weight: 800;
}
.official-step-verbatim .official-note-text { color: #c2d0da; }
.official-step-verbatim .official-inline-reference {
  color: #9fd4ff;
  font-weight: 800;
  text-decoration: underline;
  text-decoration-color: rgba(159,212,255,.42);
  text-underline-offset: 3px;
}

.official-step-figures {
  display: grid;
  gap: 12px;
  max-width: 980px;
  margin: 15px 0 4px;
}
.official-step-figures .official-figure-pair {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 12px;
}
.official-step-figures .official-figure-pair > div,
.official-step-figures .official-figure-reduction {
  min-width: 0;
  border-radius: 14px;
  background: rgba(6,17,26,.54);
  box-shadow: inset 0 0 0 1px rgba(72,99,120,.24);
  padding: 10px 12px;
}
.official-step-figures b {
  display: block;
  margin-bottom: 6px;
  color: #f2d37a;
}
.official-ariz-diagram { width: 100%; height: auto; overflow: visible; }
.official-ariz-diagram text { fill: #cbd9e3; font: 700 13px system-ui, sans-serif; }
.official-ariz-diagram path { fill: none; stroke-linecap: round; stroke-linejoin: round; stroke-width: 3; }
.official-ariz-diagram marker path { fill: currentColor; stroke: none; }
.official-ariz-diagram .line-useful { stroke: #6dd3b8; color: #6dd3b8; }
.official-ariz-diagram .line-harmful { stroke: #ff8795; color: #ff8795; }
.official-ariz-diagram .line-insufficient { stroke: #83bdf0; color: #83bdf0; stroke-dasharray: 10 7; }
.official-ariz-diagram .line-unknown { stroke: #9fb5c4; color: #9fb5c4; stroke-dasharray: 5 6; }
@media (max-width: 720px) { .official-step-figures .official-figure-pair { grid-template-columns: 1fr; } }

/* v38 final: визуальная подсветка официальных примеров и ключевых строк. */
.official-step-verbatim .official-example-line,
.official-step-verbatim .official-example-text {
  color: #f1d68d;
  font-weight: 760;
}
.official-step-verbatim .official-example-line {
  display: inline-block;
  margin-top: 10px;
  font-weight: 900;
  letter-spacing: .035em;
}
.official-step-verbatim .official-important-line,
.official-step-verbatim .official-key-line {
  color: #e8f0f6;
  font-weight: 820;
}
.official-step-verbatim .official-note-text {
  color: #c7d6e0;
}
.official-step-verbatim .official-inline-reference {
  color: #a4d8ff;
  font-weight: 850;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-decoration-color: rgba(164,216,255,.48);
  text-underline-offset: 3px;
}
.official-step-verbatim .official-inline-reference:hover {
  color: #f4cf74;
  text-decoration-color: currentColor;
}

/* v38: final polish for official text, diagrams, workspace width and patent billing. */
body.project-page .workspace {
  max-width: none;
  margin-inline: 0;
  padding-right: max(28px, env(safe-area-inset-right));
}
@media (max-width: 900px) {
  body.project-page .workspace {
    max-width: 1140px;
    margin-inline: auto;
    padding-right: 15px;
  }
}

.ai-assistant {
  margin-top: 18px;
  margin-bottom: 0;
}
.panel + .ai-assistant { margin-top: 18px; }
.ai-assistant + .panel { margin-top: 24px; }

.official-step-verbatim {
  white-space: pre-wrap;
  line-height: 1.66;
}
.official-step-verbatim .official-source-line {
  display: block;
  margin: 0;
}
.official-step-verbatim .official-source-gap {
  height: .68em;
}
.official-step-verbatim .official-indent-1 { padding-left: 1.35rem; }
.official-step-verbatim .official-indent-2 { padding-left: 2.35rem; }
.official-step-verbatim .official-indent-3 { padding-left: 3.35rem; }
.official-step-verbatim .official-indent-4 { padding-left: 4.35rem; }
.official-step-verbatim .official-source-example,
.official-step-verbatim .official-source-example-title {
  color: #f0d58f;
  font-weight: 800;
}
.official-step-verbatim .official-source-example-title {
  display: inline-block;
  margin-top: .25em;
  padding: .12em .45em;
  border-radius: 7px;
  background: rgba(245,196,81,.11);
}
.official-step-verbatim .official-source-keyline,
.official-step-verbatim .official-source-strongline,
.official-step-verbatim .official-source-warning {
  font-weight: 800;
  color: #e7edf2;
}
.official-step-verbatim .official-source-warning {
  color: #ffd28a;
}
.official-step-figures {
  display: grid;
  grid-template-columns: repeat(2, minmax(220px, 1fr));
  gap: 12px;
  max-width: 760px;
  margin: 12px 0 14px;
}
.official-step-figures figure {
  margin: 0;
  padding: 11px 13px 9px;
  border-radius: 13px;
  background: rgba(5,16,24,.52);
  box-shadow: inset 0 0 0 1px rgba(86,117,140,.22);
}
.official-step-figures figcaption {
  color: #f0d58f;
  font-weight: 800;
  font-size: 12px;
  margin-bottom: 4px;
}
.official-step-figures svg { width: 100%; height: auto; }
.official-step-figures text { fill: #dbe8f0; font: 800 18px var(--font-sans); }
.official-step-figures .fig-note { fill: #94a8b7; font: 700 11px var(--font-sans); }
.official-step-figures .fig-useful { fill: none; stroke: #6dd3b8; stroke-width: 4; stroke-linecap: round; stroke-linejoin: round; }
.official-step-figures .fig-harmful { fill: none; stroke: #ff8393; stroke-width: 4; stroke-linecap: round; stroke-linejoin: round; }
.official-step-figures .fig-insufficient { fill: none; stroke: #85bff0; stroke-width: 4; stroke-linecap: round; stroke-linejoin: round; stroke-dasharray: 10 8; }
.official-step-figures .fig-useful-fill { fill: #6dd3b8; }
.official-step-figures .fig-harmful-fill { fill: #ff8393; }
.official-step-figures .fig-insufficient-fill { fill: #85bff0; }
@media (max-width: 760px) {
  .official-step-figures { grid-template-columns: 1fr; }
}

.conflict-axis-label .optional-mark {
  margin-left: 0;
}
.diagram-canvas-shell { height: 326px; }
.diagram-operation-hint::after {
  content: " Подпись действия появляется при выборе связи; в обычном виде центр связи отмечен маленькой точкой.";
}

/* v38 official text classes used by the renderer. */
.official-step-verbatim .official-example-line,
.official-step-verbatim .official-example-text {
  color: #f0d58f;
  font-weight: 800;
}
.official-step-verbatim .official-example-line {
  display: inline-block;
  margin-top: .25em;
  padding: .12em .45em;
  border-radius: 7px;
  background: rgba(245,196,81,.11);
}
.official-step-verbatim .official-key-line,
.official-step-verbatim .official-important-line {
  color: #e7edf2;
  font-weight: 800;
}
.official-step-verbatim .official-note-text {
  color: #c7d5df;
}

.official-step-figures .official-figure-pair {
  display: grid;
  grid-template-columns: repeat(2, minmax(220px, 1fr));
  gap: 12px;
}
.official-step-figures .official-figure-pair > div,
.official-step-figures .official-figure-reduction {
  margin: 0;
  padding: 11px 13px 9px;
  border-radius: 13px;
  background: rgba(5,16,24,.52);
  box-shadow: inset 0 0 0 1px rgba(86,117,140,.22);
}
.official-step-figures .official-figure-reduction { margin-top: 12px; }
.official-step-figures b { color: #f0d58f; font-size: 12px; }
.official-step-figures .official-ariz-diagram { width: 100%; height: auto; margin-top: 4px; overflow: visible; }
.official-step-figures text { fill: #dbe8f0; font: 800 18px var(--font-sans); }
.official-step-figures .line-useful { fill: none; stroke: #6dd3b8; stroke-width: 4; stroke-linecap: round; stroke-linejoin: round; }
.official-step-figures .line-harmful { fill: none; stroke: #ff8393; stroke-width: 4; stroke-linecap: round; stroke-linejoin: round; }
.official-step-figures .line-insufficient { fill: none; stroke: #85bff0; stroke-width: 4; stroke-linecap: round; stroke-linejoin: round; stroke-dasharray: 10 8; }
.official-step-figures .line-unknown { fill: none; stroke: #a9bdca; stroke-width: 4; stroke-linecap: round; stroke-linejoin: round; stroke-dasharray: 5 7; }
.official-step-figures marker path { fill: currentColor; }
.official-step-figures .line-useful + text,
.official-step-figures .line-harmful + text,
.official-step-figures .line-insufficient + text,
.official-step-figures .line-unknown + text { fill: #dbe8f0; }
@media (max-width: 760px) {
  .official-step-figures .official-figure-pair { grid-template-columns: 1fr; }
}


/* v39: аккуратные официальные примеры, схемы 1.3 и заметный ИИ-наставник. */
.official-step-verbatim .official-example-line,
.official-step-verbatim .official-source-example-title {
  color: #f0d58f !important;
  font-weight: 900 !important;
  background: transparent !important;
  padding: 0 !important;
  border-radius: 0 !important;
  letter-spacing: .02em;
}
.official-step-verbatim .official-example-text,
.official-step-verbatim .official-source-example {
  color: #f0d58f !important;
  font-weight: 800 !important;
  background: transparent !important;
}
.official-step-verbatim .official-key-line,
.official-step-verbatim .official-important-line,
.official-step-verbatim .official-source-keyline,
.official-step-verbatim .official-source-strongline {
  color: #e8f0f6 !important;
  font-weight: 820 !important;
}
.official-step-verbatim .official-note-text {
  color: #c7d5df !important;
  font-weight: 400 !important;
}
.official-step-figures {
  display: block !important;
  max-width: 980px !important;
  margin: 14px 0 14px !important;
}
.official-step-figures .official-figure-pair {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(260px, 1fr)) !important;
  gap: 18px !important;
}
.official-step-figures .official-figure-pair > div,
.official-step-figures .official-figure-reduction {
  background: transparent !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  padding: 4px 0 2px !important;
}
.official-step-figures .official-figure-reduction {
  margin-top: 18px !important;
  max-width: 760px !important;
}
.official-step-figures b {
  color: #f0d58f !important;
  font-weight: 900 !important;
  font-size: 13px !important;
}
.official-step-figures .official-ariz-diagram {
  display: block;
  max-height: 190px;
}
@media (max-width: 820px) {
  .official-step-figures .official-figure-pair { grid-template-columns: 1fr !important; }
  .official-step-figures .official-figure-reduction { max-width: none !important; }
}
.ai-assistant {
  border: 1px solid rgba(245,196,81,.32) !important;
  background: linear-gradient(135deg, rgba(42,36,18,.88), rgba(13,32,45,.94)) !important;
  box-shadow: inset 3px 0 rgba(245,196,81,.72), 0 18px 48px rgba(0,0,0,.28) !important;
}
.ai-assistant-summary {
  min-height: 84px;
}
.ai-assistant-summary:hover,
.ai-assistant[open] .ai-assistant-summary {
  background: rgba(245,196,81,.08) !important;
}
.ai-assistant-mark {
  color: #071018 !important;
  background: #f5c451 !important;
  font-weight: 900;
}
.ai-assistant-title .eyebrow { color: #f0d58f !important; }
.ai-assistant-title > b { color: #ffffff !important; }
.ai-assistant-title > small { color: #c9d7df !important; }
.conflict-modeler-top { align-items: center; }
.conflict-modeler-note { max-width: 980px; }

/* v40: official ARIZ step text now comes from JSON with trusted HTML markup. */
.official-step-verbatim p {
  margin: 0 0 10px;
}
.official-step-verbatim p:last-child {
  margin-bottom: 0;
}
.official-step-verbatim .official-json-example-heading,
.official-step-verbatim .official-json-example {
  color: #f4cf74;
  font-weight: 800;
}
.official-step-verbatim .official-json-example {
  background: transparent;
}
.official-step-verbatim .official-json-important,
.official-step-verbatim .official-json-key {
  color: #e3edf3;
  font-weight: 800;
}
.official-step-verbatim .official-json-note {
  color: #c2d0da;
}
.official-step-verbatim .official-inline-reference {
  color: #e8c45f;
  font-weight: 900;
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-thickness: 1px;
}
.official-step-verbatim .official-inline-reference:hover {
  color: #ffe08a;
}

/* v41: examples are rendered after the interface explanation, not inside the official step text. */
.official-step-example {
  max-width: 940px;
  margin-top: 16px;
  padding: 13px 15px 14px;
  border: 1px solid rgba(245,196,81,.24);
  border-radius: 13px;
  background: rgba(30,24,9,.32);
}
.official-step-example b {
  display: inline-block;
  margin-bottom: 8px;
  color: #f2cf79;
}
.official-step-example pre {
  margin: 0;
  color: #e8dba9;
  font-family: var(--font-sans);
  font-size: 14px;
  line-height: 1.62;
  white-space: pre-wrap;
}
.official-step-extra span {
  color: #8ca8bb;
}

/* v42: official JSON text is rendered as structured ARIZ source, with inline examples and a quiet duplicate at the bottom. */
.official-step-verbatim {
  max-width: 1020px;
  white-space: normal !important;
  line-height: 1.62;
}
.official-step-source {
  display: grid;
  gap: 12px;
}
.official-source-p,
.official-source-formula,
.official-source-note p,
.official-source-rule p,
.official-source-note-cont,
.official-source-warning-copy {
  margin: 0;
  color: #d3e0e8;
  font-size: 14px;
  line-height: 1.68;
}
.official-source-formula,
.official-source-note pre {
  margin: 0;
  padding: 12px 14px;
  border-radius: 13px;
  border: 1px solid rgba(107,139,162,.20);
  background: rgba(7,19,29,.38);
  color: #e0e9ef;
  font-family: var(--font-sans);
  font-size: 14px;
  line-height: 1.62;
  white-space: pre-wrap;
}
.official-source-key,
.official-source-emphasis {
  color: #e9f1f6;
  font-weight: 760;
}
.official-source-example,
.official-source-notes,
.official-source-warning {
  display: grid;
  gap: 10px;
  margin: 2px 0;
}
.official-source-example {
  padding: 13px 15px 14px;
  border: 1px solid rgba(245,196,81,.24);
  border-radius: 13px;
  background: rgba(30,24,9,.28);
}
.official-source-example h3,
.official-source-notes h3,
.official-source-warning h3 {
  margin: 0;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .055em;
  text-transform: uppercase;
}
.official-source-example h3 { color: #f4d179; }
.official-source-example-copy,
.official-source-inline-example {
  color: #eadba3 !important;
  font-weight: 700;
}
.official-source-notes {
  padding: 2px 0 0;
}
.official-source-notes h3 {
  color: #e4edf3;
}
.official-source-note {
  display: grid;
  grid-template-columns: 32px minmax(0,1fr);
  gap: 10px;
  align-items: start;
  padding: 10px 0;
  border-top: 1px solid rgba(104,132,153,.14);
}
.official-source-note:first-of-type { border-top: 0; }
.official-source-note > span {
  display: grid;
  place-items: center;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  color: #1d2116;
  background: #f5c451;
  font-size: 12px;
  font-weight: 900;
}
.official-source-note p,
.official-source-note-cont {
  color: #c2d0da;
}
.official-source-rule {
  display: grid;
  grid-template-columns: minmax(92px,.23fr) minmax(0,1fr);
  gap: 12px;
  padding: 12px 14px;
  border-radius: 13px;
  background: rgba(7,19,29,.42);
  box-shadow: inset 3px 0 rgba(109,211,184,.38);
}
.official-source-rule > b {
  color: #aee2d5;
}
.official-source-warning {
  padding: 13px 15px;
  border-radius: 13px;
  background: rgba(52,34,10,.28);
  box-shadow: inset 3px 0 rgba(245,196,81,.5);
}
.official-source-warning h3 { color: #ffd28a; }
.official-source-warning-copy { color: #e7d4a4 !important; }
.official-step-example-duplicate {
  max-width: 940px;
  margin-top: 14px;
  padding: 0;
  border: 1px solid rgba(245,196,81,.20);
  border-radius: 13px;
  background: rgba(30,24,9,.22);
  overflow: hidden;
}
.official-step-example-duplicate summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 15px;
  cursor: pointer;
  color: #f2cf79;
  font-weight: 850;
}
.official-step-example-duplicate summary small {
  color: #9aaebc;
  font-weight: 600;
}
.official-step-example-duplicate pre {
  padding: 0 15px 14px;
  color: #e8dba9;
}
.official-step-example-tooltip-source[hidden] { display: none !important; }
.official-example-tooltip {
  position: fixed;
  z-index: 1002;
  left: 16px;
  top: 16px;
  width: min(760px, calc(100vw - 32px));
  max-height: min(420px, calc(100vh - 32px));
  padding: 13px 15px 15px;
  border-radius: 14px;
  border: 1px solid rgba(245,196,81,.25);
  background: rgba(12,28,40,.98);
  box-shadow: 0 22px 58px rgba(0,0,0,.46), inset 3px 0 rgba(245,196,81,.55);
  opacity: 0;
  pointer-events: none;
  transform: translateY(6px);
  transition: opacity .14s ease, transform .14s ease;
  overflow: auto;
}
.official-example-tooltip.is-visible {
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0);
}
.official-example-tooltip-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 9px;
}
.official-example-tooltip-head span {
  color: #f0d58f;
  font-size: 13px;
  font-weight: 900;
}
.official-example-tooltip-head small {
  color: #8fa3b2;
  font-size: 11px;
  font-weight: 700;
}
.official-example-tooltip pre {
  margin: 0;
  color: #dbe6ed;
  font-family: var(--font-sans);
  font-size: 13px;
  line-height: 1.58;
  white-space: pre-wrap;
}
.official-example-tooltip::after {
  content: "";
  position: absolute;
  left: 28px;
  bottom: -7px;
  width: 13px;
  height: 13px;
  background: rgba(12,28,40,.98);
  border-right: 1px solid rgba(245,196,81,.25);
  border-bottom: 1px solid rgba(245,196,81,.25);
  transform: rotate(45deg);
}
.official-example-tooltip.is-below::after {
  top: -7px;
  bottom: auto;
  border: 0;
  border-left: 1px solid rgba(245,196,81,.25);
  border-top: 1px solid rgba(245,196,81,.25);
}
.official-step-figures {
  max-width: 980px !important;
}
.official-source-example .official-step-figures {
  margin: 6px 0 0 !important;
}
.official-step-figures-reduction {
  margin: 7px 0 6px !important;
}
.official-step-extra {
  max-width: 940px;
  margin-top: 12px;
}
.official-inline-reference {
  scroll-margin-top: 20px;
}

/* v42: official Table 1 and Table 2 in the TRIZ reference page. */
.anchor-alias {
  position: relative;
  top: -18px;
  display: block;
  width: 1px;
  height: 1px;
  overflow: hidden;
}
.triz-official-section {
  scroll-margin-top: 18px;
}
.triz-conflict-table .triz-appendix-row {
  align-items: start;
  grid-template-columns: 34px minmax(220px,.58fr) minmax(0,1.42fr);
}
.triz-conflict-table .triz-appendix-copy h3 {
  text-transform: uppercase;
  letter-spacing: .025em;
}
.triz-conflict-table .triz-appendix-copy p b {
  color: #e7eff4;
}
.triz-example {
  margin-top: 10px;
  color: #a9beb6 !important;
}
.triz-example ul {
  margin: 5px 0 0 18px;
  padding: 0;
}
.triz-example li {
  margin: 3px 0;
  line-height: 1.5;
}
.triz-conflict-svg {
  min-height: 118px;
}
.triz-conflict-svg text {
  fill: #dbe8f0 !important;
  font: 900 18px var(--font-sans) !important;
}
.triz-conflict-svg .triz-system-line {
  stroke: rgba(202,218,228,.68);
  stroke-width: 2.2;
}
.triz-conflict-svg .triz-action-dot {
  fill: #76ace8;
}
.triz-table-wrap {
  width: 100%;
  overflow-x: auto;
  border: 1px solid rgba(104,132,153,.22);
  border-radius: 15px;
  background: rgba(6,18,28,.38);
}
.triz-official-table {
  width: 100%;
  min-width: 760px;
  border-collapse: collapse;
}
.triz-official-table th,
.triz-official-table td {
  padding: 13px 14px;
  border: 1px solid rgba(104,132,153,.20);
  vertical-align: top;
  text-align: left;
  line-height: 1.55;
}
.triz-official-table th {
  color: #eaf1f6;
  background: rgba(245,196,81,.14);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .045em;
  text-transform: uppercase;
}
.triz-official-table td:first-child {
  width: 42px;
  color: #f4cf74;
  font-weight: 900;
  text-align: center;
}
.triz-physical-table td:nth-child(2) {
  width: 38%;
  color: #e3edf2;
  font-weight: 750;
}
.triz-physical-table td:nth-child(3) {
  color: #b9c9d4;
}
@media (max-width: 760px) {
  .official-source-rule { grid-template-columns: 1fr; }
  .official-source-note { grid-template-columns: 28px minmax(0,1fr); }
  .official-step-example-duplicate summary { align-items: flex-start; flex-direction: column; }
  .triz-conflict-table .triz-appendix-row { grid-template-columns: 1fr; }
  .triz-conflict-table .triz-appendix-index,
  .triz-conflict-table .triz-appendix-diagram,
  .triz-conflict-table .triz-appendix-copy { grid-column: 1; }
}

/* v42: аккуратная верстка официального текста АРИЗ, инлайновые примеры и настоящие таблицы 1–2. */
.official-step-verbatim {
  max-width: 1040px;
}
.official-step-source {
  display: grid;
  gap: 10px;
  max-width: 1040px;
}
.official-source-p {
  margin: 0;
  color: #d8e4ec;
  line-height: 1.68;
}
.official-source-p + .official-source-p {
  margin-top: 2px;
}
.official-source-key,
.official-source-emphasis {
  color: #eef5f8;
  font-weight: 760;
}
.official-source-formula {
  margin: 2px 0 4px;
  padding: 12px 14px 12px 16px;
  border: 1px solid rgba(118,158,188,.22);
  border-left: 3px solid rgba(109,211,184,.58);
  border-radius: 14px;
  background: rgba(6,18,28,.58);
  color: #e3edf3;
  font-family: var(--font-sans);
  font-size: 14px;
  line-height: 1.62;
  white-space: pre-wrap;
}
.official-source-rule {
  display: grid;
  gap: 5px;
  margin: 2px 0;
  padding: 12px 14px;
  border-radius: 14px;
  background: rgba(16,35,49,.52);
  box-shadow: inset 3px 0 rgba(245,196,81,.54);
}
.official-source-rule b {
  color: #f1cf7c;
  letter-spacing: .01em;
}
.official-source-rule p {
  margin: 0;
  color: #cddce5;
  line-height: 1.62;
}
.official-source-example {
  display: grid;
  gap: 10px;
  margin: 7px 0 9px;
  padding: 13px 15px 14px;
  border: 1px solid rgba(245,196,81,.26);
  border-radius: 15px;
  background: linear-gradient(135deg, rgba(36,28,8,.42), rgba(8,22,32,.38));
}
.official-source-example h3,
.official-source-notes h3,
.official-source-warning h3 {
  margin: 0;
  font-size: 12px;
  line-height: 1.2;
  text-transform: uppercase;
  letter-spacing: .09em;
}
.official-source-example h3 {
  color: #f4cf74;
}
.official-source-example .official-source-p,
.official-source-example .official-source-formula {
  color: #eadca9;
}
.official-source-example .official-source-formula {
  margin: 0;
  border-color: rgba(245,196,81,.2);
  border-left-color: rgba(245,196,81,.55);
  background: rgba(38,29,9,.26);
}
.official-source-inline-example {
  padding: 10px 12px;
  border-radius: 13px;
  background: rgba(245,196,81,.08);
  color: #eadca9;
}
.official-source-notes {
  display: grid;
  gap: 9px;
  margin-top: 4px;
  padding-top: 12px;
  border-top: 1px solid rgba(104,132,153,.18);
}
.official-source-notes h3 {
  color: #9fc4de;
}
.official-source-note {
  display: grid;
  grid-template-columns: 34px minmax(0,1fr);
  gap: 10px;
  align-items: start;
}
.official-source-note > span {
  display: grid;
  place-items: center;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  background: rgba(109,211,184,.15);
  color: #aee2d5;
  font-size: 12px;
  font-weight: 900;
}
.official-source-note p,
.official-source-note pre,
.official-source-note-cont {
  margin: 0;
  color: #c4d3dc;
  line-height: 1.62;
}
.official-source-note pre {
  white-space: pre-wrap;
  font-family: var(--font-sans);
}
.official-source-note-cont {
  margin-left: 44px;
}
.official-source-warning {
  display: grid;
  gap: 9px;
  margin-top: 6px;
  padding: 13px 15px;
  border-radius: 15px;
  background: rgba(61,37,8,.33);
  box-shadow: inset 3px 0 rgba(255,191,87,.68);
}
.official-source-warning h3 {
  color: #ffd28a;
}
.official-source-warning .official-source-p,
.official-source-warning .official-source-formula {
  color: #f1dcb9;
}
.official-source-example .official-step-figures {
  margin: 4px 0 0 !important;
}
.official-step-example-duplicate {
  max-width: 940px;
  margin-top: 16px;
  padding: 0;
  border: 1px solid rgba(245,196,81,.18);
  border-radius: 13px;
  background: rgba(18,25,28,.28);
}
.official-step-example-duplicate summary {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  padding: 11px 13px;
  cursor: pointer;
  color: #f0d58f;
  font-weight: 850;
}
.official-step-example-duplicate summary small {
  color: #8196a5;
  font-size: 11px;
  font-weight: 650;
}
.official-step-example-duplicate pre {
  margin: 0;
  padding: 0 13px 13px;
  color: #dbcfa3;
  font-family: var(--font-sans);
  font-size: 13px;
  line-height: 1.58;
  white-space: pre-wrap;
}
.anchor-alias {
  position: relative;
  top: -84px;
  display: block;
  width: 1px;
  height: 1px;
  overflow: hidden;
}
.ariz-official-table {
  scroll-margin-top: 24px;
}
.ariz-table1-list {
  display: grid;
  overflow: hidden;
  border: 1px solid rgba(104,132,153,.26);
  border-radius: 16px;
  background: rgba(4,13,21,.35);
}
.ariz-table1-row {
  display: grid;
  grid-template-columns: minmax(155px,.72fr) minmax(190px,.88fr) minmax(0,1.4fr);
  gap: 0;
  border-top: 1px solid rgba(104,132,153,.22);
}
.ariz-table1-row:first-child { border-top: 0; }
.ariz-row-title,
.ariz-row-diagram,
.ariz-row-copy {
  padding: 14px 15px;
}
.ariz-row-title,
.ariz-row-diagram {
  border-right: 1px solid rgba(104,132,153,.2);
}
.ariz-row-title {
  display: grid;
  align-content: start;
  gap: 7px;
  background: rgba(9,22,33,.38);
}
.ariz-row-title > span {
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: #f5c451;
  color: #15190d;
  font-weight: 900;
}
.ariz-row-title b {
  color: #e9f1f6;
  font-size: 13px;
  line-height: 1.25;
  letter-spacing: .02em;
}
.ariz-row-title small {
  color: #8da4b6;
  line-height: 1.35;
}
.ariz-row-diagram {
  display: grid;
  place-items: center;
  background: rgba(7,18,27,.36);
}
.ariz-row-copy p {
  margin: 0;
  color: #c4d4de;
  line-height: 1.58;
}
.ariz-row-copy p + p { margin-top: 9px; }
.ariz-row-copy b { color: #e8f0f5; }
.ariz-table-diagram {
  display: block;
  width: min(240px, 100%);
  height: auto;
  overflow: visible;
}
.ariz-table-diagram text {
  fill: #dce8f0;
  font: 900 18px var(--font-sans);
}
.ariz-table-diagram path,
.ariz-table-diagram line {
  fill: none;
  stroke-width: 4;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.ariz-table-diagram .useful { stroke: #6dd3b8; }
.ariz-table-diagram .harmful { stroke: #ff8393; }
.ariz-table-diagram .missing { stroke: #85bff0; stroke-dasharray: 10 8; }
.ariz-table-diagram .unknown { stroke: #a9bdca; stroke-dasharray: 4 7; }
.ariz-table-diagram .unregulated { stroke: #76ace8; stroke-dasharray: 16 5 3 5; }
.ariz-table-diagram .system { stroke: rgba(151,173,188,.58); stroke-width: 3; }
.ariz-table-diagram .dot { fill: #76ace8; }
.ariz-table-diagram .marker-useful { fill: #6dd3b8; }
.ariz-table-diagram .marker-harmful { fill: #ff8393; }
.ariz-table-diagram .marker-missing { fill: #85bff0; }
.ariz-table-diagram .marker-unknown { fill: #a9bdca; }
.ariz-physical-table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  overflow: hidden;
  border: 1px solid rgba(104,132,153,.28);
  border-radius: 16px;
  background: rgba(4,13,21,.35);
}
.ariz-physical-table th,
.ariz-physical-table td {
  padding: 13px 14px;
  border-top: 1px solid rgba(104,132,153,.22);
  border-left: 1px solid rgba(104,132,153,.18);
  vertical-align: top;
  text-align: left;
}
.ariz-physical-table th:first-child,
.ariz-physical-table td:first-child { border-left: 0; }
.ariz-physical-table thead th {
  border-top: 0;
  background: rgba(104,132,153,.22);
  color: #f0d58f;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: .07em;
}
.ariz-physical-table td:first-child {
  width: 46px;
  color: #f5c451;
  font-weight: 900;
  text-align: center;
}
.ariz-physical-table td:nth-child(2) {
  width: 34%;
}
.ariz-physical-table b {
  color: #e8f0f5;
}
.ariz-physical-table p {
  margin: 7px 0 0;
  color: #aebfca;
  line-height: 1.5;
}
.ariz-physical-table td {
  color: #c6d5df;
  line-height: 1.55;
}
@media (max-width: 900px) {
  .ariz-table1-row {
    grid-template-columns: minmax(130px,.72fr) minmax(170px,.86fr) minmax(0,1.2fr);
  }
  .ariz-row-title,
  .ariz-row-diagram,
  .ariz-row-copy { padding: 12px; }
}
@media (max-width: 720px) {
  .official-source-note { grid-template-columns: 28px minmax(0,1fr); }
  .official-source-note-cont { margin-left: 38px; }
  .official-step-example-duplicate summary { display: grid; }
  .ariz-table1-row { grid-template-columns: 1fr; }
  .ariz-row-title,
  .ariz-row-diagram { border-right: 0; border-bottom: 1px solid rgba(104,132,153,.18); }
  .ariz-physical-table { min-width: 720px; }
}
.official-step-verbatim .official-source-p,
.official-step-verbatim .official-source-note p,
.official-step-verbatim .official-source-rule p,
.official-step-verbatim .official-source-note-cont,
.official-step-verbatim .official-source-warning-copy {
  margin: 0;
}

/* v43: ровный официальный текст АРИЗ и чистые карточки патентов. */
.official-step-verbatim {
  max-width: 1040px;
  white-space: normal !important;
  color: #d7e3eb;
  line-height: 1.68;
}
.official-step-source-simple {
  display: block;
  max-width: 1040px;
}
.official-step-source-simple .official-source-p,
.official-step-source-simple .official-source-formula,
.official-step-verbatim .official-json-important,
.official-step-verbatim .official-json-key,
.official-step-verbatim .official-json-note,
.official-step-verbatim .official-source-key,
.official-step-verbatim .official-source-emphasis,
.official-step-verbatim .official-source-note-cont,
.official-step-verbatim .official-source-warning-copy {
  margin: 0 0 10px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #d7e3eb !important;
  font-family: var(--font-sans) !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  line-height: 1.68 !important;
}
.official-step-source-simple .official-source-formula,
.official-step-verbatim .official-json-key {
  padding-left: 18px !important;
  white-space: pre-wrap !important;
}
.official-step-source-simple .official-source-heading {
  margin: 16px 0 8px;
  color: #dfe9ef;
  font-size: 14px;
  font-weight: 760;
  line-height: 1.45;
}
.official-step-verbatim .official-source-rule,
.official-step-verbatim .official-source-note,
.official-step-verbatim .official-source-notes,
.official-step-verbatim .official-source-warning {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
.official-step-verbatim .official-source-note > span,
.official-step-verbatim .official-source-rule > b,
.official-step-verbatim .official-source-notes h3,
.official-step-verbatim .official-source-warning h3 {
  display: none !important;
}
.official-step-verbatim .official-source-note > div {
  display: block !important;
}
.official-source-example {
  display: grid !important;
  gap: 10px !important;
  margin: 14px 0 16px !important;
  padding: 14px 16px 15px !important;
  border: 1px solid rgba(245,196,81,.22) !important;
  border-radius: 15px !important;
  background: linear-gradient(135deg, rgba(36,28,8,.42), rgba(8,22,32,.34)) !important;
  box-shadow: none !important;
}
.official-source-example h3,
.official-step-verbatim .official-json-example-heading {
  margin: 0 !important;
  padding: 0 !important;
  color: #f0d58f !important;
  background: transparent !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: .08em !important;
  line-height: 1.25 !important;
  text-transform: uppercase !important;
}
.official-source-example .official-source-p,
.official-source-example .official-source-formula,
.official-step-verbatim .official-json-example,
.official-source-inline-example {
  color: #eadca9 !important;
  font-weight: 650 !important;
}
.official-source-inline-example {
  margin: 6px 0 10px !important;
  padding: 11px 13px !important;
  border-radius: 13px !important;
  background: rgba(245,196,81,.075) !important;
}
.official-step-comment {
  max-width: 940px;
  margin-top: 14px;
  padding: 12px 14px;
  border-radius: 13px;
  background: rgba(7,19,29,.28);
  box-shadow: inset 2px 0 rgba(109,211,184,.32);
}
.official-step-example-duplicate {
  max-width: 940px;
  margin-top: 14px;
  background: rgba(9,19,27,.35) !important;
}
.official-source-example .official-step-figures {
  margin-top: 2px !important;
}

.patent-export-actions,
.patent-match-details,
.patent-card-meta {
  display: none !important;
}
.patent-results {
  display: grid;
  gap: 16px;
  margin-top: 16px;
}
.patent-results-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 16px;
  padding-bottom: 4px;
}
.patent-results-head h3 {
  margin: 3px 0 0;
  color: #eef5f8;
  font-size: 22px;
  line-height: 1.15;
}
.patent-results-count {
  display: inline-grid;
  min-width: 38px;
  height: 32px;
  place-items: center;
  padding: 0 10px;
  border-radius: 999px;
  color: #15190d;
  background: #f5c451;
  font-weight: 900;
}
.patent-mode-chip {
  justify-self: start;
  margin-top: -2px;
  padding: 6px 10px;
  border-radius: 999px;
  color: #bcd0de;
  background: rgba(92,122,146,.18);
  font-size: 12px;
  font-weight: 800;
}
.patent-mode-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin: 8px 0 -2px !important;
  padding: 0 !important;
  border: 0 !important;
  color: #e5eef4;
}
.patent-mode-heading b { font-size: 15px; }
.patent-mode-heading span {
  color: #15190d;
  background: #f5c451;
  border-radius: 999px;
  padding: 3px 8px;
  font-size: 12px;
  font-weight: 900;
}
.patent-result-list {
  display: grid;
  gap: 18px;
}
.patent-result-card {
  margin: 0 !important;
  padding: 18px 18px 17px !important;
  border: 1px solid rgba(104,132,153,.22) !important;
  border-radius: 18px !important;
  background: linear-gradient(180deg, rgba(10,24,35,.86), rgba(7,18,27,.76)) !important;
  box-shadow: 0 14px 38px rgba(0,0,0,.18), inset 2px 0 rgba(77,113,141,.34) !important;
}
.patent-card-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  margin: 0 0 14px;
}
.patent-title-block {
  display: grid;
  min-width: 0;
  gap: 5px;
}
.patent-card-number {
  color: #f0d58f;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .02em;
}
.patent-card-head h4 {
  margin: 0;
  color: #f3f8fb;
  font-size: 16px;
  line-height: 1.35;
  font-weight: 800;
}
.patent-source-link {
  justify-self: start;
  color: #8fd0ff;
  font-size: 13px;
  font-weight: 750;
  text-decoration: none;
  border-bottom: 1px solid rgba(143,208,255,.34);
}
.patent-source-link:hover {
  color: #f0d58f;
  border-bottom-color: currentColor;
}
.patent-card-score {
  flex: 0 0 auto;
  padding: 6px 9px;
  border-radius: 999px;
  color: #f4cf74 !important;
  background: rgba(245,196,81,.1);
  font-size: 12px;
  font-weight: 900;
  white-space: nowrap;
}
.patent-card-body {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
.patent-text-block {
  min-width: 0;
  padding: 13px 14px;
  border-radius: 14px;
  background: rgba(4,13,21,.42);
  box-shadow: inset 0 0 0 1px rgba(104,132,153,.14);
}
.patent-text-block-wide { grid-column: 1 / -1; }
.patent-text-block b {
  display: block;
  margin: 0 0 6px;
  color: #dfe9ef;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.patent-text-block p {
  margin: 0;
  color: #cddce5;
  line-height: 1.62;
}
.patent-brief-details {
  margin-top: 12px !important;
  padding: 10px 12px !important;
  border: 0 !important;
  border-radius: 13px !important;
  background: rgba(7,19,29,.44) !important;
}
.patent-brief-details summary {
  color: #b9ccda;
  font-weight: 850;
}
.patent-brief-details p {
  margin: 8px 0 0;
  color: #c8d7e0;
  line-height: 1.55;
}
@media (max-width: 760px) {
  .patent-card-head,
  .patent-results-head {
    display: grid;
  }
  .patent-card-body {
    grid-template-columns: 1fr;
  }
  .patent-card-score,
  .patent-results-count {
    justify-self: start;
  }
}

/* v43: спокойный официальный текст; выделяются только примеры, а схемы 1.3 остаются графическими. */
.official-step-verbatim {
  max-width: 1020px !important;
  white-space: normal !important;
  line-height: 1.66 !important;
}
.official-step-source {
  display: grid !important;
  gap: 9px !important;
  max-width: 1020px !important;
}
.official-step-verbatim .official-source-p,
.official-step-verbatim .official-source-formula,
.official-step-verbatim .official-source-note p,
.official-step-verbatim .official-source-note pre,
.official-step-verbatim .official-source-rule p,
.official-step-verbatim .official-source-note-cont,
.official-step-verbatim .official-source-warning-copy {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #d7e3eb !important;
  font-family: var(--font-sans) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 1.68 !important;
}
.official-step-verbatim .official-source-formula,
.official-step-verbatim .official-source-note pre {
  white-space: pre-wrap !important;
}
.official-step-verbatim .official-source-key,
.official-step-verbatim .official-source-emphasis,
.official-step-verbatim .official-source-keyline,
.official-step-verbatim .official-source-strongline,
.official-step-verbatim .official-important-line,
.official-step-verbatim .official-key-line {
  color: #d7e3eb !important;
  font-weight: 400 !important;
}
.official-source-rule,
.official-source-notes,
.official-source-warning {
  display: grid !important;
  gap: 8px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
.official-source-notes h3,
.official-source-warning h3 {
  margin: 4px 0 0 !important;
  color: #9fb2c0 !important;
  font-size: 13px !important;
  font-weight: 750 !important;
  letter-spacing: 0 !important;
  line-height: 1.4 !important;
  text-transform: none !important;
}
.official-source-note {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}
.official-source-note > span {
  display: none !important;
}
.official-source-note-cont {
  margin-left: 0 !important;
}
.official-source-warning-copy {
  color: #d7e3eb !important;
}
.official-source-example {
  display: grid !important;
  gap: 10px !important;
  margin: 8px 0 10px !important;
  padding: 14px 16px 15px !important;
  border: 1px solid rgba(245,196,81,.24) !important;
  border-radius: 16px !important;
  background: linear-gradient(135deg, rgba(39,30,9,.44), rgba(8,22,32,.34)) !important;
  box-shadow: inset 3px 0 rgba(245,196,81,.42) !important;
}
.official-source-example h3 {
  margin: 0 !important;
  color: #f4cf74 !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: .075em !important;
  line-height: 1.2 !important;
  text-transform: uppercase !important;
}
.official-source-example .official-source-p,
.official-source-example .official-source-formula,
.official-step-verbatim .official-source-example-copy,
.official-step-verbatim .official-source-inline-example,
.official-step-verbatim .official-example-line,
.official-step-verbatim .official-example-text,
.official-step-verbatim .official-source-example,
.official-step-verbatim .official-source-example-title {
  color: #eadca9 !important;
  font-weight: 650 !important;
}
.official-source-inline-example {
  padding: 10px 12px !important;
  border-radius: 13px !important;
  background: rgba(245,196,81,.08) !important;
}
.official-step-example-duplicate {
  background: rgba(20,27,29,.34) !important;
}
.official-step-example-duplicate summary small {
  color: #8fa4b4 !important;
}

/* v43: чистые карточки патентного поиска и квота только через toast. */
.patent-export-actions,
.patent-export-bar {
  display: none !important;
}
.ajax-toast-warning {
  box-shadow: inset 3px 0 #b58b43, 0 18px 45px #00000057;
}
.patent-results-list {
  display: grid;
  gap: 18px;
  margin-top: 22px;
}
.patent-results-header {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 18px;
  padding-bottom: 3px;
}
.patent-results-header h3 {
  margin: 3px 0 0;
  color: #edf4f8;
  font-size: 22px;
  font-weight: 850;
  line-height: 1.2;
}
.patent-results-group {
  display: grid;
  gap: 12px;
}
.patent-results-list .patent-mode-heading {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  color: #cfe0ea;
  font-size: 15px;
}
.patent-results-list .patent-mode-heading b {
  color: #dce8ef;
  font-weight: 850;
}
.patent-card-stack {
  display: grid;
  gap: 16px;
}
.patent-result-card {
  margin: 0 !important;
  padding: 18px 20px 19px !important;
  border: 1px solid rgba(104,132,153,.20) !important;
  border-radius: 18px !important;
  background: linear-gradient(180deg, rgba(10,27,39,.92), rgba(7,19,29,.82)) !important;
  box-shadow: 0 14px 34px rgba(0,0,0,.18) !important;
}
.patent-card-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
}
.patent-card-title {
  min-width: 0;
}
.patent-card-title h4,
.patent-card-head h4 {
  margin: 0;
  color: #f2f7fa;
  font-size: 15px;
  font-weight: 760;
  line-height: 1.42;
}
.patent-card-title a,
.patent-card-head a {
  display: inline-flex;
  margin-top: 8px;
  color: #8acbff;
  font-size: 13px;
  font-weight: 750;
  text-decoration: none;
  border-bottom: 1px solid rgba(138,203,255,.32);
}
.patent-card-title a:hover,
.patent-card-head a:hover {
  color: #f0d58f;
  border-bottom-color: currentColor;
}
.patent-card-score {
  flex: 0 0 auto;
  padding: 5px 9px;
  border-radius: 999px;
  background: rgba(245,196,81,.12);
  color: #f4cf74;
  font-size: 12px;
  font-weight: 900;
  line-height: 1.2;
  white-space: nowrap;
}
.patent-tech-details {
  margin-top: 10px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
}
.patent-tech-details summary {
  color: #8298a9;
  font-size: 12px;
  font-weight: 750;
}
.patent-tech-details p {
  margin: 6px 0 0;
  color: #7f93a4;
  font-size: 12px;
  line-height: 1.5;
}
.patent-text-grid {
  display: grid;
  gap: 12px;
  margin-top: 15px;
}
.patent-text {
  margin: 0 !important;
  padding: 13px 14px !important;
  border-radius: 14px;
  background: rgba(6,17,26,.42);
}
.patent-text h5 {
  margin: 0 0 5px;
  color: #dfeaf0;
  font-size: 13px;
  font-weight: 900;
  line-height: 1.3;
}
.patent-text p {
  margin: 0;
  color: #d5e2ea;
  line-height: 1.62;
}
.patent-brief-details {
  margin-top: 12px !important;
  padding: 11px 13px !important;
  border: 0 !important;
  border-radius: 13px !important;
  background: rgba(8,22,32,.58) !important;
}
.patent-brief-details summary {
  color: #bfe1ef;
  font-weight: 850;
}
.patent-brief-details p {
  margin: 8px 0 0;
  color: #c7d5df;
  line-height: 1.55;
}
.patent-brief-details p:first-of-type {
  margin-top: 10px;
}
@media (max-width: 640px) {
  .patent-card-head {
    display: grid;
  }
  .patent-card-score {
    justify-self: start;
  }
  .patent-result-card {
    padding: 16px 15px 17px !important;
  }
}

/* v43: спокойный официальный текст АРИЗ. Выделяем только примеры; правила и примечания идут обычным текстом. */
.official-step-verbatim {
  max-width: 1040px;
  line-height: 1.66;
}
.official-step-source {
  display: grid;
  gap: 9px;
  max-width: 1040px;
}
.official-source-p,
.official-source-key,
.official-source-emphasis,
.official-source-note-cont,
.official-source-warning-copy,
.official-source-rule p,
.official-source-note p {
  margin: 0;
  color: #d7e2ea !important;
  font-size: 14px;
  font-weight: 500 !important;
  line-height: 1.68;
}
.official-source-formula,
.official-source-note pre {
  margin: 1px 0 5px;
  padding: 4px 0 4px 18px;
  border: 0 !important;
  border-left: 2px solid rgba(111,142,164,.32) !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #d7e2ea !important;
  font-family: var(--font-sans) !important;
  font-size: 14px;
  font-weight: 500 !important;
  line-height: 1.62;
  white-space: pre-wrap;
}
.official-source-rule {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
.official-source-rule > b {
  color: #d7e2ea !important;
  font-weight: 700 !important;
}
.official-source-notes,
.official-source-warning {
  display: grid;
  gap: 8px;
  margin: 8px 0 0;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
.official-source-notes h3,
.official-source-warning h3 {
  margin: 4px 0 0;
  color: #cbd9e2 !important;
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0;
  text-transform: none;
}
.official-source-note {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}
.official-source-note > span {
  display: none !important;
}
.official-source-note-cont {
  margin-left: 0 !important;
}
.official-source-example {
  display: grid;
  gap: 10px;
  margin: 10px 0 12px;
  padding: 14px 16px;
  border: 1px solid rgba(245,196,81,.28) !important;
  border-radius: 15px;
  background: linear-gradient(135deg, rgba(40,30,8,.46), rgba(9,23,32,.38)) !important;
}
.official-source-example h3 {
  margin: 0;
  color: #f4cf74 !important;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.official-source-example-copy,
.official-source-example .official-source-p,
.official-source-inline-example {
  color: #eadca9 !important;
  font-weight: 650 !important;
}
.official-source-example .official-source-formula {
  color: #eadca9 !important;
  border-left-color: rgba(245,196,81,.45) !important;
}
.official-source-inline-example {
  padding: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
}
.official-step-example-duplicate {
  max-width: 940px;
  margin-top: 14px;
  border-color: rgba(245,196,81,.18) !important;
  background: rgba(20,27,22,.25) !important;
}

/* v43: чистые карточки патентов без служебных строк, markdown/json-кнопок и постоянного блока лимитов. */
.quota-box {
  display: none !important;
}
.patent-export-actions,
.patent-export-bar,
.patent-match-details,
.patent-card-meta {
  display: none !important;
}
.patent-export-hint {
  margin-bottom: 18px;
}
.patent-results {
  display: grid;
  gap: 24px;
  margin-top: 20px;
}
.patent-result-group {
  display: grid;
  gap: 14px;
}
.patent-mode-heading {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}
.patent-mode-heading h3 {
  margin: 4px 0 0;
  color: #e8f0f6;
  font-size: 20px;
  font-weight: 900;
  line-height: 1.2;
}
.patent-mode-heading h3 span {
  color: #93a4b5;
  font-size: .86em;
  font-weight: 700;
}
.patent-card-list {
  display: grid;
  gap: 18px;
}
.patent-result-card {
  display: grid;
  gap: 16px;
  margin: 0 !important;
  padding: 20px !important;
  border: 1px solid rgba(104,132,153,.22) !important;
  border-radius: 18px !important;
  background: linear-gradient(145deg, rgba(11,29,43,.82), rgba(8,20,30,.72)) !important;
  box-shadow: 0 18px 45px rgba(0,0,0,.18);
}
.patent-card-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  margin: 0 !important;
}
.patent-card-title {
  display: grid;
  gap: 7px;
  min-width: 0;
}
.patent-card-number {
  color: #f4cf74;
  font-size: 13px;
  font-weight: 900;
  letter-spacing: .015em;
}
.patent-card-head h4 {
  margin: 0;
  color: #f3f8fb;
  font-size: 17px;
  font-weight: 850;
  line-height: 1.35;
}
.patent-card-source {
  width: fit-content;
  color: #7ed5ff;
  font-size: 13px;
  font-weight: 750;
  text-decoration: none;
}
.patent-card-source:hover {
  color: #b2e7ff;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.patent-card-score {
  flex: 0 0 auto;
  padding: 5px 9px;
  border: 1px solid rgba(245,196,81,.22);
  border-radius: 999px;
  color: #f6d066 !important;
  background: rgba(245,196,81,.08);
  font-size: 12px;
  font-weight: 900;
  white-space: nowrap;
}
.patent-brief-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 14px;
}
.patent-text {
  margin: 0 !important;
  padding: 14px 15px;
  border: 1px solid rgba(104,132,153,.16);
  border-radius: 14px;
  background: rgba(6,18,28,.36);
  color: #dbe7ee;
  line-height: 1.6;
}
.patent-text b {
  display: block;
  margin: 0 0 7px;
  color: #ffffff;
  font-size: 13px;
  font-weight: 900;
}
.patent-text p {
  margin: 0;
}
.patent-text-full {
  grid-column: 1 / -1;
}
.patent-brief-details {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
}
.patent-brief-details summary {
  color: #b8c9d5;
  font-size: 13px;
  font-weight: 850;
}
.patent-brief-details-copy {
  display: grid;
  gap: 8px;
  margin-top: 10px;
  padding: 12px 14px;
  border-radius: 13px;
  background: rgba(6,18,28,.28);
}
.patent-brief-details-copy p {
  margin: 0;
  color: #cbd9e2;
  line-height: 1.55;
}
.standalone-query-summary {
  margin-bottom: 18px;
}
@media (max-width: 760px) {
  .patent-card-head,
  .patent-brief-grid {
    grid-template-columns: 1fr;
    display: grid;
  }
  .patent-card-score {
    width: fit-content;
  }
}
.official-step-example-diagram .official-step-figures {
  margin: 0 13px 13px !important;
}

/* v43 final: официальный текст без визуальной каши; выделенным остаётся только блок ПРИМЕР. */
.official-step-verbatim {
  max-width: 980px !important;
}
.official-step-source {
  display: grid !important;
  gap: 9px !important;
  max-width: 980px !important;
}
.official-source-p,
.official-source-formula,
.official-source-note p,
.official-source-note pre,
.official-source-note-cont,
.official-source-warning-copy,
.official-source-rule,
.official-source-rule p,
.official-source-key,
.official-source-emphasis {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #d7e2ea !important;
  font-family: var(--font-sans) !important;
  font-size: 14px !important;
  font-weight: 450 !important;
  line-height: 1.68 !important;
}
.official-source-formula,
.official-source-note pre {
  white-space: pre-wrap !important;
}
.official-source-key,
.official-source-emphasis,
.official-source-rule > b,
.official-source-important-line,
.official-step-verbatim .official-key-line,
.official-step-verbatim .official-important-line {
  color: #d7e2ea !important;
  font-weight: 450 !important;
}
.official-source-notes,
.official-source-warning {
  display: grid !important;
  gap: 8px !important;
  margin: 7px 0 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
.official-source-notes h3,
.official-source-warning h3 {
  margin: 0 !important;
  color: #aebfca !important;
  font-size: 13px !important;
  font-weight: 750 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}
.official-source-note {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}
.official-source-note > span {
  display: none !important;
}
.official-source-inline-example,
.official-source-example {
  color: #eadca9 !important;
}
.official-source-example {
  display: grid !important;
  gap: 10px !important;
  margin: 11px 0 13px !important;
  padding: 14px 16px !important;
  border: 1px solid rgba(245,196,81,.28) !important;
  border-radius: 15px !important;
  background: linear-gradient(135deg, rgba(40,30,8,.46), rgba(9,23,32,.38)) !important;
}
.official-source-example h3 {
  margin: 0 !important;
  color: #f4cf74 !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
}
.official-source-example .official-source-p,
.official-source-example .official-source-formula,
.official-source-example-copy,
.official-source-inline-example {
  color: #eadca9 !important;
  font-weight: 650 !important;
}
.official-source-example .official-source-formula {
  padding-left: 0 !important;
}
.official-step-example-duplicate {
  max-width: 940px !important;
  margin-top: 14px !important;
}

/* v43 final: аккуратный список патентов, без служебных строк и дублирующих экспортных кнопок. */
.quota-box,
.patent-export-actions,
.patent-export-bar,
.patent-match-details,
.patent-card-meta {
  display: none !important;
}
.ajax-toast-warning {
  box-shadow: inset 3px 0 #b58b43, 0 18px 45px rgba(0,0,0,.34) !important;
}
.patent-results-list {
  display: grid !important;
  gap: 22px !important;
  margin-top: 22px !important;
}
.patent-results-header {
  display: flex !important;
  align-items: flex-end !important;
  justify-content: space-between !important;
  gap: 16px !important;
  padding-bottom: 2px !important;
}
.patent-results-header h3 {
  margin: 4px 0 0 !important;
  color: #eef5f8 !important;
  font-size: 22px !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;
}
.patent-results-group {
  display: grid !important;
  gap: 12px !important;
}
.patent-mode-heading {
  display: flex !important;
  align-items: baseline !important;
  gap: 9px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  color: #dbe7ee !important;
  font-size: 16px !important;
  font-weight: 850 !important;
}
.patent-mode-heading > span,
.patent-mode-heading .muted {
  color: #8fa3b2 !important;
  font-size: 13px !important;
  font-weight: 650 !important;
}
.patent-card-stack,
.patent-result-list,
.patent-card-list {
  display: grid !important;
  gap: 18px !important;
}
.patent-result-card {
  display: grid !important;
  gap: 16px !important;
  margin: 0 !important;
  padding: 20px !important;
  border: 1px solid rgba(104,132,153,.22) !important;
  border-radius: 18px !important;
  background: linear-gradient(145deg, rgba(11,29,43,.82), rgba(8,20,30,.72)) !important;
  box-shadow: 0 18px 45px rgba(0,0,0,.18) !important;
}
.patent-card-head {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 16px !important;
  margin: 0 !important;
}
.patent-title-block,
.patent-card-title {
  display: grid !important;
  gap: 7px !important;
  min-width: 0 !important;
}
.patent-card-number {
  color: #f4cf74 !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  letter-spacing: .015em !important;
}
.patent-card-head h4 {
  margin: 0 !important;
  color: #f3f8fb !important;
  font-size: 17px !important;
  font-weight: 850 !important;
  line-height: 1.35 !important;
}
.patent-source-link,
.patent-card-source {
  width: fit-content !important;
  color: #7ed5ff !important;
  font-size: 13px !important;
  font-weight: 750 !important;
  text-decoration: none !important;
}
.patent-source-link:hover,
.patent-card-source:hover {
  color: #b2e7ff !important;
  text-decoration: underline !important;
  text-underline-offset: 3px !important;
}
.patent-card-score {
  flex: 0 0 auto !important;
  padding: 5px 9px !important;
  border: 1px solid rgba(245,196,81,.22) !important;
  border-radius: 999px !important;
  color: #f6d066 !important;
  background: rgba(245,196,81,.08) !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  white-space: nowrap !important;
}
.patent-card-body,
.patent-brief-grid,
.patent-text-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 14px !important;
}
.patent-text-block,
.patent-text {
  margin: 0 !important;
  padding: 14px 15px !important;
  border: 1px solid rgba(104,132,153,.16) !important;
  border-radius: 14px !important;
  background: rgba(6,18,28,.36) !important;
  color: #dbe7ee !important;
  line-height: 1.6 !important;
}
.patent-text-block b,
.patent-text b {
  display: block !important;
  margin: 0 0 7px !important;
  color: #ffffff !important;
  font-size: 13px !important;
  font-weight: 900 !important;
}
.patent-text-block p,
.patent-text p {
  margin: 0 !important;
}
.patent-text-block-wide,
.patent-text-full {
  grid-column: 1 / -1 !important;
}
.patent-brief-details {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
}
.patent-brief-details summary {
  color: #b8c9d5 !important;
  font-size: 13px !important;
  font-weight: 850 !important;
}
.patent-brief-details p {
  margin: 8px 0 0 !important;
  padding: 10px 12px !important;
  border-radius: 12px !important;
  background: rgba(6,18,28,.28) !important;
  color: #cbd9e2 !important;
  line-height: 1.55 !important;
}
@media (max-width: 760px) {
  .patent-card-head,
  .patent-card-body,
  .patent-brief-grid,
  .patent-text-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
  }
  .patent-card-score {
    width: fit-content !important;
  }
}

/* v43.1: итоговый минимализм описаний шагов и карточек патентов. */
.official-step-source-simple .official-source-heading {
  margin: 14px 0 6px !important;
  color: #d7e3eb !important;
  font-size: 14px !important;
  font-weight: 650 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}
.official-step-verbatim .official-inline-reference {
  color: inherit !important;
  font-weight: inherit !important;
  text-decoration: underline !important;
  text-decoration-color: rgba(143,208,255,.32) !important;
  text-underline-offset: 3px !important;
}
.official-step-verbatim .official-inline-reference:hover {
  color: #cfeaff !important;
  text-decoration-color: currentColor !important;
}
.patent-results {
  display: grid !important;
  gap: 18px !important;
  margin-top: 22px !important;
}
.patent-results-head {
  display: flex !important;
  align-items: flex-end !important;
  justify-content: space-between !important;
  gap: 16px !important;
  padding-bottom: 2px !important;
}
.patent-results-head h3 {
  margin: 4px 0 0 !important;
  color: #eef5f8 !important;
  font-size: 22px !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;
}
.patent-results-count {
  flex: 0 0 auto !important;
  padding: 5px 10px !important;
  border-radius: 999px !important;
  color: #15190d !important;
  background: #f5c451 !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  white-space: nowrap !important;
}
.patent-mode-chip {
  justify-self: start !important;
  padding: 6px 10px !important;
  border-radius: 999px !important;
  color: #bcd0de !important;
  background: rgba(92,122,146,.18) !important;
  font-size: 12px !important;
  font-weight: 800 !important;
}
@media (max-width: 760px) {
  .patent-results-head {
    display: grid !important;
  }
  .patent-results-count {
    justify-self: start !important;
  }
}

/* v43-final: шаги АРИЗ без визуальной каши — обычный текст, выделены только примеры. */
.official-step-verbatim {
  max-width: 1040px !important;
  white-space: normal !important;
  color: #d7e2ea !important;
  line-height: 1.68 !important;
}
.official-step-verbatim .official-step-source {
  display: grid !important;
  gap: 7px !important;
  max-width: 1040px !important;
}
.official-step-verbatim :where(
  .official-source-p,
  .official-source-formula,
  .official-source-note-cont,
  .official-source-note p,
  .official-source-note pre,
  .official-source-rule p,
  .official-source-warning-copy,
  .official-source-key,
  .official-source-emphasis,
  .official-json-important,
  .official-json-key,
  .official-json-note
) {
  margin: 0 0 8px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #d7e2ea !important;
  font-family: var(--font-sans) !important;
  font-size: 14px !important;
  font-weight: 450 !important;
  line-height: 1.68 !important;
}
.official-step-verbatim :where(.official-source-formula, .official-source-note pre) {
  white-space: pre-wrap !important;
}
.official-step-verbatim :where(.official-source-rule, .official-source-note, .official-source-notes, .official-source-warning) {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
.official-step-verbatim .official-source-note > span,
.official-step-verbatim .official-source-rule > b {
  display: none !important;
}
.official-step-verbatim .official-source-note-cont {
  margin-left: 0 !important;
}
.official-step-verbatim .official-source-heading,
.official-step-verbatim :where(.official-source-notes h3, .official-source-warning h3) {
  margin: 10px 0 2px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: #c8d6df !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
  line-height: 1.45 !important;
  text-transform: none !important;
}
.official-step-verbatim .official-source-example {
  display: grid !important;
  gap: 10px !important;
  margin: 12px 0 14px !important;
  padding: 14px 16px !important;
  border: 1px solid rgba(245,196,81,.28) !important;
  border-radius: 15px !important;
  background: linear-gradient(135deg, rgba(42,31,8,.48), rgba(8,22,32,.34)) !important;
  box-shadow: inset 3px 0 rgba(245,196,81,.42) !important;
}
.official-step-verbatim .official-source-example h3,
.official-step-verbatim .official-json-example-heading {
  margin: 0 !important;
  padding: 0 !important;
  color: #f4cf74 !important;
  background: transparent !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: .08em !important;
  line-height: 1.2 !important;
  text-transform: uppercase !important;
}
.official-step-verbatim :where(
  .official-source-example .official-source-p,
  .official-source-example .official-source-formula,
  .official-source-example-copy,
  .official-source-inline-example,
  .official-json-example,
  .official-json-example-heading
) {
  color: #eadca9 !important;
  font-weight: 650 !important;
}
.official-step-verbatim .official-step-figures {
  margin-top: 4px !important;
}
.official-step-example-duplicate {
  max-width: 940px !important;
  margin-top: 14px !important;
  border-color: rgba(245,196,81,.18) !important;
  background: rgba(20,27,22,.25) !important;
}

/* v43-final: патенты — один заголовок, отдельные карточки, без markdown/json и служебных строк. */
.quota-box,
.patent-export-actions,
.patent-export-bar,
.patent-match-details,
.patent-card-meta {
  display: none !important;
}
.patent-results-list {
  display: grid !important;
  gap: 20px !important;
  margin-top: 22px !important;
}
.patent-results-header {
  display: flex !important;
  align-items: flex-end !important;
  justify-content: space-between !important;
  gap: 18px !important;
  margin: 0 !important;
  padding: 0 0 2px !important;
}
.patent-results-header h3 {
  margin: 3px 0 0 !important;
  color: #edf4f8 !important;
  font-size: 22px !important;
  font-weight: 850 !important;
  line-height: 1.2 !important;
}
.patent-results-group {
  display: grid !important;
  gap: 12px !important;
}
.patent-results-list .patent-mode-heading {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}
.patent-results-list .patent-mode-heading b {
  color: #dce8ef !important;
  font-size: 15px !important;
  font-weight: 850 !important;
}
.patent-results-list .patent-mode-heading span {
  margin-left: 8px !important;
  color: #8fa3b2 !important;
  background: transparent !important;
  font-size: 13px !important;
  font-weight: 700 !important;
}
.patent-card-stack {
  display: grid !important;
  gap: 18px !important;
}
.patent-result-card {
  display: grid !important;
  gap: 15px !important;
  margin: 0 !important;
  padding: 20px !important;
  border: 1px solid rgba(104,132,153,.22) !important;
  border-radius: 18px !important;
  background: linear-gradient(145deg, rgba(11,29,43,.86), rgba(8,20,30,.76)) !important;
  box-shadow: 0 18px 45px rgba(0,0,0,.18) !important;
}
.patent-card-head {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 16px !important;
  margin: 0 !important;
}
.patent-card-title {
  display: grid !important;
  gap: 7px !important;
  min-width: 0 !important;
}
.patent-card-number {
  color: #f4cf74 !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  letter-spacing: .015em !important;
}
.patent-card-title h4,
.patent-card-head h4 {
  margin: 0 !important;
  color: #f3f8fb !important;
  font-size: 17px !important;
  font-weight: 850 !important;
  line-height: 1.35 !important;
}
.patent-card-source {
  width: fit-content !important;
  color: #7ed5ff !important;
  font-size: 13px !important;
  font-weight: 750 !important;
  text-decoration: none !important;
}
.patent-card-source:hover {
  color: #b2e7ff !important;
  text-decoration: underline !important;
  text-underline-offset: 3px !important;
}
.patent-card-score {
  flex: 0 0 auto !important;
  padding: 5px 9px !important;
  border: 1px solid rgba(245,196,81,.22) !important;
  border-radius: 999px !important;
  color: #f6d066 !important;
  background: rgba(245,196,81,.08) !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  white-space: nowrap !important;
}
.patent-brief-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0,1fr)) !important;
  gap: 14px !important;
}
.patent-text {
  margin: 0 !important;
  padding: 14px 15px !important;
  border: 1px solid rgba(104,132,153,.16) !important;
  border-radius: 14px !important;
  background: rgba(6,18,28,.36) !important;
  color: #dbe7ee !important;
  line-height: 1.6 !important;
}
.patent-text b {
  display: block !important;
  margin: 0 0 7px !important;
  color: #fff !important;
  font-size: 13px !important;
  font-weight: 900 !important;
}
.patent-text p {
  margin: 0 !important;
}
.patent-text-full {
  grid-column: 1 / -1 !important;
}
.patent-brief-details {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
}
.patent-brief-details summary {
  color: #b8c9d5 !important;
  font-size: 13px !important;
  font-weight: 850 !important;
}
.patent-brief-details-copy {
  display: grid !important;
  gap: 8px !important;
  margin-top: 10px !important;
  padding: 12px 14px !important;
  border-radius: 13px !important;
  background: rgba(6,18,28,.28) !important;
}
.patent-brief-details-copy p {
  margin: 0 !important;
  color: #cbd9e2 !important;
  line-height: 1.55 !important;
}
@media (max-width: 760px) {
  .patent-card-head,
  .patent-brief-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
  }
  .patent-card-score {
    width: fit-content !important;
  }
}

/* v44: MMЧ editor, cleaner patent search, cleaner table 1 diagrams */
.mch-sketch-field {
  gap: 12px !important;
}
.mch-modeler {
  display: grid !important;
  gap: 14px !important;
  padding: 16px !important;
  border: 1px solid rgba(104,132,153,.22) !important;
  border-radius: 18px !important;
  background: linear-gradient(180deg, rgba(5,20,31,.76), rgba(4,15,24,.9)) !important;
}
.mch-modeler-head {
  display: flex !important;
  justify-content: space-between !important;
  gap: 14px !important;
  align-items: flex-start !important;
}
.mch-modeler-head b {
  display: block !important;
  color: #fff !important;
  font-size: 16px !important;
  font-weight: 900 !important;
}
.mch-modeler-head p {
  margin: 4px 0 0 !important;
  color: #b8d1df !important;
  line-height: 1.55 !important;
}
.mch-toolbox {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  padding: 10px !important;
  border: 1px solid rgba(104,132,153,.16) !important;
  border-radius: 15px !important;
  background: rgba(4,16,25,.62) !important;
}
.mch-tool {
  border: 1px solid rgba(104,132,153,.34) !important;
  border-radius: 999px !important;
  padding: 8px 12px !important;
  background: rgba(11,31,44,.8) !important;
  color: #d8effb !important;
  font-weight: 850 !important;
  cursor: pointer !important;
}
.mch-tool:hover,
.mch-tool.is-active {
  border-color: rgba(119,234,214,.75) !important;
  background: rgba(119,234,214,.13) !important;
  color: #fff !important;
}
.mch-tool-danger:hover {
  border-color: rgba(255,138,154,.62) !important;
  background: rgba(255,138,154,.12) !important;
}
.mch-frame-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 14px !important;
}
.mch-frame {
  display: grid !important;
  gap: 10px !important;
  min-width: 0 !important;
  padding: 12px !important;
  border: 1px solid rgba(104,132,153,.18) !important;
  border-radius: 16px !important;
  background: rgba(2,13,21,.54) !important;
}
.mch-frame.is-active {
  border-color: rgba(119,234,214,.58) !important;
  box-shadow: 0 0 0 1px rgba(119,234,214,.12), 0 16px 40px rgba(0,0,0,.18) !important;
}
.mch-frame header {
  display: flex !important;
  gap: 9px !important;
  align-items: center !important;
  color: #fff !important;
}
.mch-frame header span {
  display: inline-grid !important;
  place-items: center !important;
  width: 28px !important;
  height: 28px !important;
  border-radius: 999px !important;
  background: rgba(245,196,81,.16) !important;
  color: #ffd764 !important;
  font-weight: 950 !important;
}
.mch-frame header b {
  font-size: 14px !important;
  font-weight: 900 !important;
}
.mch-canvas-shell {
  overflow: hidden !important;
  border: 1px solid rgba(104,132,153,.18) !important;
  border-radius: 14px !important;
  background: #051620 !important;
}
.mch-frame canvas {
  display: block !important;
  width: 100% !important;
  height: 275px !important;
  cursor: crosshair !important;
  touch-action: none !important;
}
.mch-frame canvas:focus {
  outline: 2px solid rgba(119,234,214,.55) !important;
  outline-offset: -2px !important;
}
.mch-frame label {
  display: grid !important;
  gap: 6px !important;
  color: #b8d1df !important;
  font-size: 12px !important;
  font-weight: 850 !important;
}
.mch-frame textarea {
  min-height: 82px !important;
  resize: vertical !important;
  border-radius: 12px !important;
  background: rgba(2,12,19,.78) !important;
}
.mch-source-details {
  border: 1px dashed rgba(104,132,153,.28) !important;
  border-radius: 14px !important;
  padding: 12px !important;
  background: rgba(3,14,22,.46) !important;
}
.mch-source-details summary {
  cursor: pointer !important;
  color: #d8effb !important;
  font-weight: 900 !important;
}
.mch-source-details summary small {
  display: block !important;
  margin-top: 2px !important;
  color: #8fb4c8 !important;
  font-weight: 700 !important;
}
.mch-source-details p {
  margin: 10px 0 !important;
  color: #a8c3d2 !important;
}
.mch-source-details textarea {
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace !important;
  font-size: 12px !important;
}
.mch-official-figures {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0,1fr)) !important;
  gap: 12px !important;
  margin: 14px 0 !important;
}
.mch-official-frame {
  padding: 12px !important;
  border: 1px solid rgba(104,132,153,.20) !important;
  border-radius: 14px !important;
  background: rgba(5,20,31,.72) !important;
}
.mch-official-frame b {
  display: block !important;
  margin-bottom: 8px !important;
  color: #fff !important;
  font-size: 13px !important;
  font-weight: 900 !important;
}
.mch-official-frame svg {
  width: 100% !important;
  height: auto !important;
  display: block !important;
}
.mch-official-frame svg text {
  fill: #d8effb !important;
  font: 700 11px system-ui, sans-serif !important;
  text-anchor: middle !important;
}
.mch-zone {
  fill: rgba(119,234,214,.06) !important;
  stroke: rgba(119,234,214,.45) !important;
  stroke-width: 3 !important;
  stroke-dasharray: 8 7 !important;
}
.mch-zone-active,
.mch-device {
  fill: rgba(119,234,214,.12) !important;
  stroke: rgba(119,234,214,.88) !important;
  stroke-width: 3 !important;
}
.mch-lightning {
  fill: none !important;
  stroke: #ffd764 !important;
  stroke-width: 5 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}
.mch-people-neutral circle,
.mch-people-neutral path,
.mch-people-active circle,
.mch-people-active path {
  fill: none !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
  stroke-width: 3 !important;
}
.mch-people-neutral circle,
.mch-people-active circle {
  fill: currentColor !important;
}
.mch-people-neutral {
  color: #d8effb !important;
  stroke: #d8effb !important;
}
.mch-people-active {
  color: #77ead6 !important;
  stroke: #77ead6 !important;
}
.mch-field-arrow {
  fill: none !important;
  stroke: #77ead6 !important;
  stroke-width: 4 !important;
  stroke-linecap: round !important;
}
.mch-field-arrow + text,
.mch-ground {
  fill: none !important;
  stroke: #d8effb !important;
  stroke-width: 3 !important;
  stroke-linecap: round !important;
}

.triz-conflict-svg-v44 {
  width: min(100%, 300px) !important;
  min-height: 150px !important;
  padding: 10px !important;
  border-radius: 12px !important;
  background: rgba(2,13,21,.76) !important;
}
.triz-conflict-svg-v44 .triz-node-label {
  fill: #dff6ff !important;
  font: 900 21px system-ui, sans-serif !important;
}
.triz-conflict-svg-v44 path,
.triz-conflict-svg-v44 line {
  vector-effect: non-scaling-stroke !important;
  fill: none !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}
.triz-conflict-svg-v44 .triz-link-useful path {
  stroke: #77ead6 !important;
  stroke-width: 4 !important;
}
.triz-conflict-svg-v44 .triz-link-harmful path {
  stroke: #ff8a9a !important;
  stroke-width: 4 !important;
}
.triz-conflict-svg-v44 .triz-link-missing path,
.triz-conflict-svg-v44 .triz-link-unregulated path {
  stroke: #dbe7ee !important;
  stroke-width: 4 !important;
  stroke-dasharray: 10 9 !important;
}
.triz-conflict-svg-v44 .triz-link-unknown path {
  stroke: #dbe7ee !important;
  stroke-width: 4 !important;
  stroke-dasharray: 2 10 !important;
}
.triz-conflict-svg-v44 .triz-system-line {
  stroke: rgba(219,231,238,.62) !important;
  stroke-width: 4 !important;
}
.triz-conflict-svg-v44 .triz-action-dot {
  fill: #dbe7ee !important;
  stroke: none !important;
}
.triz-conflict-svg-v44 .triz-marker-useful { fill: #77ead6 !important; }
.triz-conflict-svg-v44 .triz-marker-harmful { fill: #ff8a9a !important; }
.triz-conflict-svg-v44 .triz-marker-missing,
.triz-conflict-svg-v44 .triz-marker-unknown { fill: #dbe7ee !important; }

.standalone-search-layout {
  grid-template-columns: minmax(0, 1fr) !important;
  max-width: 980px !important;
  margin-inline: auto !important;
}
.standalone-search-form {
  gap: 16px !important;
}
.standalone-search-form .panel-head {
  margin-bottom: 0 !important;
}
.patent-public-hero-simple p {
  max-width: 860px !important;
}
.patent-mode-field .patent-mode-lead {
  margin: 4px 0 9px !important;
  color: #a8c3d2 !important;
  line-height: 1.45 !important;
}
.patent-query-fields {
  gap: 14px !important;
}
.patent-query-section {
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}
.patent-query-control-simple {
  display: grid !important;
  gap: 8px !important;
}
.patent-query-control-simple > span {
  display: grid !important;
  gap: 3px !important;
}
.patent-query-control-simple b {
  color: #fff !important;
  font-size: 15px !important;
  font-weight: 900 !important;
}
.patent-query-control-simple small {
  color: #a8c3d2 !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
}
.patent-field-hint {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 8px !important;
  margin: 4px 0 0 !important;
  color: #a8c3d2 !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
}
.patent-field-hint button {
  margin-left: auto !important;
  border: 0 !important;
  background: transparent !important;
  color: #79d7ff !important;
  font-weight: 900 !important;
  cursor: pointer !important;
}
.search-history-inline,
.search-history-compact {
  border: 1px solid rgba(104,132,153,.18) !important;
  border-radius: 16px !important;
  background: rgba(5,20,31,.58) !important;
  padding: 12px 14px !important;
}
.search-history-inline summary,
.search-history-compact summary {
  cursor: pointer !important;
  display: flex !important;
  justify-content: space-between !important;
  gap: 12px !important;
  color: #d8effb !important;
  font-weight: 900 !important;
}
.search-history-inline summary small,
.search-history-compact summary small {
  color: #8fb4c8 !important;
  font-weight: 700 !important;
}

@media (max-width: 1040px) {
  .mch-frame-grid,
  .mch-official-figures {
    grid-template-columns: 1fr !important;
  }
  .mch-modeler-head {
    display: grid !important;
  }
}
@media (max-width: 720px) {
  .mch-frame canvas {
    height: 245px !important;
  }
  .mch-toolbox {
    gap: 6px !important;
  }
  .mch-tool {
    padding: 7px 10px !important;
  }
  .patent-field-hint button {
    margin-left: 0 !important;
  }
}
.mch-official-frame marker path {
  fill: #77ead6 !important;
  stroke: none !important;
}

/* v44 — ММЧ, упрощённый патентный поиск и аккуратные схемы таблицы 1 */
.mch-sketch-field {
  display: grid !important;
  gap: 14px !important;
}
.mch-modeler {
  display: grid;
  gap: 16px;
}
.mch-modeler-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  padding: 15px 17px;
  border-radius: 16px;
  background: rgba(8, 24, 36, .72);
  box-shadow: inset 3px 0 #4c7188;
}
.mch-modeler-head b {
  display: block;
  margin-bottom: 4px;
  color: #e2edf4;
  font-size: 16px;
}
.mch-modeler-head p {
  margin: 0;
  color: #aabcca;
  line-height: 1.55;
}
.mch-frame-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}
.mch-frame {
  display: grid;
  gap: 11px;
  min-width: 0;
  padding: 15px;
  border-radius: 18px;
  background: rgba(7, 19, 29, .68);
  border: 1px solid rgba(82, 111, 135, .32);
}
.mch-frame header {
  display: flex;
  align-items: center;
  gap: 10px;
}
.mch-frame header span {
  display: inline-grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border-radius: 999px;
  color: #152012;
  background: #f5c451;
  font-weight: 900;
}
.mch-frame header b {
  color: #dde9f1;
  line-height: 1.2;
}
.mch-frame-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}
.mch-tool {
  min-height: 30px;
  padding: 5px 9px;
  border: 0;
  border-radius: 999px;
  color: #cde0ec;
  background: rgba(28, 48, 64, .9);
  font-size: 12px;
  font-weight: 850;
}
.mch-tool:hover,
.mch-frame.is-drawing [data-mmch-draw] {
  color: #152012;
  background: #f5c451;
}
.mch-tool-danger:hover {
  color: #ffe2e6;
  background: #6d2f3c;
}
.mch-canvas-shell {
  overflow: hidden;
  border-radius: 15px;
  border: 1px solid rgba(82, 111, 135, .38);
  background: #07131d;
  min-height: 250px;
}
.mch-canvas-shell canvas {
  display: block;
  width: 100%;
  height: 250px;
  touch-action: none;
  cursor: grab;
}
.mch-frame.is-drawing .mch-canvas-shell canvas {
  cursor: crosshair;
}
.mch-frame label {
  display: grid;
  gap: 6px;
  color: #b8cad6;
  font-size: 12px;
  font-weight: 800;
}
.mch-frame textarea {
  min-height: 82px;
  border: 1px solid rgba(82, 111, 135, .5);
  border-radius: 13px;
  background: #07131d;
  color: #e6eff5;
}
.mch-reference-images {
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}
.mch-reference-images > summary {
  color: #c7d7e2 !important;
}
.mch-reference-images > div {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  margin-top: 12px;
}
.mch-reference-images img {
  width: 100%;
  min-height: 180px;
  object-fit: contain;
  padding: 14px;
  border-radius: 14px;
  background: #fff;
}
.mch-source-details {
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}
.mch-source-details textarea {
  min-height: 260px;
}
.mch-official-figures {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin-top: 14px;
}
.mch-official-frame {
  padding: 13px;
  border-radius: 15px;
  background: rgba(7, 19, 29, .62);
  border: 1px solid rgba(82, 111, 135, .28);
}
.mch-official-frame b {
  display: block;
  margin-bottom: 8px;
  color: #e0ebf2;
}
.mch-official-frame svg {
  width: 100%;
  height: auto;
}
.mch-official-frame text {
  fill: #dce8f0;
  font-size: 11px;
  font-weight: 800;
  text-anchor: middle;
}
.mch-zone,
.mch-device {
  fill: rgba(245, 196, 81, .08);
  stroke: #f5c451;
  stroke-width: 3;
  stroke-dasharray: 8 6;
}
.mch-zone-active {
  fill: rgba(109, 211, 184, .12);
  stroke: #6dd3b8;
}
.mch-lightning {
  fill: none;
  stroke: #ffbd66;
  stroke-width: 5;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.mch-people-neutral circle,
.mch-people-active circle {
  fill: rgba(215, 237, 245, .14);
}
.mch-people-neutral circle,
.mch-people-neutral path {
  stroke: #cfe2ee;
  stroke-width: 3;
  fill: none;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.mch-people-active circle,
.mch-people-active path,
.mch-field-arrow,
.mch-ground {
  stroke: #6dd3b8;
  stroke-width: 3;
  fill: none;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.ariz-table-diagram.triz-conflict-svg {
  width: 100%;
  max-width: 270px;
  min-height: 150px;
}
.ariz-table-diagram.triz-conflict-svg text {
  fill: #e7f1f7;
  font-weight: 900;
  font-size: 20px;
}
.ariz-table-diagram.triz-conflict-svg path,
.ariz-table-diagram.triz-conflict-svg line {
  fill: none;
  stroke-width: 4;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.ariz-table-diagram.triz-conflict-svg .triz-system-line {
  stroke: rgba(180, 199, 211, .72);
  stroke-width: 3;
}
.ariz-table-diagram.triz-conflict-svg .triz-action-dot {
  fill: #76ace8;
}
.patent-public-hero-simple p {
  max-width: 860px;
}
.standalone-search-layout {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  gap: 18px !important;
  max-width: 920px !important;
  margin: 0 auto !important;
}
.standalone-search-form {
  padding: 30px !important;
}
.standalone-search-form .panel-head {
  margin-bottom: 18px !important;
}
.patent-mode-field .patent-mode-lead {
  margin: 0 0 8px !important;
  color: #9dafbd !important;
}
.patent-query-section {
  padding: 16px 0 20px !important;
  border-top: 1px solid rgba(91, 116, 136, .22) !important;
}
.patent-query-section:first-child {
  border-top: 0 !important;
}
.patent-query-control-simple > span {
  display: grid !important;
  gap: 4px !important;
  margin-bottom: 8px !important;
}
.patent-query-control-simple > span b {
  color: #e2edf4 !important;
}
.patent-query-control-simple > span small {
  color: #8fa3b2 !important;
  line-height: 1.45 !important;
  font-weight: 500 !important;
}
.patent-field-hint {
  margin: 8px 0 0 !important;
  color: #92a8b7 !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
}
.patent-field-hint b {
  color: #cbdbe5 !important;
}
.patent-field-hint button {
  margin-left: 8px !important;
  border: 0 !important;
  background: transparent !important;
  color: #8acbff !important;
  font-size: 12px !important;
  font-weight: 850 !important;
  text-decoration: underline !important;
  text-decoration-color: transparent !important;
  text-underline-offset: 3px !important;
}
.patent-field-hint button:hover {
  color: #f5c451 !important;
  text-decoration-color: currentColor !important;
}
.search-history-inline {
  max-width: 920px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}
.search-history-inline > summary {
  color: #b6c8d5 !important;
}
@media (max-width: 980px) {
  .mch-frame-grid,
  .mch-official-figures {
    grid-template-columns: 1fr !important;
  }
}
@media (max-width: 720px) {
  .mch-reference-images > div {
    grid-template-columns: 1fr !important;
  }
  .standalone-search-form {
    padding: 22px !important;
  }
}
.mch-toolbox {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}
.mch-tool.is-active,
.mch-frame.is-active header span {
  color: #152012;
  background: #f5c451;
}
.mch-frame.is-active {
  border-color: rgba(245, 196, 81, .58);
  box-shadow: inset 0 0 0 1px rgba(245, 196, 81, .16);
}

/* v44.1 — окончательная чистка: в официальном тексте выделяется только пример; патентное поле с одной подсказкой. */
.official-step-source-simple .official-source-heading,
.official-step-verbatim .official-source-heading {
  display: none !important;
}
.official-step-verbatim :where(.official-source-p, .official-source-formula) {
  margin: 0 0 10px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #cfe0ea !important;
  font-weight: 500 !important;
  line-height: 1.62 !important;
}
.official-step-verbatim .official-source-example {
  margin: 13px 0 15px !important;
  padding: 15px 17px !important;
  border: 1px solid rgba(245, 196, 81, .32) !important;
  border-radius: 15px !important;
  background: linear-gradient(135deg, rgba(43, 32, 9, .55), rgba(7, 20, 30, .38)) !important;
  box-shadow: inset 3px 0 rgba(245, 196, 81, .5) !important;
}
.official-step-verbatim .official-source-example :where(.official-source-p, .official-source-formula) {
  color: #f0dfaa !important;
  font-weight: 650 !important;
}
.patent-query-fields-simple {
  display: grid !important;
  gap: 15px !important;
}
.patent-query-section-simple {
  padding: 0 0 16px !important;
  border-top: 0 !important;
}
.patent-query-section-simple + .patent-query-section-simple {
  padding-top: 16px !important;
  border-top: 1px solid rgba(91, 116, 136, .2) !important;
}
.patent-query-control-simple {
  display: grid !important;
  gap: 8px !important;
}
.patent-query-title {
  margin: 0 !important;
}
.patent-query-title b {
  color: #eaf3f8 !important;
  font-size: 15px !important;
  font-weight: 900 !important;
}
.patent-query-hint {
  display: block !important;
  margin: 0 0 2px !important;
  color: #9fb5c4 !important;
  font-size: 13px !important;
  font-weight: 550 !important;
  line-height: 1.45 !important;
}
.patent-query-control-simple textarea {
  margin-top: 0 !important;
}
.search-primer,
.search-mode-help {
  display: none !important;
}
.triz-conflict-svg-v44 {
  width: min(100%, 310px) !important;
  min-height: 162px !important;
}
.triz-conflict-svg-v44 .triz-node-label {
  font-size: 22px !important;
}
.triz-conflict-svg-v44 :where(path, line) {
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}

/* v44: optional official notes, simple patent search, MCH sketch editor, cleaner table-1 arrows. */
.optional-mark {
  color: #7f94a5;
  font-size: 12px;
  font-weight: 650;
}
.official-answer-field:has(.optional-mark) textarea:not([required]) {
  min-height: 150px;
}

/* ММЧ: быстрый скетч вместо обязательного текстового поля. */
.mch-sketch-field {
  display: grid;
  gap: 10px;
}
.mch-modeler {
  display: grid;
  gap: 14px;
  max-width: 1120px;
}
.mch-modeler-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  padding: 14px 16px;
  border: 1px solid rgba(104,132,153,.18);
  border-radius: 16px;
  background: rgba(7,19,29,.34);
}
.mch-modeler-head b {
  display: block;
  margin-bottom: 4px;
  color: #e8f0f5;
  font-size: 16px;
  font-weight: 900;
}
.mch-modeler-head p {
  max-width: 860px;
  margin: 0;
  color: #a9bbc7;
  line-height: 1.55;
}
.mch-toolbox {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}
.mch-tool {
  min-height: 32px;
  padding: 7px 10px;
  border: 0;
  border-radius: 10px;
  background: rgba(23,43,58,.76);
  color: #bdd0dc;
  font-size: 12px;
  font-weight: 850;
  cursor: pointer;
}
.mch-tool:hover,
.mch-tool.is-active {
  background: #20394d;
  color: #f3f8fb;
}
.mch-tool.is-active {
  box-shadow: inset 0 0 0 1px rgba(245,196,81,.56);
  color: #f4cf74;
}
.mch-tool-danger {
  margin-left: auto;
  color: #e0a5ad;
  background: rgba(76,32,44,.44);
}
.mch-frame-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}
.mch-frame {
  display: grid;
  gap: 10px;
  min-width: 0;
  padding: 14px;
  border: 1px solid rgba(104,132,153,.20);
  border-radius: 17px;
  background: rgba(7,19,29,.44);
}
.mch-frame.is-active {
  border-color: rgba(245,196,81,.38);
  box-shadow: inset 0 0 0 1px rgba(245,196,81,.12);
}
.mch-frame header {
  display: flex;
  align-items: center;
  gap: 9px;
}
.mch-frame header span {
  display: grid;
  width: 28px;
  height: 28px;
  place-items: center;
  border-radius: 999px;
  color: #15190d;
  background: #f5c451;
  font-size: 13px;
  font-weight: 950;
}
.mch-frame header b {
  color: #e4edf2;
  font-size: 13px;
  font-weight: 900;
  line-height: 1.25;
}
.mch-canvas-shell {
  position: relative;
  width: 100%;
  height: 280px;
  overflow: hidden;
  border: 1px solid rgba(55,82,103,.82);
  border-radius: 14px;
  background: #06111a;
}
.mch-canvas-shell canvas {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: block;
  touch-action: none;
  cursor: crosshair;
}
.mch-canvas-shell canvas:focus-visible {
  outline: 2px solid #e0b44d;
  outline-offset: -3px;
}
.mch-frame label {
  display: grid;
  gap: 6px;
  color: #d8e4ec;
  font-size: 12px;
  font-weight: 800;
}
.mch-frame textarea,
.mch-source-details textarea {
  width: 100%;
  border: 1px solid #2a4054;
  border-radius: 12px;
  outline: 0;
  background: #07131d;
  color: #e8f0f6;
  padding: 10px 11px;
}
.mch-frame textarea {
  min-height: 72px;
  line-height: 1.48;
}
.mch-frame textarea:focus,
.mch-source-details textarea:focus {
  border-color: #d9ae46;
  box-shadow: 0 0 0 3px rgba(245,196,81,.1);
}
.mch-source-details,
.mch-reference-images {
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
}
.mch-source-details summary,
.mch-reference-images summary {
  display: inline-flex;
  align-items: baseline;
  gap: 8px;
  color: #a9bbc7;
  font-size: 13px;
  font-weight: 850;
  cursor: pointer;
}
.mch-source-details summary small,
.mch-reference-images summary small {
  color: #667d8f;
  font-size: 11px;
  font-weight: 650;
}
.mch-source-details p {
  max-width: 800px;
  margin: 10px 0;
  color: #8498a8;
  font-size: 12px;
  line-height: 1.52;
}
.mch-source-details textarea {
  min-height: 220px;
  resize: vertical;
  font-family: var(--font-mono);
  font-size: 12px;
  line-height: 1.55;
  color: #b9cbd7;
}
.mch-reference-images > div {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-top: 12px;
  padding: 14px;
  border: 1px solid rgba(104,132,153,.18);
  border-radius: 16px;
  background: rgba(6,18,28,.36);
}
.mch-reference-images img {
  width: 100%;
  min-height: 130px;
  object-fit: contain;
  padding: 10px;
  border-radius: 12px;
  background: #fff;
}
.mch-official-figures {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}
.mch-official-frame {
  display: grid;
  gap: 8px;
  padding: 10px;
  border-radius: 13px;
  background: rgba(6,18,28,.38);
}
.mch-official-frame b {
  color: #f4cf74;
  font-size: 12px;
}
.mch-official-frame svg {
  width: 100%;
  height: auto;
}
.mch-official-frame text {
  fill: #dce8ef;
  font: 700 11px var(--font-sans);
  text-anchor: middle;
}
.mch-zone,
.mch-device {
  fill: rgba(109,211,184,.10);
  stroke: rgba(109,211,184,.62);
  stroke-width: 3;
}
.mch-zone-active { fill: rgba(245,196,81,.14); stroke: rgba(245,196,81,.72); }
.mch-lightning {
  fill: none;
  stroke: #ffdb75;
  stroke-width: 5;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.mch-people-neutral circle,
.mch-people-neutral path,
.mch-people-active circle,
.mch-people-active path,
.mch-field-arrow,
.mch-ground {
  fill: none;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.mch-people-neutral circle { fill: #d8effb; stroke: #d8effb; }
.mch-people-neutral path { stroke: #d8effb; stroke-width: 3; }
.mch-people-active circle { fill: #77ead6; stroke: #77ead6; }
.mch-people-active path,
.mch-field-arrow { stroke: #77ead6; stroke-width: 3; }
.mch-ground { stroke: #d8effb; stroke-width: 4; }
.mch-official-frame marker path { fill: #77ead6; }

/* Упрощённый патентный инструмент: одна инструкция сверху и по одной подсказке у поля. */
.patent-public-hero-simple {
  max-width: 980px;
  margin-bottom: 26px;
}
.patent-public-hero-simple p {
  max-width: 900px;
}
.standalone-search-layout {
  display: grid !important;
  grid-template-columns: minmax(0, 980px) !important;
  gap: 18px !important;
  justify-content: center !important;
}
.standalone-search-form {
  padding: 28px !important;
}
.standalone-search-form .panel-head {
  margin-bottom: 2px;
}
.search-primer,
.search-mode-help {
  display: none !important;
}
.search-history-inline {
  width: min(980px, 100%);
  justify-self: center;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
}
.search-history-inline > summary {
  display: inline-flex;
  align-items: baseline;
  gap: 8px;
  cursor: pointer;
  color: #a9bbc7;
  font-weight: 850;
}
.search-history-inline > summary small {
  color: #6f8495;
  font-size: 11px;
  font-weight: 650;
}
.search-history-inline .search-history-list {
  margin-top: 12px;
  padding: 12px 14px;
  border: 1px solid rgba(104,132,153,.18);
  border-radius: 16px;
  background: rgba(7,19,29,.34);
}
.patent-mode-field .field-label,
.patent-query-title b {
  color: #edf4f8;
}
.patent-mode-lead {
  max-width: 760px !important;
  margin: 4px 0 8px !important;
  color: #96aab8 !important;
}
.patent-all-mode-note-simple {
  margin: 4px 0 8px !important;
  padding: 10px 0 10px 14px !important;
  color: #c0ced7 !important;
  box-shadow: inset 3px 0 #c99e3f !important;
  background: transparent !important;
}
.patent-query-fields-simple {
  display: grid !important;
  gap: 14px !important;
}
.patent-query-section-simple {
  padding: 0 !important;
  border-top: 0 !important;
}
.patent-query-control-simple {
  display: grid !important;
  gap: 7px !important;
}
.patent-query-title,
.patent-query-hint {
  display: block !important;
}
.patent-query-hint {
  max-width: 820px;
  color: #97aaba;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.5;
}
.patent-query-control-simple textarea {
  min-height: 190px !important;
}
.patent-query-control-compact textarea {
  min-height: 120px !important;
}
.patent-tool-panel-simple {
  display: grid;
  gap: 14px;
}
.patent-tool-intro {
  max-width: 860px;
  margin: -4px 0 2px;
  color: #a9bbc7;
  line-height: 1.58;
}
.patent-project-form-simple {
  gap: 14px !important;
}
.patent-auto-preview,
.patent-manual-details {
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
}
.patent-auto-preview > summary,
.patent-manual-details > summary {
  display: inline-flex;
  align-items: baseline;
  gap: 8px;
  color: #a9bbc7;
  font-size: 13px;
  font-weight: 850;
  cursor: pointer;
}
.patent-auto-preview > summary small,
.patent-manual-details > summary small {
  color: #667d8f;
  font-size: 11px;
  font-weight: 650;
}
.patent-auto-preview pre {
  max-width: 880px;
  margin: 10px 0 0;
  padding: 12px 14px;
  border-radius: 13px;
  background: rgba(6,18,28,.46);
  color: #bfd0da;
  font-family: var(--font-sans);
  font-size: 13px;
  line-height: 1.55;
  white-space: pre-wrap;
}
.patent-manual-details .patent-query-fields-simple {
  margin-top: 12px;
}
.patent-ai-response-simple {
  display: grid;
  gap: 7px;
  margin-top: 12px;
  color: #dce7ef;
  font-weight: 800;
}
.patent-ai-response-simple small {
  color: #7f94a5;
  font-weight: 650;
}
.patent-ai-response-simple textarea {
  width: 100%;
  min-height: 105px;
  border: 1px solid #2a4054;
  border-radius: 12px;
  background: #07131d;
  color: #e8f0f6;
  padding: 10px 12px;
}
.patent-search-action {
  margin-top: 2px !important;
}

/* Таблица 1: более чистые, читаемые стрелки. */
.triz-conflict-table .triz-appendix-row {
  align-items: center !important;
  gap: 14px !important;
  padding: 18px 0 !important;
}
.triz-conflict-table .triz-appendix-diagram {
  min-width: 210px;
  padding: 10px !important;
  border-radius: 15px;
  background: rgba(5,16,25,.36);
}
.triz-conflict-svg,
.triz-conflict-svg-v44 {
  display: block !important;
  width: min(300px, 100%) !important;
  min-height: 0 !important;
  overflow: visible !important;
}
.triz-conflict-svg text {
  fill: #dbe8f0 !important;
  font: 900 18px var(--font-sans) !important;
}
.triz-conflict-svg path,
.triz-conflict-svg line {
  fill: none !important;
  stroke-width: 4 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}
.triz-conflict-svg .triz-link-useful path,
.triz-conflict-svg .triz-link-useful line { stroke: #6dd3b8 !important; }
.triz-conflict-svg .triz-link-harmful path,
.triz-conflict-svg .triz-link-harmful line { stroke: #ff8393 !important; }
.triz-conflict-svg .triz-link-missing path,
.triz-conflict-svg .triz-link-missing line { stroke: #85bff0 !important; stroke-dasharray: 13 8 !important; }
.triz-conflict-svg .triz-link-unknown path,
.triz-conflict-svg .triz-link-unknown line { stroke: #a9bdca !important; stroke-dasharray: 3 9 !important; }
.triz-conflict-svg .triz-link-unregulated path,
.triz-conflict-svg .triz-link-unregulated line { stroke: #85bff0 !important; stroke-dasharray: 18 7 4 7 !important; }
.triz-conflict-svg .triz-system-line {
  stroke: rgba(202,218,228,.68) !important;
  stroke-width: 3 !important;
}
.triz-conflict-svg .triz-action-dot {
  fill: #f4cf74 !important;
  stroke: none !important;
}
.triz-conflict-svg marker path { stroke: none !important; }
.triz-conflict-svg .triz-marker-useful { fill: #6dd3b8 !important; }
.triz-conflict-svg .triz-marker-harmful { fill: #ff8393 !important; }
.triz-conflict-svg .triz-marker-missing { fill: #85bff0 !important; }
.triz-conflict-svg .triz-marker-unknown { fill: #a9bdca !important; }

@media (max-width: 1050px) {
  .mch-frame-grid,
  .mch-official-figures {
    grid-template-columns: 1fr;
  }
  .mch-canvas-shell { height: 300px; }
}
@media (max-width: 760px) {
  .mch-modeler-head {
    display: grid;
  }
  .mch-tool-danger {
    margin-left: 0;
  }
  .mch-tool {
    flex: 1 1 140px;
  }
  .mch-reference-images > div,
  .patent-brief-grid {
    grid-template-columns: 1fr !important;
  }
  .standalone-search-form {
    padding: 21px !important;
  }
  .triz-conflict-table .triz-appendix-diagram {
    min-width: 0;
  }
}
.patent-quick-instruction {
  margin: 0 !important;
  padding: 12px 14px !important;
  border: 1px solid rgba(245,196,81,.18) !important;
  border-radius: 14px !important;
  background: rgba(245,196,81,.07) !important;
  color: #d8effb !important;
  line-height: 1.55 !important;
}
.mch-reference-images > .mch-official-figures {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 14px !important;
  margin-top: 12px !important;
}
@media (max-width: 980px) {
  .mch-reference-images > .mch-official-figures { grid-template-columns: 1fr !important; }
}
.mch-official-frame svg text {
  fill: #d8effb !important;
  stroke: none !important;
}
.mch-reference-images {
  border: 1px solid rgba(104,132,153,.18) !important;
  border-radius: 14px !important;
  padding: 12px !important;
  background: rgba(3,14,22,.42) !important;
}
.mch-reference-images summary {
  cursor: pointer !important;
  display: flex !important;
  justify-content: space-between !important;
  gap: 12px !important;
  color: #d8effb !important;
  font-weight: 900 !important;
}
.mch-reference-images summary small {
  color: #8fb4c8 !important;
  font-weight: 700 !important;
}
.mch-reference-images > .mch-gif-reference {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 14px !important;
  margin-top: 12px !important;
  padding: 14px !important;
  border: 1px solid rgba(104,132,153,.18) !important;
  border-radius: 16px !important;
  background: rgba(6,18,28,.36) !important;
}
.mch-gif-reference img {
  width: 100% !important;
  min-height: 130px !important;
  object-fit: contain !important;
  padding: 10px !important;
  border-radius: 12px !important;
  background: #fff !important;
}
@media (max-width: 760px) {
  .mch-reference-images > .mch-gif-reference { grid-template-columns: 1fr !important; }
}

.mch-gif-reference figure {
  display: grid !important;
  gap: 8px !important;
  margin: 0 !important;
}
.mch-gif-reference figcaption {
  color: #cfe2ed !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  text-align: center !important;
}

/* v45: патентный поиск снова в две колонки — слева форма, справа история. */
.standalone-search-layout-two-col {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 360px) !important;
  align-items: stretch !important;
  gap: 22px !important;
  width: min(1280px, 100%) !important;
  max-width: 1280px !important;
  margin-inline: auto !important;
  justify-content: stretch !important;
}
.standalone-search-layout-two-col .standalone-search-form {
  min-width: 0 !important;
}
.search-history-sidebar {
  display: flex !important;
  flex-direction: column !important;
  gap: 14px !important;
  min-width: 0 !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 24px !important;
  border: 1px solid rgba(104,132,153,.24) !important;
  border-radius: 20px !important;
  background: linear-gradient(#0f1c28f5,#0a151ff0) !important;
  box-shadow: 0 24px 70px #00000047 !important;
}
.search-history-head {
  display: grid !important;
  gap: 5px !important;
}
.search-history-head h2 {
  margin: 0 !important;
  color: #edf4f8 !important;
  font-size: 22px !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;
}
.search-history-head p {
  margin: 0 !important;
  color: #93a9b8 !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
}
.search-history-scroll {
  flex: 1 1 auto !important;
  min-height: 0 !important;
  overflow: auto !important;
  padding-right: 2px !important;
}
.search-history-scroll .muted {
  margin: 0 !important;
  color: #7f94a5 !important;
}
.search-history-sidebar .search-history-list {
  display: grid !important;
  gap: 10px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}
.search-history-sidebar .search-history-item {
  display: grid !important;
  gap: 7px !important;
  padding: 13px 14px !important;
  border: 1px solid rgba(104,132,153,.18) !important;
  border-radius: 14px !important;
  background: rgba(5,20,31,.54) !important;
  color: #dbe9f1 !important;
  text-decoration: none !important;
  box-shadow: none !important;
}
.search-history-sidebar .search-history-item:after {
  display: none !important;
}
.search-history-sidebar .search-history-item:hover,
.search-history-sidebar .search-history-item.is-active {
  border-color: rgba(245,196,81,.38) !important;
  background: rgba(245,196,81,.08) !important;
  transform: none !important;
  box-shadow: inset 3px 0 #f5c451 !important;
}
.search-history-sidebar .search-history-item span {
  display: grid !important;
  gap: 2px !important;
}
.search-history-sidebar .search-history-item b {
  color: #f1f7fb !important;
  font-size: 13px !important;
}
.search-history-sidebar .search-history-item small {
  color: #7f94a5 !important;
  font-size: 11px !important;
  font-weight: 650 !important;
}
.search-history-sidebar .search-history-item em {
  color: #b6c8d4 !important;
  font-style: normal !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
}
.search-history-sidebar .search-history-results {
  color: #7db8ff !important;
}
@media (max-width: 1060px) {
  .standalone-search-layout-two-col {
    grid-template-columns: 1fr !important;
    width: min(980px, 100%) !important;
    max-width: 980px !important;
  }
  .search-history-sidebar {
    height: auto !important;
  }
  .search-history-scroll {
    max-height: 420px !important;
  }
}

/* v46: ММЧ без лишнего третьего холста, с нормальными инструментами фигур. */
.mch-modeler-v46 .mch-frame-grid-two {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.mch-modeler-v46 .mch-canvas-shell {
  height: 360px;
}
.mch-tool-hint {
  margin: -4px 0 0;
  color: #8fa3b2;
  font-size: 12px;
  line-height: 1.45;
}
.mch-technical-note {
  display: grid;
  gap: 7px;
  padding: 14px;
  border: 1px solid rgba(104,132,153,.20);
  border-radius: 16px;
  background: rgba(7,19,29,.44);
  color: #d8e4ec;
  font-size: 13px;
  font-weight: 850;
}
.mch-technical-note span {
  color: #e4edf2;
  font-weight: 950;
}
.mch-technical-note textarea {
  width: 100%;
  min-height: 118px;
  padding: 11px 12px;
  border: 1px solid #2a4054;
  border-radius: 12px;
  outline: 0;
  background: #07131d;
  color: #e8f0f6;
  font-weight: 500;
}
.mch-technical-note textarea:focus {
  border-color: #e7b949;
  box-shadow: 0 0 0 3px rgba(245,196,81,.1);
}
.patent-auto-card {
  display: grid;
  gap: 11px;
  padding: 16px;
  border-radius: 15px;
  background: rgba(8,25,38,.66);
}
.patent-auto-card b { color: #e8f0f5; }
.patent-auto-card p {
  margin: 3px 0 0;
  color: #8fa3b2;
  font-size: 13px;
}
.patent-auto-card small {
  color: #f0d58f;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.patent-project-tabs .patent-mode-tabs {
  margin-top: -2px;
}
@media (max-width: 980px) {
  .mch-modeler-v46 .mch-frame-grid-two { grid-template-columns: 1fr; }
  .mch-modeler-v46 .mch-canvas-shell { height: 320px; }
}

/* v46: стрелки таблицы 1 — маленькие markerUnits=userSpaceOnUse, без огромных треугольников. */
.triz-conflict-svg-v46 {
  width: 100%;
  max-width: 270px;
  min-height: 150px;
}
.triz-conflict-svg-v46 :where(path, line) {
  vector-effect: non-scaling-stroke;
}
.triz-conflict-svg-v46 marker path {
  stroke: none !important;
}

/* v46.1: справочник — схемы таблицы 1 без прыгающих стрелок. */
.triz-conflict-svg-v46 {
  width: 100%;
  height: auto;
  display: block;
  overflow: visible;
}
.triz-conflict-svg-v46 .triz-node-label {
  fill: #eaf5fb;
  font-size: 22px;
  font-weight: 950;
  paint-order: stroke;
  stroke: rgba(5, 18, 28, .9);
  stroke-width: 5px;
  stroke-linejoin: round;
}
.triz-conflict-svg-v46 .triz-link-useful-line,
.triz-conflict-svg-v46 .triz-link-harmful-line,
.triz-conflict-svg-v46 .triz-link-missing-line,
.triz-conflict-svg-v46 .triz-link-unknown-line,
.triz-conflict-svg-v46 .triz-link-unregulated-line {
  fill: none;
  stroke-width: 4.5px;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.triz-conflict-svg-v46 .triz-link-useful-line { stroke: #6dd3b8; }
.triz-conflict-svg-v46 .triz-link-harmful-line { stroke: #ff8393; }
.triz-conflict-svg-v46 .triz-link-missing-line { stroke: #85bff0; }
.triz-conflict-svg-v46 .triz-link-unknown-line { stroke: #a9bdca; }
.triz-conflict-svg-v46 .triz-link-unregulated-line { stroke: #85bff0; }
.triz-conflict-svg-v46 .triz-system-line {
  stroke: #8095a6;
  stroke-width: 4.5px;
  stroke-linecap: round;
}
.triz-conflict-svg-v46 .triz-action-dot { fill: #a9bdca; }
.ariz-row-diagram .triz-conflict-svg-v46 {
  max-width: 250px;
  margin: 0 auto;
}

/* v46: патентный поиск в АРИЗ — табы авто/ручной ввод. */
.patent-source-tabs {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  width: fit-content !important;
  max-width: 100% !important;
  padding: 5px !important;
  border: 1px solid rgba(104,132,153,.28) !important;
  border-radius: 14px !important;
  background: rgba(5,18,28,.66) !important;
}
.patent-source-tab {
  min-height: 38px !important;
  padding: 8px 14px !important;
  border-radius: 10px !important;
  color: #aebfcb !important;
  font-weight: 900 !important;
  font-size: 13px !important;
  background: transparent !important;
  border: 0 !important;
}
.patent-source-tab:hover {
  color: #f1f7fb !important;
  background: rgba(255,255,255,.04) !important;
}
.patent-source-tab.is-active {
  color: #19200f !important;
  background: #f5c451 !important;
}
.patent-tab-panel {
  display: grid !important;
  gap: 14px !important;
  padding: 17px !important;
  border: 1px solid rgba(104,132,153,.18) !important;
  border-radius: 16px !important;
  background: rgba(5,18,28,.38) !important;
}
.patent-tab-panel[hidden] {
  display: none !important;
}
.patent-tab-hint {
  margin: 0 !important;
  color: #a8bdca !important;
  line-height: 1.5 !important;
}

/* v46: ММЧ — два больших рисунка, технический перевод текстом. */
.mch-modeler-v46 .mch-modeler-head {
  align-items: flex-start !important;
}
.mch-tool-hint {
  margin: -4px 0 0 !important;
  color: #94aabb !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
}
.mch-frame-grid-two {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 18px !important;
}
.mch-frame-grid-two .mch-canvas-shell {
  height: 380px !important;
}
.mch-frame-grid-two .mch-frame canvas {
  cursor: crosshair !important;
}
.mch-tech-frame {
  margin-top: 16px !important;
  border: 1px solid rgba(104,132,153,.22) !important;
  border-radius: 16px !important;
  background: rgba(5,18,28,.42) !important;
  padding: 16px !important;
}
.mch-tech-frame header {
  margin-bottom: 12px !important;
}
.mch-tech-frame textarea {
  min-height: 110px !important;
}
@media (max-width: 1050px) {
  .mch-frame-grid-two {
    grid-template-columns: 1fr !important;
  }
  .mch-frame-grid-two .mch-canvas-shell {
    height: 330px !important;
  }
}

/* v46: таблица 1 — уменьшенные аккуратные стрелки без «лопат» на концах. */
.triz-conflict-svg.triz-conflict-svg-v46,
.ariz-table-diagram.triz-conflict-svg-v46 {
  width: min(300px, 100%) !important;
  min-height: 0 !important;
  overflow: visible !important;
  padding: 10px !important;
  border-radius: 13px !important;
  background: rgba(2,13,21,.76) !important;
}
.triz-conflict-svg-v46 text {
  fill: #eaf5fb !important;
  font: 900 18px var(--font-sans) !important;
}
.triz-conflict-svg-v46 path,
.triz-conflict-svg-v46 line {
  vector-effect: non-scaling-stroke !important;
  fill: none !important;
  stroke-width: 3 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}
.triz-conflict-svg-v46 .triz-link-useful path,
.triz-conflict-svg-v46 .triz-link-useful line { stroke: #6dd3b8 !important; }
.triz-conflict-svg-v46 .triz-link-harmful path,
.triz-conflict-svg-v46 .triz-link-harmful line { stroke: #ff8393 !important; }
.triz-conflict-svg-v46 .triz-link-missing path,
.triz-conflict-svg-v46 .triz-link-missing line { stroke: #dbe7ee !important; stroke-dasharray: 12 8 !important; }
.triz-conflict-svg-v46 .triz-link-unknown path,
.triz-conflict-svg-v46 .triz-link-unknown line { stroke: #dbe7ee !important; stroke-dasharray: 3 8 !important; }
.triz-conflict-svg-v46 .triz-link-unregulated path,
.triz-conflict-svg-v46 .triz-link-unregulated line { stroke: #dbe7ee !important; stroke-dasharray: 16 6 3 6 !important; }
.triz-conflict-svg-v46 .triz-system-line { stroke: rgba(219,231,238,.62) !important; stroke-width: 3 !important; }
.triz-conflict-svg-v46 .triz-action-dot { fill: #f5c451 !important; stroke: none !important; }
.triz-conflict-svg-v46 marker path { stroke: none !important; }
.triz-conflict-svg-v46 .triz-marker-useful { fill: #6dd3b8 !important; }
.triz-conflict-svg-v46 .triz-marker-harmful { fill: #ff8393 !important; }
.triz-conflict-svg-v46 .triz-marker-missing,
.triz-conflict-svg-v46 .triz-marker-unknown { fill: #dbe7ee !important; }

/* v46 final: ММЧ без лишнего третьего холста, нормальные drag-shapes, возвращены вкладки патентного поиска. */
.mch-frame-grid-two,
.mch-frame-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.mch-canvas-shell {
  height: 360px;
}
.mch-toolbox {
  align-items: center;
}
.mch-tool-danger {
  margin-left: auto;
}
.mch-technical-note {
  display: grid;
  gap: 10px;
  padding: 15px 16px;
  border: 1px solid rgba(104,132,153,.20);
  border-radius: 17px;
  background: rgba(7,19,29,.44);
}
.mch-technical-note > div {
  display: flex;
  align-items: center;
  gap: 9px;
}
.mch-technical-note > div span {
  display: grid;
  width: 28px;
  height: 28px;
  place-items: center;
  border-radius: 999px;
  color: #15190d;
  background: #f5c451;
  font-size: 13px;
  font-weight: 950;
}
.mch-technical-note > div b {
  color: #e4edf2;
  font-size: 14px;
  font-weight: 900;
}
.mch-technical-note label {
  display: grid;
  gap: 7px;
  color: #d8e4ec;
  font-size: 12px;
  font-weight: 850;
}
.mch-technical-note textarea {
  width: 100%;
  min-height: 112px;
  padding: 11px 12px;
  border: 1px solid #2a4054;
  border-radius: 12px;
  outline: 0;
  background: #07131d;
  color: #e8f0f6;
  font-weight: 500;
  line-height: 1.5;
}
.mch-technical-note textarea:focus {
  border-color: #e7b949;
  box-shadow: 0 0 0 3px rgba(245,196,81,.1);
}
.patent-project-tabs {
  display: grid;
  gap: 16px;
}
.patent-project-tabs .patent-mode-tabs {
  width: min(100%, 580px);
  margin: 0;
}
.patent-tab-hint,
.patent-manual-intro {
  margin: 0;
  color: #9fb2c0;
  font-size: 13px;
  line-height: 1.55;
}
.patent-project-tabs .patent-auto-preview[open] {
  background: rgba(8,25,38,.56);
}
.patent-project-tabs .patent-auto-preview pre {
  max-height: 260px;
}
.triz-conflict-svg-v46 {
  width: 100%;
  max-width: 280px;
  min-height: 152px;
}
.triz-conflict-svg-v46 :where(path, line) {
  vector-effect: non-scaling-stroke;
}
.triz-conflict-svg-v46 .triz-arrowhead {
  stroke: none !important;
}
.triz-conflict-svg-v46 .triz-node-label {
  font-size: 20px;
  font-weight: 950;
}
.triz-conflict-svg-v46 .triz-action-dot {
  stroke: rgba(5,17,26,.9);
  stroke-width: 1.5;
}
@media (max-width: 980px) {
  .mch-frame-grid-two,
  .mch-frame-grid { grid-template-columns: 1fr; }
  .mch-canvas-shell { height: 320px; }
  .mch-tool-danger { margin-left: 0; }
}

/* v46: табы патентного поиска в АРИЗ, аккуратный ММЧ-редактор и спокойные стрелки справочника. */
.patent-tool-panel-v46 {
  display: grid;
  gap: 14px;
}
.patent-tool-panel-v46 .patent-tool-intro {
  max-width: 820px;
  margin: -4px 0 0;
  color: #a9bbc7;
}
.patent-project-form-v46 {
  gap: 16px !important;
}
.patent-project-form-v46 .patent-project-tabs {
  display: grid;
  gap: 16px;
}
.patent-project-form-v46 .patent-mode-tabs {
  max-width: 560px;
}
.patent-project-form-v46 .patent-shared-mode {
  margin: 0;
  max-width: 760px;
}
.patent-project-form-v46 .patent-tab-panel {
  display: grid;
  gap: 14px;
}
.patent-project-form-v46 .patent-tab-panel[hidden] {
  display: none !important;
}
.patent-project-form-v46 .patent-plan-card pre,
.patent-project-form-v46 #patentAutoPlan {
  white-space: pre-wrap;
  font-family: var(--font-sans);
  font-size: 13px;
  line-height: 1.55;
}
.patent-project-form-v46 .patent-search-action {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 0 !important;
}

.mch-frame-grid-two,
.mch-modeler .mch-frame-grid-two {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}
.mch-frame-grid-two .mch-canvas-shell {
  height: 360px !important;
  min-height: 320px !important;
}
.mch-frame-grid-two .mch-canvas-shell canvas {
  height: 100% !important;
}
.mch-technical-note {
  display: grid;
  gap: 7px;
  padding: 14px;
  border: 1px solid rgba(104,132,153,.20);
  border-radius: 17px;
  background: rgba(7,19,29,.44);
  color: #d8e4ec;
  font-size: 12px;
  font-weight: 850;
}
.mch-technical-note span {
  color: #f4cf74;
  font-weight: 950;
}
.mch-technical-note textarea {
  width: 100%;
  min-height: 96px;
  padding: 10px 11px;
  border: 1px solid #2a4054;
  border-radius: 12px;
  outline: 0;
  background: #07131d;
  color: #e8f0f6;
  line-height: 1.48;
  resize: vertical;
}
.mch-technical-note textarea:focus {
  border-color: #d9ae46;
  box-shadow: 0 0 0 3px rgba(245,196,81,.1);
}
.mch-official-frame-text p {
  margin: 0;
  color: #cfe0ea;
  font-size: 13px;
  line-height: 1.55;
}
.triz-conflict-svg path,
.triz-conflict-svg line {
  stroke-width: 3 !important;
}
.triz-conflict-svg marker path {
  stroke: none !important;
}
@media (max-width: 980px) {
  .mch-frame-grid-two,
  .mch-modeler .mch-frame-grid-two {
    grid-template-columns: 1fr !important;
  }
}
@media (max-width: 760px) {
  .mch-frame-grid-two .mch-canvas-shell {
    height: 300px !important;
  }
}

/* v46: восстановленные табы патентного поиска, двухкадровый ММЧ и спокойные схемы таблицы 1. */
.patent-project-tabs-v46 {
  display: grid !important;
  gap: 16px !important;
}
.patent-project-tabs-v46 .patent-mode-tabs {
  max-width: 620px !important;
}
.patent-project-tabs-v46 .patent-tab-panel {
  display: grid !important;
  gap: 14px !important;
  padding-top: 0 !important;
}
.patent-project-tabs-v46 .patent-tab-panel[hidden] {
  display: none !important;
}
.patent-tab-hint {
  max-width: 820px !important;
  margin: 0 !important;
  color: #a8bdca !important;
  line-height: 1.55 !important;
}
.patent-project-tabs-v46 .patent-auto-preview {
  max-width: 920px !important;
}
.patent-project-tabs-v46 .patent-query-fields-compact {
  gap: 10px !important;
}
.patent-project-tabs-v46 .patent-query-section-compact:first-child {
  padding-top: 0 !important;
}

.mch-modeler-v46 .mch-modeler-head {
  align-items: center !important;
}
.mch-modeler-v46 .mch-toolbox {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 7px !important;
}
.mch-tool.is-active {
  color: #152012 !important;
  background: #f5c451 !important;
}
.mch-tool-hint {
  margin: -4px 0 0 !important;
  color: #95adbb !important;
  font-size: 13px !important;
  line-height: 1.5 !important;
}
.mch-frame-grid-two {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 18px !important;
}
.mch-modeler-v46 .mch-frame {
  padding: 16px !important;
}
.mch-modeler-v46 .mch-canvas-shell {
  min-height: 330px !important;
}
.mch-modeler-v46 .mch-canvas-shell canvas {
  height: 330px !important;
}
.mch-technical-panel {
  display: grid !important;
  gap: 7px !important;
  padding: 16px 17px !important;
  border: 1px solid rgba(104,132,153,.25) !important;
  border-radius: 16px !important;
  background: rgba(7,19,29,.58) !important;
  color: #dce8ef !important;
  font-weight: 900 !important;
}
.mch-technical-panel small {
  color: #93a9b8 !important;
  font-weight: 600 !important;
  line-height: 1.5 !important;
}
.mch-technical-panel textarea {
  min-height: 118px !important;
  border: 1px solid rgba(82,111,135,.55) !important;
  border-radius: 13px !important;
  background: #07131d !important;
  color: #e6eff5 !important;
}
.mch-modeler-v46 .mch-reference-images > div,
.mch-modeler-v46 .mch-official-figures {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}
.mch-modeler-v46 .mch-official-frame:last-child {
  grid-column: 1 / -1 !important;
}

.triz-conflict-svg-v46 {
  width: min(100%, 300px) !important;
  min-height: 150px !important;
  padding: 10px !important;
  border-radius: 12px !important;
  background: rgba(2,13,21,.76) !important;
}
.triz-conflict-svg-v46 .triz-node-label {
  fill: #dff6ff !important;
  font: 900 21px system-ui, sans-serif !important;
}
.triz-conflict-svg-v46 path,
.triz-conflict-svg-v46 line {
  vector-effect: non-scaling-stroke !important;
  fill: none !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}
.triz-conflict-svg-v46 .triz-link-useful path {
  stroke: #77ead6 !important;
  stroke-width: 3 !important;
}
.triz-conflict-svg-v46 .triz-link-harmful path {
  stroke: #ff8a9a !important;
  stroke-width: 3 !important;
}
.triz-conflict-svg-v46 .triz-link-missing path,
.triz-conflict-svg-v46 .triz-link-unregulated path {
  stroke: #c8d6df !important;
  stroke-width: 3 !important;
  stroke-dasharray: 10 8 !important;
}
.triz-conflict-svg-v46 .triz-link-unknown path {
  stroke: #c8d6df !important;
  stroke-width: 3 !important;
  stroke-dasharray: 2 8 !important;
}
.triz-conflict-svg-v46 .triz-system-line {
  stroke: rgba(216,233,242,.55) !important;
  stroke-width: 3 !important;
}
.triz-conflict-svg-v46 .triz-action-dot {
  fill: #dbe7ee !important;
  stroke: none !important;
}
.triz-conflict-svg-v46 .triz-marker-useful { fill: #77ead6 !important; stroke: none !important; }
.triz-conflict-svg-v46 .triz-marker-harmful { fill: #ff8a9a !important; stroke: none !important; }
.triz-conflict-svg-v46 .triz-marker-missing,
.triz-conflict-svg-v46 .triz-marker-unknown { fill: #c8d6df !important; stroke: none !important; }

@media (max-width: 1040px) {
  .mch-frame-grid-two,
  .mch-modeler-v46 .mch-reference-images > div,
  .mch-modeler-v46 .mch-official-figures {
    grid-template-columns: 1fr !important;
  }
  .mch-modeler-v46 .mch-official-frame:last-child {
    grid-column: auto !important;
  }
}
.mch-tool-hint {
  margin: -6px 0 0;
  color: #91a6b5;
  font-size: 12px;
  line-height: 1.5;
}


/* v46: патентный поиск внутри АРИЗ — слева табы и поля, справа история проекта. */
.patent-project-layout-v46 {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 360px) !important;
  align-items: stretch !important;
  gap: 22px !important;
}
.patent-project-layout-v46 .patent-project-form-v46 {
  min-width: 0 !important;
  height: 100% !important;
}
.patent-project-history {
  min-height: 100% !important;
  align-self: stretch !important;
}
.patent-project-history .search-history-scroll {
  max-height: 680px !important;
}
.patent-project-history-item {
  cursor: default !important;
}
.patent-project-history-item em {
  word-break: break-word !important;
}
@media (max-width: 1080px) {
  .patent-project-layout-v46 {
    grid-template-columns: 1fr !important;
  }
  .patent-project-history {
    min-height: 0 !important;
  }
  .patent-project-history .search-history-scroll {
    max-height: 380px !important;
  }
}

/* v46 финальный штрих: в таблице 1 стрелки компактнее, без тяжёлых наконечников. */
.triz-conflict-svg-v46 path,
.triz-conflict-svg-v46 line {
  stroke-width: 2.8 !important;
}
.triz-conflict-svg-v46 .triz-system-line {
  stroke-width: 2.4 !important;
}
.triz-conflict-svg-v46 .triz-action-dot {
  r: 3px;
}

/* v47: ММЧ — простой белый холст, два рисунка, цвета, без отдельных человечков/пар и без технического поля. */
.mch-modeler-v47 {
  background: #0b1824;
  border: 1px solid rgba(141, 166, 187, .22);
  border-radius: 18px;
  padding: 18px;
}
.mch-modeler-v47 .mch-modeler-head {
  display: block;
  margin-bottom: 14px;
}
.mch-modeler-v47 .mch-modeler-head b {
  color: #f1f6fa;
  font-size: 18px;
}
.mch-modeler-v47 .mch-modeler-head p {
  color: #a8bac8;
  margin: 5px 0 0;
  max-width: 860px;
}
.mch-toolbar-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
  gap: 12px;
}
.mch-modeler-v47 .mch-toolbox {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin: 0;
}
.mch-color-palette {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 6px;
  background: #08131d;
  border: 1px solid rgba(141, 166, 187, .2);
  border-radius: 999px;
}
.mch-color-swatch {
  width: 28px;
  height: 28px;
  border-radius: 999px;
  border: 2px solid rgba(255,255,255,.22);
  background: var(--mch-swatch, #111827);
  box-shadow: inset 0 0 0 2px rgba(0,0,0,.12);
}
.mch-color-swatch.is-active {
  outline: 2px solid #f5c451;
  outline-offset: 2px;
}
.mch-modeler-v47 .mch-tool-hint {
  color: #9aabba;
  margin: 10px 0 14px;
}
.mch-modeler-v47 .mch-frame-grid-two {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}
.mch-modeler-v47 .mch-frame {
  background: #08131d;
  border: 1px solid rgba(141, 166, 187, .2);
  border-radius: 16px;
  padding: 12px;
}
.mch-modeler-v47 .mch-frame header {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 10px;
}
.mch-modeler-v47 .mch-frame header span {
  width: 28px;
  height: 28px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #f5c451;
  color: #16200f;
  font-weight: 900;
}
.mch-modeler-v47 .mch-canvas-shell {
  height: 370px;
  background: #fff;
  border: 1px solid #d7e0e8;
  border-radius: 12px;
  overflow: hidden;
}
.mch-modeler-v47 .mch-canvas-shell canvas {
  width: 100%;
  height: 100%;
  background: #fff !important;
  cursor: crosshair;
}
.mch-modeler-v47[data-mch-active-tool="eraser"] .mch-canvas-shell canvas {
  cursor: cell;
}
.mch-common-note {
  display: grid;
  gap: 7px;
  margin-top: 14px;
  color: #dce8f0;
  font-weight: 800;
}
.mch-common-note textarea {
  width: 100%;
  color: #e9f2f8;
  background: #07131d;
  border: 1px solid #263c50;
  border-radius: 12px;
  padding: 12px 13px;
  font-weight: 500;
}
.mch-modeler-v47 .mch-source-details {
  margin-top: 14px;
}
.mch-modeler-v47 .mch-reference-images,
.mch-modeler-v47 .mch-technical-panel,
.mch-modeler-v47 [data-mch-technical] {
  display: none !important;
}
.patent-tool-panel-v47 .patent-auto-silent-card {
  background: #091722;
  border: 1px solid rgba(141, 166, 187, .18);
  border-radius: 14px;
  padding: 14px 15px;
  color: #dce8f0;
}
.patent-tool-panel-v47 .patent-auto-silent-card p {
  color: #9fb1bf;
  margin: 4px 0 0;
}
.patent-project-history .search-history-item {
  display: grid;
  text-decoration: none;
}
.patent-project-history .search-history-item.is-active {
  background: #122837;
  box-shadow: inset 3px 0 #f5c451;
}
.triz-conflict-svg-v47 {
  overflow: visible;
}
.triz-conflict-svg-v47 .triz-node-label {
  font: 900 22px system-ui, sans-serif;
}
.triz-conflict-svg-v47 .triz-arrowhead {
  fill: none !important;
}
.triz-conflict-svg-v47 :where(path, line) {
  vector-effect: non-scaling-stroke;
}
.triz-conflict-svg-v47 .triz-node-label {
  fill: #edf7fb !important;
  font-size: 19px !important;
}
.triz-conflict-svg-v47 :where(path, line) {
  stroke-width: 2.45 !important;
}
.triz-conflict-svg-v47 path,
.triz-conflict-svg-v47 line {
  stroke-width: 2.45 !important;
}
.triz-conflict-svg-v47 .triz-system-line {
  stroke: rgba(205, 221, 231, .72) !important;
  stroke-width: 2.2 !important;
}
.triz-conflict-svg-v47 .triz-link-harmful path {
  stroke-width: 2.35 !important;
}
.triz-conflict-svg-v47 .triz-link-missing path {
  stroke-dasharray: 12 8 !important;
}
.triz-conflict-svg-v47 .triz-link-unknown path {
  stroke-dasharray: 5 9 !important;
}
.triz-conflict-svg-v47 .triz-link-unregulated path {
  stroke-dasharray: none !important;
}
.triz-conflict-svg-v47 .triz-action-dot {
  r: 3px;
  fill: #f4cf74 !important;
  stroke: #07131d !important;
  stroke-width: 1.2 !important;
}
.triz-conflict-svg-v47 marker path {
  stroke: none !important;
}
.triz-conflict-svg-v47 .triz-marker-useful { fill: #7ce3cb !important; }
.triz-conflict-svg-v47 .triz-marker-harmful { fill: #ff8a9a !important; }
.triz-conflict-svg-v47 .triz-marker-missing { fill: #95cfff !important; }
.triz-conflict-svg-v47 .triz-marker-unknown { fill: #b2c2cc !important; }
.triz-conflict-svg-v47 .triz-self-arrowhead {
  fill: #ff8a9a !important;
  stroke: none !important;
}
@media (max-width: 920px) {
  .mch-toolbar-row,
  .mch-modeler-v47 .mch-frame-grid-two {
    grid-template-columns: 1fr;
  }
  .mch-color-palette {
    justify-self: start;
  }
  .mch-modeler-v47 .mch-canvas-shell {
    height: 320px;
  }
}

/* v47 compact: source details hidden; textarea still submits saved sketch data. */
.mch-modeler-v47 .mch-source-details {
  display: none !important;
}

/* v61: раскрываемые автоматические запросы патентного поиска. */
.patent-auto-query-fields{display:grid;gap:14px;max-width:880px;margin-top:12px}.patent-auto-query-section{display:grid;gap:7px}.patent-auto-query-head{display:flex;align-items:center;gap:8px;color:#dce7ef}.patent-auto-query-rank{display:inline-grid;width:22px;height:22px;place-items:center;border:1px solid rgba(245,196,81,.42);border-radius:50%;color:#f5c451;font-size:11px;font-weight:850}.patent-auto-query-section textarea{width:100%;min-height:76px;resize:vertical;border:1px solid rgba(104,132,153,.28);border-radius:8px;background:rgba(6,18,28,.46);color:#bfd0da;padding:11px 13px;font-family:var(--font-sans);font-size:13px;line-height:1.55}.patent-auto-query-section textarea:focus{border-color:rgba(109,211,184,.62);outline:2px solid rgba(109,211,184,.14);outline-offset:1px}.patent-auto-query-empty{margin:0;color:#7f94a5;font-size:13px}
/* v62: единая инструкция по режимам патентного поиска. */
.patent-mode-instructions{width:100%;margin:28px 0 36px}.patent-mode-instructions-head{max-width:900px;margin-bottom:18px}.patent-mode-instructions-head h2{margin:4px 0 8px;color:#e8f0f6;font-size:23px;line-height:1.2}.patent-mode-instructions-head p{max-width:860px;margin:0;color:#9fb1bf;line-height:1.58}.patent-mode-instruction-list{margin:0;padding:0;border-top:1px solid rgba(91,116,136,.28)}.patent-mode-instruction-row{display:grid;grid-template-columns:minmax(175px,.72fr) minmax(260px,1.25fr) minmax(240px,1fr);gap:26px;padding:20px 0;border-bottom:1px solid rgba(91,116,136,.22)}.patent-mode-instruction-name{display:grid;grid-template-columns:28px minmax(0,1fr);align-items:start;gap:10px}.patent-mode-instruction-name>span{color:#f5c451;font-size:12px;font-weight:850;line-height:1.5}.patent-mode-instruction-name h3{margin:0;color:#edf4f8;font-size:16px;line-height:1.3}.patent-mode-instruction-name p{margin:5px 0 0;color:#7f94a5;font-size:12px;line-height:1.45}.patent-mode-instruction-use,.patent-mode-instruction-match{display:grid;align-content:start;gap:5px}.patent-mode-instruction-use b,.patent-mode-instruction-match b{color:#d9e4eb;font-size:12px}.patent-mode-instruction-use p,.patent-mode-instruction-match p{margin:0 0 6px;color:#a7b8c4;font-size:13px;line-height:1.52}.patent-mode-instruction-use small{color:#7f94a5;font-size:11px;line-height:1.48}.patent-mode-instruction-use small strong{color:#b9c8d2}.patent-mode-instructions-foot{max-width:900px;margin:16px 0 0;padding-left:14px;color:#a9bac6;box-shadow:inset 3px 0 #c99e3f;font-size:13px;line-height:1.55}@media(max-width:760px){.patent-mode-instruction-row{grid-template-columns:1fr;gap:14px;padding:18px 0}.patent-mode-instructions{margin:24px 0 30px}}
/* v63: компактные текстовые подсказки по режимам поиска. */
.patent-mode-instructions{max-width:900px;margin:20px 0 28px}.patent-mode-instructions-head{margin-bottom:10px}.patent-mode-instructions-head h2{margin:3px 0 4px;font-size:20px}.patent-mode-instructions-head p{font-size:13px}.patent-mode-simple-list{margin:0;padding:0;border-top:1px solid rgba(91,116,136,.24)}.patent-mode-simple-list li{padding:10px 0;border-bottom:1px solid rgba(91,116,136,.18)}.patent-mode-simple-list p{display:flex;align-items:baseline;gap:9px;margin:0}.patent-mode-simple-list p span{width:25px;flex:0 0 25px;color:#f5c451;font-size:11px;font-weight:850}.patent-mode-simple-list p b{color:#e8f0f6;font-size:14px}.patent-mode-simple-list small{display:block;margin:3px 0 0 34px;color:#9fb1bf;font-size:12px;line-height:1.48}@media(max-width:520px){.patent-mode-simple-list small{margin-left:0}.patent-mode-instructions{margin:18px 0 24px}}
/* v64: паспорт инструмента и ручной поиск по заполненным полям. */
.patent-tool-overview{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(360px,.75fr);gap:34px;align-items:end;margin:18px 0 30px;padding:18px 0;border-top:1px solid rgba(91,116,136,.22);border-bottom:1px solid rgba(91,116,136,.22)}.patent-tool-overview-copy h2{margin:4px 0 7px;color:#e8f0f6;font-size:22px;line-height:1.25}.patent-tool-overview-copy p{max-width:760px;margin:0;color:#9fb1bf;line-height:1.58}.patent-tool-overview-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.patent-tool-overview-facts p{margin:0}.patent-tool-overview-facts b,.patent-tool-overview-facts span{display:block}.patent-tool-overview-facts b{color:#f1d27d;font-size:18px;line-height:1.2}.patent-tool-overview-facts span{margin-top:5px;color:#8297a7;font-size:11px;line-height:1.4}.patent-query-example-line{display:block;max-width:840px;color:#8297a7;font-size:12px;line-height:1.5}.patent-query-example-line b{color:#d7c17e}.patent-query-control-simple textarea{min-height:128px!important}.patent-query-control-compact textarea{min-height:104px!important}@media(max-width:900px){.patent-tool-overview{grid-template-columns:1fr;gap:18px;align-items:start}}@media(max-width:560px){.patent-tool-overview-facts{grid-template-columns:1fr;gap:10px}.patent-tool-overview{margin:14px 0 24px}.patent-tool-overview-facts p{display:grid;grid-template-columns:100px 1fr;gap:10px;align-items:baseline}.patent-tool-overview-facts span{margin-top:0}}
/* v65: компактные парные иллюстрации ММЧ. */
.mch-reference-images>.mch-gif-reference,.official-source-example>.mch-gif-reference,.official-step-example-diagram>.mch-gif-reference{display:grid!important;grid-template-columns:repeat(2,minmax(0,220px))!important;width:fit-content!important;max-width:100%!important;gap:12px!important;margin:12px 0 0!important;padding:10px!important}.mch-gif-reference figure{width:220px!important;max-width:100%!important}.mch-gif-reference a{display:block!important}.mch-gif-reference img{display:block!important;width:100%!important;height:120px!important;min-height:0!important;padding:6px!important;object-fit:contain!important}@media(max-width:560px){.mch-reference-images>.mch-gif-reference,.official-source-example>.mch-gif-reference,.official-step-example-diagram>.mch-gif-reference{grid-template-columns:repeat(2,minmax(0,1fr))!important;width:100%!important}.mch-gif-reference figure{width:auto!important}.mch-gif-reference img{height:96px!important}}
/* v66: официальный вводный блок шага 1.3 без длинной простыни. */
.conflict-step-guide{display:grid;gap:16px;max-width:980px;padding-bottom:18px}.conflict-step-official{max-width:900px;margin:0;color:#dce8ef;font-size:15px;line-height:1.65}.conflict-step-guide a{color:#8bd8c6;text-decoration-color:rgba(139,216,198,.4);text-underline-offset:3px}.conflict-step-example{display:grid;gap:9px}.conflict-step-example h3{margin:0;color:#f4cf74;font-size:11px;letter-spacing:.06em;text-transform:uppercase}.conflict-step-example-pair{display:grid;grid-template-columns:repeat(2,minmax(0,240px));gap:12px;width:fit-content;max-width:100%}.conflict-step-example figure,.conflict-step-note-with-figure figure{display:grid;gap:7px;margin:0}.conflict-step-example figcaption{color:#cbdbe5;font-size:12px;font-weight:800}.conflict-step-example img,.conflict-step-note-with-figure img{display:block;width:100%;height:auto;padding:8px;border-radius:6px;background:#fff;object-fit:contain}.conflict-step-notes{max-width:900px;margin:0;border-top:1px solid rgba(104,132,153,.22);border-bottom:1px solid rgba(104,132,153,.16)}.conflict-step-notes summary{padding:11px 0;color:#9fb4c3;font-size:13px;font-weight:800;cursor:pointer}.conflict-step-notes-body{display:grid;gap:13px;padding:1px 0 15px}.conflict-step-notes-body p{max-width:900px;margin:0;color:#b9c9d3;font-size:13px;line-height:1.62}.conflict-step-notes-body p b{color:#f1d27d}.conflict-step-note-with-figure{display:grid;grid-template-columns:minmax(220px,1fr) minmax(0,320px);gap:10px 18px;align-items:center}.conflict-step-note-with-figure p:last-child{grid-column:1/-1}.conflict-step-note-with-figure figure{max-width:320px}@media(max-width:620px){.conflict-step-example-pair{grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.conflict-step-example img{padding:5px}.conflict-step-note-with-figure{grid-template-columns:1fr}.conflict-step-note-with-figure p:last-child{grid-column:auto}.conflict-step-note-with-figure figure{width:100%;max-width:320px}.conflict-step-official{font-size:14px}}
/* v67: примечания 1.3 видны сразу, рисунки идут вслед за поясняющим текстом. */
.conflict-step-notes{display:grid;gap:12px;padding:14px 0 16px}.conflict-step-notes>h3{margin:0;color:#f4cf74;font-size:11px;letter-spacing:.06em;text-transform:uppercase}.conflict-step-notes-body{padding:0}.conflict-step-note-with-figure{display:grid;grid-template-columns:1fr;gap:10px;align-items:start}.conflict-step-note-with-figure p:last-child{grid-column:auto}.conflict-step-note-with-figure figure{width:min(100%,320px);max-width:320px}.conflict-step-note-with-figure img{width:100%}
/* v68: нейтральная связь объектов в редакторе 1.3. */
.diagram-notation-legend .legend-connected{stroke:#e8f0f6}
/* v71: свободный редактор веполей с преобразованием до и после стандарта. */
.vepol-meta-controls{display:grid;grid-template-columns:auto minmax(240px,340px);gap:14px;align-items:end;padding:12px 0;border-top:1px solid rgba(91,116,136,.22);border-bottom:1px solid rgba(91,116,136,.22)}
.vepol-meta-controls.is-without-conflict-choice{grid-template-columns:minmax(240px,340px)}
.vepol-meta-controls>label{display:grid;gap:6px;color:#bdcbd5;font-size:12px;font-weight:750}
.vepol-meta-controls>label small{color:#7f96a6;font-size:11px;font-weight:500;line-height:1.4}
.vepol-meta-controls select,.vepol-conclusion textarea,.vepol-selection input,.vepol-selection select{width:100%;border:1px solid #2a4054;border-radius:7px;background:#071520;color:#e8f0f6;outline:0}
.vepol-meta-controls select,.vepol-selection input,.vepol-selection select{min-height:40px;padding:8px 10px}
.vepol-meta-controls select:focus,.vepol-conclusion textarea:focus,.vepol-selection input:focus,.vepol-selection select:focus{border-color:#d9ae46;box-shadow:0 0 0 3px rgba(245,196,81,.1)}
.vepol-stage-context{display:grid;grid-template-columns:190px minmax(0,1fr);gap:18px;padding:12px 0;border-top:1px solid rgba(91,116,136,.2);border-bottom:1px solid rgba(91,116,136,.2)}.vepol-stage-context>strong{color:#e8d082;font-size:12px;line-height:1.45}.vepol-stage-context>div{display:grid;gap:8px}.vepol-stage-context p{display:grid;grid-template-columns:150px minmax(0,1fr);gap:10px;margin:0}.vepol-stage-context p b{color:#b9c9d3;font-size:11px}.vepol-stage-context p span{display:-webkit-box;overflow:hidden;color:#8fa4b3;font-size:11px;line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.vepol-transform-grid{display:grid;grid-template-columns:minmax(0,1fr) 42px minmax(0,1fr);gap:12px;align-items:start}
.vepol-transform-arrow{display:grid;place-items:center;align-self:center;color:#f1cb6a;font-size:34px;font-weight:500}
.vepol-graph-pane{display:grid;gap:10px;min-width:0;padding:13px;border:1px solid #24394b;border-radius:8px;background:rgba(7,21,32,.58)}
.vepol-pane-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;min-height:55px}
.vepol-pane-head p{max-width:470px;margin:4px 0 0;color:#8398a8;font-size:12px;line-height:1.45}
.vepol-pane-head .btn{flex:0 0 auto}
.vepol-toolbar{display:flex;flex-wrap:wrap;gap:5px}
.vepol-toolbar button,.vepol-selection-actions button{min-height:32px;padding:6px 9px;border:1px solid #2c4356;border-radius:6px;background:#0b1c29;color:#bed0db;font:inherit;font-size:11px;font-weight:750;cursor:pointer}
.vepol-toolbar button:hover,.vepol-selection-actions button:hover{border-color:#638199;color:#eef5f8}
.vepol-toolbar .is-danger,.vepol-delete{color:#ff9eab!important}
.vepol-canvas-shell{position:relative;min-width:0;border:1px solid #2a4054;border-radius:7px;overflow:hidden;background-color:#06131d;background-image:radial-gradient(circle at 1px 1px,rgba(112,143,164,.22) 1px,transparent 0);background-size:20px 20px}
.vepol-canvas{display:block;width:100%;height:auto;aspect-ratio:52/31;touch-action:none}
.vepol-canvas-empty{position:absolute;inset:0;display:grid;place-content:center;gap:5px;padding:20px;color:#7f94a5;text-align:center;pointer-events:none}
.vepol-canvas-empty[hidden]{display:none}
.vepol-canvas-empty b{color:#a8bac6;font-size:13px}.vepol-canvas-empty span{font-size:11px}
.vepol-operation-hint{min-height:18px;margin:0;color:#7f94a5;font-size:11px;line-height:1.45}
.vepol-graph-node{cursor:grab}.vepol-graph-node:active{cursor:grabbing}
.vepol-graph-node circle,.vepol-graph-node rect,.vepol-graph-node polygon{fill:#0e2130;stroke:#557187;stroke-width:2}
.vepol-graph-node.is-field rect{fill:#10272a;stroke:#6ad2bc}.vepol-graph-node.is-system polygon{fill:#151e2b;stroke:#d0b15f}
.vepol-graph-node.is-selected circle,.vepol-graph-node.is-selected rect,.vepol-graph-node.is-selected polygon{stroke:#f5c451;stroke-width:3}
.vepol-graph-node-label{fill:#f8fafb;font-family:system-ui,-apple-system,sans-serif;font-size:16px;font-weight:800;pointer-events:none}
.vepol-graph-node-type{fill:#f3f7f9;font-family:system-ui,-apple-system,sans-serif;font-size:14px;font-weight:700;pointer-events:none}
.vepol-graph-link{fill:none;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round;cursor:pointer}
.vepol-graph-link.is-useful{stroke:#7ce3cb}.vepol-graph-link.is-harmful{stroke:#ff8293}.vepol-graph-link.is-insufficient{stroke:#f2c461;stroke-dasharray:10 7}.vepol-graph-link.is-uncontrolled{stroke:#6fb7ff;stroke-dasharray:12 6 2 6}.vepol-graph-link.is-excessive{stroke:#f09a61;stroke-width:2.2}.vepol-graph-link.is-missing{stroke:#8197a8;stroke-dasharray:3 8}.vepol-graph-link.is-neutral{stroke:#d4dee6}
.vepol-graph-link.is-selected{filter:drop-shadow(0 0 4px rgba(245,196,81,.9));stroke-width:3.5}
.vepol-link-hit{fill:none;stroke:transparent;stroke-width:15;cursor:pointer}
.vepol-link-handle{fill:#91a8b8;stroke:#06131d;stroke-width:2;cursor:grab}.vepol-link-handle:hover,.vepol-link-handle.is-selected{fill:#f5c451;stroke:#5b4616}.vepol-link-handle:active{cursor:grabbing}
.vepol-graph-link-label{fill:#f4f8fa;paint-order:stroke;stroke:#06131d;stroke-width:7px;stroke-linejoin:round;font-size:14px;font-weight:750;pointer-events:none}
.vepol-canvas marker[id$="-useful"] path{fill:#7ce3cb}.vepol-canvas marker[id$="-harmful"] path{fill:#ff8293}.vepol-canvas marker[id$="-insufficient"] path{fill:#f2c461}.vepol-canvas marker[id$="-uncontrolled"] path{fill:#6fb7ff}.vepol-canvas marker[id$="-excessive"] path{fill:#f09a61}.vepol-canvas marker[id$="-missing"] path{fill:#8197a8}.vepol-canvas marker[id$="-neutral"] path{fill:#d4dee6}
.vepol-selection{padding:10px;border-top:1px solid rgba(91,116,136,.25)}
.vepol-selection[hidden],.vepol-selection [hidden]{display:none!important}
.vepol-selection-grid{display:grid;grid-template-columns:1.25fr .85fr .9fr;gap:8px;align-items:end}
.vepol-selection label{display:grid;gap:4px;color:#aebfca;font-size:10px;font-weight:750}
.vepol-selection-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.vepol-selection .vepol-delete{margin-top:8px;min-height:32px;padding:6px 9px;border:1px solid #603542;border-radius:6px;background:#24141b;cursor:pointer}
.vepol-conclusion{display:grid;gap:6px;max-width:980px;color:#bdcbd5;font-size:12px;font-weight:750}
.vepol-conclusion textarea{min-height:96px;padding:11px 12px;resize:vertical;line-height:1.5}
.vepol-legend .is-neutral{color:#d4dee6}
.vepol-source-details textarea{min-height:340px}
@media(max-width:1180px){.vepol-transform-grid{grid-template-columns:1fr}.vepol-transform-arrow{transform:rotate(90deg);font-size:28px}.vepol-graph-pane{max-width:760px}}
@media(max-width:700px){.vepol-meta-controls{grid-template-columns:1fr}.vepol-meta-controls .btn{width:100%}.vepol-stage-context{grid-template-columns:1fr;gap:9px}.vepol-stage-context p{grid-template-columns:1fr;gap:2px}.vepol-pane-head{flex-direction:column}.vepol-pane-head .btn{width:100%}.vepol-selection-grid{grid-template-columns:1fr}.vepol-toolbar button{flex:1 1 auto}.vepol-graph-pane{padding:9px}.vepol-canvas{min-height:245px}.vepol-canvas .vepol-graph-node-label{font-size:18px}.vepol-canvas .vepol-graph-node-type{font-size:16px}.vepol-canvas .vepol-graph-link-label{font-size:16px}.vepol-transform-arrow{height:22px}.vepol-editor-head{gap:12px}.vepol-source-details textarea{min-height:280px}}
