.oc-library,.oc-crop{border:1px solid #dedbd4;border-radius:12px;padding:20px;margin:20px 0;background:#faf8f3;color:#24241f}.oc-library h3,.oc-crop h3{margin:0 0 8px}.oc-library p,.oc-crop p{font-size:13px;line-height:1.5}.oc-toolbar,.oc-templates,.oc-downloads{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}.oc-button{display:inline-block;background:#fff;color:#24241f;border:1px solid #d2cec5;border-radius:7px;padding:10px 14px;font:inherit;font-size:13px;cursor:pointer;text-decoration:none}.oc-button.selected{border-color:#b34a30;background:#f8e5da}.oc-button:disabled{opacity:.5;cursor:wait}.oc-button:focus-visible,.oc-photo:focus-visible{outline:3px solid #b34a30;outline-offset:3px}.oc-photos{display:grid;grid-template-columns:repeat(auto-fill,minmax(115px,1fr));gap:12px}.oc-photo{border:2px solid transparent;border-radius:8px;padding:4px;background:#fff;text-align:left;cursor:pointer;color:#222;min-width:0}.oc-photo.selected{border-color:#b34a30}.oc-photo img{width:100%;height:120px;object-fit:cover;border-radius:5px}.oc-photo span{display:block;font-size:11px;padding:7px 3px;overflow-wrap:anywhere}.oc-field{display:flex;flex-direction:column;gap:7px;margin:12px 0;font-size:12px;color:#4a4a40}.oc-field input,.oc-field textarea,.oc-field select,.oc-crop select{width:100%;box-sizing:border-box;border:1px solid #d2cec5;border-radius:6px;padding:11px;background:#fff;color:#222;font:inherit;font-size:15px}.oc-field textarea{min-height:110px;resize:vertical}.oc-form{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.oc-field:has(textarea){grid-column:1/-1}.oc-crop canvas{width:100%;max-width:640px;display:block;margin:15px auto;touch-action:none;border-radius:8px}.oc-crop>img{max-width:220px;max-height:250px;display:block;background:repeating-conic-gradient(#eee 0% 25%,#fff 0% 50%) 50%/16px 16px;margin:15px auto}.oc-crop>img[hidden]{display:none}.oc-coords{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.oc-previews{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:20px 0}.oc-previews img{width:100%;border-radius:3px;box-shadow:0 4px 18px #0002}.oc-empty{grid-column:1/-1;color:#666;font-size:13px}.oc-spread{grid-column:1/-1;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;margin:6px 0}.oc-triptych{grid-column:1/-1}.oc-triptych img{width:100%}.oc-face{margin:0;background:#fffdf7;border:1px solid #dedbd4;border-radius:8px;padding:10px}.oc-face figcaption{font-size:11px;color:#57574f;margin-bottom:8px}.oc-face img{width:100%;border-radius:3px;box-shadow:0 4px 18px #0002}.oc-spread.oc-flipped{perspective:1200px}.oc-spread.oc-flipped .oc-face:not([hidden]){animation:ocflip .5s ease}.oc-spread.oc-flipped{grid-template-columns:1fr 1fr}@keyframes ocflip{from{transform:rotateY(90deg)}to{transform:rotateY(0)}}.oc-status{font-size:13px;color:#57574f;line-height:1.6;overflow-wrap:anywhere}.oc-price{font-size:15px;color:#222}.oc-upload{font-size:12px;padding:8px 0}.oc-upload button{margin-left:10px}#panel-cards video{width:100%;max-height:650px;background:#eee;margin-top:18px;border-radius:8px}[hidden]{display:none!important}@media(max-width:600px){.oc-form{grid-template-columns:1fr}.oc-coords{grid-template-columns:1fr 1fr}.oc-library,.oc-crop{padding:14px}.oc-photos{grid-template-columns:repeat(3,minmax(0,1fr))}.oc-photo img{height:100px}.oc-previews{gap:10px}.oc-toolbar .oc-button{flex:1 1 auto}}

@media(max-width:640px){body.studio-chrome #panel-cards{left:68px;padding:20px 12px 70px}body.studio-chrome #panel-cards .panel__inner{padding:104px 0 0;max-width:100%}}

.oc-scene-library{margin:22px 0;padding:20px;border:1px solid #dedbd4;border-radius:12px;color:#24241f;background:#faf8f3}.oc-scene-library>p,.oc-scene p{font-size:13px;line-height:1.5;margin:8px 0}.oc-scenes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:16px 0}.oc-scene{min-width:0;padding:16px;background:#fff;border:1px solid #e5e1d9;border-radius:10px;scroll-margin-top:130px}.oc-scene h4{overflow-wrap:anywhere}.oc-scene>img{width:100%;max-height:280px;object-fit:contain;background:#eee}.oc-scene video{width:100%;max-height:420px;background:#eee}@media(max-width:640px){.oc-scenes{grid-template-columns:1fr}.oc-scene-library{padding:14px}body.studio-chrome #panel-videos{left:68px;padding:20px 12px 70px}body.studio-chrome #panel-videos .panel__inner{padding:104px 0 0;max-width:100%}}

/* ready-made gallery: finished cards first, forms later */
.oc-gallery__head h3{font-size:19px;margin:2px 0 2px}
.oc-gallery__head p{font-size:13px;color:#666;margin:0 0 10px;max-width:44em}
.oc-gallery__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;margin:6px 0 26px}
.oc-card{background:#fff;border:1px solid #ece5d8;border-radius:18px;overflow:hidden;
  box-shadow:0 1px 0 rgba(90,60,20,.05),0 18px 40px -28px rgba(90,60,20,.35)}
.oc-card__frame{position:relative;background:#f4f1ea;aspect-ratio:3/4}
.oc-card__frame img{width:100%;height:100%;object-fit:cover;display:block}
.oc-card__status{position:absolute;left:10px;bottom:8px;font-size:11px;color:#8a6a2f;
  background:rgba(255,255,255,.9);border-radius:8px;padding:2px 8px}
.oc-card__body{padding:10px 12px 12px}
.oc-card__headline{font-weight:700;font-size:15px;color:#141414}
.oc-card__to{font-size:12px;color:#8a6a2f;margin-top:2px}
.oc-card__meta{font-size:12px;color:#666;margin-top:4px}
.oc-card__msg{font-size:12px;color:#2f7a52;margin-top:6px;min-height:1.2em}

/* Funnier duel + Art shelf (no build step; keep with card styles) */
.oc-duel{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:12px 0}
@media (max-width:700px){.oc-duel{grid-template-columns:1fr}}
.oc-duel__card{background:#fff;border:1px solid #eee4d3;border-radius:14px;padding:14px}
.oc-duel__title{font-size:17px;margin:0 0 10px}
.oc-duel__panel{background:#faf8f4;border-radius:10px;padding:10px;margin-bottom:8px}
.oc-duel__beat{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#8a6a2f;font-weight:700}
.oc-duel__scene{font-size:13px;color:#141414;margin:4px 0}
.oc-duel__line{font-size:13px;color:#444;margin:2px 0 2px 12px;font-style:italic}
.oc-duel__caption{font-size:14px;font-weight:600;margin:10px 0}
.oc-art-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;margin:6px 0 26px}
.oc-art-tile{background:#fff;border:1px solid #eee4d3;border-radius:14px;padding:14px}
.oc-art-title{font-size:17px;margin:0 0 8px}
.oc-art-premise{font-size:13px;color:#444}
.oc-art-caption{font-size:13px;font-weight:600}
.oc-art-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;background:#fff;border:1px solid #eee4d3;border-radius:12px;padding:10px 14px;margin-bottom:8px}
.oc-art-format{font-weight:700}
