/* FlyQuant cabinet: three ways to start a calculation (Закупки page) + upload dialogs. Matches the 8f cabinet tokens. */
.fqx-scenarios{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0 0 25px}
.fqx-card{position:relative;display:flex;flex-direction:column;gap:12px;text-align:left;background:#fff;border:1px solid var(--line);
  border-radius:12px;padding:22px 22px 20px;min-height:186px;cursor:pointer;transition:border-color .15s,box-shadow .15s,transform .15s;overflow:hidden}
.fqx-card:hover{border-color:#c9d2ff;box-shadow:0 14px 34px #2d4cff14;transform:translateY(-2px)}
.fqx-card:focus-visible{outline:2px solid var(--blue);outline-offset:2px}
.fqx-card::after{content:"";position:absolute;inset:auto -40px -60px auto;width:150px;height:150px;border-radius:50%;background:radial-gradient(#2d4cff12,transparent 70%)}
.fqx-icon{width:42px;height:42px;border-radius:11px;display:grid;place-items:center;background:#edf0ff;color:var(--blue)}
.fqx-card.alt .fqx-icon{background:#e9f7ff;color:#1f8fd6}
.fqx-card.calc .fqx-icon{background:#f0ecff;color:#6b4ff0}
.fqx-step{position:absolute;top:20px;right:20px;font-size:9px;font-weight:750;letter-spacing:1.6px;color:#a3abbb}
.fqx-card strong{font-size:16px;font-weight:750;letter-spacing:-.4px;color:var(--text)}
.fqx-card span.fqx-desc{color:#7c8496;font-size:11.5px;line-height:1.6}
.fqx-cta{margin-top:auto;display:inline-flex;align-items:center;gap:7px;color:var(--blue);font-size:11px;font-weight:750}
.fqx-chips{display:flex;flex-wrap:wrap;gap:6px}
.fqx-chips i{font-style:normal;font-size:9.5px;font-weight:650;color:#68738a;background:#f3f5fa;border:1px solid #e8ebf2;border-radius:5px;padding:3px 7px}

.fqx-overlay{z-index:60;position:fixed;inset:0;display:flex;align-items:center;justify-content:center;padding:24px;background:#14223c55;
  -webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}
.fqx-modal{background:#fff;border:1px solid #e8ecf6;border-radius:16px;width:min(680px,100%);max-height:92dvh;overflow:auto;padding:30px;box-shadow:0 30px 120px #14223c30}
.fqx-head{display:flex;justify-content:space-between;gap:16px;margin-bottom:20px}
.fqx-head .eyebrow{margin-bottom:8px}
.fqx-head p{color:#7c8496;font-size:12px;margin-top:6px;line-height:1.6}
.fqx-close{width:36px;height:36px;border-radius:9px;display:grid;place-items:center;color:#7c8496;flex-shrink:0}
.fqx-close:hover{background:#f3f5fa}
.fqx-drop{border:1.5px dashed #c9d2ec;border-radius:12px;background:#fafbff;padding:26px 20px;display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;cursor:pointer;transition:background .15s,border-color .15s}
.fqx-drop:hover,.fqx-drop.over{background:#f1f4ff;border-color:var(--blue)}
.fqx-drop svg{color:var(--blue)}
.fqx-drop strong{font-size:13px}
.fqx-drop small{color:#8a92a4;font-size:11px;line-height:1.6}
.fqx-files{margin:12px 0 0;display:grid;gap:7px}
.fqx-file{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:9px;padding:9px 11px;font-size:12px}
.fqx-file b{font-weight:650;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fqx-file small{color:#8a92a4;white-space:nowrap}
.fqx-file button{color:#9aa2b1;border-radius:6px;padding:3px}
.fqx-file button:hover{color:#d33a3a;background:#fff1f1}
.fqx-bar{height:4px;border-radius:3px;background:#edf0f7;overflow:hidden;width:90px}
.fqx-bar i{display:block;height:100%;background:var(--blue);width:0;transition:width .2s}
.fqx-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:20px}
.fqx-grid .wide{grid-column:1/-1}
.fqx-field{display:flex;flex-direction:column;gap:8px;color:#65718a;font-size:11px;font-weight:650;letter-spacing:0;margin:0}
.fqx-field input{color:#394863;background:#fff;border:1px solid #dfe4ef;border-radius:7px;width:100%;padding:11px 12px;font-size:12.5px;max-width:none}
.fqx-field input:focus{border-color:var(--blue);outline:none;box-shadow:0 0 0 3px #2d4cff1a}
.fqx-seg{display:flex;flex-wrap:wrap;gap:6px}
.fqx-seg button{border:1px solid #dfe4ef;border-radius:7px;padding:9px 12px;font-size:11.5px;font-weight:650;color:#56627a;background:#fff;transition:all .12s}
.fqx-seg button:hover{border-color:#bcc7ff}
.fqx-seg button[aria-pressed=true]{background:var(--blue);border-color:var(--blue);color:#fff;box-shadow:0 4px 10px #2d4cff24}
.fqx-profit{display:flex;gap:10px;align-items:stretch}
.fqx-profit .fqx-num{position:relative;width:120px;flex-shrink:0}
.fqx-profit .fqx-num input{padding-right:28px;font-size:15px;font-weight:700}
.fqx-profit .fqx-num em{position:absolute;right:11px;top:50%;transform:translateY(-50%);font-style:normal;color:#8a92a4;font-weight:700}
.fqx-preview{margin-top:18px;border-radius:12px;background:linear-gradient(110deg,#edf0ff,#f6f7ff);border:1px solid #e2e7fe;padding:16px 18px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.fqx-preview div{display:flex;flex-direction:column;gap:5px}
.fqx-preview span{color:#7c8496;font-size:10px;font-weight:650}
.fqx-preview b{font-size:15px;font-weight:750;letter-spacing:-.3px;font-variant-numeric:tabular-nums}
.fqx-preview p{grid-column:1/-1;color:#7c8496;font-size:10.5px;line-height:1.55;margin:0}
.fqx-note{margin-top:16px;display:flex;gap:10px;color:#6c768b;font-size:11px;line-height:1.6;background:#f7f8fb;border-radius:10px;padding:12px 14px}
.fqx-note svg{color:var(--blue);margin-top:2px}
.fqx-error{margin-top:14px;color:#b42318;background:#fff3f2;border:1px solid #ffd7d3;border-radius:9px;padding:10px 12px;font-size:12px}
.fqx-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}
.fqx-spin{animation:fqxspin 1s linear infinite}
@keyframes fqxspin{to{transform:rotate(360deg)}}
@media (max-width:980px){.fqx-scenarios{grid-template-columns:1fr}.fqx-card{min-height:0}}
@media (max-width:560px){.fqx-modal{padding:20px}.fqx-grid{grid-template-columns:1fr}.fqx-preview{grid-template-columns:1fr}.fqx-profit{flex-direction:column}.fqx-profit .fqx-num{width:100%}}
