@import url('https://fonts.googleapis.com/css2?family=Assistant:wght@400;500;600;700;800&family=Heebo:wght@400;500;600;700;800;900&family=Manrope:wght@600&display=swap');
:root{--cream:#f8f5f0;--ink:#25231f;--nude:#e8d2c2;--muted:#746e66;--line:#e5dfd7;--white:#fff;--sage:#eaf0e7;--green:#446441;--amber:#9b6a25;font-family:Assistant,Arial,sans-serif;color:var(--ink);background:var(--cream);font-synthesis:none;scroll-behavior:smooth;scroll-padding-top:30px}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}button:disabled{opacity:.45;cursor:not-allowed}button:focus-visible,a:focus-visible{outline:3px solid #9d6747;outline-offset:5px}input:focus,select:focus,textarea:focus{outline:2px solid #8c6954;outline-offset:2px}.wrap{width:min(1200px,calc(100% - 96px));margin-inline:auto}.site-header{height:108px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:24px}.brand{font-family:Arial,sans-serif;font-size:36px;letter-spacing:-2.3px;font-weight:800;display:inline-flex;align-items:center;gap:5px}.brand-dot{font-size:27px;color:#9f7459;display:inline-block;transform:translateY(-5px)}nav{display:flex;gap:32px;font-size:17px;font-weight:600}nav a:hover,.text-link:hover{text-decoration:underline;text-underline-offset:6px}.button{border:1px solid var(--ink);border-radius:7px;padding:15px 24px;display:inline-flex;align-items:center;justify-content:center;gap:24px;font-weight:700;font-size:18px;line-height:1.4;transition:transform .16s,background .16s}.button:hover{transform:translateY(-2px)}.dark{background:var(--ink);color:#fff}.dark:hover{background:#403a33}.light{background:transparent;color:var(--ink);border-color:#d5cdc2}.light:hover{background:#f0ebe3}.small{font-size:16px;padding:11px 18px;gap:14px}.hero{display:grid;grid-template-columns:1.1fr 1fr;gap:40px;align-items:center;min-height:650px;padding-block:65px 80px}.eyebrow{font-size:14px;font-weight:700;letter-spacing:.3px;display:block;margin:0 0 22px}.hero .eyebrow{display:flex;align-items:center;gap:10px;font-size:16px}.tiny-star{font-size:23px;color:#8c6954}h1,h2,h3,p{margin-top:0}h1{font-family:Heebo,Arial,sans-serif;font-size:clamp(46px,5vw,70px);line-height:1.22;letter-spacing:-2.5px;font-weight:800;margin-bottom:25px}.outlined-word{position:relative;display:inline-block;z-index:0}.outlined-word:after{content:"";position:absolute;left:-7px;right:-7px;bottom:5px;height:20px;background:var(--nude);z-index:-1;transform:rotate(-1.5deg)}.hero-description{color:#625d56;font-size:21px;line-height:1.75;margin-bottom:30px}.hero-actions{display:flex;align-items:center;gap:24px}.text-link{font-size:17px;font-weight:700}.quiet-note{font-size:14px;color:var(--muted);margin:18px 0 0}.hero-art{height:465px;position:relative;display:grid;place-items:center;isolation:isolate}.orbit{position:absolute;width:420px;height:420px;border-radius:50%;background:#eee6dc;z-index:-2}.paper-back{position:absolute;width:287px;height:365px;background:var(--nude);transform:rotate(10deg) translate(-18px,-7px);box-shadow:0 18px 35px #49351c0c}.invitation{width:290px;height:387px;background:#fffcf5;transform:rotate(-6deg);padding:22px 25px;box-shadow:0 20px 45px #49351c1c;display:flex;flex-direction:column;justify-content:space-between;color:#25231f}.invitation-top{display:flex;justify-content:space-between;font-family:Arial,sans-serif;font-size:7px;letter-spacing:1px;font-weight:700;border-bottom:1px solid #c9c0b1;padding-bottom:13px}.invitation-title{font-family:Georgia,'Times New Roman',serif;font-weight:900;font-size:79px;line-height:.86;letter-spacing:-5px}.invitation-title span{font-style:italic}.invitation-bottom{border-top:1px solid #c9c0b1;padding-top:14px;display:flex;justify-content:space-between;align-items:center;font-family:Arial,sans-serif;font-size:8px;font-weight:600;letter-spacing:1.3px;line-height:1.6}.paper-heart{font-size:36px;line-height:1}.floating-note{position:absolute;bottom:18px;right:-2px;display:flex;align-items:center;gap:12px;border:1px solid #e3dacd;background:#fffdf9;padding:15px 22px;transform:rotate(3deg);box-shadow:0 10px 30px #3128200b;border-radius:8px}.floating-note strong,.floating-note span:not(.check-icon){display:block}.floating-note strong{font-size:18px}.floating-note div>span{font-size:14px;color:var(--muted);margin-top:3px}.check-icon{width:33px;height:33px;background:var(--sage);border-radius:50%;display:grid;place-items:center;color:var(--green);font-size:19px}.art-spark{position:absolute}.spark-one{left:14px;top:34px;font-size:68px;transform:rotate(13deg)}.spark-two{right:20px;top:28px;font-size:57px;color:#a2785b}.ticker{display:flex;align-items:center;justify-content:center;gap:42px;white-space:nowrap;overflow:hidden;background:var(--nude);padding:18px 0;font-size:19px;font-weight:600}.ticker b{font-size:23px;font-weight:400}.how{display:grid;grid-template-columns:1.2fr repeat(3,1fr);gap:35px;padding-block:75px}.section-intro .eyebrow{font-size:10px;letter-spacing:2px;color:var(--muted);margin-bottom:12px;direction:ltr;text-align:right}.section-intro h2{font-family:Heebo,Arial,sans-serif;font-size:30px;line-height:1.35;letter-spacing:-.7px;margin:0}.step{padding-top:5px}.step-number{font-family:Georgia,serif;color:#927d6b;font-size:17px;display:block;margin-bottom:16px}.step h3{font-size:21px;margin-bottom:8px}.step p{font-size:17px;line-height:1.6;color:var(--muted);margin:0}.workspace-section{padding:64px 0 54px;background:#efeae2;border-block:1px solid #e6dfd5}.workspace-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:30px}.workspace-heading .eyebrow{font-size:14px;color:#7c6958;margin-bottom:9px}.workspace-heading h2{font-family:Heebo,Arial,sans-serif;font-size:32px;font-weight:700;letter-spacing:-.8px;margin-bottom:10px}.workspace-heading p:last-child{color:var(--muted);font-size:17px;margin:0}.workspace{background:var(--white);border:1px solid #e2dbd1;border-radius:12px;box-shadow:0 12px 40px #43311e05;overflow:hidden}.workspace-top{padding:25px 30px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #f0ece5;gap:16px}.workspace-title{display:flex;align-items:center;gap:13px}.little-logo{width:42px;height:42px;border-radius:10px;background:var(--cream);display:grid;place-items:center;font-size:29px;color:#8c6954}.workspace-title h3{font-size:20px;margin:0 0 4px}.workspace-title div>span{font-size:13px;color:var(--muted)}.workspace-top-actions{display:flex;gap:18px}.icon-text{background:transparent;border:0;padding:6px;color:#645b50;font-size:14px;font-weight:600}.icon-text:hover{color:var(--ink);text-decoration:underline;text-underline-offset:4px}.stats{display:grid;grid-template-columns:repeat(4,1fr);margin:25px 30px 23px;background:var(--cream);border:1px solid #eee7df;border-radius:8px;padding:22px 0}.stats>div{padding-inline:27px;border-inline-end:1px solid #e6ded3}.stats>div:last-child{border:0}.stats span{font-size:15px;color:#6a6258;display:flex;gap:7px;align-items:center}.stats strong{font-family:Arial,sans-serif;font-size:37px;letter-spacing:-1.5px;font-weight:500;display:block;line-height:1.1;margin-top:12px}.status-dot{width:7px;height:7px;border-radius:50%;display:inline-block}.green{background:#6d8864}.amber{background:#b88c49}.table-toolbar{padding:0 30px;display:flex;align-items:center;justify-content:space-between;gap:15px}.search-box{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:6px;padding:0 12px;width:260px;background:#fff}.search-box>span{font-size:27px;color:#81786a}.search-box input{width:100%;padding:11px 0;border:0;background:transparent;min-width:0;font-size:16px}.search-box input:focus{outline:none}.search-box:focus-within{outline:2px solid #8c6954}.toolbar-buttons{display:flex;gap:10px}.filters{display:flex;gap:9px;padding:23px 30px 17px}.filter{border:0;background:transparent;border-radius:5px;padding:7px 14px;font-size:15px;color:#746b60;font-weight:600}.filter.active{background:#eee5da;color:#443b31}.filter:hover{background:#f5f1eb}.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:right;white-space:nowrap}th{background:#faf9f6;font-size:13px;color:#84796d;font-weight:600;padding:13px 20px;border-block:1px solid #f0ece6}th:first-child,td:first-child{padding-right:30px}th:last-child,td:last-child{padding-left:30px;text-align:left}td{padding:17px 20px;border-bottom:1px solid #f1eee9;font-size:17px}tbody tr:last-child td{border-bottom:0}.guest-cell{display:flex;align-items:center;gap:12px;font-weight:600}.avatar{width:34px;height:34px;border-radius:50%;background:#f1e7df;display:inline-grid;place-items:center;font-size:13px;color:#7b614c;font-weight:700}.phone-cell{font-family:Arial,sans-serif;font-size:14px;color:#7d766d;direction:ltr;text-align:right}.count-cell{font-family:Arial,sans-serif;font-size:15px}.badge{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;border-radius:5px;padding:5px 10px}.badge.yes{background:#edf2e9;color:#4e6943}.badge.pending{background:#faf2e3;color:#8d692e}.badge.no{background:#f6eae7;color:#925b50}.row-actions{display:flex;gap:13px;justify-content:flex-end}.row-action{background:transparent;border:0;color:#8c8071;padding:5px;font-size:13px}.row-action:hover{color:#332921;text-decoration:underline}.table-bottom{border-top:1px solid #eee9e2;padding:14px 30px;display:flex;align-items:center;justify-content:space-between;color:#8b8072;font-size:13px;gap:15px}.local-notice{display:flex;align-items:flex-start;gap:7px;font-size:14px;line-height:1.6;color:#7a7064;margin:18px 5px 0}.local-notice>span{font-size:22px;line-height:1}.empty-state{padding:38px 20px;text-align:center}.empty-state>span{font-size:32px;color:#a17b60}.empty-state h3{margin-top:12px;margin-bottom:8px;font-size:23px}.empty-state p{color:var(--muted);margin-bottom:0}.closing{padding-block:68px;text-align:center}.closing>span{font-size:36px;color:#9d775a;display:block;margin-bottom:18px}.closing h2{font-family:Heebo,Arial,sans-serif;font-size:32px;line-height:1.5;letter-spacing:-.5px;margin-bottom:20px}footer{border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding-block:25px;gap:20px}footer .brand{font-size:28px}footer .brand-dot{font-size:20px}footer p,footer>span{font-size:14px;color:var(--muted);margin:0}dialog{border:1px solid #dfd4c6;border-radius:13px;background:var(--cream);color:var(--ink);padding:30px;width:min(530px,calc(100% - 32px));max-height:90dvh;overflow:auto;box-shadow:0 25px 100px #0003}dialog::backdrop{background:#28201966;backdrop-filter:blur(4px)}.dialog-top{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:18px}.dialog-top .eyebrow{font-family:Arial,sans-serif;font-size:10px;letter-spacing:1.5px;color:#8c6e56;margin:0}.close-dialog:not(.button){border:0;background:transparent;font-size:26px;line-height:1;color:var(--muted);padding:0 6px}.close-dialog{cursor:pointer}dialog h2{font-family:Heebo,Arial,sans-serif;font-size:30px;letter-spacing:-1px;margin:0 0 12px}dialog p{color:#736a5f;line-height:1.6;margin-bottom:20px}dialog label{display:block;font-size:16px;font-weight:600;margin:17px 0}dialog input,dialog select,dialog textarea{display:block;width:100%;background:#fff;border:1px solid #dcd3c8;border-radius:6px;padding:12px;margin-top:7px;color:var(--ink);font-size:17px}.form-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:16px}.form-grid label{margin-block:0}.dialog-actions{display:flex;gap:10px;margin-top:25px}.dialog-actions .button{font-size:16px;gap:10px}.optional{font-weight:400;color:var(--muted)}.field-note{font-size:13px;margin-top:14px!important}.form-error{color:#9c3024;font-size:15px;margin:10px 0}.form-error:empty{display:none}.paste-preview{font-size:15px;line-height:1.7;background:#eee8df;border-radius:7px;padding:12px}.paste-preview:empty{display:none}.paste-preview ul{padding-right:20px;margin:5px 0}.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,20px);background:var(--ink);color:white;padding:14px 24px;border-radius:8px;box-shadow:0 4px 30px #0002;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;z-index:10;max-width:calc(100% - 32px);text-align:center}.toast.visible{opacity:1;transform:translate(-50%,0)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip{position:absolute;top:-100px;right:15px;z-index:20;background:#fff;padding:15px}.skip:focus{top:10px}[hidden]{display:none!important}
html{overflow-x:hidden}body{overflow-x:hidden}.table-scroll{max-width:100%;isolation:isolate}.workspace{min-width:0}
@media(min-width:1500px){.hero{min-height:710px;gap:80px}.hero-art{height:490px}.invitation{width:310px;height:414px}.invitation-title{font-size:88px}.paper-back{width:310px;height:400px}}
@media(max-width:1000px){.wrap{width:calc(100% - 48px)}.hero{gap:12px;min-height:580px}.hero-art{transform:scale(.88);margin-inline:-20px}h1{font-size:52px}.hero-description{font-size:19px}.hero-actions{gap:15px;flex-wrap:wrap}.hero-actions .text-link{font-size:16px}.how{gap:20px}.section-intro h2{font-size:26px}.step h3{font-size:19px}.step p{font-size:16px}.workspace-heading h2{font-size:28px}.stats>div{padding-inline:18px}}
@media(max-width:700px){.wrap{width:calc(100% - 36px)}.site-header{height:83px;gap:12px}.brand{font-size:30px}.brand-dot{font-size:23px}nav{display:none}.site-header .button{padding:9px 13px;font-size:14px}.hero{grid-template-columns:1fr;padding-block:42px 34px;gap:8px;min-height:0}.hero .eyebrow{font-size:14px;gap:7px;margin-bottom:20px}h1{font-size:clamp(43px,10.4vw,65px);letter-spacing:-2px}.hero-description{font-size:19px;margin-bottom:24px}.hero-actions{gap:20px}.hero-actions .button{font-size:16px;padding:13px 18px;gap:15px}.hero-actions .text-link{font-size:15px}.quiet-note{font-size:12px}.hero-art{height:380px;transform:scale(.83);margin:-12px -20px -16px}.floating-note{right:5px;bottom:-5px}.orbit{width:370px;height:370px}.ticker{gap:27px;font-size:16px;padding:14px 0}.how{grid-template-columns:1fr 1fr;gap:32px 22px;padding-block:45px}.section-intro h2{font-size:25px}.step{padding-top:0}.step-number{margin-bottom:10px}.step h3{font-size:19px}.step p{font-size:16px}.workspace-section{padding:35px 0}.workspace-heading{display:block;margin-bottom:23px}.workspace-heading h2{font-size:26px}.workspace-heading p:last-child{font-size:16px}.workspace-heading>.button{margin-top:17px}.workspace-top{padding:18px 15px}.workspace-top-actions{gap:6px}.workspace-title{gap:8px}.workspace-title h3{font-size:18px}.workspace-title div>span{font-size:11px}.little-logo{width:31px;height:34px;font-size:24px}.workspace-top-actions .icon-text{font-size:12px}.stats{margin:16px 13px;grid-template-columns:1fr 1fr;padding:0}.stats>div{padding:16px 17px}.stats>div:nth-child(2){border-inline-end:0}.stats>div:nth-child(-n+2){border-bottom:1px solid #e6ded3}.stats span{font-size:13px}.stats strong{font-size:31px;margin-top:9px}.table-toolbar{padding-inline:13px;flex-wrap:wrap}.search-box{width:100%}.toolbar-buttons{width:100%}.toolbar-buttons>.button{flex:1;font-size:14px;padding:10px 8px}.filters{padding:15px 13px 12px;gap:4px}.filter{padding:7px 11px;font-size:14px}th,td{padding:13px 12px}th:first-child,td:first-child{padding-right:16px}th:last-child,td:last-child{padding-left:16px}td{font-size:15px}.guest-cell{gap:8px}.avatar{width:29px;height:29px;font-size:11px}.table-bottom{padding:12px 14px;font-size:12px}.table-bottom .icon-text{font-size:12px}.local-notice{font-size:12px}.closing{padding-block:43px}.closing h2{font-size:25px}.closing>span{font-size:30px}footer{flex-wrap:wrap;gap:15px}footer p{font-size:13px}footer>span{font-size:11px;width:100%}dialog{padding:24px}dialog h2{font-size:26px}.form-grid{gap:10px}.dialog-actions .button{padding:12px 15px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
/* Minimal landing, revision 2 */
.site-header{direction:ltr;height:100px}.header-actions{display:flex;gap:22px;align-items:center}.site-header .brand{font-size:34px}.landing{padding-block:42px 25px;min-height:calc(100svh - 170px);display:flex;flex-direction:column;justify-content:space-between}.landing-topline{direction:ltr;display:flex;justify-content:space-between;font-family:Arial,sans-serif;font-size:9px;letter-spacing:1.9px;color:#867c70}.landing-title-wrap{position:relative;margin:45px 0 32px;direction:ltr}.landing h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(100px,14.5vw,205px);font-weight:700;line-height:.83;letter-spacing:-.075em;margin:0;text-align:left;position:relative;z-index:1}.joy-word{font-style:italic}.joy-period{color:#ac8266}.landing-flower{position:absolute;right:30px;bottom:14%;font-family:Arial,sans-serif;font-size:clamp(110px,18vw,240px);font-weight:400;color:#ddc1ac;line-height:1;transform:rotate(10deg)}.landing-bottom{display:flex;justify-content:space-between;align-items:center;gap:30px;padding-block:15px 28px;border-bottom:1px solid var(--line)}.landing-caption{font-family:Heebo,Arial,sans-serif;font-size:24px;letter-spacing:-.7px;margin:0 0 7px;font-weight:500}.landing-description{font-size:17px;color:var(--muted);margin:0}.landing-bottom .button{font-size:16px;gap:30px;padding:14px 23px}.landing-edition{font-family:Arial,sans-serif;font-size:8px;letter-spacing:1.8px;direction:ltr;display:block;margin-top:20px;color:#998b7c}footer{border-top:0;padding-block:20px;direction:ltr}footer>span{font-family:Arial,sans-serif;font-size:10px;letter-spacing:.3px}footer>span:last-child{font-family:Georgia,serif;font-style:italic;font-size:14px;letter-spacing:0}.workspace-mode .workspace-section{background:var(--cream);border:0;min-height:calc(100svh - 160px);padding-top:42px}.workspace-mode .workspace-heading h2{font-size:34px}.workspace-mode .workspace-heading .eyebrow{font-size:12px}.auth-tabs{display:flex;gap:25px;border-bottom:1px solid var(--line);margin:25px 0 30px}.auth-tab{font:inherit;font-weight:600;background:transparent;border:0;border-bottom:2px solid transparent;padding:0 0 12px;color:#8b8175}.auth-tab.active{border-bottom-color:var(--ink);color:var(--ink)}.auth-demo-note{font-size:13px;padding:12px 14px;border-radius:5px;background:#eee6dc;margin:20px 0!important}.auth-submit{width:100%;justify-content:space-between}.workspace-mode footer{border-top:1px solid var(--line)}
@media(max-width:700px){.site-header{height:80px}.site-header .brand{font-size:29px}.header-actions{gap:10px}.header-actions .icon-text{font-size:12px}.landing{min-height:calc(100svh - 143px);padding-block:30px 20px}.landing-topline{font-size:7px;letter-spacing:1px}.landing-title-wrap{margin:55px 0 60px}.landing h1{font-size:clamp(85px,19vw,135px);letter-spacing:-.07em}.landing-flower{font-size:85px;right:5px;bottom:-25px;opacity:.9}.landing-bottom{gap:20px;align-items:flex-start;flex-direction:column;padding-block:10px 28px}.landing-caption{font-size:23px}.landing-description{font-size:16px}.landing-bottom .button{width:100%;justify-content:space-between;padding:14px 20px}.landing-edition{font-size:7px;letter-spacing:1px}.workspace-mode .workspace-heading h2{font-size:27px}footer{flex-wrap:nowrap;gap:15px}footer>span{width:auto;font-size:9px}footer>span:last-child{font-size:12px}}

.header-actions{gap:10px}@media(max-width:700px){.header-actions{gap:7px}.header-actions .button{padding:9px 11px;font-size:13px}.workspace-mode .header-actions{gap:5px}.workspace-mode .header-actions .button{padding:8px;font-size:12px}}

/* Original hero, without the lower landing sections. */
#landing.hero{min-height:calc(100svh - 170px)}
@media(max-width:700px){#landing.hero{min-height:0;padding-bottom:40px}}
/* Scrollbar on the right, with RTL form content. */
dialog{direction:ltr;scrollbar-width:thin;scrollbar-color:#b9a695 transparent;scrollbar-gutter:stable}dialog>form{direction:rtl}dialog::-webkit-scrollbar{width:7px}dialog::-webkit-scrollbar-track{background:transparent}dialog::-webkit-scrollbar-thumb{background:#c4b3a3;border:2px solid var(--cream);border-radius:12px}dialog::-webkit-scrollbar-thumb:hover{background:#9d8773}
/* Compact authentication form. Keep overflow available on short screens. */
#auth-dialog{padding:22px 26px;width:min(460px,calc(100% - 32px));scrollbar-gutter:auto}#auth-dialog .dialog-top{margin-bottom:12px}#auth-dialog .auth-tabs{margin:12px 0 18px;gap:24px}#auth-dialog .auth-tab{padding-bottom:8px;font-size:15px}#auth-dialog h2{font-size:26px;margin-bottom:6px}#auth-dialog #auth-subtitle{font-size:14px;margin-bottom:15px}#auth-dialog label{font-size:14px;margin:11px 0}#auth-dialog .form-grid{grid-template-columns:1fr 1fr;gap:12px}#auth-dialog .form-grid label{margin:0}#auth-dialog input{padding:8px 10px;margin-top:5px;font-size:15px;height:38px}#auth-dialog .auth-demo-note{font-size:11px;line-height:1.5;padding:9px 11px;margin:14px 0!important}#auth-dialog .auth-submit{padding:10px 16px;font-size:15px}#auth-dialog .form-error{font-size:13px;margin:6px 0}@media(max-width:480px){#auth-dialog{padding:20px;width:calc(100% - 28px)}}
/* Guest workspace: compact rows, clear columns and RTL action order. */
.ui-icon{width:18px;height:18px;display:block;flex:none}[data-icon]{display:inline-flex;align-items:center;justify-content:center}.workspace-mode .site-header{height:78px}.workspace-mode .workspace-section{padding-top:25px}.workspace-mode .workspace-heading{margin-bottom:20px}.workspace-mode .workspace-heading h2{font-size:29px;margin-bottom:6px}.workspace-heading .eyebrow{margin-bottom:5px}.workspace-heading p:last-child{font-size:14px}.workspace-top{padding:16px 22px}.workspace-title h3{font-size:18px}.workspace-title .little-logo{width:34px;height:34px;font-size:24px}.workspace-top-actions{gap:16px}.icon-text{display:inline-flex;align-items:center;gap:7px;font-size:13px}.icon-text .ui-icon{width:15px;height:15px}.stats{margin:18px 22px;padding:14px 0}.stats>div{padding-inline:22px}.stats span{font-size:13px;gap:7px}.stats .ui-icon{width:16px;height:16px;color:#8c7b68}.stats>div:nth-child(3) .ui-icon{color:#56754a}.stats>div:nth-child(4) .ui-icon{color:#9b742d}.stats strong{font-size:29px;margin-top:8px;letter-spacing:-1px}.table-toolbar{padding:0 22px;direction:rtl;align-items:center}.toolbar-buttons{gap:9px}.toolbar-buttons .button{font-size:14px;padding:10px 14px;gap:8px}.workspace .button:hover{transform:none}.search-box{width:270px;min-width:170px;gap:9px;padding:0 11px;background:#fcfbf8}.search-box>span{color:#8c8175;font-size:inherit}.search-box input{padding:10px 0;font-size:14px}.filters{gap:7px;padding:16px 22px 13px}.filter{font-size:13px;padding:6px 12px;border:1px solid transparent}.filter.active{background:#eee5da;border-color:#dfd1c2}.table-scroll{max-height:520px;overflow:auto;scrollbar-width:thin;scrollbar-color:#c5b9aa transparent}.workspace table{font-size:14px;min-width:690px;table-layout:fixed}.workspace th{position:sticky;top:0;z-index:1;background:#f2eee8;border-top:1px solid #e4dcd1;border-bottom:1px solid #ded4c7;color:#665c50;font-size:12px;letter-spacing:0;font-weight:700;padding:11px 14px}.workspace th:nth-child(1){width:46px}.workspace th:nth-child(2){width:29%}.workspace th:nth-child(3){width:21%}.workspace th:nth-child(4){width:14%}.workspace th:nth-child(5){width:20%}.workspace th:nth-child(6){width:110px}.workspace td{padding:8px 14px;height:46px;font-size:14px;border-bottom:1px solid #e9e4dd}.workspace td:not(:last-child),.workspace th:not(:last-child){border-inline-end:1px solid #f0ece6}.workspace th:first-child,.workspace td:first-child{padding-inline:10px}.workspace th:last-child,.workspace td:last-child{padding-inline:10px}.workspace tbody tr:nth-child(even){background:#fcfbf9}.workspace tbody tr:hover{background:#f4efe7}.guest-cell{font-weight:600;font-size:15px;white-space:normal;line-height:1.35}.workspace .phone-cell{font-size:13px;letter-spacing:.4px;font-variant-numeric:tabular-nums;color:#655e55}.workspace .count-cell{text-align:center}.count-value{font:600 13px Arial,sans-serif;display:inline-flex;align-items:center;justify-content:center;min-width:26px;height:25px;border:1px solid #e7e1d8;border-radius:5px;background:#fff}.row-number{font:12px Arial,sans-serif;color:#a09689;text-align:center}.badge{font-size:12px;padding:4px 7px;gap:5px;white-space:nowrap}.badge .ui-icon{width:13px;height:13px}.row-actions{gap:5px;align-items:center;justify-content:flex-start}.row-action{display:inline-flex;align-items:center;justify-content:center;gap:5px;font-size:12px;padding:6px;border:1px solid transparent;border-radius:5px;color:#6b6155;min-height:30px}.row-action .ui-icon{width:15px;height:15px}.row-action:hover{background:#ebe3d7;border-color:#dacbb8;text-decoration:none}.delete-action{color:#9b887b}.delete-action:hover{color:#9d4438;background:#f9eae6;border-color:#eecfc7}.workspace th.actions-heading{text-align:right}.table-bottom{padding:10px 22px;font-size:12px}.local-notice{font-size:12px;margin-top:13px}.workspace-mode footer{padding-block:15px}
@media(max-width:700px){.workspace-mode .workspace-section{padding-top:22px}.workspace-mode .workspace-heading h2{font-size:25px}.workspace-top{padding:14px}.workspace-top-actions{gap:8px;flex-wrap:wrap;justify-content:flex-end}.workspace-top-actions .icon-text{font-size:11px;gap:4px}.stats{margin:14px;padding:0}.stats>div{padding:12px 14px}.stats strong{font-size:26px;margin-top:6px}.table-toolbar{padding:0 14px;gap:10px}.toolbar-buttons{width:100%}.toolbar-buttons .button{flex:1;font-size:13px;gap:6px;padding:10px}.search-box{width:100%}.filters{padding:13px 14px 11px;gap:4px}.filter{font-size:12px;padding:6px 10px}.workspace td{height:46px}.table-bottom{padding-inline:14px}.workspace-heading .button{font-size:13px}.workspace-mode .header-actions .button{padding:8px;font-size:12px}}
.workspace-mode #signup-button,.workspace-mode #login-button{display:none}
@media(max-width:700px){.workspace-top{flex-direction:column;align-items:stretch;gap:12px}.workspace-title{width:100%}.workspace-title div>span{font-size:11px}.workspace-top-actions{justify-content:flex-start;gap:17px}.workspace-top-actions .icon-text{font-size:12px}.workspace-title h3{white-space:nowrap}}

/* Stronger RSVP cues, always paired with labels and icons. */
.badge{font-weight:700;padding:5px 9px;border:1px solid transparent;min-width:95px;justify-content:flex-start}
.badge.yes{background:#dcefdc;color:#23502c;border-color:#a6cda8}
.badge.no{background:#f8dedb;color:#842f2b;border-color:#e4aaa3}
.badge.pending{background:#fff0c4;color:#705014;border-color:#e5c66e}
.badge .ui-icon{width:14px;height:14px;stroke-width:2.3}
.workspace .guest-row.status-yes td:first-child{box-shadow:inset -3px 0 #4d925b}
.workspace .guest-row.status-no td:first-child{box-shadow:inset -3px 0 #c96359}
.workspace .guest-row.status-pending td:first-child{box-shadow:inset -3px 0 #d7ad40}
.filter[data-filter="yes"]{color:#285b33}.filter[data-filter="no"]{color:#8c3932}.filter[data-filter="pending"]{color:#795717}
.filter[data-filter]:not([data-filter="all"]):before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;margin-inline-end:6px;vertical-align:middle;background:currentColor}
.filter[data-filter="yes"].active{background:#dcefdc;border-color:#a6cda8}
.filter[data-filter="no"].active{background:#f8dedb;border-color:#e4aaa3}
.filter[data-filter="pending"].active{background:#fff0c4;border-color:#e5c66e}
.stats>div:nth-child(3){background:#edf6e9}.stats>div:nth-child(3) strong,.stats>div:nth-child(3) .ui-icon{color:#285b33}
.stats>div:nth-child(4){background:#fff6db}.stats>div:nth-child(4) strong,.stats>div:nth-child(4) .ui-icon{color:#795717}
/* Keep phone values beside the count column; expose filter and sort state. */
.workspace th:nth-child(2){width:auto}.workspace th:nth-child(3){width:145px}.workspace th:nth-child(4){width:110px}.workspace th:nth-child(5){width:135px}.workspace .phone-cell{text-align:left;padding-inline-end:14px}.workspace th:nth-child(3){text-align:left}.sort-label{font-size:10px;font-weight:500;color:#8b7d6d;display:inline-block;margin-inline-start:6px;white-space:nowrap}.filter-bar{display:flex;gap:13px;align-items:center;padding:16px 22px 14px;flex-wrap:wrap}.filter-label{font-size:12px;color:#786c5d;font-weight:600}.filter-bar .filters{display:flex;padding:0;gap:7px}.filter{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid #e6dfd5;background:#fff;padding:7px 11px;border-radius:6px;min-height:34px;font-weight:600}.filter[data-filter]:not([data-filter="all"]):before{display:none}.filter .ui-icon{width:14px;height:14px;stroke-width:2.7}.filter-count{font-family:Arial,sans-serif;font-size:11px;background:#f1ede6;color:inherit;min-width:19px;line-height:19px;text-align:center;border-radius:4px;padding-inline:4px}.filter.active{font-weight:800;box-shadow:inset 0 0 0 1px currentColor}.filter[data-filter="all"].active{color:#fff;background:#302b25;border-color:#302b25}.filter.active .filter-count{background:#ffffff42}.filter[data-filter="all"].active .filter-count{background:#ffffff29}.table-bottom{flex-wrap:wrap}.table-bottom>span{line-height:1.6}@media(max-width:700px){.filter-bar{padding:14px;gap:8px}.filter-bar .filters{gap:5px;flex-wrap:wrap}.filter{font-size:12px;padding:7px 9px;gap:5px}.filter-label{width:100%}.table-bottom>span{font-size:11px}.workspace th:nth-child(2){width:auto}}
/* Unified filter control and consistent table alignment. */
.filter-bar{margin:0 22px;padding:16px 0;border-bottom:1px solid #ded6ca;gap:14px}.filter-bar .filters{display:inline-flex;gap:0;padding:4px;border:1px solid #d9d0c4;border-radius:8px;background:#f2eee7;box-shadow:inset 0 1px 2px #4e392808}.filter-bar .filter{border:1px solid transparent;border-radius:5px;background:transparent;min-height:34px;padding:7px 13px;color:#776e62;box-shadow:none;font-weight:600;gap:7px}.filter-bar .filter+.filter{margin-inline-start:3px}.filter-bar .filter .filter-count{background:#e7e1d8;color:#776e62}.filter-bar .filter.active{background:#fff;color:#29251f;border:1px solid #d3c6b6;box-shadow:0 1px 3px #44301c16;font-weight:800}.filter-bar .filter.active .filter-count{background:#e8ddcf;color:#403427}.filter-bar .filter:hover:not(.active){background:#eae4db}.filter-bar .filter .ui-icon{color:#79644b}.workspace table{table-layout:fixed;min-width:680px}.workspace th:nth-child(1){width:42px}.workspace th:nth-child(2){width:auto}.workspace th:nth-child(3){width:165px}.workspace th:nth-child(4){width:112px}.workspace th:nth-child(5){width:142px}.workspace th:nth-child(6){width:110px}.workspace td:nth-child(2),.workspace th:nth-child(2){text-align:right;padding-inline:16px}.workspace .phone-cell,.workspace th:nth-child(3){text-align:center;padding-inline:10px}.workspace .count-cell,.workspace th:nth-child(4){text-align:center;padding-inline:10px}.workspace td:nth-child(5),.workspace th:nth-child(5){text-align:center;padding-inline:10px}.workspace td:nth-child(6),.workspace th.actions-heading{text-align:center;padding-inline:8px}.row-actions{justify-content:center}.workspace td:not(:last-child),.workspace th:not(:last-child){border-inline-end:1px solid #e9e2d8}.workspace th{border-top:0}.workspace td{height:44px;padding-block:7px}.workspace .count-value{background:transparent;border:0;min-width:24px;height:24px;font-size:14px}.badge{min-width:102px;justify-content:center}.sort-label{font-size:10px;margin-inline-start:8px}.workspace tbody tr:hover{background:#f5f1eb}.workspace .guest-row.status-yes td:first-child,.workspace .guest-row.status-no td:first-child,.workspace .guest-row.status-pending td:first-child{box-shadow:none}.table-bottom{border-top:1px solid #ded6ca;padding-block:12px}.workspace-top{border-bottom:1px solid #ded6ca}
@media(min-width:1100px){.workspace th:nth-child(2){width:auto}.workspace th:nth-child(3){width:190px}.workspace th:nth-child(4){width:140px}.workspace th:nth-child(5){width:170px}.workspace th:nth-child(6){width:125px}}
@media(max-width:700px){.filter-bar{margin-inline:14px;padding-block:12px;gap:8px}.filter-bar .filters{display:flex;width:100%;padding:3px;flex-wrap:nowrap}.filter-bar .filter{flex:1;padding:7px 5px;font-size:11px;gap:4px;min-width:0}.filter-bar .filter+.filter{margin-inline-start:1px}.filter-count{min-width:15px;font-size:10px;padding-inline:3px;line-height:17px}.filter-bar .filter .ui-icon{width:12px;height:12px}.workspace td{height:44px}}
.stats>div:nth-child(3),.stats>div:nth-child(4){background:transparent}.stats>div:nth-child(3) strong,.stats>div:nth-child(4) strong{color:var(--ink)}.stats>div:nth-child(3) .ui-icon,.stats>div:nth-child(4) .ui-icon{color:#8c7b68}
/* Warm surfaces, with plain counts instead of nested badges. */
.workspace{background:#f7f3ec;border-color:#ddd3c6;box-shadow:none}.workspace-top{background:transparent}.stats{background:#eee7dc;border-color:#e0d6c8}.workspace tbody tr,.workspace tbody tr:nth-child(even){background:transparent}.workspace tbody tr:nth-child(even){background:#f0e9df66}.workspace tbody tr:hover{background:#eae0d2}.workspace th{background:#eae2d6}.workspace td:not(:last-child),.workspace th:not(:last-child){border-inline-end-color:#e4dbce}.workspace td{border-bottom-color:#e3dacc}.search-box{background:#f2ece3;border-color:#dbd0c1}.filter-bar .filters{background:#ede5da;border-color:#d6c9b8;box-shadow:none}.filter-bar .filter.active{background:#decebb;border-color:#c6b195;box-shadow:none;color:#342a1f}.filter-bar .filter .filter-count,.filter-bar .filter.active .filter-count{background:transparent;border:0;border-radius:0;padding:0;min-width:0;line-height:inherit;font:inherit;color:inherit;font-weight:400}.filter-count:before{content:"("}.filter-count:after{content:")"}.filter-bar .filter{gap:5px}.filter-bar .filter:hover:not(.active){background:#e6dbcd}.workspace .count-value{background:transparent}
/* Preserve the page's original cream; physical borders stay consistent in LTR phone cells. */
.workspace{background:var(--cream);border-color:#e2dbd1}.workspace-top{background:transparent}.stats{background:var(--cream);border-color:#eee7df}.workspace th{background:#f2eee8}.workspace tbody tr,.workspace tbody tr:nth-child(even){background:transparent}.workspace tbody tr:hover{background:#f0eae1}.search-box{background:var(--cream);border-color:#dcd3c8}.filter-bar .filters{background:#f2eee7;border-color:#d9d0c4}.filter-bar .filter.active{background:#e3d5c5;border-color:#cdbba4}.workspace td:not(:last-child),.workspace th:not(:last-child){border-inline-end:0;border-left:1px solid #ded6cb}.workspace td:last-child,.workspace th:last-child{border:0;border-bottom:1px solid #ded6cb}.workspace td{border-bottom:1px solid #e4ddd3}.workspace th{border-bottom:1px solid #ded6cb}

.stats strong:after{content:"אנשים";font:400 12px Assistant,Arial,sans-serif;letter-spacing:0;margin-inline-start:7px;color:#807366}.stats>div:nth-child(3) .ui-icon{color:#8c7b68}

/* Primary actions first; filters and search share the next row. */
.table-toolbar{justify-content:flex-start;padding-block:2px 0}
.filter-bar{justify-content:space-between;flex-wrap:nowrap;gap:18px;padding-block:16px}
.filter-group{display:flex;align-items:center;gap:10px;min-width:0;flex-shrink:0}
.filter-bar .filter-label{white-space:nowrap;font-size:12px}
.filter-bar .search-box{width:235px;min-width:155px;flex:0 1 235px}
.filter-bar .filters{flex-wrap:nowrap}
.filter-bar .filter{padding:7px 10px;white-space:nowrap}
@media(max-width:700px){.table-toolbar .toolbar-buttons{width:auto;max-width:100%}.table-toolbar .toolbar-buttons .button{flex:none}.filter-bar{flex-wrap:wrap;gap:12px}.filter-group{width:100%;flex-wrap:wrap;gap:8px}.filter-group .filter-label{width:auto}.filter-group .filters{width:auto;flex:1}.filter-bar .search-box{width:100%;flex:1 1 100%}.filter-bar .filter{padding:7px 6px}}

/* Compact guest editor, matching the registration dialog. */
#guest-dialog{width:min(440px,calc(100% - 28px));padding:22px 24px;scrollbar-gutter:auto}
#guest-dialog .dialog-top{margin-bottom:13px}
#guest-dialog h2{font-size:25px;margin-bottom:7px}
#guest-dialog form>p:not(.form-error){font-size:13px;line-height:1.5;margin-bottom:14px}
#guest-dialog label{font-size:14px;margin:11px 0}
#guest-dialog input,#guest-dialog select{height:38px;font-size:15px;padding:7px 10px;margin-top:5px}
#guest-dialog .form-grid{gap:12px;grid-template-columns:1.5fr 1fr}
#guest-dialog .form-grid label{margin:0}
#guest-dialog .field-note{font-size:11px!important;line-height:1.5;margin:11px 0!important}
#guest-dialog .dialog-actions{margin-top:17px;gap:9px}
#guest-dialog .dialog-actions .button{padding:9px 17px;font-size:14px}
#guest-dialog .form-error{font-size:13px;margin:9px 0}
@media(max-width:480px){#guest-dialog{padding:20px}}

/* Event details are the first inline section, without a create-event popup. */
.event-details{margin:0 0 25px;padding:0 0 23px;border-bottom:1px solid #ddd4c7}
.event-details-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:17px}
.event-details-heading h2{font-size:20px;margin:0;display:flex;align-items:center;gap:10px;font-weight:700}
.step-index{font:400 12px Arial,sans-serif;color:#897962;border:1px solid #d8cbbb;border-radius:5px;padding:5px 7px}
#event-save-status{font-size:11px;color:#8b7d6e}
.event-fields{display:grid;grid-template-columns:minmax(200px,1fr) minmax(180px,260px);gap:22px}
.event-fields label{font-size:13px;font-weight:600;color:#61594e;display:block}
.event-fields input{display:block;width:100%;height:40px;padding:8px 12px;margin-top:7px;border:1px solid #d9cfc0;border-radius:6px;background:transparent;color:var(--ink);font-size:15px;min-width:0}
.event-fields input::placeholder{color:#9b8e7d;font-size:14px}
.event-fields .optional{font-size:11px;font-weight:400}
.workspace-title h2{font-size:18px;margin:0 0 4px;line-height:1.3}
@media(max-width:700px){.event-details{margin-bottom:20px;padding-bottom:19px}.event-details-heading{margin-bottom:14px}.event-details-heading h2{font-size:18px}.event-fields{grid-template-columns:1fr;gap:13px}.event-fields input{height:38px}.workspace-title h2{font-size:18px}.event-fields .optional{font-size:11px}}
/* Event management tabs. */
.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:3px 0 26px}.panel-heading .eyebrow{font-size:11px;font-weight:500;color:#8e8070;margin-bottom:7px}.panel-heading h1{font-family:Heebo,Arial,sans-serif;font-size:30px;font-weight:700;letter-spacing:-.8px;line-height:1.3;margin:0}.demo-pill{font-size:11px;color:#887765;border:1px solid #ddd1c2;border-radius:5px;padding:6px 9px;white-space:nowrap}.panel-tabs{display:flex;gap:7px;border-bottom:1px solid #d9cebf;margin-bottom:26px;overflow-x:auto;scrollbar-width:thin}.panel-tab{display:flex;align-items:center;gap:7px;flex:none;border:0;border-bottom:3px solid transparent;background:transparent;color:#897a68;font-size:16px;font-weight:600;padding:13px 16px 15px;white-space:nowrap;border-radius:5px 5px 0 0}.panel-tab:hover{background:#ede5db80;color:var(--ink)}.panel-tab.selected{color:#302a23;border-bottom-color:#8b6d51;background:#eee5d9}.paid-label{font-size:10px;font-weight:500;border:1px solid #d6c5af;padding:3px 6px;border-radius:4px;color:#826445;vertical-align:middle}.event-details{border:1px solid #ded4c7;border-radius:9px;padding:23px;margin-bottom:0;background:var(--cream)}.event-details-heading h2{font-size:22px}.event-fields{grid-template-columns:1fr 260px}.extra-event-fields{margin-top:20px}.full-field{grid-column:1/-1}.panel-bottom-actions{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid #e2d8ca;padding-top:19px;margin-top:23px}.panel-help{font-size:13px;color:#8b7d6c;line-height:1.7;margin:0}.tab-intro{margin-bottom:24px}.tab-intro h2{font-family:Heebo,Arial,sans-serif;font-size:25px;font-weight:600;letter-spacing:-.5px;margin:0 0 7px}.tab-intro p{font-size:15px;color:#847666;margin:0;line-height:1.7}.editor-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:start}.panel-card{border:1px solid #ded4c7;border-radius:9px;background:var(--cream);padding:23px}.panel-card h3{font-size:17px;margin:0 0 15px}.editor-controls label{font-size:14px;font-weight:600;display:block;margin:17px 0;color:#64594a}.editor-controls input,.editor-controls textarea,.editor-controls select{display:block;background:transparent;border:1px solid #d9cdbd;border-radius:6px;padding:10px 11px;font-size:15px;width:100%;margin-top:7px;color:var(--ink);min-width:0}.editor-controls textarea{resize:vertical;line-height:1.7}.editor-controls input[type=file]{font-size:12px}.editor-controls select{background:var(--cream)}.editor-controls .button{margin-top:18px}.panel-divider{height:1px;background:#e1d6c7;margin:23px 0}.preview-label{font-size:12px;color:#8d7b68;margin:0 0 12px;text-align:center}.event-preview{background:#f5eddf;border:1px solid #dacebb;border-radius:10px;padding:27px 30px;text-align:center;max-width:380px;margin:auto;color:#332a20;display:flex;flex-direction:column;align-items:center;gap:13px}.preview-brand{font:bold 18px Arial,sans-serif;letter-spacing:-1px}.preview-eyebrow{font-size:12px;margin:10px 0 0;color:inherit;opacity:.65}.event-preview h2{font-family:Heebo,Arial,sans-serif;font-weight:500;font-size:25px;line-height:1.4;margin:0}.event-preview>p{font-size:15px;margin:0;white-space:pre-line;overflow-wrap:anywhere}.preview-art{font-family:Georgia,serif;font-size:61px;line-height:.88;letter-spacing:-4px;padding:26px 12px;margin:3px 0;border-block:1px solid #bda88d;width:100%}.preview-details{font-size:14px;line-height:1.7}.preview-details p{margin:0;overflow-wrap:anywhere}.event-preview .button{width:100%;font-size:14px;padding:10px}.event-preview .panel-help{font-size:11px;color:inherit;opacity:.6}.event-preview img{max-width:100%;max-height:380px;object-fit:contain;border-radius:4px}.template-soft{background:#edd8c9;border-radius:85px 85px 10px 10px;padding-top:40px}.template-soft .preview-art{font-style:italic}.template-night{background:#302d29;color:#f6eddf;border-color:#302d29}.template-night .button.light{color:#f6eddf;border-color:#847967}.template-night .button.dark{background:#f6eddf;color:#302d29}.template-night .preview-art{border-color:#847967}.design-options{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.design-option{border:1px solid #ded4c7;background:transparent;border-radius:8px;padding:13px 13px 17px;display:flex;flex-direction:column;align-items:flex-start;text-align:right;gap:8px;color:var(--ink)}.design-option:hover{border-color:#a88b6b;background:#eee6db}.design-art{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;width:100%;height:230px;text-align:center;font-family:Georgia,serif;line-height:.94;letter-spacing:-3px;font-size:52px;margin-bottom:7px}.design-art.classic{background:#eee4d4;color:#312a22}.design-art.soft{background:#e8d0bf;color:#65503d;border-radius:70px 70px 0 0}.design-art.night{background:#302d29;color:#f6eddf}.design-option strong{font-size:18px}.design-option>span:not(.design-art){font-size:13px;color:#897b6a}.design-option .design-link{font-weight:700!important;color:#544431!important;font-size:13px!important;margin-top:5px}.paid-info{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:24px;border:1px solid #ded4c7;border-radius:8px;margin-top:25px}.paid-info h3{font-size:17px;margin:0 0 7px}.paid-info p{font-size:14px;color:#897b6a;line-height:1.7;margin:0}.paid-info .button{white-space:nowrap}.channel-options{display:flex;background:#ede5da;border:1px solid #dacdbd;border-radius:6px;padding:4px;gap:4px}.channel{flex:1;border:1px solid transparent;border-radius:4px;background:transparent;font:600 14px Arial,sans-serif;padding:9px;color:#8a7a66}.channel.selected{background:#dfceba;border-color:#cbb497;color:#32281d}.message-preview{border:1px solid #dacebd;border-radius:9px;overflow:hidden;background:#eee6d9}.message-preview-header{display:flex;justify-content:space-between;padding:17px 20px;border-bottom:1px solid #dacebd;gap:10px;font-size:14px}.message-preview-header>span{font-size:12px;color:#8b7964}.message-bubble{margin:23px;background:#faf5ec;padding:19px;border-radius:10px 10px 0 10px;white-space:pre-wrap;overflow-wrap:anywhere;font-size:16px;line-height:1.9;min-height:110px}.message-cost{background:#f5efe4;padding:18px 22px}.message-cost strong{font-size:14px}.message-cost p{font-size:13px;color:#8b7d6c;line-height:1.7;margin:5px 0 0}.history-card{margin-top:20px}.history-row{border-top:1px solid #e1d7c9;padding:13px 0;display:flex;flex-direction:column;gap:5px}.history-row strong{font-size:14px}.history-row>span{font-size:12px;color:#8a7b68}.workspace-mode .local-notice{margin-top:20px}.message-grid .editor-controls{margin:0}
@media(max-width:1000px){.panel-tab{font-size:14px;padding:12px 11px}.editor-grid{gap:20px}.design-art{font-size:43px;height:200px}.paid-info{flex-wrap:wrap}.event-fields{grid-template-columns:1fr 220px}}
@media(max-width:700px){.panel-heading{align-items:flex-start;gap:12px;margin-bottom:18px}.panel-heading h1{font-size:24px}.panel-heading .eyebrow{font-size:10px}.demo-pill{font-size:9px;white-space:normal;max-width:100px;text-align:center;line-height:1.5}.panel-tabs{margin-bottom:20px;gap:3px}.panel-tab{font-size:13px;padding:11px 10px;gap:6px}.paid-label{font-size:9px;padding:2px 4px}.event-details{padding:18px}.event-fields{grid-template-columns:1fr;gap:14px}.extra-event-fields{margin-top:14px}.event-details-heading{gap:10px}.event-details-heading h2{font-size:20px}.panel-bottom-actions{flex-direction:column;align-items:stretch;gap:15px}.panel-bottom-actions .button{width:100%}.editor-grid{grid-template-columns:1fr;gap:25px}.panel-card{padding:18px}.tab-intro h2{font-size:22px}.tab-intro p{font-size:14px}.design-options{grid-template-columns:1fr;gap:15px}.design-art{height:220px;font-size:54px}.design-option{padding:15px}.paid-info{padding:18px;gap:16px}.paid-info .button{width:100%}.event-preview{width:100%;padding:25px}.message-preview-header{padding:16px}.message-bubble{margin:18px}.panel-help{font-size:12px}}

/* A bounded form and an explicit 24-hour time selector. */
#panel-details{max-width:740px;margin-inline:auto}.event-details{padding:22px}.event-fields{grid-template-columns:minmax(0,1fr) 200px;gap:18px}.event-fields input{height:38px}.event-time-picker{margin:0;padding:0;border:0;min-width:0}.event-time-picker legend{font-size:13px;font-weight:600;color:#61594e;padding:0;margin:0 0 7px}.time-selects{display:flex;align-items:center;gap:7px}.time-selects>span{font-size:18px;color:#8b7b66}.time-selects select{width:0;flex:1;height:38px;padding:7px 9px;border:1px solid #d9cfc0;border-radius:6px;background:var(--cream);color:var(--ink);font:15px Arial,sans-serif;cursor:pointer;text-align:center;min-width:0}.panel-bottom-actions .panel-help{max-width:400px}.panel-bottom-actions .button{flex:none}
@media(max-width:700px){#panel-details{max-width:100%}.event-details{padding:18px}.event-fields{grid-template-columns:1fr;gap:14px}.time-selects{max-width:220px}.panel-bottom-actions .panel-help{max-width:none}}

/* Hebrew Gregorian calendar, independent of browser language. */
.event-date-trigger{display:flex;align-items:center;justify-content:space-between;width:100%;height:38px;margin-top:7px;padding:8px 12px;border:1px solid #d9cfc0;border-radius:6px;background:transparent;color:var(--ink);font:15px Assistant,Arial,sans-serif}
.event-date-trigger>span:first-child{direction:ltr}.event-date-trigger>span:last-child{font-size:20px;color:#8b7861}
#date-dialog{direction:rtl;width:min(340px,calc(100% - 28px));padding:20px;scrollbar-gutter:auto}
.calendar-title{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:18px}
.calendar-title h2{font:700 20px Assistant,Arial,sans-serif;letter-spacing:0;margin:0}
.calendar-title>button{background:transparent;border:0;font-size:23px;color:#8e7d69;padding:0 5px}
.calendar-navigation{display:flex;align-items:center;gap:9px;margin-bottom:16px}
.calendar-navigation>button{width:30px;height:32px;border:1px solid #ddcfbc;border-radius:5px;background:transparent;color:#6f5c46;font-size:25px;line-height:1}
.calendar-selects{display:flex;flex:1;gap:6px}.calendar-selects select{min-width:0;width:50%;padding:6px 5px;border:1px solid #ddcfbc;border-radius:5px;background:var(--cream);color:#4d4030;font-size:14px}
.calendar-weekdays,.calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;direction:rtl}
.calendar-weekdays{text-align:center;font-size:12px;color:#97846c;margin-bottom:7px}.calendar-weekdays>span{padding:4px 0}
.calendar-day{height:34px;border:1px solid transparent;border-radius:5px;background:transparent;font:14px Arial,sans-serif;color:#473a2c;padding:0}
.calendar-day:hover{background:#e9ddcd;border-color:#d1bda1}.calendar-day.today{border-color:#bfa78b}.calendar-day.selected{background:#3c3229;color:#fff;border-color:#3c3229;font-weight:700}
.calendar-footer{margin-top:16px;padding-top:13px;border-top:1px solid #e0d4c3;display:flex;align-items:center;justify-content:space-between;gap:7px}
.calendar-footer>button{border:0;background:transparent;color:#785d3f;font-size:12px;font-weight:600;padding:5px 0}.calendar-footer>span{font:11px Arial,sans-serif;color:#9a856d;direction:ltr}
/* Calendar navigation uses one shared control height. */
.calendar-navigation{align-items:center}.calendar-selects{align-items:center}.calendar-navigation>button,.calendar-selects select{height:34px;box-sizing:border-box;margin:0;vertical-align:middle}.calendar-navigation>button{display:flex;align-items:center;justify-content:center;padding:0;font-family:Arial,sans-serif;font-size:23px;line-height:1;flex:0 0 32px}.calendar-selects select{padding-block:0;line-height:normal}
/* A restrained, consistent chevron for hour and minute controls. */
.time-selects select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath d='m3 4.5 3 3 3-3' fill='none' stroke='%238b7861' stroke-width='1.25' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:10px center;background-size:12px;padding:7px 12px 7px 27px;text-align:center;font:15px Assistant,Arial,sans-serif}

/* Time lists use the app's cream surfaces and shared scrollbar styling. */
.time-dropdown{position:relative;flex:1;min-width:0}
.time-trigger{width:100%;height:38px;display:flex;align-items:center;justify-content:center;gap:15px;margin:0;padding:7px 10px;border:1px solid #d9cfc0;border-radius:6px;background:var(--cream);color:var(--ink);font:15px Assistant,Arial,sans-serif;direction:rtl}
.time-trigger:after{content:"";width:5px;height:5px;border-right:1.25px solid #8b7861;border-bottom:1.25px solid #8b7861;transform:rotate(45deg);margin-top:-3px}
.time-trigger[aria-expanded="true"]{border-color:#a88c6d;background:#ede3d6}
.time-options{position:absolute;top:calc(100% + 5px);left:0;right:0;z-index:15;max-height:185px;overflow-y:auto;padding:4px;border:1px solid #d5c5b0;border-radius:7px;background:var(--cream);box-shadow:0 5px 15px #49372213;direction:ltr;overscroll-behavior:contain}
.time-option{display:block;width:100%;height:30px;text-align:center;border:0;border-radius:4px;background:transparent;color:#5e4c38;font:14px Arial,sans-serif;padding:5px}
.time-option:hover,.time-option:focus-visible{background:#e9ddcd;outline:none}
.time-option[aria-selected="true"]{background:#dfceba;color:#33291e;font-weight:700}
html,body,dialog,.table-scroll,.panel-tabs,.time-options{scrollbar-width:thin;scrollbar-color:#baa894 transparent}
::-webkit-scrollbar{width:7px;height:7px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#baa894;border:2px solid var(--cream);border-radius:12px}::-webkit-scrollbar-thumb:hover{background:#9d8773}

::-webkit-scrollbar-button{display:none;width:0;height:0}
/* Keep the time selection understated; scrollbar styling stays unchanged. */
.time-trigger[aria-expanded="true"]{background:var(--cream);border-color:#cbbba6}
.time-option[aria-selected="true"]{background:#f0ece6;color:var(--ink);font-weight:500;position:relative}
.time-option[aria-selected="true"]:after{content:"✓";position:absolute;right:7px;top:50%;transform:translateY(-50%);font:11px Arial,sans-serif;color:#a19484}
.time-option:hover,.time-option:focus-visible{background:#eee9e2;outline:none}

/* OurJoy wordmark: a small nude heart replaces the dot of the j. */
.brand,.brand-lockup{font-family:Manrope,Arial,sans-serif;font-weight:600;letter-spacing:-.055em;display:inline-flex;align-items:baseline;gap:0;line-height:1;direction:ltr}
.brand-heart-j{position:relative;display:inline-block}
.brand-j-stem{display:inline-block;clip-path:polygon(0 28%,100% 28%,100% 150%,0 150%)}
.brand-heart{position:absolute;top:.106em;left:.045em;width:.197em;height:.182em;overflow:visible;color:#b18b69}
.preview-brand.brand-lockup{font-size:22px;font-weight:600;letter-spacing:-.055em}
.site-header .brand{font-size:38px}.brand-heart{width:.22em;height:.20em;left:.03em;top:.08em}@media(max-width:700px){.site-header .brand{font-size:32px}}
.brand-heart{width:.27em;height:.245em;left:.005em;top:.045em}
.site-header .brand{font-size:46px}@media(max-width:700px){.site-header .brand{font-size:37px}}
.site-header .brand{font-size:54px}@media(max-width:700px){.site-header .brand{font-size:41px}}

.site-header .brand{font-size:48px}@media(max-width:700px){.site-header .brand{font-size:38px}}

/* Excel import: fixed visual columns, independent of text direction. */
#paste-data{direction:rtl;tab-size:16;font-size:16px;min-height:100px;height:130px}
.paste-table-scroll{max-height:230px;overflow:auto;margin-top:8px;border:1px solid var(--line);border-radius:6px}
.paste-table{table-layout:fixed;width:100%;min-width:0;white-space:normal}
.paste-table th,.paste-table td{padding:8px 10px!important;font-size:15px;text-align:right!important;border-bottom:1px solid var(--line);border-left:1px solid var(--line)}
.paste-table th:first-child{width:45%}.paste-table th:nth-child(2){width:37%}.paste-table th:last-child{width:18%}
.paste-table td:first-child{overflow-wrap:anywhere}.paste-table td:nth-child(2){font-family:Arial,sans-serif;font-size:14px}
.paste-table th:last-child,.paste-table td:last-child{border-left:0;text-align:center!important}

#paste-dialog .paste-input-label{margin-bottom:10px}
.paste-column-guide{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;padding:9px 12px;border-bottom:1px solid var(--line);font-size:14px;font-weight:600}
.paste-column-guide small{display:block;color:var(--muted);font-weight:400;font-size:12px}
#paste-dialog .paste-help{font-size:13px;margin:8px 0 12px;color:var(--muted)}
.paste-table th:first-child{width:42%}.paste-table th:nth-child(2){width:34%}.paste-table th:last-child{width:24%}

#paste-dialog{padding:24px}
#paste-dialog .dialog-top{margin-bottom:12px}
#paste-dialog h2{font-size:27px;margin-bottom:8px}
#paste-dialog p{margin-bottom:12px}
#paste-dialog .paste-input-label{margin-top:12px}
#paste-data{height:100px}
#paste-dialog .dialog-actions{margin-top:16px}

.paste-column-guide{grid-template-columns:1fr 1fr 1.25fr;padding-block:7px;align-items:center}
.paste-column-guide>span:last-child{white-space:nowrap}
.paste-column-guide small{display:inline;margin-inline-start:4px}
#paste-data{margin-top:4px}

/* One aligned sheet replaces the free-text preview after a valid paste. */
.paste-ready #paste-data,.paste-ready .paste-column-guide,.paste-ready #paste-help,.paste-ready .paste-input-label{display:none}
.paste-ready .paste-preview{background:transparent;padding:0}
.paste-ready .paste-preview>strong{display:block;margin:14px 0 8px;font-size:14px}
.paste-ready .paste-table-scroll{max-height:320px;margin:0;background:#fff}
.paste-table th{position:sticky;top:0;z-index:1}
.paste-table th small{font-weight:400;font-size:11px;white-space:nowrap}
.paste-table th:first-child{width:36%}.paste-table th:nth-child(2){width:30%}.paste-table th:last-child{width:34%;white-space:nowrap}
.paste-edit{display:block;margin-top:10px;padding:3px 0;border:0;background:transparent;color:var(--muted);font:inherit;font-size:14px;text-decoration:underline;text-underline-offset:3px}

/* Keep the aligned data inside the upper paste area. */
.paste-ready .paste-column-guide{display:grid}
.paste-ready .paste-input-label{display:block}
.paste-ready #paste-help{display:block}
.paste-ready .paste-preview .paste-table-scroll,.paste-ready .paste-edit{display:none}
.paste-column-guide,.paste-sheet-row{display:grid;grid-template-columns:36% 30% 34%;gap:0;direction:rtl}
.paste-column-guide{padding:7px 0;margin-bottom:4px}
.paste-column-guide>span{padding:0 10px;min-width:0}
.paste-sheet{display:none;min-height:100px;max-height:240px;overflow:auto;border:1px solid var(--line);border-radius:6px;background:#fff}
.paste-ready .paste-sheet{display:block}
.paste-sheet-row{border-bottom:1px solid var(--line)}
.paste-sheet-row:last-child{border-bottom:0}
#paste-dialog .paste-sheet input{min-width:0;width:100%;margin:0;padding:9px 10px;border:0;border-left:1px solid var(--line);border-radius:0;background:transparent;box-shadow:none;text-align:right;font-size:16px}
#paste-dialog .paste-sheet input:last-child{border-left:0}
#paste-dialog .paste-sheet input:focus{outline:2px solid #cbbba6;outline-offset:-2px}
#paste-dialog .paste-sheet input:nth-child(2){font-family:Arial,sans-serif;font-size:14px}

/* Identical tracks and text alignment for the header and every pasted row. */
.paste-column-guide,.paste-sheet-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.15fr) 30px}
.paste-column-guide{padding-inline:1px;scrollbar-gutter:stable}
.paste-column-guide>span,.paste-sheet-row input{text-align:right}
.paste-sheet{scrollbar-gutter:stable}
#paste-dialog .paste-sheet input:nth-child(3){border-left:1px solid var(--line)}
.paste-remove-row{border:0;background:transparent;color:var(--muted);font-size:20px;padding:0;display:grid;place-items:center;border-radius:0}
.paste-remove-row:hover{background:#f6eae7;color:#925b50}
.paste-sheet-actions{display:flex;justify-content:flex-end;margin-top:6px}
#paste-clear{border:0;background:transparent;padding:3px 0;color:var(--muted);font:inherit;font-size:13px;text-decoration:underline;text-underline-offset:3px}
#paste-clear:disabled{opacity:.4;cursor:default}

.paste-column-guide{overflow-y:scroll;border:1px solid transparent;padding:7px 0;scrollbar-gutter:stable}

.paste-column-guide{overflow:visible;border:0;scrollbar-gutter:auto;padding-inline:1px}
.paste-ready .paste-column-guide{display:none}
.paste-sheet-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.15fr) 30px;position:sticky;top:0;z-index:1;background:var(--cream);border-bottom:1px solid var(--line);direction:rtl}
.paste-sheet-head>span{min-width:0;padding:9px 10px;text-align:right;font-size:14px;font-weight:600;white-space:nowrap}
.paste-sheet-head small{font-size:11px;color:var(--muted);font-weight:400}

/* Separate the scroll rail and center compact row controls. */
.paste-sheet{border:0;border-radius:0;background:transparent;padding-inline-end:10px;scrollbar-width:thin;scrollbar-color:#8b8882 transparent}
.paste-sheet::-webkit-scrollbar{width:7px}
.paste-sheet::-webkit-scrollbar-thumb{background:#8b8882;border:2px solid var(--cream);border-radius:10px}
.paste-sheet::-webkit-scrollbar-button{display:none;width:0;height:0}
.paste-sheet-head,.paste-sheet-row{border-inline:1px solid var(--line)}
.paste-sheet-head{border-top:1px solid var(--line);border-radius:6px 6px 0 0}
.paste-sheet-row{background:#fff}
.paste-sheet-row:last-child{border-bottom:1px solid var(--line);border-radius:0 0 6px 6px}
.paste-remove-row{position:relative;width:24px;height:24px;place-self:center;padding:0;border-radius:6px;line-height:1;background:transparent;color:var(--muted)}
.paste-remove-row:before,.paste-remove-row:after{content:"";position:absolute;width:11px;height:1px;left:50%;top:50%;background:currentColor;transform:translate(-50%,-50%) rotate(45deg)}
.paste-remove-row:after{transform:translate(-50%,-50%) rotate(-45deg)}
.paste-remove-row:hover{background:#eee9e2;color:var(--ink)}
.paste-remove-row:focus-visible{outline:1px solid #b9aa99;outline-offset:1px;background:#eee9e2}
#paste-clear{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:6px;padding:5px 11px;background:transparent;color:#6a6258;font-size:13px;line-height:1.4;text-decoration:none}
#paste-clear:hover:not(:disabled){background:#eee9e2;border-color:#cbbba6}
.paste-sheet-actions{margin-top:9px}
#confirm-dialog{width:min(360px,calc(100% - 32px));padding:21px 23px;border-radius:11px;scrollbar-gutter:auto}
#confirm-dialog .dialog-top{margin-bottom:10px}
#confirm-dialog .dialog-top .eyebrow{font-family:Assistant,Arial,sans-serif;letter-spacing:0;font-size:12px}
#confirm-dialog h2{font-size:22px;letter-spacing:-.4px;margin-bottom:8px;line-height:1.4}
#confirm-dialog p{font-size:14px;line-height:1.65;margin:0}
#confirm-dialog .dialog-actions{margin-top:18px;gap:8px}
#confirm-dialog .button{font-size:14px;padding:8px 15px;min-height:36px}

/* Row numbers sit in a separate gutter to the right of the sheet. */
.paste-sheet{padding-inline-start:30px;scrollbar-width:auto}
.paste-sheet::-webkit-scrollbar{width:11px}
.paste-sheet::-webkit-scrollbar-thumb{border-width:2px}
.paste-sheet-row{position:relative}
.paste-sheet .paste-line-number{position:absolute;inset-inline-start:-30px;top:0;bottom:0;width:24px;display:grid;place-items:center;padding:0;color:var(--muted);font:12px Arial,sans-serif;text-align:center;pointer-events:none}
#paste-dialog .paste-sheet input:nth-of-type(2){font-family:Arial,sans-serif;font-size:14px}
#paste-dialog .paste-sheet input:first-of-type{font-family:Assistant,Arial,sans-serif;font-size:16px}
.paste-sheet-actions{justify-content:flex-start;align-items:center;gap:12px}
#paste-total{font-size:13px;color:var(--muted);font-variant-numeric:tabular-nums}
.paste-ready .paste-preview>strong{display:none}

.paste-ready .paste-sheet-actions{margin-inline-start:30px}

/* Preserve the native arrow controls and previous scrollbar weight. */
html,body,dialog,.table-scroll,.panel-tabs,.time-options,.paste-sheet,.paste-table-scroll{scrollbar-width:auto;scrollbar-color:#8b8882 transparent}

/* Lighter list typography; retain the framed filter layout and palette. */
.workspace .count-value{font-weight:400;font-size:14px}
.filter-bar .filter.active{font-weight:600}
.table-export-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
#print-list{display:none}
@media print{
 @page{size:A4 portrait;margin:14mm}
 html,body{background:#fff!important;color:#222!important;overflow:visible!important}
 body>*{display:none!important}
 body>#print-list{display:block!important;font:12px Assistant,Arial,sans-serif;color:#222}
 #print-list h1{font:600 22px Assistant,Arial,sans-serif;letter-spacing:0;margin:0 0 8px}
 #print-list p{font-size:11px;margin:0 0 12px}
 #print-list table{width:100%;border-collapse:collapse;white-space:normal;table-layout:auto}
 #print-list thead{display:table-header-group}
 #print-list tr{break-inside:avoid}
 #print-list th,#print-list td{border:1px solid #bbb;background:transparent;padding:7px 9px;font-size:12px;font-weight:400;text-align:right}
 #print-list th{font-weight:600}
 #print-list td[dir=ltr]{text-align:center;white-space:nowrap}
 #print-list th:first-child,#print-list td:first-child{width:30px;text-align:center}
}

.list-sort-row{display:flex;align-items:center;gap:10px;margin:12px 22px;color:var(--muted);font-size:13px;flex-wrap:wrap}
.guest-sort{display:inline-flex;padding:3px;border:1px solid #d9d0c4;border-radius:7px;background:#f2eee7;gap:3px}
.guest-sort button{border:1px solid transparent;border-radius:4px;background:transparent;color:#776e62;padding:5px 11px;font-size:13px}
.guest-sort button.selected{background:#e3d5c5;border-color:#cdbba4;color:var(--ink);font-weight:600}
.guest-sort button:hover:not(.selected){background:#eae4db}
.workspace .guest-group-heading th{position:static;padding:9px 14px!important;background:#eee8df!important;border-block:1px solid #ded6cb!important;text-align:right!important;font-size:13px;letter-spacing:0}
.guest-group-heading th .ui-icon{display:inline-block;width:14px;height:14px;vertical-align:middle;margin-inline-end:7px}
.guest-group-heading small{margin-inline-start:10px;color:var(--muted);font-size:12px;font-weight:400}
@media(max-width:700px){.list-sort-row{margin-inline:14px}}

/* Filtering and sorting share one compact toolbar. */
.filter-bar{align-items:center;gap:18px}
.filter-group{display:flex;align-items:center;gap:16px;flex-wrap:wrap;min-width:0}
.list-sort-row{margin:0;padding-inline-start:16px;border-inline-start:1px solid #ded6cb;gap:9px;font-size:12px;flex-wrap:nowrap}
.list-sort-row>span{white-space:nowrap}
.guest-sort button{padding:5px 8px;font-size:12px;white-space:nowrap}
@media(max-width:1050px){.filter-bar{flex-wrap:wrap}.filter-group{width:100%}.filter-bar .search-box{margin-inline-start:auto}}
@media(max-width:700px){.filter-group{gap:10px}.list-sort-row{padding-inline-start:10px;margin:0}.filter-group .filters{flex:none}.filter-bar .search-box{margin:0}}
@media(max-width:550px){.list-sort-row{border-inline-start:0;padding-inline-start:0;width:100%}}

/* Keep search beside filtering and sorting at tablet and desktop widths. */
@media(min-width:821px){
 .filter-bar{flex-wrap:nowrap;gap:12px}
 .filter-group{width:auto;flex:0 1 auto;gap:10px;flex-wrap:nowrap}
 .filter-bar .filters{flex:none;padding:3px}
 .filter-bar .filter{padding:6px 7px;font-size:12px;gap:4px}
 .filter-bar .filter+.filter{margin-inline-start:1px}
 .list-sort-row{padding-inline-start:10px;gap:7px}
 .guest-sort{padding:3px;gap:2px}
 .guest-sort button{padding:5px 6px}
 .filter-bar .search-box{width:190px;min-width:135px;flex:1 1 190px;margin-inline-start:auto}
 .filter-bar .search-box input{font-size:13px}
}

/* Messaging previews reflect the selected channel; brand colors stay inside the preview. */
.channel{display:flex;align-items:center;justify-content:center;gap:7px}
.whatsapp-mark{display:block;width:21px;height:21px;flex:none}
.channel[data-channel="WhatsApp"] .whatsapp-mark{color:#168868}
.message-preview{max-width:410px;margin-inline:auto;border-color:#ded6cb;border-radius:13px;background:var(--cream)}
.message-preview-header{background:var(--cream);padding:12px 16px;align-items:center;border-bottom:1px solid var(--line)}
.message-channel-brand{display:flex;align-items:center;gap:7px;direction:ltr}
#preview-whatsapp-icon{color:#168868}
.chat-screen{font-family:Arial,Assistant,sans-serif;background:#efeae2}
.chat-contact{display:flex;align-items:center;gap:10px;background:#fff;padding:13px 16px;border-bottom:1px solid #e8e6e1}
.chat-avatar{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#d9e6e0;color:#41675a;font:16px Assistant,Arial,sans-serif}
.chat-contact strong{display:block;font-size:14px;font-weight:600;color:#26332d}
.chat-contact div>span{display:block;font-size:11px;color:#7b827d;margin-top:4px}
.chat-conversation{display:flex;flex-direction:column;align-items:flex-start;padding:16px 16px 28px;min-height:240px;background-image:radial-gradient(#aaa49117 .8px,transparent .8px);background-size:14px 14px}
.chat-date{align-self:center;background:#fff9;border-radius:6px;padding:4px 10px;font-size:11px;color:#747976;margin-bottom:19px}
.chat-bubble{position:relative;max-width:92%;min-width:145px;padding:11px 12px 6px;background:#d9fdd3;border-radius:9px 0 9px 9px;box-shadow:0 1px 1px #00000012;color:#202c25}
.chat-bubble:after{content:"";position:absolute;right:-7px;top:0;border-top:9px solid #d9fdd3;border-right:8px solid transparent}
.chat-bubble .message-bubble{margin:0;padding:0;background:transparent;border-radius:0;font-size:14px;line-height:1.65;min-height:0;color:inherit;unicode-bidi:plaintext}
.chat-message-meta{display:flex;gap:5px;justify-content:flex-end;align-items:center;direction:ltr;margin-top:6px;font-size:10px;color:#738478}
.chat-delivery{color:#66a7bd;font-size:12px;letter-spacing:-4px;padding-right:4px}
.chat-compose{display:flex;align-items:center;gap:12px;padding:9px 13px;background:#f5f5f2;color:#818780;font-size:22px}
.chat-compose>div{flex:1;background:#fff;border-radius:20px;padding:9px 13px;display:flex;justify-content:space-between;font-size:13px;color:#91968f}
.message-preview .message-cost{background:var(--cream);padding:14px 17px;border-top:1px solid var(--line)}
.message-preview .message-cost p{font-size:12px;margin:4px 0 0}
.message-preview:not(.is-whatsapp) .chat-screen{background:#f2f2f2}
.message-preview:not(.is-whatsapp) .chat-bubble{background:#e5e5ea;color:#252525;border-radius:12px}
.message-preview:not(.is-whatsapp) .chat-bubble:after,.message-preview:not(.is-whatsapp) .chat-delivery{display:none}
.message-preview:not(.is-whatsapp) .chat-conversation{background-image:none}

/* Shared segmented controls: use the approved guest-filter palette unchanged. */
:root{--segment-surface:#f2eee7;--segment-border:#d9d0c4;--segment-text:#776e62;--segment-active:#e3d5c5;--segment-active-border:#cdbba4;--segment-active-text:#342a1f;--segment-hover:#eae4db}
.filter-bar .filters,.guest-sort,.channel-options{background:var(--segment-surface);border-color:var(--segment-border);border-radius:8px;box-shadow:none}
.filter-bar .filter,.guest-sort button,.channel{color:var(--segment-text);border-radius:5px;border:1px solid transparent;background:transparent;box-shadow:none;font-family:inherit;font-weight:600}
.filter-bar .filter.active,.guest-sort button.selected,.channel.selected{background:var(--segment-active);border-color:var(--segment-active-border);color:var(--segment-active-text);box-shadow:none}
.filter-bar .filter:hover:not(.active),.guest-sort button:hover:not(.selected),.channel:hover:not(.selected){background:var(--segment-hover)}

/* The guest toolbar uses one shared height, matching the search field. */
.filter-bar{--list-control-height:40px}
.filter-bar .search-box,.filter-bar .filters,.filter-bar .guest-sort{height:var(--list-control-height);min-height:var(--list-control-height);box-sizing:border-box;margin-block:0}
.filter-bar .filters,.filter-bar .guest-sort{padding:3px;align-items:stretch}
.filter-bar .filter,.filter-bar .guest-sort button{height:100%;min-height:0;padding-block:0;display:inline-flex;align-items:center;justify-content:center}
.filter-bar .search-box input{height:100%;padding-block:0}
.filter-bar .list-sort-row{min-height:var(--list-control-height);align-items:center}

.guest-filter-caption{white-space:nowrap;color:var(--muted);font-size:12px;flex:none}
@media(min-width:821px){.filter-group{gap:8px}.filter-bar{gap:10px}.filter-bar .search-box{min-width:115px}}

/* Compact outlined secondary buttons share one size throughout the site. */
:root .button.light{padding:8px 14px;font-size:14px;line-height:1.4;min-height:36px;gap:8px}

/* Explicit event editing uses the existing surfaces and button styles. */
.event-details-summary{display:grid;grid-template-columns:1fr 200px;gap:22px 18px;margin:0}
.event-details-summary>div{min-width:0}
.event-details-summary>div:last-child{grid-column:1/-1}
.event-details-summary dt{font-size:13px;color:var(--muted);margin-bottom:6px}
.event-details-summary dd{margin:0;font-size:17px;line-height:1.5;overflow-wrap:anywhere}
.event-details-summary dd.is-empty{font-size:15px;color:var(--muted)}
.event-detail-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;flex-shrink:0}
.event-detail-actions .button.dark{font-size:14px;padding:8px 14px;min-height:36px}
#event-details-error{margin:14px 0 0;font-size:13px}
@media(max-width:600px){.event-details-summary{grid-template-columns:1fr 1fr}.event-detail-actions{width:100%}}

.event-navigation .navigation-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:12px}
.editor-controls .navigation-actions .button{margin-top:0}
#event-waze-url{text-align:left;font-family:Arial,sans-serif;font-size:13px}
#waze-destination{font-size:15px;color:var(--ink);overflow-wrap:anywhere}
#waze-source{margin-top:4px}
#waze-save-status:not(:empty){margin-top:10px}

/* Real place suggestions inherit the site's field palette. */
.place-search{position:relative}
.place-suggestions{position:absolute;top:63px;inset-inline:0;z-index:20;max-height:260px;overflow:auto;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 7px 20px #25231f13;scrollbar-color:#8b8882 transparent}
.event-fields .place-suggestion{display:block;width:100%;text-align:right;padding:10px 12px;background:transparent;border:0;border-bottom:1px solid var(--line);color:var(--ink);font:14px Assistant,Arial,sans-serif}
.place-suggestion:last-child{border-bottom:0}
.place-suggestion strong,.place-suggestion span,.place-suggestion small{display:block;overflow-wrap:anywhere}
.place-suggestion strong{font-weight:600}.place-suggestion span,.place-suggestion small{font-size:12px;color:var(--muted);margin-top:3px}
.place-suggestion:hover,.place-suggestion[aria-selected="true"]{background:var(--segment-surface)}
.place-search-status{display:block;font-size:12px;font-weight:400;line-height:1.5;color:var(--muted);margin-top:7px}
.place-credit{display:block;font-size:11px;font-weight:400;color:var(--muted);margin-top:3px}
.place-credit a{text-decoration:underline;text-underline-offset:2px}

/* Waze first, then Google Maps, with recognizable service icons. */
.preview-navigation{display:flex;flex-direction:column;width:100%;gap:8px}
.preview-navigation>span{font-size:12px;font-weight:400;color:inherit;opacity:.7;margin-bottom:1px}
.navigation-brand-icon{width:21px;height:21px;display:block;flex:none}
.preview-navigation .button:hover{text-decoration:none}

.navigation-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}
.navigation-heading h3{margin:0;flex:none}
.editor-controls .navigation-heading .button{margin:0;font-size:12px;padding:6px 10px;min-height:32px}
.navigation-mode{margin-top:15px;margin-bottom:12px}
.navigation-mode .channel{font-family:inherit;font-size:13px;padding:8px 9px}
#navigation-auto{padding-block:2px}
#navigation-manual label{margin-top:0}
.navigation-checks{padding-top:12px;border-top:1px solid var(--line)}
@media(max-width:380px){.navigation-heading{flex-wrap:wrap}.navigation-heading .button{margin-inline-start:auto!important}}

#navigation-auto .place-search{display:block;margin:12px 0 0}
#navigation-auto .place-suggestions{top:65px}
.place-search .place-suggestion{display:block;width:100%;text-align:right;padding:10px 12px;background:transparent;border:0;border-bottom:1px solid var(--line);color:var(--ink);font:14px Assistant,Arial,sans-serif}
.place-search .place-suggestion:hover,.place-search .place-suggestion[aria-selected="true"]{background:var(--segment-surface)}

/* Show matches for the saved address directly, without requiring a fresh search. */
#navigation-auto .place-suggestions{position:static;max-height:235px;margin-top:8px;box-shadow:none}

/* Keep the options above a separate, explicit selection summary. */
#navigation-auto .place-suggestion{display:flex;align-items:center;gap:10px}
.place-choice-marker{width:21px;height:21px;flex:none;display:grid;place-items:center;border:1px solid var(--segment-border);border-radius:50%;font-size:12px;color:var(--muted)}
.place-suggestion.is-chosen .place-choice-marker{background:var(--segment-active);border-color:var(--segment-active-border);color:var(--ink)}
#navigation-auto .place-suggestion.is-chosen{background:var(--segment-surface)}
.place-option-content{display:block;min-width:0}
.navigation-selected{margin-top:12px;padding:11px 12px;border:1px solid var(--line);border-radius:7px;background:var(--segment-surface)}
.navigation-selected strong,.navigation-selected span,.navigation-selected small{display:block}
.navigation-selected strong{font-size:14px;font-weight:600}
.navigation-selected span{font-size:14px;margin-top:5px;overflow-wrap:anywhere}
.navigation-selected small{font-size:12px;color:var(--muted);margin-top:5px}

/* Navigation choices are separate from the canonical event address. */
.navigation-place-results{display:flex;flex-direction:column;gap:7px;margin:11px 0}
.navigation-place-results .place-suggestion{display:flex;align-items:center;gap:12px;position:static;width:100%;border:1px solid var(--line,#ded4c7);border-radius:8px;background:#fffaf3;padding:11px;text-align:right;cursor:pointer}
.navigation-place-results .place-option-content{display:flex;flex-direction:column;gap:3px;flex:1}
.navigation-place-results .place-choice-marker{min-width:20px;color:#417f64}
.navigation-place-results .place-suggestion.is-chosen{border-color:#8eaf9b;background:#f0f7ef}
.inline-link{border:0;background:transparent;color:#765b42;text-decoration:underline;cursor:pointer;font:inherit;padding:0}
.message-preview-header{direction:rtl}
.message-preview-header #message-recipient-count{order:0;direction:rtl;text-align:right}
.message-preview-header .message-channel-brand{order:1;direction:ltr}

/* OurJoy v4: prominent, white navigation choices and a clear action row. */
.navigation-place-results .place-suggestion,
#navigation-auto .navigation-place-results .place-suggestion.is-chosen {
  background:#fff; border:1px solid #d9d4cf; border-radius:10px;
  box-shadow:0 1px 4px rgba(45,33,21,.04);
  transition:border-color .15s ease,box-shadow .15s ease;
}
.navigation-place-results .place-suggestion:hover {border-color:#ad987d;box-shadow:0 2px 9px rgba(45,33,21,.09)}
#navigation-auto .navigation-place-results .place-suggestion.is-chosen {border:2px solid #548c71; padding:10px;box-shadow:0 0 0 2px rgba(84,140,113,.1)}
#navigation-save-actions {display:flex;flex-wrap:wrap;align-items:center;gap:8px;direction:rtl;margin-top:15px}
#navigation-save-actions .button {margin:0;white-space:normal}
#navigation-save-actions #waze-save:not(:disabled) {background:var(--ink);color:#fff;border-color:var(--ink)}
#navigation-save-actions #waze-save:disabled {opacity:.55}
#navigation-save-actions [hidden] {display:none!important}
#navigation-auto .navigation-selected {background:#fff;border:1px solid #ddd7d1;border-radius:10px}
@media (max-width:540px){#navigation-save-actions{gap:7px}#navigation-save-actions .button{flex:1 1 calc(50% - 7px)}}

/* v5: neutral radio indicators and automatic save. */
#navigation-auto .navigation-place-results .place-suggestion.is-chosen {border:2px solid #242424;padding:10px;box-shadow:none;background:#fff}
.navigation-place-results .place-choice-marker {width:20px;min-width:20px;height:20px;border:2px solid #666;background:#fff;border-radius:50%;position:relative;color:transparent!important}
.navigation-place-results .place-suggestion.is-chosen .place-choice-marker {border-color:#111;background:#fff;color:transparent!important}
.navigation-place-results .place-suggestion.is-chosen .place-choice-marker::after {content:"";position:absolute;inset:4px;border-radius:50%;background:#111}
#navigation-save-actions #waze-save[hidden],#manual-link-test[hidden]{display:none!important}

/* v7: softly shaded suggestions, while the saved selection stays white. */
.navigation-place-results .place-suggestion,
#navigation-auto .navigation-place-results .place-suggestion.is-chosen {
  background:#f5f2ed;
}
.navigation-place-results .place-suggestion:hover {background:#f0ebe4;}
#navigation-auto .navigation-place-results .place-suggestion.is-chosen {background:#ece7e0;}
#navigation-auto .navigation-selected {background:#fff;}

/* Guest-facing event preview: RSVP first, then a quiet navigation section. */
.preview-navigation-divider {width:100%;height:1px;background:var(--line);margin:18px 0 14px;}
.preview-navigation>span {font-size:14px;font-weight:600;opacity:1;margin-bottom:4px;}

/* v8: event-address-first discovery, without freeform navigation searching. */
.navigation-address-help{font-size:14px;line-height:1.7;margin-top:14px}
.navigation-address-help #navigation-edit-address{font-size:14px;font-weight:700;text-decoration:underline;text-underline-offset:3px}
.map-attribution{font-size:10px;opacity:.7;text-decoration:none}
.map-attribution:hover{text-decoration:underline}

/* v9: a quiet, close-spaced divider in the public event preview. */
.event-preview .preview-navigation-divider{height:1px;width:88%;margin:9px auto 8px;background:#e9e4dd;opacity:.65;}
.event-preview .preview-navigation{gap:6px;}
.event-preview .preview-navigation>span{margin-bottom:2px;}
/* Navigation checks start on the right in RTL; reset sits on the far left. */
.event-navigation .navigation-checks{direction:rtl;display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding-top:9px;border-top:0;margin-top:7px;}
.event-navigation .navigation-checks #waze-reset{margin-inline-start:auto;}
.event-navigation .navigation-checks [hidden]{display:none!important;}
@media(max-width:560px){.event-navigation .navigation-checks{gap:6px}.event-navigation .navigation-checks .button{font-size:11px;padding:7px 8px;min-height:34px}.event-navigation .navigation-checks .navigation-brand-icon{width:16px;height:16px}}

/* v10: four separate, softly tinted guest-summary cards with compact spacing. */
.workspace .stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:18px 22px 20px;padding:0;background:transparent;border:0;border-radius:0;}
.workspace .stats>div{min-width:0;min-height:104px;padding:17px 15px 15px;border:1px solid transparent;border-radius:11px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;}
.workspace .stats>div:nth-child(1){background:transparent;border-color:transparent;}
.workspace .stats>div:nth-child(2){background:#eaf3e9;border-color:#cbdcc9;}
.workspace .stats>div:nth-child(3){background:#f8f0df;border-color:#ebdec2;}
.workspace .stats>div:nth-child(4){background:#f8ece9;border-color:#e9ceca;}
.workspace .stats>div span{justify-content:center;flex-wrap:wrap;font-size:14px;font-weight:650;color:#61584f;}
.workspace .stats>div:nth-child(2) span{color:#446d4b;}
.workspace .stats>div:nth-child(3) span{color:#916c2e;}
.workspace .stats>div:nth-child(4) span{color:#956058;}
.workspace .stats>div strong{margin-top:7px;color:#28241f;font-size:32px;line-height:1.15;font-weight:600;}
/* Landing-page account buttons share the same width and smaller dimensions. */
.site-header .header-actions #signup-button,.site-header .header-actions #login-button{box-sizing:border-box;width:91px;min-height:38px;padding:8px 10px;font-size:14px;line-height:1.25;gap:0;white-space:nowrap;}
@media(max-width:700px){.workspace .stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:15px 14px 18px;}.workspace .stats>div{min-height:92px;padding:13px 8px;}.workspace .stats>div strong{font-size:28px;}.workspace .stats>div span{font-size:13px;}.site-header .header-actions #signup-button,.site-header .header-actions #login-button{width:78px;min-height:35px;padding:7px 5px;font-size:12px;}}
@media(max-width:360px){.site-header .header-actions #signup-button,.site-header .header-actions #login-button{width:72px;font-size:11px;}}

/* v12: home feature overview; preserve all existing landing button and hero colors. */
.brand-container{display:flex;flex-direction:column;align-items:center;gap:0;flex-shrink:0}
.brand-container .brand{line-height:1.02}
.brand-tagline{font-size:10px;letter-spacing:0;font-weight:600;color:#7b7065;white-space:nowrap;margin-top:3px}
.home-features{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-top:21px;margin-bottom:0}
.home-feature{min-width:0;text-align:center;display:flex;flex-direction:column;align-items:center;gap:8px;padding:17px 13px 16px;background:#fffcf8;border:1px solid #e8e0d7;border-radius:10px}
.home-feature-icon{font-size:25px;line-height:1;color:#957d6a;min-height:25px}
.home-feature h2{font-size:15px;line-height:1.4;font-weight:700;margin:0}
.home-feature p{font-size:12px;line-height:1.65;color:#746b62;margin:0}
.demo-under-button{font-size:12px;color:var(--muted);margin:9px 0 0}
/* Restore a thin border for the total card, keeping its neutral background. */
.workspace .stats>div:nth-child(1){background:#fff;border-color:#e5dcd2}
/* Contrast on preview navigation in the dark template; light buttons stay legible. */
.event-preview.template-night .preview-navigation .button.light{background:#f8f1e8!important;color:#302d29!important;border-color:#f8f1e8!important}
.event-preview.template-night .preview-navigation .button.light:hover{background:#eadfd1!important;color:#27231e!important}
.event-preview.template-night .preview-navigation .button.light span{color:inherit!important;opacity:1!important}
/* Hebrew file control with a real accessible file input. */
.file-field{margin:17px 0}
.file-field>label{display:block;font-size:14px;font-weight:600;color:#64594a;margin-bottom:7px}
.file-picker{display:flex;align-items:center;gap:12px;position:relative;min-height:45px;max-width:100%;border:1px solid #d9cdbd;border-radius:7px;padding:6px 8px;background:#fffcf8}
.file-picker-button{flex:none;display:inline-flex!important;align-items:center;justify-content:center;background:#eee7df;color:#44372e!important;border:1px solid #d8c9b7;border-radius:6px;padding:8px 13px;margin:0!important;font-size:13px!important;cursor:pointer}
.file-picker-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;flex:1;color:#7b7065;font-size:13px;direction:auto}
.file-picker input[type=file]{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;margin:0;padding:0;z-index:1}
.file-picker:focus-within{outline:2px solid #8c6954;outline-offset:2px}
@media(max-width:800px){.home-features{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:14px}.home-feature{padding:13px 9px;gap:6px}.home-feature h2{font-size:13px}.home-feature p{font-size:11px}.brand-tagline{font-size:9px}}
@media(max-width:390px){.brand-tagline{font-size:8px}.home-feature p{font-size:10px}}

/* OurJoy v13: original CSS invitation templates and compact gallery */
.design-gallery{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:14px}
.design-gallery .design-option{min-width:0;padding:9px;gap:5px;transition:border-color .15s ease,transform .15s ease}
.design-gallery .design-option.selected{border-color:#886b56;box-shadow:0 0 0 2px #bba39355}
.design-gallery .design-option:hover{transform:translateY(-2px)}
.design-gallery .design-option>strong{font-size:14px}.design-gallery .design-option>span:not(.design-art){font-size:11px}
.design-gallery .mini-invite{height:170px;font-size:inherit;letter-spacing:normal;margin:0;display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 8px;position:relative;overflow:hidden}
.mini-invite strong{font-family:Heebo,Arial,sans-serif;font-size:17px;font-weight:500;line-height:1.35}.mini-invite small{font-family:Heebo,Arial,sans-serif;font-size:10px;line-height:1.5}.mini-invite i{font-size:15px;font-style:normal}.mini-ornament{font-size:19px}
.design-customizer{margin-top:18px}.design-customizer h3{margin:0 0 7px}.design-shapes{display:flex;flex-wrap:wrap;gap:9px 17px;margin:16px 0;padding:12px;border:1px solid #e0d5c6;border-radius:8px}.design-shapes legend{font-weight:600;font-size:13px}.design-shapes label{font-size:13px;white-space:nowrap}.design-shapes input{accent-color:#775d4c}.design-color-label{display:flex;align-items:center;gap:12px;font-size:13px;font-weight:600;margin:10px 0 20px}.design-color-label input{width:44px;height:30px;border:0;background:transparent;cursor:pointer}
.design-live-preview{--invite-accent:#ad8c82;width:min(100%,290px);min-height:365px;margin:10px auto 18px;padding:22px;text-align:center;display:flex;align-items:center;justify-content:center;transition:background .2s;color:#5f4c46;background:#fbf7ef;border:1px solid #dbcabe;overflow:hidden}
.design-live-inner{width:100%;padding:35px 12px;border-block:1px solid var(--invite-accent)}.design-live-preview .design-flourish{display:block;color:var(--invite-accent);font-size:24px;margin-bottom:25px}.design-live-preview p{font-size:13px;line-height:1.8}.design-live-preview h3{font:500 26px Heebo,Arial,sans-serif!important;color:inherit!important;margin:20px 0!important}.design-live-preview.shape-rounded{border-radius:22px}.design-live-preview.shape-arched{border-radius:145px 145px 6px 6px;padding-top:62px}.design-live-preview.shape-double{outline:1px solid var(--invite-accent);outline-offset:-10px}
.theme-ivory{background:#fbf5ea!important;color:#68544a!important}.theme-blush{background:#f7e9e9!important;color:#876366!important}.theme-sage{background:#eaf0e9!important;color:#566e62!important}.theme-editorial{background:#f9f7f2!important;color:#56504b!important}.theme-arch{background:#f4e5de!important;color:#80675f!important}.theme-floral{background:#f9efec!important;color:#89696d!important}.theme-nude{background:#f0e3d5!important;color:#765f50!important}.theme-olive{background:#f1f1e7!important;color:#62705b!important}.theme-pearl{background:#fffefa!important;color:#817d75!important}.theme-frame{background:#f7f0e7!important;color:#735b53!important}.theme-botanical{background:#eaf0e7!important;color:#5d796c!important}.theme-peach{background:#fbece2!important;color:#8d6b59!important}
.mini-invite.theme-arch{border-radius:70px 70px 3px 3px}.mini-invite.theme-frame{outline:2px solid #b7a08c;outline-offset:-8px}.mini-invite.theme-floral:before,.mini-invite.theme-botanical:before,.mini-invite.theme-olive:before{content:'❀';position:absolute;top:8px;left:12px;font-size:27px;opacity:.38}.mini-invite.theme-olive:before{content:'❧'}.mini-invite.theme-botanical:before{content:'❦'}
.event-preview.template-ivory,.event-preview.template-pearl,.event-preview.template-editorial{background:#faf6ef;color:#43382f}.event-preview.template-blush,.event-preview.template-floral{background:#f7e7e8;color:#65474f}.event-preview.template-sage,.event-preview.template-botanical,.event-preview.template-olive{background:#e9eee6;color:#445e50}.event-preview.template-arch,.event-preview.template-nude,.event-preview.template-frame,.event-preview.template-peach{background:#f3e5da;color:#5c473c}.event-preview.shape-rounded{border-radius:24px}.event-preview.shape-arched{border-radius:120px 120px 10px 10px;padding-top:45px}.event-preview.shape-double{outline:1px solid #b69b86;outline-offset:-9px}
@media(max-width:850px){.design-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:550px){.design-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.design-gallery .mini-invite{height:165px}.design-gallery .design-option{padding:8px}.design-shapes{gap:8px 12px}}

/* Compact feature cards while preserving the original home palette and buttons */
.brand-tagline{margin-top:9px}
.home-features{margin-top:13px;gap:7px}
.home-feature{display:grid;grid-template-columns:23px minmax(0,1fr);grid-template-rows:auto auto;align-items:center;text-align:right;gap:3px 9px;padding:10px 12px}
.home-feature-icon{grid-column:1;grid-row:1 / span 2;font-size:23px;align-self:start}
.home-feature h2{grid-column:2;grid-row:1;font-size:14px}
.home-feature p{grid-column:2;grid-row:2;font-size:13px;line-height:1.45}
@media(max-width:800px){.home-features{margin-top:10px}.home-feature{padding:10px 9px;gap:3px 7px}.home-feature h2{font-size:13px}.home-feature p{font-size:12px}.brand-tagline{margin-top:7px}}

/* v14: editorial invitation studio with rich original illustrated artwork */
.shape-first{margin:14px 0 16px;padding:13px 16px;background:#fffdf9;border:1px solid #e2d7ca;border-radius:12px}
.shape-first>strong{font-size:15px}.shape-first .design-shapes{border:0;padding:7px 0 0;margin:0;gap:9px 17px}
.design-stage-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,1fr);gap:17px;align-items:start}
.design-choice-side h3{font-size:16px;margin:0 0 7px}.design-stage-grid .design-gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:0}
.design-stage-grid .design-customizer{position:sticky;top:15px;margin:0;padding:16px;text-align:center}
.design-stage-grid .design-customizer h3{text-align:right;font-size:17px}.design-stage-grid .design-customizer .panel-help{text-align:right}
.design-gallery .mini-invite{background-size:cover!important;background-position:center!important;border-radius:4px!important;border:1px solid #eaded5;isolation:isolate}
.design-gallery .mini-invite:before{display:none!important}
.design-gallery .mini-invite strong,.design-gallery .mini-invite small,.design-gallery .mini-invite i,.design-gallery .mini-invite .mini-ornament{z-index:1;position:relative;text-shadow:0 1px 8px #ffffffb8}
.design-live-preview{background-size:100% 100%!important;background-position:center!important;min-height:390px;max-width:310px;position:relative;transition:border-radius .2s ease}
.design-live-inner{position:relative;z-index:1;border-block:0;background:#ffffff99;padding:25px 9px;border-radius:8px;backdrop-filter:blur(1.4px)}
.design-live-preview.shape-rectangle{border-radius:2px!important}.design-live-preview.shape-rounded{border-radius:23px!important}.design-live-preview.shape-arched{border-radius:160px 160px 5px 5px!important;padding-top:65px}.design-live-preview.shape-double{border-radius:3px!important;outline:2px solid #bba597;outline-offset:-11px}
.mini-invite.theme-ivory,.design-live-preview.theme-ivory{background-image:url("assets/invite-ivory.svg")!important}
.mini-invite.theme-blush,.design-live-preview.theme-blush{background-image:url("assets/invite-blush.svg")!important}
.mini-invite.theme-sage,.design-live-preview.theme-sage{background-image:url("assets/invite-sage.svg")!important}
.mini-invite.theme-editorial,.design-live-preview.theme-editorial{background-image:url("assets/invite-editorial.svg")!important}
.mini-invite.theme-arch,.design-live-preview.theme-arch{background-image:url("assets/invite-arch.svg")!important}
.mini-invite.theme-floral,.design-live-preview.theme-floral{background-image:url("assets/invite-floral.svg")!important}
.mini-invite.theme-nude,.design-live-preview.theme-nude{background-image:url("assets/invite-nude.svg")!important}
.mini-invite.theme-olive,.design-live-preview.theme-olive{background-image:url("assets/invite-olive.svg")!important}
.mini-invite.theme-pearl,.design-live-preview.theme-pearl{background-image:url("assets/invite-pearl.svg")!important}
.mini-invite.theme-frame,.design-live-preview.theme-frame{background-image:url("assets/invite-frame.svg")!important}
.mini-invite.theme-botanical,.design-live-preview.theme-botanical{background-image:url("assets/invite-botanical.svg")!important}
.mini-invite.theme-peach,.design-live-preview.theme-peach{background-image:url("assets/invite-peach.svg")!important}
@media(max-width:800px){.design-stage-grid{grid-template-columns:1fr}.design-stage-grid .design-customizer{position:static}.design-stage-grid .design-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:520px){.design-stage-grid .design-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.shape-first .design-shapes label{font-size:12px}}

/* v15: separate draft from applied design, clear categories and stronger previews */
.design-categories{display:flex;gap:6px;flex-wrap:wrap;margin:7px 0 13px}.design-category{border:1px solid #dacbbd;background:#fffdf9;border-radius:20px;padding:7px 13px;color:#5e4b40;cursor:pointer;font:inherit;font-size:13px}.design-category.selected{background:#695245;color:#fff;border-color:#695245}.design-gallery .design-option[hidden]{display:none!important}.design-apply-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:10px}.design-stage-grid{grid-template-columns:minmax(0,1.3fr) minmax(310px,1fr)}.design-live-preview{width:min(100%,360px);max-width:360px;min-height:460px}.preview-design-link{display:inline-block;margin-inline-start:8px;font-weight:600}.design-category:focus-visible,.design-option:focus-visible{outline:3px solid #b69680;outline-offset:2px}@media(max-width:800px){.design-stage-grid{grid-template-columns:1fr}.design-live-preview{max-width:340px;min-height:420px}}

/* v16: identical invitation artwork in editor and guest preview */
.design-live-inner{background:transparent!important;backdrop-filter:none!important;border:0!important;border-radius:0!important;padding:16px 6px!important; text-shadow:0 1px 5px #fffaf4!important;}
.design-live-preview{background-size:cover!important; background-repeat:no-repeat!important;aspect-ratio:360/510; min-height:0!important; height:auto; padding:40px 33px!important;}
.design-gallery .mini-invite{background-size:cover!important; background-repeat:no-repeat!important;}
.design-live-preview.shape-arched{padding-top:75px!important;}
.event-preview .preview-art{font-size:0!important;letter-spacing:0!important;border:0!important;height:250px;padding:0!important;background-size:contain!important;background-repeat:no-repeat!important;background-position:center!important;margin:0 0 5px!important;}

.event-preview.template-ivory .preview-art{background-image:url("assets/invite-ivory.svg")!important}
.event-preview.template-blush .preview-art{background-image:url("assets/invite-blush.svg")!important}
.event-preview.template-sage .preview-art{background-image:url("assets/invite-sage.svg")!important}
.event-preview.template-editorial .preview-art{background-image:url("assets/invite-editorial.svg")!important}
.event-preview.template-arch .preview-art{background-image:url("assets/invite-arch.svg")!important}
.event-preview.template-floral .preview-art{background-image:url("assets/invite-floral.svg")!important}
.event-preview.template-nude .preview-art{background-image:url("assets/invite-nude.svg")!important}
.event-preview.template-olive .preview-art{background-image:url("assets/invite-olive.svg")!important}
.event-preview.template-pearl .preview-art{background-image:url("assets/invite-pearl.svg")!important}
.event-preview.template-frame .preview-art{background-image:url("assets/invite-frame.svg")!important}
.event-preview.template-botanical .preview-art{background-image:url("assets/invite-botanical.svg")!important}
.event-preview.template-peach .preview-art{background-image:url("assets/invite-peach.svg")!important}
.design-apply-actions .button:disabled{opacity:1!important;cursor:default;background:#E8EFE5!important;border-color:#9DB49A!important;color:#385841!important;}
.design-save-feedback{font-weight:600;color:#47624A!important;min-height:23px;}

/* OurJoy v17: curated photographic wedding invitations – full-size art in both previews */
.mini-invite.theme-terrace,.design-live-preview.theme-terrace,.event-preview.template-terrace .preview-art{background-image:url("assets/oj-terrace.webp")!important;}
.mini-invite.theme-paper,.design-live-preview.theme-paper,.event-preview.template-paper .preview-art{background-image:url("assets/oj-paper.webp")!important;}
.mini-invite.theme-monogram,.design-live-preview.theme-monogram,.event-preview.template-monogram .preview-art{background-image:url("assets/oj-monogram.webp")!important;}
.mini-invite.theme-photograph,.design-live-preview.theme-photograph,.event-preview.template-photograph .preview-art{background-image:url("assets/oj-photograph.webp")!important;}
.mini-invite.theme-sunset,.design-live-preview.theme-sunset,.event-preview.template-sunset .preview-art{background-image:url("assets/oj-sunset.webp")!important;}

.design-gallery .mini-invite{height:205px!important; min-height:205px!important;background-size:cover!important;background-position:center!important;display:block!important;}
.design-gallery .mini-invite>*,.design-gallery .mini-invite:before{display:none!important;}
.design-live-preview{background-size:cover!important;background-position:center!important;display:flex!important;align-items:center!important;justify-content:center!important;}
.design-live-inner{background:rgba(255,250,245,.46)!important;border-radius:12px!important;padding:14px!important;text-shadow:0 1px 5px #fff!important;}
.event-preview .preview-art{display:flex!important;flex-direction:column!important;justify-content:center!important;align-items:center!important;gap:14px!important;background-size:cover!important;background-position:center!important;width:min(100%,390px)!important;min-height:510px!important;height:auto!important;aspect-ratio:360/510!important;margin:14px auto 18px!important;padding:50px 24px!important;font-size:inherit!important;text-align:center!important;color:#49372b!important;}
.event-preview .preview-art[hidden]{display:none!important}
.event-preview:has(.preview-art:not([hidden]))>.preview-eyebrow,.event-preview:has(.preview-art:not([hidden]))>#preview-name{display:none!important}
.preview-art .art-intro{font-size:14px;font-weight:500;max-width:240px;line-height:1.7}
.preview-art .art-names{font-size:clamp(26px,3vw,41px);font-family:Georgia,'Times New Roman',serif;line-height:1.3;font-weight:600}
.preview-art .art-rule{font-size:18px;color:#a88570}
.preview-art .art-date{font-size:19px;letter-spacing:.4px}
.preview-art .art-location{font-size:16px;font-weight:600}
.preview-art .art-end{font-size:13px;margin-top:23px}
.event-preview.template-terrace .preview-art,.event-preview.template-paper .preview-art,.event-preview.template-monogram .preview-art,.event-preview.template-photograph .preview-art,.event-preview.template-sunset .preview-art{background-repeat:no-repeat!important}
.design-apply-actions{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px!important;direction:rtl}
.design-apply-actions .button{width:100%;padding:11px 8px!important;gap:5px!important;font-size:14px!important;white-space:normal;text-align:center}
@media(max-width:570px){.design-apply-actions{grid-template-columns:1fr 1fr!important}.design-apply-actions .button:last-child{grid-column:span 2}.event-preview .preview-art{min-height:440px!important}}

/* v18 invitation editorial studio – editable text directly on artwork, no white halo */
.design-live-inner{background:transparent!important;backdrop-filter:none!important;border:0!important;box-shadow:none!important;text-shadow:none!important;outline:none!important;width:100%!important;padding:0!important;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:13px;}
.design-live-preview{padding:24px 27px!important;isolation:isolate;}
.design-live-preview.theme-terrace .design-live-inner{padding-inline:5px!important;}
.invitation-copy p,.invitation-copy h3{margin:0!important;line-height:1.45!important;overflow-wrap:anywhere;white-space:pre-line;}
.invite-kicker{font:400 12px/1.6 Heebo,Arial,sans-serif!important;max-width:260px;}
.invite-couple{font-family:'Times New Roman',serif!important;font-size:clamp(25px,4vw,37px)!important;font-weight:400!important;line-height:1.2!important;}
.invite-date{font-size:18px!important;letter-spacing:2px;}
.invite-venue{font-size:15px!important;}
.invite-schedule{font-size:11px!important;line-height:1.9!important;max-width:95%;}
.invite-extra{font-size:12px!important;}
.invite-closing{font-size:13px!important;margin-top:9px!important;font-style:italic;}
.design-live-preview.theme-monogram .invite-couple,.event-preview.template-monogram .invite-couple{font-family:Georgia,serif!important;letter-spacing:1px;color:#6b4537;}
.design-live-preview.theme-paper .invite-couple,.event-preview.template-paper .invite-couple{font-style:italic!important;font-weight:400!important;}
.design-live-preview.theme-photograph,.event-preview.template-photograph .preview-art{color:#292722!important;}
.design-live-preview.theme-sunset,.event-preview.template-sunset .preview-art{color:#402c23!important;}
.invitation-editor{border:1px solid #dfd3c7;border-radius:12px;background:#fffdfa;margin:20px 0 15px;text-align:right;padding:13px 15px;}
.invitation-editor>summary{font-size:15px;font-weight:700;cursor:pointer;}
.invitation-editor>.panel-help{margin:10px 0;}
.invitation-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;text-align:right;margin:13px 0;}
.invitation-fields label{font-size:12px;font-weight:600;display:block;}
.invitation-fields input,.invitation-fields textarea{box-sizing:border-box;display:block;width:100%;font:14px Heebo,Arial,sans-serif;color:#43352d;background:white;border:1px solid #d8cabb;border-radius:7px;padding:8px;margin-top:5px;resize:vertical;}
.invitation-fields label:first-child,.invitation-fields label:nth-child(8){grid-column:1/-1;}
.event-preview .preview-art{gap:13px!important;}
.event-preview .preview-art .invite-couple{font-size:33px!important;}
.event-preview .preview-art .invite-kicker{font-size:12px!important;}
.event-preview .preview-art .invite-schedule{font-size:10px!important;}
@media(max-width:540px){.invitation-fields{grid-template-columns:1fr}.invitation-fields label{grid-column:1/-1!important}.design-live-preview{padding:25px 18px!important}}

/* OurJoy v20 — desktop design workspace, independent editor scrolling */
@import url('https://fonts.googleapis.com/css2?family=Assistant:wght@400;500;600&family=David+Libre:wght@400;500;700&family=Frank+Ruhl+Libre:wght@400;500;600&family=Heebo:wght@400;500;600&display=swap');
@media(min-width:1101px){
 #panel-design .design-stage-grid{display:grid!important;grid-template-columns:minmax(185px,0.88fr) minmax(280px,1.35fr) minmax(260px,1fr)!important;gap:13px!important;align-items:start!important;direction:rtl;}
 #panel-design .design-choice-side,#panel-design .design-edit-side{max-height:min(790px,calc(100vh - 120px));overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;}
 #panel-design .design-customizer{position:sticky!important;top:14px!important;align-self:start!important;max-width:100%!important;}
 #panel-design .design-gallery{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
 #panel-design .design-gallery .mini-invite{height:140px!important;min-height:140px!important;}
 #panel-design .design-live-preview{width:100%!important;max-width:395px!important;}
 #panel-design .invitation-fields{grid-template-columns:1fr!important;}
 #panel-design .invitation-fields label{grid-column:1/-1!important;}
}
#panel-design .design-edit-side{padding:15px!important;min-width:0;}
#panel-design .design-edit-side .invitation-editor{margin:12px 0 0!important;padding:5px 1px!important;border:0;background:transparent;}
#panel-design .design-edit-side .invitation-editor summary{display:none;}
#panel-design .design-edit-side .invitation-fields{margin-top:10px;}
#panel-design .oj-style-settings{display:grid;gap:7px;margin:12px 0;border:1px solid #e2d7ca;border-radius:11px;padding:12px;background:#fdfaf6;}
#panel-design .oj-style-settings label{font-size:13px;font-weight:600;}
#panel-design .oj-style-settings select{font:14px Heebo,Arial,sans-serif;color:#43352d;border:1px solid #d8cabb;border-radius:8px;background:#fff;min-width:0;padding:9px;width:100%;}
#panel-design .design-bottom-actions{padding-top:10px;margin-top:14px;border-top:1px solid #e8dfd5;}
#panel-design .design-live-inner .oj-ornament,.event-preview .preview-art .oj-ornament{display:block;text-align:center;color:#af8571;font-size:25px;line-height:1.1;min-height:17px;}
#panel-design .design-live-inner .oj-ornament[hidden]{display:none;}
#panel-design .design-live-preview.oj-font-frank .invite-couple,.event-preview.oj-font-frank .preview-art .invite-couple{font-family:'Frank Ruhl Libre',Georgia,serif!important;}
#panel-design .design-live-preview.oj-font-david .invite-couple,.event-preview.oj-font-david .preview-art .invite-couple{font-family:'David Libre',Georgia,serif!important;}
#panel-design .design-live-preview.oj-font-assistant .invite-couple,.event-preview.oj-font-assistant .preview-art .invite-couple{font-family:Assistant,Arial,sans-serif!important;}
#panel-design .design-live-preview.oj-font-heebo .invite-couple,.event-preview.oj-font-heebo .preview-art .invite-couple{font-family:Heebo,Arial,sans-serif!important;}
@media(min-width:701px) and (max-width:1100px){
 #panel-design .design-stage-grid{display:grid!important;grid-template-columns:minmax(220px,1fr) minmax(285px,1.2fr)!important;gap:12px!important;}
 #panel-design .design-choice-side{grid-column:1;grid-row:1;}
 #panel-design .design-customizer{grid-column:2;grid-row:1 / span 2;position:sticky!important;top:12px;}
 #panel-design .design-edit-side{grid-column:1;grid-row:2;}
}
@media(max-width:700px){#panel-design .design-stage-grid{display:flex!important;flex-direction:column!important;gap:15px!important;}#panel-design .design-choice-side,#panel-design .design-customizer,#panel-design .design-edit-side{width:100%!important;box-sizing:border-box;}}

/* --- V21 invitation studio enhancements --- */
.oj-style-settings{display:grid;gap:14px;margin-bottom:14px}
.oj-style-settings .style-box{border:1px solid #e2d7ca;border-radius:10px;padding:14px;background:#fffdf9}
.oj-style-settings h4{margin:0 0 8px;font-size:15px;color:#4d3d33}
.oj-style-settings .style-grid{display:grid;grid-template-columns:minmax(88px,120px) 1fr;gap:10px 12px;align-items:center}
.oj-style-settings .compact-grid{grid-template-columns:minmax(88px,120px) 1fr}
.oj-style-settings select,.oj-style-settings input[type="color"],.oj-style-settings input[type="range"]{width:100%;margin:0}
.oj-style-settings label{margin:0;font-size:13px;font-weight:600;color:#655649}
.range-value{font-size:12px;color:#8b7d6c;justify-self:end}
.mini-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
#panel-design .design-edit-side .button.small{margin-top:0}
#panel-design .design-edit-side{display:flex;flex-direction:column;gap:14px}
#panel-design .design-edit-side .invitation-fields{display:grid;grid-template-columns:1fr;gap:10px}
#panel-design .design-edit-side .invitation-fields label{margin:0}
#panel-design .design-live-preview,
.event-preview .preview-art{position:relative;overflow:hidden}
#design-copy,
.event-preview .preview-art{position:relative;inline-size:100%;block-size:100%;min-height:100%}
#panel-design .design-live-inner{position:relative;width:100%;height:100%;padding:0!important;border:0!important}
.invite-line{position:absolute;transform:translate(-50%,-50%);margin:0;max-width:84%;width:max-content;white-space:pre-line;text-align:center;line-height:1.5;overflow-wrap:anywhere}
.invite-line.oj-ornament{max-width:70%;letter-spacing:.06em;line-height:1.15;white-space:nowrap}
.invite-line-editable{cursor:grab;user-select:none;touch-action:none}
.invite-line-editable:active{cursor:grabbing}
.invite-line.selected-line{outline:2px dashed rgba(105,82,69,.65);outline-offset:6px;background:rgba(255,255,255,.38);box-shadow:0 0 0 6px rgba(255,255,255,.18);border-radius:10px;padding-inline:10px}
.invite-line-editable:hover{filter:brightness(.98)}
#panel-design .design-customizer .panel-help{margin-bottom:10px}
#panel-design .design-customizer h3{margin-bottom:6px}
#panel-design .design-live-preview{box-shadow:0 10px 35px rgba(93,74,60,.10)}
.event-preview .preview-art .invite-line{max-width:82%}
.event-preview .preview-art .oj-ornament{max-width:68%}
#panel-design .design-live-preview .invite-couple,
.event-preview .preview-art .invite-couple{line-height:1.2!important}
#panel-design .design-live-preview .invite-kicker,
.event-preview .preview-art .invite-kicker{letter-spacing:.02em}
#panel-design .design-live-preview .invite-schedule,
.event-preview .preview-art .invite-schedule{line-height:1.6}
@media (max-width: 960px){
  .oj-style-settings .style-grid{grid-template-columns:1fr}
  .range-value{justify-self:start}
}
@media (max-width: 700px){
  .mini-actions{flex-direction:column}
  .mini-actions .button{width:100%}
}


/* V22 corrections — studio clarity and responsive layout */
#panel-design .oj-style-settings .style-grid{grid-template-columns:1fr!important;gap:6px!important}
#panel-design .oj-style-settings .style-grid label{margin-top:5px!important}
#panel-design .oj-style-settings select{display:block;width:100%!important;min-width:0!important;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:10px 36px 10px 13px!important;box-sizing:border-box;direction:rtl;min-height:44px}
#panel-design .oj-style-settings .style-box{min-width:0;overflow:hidden}
#panel-design .oj-style-settings .style-grid>*{min-width:0}
#invite-line-color{appearance:none;-webkit-appearance:none;border:1px solid #dccbbb!important;border-radius:12px!important;background:#fff!important;padding:5px!important;height:46px;min-width:0;width:100%!important;cursor:pointer;box-shadow:0 2px 8px #51361a0b}
#invite-line-color::-webkit-color-swatch-wrapper{padding:0}
#invite-line-color::-webkit-color-swatch{border:0;border-radius:8px}
#invite-line-color::-moz-color-swatch{border:0;border-radius:8px}
/* Override legacy font-size declarations that previously blocked per-line styling. */
#panel-design .design-live-preview .invite-line,#panel-design .design-live-preview .invite-line.invite-couple,#panel-design .design-live-preview .invite-line.oj-ornament,
.event-preview .preview-art .invite-line,.event-preview .preview-art .invite-line.invite-couple,.event-preview .preview-art .invite-line.oj-ornament{font-size:var(--line-font-size)!important;font-style:var(--line-font-style)!important;font-weight:var(--line-font-weight)!important;color:var(--line-font-color)!important;font-family:var(--line-font-family)!important;line-height:1.3!important;}
.invite-line.oj-ornament[data-ornament="heart-line"],.invite-line.oj-ornament[data-ornament="swirl-heart"]{display:flex!important;align-items:center;justify-content:center;gap:10px;min-width:42%;white-space:nowrap!important}
.invite-line.oj-ornament[data-ornament="heart-line"]::before,.invite-line.oj-ornament[data-ornament="heart-line"]::after{content:"";display:block;height:1px;min-width:30px;flex:1;background:currentColor;opacity:.8}
.invite-line.oj-ornament[data-ornament="swirl-heart"]::before,.invite-line.oj-ornament[data-ornament="swirl-heart"]::after{content:"❦";font-size:1.15em;font-weight:400;line-height:1}
.invite-line.oj-ornament[data-ornament="swirl-heart"]::after{transform:scaleX(-1)}
#panel-design .design-live-inner .oj-ornament,.event-preview .preview-art .oj-ornament{min-height:0}
/* Prevent horizontal clipping on narrow screens, including the event page. */
html,body{max-width:100%;overflow-x:clip}
@media(max-width:700px){
 .wrap{width:calc(100% - 28px)!important;max-width:100%!important}
 .workspace-section,.workspace-section>.wrap,.editor-grid,#panel-page,#panel-page .editor-grid,#panel-page .editor-controls{max-width:100%;min-width:0!important}
 .editor-grid{grid-template-columns:minmax(0,1fr)!important}
 .event-preview{box-sizing:border-box;width:100%!important;max-width:100%!important;padding:15px!important}
 .event-preview .preview-art{box-sizing:border-box!important;width:100%!important;min-width:0!important;max-width:100%!important;min-height:0!important;aspect-ratio:360/510!important;padding:0!important;background-size:cover!important}
 .event-preview .preview-art .invite-line{max-width:84%}
 #panel-design .design-live-preview{max-width:min(100%,360px)!important;aspect-ratio:360/510!important;min-height:0!important}
 .hero{display:flex!important;flex-direction:column!important;gap:8px!important;padding-block:34px 32px!important}
 .hero-copy{display:contents}
 .hero h1,.hero .eyebrow,.hero-description{width:100%;order:0}
 .hero-description{font-size:17px!important;line-height:1.7!important;white-space:normal!important;margin-bottom:6px!important}
 .hero-art{order:1;width:100%;height:350px!important;transform:scale(.82);transform-origin:center center;margin-block:-27px}
 .hero-actions{order:2;width:100%;justify-content:center}
 .hero-actions .button{width:min(100%,340px)}
 .demo-under-button{order:3;text-align:center;margin:5px 0 0!important}
 .panel-tabs{max-width:100%;overflow-x:auto}
 .panel-card{min-width:0}
}

/* V23: focused selection controls and proportional ornaments */
#panel-design .invite-line.selected-line {background:transparent!important;box-shadow:none!important;padding-inline:0!important;outline:2px dashed rgba(93,71,60,.8)!important;outline-offset:5px!important}
#panel-design .style-box.is-ornament-selected {border-color:#a78068;background:#fbf4ee;box-shadow:0 0 0 2px rgba(167,128,104,.11)}
#panel-design .selection-current{border-color:#a78068!important}
#panel-design .ornament-picker{border:1px solid #dfcfc0;border-radius:11px;padding:12px;background:#fff;margin-block:10px}
#panel-design .ornament-picker[hidden]{display:none!important}
#panel-design .ornament-picker label{display:block;margin:0 0 7px}
#panel-design .ornament-picker select{width:100%;max-width:100%}
/* Use scalable ornament geometry, rather than fixed 30px side-lines */
.invite-line.oj-ornament[data-ornament="heart-line"] {display:flex!important;align-items:center!important;justify-content:center!important;gap:.42em!important;width:clamp(110px,44%,235px)!important;max-width:76%!important;line-height:1.25!important;min-width:0!important}
.invite-line.oj-ornament[data-ornament="heart-line"]::before,.invite-line.oj-ornament[data-ornament="heart-line"]::after{content:""!important;display:block!important;height:1px!important;min-width:0!important;flex:1!important;background:currentColor!important}
.invite-line.oj-ornament[data-ornament="swirl-heart"]{display:flex!important;align-items:center!important;justify-content:center!important;gap:.4em!important;width:clamp(110px,44%,235px)!important;max-width:76%!important;min-width:0!important}
.invite-line.oj-ornament[data-ornament="swirl-heart"]::before,.invite-line.oj-ornament[data-ornament="swirl-heart"]::after{font-size:.9em!important;flex:1!important}

.invite-line.oj-ornament[data-ornament="heart-line"],.invite-line.oj-ornament[data-ornament="swirl-heart"]{width:min(76%,calc(var(--line-font-size) * 7.5))!important}

/* V24: larger natural text area, readable controls, gentle invitation contrast */
#panel-design .design-live-preview {padding:0!important;box-sizing:border-box!important;}
#panel-design .design-live-inner {position:relative!important;z-index:1;width:100%!important;height:100%!important;box-sizing:border-box!important;padding:0!important;}
#design-copy {position:relative!important;width:100%!important;height:100%!important;}
#panel-design .design-live-preview .invite-line,
.event-preview .preview-art .invite-line{max-width:96%;box-sizing:border-box;min-width:0;overflow-wrap:break-word;word-break:normal;}
#panel-design .design-live-preview .invite-line:not(.oj-ornament),
.event-preview .preview-art .invite-line:not(.oj-ornament){width:max-content;}
#panel-design .design-live-preview .invite-line.selected-line{background:transparent!important;}
/* Use a nonintrusive white veil over the original background, not blur of the asset. */
#panel-design .design-live-preview::before,
.event-preview .preview-art::before{content:"";position:absolute;inset:0;background:#fffaf1;opacity:var(--oj-bg-wash,0);pointer-events:none;z-index:0;}
.event-preview .preview-art{padding:0!important;isolation:isolate;}
.event-preview .preview-art .invite-line{z-index:1;}
/* Soft text effects apply to lines only, never a white rectangle obscuring the invitation. */
#panel-design .design-live-preview[data-text-effect="shadow"] .invite-line,
.event-preview .preview-art[data-text-effect="shadow"] .invite-line{text-shadow:0 2px calc(2px + 7px * var(--oj-effect-opacity,.35)) rgba(17,13,10,var(--oj-effect-opacity,.35));}
#panel-design .design-live-preview[data-text-effect="glow"] .invite-line,
.event-preview .preview-art[data-text-effect="glow"] .invite-line{text-shadow:0 0 calc(4px + 11px * var(--oj-effect-opacity,.35)) rgba(255,255,255,var(--oj-effect-opacity,.35)),0 0 3px #ffffffb8;}
#panel-design .design-live-preview[data-text-effect="frost"] .invite-line:not(.oj-ornament),
.event-preview .preview-art[data-text-effect="frost"] .invite-line:not(.oj-ornament){background:rgba(255,251,245,var(--oj-effect-opacity,.35));backdrop-filter:blur(calc(2px + 7px * var(--oj-effect-opacity,.35)));-webkit-backdrop-filter:blur(calc(2px + 7px * var(--oj-effect-opacity,.35)));border-radius:8px;padding:2px 5px;}
#panel-design .design-live-preview .invite-line:not(.selected-line){outline:none;}
/* Native RTL selects reserve room for the arrow; normalize the actual content alignment. */
#panel-design select,#panel-design .oj-style-settings select,#panel-design .oj-readability-settings select{direction:rtl!important;text-align:right!important;text-align-last:right!important;padding-inline-start:10px!important;padding-inline-end:13px!important;min-width:0!important;width:100%!important;box-sizing:border-box!important;border-radius:10px!important;}
#panel-design .oj-readability-settings{border:1px solid #e3d7ca;border-radius:12px;padding:14px;background:#fffdf9;display:grid;gap:8px;}
#panel-design .oj-readability-settings h4{font-size:15px;margin:0;color:#594638;}
#panel-design .readability-form{display:grid;gap:7px;min-width:0;}
#panel-design .readability-form label{font-size:13px;font-weight:600;color:#655649;display:flex;justify-content:space-between;gap:8px;}
#panel-design .readability-form output{font-size:12px;color:#8d705c;}
#panel-design .readability-form input[type=range]{width:100%;accent-color:#896c59;}
#panel-design .readability-form select{min-height:43px;background:#fff;border:1px solid #d7c7b6;color:#44372d;font:14px Heebo,Arial,sans-serif;}

/* V25 — mobile landing visibility and hero collision fixes.
   Respect HTML hidden even when component/media rules set display !important. */
[hidden] { display: none !important; }
.workspace-mode .home-features { display: none !important; }

@media (max-width:700px) {
  /* Don't overlap the artwork and the demo CTA with negative margins. */
  #landing.hero {
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:0!important;
    padding-top:30px!important;
    padding-bottom:32px!important;
    min-height:0!important;
  }
  #landing .hero-copy {display:contents;}
  #landing .hero h1, #landing .hero-description {max-width:100%;}
  #landing .hero-description {margin-bottom:15px!important;}
  #landing .hero-art {
    order:1!important;
    width:100%!important;
    height:390px!important;
    margin:0!important;
    transform:none!important;
    overflow:visible;
    flex:none!important;
  }
  #landing .hero-art .orbit {width:min(90vw,345px);height:min(90vw,345px)}
  #landing .hero-art .paper-back {transform:rotate(10deg) translate(-12px,-7px) scale(.86)}
  #landing .hero-art .invitation {transform:rotate(-6deg) scale(.86)}
  #landing .hero-art .floating-note {right:5px;bottom:9px;transform:rotate(3deg) scale(.85);transform-origin:bottom right;}
  #landing .hero-actions {
    order:2!important;
    position:relative;
    z-index:1;
    margin-top:20px!important;
    width:100%!important;
    justify-content:center!important;
  }
  #landing .hero-actions .button {width:min(100%,340px)}
  #landing .demo-under-button{order:3!important;margin-top:9px!important;text-align:center!important;}
}
@media (max-width:375px) {
  #landing .hero-art {height:348px!important}
  #landing .hero-art .paper-back {transform:rotate(10deg) translate(-12px,-7px) scale(.76)}
  #landing .hero-art .invitation {transform:rotate(-6deg) scale(.76)}
  #landing .hero-art .floating-note {transform:rotate(3deg) scale(.75)}
}

/* V26 mobile hero: keep intro copy, illustration and CTA in separate flow slots */
@media (max-width:700px) {
  #landing.hero {gap:0!important;height:auto!important;overflow:visible!important;}
  #landing .hero-description {position:relative;order:0!important;margin:0 0 10px!important;padding:0!important;height:auto!important;min-height:0!important;z-index:1;overflow-wrap:break-word;}
  #landing .hero-art {position:relative!important;order:1!important;margin:0!important;padding:0!important;flex:0 0 400px!important;height:400px!important;min-height:400px!important;align-self:stretch!important;transform:none!important;z-index:0;}
  #landing .hero-actions {order:2!important;margin:25px 0 0!important;flex:none!important;}
}
@media (max-width:375px) {
  #landing .hero-description {margin-bottom:12px!important;}
  #landing .hero-art {flex-basis:365px!important;height:365px!important;min-height:365px!important;}
}

/* V28 — Mobile auth sheet: show the full form instead of an internal scrollbar. */
@media (max-width: 700px) {
  #auth-dialog {
    box-sizing: border-box;
    width: calc(100% - 20px);
    max-width: 480px;
    max-height: calc(100dvh - 20px);
    margin: auto;
    padding: 16px 18px 18px;
    overflow-x: hidden;
    overflow-y: auto; /* fallback only on unusually short screens / keyboard */
    scrollbar-gutter: auto;
    border-radius: 18px;
  }
  #auth-dialog .dialog-top {margin-bottom: 4px;}
  #auth-dialog .auth-tabs {margin: 7px 0 12px; gap: 16px;}
  #auth-dialog h2 {font-size: 23px; margin: 0 0 3px;}
  #auth-dialog #auth-subtitle {font-size: 13px; margin: 0 0 9px;}
  #auth-dialog label {margin: 7px 0; font-size: 13px;}
  #auth-dialog input {height: 36px; padding: 7px 10px; margin-top: 3px;}
  #auth-dialog .form-grid {gap: 8px;}
  #auth-dialog .auth-demo-note {padding: 7px 9px; margin: 10px 0!important; line-height: 1.4;}
  #auth-dialog .auth-submit {padding: 10px 14px; margin-top: 3px;}
}
@media (max-width: 700px) and (max-height: 600px) {
  #auth-dialog {max-height: calc(100dvh - 12px); padding: 12px 14px;}
  #auth-dialog .auth-tabs {margin: 4px 0 8px;}
  #auth-dialog label {margin: 5px 0;}
  #auth-dialog .auth-demo-note {margin: 6px 0!important;}
}

/* V29: the hero must never override the hidden state. Mobile hero had
   ID-specific display:flex!important, which defeated [hidden] on #landing. */
#landing[hidden], #guests[hidden], .home-features[hidden] { display:none!important; }
body.workspace-mode #landing, body.workspace-mode .home-features { display:none!important; }
body:not(.workspace-mode) #guests { display:none!important; }

/* v30 two-finger scaling: keep touch events in invitation editor only */
#design-copy {touch-action:none;}

/* v31 — mobile segmented filters: keep text inside its selected pill */
@media (max-width:700px) {
  #panel-guests .filter-group {min-width:0;max-width:100%;width:100%;flex-wrap:wrap;gap:8px;}
  #panel-guests .filter-bar .filters {
    display:grid;grid-template-columns:repeat(4,minmax(0,1fr));
    width:100%;max-width:100%;min-width:0;flex:0 0 100%;
    height:auto;min-height:40px;box-sizing:border-box;gap:2px;padding:3px;
  }
  #panel-guests .filter-bar .filters .filter,
  #panel-guests .filter-bar .filters .filter.active {
    min-width:0;max-width:100%;width:100%;box-sizing:border-box;
    min-height:34px;height:auto;padding:7px 2px;margin:0;
    display:flex;align-items:center;justify-content:center;
    font-size:clamp(10px,2.9vw,12px);line-height:1.25;
    white-space:nowrap;overflow:hidden;text-overflow:clip;
  }
  #panel-guests .guest-filter-caption{white-space:nowrap}
}

/* v31 — all four invitation shape controls in one tidy horizontal row */
@media (max-width:700px) {
  #panel-design .shape-first {padding:12px 10px;margin-block:10px 12px;min-width:0}
  #panel-design .shape-first .design-shapes {
    display:grid;grid-template-columns:repeat(4,minmax(0,1fr));
    width:100%;min-width:0;gap:4px;margin:5px 0 0;padding:0;
  }
  #panel-design .shape-first .design-shapes label {
    min-width:0;margin:0;padding:8px 2px;box-sizing:border-box;
    display:flex;align-items:center;justify-content:center;gap:3px;
    border:1px solid #e4d7c8;border-radius:7px;
    background:#fffdf9;text-align:center;white-space:nowrap;
    font-size:clamp(9px,2.55vw,12px);line-height:1.2;
  }
  #panel-design .shape-first .design-shapes label:has(input:checked){background:#ebe0d3;border-color:#a99179}
  #panel-design .shape-first .design-shapes input {flex:none;width:12px;height:12px;margin:0}
}

/* v32: shape choice belongs with invitation preview, without boxed chips */
#panel-design .design-customizer .shape-first{background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0!important;margin:0 0 13px!important;padding:0!important;text-align:right!important;}
#panel-design .design-customizer .shape-first fieldset{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:6px!important;min-width:0!important;width:100%!important;border:0!important;background:none!important;box-shadow:none!important;margin:0!important;padding:4px 0 0!important;}
#panel-design .design-customizer .shape-first legend{font-size:15px!important;font-weight:650!important;padding:0 0 5px!important;}
#panel-design .design-customizer .shape-first label,#panel-design .design-customizer .shape-first label:has(input:checked){display:flex!important;align-items:center!important;justify-content:center!important;gap:4px!important;margin:0!important;padding:5px 0!important;border:0!important;background:transparent!important;box-shadow:none!important;border-radius:0!important;outline:0!important;color:#53483e!important;white-space:nowrap!important;font-size:clamp(10px,2.8vw,13px)!important;line-height:1.4!important;min-width:0!important;cursor:pointer!important;}
#panel-design .design-customizer .shape-first input[type=radio]{appearance:radio!important;-webkit-appearance:radio!important;border:0!important;outline:0!important;box-shadow:none!important;background:transparent!important;accent-color:#775d4c!important;width:14px!important;height:14px!important;min-width:14px!important;margin:0!important;flex:none!important;}
#panel-design .design-customizer .shape-first input[type=radio]:focus-visible{outline:2px solid #8d715b!important;outline-offset:3px!important;}
@media(max-width:400px){#panel-design .design-customizer .shape-first fieldset{gap:2px!important}#panel-design .design-customizer .shape-first label{font-size:clamp(9.5px,2.65vw,11.5px)!important;gap:2px!important}#panel-design .design-customizer .shape-first input[type=radio]{width:12px!important;height:12px!important;min-width:12px!important}}

/* V35 Event page preview: no duplicate metadata, optional introduction above invitation, compact layout. */
.event-preview{gap:8px!important;padding:18px 17px 20px!important}
.event-preview .preview-brand{margin:0!important}
.event-preview .preview-greeting-top{margin:0 0 5px!important;font-size:14px!important;line-height:1.5!important;white-space:pre-line}
.event-preview .preview-art{margin:4px auto 8px!important}
.event-preview .preview-navigation-divider{margin:7px auto 5px!important}
.event-preview .preview-navigation{gap:5px!important}
.event-preview .preview-navigation>span{margin:0 0 3px!important}
.event-preview #preview-rsvp{margin-top:4px!important}
.event-preview .preview-navigation .button{margin:0!important}
.event-preview .preview-eyebrow,.event-preview #preview-name{margin:0!important}
@media(max-width:700px){.event-preview{width:100%;max-width:100%;box-sizing:border-box;padding:15px 12px!important}.event-preview .preview-art{width:100%!important;max-width:100%!important;margin:2px auto 6px!important}}
