:root{--lv-bg:#f6f7fa;--lv-panel:#fff;--lv-text:#253047;--lv-muted:#748097;--lv-line:#e4e7ee;--lv-accent:#ef456c;--lv-soft:#fff1f5;color-scheme:light}
:root[data-theme=dark]{--lv-bg:#17191f;--lv-panel:#23262f;--lv-text:#e7e9ef;--lv-muted:#a8b1c2;--lv-line:#3b404e;--lv-soft:#382630;color-scheme:dark}
::view-transition-old(root),::view-transition-new(root){animation-duration:220ms}
.lv-dialog{box-sizing:border-box;width:min(780px,94vw);max-height:90dvh;border:1px solid var(--lv-line);border-radius:20px;padding:25px;background:var(--lv-panel);color:var(--lv-text);box-shadow:0 24px 100px #0003;font:14px/1.5 Inter,Arial,sans-serif;overflow:auto}.lv-dialog::backdrop{background:#15172280;backdrop-filter:blur(3px)}.lv-dialog header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.lv-dialog h2{font-size:21px;margin:0}.lv-dialog button,.lv-dashboard button,.lv-dashboard .lv-button{border:1px solid var(--lv-line);border-radius:10px;background:var(--lv-panel);color:var(--lv-text);padding:10px 15px;font:inherit;cursor:pointer}.lv-dialog [data-close]{font-size:24px;padding:0 10px;border:0}.lv-dialog .lv-primary,.lv-dashboard .lv-primary{background:var(--lv-accent);border-color:var(--lv-accent);color:white}.lv-form{display:grid;gap:17px}.lv-form label{display:grid;gap:7px;font-weight:500}.lv-form input,.lv-form textarea,.lv-form select{box-sizing:border-box;width:100%;min-width:0;border:1px solid var(--lv-line);border-radius:10px;background:var(--lv-panel);color:var(--lv-text);padding:11px;font:inherit}.lv-form textarea{resize:vertical;min-height:90px}.lv-form input[type=checkbox]{width:18px;height:18px;accent-color:var(--lv-accent)}.lv-form .lv-check{display:flex;align-items:center;gap:9px}.lv-form small,.lv-muted{color:var(--lv-muted);font-weight:400}.lv-form [role=status]{margin:0;color:#df4266}.lv-row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.lv-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.lv-dialog [hidden]{display:none!important}.lv-toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);max-width:85vw;padding:13px 20px;border-radius:12px;background:#263343;color:white;z-index:999999;font:14px/1.5 Arial;box-shadow:0 4px 20px #0003}.lv-cover{width:180px;height:180px;object-fit:cover;border-radius:13px;background:var(--lv-bg)}
.lv-shortcuts{display:grid;grid-template-columns:1fr 1fr;gap:18px}.lv-shortcuts section{padding:18px;border:1px solid var(--lv-line);border-radius:14px}.lv-shortcuts h3{margin:0 0 16px;font-size:15px}.lv-shortcuts p{display:flex;justify-content:space-between;align-items:center;gap:12px;color:var(--lv-muted)}kbd{border:1px solid var(--lv-line);border-radius:5px;padding:4px 7px;box-shadow:0 2px 2px #0001;font:12px monospace;color:var(--lv-text);white-space:nowrap;background:var(--lv-panel)}
:root[data-theme=dark] body:not(.preview-embed):not(.editor-embed){background:var(--lv-bg);color:var(--lv-text)}:root[data-theme=dark] :is(#tools,#library,#properties,.canvas-toolbar,.quick-photos,.canvas-palette,.zoom-pill,.selection-toolbar,.canvas-context){background:var(--lv-panel);color:var(--lv-text);border-color:var(--lv-line)}:root[data-theme=dark] :is(#tools,#library,#properties,.quick-photos,.canvas-palette,.canvas-context,dialog) :is(button,input,select,textarea,details,summary,.field,.panel,.setting-card){background-color:var(--lv-panel);color:var(--lv-text);border-color:var(--lv-line)}:root[data-theme=dark] :is(#library,#properties) :is(p,label,h2,h3,small){color:inherit}:root[data-theme=dark] #workarea{background:#17191f}:root[data-theme=dark] #tools button.active{background:var(--lv-soft);color:#ff8eab}:root[data-theme=dark] #tools button img{filter:invert(.8)}
body.lv-previewing .workspace{display:none}body.lv-previewing .selection-toolbar,body.lv-previewing .quick-photos,body.lv-previewing .canvas-palette,body.lv-previewing .zoom-pill,body.lv-previewing .palette-toggle{display:none!important}.lv-preview-frame{display:block;border:0;width:100%;height:calc(100dvh - 62px);background:var(--lv-bg)}
@media(max-width:700px){.lv-grid,.lv-shortcuts{grid-template-columns:1fr}.lv-dialog{padding:20px}.topbar .title,.topbar #export-btn,.topbar #save-btn{display:none}.topbar{gap:5px;padding:0 8px}.topbar button{padding:8px}.topbar #save-state{font-size:10px;min-width:0}.lv-cover{width:120px;height:140px}}
@media(prefers-reduced-motion:reduce){::view-transition-old(root),::view-transition-new(root){animation:none}}

:root[data-theme=dark] #library button>svg,:root[data-theme=dark] #properties button>svg{filter:invert(.85)}:root[data-theme=dark] .canvas-toolbar .palette-toggle{background:#343947;color:#e7e9ef;border-color:#515969}

:root[data-theme=dark] #library button>img[src*="assets/icons/"]{filter:invert(.85)}

/* Consistent, legible interface typography; invitation nodes keep their own fonts. */
.lv-home,.lv-dashboard,.site-layout,.lv-dialog,.lv-drawer,.topbar,#tools,#library,#properties,.canvas-toolbar,.lv-preview-qr{font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;text-rendering:optimizeLegibility}
:is(.lv-home,.lv-dashboard,.site-layout,.lv-dialog,.lv-drawer,.topbar,#tools,#library,#properties,.canvas-toolbar) :is(button,input,select,textarea){font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif}
.lv-preview-qr small{display:block;font-family:Inter,system-ui,sans-serif!important;font-size:11px!important;font-weight:500;line-height:1.55!important;color:#42516a;letter-spacing:0}

.lv-drawer{font-family:Inter,system-ui,sans-serif!important}.lv-drawer header{padding:18px 12px!important;min-height:68px;box-sizing:border-box}.lv-drawer .lv-menu-brand{width:146px;height:48px;overflow:hidden;position:relative;display:block}.lv-drawer .lv-menu-brand img{position:absolute!important;width:268px!important;height:89px!important;max-width:none!important;left:-16px;top:-20px;border-radius:0!important}.lv-drawer nav{padding:8px 12px!important}.lv-drawer nav a,.lv-drawer nav button{font:500 14px/1.5 Inter,system-ui,sans-serif!important;min-height:43px;padding:10px 12px!important;border-radius:9px!important;gap:12px!important;margin:3px 0!important}.lv-drawer nav svg,.lv-member-navigation nav svg{color:var(--menu-icon-color,currentColor)!important;stroke-width:1.7!important;width:19px;height:19px;flex-shrink:0}.lv-drawer nav small{font:600 10px/1.5 Inter,system-ui,sans-serif!important;letter-spacing:.3px!important;margin:25px 12px 9px!important;padding:0!important;color:#8793a8!important}.lv-drawer nav [aria-current=page]{background:#fff0f5!important;color:#f63880!important}.lv-drawer nav a:hover{background:#f4f6fb}.menu-vip-tag{font:600 9px/1 Inter,Arial;color:#a86d0b;background:#fff0bf;border-radius:3px;padding:3px 4px;margin-left:4px}.lv-drawer nav button:disabled{opacity:.45}html[data-theme=dark] .lv-drawer nav [aria-current=page]{background:#382a34!important;color:#ffa7c5!important}

/* Keep the complete invitation cover visible in management cards. */
.lv-hero img.lv-cover{object-fit:contain;object-position:top center;background:var(--lv-bg)}
