.banner{border:1px solid var(--banner-border);border-radius:var(--radius);background:var(--banner-surface);color:var(--banner-text);justify-content:space-between;align-items:flex-start;gap:16px;padding:12px 16px;display:flex}.banner[data-variant=info]{--banner-surface:color-mix(in srgb, var(--accent) 10%, transparent);--banner-border:var(--accent);--banner-text:var(--text)}.banner[data-variant=success]{--banner-surface:color-mix(in srgb, var(--accent) 12%, transparent);--banner-border:var(--accent);--banner-text:var(--text)}.banner[data-variant=warning]{--banner-surface:var(--warning-surface);--banner-border:var(--warning-border);--banner-text:var(--warning-text)}.banner[data-variant=danger]{--banner-surface:color-mix(in srgb, var(--danger) 10%, transparent);--banner-border:var(--danger);--banner-text:var(--text)}.banner__body{min-width:0}.banner__title{margin:0;font-size:14px;font-weight:600}.banner__text{opacity:.95;margin:2px 0 0;font-size:13px;line-height:1.5}.banner__actions{flex-shrink:0;align-items:center;gap:12px;display:flex}.banner__action{color:inherit;white-space:nowrap;font-size:13px;font-weight:600;text-decoration:underline}.banner__close{color:inherit;opacity:.7;background:0 0;font-size:14px;line-height:1}.banner__close:hover{opacity:1}.dashboard{flex-direction:column;gap:32px;display:flex}.dashboard__notice{border-radius:var(--radius);background:var(--warning-surface);border:1px solid var(--warning-border);color:var(--warning-text);padding:12px 16px;font-size:14px}.dashboard__banners{flex-direction:column;gap:12px;display:flex}.dashboard__head{flex-flow:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.dashboard__admin-preview{border:1px solid var(--border);border-radius:var(--radius);color:var(--text-muted);align-items:center;gap:6px;padding:7px 12px;font-size:13px;font-weight:600;text-decoration:none;transition:color .15s,border-color .15s;display:inline-flex}.dashboard__admin-preview:hover{color:var(--accent-text);border-color:var(--accent);text-decoration:none}.dashboard__library{flex-direction:column;gap:16px;display:flex}.dashboard__section-title{color:var(--text);margin:0;font-size:20px}.dashboard__empty{border:1px solid var(--border);border-radius:var(--radius);color:var(--text-muted);background:var(--surface);margin:0;padding:18px 20px;font-size:14px}.dashboard__title{margin:0;font-size:26px}.dashboard__options{grid-template-columns:repeat(2,1fr);gap:20px;display:grid}.dashboard__options--resources{grid-template-columns:repeat(3,minmax(0,1fr))}@media (width<=900px){.dashboard__options--resources{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=560px){.dashboard__options--resources{grid-template-columns:1fr}}.dashboard__card{--card-border:var(--yellow);border:2px solid var(--card-border);border-radius:var(--radius-lg);background:var(--surface);color:inherit;flex-direction:column;gap:8px;padding:28px;text-decoration:none;transition:box-shadow .15s,transform .15s;display:flex;position:relative}.dashboard__card:hover{box-shadow:0 0 0 2px var(--card-border), var(--shadow-card);text-decoration:none}.dashboard__card-star{color:var(--yellow);display:inline-flex;position:absolute;top:16px;right:16px}.dashboard__library .dashboard__card{--card-border:var(--teal)}.dashboard__shop .dashboard__card{--card-border:#4479e4}.dashboard__card-title{margin:0;padding-right:24px;font-size:19px}.dashboard__card-desc{color:var(--text-muted);margin:0;font-size:14px;line-height:1.5}.dashboard__card-go{color:var(--accent-text);margin-top:8px;font-size:20px}.dashboard__invite{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-card);color:inherit;align-items:center;gap:12px;padding:12px 16px;text-decoration:none;transition:border-color .15s;display:inline-flex;position:fixed;bottom:24px;right:24px}.dashboard__invite:hover{border-color:var(--accent);text-decoration:none}.dashboard__invite-icon{width:32px;height:32px;color:var(--text-on-accent);background:var(--accent);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:16px;display:inline-flex}.dashboard__invite-text{flex-direction:column;line-height:1.3;display:flex}.dashboard__invite-title{font-size:14px;font-weight:600}.dashboard__invite-sub{color:var(--text-muted);font-size:12px}@media (width<=640px){.dashboard__options{grid-template-columns:1fr}.dashboard__invite{align-self:flex-end;position:static}}
