:root{--gold: #ffce34;--gold-soft: #ffcc66;--ink: #212121;--ink-strong: #000000;--muted: #757575;--faint: #9e9e9e;--surface: #ffffff;--bg: #fafafa;--surface-variant: #f5f5f5;--border: #e0e0e0;--logo-chip: #111111;--radius: 12px;--radius-sm: 8px;--font: "Montserrat", system-ui, sans-serif;--shadow: 0 4px 24px rgba(0, 0, 0, .06)}*{margin:0;padding:0;box-sizing:border-box}body{min-height:100vh;color:var(--ink);font-family:var(--font);background-color:var(--bg);background-image:radial-gradient(ellipse 90% 55% at 50% -10%,rgba(255,206,52,.35),transparent 55%),radial-gradient(ellipse 50% 40% at 100% 100%,rgba(255,204,102,.18),transparent 50%),linear-gradient(180deg,#fffef8 0%,var(--bg) 45%,var(--surface-variant) 100%)}#app{min-height:100vh}.lang{position:fixed;top:1rem;inset-inline-end:1rem;z-index:10;display:flex;gap:.1rem;padding:.2rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);box-shadow:var(--shadow)}.lang__btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;border-radius:6px;background:transparent;color:var(--muted);font:inherit;font-size:.72rem;font-weight:600;letter-spacing:.04em;padding:.4rem .55rem;cursor:pointer;transition:color .15s ease,background .15s ease}.lang__btn:hover,.lang__btn:focus-visible{color:var(--ink-strong);outline:none}.lang__btn.is-active{color:var(--ink-strong);background:var(--gold)}.shell{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4.5rem 1.5rem 2.5rem;animation:fade-up .5s ease both}.brand-block{display:flex;flex-direction:column;align-items:center;text-align:center;margin-bottom:2.25rem;animation:fade-up .6s ease both}.logo-chip{display:inline-flex;align-items:center;justify-content:center;background:var(--logo-chip);border-radius:var(--radius-sm);padding:.65rem 1.1rem;margin-bottom:1.35rem;animation:logo-in .7s ease both}.logo-chip img{display:block;height:clamp(28px,5vw,40px);width:auto}.brand{font-size:clamp(1.85rem,4.5vw,2.6rem);font-weight:700;letter-spacing:-.02em;color:var(--ink-strong);line-height:1.15}.brand__accent{color:transparent;background:linear-gradient(120deg,#c9a008 0%,var(--gold) 45%,var(--gold-soft) 100%);background-clip:text;-webkit-background-clip:text}.subtitle{margin-top:.75rem;color:var(--muted);font-size:.95rem;font-weight:500;animation:fade-up .7s ease both}.portals{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;width:100%;max-width:720px;animation:fade-up .8s ease both}a.portal{display:flex;flex-direction:column;align-items:flex-start;gap:.4rem;padding:1.5rem 1.35rem;border:1px solid var(--border);border-radius:var(--radius);text-decoration:none;color:var(--ink-strong);background:var(--surface);box-shadow:var(--shadow);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background .18s ease}a.portal:hover,a.portal:focus-visible{transform:translateY(-3px);border-color:var(--gold);background:#fffdf5;box-shadow:0 8px 28px #ffce3438;outline:none}.portal__label{font-size:1rem;font-weight:600}.portal__desc{font-size:.8rem;font-weight:400;color:var(--muted);line-height:1.4}.portal__go{margin-top:.55rem;font-size:.75rem;font-weight:600;color:var(--ink-strong);background:var(--gold);border-radius:var(--radius-sm);padding:.35rem .7rem}.footer{margin-top:2.75rem;color:var(--faint);font-size:.75rem;font-weight:500;animation:fade-up .9s ease both}@keyframes fade-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes logo-in{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}@media(prefers-reduced-motion:reduce){.shell,.brand-block,.subtitle,.portals,.footer,.logo-chip,a.portal,.lang__btn{animation:none;transition:none}}
