.welcome-editor-link { margin-top:15px; padding:10px 0; color:#cfb1e8; font-size:11px; }
.violet-welcome .welcome-meta { margin-top:22px; }
/* Criação: a fotografia tem seu próprio espaço, sem atravessar o texto. */
.violet-creation .creation-layout { grid-template-columns:minmax(260px,.85fr) minmax(0,1.35fr); gap:62px; }
.violet-creation .creation-intro { position:static; padding-top:9px; }
.violet-creation .creation-intro h1 { font-size:clamp(43px,4.2vw,59px); }
.creation-driver-art { position:relative; isolation:isolate; width:100%; height:430px; margin:30px 0 0; overflow:hidden; border:1px solid #83529b66; border-radius:9px; background:#11090e; }
.creation-driver-art > img { display:block; width:100%; height:100%; object-fit:cover; object-position:center 78%; }
.creation-driver-art::after { content:''; position:absolute; inset:0; background:linear-gradient(0deg,#0d0613f5,transparent 38%); pointer-events:none; }
.creation-driver-art figcaption { position:absolute; z-index:1; bottom:24px; left:23px; right:20px; display:grid; gap:8px; }
.creation-driver-art figcaption span { font:8px var(--mono); color:#e3c9ff; letter-spacing:.13em; }
.creation-driver-art figcaption b { font-size:16px; color:#fff; }
.creation-brief { margin-top:25px; }
.identity-defaults { margin:0 0 24px; padding:12px 14px; font-size:10px; line-height:1.8; color:#bda9ce; background:#a970ff0a; border-left:2px solid #8051a2; }
.identity-defaults b { color:#e2c4ff; font-weight:600; }
.simple-header > img,.brand-button img,.welcome-top > img { background:transparent; }
.grid-editor { --editor-line:#a178bf33; }
.grid-editor .page-head { margin-bottom:23px; flex-wrap:wrap; gap:20px; }
.editor-toolbar { display:flex; justify-content:space-between; align-items:center; gap:20px; border-block:1px solid var(--editor-line); padding:17px 0; margin-bottom:18px; }
.editor-toolbar > label { display:flex; align-items:center; gap:15px; font-size:11px; color:#b8a1c9; }
.editor-toolbar select { max-width:350px; min-width:210px; }
.editor-status { font-size:10px; color:#b198c3; }
.editor-status.unsaved { color:#d8b3ff; }
.editor-tabs { margin-bottom:0; }
.editor-tabs button { display:flex; align-items:center; gap:12px; }
.editor-tabs small { padding:2px 6px; background:#ad7cd925; border-radius:3px; font:10px var(--mono); }
.editor-fieldset { border:0; min-width:0; padding:0; margin:0; }
.editor-fieldset:disabled { opacity:.65; }
.editor-notice { padding:15px 18px; border:1px solid #9c70bf66; border-radius:5px; background:#a270d211; color:#d3b5e9; font-size:12px; line-height:1.8; }
.editor-explanation { max-width:760px; color:#b9a6c8; font-size:12px; line-height:1.8; margin:22px 0 28px; }
.editor-driver-groups { display:grid; gap:30px; }
.editor-team-group > header { display:flex; align-items:center; gap:12px; margin-bottom:12px; }
.editor-team-group > header h2 { font-size:19px; margin:0; }
.editor-team-group > header::after { content:''; flex:1; height:1px; background:linear-gradient(90deg,var(--team,#a970ff),transparent); margin-left:10px; opacity:.4; }
.editor-driver-pair { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.editor-driver { padding:20px; border:1px solid var(--editor-line); border-top:2px solid var(--team,#9c69cd); background:linear-gradient(120deg,#21152c,#110e18 75%); border-radius:7px; min-width:0; }
.editor-driver-top { display:flex; align-items:center; gap:16px; min-height:83px; }
.editor-driver-top > div:last-child { min-width:0; }
.editor-driver-top .portrait { width:68px; height:83px; border-radius:4px; background:#0e0c14; }
.editor-driver-top h3 { font-size:18px; margin:5px 0 7px; overflow-wrap:anywhere; }
.editor-driver-no { color:#c49ce9; font:9px var(--mono); letter-spacing:.08em; }
.rating-control { display:flex; align-items:center; gap:19px; margin-top:23px; }
.rating-control input[type=range] { flex:1; min-width:0; height:27px; padding:0; border:0; box-shadow:none; accent-color:#bb86f4; background:transparent; cursor:pointer; }
.rating-control > label { flex:none; display:flex; align-items:center; gap:9px; }
.rating-control > label > span { font:9px var(--mono); color:#b79acb; }
.rating-control input[type=number] { width:67px; min-height:43px; padding:9px 5px 9px 10px; text-align:center; font:700 20px var(--title); color:#ead8ff; border-color:#9f71c355; background:#09070e; }
.rating-control input:invalid { border-color:#df7777; }
.editor-photo-actions { display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin-top:17px; border-top:1px solid #a379bc22; padding-top:15px; }
.photo-picker { position:relative; display:inline-flex; align-items:center; justify-content:center; gap:7px; padding:9px 11px; border:1px solid #9265b575; border-radius:4px; color:#dcc2f5; font-size:10px; font-weight:600; cursor:pointer; overflow:hidden; }
.photo-picker:hover { background:#a76ed91c; }
.photo-picker:focus-within { outline:2px solid #cf9dff; outline-offset:3px; }
.photo-picker input { position:absolute; inset:0; opacity:0; width:100%; height:100%; padding:0; cursor:pointer; }
.editor-photo-actions .btn { font-size:9px; padding:8px 0; min-height:34px; }
.editor-cars { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.editor-car { border:1px solid var(--editor-line); border-top:2px solid var(--team); padding:22px; background:linear-gradient(125deg,#21152c,#110e18); border-radius:7px; min-width:0; }
.editor-car-head { display:flex; gap:17px; align-items:center; }
.editor-car-head h2 { font-size:25px; margin:5px 0; }
.editor-car-head .eyebrow { font-size:8px; margin:0; color:#bca4cc; }
.editor-save-bar { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-top:32px; border-top:1px solid var(--editor-line); padding:25px 0 5px; }
.editor-save-bar p { display:grid; gap:7px; font-size:13px; margin:0; }
.editor-save-bar p span { font-size:10px; color:#ad97be; }
.editor-save-bar > div { display:flex; align-items:center; gap:12px; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
@media(max-width:1100px) {
 .violet-creation .creation-layout { gap:35px; grid-template-columns:minmax(235px,.8fr) minmax(0,1.4fr); }
 .creation-driver-art { height:385px; }
 .editor-driver { padding:16px; }
 .editor-driver-top { gap:12px; }
 .editor-driver-top h3 { font-size:16px; }
 .editor-driver-top .portrait { width:58px; height:75px; }
}
@media(max-width:880px) {
 .violet-creation .creation-layout { grid-template-columns:1fr; gap:30px; }
 .creation-driver-art { height:310px; margin-top:24px; }
 .creation-driver-art > img { object-position:center 69%; }
 .editor-toolbar { align-items:flex-start; flex-direction:column; gap:13px; }
 .editor-driver-pair,.editor-cars { grid-template-columns:1fr; }
 .editor-save-bar { align-items:flex-start; flex-direction:column; }
}
@media(max-width:560px) {
 .creation-driver-art { height:330px; }
 .creation-driver-art > img { object-position:center 77%; }
 .creation-driver-art figcaption { bottom:21px; left:20px; }
 .identity-defaults { font-size:9px; padding:11px; }
 .editor-toolbar > label { width:100%; flex-direction:column; align-items:flex-start; gap:9px; }
 .editor-toolbar select { width:100%; max-width:100%; }
 .grid-editor .page-head h1 { font-size:35px; }
 .grid-editor .head-actions .btn { min-height:41px; }
 .editor-save-bar > div { width:100%; justify-content:space-between; flex-wrap:wrap; }
 .editor-driver-top .portrait { width:65px; height:80px; }
 .editor-driver-top h3 { font-size:18px; }
 .editor-car { padding:18px; }
}
.editor-name-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:20px}.editor-name-fields label{font-size:10px;color:#bfa9cd}.editor-name-fields input{display:block;width:100%;margin-top:7px;font-size:13px;padding:11px}.editor-car-head .team-mark.large{width:120px;height:74px}.editor-car-head .team-mark img{object-fit:contain;max-height:100%}@media(max-width:560px){.editor-name-fields{grid-template-columns:1fr}.editor-car-head .team-mark.large{width:90px}}
