:root {
    --laser-bg: #f4f5f7;
    --laser-panel: #ffffff;
    --laser-ink: #202428;
    --laser-muted: #6c757d;
    --laser-dark: #202428;
    --laser-border: #e3e6e9;
}
html, body { min-height: 100%; }
body { background: var(--laser-bg); color: var(--laser-ink); display: flex; flex-direction: column; }
.laser-navbar { background: var(--laser-dark); }
.brand-mark { font-size: 1.25rem; }
.brand-subtitle { font-weight: 400; opacity: .78; }
.page-shell { flex: 1; }
.page-heading { font-weight: 750; letter-spacing: -.02em; }
.library-toolbar { background: var(--laser-panel); border: 1px solid var(--laser-border); border-radius: 1rem; }
.design-card { border: 1px solid var(--laser-border); border-radius: 1rem; overflow: hidden; background: var(--laser-panel); transition: transform .15s ease, box-shadow .15s ease; }
.design-card:hover { transform: translateY(-2px); box-shadow: 0 .5rem 1.25rem rgba(0,0,0,.08); }
.design-preview { aspect-ratio: 1 / 1; background: #fff; display: grid; place-items: center; overflow: hidden; }
.design-preview img { width: 100%; height: 100%; object-fit: contain; }
.file-chip { font-size: .72rem; letter-spacing: .03em; }
.laser-footer { background: #fff; border-top: 1px solid var(--laser-border); font-size: .9rem; }
.path-text { font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; font-size: .82rem; }
@media (max-width: 575.98px) { .brand-subtitle { display: none; } }
