/* Knock admin (shared by the WordPress admin page and the standalone service shell). 2026-10-30 redesign.
   Tokens: navy for nav / headings / primary, amber only for emphasis, 8pt spacing, 16px card radius, 1px border + faint shadow. */
.brand-reception-admin,.knock-app{--k-navy:#13345a;--k-navy-2:#0d2440;--k-amber:#f2a83b;--k-amber-soft:#fff7e8;--k-amber-ink:#8a5a0b;--k-bg:#f4f6f8;--k-card:#fff;--k-line:#e3e8ee;--k-line-2:#d7dde4;--k-ink:#17202a;--k-muted:#5b6775;--k-ok:#1e6b3a;--k-ok-bg:#e6f4ea;--k-warn:#a3261d;--k-warn-bg:#fdecea;--k-info:#1d4e89;--k-info-bg:#e8f0fb;--k-radius:16px;--k-radius-s:8px;--k-shadow:0 1px 2px rgba(16,24,40,.04);font-family:Inter,"Noto Sans TC",system-ui,-apple-system,sans-serif;color:var(--k-ink);font-size:14px;line-height:1.55}
.brand-reception-admin{max-width:1280px}
.brand-reception-admin h1 small{font-size:13px;color:#8a98a4;font-weight:500;margin-left:8px}
.bra-mode{background:var(--k-amber-soft);color:var(--k-amber-ink);padding:10px 14px;border-radius:12px;font-size:13px;margin:0 0 12px}
.bra-toolbar{display:flex;align-items:center;gap:18px;margin:12px 0}.bra-status{font-size:13px;color:var(--k-ok);min-height:1.2em}.bra-status.err{color:var(--k-warn)}
.bra-tabs{display:flex;flex-wrap:wrap;gap:4px;border-bottom:1px solid var(--k-line);margin-bottom:16px}.bra-tabs button{border:0;background:transparent;padding:10px 14px;cursor:pointer;font:inherit;font-size:14px;color:var(--k-muted);border-bottom:2px solid transparent;margin-bottom:-1px}.bra-tabs button[aria-selected=true]{color:var(--k-navy);font-weight:650;border-bottom-color:var(--k-navy)}
.knock-app .bra-tabs{display:none}
.bra-panel{display:flex;flex-direction:column;gap:16px}
.bra-panel-head h2{margin:0 0 4px;font-size:22px;font-weight:700;letter-spacing:-.01em}.bra-panel-head p{margin:0}
.bra-card{background:var(--k-card);border:1px solid var(--k-line);border-radius:var(--k-radius);padding:20px 22px;box-shadow:var(--k-shadow);display:flex;flex-direction:column;gap:14px}.bra-card-head h3{margin:0;font-size:16px;font-weight:700}.bra-card-head p{margin:4px 0 0}
.bra-hint{font-size:12px;color:var(--k-muted);margin:0}
.bra-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 24px}.bra-grid .wide{grid-column:1/-1}
.bra-field{display:flex;flex-direction:column;gap:6px;min-width:0}.bra-label{font-size:13px;font-weight:600}
.brand-reception-admin input[type=text],.brand-reception-admin input[type=url],.brand-reception-admin input[type=email],.brand-reception-admin input[type=number],.brand-reception-admin select,.brand-reception-admin textarea,.knock-app input[type=text],.knock-app input[type=url],.knock-app input[type=email],.knock-app input[type=number],.knock-app select,.knock-app textarea{width:100%;max-width:100%;box-sizing:border-box;min-height:40px;padding:8px 12px;border:1px solid var(--k-line-2);border-radius:var(--k-radius-s);font:inherit;font-size:16px;background:#fff;color:var(--k-ink)}
.brand-reception-admin textarea,.knock-app textarea{min-height:0;resize:vertical}
.brand-reception-admin input:focus-visible,.knock-app input:focus-visible,.knock-app textarea:focus-visible,.knock-app select:focus-visible,.knock-app button:focus-visible{outline:2px solid var(--k-navy);outline-offset:1px}
.bra-inline{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.bra-inline input[type=number]{width:80px}
.bra-color{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.bra-color-picker{width:36px;height:36px;padding:0;border:1px solid var(--k-line-2);border-radius:10px;background:none;cursor:pointer}.bra-hex{width:104px!important;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
.bra-swatches{display:flex;gap:6px}.bra-swatches button{width:28px;height:28px;border-radius:50%;border:3px solid #fff;box-shadow:0 0 0 1px var(--k-line-2);cursor:pointer;padding:0}.bra-swatches button.on{box-shadow:0 0 0 2px var(--k-navy)}
.bra-seg{display:inline-flex;padding:3px;border-radius:10px;background:#eceff3;width:fit-content;max-width:100%}.bra-seg button{padding:7px 16px;border-radius:8px;border:0;background:transparent;color:var(--k-muted);font:inherit;font-weight:600;cursor:pointer;white-space:nowrap}.bra-seg button[aria-pressed=true]{background:#fff;color:var(--k-navy);box-shadow:0 1px 2px rgba(16,24,40,.12)}.bra-seg.small button{padding:5px 12px;font-size:12px}
.bra-switch-row{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:12px 0;border-top:1px solid #eef1f4;cursor:pointer}.bra-switch-row:first-of-type{border-top:0;padding-top:0}.bra-switch-text{display:flex;flex-direction:column;gap:2px;min-width:0}.bra-switch-text strong{font-weight:600}.bra-switch-right{display:flex;align-items:center;gap:10px;flex:0 0 auto}.bra-switch-right input[type=number]{width:80px;min-height:36px}
.bra-switch{position:relative;display:inline-block;width:40px;height:24px;flex:0 0 auto}.bra-switch input{position:absolute;opacity:0;width:100%;height:100%;margin:0;cursor:pointer}.bra-switch-track{position:absolute;inset:0;border-radius:999px;background:#cfd6de;transition:background .15s}.bra-switch-track::after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 2px rgba(0,0,0,.2);transition:transform .15s}.bra-switch input:checked+.bra-switch-track{background:var(--k-navy)}.bra-switch input:checked+.bra-switch-track::after{transform:translateX(16px)}.bra-switch input:disabled+.bra-switch-track{opacity:.5}
.bra-pill{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:600;background:#eceff3;color:var(--k-muted);white-space:nowrap}.bra-pill.ok{background:var(--k-ok-bg);color:var(--k-ok)}.bra-pill.warn{background:var(--k-warn-bg);color:var(--k-warn)}.bra-pill.info{background:var(--k-info-bg);color:var(--k-info)}.bra-pill.amber{background:var(--k-amber-soft);color:var(--k-amber-ink)}
.bra-pill.ok::before,.bra-pill.warn::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}
.bra-actions{display:flex;gap:10px;margin-top:4px;align-items:center;flex-wrap:wrap}.bra-savebar{justify-content:flex-end;position:sticky;bottom:0;padding:12px 0;background:linear-gradient(to top,var(--k-bg) 70%,transparent)}.bra-dirty{font-size:13px;color:var(--k-amber-ink);font-weight:600;margin-right:auto}
.brand-reception-admin .button,.knock-app .button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:40px;padding:0 16px;border-radius:10px;border:1px solid var(--k-line-2);background:#fff;color:var(--k-ink);font:inherit;font-weight:600;cursor:pointer;text-decoration:none;line-height:1}
.brand-reception-admin .button-primary,.knock-app .button-primary,.knock-app .button.primary{background:var(--k-navy);border-color:var(--k-navy);color:#fff}.knock-app .button.secondary{background:#fff;color:var(--k-navy);border-color:var(--k-line-2)}.knock-app .button.amber{background:var(--k-amber);border-color:var(--k-amber);color:var(--k-navy)}.brand-reception-admin .button-link-delete,.knock-app .button-link-delete{color:var(--k-warn);border-color:transparent;background:transparent}.knock-app .button:disabled{opacity:.5;cursor:not-allowed}
.bra-approved{font-weight:650;color:var(--k-ok)}.bra-pending{font-weight:650;color:var(--k-warn)}
.bra-faq{border:1px solid var(--k-line);border-radius:12px;padding:14px 16px;margin:10px 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px;background:#fafbfc}.bra-faq .wide{grid-column:1/-1}.bra-faq .bra-row{grid-column:1/-1;display:flex;gap:10px;align-items:center;justify-content:space-between}
.bra-empty{padding:24px;border:1px dashed var(--k-line-2);border-radius:12px;text-align:center;color:var(--k-muted)}.bra-empty strong{display:block;color:var(--k-ink);margin-bottom:4px}.bra-empty p{margin:0;font-size:13px}
.bra-cases{display:flex;flex-direction:column;gap:10px}.bra-case{background:#fff;border:1px solid var(--k-line);border-radius:12px;padding:14px 16px;display:flex;flex-direction:column;gap:6px;box-shadow:var(--k-shadow)}.bra-case-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.bra-case .button{align-self:flex-start;margin-top:4px}
.bra-embed{background:#0f1f33;color:#dbe7f5;padding:14px;border-radius:12px;white-space:pre-wrap;overflow-wrap:anywhere;font:12.5px/1.6 ui-monospace,SFMono-Regular,Menlo,monospace;margin:0}
.bra-preview-note{font-size:12px;color:var(--k-muted);margin-top:10px}
/* settings two-column: form + sticky preview */
.bra-settings-body{display:flex;flex-wrap:wrap;gap:20px;align-items:flex-start}.bra-settings-col{flex:1 1 460px;min-width:0;display:flex;flex-direction:column;gap:16px}
.bra-preview{flex:0 1 400px;min-width:300px;position:sticky;top:16px;display:flex;flex-direction:column;gap:10px}.bra-preview-head{display:flex;justify-content:space-between;align-items:center}.bra-preview-head h3{margin:0;font-size:14px;font-weight:700;color:var(--k-muted)}
.bra-preview-frame{--pv-launcher:#f2a83b;--pv-ink:#13345a;--pv-head:#17365b;--pv-head-ink:#fff;--pv-x:20px;--pv-y:20px;position:relative;height:600px;border-radius:16px;background:#e9eef3;border:1px solid #dde3ea;overflow:hidden;display:flex;flex-direction:column;font-size:13px}
.bra-preview-bar{padding:10px 14px;background:#fff;border-bottom:1px solid var(--k-line);display:flex;align-items:center;gap:8px}.bra-preview-bar>span{width:8px;height:8px;border-radius:50%;background:var(--k-line-2)}.bra-preview-bar .bra-preview-url{width:auto;height:auto;border-radius:6px;background:var(--k-bg);flex:1;margin-left:8px;padding:4px 10px;font-size:12px;color:var(--k-muted)}
.bra-preview-page{flex:1;padding:20px;display:flex;flex-direction:column;gap:10px;opacity:.55}.bra-preview-line{height:10px;border-radius:4px;background:#d9dfe6}.bra-preview-line:first-child{height:14px;background:#cfd6de}.bra-preview-block{height:90px;border-radius:8px;background:#d9dfe6;margin-top:8px}
.bra-preview-launcher{position:absolute;right:var(--pv-x);bottom:var(--pv-y);width:var(--pv-size,56px);height:var(--pv-size,56px);border-radius:50%;background:var(--pv-launcher);color:var(--pv-ink);box-shadow:0 8px 20px rgba(0,0,0,.18);display:flex;align-items:center;justify-content:center}
.bra-preview-panel{position:absolute;right:var(--pv-x);bottom:calc(var(--pv-y) + var(--pv-size,56px) + 10px);width:300px;max-width:calc(100% - 32px);border-radius:16px;background:#fff;box-shadow:0 12px 32px rgba(16,24,40,.18);overflow:hidden;display:flex;flex-direction:column}
.bra-preview-frame.left .bra-preview-launcher,.bra-preview-frame.left .bra-preview-panel{right:auto;left:var(--pv-x)}
.bra-preview-frame.closed .bra-preview-panel{display:none}
.bra-preview-frame.mobile .bra-preview-page{max-width:360px;margin:0 auto;width:100%}.bra-preview-frame.mobile .bra-preview-panel{inset:44px 0 0 0;width:auto;max-width:none;border-radius:0}.bra-preview-frame.mobile .bra-preview-launcher{display:none}
.bra-preview-ph{padding:12px 14px;background:var(--pv-head);color:var(--pv-head-ink);display:flex;justify-content:space-between;align-items:center}.bra-preview-ph>div{display:flex;flex-direction:column}.bra-preview-sub{font-size:11px;opacity:.75}.bra-preview-x{font-size:16px;opacity:.8}
.bra-preview-log{padding:14px;display:flex;flex-direction:column;gap:8px;background:#f7f9fb;flex:1}.bra-preview-bot{align-self:flex-start;max-width:85%;padding:8px 10px;border-radius:12px 12px 12px 4px;background:#fff;border:1px solid var(--k-line);display:flex;flex-direction:column;gap:6px}.bra-preview-me{align-self:flex-end;max-width:85%;padding:8px 10px;border-radius:12px 12px 4px 12px;background:var(--pv-head);color:var(--pv-head-ink)}
.bra-preview-chips{display:flex;gap:6px;flex-wrap:wrap}.bra-preview-chips span{padding:4px 10px;border-radius:999px;border:1px solid var(--k-line-2);color:var(--k-muted);font-size:12px}.bra-preview-chips span.on{border-color:var(--pv-head);color:var(--pv-head)}
.bra-preview-foot{padding:10px 14px;border-top:1px solid var(--k-line);display:flex;gap:8px;align-items:center}.bra-preview-input{flex:1;padding:8px 10px;border-radius:999px;background:var(--k-bg);color:#8a96a3}.bra-preview-send{width:32px;height:32px;border-radius:50%;background:var(--pv-launcher)}
.bra-preview-mark{position:absolute;right:calc(var(--pv-x) + var(--pv-size,56px) + 12px);bottom:calc(var(--pv-y) + (var(--pv-size,56px) - 30px) / 2);display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 12px 0 6px;border:1px solid #c9d6e6;border-radius:999px;background:#fff;color:#4b5b6e;font-size:11.5px;font-weight:500;box-shadow:0 2px 10px rgba(16,37,63,.12);white-space:nowrap}.bra-preview-mark-ic{width:17px;height:17px;border-radius:50%;background:var(--pv-launcher,#f2a83b);color:var(--pv-ink,#13345a);display:inline-grid;place-items:center;flex:none}.bra-preview-mark-ic svg{width:10px;height:10px}.bra-preview-mark b{color:#13345a}.bra-preview-frame.left .bra-preview-mark{right:auto;left:calc(var(--pv-x) + var(--pv-size,56px) + 12px)}.bra-preview-frame.closed .bra-preview-mark,.bra-preview-frame.mobile .bra-preview-mark{display:none}
/* ---- standalone service shell ---- */
.knock-app{display:flex;flex-wrap:wrap;min-height:100vh;background:var(--k-bg)}
.knock-nav{flex:0 0 240px;box-sizing:border-box;padding:20px 16px;background:var(--k-navy);color:#fff;display:flex;flex-direction:column;gap:18px;min-height:100vh}
.knock-brand{display:flex;align-items:center;gap:10px;padding:4px 8px;font-weight:700;font-size:16px}.knock-brand .k{width:32px;height:32px;border-radius:10px;background:var(--k-amber);color:var(--k-navy);display:flex;align-items:center;justify-content:center}.knock-brand .amber{color:var(--k-amber)}
.knock-switch{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;box-sizing:border-box;padding:10px 12px;border-radius:10px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.08);color:#fff;font:inherit;cursor:pointer;text-align:left}.knock-switch small{display:block;font-size:11px;color:rgba(255,255,255,.65)}.knock-switch b{font-weight:600}
.knock-switch-menu{display:flex;flex-direction:column;gap:2px;padding:6px;border-radius:10px;background:rgba(0,0,0,.18)}.knock-switch-menu button{text-align:left;border:0;background:transparent;color:rgba(255,255,255,.85);padding:8px 10px;border-radius:8px;font:inherit;cursor:pointer;display:flex;justify-content:space-between;gap:8px}.knock-switch-menu button:hover,.knock-switch-menu button.on{background:rgba(255,255,255,.12);color:#fff}.knock-switch-menu small{font-size:11px;color:rgba(255,255,255,.6)}
.knock-menu{display:flex;flex-direction:column;gap:2px}.knock-menu button{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-radius:10px;border:0;background:transparent;color:rgba(255,255,255,.82);font:inherit;font-size:14px;cursor:pointer;text-align:left;width:100%}.knock-menu button span{display:flex;align-items:center;gap:10px}.knock-menu button svg{flex:0 0 18px}.knock-menu button[aria-current=page]{background:rgba(255,255,255,.14);color:#fff;font-weight:600}.knock-menu .badge{min-width:20px;padding:1px 7px;border-radius:999px;background:var(--k-amber);color:var(--k-navy);font-size:12px;font-weight:700;text-align:center}
.knock-plan{margin-top:auto;padding:14px;border-radius:12px;background:rgba(255,255,255,.08);display:flex;flex-direction:column;gap:8px;font-size:12px;color:rgba(255,255,255,.75)}.knock-plan .row{display:flex;justify-content:space-between}.knock-plan b{color:#fff}
.knock-user{display:flex;align-items:center;gap:10px;padding:4px 8px;font-size:12px;color:rgba(255,255,255,.75);overflow-wrap:anywhere}.knock-user .avatar{flex:0 0 28px;width:28px;height:28px;border-radius:50%;background:#e3e9f0;color:var(--k-navy);display:flex;align-items:center;justify-content:center;font-weight:700;text-transform:uppercase}.knock-user button{margin-left:auto;white-space:nowrap;flex:0 0 auto;border:0;background:transparent;color:rgba(255,255,255,.7);font:inherit;font-size:12px;cursor:pointer;text-decoration:underline}
.knock-main{flex:999 1 560px;min-width:0;box-sizing:border-box;padding:28px 32px 48px;display:flex;flex-direction:column;gap:20px}
.knock-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}.knock-head h1{margin:0;font-size:24px;font-weight:700;letter-spacing:-.01em}.knock-head .sub{color:var(--k-muted);font-size:13px;margin-top:2px}.knock-head .titles{display:flex;flex-direction:column;gap:4px}.knock-head .titles .line{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.knock-head .acts{display:flex;gap:10px;flex-wrap:wrap}
.knock-card{background:var(--k-card);border:1px solid var(--k-line);border-radius:var(--k-radius);padding:20px 22px;display:flex;flex-direction:column;gap:14px;box-shadow:var(--k-shadow)}.knock-card h2{margin:0;font-size:16px;font-weight:700}.knock-card .head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}
.knock-cols-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.knock-cols-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.knock-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.knock-steps li{display:flex;gap:12px;padding:14px;border-radius:12px;background:#f7f9fb}.knock-steps li.todo{background:var(--k-amber-soft);border:1px solid #f6d9a5}.knock-steps .n{flex:0 0 24px;height:24px;border-radius:50%;background:var(--k-amber);color:var(--k-navy);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700}.knock-steps li.done .n{background:#2f9e55;color:#fff}.knock-steps .t{display:flex;flex-direction:column;gap:4px;min-width:0}.knock-steps .t strong{font-weight:600}.knock-steps .t a,.knock-steps .t button{font-size:13px;font-weight:600;color:var(--k-navy);background:none;border:0;padding:0;cursor:pointer;text-align:left;font-family:inherit}
.knock-bar{height:6px;border-radius:999px;background:#eceff3;overflow:hidden}.knock-bar>span{display:block;height:100%;background:var(--k-navy)}.knock-bar.amber>span{background:var(--k-amber)}.knock-bar.hot>span{background:#d9480f}
.knock-stat .label{font-size:13px;color:var(--k-muted)}.knock-stat .num{display:flex;align-items:baseline;gap:6px}.knock-stat .num b{font-size:30px;font-weight:700;letter-spacing:-.02em}.knock-stat .num span{color:var(--k-muted)}
.knock-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.knock-list li{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-top:1px solid #eef1f4;align-items:center}.knock-list li:first-child{border-top:0;padding-top:0}.knock-list .t{display:flex;flex-direction:column;gap:2px;min-width:0}.knock-list .t strong{font-weight:600;overflow-wrap:anywhere}
.knock-kv{display:flex;justify-content:space-between;align-items:center;font-size:13px;gap:10px}.knock-kv .k{color:var(--k-muted);overflow-wrap:anywhere}
.knock-wizard{max-width:760px;display:flex;flex-direction:column;gap:16px}.knock-stepper{display:flex;gap:18px;list-style:none;padding:0;margin:0;counter-reset:s;flex-wrap:wrap}.knock-stepper li{counter-increment:s;font-size:13px;color:#8a98a4;display:flex;align-items:center;gap:8px}.knock-stepper li::before{content:counter(s);width:22px;height:22px;border-radius:50%;background:#eceff3;display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:12px}.knock-stepper li.on{color:var(--k-navy);font-weight:700}.knock-stepper li.on::before{background:var(--k-amber);color:var(--k-navy)}.knock-stepper li.done::before{background:#2f9e55;color:#fff;content:"✓"}
.knock-form{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end}.knock-form label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:600;flex:1 1 260px}.knock-err{color:var(--k-warn);font-size:13px;min-height:1.2em;margin:0}
.knock-verify{border:1px solid var(--k-line);border-radius:12px;padding:14px 16px;display:flex;flex-direction:column;gap:10px;background:#fafbfc}.knock-verify .head{display:flex;justify-content:space-between;align-items:center;gap:10px}.knock-verify b{overflow-wrap:anywhere}
.knock-members{list-style:none;padding:0;margin:0}.knock-members li{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 0;border-top:1px solid #eef1f4}.knock-members li:first-child{border-top:0}
.knock-auth{background:#fff;border:1px solid var(--k-line);border-radius:var(--k-radius);padding:28px;max-width:460px;margin:48px auto;box-shadow:var(--k-shadow)}.knock-auth h2{margin:0 0 6px;font-size:22px}.knock-auth p{margin:0 0 16px;color:var(--k-muted)}
.knock-warn{background:var(--k-amber-soft);color:var(--k-amber-ink);padding:10px 14px;border-radius:12px;font-size:13px;display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:0}
.knock-muted{font-size:12px;color:var(--k-muted)}
@media(max-width:1100px){.knock-cols-3{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:800px){.knock-nav{flex:1 1 100%;min-height:0;gap:12px;padding:14px 16px}.knock-menu{display:grid !important;grid-template-columns:1fr 1fr;gap:4px}.knock-menu button{padding:8px 10px}.knock-plan{margin-top:0}.knock-main{padding:20px 16px 40px}.knock-cols-3,.knock-cols-2,.knock-steps,.bra-grid,.bra-faq{grid-template-columns:1fr}.bra-preview{position:static;flex-basis:100%;min-width:0}.bra-preview-frame{height:520px}}
.brand-reception-admin [hidden],.knock-main [hidden],.knock-nav [hidden]{display:none !important}

/* Preview mock: channel chips, greeting card, launcher style (size / image / dot / animation) */
.bra-preview-chan{display:flex;flex-wrap:wrap;gap:6px;align-items:center;padding:0 12px 10px;background:#fff}.bra-preview-chip{display:inline-flex;align-items:center;gap:5px;padding:4px 9px;border-radius:999px;border:1px solid #d5dee6;background:#fff;color:#193e58;font-size:11px;font-weight:600}.bra-preview-chip svg{width:13px;height:13px}.bra-preview-chip-line{border-color:#06c75580;color:#0a8f3f}.bra-preview-chip-line svg{color:#06c755}.bra-preview-chip-booking svg{color:#e3942a}.bra-preview-chip-email svg{color:#4b6574}.bra-preview-chip-handoff{border-color:#9ab2c5}
.bra-preview-greet{position:absolute;right:var(--pv-x);bottom:calc(var(--pv-y) + var(--pv-size,56px) + 12px);width:min(260px,calc(100% - 32px));background:#fff;border:1px solid #d9e2e9;border-radius:14px;box-shadow:0 12px 32px rgba(16,24,40,.16);padding:12px 12px 10px;font-size:12px;color:#19323e;display:none}.bra-preview-frame.closed.greet .bra-preview-greet{display:block}.bra-preview-frame.left .bra-preview-greet{right:auto;left:var(--pv-x)}
.bra-preview-greet-x{position:absolute;top:4px;right:8px;color:#6b7c8a;font-size:15px}.bra-preview-greet-top{display:flex;gap:8px;align-items:center;margin:0 20px 6px 0}.bra-preview-greet-avatar{width:34px;height:34px;border-radius:50%;background:var(--pv-head);color:var(--pv-head-ink);display:grid;place-items:center;font-weight:700;background-size:cover;background-position:center;flex:none}.bra-preview-greet-who{display:flex;flex-direction:column;line-height:1.25}.bra-preview-greet-who span{font-size:10.5px;color:#62798a}.bra-preview-greet-msg{margin:0 0 8px;white-space:pre-wrap}.bra-preview-greet-actions{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.bra-preview-greet-cta{border-radius:999px;background:var(--pv-head);color:var(--pv-head-ink);padding:6px 11px;font-weight:600}.bra-preview-greet-chan{display:inline-flex;gap:6px}
.bra-preview-dot{position:absolute;top:0;right:0;width:12px;height:12px;border-radius:50%;background:#e5484d;border:2px solid #fff}.bra-preview-launcher{position:absolute}.bra-preview-launcher.img{background-size:cover;background-position:center}.bra-preview-launcher.img svg{display:none}
@keyframes pv-heartBeat{0%,100%{transform:scale(1)}14%{transform:scale(1.12)}28%{transform:scale(1)}42%{transform:scale(1.12)}70%{transform:scale(1)}}@keyframes pv-pulse{0%{box-shadow:0 8px 20px rgba(0,0,0,.18),0 0 0 0 var(--pv-launcher)}70%{box-shadow:0 8px 20px rgba(0,0,0,.18),0 0 0 12px transparent}100%{box-shadow:0 8px 20px rgba(0,0,0,.18),0 0 0 0 transparent}}@keyframes pv-bounce{0%,100%{transform:translateY(0)}30%{transform:translateY(-7px)}50%{transform:translateY(0)}65%{transform:translateY(-3px)}80%{transform:translateY(0)}}
.bra-preview-frame.closed .bra-preview-launcher.anim-heartBeat{animation:pv-heartBeat 1.8s ease-in-out infinite}.bra-preview-frame.closed .bra-preview-launcher.anim-pulse{animation:pv-pulse 2s ease-out infinite}.bra-preview-frame.closed .bra-preview-launcher.anim-bounce{animation:pv-bounce 2.2s ease-in-out infinite}@media(prefers-reduced-motion:reduce){.bra-preview-launcher{animation:none!important}}
