:root { --c-bg: rgba(255,255,255,.78); --c-surface: rgba(255,255,255,.48); --c-text: #27272a; --c-muted: #6b707b; --c-border: rgba(150,156,170,.13); --c-solid: #333437; --c-inverse: #fff; }
.dark { --c-bg: rgba(39,40,43,.82); --c-surface: rgba(255,255,255,.04); --c-text: #f3f3f4; --c-muted: #96979f; --c-border: rgba(255,255,255,.08); --c-solid: #e8e8eb; --c-inverse: #222326; color-scheme: dark; }
.luma-shell { min-height:100dvh; background:linear-gradient(180deg,#dde3f4 0,#f0edf5 110px,#f3f6f8 300px); background-attachment:fixed; color:var(--c-text); font-family:-apple-system,BlinkMacSystemFont,'Pretendard Variable',sans-serif; }
.dark .luma-shell { background:linear-gradient(180deg,#262735 0,#22242d 150px,#1b1c1e 360px); }
.luma-auth { background:radial-gradient(ellipse at 50% 80%,#f1dce8 0,transparent 58%),radial-gradient(ellipse at 22% 44%,#f6ece2 0,transparent 60%),#f5f7f8; }
.dark .luma-auth { background:radial-gradient(ellipse at 54% 72%,#352b31 0,transparent 65%),#1b1c1e; }
[hidden] { display: none !important; }
.c-container { width: min(820px,100% - 48px); margin-inline: auto; }
.c-header { border:0; }
.c-nav-inner { width:calc(100% - 40px); min-height:60px; display:grid; grid-template-columns:1fr minmax(0,820px) 1fr; gap:24px; }
.c-brand { align-self:center;display:flex;align-items:center;gap:7px;color:var(--c-text);font-size:14px;font-weight:600;letter-spacing:-.3px;white-space:nowrap; }
.dark .c-brand img, .dark .c-footer > img { filter:invert(1); }
.c-brand svg { width:15px;height:15px; }
.c-nav { display:flex; align-items:center; gap:18px; font-size:12px; }
.c-nav svg { width:15px;height:15px; margin-right:5px; }
.c-nav a { min-height: 40px; display: inline-flex; align-items: center; color: var(--c-muted); }
.c-nav a[aria-current="page"] { color: var(--c-text); font-weight: 600; }
.c-nav a:last-child { margin-left:auto; background:rgba(255,255,255,.35); padding:0 11px; min-height:28px; border-radius:6px; color:var(--c-text); }
.c-page { padding:32px 0; }
.c-narrow { max-width: 480px; margin-inline: auto; }
.c-heading { font-size:clamp(25px,3vw,30px); line-height:1.3; font-weight:600; letter-spacing:-.9px; text-wrap:balance; margin-bottom:10px; }
.c-eyebrow { font-size:11px; letter-spacing:.04em; color:var(--c-muted); margin-bottom:12px; }
.c-muted { color: var(--c-muted); font-size: 14px; line-height: 1.8; }
.c-card { border:1px solid rgba(255,255,255,.65); border-radius:14px; padding:24px; background:var(--c-bg); box-shadow:0 2px 8px rgba(27,31,46,.025); }
.dark .c-card { border-color:var(--c-border); }
.c-card h2 { font-size: 18px; font-weight: 600; letter-spacing: -.4px; margin-bottom: 12px; }
.c-form { display:grid;gap:16px; }
.c-field { display: grid; gap: 8px; font-size: 14px; }
.c-field label { font-weight: 500; }
.c-field small, .c-help { color: var(--c-muted); font-size: 12px; line-height: 1.7; }
.c-input, .c-textarea { width:100%;padding:10px 12px;border:1px solid var(--c-border);border-radius:8px;background:var(--c-bg);color:var(--c-text);font:inherit;font-size:14px;min-height:42px;box-shadow:0 1px 2px rgba(27,31,46,.025); }
.c-textarea { resize: vertical; min-height: 240px; line-height: 1.9; }
.c-input::placeholder, .c-textarea::placeholder { color: var(--c-muted); opacity: .8; }
.c-button { display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:10px 16px;background:var(--c-solid);color:var(--c-inverse);border:1px solid transparent;border-radius:8px;font-size:13px;font-weight:500;cursor:pointer;text-align:center;box-shadow:0 1px 2px rgba(27,31,46,.05); }
.c-button-secondary { background:rgba(150,156,170,.09);color:var(--c-text);border-color:transparent;box-shadow:none; }
.c-button:disabled { opacity: .45; cursor: wait; }
.c-button:hover { opacity: .8; }
.c-link { text-decoration: underline; text-underline-offset: 4px; font-size: 13px; }
.c-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
.c-message { margin-block: 16px; padding: 14px 16px; border-radius: 10px; background: var(--c-surface); border: 1px solid var(--c-border); font-size: 13px; line-height: 1.8; overflow-wrap: anywhere; }
.c-message.is-error { background: #fef2f2; border-color: #fecaca; color: #991b1b; }
.dark .c-message.is-error { background: #291515; border-color: #7f1d1d; color: #fecaca; }
.c-empty { padding: 48px 20px; text-align: center; color: var(--c-muted); font-size: 14px; line-height: 1.8; }
.c-list { border-top: 1px solid var(--c-border); }
.c-list-item { display: block; padding: 24px 0; border-bottom: 1px solid var(--c-border); }
.c-meta { display: flex; flex-wrap: wrap; gap: 8px; color: var(--c-muted); font-size: 12px; line-height: 1.7; }
.c-footer { margin-top:56px;padding:24px 0 60px;border-top:1px solid var(--c-border);display:flex;flex-wrap:wrap;gap:12px 20px;color:var(--c-muted);font-size:11px; }
.luma-auth .c-nav-inner { display:flex;justify-content:space-between; }
.luma-auth .c-nav a:not(:last-child) { display:none; }
.luma-auth .c-footer { max-width:440px;border-top:0;justify-content:center;margin-top:8px; }
.luma-auth .c-footer span { margin-right:0; }
.luma-shell #theme-toggle { height:34px;width:34px;bottom:20px;right:20px;border-color:var(--c-border);box-shadow:none; }
.c-footer span { margin-right: auto; }
.c-skip { position: fixed; top: -100px; left: 16px; z-index: 200; background: var(--c-solid); color: var(--c-inverse); padding: 12px; }
.c-skip:focus { top: 12px; }
a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible, select:focus-visible { outline: 2px solid var(--c-text); outline-offset: 3px; }
@media(min-width:721px) and (max-width:1100px) { .c-nav-inner { display:flex;align-items:center;justify-content:space-between; }.c-nav { flex:1;max-width:650px; }.c-brand { margin-right:20px; } }
@media(max-width:720px), (pointer:coarse) {
  .luma-shell :is(input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]), select, textarea) { font-size:16px; }
}
@media(max-width:720px) {
  .c-container { width: calc(100% - 32px); }
  .c-nav-inner { display:grid;grid-template-columns:1fr auto;align-items:center;gap:7px;padding-top:12px;padding-bottom:6px; }
  .c-brand { align-self:start;justify-self:start;min-height:32px; }
  .c-nav { grid-column:1 / -1;width:100%;gap:18px;justify-content:flex-start;font-size:12px;position:relative; }
  .c-nav a { white-space:nowrap; }
  .c-nav a:last-child { position:absolute;bottom:calc(100% + 3px);right:0;padding-inline:11px;min-height:32px; }
  .luma-auth .c-nav-inner { display:flex;flex-direction:row;align-items:center; }
  .luma-auth .c-nav { width:auto; }
  .luma-auth .c-nav a:last-child { position:static; }
  .c-nav svg { width:13px;height:13px;margin-right:3px; }
  .c-page { padding-top:24px; }
  .c-card { padding: 20px; }
  .c-footer { flex-direction: column; padding-bottom: 90px; }
}
