:root { --bg: #0b0d10; --panel: #121418; --muted: #a3a7ad; --text: #e8eaed; --brand: #e2b36a; --brand2: #b07b3b; --card: #161920; --border: #262a33; } 
#stratto-edicao-root * { box-sizing: border-box; } 
#stratto-edicao-root { margin: 16px 0; background: var(--bg); border: 1px solid var(--border); border-radius: 16px; overflow: hidden; } 

/* Hero */ 
.se-hero { display: flex; justify-content: space-between; align-items: center; gap: 16px; padding: 18px; background: linear-gradient(90deg, rgba(226, 179, 106, .08), rgba(0, 0, 0, 0)); border-bottom: 1px solid var(--border); } 
.se-hero-left { display: flex; align-items: center; gap: 12px; } 
.se-logo-badge { width: 42px; height: 42px; border-radius: 50%; display: grid; place-items: center; background: #12100b; border: 1px solid #3a3123; box-shadow: 0 2px 10px rgba(0, 0, 0, .35); } 
.se-logo { width: 36px; height: auto; display: block; } 
.se-brand { font-weight: 800; letter-spacing: .08em; background: linear-gradient(90deg, var(--brand), var(--brand2)); -webkit-background-clip: text; background-clip: text; color: transparent; font-size: 20px; } 
.se-sub { color: var(--muted); font-size: 12px; } 
.se-hero-right { display: flex; gap: 8px; } 

/* Grid */ 
.se-grid { display: grid; grid-template-columns: 1.05fr 1.25fr; gap: 24px; padding: 22px; background: #0a0b0d; } 
.se-card { background: var(--card); border: 1px solid var(--border); border-radius: 16px; padding: 18px; } 

/* Inputs */ 
.se-label { display: block; color: var(--muted); font-size: 12px; margin: 6px 0; } 
.se-row { display: flex; gap: 14px; align-items: flex-end; flex-wrap: wrap; } 
.se-row-tight { margin-top: 10px; } 
.wflex { flex: 1; min-width: 260px; } 
.se-input, .se-textarea, .se-select { width: 100%; padding: 13px 14px; border-radius: 12px; border: 1px solid var(--border); background: var(--panel); color: var(--text); font-size: 14px; } 
.se-input-file { padding: 20px 16px; height: 52px; line-height: 1.3; margin-bottom: 14px; } 
.se-textarea { min-height: 120px; resize: vertical; } 

/* product prompt readonly styling */
.se-product-prompt[readonly] { opacity: 0.95; background: rgba(0,0,0,0.04); color: var(--text); border-radius: 10px; }

/* thumbnail */
.se-thumb-wrap { margin-bottom: 14px; display:flex; flex-direction:column; gap:8px; }
.se-thumb { max-width: 220px; width: 100%; border-radius: 10px; border: 1px solid var(--border); object-fit: cover; }

/* chips */ 
.se-picked { margin: 10px 0 0; color: var(--muted); font-size: 12px; } 
.se-picked a { color: var(--text); text-decoration: underline; } 

/* Botões */ 
.se-button { background: linear-gradient(90deg, var(--brand2), var(--brand)); color: #1a1a1a; border: 0; border-radius: 12px; padding: 12px 18px; cursor: pointer; font-weight: 800; box-shadow: 0 6px 20px rgba(226, 179, 106, .15); } 
.se-button.se-ghost { background: transparent; color: var(--text); border: 1px solid var(--border); } 
.se-button[disabled] { opacity: .6; cursor: not-allowed; } 

/* Progresso */ 
.se-progress { display: inline-flex; align-items: center; gap: 10px; } 
.se-progress-circle { width: 16px; height: 16px; border-radius: 50%; border: 2px solid #3a3a3a; border-top-color: #1a1a1a; } 
.se-progress-circle.spin { animation: spin .9s linear infinite; } 
@keyframes spin { to { transform: rotate(360deg); } } 

/* Status & actions */ 
.se-actions { display: flex; gap: 14px; align-items: center; justify-content: space-between; margin-top: 14px; } 
.se-status { font-size: 12px; color: var(--muted); } 

/* Result */ 
.se-result img { max-width: 100%; border-radius: 12px; border: 1px solid var(--border); } 
.se-hint { color: var(--muted); font-size: 12px; } 
.se-meta { display: flex; justify-content: space-between; align-items: center; margin-top: 10px; } 

/* Overlay */ 
.se-overlay { position: fixed; inset: 0; background: rgba(0, 0, 0, .55); display: none; z-index: 9998; } 
.se-overlay.show { display: flex; align-items: center; justify-content: center; } 
.se-spinner { width: 60px; height: 60px; border-radius: 50%; border: 6px solid #333; border-top-color: var(--brand); animation: spin 1s linear infinite; } 

/* Before/After */ 
.se-compare { position: relative; max-width: 100%; overflow: hidden; border-radius: 12px; border: 1px solid var(--border); background: #0b0c0d; } 
.se-compare img { display: block; width: 100%; height: auto; } 
.se-after { position: absolute; left: 0; top: 0; height: 100%; width: 50%; overflow: hidden; } 
.se-handle { position: absolute; top: 0; bottom: 0; width: 2px; background: var(--brand); left: 50%; } 
.se-range { width: 100%; margin-top: 12px; } 

/* ===== Modal (picker) ===== */ 
.se-modal { position: fixed; inset: 0; display: none; z-index: 9999; background: rgba(0, 0, 0, .55); } 
.se-modal.show { display: flex; align-items: center; justify-content: center; } 
.se-modal-dialog { width: min(980px, 92vw); background: var(--card); border: 1px solid var(--border); border-radius: 16px; box-shadow: 0 20px 80px rgba(0, 0, 0, .4); padding: 12px; max-height: 80vh!important; overflow-y: auto; } 
.se-modal-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 8px; } 
.se-modal-title { font-weight: 800; } 
.se-modal-close { background: transparent; border: 0; color: var(--text); font-size: 24px; cursor: pointer; } 
.se-modal-tools { display: flex; gap: 10px; margin: 8px 0; } 
.se-grid-cards { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; min-height: 160px; } 
.se-card-prod { max-width: 300px; width: 100%; margin: 0 auto; } 
.se-card-prod img { width: 100%; height: 100px; object-fit: cover; border-radius: 8px; border: 1px solid var(--border); background: #0c0e12; } 
.se-card-body { display: flex; flex-direction: column; gap: 4px; } 
.se-card-title { font-weight: 700; font-size: 14px; } 
.se-card-specs { font-size: 12px; color: var(--muted); } 
.se-modal-foot { display: flex; align-items: center; justify-content: center; gap: 12px; margin-top: 12px; } 
.se-page { color: var(--muted); font-size: 12px; } 

@media (max-width: 1100px) { .se-grid { grid-template-columns: 1fr; } .se-hero { flex-direction: column; align-items: flex-start; } .se-grid-cards { grid-template-columns: repeat(2, 1fr); } } 
@media (max-width: 520px) { .se-grid-cards { grid-template-columns: 1fr; } .se-thumb { max-width: 100%; } }
