:root { --bg: #060913; --bg-elevated: #0d1220; --bg-soft: #121a2a; --surface: rgba(15, 22, 37, 0.92); --surface-soft: rgba(19, 29, 48, 0.92); --surface-light: #ffffff; --surface-light-soft: #f4f7fb; --line: rgba(255, 255, 255, 0.08); --line-strong: rgba(255, 255, 255, 0.16); --text: #eef4ff; --muted: #8d9bb2; --primary: #196cff; --primary-strong: #0f56d9; --primary-soft: rgba(25, 108, 255, 0.16); --cyan: #66c6ff; --green: #37d67a; --amber: #ffbf5c; --red: #ff6e68; --light-text: #0f1728; --light-muted: #69758a; --light-line: #dde6f2; --shadow: 0 30px 80px rgba(0, 0, 0, 0.28); --radius-xl: 28px; --radius-lg: 22px; --radius-md: 16px; --radius-sm: 12px; --content-width: 1320px; } * { box-sizing: border-box; } html, body { margin: 0; padding: 0; min-height: 100%; width: 100%; overflow-x: hidden; -webkit-text-size-adjust: 100%; text-size-adjust: 100%; } body { font-family: "Space Grotesk", "Manrope", "Segoe UI", sans-serif; color: var(--text); background: radial-gradient(circle at top left, rgba(25, 108, 255, 0.24), transparent 28%), radial-gradient(circle at top right, rgba(57, 120, 255, 0.18), transparent 26%), linear-gradient(180deg, #04070d 0%, #09111d 28%, #060913 100%); } a { color: inherit; text-decoration: none; } img { display: block; max-width: 100%; } button, input, select, textarea { font: inherit; } .page-shell { width: min(100%, var(--content-width)); max-width: 100%; margin: 0 auto; padding: 24px 18px 112px; overflow-x: clip; } .topbar { position: sticky; top: 0; z-index: 40; background: rgba(6, 9, 19, 0.82); border-bottom: 1px solid rgba(255, 255, 255, 0.05); backdrop-filter: blur(22px); } .topbar-inner { width: min(100%, var(--content-width)); margin: 0 auto; padding: 14px 18px; display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 16px; } .brand { display: inline-flex; align-items: center; gap: 12px; font-size: 1.05rem; font-weight: 700; } .brand-mark { width: 40px; height: 40px; border-radius: 14px; background: radial-gradient(circle at 28% 25%, rgba(255, 255, 255, 0.88), transparent 18%), linear-gradient(135deg, #1d77ff 0%, #0c4ac3 65%, #082a73 100%); box-shadow: 0 10px 28px rgba(25, 108, 255, 0.35); } .brand-note { color: var(--muted); font-size: 0.78rem; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; } .topbar-search { display: flex; align-items: center; gap: 12px; min-height: 52px; padding: 0 18px; border: 1px solid var(--line); border-radius: 999px; background: rgba(255, 255, 255, 0.035); color: var(--muted); } .topbar-search span:last-child { margin-left: auto; font-size: 0.78rem; color: rgba(255, 255, 255, 0.36); } .nav-links { display: flex; align-items: center; justify-content: flex-end; gap: 10px; flex-wrap: wrap; } .nav-link, .button, .mobile-link { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 46px; padding: 0 16px; border-radius: 999px; border: 1px solid var(--line); background: rgba(255, 255, 255, 0.03); color: var(--text); cursor: pointer; transition: transform 160ms ease, border-color 160ms ease, background 160ms ease; } .nav-session-chip { display: inline-flex; align-items: center; justify-content: center; min-height: 38px; padding: 0 12px; border-radius: 999px; background: rgba(255, 255, 255, 0.035); color: var(--muted); font-size: 0.78rem; } .nav-link-admin { border-color: rgba(255, 191, 92, 0.28); color: #ffd58c; } .nav-logout-button { min-height: 40px; padding-inline: 13px; } .nav-link:hover, .button:hover, .mobile-link:hover { transform: translateY(-1px); border-color: var(--line-strong); } .button-primary { border-color: transparent; background: linear-gradient(135deg, var(--primary) 0%, var(--primary-strong) 100%); color: white; } .button-secondary { background: rgba(255, 255, 255, 0.06); } .button-ghost { background: transparent; } .button-danger { border-color: rgba(255, 110, 104, 0.28); background: rgba(255, 110, 104, 0.12); color: #ffd7d5; } .mobile-dock { position: fixed; left: 50%; bottom: 0; z-index: 45; display: none; align-items: center; justify-content: space-between; gap: 2px; width: min(calc(100% - 8px), 392px); padding: 10px 10px 14px; border: 1px solid rgba(255, 255, 255, 0.06); border-bottom: none; border-radius: 28px 28px 0 0; background: linear-gradient(180deg, rgba(10, 14, 24, 0.98) 0%, rgba(6, 10, 18, 0.98) 100%); backdrop-filter: blur(18px); transform: translateX(-50%); box-shadow: 0 22px 48px rgba(0, 0, 0, 0.38); } .mobile-link { flex: 1; min-height: auto; padding: 4px 0 0; flex-direction: column; border: none; border-radius: 0; background: transparent; font-size: 0.72rem; font-weight: 500; color: var(--muted); gap: 6px; } .mobile-link.active { background: transparent; color: #2d80ff; } .mobile-link-icon { display: inline-grid; place-items: center; width: 22px; height: 22px; } .mobile-link.active .mobile-link-icon { color: #2d80ff; transform: translateY(-1px); } .mobile-link-icon svg { width: 22px; height: 22px; } .eyebrow { color: var(--cyan); font-size: 0.76rem; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; } .headline { margin: 0; font-size: clamp(2.4rem, 6vw, 4.8rem); line-height: 0.96; letter-spacing: -0.04em; } .section-title { margin: 0; font-size: clamp(1.2rem, 2.5vw, 1.7rem); } .lead { margin: 0; color: #d2ddef; font-size: 1rem; line-height: 1.65; } .muted { color: var(--muted); } .stack { display: grid; gap: 16px; } .split { display: flex; align-items: center; justify-content: space-between; gap: 12px; } .panel, .hero-card, .card { border: 1px solid var(--line); border-radius: var(--radius-lg); background: var(--surface); box-shadow: var(--shadow); } .panel { padding: 20px; } .hero-card { overflow: hidden; } .field, .textarea, .select { width: 100%; min-height: 50px; padding: 12px 16px; border: 1px solid var(--line); border-radius: 16px; background: rgba(255, 255, 255, 0.035); color: var(--text); } .field::placeholder, .textarea::placeholder { color: rgba(255, 255, 255, 0.34); } .textarea { min-height: 120px; resize: vertical; } .search-grid, .filters-grid, .form-grid { display: grid; gap: 12px; } .search-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .badges, .chip-row, .score-pills { display: flex; flex-wrap: wrap; gap: 10px; } .badge, .quick-chip, .score-pill, .status-pill, .light-chip { display: inline-flex; align-items: center; gap: 8px; min-height: 36px; padding: 0 12px; border-radius: 999px; border: 1px solid rgba(255, 255, 255, 0.08); background: rgba(255, 255, 255, 0.04); color: #d8e7ff; font-size: 0.87rem; } .quick-chip.active, .score-pill, .status-pill.primary { background: rgba(25, 108, 255, 0.18); border-color: rgba(76, 140, 255, 0.28); } .status-pill.success { color: #daf8e7; background: rgba(55, 214, 122, 0.14); border-color: rgba(55, 214, 122, 0.24); } .status-pill.warning { color: #ffe8bf; background: rgba(255, 191, 92, 0.14); border-color: rgba(255, 191, 92, 0.24); } .status-pill.danger { color: #ffd7d5; background: rgba(255, 110, 104, 0.14); border-color: rgba(255, 110, 104, 0.24); } .thumb { width: 100%; object-fit: cover; background: rgba(255, 255, 255, 0.05); } .section-head { display: flex; align-items: end; justify-content: space-between; gap: 12px; } .empty-state { padding: 22px; border: 1px dashed rgba(255, 255, 255, 0.12); border-radius: 18px; color: var(--muted); } .list { display: grid; gap: 12px; } .list-item { padding: 16px; border-radius: 18px; border: 1px solid var(--line); background: rgba(255, 255, 255, 0.03); } .detail-grid { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(320px, 0.78fr); gap: 20px; } .home-page, .map-home-page, .wizard-page { display: grid; gap: 22px; } .map-home-page { width: min(100%, 460px); padding-top: 18px; } .map-home-shell { width: 100%; display: flex; justify-content: center; overflow-x: clip; } .map-home-device { width: 100%; max-width: 390px; min-height: calc(100vh - 132px); margin: 0 auto; padding: 12px 12px 102px; border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 32px; background: radial-gradient(circle at top center, rgba(28, 86, 200, 0.12), transparent 28%), linear-gradient(180deg, rgba(17, 25, 42, 0.9) 0%, rgba(9, 15, 28, 0.96) 100%); box-shadow: 0 24px 70px rgba(0, 0, 0, 0.4); overflow-x: clip; } .map-home-search-stack { display: grid; gap: 12px; min-width: 0; } .map-home-search-row { display: grid; grid-template-columns: 1fr 42px; gap: 10px; } .map-home-searchbar { display: flex; align-items: center; gap: 10px; min-height: 48px; padding: 0 15px; border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 999px; background: rgba(255, 255, 255, 0.032); box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04); } .map-home-search-icon { display: inline-grid; place-items: center; width: 18px; height: 18px; color: rgba(255, 255, 255, 0.7); } .map-home-search-icon svg { width: 18px; height: 18px; } .map-home-searchbar input { width: 100%; border: none; background: transparent; color: white; outline: none; } .map-home-searchbar input::placeholder { color: rgba(255, 255, 255, 0.42); } .map-home-filter-link { display: inline-grid; place-items: center; width: 44px; height: 44px; border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 15px; background: rgba(255, 255, 255, 0.04); color: white; box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04); } .map-home-filter-link svg { width: 18px; height: 18px; } .map-home-chip-row { display: flex; gap: 8px; margin-top: 10px; max-width: 100%; overflow-x: auto; padding-bottom: 2px; overscroll-behavior-x: contain; } .map-home-chip-row::-webkit-scrollbar, .map-home-maker-list::-webkit-scrollbar { display: none; } .map-home-chip { display: inline-flex; align-items: center; justify-content: center; min-height: 32px; padding: 0 13px; border: 1px solid rgba(255, 255, 255, 0.07); border-radius: 11px; background: rgba(255, 255, 255, 0.028); color: #e4ecfb; white-space: nowrap; font-size: 0.82rem; } .map-home-chip.active { background: rgba(25, 108, 255, 0.18); border-color: rgba(76, 140, 255, 0.32); box-shadow: 0 10px 18px rgba(24, 88, 215, 0.16); } .map-home-chip-primary { background: rgba(25, 108, 255, 0.2); color: white; } .map-home-map { position: relative; min-height: 320px; margin-top: 12px; border: 1px solid rgba(255, 255, 255, 0.06); border-radius: 26px; overflow: hidden; background: linear-gradient(180deg, #101827 0%, #0b1220 100%); box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04); } .map-home-realmap, .map-home-leaflet, .map-home-map-overlay { position: absolute; inset: 0; } .map-home-realmap { z-index: 0; } .map-home-map-loading { position: absolute; inset: 0; display: grid; place-items: center; background: linear-gradient(180deg, #c8cfd9 0%, #b7bfca 100%); color: rgba(23, 31, 43, 0.72); font-size: 0.92rem; letter-spacing: 0.02em; } .map-home-leaflet { width: 100%; height: 100%; } .map-home-map::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(255, 255, 255, 0.04), rgba(12, 20, 38, 0.08)), radial-gradient(circle at 50% 52%, rgba(38, 92, 210, 0.08), transparent 24%); pointer-events: none; z-index: 200; } .map-home-map-overlay { z-index: 400; pointer-events: none; } .map-home-map .leaflet-container { background: linear-gradient(180deg, #cfd5de 0%, #bcc4cf 100%); } .map-home-map .leaflet-tile { filter: grayscale(1) saturate(0) brightness(0.95) contrast(1.02); } .map-home-map .leaflet-control-zoom { display: none; } .map-home-map .leaflet-div-icon { background: transparent; border: none; } .map-home-map .leaflet-control-attribution { margin: 0 8px 8px 0; padding: 3px 6px; border-radius: 10px; background: rgba(8, 12, 20, 0.84); color: rgba(255, 255, 255, 0.55); font-size: 0.58rem; } .map-home-map .leaflet-control-attribution a { color: rgba(255, 255, 255, 0.72); } .map-home-crosshair { position: absolute; right: 16px; bottom: 24px; display: inline-grid; place-items: center; width: 36px; height: 36px; border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 50%; background: rgba(8, 12, 22, 0.96); color: white; pointer-events: auto; } .map-home-crosshair svg { width: 16px; height: 16px; } .map-home-area-cta { position: absolute; left: 50%; bottom: 20px; transform: translateX(-50%); display: inline-flex; align-items: center; justify-content: center; min-height: 42px; padding: 0 18px; border-radius: 999px; background: rgba(11, 14, 22, 0.95); color: white; font-size: 0.94rem; border: 1px solid rgba(255, 255, 255, 0.08); white-space: nowrap; pointer-events: auto; } .map-home-popup .leaflet-popup-content-wrapper, .map-home-popup .leaflet-popup-tip { background: rgba(9, 13, 22, 0.96); color: white; box-shadow: 0 18px 32px rgba(0, 0, 0, 0.32); } .map-home-popup .leaflet-popup-content { margin: 0; } .map-home-popup-card { display: grid; gap: 4px; padding: 12px; min-width: 150px; } .map-home-popup-card span { color: rgba(255, 255, 255, 0.56); font-size: 0.78rem; } .map-home-popup-card a { color: #63a5ff; font-size: 0.82rem; font-weight: 700; } .map-home-cluster-icon-shell { background: transparent; border: none; } .map-home-cluster-badge { display: inline-grid; place-items: center; width: 100%; height: 100%; border-radius: 999px; color: white; font-weight: 700; border: 2px solid rgba(255, 255, 255, 0.96); box-shadow: 0 16px 32px rgba(14, 64, 166, 0.28), inset 0 1px 0 rgba(255, 255, 255, 0.22); } .map-home-cluster-badge.is-small { font-size: 0.95rem; background: linear-gradient(180deg, #2f7cff 0%, #1659d8 100%); } .map-home-cluster-badge.is-medium { font-size: 1rem; background: linear-gradient(180deg, #2b73f6 0%, #1049bd 100%); } .map-home-cluster-badge.is-large { font-size: 1.05rem; background: linear-gradient(180deg, #2568e6 0%, #0d3fa7 100%); } .map-home-results { display: grid; gap: 10px; padding-top: 18px; min-width: 0; padding-bottom: 0; } .map-home-results-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; } .map-home-results-title { font-size: 1.5rem; line-height: 1; letter-spacing: -0.03em; } .map-home-view-all { color: #2d80ff; font-weight: 600; font-size: 0.96rem; } .map-home-maker-list { display: grid; gap: 10px; } .map-home-maker-card { position: relative; display: block; border: 1px solid rgba(255, 255, 255, 0.055); border-radius: 20px; background: linear-gradient(180deg, rgba(255, 255, 255, 0.032) 0%, rgba(255, 255, 255, 0.02) 100%); box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.025); min-width: 0; transition: transform 160ms ease, border-color 160ms ease, background 160ms ease, box-shadow 160ms ease; } .map-home-maker-card-main { display: grid; grid-template-columns: 102px 1fr; gap: 10px; padding: 9px; min-width: 0; } .map-home-maker-card-link { cursor: pointer; } .map-home-maker-card:hover { transform: translateY(-1px); border-color: rgba(76, 140, 255, 0.22); background: linear-gradient(180deg, rgba(34, 88, 196, 0.1) 0%, rgba(255, 255, 255, 0.026) 100%); box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.025), 0 14px 28px rgba(8, 17, 36, 0.18); } .map-home-maker-media { position: relative; border-radius: 14px; overflow: hidden; } .map-home-maker-media .thumb { width: 102px; height: 102px; object-fit: cover; } .map-home-distance-pill { position: absolute; left: 6px; top: 6px; display: inline-flex; align-items: center; justify-content: center; min-height: 24px; padding: 0 8px; border-radius: 999px; background: rgba(11, 15, 22, 0.86); color: white; font-size: 0.72rem; } .map-home-maker-body { display: grid; gap: 7px; min-width: 0; padding-right: 32px; } .map-home-maker-topline { display: flex; align-items: start; justify-content: space-between; gap: 8px; } .map-home-maker-brand { display: flex; align-items: flex-start; gap: 9px; min-width: 0; } .map-home-maker-copy { display: grid; gap: 4px; min-width: 0; } .map-home-maker-heading { display: flex; align-items: center; gap: 7px; min-width: 0; } .map-home-maker-badge { display: inline-grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; background: linear-gradient(180deg, #18335d 0%, #0c1426 100%); color: white; font-size: 0.65rem; font-weight: 700; flex: none; margin-top: 2px; } .map-home-maker-brand strong { font-size: 1.05rem; line-height: 1.02; min-width: 0; overflow-wrap: anywhere; } .map-home-maker-subline { color: rgba(255, 255, 255, 0.42); font-size: 0.75rem; line-height: 1; } .map-home-online-dot { width: 8px; height: 8px; border-radius: 50%; background: #39d37a; } .map-home-bookmark { position: absolute; right: 10px; top: 18px; display: inline-grid; place-items: center; width: 28px; height: 28px; padding: 0; border: 0; border-radius: 10px; background: transparent; color: rgba(255, 255, 255, 0.8); flex: none; cursor: pointer; transition: color 160ms ease, transform 160ms ease, background 160ms ease; } .map-home-bookmark svg { width: 18px; height: 18px; } .map-home-bookmark:hover { background: rgba(255, 190, 72, 0.08); color: #ffd36b; transform: translateY(-1px); } .map-home-bookmark.is-active { color: #ffca45; } .map-home-bookmark.is-active svg { fill: currentColor; filter: drop-shadow(0 0 10px rgba(255, 202, 69, 0.36)); } .map-home-bookmark:disabled { cursor: wait; opacity: 0.72; } .map-home-maker-score { display: flex; align-items: center; gap: 5px; color: rgba(255, 255, 255, 0.72); font-size: 0.8rem; flex-wrap: wrap; } .map-home-star { color: #ffbe48; font-size: 1rem; } .map-home-tag-row { display: flex; gap: 8px; flex-wrap: wrap; } .map-home-tag { display: inline-flex; align-items: center; min-height: 26px; padding: 0 9px; border-radius: 9px; background: rgba(255, 255, 255, 0.05); color: #d7e4fb; font-size: 0.75rem; } .home-hero { padding: 0; overflow: hidden; } .home-grid { display: grid; grid-template-columns: minmax(0, 1.2fr) 420px; gap: 20px; padding: 22px; } .home-actions { display: flex; flex-wrap: wrap; gap: 12px; } .home-how-grid, .home-preview-grid { display: grid; gap: 14px; } .home-preview-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } .discover-page { display: grid; gap: 22px; } .discover-grid { display: grid; grid-template-columns: minmax(0, 1.22fr) 360px; gap: 20px; } .discover-primary, .discover-aside { display: grid; gap: 16px; } .discover-aside { align-content: start; } .discover-topbar { display: flex; align-items: center; justify-content: space-between; gap: 12px; } .location-pill, .icon-pill { display: inline-flex; align-items: center; gap: 10px; min-height: 48px; padding: 0 16px; border-radius: 999px; border: 1px solid var(--line); background: rgba(255, 255, 255, 0.035); } .discover-search { display: grid; gap: 12px; } .discover-search-row { display: grid; grid-template-columns: 1fr auto; gap: 12px; } .searchbar { display: flex; align-items: center; gap: 12px; min-height: 58px; padding: 0 18px; border: 1px solid var(--line); border-radius: 18px; background: rgba(255, 255, 255, 0.035); } .searchbar input { width: 100%; border: none; background: transparent; color: white; outline: none; } .searchbar input::placeholder { color: rgba(255, 255, 255, 0.34); } .filter-button { min-width: 56px; } .discover-map { position: relative; min-height: 580px; overflow: hidden; padding: 0; } .map-surface { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(12, 18, 32, 0.15), rgba(7, 11, 21, 0.42)), repeating-linear-gradient( 90deg, rgba(255, 255, 255, 0.03) 0, rgba(255, 255, 255, 0.03) 1px, transparent 1px, transparent 56px ), repeating-linear-gradient( 0deg, rgba(255, 255, 255, 0.03) 0, rgba(255, 255, 255, 0.03) 1px, transparent 1px, transparent 56px ), radial-gradient(circle at 48% 52%, rgba(35, 84, 173, 0.3), transparent 18%), linear-gradient(180deg, #101724 0%, #0c1321 100%); } .map-street { position: absolute; inset: 0; background: linear-gradient(115deg, transparent 20%, rgba(255, 255, 255, 0.04) 20%, rgba(255, 255, 255, 0.04) 21%, transparent 21%), linear-gradient(25deg, transparent 38%, rgba(255, 255, 255, 0.03) 38%, rgba(255, 255, 255, 0.03) 39%, transparent 39%), linear-gradient(0deg, transparent 68%, rgba(255, 255, 255, 0.025) 68%, rgba(255, 255, 255, 0.025) 69%, transparent 69%); opacity: 0.9; } .map-label { position: absolute; color: rgba(255, 255, 255, 0.68); font-size: 0.95rem; letter-spacing: 0.04em; } .cluster-badge, .pin-dot, .pulse-pin { position: absolute; display: grid; place-items: center; transform: translate(-50%, -50%); } .cluster-badge { width: 58px; height: 58px; border-radius: 50%; background: linear-gradient(135deg, #2264ff, #1450cf); color: white; font-weight: 700; box-shadow: 0 18px 30px rgba(20, 80, 207, 0.35); } .pin-dot { width: 18px; height: 18px; border-radius: 50%; background: #2c74ff; border: 3px solid #cfe0ff; box-shadow: 0 0 0 8px rgba(44, 116, 255, 0.12); } .pulse-pin { width: 94px; height: 94px; border-radius: 50%; background: radial-gradient(circle, rgba(55, 116, 255, 0.24) 0%, rgba(55, 116, 255, 0.08) 42%, transparent 72%); } .map-search-zone { position: absolute; left: 50%; bottom: 28px; transform: translateX(-50%); display: inline-flex; align-items: center; gap: 10px; min-height: 52px; padding: 0 18px; border-radius: 999px; border: 1px solid rgba(255, 255, 255, 0.08); background: rgba(9, 12, 19, 0.92); color: white; } .floating-toolset { position: absolute; right: 18px; bottom: 78px; display: grid; gap: 12px; } .tool-fab { width: 52px; height: 52px; border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 18px; background: rgba(10, 14, 25, 0.88); color: white; font-size: 0.74rem; font-weight: 700; } .tool-fab.primary { width: 76px; height: 76px; border-radius: 28px; background: linear-gradient(180deg, #1a6cff 0%, #123b96 100%); } .zone-sheet { display: grid; gap: 16px; } .maker-rail { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(220px, 1fr); gap: 14px; overflow-x: auto; padding-bottom: 4px; } .maker-rail-card { border: 1px solid var(--line); border-radius: 22px; overflow: hidden; background: rgba(255, 255, 255, 0.03); } .rail-media { position: relative; aspect-ratio: 1 / 1; } .rail-badge { position: absolute; left: 12px; bottom: 12px; display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; border-radius: 999px; background: rgba(7, 10, 18, 0.88); border: 1px solid rgba(255, 255, 255, 0.1); font-weight: 700; } .rail-meta { padding: 14px; display: grid; gap: 10px; } .stat-row { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; } .stat-tile, .metric-card, .ops-stat { padding: 16px; border-radius: 18px; border: 1px solid var(--line); background: rgba(255, 255, 255, 0.03); } .stat-value { display: block; font-size: 1.28rem; font-weight: 700; color: white; } .selected-card { overflow: hidden; padding: 0; position: sticky; top: 92px; } .selected-media { position: relative; aspect-ratio: 1 / 1; } .selected-actions { position: absolute; inset-inline: 14px; top: 14px; display: flex; justify-content: space-between; } .circle-button { min-width: 72px; height: 42px; border-radius: 999px; border: 1px solid rgba(255, 255, 255, 0.12); background: rgba(10, 14, 22, 0.88); color: white; font-size: 0.74rem; } .selected-body { display: grid; gap: 14px; padding: 18px; } .status-dot { display: inline-block; width: 10px; height: 10px; border-radius: 999px; background: var(--green); } .results-list { display: grid; gap: 12px; } .result-item { display: grid; grid-template-columns: 82px 1fr auto; gap: 12px; padding: 12px; border-radius: 20px; border: 1px solid var(--line); background: rgba(255, 255, 255, 0.03); } .result-item img { width: 82px; height: 82px; border-radius: 18px; object-fit: cover; } .mini-note { font-size: 0.84rem; color: var(--muted); } .profile-page, .work-page, .service-page { display: grid; gap: 18px; } .hero-media-card { overflow: hidden; padding: 0; } .hero-media-card .thumb, .gallery-main { aspect-ratio: 4 / 3; border-radius: 0; } .info-banner { display: grid; gap: 16px; padding: 18px; border-top: 1px solid var(--line); } .profile-content, .work-content, .service-content { display: grid; gap: 18px; } .tabs-strip { display: flex; flex-wrap: wrap; gap: 10px; } .tab-pill { display: inline-flex; align-items: center; gap: 8px; min-height: 40px; padding: 0 14px; border-radius: 999px; border: 1px solid var(--line); background: rgba(255, 255, 255, 0.03); color: var(--muted); } .tab-pill.active { color: white; background: rgba(25, 108, 255, 0.15); } .grid-cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; } .visual-card { overflow: hidden; border: 1px solid var(--line); border-radius: 20px; background: rgba(255, 255, 255, 0.03); } .visual-card .thumb { aspect-ratio: 1 / 1; } .visual-body { display: grid; gap: 10px; padding: 14px; } .review-card { display: grid; gap: 12px; } .rating-strip { display: flex; align-items: center; gap: 10px; color: #ffd46b; font-weight: 700; } .contact-card { position: sticky; top: 92px; } .guide-steps { display: grid; gap: 12px; } .guide-step { display: grid; grid-template-columns: 34px 1fr; gap: 12px; padding: 12px; border-radius: 16px; background: rgba(255, 255, 255, 0.025); border: 1px solid var(--line); } .step-index { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 12px; background: rgba(25, 108, 255, 0.18); color: white; font-weight: 700; } .inquiry-card { display: grid; gap: 16px; } .inquiry-section { display: grid; gap: 10px; } .input-grid-compact { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; } .choice-chip { display: flex; align-items: center; gap: 10px; padding: 14px; border: 1px solid var(--line); border-radius: 16px; background: rgba(255, 255, 255, 0.03); } .gallery-grid { display: grid; grid-template-columns: minmax(0, 1fr) 132px; gap: 14px; } .gallery-side { display: grid; gap: 12px; } .gallery-thumb { aspect-ratio: 1 / 1; border-radius: 18px; overflow: hidden; border: 1px solid var(--line); } .before-after { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; } .before-after-card { overflow: hidden; border: 1px solid var(--line); border-radius: 20px; background: rgba(255, 255, 255, 0.03); } .before-after-card .thumb { aspect-ratio: 4 / 3; } .meta-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; } .workspace-page { max-width: 1420px; } .workspace-theme { display: grid; grid-template-columns: 280px 1fr; gap: 20px; } .workspace-mobile-bar, .workspace-menu-close, .workspace-menu-backdrop { display: none; } .workspace-sidebar, .workspace-main-card { border-radius: 28px; background: #f7f9fd; color: var(--light-text); box-shadow: 0 28px 70px rgba(0, 0, 0, 0.18); } .workspace-sidebar { padding: 20px; border: 1px solid rgba(255, 255, 255, 0.075); background: radial-gradient(circle at 18% 0%, rgba(31, 111, 255, 0.2), transparent 38%), radial-gradient(circle at 90% 22%, rgba(42, 195, 255, 0.08), transparent 32%), linear-gradient(180deg, #081326 0%, #030814 100%); color: white; box-shadow: 0 28px 80px rgba(0, 0, 0, 0.34), inset 0 1px 0 rgba(255, 255, 255, 0.04); } .workspace-main-card { padding: 22px; border: 1px solid rgba(15, 23, 40, 0.08); } .workspace-main-card.workspace-section-summary, .workspace-main-card.workspace-section-inbox, .workspace-main-card.workspace-section-works, .workspace-main-card.workspace-section-services, .workspace-main-card.workspace-section-showcases, .workspace-main-card.workspace-section-locations, .workspace-main-card.workspace-section-profile, .workspace-main-card.workspace-section-reviews, .workspace-main-card.workspace-section-subscription, .workspace-main-card.workspace-section-settings { border-color: rgba(255, 255, 255, 0.075); background: radial-gradient(circle at 18% 0%, rgba(31, 111, 255, 0.22), transparent 34%), radial-gradient(circle at 80% 12%, rgba(42, 195, 255, 0.08), transparent 30%), linear-gradient(180deg, #071225 0%, #030814 100%); color: white; box-shadow: 0 28px 80px rgba(0, 0, 0, 0.32), inset 0 1px 0 rgba(255, 255, 255, 0.04); } .workspace-section-summary .workspace-header, .workspace-section-inbox .workspace-header, .workspace-section-works .workspace-header, .workspace-section-services .workspace-header, .workspace-section-showcases .workspace-header, .workspace-section-locations .workspace-header, .workspace-section-profile .workspace-header, .workspace-section-reviews .workspace-header, .workspace-section-subscription .workspace-header, .workspace-section-settings .workspace-header { padding: 14px; border: 1px solid rgba(255, 255, 255, 0.07); border-radius: 24px; background: rgba(255, 255, 255, 0.035); } .workspace-section-summary .section-title, .workspace-section-inbox .section-title, .workspace-section-works .section-title, .workspace-section-services .section-title, .workspace-section-showcases .section-title, .workspace-section-locations .section-title, .workspace-section-profile .section-title, .workspace-section-reviews .section-title, .workspace-section-subscription .section-title, .workspace-section-settings .section-title { color: white; } .workspace-section-summary .muted, .workspace-section-inbox .muted, .workspace-section-works .muted, .workspace-section-services .muted, .workspace-section-showcases .muted, .workspace-section-locations .muted, .workspace-section-profile .muted, .workspace-section-reviews .muted, .workspace-section-subscription .muted, .workspace-section-settings .muted { color: rgba(235, 241, 255, 0.66); } .workspace-header { display: flex; align-items: start; justify-content: space-between; gap: 14px; } .workspace-header-actions { display: flex; align-items: center; justify-content: flex-end; gap: 10px; flex-wrap: wrap; } .workspace-brand { padding: 16px; border-radius: 20px; background: linear-gradient(180deg, #0d1730 0%, #0d1220 100%); color: white; } .workspace-usercard { padding: 16px; border-radius: 20px; background: radial-gradient(circle at 20% 0%, rgba(25, 108, 255, 0.14), transparent 45%), rgba(255, 255, 255, 0.045); border: 1px solid rgba(255, 255, 255, 0.08); color: white; } .workspace-account-status { display: grid; grid-template-columns: 12px minmax(0, 1fr); gap: 10px; align-items: center; padding: 10px 12px; border: 1px solid rgba(55, 214, 122, 0.16); border-radius: 15px; background: radial-gradient(circle at 0% 50%, rgba(55, 214, 122, 0.12), transparent 44%), rgba(255, 255, 255, 0.035); } .workspace-status-dot { width: 10px; height: 10px; border-radius: 50%; background: #37d67a; box-shadow: 0 0 0 4px rgba(55, 214, 122, 0.12), 0 0 18px rgba(55, 214, 122, 0.5); } .workspace-account-status div { display: grid; gap: 2px; min-width: 0; } .workspace-account-status strong { color: rgba(235, 255, 244, 0.95); font-size: 0.86rem; } .workspace-account-status span:not(.workspace-status-dot) { color: rgba(235, 241, 255, 0.58); font-size: 0.76rem; } .maker-dashboard { display: grid; grid-template-columns: minmax(0, 1fr) 280px; gap: 14px; align-items: start; } .maker-dashboard-main, .maker-dashboard-side, .maker-dashboard-two, .maker-attention-grid, .maker-week-grid, .maker-performance-grid, .maker-top-work-list, .maker-recommend-list, .maker-checklist-mini { display: grid; gap: 10px; } .maker-dashboard-side { position: sticky; top: 92px; } .maker-dashboard-greeting, .maker-dash-panel { border: 1px solid rgba(255, 255, 255, 0.075); border-radius: 24px; background: radial-gradient(circle at 18% 0%, rgba(31, 111, 255, 0.16), transparent 34%), linear-gradient(180deg, rgba(10, 18, 32, 0.96), rgba(5, 10, 19, 0.96)); color: white; box-shadow: 0 18px 42px rgba(0, 0, 0, 0.2); } .maker-dashboard-greeting { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 16px; } .maker-dashboard-greeting h3, .maker-dashboard-greeting p, .maker-dash-panel h3, .maker-dash-panel p { margin: 0; } .maker-dashboard-greeting h3 { font-size: clamp(1.25rem, 2vw, 1.85rem); } .maker-dashboard-greeting p, .maker-dash-panel p, .maker-dash-panel small, .maker-dash-panel span, .maker-top-work-list span, .maker-week-grid small, .maker-performance-grid small { color: rgba(235, 241, 255, 0.64); } .maker-dashboard-actions { display: flex; flex-wrap: wrap; gap: 8px; justify-content: flex-end; } .maker-dash-panel { padding: 14px; } .maker-dash-panel > .split a, .maker-dash-panel > a, .maker-opportunity a { color: #5f9dff; font-weight: 900; text-decoration: none; } .maker-attention-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } .maker-attention-grid a, .maker-week-grid div, .maker-performance-grid div, .maker-top-work-list a, .maker-recommend-list a, .maker-checklist-mini div { border: 1px solid rgba(255, 255, 255, 0.075); border-radius: 18px; background: rgba(255, 255, 255, 0.045); color: white; text-decoration: none; } .maker-attention-grid a { display: grid; gap: 5px; min-height: 116px; padding: 13px; } .maker-attention-grid span { display: inline-grid; place-items: center; width: 34px; height: 34px; border-radius: 12px; background: linear-gradient(135deg, rgba(45, 128, 255, 0.95), rgba(12, 87, 216, 0.95)); color: white; font-weight: 950; } .maker-attention-grid b { color: #7fb0ff; font-size: 0.78rem; } .maker-week-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); } .maker-week-grid div, .maker-performance-grid div { display: grid; gap: 4px; min-height: 86px; padding: 12px; } .maker-week-grid strong, .maker-performance-grid strong, .maker-plan-value { color: white; font-size: 1.45rem; } .maker-week-grid small, .maker-performance-grid small { color: #55df91; font-size: 0.72rem; } .maker-dashboard-two { grid-template-columns: 1fr 1fr; } .maker-performance-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .maker-top-work-list a { display: grid; grid-template-columns: 54px minmax(0, 1fr) auto; gap: 9px; align-items: center; padding: 8px; } .maker-top-work-list img { width: 54px; height: 54px; border-radius: 13px; object-fit: cover; background: rgba(255, 255, 255, 0.05); } .maker-top-work-list strong, .maker-top-work-list span { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .maker-top-work-list b { padding: 4px 7px; border-radius: 999px; background: rgba(55, 214, 122, 0.12); color: #8cf1b1; font-size: 0.68rem; } .maker-opportunity { grid-template-columns: minmax(0, 1fr) 136px; align-items: center; } .maker-mini-map { position: relative; min-height: 118px; overflow: hidden; border: 1px solid rgba(45, 128, 255, 0.16); border-radius: 20px; background: linear-gradient(rgba(255, 255, 255, 0.045) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, 0.045) 1px, transparent 1px), radial-gradient(circle at 50% 50%, rgba(45, 128, 255, 0.18), transparent 44%), rgba(255, 255, 255, 0.04); background-size: 24px 24px, 24px 24px, auto, auto; } .maker-mini-map i { position: absolute; width: 12px; height: 12px; border-radius: 50%; background: #2d80ff; box-shadow: 0 0 0 7px rgba(45, 128, 255, 0.16); } .maker-mini-map i:nth-child(1) { left: 34%; top: 36%; } .maker-mini-map i:nth-child(2) { left: 58%; top: 52%; } .maker-mini-map i:nth-child(3) { left: 46%; top: 68%; } .maker-recommend-list a { padding: 11px 12px; color: rgba(235, 241, 255, 0.84); font-weight: 850; } .maker-status-line { display: flex; align-items: center; gap: 9px; color: white; font-weight: 900; } .maker-reputation-card { justify-items: start; } .maker-reputation-card > strong { color: white; font-size: 2rem; } .maker-reputation-card > span { color: #ffbc42; letter-spacing: 0.08em; } .maker-satisfaction-ring { display: grid; place-items: center; width: 86px; height: 86px; border: 8px solid #37d67a; border-left-color: rgba(55, 214, 122, 0.18); border-radius: 50%; color: white; font-weight: 950; } .maker-checklist-mini div { display: grid; grid-template-columns: 22px minmax(0, 1fr) auto; gap: 8px; align-items: center; padding: 9px; } .maker-checklist-mini div > span { display: inline-grid; place-items: center; width: 20px; height: 20px; border: 1px solid rgba(255, 255, 255, 0.14); border-radius: 50%; color: transparent; } .maker-checklist-mini div > span.is-done { border-color: rgba(55, 214, 122, 0.35); background: rgba(55, 214, 122, 0.18); color: #9bf0ba; font-size: 0.6rem; } .maker-checklist-mini strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .maker-inbox-grid { display: grid; grid-template-columns: minmax(280px, 0.85fr) minmax(0, 1.15fr); gap: 14px; } .workspace-loading-state { display: grid; justify-items: center; gap: 14px; min-height: 260px; align-content: center; text-align: center; } .workspace-section-inbox .timeline-item, .workspace-section-inbox .checklist-item { border-color: rgba(255, 255, 255, 0.075); background: rgba(255, 255, 255, 0.045); color: white; text-decoration: none; } .workspace-section-inbox .timeline-item strong, .workspace-section-inbox .checklist-item strong { color: white; } .workspace-section-inbox .message-thread { padding: 12px; border: 1px solid rgba(255, 255, 255, 0.075); border-radius: 20px; background: rgba(255, 255, 255, 0.035); } .workspace-section-inbox .message-bubble { background: rgba(255, 255, 255, 0.075); color: rgba(235, 241, 255, 0.88); } .workspace-section-inbox .message-bubble strong { color: white; } .workspace-section-inbox .textarea { border-color: rgba(255, 255, 255, 0.1); background: rgba(255, 255, 255, 0.055); color: white; } .workspace-nav { display: grid; gap: 8px; } .workspace-nav button, .workspace-link { display: flex; align-items: center; justify-content: space-between; min-height: 48px; padding: 0 14px; border: 1px solid transparent; border-radius: 16px; background: transparent; color: rgba(235, 241, 255, 0.62); cursor: pointer; } .workspace-nav button.active, .workspace-link.active { color: white; background: rgba(25, 108, 255, 0.18); border-color: rgba(64, 133, 255, 0.26); box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04); } .workspace-nav-label { color: rgba(160, 215, 255, 0.76); font-size: 0.74rem; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; } .light-grid, .kpi-grid { display: grid; gap: 14px; } .kpi-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); } .metric-card, .light-card { border-radius: 20px; border: 1px solid var(--light-line); background: white; color: var(--light-text); } .metric-card, .light-card { padding: 18px; } .metric-card .muted, .light-card .muted, .workspace-theme .muted { color: var(--light-muted); } .workspace-theme .field, .workspace-theme .textarea, .workspace-theme .select { border-color: var(--light-line); background: var(--surface-light-soft); color: var(--light-text); } .workspace-theme .field::placeholder, .workspace-theme .textarea::placeholder { color: #8b98ad; } .workspace-theme .button-secondary, .workspace-theme .button, .workspace-theme .button-ghost { color: var(--light-text); border-color: var(--light-line); background: white; } .workspace-theme .button-primary { color: white; border-color: transparent; background: linear-gradient(135deg, #196cff 0%, #0e5ddd 100%); } .workspace-theme .light-chip, .workspace-theme .status-pill, .workspace-theme .badge { color: #b8d5ff; border-color: rgba(64, 133, 255, 0.2); background: rgba(25, 108, 255, 0.12); } .workspace-sidebar .muted, .workspace-sidebar .mini-note { color: rgba(235, 241, 255, 0.58); } .workspace-sidebar .button-secondary, .workspace-sidebar .button-ghost, .workspace-sidebar .button { color: rgba(235, 241, 255, 0.84); border-color: rgba(255, 255, 255, 0.09); background: rgba(255, 255, 255, 0.045); } .workspace-sidebar .button-primary { color: white; border-color: transparent; background: linear-gradient(135deg, #2384ff 0%, #0c5bef 100%); box-shadow: 0 16px 36px rgba(12, 91, 239, 0.28); } .workspace-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; } .profile-workspace { display: grid; grid-template-columns: minmax(0, 1fr); gap: 14px; } .profile-config-card { padding: 16px; border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 24px; background: radial-gradient(circle at 12% 0%, rgba(45, 128, 255, 0.13), transparent 36%), linear-gradient(180deg, rgba(10, 18, 32, 0.98), rgba(5, 10, 19, 0.98)); color: white; box-shadow: 0 20px 46px rgba(0, 0, 0, 0.2); } .workspace-section-profile .field, .workspace-section-profile .textarea, .workspace-section-profile .select { border-color: rgba(255, 255, 255, 0.1); background: rgba(255, 255, 255, 0.055); color: rgba(246, 249, 255, 0.94); } .workspace-section-profile .field::placeholder, .workspace-section-profile .textarea::placeholder { color: rgba(235, 241, 255, 0.48); } .workspace-section-profile .textarea { min-height: 132px; } .profile-save-row { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; } .profile-save-row .button { width: 100%; min-width: 0; } .profile-muted-note { max-width: 100%; overflow-wrap: anywhere; } .profile-logo-editor { display: grid; grid-template-columns: 96px minmax(0, 1fr); gap: 12px; align-items: center; padding: 12px; border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 20px; background: rgba(255, 255, 255, 0.035); } .profile-logo-editor img { width: 96px; height: 96px; border-radius: 24px; object-fit: cover; background: radial-gradient(circle at 50% 20%, rgba(45, 128, 255, 0.22), rgba(4, 10, 22, 0.96)); } .profile-logo-editor div { display: grid; gap: 7px; min-width: 0; } .profile-logo-editor strong { color: white; } .profile-logo-editor span, .profile-social-grid label span { color: rgba(235, 241, 255, 0.64); font-size: 0.82rem; line-height: 1.35; } .profile-upload-button { position: relative; width: fit-content; min-width: 0 !important; overflow: hidden; } .profile-upload-button input { position: absolute; inset: 0; opacity: 0; cursor: pointer; } .profile-social-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; } .profile-social-grid label { display: grid; gap: 6px; min-width: 0; } .reviews-workspace { display: grid; grid-template-columns: minmax(0, 1.55fr) minmax(260px, 0.85fr); gap: 14px; align-items: start; } .reviews-main-column, .reviews-side-column, .reviews-list, .reviews-status-list, .reviews-badge-list, .reviews-toggle-list { display: grid; gap: 10px; } .reviews-hero-card, .reviews-panel, .reviews-kpi-grid article, .reviews-item { border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 24px; background: radial-gradient(circle at 12% 0%, rgba(27, 106, 255, 0.15), transparent 34%), linear-gradient(180deg, rgba(10, 18, 32, 0.98), rgba(5, 10, 19, 0.98)); color: white; box-shadow: 0 20px 46px rgba(0, 0, 0, 0.2); } .reviews-hero-card { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 14px; align-items: center; padding: 16px; } .reviews-hero-card p, .reviews-panel p, .reviews-item p { margin: 0; color: rgba(235, 241, 255, 0.68); line-height: 1.42; } .reviews-score-block { display: grid; justify-items: end; gap: 4px; min-width: 116px; } .reviews-score-block strong { color: white; font-size: 2.6rem; line-height: 0.9; letter-spacing: -0.06em; } .reviews-stars { color: #ffbf47; letter-spacing: 0.04em; } .reviews-score-block small, .reviews-breakdown small, .reviews-status-list span, .reviews-badge-list span, .reviews-badge-list small { color: rgba(235, 241, 255, 0.6); font-size: 0.76rem; line-height: 1.35; } .reviews-kpi-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; } .reviews-kpi-grid article { display: grid; gap: 4px; padding: 13px; border-radius: 18px; box-shadow: none; } .reviews-kpi-grid strong { color: white; font-size: 1.55rem; } .reviews-kpi-grid span { color: rgba(235, 241, 255, 0.62); font-size: 0.78rem; } .reviews-panel { display: grid; gap: 12px; padding: 14px; box-shadow: none; } .reviews-breakdown { display: grid; gap: 8px; } .reviews-breakdown div { display: grid; grid-template-columns: 82px minmax(0, 1fr) 24px; gap: 9px; align-items: center; } .reviews-breakdown span, .reviews-aspect-grid span, .reviews-filter-pills span, .reviews-item-tags span, .reviews-toggle-list label { color: rgba(235, 241, 255, 0.68); font-size: 0.76rem; } .reviews-breakdown b { display: block; height: 8px; overflow: hidden; border-radius: 999px; background: rgba(255, 255, 255, 0.08); } .reviews-breakdown i { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, #2279ff, #74d4ff); } .reviews-aspect-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; } .reviews-aspect-grid article { display: grid; gap: 4px; padding: 10px; border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 14px; background: rgba(255, 255, 255, 0.04); } .reviews-aspect-grid strong { color: white; } .reviews-filter-pills { display: flex; flex-wrap: wrap; gap: 6px; justify-content: flex-end; } .reviews-filter-pills span, .reviews-item-tags span { display: inline-flex; align-items: center; min-height: 28px; padding: 0 9px; border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 999px; background: rgba(255, 255, 255, 0.045); } .reviews-item { display: grid; gap: 10px; padding: 12px; border-radius: 18px; background: radial-gradient(circle at 0% 0%, rgba(45, 128, 255, 0.1), transparent 38%), rgba(255, 255, 255, 0.035); box-shadow: none; } .reviews-item.is-reported { border-color: rgba(255, 184, 77, 0.26); background: radial-gradient(circle at 0% 0%, rgba(255, 184, 77, 0.12), transparent 38%), rgba(255, 255, 255, 0.035); } .reviews-item-head { display: flex; justify-content: space-between; gap: 10px; } .reviews-item-head div { display: grid; gap: 2px; } .reviews-item-head strong { color: white; } .reviews-item-head span { color: #74d4ff; font-size: 0.78rem; } .reviews-item-head small { color: rgba(235, 241, 255, 0.48); white-space: nowrap; } .reviews-item-tags { display: flex; flex-wrap: wrap; gap: 6px; } .reviews-status-list div, .reviews-badge-list div { display: grid; gap: 3px; padding: 10px; border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 14px; background: rgba(255, 255, 255, 0.04); } .reviews-status-list strong, .reviews-badge-list strong { color: white; font-size: 0.9rem; } .reviews-badge-list small { display: inline-flex; width: fit-content; margin-top: 4px; padding: 4px 8px; border: 1px solid rgba(45, 128, 255, 0.18); border-radius: 999px; background: rgba(45, 128, 255, 0.1); color: #8fc2ff; font-weight: 800; } .reviews-toggle-list label { display: flex; align-items: flex-start; gap: 8px; padding: 9px 0; border-bottom: 1px solid rgba(255, 255, 255, 0.06); } .reviews-toggle-list label:last-child { border-bottom: 0; } .reviews-toggle-list input { accent-color: #2279ff; margin-top: 2px; } .subscription-workspace { display: grid; grid-template-columns: minmax(0, 1.42fr) minmax(280px, 0.78fr); gap: 14px; align-items: start; } .subscription-main-column, .subscription-side-column, .subscription-benefit-list, .subscription-addon-list, .subscription-warning-list { display: grid; gap: 10px; } .subscription-hero-card, .subscription-panel { border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 24px; background: radial-gradient(circle at 12% 0%, rgba(27, 106, 255, 0.15), transparent 34%), linear-gradient(180deg, rgba(10, 18, 32, 0.98), rgba(5, 10, 19, 0.98)); color: white; box-shadow: 0 20px 46px rgba(0, 0, 0, 0.2); } .subscription-hero-card { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 14px; align-items: center; padding: 16px; } .subscription-hero-card p, .subscription-panel p { margin: 0; color: rgba(235, 241, 255, 0.68); line-height: 1.42; } .subscription-panel { display: grid; gap: 12px; padding: 14px; } .subscription-readiness { display: grid; justify-items: center; gap: 8px; } .subscription-ring { --progress: 0%; display: grid; align-content: center; justify-items: center; gap: 3px; width: 96px; height: 96px; border-radius: 50%; background: radial-gradient(circle at center, #071225 0 57%, transparent 59%), conic-gradient(#2384ff var(--progress), rgba(255, 255, 255, 0.08) 0); box-shadow: 0 0 0 1px rgba(64, 133, 255, 0.18), 0 18px 44px rgba(20, 105, 255, 0.22); } .subscription-ring strong { color: white; font-size: 1.28rem; line-height: 0.9; letter-spacing: -0.06em; } .subscription-ring span { color: rgba(235, 241, 255, 0.58); font-size: 0.62rem; font-weight: 800; letter-spacing: 0.08em; text-transform: uppercase; } .subscription-check-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; } .subscription-check-item { display: grid; grid-template-columns: 34px minmax(0, 1fr); gap: 10px; align-items: start; min-height: 78px; padding: 11px; border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 16px; background: rgba(255, 255, 255, 0.04); color: white; } .subscription-check-item > span { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 12px; background: rgba(255, 184, 77, 0.14); color: #ffbf47; font-weight: 950; } .subscription-check-item.is-done > span { background: rgba(55, 214, 122, 0.14); color: #89f0b8; } .subscription-check-item div { display: grid; gap: 3px; min-width: 0; } .subscription-check-item strong, .subscription-plan-card strong, .subscription-preview-card strong, .subscription-payment-card strong, .subscription-addon-list strong, .subscription-support-grid strong, .subscription-status-demo strong, .subscription-founder-card strong { color: white; } .subscription-check-item small, .subscription-preview-card span, .subscription-preview-card small, .subscription-plan-card span, .subscription-payment-card span, .subscription-addon-list span, .subscription-support-grid span, .subscription-status-demo span, .subscription-founder-card span, .subscription-founder-card small, .subscription-warning-list span { color: rgba(235, 241, 255, 0.62); font-size: 0.78rem; line-height: 1.35; } .subscription-action-row { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; } .subscription-preview-card { display: grid; grid-template-columns: 120px minmax(0, 1fr); gap: 12px; align-items: center; padding: 12px; border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 18px; background: rgba(255, 255, 255, 0.04); } .subscription-preview-card img { width: 120px; height: 92px; border-radius: 16px; object-fit: cover; background: #081326; } .subscription-preview-card div, .subscription-plan-card div, .subscription-payment-card div { display: grid; gap: 5px; min-width: 0; } .subscription-plan-card, .subscription-payment-card, .subscription-founder-card { display: grid; gap: 12px; padding: 12px; border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 18px; background: rgba(255, 255, 255, 0.04); } .subscription-plan-card { grid-template-columns: minmax(0, 1fr) auto; align-items: center; } .subscription-plan-card strong { font-size: 1.6rem; line-height: 1; } .subscription-cycle-toggle, .subscription-scenario-tabs { display: flex; gap: 7px; flex-wrap: wrap; } .subscription-cycle-toggle button, .subscription-scenario-tabs button { min-height: 36px; padding: 0 10px; border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 999px; background: rgba(255, 255, 255, 0.045); color: rgba(235, 241, 255, 0.72); font-weight: 850; } .subscription-cycle-toggle button.is-active, .subscription-scenario-tabs button.is-active { border-color: rgba(64, 133, 255, 0.46); background: linear-gradient(135deg, rgba(35, 132, 255, 0.98), rgba(12, 91, 239, 0.98)); color: white; } .subscription-benefit-list { grid-template-columns: repeat(2, minmax(0, 1fr)); } .subscription-benefit-list span, .subscription-warning-list span { padding: 9px 10px; border: 1px solid rgba(255, 255, 255, 0.075); border-radius: 13px; background: rgba(255, 255, 255, 0.04); } .subscription-benefit-list span { color: #a9f2c7; font-size: 0.78rem; font-weight: 800; } .subscription-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; } .subscription-form-grid label { display: grid; gap: 6px; } .subscription-form-grid label span { color: rgba(235, 241, 255, 0.74); font-size: 0.76rem; font-weight: 800; } .workspace-section-subscription .field, .workspace-section-subscription .select { border-color: rgba(255, 255, 255, 0.1); background: rgba(255, 255, 255, 0.055); color: rgba(246, 249, 255, 0.94); } .subscription-payment-card { grid-template-columns: minmax(0, 1fr) auto; align-items: center; } .subscription-readonly-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; } .subscription-readonly-grid div { display: grid; gap: 4px; min-width: 0; padding: 11px; border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 15px; background: rgba(255, 255, 255, 0.04); } .subscription-readonly-grid span { color: rgba(235, 241, 255, 0.56); font-size: 0.72rem; font-weight: 800; } .subscription-readonly-grid strong { overflow: hidden; color: white; font-size: 0.9rem; text-overflow: ellipsis; white-space: nowrap; } .subscription-billing-modal { max-width: 560px; } .subscription-billing-wizard { max-width: 100%; } .subscription-wide-field { grid-column: 1 / -1; } .subscription-validation-note, .subscription-validation-card { display: grid; gap: 9px; padding: 12px; border: 1px solid rgba(64, 133, 255, 0.18); border-radius: 18px; background: radial-gradient(circle at 0% 0%, rgba(45, 128, 255, 0.14), transparent 42%), rgba(255, 255, 255, 0.04); } .subscription-validation-note strong, .subscription-validation-card strong { color: white; } .subscription-validation-note span, .subscription-validation-card span { color: rgba(235, 241, 255, 0.64); font-size: 0.82rem; line-height: 1.4; } .subscription-validation-card label { display: flex; gap: 9px; align-items: flex-start; color: rgba(235, 241, 255, 0.76); font-size: 0.8rem; line-height: 1.35; } .subscription-validation-card input[type="checkbox"] { accent-color: #2279ff; margin-top: 2px; } .subscription-billing-list { display: grid; gap: 7px; } .subscription-billing-list div { display: grid; grid-template-columns: 92px minmax(0, 1fr) 78px 70px; gap: 8px; align-items: center; padding: 10px; border: 1px solid rgba(255, 255, 255, 0.075); border-radius: 14px; background: rgba(255, 255, 255, 0.035); } .subscription-billing-list span, .subscription-billing-list small { color: rgba(235, 241, 255, 0.6); font-size: 0.76rem; } .subscription-billing-list strong { color: white; font-size: 0.86rem; } .subscription-billing-list em { justify-self: end; font-style: normal; font-size: 0.72rem; font-weight: 900; } .subscription-billing-list .is-paid { color: #89f0b8; } .subscription-billing-list .is-failed { color: #ff8b8b; } .subscription-state-panel { position: sticky; top: 12px; } .subscription-status-demo { display: grid; gap: 4px; min-height: 94px; padding: 13px; border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 18px; background: rgba(255, 255, 255, 0.04); } .subscription-status-demo.is-active { border-color: rgba(55, 214, 122, 0.18); background: rgba(55, 214, 122, 0.08); } .subscription-status-demo.is-grace, .subscription-status-demo.is-suspending { border-color: rgba(255, 184, 77, 0.22); background: rgba(255, 184, 77, 0.08); } .subscription-status-demo.is-inactive { border-color: rgba(255, 95, 95, 0.18); background: rgba(255, 95, 95, 0.07); } .subscription-founder-card { background: radial-gradient(circle at 20% 0%, rgba(255, 184, 77, 0.18), transparent 42%), linear-gradient(180deg, rgba(16, 20, 34, 0.98), rgba(6, 10, 19, 0.98)); } .subscription-addon-list div { display: grid; gap: 6px; padding: 11px; border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 16px; background: rgba(255, 255, 255, 0.04); } .subscription-addon-list .button { min-height: 34px; width: fit-content; padding: 0 12px; font-size: 0.78rem; } .subscription-support-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; } .subscription-support-grid button { display: grid; gap: 5px; min-height: 96px; padding: 11px; border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 16px; background: rgba(255, 255, 255, 0.04); color: white; text-align: left; } .account-settings-workspace { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; align-items: start; } .account-settings-card { display: grid; gap: 12px; min-width: 0; padding: 14px; border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 24px; background: radial-gradient(circle at 12% 0%, rgba(27, 106, 255, 0.15), transparent 34%), linear-gradient(180deg, rgba(10, 18, 32, 0.98), rgba(5, 10, 19, 0.98)); color: white; box-shadow: 0 20px 46px rgba(0, 0, 0, 0.2); } .account-settings-summary, .account-diagnostic-card { grid-column: span 2; } .account-identity-row, .account-maker-mini, .account-avatar-editor, .account-client-preview { display: grid; grid-template-columns: 58px minmax(0, 1fr) auto; gap: 12px; align-items: center; } .account-identity-row img, .account-avatar-editor img, .account-client-preview img { width: 58px; height: 58px; border: 1px solid rgba(64, 133, 255, 0.24); border-radius: 18px; object-fit: cover; background: #081326; } .account-identity-row p, .account-settings-card p, .account-maker-mini span, .account-avatar-editor span, .account-client-preview span, .account-client-preview small, .account-quick-list span, .account-security-list span, .account-security-list small, .account-linked-list span, .account-saved-locations span, .account-alert-list span, .account-alert-list small, .account-session-list span, .account-session-list small, .account-blocked-list span, .account-privacy-list span { margin: 0; color: rgba(235, 241, 255, 0.62); font-size: 0.78rem; line-height: 1.35; } .account-activity-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 8px; } .account-activity-grid div, .account-notification-summary div, .account-state-card div, .account-diagnostic-list div { display: grid; gap: 3px; padding: 10px; border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 14px; background: rgba(255, 255, 255, 0.04); } .account-activity-grid strong { color: white; font-size: 1.2rem; line-height: 1; } .account-activity-grid span, .account-notification-summary span, .account-state-card span, .account-diagnostic-list span { color: rgba(235, 241, 255, 0.62); font-size: 0.72rem; } .account-quick-list, .account-security-list, .account-linked-list, .account-saved-locations, .account-alert-list, .account-session-list, .account-blocked-list, .account-privacy-list, .account-toggle-list, .account-settings-form, .account-notification-summary, .account-channel-grid, .account-theme-grid, .account-improvement-list { display: grid; gap: 8px; } .account-quick-list { grid-template-columns: repeat(2, minmax(0, 1fr)); } .account-quick-list button, .account-privacy-list button, .account-channel-grid button, .account-theme-grid button, .account-security-list div, .account-linked-list div, .account-saved-locations div, .account-alert-list div, .account-session-list div, .account-blocked-list div, .account-delete-box { display: grid; gap: 5px; min-width: 0; padding: 11px; border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 16px; background: rgba(255, 255, 255, 0.04); color: white; text-align: left; } .account-security-list div, .account-linked-list div, .account-blocked-list div { grid-template-columns: minmax(0, 1fr) auto; align-items: center; } .account-security-list div > span, .account-linked-list div > div, .account-blocked-list div > div { min-width: 0; } .account-security-list button, .account-linked-list button, .account-blocked-list button { min-height: 32px; padding: 0 10px; border: 1px solid rgba(64, 133, 255, 0.22); border-radius: 999px; background: rgba(25, 108, 255, 0.12); color: #9ecbff; font: inherit; font-size: 0.72rem; font-weight: 850; } .account-settings-form { grid-template-columns: repeat(2, minmax(0, 1fr)); } .account-settings-form label { display: grid; gap: 6px; } .account-settings-form label span { color: rgba(235, 241, 255, 0.68); font-size: 0.76rem; font-weight: 800; } .workspace-section-settings .field, .workspace-section-settings .select { border-color: rgba(255, 255, 255, 0.1); background: rgba(255, 255, 255, 0.055); color: rgba(246, 249, 255, 0.94); } .account-toggle-list label, .account-radio-group label { display: flex; gap: 9px; align-items: flex-start; padding: 8px 0; border-bottom: 1px solid rgba(255, 255, 255, 0.06); color: rgba(235, 241, 255, 0.75); font-size: 0.82rem; } .account-toggle-list label:last-child, .account-radio-group label:last-child { border-bottom: 0; } .account-toggle-list input, .account-radio-group input { accent-color: #2279ff; margin-top: 2px; } .account-toggle-list small { display: block; color: rgba(235, 241, 255, 0.48); font-size: 0.72rem; } .account-notification-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); } .account-notification-summary .is-on, .account-alert-list .is-on, .account-state-card span { color: #89f0b8; font-weight: 850; } .account-notification-summary .is-off { color: #ff9f9f; font-weight: 850; } .account-alert-list .is-paused { color: #ffbf47; font-weight: 850; } .account-radio-group { display: grid; gap: 7px; padding: 11px; border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 16px; background: rgba(255, 255, 255, 0.04); } .account-channel-grid, .account-theme-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); } .account-channel-grid button, .account-theme-grid button { place-items: center; min-height: 46px; font-weight: 850; } .account-theme-grid button.is-selected { border-color: rgba(64, 133, 255, 0.46); background: linear-gradient(135deg, rgba(35, 132, 255, 0.98), rgba(12, 91, 239, 0.98)); } .danger-zone { border-color: rgba(255, 95, 95, 0.18); } .button.danger, .account-delete-box .button { color: #ffc4c4; border-color: rgba(255, 95, 95, 0.22); background: rgba(255, 95, 95, 0.08); } .account-delete-box { border-color: rgba(255, 95, 95, 0.16); background: radial-gradient(circle at 0% 0%, rgba(255, 95, 95, 0.12), transparent 42%), rgba(255, 255, 255, 0.035); } .account-diagnostic-layout { display: grid; grid-template-columns: 112px minmax(0, 1fr); gap: 14px; align-items: center; } .account-diagnostic-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; } .account-diagnostic-list strong { color: #89f0b8; font-size: 0.78rem; } .account-improvement-list a { display: block; padding: 9px 10px; border: 1px solid rgba(64, 133, 255, 0.14); border-radius: 13px; background: rgba(25, 108, 255, 0.08); color: #9ecbff; font-weight: 800; } .workspace-wide-grid { display: grid; grid-template-columns: 1.5fr 1fr; gap: 14px; } .profile-account-page, .favorites-page { max-width: 1040px; } .profile-account-card, .favorites-header, .favorite-card { border: 1px solid rgba(255, 255, 255, 0.075); border-radius: 28px; background: linear-gradient(180deg, rgba(16, 24, 40, 0.96) 0%, rgba(8, 12, 22, 0.98) 100%); box-shadow: 0 24px 70px rgba(0, 0, 0, 0.26), inset 0 1px 0 rgba(255, 255, 255, 0.04); } .profile-account-card { padding: 22px; } .profile-identity { display: flex; align-items: center; gap: 16px; } .profile-avatar { display: inline-grid; place-items: center; width: 64px; height: 64px; border-radius: 22px; border: 1px solid rgba(64, 133, 255, 0.28); background: radial-gradient(circle at 36% 28%, rgba(113, 213, 255, 0.32), transparent 28%), linear-gradient(145deg, rgba(24, 95, 224, 0.9), rgba(6, 10, 20, 0.98)); color: white; font-weight: 800; letter-spacing: 0.04em; } .profile-status-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; } .profile-action-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; } .profile-action-tile { display: grid; gap: 8px; min-height: 118px; padding: 16px; border: 1px solid rgba(255, 255, 255, 0.075); border-radius: 22px; background: radial-gradient(circle at 20% 0%, rgba(25, 108, 255, 0.14), transparent 46%), rgba(255, 255, 255, 0.035); color: var(--text); } .profile-action-tile span { color: var(--muted); font-size: 0.9rem; line-height: 1.35; } .profile-hero-actions, .work-title-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; } .work-title-row { align-items: flex-start; } .favorite-toggle-wrap { display: grid; gap: 4px; } .favorite-toggle { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 42px; padding: 0 14px; border: 1px solid rgba(255, 255, 255, 0.11); border-radius: 999px; background: rgba(255, 255, 255, 0.045); color: white; cursor: pointer; } .favorite-heart { display: inline-grid; place-items: center; min-width: 20px; font-size: 1.02rem; line-height: 1; } .favorite-icon-bookmark .favorite-heart { color: rgba(235, 241, 255, 0.9); font-size: 1rem; } .favorite-heart svg { width: 20px; height: 20px; } .favorite-icon-bookmark .favorite-toggle.is-active .favorite-heart { color: #ffd45a; text-shadow: 0 0 18px rgba(255, 212, 90, 0.38); } .favorite-toggle.is-active { border-color: rgba(55, 214, 122, 0.34); background: rgba(55, 214, 122, 0.14); color: #a9f2c7; } .favorite-icon-bookmark .favorite-toggle.is-active { border-color: rgba(255, 212, 90, 0.5); background: rgba(255, 212, 90, 0.14); color: #ffd45a; } .favorite-toggle:disabled { cursor: progress; opacity: 0.68; } .favorite-toggle-wrap.is-compact .favorite-toggle { min-height: 38px; padding-inline: 12px; font-size: 0.86rem; } .favorite-toggle-wrap:not(.is-compact) .favorite-toggle { width: 100%; } .favorites-shell { display: grid; gap: 16px; } .favorites-header { display: flex; align-items: flex-end; justify-content: space-between; gap: 18px; padding: 22px; } .favorites-counts { display: flex; gap: 8px; flex-wrap: wrap; } .favorites-counts span, .favorites-tabs button { min-height: 38px; padding: 0 13px; border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 999px; background: rgba(255, 255, 255, 0.04); color: var(--muted); } .favorites-tabs { display: flex; gap: 10px; overflow-x: auto; padding-bottom: 2px; } .favorites-tabs button { cursor: pointer; color: var(--text); } .favorites-tabs button.is-active { border-color: rgba(76, 140, 255, 0.34); background: rgba(25, 108, 255, 0.2); color: white; } .favorites-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; } .favorite-card { display: grid; grid-template-columns: 148px 1fr; overflow: hidden; } .favorite-card .thumb { width: 100%; height: 100%; min-height: 178px; object-fit: cover; background: rgba(12, 21, 38, 0.96); } .favorite-card-body { display: grid; align-content: space-between; gap: 12px; padding: 16px; } .favorite-card-actions { display: flex; gap: 10px; flex-wrap: wrap; } .timeline-list, .checklist-list { display: grid; gap: 12px; } .timeline-item, .checklist-item { display: flex; align-items: start; justify-content: space-between; gap: 12px; padding: 14px; border: 1px solid var(--light-line); border-radius: 16px; background: var(--surface-light-soft); } .message-thread { display: grid; gap: 12px; } .message-bubble { max-width: 82%; padding: 14px 16px; border-radius: 18px; background: #ecf2ff; color: var(--light-text); } .message-bubble.mine { margin-left: auto; background: linear-gradient(135deg, #196cff 0%, #0c57d8 100%); color: white; } .ops-page { max-width: 1460px; } .ops-shell { display: grid; grid-template-columns: 260px 1fr; gap: 18px; } .ops-sidebar, .ops-main { border: 1px solid rgba(255, 255, 255, 0.06); border-radius: 28px; background: rgba(12, 17, 30, 0.95); box-shadow: var(--shadow); } .ops-sidebar { padding: 18px; } .ops-main { padding: 18px; display: grid; gap: 16px; } .ops-nav { display: grid; gap: 8px; } .ops-nav-item { display: flex; align-items: center; justify-content: space-between; min-height: 46px; padding: 0 14px; border-radius: 16px; color: var(--muted); background: transparent; } .ops-nav-item.active { color: white; background: rgba(25, 108, 255, 0.18); } .ops-top-grid, .ops-grid { display: grid; gap: 14px; } .ops-top-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); } .ops-grid { grid-template-columns: 1.2fr 0.8fr; } .ops-card { padding: 18px; border: 1px solid var(--line); border-radius: 22px; background: rgba(255, 255, 255, 0.02); } .ops-table { display: grid; gap: 10px; } .ops-row { display: grid; grid-template-columns: 1fr 1fr 0.9fr 0.8fr; gap: 12px; padding: 12px 0; border-bottom: 1px solid rgba(255, 255, 255, 0.05); } .ops-system-list, .ops-list { display: grid; gap: 10px; } .ops-system-item, .ops-list-item { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 12px 0; border-bottom: 1px solid rgba(255, 255, 255, 0.05); } .auth-wrap { max-width: 520px; margin: 46px auto 0; } .auth-card { display: grid; gap: 16px; padding: 24px; border: 1px solid var(--line); border-radius: 28px; background: rgba(10, 15, 24, 0.9); } .wizard-shell { display: grid; grid-template-columns: 320px minmax(0, 1fr); gap: 20px; } .wizard-progress { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 10px; } .wizard-dot { height: 10px; border-radius: 999px; background: rgba(255, 255, 255, 0.08); } .wizard-dot.active { background: linear-gradient(135deg, #2264ff, #1450cf); } .wizard-actions { display: flex; align-items: center; justify-content: space-between; gap: 12px; } .wizard-actions-right { display: flex; align-items: center; gap: 12px; } @media (max-width: 1160px) { .discover-grid, .detail-grid, .workspace-theme, .ops-shell, .ops-grid, .workspace-wide-grid, .home-grid, .wizard-shell { grid-template-columns: 1fr; } .discover-aside { grid-template-columns: 1fr 1fr; align-items: start; } .selected-card { position: static; } .workspace-theme { gap: 12px; } .workspace-mobile-bar { position: sticky; top: max(8px, env(safe-area-inset-top, 0px)); z-index: 60; display: grid; grid-template-columns: 44px minmax(0, 1fr); gap: 10px; align-items: center; padding: 10px; border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 22px; background: radial-gradient(circle at 18% 0%, rgba(31, 111, 255, 0.18), transparent 36%), rgba(5, 10, 19, 0.92); color: white; box-shadow: 0 18px 44px rgba(0, 0, 0, 0.28); backdrop-filter: blur(18px); } .workspace-mobile-bar div { display: grid; gap: 2px; min-width: 0; } .workspace-mobile-bar strong, .workspace-mobile-bar span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .workspace-mobile-bar span { color: rgba(235, 241, 255, 0.58); font-size: 0.72rem; font-weight: 800; letter-spacing: 0.08em; text-transform: uppercase; } .workspace-menu-button { display: inline-grid; place-items: center; gap: 4px; width: 44px; height: 44px; border: 1px solid rgba(255, 255, 255, 0.1); border-radius: 15px; background: rgba(255, 255, 255, 0.05); cursor: pointer; } .workspace-menu-button span { width: 18px; height: 2px; border-radius: 999px; background: white; } .workspace-sidebar { position: fixed; z-index: 90; top: 0; bottom: 0; left: 0; width: min(88vw, 340px); max-height: 100vh; overflow-y: auto; border-radius: 0 28px 28px 0; transform: translateX(calc(-100% - 24px)); transition: transform 180ms ease; } .workspace-sidebar.is-open { transform: translateX(0); } .workspace-menu-close { display: inline-flex; align-items: center; justify-content: center; min-height: 42px; border: 1px solid rgba(255, 255, 255, 0.09); border-radius: 14px; background: rgba(255, 255, 255, 0.045); color: rgba(235, 241, 255, 0.9); font: inherit; font-weight: 800; cursor: pointer; } .workspace-menu-backdrop.is-open { position: fixed; inset: 0; z-index: 80; display: block; border: 0; background: rgba(2, 6, 14, 0.62); backdrop-filter: blur(6px); } } @media (max-width: 920px) { .topbar-inner { grid-template-columns: 1fr; } .topbar-search { display: none; } .nav-links { justify-content: start; } .stat-row, .meta-grid, .kpi-grid, .ops-top-grid, .grid-cards, .home-preview-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .gallery-grid { grid-template-columns: 1fr; } .gallery-side { grid-template-columns: repeat(4, minmax(0, 1fr)); } } @media (max-width: 720px) { .page-shell { width: 100%; margin: 0; padding-inline: 0; padding-bottom: 104px; } .page-shell.map-home-page { padding-bottom: calc(14px + env(safe-area-inset-bottom, 0px)); } .topbar { display: none; } .nav-links { display: none; } .mobile-dock { display: flex; } .discover-search-row, .search-grid, .profile-status-grid, .profile-action-grid, .favorites-grid, .workspace-form-grid, .discover-aside, .before-after, .input-grid-compact, .stat-row, .meta-grid, .kpi-grid, .ops-top-grid, .grid-cards, .home-preview-grid, .gallery-side, .ops-row { grid-template-columns: 1fr; } .discover-map { min-height: 480px; } .maker-rail { grid-auto-columns: 78%; } .result-item { grid-template-columns: 72px 1fr; } .profile-account-page, .favorites-page { padding-inline: 12px; } .profile-account-card, .favorites-header { border-radius: 24px; padding: 18px; } .favorites-header, .profile-hero-actions, .work-title-row { align-items: stretch; flex-direction: column; } .favorite-card { grid-template-columns: 116px 1fr; border-radius: 22px; } .favorite-card .thumb { min-height: 160px; } .result-item > :last-child { grid-column: 1 / -1; } .headline { font-size: 2.5rem; } .contact-card { position: static; } .wizard-actions, .wizard-actions-right, .home-actions { flex-direction: column; align-items: stretch; } .map-home-page { width: 100%; padding-left: 0; padding-right: 0; padding-top: 0; gap: 0; } .map-home-shell { width: 100%; display: flex; justify-content: center; } .map-home-device { width: calc(100vw - 18px); max-width: 390px; margin: 0 auto; min-height: auto; padding-top: 8px; padding-right: 2px; padding-bottom: 8px; padding-left: 2px; border: none; border-radius: 0; background: transparent; box-shadow: none; } .map-home-map { width: 100%; min-height: clamp(340px, 48svh, 430px); margin-top: 12px; border-radius: 22px; } .map-home-search-row { grid-template-columns: minmax(0, 1fr) 44px; } .map-home-searchbar { min-width: 0; } .map-home-searchbar input { min-width: 0; } .map-home-results { padding-top: 14px; padding-bottom: calc(76px + env(safe-area-inset-bottom, 0px)); } .map-home-results-title { font-size: 1.42rem; } .map-home-maker-card { grid-template-columns: 98px 1fr; gap: 10px; } .map-home-maker-media .thumb { width: 98px; height: 98px; } } @media (orientation: landscape) and (max-height: 540px) { .topbar { display: none; } .nav-links { display: none; } .mobile-dock { display: flex; } .page-shell { width: 100%; max-width: 100%; margin: 0; padding: 8px 10px calc(78px + env(safe-area-inset-bottom, 0px)); } .page-shell.map-home-page { width: 100%; max-width: 100%; padding-top: 8px; gap: 0; } .map-home-shell { width: 100%; justify-content: center; } .map-home-device { width: min(calc(100vw - 12px), 920px); max-width: none; height: calc(100svh - 18px - env(safe-area-inset-bottom, 0px)); min-height: 0; margin: 0 auto; padding: 8px; display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(320px, 0.92fr); grid-template-rows: auto auto minmax(0, 1fr); grid-template-areas: "map search" "map chips" "map results"; gap: 10px; border: none; border-radius: 0; background: transparent; box-shadow: none; overflow: hidden; } .map-home-search-stack { grid-area: search; gap: 10px; } .map-home-chip-row { grid-area: chips; margin-top: 0; padding-bottom: 0; } .map-home-map { grid-area: map; min-height: 0; height: 100%; margin-top: 0; border-radius: 24px; } .map-home-results { grid-area: results; grid-template-rows: auto minmax(0, 1fr); gap: 10px; min-height: 0; padding-top: 0; padding-bottom: 0; overflow: hidden; } .map-home-results-head { align-items: flex-end; } .map-home-results-title { font-size: 1.34rem; } .map-home-maker-list { min-height: 0; overflow-y: auto; padding-right: 4px; padding-bottom: 6px; } .map-home-maker-list::-webkit-scrollbar { width: 6px; } .map-home-maker-list::-webkit-scrollbar-thumb { border-radius: 999px; background: rgba(255, 255, 255, 0.12); } .map-home-maker-card { grid-template-columns: 88px 1fr; gap: 10px; padding: 8px; } .map-home-maker-media .thumb { width: 88px; height: 88px; } .map-home-maker-brand strong { font-size: 0.98rem; } .map-home-maker-score { font-size: 0.76rem; } .map-home-tag { min-height: 24px; font-size: 0.72rem; } } .discover-page { width: min(100%, 1248px); padding-inline: 22px; padding-bottom: 32px; } .discover-shell { display: grid; gap: 18px; } .discover-header-stack { display: grid; gap: 14px; } .discover-topbar { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; } .discover-location-dot { width: 10px; height: 10px; border-radius: 999px; background: #2fe06d; box-shadow: 0 0 0 6px rgba(47, 224, 109, 0.12); } .discover-search-stack { gap: 0; } .discover-submit-button { flex: 0 0 auto; } .discover-body { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(320px, 0.92fr); gap: 18px; align-items: start; } .discover-map-column, .discover-panel-column { display: grid; gap: 16px; min-width: 0; } .discover-map-stage { position: relative; min-height: 620px; overflow: hidden; border-radius: 34px; border: 1px solid rgba(126, 149, 255, 0.14); background: radial-gradient(circle at top left, rgba(37, 97, 255, 0.18), transparent 30%), linear-gradient(180deg, rgba(10, 18, 33, 0.96), rgba(5, 9, 18, 0.98)); box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05), 0 20px 46px rgba(4, 9, 20, 0.28); } .discover-map-surface, .discover-leaflet, .discover-map-overlay, .discover-map-loading { position: absolute; inset: 0; } .discover-map-surface { overflow: hidden; } .discover-map-surface .leaflet-container { width: 100%; height: 100%; background: linear-gradient(180deg, #cfd5de 0%, #bcc4cf 100%); border-radius: 34px; } .discover-map-surface .leaflet-tile { filter: grayscale(1) saturate(0) brightness(0.95) contrast(1.02); } .discover-map-surface .leaflet-control-zoom { display: none; } .discover-map-surface .leaflet-control-attribution { margin: 0 12px 10px 0; padding: 3px 8px; border-radius: 999px; border: 1px solid rgba(255, 255, 255, 0.12); background: rgba(7, 11, 20, 0.72); color: rgba(255, 255, 255, 0.52); font-size: 0.66rem; } .discover-map-surface .leaflet-control-attribution a { color: rgba(136, 174, 255, 0.92); } .discover-map-loading { display: grid; place-items: center; background: linear-gradient(180deg, #c8cfd9 0%, #b7bfca 100%); color: rgba(23, 31, 43, 0.72); font-weight: 600; letter-spacing: 0.02em; } .discover-map-overlay { pointer-events: none; } .discover-map-control, .discover-map-cta { pointer-events: auto; position: absolute; z-index: 4; border: 1px solid rgba(255, 255, 255, 0.08); background: rgba(255, 255, 255, 0.04); color: white; backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04); } .discover-map-control { right: 18px; bottom: 18px; width: 54px; height: 54px; border-radius: 999px; display: grid; place-items: center; } .discover-map-control svg { width: 22px; height: 22px; } .discover-map-cta { left: 50%; bottom: 18px; transform: translateX(-50%); min-width: 220px; min-height: 54px; padding: 0 26px; border-radius: 999px; font-size: 0.96rem; font-weight: 500; } .discover-summary-panel { gap: 14px; } .discover-summary-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; } .discover-sort-row { display: flex; flex-wrap: wrap; gap: 10px; } .discover-sort-chip { min-height: 38px; padding: 0 14px; border-radius: 999px; border: 1px solid rgba(255, 255, 255, 0.08); background: rgba(255, 255, 255, 0.04); color: rgba(233, 239, 255, 0.88); font-size: 0.82rem; font-weight: 600; transition: background 160ms ease, border-color 160ms ease, color 160ms ease; } .discover-sort-chip.active { border-color: rgba(47, 114, 255, 0.66); background: linear-gradient(180deg, rgba(33, 94, 255, 0.3), rgba(23, 72, 196, 0.26)); color: white; } .discover-selected-card { gap: 16px; } .discover-selected-media { position: relative; overflow: hidden; border-radius: 26px; min-height: 260px; } .discover-selected-media .thumb { width: 100%; height: 100%; min-height: 260px; object-fit: cover; } .discover-selected-media::after { content: ""; position: absolute; inset: auto 0 0; height: 40%; background: linear-gradient(180deg, transparent, rgba(6, 10, 19, 0.88)); } .discover-selected-badge { position: absolute; left: 16px; bottom: 16px; z-index: 1; display: inline-flex; align-items: center; min-height: 34px; padding: 0 12px; border-radius: 999px; border: 1px solid rgba(255, 255, 255, 0.14); background: rgba(7, 11, 20, 0.72); color: rgba(255, 255, 255, 0.88); font-size: 0.76rem; font-weight: 700; letter-spacing: 0.04em; text-transform: uppercase; } .discover-selected-body { display: grid; gap: 16px; } .discover-selected-head { display: grid; gap: 4px; } .discover-score-row { justify-content: flex-start; } .discover-stat-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; } .discover-stat-pill { display: grid; gap: 4px; padding: 14px 12px; border-radius: 18px; border: 1px solid rgba(255, 255, 255, 0.08); background: rgba(255, 255, 255, 0.035); } .discover-stat-pill strong { font-size: 1rem; color: white; } .discover-stat-pill span { font-size: 0.74rem; color: var(--muted); } .discover-selected-copy { margin: 0; color: rgba(235, 241, 255, 0.76); line-height: 1.6; } .discover-selected-actions { display: grid; gap: 10px; } .discover-list-panel { gap: 14px; } .discover-list { display: grid; gap: 12px; } .discover-maker-card { width: 100%; } .discover-maker-card.is-selected { border-color: rgba(56, 126, 255, 0.44); background: linear-gradient(180deg, rgba(17, 28, 51, 0.96), rgba(10, 17, 32, 0.98)); box-shadow: 0 0 0 1px rgba(47, 114, 255, 0.2); } @media (max-width: 1160px) { .discover-page { width: 100%; } .discover-body { grid-template-columns: 1fr; } .discover-map-stage { min-height: 520px; } } @media (max-width: 720px) { .discover-page { padding-inline: 0; padding-bottom: calc(104px + env(safe-area-inset-bottom, 0px)); } .discover-shell { gap: 14px; } .discover-header-stack { padding-inline: 2px; } .discover-topbar { gap: 10px; } .discover-topbar .score-pills { width: 100%; overflow-x: auto; flex-wrap: nowrap; padding-bottom: 2px; } .discover-body { gap: 14px; } .discover-map-stage { min-height: 420px; border-radius: 28px; } .discover-map-surface .leaflet-container { border-radius: 28px; } .discover-map-cta { min-width: 0; width: calc(100% - 102px); max-width: 280px; padding-inline: 18px; } .discover-summary-head { align-items: center; } .discover-stat-grid { grid-template-columns: 1fr; } .discover-selected-media, .discover-selected-media .thumb { min-height: 220px; } } @media (orientation: landscape) and (max-height: 540px) { .discover-page { padding-bottom: calc(18px + env(safe-area-inset-bottom, 0px)); } .discover-shell { grid-template-columns: minmax(0, 1.02fr) minmax(320px, 0.98fr); grid-template-areas: "map header" "map panel"; gap: 14px; align-items: start; } .discover-header-stack { grid-area: header; padding-inline: 0; } .discover-body { display: contents; } .discover-map-column { grid-area: map; position: sticky; top: 12px; } .discover-panel-column { grid-area: panel; max-height: calc(100vh - 128px); overflow-y: auto; padding-right: 4px; } .discover-panel-column::-webkit-scrollbar { width: 6px; } .discover-panel-column::-webkit-scrollbar-thumb { border-radius: 999px; background: rgba(255, 255, 255, 0.14); } .discover-map-stage { min-height: calc(100vh - 34px); } } .discover-wireframe-shell { gap: 22px; } .discover-stage { display: grid; grid-template-columns: minmax(0, 760px) 360px; gap: 22px; align-items: start; } .discover-device { position: relative; display: grid; gap: 12px; padding: 18px; border-radius: 32px; border: 1px solid rgba(255, 255, 255, 0.08); background: radial-gradient(circle at top center, rgba(28, 86, 200, 0.12), transparent 28%), linear-gradient(180deg, rgba(17, 25, 42, 0.9) 0%, rgba(9, 15, 28, 0.96) 100%); box-shadow: 0 24px 70px rgba(0, 0, 0, 0.4); overflow-x: clip; } .discover-toolbar { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 8px; align-items: center; } .discover-icon-button { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; border-radius: 15px; border: 1px solid rgba(255, 255, 255, 0.08); background: rgba(255, 255, 255, 0.04); color: white; box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04); } .discover-icon-button.subtle { width: 42px; height: 42px; border-radius: 999px; background: rgba(9, 13, 22, 0.74); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); } .discover-icon-button svg { width: 18px; height: 18px; } .discover-search-form { min-width: 0; } .discover-searchbar { display: flex; align-items: center; gap: 10px; min-height: 48px; padding: 0 15px; border-radius: 999px; border: 1px solid rgba(255, 255, 255, 0.08); background: rgba(255, 255, 255, 0.032); box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04); } .discover-searchbar input { width: 100%; border: none; background: transparent; color: white; outline: none; } .discover-searchbar input::placeholder { color: rgba(255, 255, 255, 0.42); } .discover-searchbar-icon { display: inline-grid; place-items: center; width: 18px; height: 18px; color: rgba(255, 255, 255, 0.7); } .discover-searchbar-icon svg { width: 18px; height: 18px; } .discover-filter-row { display: flex; gap: 8px; overflow-x: auto; padding-bottom: 2px; } .discover-filter-row::-webkit-scrollbar, .discover-maker-rail::-webkit-scrollbar { display: none; } .discover-filter-chip { display: inline-flex; align-items: center; gap: 8px; flex: 0 0 auto; min-height: 32px; padding: 0 13px; border-radius: 11px; border: 1px solid rgba(255, 255, 255, 0.07); background: rgba(255, 255, 255, 0.028); color: #e4ecfb; font-size: 0.82rem; white-space: nowrap; } .discover-filter-chip svg { width: 18px; height: 18px; } .discover-filter-chip.primary, .discover-filter-chip.active { border-color: rgba(76, 140, 255, 0.32); background: rgba(25, 108, 255, 0.18); color: white; box-shadow: 0 10px 18px rgba(24, 88, 215, 0.16); } .discover-filter-chip.icon-only { padding-inline: 12px; } .discover-map-stage { min-height: 500px; border-radius: 28px; } .discover-map-hatch { display: none; } .discover-map-overlay { z-index: 3; } .discover-map-side-tools { position: absolute; right: 18px; top: 50%; display: grid; gap: 10px; transform: translateY(-50%); } .discover-map-control { position: static; width: 54px; height: 54px; } .discover-map-radar { display: grid; place-items: center; gap: 6px; width: 72px; min-height: 92px; padding: 10px 8px; border-radius: 22px; border: 1px solid rgba(61, 128, 255, 0.3); background: linear-gradient(180deg, rgba(38, 95, 247, 0.92), rgba(16, 60, 165, 0.94)); color: white; box-shadow: 0 18px 30px rgba(9, 34, 94, 0.34); font-size: 0.78rem; font-weight: 700; line-height: 1.1; text-align: center; } .discover-map-radar svg { width: 22px; height: 22px; } .discover-map-current-pulse { width: 16px; height: 16px; border-radius: 999px; background: #56a2ff; box-shadow: 0 0 0 5px rgba(86, 162, 255, 0.2), 0 0 0 10px rgba(86, 162, 255, 0.08); } .discover-zone-sheet { position: relative; z-index: 4; display: grid; gap: 14px; margin-top: -34px; padding: 18px; border-radius: 26px; border: 1px solid rgba(255, 255, 255, 0.08); background: linear-gradient(180deg, rgba(15, 22, 39, 0.98), rgba(8, 13, 24, 0.98)); box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04), 0 18px 34px rgba(4, 9, 18, 0.26); } .discover-inline-selection { display: none; } .discover-maker-rail { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(232px, 250px); gap: 12px; overflow-x: auto; padding: 2px 2px 4px; align-items: start; } .discover-rail-card { display: grid; grid-template-columns: 78px minmax(0, 1fr); gap: 10px; min-height: 104px; padding: 10px; border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 18px; background: linear-gradient(180deg, rgba(18, 25, 42, 0.98), rgba(11, 17, 32, 0.98)); color: white; overflow: hidden; text-align: left; align-items: center; } .discover-rail-card:hover { border-color: rgba(66, 130, 255, 0.38); background: linear-gradient(180deg, rgba(24, 36, 62, 0.98), rgba(11, 17, 32, 0.98)); } .discover-work-card { text-decoration: none; } .discover-rail-card.is-selected { border-color: rgba(66, 130, 255, 0.54); box-shadow: 0 0 0 1px rgba(66, 130, 255, 0.2); } .discover-rail-media { position: relative; width: 78px; height: 78px; display: grid; place-items: center; border-radius: 16px; overflow: hidden; background: radial-gradient(circle at top left, rgba(49, 118, 255, 0.16), transparent 44%), linear-gradient(180deg, rgba(17, 27, 48, 0.96), rgba(10, 17, 30, 0.98)); border: 1px solid rgba(255, 255, 255, 0.06); } .discover-rail-media img { width: 100%; height: 100%; object-fit: contain; object-position: center; padding: 5px; } .discover-rail-badge { position: absolute; left: 5px; bottom: 5px; display: inline-flex; align-items: center; justify-content: center; min-width: 28px; height: 24px; padding-inline: 6px; border-radius: 9px; border: 1px solid rgba(255, 255, 255, 0.14); background: rgba(7, 11, 20, 0.82); color: white; font-size: 0.55rem; font-weight: 700; } .discover-rail-body { display: grid; gap: 7px; padding: 0; min-width: 0; align-content: center; } .discover-rail-head { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 6px; align-items: start; min-width: 0; } .discover-rail-body strong { font-size: 0.92rem; line-height: 1.08; display: -webkit-box; min-height: 1.98em; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2; } .discover-work-maker { color: rgba(233, 239, 255, 0.52); font-size: 0.66rem; line-height: 1; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } .discover-rail-score { display: flex; align-items: center; gap: 5px; color: rgba(233, 239, 255, 0.84); font-size: 0.72rem; min-width: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } .discover-rail-tags { display: flex; flex-wrap: nowrap; gap: 5px; min-width: 0; overflow: hidden; } .discover-rail-tags .map-home-tag { min-height: 21px; max-width: calc(50% - 3px); padding: 0 8px; border-radius: 8px; font-size: 0.6rem; line-height: 1; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .discover-rail-distance { color: rgba(233, 239, 255, 0.68); font-size: 0.64rem; font-weight: 600; line-height: 1.1; white-space: nowrap; } .discover-aside-card { position: sticky; top: 18px; } .discover-selected-card { display: grid; gap: 16px; padding: 18px; border-radius: 30px; border: 1px solid rgba(255, 255, 255, 0.08); background: radial-gradient(circle at top, rgba(25, 76, 188, 0.18), transparent 24%), linear-gradient(180deg, rgba(12, 18, 32, 0.98), rgba(7, 11, 20, 0.98)); box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04), 0 18px 34px rgba(4, 9, 18, 0.26); } .discover-selected-card.is-compact { padding: 14px; border-radius: 24px; } .discover-selected-media { position: relative; min-height: 250px; border-radius: 24px; overflow: hidden; } .discover-selected-card.is-compact .discover-selected-media { min-height: 180px; } .discover-selected-media .thumb { width: 100%; height: 100%; object-fit: cover; } .discover-selected-media-actions { position: absolute; inset: 14px 14px auto; display: flex; justify-content: space-between; gap: 10px; } .discover-location-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; color: rgba(233, 239, 255, 0.72); font-size: 0.86rem; } .discover-featured-works { display: grid; gap: 12px; } .discover-featured-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; } .discover-featured-thumb { aspect-ratio: 1 / 1; border-radius: 16px; overflow: hidden; border: 1px solid rgba(255, 255, 255, 0.08); } .discover-featured-thumb img { width: 100%; height: 100%; object-fit: cover; } .discover-all-panel { display: grid; gap: 16px; } .discover-list-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; } .discover-list-card { width: 100%; border: 1px solid rgba(255, 255, 255, 0.08); background: linear-gradient(180deg, rgba(18, 25, 42, 0.98), rgba(11, 17, 32, 0.98)); color: white; text-align: left; } .discover-list-card.is-selected { border-color: rgba(66, 130, 255, 0.54); box-shadow: 0 0 0 1px rgba(66, 130, 255, 0.2); } .messages-page { width: min(100%, 980px); } .messages-shell { display: grid; grid-template-columns: minmax(260px, 0.86fr) minmax(0, 1.14fr); gap: 14px; min-height: min(720px, calc(100vh - 160px)); color: var(--text); } .messages-list, .messages-thread, .messages-auth-card, .messages-loading { border: 1px solid rgba(255, 255, 255, 0.08); background: radial-gradient(circle at top center, rgba(28, 86, 200, 0.1), transparent 30%), linear-gradient(180deg, rgba(17, 25, 42, 0.92), rgba(9, 15, 28, 0.98)); box-shadow: 0 24px 70px rgba(0, 0, 0, 0.32); } .messages-list { display: grid; grid-template-rows: auto minmax(0, 1fr); min-width: 0; border-radius: 26px; overflow: hidden; } .messages-head, .messages-thread-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; padding: 18px; } .messages-head h1, .messages-thread-head h2 { margin: 4px 0 0; font-size: 1.2rem; line-height: 1.1; } .messages-maker-title { display: flex; align-items: center; gap: 10px; min-width: 0; } .messages-avatar.small { width: 36px; height: 36px; border-radius: 12px; } .messages-filter-row { display: flex; gap: 8px; overflow-x: auto; padding: 0 12px 12px; } .messages-filter-chip { flex: 0 0 auto; min-height: 30px; padding: 0 12px; border: 1px solid rgba(255, 255, 255, 0.07); border-radius: 10px; background: rgba(255, 255, 255, 0.032); color: #e4ecfb; font-size: 0.78rem; } .messages-filter-chip.is-active { border-color: rgba(76, 140, 255, 0.38); background: rgba(25, 108, 255, 0.22); color: white; } .messages-state-text { color: rgba(233, 239, 255, 0.68); font-size: 0.72rem; } .messages-state-text.is-success { color: #5ce08d; } .messages-state-text.is-warning { color: #ffbf5c; } .messages-state-text.is-info { color: #66a7ff; } .messages-state-text.is-danger { color: #ff827c; } .messages-conversation-list { display: grid; gap: 8px; min-height: 0; overflow-y: auto; padding: 0 12px 14px; } .messages-conversation { display: grid; grid-template-columns: 42px minmax(0, 1fr) auto; gap: 10px; align-items: center; width: 100%; min-height: 68px; padding: 10px; border: 1px solid rgba(255, 255, 255, 0.07); border-radius: 18px; background: rgba(255, 255, 255, 0.028); color: inherit; text-align: left; } .messages-conversation.is-active { border-color: rgba(76, 140, 255, 0.38); background: rgba(25, 108, 255, 0.16); box-shadow: 0 12px 28px rgba(24, 88, 215, 0.16); } .messages-avatar { display: grid; place-items: center; width: 42px; height: 42px; border-radius: 14px; background: rgba(25, 108, 255, 0.18); color: white; font-size: 0.74rem; font-weight: 700; } .messages-conversation-copy { display: grid; gap: 4px; min-width: 0; } .messages-conversation-copy strong, .messages-conversation-copy span, .messages-time { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .messages-conversation-copy strong { font-size: 0.9rem; } .messages-conversation-copy span, .messages-time { color: rgba(233, 239, 255, 0.6); font-size: 0.72rem; } .messages-thread { display: grid; grid-template-rows: auto auto minmax(0, 1fr) auto auto auto auto; min-width: 0; border-radius: 26px; overflow: hidden; } .messages-icon-button, .messages-profile-link { display: inline-flex; align-items: center; justify-content: center; min-height: 34px; padding: 0 12px; border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 12px; background: rgba(255, 255, 255, 0.04); color: #e4ecfb; font-size: 0.78rem; } .messages-icon-button { width: 36px; padding: 0; font-size: 1.2rem; } .messages-context-card { display: grid; gap: 12px; margin: 0 14px 14px; padding: 12px; border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 18px; background: rgba(255, 255, 255, 0.035); } .messages-context-main { display: grid; gap: 5px; } .messages-context-main strong { font-size: 0.92rem; line-height: 1.25; } .messages-context-main a { color: #6fa5ff; font-size: 0.74rem; } .messages-context-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 7px; } .messages-context-grid span { display: grid; gap: 3px; min-width: 0; padding: 8px; border-radius: 12px; background: rgba(255, 255, 255, 0.035); color: rgba(233, 239, 255, 0.56); font-size: 0.66rem; } .messages-context-grid strong { overflow: hidden; color: rgba(255, 255, 255, 0.9); font-size: 0.72rem; text-overflow: ellipsis; white-space: nowrap; } .messages-actions-panel { display: grid; gap: 2px; margin: 0 14px 12px; padding: 8px; border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 16px; background: rgba(8, 13, 24, 0.94); } .messages-actions-panel button, .messages-actions-panel a { display: flex; align-items: center; min-height: 38px; padding: 0 10px; border: none; border-radius: 10px; background: transparent; color: rgba(233, 239, 255, 0.84); font-size: 0.78rem; text-align: left; } .messages-bubbles { display: grid; align-content: start; gap: 10px; min-height: 0; overflow-y: auto; padding: 0 18px 16px; } .messages-system-card { display: grid; grid-template-columns: 34px minmax(0, 1fr); gap: 10px; width: min(92%, 450px); padding: 12px; border: 1px solid rgba(76, 140, 255, 0.22); border-radius: 18px; background: rgba(25, 108, 255, 0.1); } .messages-system-card.success { border-color: rgba(55, 214, 122, 0.28); background: rgba(55, 214, 122, 0.08); } .messages-system-card.danger { border-color: rgba(255, 110, 104, 0.26); background: rgba(255, 110, 104, 0.08); } .messages-system-icon { display: grid; place-items: center; width: 30px; height: 30px; border-radius: 999px; background: rgba(255, 255, 255, 0.08); color: white; font-weight: 700; } .messages-system-card strong { display: block; margin-bottom: 8px; } .messages-system-card p, .messages-system-card small { color: rgba(233, 239, 255, 0.68); font-size: 0.78rem; line-height: 1.35; } .messages-system-card dl { display: grid; gap: 6px; margin: 0 0 10px; } .messages-system-card dl div { display: grid; grid-template-columns: 96px minmax(0, 1fr); gap: 8px; } .messages-system-card dt, .messages-system-card dd { margin: 0; color: rgba(233, 239, 255, 0.68); font-size: 0.74rem; } .messages-system-card dd { color: white; } .messages-bubble { width: min(82%, 420px); padding: 12px; border: 1px solid rgba(255, 255, 255, 0.07); border-radius: 18px; background: rgba(255, 255, 255, 0.045); } .messages-bubble.is-mine { justify-self: end; border-color: rgba(76, 140, 255, 0.3); background: linear-gradient(180deg, rgba(34, 104, 255, 0.28), rgba(18, 70, 185, 0.26)); } .messages-bubble.is-maker { justify-self: start; } .messages-bubble-top { display: flex; justify-content: space-between; gap: 10px; color: rgba(233, 239, 255, 0.66); font-size: 0.68rem; } .messages-bubble p { margin: 7px 0 0; color: rgba(255, 255, 255, 0.9); font-size: 0.86rem; line-height: 1.38; } .messages-composer { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 10px; padding: 14px; border-top: 1px solid rgba(255, 255, 255, 0.06); } .messages-plus-button { width: 42px; min-height: 42px; border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 999px; background: rgba(255, 255, 255, 0.04); color: #6fa5ff; font-size: 1.35rem; } .messages-composer input { width: 100%; min-height: 44px; border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 14px; background: rgba(255, 255, 255, 0.04); color: white; outline: none; padding: 0 13px; } .messages-work-actions { display: flex; gap: 8px; overflow-x: auto; padding: 0 14px 12px; } .messages-work-actions .button { flex: 0 0 auto; } .messages-review-box, .messages-incident-box { display: grid; gap: 10px; margin: 0 14px 12px; padding: 12px; border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 18px; background: rgba(255, 255, 255, 0.035); } .messages-review-box textarea, .messages-incident-box textarea, .messages-incident-box select { width: 100%; min-height: 42px; border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 12px; background: rgba(8, 13, 24, 0.8); color: white; outline: none; padding: 10px; } .messages-review-box textarea, .messages-incident-box textarea { min-height: 78px; resize: vertical; } .messages-stars { display: flex; gap: 4px; } .messages-stars button { border: none; background: transparent; color: rgba(255, 255, 255, 0.2); font-size: 1.5rem; } .messages-stars button.is-active { color: #ffbf5c; } .messages-auth-card, .messages-loading { grid-column: 1 / -1; display: grid; place-items: center; gap: 14px; min-height: 380px; border-radius: 26px; padding: 28px; text-align: center; } .messages-auth-card h1 { margin: 0; } .messages-auth-card p { max-width: 360px; margin: 0; color: rgba(233, 239, 255, 0.66); } .messages-loading span { width: min(360px, 70vw); height: 18px; border-radius: 999px; background: linear-gradient(90deg, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.12), rgba(255, 255, 255, 0.05)); } .messages-loading span:nth-child(2) { width: min(460px, 78vw); } .messages-loading span:nth-child(3) { width: min(300px, 62vw); } .messages-status { margin: 0; padding: 0 18px 12px; color: rgba(233, 239, 255, 0.66); font-size: 0.78rem; } @media (max-width: 760px) { .messages-page { padding: 10px 8px calc(92px + env(safe-area-inset-bottom, 0px)); } .messages-shell { grid-template-columns: 1fr; gap: 10px; min-height: calc(100svh - 118px); } .messages-list { max-height: 36svh; border-radius: 24px; } .messages-thread { min-height: 52svh; border-radius: 24px; } .messages-head, .messages-thread-head { padding: 14px; } .messages-conversation-list { grid-auto-flow: column; grid-auto-columns: minmax(232px, 252px); overflow-x: auto; overflow-y: hidden; padding: 0 12px 12px; } .messages-conversation { min-height: 66px; } .messages-bubbles { padding: 0 14px 14px; } .messages-bubble { width: min(90%, 420px); } .messages-context-card, .messages-actions-panel, .messages-review-box, .messages-incident-box { margin-inline: 12px; } .messages-context-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .messages-system-card { width: 100%; } .messages-composer { padding: 12px; } .messages-composer .button { min-width: 72px; padding-inline: 12px; } } @media (max-width: 1160px) { .discover-stage { grid-template-columns: 1fr; } .discover-aside-card { display: none; } .discover-inline-selection { display: block; } } @media (max-width: 720px) { .discover-page { padding-inline: 0; padding-bottom: calc(92px + env(safe-area-inset-bottom, 0px)); } .discover-stage { gap: 0; } .discover-device { padding: 10px 2px 0; border: none; border-radius: 0; background: transparent; box-shadow: none; } .discover-toolbar { gap: 8px; } .discover-icon-button { width: 44px; height: 44px; border-radius: 15px; } .discover-filter-row { padding-inline: 2px; } .discover-map-stage { min-height: 440px; border-radius: 26px; } .discover-map-hatch { border-radius: 26px; } .discover-map-surface .leaflet-container { border-radius: 26px; } .discover-map-side-tools { right: 12px; gap: 8px; } .discover-map-radar { width: 66px; min-height: 84px; border-radius: 20px; font-size: 0.72rem; } .discover-map-cta { width: calc(100% - 120px); max-width: 250px; min-height: 50px; bottom: 14px; } .discover-zone-sheet { margin-top: -26px; border-radius: 24px; padding: 16px 14px 18px; } .discover-list-grid { grid-template-columns: 1fr; } } @media (orientation: landscape) and (max-height: 540px) { .discover-page { padding-bottom: calc(16px + env(safe-area-inset-bottom, 0px)); } .discover-stage { grid-template-columns: minmax(0, 1.06fr) minmax(320px, 0.94fr); gap: 14px; } .discover-device { height: calc(100svh - 20px - env(safe-area-inset-bottom, 0px)); min-height: 0; padding: 10px; overflow: hidden; } .discover-map-stage { min-height: 0; height: 52%; } .discover-zone-sheet { margin-top: -18px; min-height: 0; } .discover-maker-rail { grid-auto-columns: minmax(146px, 156px); } .discover-all-panel { display: none; } } @media (min-width: 980px) { .page-shell.map-home-page { width: min(100%, 1280px); padding-inline: 22px; padding-top: 18px; } .map-home-shell { justify-content: stretch; } .map-home-device { max-width: none; min-height: calc(100vh - 138px); padding: 18px; display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(360px, 0.92fr); grid-template-rows: auto auto minmax(0, 1fr); grid-template-areas: "map search" "map chips" "map results"; gap: 16px; align-items: start; } .map-home-search-stack { grid-area: search; } .map-home-chip-row { grid-area: chips; margin-top: 0; } .map-home-map { grid-area: map; min-height: calc(100vh - 190px); height: calc(100vh - 190px); margin-top: 0; position: sticky; top: 18px; } .map-home-results { grid-area: results; min-height: 0; max-height: calc(100vh - 234px); padding-top: 0; overflow: hidden; } .map-home-maker-list { min-height: 0; overflow-y: auto; padding-right: 6px; padding-bottom: 8px; } .map-home-maker-list::-webkit-scrollbar { width: 6px; } .map-home-maker-list::-webkit-scrollbar-thumb { border-radius: 999px; background: rgba(255, 255, 255, 0.12); } } .discover-stage { grid-template-columns: minmax(0, 860px); justify-content: center; } .discover-device-minimal { max-width: 860px; width: 100%; } .discover-zone-sheet { gap: 0; padding-top: 14px; } .discover-maker-rail { padding-top: 0; } @media (min-width: 721px) { .discover-page { width: min(100%, 920px); padding-inline: 22px; } } @media (max-width: 1160px) { .discover-stage { grid-template-columns: 1fr; } } @media (max-width: 720px) { .discover-device-minimal { max-width: none; } .discover-zone-sheet { padding-top: 14px; } } @media (orientation: landscape) and (max-height: 540px) { .discover-stage { grid-template-columns: 1fr; } .discover-device-minimal { height: auto; overflow: visible; } .discover-map-stage { height: 54svh; } } .discover-device-minimal { display: grid; grid-template-rows: auto auto minmax(0, 1fr) auto; align-content: stretch; } .discover-zone-sheet { margin-top: 12px; padding: 0; border: none; border-radius: 0; background: transparent; box-shadow: none; } .discover-maker-rail { padding-top: 0; } @media (max-width: 720px) { .page-shell.discover-page { width: 100%; max-width: 100%; height: 100svh; margin: 0; padding: 8px 0 calc(80px + env(safe-area-inset-bottom, 0px)); overflow: hidden; overscroll-behavior: none; } .discover-shell.discover-wireframe-shell, .discover-stage { height: 100%; } .discover-device-minimal { height: calc(100svh - 16px - 80px - env(safe-area-inset-bottom, 0px)); padding: 8px 2px 0; gap: 10px; overflow: hidden; } .discover-map-stage { min-height: 0; height: 100%; } .discover-zone-sheet { margin-top: 0; padding-top: 0; max-height: min(22svh, 132px); overflow: hidden; } .discover-maker-rail { height: auto; grid-auto-columns: minmax(238px, 258px); } } @media (orientation: landscape) and (max-height: 540px) { .page-shell.discover-page { height: 100svh; padding: 8px 10px calc(72px + env(safe-area-inset-bottom, 0px)); overflow: hidden; overscroll-behavior: none; } .discover-shell.discover-wireframe-shell, .discover-stage { height: 100%; } .discover-device-minimal { height: calc(100svh - 16px - 72px - env(safe-area-inset-bottom, 0px)); padding: 8px; gap: 8px; overflow: hidden; } .discover-map-stage { height: 100%; min-height: 0; } .discover-zone-sheet { margin-top: 0; max-height: min(30svh, 190px); overflow: hidden; } } .page-shell.discover-page { width: 100%; max-width: none; height: calc(100svh - 86px); margin: 0; padding: 0; overflow: hidden; } .discover-feed-shell { position: relative; width: 100%; height: 100%; color: white; background: radial-gradient(circle at 18% 4%, rgba(32, 112, 255, 0.2), transparent 34%), linear-gradient(180deg, #06101f 0%, #020610 100%); overflow: hidden; } .discover-feed-topbar { position: absolute; z-index: 12; top: max(12px, env(safe-area-inset-top, 0px)); left: 50%; width: min(100% - 24px, 520px); transform: translateX(-50%); pointer-events: none; } .discover-feed-search { display: grid; grid-template-columns: 22px minmax(0, 1fr); gap: 10px; align-items: center; min-height: 48px; padding: 0 16px; border: 1px solid rgba(255, 255, 255, 0.1); border-radius: 999px; background: rgba(8, 15, 29, 0.74); box-shadow: 0 16px 40px rgba(0, 0, 0, 0.28); backdrop-filter: blur(18px); pointer-events: auto; } .discover-feed-search svg { width: 20px; height: 20px; color: rgba(234, 242, 255, 0.72); } .discover-feed-search input { width: 100%; border: 0; outline: 0; background: transparent; color: white; font: inherit; } .discover-feed-search input::placeholder { color: rgba(234, 242, 255, 0.48); } .discover-feed-scroll { height: 100%; overflow-y: auto; scroll-snap-type: y mandatory; overscroll-behavior-y: contain; touch-action: pan-y; scrollbar-width: none; } .discover-feed-scroll::-webkit-scrollbar { display: none; } .discover-feed-item { position: relative; display: grid; grid-template-rows: minmax(0, 2fr) minmax(190px, 1fr); width: min(100%, 620px); height: 100%; min-height: 100%; margin: 0 auto; scroll-snap-align: start; scroll-snap-stop: always; overflow: hidden; background: #030813; } .discover-feed-visual { position: relative; min-height: 0; overflow: hidden; background: radial-gradient(circle at 50% 40%, rgba(31, 122, 255, 0.16), transparent 38%), #050b16; } .discover-feed-gallery { display: grid; grid-auto-flow: column; grid-auto-columns: 100%; width: 100%; height: 100%; overflow-x: auto; scroll-snap-type: x mandatory; overscroll-behavior-x: contain; touch-action: pan-x; scrollbar-width: none; } .discover-feed-gallery::-webkit-scrollbar { display: none; } .discover-feed-slide { position: relative; display: grid; place-items: center; min-width: 0; height: 100%; scroll-snap-align: center; touch-action: pan-x; background: linear-gradient(180deg, rgba(255, 255, 255, 0.04), transparent 34%), radial-gradient(circle at 50% 50%, rgba(255, 255, 255, 0.08), transparent 50%); } .discover-feed-slide::after { content: ""; position: absolute; inset: auto 0 0; height: 42%; background: linear-gradient(180deg, transparent, rgba(2, 6, 16, 0.62)); pointer-events: none; } .discover-feed-slide img { width: 100%; height: 100%; object-fit: contain; object-position: center; } .discover-feed-dots { position: absolute; z-index: 5; left: 50%; bottom: 14px; display: flex; gap: 6px; transform: translateX(-50%); } .discover-feed-dots span { width: 22px; height: 3px; border-radius: 999px; background: rgba(255, 255, 255, 0.45); } .discover-feed-actions { position: absolute; z-index: 6; right: 14px; bottom: 18px; display: grid; gap: 10px; justify-items: center; } .discover-feed-actions .favorite-toggle-wrap { display: grid; justify-items: center; } .discover-feed-actions .favorite-toggle { width: 48px; min-height: 48px; padding: 0; border-radius: 50%; background: rgba(6, 11, 21, 0.72); border-color: rgba(255, 255, 255, 0.12); backdrop-filter: blur(12px); } .discover-feed-actions .favorite-toggle span:not(.favorite-heart) { display: none; } .discover-feed-actions .favorite-heart { font-size: 1.25rem; } .discover-feed-actions .mini-note { display: none; } .discover-feed-action-button { display: inline-grid; place-items: center; width: 48px; height: 48px; border-radius: 50%; border: 1px solid rgba(255, 255, 255, 0.12); background: rgba(6, 11, 21, 0.72); color: white; backdrop-filter: blur(12px); } .discover-feed-action-button svg { width: 21px; height: 21px; } .discover-feed-counter { position: absolute; z-index: 6; left: 14px; bottom: 18px; padding: 7px 10px; border-radius: 999px; background: rgba(6, 11, 21, 0.72); color: rgba(255, 255, 255, 0.74); font-size: 0.72rem; backdrop-filter: blur(12px); } .discover-feed-photo-count { position: absolute; z-index: 6; left: 14px; top: max(70px, calc(env(safe-area-inset-top, 0px) + 66px)); padding: 7px 10px; border-radius: 999px; background: rgba(6, 11, 21, 0.58); color: rgba(255, 255, 255, 0.74); font-size: 0.72rem; backdrop-filter: blur(12px); } .discover-feed-copy { display: grid; align-content: start; gap: 12px; min-height: 0; padding: 18px 16px calc(18px + env(safe-area-inset-bottom, 0px)); border-top: 1px solid rgba(255, 255, 255, 0.08); background: radial-gradient(circle at top right, rgba(42, 127, 255, 0.14), transparent 36%), linear-gradient(180deg, rgba(8, 15, 29, 0.98), rgba(3, 7, 16, 0.98)); } .discover-feed-maker-row, .discover-feed-title-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-width: 0; } .discover-feed-maker { display: inline-flex; align-items: center; min-width: 0; gap: 9px; color: white; } .discover-feed-maker span { display: inline-grid; place-items: center; width: 30px; height: 30px; border-radius: 50%; background: linear-gradient(180deg, #18335d, #0c1426); font-size: 0.68rem; font-weight: 800; } .discover-feed-maker strong { min-width: 0; font-size: 0.88rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } .discover-feed-rating { display: inline-flex; align-items: center; gap: 4px; color: rgba(255, 255, 255, 0.72); font-size: 0.76rem; flex: none; } .discover-feed-title-row { align-items: flex-start; } .discover-feed-title-row h1 { margin: 0; min-width: 0; font-size: clamp(1.35rem, 5vw, 2rem); line-height: 1; letter-spacing: -0.04em; display: -webkit-box; max-width: 100%; overflow: hidden; overflow-wrap: anywhere; -webkit-box-orient: vertical; -webkit-line-clamp: 2; } .discover-feed-cta { flex: none; min-height: 40px; padding-inline: 15px; border-radius: 14px; } .discover-feed-copy p { display: -webkit-box; margin: 0; color: rgba(238, 244, 255, 0.68); font-size: 0.9rem; line-height: 1.38; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 3; } .discover-feed-tags { display: flex; gap: 7px; flex-wrap: wrap; overflow: hidden; } .discover-feed-empty { display: grid; place-content: center; justify-items: center; gap: 12px; width: min(100%, 520px); height: 100%; margin: 0 auto; padding: 24px; text-align: center; scroll-snap-align: start; } .discover-feed-empty h1 { margin: 0; } @media (min-width: 721px) { .page-shell.discover-page { height: calc(100vh - 88px); padding: 18px; } .discover-feed-shell { width: min(100%, 620px); margin: 0 auto; border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 34px; box-shadow: 0 28px 80px rgba(0, 0, 0, 0.34); } .discover-feed-item { border-radius: 34px; } } @media (max-width: 720px) { .page-shell.discover-page { height: calc(100svh - 80px - env(safe-area-inset-bottom, 0px)); padding: 0; } .discover-feed-item { width: 100%; } .discover-feed-topbar { top: max(8px, env(safe-area-inset-top, 0px)); width: calc(100% - 20px); } .discover-feed-search { min-height: 44px; } .discover-feed-copy { padding-inline: 14px; } } @media (orientation: landscape) and (max-height: 540px) { .page-shell.discover-page { height: calc(100svh - 66px - env(safe-area-inset-bottom, 0px)); padding: 0; } .discover-feed-item { grid-template-columns: minmax(0, 1.45fr) minmax(290px, 0.75fr); grid-template-rows: 1fr; } .discover-feed-copy { border-top: 0; border-left: 1px solid rgba(255, 255, 255, 0.08); align-content: center; } } .maker-public-page, .work-detail-page { width: min(100%, 470px); padding: 12px 10px 118px; } .maker-public-phone, .work-detail-phone { display: grid; gap: 10px; overflow: hidden; border: 1px solid rgba(255, 255, 255, 0.12); border-radius: 28px; background: radial-gradient(circle at 20% 0%, rgba(25, 108, 255, 0.12), transparent 28%), linear-gradient(180deg, #06101d 0%, #030814 100%); box-shadow: 0 26px 70px rgba(0, 0, 0, 0.34); } .maker-public-hero, .work-detail-hero { position: relative; min-height: 305px; overflow: hidden; background: #050b15; } .maker-public-hero::after, .work-detail-hero::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(0, 0, 0, 0.2), transparent 44%, rgba(3, 8, 18, 0.82)); pointer-events: none; } .maker-public-hero img, .work-detail-hero img { width: 100%; height: 100%; min-height: 305px; object-fit: contain; object-position: center; } .work-detail-hero-gallery { display: flex; width: 100%; height: 100%; min-height: 305px; overflow-x: auto; overflow-y: hidden; scroll-snap-type: x mandatory; scroll-behavior: smooth; scrollbar-width: none; } .work-detail-hero-gallery::-webkit-scrollbar { display: none; } .work-detail-hero-slide { flex: 0 0 100%; min-width: 100%; scroll-snap-align: center; } .work-detail-hero-slide img { display: block; } .work-detail-hero-dots { position: absolute; z-index: 3; left: 50%; bottom: 20px; display: flex; gap: 5px; transform: translateX(-50%); } .work-detail-hero-dots span { width: 5px; height: 5px; border-radius: 999px; background: rgba(255, 255, 255, 0.35); transition: width 160ms ease, background 160ms ease; } .work-detail-hero-dots span.is-active { width: 18px; background: #2d80ff; } .maker-public-top-actions, .work-detail-top-actions { position: absolute; z-index: 3; top: 14px; left: 14px; right: 14px; display: flex; align-items: center; justify-content: space-between; gap: 10px; } .maker-public-action-pair, .work-detail-action-pair { display: flex; align-items: center; gap: 9px; } .maker-public-circle-action, .work-detail-circle-action, .maker-public-action-pair .favorite-toggle, .work-detail-action-pair .favorite-toggle { display: inline-grid; place-items: center; width: 42px; min-width: 42px; height: 42px; min-height: 42px; padding: 0; border-radius: 50%; border: 1px solid rgba(255, 255, 255, 0.12); background: rgba(3, 7, 14, 0.68); color: white; font-weight: 800; backdrop-filter: blur(12px); } .work-detail-circle-action svg { width: 20px; height: 20px; } .maker-public-action-pair .favorite-toggle span:not(.favorite-heart), .work-detail-action-pair .favorite-toggle span:not(.favorite-heart), .maker-public-action-pair .mini-note, .work-detail-action-pair .mini-note { display: none; } .maker-public-gallery-count, .work-detail-gallery-count { position: absolute; z-index: 3; right: 18px; bottom: 18px; padding: 6px 9px; border-radius: 999px; background: rgba(3, 7, 14, 0.72); color: white; font-size: 0.78rem; font-weight: 700; } .maker-public-main-card, .work-detail-title-card, .maker-public-section, .work-detail-section { display: grid; gap: 14px; margin-inline: 10px; padding: 14px; border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 20px; background: radial-gradient(circle at top left, rgba(25, 108, 255, 0.08), transparent 42%), rgba(255, 255, 255, 0.028); } .maker-public-main-card { margin-top: -56px; position: relative; z-index: 4; background: radial-gradient(circle at top right, rgba(55, 211, 122, 0.12), transparent 34%), linear-gradient(180deg, rgba(9, 18, 34, 0.96), rgba(5, 10, 20, 0.96)); } .maker-public-identity, .work-detail-maker-card { display: grid; grid-template-columns: 70px minmax(0, 1fr); gap: 12px; align-items: center; } .maker-public-logo, .work-detail-maker-card > span { display: grid; place-items: center; width: 70px; height: 70px; border-radius: 50%; border: 1px solid rgba(64, 133, 255, 0.3); background: radial-gradient(circle at 38% 30%, rgba(45, 168, 255, 0.38), transparent 32%), #030814; color: white; font-weight: 900; } .maker-public-title-block, .work-detail-maker-card div { display: grid; gap: 5px; min-width: 0; } .maker-public-name-row { display: flex; align-items: center; gap: 7px; min-width: 0; flex-wrap: wrap; } .maker-public-name-row h1, .work-detail-title-card h1 { margin: 0; color: white; font-size: clamp(1.85rem, 7vw, 2.8rem); line-height: 0.98; letter-spacing: -0.05em; } .maker-public-online-dot { width: 8px; height: 8px; border-radius: 50%; background: #39d37a; } .maker-public-availability { color: #55df92; font-size: 0.72rem; } .maker-public-rating, .discover-feed-rating { display: flex; align-items: center; gap: 5px; } .maker-public-title-block p, .work-detail-section p, .work-detail-share p, .work-detail-maker-card small, .maker-public-info-bottom p { margin: 0; color: rgba(235, 241, 255, 0.68); line-height: 1.45; } .maker-public-stats { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 6px; } .maker-public-stats article, .work-detail-feature-grid article { display: grid; place-items: center; gap: 4px; min-height: 74px; padding: 9px 6px; border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 14px; background: rgba(255, 255, 255, 0.035); text-align: center; } .maker-public-stats strong { color: white; font-size: 1.08rem; } .maker-public-stats span, .maker-public-stats small, .work-detail-feature-grid strong { color: rgba(235, 241, 255, 0.68); font-size: 0.68rem; } .maker-public-tags, .work-detail-tags, .maker-public-chip-grid, .maker-public-trust-badges, .discover-feed-tags { display: flex; gap: 7px; flex-wrap: wrap; } .maker-public-tags span, .work-detail-tags span, .maker-public-chip-grid span { display: inline-flex; align-items: center; min-height: 30px; padding: 0 10px; border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 9px; background: rgba(255, 255, 255, 0.04); color: rgba(235, 241, 255, 0.78); font-size: 0.76rem; } .maker-public-trust-badges span { display: inline-flex; align-items: center; min-height: 28px; padding: 0 10px; border: 1px solid rgba(85, 223, 146, 0.22); border-radius: 999px; background: rgba(85, 223, 146, 0.1); color: #8ff0b4; font-size: 0.72rem; font-weight: 900; } .maker-public-actions-row { display: grid; grid-template-columns: 1fr 48px; gap: 10px; } .maker-public-whatsapp { display: grid; place-items: center; border: 1px solid rgba(255, 255, 255, 0.1); border-radius: 15px; background: rgba(255, 255, 255, 0.04); color: white; font-weight: 800; } .maker-public-recommendation { display: grid; grid-template-columns: 38px 1fr; gap: 12px; padding: 13px; border: 1px solid rgba(64, 133, 255, 0.14); border-radius: 16px; background: rgba(14, 29, 52, 0.7); } .maker-public-section-icon { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; background: rgba(25, 108, 255, 0.14); color: #5aa2ff; font-weight: 900; } .maker-public-recommendation ul { display: grid; gap: 5px; margin: 8px 0 0; padding: 0; list-style: none; color: rgba(235, 241, 255, 0.72); font-size: 0.82rem; } .maker-public-recommendation li::before { content: "ok "; color: #55df92; } .maker-public-tabs { position: sticky; z-index: 5; top: 0; display: flex; gap: 16px; margin: 0 10px; padding: 10px 4px 7px; overflow-x: auto; background: rgba(3, 8, 18, 0.9); backdrop-filter: blur(16px); scrollbar-width: none; } .maker-public-tabs::-webkit-scrollbar { display: none; } .maker-public-tabs a { flex: none; color: rgba(235, 241, 255, 0.72); font-size: 0.78rem; } .maker-public-tabs a:first-child { color: #2d80ff; border-bottom: 2px solid #2d80ff; padding-bottom: 7px; } .maker-public-section h2, .work-detail-section h2 { margin: 0; color: white; font-size: 1rem; } .maker-public-section-head, .work-detail-section-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; } .maker-public-section-head a, .work-detail-section-head a { color: #2d80ff; font-size: 0.78rem; font-weight: 700; } .maker-public-showcases, .work-detail-before-after { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; } .maker-public-showcases a { position: relative; display: grid; align-content: end; min-height: 126px; padding: 12px; overflow: hidden; border-radius: 16px; background-position: center; background-size: cover; color: white; } .maker-public-showcases a::before { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 20%, rgba(2, 6, 14, 0.82)); } .maker-public-showcases strong, .maker-public-showcases span { position: relative; z-index: 1; } .maker-public-work-rail, .work-detail-related-rail { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(128px, 42%); gap: 8px; overflow-x: auto; padding-bottom: 2px; scroll-snap-type: x mandatory; scrollbar-width: none; } .maker-public-work-rail::-webkit-scrollbar, .work-detail-related-rail::-webkit-scrollbar { display: none; } .maker-public-work-card, .work-detail-related-rail article, .work-detail-related-rail a { display: grid; gap: 7px; min-width: 0; padding: 7px; border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 14px; background: rgba(255, 255, 255, 0.035); color: white; scroll-snap-align: start; } .maker-public-work-card img, .work-detail-related-rail img { width: 100%; aspect-ratio: 1 / 1; border-radius: 10px; object-fit: cover; } .maker-public-work-card strong, .work-detail-related-rail strong { display: -webkit-box; min-height: 2.2em; overflow: hidden; font-size: 0.8rem; line-height: 1.1; -webkit-box-orient: vertical; -webkit-line-clamp: 2; } .maker-public-work-card span, .maker-public-work-card small, .work-detail-related-rail span { color: rgba(235, 241, 255, 0.66); font-size: 0.7rem; } .maker-public-service-list { display: grid; gap: 8px; } .maker-public-service-list a { display: grid; grid-template-columns: 58px minmax(0, 1fr) auto; gap: 10px; align-items: center; padding: 8px; border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 14px; background: rgba(255, 255, 255, 0.035); color: white; } .maker-public-service-list img { width: 58px; height: 58px; border-radius: 12px; object-fit: cover; } .maker-public-service-list div { display: grid; gap: 3px; min-width: 0; } .maker-public-service-list span, .maker-public-service-list small { color: rgba(235, 241, 255, 0.62); font-size: 0.75rem; } .maker-public-review { display: grid; gap: 8px; padding: 12px; border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 14px; background: rgba(255, 255, 255, 0.035); } .maker-public-review div { display: flex; justify-content: space-between; gap: 10px; } .maker-public-review p { margin: 0; color: rgba(235, 241, 255, 0.68); } .maker-public-info-bottom, .work-detail-share { margin-bottom: 14px; } .maker-public-social-links { display: flex; flex-wrap: wrap; gap: 8px; } .maker-public-social-links a { display: inline-flex; align-items: center; min-height: 32px; padding: 0 11px; border: 1px solid rgba(45, 128, 255, 0.18); border-radius: 999px; background: rgba(45, 128, 255, 0.1); color: #8fc2ff; font-size: 0.78rem; font-weight: 800; } .maker-public-bottom-cta, .work-detail-bottom-cta { position: fixed; z-index: 40; left: 50%; bottom: calc(86px + env(safe-area-inset-bottom, 0px)); display: grid; grid-template-columns: 1fr; gap: 10px; width: min(100% - 28px, 430px); padding: 10px; border: 1px solid rgba(255, 255, 255, 0.09); border-radius: 20px; background: rgba(3, 8, 18, 0.88); box-shadow: 0 18px 42px rgba(0, 0, 0, 0.42); transform: translateX(-50%); backdrop-filter: blur(18px); } .work-detail-bottom-cta { grid-template-columns: 56px 1fr; } .work-detail-bottom-cta .favorite-toggle { width: 100%; min-height: 48px; padding: 0; border-radius: 14px; } .work-detail-bottom-cta .favorite-toggle span:not(.favorite-heart) { display: none; } .work-detail-title-card { margin-top: -8px; } .work-detail-title-card h1 { font-size: clamp(1.65rem, 6vw, 2.4rem); } .work-detail-maker-card { grid-template-columns: 54px minmax(0, 1fr) auto; padding: 10px; border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 15px; background: rgba(255, 255, 255, 0.035); color: white; } .work-detail-maker-card > span { width: 54px; height: 54px; font-size: 0.8rem; } .work-detail-feature-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 7px; } .work-detail-feature-grid span { color: #2d80ff; font-size: 0.76rem; font-weight: 900; } .work-detail-before-after { grid-template-columns: minmax(0, 1fr) 34px minmax(0, 1fr); align-items: center; } .work-detail-before-after article { position: relative; overflow: hidden; border-radius: 14px; } .work-detail-before-after img { width: 100%; aspect-ratio: 1 / 0.86; object-fit: cover; } .work-detail-before-after span { position: absolute; left: 8px; bottom: 8px; padding: 5px 7px; border-radius: 8px; background: rgba(3, 8, 18, 0.72); color: white; font-size: 0.66rem; font-weight: 800; text-transform: uppercase; } .work-detail-before-after b { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; background: #1265f7; color: white; } .work-detail-section details { display: grid; gap: 12px; } .work-detail-section summary { color: white; cursor: pointer; font-weight: 800; } .work-detail-specs { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 8px 18px; padding-top: 12px; } .work-detail-specs span { color: rgba(235, 241, 255, 0.58); } .work-detail-specs strong { color: rgba(255, 255, 255, 0.9); text-align: right; } .work-detail-gallery-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 7px; } .work-detail-gallery-grid img { width: 100%; aspect-ratio: 1 / 1; border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 12px; object-fit: cover; } .work-detail-share code { display: block; padding: 10px; border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 12px; background: rgba(255, 255, 255, 0.035); color: rgba(235, 241, 255, 0.76); overflow-wrap: anywhere; white-space: normal; } .work-detail-share-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 9px; } .work-detail-share-actions .button-primary { grid-column: 1 / -1; } .work-detail-share-option { display: inline-flex; align-items: center; justify-content: center; min-height: 42px; padding: 0 12px; border: 1px solid rgba(255, 255, 255, 0.1); border-radius: 13px; background: rgba(255, 255, 255, 0.04); color: rgba(235, 241, 255, 0.9); font: inherit; font-size: 0.84rem; font-weight: 800; cursor: pointer; } .work-detail-share-status { grid-column: 1 / -1; color: rgba(124, 231, 167, 0.9); font-size: 0.78rem; } .workspace-toast { position: fixed; z-index: 90; left: 50%; top: max(18px, env(safe-area-inset-top, 0px)); display: grid; gap: 3px; width: min(calc(100vw - 28px), 420px); padding: 14px 16px; border: 1px solid rgba(255, 212, 90, 0.35); border-radius: 18px; background: radial-gradient(circle at 10% 0%, rgba(255, 212, 90, 0.18), transparent 40%), rgba(6, 11, 21, 0.94); color: white; box-shadow: 0 22px 60px rgba(0, 0, 0, 0.42); transform: translateX(-50%); backdrop-filter: blur(18px); } .workspace-toast strong { color: #ffd45a; font-size: 0.76rem; letter-spacing: 0.12em; text-transform: uppercase; } .workspace-toast span { color: rgba(235, 241, 255, 0.86); font-weight: 750; } .publish-workspace { position: relative; display: grid; grid-template-columns: minmax(0, 760px); gap: 14px; align-items: start; } .publish-workspace.is-list-only { grid-template-columns: minmax(0, 760px); } .publish-list-actions { display: flex; flex-wrap: wrap; gap: 8px; justify-content: flex-end; } .publish-list-actions .button { min-height: 36px; padding: 0 13px; } .publish-count-text { color: rgba(235, 241, 255, 0.66); font-size: 0.84rem; font-weight: 850; white-space: nowrap; } .publish-wizard-overlay { position: fixed; z-index: 80; inset: 0; display: grid; place-items: center; padding: max(16px, env(safe-area-inset-top, 0px)) 14px max(18px, env(safe-area-inset-bottom, 0px)); } .publish-wizard-backdrop { position: absolute; inset: 0; border: 0; background: rgba(1, 5, 12, 0.68); backdrop-filter: blur(16px); cursor: pointer; } .publish-wizard-modal { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(320px, 460px) minmax(240px, 280px); gap: 14px; width: min(100%, 780px); max-height: min(88svh, 760px); overflow: auto; padding-top: 44px; scrollbar-width: thin; } .publish-modal-close { position: absolute; top: 0; right: 0; min-height: 34px; padding: 0 13px; border: 1px solid rgba(255, 255, 255, 0.1); border-radius: 999px; background: rgba(6, 11, 21, 0.88); color: rgba(235, 241, 255, 0.82); font: inherit; font-size: 0.78rem; font-weight: 850; cursor: pointer; } .publish-work-list, .publish-wizard, .publish-side-panel article, .publish-step-card { border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 24px; background: radial-gradient(circle at 12% 0%, rgba(27, 106, 255, 0.16), transparent 34%), linear-gradient(180deg, rgba(10, 18, 32, 0.98), rgba(5, 10, 19, 0.98)); color: white; box-shadow: 0 20px 46px rgba(0, 0, 0, 0.22); } .publish-work-list, .publish-wizard, .publish-side-panel article, .publish-step-card { padding: 16px; } .publish-workspace .muted, .publish-workspace .eyebrow, .publish-workspace p { color: rgba(235, 241, 255, 0.66); } .publish-workspace .section-title, .publish-workspace h3 { color: white; } .publish-tabs { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; } .publish-tabs button, .publish-choice-grid button { min-height: 38px; border: 1px solid rgba(255, 255, 255, 0.1); border-radius: 13px; background: rgba(255, 255, 255, 0.045); color: rgba(235, 241, 255, 0.82); font: inherit; font-weight: 800; cursor: pointer; } .publish-tabs button.is-active, .publish-choice-grid button.is-selected { border-color: rgba(45, 128, 255, 0.72); background: linear-gradient(135deg, rgba(28, 109, 255, 0.9), rgba(13, 76, 198, 0.9)); color: white; } .publish-work-items, .publish-side-panel { display: grid; gap: 10px; } .publish-work-manage-card { display: grid; gap: 8px; padding: 8px; border: 1px solid rgba(255, 255, 255, 0.075); border-radius: 18px; background: rgba(255, 255, 255, 0.032); } .publish-work-row { display: grid; grid-template-columns: 58px minmax(0, 1fr) auto; gap: 10px; align-items: center; width: 100%; padding: 9px; border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 15px; background: rgba(255, 255, 255, 0.04); color: white; font: inherit; text-align: left; cursor: pointer; } .publish-work-row img { width: 58px; height: 58px; border-radius: 12px; object-fit: cover; } .publish-work-row div { display: grid; gap: 4px; min-width: 0; } .publish-work-row strong, .publish-side-panel strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .publish-work-row span { color: rgba(235, 241, 255, 0.58); font-size: 0.74rem; } .publish-work-row-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; } .publish-work-row-actions button { min-height: 34px; border: 1px solid rgba(255, 255, 255, 0.09); border-radius: 12px; background: rgba(255, 255, 255, 0.045); color: rgba(235, 241, 255, 0.78); font: inherit; font-size: 0.76rem; font-weight: 850; cursor: pointer; } .publish-work-row-actions button:last-child { color: #ffb4b4; } .publish-wizard { display: grid; gap: 13px; } .publish-wizard-head { display: grid; grid-template-columns: 42px minmax(0, 1fr) auto; gap: 10px; align-items: center; } .publish-back, .publish-next-link { border: 1px solid rgba(255, 255, 255, 0.1); background: rgba(255, 255, 255, 0.04); color: white; font: inherit; font-weight: 800; cursor: pointer; } .publish-back { width: 42px; height: 42px; border-radius: 50%; } .publish-back-spacer { width: 42px; height: 42px; } .publish-next-link { min-height: 38px; padding: 0 12px; border-radius: 999px; color: #7fb0ff; } .publish-progress { display: grid; grid-template-columns: repeat(9, minmax(0, 1fr)); gap: 5px; } .publish-progress button { height: 5px; border: 0; border-radius: 999px; background: rgba(255, 255, 255, 0.14); cursor: pointer; } .publish-progress button.is-active, .publish-progress button.is-done { background: #2d80ff; } .publish-step-card { display: grid; gap: 13px; min-height: 420px; box-shadow: none; } .publish-step-card h3, .publish-wizard-head h3 { margin: 0; } .publish-step-card .field, .publish-step-card .textarea, .publish-step-card .select, .publish-wizard .field, .publish-wizard .textarea, .publish-wizard .select { border-color: rgba(255, 255, 255, 0.1); background: rgba(255, 255, 255, 0.055); color: white; } .publish-photo-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; } .publish-upload-box { display: grid; gap: 5px; place-items: center; min-height: 118px; padding: 18px; border: 1px dashed rgba(86, 154, 255, 0.48); border-radius: 18px; background: radial-gradient(circle at 50% 0%, rgba(45, 128, 255, 0.16), transparent 45%), rgba(255, 255, 255, 0.035); color: white; text-align: center; cursor: pointer; } .publish-upload-box input { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0, 0, 0, 0); } .publish-upload-box strong { font-size: 1rem; } .publish-upload-box span { color: rgba(235, 241, 255, 0.62); font-size: 0.78rem; } .publish-photo-grid article { position: relative; overflow: hidden; border: 2px solid transparent; border-radius: 16px; background: rgba(255, 255, 255, 0.04); } .publish-photo-grid article.is-selected { border-color: #2d80ff; } .publish-photo-grid article > button:first-child { display: block; width: 100%; padding: 0; border: 0; background: transparent; cursor: pointer; } .publish-photo-grid img { display: block; width: 100%; aspect-ratio: 1 / 0.82; object-fit: cover; } .publish-photo-grid article > button:first-child span { position: absolute; right: 7px; bottom: 7px; padding: 4px 7px; border-radius: 999px; background: rgba(4, 8, 17, 0.76); color: white; font-size: 0.66rem; font-weight: 900; text-transform: uppercase; } .publish-remove-photo { position: absolute; top: 7px; left: 7px; min-height: 28px; padding: 0 9px; border: 1px solid rgba(255, 255, 255, 0.12); border-radius: 999px; background: rgba(4, 8, 17, 0.78); color: white; font-size: 0.68rem; font-weight: 900; cursor: pointer; } .publish-empty-photos, .publish-image-placeholder, .publish-before-preview span { display: grid; place-items: center; min-height: 132px; padding: 16px; border: 1px dashed rgba(255, 255, 255, 0.14); border-radius: 16px; background: rgba(255, 255, 255, 0.035); color: rgba(235, 241, 255, 0.64); text-align: center; } .publish-empty-photos { gap: 5px; } .publish-empty-photos strong { color: white; } .publish-empty-photos span { font-size: 0.82rem; } .publish-ai-note, .publish-tip { padding: 12px; border: 1px solid rgba(45, 128, 255, 0.14); border-radius: 15px; background: rgba(45, 128, 255, 0.08); } .publish-ai-note { display: grid; gap: 4px; } .publish-ai-note span, .publish-tip { color: rgba(235, 241, 255, 0.72); font-size: 0.82rem; } .publish-field-label { display: block; margin-bottom: 8px; color: rgba(235, 241, 255, 0.9); font-size: 0.84rem; font-weight: 900; } .publish-choice-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; } .publish-choice-grid button { justify-content: flex-start; padding: 0 11px; text-align: left; } .publish-choice-grid button span { display: -webkit-box; overflow: hidden; -webkit-line-clamp: 2; -webkit-box-orient: vertical; } .publish-toggle { display: flex; align-items: center; gap: 10px; color: white; font-weight: 800; } .publish-before-preview { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; } .publish-before-preview img, .publish-preview-card img, .publish-side-panel img { width: 100%; border-radius: 16px; object-fit: cover; } .publish-before-preview img { aspect-ratio: 1 / 0.75; } .publish-preview-card { display: grid; gap: 12px; overflow: hidden; border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 18px; background: rgba(255, 255, 255, 0.04); } .publish-preview-card img { aspect-ratio: 1 / 0.72; border-radius: 0; } .publish-preview-card div { display: grid; gap: 7px; padding: 0 12px 12px; } .publish-mini-tags { display: flex; flex-wrap: wrap; gap: 7px; } .publish-mini-tags span { padding: 6px 9px; border-radius: 999px; background: rgba(255, 255, 255, 0.07); color: rgba(235, 241, 255, 0.8); font-size: 0.72rem; font-weight: 800; } .publish-checklist { display: grid; gap: 8px; } .publish-checklist span { padding: 10px 12px; border-radius: 13px; background: rgba(38, 213, 120, 0.1); color: #a9f2c7; font-weight: 800; } .publish-actions { display: grid; grid-template-columns: repeat(auto-fit, minmax(128px, 1fr)); gap: 9px; } .publish-actions.is-first-step { grid-template-columns: repeat(2, minmax(0, 1fr)); } .publish-side-panel article { display: grid; gap: 10px; } .publish-side-panel img { aspect-ratio: 1 / 0.72; } .service-workspace { display: grid; grid-template-columns: minmax(0, 760px) minmax(240px, 300px); gap: 14px; align-items: start; } .service-list-card, .service-benefits-panel article, .service-manage-card, .service-public-preview { border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 24px; background: radial-gradient(circle at 12% 0%, rgba(27, 106, 255, 0.15), transparent 34%), linear-gradient(180deg, rgba(10, 18, 32, 0.98), rgba(5, 10, 19, 0.98)); color: white; box-shadow: 0 20px 46px rgba(0, 0, 0, 0.22); } .service-list-card, .service-benefits-panel article { padding: 16px; } .workspace-section-services .workspace-header { padding: 12px; } .workspace-section-services .workspace-header .muted { font-size: 0.88rem; line-height: 1.35; } .service-summary-strip { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 7px; margin-top: 12px; } .service-summary-strip span { display: grid; gap: 2px; min-height: 58px; padding: 9px 10px; border: 1px solid rgba(255, 255, 255, 0.075); border-radius: 14px; background: rgba(255, 255, 255, 0.035); color: rgba(235, 241, 255, 0.62); font-size: 0.72rem; line-height: 1.05; } .service-summary-strip strong { color: white; font-size: 1.12rem; line-height: 1; } .service-tabs { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 7px; margin: 10px 0 12px; } .service-tabs button { min-height: 36px; padding: 0 8px; border-radius: 12px; font-size: 0.76rem; } .service-list, .service-benefits-panel, .service-benefit-list { display: grid; gap: 10px; } .service-manage-card { overflow: hidden; border-radius: 20px; background: radial-gradient(circle at 0% 0%, rgba(45, 128, 255, 0.11), transparent 42%), rgba(255, 255, 255, 0.03); box-shadow: none; } .service-main-row { display: grid; grid-template-columns: 48px minmax(0, 1fr) auto; gap: 11px; align-items: start; width: 100%; padding: 12px; border: 0; background: transparent; color: white; font: inherit; text-align: left; cursor: pointer; } .service-icon { display: grid; place-items: center; width: 48px; height: 48px; border: 1px solid rgba(45, 128, 255, 0.34); border-radius: 16px; background: linear-gradient(145deg, rgba(45, 128, 255, 0.28), rgba(14, 28, 54, 0.92)); color: #a9d9ff; font-size: 0.72rem; font-weight: 950; letter-spacing: 0.05em; } .service-main-row div { display: grid; gap: 5px; min-width: 0; } .service-main-row strong { overflow: hidden; color: white; font-size: 1rem; line-height: 1.1; text-overflow: ellipsis; white-space: nowrap; } .service-main-row small, .service-card-footer, .service-benefits-panel p { color: rgba(235, 241, 255, 0.62); } .service-main-row p { display: -webkit-box; margin: 0; overflow: hidden; color: rgba(235, 241, 255, 0.68); font-size: 0.82rem; line-height: 1.35; -webkit-box-orient: vertical; -webkit-line-clamp: 2; } .service-card-footer { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 10px 12px 12px; border-top: 1px solid rgba(255, 255, 255, 0.065); font-size: 0.78rem; } .service-card-footer div { display: flex; gap: 7px; flex-wrap: wrap; justify-content: flex-end; } .service-card-footer button, .service-card-footer .button { min-height: 32px; padding: 0 10px; border: 1px solid rgba(255, 255, 255, 0.09); border-radius: 11px; background: rgba(255, 255, 255, 0.045); color: rgba(235, 241, 255, 0.82); font: inherit; font-size: 0.72rem; font-weight: 850; cursor: pointer; } .service-card-footer button:last-child { color: #ffb4b4; } .service-benefits-panel article { display: grid; gap: 8px; } .service-benefit-list span { padding: 10px 12px; border-radius: 13px; background: rgba(45, 128, 255, 0.08); color: rgba(235, 241, 255, 0.76); font-size: 0.82rem; font-weight: 800; } .service-wizard-modal { width: min(100%, 820px); } .service-progress { grid-template-columns: repeat(8, minmax(0, 1fr)); } .service-chip-grid { display: flex; flex-wrap: wrap; gap: 8px; } .service-chip-grid button { min-height: 34px; padding: 0 11px; border: 1px solid rgba(255, 255, 255, 0.09); border-radius: 12px; background: rgba(255, 255, 255, 0.045); color: rgba(235, 241, 255, 0.78); font: inherit; font-size: 0.78rem; font-weight: 850; cursor: pointer; } .service-chip-grid button.is-selected { border-color: rgba(45, 128, 255, 0.72); background: linear-gradient(135deg, rgba(28, 109, 255, 0.9), rgba(13, 76, 198, 0.9)); color: white; } .service-template-list { display: grid; gap: 9px; } .service-template-list button { display: grid; grid-template-columns: 44px minmax(0, 1fr) auto; gap: 10px; align-items: center; padding: 10px; border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 16px; background: rgba(255, 255, 255, 0.04); color: white; font: inherit; text-align: left; cursor: pointer; } .service-template-list button > span { display: grid; place-items: center; width: 44px; height: 44px; border-radius: 14px; background: rgba(45, 128, 255, 0.16); color: #9ed4ff; font-size: 0.72rem; font-weight: 950; } .service-template-list div { display: grid; gap: 3px; min-width: 0; } .service-template-list small { color: rgba(235, 241, 255, 0.58); font-size: 0.76rem; line-height: 1.25; } .service-public-preview { display: grid; gap: 14px; padding: 14px; } .service-public-preview h3 { margin: 8px 0 0; } .service-public-preview p { margin: 0; color: rgba(235, 241, 255, 0.7); } .service-preview-stats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; } .service-preview-stats span { display: grid; place-items: center; min-height: 48px; padding: 8px; border: 1px solid rgba(255, 255, 255, 0.075); border-radius: 14px; background: rgba(255, 255, 255, 0.035); color: rgba(235, 241, 255, 0.78); text-align: center; font-size: 0.74rem; font-weight: 850; } .service-public-preview > strong { color: #7cf0a7; font-size: 1.15rem; } .showcase-workspace { display: grid; grid-template-columns: minmax(0, 760px) minmax(240px, 300px); gap: 14px; align-items: start; } .showcase-list-card, .showcase-benefits-panel article, .showcase-manage-card, .showcase-cover-preview, .showcase-public-preview { border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 24px; background: radial-gradient(circle at 12% 0%, rgba(27, 106, 255, 0.15), transparent 34%), linear-gradient(180deg, rgba(10, 18, 32, 0.98), rgba(5, 10, 19, 0.98)); color: white; box-shadow: 0 20px 46px rgba(0, 0, 0, 0.22); } .showcase-list-card, .showcase-benefits-panel article { padding: 16px; } .showcase-summary-strip { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 7px; margin-top: 12px; } .showcase-summary-strip span { display: grid; gap: 2px; min-height: 58px; padding: 9px 10px; border: 1px solid rgba(255, 255, 255, 0.075); border-radius: 14px; background: rgba(255, 255, 255, 0.035); color: rgba(235, 241, 255, 0.62); font-size: 0.72rem; } .showcase-summary-strip strong { color: white; font-size: 1.12rem; line-height: 1; } .showcase-tabs { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 7px; margin: 10px 0 12px; } .showcase-tabs button { min-height: 36px; padding: 0 8px; border-radius: 12px; font-size: 0.76rem; } .showcase-list, .showcase-benefits-panel { display: grid; gap: 10px; } .showcase-manage-card { overflow: hidden; border-radius: 20px; background: radial-gradient(circle at 0% 0%, rgba(45, 128, 255, 0.11), transparent 42%), rgba(255, 255, 255, 0.03); box-shadow: none; } .showcase-main-row { display: grid; grid-template-columns: 74px minmax(0, 1fr) auto; gap: 11px; align-items: start; width: 100%; padding: 12px; border: 0; background: transparent; color: white; font: inherit; text-align: left; cursor: pointer; } .showcase-main-row img { width: 74px; height: 74px; border-radius: 15px; object-fit: cover; } .showcase-main-row div { display: grid; gap: 5px; min-width: 0; } .showcase-main-row strong { overflow: hidden; color: white; font-size: 1rem; line-height: 1.1; text-overflow: ellipsis; white-space: nowrap; } .showcase-main-row small, .showcase-card-footer, .showcase-benefits-panel p { color: rgba(235, 241, 255, 0.62); } .showcase-main-row p { display: -webkit-box; margin: 0; overflow: hidden; color: rgba(235, 241, 255, 0.68); font-size: 0.82rem; line-height: 1.35; -webkit-box-orient: vertical; -webkit-line-clamp: 2; } .showcase-card-footer { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 10px 12px 12px; border-top: 1px solid rgba(255, 255, 255, 0.065); font-size: 0.78rem; } .showcase-card-footer div { display: flex; gap: 7px; flex-wrap: wrap; justify-content: flex-end; } .showcase-card-footer button, .showcase-card-footer .button { min-height: 32px; padding: 0 10px; border: 1px solid rgba(255, 255, 255, 0.09); border-radius: 11px; background: rgba(255, 255, 255, 0.045); color: rgba(235, 241, 255, 0.82); font: inherit; font-size: 0.72rem; font-weight: 850; cursor: pointer; } .showcase-card-footer button:last-child { color: #ffb4b4; } .showcase-wizard-modal { width: min(100%, 820px); } .showcase-progress { grid-template-columns: repeat(6, minmax(0, 1fr)); } .showcase-actions { grid-template-columns: repeat(3, minmax(0, 1fr)); } .showcase-actions .button { min-height: 44px; border-radius: 999px; } .showcase-actions .button-secondary { background: rgba(255, 255, 255, 0.055); color: rgba(235, 241, 255, 0.9); } .showcase-actions .button-primary { box-shadow: 0 14px 28px rgba(12, 91, 239, 0.24); } .showcase-cover-mode-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .showcase-cover-picker { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; } .showcase-cover-picker button { position: relative; display: grid; gap: 6px; padding: 7px; border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 16px; background: rgba(255, 255, 255, 0.04); color: white; font: inherit; text-align: left; cursor: pointer; } .showcase-cover-picker button.is-selected { border-color: rgba(45, 128, 255, 0.8); background: rgba(45, 128, 255, 0.16); box-shadow: inset 0 0 0 1px rgba(45, 128, 255, 0.28); } .showcase-cover-picker img { width: 100%; aspect-ratio: 1 / 0.62; border-radius: 12px; object-fit: cover; } .showcase-cover-picker span { display: -webkit-box; overflow: hidden; color: rgba(235, 241, 255, 0.72); font-size: 0.74rem; line-height: 1.1; -webkit-box-orient: vertical; -webkit-line-clamp: 2; } .showcase-cover-preview { display: grid; gap: 10px; padding: 10px; } .showcase-cover-preview img { width: 100%; aspect-ratio: 1 / 0.58; border-radius: 17px; object-fit: cover; } .showcase-cover-preview div { display: flex; justify-content: space-between; gap: 10px; color: rgba(235, 241, 255, 0.68); } .showcase-work-picker-actions { display: flex; align-items: center; justify-content: space-between; gap: 10px; color: rgba(235, 241, 255, 0.68); font-size: 0.82rem; } .showcase-work-picker-actions button { min-height: 32px; padding: 0 11px; border: 1px solid rgba(45, 128, 255, 0.28); border-radius: 999px; background: rgba(45, 128, 255, 0.1); color: #a9d0ff; font: inherit; font-size: 0.76rem; font-weight: 850; cursor: pointer; } .showcase-work-picker, .showcase-order-list { display: grid; gap: 8px; } .showcase-work-picker button, .showcase-order-list article { display: grid; grid-template-columns: 44px minmax(0, 1fr) auto; gap: 9px; align-items: center; padding: 8px; border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 15px; background: rgba(255, 255, 255, 0.04); color: white; font: inherit; text-align: left; } .showcase-work-picker button { cursor: pointer; } .showcase-work-picker button.is-selected, .showcase-order-list article.is-featured { border-color: rgba(45, 128, 255, 0.72); background: rgba(45, 128, 255, 0.16); } .showcase-work-picker img, .showcase-order-list img { width: 44px; height: 44px; border-radius: 11px; object-fit: cover; } .showcase-work-picker div, .showcase-order-list div { display: grid; gap: 3px; min-width: 0; } .showcase-work-picker strong, .showcase-order-list strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .showcase-work-picker span, .showcase-order-list small { color: rgba(235, 241, 255, 0.58); font-size: 0.72rem; } .showcase-order-list article { grid-template-columns: 24px 44px minmax(0, 1fr) auto; } .showcase-order-actions { display: flex; align-items: center; justify-content: flex-end; gap: 6px; } .showcase-order-actions button { display: inline-grid; place-items: center; min-width: 32px; min-height: 30px; padding: 0 9px; border: 1px solid rgba(255, 255, 255, 0.09); border-radius: 999px; background: rgba(255, 255, 255, 0.045); color: rgba(235, 241, 255, 0.78); font: inherit; font-size: 0.78rem; font-weight: 850; cursor: pointer; } .showcase-order-actions .showcase-feature-button { min-width: 86px; border-color: rgba(255, 202, 69, 0.22); background: rgba(255, 202, 69, 0.08); color: #ffe49b; font-size: 0.68rem; } .showcase-order-list article.is-featured .showcase-feature-button { border-color: rgba(255, 202, 69, 0.42); background: rgba(255, 202, 69, 0.16); color: #ffcf57; } .showcase-public-preview { display: grid; gap: 10px; padding: 10px; } .showcase-public-cover { display: grid; align-content: end; min-height: 180px; padding: 16px; border-radius: 18px; background-size: cover; background-position: center; overflow: hidden; position: relative; } .showcase-public-cover::before { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 20%, rgba(3, 8, 18, 0.88) 100%); } .showcase-public-cover strong, .showcase-public-cover span { position: relative; z-index: 1; } .showcase-preview-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 7px; } .showcase-preview-grid img { width: 100%; aspect-ratio: 1 / 0.78; border-radius: 12px; object-fit: cover; } .showcase-public-page { width: min(100%, 980px); } .showcase-public-phone { width: min(100%, 430px); margin: 0 auto; overflow: hidden; border: 1px solid rgba(255, 255, 255, 0.1); border-radius: 32px; background: linear-gradient(180deg, rgba(6, 13, 25, 0.96), rgba(3, 8, 18, 0.99)); box-shadow: 0 26px 70px rgba(0, 0, 0, 0.42); } .showcase-public-hero { position: relative; display: grid; align-content: end; min-height: 310px; padding: 18px; background-size: cover; background-position: center; } .showcase-public-hero::before { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(3, 8, 18, 0.22) 0%, rgba(3, 8, 18, 0.92) 100%), radial-gradient(circle at 20% 0%, rgba(45, 128, 255, 0.18), transparent 36%); } .showcase-public-hero > div:not(.maker-public-top-actions) { position: relative; z-index: 1; display: grid; gap: 8px; } .showcase-public-hero h1, .showcase-public-hero p { margin: 0; } .showcase-public-hero h1 { font-size: clamp(1.8rem, 8vw, 2.6rem); line-height: 1; letter-spacing: -0.04em; } .showcase-public-hero p { color: rgba(235, 241, 255, 0.72); line-height: 1.45; } .showcase-public-stats { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 7px; padding: 12px; } .showcase-public-stats article { display: grid; place-items: center; gap: 3px; min-height: 64px; border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 14px; background: rgba(255, 255, 255, 0.035); } .showcase-public-stats strong { color: white; } .showcase-public-stats span { color: rgba(235, 241, 255, 0.56); font-size: 0.68rem; } .showcase-featured-work { display: grid; grid-template-columns: 68px minmax(0, 1fr) auto; gap: 10px; align-items: center; padding: 8px; border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 16px; background: rgba(255, 255, 255, 0.04); color: white; } .showcase-featured-work img { width: 68px; height: 68px; border-radius: 13px; object-fit: cover; } .showcase-featured-work div { display: grid; gap: 4px; min-width: 0; } .showcase-featured-work span { color: rgba(235, 241, 255, 0.58); font-size: 0.76rem; } .showcase-public-work-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; } .showcase-public-work-grid a { display: grid; gap: 6px; min-width: 0; padding: 7px; border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 14px; background: rgba(255, 255, 255, 0.035); color: white; } .showcase-public-work-grid img { width: 100%; aspect-ratio: 1 / 1; border-radius: 10px; object-fit: cover; } .showcase-public-work-grid strong { display: -webkit-box; min-height: 2.2em; overflow: hidden; font-size: 0.78rem; line-height: 1.1; -webkit-box-orient: vertical; -webkit-line-clamp: 2; } .showcase-public-work-grid span { color: rgba(235, 241, 255, 0.6); font-size: 0.68rem; } .location-workspace { display: grid; grid-template-columns: minmax(0, 760px) minmax(240px, 300px); gap: 14px; align-items: start; } .location-list-card, .location-benefits-panel article, .location-manage-card, .location-public-preview, .location-alert-card, .location-map-card, .location-privacy-preview, .location-hours-card { border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 24px; background: radial-gradient(circle at 12% 0%, rgba(27, 106, 255, 0.15), transparent 34%), linear-gradient(180deg, rgba(10, 18, 32, 0.98), rgba(5, 10, 19, 0.98)); color: white; box-shadow: 0 20px 46px rgba(0, 0, 0, 0.22); } .location-list-card, .location-benefits-panel article { padding: 16px; } .workspace-section-locations .workspace-header { padding: 12px; } .workspace-section-locations .workspace-header .muted { font-size: 0.88rem; line-height: 1.35; } .location-new-button { width: 100%; margin: 12px 0; } .location-list, .location-benefits-panel, .location-choice-list, .location-toggle-list, .location-search-modes { display: grid; gap: 10px; } .location-manage-card { overflow: hidden; border-radius: 20px; background: radial-gradient(circle at 0% 0%, rgba(45, 128, 255, 0.11), transparent 42%), rgba(255, 255, 255, 0.03); box-shadow: none; } .location-manage-card.is-muted { opacity: 0.78; } .location-main-row { display: grid; grid-template-columns: 48px minmax(0, 1fr) auto; gap: 11px; align-items: start; width: 100%; padding: 12px; border: 0; background: transparent; color: white; font: inherit; text-align: left; cursor: pointer; } .location-avatar { display: grid; place-items: center; width: 48px; height: 48px; border: 1px solid rgba(45, 128, 255, 0.34); border-radius: 16px; background: linear-gradient(145deg, rgba(45, 128, 255, 0.28), rgba(14, 28, 54, 0.92)); color: #a9d9ff; font-size: 0.72rem; font-weight: 950; letter-spacing: 0.06em; } .location-main-row div { display: grid; gap: 5px; min-width: 0; } .location-main-row strong, .location-public-preview strong, .location-search-modes strong { overflow: hidden; color: white; font-size: 0.98rem; line-height: 1.05; text-overflow: ellipsis; white-space: nowrap; } .location-main-row small, .location-main-row p, .location-public-preview span, .location-public-preview small, .location-search-modes span, .location-benefits-panel p { color: rgba(235, 241, 255, 0.62); font-size: 0.76rem; line-height: 1.35; } .location-main-row p { margin: 0; } .location-card-footer { display: flex; align-items: center; justify-content: flex-end; gap: 8px; padding: 0 12px 12px; } .location-card-footer button { min-height: 34px; padding: 0 12px; border: 1px solid rgba(255, 255, 255, 0.09); border-radius: 999px; background: rgba(255, 255, 255, 0.045); color: rgba(235, 241, 255, 0.74); font: inherit; font-size: 0.72rem; font-weight: 850; } .location-card-footer button:last-child { color: #ffb8b8; } .location-choice-list button, .location-toggle-list button, .location-search-modes div { display: grid; gap: 4px; width: 100%; padding: 12px; border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 16px; background: rgba(255, 255, 255, 0.045); color: white; font: inherit; text-align: left; } .location-choice-list button.is-selected, .location-toggle-list button.is-selected { border-color: rgba(45, 128, 255, 0.72); background: linear-gradient(135deg, rgba(27, 106, 255, 0.94), rgba(20, 92, 222, 0.78)); box-shadow: 0 12px 26px rgba(27, 106, 255, 0.22); } .location-choice-list span, .location-toggle-list span { font-weight: 900; } .location-choice-list small, .location-toggle-list small { color: rgba(235, 241, 255, 0.62); font-size: 0.72rem; line-height: 1.25; } .location-map-card, .location-privacy-preview, .location-alert-card { display: grid; gap: 8px; padding: 14px; box-shadow: none; } .location-map-card { position: relative; min-height: 136px; overflow: hidden; place-items: center; text-align: center; background: linear-gradient(rgba(255, 255, 255, 0.035) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, 0.035) 1px, transparent 1px), radial-gradient(circle at 50% 45%, rgba(45, 128, 255, 0.28), transparent 28%), #091426; background-size: 34px 34px, 34px 34px, auto, auto; } .location-map-pin { display: inline-grid; place-items: center; width: 18px; height: 18px; border: 3px solid white; border-radius: 999px; background: #1f7aff; box-shadow: 0 0 0 12px rgba(31, 122, 255, 0.16), 0 0 34px rgba(31, 122, 255, 0.42); } .location-privacy-preview span { display: block; width: 100%; height: 128px; border: 1px solid rgba(45, 128, 255, 0.34); border-radius: 18px; background: radial-gradient(circle at 50% 50%, rgba(45, 128, 255, 0.18), transparent 34%), linear-gradient(rgba(255, 255, 255, 0.04) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, 0.04) 1px, transparent 1px), #0a1528; background-size: auto, 28px 28px, 28px 28px, auto; } .location-privacy-preview.is-exact span { background: radial-gradient(circle at 50% 50%, rgba(45, 128, 255, 0.58) 0 7px, rgba(45, 128, 255, 0.12) 8px 18px, transparent 19px), #0a1528; } .location-privacy-preview.is-city span { background: radial-gradient(circle at 50% 50%, rgba(45, 128, 255, 0.18), transparent 48%), #0a1528; } .location-public-preview { display: grid; grid-template-columns: 96px minmax(0, 1fr); gap: 12px; align-items: center; padding: 12px; box-shadow: none; } .location-mini-map { position: relative; display: grid; place-items: center; min-height: 86px; overflow: hidden; border-radius: 18px; background: linear-gradient(rgba(255, 255, 255, 0.05) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, 0.05) 1px, transparent 1px), #0a1528; background-size: 22px 22px; } .location-mini-map .location-map-pin { position: absolute; transform: translate(-50%, -50%); } .location-mini-map .location-map-pin.is-draft { opacity: 0.52; filter: grayscale(0.6); } .location-coverage-ring { position: absolute; width: 62px; height: 62px; border: 2px solid rgba(31, 122, 255, 0.72); border-radius: 999px; background: rgba(31, 122, 255, 0.1); } .location-preview-grid, .location-hours-card { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; } .location-preview-grid span, .location-hours-card span, .location-hours-card strong { padding: 10px; border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 14px; background: rgba(255, 255, 255, 0.04); color: rgba(235, 241, 255, 0.66); font-size: 0.76rem; } .location-preview-grid strong, .location-hours-card strong { color: white; } .location-wizard-modal { width: min(100%, 820px); } .location-progress { grid-template-columns: repeat(8, minmax(0, 1fr)); } .location-actions { grid-template-columns: repeat(3, minmax(0, 1fr)); } .location-actions .button { min-height: 44px; } @media (max-width: 1180px) { .publish-workspace { grid-template-columns: minmax(260px, 0.9fr) minmax(360px, 1.1fr); } .service-workspace { grid-template-columns: minmax(0, 1fr); } .showcase-workspace { grid-template-columns: minmax(0, 1fr); } .location-workspace { grid-template-columns: minmax(0, 1fr); } .subscription-workspace { grid-template-columns: minmax(0, 1fr); } .account-settings-workspace { grid-template-columns: repeat(2, minmax(0, 1fr)); } .publish-side-panel { grid-column: 1 / -1; grid-template-columns: repeat(2, minmax(0, 1fr)); } } @media (max-width: 820px) { .publish-workspace { grid-template-columns: 1fr; } .publish-wizard-modal { grid-template-columns: minmax(0, 1fr); width: min(100%, 460px); max-height: 92svh; } .service-benefits-panel, .service-side-panel, .showcase-benefits-panel, .showcase-side-panel, .location-benefits-panel, .location-side-panel { display: none; } .workspace-header { display: grid; } .workspace-header-actions { justify-content: stretch; } .workspace-header-actions .button { width: 100%; } .publish-side-panel { display: none; } .publish-step-card { min-height: auto; } .publish-wizard-head { grid-template-columns: 40px minmax(0, 1fr) auto; } .publish-choice-grid, .workspace-theme .publish-step-card .workspace-form-grid { grid-template-columns: 1fr; } .service-preview-stats { grid-template-columns: 1fr; } .service-summary-strip, .service-tabs, .showcase-summary-strip, .showcase-tabs, .location-summary-strip { grid-template-columns: repeat(3, minmax(0, 1fr)); } } @media (max-width: 520px) { .publish-work-list, .publish-wizard, .publish-step-card { border-radius: 20px; padding: 13px; } .publish-photo-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .publish-actions { position: sticky; bottom: calc(10px + env(safe-area-inset-bottom, 0px)); z-index: 8; padding: 8px; border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 16px; background: rgba(5, 10, 19, 0.88); backdrop-filter: blur(16px); } .service-list-card { padding: 12px; border-radius: 20px; } .showcase-list-card { padding: 12px; border-radius: 20px; } .location-list-card { padding: 12px; border-radius: 20px; } .workspace-main-card.workspace-section-services, .workspace-main-card.workspace-section-showcases, .workspace-main-card.workspace-section-locations, .workspace-main-card.workspace-section-profile, .workspace-main-card.workspace-section-reviews, .workspace-main-card.workspace-section-subscription, .workspace-main-card.workspace-section-settings { gap: 12px; } .workspace-section-services .workspace-header, .workspace-section-showcases .workspace-header, .workspace-section-locations .workspace-header, .workspace-section-profile .workspace-header, .workspace-section-reviews .workspace-header, .workspace-section-subscription .workspace-header, .workspace-section-settings .workspace-header { gap: 10px; padding: 12px; border-radius: 22px; } .workspace-section-services .workspace-header .stack, .workspace-section-showcases .workspace-header .stack, .workspace-section-locations .workspace-header .stack, .workspace-section-profile .workspace-header .stack, .workspace-section-reviews .workspace-header .stack, .workspace-section-subscription .workspace-header .stack, .workspace-section-settings .workspace-header .stack { gap: 4px !important; } .workspace-section-services .workspace-header .muted, .workspace-section-showcases .workspace-header .muted, .workspace-section-locations .workspace-header .muted, .workspace-section-profile .workspace-header .muted, .workspace-section-reviews .workspace-header .muted, .workspace-section-subscription .workspace-header .muted, .workspace-section-settings .workspace-header .muted { display: none; } .workspace-section-services .workspace-header-actions .button, .workspace-section-showcases .workspace-header-actions .button, .workspace-section-locations .workspace-header-actions .button, .workspace-section-profile .workspace-header-actions .button, .workspace-section-reviews .workspace-header-actions .button, .workspace-section-subscription .workspace-header-actions .button, .workspace-section-settings .workspace-header-actions .button { min-height: 42px; } .profile-logo-editor, .profile-social-grid, .profile-save-row { grid-template-columns: 1fr; } .profile-logo-editor { align-items: start; } .profile-upload-button { width: 100%; } .reviews-workspace, .subscription-workspace, .account-settings-workspace, .reviews-hero-card, .reviews-kpi-grid, .reviews-aspect-grid, .subscription-hero-card, .subscription-check-grid, .subscription-benefit-list, .subscription-form-grid, .subscription-readonly-grid, .subscription-action-row, .subscription-plan-card, .subscription-payment-card, .subscription-preview-card, .subscription-support-grid { grid-template-columns: 1fr; } .account-settings-summary, .account-diagnostic-card { grid-column: span 1; } .account-settings-card { padding: 12px; border-radius: 20px; } .account-activity-grid, .account-quick-list, .account-settings-form, .account-notification-summary, .account-channel-grid, .account-theme-grid, .account-diagnostic-list { grid-template-columns: 1fr; } .account-identity-row, .account-maker-mini, .account-avatar-editor, .account-client-preview, .account-diagnostic-layout { grid-template-columns: 1fr; justify-items: start; } .account-security-list div, .account-linked-list div, .account-blocked-list div { grid-template-columns: 1fr; } .subscription-state-panel { position: static; } .subscription-ring { width: 82px; height: 82px; } .subscription-ring strong { font-size: 1.08rem; } .subscription-billing-modal { width: min(100%, 520px); } .subscription-billing-list div { grid-template-columns: 1fr auto; } .subscription-billing-list strong, .subscription-billing-list small { grid-column: 1 / -1; } .reviews-score-block { justify-items: start; } .reviews-breakdown div { grid-template-columns: 74px minmax(0, 1fr) 22px; } .reviews-filter-pills { justify-content: flex-start; } .service-list-card > .split { align-items: center; } .service-list-card > .split .section-title { font-size: 1.12rem; } .service-list-card > .split .publish-count-text { font-size: 0.78rem; } .service-summary-strip { gap: 6px; margin-top: 10px; } .service-summary-strip span { min-height: 48px; padding: 7px 8px; border-radius: 12px; font-size: 0.65rem; } .service-summary-strip strong { font-size: 1rem; } .service-tabs { gap: 6px; margin: 8px 0 10px; } .service-tabs button { min-height: 34px; padding: 0 6px; font-size: 0.68rem; } .showcase-summary-strip { gap: 6px; margin-top: 10px; } .showcase-summary-strip span { min-height: 48px; padding: 7px 8px; border-radius: 12px; font-size: 0.65rem; } .showcase-summary-strip strong { font-size: 1rem; } .showcase-tabs { gap: 6px; margin: 8px 0 10px; } .showcase-tabs button { min-height: 34px; padding: 0 6px; font-size: 0.68rem; } .service-main-row { grid-template-columns: 44px minmax(0, 1fr); gap: 9px; padding: 10px; } .service-main-row .status-pill { grid-column: 1 / -1; justify-self: start; } .service-card-footer { align-items: stretch; flex-direction: column; } .service-card-footer div { justify-content: stretch; } .service-card-footer button, .service-card-footer .button { flex: 1; } .showcase-main-row { grid-template-columns: 64px minmax(0, 1fr); gap: 9px; padding: 10px; } .showcase-main-row img { width: 64px; height: 64px; } .showcase-main-row .status-pill { grid-column: 1 / -1; justify-self: start; } .showcase-card-footer { align-items: stretch; flex-direction: column; } .showcase-card-footer div { justify-content: stretch; } .showcase-card-footer button, .showcase-card-footer .button { flex: 1; } .location-main-row { grid-template-columns: 44px minmax(0, 1fr); gap: 9px; padding: 10px; } .location-main-row .status-pill { grid-column: 1 / -1; justify-self: start; } .location-actions { grid-template-columns: 1fr; gap: 7px; } .location-actions .button { width: 100%; min-height: 42px; } .location-public-preview { grid-template-columns: 82px minmax(0, 1fr); } .location-preview-grid, .location-hours-card { grid-template-columns: 1fr; } .showcase-order-list article { grid-template-columns: 22px 42px minmax(0, 1fr); } .showcase-order-actions { grid-column: 1 / -1; justify-content: stretch; } .showcase-order-actions button { flex: 0 0 42px; } .showcase-order-actions .showcase-feature-button { flex: 1; } .showcase-actions { grid-template-columns: 1fr; gap: 7px; } .showcase-actions .button { width: 100%; min-height: 42px; } .showcase-cover-mode-grid { grid-template-columns: 1fr 1fr; } .showcase-cover-picker { grid-template-columns: repeat(2, minmax(0, 1fr)); } .maker-dashboard-greeting, .maker-opportunity { grid-template-columns: 1fr; } .maker-dashboard-greeting { align-items: stretch; flex-direction: column; } .maker-dashboard-actions { justify-content: stretch; } .maker-dashboard-actions .button { flex: 1; } .maker-week-grid, .maker-performance-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .maker-top-work-list a { grid-template-columns: 48px minmax(0, 1fr); } .maker-top-work-list b { grid-column: 2; justify-self: start; } } @media (max-width: 900px) { .maker-dashboard { grid-template-columns: 1fr; } .maker-inbox-grid { grid-template-columns: 1fr; } .maker-dashboard-side { position: static; } .maker-dashboard-two, .maker-attention-grid { grid-template-columns: 1fr; } } @media (min-width: 900px) { .maker-public-page, .work-detail-page { width: min(100%, 980px); } .maker-public-phone, .work-detail-phone { width: min(100%, 430px); margin: 0 auto; } .maker-public-bottom-cta, .work-detail-bottom-cta { bottom: 24px; } } @media (max-width: 720px) { .maker-public-page, .work-detail-page { padding: 0 0 176px; } .maker-public-phone, .work-detail-phone { border: none; border-radius: 0; box-shadow: none; } .maker-public-hero, .work-detail-hero, .maker-public-hero img, .work-detail-hero img { min-height: 292px; } .maker-public-stats, .work-detail-feature-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); } } .admin-shell { display: grid; grid-template-columns: 220px minmax(0, 1fr); gap: 12px; min-height: calc(100vh - 36px); color: #eef5ff; font-size: 0.82rem; } .admin-sidebar, .admin-main, .admin-panel, .admin-section-hero, .admin-mobile-title { border: 1px solid rgba(117, 174, 255, 0.12); background: radial-gradient(circle at 18% 0%, rgba(30, 105, 255, 0.11), transparent 32%), linear-gradient(180deg, rgba(8, 15, 27, 0.98), rgba(4, 10, 18, 0.98)); box-shadow: 0 18px 42px rgba(0, 0, 0, 0.22); } .admin-sidebar { position: sticky; top: 12px; display: grid; align-content: start; gap: 12px; max-height: calc(100vh - 24px); overflow: auto; padding: 12px; border-radius: 20px; scrollbar-width: thin; } .admin-brand { display: grid; grid-template-columns: 36px minmax(0, 1fr); gap: 9px; align-items: center; padding: 4px 2px 10px; } .admin-logo, .admin-avatar, .admin-maker-avatar { display: inline-grid; place-items: center; border: 1px solid rgba(66, 144, 255, 0.38); background: linear-gradient(135deg, rgba(14, 73, 174, 0.95), rgba(6, 13, 27, 0.95)); color: white; font-weight: 950; } .admin-logo { width: 36px; height: 36px; border-radius: 12px; font-size: 0.68rem; } .admin-brand strong, .admin-user strong, .admin-list-row strong, .admin-panel h2, .admin-panel h3, .admin-section-hero h1, .admin-hero-row h1 { color: white; } .admin-brand span, .admin-user small, .admin-panel small, .admin-section-hero p, .admin-hero-row p, .admin-list-row small, .admin-platform-list span, .admin-payment-meta span, .admin-review-card p, .admin-incident-card p, .admin-audit-list p { color: rgba(225, 235, 255, 0.62); } .admin-brand div, .admin-user div { display: grid; gap: 2px; min-width: 0; } .admin-brand span { font-size: 0.7rem; font-weight: 900; letter-spacing: 0.08em; text-transform: uppercase; } .admin-nav, .admin-nav-group, .admin-main, .admin-panel, .admin-side-stack, .admin-action-list, .admin-audit-list, .admin-system-list, .admin-payment-table, .admin-platform-list, .admin-work-list { display: grid; gap: 8px; } .admin-nav-group > span { display: block; margin: 8px 4px 2px; color: rgba(126, 188, 255, 0.86); font-size: 0.62rem; font-weight: 950; letter-spacing: 0.12em; text-transform: uppercase; } .admin-nav-item { display: flex; align-items: center; justify-content: space-between; min-height: 31px; padding: 0 9px; border-radius: 9px; color: rgba(225, 235, 255, 0.72); font-size: 0.72rem; font-weight: 780; text-decoration: none; } .admin-nav-item:hover, .admin-nav-item.active { color: white; background: linear-gradient(135deg, rgba(35, 112, 255, 0.88), rgba(12, 66, 164, 0.68)); } .admin-nav-item b, .admin-icon-button, .admin-badge, .admin-chip-row span { border-radius: 999px; font-weight: 900; } .admin-nav-item b { padding: 2px 7px; background: #ff3d4f; color: white; font-size: 0.62rem; } .admin-collapse { min-height: 36px; margin-top: 8px; border: 1px solid rgba(255, 255, 255, 0.1); border-radius: 13px; background: rgba(255, 255, 255, 0.045); color: rgba(235, 241, 255, 0.84); font: inherit; font-weight: 850; cursor: pointer; } .admin-main { padding: 12px; border-radius: 22px; } .admin-topbar { position: sticky; top: 0; z-index: 20; display: grid; grid-template-columns: minmax(280px, 1fr) auto auto auto; gap: 10px; align-items: center; min-height: 44px; padding: 6px; border: 1px solid rgba(117, 174, 255, 0.1); border-radius: 16px; background: rgba(4, 10, 18, 0.86); backdrop-filter: blur(16px); } .admin-search { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 8px; align-items: center; min-height: 34px; padding: 0 10px; border: 1px solid rgba(255, 255, 255, 0.09); border-radius: 10px; background: rgba(255, 255, 255, 0.045); } .admin-search input { width: 100%; border: 0; outline: 0; background: transparent; color: white; font: inherit; } .admin-search kbd { padding: 2px 7px; border-radius: 6px; background: rgba(255, 255, 255, 0.08); color: rgba(225, 235, 255, 0.62); font-size: 0.66rem; } .admin-status-line, .admin-user, .admin-role-strip, .admin-chip-row, .admin-inline-actions, .admin-form-row, .admin-section-actions { display: flex; align-items: center; gap: 8px; } .admin-status-line { color: rgba(225, 235, 255, 0.82); font-size: 0.74rem; } .admin-dot, .admin-priority, .admin-catalog-icon { display: inline-block; flex: 0 0 auto; border-radius: 999px; } .admin-dot { width: 9px; height: 9px; } .admin-dot.success, .admin-change.success, .admin-system-list b.success, .admin-payment-table b.success { color: #45df87; } .admin-dot.success, .admin-priority.low, .admin-catalog-icon.success { background: #45df87; } .admin-dot.primary, .admin-priority.normal, .admin-catalog-icon.primary { background: #2d80ff; } .admin-icon-button { width: 34px; height: 34px; border: 1px solid rgba(255, 255, 255, 0.1); background: rgba(255, 255, 255, 0.045); color: white; cursor: pointer; } .admin-user { min-width: 148px; } .admin-user > span, .admin-avatar { width: 34px; height: 34px; border-radius: 50%; background: linear-gradient(135deg, #2655a6, #0d1830); color: white; font-size: 0.75rem; font-weight: 950; } .admin-mobile-title { display: none; } .admin-hero-row { display: flex; justify-content: space-between; gap: 12px; align-items: end; } .admin-hero-row h1, .admin-section-hero h1 { margin: 0; font-size: clamp(1.2rem, 2vw, 1.8rem); } .admin-role-strip { flex-wrap: wrap; justify-content: flex-end; } .admin-role-strip span { padding: 8px 10px; border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 999px; background: rgba(255, 255, 255, 0.045); color: rgba(225, 235, 255, 0.66); font-size: 0.72rem; } .admin-grid { display: grid; gap: 10px; } .admin-grid-top { grid-template-columns: repeat(4, minmax(0, 1fr)); } .admin-board { display: grid; grid-template-columns: minmax(280px, 1.05fr) minmax(420px, 1.6fr) minmax(250px, 0.8fr); gap: 10px; align-items: start; } .admin-board-left, .admin-grid-detail { display: grid; gap: 10px; grid-template-columns: 1fr 1fr; } .admin-grid-detail { grid-template-columns: 1.05fr 1.05fr 1.05fr 1fr; align-items: stretch; } .admin-section-grid { grid-template-columns: minmax(0, 1.35fr) minmax(280px, 0.75fr); } .admin-bottom-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 10px; } .admin-panel, .admin-section-hero { padding: 12px; border-radius: 15px; } .admin-section-hero { display: grid; grid-template-columns: minmax(0, 1fr) minmax(280px, 0.8fr); gap: 12px; align-items: center; padding: 18px; } .admin-panel-head { display: flex; align-items: center; justify-content: space-between; gap: 8px; } .admin-panel-head h2 { margin: 0; font-size: 0.96rem; } .admin-panel-head button { border: 0; background: transparent; color: #5f9dff; font: inherit; font-size: 0.68rem; font-weight: 850; cursor: pointer; } .admin-kpi { display: grid; grid-template-columns: 30px auto minmax(0, 1fr); gap: 9px; align-items: center; min-height: 86px; padding: 13px; border: 1px solid rgba(255, 255, 255, 0.07); border-radius: 14px; background: linear-gradient(135deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.018)); } .admin-kpi.danger { background: linear-gradient(135deg, rgba(255, 54, 79, 0.2), rgba(255, 255, 255, 0.018)); } .admin-kpi.warning { background: linear-gradient(135deg, rgba(255, 134, 47, 0.18), rgba(255, 255, 255, 0.018)); } .admin-kpi.primary { background: linear-gradient(135deg, rgba(45, 128, 255, 0.2), rgba(255, 255, 255, 0.018)); } .admin-kpi.gold { background: linear-gradient(135deg, rgba(255, 190, 70, 0.16), rgba(255, 255, 255, 0.018)); } .admin-kpi-icon { width: 28px; height: 28px; border-radius: 8px; background: linear-gradient(135deg, #2d80ff, #0c51c9); } .admin-kpi > strong { color: white; font-size: 1.45rem; } .admin-kpi b { display: block; color: white; } .admin-kpi small { display: block; margin-top: 2px; } .admin-work-list button, .admin-list-row, .admin-action-list button, .admin-catalog-grid button, .admin-table button, .admin-mini-queue div, .admin-system-list div, .admin-payment-table div, .admin-audit-list div, .admin-known-problem, .admin-review-decision, .admin-maker-status, .admin-payment-meta, .admin-incident-meta, .admin-metric { border: 1px solid rgba(255, 255, 255, 0.065); border-radius: 11px; background: rgba(255, 255, 255, 0.035); } .admin-work-list button { display: grid; grid-template-columns: 12px minmax(0, 1fr) auto auto; gap: 7px; align-items: center; width: 100%; padding: 10px; color: white; font: inherit; text-align: left; cursor: pointer; } .admin-work-list small { grid-column: 2 / 3; } .admin-work-list b, .admin-mini-queue b, .admin-badge { padding: 3px 7px; font-size: 0.62rem; text-transform: uppercase; } .admin-work-list em { color: rgba(225, 235, 255, 0.5); font-size: 0.66rem; font-style: normal; } .admin-priority { width: 8px; height: 8px; } .admin-priority.critical, .admin-priority.danger, .admin-catalog-icon.danger { background: #ff4158; } .admin-priority.high, .admin-priority.warning, .admin-catalog-icon.warning { background: #ff9f43; } .admin-platform-list div, .admin-system-list div, .admin-payment-table div, .admin-mini-queue div, .admin-audit-list div { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 8px; align-items: center; padding: 9px; } .admin-platform-list strong { color: white; font-size: 1.05rem; } .admin-change, .admin-system-list b, .admin-payment-table b { font-size: 0.68rem; } .admin-change.danger, .admin-system-list b.warning, .admin-payment-table b.danger { color: #ff8585; } .admin-tabs { display: flex; gap: 7px; overflow-x: auto; padding-bottom: 2px; } .admin-tabs button { flex: 0 0 auto; min-height: 30px; padding: 0 10px; border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 9px; background: rgba(255, 255, 255, 0.035); color: rgba(225, 235, 255, 0.72); font: inherit; font-size: 0.7rem; font-weight: 850; cursor: pointer; } .admin-tabs button.active { border-color: rgba(45, 128, 255, 0.72); background: rgba(45, 128, 255, 0.23); color: white; } .admin-table { overflow-x: auto; } .admin-table-head, .admin-table button { display: grid; grid-template-columns: 64px 72px 90px 1fr 110px 120px 62px; gap: 8px; min-width: 720px; align-items: center; } .admin-table-head { padding: 8px 9px; color: rgba(225, 235, 255, 0.48); font-size: 0.62rem; font-weight: 900; letter-spacing: 0.08em; text-transform: uppercase; } .admin-table button { width: 100%; margin-bottom: 6px; padding: 9px; color: rgba(225, 235, 255, 0.78); font: inherit; font-size: 0.72rem; text-align: left; cursor: pointer; } .admin-table button.active, .admin-table button:hover { border-color: rgba(45, 128, 255, 0.44); background: rgba(45, 128, 255, 0.11); } .admin-maker-head, .admin-review-head, .admin-list-row { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 10px; align-items: center; } .admin-maker-avatar { width: 58px; height: 58px; border-radius: 50%; } .admin-maker-head h3, .admin-review-head strong, .admin-subscription-card h3 { margin: 0; } .admin-chip-row { flex-wrap: wrap; margin-top: 6px; } .admin-chip-row span { padding: 5px 8px; border: 1px solid rgba(46, 220, 132, 0.18); background: rgba(46, 220, 132, 0.08); color: #80e7a8; font-size: 0.66rem; } .admin-select, .admin-form-row select, .admin-review-decision textarea { width: 100%; min-height: 36px; border: 1px solid rgba(255, 255, 255, 0.09); border-radius: 10px; background: rgba(255, 255, 255, 0.055); color: white; font: inherit; } .admin-select, .admin-form-row select { padding: 0 10px; } .admin-form-row { align-items: stretch; } .admin-form-row label { display: grid; flex: 1; gap: 5px; color: rgba(225, 235, 255, 0.62); font-size: 0.7rem; font-weight: 850; } .admin-insight-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; } .admin-metric { display: grid; gap: 3px; padding: 10px; } .admin-metric strong { color: white; font-size: 1.08rem; } .admin-maker-status { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; padding: 10px; } .admin-maker-status div { display: grid; gap: 3px; } .admin-maker-status span { color: rgba(225, 235, 255, 0.52); font-size: 0.68rem; } .admin-inline-actions { flex-wrap: wrap; } .admin-inline-actions.vertical { display: grid; } .admin-inline-actions button, .admin-action-list button, .admin-action-button, .admin-list-row button { min-height: 34px; border: 1px solid rgba(45, 128, 255, 0.25); border-radius: 10px; background: rgba(45, 128, 255, 0.14); color: #9cc2ff; font: inherit; font-size: 0.72rem; font-weight: 900; cursor: pointer; } .admin-inline-actions button { flex: 1; padding: 0 10px; } .admin-inline-actions button.danger, .admin-action-list button.danger, .admin-action-button.danger, .admin-list-row button { border-color: rgba(255, 65, 88, 0.25); background: rgba(255, 65, 88, 0.12); color: #ff9aa7; } .admin-action-list button, .admin-action-button, .admin-catalog-grid button { display: grid; gap: 5px; padding: 11px; text-align: left; } .admin-action-button.success, .admin-action-list button.success { border-color: rgba(46, 220, 132, 0.25); background: rgba(46, 220, 132, 0.1); color: #97efbb; } .admin-action-button.warning, .admin-action-list button.warning { border-color: rgba(255, 166, 72, 0.25); background: rgba(255, 166, 72, 0.1); color: #ffcc8b; } .admin-action-list span, .admin-action-button span { color: rgba(225, 235, 255, 0.58); font-size: 0.68rem; line-height: 1.35; } .admin-review-card p, .admin-incident-card p { margin: 0; line-height: 1.5; } .admin-evidence-strip { display: grid; grid-template-columns: repeat(3, 1fr); gap: 7px; } .admin-evidence-strip img { width: 100%; aspect-ratio: 1 / 0.72; border-radius: 9px; object-fit: cover; background: rgba(255, 255, 255, 0.04); } .admin-badge.danger, .admin-mini-queue b.danger { background: rgba(255, 65, 88, 0.15); color: #ff8d9b; } .admin-mini-queue b.warning { background: rgba(255, 166, 72, 0.13); color: #ffcc8b; } .admin-mini-queue b.normal { background: rgba(45, 128, 255, 0.12); color: #9cc2ff; } .admin-review-decision { display: grid; gap: 7px; padding: 10px; } .admin-review-decision label { display: flex; align-items: center; gap: 7px; color: rgba(225, 235, 255, 0.76); } .admin-review-decision textarea { min-height: 74px; padding: 10px; resize: vertical; } .admin-review-decision button { min-height: 36px; border: 0; border-radius: 10px; background: linear-gradient(135deg, #2d80ff, #0c57d8); color: white; font: inherit; font-weight: 900; cursor: pointer; } .admin-incident-meta, .admin-payment-meta { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; padding: 10px; } .admin-payment-meta { grid-template-columns: 1fr 1fr; } .admin-payment-table div { grid-template-columns: 84px minmax(0, 1fr) 70px 58px; } .admin-known-problem { display: grid; gap: 5px; padding: 10px; } .admin-known-problem b { justify-self: start; padding: 4px 8px; border-radius: 999px; background: rgba(255, 190, 70, 0.14); color: #ffd27f; font-size: 0.68rem; } .admin-alert { padding: 10px; border-radius: 12px; color: #ffb4b4; background: rgba(255, 65, 88, 0.12); } .admin-catalog-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; } .admin-catalog-grid button { grid-template-columns: 34px minmax(0, 1fr) auto; align-items: center; color: white; font: inherit; cursor: pointer; } .admin-catalog-grid small { grid-column: 2 / 3; } .admin-catalog-grid b { grid-row: 1 / span 2; grid-column: 3; color: rgba(225, 235, 255, 0.68); font-size: 0.7rem; } .admin-catalog-icon { grid-row: 1 / span 2; width: 28px; height: 28px; } @media (max-width: 1180px) { .admin-shell { grid-template-columns: 1fr; } .admin-sidebar { position: static; max-height: none; } .admin-board, .admin-grid-detail, .admin-section-grid, .admin-bottom-grid { grid-template-columns: 1fr; } .admin-board-left { grid-template-columns: 1fr; } } @media (max-width: 720px) { .ops-page { padding: 0 0 104px; } .admin-shell { min-height: auto; gap: 10px; font-size: 0.78rem; } .admin-sidebar { max-height: 260px; border-radius: 0 0 22px 22px; } .admin-topbar { grid-template-columns: 1fr; position: static; } .admin-status-line, .admin-icon-button, .admin-user { display: none; } .admin-mobile-title { display: grid; grid-template-columns: 44px minmax(0, 1fr); gap: 10px; align-items: center; padding: 10px; border-radius: 18px; } .admin-main { padding: 10px; border-radius: 0; } .admin-hero-row, .admin-section-hero { align-items: stretch; grid-template-columns: 1fr; flex-direction: column; } .admin-grid-top, .admin-insight-grid, .admin-maker-status, .admin-incident-meta, .admin-payment-meta, .admin-catalog-grid, .admin-form-row { grid-template-columns: 1fr; } .admin-section-actions { flex-direction: column; align-items: stretch; } .admin-kpi { min-height: 72px; } .admin-table-head, .admin-table button { min-width: 680px; } .admin-panel, .admin-section-hero { border-radius: 18px; } }