:root{--bg: #f4f7fb;--card: #ffffff;--text: #182230;--muted: #5f6f85;--border: #d8e2ef;--accent: #0b63f6;--danger: #c43232}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at top,#ffffff 0%,var(--bg) 55%);color:var(--text);font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}h1,h2{margin:0}.wrap{min-height:80vh;display:flex;align-items:center;justify-content:center;padding:24px;background:#f5f7fb}.authShell{width:min(420px,100%)}.card{width:100%;background:var(--card);border:1px solid var(--border);border-radius:16px;padding:24px;box-shadow:0 10px 24px #0f172a0f}.formCard{margin-top:14px;text-align:left}.authTitle{font-size:28px;font-weight:700;margin-bottom:16px;text-align:center;color:#111827}.authCard{max-width:420px;width:100%;background:#fff;border-radius:12px;box-shadow:0 8px 20px #00000014;padding:28px;display:grid;gap:12px}.authFormTitle{font-size:20px;font-weight:600;margin-bottom:12px;color:#111827}.authInput{width:100%;height:42px;border-radius:8px;border:1px solid #d1d5db;padding:0 12px;font-size:14px;margin:0}.authInput:focus{border-color:#2563eb;outline:none}.authSubmitBtn{background:#2563eb;color:#fff;height:44px;border-radius:8px;border:none;font-weight:500;cursor:pointer;transition:background .2s ease;margin-top:16px}.authSubmitBtn:hover{background:#1d4ed8}.authSwitchText{font-size:14px;color:#6b7280;text-align:center;margin-top:10px}.authLinkBtn{color:#2563eb;text-decoration:none}.authLinkBtn:hover{text-decoration:underline}input{width:100%;margin:0 0 10px;border:1px solid var(--border);border-radius:10px;padding:11px 12px;font:inherit}button{width:100%;border:1px solid var(--accent);background:var(--accent);color:#fff;border-radius:10px;padding:11px 12px;font:inherit;font-weight:600;cursor:pointer}button:disabled{opacity:.65;cursor:not-allowed}.status{margin-top:12px;padding:10px 12px;border-radius:10px}.status.error{background:#ffe8e8;color:var(--danger)}.status.ok{background:#e9f9ef;color:#1f7a44}.switchText{margin:10px 0 2px;text-align:center;color:var(--muted);font-size:14px}.linkBtn{width:auto;border:0;background:transparent;color:var(--accent);padding:0 0 0 6px;font-weight:600;text-decoration:underline}.appLayout{min-height:100vh}.appShell{min-height:100vh;display:flex;flex-direction:column}.appFooter{margin-top:auto;padding:14px 24px 20px;text-align:center}.appFooterLink{color:#6b7280;font-size:13px;text-decoration:none}.appFooterLink:hover{text-decoration:underline}.appHeader{height:72px;border-bottom:1px solid var(--border);background:#fffc;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:space-between;padding:0 22px;position:sticky;top:0;z-index:20}.logo{font-size:24px;font-weight:700;letter-spacing:.3px}.logoBtn{width:auto;border:0;background:transparent;color:var(--text);padding:0;font-size:24px;font-weight:700;letter-spacing:.3px}.profileArea{position:relative}.profileLinkBtn{width:auto;border:1px solid #b7c9e4;background:#eaf2ff;color:#12366e;border-radius:999px;padding:8px 14px;display:inline-flex;align-items:center;gap:8px;font-weight:700}.profileIcon{font-size:16px;line-height:1}.avatarBtn{width:42px;height:42px;border-radius:999px;border:1px solid #b7c9e4;background:#eaf2ff;color:#12366e;font-weight:700;padding:0}.avatarBtn span{display:inline-block;transform:translateY(-1px)}.menuBtn{width:auto;height:42px;border-radius:999px;border:1px solid #b7c9e4;background:#eaf2ff;color:#12366e;font-weight:700;padding:0 12px;display:inline-flex;align-items:center;gap:8px}.menuIcon{font-size:16px;line-height:1}.menuLabel{font-size:14px}.profileDropdown{position:absolute;right:0;top:52px;width:200px;border:1px solid var(--border);border-radius:12px;background:#fff;box-shadow:0 12px 28px #0f172a1f;padding:8px;display:grid;gap:6px}.profileDropdown button{width:100%;text-align:left;border:1px solid transparent;background:#f5f8fe;color:#243347;border-radius:8px;padding:9px 10px;font-weight:500}.profileDropdown .dangerBtn{background:#fff0f0;color:#992f2f}.dashboardMain{min-height:80vh;display:flex;justify-content:center;align-items:center;padding:24px;background:#f5f7fb}.dashboardActionRow{width:min(640px,100%);margin-bottom:10px}.queueActionRow{width:100%;margin-top:14px;margin-inline:auto;display:flex;justify-content:center;gap:10px}.queueActionRow button{width:auto;min-width:220px}.searchCard{max-width:480px;width:100%;background:#fff;border-radius:12px;box-shadow:0 8px 20px #00000014;padding:28px}.searchForm{display:grid;gap:16px}.searchTitle{font-size:20px;font-weight:600;margin-bottom:12px}.searchField{display:grid;gap:4px}.searchField label{font-size:13px;color:#6b7280}.searchForm input,.searchForm select{width:100%;height:42px;border-radius:8px;border:1px solid #d1d5db;padding:0 12px;font-size:14px;margin:0;background:#fff}.searchForm input:focus,.searchForm select:focus{border-color:#2563eb;outline:none}.searchSubmitBtn{background:#2563eb;color:#fff;height:44px;border-radius:8px;border:none;font-weight:500;cursor:pointer;transition:background .2s ease;margin-top:8px}.searchSubmitBtn:hover{background:#1d4ed8}.secondaryBtn{background:#eef4ff;color:#1f4e9e;border-color:#c4d6f7}.primaryJoinBtn{background-color:#2563eb;color:#fff;border-color:#2563eb}.primaryJoinBtn:hover{background-color:#1d4ed8;border-color:#1d4ed8}.resultsMain{padding:24px;display:flex;justify-content:center}.profileMain{align-items:flex-start;padding-top:40px;background:#f5f7fb;min-height:calc(100vh - 72px)}.profileCard{max-width:480px;width:100%;background:#fff;border-radius:12px;box-shadow:0 8px 20px #00000014;padding:28px;border:0;display:grid;gap:16px}.profileTitle{font-size:20px;font-weight:600;margin-bottom:12px;color:#111827}.profileSectionTitle{font-size:18px;font-weight:600;margin-top:16px;margin-bottom:8px;color:#111827}.profileActionsBlock{display:grid;gap:12px}.profilePasswordBlock{display:grid;gap:8px}.profileForm{margin-top:0;gap:12px}.profileForm input{width:100%;height:42px;border-radius:8px;border:1px solid #d1d5db;padding:0 12px;font-size:14px;margin:0}.profileForm input:focus{border-color:#2563eb;outline:none}.profilePrimaryBtn{background:#2563eb;color:#fff;height:44px;border-radius:8px;border:none;font-weight:500;cursor:pointer;transition:background .2s ease}.profilePrimaryBtn:hover{background:#1d4ed8}.profileSecondaryBtn{background:#f3f4f6;color:#374151;height:42px;border-radius:8px;border:1px solid #e5e7eb}.profileSecondaryBtn:hover{background:#e5e7eb}.profileCarsList{margin:0;padding:0;list-style:none;display:grid;gap:10px}.profileCarsItem{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #e5e7eb;border-radius:8px;padding:10px 12px;background:#fff}.profileCarsPlate{font-weight:600;color:#111827;letter-spacing:.4px}.profileCarsItem .dangerBtn{width:auto;border-color:#e2a6a6;background:#fff0f0;color:#992f2f;padding:8px 12px;font-weight:600}.createPlaceMain{align-items:flex-start;padding-top:40px;background:#f5f7fb;min-height:calc(100vh - 72px)}.createPlaceCard{max-width:480px;width:100%;background:#fff;border-radius:12px;box-shadow:0 8px 20px #00000014;padding:28px;border:0}.createPlaceTitle{font-size:20px;font-weight:600;margin-bottom:12px;color:#111827}.createPlaceForm{display:grid;gap:16px}.createPlaceField{display:grid;gap:4px}.createPlaceField span{font-size:13px;color:#6b7280}.createPlaceForm input,.createPlaceForm select{width:100%;height:42px;border-radius:8px;border:1px solid #d1d5db;padding:0 12px;font-size:14px;margin:0;background:#fff}.createPlaceForm input:focus,.createPlaceForm select:focus{border-color:#2563eb;outline:none}.createPlaceQueueTypeBlock{display:grid;gap:8px}.createPlaceQueueTypeTitle{font-size:14px;color:#111827;font-weight:600}.createPlaceQueueTypeOption{display:flex;align-items:flex-start;gap:10px;padding:8px 0}.createPlaceQueueTypeOption input{width:auto;height:auto;margin-top:2px;padding:0}.createPlaceQueueTypeOption span{display:grid;gap:2px}.createPlaceQueueTypeOption strong{font-weight:500;color:#111827}.createPlaceQueueTypeOption small{font-size:13px;color:#6b7280}.createPlaceSubmitBtn{margin-top:16px;background:#2563eb;color:#fff;height:44px;border-radius:8px;border:none;font-weight:500;cursor:pointer;transition:background .2s ease}.createPlaceSubmitBtn:hover{background:#1d4ed8}.privacyMain{align-items:flex-start;padding-top:40px;background:#f5f7fb;min-height:calc(100vh - 72px)}.privacyCard{max-width:720px;width:100%;background:#fff;border-radius:12px;box-shadow:0 8px 20px #00000014;padding:32px}.privacyTitle{font-size:24px;font-weight:700;margin:0 0 20px;color:#111827}.privacyText{font-size:14px;line-height:1.6;color:#374151}.privacyText h2{font-size:16px;font-weight:600;margin-top:16px;margin-bottom:8px;color:#111827}.privacyText p{margin:0 0 10px}.privacyText ul{margin:0 0 10px;padding-left:18px}.privacyBottomNote{margin-top:20px}.resultsCard{width:min(840px,100%)}.queuePageTitle{font-size:22px}.resultsMeta{margin-top:8px;color:var(--muted);font-size:14px}.resultList{margin:14px 0 0;padding:0;list-style:none;display:grid;gap:10px}.resultList li{border:1px solid var(--border);border-radius:10px;padding:12px}.placeTitle{font-size:17px;font-weight:700}.placeMeta{margin-top:6px;color:var(--muted);font-size:14px}.queueCardTitle{margin-top:4px;font-size:28px;font-weight:800;line-height:1.1;text-align:center}.queueCardId{margin-top:6px;color:var(--muted);font-size:11px;font-weight:600;text-align:center}.queueCity{text-align:center}.inlineForm{margin-top:10px;display:grid;gap:8px}.inlineForm label{font-size:14px;color:var(--muted)}.resultList .dangerBtn{width:auto;margin-top:10px;border-color:#e2a6a6;background:#fff0f0;color:#992f2f}.modalBackdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#12213473;display:flex;align-items:center;justify-content:center;padding:16px;z-index:100}.modalCard{width:min(420px,100%);background:#fff;border:1px solid var(--border);border-radius:14px;padding:18px;box-shadow:0 18px 32px #0f172a2e}.modalCard h3{margin:0 0 12px}.savedCarsBlock{display:grid;gap:8px;margin:0 0 12px}.savedCarOption{display:flex;align-items:center;gap:8px;font-size:14px;color:#243347}.savedCarOption input{width:auto;margin:0}.turnstileWrap{display:flex;justify-content:center;margin-top:10px}.modalCard .dashboardActionRow{width:100%;display:flex;gap:10px;margin-top:8px}.queueViewport{margin-top:14px;border:1px solid var(--border);border-radius:12px;background:#f7faff;height:400px;overflow-y:auto;padding:14px 12px}.emptyQueueState{height:100%;display:grid;place-content:center;text-align:center;color:var(--muted);gap:6px}.queueLineList{list-style:none;margin:0;padding:0;display:grid;gap:10px}.queueLineItem{border-radius:12px;border:1px solid #d7e1f0;background:#fff;padding:10px 12px;text-align:center}.queueLineItem.before .queuePlate{color:#1f4e9e;font-size:17px;font-weight:700}.queueLineItem.after .queuePlate{color:#8b9ab0;font-size:17px;font-weight:500}.queueLineItem.current{border-color:#9cbaf0;background:#e9f1ff;box-shadow:0 8px 20px #15449224}.queueLineItem.current .queuePlate{color:#0f3f95;font-size:30px;font-weight:800;letter-spacing:1px}.queuePlate{font-family:Consolas,Courier New,monospace;letter-spacing:.6px;text-transform:uppercase}.queueNumber{font-size:.5em;font-weight:700}.queueCarNumber{font-size:1em}.queueHint{margin-bottom:4px;font-size:12px;color:#4a6ea8;font-weight:700}.queueHintAfter{color:#7f8da3}.boxesDemoMain{padding:24px;background:#f5f7fb}.boxesDemoPage{max-width:1420px;margin:0 auto;display:grid;grid-template-columns:1.8fr 1fr;gap:20px}.boxesDemoPanel{background:#fff;border:1px solid #e8edf3;border-radius:20px;box-shadow:0 14px 40px #142a4a14}.boxesDemoHero{padding:28px;min-height:420px;display:flex;flex-direction:column;justify-content:space-between;background:radial-gradient(circle at top right,rgba(30,136,229,.08),transparent 28%),#fff}.boxesDemoSidebar{display:grid;gap:16px;align-content:start}.boxesDemoCardPad{padding:22px}.boxesDemoEyebrow{color:#1e88e5;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.boxesDemoBoardTitle{margin-top:10px;font-size:18px;color:#6f7c8d}.boxesDemoMainCallWrap{min-height:240px;display:flex;align-items:center;justify-content:center;text-align:center;margin-top:18px}.boxesDemoMainCall{display:grid;gap:10px;justify-items:center;color:#1d2735;line-height:1.02}.boxesDemoMainCallIdle{color:#6f7c8d;font-size:34px;font-weight:700}.boxesDemoCallLine1,.boxesDemoCallLine2,.boxesDemoCallLine3{font-weight:800;color:#202938}.boxesDemoCallLine1{font-size:62px}.boxesDemoCallLine2{font-size:54px}.boxesDemoCallLine3{font-size:62px}.boxesDemoCallTicket{color:#0f5cc0;font-weight:900}.boxesDemoCallBox{color:#138a52;font-weight:900}.boxesDemoSecondaryCalls{margin-top:14px;display:flex;flex-wrap:wrap;justify-content:center;gap:12px;min-height:72px}.boxesDemoSecondaryChip{display:inline-flex;align-items:center;gap:10px;padding:14px 18px;border-radius:16px;background:#fff;border:1px solid #e4ebf2;box-shadow:0 10px 24px #142a4a14;font-size:24px;font-weight:800;line-height:1;color:#324055}.boxesDemoSecondaryTicket{color:#0f5cc0;font-weight:900}.boxesDemoSecondaryArrow{color:#6f7c8d;font-weight:700}.boxesDemoSecondaryBox{color:#138a52;font-weight:900}.boxesDemoSecondaryEmpty{color:#6f7c8d;font-size:18px;font-weight:600}.boxesDemoUpcoming{margin-top:18px;padding-top:18px;border-top:1px solid #e8edf3;display:grid;gap:10px}.boxesDemoUpcomingLabel{color:#6f7c8d;font-size:14px}.boxesDemoUpcomingStrip{display:flex;flex-wrap:wrap;gap:10px}.boxesDemoUpcomingChip{min-width:68px;padding:12px 14px;text-align:center;border-radius:12px;background:#f1f6fb;color:#122033;font-weight:700;border:1px solid #d9e5f2}.boxesDemoSidebarTitle{font-size:24px;font-weight:800;margin:0 0 10px}.boxesDemoSidebarCopy{color:#6f7c8d;font-size:15px;line-height:1.5;margin-bottom:18px}.boxesDemoJoinBtn{width:100%;border:0;border-radius:16px;background:#1e88e5;color:#fff;font-size:20px;font-weight:800;padding:18px 20px;cursor:pointer;box-shadow:0 16px 30px #1e88e53d}.boxesDemoJoinBtn:hover{background:#1769c2}.boxesDemoLastTicketCard{margin-top:14px;padding:16px;border-radius:14px;background:#f5f9ff;border:1px solid #d8e6f7}.boxesDemoLastTicketLabel{font-size:13px;color:#6f7c8d;margin-bottom:6px}.boxesDemoLastTicketValue{font-size:34px;font-weight:800}.boxesDemoStatsGrid{display:grid;grid-template-columns:repeat(3,minmax(180px,1fr));gap:16px}.boxesDemoStatCard{padding:18px 20px}.boxesDemoStatLabel{color:#6f7c8d;font-size:14px;margin-bottom:8px}.boxesDemoStatValue{font-size:34px;font-weight:800}.boxesDemoBoxesSection,.boxesDemoQueueSection,.boxesDemoHistorySection{padding:22px}.boxesDemoBoxesSection{grid-column:1 / 2}.boxesDemoQueueSection{grid-column:2 / 3}.boxesDemoHistorySection{grid-column:1 / -1}.boxesDemoSectionTitle{margin:0 0 18px;font-size:24px;font-weight:800}.boxesDemoBoxesGrid{display:grid;grid-template-columns:repeat(3,minmax(160px,1fr));gap:16px}.boxesDemoBoxCard{border:1px solid #e8edf3;border-radius:18px;padding:18px;background:#fcfdff;min-height:176px;display:flex;flex-direction:column;justify-content:space-between}.boxesDemoBoxHead{display:flex;justify-content:space-between;align-items:center;gap:12px}.boxesDemoBoxName{font-size:24px;font-weight:800}.boxesDemoBoxBadge{padding:10px 16px;border-radius:999px;font-size:15px;font-weight:900;text-transform:uppercase;letter-spacing:.02em}.boxesDemoBoxBadge.free{background:#eaf8f0;color:#1f9d55}.boxesDemoBoxBadge.busy{background:#fdecec;color:#b42318}.boxesDemoBoxTicket{margin-top:18px;font-size:34px;font-weight:800;color:#1769c2;min-height:42px}.boxesDemoBoxTicket.empty{color:#6f7c8d;font-size:20px;font-weight:600}.boxesDemoBoxMeta{color:#6f7c8d;font-size:15px}.boxesDemoQueueList,.boxesDemoHistoryList{display:grid;gap:12px}.boxesDemoQueueItem,.boxesDemoHistoryItem{border:1px solid #e8edf3;border-radius:16px;background:#fbfcfe;padding:14px 16px}.boxesDemoQueueTicket{font-size:28px;font-weight:800}.boxesDemoQueueMeta,.boxesDemoHistoryTime{font-size:13px;color:#6f7c8d}.boxesDemoEmptyState{border:1px dashed #d6dde8;border-radius:18px;padding:26px;color:#6f7c8d;background:#fcfdff;text-align:center}@media (max-width: 1180px){.boxesDemoPage,.boxesDemoStatsGrid{grid-template-columns:1fr}.boxesDemoBoxesSection,.boxesDemoQueueSection,.boxesDemoHistorySection{grid-column:1 / -1}.boxesDemoBoxesGrid{grid-template-columns:repeat(2,minmax(160px,1fr))}}@media (max-width: 760px){.boxesDemoMain{padding:16px}.boxesDemoBoxesGrid{grid-template-columns:1fr}.boxesDemoCallLine1,.boxesDemoCallLine3{font-size:40px}.boxesDemoCallLine2{font-size:34px}.boxesDemoMainCallIdle{font-size:28px}.boxesDemoSecondaryChip{font-size:18px}}
