/* Solvory Wave 15 — premium file studio, desktop + mobile (not global). */
.sv15-page{background:#fff;color:#28253d;font-family:"Solvory DM Sans",system-ui,sans-serif;overflow:clip}
.sv15-page *{box-sizing:border-box}
.sv15-page .sv-calc-hero{background:radial-gradient(ellipse at 95% -15%,#d9d0ff,transparent 58%),linear-gradient(130deg,#fbfaff,#f4f1ff)!important}
.sv15-page .sv-calc-kicker{background:#fff;border:1px solid #d9d0f5;border-radius:100px;color:#6653be;font-size:10px;font-weight:900;letter-spacing:.12em}
.sv15-page .sv-calc-hero h1{font:900 clamp(42px,5.2vw,72px)/1.1 "Solvory Manrope",system-ui,sans-serif!important;letter-spacing:-.07em!important;text-wrap:balance}
.sv15-page .sv-calc-hero-points span{background:#fff;border:1px solid #e4dcf4;border-radius:12px;padding:10px 13px;font-size:10.5px;color:#625d78}
.sv15-page .sv-calc-article section{background:#fff!important}
.w15-root{font-family:"Solvory DM Sans",system-ui,sans-serif;color:#312943;border:1px solid #e3ddef;border-radius:25px;overflow:hidden;background:#fff;box-shadow:0 22px 60px #422d8217}
.w15-root *{box-sizing:border-box}
.w15-root :is(input,select,textarea,button){font-family:"Solvory DM Sans",system-ui,sans-serif;max-width:100%}
.w15-root :is(input,select,textarea,button,a):focus-visible{outline:3px solid #a68bf1!important;outline-offset:3px!important}
.w15-head{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:31px clamp(19px,3vw,34px);background:radial-gradient(ellipse at 95% -20%,#7766bd77,transparent 61%),linear-gradient(115deg,#23213c,#403065 86%);color:#fff}
.w15-head-copy{max-width:650px;min-width:0}
.w15-eyebrow,.w15-panel-kicker{font:900 10px/1.5 "Solvory DM Sans",system-ui,sans-serif!important;letter-spacing:.14em!important;color:#c9bcff!important}
.w15-head h2{color:#fff!important;font:900 clamp(25px,2.9vw,38px)/1.14 "Solvory Manrope",system-ui,sans-serif!important;letter-spacing:-.05em!important;margin:9px 0 11px!important}
.w15-head p{color:#dcd7ee!important;font:520 12px/1.7 "Solvory DM Sans",system-ui,sans-serif!important;margin:0!important}
.w15-security{white-space:nowrap;border:1px solid #ffffff44;background:#ffffff14;border-radius:100px;padding:10px 13px;font-size:9px;color:#e9f6ec;letter-spacing:.03em;font-weight:850}
.w15-strip{display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap;padding:13px clamp(19px,3vw,33px);border-bottom:1px solid #e8e3f2;background:#faf8ff;color:#756e88;font:800 10px/1.5 "Solvory DM Sans",system-ui,sans-serif}
.w15-strip>span:first-child{display:inline-flex;align-items:center;gap:9px;letter-spacing:.1em;color:#6651ba}
.w15-dot{width:7px;height:7px;background:#4dc391;border-radius:50%;box-shadow:0 0 0 4px #44bb8723}
.w15-layout{display:grid;grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr);align-items:stretch}
.w15-panel{padding:clamp(22px,2.7vw,33px);min-width:0}
.w15-input-panel{border-right:1px solid #ede8f6;background:#fff}
.w15-results-panel{background:linear-gradient(151deg,#fbfaff,#f6f4fc)}
.w15-panel-kicker{color:#745dba!important}
.w15-panel h3{font:900 clamp(19px,2vw,25px)/1.3 "Solvory Manrope",system-ui,sans-serif!important;letter-spacing:-.045em!important;color:#2f2948!important;margin:8px 0 20px!important}
.w15-drop{position:relative;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;min-height:158px;border:2px dashed #c4b5e8;border-radius:17px;background:radial-gradient(circle at center top,#eee8ff,#faf9ff 76%);padding:18px;text-align:center;cursor:pointer;transition:background .2s,border-color .2s}
.w15-drop.dragging,.w15-drop:focus-within,.w15-drop:hover{border-color:#896fea;background:#f1ebff}
.w15-drop-icon{display:grid;place-items:center;border-radius:13px;background:#e2d7ff;color:#694ec8;width:47px;height:47px;font-size:27px}
.w15-drop strong{font-size:12.5px;color:#41335c}
.w15-drop small{font-size:10px;line-height:1.5;color:#887d9b}
.w15-drop input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%!important;height:100%!important;max-width:none!important}
.w15-file-list{display:flex;flex-direction:column;gap:5px;min-height:38px;padding:12px 0;margin-bottom:13px;color:#928a9f;font-size:10.5px}
.w15-file-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 10px;border-radius:9px;background:#f8f6fe;color:#5f5577}
.w15-file-row span{min-width:0;word-break:break-all}
.w15-file-row small{white-space:nowrap;color:#837b97}
.w15-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.w15-field{display:flex;flex-direction:column;gap:7px;min-width:0}
.w15-field>span{font:850 11px/1.45 "Solvory DM Sans",system-ui,sans-serif;color:#574c6d}
.w15-field>small{font-size:9px;line-height:1.5;color:#8c8199}
.w15-field:has(input[type=text]){grid-column:span 2}
.w15-field :is(input,select),.w15-placement :is(input,select){display:block;width:100%!important;min-width:0!important;min-height:44px!important;border:1px solid #dfd8ed!important;border-radius:11px!important;padding:10px 12px!important;background:#fff!important;color:#2b2743!important;box-shadow:none!important;font-size:12px!important;line-height:1.4!important}
.w15-field :is(input,select):focus,.w15-placement :is(input,select):focus{border-color:#9d87e9!important;box-shadow:0 0 0 4px #957ce721!important}
.w15-placement{margin-top:22px;padding:17px;border:1px solid #e7dff4;background:#fbfaff;border-radius:15px}
.w15-placement-head{display:flex;flex-direction:column;gap:5px;margin-bottom:13px}
.w15-placement-head strong{font-size:10px;letter-spacing:.1em;color:#6a53bd}
.w15-placement-head small{color:#81778e;font-size:10px}
.w15-placement-controls{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:14px}
.w15-placement-controls label{display:flex;flex-direction:column;gap:5px;font-size:10px;color:#6d6086;min-width:75px;flex:1}
.w15-preview-area{background:#ede9f7;border:1px solid #dcd2f0;border-radius:13px;overflow:auto;min-height:160px;max-height:370px;padding:10px;display:grid;place-items:start center}
.w15-preview-canvas{display:block;max-width:100%!important;height:auto!important;touch-action:none;cursor:crosshair;border:1px solid #c5bcdf;background:#fff;box-shadow:0 8px 24px #3720601d}
.w15-regions{display:flex;flex-wrap:wrap;gap:6px;margin-top:11px;font-size:10px;color:#8a829b}
.w15-region-tag{padding:5px 8px;border:1px solid #e1d6f6;border-radius:8px;background:#fff;color:#6653aa}
.w15-region-buttons{display:flex;gap:9px;margin-top:12px}
.w15-region-buttons button{padding:9px 12px;border:1px solid #ddd2ef;border-radius:9px;background:#fff;color:#6853b6;cursor:pointer;font-size:10px;font-weight:800}
.w15-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:20px}
.w15-actions button{min-height:49px!important;border-radius:11px!important;padding:11px 15px!important;font-size:12px!important;font-weight:900!important;cursor:pointer}
.w15-run{flex:1 1 180px!important;background:linear-gradient(115deg,#574bdd,#8864ec)!important;border:0!important;color:#fff!important;box-shadow:0 9px 19px #6652d334}
.w15-run:disabled{opacity:.65;cursor:wait!important}
.w15-reset{background:#f0ebff!important;border:1px solid #e1d7f7!important;color:#6852ba!important}
.w15-status{display:block;margin-top:13px;padding:11px 13px;border-radius:10px;border:1px solid #e8e2f4;background:#faf8fe;color:#776b89;font-size:11px;line-height:1.65;overflow-wrap:anywhere}
.w15-running{border-color:#d9cef6;background:#f4efff;color:#6349ac}
.w15-success{border-color:#bcebd4;background:#eafaef;color:#236b50}
.w15-error{border-color:#f3c5c4;background:#fff3f2;color:#ad3734}
.w15-caution{margin-top:15px;padding:15px;border:1px solid #f0e2c4;border-radius:12px;background:#fffbef}
.w15-caution strong{font-size:10.5px;color:#997329}
.w15-caution p{font-size:10.5px!important;line-height:1.7!important;color:#8a775d!important;margin:6px 0 0!important}
.w15-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:315px;padding:22px;gap:13px;background:#fff;border:1px dashed #d9cfee;border-radius:17px}
.w15-empty-icon{width:68px;height:68px;display:grid;place-items:center;border-radius:17px;background:linear-gradient(130deg,#eee7ff,#e3d9ff);color:#7558d8;font-size:33px}
.w15-empty strong{color:#392f55;font-size:15px}
.w15-empty p{max-width:270px;font-size:11.5px!important;line-height:1.7!important;color:#867e96!important;margin:0!important}
.w15-output[hidden],.w15-empty[hidden]{display:none!important}
.w15-summary{padding:16px;border-radius:13px;border:1px solid #e1d8f2;background:#fff}
.w15-complete{display:inline-flex;padding:6px 10px;border-radius:999px;background:#e5f8eb;border:1px solid #bceccc;color:#246b4b;font-size:10px;font-weight:900;letter-spacing:.07em}
.w15-summary p{font-size:11.5px!important;line-height:1.8!important;color:#6f6780!important;margin:11px 0 0!important;overflow-wrap:anywhere}
.w15-downloads{display:grid;gap:9px;margin-top:14px}
.w15-download{display:flex;align-items:center;min-height:46px;padding:12px 14px;border:1px solid #ddd3f7;border-radius:11px;background:#fff;color:#6746b8!important;text-decoration:none!important;font-size:11.5px;font-weight:850;overflow-wrap:anywhere}
.w15-download:hover{background:#ede6ff}
.w15-table-preview{max-height:280px;overflow:auto;border-radius:12px;background:#fff;border:1px solid #e9e1f4;margin-top:12px}
.w15-table-preview table{border-collapse:collapse;font-size:10px;color:#5c556d;width:100%;min-width:340px}
.w15-table-preview td{padding:10px;border-bottom:1px solid #eee9f6;text-align:left;overflow-wrap:anywhere}
.w15-table-preview tr:nth-child(even){background:#fbfaff}
.w15-result-image{max-width:100%;height:auto;margin-top:14px;background:#fff;border-radius:13px;border:1px solid #dfd8ed}
.w15-compare-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-bottom:16px}
.w15-compare-file{min-width:0;padding:9px;border:1px solid #e3dcef;border-radius:12px;background:#fff}
.w15-compare-file strong{display:block;font-size:10px;color:#6a5c82;overflow-wrap:anywhere;margin-bottom:7px}
.w15-compare-file canvas{display:block;max-width:100%;height:auto;background:#fff}
@media(max-width:1120px){.w15-layout{grid-template-columns:1fr}.w15-input-panel{border-right:0;border-bottom:1px solid #eee9f7}.w15-empty{min-height:180px}}
@media(max-width:760px){.w15-root{border-radius:18px}.w15-head{padding:25px 19px;display:block}.w15-head h2{font-size:clamp(23px,6.5vw,30px)!important}.w15-security{display:inline-block;margin-top:14px}.w15-strip{padding:12px 17px;gap:5px}.w15-strip span:last-child{font-size:9px}.w15-panel{padding:21px 17px}.w15-fields{gap:11px}.w15-drop{min-height:144px;padding:15px}.w15-panel h3{font-size:21px!important}.w15-field :is(input,select),.w15-placement :is(input,select){font-size:16px!important}.w15-preview-area{max-height:280px}.w15-compare-pair{grid-template-columns:repeat(2,minmax(0,1fr))}.w15-actions button{min-height:48px}.sv15-page .sv-calc-hero h1{font-size:clamp(32px,8vw,43px)!important}}
@media(max-width:400px){.w15-fields{grid-template-columns:1fr}.w15-field:has(input[type=text]){grid-column:1}.w15-placement-controls{flex-direction:column}.w15-placement-controls label{width:100%}}
@media(prefers-reduced-motion:reduce){.w15-drop,.w15-run,.w15-download{transition:none!important}}
