html,body,#root{min-width:320px;min-height:100%;margin:0}body{margin:0}#root{width:100%;max-width:none;text-align:initial;border:none;min-height:100vh;margin:0;display:block}:root,[data-theme=light]{--app-bg:#eef3f7;--app-text:#1a2b34;--app-header-bg:#fff;--app-header-border:#e4ebf0;--app-user-muted:#1a2b34a6;--login-card-shadow:0 18px 50px #0c3c5024;--login-contacts-bg:#ffffffb8;--login-contacts-border:#0b7ea42e;--login-link:#0b7ea4;--login-bg-base:#dce8ef;--login-bg-deep:#b7d0dc;--login-accent:#0b7ea438;--login-accent-strong:#2f9e6b47;--login-ink:#1234441f;--login-doc-bg:#ffffff8c;--login-doc-border:#0b7ea447;--login-stamp:#2f9e6b59}[data-theme=dark]{--app-bg:#0f171c;--app-text:#e8eef2;--app-header-bg:#152028;--app-header-border:#24333c;--app-user-muted:#e8eef2a6;--login-card-shadow:0 18px 50px #00000073;--login-contacts-bg:#152028c7;--login-contacts-border:#5aaac438;--login-link:#5ab8d4;--login-bg-base:#0c1419;--login-bg-deep:#16303a;--login-accent:#5ab8d42e;--login-accent-strong:#48aa7838;--login-ink:#b4d2dc1a;--login-doc-bg:#ffffff0f;--login-doc-border:#5ab8d447;--login-stamp:#48aa7852}:root{color:var(--app-text);background:var(--app-bg);font-family:Segoe UI,system-ui,-apple-system,Roboto,sans-serif;line-height:1.5}*{box-sizing:border-box}body{background:var(--app-bg);min-width:320px;min-height:100vh;color:var(--app-text);margin:0}#root{min-height:100vh}.login-page{isolation:isolate;background:radial-gradient(ellipse 80% 60% at 15% 20%, var(--login-accent), transparent 55%), radial-gradient(ellipse 70% 50% at 85% 75%, var(--login-accent-strong), transparent 50%), linear-gradient(155deg, var(--login-bg-base) 0%, var(--login-bg-deep) 55%, var(--login-bg-base) 100%);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex;position:relative;overflow:hidden}.login-bg{z-index:0;pointer-events:none;position:absolute;inset:0;overflow:hidden}.login-bg-grid{background-image:linear-gradient(var(--login-ink) 1px, transparent 1px), linear-gradient(90deg, var(--login-ink) 1px, transparent 1px);opacity:.7;background-size:48px 48px;position:absolute;inset:-20%;transform:rotate(-8deg);-webkit-mask-image:radial-gradient(70% 60%,#000 20%,#0000 75%);mask-image:radial-gradient(70% 60%,#000 20%,#0000 75%)}.login-bg-glow{background:radial-gradient(circle, var(--login-accent-strong), transparent 68%);border-radius:50%;width:420px;height:420px;animation:12s ease-in-out infinite login-float;position:absolute;bottom:-120px;left:-80px}.login-bg-route{border:2px dashed color-mix(in srgb, var(--login-link) 35%, transparent);opacity:.55;border-radius:40% 60% 45% 55%/50% 40% 60% 50%;animation:18s linear infinite login-route;position:absolute;inset:18% 8% 22%}.login-bg-docs{position:absolute;inset:0}.login-doc{background:linear-gradient(180deg, transparent 18px, var(--login-ink) 18px, var(--login-ink) 19px, transparent 19px) 0 36px / 100% 22px repeat-y, var(--login-doc-bg);border:1px solid var(--login-doc-border);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);border-radius:10px;width:min(180px,28vw);height:min(240px,36vw);position:absolute;box-shadow:0 12px 30px #00000014}.login-doc:before{content:"";background:color-mix(in srgb, var(--login-link) 45%, transparent);border-radius:4px;height:8px;position:absolute;top:14px;left:16px;right:40%}.login-doc:after{content:"ЭПЛ";letter-spacing:.08em;color:color-mix(in srgb, var(--login-link) 70%, transparent);font-size:11px;font-weight:700;position:absolute;bottom:14px;right:14px}.login-doc-a{animation:14s ease-in-out infinite login-doc-drift;top:12%;left:6%;transform:rotate(-12deg)}.login-doc-b{animation:16s ease-in-out infinite reverse login-doc-drift;top:18%;right:7%;transform:rotate(9deg)}.login-doc-c{opacity:.85;width:min(140px,22vw);height:min(190px,30vw);animation:20s ease-in-out infinite login-doc-drift;bottom:10%;left:14%;transform:rotate(4deg)}.login-bg-stamp{border:3px solid var(--login-stamp);width:120px;height:120px;box-shadow:inset 0 0 0 6px color-mix(in srgb, var(--login-stamp) 40%, transparent);opacity:.75;border-radius:50%;animation:10s ease-in-out infinite login-stamp;position:absolute;bottom:16%;right:12%}.login-bg-stamp:before{content:"✓";color:var(--login-stamp);place-items:center;font-size:42px;font-weight:700;display:grid;position:absolute;inset:0}.login-theme-toggle{z-index:2;background:color-mix(in srgb, var(--app-header-bg) 80%, transparent);border:1px solid var(--app-header-border);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:999px;position:absolute;top:16px;right:16px}.login-card{z-index:1;width:100%;max-width:420px;box-shadow:var(--login-card-shadow);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative}.login-brand{justify-content:center;margin:-4px 0 8px;display:flex}.login-logo{object-fit:contain;width:min(100%,280px);height:auto;display:block}.login-title{text-align:center;margin:8px 0 0!important}.login-subtitle{text-align:center;margin-top:4px;font-size:13px;display:block}.login-contacts{background:var(--login-contacts-bg);border:1px solid var(--login-contacts-border);text-align:center;border-radius:8px;margin-top:12px;padding:12px 14px;font-size:14px;line-height:1.55}.login-contacts-label{letter-spacing:.02em;text-transform:uppercase;margin-bottom:4px;font-size:12px;display:block}.login-contacts-row{margin-top:2px}.login-contacts-row a,.login-app-links a{color:var(--login-link);text-decoration:none}.login-contacts-row a:hover,.login-app-links a:hover{text-decoration:underline}.login-contacts-sep{color:#94a3b8;margin:0 6px}.login-app-links{margin-top:8px}@keyframes login-float{0%,to{transform:translate(0)}50%{transform:translate(30px,-24px)}}@keyframes login-route{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes login-doc-drift{0%,to{translate:0}50%{translate:0 -14px}}@keyframes login-stamp{0%,to{opacity:.7;transform:scale(1)rotate(-8deg)}50%{opacity:.9;transform:scale(1.06)rotate(-2deg)}}@media (width<=720px){.login-doc-c,.login-bg-stamp{display:none}.login-doc-a,.login-doc-b{opacity:.45}}@media (prefers-reduced-motion:reduce){.login-bg-glow,.login-bg-route,.login-doc,.login-bg-stamp{animation:none}}.app-header{border-bottom:1px solid var(--app-header-border);justify-content:space-between;align-items:center;gap:12px;padding:0 16px;line-height:normal;display:flex;background:var(--app-header-bg)!important}.app-header-start{align-items:center;gap:8px;min-width:0;display:flex}.app-menu-button{font-size:18px}.app-logo{color:var(--login-link);white-space:nowrap;text-overflow:ellipsis;font-size:18px;font-weight:600;overflow:hidden}.app-brand{align-items:center;gap:10px;min-width:0;display:flex}.app-brand-title{color:var(--app-text);white-space:nowrap;text-overflow:ellipsis;max-width:200px;font-size:16px;font-weight:600;overflow:hidden}.app-logo-img{width:auto;height:36px;display:block}.app-user-label{color:var(--app-user-muted);font-size:13px}.app-logout-button{flex-shrink:0}.app-content{background:var(--app-bg);padding:24px}.app-mobile-drawer .ant-menu{border-inline-end:none!important}@media (width<=768px){.app-content{padding:16px}.app-logo{max-width:180px;font-size:16px}}.dashboard-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}@media (width<=768px){.dashboard-grid{grid-template-columns:1fr}}.stat-card-profit{border-top:3px solid #52c41a}.stat-card-drivers{border-top:3px solid #8c8c8c}.cars-card-grid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:16px;display:grid}.car-info-card{border-radius:10px}.car-info-card-compact .ant-card-body{padding:14px 16px}.car-info-line{margin-bottom:6px}.dispatchers-card-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;display:grid}.dispatcher-card{border-radius:12px;overflow:hidden}.dispatcher-card .ant-card-body{padding:0}.dispatcher-card-logo{background:linear-gradient(#f5f8ff 0%,#fafafa 100%);border-bottom:1px solid #f0f0f0;justify-content:center;align-items:center;height:140px;padding:16px;display:flex}[data-theme=dark] .dispatcher-card-logo{background:linear-gradient(#1a2830 0%,#152028 100%);border-bottom-color:#24333c}.dispatcher-card-logo img{object-fit:contain;max-width:100%;max-height:108px}.dispatcher-card-logo-placeholder{color:#bfbfbf;flex-direction:column;align-items:center;gap:8px;font-size:28px;display:flex}.dispatcher-card-body{padding:16px}
