@import "https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;700&family=IBM+Plex+Mono:wght@400;500&display=swap";:root{--bg:#f4f2e9;--ink:#1f1a14;--paper:#fffdf7;--line:#d3c9b8;--primary:#0e7a59;--primary-ink:#ecfff7;--danger:#a53131;--danger-bg:#ffe8e8;--success:#1b6a4d;--success-bg:#e6f8ef;--muted:#665f52;--shadow:0 12px 30px #21180f14}*{box-sizing:border-box}body{color:var(--ink);background:radial-gradient(circle at 85% 15%,#e5d8b8 0,#e5d8b800 35%),radial-gradient(circle at 10% 90%,#d8efe4 0,#d8efe400 38%),var(--bg);min-height:100vh;margin:0;font-family:Space Grotesk,Avenir Next,Segoe UI,sans-serif}.page{width:100%;padding:1.5rem clamp(.75rem,2vw,2rem) 3rem}.topbar{display:flex;justify-content:space-between;align-items: center;gap:1rem;margin-bottom:1.25rem}.brand{display:inline-flex;color:var(--ink);text-decoration:none;letter-spacing:.02em;align-items: center;gap:.55rem;font-size:clamp(1.1rem,2vw,1.35rem);font-weight:700}.brand-logo{display:block;object-fit:contain;flex:none;width:2.9rem;height:2.9rem}.menu{display:flex;align-items: center;gap:.75rem}.langswitch{display:inline-flex;color:var(--muted);align-items: center;gap:.4rem;font-size:.9rem}.langswitch select{border:1px solid var(--line);color:var(--ink);font:inherit;background:#fff;border-radius:.48rem;padding:.32rem .44rem}.menu a,.linklike{color:var(--ink);font:inherit;text-decoration:none;cursor:pointer;opacity:.84;background:0 0;border:0}.menu a:hover,.linklike:hover{opacity:1}.banner{border:1px solid #0000;border-radius:.7rem;margin:0 0 1rem;padding:.72rem .95rem;font-size:.95rem}.banner.success{color:var(--success);background:var(--success-bg);border-color:#a9e2c8}.banner.error{color:var(--danger);background:var(--danger-bg);border-color:#efbaba}.content{animation:.22s ease-out reveal}.panel{background:linear-gradient(170deg,var(--paper)0%,#fef9ef 100%);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:1rem;padding:1.2rem}.panel h1,.panel h2{margin-top:0;margin-bottom:.7rem}.panel p{color:var(--muted);margin-top:.35rem}.actions{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:1rem}.button{display:inline-flex;border:1px solid var(--primary);background:var(--primary);color:var(--primary-ink);text-decoration:none;cursor:pointer;border-radius:.66rem;justify-content:center;align-items: center;padding:.55rem .9rem;transition:transform .14s,opacity .14s,background .14s;font-family:Space Grotesk,Avenir Next,sans-serif;font-weight:600}.button:hover{transform:translateY(-1px)}.button:disabled{opacity:.66;cursor:not-allowed}.button.ghost{color:var(--ink);border-color:var(--line);background:0 0}.button.danger{color:var(--danger);background:0 0;border-color:#d9a1a1}.asset-page{display:grid;gap:1.15rem}.asset-upload{display:grid;grid-template-columns:minmax(0,1fr)minmax(320px,1fr);align-items: start;gap:1.5rem}.asset-upload-form{display:grid;gap:.7rem}.asset-upload-form label{display:grid;color:var(--muted);gap:.3rem;font-size:.9rem}.asset-upload-form input{border:1px solid var(--line);color:var(--ink);font:inherit;background:#fff;border-radius:.62rem;width:100%;padding:.58rem .65rem}.asset-list-heading{display:flex;justify-content:space-between;align-items: center;gap:1rem}.asset-list-heading h3{margin:0}.asset-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.9rem}.asset-card{overflow:hidden;border:1px solid var(--line);background:var(--paper);border-radius:.85rem;min-width:0;box-shadow:0 6px 18px #21180f0f}.asset-preview{display:grid;color:var(--ink);text-decoration:none;background-color:#ece8de;background-image:linear-gradient(45deg,#dfd9ce 25%,#0000 25%),linear-gradient(-45deg,#dfd9ce 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#dfd9ce 75%),linear-gradient(-45deg,#0000 75%,#dfd9ce 75%);background-position:0 0,0 9px,9px -9px,-9px 0;background-size:18px 18px;place-items: center;height:170px}.asset-preview img{object-fit:contain;width:100%;height:100%}.asset-file-icon{display:grid;background:var(--paper);border:1px solid var(--line);border-radius:.45rem .9rem .45rem .45rem;place-items: center;width:72px;height:86px;padding:.4rem;font-family:IBM Plex Mono,monospace;font-size:.78rem;font-weight:700}.asset-info{display:grid;gap:.2rem;padding:.75rem}.asset-info strong,.asset-filename{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.asset-info span{color:var(--muted);font-size:.82rem}.asset-actions{display:grid;grid-template-columns:1fr 1fr;gap:.45rem;padding:0 .75rem .75rem}.asset-actions .button{padding-inline-start:.45rem;padding-inline-end:.45rem;font-size:.85rem}.asset-empty{text-align:center}.profile-layout{display:grid;grid-template-columns:minmax(220px,.7fr)minmax(360px,1.3fr);align-items: start;gap:1rem}.profile-avatar-panel{display:grid;text-align:center;justify-items:center;gap:.85rem}.profile-avatar{display:grid;overflow:hidden;border:4px solid var(--paper);outline:1px solid var(--line);color:var(--primary);box-shadow:var(--shadow);background:#dcece5;border-radius:50%;place-items: center;width:156px;height:156px;font-size:3rem;font-weight:700}.profile-avatar img{object-fit:cover;width:100%;height:100%}.profile-picker{display:grid;color:var(--muted);text-align:left;gap:.35rem;width:100%;font-size:.88rem}.profile-picker select{border:1px solid var(--line);color:var(--ink);font:inherit;background:#fff;border-radius:.6rem;width:100%;padding:.55rem}.profile-password{border-top:1px solid var(--line);margin-top:.5rem;padding-top:.8rem}.profile-password h3,.profile-password p{margin:0}.danger-text{color:var(--danger)}.visually-hidden{position:absolute;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0}.form{display:grid;gap:.78rem;min-width:0;max-width:520px}.panel.form{width:100%;margin-inline-start:auto;margin-inline-end:auto}.form label{display:grid;color:var(--muted);gap:.35rem;min-width:0;font-size:.92rem}.form input{border:1px solid var(--line);outline:none;font:inherit;color:var(--ink);background:#fff;border-radius:.62rem;width:100%;min-width:0;padding:.6rem .7rem}.form input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #0e7a5926}.row{display:flex;justify-content:space-between;align-items: center;gap:.8rem}.rowactions{display:flex;flex-wrap:wrap;align-items: center;gap:.6rem}.muted{color:var(--muted);margin:.45rem 0 0;font-size:.92rem}.userlist{list-style:none;display:grid;gap:.68rem;margin:.75rem 0 0;padding:0}.userrow{display:flex;background:#fff;border:1px solid #e4dccd;border-radius:.66rem;justify-content:space-between;align-items: center;gap:.8rem;padding:.7rem}.userrow strong{display:block;margin-bottom:.2rem}.userrow p{margin:0;font-size:.9rem}.status{border-radius:999px;padding:.25rem .5rem;font-size:.78rem;font-weight:700}.status.active{color:var(--success);background:var(--success-bg)}.status.inactive{color:var(--danger);background:var(--danger-bg)}.pagination{display:flex;border-top:1px solid #e7dece;flex-wrap:wrap;align-items: center;gap:.65rem;margin-top:1rem;padding-top:.9rem}.limitcontrol{display:inline-flex;color:var(--muted);align-items: center;gap:.42rem;font-size:.9rem}.limitcontrol select{border:1px solid var(--line);color:var(--ink);font:inherit;background:#fff;border-radius:.52rem;padding:.38rem .48rem}.details{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:.4rem 1rem;margin:0 0 1rem}.details dt{font-weight:700}.details dd{overflow-wrap:anywhere;color:var(--muted);margin:0;font-family:IBM Plex Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.88rem}@keyframes reveal{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media (max-width:680px){.page{padding-top:1rem;padding-inline-start:.75rem;padding-inline-end:.75rem}.topbar{flex-direction:column;align-items: flex-start}.menu{flex-wrap:wrap;justify-content:flex-start;width:100%}.langswitch{justify-content:space-between;width:100%}.row,.userrow{flex-direction:column;align-items: flex-start}.rowactions,.button{width:100%}.pagination .button{width:auto}.asset-upload,.profile-layout{grid-template-columns:1fr}.asset-actions .button,.asset-list-heading .button{width:auto}}.database-page{display:grid;gap:1rem}.database-page h2,.database-page h3{margin-block-start:0;margin-block-end:.6rem}.database-layout{display:grid;grid-template-columns:190px minmax(0,1fr);align-items: start;gap:1rem}.database-sidebar{padding:.9rem}.database-sidebar input{width:100%;min-width:0}.database-sidebar nav{display:grid;overflow-y:auto;gap:.3rem;max-height:60vh;margin-top:.8rem}.database-sidebar a{display:flex;color:var(--ink);text-decoration:none;overflow-wrap:anywhere;border-radius:.5rem;flex-wrap:wrap;gap:.4rem;padding:.55rem}.database-sidebar a[aria-current=page]{background:var(--primary);color:var(--primary-ink)}.database-sidebar a:hover{box-shadow:inset 0 0 0 1px var(--line)}.database-main{display:grid;gap:1rem;min-width:0}.database-data-panel{min-width:0;padding:1rem}.database-table-name{overflow-wrap:anywhere;min-width:0}.database-tabs{display:flex;flex-shrink:0;gap:.4rem}.database-toolbar{display:flex;flex-wrap:wrap;align-items: end;gap:.6rem;margin-block-start:1rem;margin-block-end:1rem}.database-toolbar label{display:grid;color:var(--muted);flex:110px;gap:.3rem;min-width:0;max-width:100%;font-size:.85rem}.database-toolbar input,.database-toolbar select,.database-sidebar input,.database-field select,.database-field textarea{border:1px solid var(--line);color:var(--ink);font:inherit;background:#fff;border-radius:.55rem;width:100%;min-width:0;padding:.55rem .65rem}.database-table-scroll{overflow:auto;border:1px solid var(--line);border-radius:.6rem;max-height:65vh}.database-grid{border-collapse:collapse;text-align:left;width:100%;font-size:.82rem}.database-grid th,.database-grid td{border-bottom:1px solid var(--line);vertical-align:top;overflow-wrap:anywhere;max-width:240px;padding:.6rem .7rem}.database-grid thead th{position:sticky;z-index:1;white-space:nowrap;background:#eeeade;top:0}.database-grid tbody tr:last-child>*{border-bottom:0}.database-grid tbody tr:hover{background:#f1f5ed}.database-grid td{font-family:IBM Plex Mono,monospace}.database-cell{display:block;overflow:auto;white-space:pre-wrap;min-width:90px;max-width:220px;max-height:4.5em}.database-null{color:var(--muted);font-style:italic}.database-grid .button{white-space:nowrap;padding:.35rem .5rem;font-size:.78rem}.database-editor-form{display:grid;gap:1rem}.database-editor-form fieldset{display:grid;border:0;gap:1rem;min-width:0;margin:0;padding:0}.database-field{display:grid;gap:.4rem;min-width:0}.database-field label{display:grid;overflow-wrap:anywhere;gap:.1rem}.database-field textarea{resize:vertical;font-family:IBM Plex Mono,monospace}.database-delete pre{overflow:auto}@media (max-width:800px){.database-layout{grid-template-columns:minmax(0,1fr)}.database-sidebar nav{grid-template-columns:repeat(auto-fit,minmax(125px,1fr));max-height:150px}.topbar,.menu{flex-wrap:wrap}}@media (max-width:680px){.database-tabs .button,.database-toolbar .button{width:auto}}.avatar-crop-dialog{overflow:auto;border:1px solid var(--line);background:var(--paper);color:var(--ink);box-shadow:var(--shadow);border-radius:1rem;width:min(440px,100% - 1.5rem);max-height:calc(100dvh - 2rem);padding:1.25rem}.avatar-crop-dialog::backdrop{background:#191e198c}.avatar-crop-dialog h2{margin:0 0 .5rem}.avatar-crop-stage{position:relative;aspect-ratio:1;overflow:hidden;cursor:grab;touch-action:none;background:#e4e9e2;border-radius:.6rem;width:min(320px,100%);margin:1rem auto}.avatar-crop-stage:active{cursor:grabbing}.avatar-crop-stage:focus-visible{outline:3px solid var(--primary);outline-offset:3px}.avatar-crop-stage canvas{display:block;width:100%;height:100%}.avatar-crop-mask{position:absolute;pointer-events:none;border:2px solid #fff;border-radius:50%;inset:0;box-shadow:0 0 0 100px #191e1999}.avatar-crop-zoom{display:grid;gap:.45rem}.avatar-crop-zoom input{accent-color:var(--primary);width:100%}.avatar-crop-dialog .rowactions{justify-content:flex-end;margin-top:1rem}.avatar-crop-dialog>.linklike{margin-top:.5rem}.admin-user-grid{display:grid;grid-template-columns:minmax(0,1fr)minmax(0,2fr);gap:2rem;margin-block-start:2rem;margin-block-end:2rem}.admin-user-grid>section{min-width:0}.admin-user-grid .form{margin-bottom:1rem}.form .checklabel{display:flex;align-items: center;gap:.5rem}.form .checklabel input{width:auto}.session-card{border-bottom:1px solid var(--line);padding:1rem 0}.session-card dd{overflow-wrap:anywhere}.invitation-form{max-width:36rem;margin-bottom:2rem}@media (max-width:850px){.admin-user-grid{grid-template-columns:minmax(0,1fr)}}.authpanel{width:100%;max-width:36rem;margin-inline-start:auto;margin-inline-end:auto}.form select{border:1px solid var(--line);background:#fff;border-radius:.6rem;max-width:100%;padding:.65rem}.toast-stack{position:fixed;z-index:1100;display:flex;pointer-events:none;flex-direction:column;gap:.6rem;width:min(26rem,100vw - 2rem);bottom:1rem;right:1rem}.toast{display:flex;border:1px solid var(--line);border-left:4px solid var(--primary);background:var(--paper);color:var(--ink);box-shadow:var(--shadow);overflow-wrap:anywhere;pointer-events:auto;border-radius:.8rem;align-items: flex-start;gap:.75rem;padding:1rem}.toast span{flex:1;min-width:0}.toast button{cursor:pointer;color:inherit;background:0 0;border:0;font-size:1.4rem}.toast-error,.toast-critical{background:var(--danger-bg);border-left-color:var(--danger)}.toast-warning{background:#fff3d4;border-left-color:#a66b06}.toast-success{background:var(--success-bg)}.notification-center{position:relative}.notification-trigger{border:1px solid var(--line);background:var(--paper);cursor:pointer;color:var(--primary);font:inherit;border-radius:.65rem;padding:.4rem .6rem}.notification-panel{position:absolute;z-index:100;overflow:auto;background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow);text-align:left;border-radius:1rem;width:min(30rem,100vw - 2rem);max-height:75vh;padding:1rem;top:calc(100% + .75rem);right:0}.notification-panel .row{flex-wrap:wrap}.notification-item{display:flex;border-bottom:1px solid var(--line);border-left:3px solid var(--primary);gap:.5rem;margin-block-start:1rem;margin-block-end:1rem;padding-left:.75rem}.notification-item>div{flex:1;min-width:0}.notification-item p{white-space:pre-wrap;overflow-wrap:anywhere}.notification-item.is-read{opacity:.7}.severity-critical{border-left-color:var(--danger)}.severity-warning{border-left-color:#a66b06}.notification-item time,.chat-message time{color:var(--muted);font-size:.75rem}.form textarea{resize:vertical;border:1px solid var(--line);font:inherit;color:var(--ink);background:#fff;border-radius:.6rem;width:100%;min-width:0;padding:.7rem}.form fieldset{display:grid;border:0;gap:.8rem;min-width:0;margin:0;padding:0}.form .user-picker{border:1px solid var(--line);border-radius:.8rem;padding:.8rem}.picker-selected{display:flex;flex-wrap:wrap;gap:.4rem}.picker-selected>span{width:100%}.form .picker-option{display:flex;align-items: center;gap:.7rem}.form .picker-option input{flex:none;width:auto}.picker-option>span{overflow-wrap:anywhere;min-width:0}.picker-option small{display:block}.chat-create{margin-block-start:1rem;margin-block-end:1rem}.chat-layout{display:grid;grid-template-columns:minmax(14rem,22rem)minmax(0,1fr);gap:1.5rem}.chat-sidebar,.chat-main{min-width:0}.chat-choice{display:block;text-align:left;border:1px solid var(--line);color:var(--ink);cursor:pointer;font:inherit;overflow-wrap:anywhere;background:0 0;border-radius:.75rem;width:100%;margin-bottom:.5rem;padding:.8rem}.chat-choice.is-selected{border-color:var(--primary);background:var(--success-bg)}.chat-choice p{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.unread-badge{background:var(--primary);color:#fff;border-radius:1rem;margin-left:.5rem;padding:.15rem .4rem}.chat-messages{overflow:auto;display:flex;flex-direction:column;gap:.8rem;height:min(55vh,36rem);min-height:12rem;padding:.8rem 0}.chat-message{overflow-wrap:anywhere;background:#eee9de;border-radius:.9rem;align-self: flex-start;max-width:85%;padding:.7rem 1rem}.chat-message.own{background:var(--success-bg);align-self: flex-end}.chat-message p{white-space:pre-wrap;margin-block-start:.4rem;margin-block-end:.4rem}.chat-composer{max-width:none}.communication-tabs{margin-block-start:1rem;margin-block-end:2rem}.communication-form{max-width:48rem}.communications-grid{display:grid;grid-template-columns:minmax(0,1fr)minmax(0,1fr);gap:2rem}.communications-grid>section{min-width:0}.campaign-card{border-bottom:1px solid var(--line);overflow-wrap:anywhere;padding:1rem 0}.preserve-text{white-space:pre-wrap;overflow-wrap:anywhere}.communication-review{overflow:auto;border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:1rem;max-width:min(40rem,100vw - 2rem);max-height:80vh;padding:1.5rem}.communication-review::backdrop{background:#1f1a1480}.delivery-panel{margin-top:2rem}@media (max-width:750px){.chat-layout,.communications-grid{grid-template-columns:minmax(0,1fr)}.chat-sidebar{overflow:auto;max-height:18rem}.notification-panel{position:fixed;top:6rem;right:1rem}}.asset-manager{gap:18px}.asset-upload-panel{overflow:hidden;padding:0!important}.asset-upload-panel form{display:grid;grid-template-columns:minmax(320px,1.3fr)minmax(300px,.7fr);align-items:stretch}.asset-dropzone{display:grid;grid-template-columns:42px 1fr;cursor:pointer;background:#faf8f5;border:1px dashed #cec8c1;align-content: center;gap:3px 14px;min-height:132px;padding:24px;transition:background .15s,border-color .15s}.asset-dropzone.is-dragging{background:var(--success-bg);border-color:var(--primary)}.asset-dropzone input{position:absolute;opacity:0;pointer-events:none;width:1px;height:1px}.asset-drop-icon{grid-row:span 2;display:grid;color:var(--primary);background:var(--success-bg);border-radius:10px;place-items: center;width:42px;height:42px;font-size:22px}.asset-dropzone strong{align-self: end;font:500 18px/1.2 Space Grotesk,sans-serif}.asset-dropzone small{color:#7f7a74;font-size:11px}.asset-upload-meta{display:grid;border-left:1px solid #e6e2dc;align-content: center;gap:13px;padding:22px}.asset-upload-meta label{display:grid;color:#625e59;gap:6px;font-size:11px;font-weight:600}.asset-upload-meta label span{color:#99938d;font-weight:400}.asset-upload-meta input,.asset-search input{color:#242124;background:var(--paper);border:1px solid #d9d5cf;border-radius:7px;width:100%;min-height:40px;padding:9px 11px;font-family:inherit;font-size:13px}.asset-library-panel{overflow:hidden;padding:0!important}.asset-manager-toolbar{display:flex;border-bottom:1px solid #e8e5df;justify-content:space-between;align-items: end;gap:18px;padding:17px 18px}.asset-search{display:grid;grid-template-columns:minmax(240px,420px)auto auto;flex:1;gap:7px}.asset-toolbar-controls{display:flex;align-items: center;gap:7px}.asset-view-toggle{display:flex;background:#efede9;border-radius:7px;padding:2px}.asset-view-toggle button{color:#77726c;cursor:pointer;background:0 0;border:0;border-radius:5px;width:30px;height:30px;padding:0}.asset-view-toggle button.is-active{color:#242124;background:var(--paper);box-shadow:0 1px 4px #1e19161f}.asset-bulk-bar{display:flex;color:#6d6862;background:#faf9f7;border-bottom:1px solid #e8e5df;align-items: center;gap:12px;min-height:54px;padding:9px 18px;font-size:11px}.asset-bulk-bar>label{display:flex;align-items: center;gap:7px}.asset-bulk-bar .asset-pagination{margin-left:auto}.asset-bulk-bar .button{min-height:31px;padding:5px 9px;font-size:10px}.asset-manager-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));background:#e8e5df;gap:0}.asset-manager-card{position:relative;overflow:hidden;background:var(--paper);outline:1px solid #e8e5df;min-width:0}.asset-manager-card.is-selected{z-index:1;outline:2px solid var(--primary)}.asset-select{position:absolute;z-index:2;display:grid;background:#ffffffeb;border-radius:6px;place-items: center;width:28px;height:28px;top:10px;left:10px;box-shadow:0 2px 10px #18141229}.asset-manager-card .asset-preview{display:grid;overflow:hidden;contain:paint;cursor:pointer;border:0;border-radius:0;place-items: center;width:100%;min-width:0;height:158px;padding:0}.asset-manager-card .asset-preview img{display:block;object-fit:contain;object-position:center;width:100%;min-width:0;max-width:100%;height:100%;max-height:100%}.asset-card-info{display:grid;color:#282528;text-align:left;background:var(--paper);cursor:pointer;border:0;gap:3px;width:100%;padding:12px 13px 8px}.asset-card-info strong,.asset-card-info span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.asset-card-info strong{font-size:12px}.asset-card-info span,.asset-card-info small{color:#89847e;font-size:10px}.asset-card-actions{display:flex;gap:10px;padding:2px 13px 12px}.asset-card-actions button{color:var(--primary);cursor:pointer;background:0 0;border:0;padding:0;font-family:inherit;font-size:10px;font-weight:600}.asset-manager-table th:first-child{width:45px}.asset-manager-table th:nth-child(2){width:40%}.asset-manager-table th:last-child{width:100px}.asset-manager-table tr.is-selected{background:var(--success-bg)}.asset-table-name{display:flex;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items: center;gap:11px;width:100%;min-width:0;padding:0}.asset-table-name>span:last-child{display:grid;gap:3px;min-width:0}.asset-table-name strong,.asset-table-name small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.asset-table-name small{color:#8a857f}.asset-table-preview{display:grid;overflow:hidden;background:#eeeae4;border-radius:6px;flex:0 0 48px;place-items: center;width:48px;height:48px}.asset-table-preview img{object-fit:cover;width:100%;height:100%}.asset-file-icon.is-compact{width:29px;height:35px;font-size:7px}.asset-detail-backdrop{position:fixed;z-index:4000;backdrop-filter:blur(2px);background:#0d0c0f7a;inset:0}.asset-detail-panel{position:fixed;display:flex;overflow-y:auto;color:#242124;background:var(--paper);animation:.18s both asset-panel-in;border:0;flex-direction:column;width:min(480px,100vw);max-width:100vw;height:100%;max-height:100dvh;margin:0;padding:0;inset:0 0 0 auto;box-shadow:-24px 0 60px #0c0a0d3d}@keyframes asset-panel-in{0%{transform:translate(30px);opacity:.65}}.asset-detail-panel>header{display:flex;border-bottom:1px solid #e7e3dd;justify-content:space-between;align-items: start;gap:18px;padding:22px 24px}.asset-detail-panel h2{overflow-wrap:anywhere;margin:4px 0 0;font:400 27px/1.15 Space Grotesk,sans-serif}.asset-detail-close{color:#55515a;cursor:pointer;background:#f2f0ed;border:0;border-radius:50%;flex:none;width:34px;height:34px;padding:0;font-size:24px}.asset-detail-preview{display:grid;overflow:hidden;background-color:#e9e5df;background-image:linear-gradient(45deg,#ddd7cd 25%,#0000 25%),linear-gradient(-45deg,#ddd7cd 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#ddd7cd 75%),linear-gradient(-45deg,#0000 75%,#ddd7cd 75%);background-position:0 0,0 9px,9px -9px,-9px 0;background-size:18px 18px;place-items: center;min-height:280px;max-height:400px;padding:18px}.asset-detail-preview img{object-fit:contain;max-width:100%;max-height:360px}.asset-detail-form{display:grid;border-bottom:1px solid #e7e3dd;gap:12px;padding:22px 24px}.asset-detail-form label{display:grid;color:#625e59;gap:5px;font-size:11px;font-weight:600}.asset-detail-form input{color:#242124;border:1px solid #d8d3cd;border-radius:6px;padding:9px 10px;font-family:inherit;font-size:13px}.asset-detail-meta{display:grid;gap:0;margin:0;padding:8px 24px}.asset-detail-meta>div{display:grid;grid-template-columns:100px minmax(0,1fr);border-bottom:1px solid #eeeae5;gap:14px;padding:10px 0}.asset-detail-meta dt{color:#837e78;font-size:11px}.asset-detail-meta dd{overflow-wrap:anywhere;margin:0;font:10px/1.45 IBM Plex Mono,monospace}.asset-detail-meta button,.asset-variants button{color:var(--primary);cursor:pointer;background:0 0;border:0;padding:0;font-family:inherit;font-size:11px;font-weight:600}.asset-variants{border-left:2px solid var(--primary);background:#faf6f7;margin:12px 24px;padding:16px}.asset-variants h3{margin:0 0 4px;font:500 18px Space Grotesk,sans-serif}.asset-variants p{margin:0 0 11px;font-size:11px}.asset-variants>div{display:flex;gap:14px}.asset-detail-panel>footer{display:flex;border-top:1px solid #e7e3dd;gap:9px;margin-top:auto;padding:20px 24px}.asset-detail-panel>footer .button{flex:1}.asset-detail-panel::backdrop{backdrop-filter:blur(2px);background:#0d0c0f7a}.asset-detail-panel:not([open]){display:none}.asset-manager{display:grid;min-width:0}.asset-manager-header{display:flex;justify-content:space-between;align-items: center;gap:1rem}.asset-manager-header h1{margin:.25rem 0}.asset-manager-header p{margin:.5rem 0}.asset-manager .eyebrow{color:var(--muted);font-size:.85rem}.asset-manager fieldset.asset-library-controls{display:block;border:0;min-width:0;margin:0;padding:0}.asset-manager input[type=checkbox]{accent-color:var(--primary);flex:none;width:1rem;height:1rem}.asset-manager .visually-hidden{position:absolute;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0}.asset-dropzone:focus-within{outline:2px solid var(--primary);outline-offset:-4px}.asset-manager button:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.asset-manager-empty{text-align:center;color:var(--muted);padding:3rem 1rem}.asset-pagination{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items: center;gap:.5rem;padding:.75rem;font-size:.85rem}.asset-manager-toolbar select,.asset-pagination select{border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:.4rem;padding:.5rem}.asset-sort-direction{border:1px solid var(--line);background:var(--paper);cursor:pointer;border-radius:.4rem;width:2.3rem;height:2.3rem}.asset-table-scroll{overflow-x:auto}.asset-manager-table{border-collapse:collapse;table-layout:fixed;width:100%}.asset-manager-table th,.asset-manager-table td{border-bottom:1px solid var(--line);text-align:left;overflow-wrap:anywhere;padding:.75rem}.asset-manager-table th{color:var(--muted);font-size:.8rem}.asset-manager .asset-card-info{min-width:0;font-family:inherit}.asset-manager .asset-card-info strong{font-size:.9rem}.asset-manager .asset-card-info span,.asset-manager .asset-card-info small{font-size:.8rem}.asset-manager .asset-card-actions button{font-family:inherit;font-size:.8rem}.asset-detail-panel label,.asset-detail-panel input,.asset-detail-panel dd,.asset-detail-panel dt{font-size:.9rem}.asset-detail-meta button,.asset-variants button{font-family:inherit;font-size:.9rem}@media (max-width:1050px){.asset-upload-panel form{grid-template-columns:1fr}.asset-upload-meta{border-left:0;border-top:1px solid var(--line)}.asset-manager-toolbar{flex-direction:column;align-items:stretch}.asset-toolbar-controls{flex-wrap:wrap}}@media (max-width:700px){.asset-manager-header{flex-wrap:wrap}.asset-search{grid-template-columns:minmax(0,1fr)auto}.asset-search .button.text{grid-column:span 2}.asset-bulk-bar{flex-wrap:wrap;align-items: flex-start}.asset-bulk-bar .asset-pagination{width:100%;margin-left:0}.asset-manager-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.asset-manager-table th:nth-child(3),.asset-manager-table td:nth-child(3),.asset-manager-table th:nth-child(4),.asset-manager-table td:nth-child(4),.asset-manager-table th:nth-child(5),.asset-manager-table td:nth-child(5){display:none}.asset-manager-table th:nth-child(2){width:auto}.asset-manager-table th:last-child{width:80px}.asset-dropzone{grid-template-columns:32px minmax(0,1fr);gap:.75rem;padding:1rem}.asset-dropzone small{overflow-wrap:anywhere}.asset-upload-meta{padding:1rem}}@media (prefers-reduced-motion:reduce){.asset-detail-panel{animation:none}}.wedding-area{--primary:#b83958;--primary-ink:#fff;--line:#eadbd8;max-width:1240px;margin:auto}.fantasposi-brand{display:block;width:clamp(145px,18vw,210px);height:auto}.wedding-area .topbar{border-bottom:1px solid var(--line);padding-bottom:1rem}.wedding-area .menu,.admin-area .menu{flex-wrap:wrap}.wedding-area .langswitch{display:none}.wedding-hero{text-align:center;padding:clamp(2rem,7vw,6rem) 0 2rem}.wedding-eyebrow{text-transform:uppercase;letter-spacing:.17em;color:#9c4456;font-size:.73rem;font-weight:700}.wedding-logo{width:min(440px,85%);height:auto;margin:1.3rem 0}.wedding-hero h1,.guest-welcome h1{letter-spacing:-.045em;margin:.5rem 0 1.5rem;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.5rem,6vw,4.9rem);font-weight:400;line-height:1.08}.wedding-intro{color:var(--muted);max-width:580px;margin:0 auto 1.8rem;line-height:1.8}.wedding-button{color:#fff;background:#b83958;border-radius:100px;gap:1.2rem;padding:.9rem 1.5rem}.wedding-caption{color:var(--muted);font-size:.85rem;line-height:1.6}.wedding-details{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);gap:2rem;margin-top:3.5rem;padding:2rem 1rem}.wedding-details article+article{border-left:1px solid var(--line)}.wedding-details h2{font-family:Georgia,serif;font-size:1.35rem;font-weight:400}.wedding-details p{color:var(--muted)}.wedding-section{padding:3rem 1rem}.wedding-section>h2,.guest-coming h2{margin:.5rem 0 1.4rem;font-family:Georgia,serif;font-size:clamp(1.8rem,4vw,2.7rem);font-weight:400}.wedding-section p{color:var(--muted);line-height:1.7}.wedding-experience{border:1px solid var(--line);background:#fff9f5;border-radius:1.5rem;padding:clamp(1.4rem,4vw,3rem)}.wedding-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.6rem}.wedding-grid article>span:first-child{color:#b83958}.wedding-grid h3{font-size:1.2rem}.wedding-badge{display:inline-block;color:#96344d;white-space:nowrap;background:#ffedf0;border:1px solid #e8bbc5;border-radius:100px;padding:.4rem .8rem;font-size:.75rem}.wedding-footer{display:flex;color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:1rem;padding:3rem 0 0;font-size:.8rem}.wedding-footer a,.guest-event a{color:#9c4456}.wedding-programme{list-style:none;padding:0}.wedding-programme li{display:flex;border-bottom:1px solid var(--line);gap:2rem;padding:1rem 0}.wedding-programme h3{margin-top:0}.guest-home,.guest-photos{padding:2rem 0}.guest-welcome h1{font-size:clamp(2.5rem,5vw,4rem)}.guest-welcome>p{color:var(--muted)}.guest-event{display:flex;border:1px solid var(--line);background:#fff9f5;border-radius:1rem;flex-wrap:wrap;gap:1rem;margin:2rem 0;padding:1.2rem 1.5rem}.guest-event span{color:var(--muted);flex:1}.guest-card{display:flex;color:var(--ink);text-decoration:none;border:1px solid var(--line);background:#fffdf9;border-radius:1.2rem;flex-direction:column;padding:1.8rem;transition:transform .15s,box-shadow .15s}.guest-card:hover{box-shadow:var(--shadow);transform:translateY(-3px)}.guest-card p{color:var(--muted);flex:1;line-height:1.6}.guest-card>span:last-child{color:#9c4456;margin-top:1rem}.guest-coming{display:flex;background:#f8e9e4;border-radius:1.2rem;align-items: center;gap:2rem;margin:2rem 0;padding:2rem}.guest-coming>div{flex:1}.guest-coming h2{font-size:1.9rem}.guest-coming p{color:var(--muted);line-height:1.6}.guest-photo-heading{display:flex;flex-wrap:wrap;justify-content:space-between;align-items: center;gap:1rem}.guest-photo-heading h1{margin:.5rem 0;font-family:Georgia,serif;font-size:2.8rem;font-weight:400}.guest-file-input{position:absolute;overflow:hidden;opacity:0;width:1px;height:1px}.guest-photo-heading label{cursor:pointer}.guest-photo-heading label:focus-within{outline:3px solid #9c4456;outline-offset:4px}.guest-empty{text-align:center;border:1px dashed var(--line);background:#fff9f5;border-radius:1.2rem;margin:2rem 0;padding:4rem 1rem}.guest-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:2rem 0}.guest-photo-grid figure{border:1px solid var(--line);overflow:hidden;background:#fffdf9;border-radius:1rem;margin:0}.guest-photo-grid img{display:block;aspect-ratio:1;object-fit:cover;width:100%}.guest-photo-grid figcaption{overflow-wrap:anywhere;color:var(--muted);padding:1rem;font-size:.85rem}.wedding-area .form{max-width:560px;margin:2rem auto}@media (max-width:760px){.wedding-details,.wedding-grid{grid-template-columns:1fr}.wedding-details article+article{border-left:0;border-top:1px solid var(--line);padding-top:1.5rem}.wedding-area .topbar,.admin-area .topbar{flex-direction:column;align-items: flex-start}.wedding-area .menu{gap:.9rem;font-size:.9rem}.guest-coming{flex-direction:column;align-items: flex-start;padding:1.4rem}.guest-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (prefers-reduced-motion:reduce){.content{animation:none}.guest-card{transition:none}}
