@layer legacy {
:root{
  --bg:#f6f7fb;--card:#fff;--text:#171a21;--muted:#6b7280;--line:#e4e7ec;--line2:#d0d5dd;
  --primary:#5b4fe9;--primary2:#4338ca;--primarySoft:#efedff;--green:#15803d;--greenSoft:#eaf8ef;
  --amber:#b45309;--amberSoft:#fff7e8;--red:#c62828;--redSoft:#fff0f0;--blue:#1769aa;--blueSoft:#eef7ff;
  --violet:#7c3aed;--violetSoft:#f4efff;--dark:#111827;--sidebar:#fff;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-size:14px}button,input,select,textarea{font:inherit}
button{cursor:pointer}.hidden{display:none!important}.muted{color:var(--muted)}.small{font-size:12px}.mono{font-variant-numeric:tabular-nums}
.shell{display:grid;grid-template-columns:238px 1fr;min-height:100vh}.sidebar{background:var(--sidebar);border-right:1px solid var(--line);padding:16px 12px;position:sticky;top:0;height:100vh}
.brand{display:flex;align-items:center;gap:10px;padding:4px 8px 20px}.brand-mark{width:38px;height:38px;border-radius:12px;background:linear-gradient(135deg,var(--primary),#2762d9);display:grid;place-items:center;color:#fff;font-weight:800}.brand b{display:block;color:var(--primary);letter-spacing:.02em}.brand small{color:var(--muted)}
.nav-section{font-size:10px;color:#98a2b3;text-transform:uppercase;font-weight:700;padding:14px 10px 7px;letter-spacing:.08em}.nav-item{display:flex;align-items:center;gap:10px;width:100%;border:0;background:transparent;color:#667085;border-radius:10px;padding:10px 11px;margin:2px 0;text-align:left;font-weight:600}.nav-item:hover{background:#f5f5fb;color:#222}.nav-item.active{background:var(--primarySoft);color:var(--primary);position:relative}.nav-item.active:before{content:"";position:absolute;left:0;width:3px;height:22px;border-radius:0 4px 4px 0;background:var(--primary)}
.main{min-width:0}.topbar{height:58px;border-bottom:1px solid var(--line);background:rgba(255,255,255,.86);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:flex-end;padding:0 24px;position:sticky;top:0;z-index:20}.role-switch{display:flex;gap:3px;background:#f2f4f7;border-radius:10px;padding:3px}.role-switch button{border:0;background:transparent;padding:7px 10px;border-radius:8px;color:var(--muted);font-weight:600}.role-switch button.active{background:#fff;color:var(--text);box-shadow:0 1px 3px #0001}
.content{max-width:1500px;margin:0 auto;padding:24px}.page-title{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:20px}.page-title h1{margin:0;font-size:28px;letter-spacing:-.03em}.page-title p{margin:6px 0 0;color:var(--muted);max-width:760px}.actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.btn{border:1px solid var(--line2);background:#fff;border-radius:10px;min-height:38px;padding:0 13px;font-weight:700;color:#344054;display:inline-flex;align-items:center;justify-content:center;gap:7px}.btn:hover{box-shadow:0 5px 14px #10182812;transform:translateY(-1px)}.btn.primary{background:var(--primary);border-color:var(--primary);color:#fff}.btn.dark{background:var(--dark);border-color:var(--dark);color:#fff}.btn.soft{background:var(--primarySoft);border-color:#ddd9ff;color:var(--primary)}.btn.danger{background:var(--redSoft);border-color:#ffd0d0;color:var(--red)}.btn:disabled{opacity:.45;cursor:not-allowed;transform:none;box-shadow:none}.btn.sm{min-height:32px;padding:0 10px;font-size:12px}
.card{background:var(--card);border:1px solid var(--line);border-radius:14px;box-shadow:0 1px 2px #10182808}.card-pad{padding:18px}.toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:14px}.field{display:grid;gap:6px}.field label{font-size:12px;color:#667085;font-weight:700}.input,.select,.textarea{border:1px solid var(--line2);background:#fff;border-radius:10px;min-height:39px;padding:8px 11px;color:#1d2939;outline:none}.input:focus,.select:focus,.textarea:focus{border-color:#9c95f5;box-shadow:0 0 0 3px #5b4fe914}.textarea{min-height:80px;resize:vertical}
.search{min-width:280px;flex:1}.filter-tabs{display:flex;gap:5px;border-bottom:1px solid var(--line);padding:0 14px}.filter-tabs button{border:0;background:transparent;padding:12px 10px;color:var(--muted);font-weight:700;border-bottom:2px solid transparent}.filter-tabs button.active{color:var(--primary);border-bottom-color:var(--primary)}
.table-wrap{overflow:auto}.table{width:100%;border-collapse:collapse}.table th{text-align:left;background:#fafbfc;color:#667085;font-size:11px;text-transform:uppercase;letter-spacing:.04em;padding:11px 13px;border-bottom:1px solid var(--line);white-space:nowrap}.table td{padding:13px;border-bottom:1px solid #eef0f3;vertical-align:middle}.table tbody tr:hover{background:#fafaff}.table .clickable{cursor:pointer}.money{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.strong{font-weight:800}.sub{display:block;font-size:12px;color:var(--muted);margin-top:3px}
.badge{display:inline-flex;align-items:center;gap:5px;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:800;border:1px solid transparent;white-space:nowrap}.badge.active,.badge.work{color:var(--green);background:var(--greenSoft);border-color:#c5edd2}.badge.wait{color:#667085;background:#f2f4f7;border-color:#eaecf0}.badge.progress{color:var(--amber);background:var(--amberSoft);border-color:#fde2b7}.badge.attn{color:var(--red);background:var(--redSoft);border-color:#ffd1d1}.badge.archived{color:#667085;background:#f2f4f7;border-color:#ddd}.badge.vzk{color:#1d4ed8;background:#eff6ff;border-color:#bfdbfe}.badge.vzp{color:#7c3aed;background:#f5f3ff;border-color:#ddd6fe}.badge.vzl{color:#15803d;background:#f0fdf4;border-color:#bbf7d0}
.app-frame{border:1px solid #dadde5;border-radius:18px;background:#f8f9fc;overflow:hidden;box-shadow:0 18px 44px #1018280d}.app-frame-head{background:#171a23;color:#fff;display:flex;align-items:center;justify-content:space-between;padding:12px 16px}.app-brand{display:flex;align-items:center;gap:10px}.app-dot{width:28px;height:28px;border-radius:8px;background:linear-gradient(135deg,#786cf4,#3f61d8);display:grid;place-items:center;font-weight:900}.app-frame-head small{color:#aab1c0}.app-body{padding:20px}
.notice{border:1px solid #d9d6ff;background:#f5f3ff;border-radius:12px;padding:12px 14px;color:#4c3dbb;margin-bottom:16px}.warning{border-color:#ffd7a5;background:#fff8ec;color:#9a5a0a}.danger-note{border-color:#ffd0d0;background:#fff5f5;color:#b42318}
.kpi-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-bottom:14px}.kpi{padding:14px;border:1px solid var(--line);border-radius:12px;background:#fff;min-height:92px}.kpi span{display:block;color:var(--muted);font-size:11px;margin-bottom:9px}.kpi b{font-size:17px;display:block;letter-spacing:-.02em}.kpi small{display:block;margin-top:7px;color:var(--muted)}.kpi.good{border-color:#c7ead3;background:#f7fcf8}.kpi.warn{border-color:#f3d39f;background:#fffaf2}.kpi.purple{border-color:#ddd6fe;background:#faf8ff}
.container-tabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:16px}.container-tabs button{border:1px solid var(--line2);background:#fff;border-radius:9px;padding:8px 11px;color:#667085;font-weight:800}.container-tabs button.active{background:#171a23;color:#fff;border-color:#171a23}
.grid-2{display:grid;grid-template-columns:1.2fr .8fr;gap:14px}.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.split{display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:14px}.section-title{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;padding:16px 18px;border-bottom:1px solid var(--line)}.section-title h2,.section-title h3{margin:0}.section-title p{margin:5px 0 0;color:var(--muted)}
.passport{max-width:920px;margin:0 auto}.passport-hero{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.passport-number{font-size:32px;font-weight:850;letter-spacing:-.04em}.meta-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:18px}.meta{border-top:1px solid var(--line);padding-top:12px}.meta small{display:block;color:var(--muted);margin-bottom:5px}.meta b{display:block}.passport-lock{background:#fbfbff;border:1px dashed #cfcafc;border-radius:14px;padding:18px;text-align:center;margin-top:18px}.passport-lock .lock{font-size:30px}.passport-lock p{color:var(--muted)}
.modal-backdrop{position:fixed;inset:0;background:#10182880;display:grid;place-items:center;z-index:80;padding:18px}.modal{width:min(720px,100%);max-height:92vh;overflow:auto;background:#fff;border-radius:16px;box-shadow:0 24px 70px #0004}.modal.wide{width:min(1120px,100%)}.modal-head{padding:17px 19px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.modal-head h2{margin:0}.modal-body{padding:18px}.modal-foot{padding:14px 18px;border-top:1px solid var(--line);display:flex;justify-content:flex-end;gap:8px;position:sticky;bottom:0;background:#fff}.close{border:0;background:#f2f4f7;width:32px;height:32px;border-radius:9px;font-size:20px}
.choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.choice{border:1px solid var(--line2);background:#fff;border-radius:14px;padding:18px;text-align:left}.choice:hover{border-color:#a6a0f8;background:#faf9ff}.choice b{display:block;font-size:16px;margin:8px 0 5px}.choice p{margin:0;color:var(--muted)}
.builder{display:grid;grid-template-columns:220px minmax(0,1fr) 360px;gap:12px}.toolbox,.canvas,.calc-panel{background:#fff;border:1px solid var(--line);border-radius:14px}.toolbox{padding:12px}.toolbox h3,.calc-panel h3{margin:3px 0 12px}.block-pick{width:100%;border:1px solid var(--line);background:#fafbfc;border-radius:10px;padding:10px;text-align:left;margin-bottom:7px;font-weight:700}.block-pick:hover{border-color:#aaa4f8;background:#f7f5ff}.canvas{padding:14px;min-height:570px}.canvas-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.step-block{border:1px solid var(--line2);border-left:4px solid #667085;background:#fff;border-radius:11px;padding:11px 12px;margin:8px auto;max-width:600px;position:relative}.step-block.income{border-left-color:#e67e22;background:#fffaf5}.step-block.transfer{border-left-color:#1780c2;background:#f8fcff}.step-block.conversion{border-left-color:#7c3aed;background:#fbf9ff}.step-block.agent{border-left-color:#7655d8;background:#fbf9ff}.step-block.execution{border-left-color:#1d8b4e;background:#f7fcf9}.step-block .top{display:flex;justify-content:space-between;gap:10px}.step-block .label{font-weight:850}.step-block .details{color:var(--muted);font-size:12px;margin-top:6px}.step-block .remove{border:0;background:transparent;color:#b42318}.arrow{text-align:center;color:#98a2b3;font-size:18px}.calc-panel{padding:14px;position:sticky;top:74px;height:max-content}.calc-row{display:flex;justify-content:space-between;gap:10px;padding:8px 0;border-bottom:1px solid #f0f1f3}.calc-row:last-child{border-bottom:0}.calc-row.total{font-weight:850;font-size:16px}.calc-row.result{margin-top:8px;background:#f1fbf4;border:1px solid #caecd4;border-radius:10px;padding:12px}.calc-row.negative{color:#b42318}
.route{display:grid;gap:0;max-width:800px;margin:0 auto}.route-step{display:grid;grid-template-columns:42px 1fr;gap:10px}.route-line{display:flex;flex-direction:column;align-items:center}.route-dot{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#fff;border:2px solid var(--line2);font-weight:800;font-size:12px;z-index:1}.route-step.done .route-dot{background:var(--green);border-color:var(--green);color:#fff}.route-step.in_progress .route-dot{background:var(--amber);border-color:var(--amber);color:#fff}.route-connector{width:2px;background:#dce0e6;flex:1;min-height:18px}.route-card{border:1px solid var(--line);background:#fff;border-radius:13px;margin-bottom:10px;padding:14px}.route-card-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.route-card h3{margin:0 0 4px;font-size:16px}.route-card p{margin:0;color:var(--muted)}.route-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:12px}.route-field{background:#fafbfc;border-radius:9px;padding:9px}.route-field small{display:block;color:#98a2b3;margin-bottom:3px}.route-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:12px;padding-top:11px;border-top:1px solid #f0f1f3}
.participant-groups{display:grid;gap:12px}.participant-row{display:grid;grid-template-columns:1.2fr .8fr .8fr 120px;gap:10px;align-items:center;padding:12px 14px;border-bottom:1px solid #eef0f3}.participant-row:last-child{border-bottom:0}.avatar{width:34px;height:34px;border-radius:10px;background:#f0efff;color:var(--primary);display:grid;place-items:center;font-weight:850}.person-cell{display:flex;align-items:center;gap:10px}
.history-list{display:grid;gap:10px}.history-card{display:grid;grid-template-columns:10px 1fr;gap:12px;cursor:pointer}.history-card:hover .history-body{border-color:#aaa4f8}.history-dot{width:9px;height:9px;margin-top:17px;border-radius:50%;background:var(--primary)}.history-body{border:1px solid var(--line);background:#fff;border-radius:12px;padding:13px}.history-body header{display:flex;justify-content:space-between;gap:10px}.history-body p{margin:7px 0 0;color:var(--muted)}
.empty{padding:40px 20px;text-align:center;color:var(--muted)}.danger-zone{border:1px solid #ffc6c6;background:#fff8f8;border-radius:13px;padding:15px}.danger-zone h3{color:#b42318;margin-top:0}
.toast-stack{position:fixed;right:18px;top:72px;z-index:100;display:grid;gap:8px}.toast{background:#111827;color:#fff;border-radius:10px;padding:11px 13px;box-shadow:0 12px 32px #0003;min-width:260px}.toast.good{background:#166534}.toast.warn{background:#92400e}.toast.bad{background:#991b1b}
@media(max-width:1100px){.shell{grid-template-columns:74px 1fr}.sidebar .nav-item span,.brand-copy,.nav-section{display:none}.sidebar{padding:12px 7px}.nav-item{justify-content:center}.builder{grid-template-columns:1fr}.calc-panel{position:static}.split,.grid-2{grid-template-columns:1fr}.kpi-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:720px){.content{padding:14px}.sidebar{display:none}.shell{display:block}.kpi-grid,.grid-3,.meta-grid{grid-template-columns:1fr 1fr}.choice-grid{grid-template-columns:1fr}.route-fields{grid-template-columns:1fr 1fr}.page-title{display:block}.page-title .actions{justify-content:flex-start;margin-top:12px}}

/* v3 refinements */
.topbar{gap:10px}.role-caption{margin-right:auto;color:var(--muted);font-size:12px}.visibility-chip{border:1px solid var(--line);background:#fafbfc;border-radius:10px;padding:9px 11px;color:#667085;white-space:nowrap}
.app-brand>div:last-child{display:flex;align-items:baseline;gap:6px}.app-frame-head .app-brand small{font-size:12px;color:#aab1c0}
.plan-fact-table th:not(:first-child),.plan-fact-table td:not(:first-child){text-align:center;font-variant-numeric:tabular-nums}.plan-fact-table th:first-child,.plan-fact-table td:first-child{text-align:left}
.settlement-table th,.settlement-table td{text-align:center;font-variant-numeric:tabular-nums}.settlement-table th:first-child,.settlement-table td:first-child{text-align:center}
.accounting-table th,.accounting-table td{text-align:center;font-variant-numeric:tabular-nums}.accounting-table td:nth-child(3),.accounting-table td:nth-child(4),.accounting-table td:nth-child(6),.accounting-table td:nth-child(7){white-space:nowrap}
.payout-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:14px}.payout-box{border:1px solid var(--line);border-radius:12px;padding:13px;background:#fff}.payout-row{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:11px 0;border-bottom:1px solid #eef0f3}.payout-row:last-of-type{border-bottom:0}.payout-row>div{min-width:0}.payout-row>b{white-space:nowrap}.payout-foot{padding-top:10px;color:var(--muted);font-size:12px}.empty.compact{padding:18px 8px}
.participant-row{grid-template-columns:1.15fr .65fr .75fr .9fr 100px}.account-grid{display:grid;gap:10px}.account-edit{border:1px solid var(--line);border-radius:12px;padding:12px;background:#fafbfc}.account-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.modal-section{margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}.modal-section h3{margin:0}.modal-section p{margin:4px 0 12px}.reward-preview{margin-top:10px;padding:10px 12px;border:1px solid #ddd6fe;background:#faf8ff;border-radius:10px;color:#5147b8}.section-inline{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.vat-box{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-top:10px;padding:12px;border:1px solid #e5e7eb;background:#fcfcfd;border-radius:10px}.builder-income-grid{grid-template-columns:1fr 1fr!important;margin-top:8px}.reward-summary{margin-top:12px;border-top:1px solid var(--line);padding-top:10px}.reward-summary h4{margin:0 0 5px}.reward-summary small{display:block;color:var(--muted);margin-top:2px}.step-block.reward{border-left-color:#e11d48;background:#fff8fa}
.passport-lock.unlocked{border-color:#b7e2c5;background:#f5fbf7}.passport-lock.unlocked .lock{color:var(--green);font-weight:900}
.route{max-width:1000px}.route-fields{grid-template-columns:repeat(4,minmax(0,1fr))}.route-field b{word-break:break-word}.route-field .sub{line-height:1.35}
@media(max-width:1100px){.payout-grid{grid-template-columns:1fr}.participant-row{grid-template-columns:1fr 1fr}.vat-box{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.role-caption{display:none}.participant-row{grid-template-columns:1fr}.vat-box,.builder-income-grid{grid-template-columns:1fr!important}}

/* v4 — container architecture + formatting */
.input,.select,.textarea{width:100%;max-width:100%;min-width:0}.field{min-width:0}.builder-field-grid,.step-form-grid,.commission-grid,.account-pair,.party-stack>*{min-width:0}
.actions.left{justify-content:flex-start}.actions.center{justify-content:center}.subnav-actions{margin-bottom:10px}.neg{color:var(--red)!important}.single-col{grid-template-columns:1fr!important}
.containers-table .step-code,.movement-table .step-code{white-space:nowrap;min-width:104px}.containers-table td,.movement-table td{vertical-align:middle}
.containers-table th:nth-child(6),.containers-table td:nth-child(6),.containers-table th:nth-child(7),.containers-table td:nth-child(7){text-align:center}
.containers-table .template-cell{max-width:220px;line-height:1.25}.containers-table .template-cell .badge{white-space:normal;text-align:left;justify-content:flex-start}
.builder{grid-template-columns:190px minmax(0,1fr) 330px;align-items:start}.builder-title{align-items:center}.toolbox{position:sticky;top:74px}.canvas{min-width:0;padding:16px}.step-block{max-width:760px;width:100%;overflow:hidden}.step-block.execution{border-left-color:#1d8b4e;background:#f7fcf9}.step-block .top{align-items:flex-start}.block-fields{display:grid;gap:12px;margin-top:12px}.builder-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.commission-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}.computed-field{min-height:39px;border:1px solid var(--line);background:#f6f7f9;border-radius:10px;padding:9px 11px;color:#344054;font-variant-numeric:tabular-nums;overflow:hidden;text-overflow:ellipsis}.vat-stack{border:1px solid var(--line);border-radius:11px;background:#fcfcfd;padding:10px}.builder-note{font-size:12px;line-height:1.45;margin:12px 0 0}.calc-panel small{display:block;color:var(--muted);margin-top:3px}.calc-panel .calc-row>span{min-width:0}.calc-panel .calc-row>b{white-space:nowrap}.reward-summary{margin-top:10px}.reward-summary .calc-row{align-items:flex-start}
.create-config-body{display:grid;gap:16px}.create-points{display:grid;grid-template-columns:1fr 40px 1fr;align-items:center;padding:14px 18px;background:#fafaff}.create-points.compact{margin-bottom:16px}.create-points>div:not(.point-arrow){display:grid;gap:5px}.create-points span{font-size:11px;color:var(--muted);text-transform:uppercase;font-weight:700}.point-arrow{text-align:center;font-size:22px;color:var(--primary)}.create-finance-grid{align-items:end}.template-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.template-card{border:1px solid var(--line);border-radius:12px;background:#fff;padding:12px;text-align:left;display:grid;gap:5px;color:var(--text)}.template-card span{color:var(--muted);font-size:12px;line-height:1.35}.template-card:hover,.template-card.selected{border-color:#9d96f5;background:#faf9ff;box-shadow:0 0 0 2px #5b4fe910}.template-card.selected:after{content:'Выбрано';font-size:10px;color:var(--primary);font-weight:800}.template-card.manual{border-style:dashed;background:#f8f7ff}
.draft-participants{display:grid;gap:9px;margin-top:12px}.draft-participant-card{display:grid;grid-template-columns:1.1fr 1fr 1fr auto;gap:14px;align-items:center;border:1px solid var(--line);border-radius:12px;padding:12px}.draft-participant-card>div{min-width:0}.draft-participant-card .sub{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.participant-toolbar{margin-bottom:12px}.participant-row{grid-template-columns:1.25fr .65fr .85fr 1fr!important;cursor:pointer;transition:.15s ease}.participant-row:hover{background:#f9f8ff;box-shadow:inset 3px 0 0 var(--primary)}.participant-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.account-view-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.account-view{border:1px solid var(--line);border-radius:10px;padding:11px;background:#fafbfc;display:grid;gap:4px}.account-view span{color:var(--muted);font-size:12px}.account-edit{overflow:hidden}.account-edit .builder-field-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.account-head{gap:10px}
.document-toolbar{display:grid;grid-template-columns:minmax(220px,1.5fr) repeat(4,minmax(145px,.8fr)) auto;gap:9px;padding:14px;align-items:center}.document-toolbar>*{min-width:0}
.settlement-kpis{grid-template-columns:repeat(3,minmax(0,1fr));max-width:none}.settlement-card{margin-top:12px}.settlement-table th,.settlement-table td{text-align:center!important}.settlement-table td:first-child,.settlement-table th:first-child{text-align:center!important}.settlement-table td{white-space:nowrap}
.accounting-top{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}.accounting-grid{align-items:start}.economy-list{padding:12px 18px 18px}.eco-row{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid #eef0f3}.eco-row b,.eco-result b{white-space:nowrap}.eco-row.plan-result{margin-top:4px;border-bottom:0}.eco-result{display:flex;justify-content:space-between;gap:12px;margin-top:8px;padding:11px 13px;border:1px solid #bfe8ca;background:#f2fbf5;border-radius:10px;width:100%}.movement-table{table-layout:auto}.movement-table th,.movement-table td{text-align:center!important}.movement-table td:nth-child(3),.movement-table td:nth-child(4),.movement-table td:nth-child(5){white-space:normal!important;min-width:150px}.movement-table .step-code{white-space:nowrap!important;word-break:normal!important;min-width:112px}.movement-table td.money{white-space:nowrap!important}
.step-modal-body{display:grid;gap:14px;overflow-x:hidden}.step-section{border:1px solid var(--line);border-radius:13px;padding:14px;background:#fff;overflow:hidden}.step-section h3{margin:0 0 4px}.step-section>p{margin:0 0 12px}.step-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.party-stack{display:grid;grid-template-columns:1fr 1fr;gap:10px}.party-card{border:1px solid #e7e7ee;background:#fafbfc;border-radius:11px;padding:11px;display:grid;gap:10px;min-width:0}.account-pair{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}.modal.wide{overflow:hidden}.modal.wide .modal-body{overflow-y:auto;overflow-x:hidden;max-height:calc(92vh - 130px)}.step-type-choices{grid-template-columns:repeat(2,minmax(0,1fr))}

@media(max-width:1280px){.builder{grid-template-columns:170px minmax(0,1fr) 300px}.document-toolbar{grid-template-columns:1fr 1fr 1fr}.accounting-top{grid-template-columns:repeat(2,1fr)}}
@media(max-width:1050px){.builder{grid-template-columns:1fr}.toolbox,.calc-panel{position:static}.builder .toolbox{display:grid;grid-template-columns:repeat(2,1fr);gap:7px}.builder .toolbox h3,.builder .toolbox .notice{grid-column:1/-1}.block-pick{margin:0}.document-toolbar{grid-template-columns:1fr 1fr}.draft-participant-card{grid-template-columns:1fr 1fr}.participant-row{grid-template-columns:1fr 1fr!important}}
@media(max-width:720px){.builder-field-grid,.step-form-grid,.commission-grid,.account-pair,.party-stack,.participant-detail-grid,.account-view-grid,.template-grid{grid-template-columns:1fr}.create-points{grid-template-columns:1fr}.point-arrow{transform:rotate(90deg)}.document-toolbar,.accounting-top{grid-template-columns:1fr}.draft-participant-card{grid-template-columns:1fr}.step-type-choices{grid-template-columns:1fr}}
.participant-toolbar{display:grid!important;grid-template-columns:220px 220px minmax(260px,1fr);gap:9px}.participant-toolbar>*{min-width:0}
.quick-role-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}
@media(max-width:900px){.participant-toolbar{grid-template-columns:1fr}}

/* v6 — FX registry, multicurrency accounting/settlements, lifecycle, audit */
.summary-title{align-items:flex-start}.summary-title>div:first-child{min-width:0}.deal-direction{margin-top:12px;display:grid;grid-template-columns:minmax(0,1fr) 52px minmax(0,1fr);align-items:center;gap:8px;max-width:760px}.deal-direction>div:not(.deal-arrow){border:1px solid var(--line);border-radius:12px;background:#fff;padding:11px 13px;display:grid;gap:4px;min-width:0}.deal-direction span,.container-direction-compact span{font-size:10px;color:#667085;text-transform:uppercase;letter-spacing:.06em;font-weight:800}.deal-direction b,.container-direction-compact b{font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.deal-arrow{text-align:center;color:var(--primary);font-size:25px;font-weight:800}.summary-kpis{grid-template-columns:repeat(5,minmax(0,1fr));}.summary-route-card{margin-bottom:14px}.route-progress-label{display:flex;gap:14px;align-items:baseline}.route-progress-label span{font-size:12px;color:var(--muted)}.route-stat-row{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--line)}.route-stat-row>div{padding:14px 18px;display:grid;gap:8px}.route-stat-row>div+div{border-left:1px solid var(--line)}.route-stat-row span{font-size:12px;color:var(--muted)}.route-stat-row b{font-size:21px}.summary-progress{height:8px;margin:16px 18px 8px;background:#edf0f5;border-radius:999px;overflow:hidden}.summary-progress i{display:block;height:100%;background:var(--primary);border-radius:999px;transition:width .2s}.summary-route-flow{display:flex;gap:7px;align-items:stretch;padding:10px 18px 14px;overflow-x:auto}.summary-route-step{min-width:150px;border:1px solid var(--line);background:#fff;border-radius:11px;padding:10px;display:flex;gap:9px;align-items:flex-start}.summary-route-step.done{background:#f1fbf4;border-color:#bfe7cc}.summary-route-step.in_progress{background:#f6f3ff;border-color:#d8d2ff}.summary-route-step.waiting{background:#fff}.summary-route-step b{display:block;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:124px}.summary-route-step small{display:block;color:var(--muted);margin-top:3px}.route-step-index{width:22px;height:22px;border-radius:7px;background:#f2f4f7;display:grid;place-items:center;font-size:11px;font-weight:800;flex:none}.summary-route-step.done .route-step-index{background:#dff4e6;color:var(--green)}.summary-route-step.in_progress .route-step-index{background:#e7e2ff;color:var(--primary)}.summary-route-arrow{display:grid;place-items:center;color:#98a2b3;font-size:18px;flex:none}.summary-route-actions{display:flex;gap:8px;padding:0 18px 18px;flex-wrap:wrap}.summary-main-grid{align-items:start}
.container-direction-compact{display:grid;grid-template-columns:minmax(0,1fr) 34px minmax(0,1fr);gap:9px;align-items:center;margin:0 0 13px;padding:10px 12px;border:1px solid #dedafc;background:#faf9ff;border-radius:11px;max-width:900px}.container-direction-compact>div{display:grid;gap:2px;min-width:0}.container-direction-compact i{text-align:center;color:var(--primary);font-style:normal;font-size:18px;font-weight:900}

.step-rule,.builder-rule{border:1px solid #ddd9ff;background:#f8f7ff;border-radius:10px;padding:10px 11px;display:grid;gap:4px;margin-bottom:10px}.step-rule b,.builder-rule b{font-size:11px;color:#5148bd;text-transform:uppercase;letter-spacing:.04em}.step-rule span,.builder-rule span{font-size:12px;line-height:1.45;color:#4b5563}.builder-rule{margin:4px 0 0}

.account-category{margin-bottom:16px}.account-category:last-child{margin-bottom:0}.account-category-title{font-size:12px;font-weight:850;text-transform:uppercase;letter-spacing:.05em;color:#667085;margin:0 0 8px;padding-bottom:7px;border-bottom:1px solid var(--line)}.account-view{min-height:84px}.account-view small{font-size:11px;color:#667085;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-head>div{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.account-editor-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.legal-fields{background:#fcfcfd;border:1px solid var(--line);border-radius:12px;padding:14px}.legal-fields h3{margin-bottom:10px}

.documents-footer{border-top:1px solid var(--line);padding:13px 14px;display:flex;align-items:center;justify-content:space-between;gap:12px;background:#fafbfc}.documents-footer>div{display:grid;gap:3px}.documents-footer span{font-size:12px;color:var(--muted)}.doc-actions{white-space:nowrap}.doc-actions .btn{margin-right:3px}

.accounting-top{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.accounting-grid{grid-template-columns:minmax(0,1.25fr) minmax(330px,.75fr);gap:14px;align-items:stretch;margin-bottom:14px}.accounting-grid>.card{display:flex;flex-direction:column;min-width:0}.economy-list{height:auto;flex:1 1 auto;min-height:0;display:flex;flex-direction:column}.eco-row.plan-result{margin-top:auto}.eco-result{flex:none}.accounting-grid+.card{margin-bottom:14px}.movement-table{width:100%}.movement-table th,.movement-table td{padding-left:10px;padding-right:10px}.movement-table td:nth-child(4),.movement-table td:nth-child(5){max-width:260px;line-height:1.35}

@media(max-width:1150px){.summary-kpis{grid-template-columns:repeat(3,1fr)}.accounting-grid{grid-template-columns:1fr}.accounting-top{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.deal-direction,.container-direction-compact{grid-template-columns:1fr}.deal-arrow,.container-direction-compact i{transform:rotate(90deg)}.summary-kpis,.route-stat-row,.accounting-top{grid-template-columns:1fr}.route-stat-row>div+div{border-left:0;border-top:1px solid var(--line)}.account-editor-fields{grid-template-columns:1fr}.documents-footer{align-items:flex-start;flex-direction:column}.summary-route-flow{padding-right:12px}}

/* Containers list refresh */
.containers-page{min-width:0}
.containers-title{align-items:flex-start;margin-bottom:18px}
.containers-title h1{font-size:26px;letter-spacing:0}
.containers-title p{max-width:900px;font-size:13px}
.containers-list-card{border-radius:12px;overflow:hidden}
.containers-toolbar{display:grid;grid-template-columns:minmax(360px,1fr) minmax(150px,168px) minmax(200px,210px) minmax(140px,148px);gap:10px;padding:14px;align-items:center}
.containers-toolbar .search{min-width:0}
.containers-toolbar .select,.containers-toolbar .input{min-height:39px;border-radius:9px}
.manager-select{font-weight:600;color:#475467}
.container-status-tabs{padding:0 14px;gap:4px}
.container-status-tabs button{min-height:44px;padding:0 10px}
.container-status-tabs button.active{color:var(--primary);border-bottom-color:var(--primary)}
@media(max-width:1100px){.containers-toolbar{grid-template-columns:1fr 1fr}.containers-toolbar .search{grid-column:1/-1}}
@media(max-width:720px){.containers-title .actions{margin-top:12px}.containers-toolbar{grid-template-columns:1fr}.container-status-tabs{overflow-x:auto}}

/* Modal scroll behavior */
.modal{display:flex;flex-direction:column;max-height:calc(100vh - 44px);height:auto;overflow:hidden}
.modal.wide{height:calc(100vh - 44px)}
.modal-head,.modal-foot{flex:0 0 auto}
.modal-foot{position:sticky;bottom:0;z-index:3;background:#fff}
.modal-body{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden}
.modal.wide .modal-body{max-height:none}
.step-section{overflow:visible}
.calc-panel{top:72px;align-self:start;max-height:calc(100vh - 88px);overflow:auto;z-index:8}
.locations-table th:nth-child(2),.locations-table td:nth-child(2),.locations-table th:nth-child(3),.locations-table td:nth-child(3){text-align:center}
.locations-table td.money{text-align:center}
.amount-secondary{display:block;margin-top:3px;font-weight:700;color:#667085}
.fx-rate-table td b{display:block}

/* v7 summary layout fixes */
.summary-route-flow{
  flex-wrap:wrap;
  gap:10px 12px;
  align-items:stretch;
  overflow-x:visible;
}
.summary-route-step{
  flex:1 1 220px;
  min-width:210px;
  max-width:320px;
}
.summary-route-step>div{
  min-width:0;
}
.summary-route-step b{
  max-width:none;
  white-space:normal;
  overflow:visible;
  text-overflow:clip;
  line-height:1.3;
  overflow-wrap:break-word;
}
.summary-route-arrow{display:none}
.summary-main-grid{
  align-items:stretch;
}
.summary-main-grid>.card{
  display:flex;
  flex-direction:column;
  min-width:0;
  height:100%;
}
.summary-main-grid .table-wrap,
.summary-main-grid .payout-grid{
  flex:1 1 auto;
}
@media(max-width:760px){
  .summary-route-step{
    flex-basis:100%;
    max-width:none;
  }
}

/* v7 plan/fact drilldown */
.plan-fact-row{
  cursor:pointer;
  transition:background .15s ease;
}
.plan-fact-row:hover,
.plan-fact-row.open{
  background:#faf9ff;
}
.plan-fact-row:focus{
  outline:2px solid #c9c3ff;
  outline-offset:-2px;
}
.pf-row-title{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-width:0;
}
.pf-chevron{
  display:inline-grid;
  place-items:center;
  width:18px;
  height:18px;
  border-radius:6px;
  background:#f2f4f7;
  color:var(--primary);
  transition:transform .15s ease;
  flex:none;
}
.plan-fact-row.open .pf-chevron{
  transform:rotate(90deg);
}
.plan-fact-detail-row{
  display:none;
}
.plan-fact-detail-row.open{
  display:table-row;
}
.plan-fact-detail-row>td{
  padding:0 13px 14px!important;
  background:#fbfcff;
  border-bottom:1px solid #e7e9f1!important;
}
.pf-detail-panel{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
  padding:12px;
  border:1px solid #e4e7ec;
  border-radius:10px;
  background:#fff;
}
.pf-detail-col{
  min-width:0;
  display:grid;
  align-content:start;
  gap:8px;
}
.pf-detail-col h4{
  margin:0;
  color:#667085;
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.pf-detail-item{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:12px;
  padding:9px 0;
  border-top:1px solid #f0f1f3;
}
.pf-detail-item:first-of-type{
  border-top:0;
}
.pf-detail-item>div{
  min-width:0;
}
.pf-detail-item b{
  display:block;
  line-height:1.3;
}
.pf-detail-item span{
  display:block;
  margin-top:3px;
  color:var(--muted);
  font-size:12px;
  line-height:1.35;
}
.pf-detail-item strong{
  white-space:nowrap;
  font-variant-numeric:tabular-nums;
}
.pf-detail-empty{
  padding:12px;
  border:1px dashed #d8dde8;
  border-radius:9px;
  color:var(--muted);
  text-align:center;
  background:#fafbfc;
}
@media(max-width:760px){
  .pf-detail-panel{
    grid-template-columns:1fr;
  }
  .pf-detail-item{
    display:grid;
  }
  .pf-detail-item strong{
    white-space:normal;
  }
}

/* v7 reconstruction: destinations and original compact route */
.destination-editor{grid-column:1/-1}.destination-row{display:flex;gap:8px;align-items:center;margin-bottom:8px}.destination-row .field{flex:1}.destination-row .field label{display:block}.destination-row .input{width:100%}.fx-rate-table .sub{white-space:nowrap}.route{max-width:800px;margin:0 auto}.route-card-head h3{font-size:14px}
.sidebar .nav-item:disabled{cursor:default}
@media(max-width:1150px){.sidebar .nav-item span:first-child{display:inline-block}}
/* v7 T-parts: retain existing tokens, add room for explicit plan/fact. */
.part-direction { display:flex; gap:16px; align-items:center; margin:16px 0; min-width:0; }
.direction-node { padding:12px 16px; border:1px solid var(--border,#dce0eb); border-radius:12px; background:#fff; min-width:120px; max-width:360px; }
.direction-node small { display:block; color:#748096; font-size:10px; font-weight:700; text-transform:uppercase; letter-spacing:.05em; margin-bottom:5px; }
.direction-node b { display:block; overflow-wrap:anywhere; }
.direction-arrow { color:#6050ed; font-size:24px; }
.direction-destinations { display:flex; gap:10px; flex-wrap:wrap; min-width:0; }
.part-section { margin:14px 0; min-width:0; overflow:hidden; }
.part-table { width:100%; }
.part-table th,.part-table td { vertical-align:top; padding:12px; }
.part-table th { white-space:normal; min-width:90px; }
.part-table td { font-variant-numeric:tabular-nums; }
.part-table td .sub { max-width:260px; overflow-wrap:anywhere; }
.part-index { white-space:nowrap; }
.part-progress { padding:16px; }
.part-progress progress { display:block; width:100%; height:8px; accent-color:#6050ed; margin:16px 0; }
.part-route-chips { display:grid; grid-template-columns:repeat(var(--route-columns,4),minmax(0,1fr)); gap:10px; margin-bottom:16px; }
.part-route-chips .part-route-chip { display:grid; grid-template-rows:auto 1fr auto; align-items:start; justify-content:stretch; gap:8px; min-width:0; height:auto; min-height:120px; padding:12px; white-space:normal; text-align:left; line-height:1.4; }
.part-route-chip-meta { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:6px; color:var(--muted); font-size:11px; font-weight:600; }
.part-route-chip-meta .part-index { max-width:100%; white-space:normal; overflow-wrap:anywhere; padding:2px 7px; }
.part-route-chip-title { display:block; min-width:0; font-size:13px; font-weight:700; overflow-wrap:anywhere; }
.part-route-chip-status { display:flex; align-items:center; gap:6px; color:var(--muted); font-size:11px; font-weight:500; }
.part-route-chip-status::before { content:""; width:6px; height:6px; flex:none; border-radius:50%; background:#98a2b3; }
.part-route-chip[data-status="done"] { background:var(--greenSoft); border-color:#c5edd2; }
.part-route-chip[data-status="done"] .part-route-chip-status { color:var(--green); }
.part-route-chip[data-status="done"] .part-route-chip-status::before { background:var(--green); }
.part-route-chip[data-status="in_progress"] { background:var(--primarySoft); border-color:#d8d2ff; }
.part-route-chip[data-status="in_progress"] .part-route-chip-status { color:var(--primary2); }
.part-route-chip[data-status="in_progress"] .part-route-chip-status::before { background:var(--primary); }
.part-route-chip:focus-visible { outline:2px solid var(--primary); outline-offset:3px; }
@media(min-width:1500px){ .part-route-chips { grid-template-columns:repeat(var(--route-columns-wide,8),minmax(0,1fr)); } }
@media(max-width:650px){ .part-route-chips { grid-template-columns:repeat(var(--route-columns-small,2),minmax(0,1fr)); } }
.part-block-actions { margin:0 0 12px; justify-content:space-between; }
.calc-panel .part-section .section-title { padding:8px; }
.calc-panel .part-table th,.calc-panel .part-table td { padding:8px 5px; min-width:0; font-size:11px; }
.calc-panel .part-table th:last-child,.calc-panel .part-table td:last-child { display:none; }
.step-section .part-table { margin-bottom:10px; }
.table-wrap { max-width:100%; overflow-x:auto; }
.builder,.canvas,.calc-panel,.app-body,.content { min-width:0; }
@media(max-width:1100px){ .builder { grid-template-columns:140px minmax(0,1fr); } .calc-panel { grid-column:1/-1; } .part-direction { align-items:flex-start; } }
@media(max-width:650px){ .part-direction { flex-wrap:wrap; } .direction-destinations { flex:1 1 100%; } .direction-node { min-width:100px; } .builder { grid-template-columns:minmax(0,1fr); } }

}
