.designer-shell{max-width:1600px;margin:auto;padding:32px 24px 60px}.designer-heading{display:flex;justify-content:space-between;gap:20px;align-items:center}.designer-heading h1{font-size:clamp(2rem,4vw,3.4rem);margin:8px 0}.designer-heading p{margin:8px 0 22px}.designer-layout{display:grid;grid-template-columns:290px minmax(0,1fr);gap:24px}.designer-layout>.cal-panel{margin:0;padding:22px}.designer-layout h2{font-size:1.3rem;margin:0 0 18px}.frame-choices{display:grid;gap:8px}.frame-choices [aria-pressed=true]{background:#17364b;color:white;outline:2px solid #d0a755;outline-offset:2px}#layout-description,.designer-privacy,.cover-label{font-size:.85rem;line-height:1.6}.designer-privacy{border-top:1px solid #dce3df;padding-top:14px;color:#58676f}.image-picker{display:block;font-weight:600;font-size:.85rem}.image-picker input{display:block;max-width:100%;margin:12px 0;font-size:.8rem}.cover-label{display:block}.cover-label select{display:block;width:100%;padding:10px;margin-top:8px}.frame-preview{aspect-ratio:16/9;position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at top,#385369,#102839);border-radius:16px;box-shadow:0 12px 40px #17364b22}.frame-decoration{position:absolute;inset:0;z-index:0}.frame-decoration img{display:block;width:100%;height:100%;object-fit:cover}.frame-decoration .photo{overflow:hidden;background:#e8e2d9;border:5px solid #fff;box-shadow:0 3px 16px #0004}.video-space{position:absolute;inset:25%;display:flex;flex-direction:column;background:#142d40;border:1px solid #ffffff70;border-radius:9px;box-shadow:0 4px 20px #0006;overflow:hidden;z-index:2;color:white}.preview-badge{font-size:clamp(.45rem,.75vw,.7rem);letter-spacing:.1em;align-self:center;padding:7px}.sample-participants{display:grid;grid-template-columns:1fr 1fr;gap:5px;flex:1;padding:0 7px;min-height:0}.sample-participants div{display:grid;place-items:center;background:linear-gradient(140deg,#6e807f,#2f5365);border-radius:5px}.sample-participants div+div{background:linear-gradient(140deg,#8b7f75,#544d66)}.sample-participants span{font-size:clamp(.65rem,1vw,1rem);letter-spacing:.1em}.preview-controls{display:flex;justify-content:center;gap:12px;padding:8px;font-size:clamp(.4rem,.7vw,.65rem);color:#d9e1e6}.layout-mosaic .frame-decoration{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(4,minmax(0,1fr));gap:8px;padding:8px}.layout-mosaic .photo{border-width:2px;border-radius:3px}.layout-full .photo{position:absolute;inset:0;border:0;box-shadow:none}.layout-full .video-space{inset:18%}.layout-scattered .photo{position:absolute;width:21%;height:30%;padding:4px 4px 19px;border:0;background:#fff}.layout-scattered .video-space{inset:22%}.designer-caption{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:15px;font-size:.85rem}.frame-preview:fullscreen{width:100vw;height:100vh;aspect-ratio:auto;border-radius:0}.designer-shell .cal-note{font-size:.77rem;line-height:1.6}@media(max-width:900px){.designer-layout{grid-template-columns:1fr}.frame-choices{grid-template-columns:repeat(3,minmax(0,1fr))}.designer-heading{align-items:flex-start}.designer-heading>.cal-button{margin-top:15px}.video-space{border-radius:4px}.preview-badge,.preview-controls{padding:4px}}@media(max-width:500px){.designer-shell{padding:20px 12px}.frame-choices .cal-button{font-size:.73rem;padding:10px 4px}.designer-heading{display:block}.designer-heading>.cal-button{margin:0 0 20px}.layout-mosaic .frame-decoration{gap:3px;padding:3px}.layout-scattered .photo{padding:2px 2px 8px}.preview-controls{gap:6px}}

.image-library{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px;margin-bottom:16px}.library-image{padding:10px;background:#fff;border:1px solid #dce4df;border-radius:8px;min-width:0}.library-image img{width:100%;height:90px;object-fit:cover}.library-image label{display:flex;align-items:center;gap:7px;font-size:.72rem;overflow-wrap:anywhere;margin:8px 0}.library-image label input{width:16px;height:16px;flex:0 0 16px}.library-image button{font-size:.7rem;padding:5px 10px}#save-design,#reload-design{width:100%;margin-top:10px}#designer-login{margin-bottom:18px}#access-state{font-size:.8rem;line-height:1.5;color:#425e69}
