/
alexware
/
InnerQuest
Обзор
Документация
Войти
/
alexware
/
InnerQuest
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
styles/main.css
740 строк
19 KB
alexeyk222
Изменить систему хранения файлов проекта
31 дек 2025, 01:39
31 дек 2025, 01:39
49a670a
Код
Авторство
О чём код?
:root{ --bg: #0b0f1a; --bg2:#0a1426; --panel: rgba(255,255,255,0.06); --panel2: rgba(255,255,255,0.08); --stroke: rgba(255,255,255,0.10); --stroke2: rgba(255,255,255,0.16); --text: rgba(255,255,255,0.92); --muted: rgba(255,255,255,0.68); --muted2: rgba(255,255,255,0.52); --shadow: 0 24px 80px rgba(0,0,0,0.55); --shadow2: 0 12px 40px rgba(0,0,0,0.45); --r: 18px; --r2: 14px; --gap: 14px; --oasis: #6ee7b7; --citadel:#fbbf24; --arsenal:#f97316; --forum:#60a5fa; --garden:#a78bfa; --common:#b9c2ff; --rare:#67e8f9; --epic:#c084fc; --legendary:#f59e0b; --hazard:#fb7185; } *{ box-sizing:border-box; } html,body{ height:100%; } body{ margin:0; font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Arial, "Apple Color Emoji", "Segoe UI Emoji"; color:var(--text); background: radial-gradient(1200px 700px at 20% 0%, rgba(167,139,250,0.18), transparent 60%), radial-gradient(900px 600px at 90% 10%, rgba(96,165,250,0.16), transparent 55%), radial-gradient(700px 500px at 50% 95%, rgba(110,231,183,0.12), transparent 55%), linear-gradient(180deg, var(--bg), var(--bg2)); overflow-x:hidden; } /* Subtle city-map backdrop for the whole app */ body::before{ content:""; position:fixed; inset:-24px; background: url("../assets/img/city_map.jpg") center/cover no-repeat; opacity: 0.10; filter: blur(4px) saturate(1.1); transform: scale(1.03); pointer-events:none; z-index:0; } .app{ position:relative; z-index:1; } .app{ min-height:100%; } .screen{ display:none; min-height:100vh; padding:24px; } .screen--active{ display:block; } .panel{ background: var(--panel); border: 1px solid var(--stroke); border-radius: var(--r); box-shadow: var(--shadow2); backdrop-filter: blur(12px); } .panel__head{ padding:16px 16px 0 16px; } .panel__head h2{ margin:0 0 6px 0; font-size:16px; letter-spacing:0.2px; } .muted{ color:var(--muted); } .small{ font-size:12px; } .divider{ width:1px; height:20px; background:var(--stroke); margin:0 12px; } .btn{ border:1px solid var(--stroke2); background: rgba(255,255,255,0.06); color:var(--text); border-radius: 14px; padding: 10px 14px; cursor:pointer; transition: transform .12s ease, background .12s ease, border-color .12s ease, box-shadow .12s ease; box-shadow: 0 10px 30px rgba(0,0,0,0.25); user-select:none; } .btn:hover{ transform: translateY(-1px); border-color: rgba(255,255,255,0.25); background: rgba(255,255,255,0.08); } .btn:active{ transform: translateY(0px) scale(0.99); } .btn:disabled{ opacity:0.55; cursor:not-allowed; transform:none; } .btn--primary{ background: linear-gradient(135deg, rgba(96,165,250,0.18), rgba(167,139,250,0.16)); border-color: rgba(167,139,250,0.35); } .btn--soft{ background: rgba(255,255,255,0.08); } .btn--ghost{ background: transparent; box-shadow:none; } .input, textarea{ width:100%; background: rgba(0,0,0,0.22); border: 1px solid var(--stroke); border-radius: 14px; color: var(--text); padding: 10px 12px; outline:none; } textarea{ min-height: 88px; resize: vertical; } .pill{ display:inline-flex; align-items:center; justify-content:center; padding:10px 12px; border-radius:999px; border: 1px solid var(--stroke); background: rgba(255,255,255,0.05); font-size:14px; } .tag{ display:inline-flex; align-items:center; padding: 6px 10px; border-radius:999px; background: rgba(255,255,255,0.05); border: 1px solid var(--stroke); font-size:12px; color: var(--muted); } .tag--fog{ background: rgba(255,255,255,0.035); } /* START */ .start{ display:grid; grid-template-columns: 1.2fr 0.8fr; gap: var(--gap); max-width: 1120px; margin: 0 auto; align-items: stretch; } .start__hero{ padding: 20px 22px; border-radius: var(--r); background: radial-gradient(700px 380px at 15% 10%, rgba(96,165,250,0.20), transparent 60%), radial-gradient(600px 360px at 70% 25%, rgba(167,139,250,0.18), transparent 60%), rgba(255,255,255,0.04); border:1px solid var(--stroke); box-shadow: var(--shadow); } .brand{ display:flex; gap:14px; align-items:center; } .brand__mark{ width:56px; height:56px; border-radius: 18px; display:flex; align-items:center; justify-content:center; font-weight:800; letter-spacing:0.5px; background: rgba(255,255,255,0.08); border:1px solid var(--stroke2); } .brand__text h1{ margin:0; font-size: 28px; } .brand__text p{ margin:6px 0 0 0; } .start__cards{ margin-top: 16px; display:flex; flex-wrap:wrap; gap:10px; } .start__disclaimer{ margin-top: 14px; } .disclaimer{ border-radius: 14px; padding: 12px 14px; border:1px solid rgba(251,113,133,0.25); background: rgba(251,113,133,0.08); color: rgba(255,255,255,0.88); } .start__actions{ margin-top: 16px; display:flex; gap:12px; flex-wrap:wrap; } .start__meta{ margin-top: 18px; } .metaRow{ display:flex; gap:12px; flex-wrap:wrap; } .metaItem{ padding: 12px 14px; border-radius: 14px; border: 1px solid var(--stroke); background: rgba(255,255,255,0.04); min-width: 160px; } .metaLabel{ font-size:12px; color: var(--muted2); } .metaValue{ margin-top: 4px; font-weight:700; } .list{ margin: 10px 0 0 20px; color: var(--muted); } .start__panel{ padding: 18px 18px 16px 18px; } .start__panel h2{ margin:0 0 8px 0; } /* TOPBAR */ .topbar{ display:flex; justify-content:space-between; align-items:center; gap: 12px; padding: 14px 18px; border-radius: var(--r); background: rgba(255,255,255,0.04); border:1px solid var(--stroke); box-shadow: var(--shadow2); backdrop-filter: blur(10px); position: sticky; top: 12px; z-index: 20; } .topbar__left, .topbar__right{ display:flex; align-items:center; gap: 10px; flex-wrap:wrap; } .title{ display:flex; align-items:center; gap:10px; } .title__mark{ width:34px; height:34px; border-radius: 12px; display:flex; align-items:center; justify-content:center; font-weight: 800; background: rgba(255,255,255,0.08); border:1px solid var(--stroke2); } .title__text{ font-weight: 800; letter-spacing:0.2px; } .kv{ display:flex; align-items:baseline; gap:8px; } .kv__k{ font-size:12px; color: var(--muted2); } .kv__v{ font-weight: 800; } .stat{ padding: 8px 10px; border-radius: 14px; border: 1px solid var(--stroke); background: rgba(255,255,255,0.04); min-width: 92px; } .stat__k{ font-size: 11px; color: var(--muted2); } .stat__v{ font-size: 16px; font-weight: 900; } /* LAYOUT */ .layout{ margin-top: 14px; display:grid; grid-template-columns: 1fr 1.2fr 320px; gap: var(--gap); align-items: stretch; } /* CITY */ .city{ padding-bottom: 16px; } .city__map{ position: relative; padding: 16px; display:grid; grid-template-columns: 1fr 1fr; gap: 12px; } .city__center{ position:absolute; inset: 16px; display:flex; align-items:center; justify-content:center; pointer-events:none; } .cityCore{ width: 140px; height: 140px; border-radius: 999px; border: 1px solid rgba(255,255,255,0.14); background: radial-gradient(circle at 30% 30%, rgba(255,255,255,0.08), rgba(0,0,0,0.18)); display:flex; flex-direction:column; align-items:center; justify-content:center; box-shadow: 0 18px 60px rgba(0,0,0,0.45); } .cityCore__title{ font-size: 12px; color: var(--muted); } .cityCore__value{ margin-top: 6px; font-size: 20px; font-weight: 900; } .district{ position: relative; width: 100%; text-align:left; padding: 14px 14px 12px 14px; border-radius: var(--r2); border: 1px solid var(--stroke); background: rgba(255,255,255,0.04); background-size: cover; background-position: center; background-repeat: no-repeat; cursor: pointer; overflow:hidden; transition: transform .12s ease, border-color .12s ease, background .12s ease; } .district:hover{ transform: translateY(-1px); border-color: rgba(255,255,255,0.22); filter: brightness(1.03); } .district--picked{ outline: 2px solid rgba(110,231,183,0.65); outline-offset: 2px; } .district:disabled{ opacity:0.55; cursor:not-allowed; transform:none; filter: none; } .district__icon{ font-size: 22px; } .district__name{ margin-top: 6px; font-weight: 900; letter-spacing:0.2px; } .district__meta{ margin-top: 8px; display:flex; gap: 8px; flex-wrap:wrap; } .district__mist{ position:absolute; inset:-20px; background: url("../assets/img/mist_overlay.jpg") center/cover no-repeat; opacity: 0.75; filter: blur(12px); pointer-events:none; transform: translateZ(0); transition: opacity .18s ease; mix-blend-mode: screen; } .district--oasis{ outline-color: rgba(110,231,183,0.45); background-image: linear-gradient(180deg, rgba(0,0,0,0.30), rgba(0,0,0,0.56)), url("../assets/img/district_oasis.jpg"); } .district--citadel{ outline-color: rgba(251,191,36,0.45); background-image: linear-gradient(180deg, rgba(0,0,0,0.30), rgba(0,0,0,0.56)), url("../assets/img/district_citadel.jpg"); } .district--arsenal{ outline-color: rgba(249,115,22,0.45); background-image: linear-gradient(180deg, rgba(0,0,0,0.30), rgba(0,0,0,0.56)), url("../assets/img/district_arsenal.jpg"); } .district--forum{ outline-color: rgba(96,165,250,0.45); background-image: linear-gradient(180deg, rgba(0,0,0,0.30), rgba(0,0,0,0.56)), url("../assets/img/district_forum.jpg"); } .district--garden{ outline-color: rgba(167,139,250,0.45); background-image: linear-gradient(180deg, rgba(0,0,0,0.30), rgba(0,0,0,0.56)), url("../assets/img/district_garden.jpg"); } /* CHAT */ .chat{ padding-bottom: 12px; display:flex; flex-direction:column; min-height: 540px; } .chat__head{ padding-bottom: 8px; } .chatHeadRow{ display:flex; align-items:center; gap: 12px; } .chatHeadText h2{ margin:0 0 6px 0; } .airaAvatar{ width: 44px; height: 44px; border-radius: 14px; border: 1px solid rgba(255,255,255,0.16); background: linear-gradient(180deg, rgba(0,0,0,0.15), rgba(0,0,0,0.55)), url("../assets/img/aira.jpg") center/cover no-repeat; box-shadow: 0 16px 40px rgba(0,0,0,0.35); flex: 0 0 auto; } .chat__log{ padding: 12px 16px 6px 16px; overflow:auto; flex: 1; display:flex; flex-direction:column; gap: 10px; } .msg{ max-width: 92%; padding: 10px 12px; border-radius: 16px; border: 1px solid var(--stroke); background: rgba(255,255,255,0.04); box-shadow: 0 10px 30px rgba(0,0,0,0.18); } .msg--aira{ align-self:flex-start; border-color: rgba(167,139,250,0.25); background: rgba(167,139,250,0.08); } .msg--you{ align-self:flex-end; border-color: rgba(96,165,250,0.25); background: rgba(96,165,250,0.08); } .msg__meta{ font-size:11px; color: var(--muted2); margin-bottom: 4px; } .msg__text{ white-space: pre-wrap; } .chat__composer{ padding: 10px 12px 12px 12px; border-top: 1px solid var(--stroke); } .questionPane{ display:flex; flex-direction:column; gap: 10px; padding: 8px 4px 10px 4px; } .qTitle{ font-weight: 800; letter-spacing: 0.2px; } .choiceRow{ display:flex; gap: 10px; flex-wrap:wrap; } .scaleRow{ display:flex; gap: 10px; align-items:center; } .scaleRow input[type="range"]{ width: 100%; } .scaleValue{ min-width: 42px; text-align:center; font-weight: 900; border: 1px solid var(--stroke); border-radius: 12px; padding: 8px 10px; background: rgba(0,0,0,0.20); } .composerRow{ display:flex; gap: 10px; margin-top: 6px; } /* TASK PANE */ .taskPane{ margin: 0 12px 10px 12px; border-radius: var(--r2); border: 1px solid rgba(255,255,255,0.14); background: rgba(0,0,0,0.18); padding: 12px; box-shadow: 0 18px 60px rgba(0,0,0,0.38); animation: slideIn .18s ease-out; } @keyframes slideIn{ from{ transform: translateY(8px); opacity:0; } to{ transform: translateY(0); opacity:1; } } .taskTitle{ display:flex; justify-content:space-between; gap: 10px; align-items:flex-start; } .taskTitle h3{ margin:0; font-size: 14px; } .taskMeta{ font-size: 12px; color: var(--muted); } .taskBody{ margin-top: 10px; display:flex; flex-direction:column; gap:10px; } .taskActions{ display:flex; gap: 10px; flex-wrap:wrap; margin-top: 6px; } /* SHELF */ .shelf{ padding-bottom: 12px; display:flex; flex-direction:column; background: linear-gradient(180deg, rgba(0,0,0,0.10), rgba(0,0,0,0.42)), url("../assets/img/shelf_rack.jpg") center/cover no-repeat; } .shelf__list{ padding: 12px; display:flex; flex-direction:column; gap: 10px; overflow:auto; min-height: 420px; } .card{ position:relative; padding: 12px 12px 10px 12px; border-radius: 16px; border: 1px solid var(--stroke); background: rgba(255,255,255,0.04); overflow:hidden; box-shadow: 0 14px 44px rgba(0,0,0,0.28); } .card--clickable{ cursor:pointer; } .card::before{ content:""; position:absolute; inset:-40px; opacity: 0.10; filter: blur(16px); background: radial-gradient(220px 140px at 15% 20%, rgba(255,255,255,0.28), transparent 60%), radial-gradient(220px 140px at 80% 40%, rgba(255,255,255,0.18), transparent 60%); pointer-events:none; } .card__top{ display:flex; justify-content:space-between; gap:10px; align-items:flex-start; position:relative; } .card__name{ font-weight: 900; } .card__sub{ font-size: 11px; color: var(--muted2); margin-top: 2px; } .card__desc{ margin-top: 8px; font-size: 12px; color: var(--muted); position:relative; } .card__art{ margin-top: 10px; height: 92px; border-radius: 14px; border: 1px solid rgba(255,255,255,0.14); background: rgba(0,0,0,0.18); background-size: cover; background-position: center; background-repeat: no-repeat; position: relative; overflow:hidden; } .card__art::after{ content:""; position:absolute; inset:0; background: linear-gradient(180deg, rgba(0,0,0,0.20), rgba(0,0,0,0.58)); } .card__art--none{ display:none; } .card__actions{ margin-top: 10px; display:flex; gap:8px; flex-wrap:wrap; position:relative; } .badge{ font-size: 11px; border: 1px solid var(--stroke); background: rgba(0,0,0,0.16); padding: 6px 9px; border-radius: 999px; color: var(--muted); } .badge--common{ border-color: rgba(185,194,255,0.40); } .badge--rare{ border-color: rgba(103,232,249,0.42); } .badge--epic{ border-color: rgba(192,132,252,0.42); } .badge--legendary{ border-color: rgba(245,158,11,0.50); } .badge--hazard{ border-color: rgba(251,113,133,0.45); color: rgba(255,255,255,0.86); } .shelf__footer{ padding: 10px 12px 12px 12px; border-top: 1px solid var(--stroke); display:flex; flex-direction:column; gap: 4px; } /* TOAST */ .toast{ position: fixed; left: 50%; bottom: 18px; transform: translateX(-50%); background: rgba(0,0,0,0.55); border: 1px solid rgba(255,255,255,0.16); border-radius: 999px; padding: 10px 14px; color: rgba(255,255,255,0.92); box-shadow: 0 18px 70px rgba(0,0,0,0.55); display:none; z-index: 60; } /* MODAL */ .modalHost{ position: fixed; inset: 0; background: rgba(0,0,0,0.60); display:flex; align-items:center; justify-content:center; padding: 16px; z-index: 80; } .modal{ width: min(720px, 96vw); border-radius: var(--r); border: 1px solid rgba(255,255,255,0.14); background: rgba(10,14,25,0.92); box-shadow: var(--shadow); padding: 16px; backdrop-filter: blur(10px); } .modal__art{ margin-top: 10px; height: 160px; border-radius: 16px; border: 1px solid rgba(255,255,255,0.14); background-size: cover; background-position: center; background-repeat: no-repeat; position: relative; overflow:hidden; } .modal__art::after{ content:""; position:absolute; inset:0; background: linear-gradient(180deg, rgba(0,0,0,0.18), rgba(0,0,0,0.62)); } /* SESSION FADE */ .sessionFade{ position: fixed; inset: 0; display:flex; align-items:center; justify-content:center; background: rgba(11,15,26,0.64); backdrop-filter: blur(12px); z-index: 999; animation: sessionFadeIn .18s ease; } .sessionFade__text{ max-width: 720px; padding: 18px 18px; margin: 0 16px; border-radius: 18px; border: 1px solid rgba(255,255,255,0.16); background: rgba(255,255,255,0.06); box-shadow: 0 24px 80px rgba(0,0,0,0.55); font-weight: 700; letter-spacing: 0.2px; text-align:center; } @keyframes sessionFadeIn{ from{ opacity:0; } to{ opacity:1; } } .modal h3{ margin: 0 0 8px 0; } .modal__row{ display:flex; gap:10px; flex-wrap:wrap; margin-top: 10px; } .modal__loot{ margin-top: 12px; display:flex; gap: 10px; flex-wrap:wrap; } .lootPill{ padding: 8px 10px; border-radius: 999px; border: 1px solid var(--stroke); background: rgba(255,255,255,0.04); font-size: 12px; color: var(--muted); } .bossBadge{ position:absolute; top: 20px; left: 50%; transform: translateX(-50%); pointer-events:none; padding: 10px 12px; border-radius: 999px; border: 1px solid rgba(251,113,133,0.30); background: rgba(251,113,133,0.12); color: rgba(255,255,255,0.92); font-size: 12px; box-shadow: 0 18px 60px rgba(0,0,0,0.45); } .result{ max-width: 860px; margin: 0 auto; display:flex; align-items:center; justify-content:center; min-height: calc(100vh - 48px); } .result__panel{ padding: 18px 18px 16px 18px; } .scoreRow{ display:flex; gap: 12px; margin-top: 14px; flex-wrap:wrap; } .scoreBox{ flex: 1; min-width: 180px; padding: 12px 14px; border-radius: 16px; border: 1px solid var(--stroke); background: rgba(255,255,255,0.04); } .scoreBox__k{ font-size: 12px; color: var(--muted2); } .scoreBox__v{ font-size: 30px; font-weight: 1000; margin-top: 6px; } .result__actions{ margin-top: 14px; display:flex; gap: 10px; flex-wrap:wrap; } /* RESPONSIVE */ @media (max-width: 1100px){ .layout{ grid-template-columns: 1fr; } .shelf__list{ min-height: 240px; max-height: 320px; } .chat{ min-height: 480px; } } @media (max-width: 920px){ .start{ grid-template-columns: 1fr; } .topbar{ position: static; } .composerRow{ flex-direction:column; } }