:root{--bg:#f4f6f8;--card:#fff;--ink:#20262e;--muted:#667085;--line:#dfe3e8;--accent:#344054;--accent2:#f2f4f7;--green:#27724c;--green2:#e7f4ec;--danger:#b42318;--danger2:#fef3f2;--warn:#8a641c;--shadow:0 12px 34px rgba(31,41,55,.12)}*{box-sizing:border-box}html,body{height:100%}body{margin:0;font:14px/1.42 system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--ink);background:var(--bg)}button,input,select,textarea{font:inherit}button,.btn,.button-link{border:0;border-radius:11px;background:var(--accent);color:#fff;padding:10px 14px;font-weight:500;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:6px}.secondary{background:var(--accent2);color:var(--accent)}.ghost{background:transparent;color:var(--accent);border:1px solid transparent}.danger{background:var(--danger);color:#fff}.hidden{display:none!important}.muted{color:var(--muted)}.error{color:var(--danger);min-height:20px}.login-screen{min-height:100%;display:grid;place-items:center;padding:20px}.login-card{width:min(430px,100%);background:#fff;border:1px solid var(--line);border-radius:20px;padding:24px;box-shadow:var(--shadow)}.login-card h1{margin:0 0 5px}.login-card form,.settings-card form{display:grid;gap:12px}.login-card label,.settings-card label{display:grid;gap:6px;font-weight:500}.login-card input,.settings-card input,.settings-card select,.settings-card textarea,.search,.side-primary select,.composer textarea{width:100%;border:1px solid var(--line);border-radius:12px;padding:10px 12px;background:#fff;color:var(--ink);outline:none}.login-legal{display:flex;gap:12px;flex-wrap:wrap;margin-top:15px}.login-legal a{color:var(--accent)}.app{height:100dvh;display:grid;grid-template-rows:58px minmax(0,1fr)}.topbar{display:grid;grid-template-columns:minmax(180px,1fr) minmax(180px,1fr);align-items:center;gap:12px;padding:7px 12px;background:#fff;border-bottom:1px solid var(--line);z-index:5}.topbrand{display:flex;align-items:center;gap:10px;min-width:0}.topbrand>div{display:grid;min-width:0}.topbrand strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.role{font-size:12px;color:var(--muted)}.brand-logo{width:40px;height:40px;object-fit:contain;border-radius:10px}.top-actions{display:flex;justify-content:flex-end;gap:5px;min-width:0}.top-actions .nav-btn{white-space:nowrap}.top-actions .nav-btn.active{background:var(--accent2);color:var(--accent);border-color:var(--line);box-shadow:inset 0 -2px 0 var(--accent)}.nav-icon{display:block;width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}.layout{min-height:0;display:grid;grid-template-columns:340px minmax(0,1fr);background:#fff}.sidebar{min-height:0;border-right:1px solid var(--line);display:grid;grid-template-rows:auto minmax(0,1fr);background:#fff}.side-tools{padding:10px;border-bottom:1px solid var(--line)}.side-primary{display:grid;grid-template-columns:1fr;gap:7px}.filters{display:flex;gap:5px;flex-wrap:wrap;margin-top:8px}.filter{padding:6px 9px;border-radius:9px;background:#f7f8fa;color:var(--muted);font-size:12px;font-weight:500}.filter.active{background:var(--accent2);color:var(--accent)}.dialogs{overflow:auto;padding:4px}.dialog{display:block;width:100%;text-align:left;background:transparent;color:var(--ink);border:0;border-radius:12px;padding:10px 11px;margin:1px 0}.dialog:hover,.dialog.active{background:#f2f5f8}.dialog-row{display:flex;gap:8px;align-items:center}.dialog-title{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.badge{min-width:22px;height:22px;border-radius:12px;background:var(--accent);color:#fff;display:grid;place-items:center;font-size:11px}.dialog-preview{color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:3px;font-size:12px}.dialog-meta{display:flex;gap:8px;justify-content:space-between;color:var(--muted);font-size:11px;margin-top:4px}.workspace{min-width:0;min-height:0;position:relative;background:#fff}.placeholder{height:100%;display:grid;place-items:center;color:var(--muted)}.dialog-view{height:100%;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto}.dialog-head{position:relative;border-bottom:1px solid var(--line);background:#fff}.dialog-head-main{min-height:58px;padding:8px 12px;display:flex;align-items:center;gap:9px}.back{display:none}.dialog-identity{min-width:0;flex:1}.dialog-head h2{font-size:18px;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.route{font-size:12px;color:var(--muted);margin-top:2px}.dialog-menu-btn{font-size:22px;padding:8px 12px}.dialog-details{border-top:1px solid var(--line);padding:10px 12px;background:#f8fafc;display:grid;gap:8px}.client-card{display:flex;gap:7px 14px;flex-wrap:wrap;color:var(--muted);font-size:12px}.client-card strong{color:var(--ink)}.dialog-actions{display:flex;gap:6px;flex-wrap:wrap}.dialog-actions button{padding:7px 10px;font-size:12px}.messages{overflow:auto;padding:18px;background:linear-gradient(#fff,#f8fafc)}.message{max-width:min(720px,88%);margin:9px 0;padding:11px 13px;border-radius:17px;background:#f1f3f5;border:1px solid var(--line)}.message.outbound{margin-left:auto;background:var(--green2);border-color:#d1e6da}.message.system{margin-left:auto;margin-right:auto;background:#f7f8fa;color:var(--muted);font-size:13px}.message-text{white-space:pre-wrap;word-break:break-word}.message-meta{display:flex;gap:7px;justify-content:flex-end;align-items:center;color:var(--muted);font-size:11px;margin-top:6px}.delivery.failed{color:var(--danger)}.delivery.pending{color:var(--warn)}.media{margin-top:8px}.media img,.media video{display:block;max-width:100%;max-height:440px;border-radius:12px;background:#000}.media audio{width:min(420px,100%)}.file-link{display:inline-flex;align-items:center;gap:7px;padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--accent);text-decoration:none}.retry-btn{margin-top:7px;padding:6px 9px;font-size:12px}.composer{padding:8px 10px max(8px,env(safe-area-inset-bottom));border-top:1px solid var(--line);background:#fff}.compose-row{display:flex;align-items:flex-end;gap:7px}.compose-main{flex:1;min-width:0}.composer textarea{min-height:44px;max-height:240px;resize:vertical}.compose-actions{display:flex;align-items:center;gap:2px;margin-top:3px}.attach-btn,.record-btn{padding:6px 8px;font-size:18px}.file-name{font-size:11px;color:var(--muted);max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.send-btn{width:44px;height:44px;padding:0;border-radius:50%;font-size:18px}.composer-note{padding:7px 10px;border-radius:10px;background:#faf3dc;color:#765a18;margin-bottom:6px}.notice{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);width:min(520px,calc(100% - 28px));background:#20262e;color:#fff;padding:11px 15px;border-radius:12px;box-shadow:var(--shadow);z-index:60;text-align:center;pointer-events:none}.notice.notice-success{background:#245f43}.notice.notice-error{background:#8f2f2a}.settings-page{overflow:auto;padding:18px;background:var(--bg)}.settings-grid{display:grid;grid-template-columns:1fr;gap:14px;margin-bottom:14px}.settings-card{background:#fff;border:1px solid var(--line);border-radius:17px;padding:17px;margin-bottom:14px}.settings-card h2{margin:0 0 13px;font-size:18px}.subform{margin-top:14px}.form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.inline-actions,.staff-controls,.channel-controls{display:flex;gap:7px;flex-wrap:wrap;align-items:center}.settings-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px 0;border-top:1px solid var(--line)}.channel-check-status{margin-top:4px;font-size:12px;line-height:1.35}.channel-check-status.ok{color:var(--green)}.channel-check-status.error{color:var(--danger)}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.metric{padding:10px;border:1px solid var(--line);border-radius:12px;display:grid}.metric strong{font-size:20px}.settings-card pre{white-space:pre-wrap;word-break:break-word;background:#f4f6f8;border-radius:12px;padding:12px}.owner-label{font-weight:600}.recorder-backdrop{position:fixed;inset:0;background:rgba(17,24,39,.58);display:grid;place-items:center;padding:18px;z-index:40}.recorder-card{width:min(470px,100%);max-height:calc(100dvh - 36px);overflow:auto;background:#fff;border-radius:18px;padding:18px;box-shadow:0 18px 50px rgba(23,33,43,.24)}.recorder-head{display:flex;align-items:center;justify-content:space-between}.recorder-head h3{margin:0}.record-stage{margin-top:15px;border:1px solid var(--line);border-radius:16px;padding:14px;text-align:center;background:#f8fafc}.record-preview{width:100%;max-height:360px;border-radius:12px;background:#111}.record-audio{width:100%;margin-top:10px}.record-status{font-size:17px;font-weight:600;margin-top:10px}.recorder-caption{display:grid;gap:6px;margin-top:12px}.recorder-caption textarea{width:100%;border:1px solid var(--line);border-radius:12px;padding:10px}.recorder-actions{display:flex;gap:7px;justify-content:center;flex-wrap:wrap;margin-top:13px}
@media(max-width:900px){.topbar{grid-template-columns:minmax(0,1fr) auto}.settings-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.layout{grid-template-columns:310px minmax(0,1fr)}}
@media(max-width:720px){.app{grid-template-rows:50px minmax(0,1fr)}.topbar{padding:4px 6px;gap:3px}.brand-logo{width:34px;height:34px}.topbrand strong{font-size:13px}.role{display:none}.top-actions{gap:2px}.top-actions .nav-btn{width:38px;height:38px;padding:0;border-radius:10px}.top-actions .nav-label{display:none}.top-actions .nav-icon{display:block}.top-actions .nav-btn.active{box-shadow:inset 0 -2px 0 var(--accent)}.layout{grid-template-columns:1fr}.sidebar{border-right:0}.side-tools{padding:7px}.side-primary{grid-template-columns:minmax(0,1fr) 96px}.filters{overflow-x:auto;flex-wrap:nowrap;padding-bottom:2px}.filter{flex:0 0 auto}.dialogs{padding:2px 5px}.workspace{position:fixed;inset:50px 0 0;z-index:10}.workspace.mobile-hidden{display:none}.back{display:inline-flex}.dialog-head-main{min-height:50px;padding:5px 7px}.dialog-head h2{font-size:15px}.dialog-details{display:none;position:absolute;top:50px;left:7px;right:7px;max-height:62dvh;overflow:auto;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);z-index:14}.dialog-head.details-open .dialog-details{display:grid}.messages{padding:7px}.message{max-width:96%;margin:4px 0;padding:8px 10px}.composer{padding:6px}.composer textarea{height:42px;min-height:42px}.compose-actions{position:absolute;bottom:8px;left:9px}.compose-main{position:relative;padding-bottom:34px}.file-name{display:none}.settings-page{padding:9px}.form-grid{grid-template-columns:1fr}.settings-row{grid-template-columns:1fr}.metric-grid{grid-template-columns:repeat(2,1fr)}}

/* Компактная геометрия кабинета диалогов. Цвета и базовые компоненты выше остаются из stable. */
.side-secondary{margin-top:7px}.side-secondary select{width:100%;border:1px solid var(--line);border-radius:12px;padding:10px 12px;background:#fff;color:var(--ink);outline:none}
@media(min-width:721px){
  .app{width:min(1080px,calc(100% - 24px));height:calc(100dvh - 24px);margin:12px auto;border:1px solid var(--line);border-radius:17px;overflow:hidden;box-shadow:var(--shadow)}
  .layout{grid-template-columns:300px minmax(0,1fr)}
  .side-tools{padding:9px 10px}.side-primary{grid-template-columns:minmax(0,1fr) 116px;gap:7px}.side-secondary{margin-top:7px}
  .dialogs{padding:4px 6px 8px}.dialog{padding:9px 10px}.dialog-meta{margin-top:3px}
  .dialog-head-main{min-height:56px;padding:6px 9px}.dialog-head h2{font-size:16px}
  .dialog-details{display:none;position:absolute;top:52px;right:9px;width:min(430px,calc(100% - 18px));max-height:min(68dvh,600px);overflow:auto;padding:12px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);z-index:14}
  .dialog-head.details-open .dialog-details{display:grid}.client-card{gap:8px}.dialog-actions{gap:6px}
  .messages{padding:10px 12px;overscroll-behavior:contain}.message{margin:5px 0;padding:9px 11px}.message-meta{margin-top:4px}
  .composer{padding:7px 9px max(7px,env(safe-area-inset-bottom))}.compose-row{align-items:center;gap:5px}.compose-main{display:flex;align-items:center;gap:3px;min-width:0;flex:1}.composer textarea{order:2;flex:1;min-width:0;width:auto;height:auto;min-height:42px;max-height:180px;overflow-y:auto;resize:vertical;padding:10px 12px}.compose-actions{order:1;display:flex;flex-wrap:nowrap;gap:1px;margin:0}.attach-btn,.record-btn{width:40px;height:40px;padding:0}.file-name{display:none}.send-btn{width:42px;height:42px}
}
@media(min-width:721px) and (max-width:1040px){.layout{grid-template-columns:280px minmax(0,1fr)}}
@media(max-width:720px){
  .side-tools{padding:7px 8px}.side-primary{grid-template-columns:minmax(0,1fr) 112px;gap:6px}.side-secondary{margin-top:6px}.side-secondary select{height:38px;padding:8px 10px}
  .dialogs{padding:3px 5px 8px}.dialog{padding:9px 10px}.dialog-meta{margin-top:3px}
  .compose-row{align-items:center;gap:4px}.compose-main{display:flex;align-items:center;gap:2px;min-width:0;flex:1;padding-bottom:0;position:static}.composer textarea{order:2;flex:1;min-width:0;width:auto;height:auto;min-height:40px;max-height:180px;overflow-y:auto;resize:vertical;padding:9px 11px}.compose-actions{order:1;display:flex;position:static;flex-wrap:nowrap;gap:0;margin:0}.attach-btn,.record-btn{width:38px;height:38px;padding:0}.send-btn{width:40px;height:40px}.file-name{display:none}
}
@media(max-width:380px){.side-primary{grid-template-columns:minmax(0,1fr) 104px}.attach-btn,.record-btn{width:34px}}
.brand-color-toggle{display:flex!important;grid-template-columns:none!important;align-items:center;gap:8px}.brand-color-toggle input{width:auto!important;margin:0}

/* Solo-режим: первый запуск и простые настройки одного владельца. */
.setup-page{min-height:0;overflow:auto;background:var(--bg);padding:24px;display:grid;place-items:center}.setup-shell{width:min(680px,100%);background:#fff;border:1px solid var(--line);border-radius:20px;padding:26px;box-shadow:var(--shadow)}.setup-kicker{font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.setup-shell h1{margin:5px 0 7px;font-size:28px}.setup-lead{margin:0 0 20px;max-width:580px}.setup-form{display:grid;gap:13px}.setup-form label{display:grid;gap:6px;font-weight:500}.setup-form input,.setup-form select{width:100%;border:1px solid var(--line);border-radius:12px;padding:11px 12px;background:#fff;color:var(--ink);outline:none}.setup-channel-grid{display:grid;grid-template-columns:180px minmax(0,1fr);gap:10px}.setup-foot{margin:14px 0 0}.advanced-settings{margin-top:4px}.advanced-settings>h2{margin:0 0 14px;font-size:18px}.settings-row{grid-template-columns:minmax(0,1fr) auto}.metric-grid{grid-template-columns:repeat(3,1fr)}
@media(max-width:720px){.setup-page{padding:10px;place-items:start center}.setup-shell{padding:18px;border-radius:16px}.setup-shell h1{font-size:23px}.setup-channel-grid{grid-template-columns:1fr}.advanced-settings>h2{font-size:17px}.metric-grid{grid-template-columns:repeat(2,1fr)}}

/* r10: мастер первого запуска с несколькими каналами. */
.setup-channels{border:0;padding:0;margin:0;display:grid;gap:10px}.setup-channels legend{font-weight:600;margin-bottom:7px}.setup-channel-card{border:1px solid var(--line);border-radius:14px;padding:13px;background:#fff;display:grid;gap:9px}.setup-channel-head{display:flex!important;grid-template-columns:none!important;align-items:center;gap:9px;font-size:16px;font-weight:600}.setup-channel-head input{width:auto!important;margin:0}.setup-token-label{font-size:13px}.setup-channel-card input:disabled{background:#f5f6f7;color:var(--muted)}.setup-channel-status{min-height:18px;font-size:12px;line-height:1.35}.setup-channel-status.ok{color:var(--green)}.setup-channel-status.error{color:var(--danger)}

/* r11: меню обращения содержит только действия; счёт выставляется из диалога. */
.dialog-details{background:#fff}.dialog-actions{display:grid;grid-template-columns:1fr;gap:6px}.dialog-actions button{width:100%;justify-content:flex-start;padding:9px 11px}.invoice-backdrop{position:fixed;inset:0;background:rgba(17,24,39,.58);display:grid;place-items:center;padding:18px;z-index:45}.invoice-card{width:min(470px,100%);max-height:calc(100dvh - 36px);overflow:auto;background:#fff;border-radius:18px;padding:18px;box-shadow:0 18px 50px rgba(23,33,43,.24)}.invoice-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.invoice-head h3{margin:0 0 3px;font-size:20px}.invoice-field{display:grid;gap:6px;margin-top:14px;font-weight:500}.invoice-field input,.invoice-field select{width:100%;border:1px solid var(--line);border-radius:12px;padding:10px 12px;background:#fff;color:var(--ink)}.price-box,.invoice-last{margin-top:12px;padding:11px 12px;border:1px solid var(--line);border-radius:12px;background:#f8fafc}.invoice-actions-row{display:flex;gap:7px;flex-wrap:wrap;margin-top:13px}.invoice-active .invoice-actions-row .btn{flex:1 1 auto}@media(min-width:721px){.dialog-details{width:min(300px,calc(100% - 18px))}}

#bookingView{--bg:#f4f4f2;--surface:#fff;--soft:#f7f7f5;--text:#292929;--muted:#737373;--border:#deded9;--border-soft:#ecece8;--accent:#343434;--accent-soft:#ededeb;--work:#e8f1e8;--work-border:#b8cfb9;--booking:#f4f0df;--booking-border:#d8ca95;--selected:#d2d2ce;--danger:#a33131;--ok:#39704a;--warn:#8a641f;--shadow:0 2px 10px rgba(0,0,0,.045)}
#bookingView *{box-sizing:border-box}#bookingView{background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,"Segoe UI",sans-serif}#bookingView{margin:0;background:var(--bg)}#bookingView button,#bookingView input,#bookingView select,#bookingView textarea{font:inherit}#bookingView button{color:var(--text)}#bookingView .hidden{display:none!important}
#bookingView .wrap{width:min(1080px,100%);margin:0 auto;padding:18px 18px 155px}#bookingView .card{background:var(--surface);border:1px solid var(--border-soft);border-radius:14px;padding:16px;box-shadow:var(--shadow)}#bookingView h1{font-size:24px;margin:4px 0 4px}#bookingView h2{font-size:19px;margin:0 0 14px}#bookingView .muted{color:var(--muted)}#bookingView .small{font-size:13px}#bookingView .back{color:#555;text-decoration:none}#bookingView .head-card{display:flex;justify-content:space-between;gap:18px;align-items:center;margin-bottom:14px}#bookingView .login-card{display:grid;gap:12px;max-width:430px;margin:10vh auto 0}
#bookingView .button{appearance:none;border:1px solid var(--accent);border-radius:9px;min-height:40px;padding:8px 13px;background:var(--accent);color:#fff;font-weight:500;cursor:pointer}#bookingView .button.secondary{background:#fff;color:#333;border-color:#cfcfca}#bookingView .button.danger{background:#fff;color:var(--danger);border-color:#ddb3b3}#bookingView .button.ok{background:#fff;color:var(--ok);border-color:#b7d1be}#bookingView .button.warn{background:#fff;color:var(--warn);border-color:#ddca9e}#bookingView .button:disabled{opacity:.45;cursor:not-allowed}#bookingView .field{display:grid;gap:5px;margin:10px 0}#bookingView .field label{font-size:13px;color:var(--muted);font-weight:500}#bookingView .field input,#bookingView .field select,#bookingView textarea,#bookingView .calendar-toolbar input{width:100%;min-height:40px;border:1px solid var(--border);border-radius:9px;background:#fff;padding:8px 10px;outline:0}#bookingView .field input:focus,#bookingView .field select:focus,#bookingView textarea:focus,#bookingView .calendar-toolbar input:focus{border-color:#999;box-shadow:0 0 0 2px var(--accent-soft)}#bookingView textarea{resize:vertical}#bookingView .notice{border:1px solid #ddd;border-radius:10px;padding:10px}#bookingView .notice.error{color:#8f2929;background:#fff2f2;border-color:#e3b3b3}
#bookingView .tabs{display:flex;gap:7px;overflow:auto;padding:0 2px 10px;margin-bottom:4px}#bookingView .tabs button{border:1px solid #d8d8d2;background:#fff;border-radius:999px;padding:9px 14px;white-space:nowrap;cursor:pointer}#bookingView .tabs button.active{background:#292929;color:#fff;border-color:#292929}#bookingView .calendar-toolbar-card{padding:12px 16px;margin-bottom:15px}#bookingView .calendar-toolbar{display:grid;grid-template-columns:minmax(150px,210px) auto;gap:8px;align-items:center;justify-content:start}
#bookingView .days{display:grid;gap:21px}#bookingView .day{background:transparent}#bookingView .day-title{font-size:17px;font-weight:600;margin:0 0 9px}#bookingView .today-label{font-size:14px;color:var(--muted);font-weight:600;margin-left:6px}#bookingView .slots{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:7px}#bookingView .slot{appearance:none;border:1px solid var(--border);min-height:40px;border-radius:9px;background:#fff;color:var(--text);font-weight:500;cursor:pointer;display:grid;place-items:center}#bookingView .slot.available{background:var(--work);border-color:var(--work-border)}#bookingView .slot.unavailable{background:#fff}#bookingView .slot.selected{box-shadow:0 0 0 2px #777 inset;border-color:#777}#bookingView .slot-time{font-size:14px}#bookingView .empty-day{grid-column:1/-1;background:var(--soft);border:1px solid var(--border-soft);border-radius:10px;padding:11px;color:var(--muted);text-align:center}
#bookingView .booking-card{grid-column:1/-1;border:1px solid var(--booking-border);border-radius:11px;background:var(--booking);padding:11px 100px 11px 13px;display:grid;gap:5px;position:relative;cursor:pointer}#bookingView .booking-card.selected{box-shadow:0 0 0 2px #8d8050 inset}#bookingView .booking-card.terminal{background:#f7f7f5;border-color:var(--border)}#bookingView .booking-head{position:absolute;right:9px;top:8px;display:flex;align-items:center;gap:4px}#bookingView .booking-status{font-size:13px;font-weight:500;color:#666}#bookingView .booking-status.paid{color:var(--ok)}#bookingView .booking-status.unpaid{color:var(--danger)}#bookingView .booking-toggle{border:0;background:transparent;font-size:17px;cursor:pointer;color:#555}#bookingView .booking-time,#bookingView .booking-name{font-weight:600}#bookingView .booking-meta{font-size:13px;color:#555;display:grid;gap:2px}#bookingView .booking-details{display:none;border-top:1px solid rgba(0,0,0,.08);padding-top:7px;font-size:13px}#bookingView .booking-card.expanded .booking-details{display:grid;gap:4px}#bookingView .detail-row{display:grid;grid-template-columns:120px minmax(0,1fr);gap:8px}#bookingView .detail-row span:first-child{color:var(--muted)}
#bookingView .actions{position:fixed;left:0;right:0;bottom:0;z-index:15;padding:10px 12px calc(10px + env(safe-area-inset-bottom,0));background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-top:1px solid var(--border-soft);box-shadow:0 -7px 24px rgba(0,0,0,.06);display:grid;gap:8px}#bookingView .selected-text{width:min(1080px,100%);margin:auto;color:#555;font-size:14px}#bookingView .actions-row{display:flex;flex-wrap:wrap;gap:7px;width:min(760px,100%);margin:auto}#bookingView .booking-actions{justify-content:center}
#bookingView .grid2{display:grid;grid-template-columns:1fr 1fr;gap:16px}#bookingView .inline-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}#bookingView .check-line{display:flex;gap:8px;align-items:center;margin:13px 0}#bookingView .check-line input{width:auto}#bookingView .service-row{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid var(--border-soft)}#bookingView .service-row:last-child{border-bottom:0}#bookingView .service-row .meta{font-size:13px;color:var(--muted);margin-top:3px}#bookingView hr{border:0;border-top:1px solid var(--border-soft);margin:18px 0}
#bookingView .modal-backdrop{position:fixed;inset:0;z-index:30;background:rgba(0,0,0,.32);display:grid;place-items:center;padding:18px}#bookingView .modal{width:min(480px,100%);max-height:calc(100vh - 36px);overflow:auto;background:#fff;border:1px solid var(--border-soft);border-radius:16px;padding:18px;box-shadow:0 18px 50px rgba(0,0,0,.18)}#bookingView .modal-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}#bookingView .duration-buttons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}#bookingView .duration-btn{min-height:42px;border:1px solid var(--border);border-radius:10px;background:#fff;font-weight:500;cursor:pointer}#bookingView .duration-btn.selected{background:var(--accent-soft);border-color:#777;box-shadow:0 0 0 2px #888 inset}#bookingView .duration-btn:disabled{opacity:.35}#bookingView .price-box{padding:10px 12px;border-radius:10px;background:var(--soft);font-weight:500;margin-top:10px}#bookingView .decision-text{white-space:pre-line;line-height:1.45}#bookingView .toast{position:fixed;z-index:50;left:50%;bottom:120px;transform:translateX(-50%);width:min(430px,calc(100% - 24px));background:#292929;color:#fff;border-radius:11px;padding:11px 14px;text-align:center}
@media(max-width:760px){#bookingView .wrap{padding:12px 10px 150px}#bookingView .head-card{align-items:flex-start}#bookingView .grid2,#bookingView .inline-fields{grid-template-columns:1fr}#bookingView .slots{gap:5px}#bookingView .booking-card{padding-right:88px}#bookingView .actions-row{display:grid;grid-template-columns:1fr 1fr}#bookingView .calendar-toolbar{grid-template-columns:1fr auto}#bookingView .detail-row{grid-template-columns:105px 1fr}}
@media(max-width:390px){#bookingView .slots{grid-template-columns:repeat(4,minmax(0,1fr))}#bookingView .actions-row{grid-template-columns:1fr}#bookingView .booking-card{padding-right:80px}}


/* Встроенный модуль услуг и записи и модульные настройки. */
.booking-module{min-height:0;overflow:auto;background:var(--bg);padding:18px}.booking-root{width:100%;padding-bottom:150px}.booking-view-head{margin:0 0 12px}.booking-view-head h1{margin:0 0 3px;font-size:22px}.module-card{overflow:hidden}.module-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:-2px 0 0}.module-switch{display:flex!important;grid-template-columns:auto minmax(0,1fr)!important;align-items:center;gap:11px;cursor:pointer;flex:1}.module-switch input{width:19px!important;height:19px;margin:0}.module-switch span{display:grid;gap:2px}.module-switch strong{font-size:18px}.module-switch small{color:var(--muted);font-weight:500}.module-switch.static{cursor:default}.module-core-mark{width:21px;height:21px;border-radius:7px;background:var(--green2);color:var(--green);display:grid!important;place-items:center!important;font-weight:600}.module-state{font-size:12px;font-weight:600;padding:5px 8px;border-radius:999px;background:var(--accent2);color:var(--muted);white-space:nowrap}.module-state.on{background:var(--green2);color:var(--green)}.module-body{border-top:1px solid var(--line);margin-top:14px;padding-top:14px}.module-body>button{margin-top:10px}
@media(max-width:720px){.booking-module{padding:9px}.module-head{align-items:flex-start}.module-state{margin-top:2px}}
.settings-divider{border:0;border-top:1px solid var(--line);margin:20px 0}


/* r22: компактная рабочая страница «Записи». */
.top-actions .nav-btn.active{background:#f7f8fa;color:var(--ink);border-color:transparent;box-shadow:none;font-weight:600}
#bookingView .tabs{justify-content:center;gap:4px;padding:0 0 12px;margin:0 auto 4px}
#bookingView .tabs button{border:0;background:transparent;border-radius:9px;padding:8px 11px;color:var(--muted);font-weight:500}
#bookingView .tabs button:hover{background:#f7f8fa;color:var(--ink)}
#bookingView .tabs button.active{background:#f2f4f7;color:var(--ink);border:0;box-shadow:none}
#bookingView .calendar-toolbar-card{width:min(560px,100%);margin:0 auto 15px}
#bookingView .calendar-toolbar{grid-template-columns:minmax(150px,210px) auto;justify-content:center}
#bookingView .days{width:min(560px,100%);margin:0 auto;gap:21px}
#bookingView .day-title{text-align:center}
#bookingView .slots{grid-template-columns:repeat(6,82px);justify-content:center;gap:7px}
#bookingView .booking-card{width:min(520px,100%);justify-self:center}
#bookingView .empty-day{width:min(520px,100%);justify-self:center}
#bookingView .actions-row{display:flex;grid-template-columns:none;flex-wrap:nowrap;justify-content:center;overflow-x:auto;width:min(760px,100%);padding:1px 0}
#bookingView .actions-row>.button,#bookingView .actions-row>button{flex:0 0 auto;white-space:nowrap}
@media(max-width:560px){
  #bookingView .slots{grid-template-columns:repeat(4,74px);gap:6px}
  #bookingView .booking-card,#bookingView .empty-day{width:100%}
  #bookingView .actions-row{display:flex;grid-template-columns:none;flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto}
}
@media(max-width:390px){#bookingView .actions-row{display:flex;grid-template-columns:none;flex-wrap:nowrap}}

/* r23: единая типографика, компактные настройки и карточки каналов. */
:root{--font-base:14px;--font-title:16px}
body,button,input,select,textarea{font-size:var(--font-base)}
h1,h2,h3,.dialog-head h2,.settings-card h2,.booking-view-head h1,.module-switch strong,.metric strong,.record-status,.recorder-head h3,.invoice-head h3{font-size:var(--font-title);line-height:1.35}
.role,.filter,.dialog-preview,.dialog-meta,.badge,.route,.client-card,.dialog-actions button,.message.system,.message-meta,.retry-btn,.file-name,.channel-check-status,.module-switch small,.module-state,.booking-root,.booking-root button,.booking-root input,.booking-root select,.booking-root textarea,.booking-root label,.booking-root .muted,.booking-root .day-title,.booking-root .slot,.booking-root .booking-card,.booking-root .selected-text,.booking-root .price-box{font-size:var(--font-base)}
.dialog-menu-btn,.attach-btn,.record-btn,.send-btn{font-size:var(--font-title)}
.login-card h1,.dialog-title,.owner-label,.topbrand strong,.settings-card h2,.module-switch strong,.booking-root h1,.booking-root h2,.booking-root h3{font-weight:600}

.settings-page{padding:18px 12px}
.settings-grid,.advanced-settings{width:min(580px,100%);margin-left:auto;margin-right:auto}
.settings-grid{margin-bottom:14px}
.advanced-settings>.settings-card{width:100%}
.settings-page .form-grid{grid-template-columns:1fr}
.settings-card{padding:15px}
.settings-card h2{margin-bottom:11px}
.module-head{align-items:flex-start}
.module-switch strong{font-size:var(--font-title)}
.module-switch small{font-size:var(--font-base)}
.module-state{font-size:var(--font-base);padding:4px 7px}

.channel-list{display:grid;gap:8px;margin-top:10px}
.channel-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;padding:11px 12px;border:1px solid var(--line);border-radius:12px;background:#fff}
.channel-card-info{min-width:0;display:grid;gap:2px}
.channel-card-info strong{font-weight:600}
.channel-card-info .muted{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.channel-controls{display:flex;gap:5px;align-items:center;justify-content:flex-end;flex-wrap:nowrap}
.channel-action{min-height:36px;padding:7px 9px;border-radius:9px;white-space:nowrap}
.channel-action svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}
.channel-action-label{font-weight:500}
.channel-check-status{min-height:0;margin-top:1px}

.channel-config-backdrop{position:fixed;inset:0;background:rgba(17,24,39,.48);display:grid;place-items:center;padding:16px;z-index:70}
.channel-config-card{width:min(440px,100%);background:#fff;border:1px solid var(--line);border-radius:17px;padding:16px;box-shadow:var(--shadow)}
.channel-config-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
.channel-config-head h2{margin:0}
.channel-config-card form{display:grid;gap:12px}
.channel-config-card label{display:grid;gap:6px;font-weight:500}
.channel-config-card input{width:100%;border:1px solid var(--line);border-radius:12px;padding:10px 12px;background:#fff;color:var(--ink);outline:none}
.icon-only{width:36px;height:36px;padding:0}

@media(max-width:720px){
  .settings-page{padding:9px 7px}
  .settings-grid,.advanced-settings{width:100%}
  .settings-card{padding:13px}
  .topbrand strong{font-size:var(--font-base)}
  .channel-card{grid-template-columns:minmax(0,1fr) auto;padding:10px;gap:7px}
  .channel-controls{gap:3px}
  .channel-action{width:36px;height:36px;min-height:36px;padding:0}
  .channel-action-label{display:none}
  .channel-action svg{width:18px;height:18px}
  .channel-card-info .muted{white-space:normal;line-height:1.25}
}
/* r23: текстовые элементы кабинета используют только базовый и заголовочный размер. */
body :where(p,span,div,label,a,button,input,select,textarea,summary,small,strong,pre){font-size:var(--font-base)}
body :where(h1,h2,h3),body .module-switch strong,body .record-status{font-size:var(--font-title)}
/* r23: окончательный приоритет типографики над унаследованными локальными размерами. */
body :where(p,span,div,label,a,button,input,select,textarea,summary,small,strong,pre){font-size:var(--font-base)!important}
body :where(h1,h2,h3),body .module-switch strong,body .record-status,body .dialog-menu-btn,body .attach-btn,body .record-btn,body .send-btn{font-size:var(--font-title)!important}

/* r24: единая иконографика навигации и действий каналов. */
.top-actions .nav-btn{gap:7px}
.channel-action{width:36px;height:36px;min-height:36px;padding:0;display:inline-grid;place-items:center}
.channel-action-label{display:none!important}
.logo-upload{display:grid;gap:8px;justify-items:start}
.logo-upload-button{width:auto}
.logo-upload-button input{display:none!important}


/* r25: спокойная типографика — 400 основной текст, 500 мягкий акцент, 600 только заголовки. */
body{font-weight:400}
button,.btn,.button-link{font-weight:500}
strong,b{font-weight:500}
.login-card label,.settings-card label,.channel-config-card label{font-weight:400}
.login-card h1,.dialog-head h2,.settings-card h2,.recorder-head h3,#bookingView h1,#bookingView h2,#bookingView h3{font-weight:600}
.topbrand strong,.dialog-title,.owner-label,.module-switch strong,.channel-card-info strong{font-weight:500}
.top-actions .nav-btn{font-weight:400}
.top-actions .nav-btn.active{font-weight:500}
.filter{font-weight:400}.filter.active{font-weight:500}
.module-state,.record-status{font-weight:500}
#bookingView .tabs button{font-weight:400}
#bookingView .tabs button.active{font-weight:500}
#bookingView .day-title,#bookingView .booking-time,#bookingView .booking-name,#bookingView .booking-status,#bookingView .duration-btn,#bookingView .price-box{font-weight:500}
#bookingView .slot,#bookingView .booking-meta,#bookingView .booking-details{font-weight:400}
.channel-action{font-weight:400}


/* r26: чистый список обращений — имя и время в одной строке, без номера/категории/канала. */
.dialog{position:relative}
.dialog.unread{background:#f7f9fb}
.dialog.unread:hover,.dialog.unread.active{background:#f0f4f7}
.dialog-row{display:flex;align-items:center;gap:8px;min-width:0}
.dialog-title{min-width:0;flex:1;font-weight:500}
.dialog-time-wrap{display:inline-flex;align-items:center;gap:6px;flex:0 0 auto;color:var(--muted);font-weight:400}
.dialog-time{font-variant-numeric:tabular-nums;white-space:nowrap}
.unread-dot{width:7px;height:7px;border-radius:50%;background:var(--accent);display:inline-block;flex:0 0 auto}
.dialog-preview{margin-top:3px;font-weight:400}


/* r27: компактный выбор слота и единая горизонтальная панель действий календаря. */
#bookingView .slot.selected{box-shadow:none;border-color:#667085}
#bookingView .selected-text{text-align:center}
#bookingView .actions-controls{display:flex;align-items:center;justify-content:center;gap:7px;width:min(760px,100%);margin:0 auto;overflow-x:auto;overflow-y:hidden;padding:1px 0}
#bookingView .actions-controls .actions-row{display:flex;align-items:center;justify-content:center;gap:7px;flex:0 0 auto;width:auto;margin:0;padding:0;overflow:visible;flex-wrap:nowrap}
#bookingView .actions-controls .actions-row>.button,#bookingView .actions-controls .actions-row>button{flex:0 0 auto;white-space:nowrap}
@media(max-width:560px){#bookingView .actions-controls{justify-content:flex-start}}


/* r29: дата один раз на день и полупрозрачный sticky-разделитель при прокрутке диалога. */
.message-day{position:sticky;top:8px;z-index:4;display:flex;justify-content:center;align-items:center;margin:8px 0;pointer-events:none}
.message-day-label{display:inline-flex;align-items:center;justify-content:center;padding:4px 10px;border:1px solid rgba(223,227,232,.72);border-radius:999px;background:rgba(255,255,255,.78);color:var(--muted);font-weight:500;box-shadow:0 2px 8px rgba(31,41,55,.06);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px)}
.message-time{font-variant-numeric:tabular-nums;white-space:nowrap}
@media(max-width:720px){.message-day{top:5px;margin:6px 0}.message-day-label{padding:3px 9px}}

.archive-invoice-actions{display:grid;grid-template-columns:1fr;gap:8px}.archive-invoice-actions .btn{width:100%}

/* r39: четыре рабочих раздела и постоянные иконки действий обращения. */
.side-primary{display:block;grid-template-columns:none}
.dialog-filters{display:flex;gap:4px;margin-top:8px;overflow-x:auto;overflow-y:hidden;padding-bottom:2px;scrollbar-width:thin}
.dialog-filter{flex:0 0 auto;border:0;background:transparent;color:var(--muted);border-radius:8px;padding:7px 9px;white-space:nowrap;font-weight:400}
.dialog-filter:hover{background:#f7f8fa;color:var(--ink)}
.dialog-filter.active{background:var(--accent2);color:var(--accent);font-weight:500}
.deleted-bulk{display:flex;align-items:center;gap:8px;margin-top:7px;padding-top:7px;border-top:1px solid var(--line)}
.deleted-select-all{display:flex;align-items:center;gap:6px;min-width:0;color:var(--muted);cursor:pointer;white-space:nowrap}
.deleted-select-all input,.deleted-dialog-check{width:16px;height:16px;margin:0;accent-color:var(--accent);flex:0 0 auto}
.deleted-selected-count{margin-left:auto;min-width:20px;text-align:right;color:var(--muted);font-variant-numeric:tabular-nums}
.bulk-purge-btn,.dialog-action-icon{width:36px;height:36px;min-width:36px;padding:0;border-radius:9px;display:inline-grid;place-items:center;background:transparent;color:var(--accent);border:1px solid transparent}
.bulk-purge-btn:hover,.dialog-action-icon:hover{background:var(--accent2);border-color:var(--line)}
.bulk-purge-btn:disabled,.dialog-action-icon:disabled{opacity:.38;cursor:default}
.bulk-purge-btn svg,.dialog-action-icon svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.bulk-purge-btn{color:var(--danger)}
.dialog-action-icon.danger{background:transparent;color:var(--danger)}
.dialog-action-icon.danger:hover{background:var(--danger2);border-color:#f4c7c3}
.dialog-actions{display:flex;flex:0 0 auto;gap:2px;flex-wrap:nowrap;margin-left:auto;align-items:center}
.dialog-actions button{width:36px;height:36px;padding:0;justify-content:center}
.dialog-head-main{padding-right:8px}
.dialog-row .deleted-dialog-check{margin-right:1px}
@media(max-width:720px){
  .side-primary{display:block;grid-template-columns:none}
  .dialog-filters{margin-top:6px;gap:2px}
  .dialog-filter{padding:6px 8px}
  .dialog-actions{gap:0}
  .dialog-action-icon{width:34px;height:34px;min-width:34px}
  .dialog-actions button{width:34px;height:34px}
  .dialog-action-icon svg{width:18px;height:18px}
  .dialog-head-main{gap:5px;padding-left:6px;padding-right:5px}
}
.queue-indicator{width:100%;margin-top:7px;min-height:34px;padding:6px 9px;border:1px solid #e6d6a8;border-radius:9px;background:#fffaf0;color:#765a18;display:flex;align-items:center;justify-content:space-between;gap:8px;font-weight:400}
.queue-indicator:hover{background:#fff5dc}.queue-indicator strong{min-width:22px;height:22px;border-radius:999px;background:#f3e5bb;color:#765a18;display:grid;place-items:center;font-variant-numeric:tabular-nums}
/* r39: все четыре категории видны одновременно в узкой колонке. */
.dialog-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible;gap:4px}
.dialog-filter{width:100%;min-width:0;text-align:center;overflow:hidden;text-overflow:ellipsis}
@media(max-width:720px){.dialog-filters{grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible}}
/* r40: пять рабочих фильтров; «Все» занимает отдельную строку. */
.dialog-filter-all{grid-column:1/-1}
.dialog-section-title{padding:10px 10px 5px;color:var(--muted);font-size:12px;font-weight:600;text-transform:none;letter-spacing:0}
.dialog-section-title:first-child{padding-top:4px}
.finish-appeal-actions{display:flex;gap:8px;flex-wrap:wrap}

/* r43: публичные документы — компактные карточки как у подключённых мессенджеров. */
.legal-document-card{align-items:start}
.legal-version-list{grid-column:1/-1;display:grid;gap:6px;border-top:1px solid var(--line);padding-top:8px;margin-top:2px}
.legal-version-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;padding:7px 0}
.legal-version-row+.legal-version-row{border-top:1px solid var(--line)}
.legal-version-info{min-width:0;display:grid;gap:2px}
.legal-version-info>span:first-child{font-weight:500}
.legal-version-info .muted{white-space:normal;line-height:1.25}
@media(max-width:720px){.legal-version-row{grid-template-columns:minmax(0,1fr) auto;gap:5px}.legal-version-list{padding-top:7px}}

/* r44: управление приёмом находится непосредственно на странице обращений. */
.reception-strip{display:grid;gap:5px;margin:0 0 9px;padding:0;border:0;background:transparent}
.reception-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.reception-state-btn{width:100%;min-height:36px;padding:7px 9px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--accent);font-weight:500}
.reception-state-btn.active{border-color:var(--accent);background:var(--accent);color:#fff}
.reception-state-btn:not(.active):hover{background:var(--accent2)}
.reception-strip>.muted{display:block;text-align:left;line-height:1.25;font-size:12px}
@media(max-width:420px){.reception-actions{grid-template-columns:1fr 1fr}.reception-state-btn{padding-inline:7px}}

/* r50: модули включаются явными кнопками вместо чекбоксов. */
.module-controls{display:flex;align-items:center;gap:8px;flex:0 0 auto}.module-toggle-btn{min-width:96px;border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:9px;padding:7px 10px;cursor:pointer}.module-toggle-btn.on{background:#fff}.module-toggle-btn:disabled{opacity:.45;cursor:not-allowed}.module-switch{cursor:default}.module-switch>span{display:grid;gap:2px}
@media(max-width:720px){.module-controls{flex-direction:column;align-items:flex-end}.module-toggle-btn{min-width:92px}}
.security-code{white-space:pre-wrap;min-height:0;margin:.65rem 0 0;font:inherit;background:transparent;border:0;padding:0;color:inherit}

/* r53: список услуг в стиле карточек подключённых мессенджеров. */
#bookingView #bk-tab-services{width:min(580px,100%);margin:0 auto}
#bookingView .service-list-card{margin:0}
#bookingView .service-list-toolbar{display:flex;justify-content:flex-start;margin-bottom:10px}
#bookingView .service-list-toolbar .button{width:auto;min-height:38px;padding:8px 12px}
#bookingView .service-list{margin-top:0}
#bookingView .service-card{background:#fff}
#bookingView .service-card .channel-card-info .muted{white-space:normal}
#bookingView .service-card .channel-action{width:36px;height:36px;min-height:36px;padding:0}
#bookingView .service-card .channel-action.danger{background:var(--danger2);color:var(--danger)}
#bookingView .service-card .channel-action.danger:hover{background:#fde7e5}
#bookingView .service-card .channel-action svg{width:18px;height:18px}
#bookingView #bk-serviceModal .modal{width:min(500px,100%)}
#bookingView #bk-serviceModal h2{margin:0 0 13px}
@media(max-width:720px){#bookingView #bk-tab-services{width:100%}#bookingView .service-list-toolbar .button{width:100%}}

/* r58: финансовый реестр */
.payments-page{overflow:auto;padding:18px;background:var(--bg)}
.payments-shell{width:min(1080px,100%);margin:0 auto}
.payments-registry-card{margin-bottom:0}
.payments-head h2{margin:0 0 4px}
.payments-head p{margin:0 0 14px}
.payments-toolbar{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:9px;margin-bottom:12px}
.payments-toolbar select{width:100%;border:1px solid var(--line);border-radius:12px;padding:10px 12px;background:#fff;color:var(--ink)}
.payments-list{display:grid;gap:8px}
.payment-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:13px;background:#fff}
.payment-card-info{min-width:0;display:grid;gap:3px}
.payment-card-top{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.payment-card-top strong{font-weight:600}
.payment-status{display:inline-flex;align-items:center;min-height:24px;padding:3px 8px;border-radius:999px;background:var(--accent2);color:var(--accent);font-size:12px}
.payment-status.status-paid{background:var(--green2);color:var(--green)}
.payment-status.status-cancelled{background:var(--danger2);color:var(--danger)}
.payment-status.refund-partial{background:#faf3dc;color:#765a18}
.payment-status.refund-refunded{background:#eef1f4;color:#475467}
.payment-money{font-size:13px}
.payment-meta{font-size:12px}
.payment-card-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.payment-card-actions .btn{padding:7px 10px;font-size:12px}
.payments-empty{padding:20px 4px;text-align:center}
@media(max-width:720px){.payments-page{padding:10px}.payments-toolbar{grid-template-columns:1fr}.payment-card{grid-template-columns:1fr}.payment-card-actions{justify-content:flex-start}.payment-card-actions .btn{flex:1 1 auto}}

/* r61: карточка записи — статус результата и финансовое состояние без наложения на данные. */
#bookingView .booking-card{padding-right:13px}
#bookingView .booking-head{position:static;right:auto;top:auto;display:flex;justify-content:flex-end;align-items:center;gap:5px;flex-wrap:wrap;min-width:0}
#bookingView .booking-status{max-width:100%;text-align:right;white-space:normal}
#bookingView .booking-status.warn{color:#765a18}
#bookingView .booking-status.refunded{color:#475467}
@media(max-width:760px){#bookingView .booking-card{padding-right:13px}}
@media(max-width:390px){#bookingView .booking-card{padding-right:13px}}
