/* JA ATELIER 2.0 feature gallery — scoped to new preview modules. */
.atelier-shortcuts{margin-top:26px;padding:27px 29px 31px;border:1px solid #e4e7de;background:linear-gradient(145deg,#fafbf7,#f1f4ef)}
.atelier-shortcuts-head h2{font-family:var(--serif);font-size:clamp(28px,3vw,36px);font-weight:400;line-height:1.2;letter-spacing:-.035em;margin:7px 0 9px}.atelier-shortcuts-head h2 em{color:#688772}.atelier-shortcuts-head p:last-child{font-size:12px;color:#879086;line-height:1.7;margin:0 0 22px}
.atelier-shortcut-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.atelier-shortcut{display:flex;position:relative;flex-direction:column;text-align:left;min-height:170px;gap:8px;border:1px solid #dde4dc;padding:19px 14px 17px;background:var(--shortcut-bg);color:#3d5849;cursor:pointer;transition:transform .2s,box-shadow .2s}.atelier-shortcut:hover{transform:translateY(-4px);box-shadow:0 11px 20px #425b4b15}.shortcut-icon{font-family:var(--serif);font-size:31px;color:#7c9a83}.atelier-shortcut strong{font-size:12px}.atelier-shortcut small{font-size:10px;line-height:1.6;color:#718075;padding-right:13px}.shortcut-arrow{position:absolute;right:13px;bottom:12px;font-size:14px}
.atelier-page-head{align-items:center}.atelier-demo-tag{flex-shrink:0;font:10px/1.5 var(--sans,Arial,sans-serif);letter-spacing:.12em;padding:10px 12px;border:1px solid #d6ded3;background:#f5f8f2;color:#708775}.atelier-feature-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;margin:20px 0 24px}.atelier-stats{display:flex;gap:25px;flex-wrap:wrap;color:#78877c;font-size:11px}.atelier-stats span{display:flex;align-items:baseline;gap:7px}.atelier-stats strong{font-family:var(--serif);font-size:28px;font-weight:400;color:#3f654b}.atelier-switch{display:flex;border:1px solid #d4ded3;background:#f6f9f4;padding:3px;gap:2px;border-radius:6px}.atelier-switch button{min-height:35px;padding:7px 13px;font-size:11px;border:0;border-radius:4px;background:none;color:#6b8574;cursor:pointer}.atelier-switch button[aria-pressed=true]{background:#436a50;color:white;box-shadow:0 1px 4px #29443225}
.gift-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.gift-card{background:#fffefa;border:1px solid #e3e5db;min-width:0;display:flex;flex-direction:column;overflow:hidden}.gift-art{height:180px;position:relative;display:grid;place-items:center;background:radial-gradient(circle at 50% 35%,#f9fbf8,#d5e5db)}.gift-art span:first-child{font-family:var(--serif);font-size:73px;line-height:1;color:#658678;text-shadow:0 12px 20px #314d4420}.gift-art.sea{background:radial-gradient(circle at 50% 35%,#f4faf7,#c9dedc)}.gift-art.sand{background:radial-gradient(circle at 50% 35%,#fcf7ed,#e8d7bf)}.gift-art.rose{background:radial-gradient(circle at 50% 35%,#fff7f3,#edddd7)}.gift-art.green{background:radial-gradient(circle at 50% 35%,#f4f7ef,#cbd7c3)}.gift-art.blue{background:radial-gradient(circle at 50% 35%,#f6f8fa,#ced9e3)}.gift-ribbon{position:absolute;right:12px;top:13px;display:inline-block!important;font:9px Arial,sans-serif;letter-spacing:.1em;padding:7px 8px;background:#fffdf4e8;color:#587a60}.gift-details{display:flex;flex:1;flex-direction:column;padding:19px 18px}.gift-price{font-size:10px;letter-spacing:.13em;color:#72907c;font-weight:700}.gift-details h3{font-family:var(--serif);font-size:24px;line-height:1.2;margin:9px 0 6px;color:#344d3c;font-weight:400}.gift-details p{font-size:11px;line-height:1.7;color:#8a9589;margin-bottom:20px}.gift-actions{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:auto}.gift-actions button:not(.gift-remove){width:100%;min-height:38px;border:1px solid #45694f;background:#45694f;color:white;border-radius:3px;padding:8px;font-size:11px;cursor:pointer}.gift-actions button.outline:not(.gift-remove){background:transparent;color:#486b51}.gift-actions button:disabled{cursor:not-allowed;opacity:.62}.gift-status{font-size:11px;color:#7f9082}.gift-remove{margin-left:auto;width:27px;height:27px;border:1px solid #e9d9d6;border-radius:50%;background:#fff8f5;color:#a56d64;cursor:pointer}
.atelier-add-panel{margin-top:21px;background:#fcfcf8;border:1px solid #dfe6db;padding:0 20px}.atelier-add-panel summary{padding:17px 0;font-size:12px;color:#476c52;font-weight:700;cursor:pointer;list-style:none}.atelier-add-panel summary::marker{display:none}.atelier-inline-form{display:flex;gap:13px;align-items:end;padding:4px 0 20px;flex-wrap:wrap}.atelier-inline-form label{display:flex;flex:1;min-width:160px;flex-direction:column;gap:8px;font-size:11px;color:#6b7b70}.atelier-inline-form input{height:41px;border:1px solid #d4dfd3;border-radius:3px;padding:10px 12px;font-size:12px;background:white;color:#354a3a}.atelier-inline-form button{min-height:41px}.atelier-disclaimer{font-size:11px;color:#8e9a8f;line-height:1.7;margin:19px 0 0}
.seating-layout{display:grid;grid-template-columns:minmax(220px,.72fr) minmax(0,2fr);gap:17px;align-items:start}.unassigned-panel,.seating-table{border:1px solid #dfe5d9;background:#fffefa;padding:19px;min-width:0;min-height:230px;transition:border-color .15s,background .15s}.unassigned-panel{position:sticky;top:20px;background:#f7f9f4}.drop-active{border-color:#537e59!important;background:#edf8eb!important}.seat-column-heading{display:flex;justify-content:space-between;align-items:center;gap:8px}.seat-column-heading strong{font-family:var(--serif);font-size:28px;font-weight:400;color:#52745c}.seat-intro{font-size:10px;color:#92a093;line-height:1.5;margin:10px 0 19px}.seating-table-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.round-table-art{width:178px;max-width:100%;min-height:178px;aspect-ratio:1;border-radius:50%;border:2px solid #c5d2c4;outline:8px solid #f0f4ed;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;margin:13px auto 29px;padding:15px;color:#425c48;background:radial-gradient(circle at 40% 30%,#fffefa,#f1f5ed)}.table-ornament{font:21px var(--serif);color:#83a18a}.round-table-art strong{font:400 21px/1.15 var(--serif);margin:7px 0;overflow-wrap:anywhere}.round-table-art small{font-size:10px;color:#839489}.table-progress{display:block;width:85px;height:3px;background:linear-gradient(to right,#6e9980 var(--full),#e1e8de var(--full));margin-top:12px}.seat-stack{display:flex;flex-direction:column;gap:9px}.seat-household{display:flex;align-items:center;gap:10px;padding:10px;background:#f5f7f1;border:1px solid #e1e8df;cursor:grab;min-width:0}.seat-household:active{cursor:grabbing}.seat-person-icon{display:grid;place-items:center;flex:0 0 31px;height:31px;border-radius:50%;font-size:10px;background:#e2ecdf;color:#607f68}.seat-person-info{display:flex;flex-direction:column;min-width:0;flex:1}.seat-person-info strong{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#3d5746}.seat-person-info small{font-size:9px;color:#8da092}.seat-household select{width:102px;max-width:48%;min-width:0;min-height:32px;border:1px solid #d2ded1;background:#fffefa;color:#567360;padding:4px 5px;font-size:10px;border-radius:2px}.empty-seat{color:#9ca99c;font-size:11px;text-align:center;padding:14px 8px;margin:0}
.atelier-filter{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0 20px}.atelier-filter button{background:#f7faf5;border:1px solid #d7e0d4;border-radius:4px;padding:9px 13px;font-size:11px;color:#6b856f;cursor:pointer}.atelier-filter button[aria-pressed=true]{background:#466d52;color:white;border-color:#466d52}.photo-gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.photo-tile{background:#fffefa;border:1px solid #e4e5da;overflow:hidden}.photo-tile img{width:100%;height:240px;object-fit:cover;display:block}.photo-tile-info{display:flex;justify-content:space-between;gap:12px;align-items:end;padding:18px}.photo-status{display:block;font:9px/1.5 Arial,sans-serif;letter-spacing:.12em;color:#b18b50}.photo-status.approved{color:#5b9172}.photo-tile h3{font-family:var(--serif);font-size:25px;font-weight:400;margin:7px 0 3px;color:#364b3b}.photo-tile p{color:#8d9b8e;font-size:11px;margin:0}.photo-actions{display:flex;gap:7px;flex-shrink:0}.photo-actions button{font-size:10px;padding:8px 9px;border:1px solid #d5dfd4;color:#486d52;background:#f4f8f1;cursor:pointer;border-radius:3px}.photo-actions button:last-child{font-size:17px;border-color:#eadbd8;background:#fff6f5;color:#b17a72}.photo-upload-area{background:linear-gradient(135deg,#f7f9f4,#eaf2e9);border:1px dashed #aac0ac;padding:28px;text-align:center;margin-bottom:23px}.photo-upload-icon{font:35px var(--serif);color:#689374;margin-bottom:8px}.photo-upload-area strong{display:block;font:400 27px var(--serif);color:#3c5b45}.photo-upload-area p{font-size:12px;color:#7f9483;max-width:400px;margin:10px auto 19px;line-height:1.6}.photo-upload-button{display:inline-block;padding:12px 22px;background:#426d4f;color:white;border-radius:3px;cursor:pointer;font-size:12px}.empty-photo-gallery{grid-column:1/-1;text-align:center;background:#f6f8f2;padding:50px 20px}.empty-photo-gallery span{font:34px var(--serif);color:#91a895}.empty-photo-gallery h3{font:400 28px var(--serif);margin:13px 0}.empty-photo-gallery p{font-size:11px;color:#889b8d}
.share-layout{display:grid;grid-template-columns:minmax(280px,.92fr) minmax(0,1.08fr);gap:30px;align-items:center;padding:24px;background:#f8faf6;border:1px solid #e1e8df}.share-preview-panel{display:flex;justify-content:center;background:radial-gradient(circle,#e4ece7,#f5f6f1);padding:16px}.share-phone{width:min(330px,100%);background:#e8eee8;border-radius:23px;border:7px solid #243a30;box-shadow:0 15px 35px #344b3b26;overflow:hidden}.share-phone-top{height:60px;display:flex;align-items:center;gap:9px;padding:9px 12px;background:#f5f8f4}.share-phone-back{font-size:33px;color:#5e8070}.share-avatar{width:31px;height:31px;border-radius:50%;background:#cddfd3;display:grid;place-items:center;color:#446d50}.share-phone-top strong,.share-phone-top small{display:block;font-size:11px;color:#354940}.share-phone-top small{font-size:9px;color:#899b8d}.share-phone-menu{margin-left:auto;font-size:22px;color:#74907b}.share-chat{min-height:490px;padding:15px 12px;background-color:#ece4d6;background-image:radial-gradient(#c7bbac66 1px,transparent 1px);background-size:25px 25px}.share-date{width:fit-content;margin:0 auto 18px;background:#f9f9f5;border-radius:5px;padding:4px 10px;color:#8b968d;font-size:9px;letter-spacing:.1em}.share-message{max-width:280px;margin-left:auto;background:#d5f0d3;padding:5px 5px 10px;border-radius:7px;box-shadow:0 2px 3px #40534018}.share-card{border-radius:5px;overflow:hidden;background:#f2f4ed}.share-card>img{width:100%;aspect-ratio:1200/630;object-fit:cover;display:block}.share-card-copy{padding:8px 10px 9px}.share-card-copy strong{font-size:11px;line-height:1.35;color:#3c5649}.share-card-copy p{font-size:9px;color:#758e80;line-height:1.4;margin:5px 0}.share-card-copy small{font-size:8px;color:#7a9184;overflow-wrap:anywhere}.share-message>p{padding:8px 6px 0;font-size:11px;line-height:1.45;color:#354a3d;margin:0}.share-time{display:block;text-align:right;font-size:9px;color:#8ba18f;padding:3px 5px 0}.share-time span{color:#58a0a9}.share-phone-bottom{height:38px;display:flex;align-items:center;justify-content:space-around;color:#688075;background:#f5f8f4;font-size:15px}.share-phone-bottom span{background:white;border-radius:12px;padding:6px 70px 6px 10px;font-size:10px;color:#b5c0b9}.share-info-panel{padding:12px}.share-info-panel h2{font:400 clamp(31px,3vw,43px)/1.14 var(--serif);letter-spacing:-.03em;color:#39533e;margin:12px 0 22px}.share-info-panel h2 em{color:#6f957b}.share-info-panel>p:not(.overline):not(.form-note){line-height:1.9;color:#7c8e80;font-size:13px}.share-checks{display:flex;flex-direction:column;gap:12px;font-size:12px;color:#55765e;padding:21px 0}.share-url{padding:12px;word-break:break-all;background:#fffefa;border:1px solid #dfe5dc;border-radius:4px;color:#899e8c;font-size:10px}.share-buttons{display:flex;gap:9px;flex-wrap:wrap;margin-top:17px}.share-buttons a{text-decoration:none}.share-info-panel .form-note{font-size:11px;color:#557a60;min-height:16px;margin:12px 0 0}
@media(max-width:1180px){.atelier-shortcut-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gift-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.seating-layout{grid-template-columns:1fr}.unassigned-panel{position:static}.share-layout{gap:16px}}
@media(max-width:940px){.side-nav{overflow-x:auto;overscroll-behavior-inline:contain;padding-bottom:6px}.side-nav .nav-item{flex:0 0 auto;white-space:nowrap}.atelier-page-head{display:flex}.share-layout{grid-template-columns:1fr}.share-preview-panel{max-width:460px;margin:0 auto;width:100%}}
@media(max-width:700px){.atelier-shortcuts{padding:23px 18px}.atelier-shortcut-grid{gap:9px}.atelier-shortcut{min-height:151px;padding:15px 12px}.atelier-shortcut small{font-size:9px}.atelier-page-head{display:block}.atelier-demo-tag{display:inline-block;margin-top:16px}.atelier-stats{gap:14px}.atelier-stats strong{font-size:23px}.atelier-feature-bar{align-items:flex-start}.gift-grid,.photo-gallery-grid,.seating-table-grid{grid-template-columns:1fr}.gift-art{height:155px}.photo-tile img{height:230px}.share-layout{padding:13px}.share-info-panel{padding:10px}.share-phone{width:min(330px,100%)}}
@media(max-width:420px){.atelier-shortcut-grid{grid-template-columns:1fr 1fr}.atelier-shortcut{min-height:130px}.shortcut-icon{font-size:25px}.atelier-switch button{font-size:10px;padding-inline:9px}.seat-household{gap:6px;padding:8px}.seat-household select{width:100px}.share-phone-bottom span{padding-right:50px}}
@media print{.demo-ribbon,.sidebar,.topbar,.app-footer,.atelier-feature-bar,.atelier-add-panel,.atelier-disclaimer,.atelier-shortcuts,.seat-household select{display:none!important}.workspace{display:block!important}.app-body{display:block!important}main{padding:0!important}.view:not(#view-seating){display:none!important}#view-seating{display:block!important}.seating-layout{grid-template-columns:1fr 2fr}.seating-table-grid{grid-template-columns:1fr 1fr}.seat-household{break-inside:avoid}.seating-table{break-inside:avoid}}

/* Keep the mobile navigation inside the viewport. */
@media(max-width:940px){.workspace{grid-template-columns:minmax(0,1fr)}.sidebar,.side-nav{min-width:0}.side-nav{max-width:100%}}
