
:root{--bg:#f4f5f7;--panel:#fff;--text:#15171b;--muted:#717780;--line:#e2e5e9;--accent:#15171b;--green:#14804a;--red:#b3261e}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:15px/1.5 -apple-system,BlinkMacSystemFont,"SF Pro Display","Helvetica Neue",Arial,sans-serif}header{height:72px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 5vw;position:sticky;top:0;z-index:10}.brand{font-weight:800;letter-spacing:.08em}.brand span{opacity:.35;margin:0 5px}nav{display:flex;gap:22px}nav a{color:#60656c;text-decoration:none;font-weight:600}nav a.active,nav a:hover{color:#111}main{max-width:1280px;margin:0 auto;padding:32px 5vw 80px}.hero{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px}.hero h1{font-size:38px;line-height:1.05;margin:4px 0}.hero p{color:var(--muted);margin:6px 0}.stat{background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px 24px;text-align:center}.stat b{display:block;font-size:30px}.stat span{color:var(--muted);font-size:12px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-bottom:22px}.section-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.section-head h2{margin:0}.section-head em{font-style:normal;color:var(--muted);font-size:14px}.cards{display:grid;gap:12px}.card{display:block;text-decoration:none;color:inherit;background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px;position:relative;transition:.15s}.card:hover{transform:translateY(-1px);box-shadow:0 8px 25px #0000000a}.card h3{margin:2px 0 8px;font-size:20px}.card p{margin:4px 0}.num,.eyebrow{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-weight:800}.muted{color:var(--muted)}.status,.bigstatus{display:inline-block;border-radius:999px;padding:5px 9px;font-size:10px;font-weight:800;letter-spacing:.08em}.card .status{position:absolute;right:16px;top:16px}.free .status,.bigstatus.free{background:#e6f7ee;color:var(--green)}.rented .status,.bigstatus.rented{background:#fff0ee;color:var(--red)}.panel{background:#fff;border:1px solid var(--line);border-radius:20px;padding:24px;margin-bottom:22px}.panel h1{margin-top:4px;font-size:34px}.panel h2{margin-top:0}.back{margin-bottom:16px}.back a{color:#666;text-decoration:none}.button{display:inline-block;border:1px solid #d4d7dc;background:#fff;color:#17191c;text-decoration:none;border-radius:11px;padding:10px 14px;font-weight:700;cursor:pointer;font:inherit}.button:hover{background:#f2f3f5}.button.primary{background:#15171b;color:#fff;border-color:#15171b}.button.big{padding:13px 18px}.button.danger{background:#fff;color:var(--red);border-color:#efc5c1}.actions{display:flex;gap:10px;margin:0 0 22px}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:22px}label{display:flex;flex-direction:column;gap:6px;font-weight:700}label.wide{grid-column:1/-1}input,textarea{font:inherit;border:1px solid #d8dce1;border-radius:10px;padding:11px 12px;background:#fff;color:#111}textarea{min-height:90px;resize:vertical}small{color:var(--muted);font-weight:400}.notice{padding:14px 16px;border-radius:12px;background:#f1f3f5;margin:20px 0;color:#555}.flash{padding:12px 15px;border-radius:12px;margin-bottom:16px;font-weight:600}.flash.success{background:#e8f7ef;color:#176a43}.flash.error{background:#fff0ee;color:#9b2c26}dl{display:grid;grid-template-columns:180px 1fr;gap:10px 15px;margin:0}dt{color:var(--muted)}dd{margin:0;font-weight:600;overflow-wrap:anywhere}.docs{display:flex;flex-wrap:wrap;gap:9px}.doc{display:inline-block;padding:10px 12px;border:1px solid var(--line);border-radius:10px;text-decoration:none;color:#222}.doc:hover{background:#f5f5f5}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:10px;border-bottom:1px solid var(--line)}th{color:var(--muted);font-size:12px}.danger-panel{border-color:#efc5c1}.empty{padding:25px;border:1px dashed #ccd0d5;border-radius:15px;color:var(--muted);background:#fff}
@media(max-width:800px){.grid2,.formgrid{grid-template-columns:1fr}.hero{align-items:flex-start;flex-direction:column}.formgrid label.wide{grid-column:auto}header{padding:0 20px}nav{gap:10px}main{padding:25px 20px 60px}.hero h1{font-size:30px}dl{grid-template-columns:1fr}.actions{flex-wrap:wrap}}
@media print{header,.back,.actions,.danger-panel,.button{display:none!important}body{background:#fff}.panel{border:0;padding:0}.hero{margin-bottom:15px}.grid2{grid-template-columns:1fr 1fr}}
.hero-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.payment-alert{margin:-10px 0 22px;padding:15px 18px;border-radius:14px;background:#fff0ee;color:#a51f18;border:1px solid #efc5c1;font-weight:700}.card.payment-due{border:2px solid #d92d20;background:#fff5f4;box-shadow:0 0 0 3px #d92d2014}.card.payment-overdue{border:2px solid #d97706;background:#fff9ed}.payment-badge{display:inline-block;margin-top:10px;padding:6px 9px;border-radius:8px;background:#d92d20;color:#fff;font-size:11px;font-weight:800;letter-spacing:.04em}.payment-badge.overdue{background:#d97706}.payment-badge.tomorrow{background:#fff1c7;color:#8a5a00}.payment-row.due_today{background:#fff5f4}.payment-row.overdue{background:#fff9ed}.payment-row.paid{background:#f5fbf7}.paid-label{color:#14804a;font-weight:800}.due-label{color:#b42318;font-weight:800}.soon-label{color:#8a5a00;font-weight:800}.button.small{padding:7px 10px;font-size:12px}.button.pay{background:#15171b;color:#fff}.button.unpay{background:#fff}.section-head .muted{font-size:13px}
@media(max-width:800px){.hero-actions{width:100%}.hero-actions .button{width:100%}}

/* ===== мобильная версия и вход ===== */
.loginbox{max-width:420px;margin:12vh auto 0;padding:0 20px}.loginbox .brand{margin-bottom:6px}.formgrid.one{grid-template-columns:1fr}
header{padding-top:env(safe-area-inset-top,0)}
@media(max-width:800px){
 body{font-size:16px;padding-bottom:env(safe-area-inset-bottom,0)}
 header{height:auto;min-height:56px;flex-wrap:wrap;gap:4px 12px;padding:8px 16px}
 nav{width:100%;overflow-x:auto;gap:18px;padding:4px 0 6px;white-space:nowrap;-webkit-overflow-scrolling:touch}
 nav a{padding:6px 0}
 input,textarea,select{font-size:16px;min-height:46px;width:100%}
 .button{padding:13px 16px;text-align:center;min-height:46px}
 .actions .button,.section-head .button{flex:1}
 .panel{padding:16px;overflow-x:auto}.panel h1{font-size:26px}
 .card{padding:16px}.card .status{top:12px;right:12px}
 table{min-width:520px}
 .section-head{gap:10px;flex-wrap:wrap}
 main{padding:18px 14px 70px}
}

/* ===== v11: комментарии и частичные/досрочные платежи ===== */
.rental-card{padding:0;overflow:hidden}.rental-card-main{display:block;padding:18px;color:inherit;text-decoration:none;position:relative}.rental-card-main:hover{background:#fafafa}.quick-comment{display:flex;gap:8px;padding:12px 18px 16px;border-top:1px solid var(--line);background:#fafbfc}.quick-comment input{flex:1;min-width:0}.next-payment-line{font-size:13px;color:#555}.comment-row{display:flex;gap:10px}.comment-row input{flex:1}.advance-panel{border-color:#d9e6ff;background:#fbfdff}.payment-entry-form{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:end}.payment-entry-form .wide{grid-column:1/-1}.payment-entry-form .button{justify-self:start}.partial-label{color:#8a5a00;font-weight:800}.allocation-chip{display:inline-block;margin:2px 5px 2px 0;padding:4px 7px;border-radius:8px;background:#eef2f6;font-size:12px}.table-wrap{overflow-x:auto}.button.danger.small{color:var(--red);border-color:#efc5c1;background:#fff}
@media(max-width:800px){.quick-comment,.comment-row{flex-direction:column}.quick-comment .button,.comment-row .button{width:100%}.payment-entry-form{grid-template-columns:1fr}.payment-entry-form .wide{grid-column:auto}.payment-entry-form .button{width:100%}.rental-card-main{padding:16px}}

/* v12: комплектация акта передачи */
.equipment-box{margin:22px 0 28px}.equipment-total{padding:10px 14px;border:1px solid #d7dbe2;border-radius:12px;background:#f7f8fa;white-space:nowrap}.equipment-grid{display:grid;grid-template-columns:110px minmax(190px,1.4fr) 130px minmax(170px,.8fr);gap:12px;align-items:center}.equipment-head{padding:0 12px 8px;color:#777;font-size:12px;text-transform:uppercase;letter-spacing:.04em}.equipment-row{padding:12px;border-top:1px solid #eceef2}.equipment-row:first-of-type{border-top:0}.equipment-row input[type="checkbox"]{width:22px;height:22px}.equipment-row input,.equipment-row select{width:100%}.equipment-off{opacity:.48}.equipment-off .valuation-input{background:#f3f3f3}.handover-meta{margin-top:18px}.handover-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px}.handover-summary>div{display:flex;flex-direction:column;gap:5px;padding:14px;border:1px solid #e4e7ec;border-radius:14px}.equipment-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.equipment-chips span{padding:7px 10px;border-radius:999px;background:#f2f4f7;font-size:13px}
@media(max-width:760px){.equipment-grid{grid-template-columns:44px 1fr 90px}.equipment-head{display:none}.equipment-row{align-items:start}.equipment-row>div:last-child{grid-column:2/4}.equipment-row>div:last-child:before{content:"Оценочная стоимость, ₽";display:block;color:#777;font-size:12px;margin-bottom:5px}.equipment-total{width:100%}.handover-summary{grid-template-columns:1fr}.other-row>div:nth-child(2){grid-column:2/4}}

/* v13: продление и подменные самокаты */
.rental-tools{align-items:start}.action-panel{height:100%}.compact-form{display:grid;grid-template-columns:1fr;gap:12px}.compact-form textarea{min-height:72px}.history-list{margin-top:18px;border-top:1px solid var(--line);padding-top:14px}.history-list h3{margin:0 0 10px}.history-item{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid #eef0f2}.history-item:last-child{border-bottom:0}.replacement-panel{border-color:#d8ccff;background:#fdfcff}.replacement-active{padding:4px 0}.replacement-badge{display:inline-block;background:#6d4aff;color:#fff;border-radius:999px;padding:6px 9px;font-size:10px;font-weight:800;letter-spacing:.06em}.replacement-section{margin-top:24px}.replacement-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.replacement-card{border-color:#d8ccff;background:#fdfcff}.replacement-status{background:#eee9ff!important;color:#5937d1!important}.replacement-card .status{position:absolute;right:16px;top:16px}.replacement-card-main-note{color:#5937d1}
@media(max-width:800px){.rental-tools{grid-template-columns:1fr}.history-item{align-items:flex-start;flex-direction:column}.history-item .button{width:100%}.replacement-cards{grid-template-columns:1fr}}


/* ===== Мопедик: безопасная компактная шапка 2026-10-31 ===== */
header .mopedik-brand{display:flex!important;width:190px!important;height:48px!important;max-width:190px!important;max-height:48px!important;min-width:0!important;overflow:hidden!important;align-items:center!important;flex:0 0 190px!important;line-height:1!important;letter-spacing:0!important}
header .mopedik-brand img{display:block!important;width:190px!important;height:48px!important;max-width:190px!important;max-height:48px!important;object-fit:contain!important;object-position:left center!important}
.loginbox .mopedik-brand{display:flex!important;width:230px!important;height:62px!important;max-width:100%!important;max-height:62px!important;overflow:hidden!important;align-items:center!important}
.loginbox .mopedik-brand img{display:block!important;width:230px!important;height:62px!important;max-width:100%!important;max-height:62px!important;object-fit:contain!important;object-position:left center!important}
@media(max-width:800px){
 header .mopedik-brand{width:145px!important;height:38px!important;max-width:145px!important;max-height:38px!important;flex-basis:145px!important}
 header .mopedik-brand img{width:145px!important;height:38px!important;max-width:145px!important;max-height:38px!important}
}

/* mopedik header v3 */
@media (max-width: 768px){
  .mopedik-brand{width:165px !important;height:42px !important;max-width:165px !important;max-height:42px !important;flex:0 0 165px !important}
  .mopedik-brand img{width:165px !important;height:42px !important;max-width:165px !important;max-height:42px !important}
  .login-brand{width:190px !important;height:52px !important;max-height:52px !important}
  .login-brand img{width:190px !important;height:52px !important;max-height:52px !important}
}

/* ===== Mopedik v14: renter cabinet + Tochka settings ===== */
select{font:inherit;border:1px solid #d8dce1;border-radius:10px;padding:11px 12px;background:#fff;color:#111}
.switch-line{display:flex;flex-direction:row;align-items:center;gap:8px;font-weight:700;white-space:nowrap}.switch-line input{width:18px;height:18px}
.payment-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.check-card{display:flex;flex-direction:row;align-items:flex-start;gap:10px;padding:14px;border:1px solid var(--line);border-radius:14px;background:#fafafa}.check-card input{width:18px;height:18px;margin-top:2px}.check-card span{display:flex;flex-direction:column}.check-card small{margin-top:2px}
.access-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:16px 0}.access-grid>div{background:#f7f8fa;border:1px solid var(--line);border-radius:14px;padding:14px;display:flex;flex-direction:column;gap:4px}
.renter-body{background:#f2f3f5}.renter-auth{min-height:100vh;display:grid;place-items:center;padding:24px}.renter-auth-card{width:min(430px,100%);background:#fff;border:1px solid var(--line);border-radius:28px;padding:28px;box-shadow:0 18px 60px #0000000d}.renter-logo{display:block;width:210px;height:54px;object-fit:contain;object-position:left center;margin-bottom:28px}.renter-auth-card h1{font-size:34px;line-height:1.05;margin:7px 0 8px}.renter-auth-card form{display:grid;gap:14px;margin-top:24px}.renter-main-button{width:100%;text-align:center;padding:14px 18px;margin-top:4px}
.renter-header{height:72px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 max(20px,5vw);position:sticky;top:0;z-index:10}.renter-header>img{width:190px;height:48px;object-fit:contain;object-position:left center}.renter-header>div{display:flex;align-items:center;gap:18px;font-weight:700}.renter-header a{color:#555;text-decoration:none}.renter-main{max-width:760px;margin:0 auto;padding:34px 20px 80px}.renter-main.narrow{max-width:560px}.renter-welcome{margin-bottom:20px}.renter-welcome h1{font-size:38px;margin:4px 0}.renter-welcome p{color:var(--muted);margin:0}
.renter-rental-card,.renter-pay-methods,.renter-checkout,.renter-empty{background:#fff;border:1px solid var(--line);border-radius:24px;padding:22px;margin-bottom:16px}.renter-rental-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.renter-rental-top h2{font-size:26px;margin:4px 0}.renter-rental-top p{margin:0;color:var(--muted)}.renter-active-pill{background:#e6f7ee;color:var(--green);font-size:11px;font-weight:800;border-radius:999px;padding:6px 9px}.renter-facts{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:18px 0}.renter-facts>div{background:#f7f8fa;border-radius:14px;padding:13px;display:flex;flex-direction:column}.renter-facts span{font-size:12px;color:var(--muted)}.renter-payment-focus{background:#15171b;color:#fff;border-radius:20px;padding:20px;display:grid;gap:3px}.renter-payment-focus>span{font-size:13px;opacity:.7}.renter-payment-focus>strong{font-size:34px;line-height:1.1;margin:4px 0}.renter-payment-focus>small{opacity:.68}.renter-payment-focus.overdue{background:#8d241e}.renter-payment-focus.today{background:#2d3035}.renter-pay-button{margin-top:14px;background:#fff!important;color:#111!important;border-color:#fff!important;text-align:center}.renter-paid-all{background:#e8f7ef;color:#176a43;border-radius:16px;padding:16px;font-weight:800}.renter-details{margin-top:16px}.renter-details summary{cursor:pointer;font-weight:800}.renter-payment-list{display:grid;margin-top:10px}.renter-payment-list>div{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--line)}.renter-pay-methods h2{margin-top:0}.renter-method-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.renter-method,.renter-method-button{border:1px solid var(--line);border-radius:16px;padding:16px;background:#fafafa;display:flex;flex-direction:column;align-items:flex-start;gap:4px;text-align:left}.renter-method span,.renter-method-button span{font-size:12px;color:var(--muted)}.renter-method-button{width:100%;font:inherit;opacity:1}.renter-checkout h1{font-size:46px;margin:6px 0}.renter-checkout>p{color:var(--muted)}
@media(max-width:700px){.payment-settings-grid,.access-grid,.renter-method-grid{grid-template-columns:1fr}.renter-header{height:64px}.renter-header>img{width:155px;height:40px}.renter-header>div>span{display:none}.renter-main{padding:24px 14px 60px}.renter-rental-card,.renter-pay-methods,.renter-checkout,.renter-empty{border-radius:20px;padding:18px}.renter-welcome h1{font-size:32px}.renter-payment-focus>strong{font-size:30px}.renter-auth-card{padding:22px;border-radius:22px}.renter-logo{width:185px;height:48px;margin-bottom:22px}}

/* v14.2 renter chat, equipment and contract */
.renter-top-actions{margin-top:14px}.renter-card-actions{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0}.renter-equipment{padding:12px 0}.renter-equipment-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:12px}.renter-equipment-facts>div{background:#f5f6f7;border-radius:12px;padding:12px}.renter-equipment-facts span{display:block;color:var(--muted);font-size:12px}.renter-equipment-facts strong{display:block;margin-top:4px}.renter-equipment-list{display:flex;gap:8px;flex-wrap:wrap}.renter-equipment-list span{background:#fff;border:1px solid var(--line);border-radius:999px;padding:7px 10px;font-size:13px}.renter-chat-new select{font:inherit;border:1px solid #d8dce1;border-radius:10px;padding:11px 12px;background:#fff}.chat-thread-list{display:grid;gap:10px}.chat-thread-card{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px;border:1px solid var(--line);border-radius:16px;background:#fff;color:inherit;text-decoration:none}.chat-thread-card>div{min-width:0;display:grid;gap:5px}.chat-thread-card small{color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:650px}.chat-thread-title{display:flex;align-items:center;gap:8px}.chat-topic{display:inline-flex;width:max-content;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:800}.chat-topic.breakdown{background:#fff0ee;color:#9b2c26}.chat-topic.extension{background:#eef3ff;color:#3658a7}.chat-topic.payment{background:#eaf8f0;color:#176a43}.chat-status{font-size:12px;font-weight:800;border-radius:999px;padding:6px 9px}.chat-status.open{background:#eaf8f0;color:#176a43}.chat-status.closed{background:#f0f1f3;color:#6c727a}.chat-unread{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:#15171b;color:#fff;font-size:11px;font-weight:800}.chat-window{display:flex;flex-direction:column;gap:10px;margin:18px 0;min-height:180px}.chat-message{max-width:82%;display:grid;gap:4px}.chat-message>div{padding:12px 14px;border-radius:16px;background:#fff;border:1px solid var(--line);white-space:pre-wrap;overflow-wrap:anywhere}.chat-message small{color:var(--muted);padding:0 4px}.chat-message.renter{align-self:flex-end}.chat-message.renter>div{background:#15171b;color:#fff;border-color:#15171b}.chat-window.admin .chat-message.admin{align-self:flex-end}.chat-window.admin .chat-message.admin>div{background:#15171b;color:#fff;border-color:#15171b}.chat-window.admin .chat-message.renter{align-self:flex-start}.chat-window.admin .chat-message.renter>div{background:#fff;color:#15171b;border-color:var(--line)}.chat-compose{display:flex;gap:10px;align-items:flex-end}.chat-compose textarea{flex:1;min-height:70px}.chat-close-form{margin-top:12px}
@media(max-width:700px){.renter-equipment-facts{grid-template-columns:1fr}.chat-thread-card{align-items:flex-start}.chat-thread-card small{max-width:230px}.chat-message{max-width:92%}.chat-compose{flex-direction:column;align-items:stretch}.renter-card-actions .button{flex:1;text-align:center}}

/* v14.2.1 fixed renter header logo in linked pages */
.renter-header img{display:block!important;width:190px!important;height:48px!important;max-width:190px!important;max-height:48px!important;object-fit:contain!important;object-position:left center!important}.renter-header>a{display:flex!important;align-items:center!important;width:190px!important;height:48px!important;max-width:190px!important;max-height:48px!important;overflow:hidden!important;flex:0 0 190px!important}
@media(max-width:700px){.renter-header img{width:155px!important;height:40px!important;max-width:155px!important;max-height:40px!important}.renter-header>a{width:155px!important;height:40px!important;max-width:155px!important;max-height:40px!important;flex:0 0 155px!important}}

.analytics-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.analytics-card{background:#f7f8fa;border:1px solid var(--line);border-radius:16px;padding:18px;display:flex;flex-direction:column;gap:6px}.analytics-card span{font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.analytics-card b{font-size:28px;line-height:1.1}.analytics-card small{color:var(--muted)}.analytics-card.paid{background:#eef8f2}.analytics-card.overdue{background:#fff1ef}.rental-history{display:grid;gap:10px}.history-row{display:grid;grid-template-columns:minmax(220px,1.5fr) minmax(230px,1fr) minmax(150px,.8fr) auto;gap:16px;align-items:center;border:1px solid var(--line);border-radius:14px;padding:14px 16px;background:#fff}.history-title{font-weight:800;font-size:16px}.history-type{display:inline-block;margin-left:8px;padding:3px 7px;border-radius:999px;background:#f0f1f3;color:#666;font-size:10px;text-transform:uppercase}.history-period{display:flex;gap:8px;align-items:center}@media(max-width:900px){.analytics-grid{grid-template-columns:1fr 1fr}.history-row{grid-template-columns:1fr 1fr}}@media(max-width:620px){.analytics-grid,.history-row{grid-template-columns:1fr}}

/* v14.4 rental history and scooter income */
.table-wrap td a:not(.button){color:inherit;text-decoration:none}.table-wrap td a:not(.button):hover{text-decoration:underline}
@media(min-width:901px){.scooter-income-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:650px}}

/* v14.5 other rentals + contacts */
.other-inventory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:22px}.other-item-card{margin-bottom:0}.other-item-card h3{margin:3px 0 0}.other-stock{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:14px 0}.other-stock>div{background:#f6f7f8;border-radius:12px;padding:10px;text-align:center}.other-stock span{display:block;color:var(--muted);font-size:11px}.other-stock strong{font-size:21px}.compact-form{margin-top:12px;margin-bottom:0}.compact-payment{display:grid;gap:6px;margin-top:8px;min-width:180px}.compact-payment input{padding:7px 9px}.contact-edit{margin-top:16px}.contact-edit summary,.other-item-card summary{cursor:pointer;font-weight:700;color:#555}.renter-header>div{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.renter-header>div a{white-space:nowrap}select{font:inherit;border:1px solid #d8dce1;border-radius:10px;padding:11px 12px;background:#fff;color:#111}.formgrid.one{grid-template-columns:1fr}
@media(max-width:900px){.other-inventory-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.other-inventory-grid{grid-template-columns:1fr}.other-stock{grid-template-columns:repeat(3,1fr)}.renter-header>div span{width:100%}.renter-header>div{justify-content:flex-end;gap:8px}}

/* ===== v14.8: комментарии мопеда, пометки и задачи ===== */
.nav-task-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;margin-left:5px;padding:0 6px;border-radius:999px;background:#b42318;color:#fff;font-size:11px;font-weight:800;vertical-align:middle}
.scooter-card{padding:0;overflow:hidden}.scooter-card-main{display:block;padding:18px;color:inherit;text-decoration:none;position:relative}.scooter-card-main:hover{background:#fafafa}.scooter-card-actions{padding:10px 18px;border-top:1px solid var(--line);background:#fafbfc;display:flex;gap:8px;flex-wrap:wrap}.card-topline{display:flex;align-items:center;gap:8px;min-height:22px}.scooter-task-icons{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap}.scooter-task-icon{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:999px;font-size:13px;font-weight:900;line-height:1}.scooter-task-icon.breakdown{background:#d92d20;color:#fff;box-shadow:0 0 0 3px #d92d2014}.scooter-task-icon.maintenance{background:#eaf2ff;color:#2456a6;border:1px solid #c9dcff;font-size:12px}.scooter-task-icon.small-icon{width:20px;height:20px;font-size:11px}
.card.task-has-breakdown,.task-scooter-card.task-has-breakdown,.scooter-hero.task-has-breakdown{border-color:#efaaa5!important;background:linear-gradient(90deg,#fff1f0 0,#fff 22%)!important;box-shadow:inset 4px 0 0 #d92d20}.card.task-has-maintenance,.task-scooter-card.task-has-maintenance,.scooter-hero.task-has-maintenance{border-color:#c9dcff!important;background:linear-gradient(90deg,#eef5ff 0,#fff 22%)!important;box-shadow:inset 4px 0 0 #4d7fc8}.card.payment-due.task-has-breakdown,.card.payment-overdue.task-has-breakdown{box-shadow:inset 4px 0 0 #d92d20,0 0 0 3px #d92d2014}
.detail-icons{margin-top:10px}.detail-icons b{font-size:13px;margin-right:8px}.scooter-comment-form{margin-top:18px;padding-top:16px;border-top:1px solid var(--line);display:grid;gap:10px}.scooter-comment-form textarea{min-height:78px}.task-action-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.task-modal[hidden]{display:none!important}.task-modal{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px}.task-modal-backdrop{position:absolute;inset:0;background:#0009;backdrop-filter:blur(2px)}.task-modal-dialog{position:relative;z-index:1;width:min(560px,100%);max-height:90vh;overflow:auto;background:#fff;border-radius:22px;border:1px solid #e2e5e9;box-shadow:0 25px 80px #0005;padding:24px}.task-modal-close{position:absolute;right:14px;top:10px;width:36px;height:36px;border:0;background:transparent;font-size:28px;cursor:pointer;color:#777}.task-type-buttons{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:16px}.task-type-choice{border:1px solid var(--line);background:#fff;border-radius:16px;padding:18px;text-align:left;display:flex;align-items:flex-start;gap:12px;cursor:pointer;font:inherit}.task-type-choice:hover{transform:translateY(-1px);box-shadow:0 8px 25px #0000000d}.task-type-choice.breakdown:hover{border-color:#efaaa5;background:#fff7f6}.task-type-choice.maintenance:hover{border-color:#c9dcff;background:#f7faff}.task-type-choice span:last-child{display:flex;flex-direction:column;gap:3px}.task-type-choice small{line-height:1.35}.task-modal-actions{display:flex;justify-content:space-between;gap:10px;margin-top:16px}.modal-open{overflow:hidden}
.scooter-tasks-panel{border-color:#d9dee6}.task-list{display:grid;gap:10px}.task-list-item{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:14px;background:#fff}.task-list-item.breakdown{border-color:#f0c1bd;background:#fff8f7}.task-list-item.maintenance{border-color:#d3e2fb;background:#f9fbff}.task-list-body p{margin:4px 0;white-space:pre-wrap}.task-list-body small{color:var(--muted)}
.task-groups{display:grid;gap:16px;margin-bottom:24px}.task-scooter-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:20px}.task-scooter-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:14px}.task-scooter-head h2{margin:4px 0 2px}.task-scooter-head p{margin:4px 0}.task-scooter-head-actions{display:flex;gap:8px;flex-wrap:wrap}.task-empty{font-size:16px}.task-history{margin-top:24px}.task-history summary{cursor:pointer;font-weight:800}.task-history-list{margin-top:14px;display:grid;gap:8px}.task-history-row{display:grid;grid-template-columns:auto 1fr;gap:10px;padding:10px 0;border-top:1px solid #eef0f2}.task-history-row p{margin:3px 0}.task-history-row small{color:var(--muted)}
@media(max-width:800px){.scooter-card-main{padding:16px}.scooter-card-actions{padding:10px 16px}.scooter-card-actions .button{width:100%}.task-type-buttons{grid-template-columns:1fr}.task-modal{padding:10px}.task-modal-dialog{padding:20px 16px}.task-modal-actions{flex-direction:column}.task-modal-actions .button{width:100%}.task-list-item{grid-template-columns:auto 1fr}.task-list-item form{grid-column:1/-1}.task-list-item form .button{width:100%}.task-scooter-head{flex-direction:column}.task-scooter-head-actions{width:100%}.task-scooter-head-actions .button{flex:1}.task-action-row .button{flex:1}}
/* Сохраняем приоритет индикации платежей над мягкой подсветкой профилактики. */
.rental-card.payment-due{background:#fff5f4!important;border-color:#d92d20!important}.rental-card.payment-overdue{background:#fff9ed!important;border-color:#d97706!important}


/* ===== v15.0: финансовая аналитика ===== */
.finance-body{background:#07080a;color:#f7f7f8;min-height:100vh}.finance-header{background:#0d0f12;border-bottom-color:#202329}.finance-header nav a{color:#8f949d}.finance-header nav a.active,.finance-header nav a:hover{color:#fff}.finance-main{max-width:1180px;padding-top:28px}.finance-flash{border:1px solid transparent}.finance-flash.success{background:#10281d;color:#8ce0b5;border-color:#1f4935}.finance-flash.error{background:#301513;color:#ffaaa3;border-color:#61302b}.finance-topbar{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:20px}.finance-topbar h1{font-size:38px;margin:2px 0 0;letter-spacing:-.03em}.finance-topbar p{margin:5px 0 0;color:#9197a1}.finance-eyebrow,.finance-card-kicker{font-size:11px;font-weight:800;letter-spacing:.12em;color:#6f7580}.finance-add-shortcut{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;color:#07080a;background:#f2f3f5;border-radius:14px;padding:12px 16px;font-weight:800;white-space:nowrap}.finance-period-card{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px}.finance-period-tabs{display:inline-flex;background:#1a1c20;border:1px solid #292c32;border-radius:16px;padding:4px}.finance-period-tabs a{color:#c8cbd0;text-decoration:none;font-weight:750;padding:9px 20px;border-radius:12px}.finance-period-tabs a.active{background:#3c3f45;color:#fff}.finance-period-nav{display:flex;align-items:center;gap:10px;background:#121418;border:1px solid #24272d;border-radius:14px;padding:5px}.finance-period-nav a{width:36px;height:34px;display:flex;align-items:center;justify-content:center;color:#fff;text-decoration:none;background:#202329;border-radius:10px;font-size:24px;line-height:1}.finance-period-nav strong{min-width:170px;text-align:center;font-size:13px;color:#d6d8dc}.finance-summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:12px}.finance-kpi{background:#111317;border:1px solid #23262c;border-radius:20px;padding:20px}.finance-kpi span{display:block;color:#858b95;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.finance-kpi b{display:block;margin:6px 0 3px;font-size:30px;letter-spacing:-.035em}.finance-kpi small{color:#767c86}.finance-kpi.income b{color:#67daa1}.finance-kpi.expense b{color:#ff7770}.finance-kpi.result b{color:#f7f7f8}.finance-kpi.result.negative b{color:#ff7770}.finance-dashboard-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:12px;margin-bottom:12px}.finance-dark-card{background:#0f1114;border:1px solid #22252b;border-radius:24px;padding:22px}.finance-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px}.finance-card-head h2{margin:3px 0 0;font-size:28px;letter-spacing:-.025em}.finance-period-mini{font-size:12px;color:#7d838c;background:#1a1c20;border-radius:999px;padding:7px 10px}.finance-donut-wrap{display:flex;justify-content:center;padding:8px 0 20px}.finance-donut{width:260px;aspect-ratio:1;border-radius:50%;background:var(--expense-gradient);position:relative;box-shadow:0 0 45px #ffbe2e0a}.finance-donut:after{content:"";position:absolute;inset:52px;border-radius:50%;background:#0f1114;box-shadow:inset 0 0 0 1px #262930}.finance-donut-center{position:absolute;inset:52px;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center}.finance-donut-center b{font-size:30px}.finance-donut-center span{color:#777e88;font-size:12px}.finance-category-list{display:flex;flex-wrap:wrap;gap:9px}.finance-category-chip{display:flex;align-items:center;gap:9px;background:#17191e;border:1px solid #252830;border-radius:14px;padding:9px 11px;min-width:180px;flex:1}.finance-category-chip>span:last-child{display:flex;flex-direction:column;min-width:0}.finance-category-chip b{font-size:13px}.finance-category-chip small{color:#858b95;font-size:11px}.finance-cat-icon{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:#24272d;background:color-mix(in srgb,var(--cat-color) 25%,#101114);color:#fff;font-size:15px}.finance-income-card{display:flex;flex-direction:column}.finance-income-source{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:15px 0;border-top:1px solid #22252b}.finance-income-source:first-of-type{border-top:0}.finance-income-source>div{display:flex;flex-direction:column}.finance-income-source small{color:#777e88}.finance-income-source strong{font-size:17px}.source-icon{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#173e2e}.source-icon.extra{background:#252449}.finance-income-note{margin-top:auto;padding:14px;border-radius:14px;background:#15171b;color:#868c95;font-size:12px;line-height:1.45}.finance-operations{margin-bottom:12px}.finance-day-head{display:flex;justify-content:space-between;align-items:center;margin:24px 0 8px;padding:0 4px}.finance-day-head h3{margin:0;font-size:20px}.finance-day-head strong{color:#67daa1}.finance-day-head strong.negative{color:#ff7770}.finance-transaction-list{display:grid;gap:4px}.finance-transaction{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:13px 8px;border-top:1px solid #1d2025}.finance-transaction:first-child{border-top:0}.finance-tx-icon{width:42px;height:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:900;background:#1d2025}.finance-tx-icon.income{background:#123625;color:#75e1a9}.finance-tx-icon.expense{background:#24272d;background:color-mix(in srgb,var(--tx-color,#666) 28%,#111317)}.finance-tx-main{display:flex;flex-direction:column;min-width:0}.finance-tx-main a,.finance-tx-main b{color:#f4f5f6;text-decoration:none;font-size:16px;font-weight:750;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.finance-tx-main a:hover{text-decoration:underline}.finance-tx-main span{color:#777e88;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.finance-tx-amount{font-size:17px;font-weight:800;white-space:nowrap}.finance-tx-amount.income{color:#67daa1}.finance-tx-amount.expense{color:#f2f3f5}.finance-tx-delete button{border:0;background:#1b1d21;color:#6f7580;width:28px;height:28px;border-radius:9px;font-size:18px;cursor:pointer}.finance-tx-delete button:hover{background:#3b2020;color:#ff8b83}.finance-empty{color:#777e88;padding:10px 0}.finance-empty.large{padding:35px 0;text-align:center}.finance-add-expense{margin-bottom:12px}.finance-expense-form{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px}.finance-expense-form label{color:#d7d9dd;font-size:13px}.finance-expense-form label.wide{grid-column:1/-1}.finance-expense-form input,.finance-expense-form select{background:#181a1f;border:1px solid #2b2e35;color:#fff;border-radius:13px;min-height:48px}.finance-expense-form input::placeholder{color:#626873}.finance-submit{grid-column:1/-1;border:0;border-radius:14px;padding:14px 18px;background:#f3f4f5;color:#08090b;font:inherit;font-weight:850;cursor:pointer}.finance-submit:hover{background:#fff}.finance-system{background:#0d0f12;border:1px solid #1f2228;border-radius:18px;color:#888e98;margin-bottom:20px}.finance-system summary{cursor:pointer;padding:16px 18px;font-weight:700}.finance-system-inner{border-top:1px solid #1f2228;padding:16px 18px;display:flex;justify-content:space-between;align-items:center;gap:18px}.finance-system-stats{display:flex;flex-wrap:wrap;gap:12px 18px}.finance-system-stats b{color:#d9dce0}.finance-system .button{background:#1a1c20;border-color:#2b2e35;color:#e7e9ec}.finance-body input[type=date]{color-scheme:dark}
@media(max-width:900px){.finance-summary-grid{grid-template-columns:1fr 1fr}.finance-kpi.result{grid-column:1/-1}.finance-dashboard-grid{grid-template-columns:1fr}.finance-expense-form{grid-template-columns:1fr 1fr}.finance-expense-form label.wide,.finance-submit{grid-column:1/-1}}
@media(max-width:700px){.finance-header{padding-top:max(8px,env(safe-area-inset-top,0))}.finance-main{padding:16px 12px 70px}.finance-topbar{align-items:flex-start}.finance-topbar h1{font-size:30px}.finance-add-shortcut{padding:10px 12px;font-size:13px}.finance-period-card{flex-direction:column;align-items:stretch}.finance-period-tabs{display:grid;grid-template-columns:repeat(3,1fr)}.finance-period-tabs a{text-align:center;padding:9px 8px}.finance-period-nav{justify-content:space-between}.finance-period-nav strong{min-width:0;flex:1}.finance-summary-grid{grid-template-columns:1fr 1fr}.finance-kpi{padding:16px}.finance-kpi b{font-size:23px}.finance-kpi.result{grid-column:1/-1}.finance-dark-card{padding:17px;border-radius:20px}.finance-card-head h2{font-size:24px}.finance-donut{width:min(240px,78vw)}.finance-donut:after,.finance-donut-center{inset:48px}.finance-category-chip{min-width:100%}.finance-income-source{grid-template-columns:auto 1fr}.finance-income-source strong{grid-column:2}.finance-transaction{grid-template-columns:auto minmax(0,1fr) auto;gap:10px;padding:12px 2px}.finance-tx-amount{font-size:15px}.finance-tx-delete{grid-column:3;justify-self:end}.finance-tx-main span{max-width:220px}.finance-expense-form{grid-template-columns:1fr}.finance-expense-form label.wide,.finance-submit{grid-column:auto}.finance-system-inner{flex-direction:column;align-items:stretch}.finance-system .button{width:100%}}
@media(max-width:440px){.finance-topbar{flex-direction:column}.finance-add-shortcut{width:100%}.finance-summary-grid{grid-template-columns:1fr}.finance-kpi.result{grid-column:auto}.finance-period-mini{display:none}.finance-transaction{grid-template-columns:40px minmax(0,1fr) auto}.finance-tx-icon{width:40px;height:40px}.finance-tx-main a,.finance-tx-main b{font-size:15px}.finance-tx-main span{max-width:170px}.finance-day-head h3{font-size:18px}}

/* ===== v15.0.2: светлая аналитика в стиле главной страницы ===== */
.finance-body{background:var(--bg);color:var(--text);min-height:100vh}
.finance-header{background:#fff;border-bottom-color:var(--line)}
.finance-header nav a{color:#60656c}
.finance-header nav a.active,.finance-header nav a:hover{color:#111}
.finance-main{max-width:1280px;padding-top:32px}
.finance-flash.success{background:#e8f7ef;color:#176a43;border-color:#c9ead8}
.finance-flash.error{background:#fff0ee;color:#9b2c26;border-color:#efc5c1}
.finance-topbar h1{color:var(--text)}
.finance-topbar p{color:var(--muted)}
.finance-eyebrow,.finance-card-kicker{color:var(--muted)}
.finance-add-shortcut{color:#fff;background:#15171b;border:1px solid #15171b;border-radius:11px}
.finance-add-shortcut:hover{background:#2a2d31}
.finance-period-tabs{background:#fff;border-color:var(--line)}
.finance-period-tabs a{color:#60656c}
.finance-period-tabs a.active{background:#15171b;color:#fff}
.finance-period-nav{background:#fff;border-color:var(--line)}
.finance-period-nav a{color:#15171b;background:#f1f3f5;border:1px solid #e5e7eb}
.finance-period-nav a:hover{background:#e7e9ec}
.finance-period-nav strong{color:#30343a}
.finance-kpi{background:#fff;border-color:var(--line);box-shadow:0 6px 20px #00000005}
.finance-kpi span{color:var(--muted)}
.finance-kpi small{color:var(--muted)}
.finance-kpi.income b{color:#14804a}
.finance-kpi.expense b{color:#b3261e}
.finance-kpi.result b{color:#15171b}
.finance-kpi.result.negative b{color:#b3261e}
.finance-dark-card{background:#fff;border-color:var(--line);box-shadow:0 6px 20px #00000005}
.finance-card-head h2{color:var(--text)}
.finance-period-mini{color:#6d737c;background:#f1f3f5;border:1px solid #e5e7eb}
.finance-donut{box-shadow:0 12px 30px #0000000a}
.finance-donut:after{background:#fff;box-shadow:inset 0 0 0 1px var(--line)}
.finance-donut-center b{color:var(--text)}
.finance-donut-center span{color:var(--muted)}
.finance-category-chip{background:#f8f9fa;border-color:#e4e7eb}
.finance-category-chip b{color:#25282d}
.finance-category-chip small{color:var(--muted)}
.finance-cat-icon{background:color-mix(in srgb,var(--cat-color) 18%,#fff);color:#15171b}
.finance-income-source{border-top-color:#eceef1}
.finance-income-source small{color:var(--muted)}
.finance-income-source strong{color:#15171b}
.source-icon{background:#e6f7ee}
.source-icon.extra{background:#efefff}
.finance-income-note{background:#f5f6f8;color:#686e77;border:1px solid #e7e9ed}
.finance-day-head h3{color:var(--text)}
.finance-day-head strong{color:#14804a}
.finance-day-head strong.negative{color:#b3261e}
.finance-transaction{border-top-color:#eceef1}
.finance-tx-icon{background:#f0f2f4;color:#25282d}
.finance-tx-icon.income{background:#e6f7ee;color:#14804a}
.finance-tx-icon.expense{background:color-mix(in srgb,var(--tx-color,#999) 16%,#fff);color:#25282d}
.finance-tx-main a,.finance-tx-main b{color:#202328}
.finance-tx-main span{color:var(--muted)}
.finance-tx-amount.income{color:#14804a}
.finance-tx-amount.expense{color:#202328}
.finance-tx-delete button{background:#f1f3f5;color:#7b8189}
.finance-tx-delete button:hover{background:#fff0ee;color:#b3261e}
.finance-empty{color:var(--muted)}
.finance-expense-form label{color:#30343a}
.finance-expense-form input,.finance-expense-form select{background:#fff;border-color:#d8dce1;color:#111}
.finance-expense-form input::placeholder{color:#9aa0a8}
.finance-submit{background:#15171b;color:#fff;border:1px solid #15171b}
.finance-submit:hover{background:#2a2d31}
.finance-system{background:#fff;border-color:var(--line);color:var(--muted)}
.finance-system-inner{border-top-color:var(--line)}
.finance-system-stats b{color:#25282d}
.finance-system .button{background:#fff;border-color:#d4d7dc;color:#17191c}
.finance-system .button:hover{background:#f2f3f5}
.finance-body input[type=date]{color-scheme:light}


/* v15.1 — Т-Банк */
.payment-actions{display:flex;flex-wrap:wrap;gap:6px;align-items:center;min-width:230px}
.payment-actions form{margin:0}
.button.tbank{background:#ffdd2d!important;color:#111!important;border-color:#e6c200!important;font-weight:800}
.button.tbank:hover{filter:brightness(.97)}
.tbank-badge{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border-radius:999px;background:#fff7c2;color:#5f5000;border:1px solid #ead66b;font-size:12px;font-weight:800;white-space:nowrap}
.tbank-badge.paid{background:#e9f9ef;color:#167642;border-color:#bfe9cf}
.tbank-badge.warn{background:#fff0ee;color:#b42318;border-color:#f2c4bf}
.payment-ready-box{display:flex;flex-direction:column;gap:3px;margin:16px 0 4px;padding:14px 16px;border-radius:14px;background:#f6f7f9;border:1px solid #dfe3e8;color:#626b76}
.payment-ready-box.ready{background:#edf9f1;border-color:#bfe6ca;color:#216b3b}
.payment-ready-box span{font-size:13px}
#tbank-settings input[readonly]{background:#f5f6f8;color:#667085}
@media(max-width:760px){.payment-actions{min-width:190px}.payment-actions .button{width:auto}}
