/* Solvory Wave 22 — premium interactive editors; scoped to new pages. */
.sv22-page{--sv-ink:#292a48;--sv-purple:#5f4ec4;--sv-mint:#15af99;--sv-line:#e3e4f1;--sv-muted:#777d96;background:linear-gradient(#f8f8ff 0,#fff 490px);font:inherit;color:var(--sv-ink);line-height:1.65;overflow:clip}
.sv22-page *{box-sizing:border-box}.sv22-wrap{width:min(100% - 36px,1360px);margin-inline:auto}
.sv22-hero{padding:42px 0 100px;border-radius:0 0 33px 33px;background:radial-gradient(ellipse 50% 110% at 96% -20%,#8273d199,transparent 73%),radial-gradient(ellipse 46% 90% at -10% 115%,#198e9780,transparent 76%),linear-gradient(121deg,#151e35,#2b2c56 65%,#453767);color:#fff;position:relative;overflow:hidden}
.sv22-hero:after{content:"";position:absolute;width:580px;height:580px;right:-140px;top:-250px;border:1px solid #ffffff37;border-radius:50%;box-shadow:0 0 0 55px #ffffff0a,0 0 0 130px #ffffff07;pointer-events:none}
.sv22-crumb{position:relative;z-index:1;display:flex;flex-wrap:wrap;align-items:center;gap:10px;color:#d5d7ee;font-size:11px;margin-bottom:48px}.sv22-crumb a{color:#d2f2fa!important;text-decoration:none}.sv22-crumb a:hover{text-decoration:underline}
.sv22-overline{font-size:10px;font-weight:900;letter-spacing:.17em;text-transform:uppercase;color:#11a38e;margin:0 0 10px}.sv22-hero .sv22-overline{color:#8cffe4;position:relative;z-index:1}
.sv22-hero h1{font-size:clamp(35px,5.3vw,70px)!important;color:#fff!important;font-weight:850!important;letter-spacing:-.064em!important;line-height:1.09!important;margin:0 0 17px!important;max-width:1020px;position:relative;z-index:1}
.sv22-hero .sv22-lead{max-width:790px;font-size:clamp(14px,1.3vw,18px);color:#dee3f1;line-height:1.75;position:relative;z-index:1}
.sv22-flags{display:flex;gap:8px;flex-wrap:wrap;margin-top:23px;position:relative;z-index:1}.sv22-flags span{font-size:11px;font-weight:750;border:1px solid #ffffff32;border-radius:999px;padding:8px 12px;background:#ffffff15;color:#fff}
.sv22-workspace{position:relative;z-index:2;margin:-48px 0 65px;background:#fff;border:1px solid #e6e1ef;border-radius:25px;overflow:hidden;box-shadow:0 23px 75px #28245c25}
.sv22-workhead{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:25px 28px;background:linear-gradient(110deg,#fff,#f9f7ff);border-bottom:1px solid var(--sv-line)}
.sv22-workhead h2{color:#252945!important;font-size:clamp(20px,2.3vw,28px)!important;line-height:1.2!important;letter-spacing:-.04em!important;margin:0!important}
.sv22-ready{background:#e5fbf2;border:1px solid #c9f0e3;color:#168268;border-radius:999px;padding:7px 12px;font-size:11px;font-weight:800;white-space:nowrap}
.sv22-layout{display:grid;grid-template-columns:minmax(330px,.82fr) minmax(0,1.18fr);min-height:630px}.sv22-settings{padding:25px 27px 30px;border-right:1px solid var(--sv-line);min-width:0}
.sv22-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.sv22-field{display:flex;flex-direction:column;gap:6px;min-width:0}.sv22-field.wide{grid-column:1/-1}
.sv22-field label,.sv22-field>span{font-size:11px;font-weight:800;color:#525771}
.sv22-field :is(input:not([type=checkbox]),select,textarea){width:100%;min-width:0;min-height:42px;border-radius:10px;border:1px solid #dedaed;background:#fcfbff;color:#2c3050;padding:8px 10px;font:inherit;font-size:13px}
.sv22-field :is(textarea){min-height:105px;resize:vertical;line-height:1.5}.sv22-field input[type=color]{padding:4px 6px!important;cursor:pointer}
.sv22-field input[type=range]{accent-color:#624bc5;min-height:35px;border:0;padding:0;background:transparent}.sv22-field input[type=checkbox]{align-self:flex-start;min-width:19px;min-height:19px;accent-color:#6652c7}.sv22-field small{color:#838ba2;font-size:10px}
.sv22-upload{grid-column:1/-1;display:flex;flex-direction:column;gap:7px;padding:19px 15px;border:2px dashed #d7d0ee;background:#f8f6ff;border-radius:16px;align-items:center;text-align:center}.sv22-upload.over{background:#eeeafd;border-color:#7f69d2}
.sv22-upload strong{font-size:13px;color:#343452}.sv22-upload small{font-size:11px;color:#747e96}.sv22-upload input{max-width:100%;width:100%;font-size:11px}
.sv22-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:21px}.sv22-actions button{flex:1 0 auto;min-height:43px;padding:10px 15px;border-radius:11px;background:#fff;border:1px solid #dad8eb;color:#6653b8;font-size:12px;font-weight:800;cursor:pointer;transition:transform .18s,filter .18s}
.sv22-actions button.primary{background:linear-gradient(105deg,#6550c6,#4e52af);color:#fff;border:0;box-shadow:0 9px 20px #5f50b329}.sv22-actions button.good{background:#187b70;color:white;border-color:#187b70}.sv22-actions button:not(:disabled):hover{filter:brightness(1.07);transform:translateY(-1px)}.sv22-actions button:disabled{opacity:.38;cursor:not-allowed}
.sv22-status{margin-top:15px;padding:11px 13px;background:#f4f8fb;color:#55717d;border:1px solid #e5ebf4;border-radius:10px;font-size:11px;line-height:1.6;overflow-wrap:anywhere}.sv22-status.error{background:#fff0f2;color:#b53453;border-color:#f1d7dd}.sv22-output{min-width:0;padding:24px;background:linear-gradient(146deg,#f8faff,#f5f3fe)}
.sv22-previewtop{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:13px}.sv22-previewtop b{font-size:14px}.sv22-previewtop span{font-size:10px;color:#7c8196}
.sv22-stage{position:relative;min-height:440px;border-radius:18px;border:1px solid #e0dfea;background-color:#fff;background-image:linear-gradient(45deg,#eeeef7 25%,transparent 25%),linear-gradient(-45deg,#eeeef7 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#eeeef7 75%),linear-gradient(-45deg,transparent 75%,#eeeef7 75%);background-size:24px 24px;background-position:0 0,0 12px,12px -12px,-12px 0;display:flex;align-items:center;justify-content:center;overflow:auto;padding:17px;min-width:0}
.sv22-stage canvas{display:block;max-width:100%;height:auto;max-height:610px;box-shadow:0 12px 29px #1d1e3d20;touch-action:none}.sv22-stage svg{max-width:100%;box-shadow:0 12px 29px #1d1e3d18}
.sv22-stage video{max-width:100%;max-height:460px}.sv22-stage audio{width:min(100%,500px)}
.sv22-results{display:grid;gap:10px;margin-top:14px}.sv22-results>*{font-size:12px}.sv22-results audio,.sv22-results video{max-width:100%;width:100%}
.sv22-paper{background:#fff;border:1px solid #dcdce6;box-shadow:0 17px 34px #2d285325;position:relative;max-width:100%;flex:none}
.sv22-scroll{display:block;max-height:460px;overflow:auto;width:100%;background:#0e1426;color:white;border-radius:13px;padding:22px;font-size:30px;line-height:1.65;white-space:pre-wrap;scrollbar-color:#a9a0e9 #252943}.sv22-mirror{transform:scaleX(-1)}
.sv22-codetext{font:12px/1.6 ui-monospace,SFMono-Regular,Consolas,monospace!important;color:#23213b!important;min-height:130px!important;resize:vertical!important}
.sv22-codepreview{width:100%;height:400px;background:white;border:1px solid #dee0ed;border-radius:11px}
.sv22-education{display:grid;grid-template-columns:1.25fr .75fr;gap:46px;padding:8px 0 52px}.sv22-education h2{font-size:clamp(23px,2.7vw,33px)!important;letter-spacing:-.05em!important;color:#292b48!important;margin:13px 0 18px!important}
.sv22-education p,.sv22-education li{font-size:14px;line-height:1.86;color:#697087}.sv22-education ol{padding-left:23px}.sv22-education li{margin-bottom:10px}.sv22-education a{color:#6650bd;text-decoration:underline;text-underline-offset:3px}
.sv22-education details{border:1px solid #e6e4ef;border-radius:13px;padding:0 15px;margin:0 0 10px;background:white}.sv22-education summary{padding:16px 0;cursor:pointer;font-weight:800;font-size:12px;color:#393755}.sv22-education details p{font-size:12px;margin:0 0 14px}
.sv22-related{border-radius:18px;background:linear-gradient(110deg,#242b4b,#433668);color:#fff;display:flex;align-items:center;flex-wrap:wrap;gap:9px;padding:24px;margin-bottom:70px}.sv22-related strong{margin-right:auto}.sv22-related a{color:white!important;text-decoration:none;border:1px solid #ffffff44;padding:9px 13px;border-radius:8px;font-size:11px;font-weight:800}
.sv22-page :is(button,a,input,textarea,select,summary):focus-visible{outline:3px solid #b3a1e9;outline-offset:3px}
.sv22-home{padding:clamp(60px,7vw,96px) 0;background:linear-gradient(#f8f7ff,#fff)}.sv22-home h2{font-size:clamp(32px,4.2vw,53px)!important;letter-spacing:-.055em!important;color:#262b48!important;margin:0 0 10px!important}.sv22-home p{max-width:730px;color:#747b90;font-size:13px;line-height:1.7}
.sv22-home-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-top:26px}.sv22-home-grid a{min-width:0;display:flex;flex-direction:column;gap:11px;min-height:180px;background:#fff;color:#303451!important;text-decoration:none!important;border:1px solid #e5e0ef;box-shadow:0 12px 27px #29245313;padding:20px;border-radius:17px;transition:transform .2s,box-shadow .2s}.sv22-home-grid a:hover{transform:translateY(-4px);box-shadow:0 20px 34px #26234a24}
.sv22-home-grid strong{font-size:14px;line-height:1.4}.sv22-home-grid small{color:#757d92;font-size:11px;line-height:1.6}.sv22-home-grid .sv22-glyph{display:grid;place-items:center;border-radius:13px;width:43px;height:43px;background:#ece9fd;color:#5e4ac1;font-size:24px}
.sv22-menu{border:1px solid #e1def1;background:#f7f5fe;border-radius:10px;padding:7px 10px;position:relative;color:#5546a8;font-size:11px;font-weight:800}.sv22-menu summary{cursor:pointer}.sv22-menu[open] .sv22-menu-links{position:absolute;top:100%;left:0;width:min(460px,90vw);max-height:55vh;overflow:auto;z-index:9999;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px;padding:10px;background:#fff;box-shadow:0 18px 47px #201c442f;border-radius:11px}.sv22-menu-links a{display:block;padding:9px!important;font-size:11px;line-height:1.5;color:#373451!important}
@media(max-width:1100px){.sv22-layout{grid-template-columns:1fr}.sv22-settings{border-right:0;border-bottom:1px solid var(--sv-line)}.sv22-home-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:780px){.sv22-education{grid-template-columns:1fr;gap:25px}}@media(max-width:580px){.sv22-wrap{width:min(100% - 22px,1360px)}.sv22-hero{padding:31px 0 90px;border-radius:0 0 23px 23px}.sv22-crumb{margin-bottom:27px}.sv22-hero h1{font-size:clamp(35px,9vw,46px)!important}.sv22-workspace{border-radius:16px}.sv22-workhead{padding:17px}.sv22-ready{display:none}.sv22-settings,.sv22-output{padding:15px}.sv22-controls{gap:9px}.sv22-stage{min-height:330px;padding:10px}.sv22-home-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sv22-home-grid a{padding:14px}.sv22-menu[open] .sv22-menu-links{grid-template-columns:1fr}}
@media(max-width:370px){.sv22-controls{grid-template-columns:1fr}.sv22-home-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.sv22-page *,.sv22-home *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}