:root{--bg: #0b0d12;--bg-2: #12151d;--card: #161a23;--card-2: #1c2130;--border: #252b3a;--text: #e7ebf3;--muted: #8b93a7;--accent: #4f8cff;--accent-2: #3a6fd8;--green: #2ecc8f;--red: #ff5c6c;--yellow: #f5c14b;--radius: 14px;--shadow: 0 8px 30px rgba(0, 0, 0, .35)}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:radial-gradient(1200px 600px at 50% -10%,#161b29 0%,var(--bg) 55%);color:var(--text);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased}button{font-family:inherit;cursor:pointer}input,select,textarea{font-family:inherit}.app{max-width:720px;margin:0 auto;padding:16px 16px 96px}.topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:14px 16px;margin:-16px -16px 16px;background:#0b0d12d9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border)}.topbar .brand{display:flex;align-items:center;gap:10px;font-weight:700}.topbar .role-pill{font-size:12px;color:var(--muted);border:1px solid var(--border);border-radius:999px;padding:3px 10px}.logo-dot{width:10px;height:10px;border-radius:50%;background:var(--accent);box-shadow:0 0 12px var(--accent)}.card-click{border:1px solid var(--border);border-radius:var(--radius);padding:12px;margin-bottom:8px}.card-click:hover{border-color:var(--accent)}.card{background:linear-gradient(180deg,var(--card) 0%,var(--bg-2) 100%);border:1px solid var(--border);border-radius:var(--radius);padding:16px;margin-bottom:14px;box-shadow:var(--shadow)}.card h2,.card h3{margin:0 0 12px}.section-title{font-size:13px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:18px 4px 8px}.stat-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.stat-grid.three{grid-template-columns:repeat(3,1fr)}.stat{background:var(--card-2);border:1px solid var(--border);border-radius:12px;padding:14px}.stat .label{font-size:12px;color:var(--muted);margin-bottom:6px}.stat .value{font-size:22px;font-weight:700}.stat .value.green{color:var(--green)}.stat .value.red{color:var(--red)}.stat .value.accent{color:var(--accent)}.field{margin-bottom:12px}.field label{display:block;font-size:13px;color:var(--muted);margin-bottom:6px}.input,.select,.textarea{width:100%;padding:12px 14px;background:var(--bg-2);color:var(--text);border:1px solid var(--border);border-radius:12px;font-size:15px;outline:none;transition:border-color .15s}.input:focus,.select:focus,.textarea:focus{border-color:var(--accent)}.textarea{resize:vertical;min-height:72px}.row{display:flex;gap:10px}.row>*{flex:1}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:13px 16px;border:none;border-radius:12px;font-size:15px;font-weight:600;color:#fff;background:linear-gradient(180deg,var(--accent) 0%,var(--accent-2) 100%);transition:transform .08s,opacity .15s}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.secondary{background:var(--card-2);border:1px solid var(--border);color:var(--text)}.btn.green{background:linear-gradient(180deg,#34d399,#18a877)}.btn.red{background:linear-gradient(180deg,#ff6b7a,#e23e4e)}.btn.small{width:auto;padding:9px 14px;font-size:13px}.btn-row{display:flex;gap:10px}.req{border:1px solid var(--border);border-radius:12px;padding:14px;margin-bottom:10px;background:var(--card-2)}.req .top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.req .amount{font-size:18px;font-weight:700;color:var(--text)}.req .amount.participant-name,button.req .amount.participant-name{color:#f0f4fc}.platform-income-hero{margin-bottom:16px;padding:20px 18px;background:linear-gradient(135deg,rgba(46,204,143,.18) 0%,var(--card) 55%);border-color:#2ecc8f59}.platform-income-label{font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--green)}.platform-income-value{font-size:32px;font-weight:800;color:#fff;margin:6px 0 4px;line-height:1.1}.platform-income-sub{font-size:13px}.finance-balance{margin-bottom:8px}.finance-balance-hero{margin-bottom:4px;padding:18px 16px;background:linear-gradient(135deg,rgba(79,140,255,.15) 0%,var(--card) 60%);border-color:#4f8cff59}.finance-balance-label{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--accent)}.finance-balance-value{font-size:34px;font-weight:800;color:#fff;margin:8px 0 6px;line-height:1.1}.finance-balance-value.settled{color:var(--green)}.finance-balance-sub{font-size:13px;line-height:1.45}.req .sub{font-size:12px;color:var(--muted);margin-top:2px}.req .meta{font-size:13px;color:var(--muted);margin-top:8px;line-height:1.6}.req .requisites{margin-top:10px;padding:10px 12px;border-radius:10px;background:#0e1117;border:1px dashed var(--border);font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:14px;word-break:break-all}.badge{display:inline-block;font-size:11px;font-weight:600;padding:4px 10px;border-radius:999px;white-space:nowrap;border:1px solid var(--border)}.badge.wait{color:var(--yellow);background:#f5c14b1a;border-color:#f5c14b4d}.badge.progress{color:var(--accent);background:#4f8cff1a;border-color:#4f8cff4d}.badge.done{color:var(--green);background:#2ecc8f1a;border-color:#2ecc8f4d}.badge.bad{color:var(--red);background:#ff5c6c1a;border-color:#ff5c6c4d}.badge.dispute{color:#c08bff;background:#c08bff1a;border-color:#c08bff4d}.tabs{display:flex;gap:6px;margin-bottom:14px;overflow-x:auto}.tab{padding:9px 14px;border-radius:10px;font-size:14px;font-weight:600;background:var(--card);border:1px solid var(--border);color:var(--muted);white-space:nowrap}.tab.active{color:#fff;background:var(--accent);border-color:var(--accent)}.bottom-nav{position:fixed;bottom:0;left:0;right:0;z-index:30;display:flex;max-width:720px;margin:0 auto;background:#0d1017f2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--border)}.bottom-nav button{flex:1;padding:12px 4px 14px;background:none;border:none;color:var(--muted);font-size:11px;display:flex;flex-direction:column;align-items:center;gap:4px}.bottom-nav button.active{color:var(--accent)}.bottom-nav .ico{font-size:18px}.login-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px}.login-card{width:100%;max-width:380px;text-align:center}.login-card h1{font-size:24px;margin:12px 0 6px}.login-card p{color:var(--muted);margin:0 0 22px;font-size:14px}.login-logo{width:56px;height:56px;border-radius:16px;margin:0 auto;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--accent),#8b5cff);font-size:26px;box-shadow:0 8px 30px #4f8cff66}.muted{color:var(--muted)}.empty{text-align:center;color:var(--muted);padding:30px 10px;font-size:14px}.error-text{color:var(--red);font-size:13px;margin-top:8px;min-height:16px}.hint{font-size:12px;color:var(--muted);margin-top:6px}.token-box{background:#0e1117;border:1px dashed var(--accent);border-radius:10px;padding:12px;font-family:ui-monospace,Menlo,monospace;font-size:13px;word-break:break-all;margin:10px 0;color:var(--green)}.toast-wrap{position:fixed;top:16px;left:50%;transform:translate(-50%);z-index:100;display:flex;flex-direction:column;gap:8px;width:calc(100% - 32px);max-width:420px}.toast{background:var(--card);border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:10px;padding:12px 14px;font-size:14px;box-shadow:var(--shadow);animation:slideIn .2s ease}@keyframes slideIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}table.data{width:100%;border-collapse:collapse;font-size:13px}table.data th,table.data td{text-align:left;padding:8px 6px;border-bottom:1px solid var(--border)}table.data th{color:var(--muted);font-weight:600;font-size:12px}.scroll-x{overflow-x:auto}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;z-index:50;display:flex;align-items:flex-end;justify-content:center}.modal{background:var(--bg-2);border:1px solid var(--border);border-radius:16px 16px 0 0;padding:18px;width:100%;max-width:720px;max-height:85vh;overflow-y:auto}@media (min-width: 600px){.modal-backdrop{align-items:center}.modal{border-radius:16px}}.divider{height:1px;background:var(--border);margin:14px 0}.bell{position:relative;background:var(--card-2);border:1px solid var(--border);color:var(--text);width:38px;height:38px;border-radius:10px;font-size:17px;display:inline-flex;align-items:center;justify-content:center}.bell-badge{position:absolute;top:-6px;right:-6px;background:var(--red);color:#fff;font-size:10px;font-weight:700;min-width:18px;height:18px;padding:0 4px;border-radius:999px;display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 2px var(--bg)}.notif-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;background:transparent}.notif-panel{position:fixed;z-index:41;top:60px;right:12px;width:min(400px,calc(100vw - 24px));max-height:72vh;display:flex;flex-direction:column;background:var(--bg-2);border:1px solid var(--border);border-radius:16px;box-shadow:0 18px 50px #0000008c;overflow:hidden;animation:slideIn .16s ease}.notif-head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--border);font-weight:700;background:#ffffff05}.notif-close{background:none;border:none;color:var(--muted);font-size:16px;cursor:pointer}.notif-list{overflow-y:auto;padding:6px}.notif-row{display:flex;gap:10px;align-items:center;width:100%;text-align:left;background:none;border:none;color:var(--text);padding:12px 10px;border-radius:10px;cursor:default;border-bottom:1px solid var(--border)}.notif-row:last-child{border-bottom:none}.notif-row.clickable{cursor:pointer}.notif-row.clickable:hover{background:var(--card-2)}.notif-row.read{opacity:.62}.notif-body{flex:1;display:flex;flex-direction:column;gap:3px;min-width:0}.notif-text{font-size:14px;line-height:1.35}.notif-time{font-size:12px;color:var(--muted)}.notif-arrow{color:var(--muted);font-size:22px;flex:0 0 auto}.notif-dot{width:9px;height:9px;border-radius:50%;background:var(--accent);flex:0 0 auto;align-self:flex-start;margin-top:5px}.notif-dot[data-type=DISPUTE]{background:#c08bff}.notif-dot[data-type=MESSAGE]{background:#2dd4bf}.notif-dot[data-type=COMPLETED],.notif-dot[data-type=DISBURSEMENT]{background:var(--green)}.notif-dot[data-type=CANCELED],.notif-dot[data-type=EXPIRED]{background:var(--red)}.notif-dot[data-type=PAYMENT_PENDING],.notif-dot[data-type=REQUISITES_SENT],.notif-dot[data-type=TAKEN]{background:var(--yellow)}.filter-chips{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px;margin-bottom:12px;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.filter-chips::-webkit-scrollbar{height:4px}.filter-chips::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.chip{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;flex:0 0 auto;background:var(--card-2);border:1px solid var(--border);color:var(--muted);border-radius:999px;padding:7px 13px;font-size:13px;cursor:pointer;transition:all .12s}.chip:hover{color:var(--text)}.chip.active{background:var(--accent);border-color:transparent;color:#fff}.chip-count{font-size:11px;background:#ffffff1f;border-radius:999px;padding:1px 7px;min-width:18px;text-align:center}.chip.active .chip-count{background:#ffffff40}.chip.chip-dispute{border-color:#c08bff80;color:#c08bff}.chip.chip-dispute.active{background:#8b5cf6;border-color:transparent;color:#fff}.chat{display:flex;flex-direction:column;gap:10px}.chat-log{display:flex;flex-direction:column;gap:10px;max-height:320px;overflow-y:auto;padding:10px;background:var(--bg);border:1px solid var(--border);border-radius:12px}.chat-empty{color:var(--muted);font-size:13px;text-align:center;padding:12px 4px}.chat-msg{display:flex;flex-direction:column;gap:3px;max-width:85%;align-self:flex-start}.chat-msg.mine{align-self:flex-end;align-items:flex-end}.chat-meta{font-size:11px;color:var(--muted);padding:0 4px}.chat-bubble{background:var(--card-2);border:1px solid var(--border);border-radius:12px;padding:8px 12px;font-size:14px;line-height:1.35;word-break:break-word;white-space:pre-wrap}.chat-msg.mine .chat-bubble{background:var(--accent);color:#fff;border-color:transparent}.chat-msg.admin .chat-bubble{background:#c08bff29;border-color:#c08bff66}.chat-msg.admin.mine .chat-bubble{background:#8b5cf6;color:#fff}.chat-input{display:flex;gap:8px}.chat-input .input{flex:1}.chat-err{color:var(--red);font-size:13px}@keyframes flashReq{0%{box-shadow:0 0 0 2px var(--accent)}to{box-shadow:0 0 0 0 transparent}}.req.flash{animation:flashReq 1.6s ease;border-color:var(--accent)}
