/* Scoped ornament controls; existing writing tools and text layouts are untouched. */
.ys-ornament-modal.open{display:flex;z-index:12000;align-items:center;justify-content:center;padding:16px}
.ys-ornament-card{width:min(720px,100%);max-height:90dvh;overflow:auto;text-align:left}
.ys-ornament-head{display:flex;justify-content:space-between;align-items:center;gap:12px}
.ys-ornament-head h3{margin:0}.ys-ornament-head button{font-size:24px}
.ys-ornament-card button{cursor:pointer}.ys-ornament-card label{display:block;font-weight:600;margin:12px 0 6px}
.ys-ornament-card select,.ys-ornament-card input[type=range]{width:100%}
.ys-ornament-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.ys-ornament-card select{padding:8px;border:1px solid #d8d3ca;border-radius:6px;background:white}
.ys-ornament-card small{display:block;font:12px/1.5 Arial;color:#68737d}
.ys-ornament-upload input{display:block;margin:8px 0;font-weight:400;max-width:100%}
.ys-ornament-library{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px;max-height:200px;overflow:auto;margin:16px 0}
.ys-ornament-library>p{grid-column:1/-1;color:#68737d}
.ys-ornament-choice{border:1px solid #d8d3ca;border-radius:8px;background:#fff;padding:8px;min-width:0}
.ys-ornament-choice[aria-pressed=true]{border:2px solid #b78425;background:#faf5eb}
.ys-ornament-choice img{display:block;max-width:100%;width:100%;height:44px;object-fit:contain;margin:0 auto 6px}
.ys-ornament-choice span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}
.ys-ornament-preview{min-height:90px;display:flex;justify-content:center;align-items:center;border:1px solid #e6e0d5;border-radius:8px;background:#fff;padding:12px}
.ys-ornament-preview img{height:auto;max-height:180px;object-fit:contain}
.ys-ornament-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:8px;margin-top:14px;position:sticky;bottom:0;background:#fff;padding:10px 0 2px;z-index:1}
.ys-ornament-actions button{border:1px solid #d8d3ca;border-radius:7px;padding:8px 12px;background:#fff}
.ys-ornament-actions button.primary-btn{background:#284e53;color:white}
#ornamentStatus{min-height:1.5em;color:#76581d;font-size:14px}
.ys-ornament-card [hidden]{display:none!important}
#manuscriptEditor ys-ornament{cursor:pointer}
#manuscriptEditor ys-ornament:focus-within{outline:2px solid #b78425;outline-offset:4px}
@media(max-width:600px){.ys-ornament-fields{grid-template-columns:1fr;gap:0}.ys-ornament-card{padding:16px}.ys-ornament-actions button{flex:1 1 auto}}
@media(max-width:700px){
 .ys-ornament-modal.open{align-items:flex-start;padding:calc(8px + env(safe-area-inset-top,0px)) 8px calc(8px + env(safe-area-inset-bottom,0px))}
 .ys-ornament-modal .ys-ornament-card{box-sizing:border-box;min-width:0;max-height:calc(100dvh - 16px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));overscroll-behavior:contain}
 .ys-ornament-modal .ys-ornament-head{position:sticky;top:-16px;background:#fff;z-index:2;padding:6px 0}
 .ys-ornament-modal button,.ys-ornament-modal select{min-height:44px}
 .ys-ornament-modal select,.ys-ornament-modal input[type=file]{font-size:16px}
}
