:root,html[data-theme="light"]{--primary:#354658;--secondary:#263544;--accent:#ffb47d;--header-bg:#1a2330;--header-color:#f4f6fa;--header-link-color:#f4f6fa}
html[data-theme="dark"]{--primary:#354658;--secondary:#263544;--accent:#ffb47d;--header-bg:#1a2330;--header-color:#f4f6fa;--header-link-color:#f4f6fa}
#header{gap:16px;flex-wrap:wrap}#site-name .ab-brand{display:flex;align-items:center;gap:12px;color:#f4f6fa;font-weight:500} .ab-brand img{object-fit:contain;border-radius:12px}.ab-brand small{display:block;font-size:12px;letter-spacing:2px;color:#ffb47d}
#header .ab-download-nav{padding:10px 16px;border:1px solid #8193a7;border-radius:8px;color:#fff}
.ab-downloads{max-width:920px}.ab-release{display:flex;flex-wrap:wrap;align-items:center;gap:24px;padding:24px;background:var(--darkened-bg);border:1px solid var(--hairline-color);border-radius:14px;margin-bottom:24px}.ab-release-logo{border-radius:20px}.ab-release h2{margin:0 0 10px}
.ab-download-button{display:inline-block;background:#b74711!important;color:white!important;padding:13px 22px;border:0;border-radius:8px;font:inherit;cursor:pointer;text-decoration:none;margin:8px 0}
.ab-release-details>div,.ab-publish form{padding:20px}.ab-release-details code{display:block;overflow-wrap:anywhere;padding-top:12px}
.ab-publish input:not([type=hidden]),.ab-publish textarea{box-sizing:border-box;max-width:100%;width:100%}.ab-publish label{display:block;margin-bottom:8px}.ab-publish .helptext{display:block;margin-top:8px;color:var(--body-quiet-color)}
.login #header{justify-content:center}.login #branding{float:none}.login .ab-brand{justify-content:center}
@media(max-width:600px){.ab-release{padding:16px;gap:16px}.ab-release-logo{width:72px;height:72px}.ab-download-nav{width:100%;text-align:center}}

/* ABservices painel cores v1 — apresentação apenas */
:root,html[data-theme="light"] {
 --ab-surface:#ffffff;--ab-soft:#eef3fb;--ab-border:#c9d5e5;--ab-text:#172a43;--ab-muted:#536681;
 --ab-blue:#1e58aa;--ab-purple:#7440aa;--ab-gold:#8a5400;
 --body-bg:#f3f6fc;--body-fg:#172a43;--body-quiet-color:#536681;--body-loud-color:#10243f;
 --darkened-bg:#edf2f9;--hairline-color:#d2dceb;--border-color:#becbe0;
 --link-fg:#18569c;--link-hover-color:#7a39a5;--link-selected-fg:#17497b;
 --selected-bg:#e4edfa;--selected-row:#e2edff;--close-button-bg:#536681;
 --primary:#245ba0;--secondary:#173c70;--accent:#ffc76c;
}
html[data-theme="dark"] {
 --ab-surface:#172235;--ab-soft:#1c2b42;--ab-border:#344761;--ab-text:#edf3ff;--ab-muted:#b1c2db;
 --ab-blue:#8bc5ff;--ab-purple:#d0afff;--ab-gold:#ffd47e;
 --body-bg:#0d1523;--body-fg:#edf3ff;--body-quiet-color:#b1c2db;--body-loud-color:#fff;
 --darkened-bg:#172235;--hairline-color:#344761;--border-color:#435876;
 --link-fg:#8bc5ff;--link-hover-color:#ffd47e;--link-selected-fg:#c7e4ff;
 --selected-bg:#263953;--selected-row:#223c59;--close-button-bg:#465d7b;
 --primary:#275b98;--secondary:#234979;--accent:#ffd47e;
}
@media(prefers-color-scheme:dark){html[data-theme="auto"] {
 --ab-surface:#172235;--ab-soft:#1c2b42;--ab-border:#344761;--ab-text:#edf3ff;--ab-muted:#b1c2db;
 --ab-blue:#8bc5ff;--ab-purple:#d0afff;--ab-gold:#ffd47e;
 --body-bg:#0d1523;--body-fg:#edf3ff;--body-quiet-color:#b1c2db;--body-loud-color:#fff;
 --darkened-bg:#172235;--hairline-color:#344761;--border-color:#435876;
 --link-fg:#8bc5ff;--link-hover-color:#ffd47e;--link-selected-fg:#c7e4ff;
 --selected-bg:#263953;--selected-row:#223c59;--primary:#275b98;--secondary:#234979;
}}
body{background:var(--body-bg);color:var(--body-fg)}
#header{background:linear-gradient(115deg,#12223c,#253c66 65%,#51305a);border-bottom:3px solid #f0a64e;box-shadow:0 4px 20px #0002}
#site-name .ab-brand{color:#ffd18f;font-weight:700}.ab-brand small{color:#dde8fa}
#header .ab-download-nav{background:#24599d;border:1px solid #79a7dd;box-shadow:0 3px 8px #0002;font-weight:600}
#header .ab-download-nav:last-child{background:#613e86;border-color:#ad89d2}
div.breadcrumbs{background:#223c61;color:#d7e7ff;padding-top:13px;padding-bottom:13px;border-bottom:1px solid #466086}
div.breadcrumbs a{color:#fff}
#content h1{color:var(--body-loud-color);font-weight:600;border-left:4px solid #f0a64e;padding-left:14px;line-height:1.45}
.module{background:var(--ab-surface);border-radius:10px;border:1px solid var(--ab-border);margin-bottom:22px}
.module h2,.module caption,.inline-group h2{background:linear-gradient(100deg,#244d82,#356da9);color:#fff;font-weight:650;padding:12px 14px;border-radius:9px 9px 0 0}
.module caption a,.module h2 a{color:#fff!important}
.module table{width:100%}.module tbody th,.module tbody td{padding:12px 10px}
.module tr:nth-child(even){background:var(--ab-soft)}
.module tbody tr:hover{background:var(--selected-row)}
.module a.section{font-size:13px;letter-spacing:.6px}
.module.app-auth caption{background:linear-gradient(100deg,#59368a,#8055af)}
.module.app-gestao caption{background:linear-gradient(100deg,#174e72,#217b92)}
#nav-sidebar{background:var(--body-bg);border-right:1px solid var(--ab-border);padding:12px 10px;box-sizing:border-box}
#nav-sidebar .module{border-radius:10px;margin:0 0 16px}
#nav-sidebar th,#nav-sidebar td{padding:10px 8px}
#nav-sidebar .current-model{background:var(--selected-row);box-shadow:inset 4px 0 #f0a64e}
#nav-sidebar .current-model a{font-weight:700;color:var(--body-loud-color)}
#nav-filter{background:var(--ab-surface);border:1px solid var(--ab-border);border-radius:8px;padding:10px;box-sizing:border-box;width:100%;color:var(--ab-text)}
#toggle-nav-sidebar{background:var(--ab-soft);color:var(--ab-blue);border-color:var(--ab-border)}
a.addlink{color:#13804d;font-weight:600}html[data-theme="dark"] a.addlink{color:#87e1b5}
a.changelink,a.viewlink{color:var(--ab-blue);font-weight:600}
.button,input[type=submit],input[type=button],.submit-row input,a.button{background:#24599d;color:#fff;border:1px solid #437abc;border-radius:8px;padding:10px 16px;font-weight:600;cursor:pointer;box-shadow:0 2px 5px #0001}
.button.default,input[type=submit].default,.submit-row input[name^="_save"],.submit-row input[name="_continue"],.submit-row input[name="_addanother"]{background:#19643f;color:#fff;border-color:#358458}
.object-tools a:link,.object-tools a:visited{background:#24599d;color:#fff;border-radius:8px;padding:10px 16px}
.object-tools a.addlink{background-color:#19643f}
.delete-confirmation form input[type=submit],.submit-row a.deletelink,a.deletelink{background:#9c303f;color:#fff;border:1px solid #ba5361;border-radius:8px;padding:10px 14px}
a.inline-deletelink{background:transparent;padding:0}
.button:hover,input[type=submit]:hover,.object-tools a:hover,.ab-download-button:hover{filter:brightness(1.12)}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #e7a43d;outline-offset:3px}
input:not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button]):not([type=hidden]),textarea,select{background:var(--ab-surface);color:var(--ab-text);border:1px solid var(--ab-border);border-radius:7px;padding:9px 10px;box-sizing:border-box;max-width:100%}
input[type=checkbox],input[type=radio]{accent-color:#23855d;width:16px;height:16px}
.aligned label{color:var(--ab-text);font-weight:600}.aligned .form-row{padding:15px 14px;border-color:var(--ab-border)}
.aligned .form-row:focus-within{background:var(--ab-soft);box-shadow:inset 3px 0 #5c9be8}
.help,.helptext,p.help{color:var(--ab-muted);line-height:1.6}
.submit-row{background:var(--ab-soft);border:1px solid var(--ab-border);border-radius:10px;padding:16px}
#changelist #toolbar,#changelist .actions,#changelist .paginator{background:var(--ab-soft);color:var(--ab-text);border-color:var(--ab-border);padding:14px}
#changelist #toolbar form input[type=submit],#changelist .actions .button{background:#24599d;color:#fff;border-color:#437abc;padding:8px 14px;border-radius:7px}
#changelist table thead th{background:#244b76;color:#fff;padding:12px 10px}
#changelist table thead th a{color:#fff}#changelist table thead th.sorted{background:#326593}
#changelist .results th,#changelist .results td{vertical-align:middle;padding:13px 10px}
#changelist-filter{background:var(--ab-surface);border-left:1px solid var(--ab-border)}
#changelist-filter h2{background:#61438b;color:#fff;padding:14px}
#changelist-filter h3{color:var(--ab-purple);font-weight:650}
#changelist-filter li.selected{border-left:3px solid #f0a64e;background:var(--selected-row)}
ul.messagelist li.success{background-color:#174f38;color:#d2f9e4;border-left:4px solid #63d99d}
ul.messagelist li.warning{background-color:#634711;color:#fff0cc;border-left:4px solid #f2bd54}
ul.messagelist li.error,.errornote{background-color:#652b39;color:#ffe6eb;border:1px solid #bd6375}
ul.errorlist{color:#df4058;font-weight:600}
#content .ab-share-tv,#content .ab-downloader{background:var(--ab-surface);border:1px solid var(--ab-border);box-shadow:0 5px 18px #0001;border-top:4px solid #558fde}
#content .ab-downloader{border-top-color:#f0a64e}
#content .ab-code{background:var(--ab-soft);border:1px solid var(--ab-border);border-left:4px solid #5798e5}
#content .ab-code:nth-of-type(3){border-left-color:#ab7de3}
#content .ab-code:nth-of-type(4){border-left-color:#e6ae4f}
#content .ab-code strong{color:var(--ab-gold)}
.ab-release{background:var(--ab-surface);box-shadow:0 5px 18px #0001;border-color:var(--ab-border);border-left:5px solid #5899e7}
.ab-release:nth-of-type(2){border-left-color:#e6ae4f}.ab-release:nth-of-type(3){border-left-color:#a97be1}
.ab-release h2{color:var(--ab-blue)}.ab-release:nth-of-type(2) h2{color:var(--ab-gold)}.ab-release:nth-of-type(3) h2{color:var(--ab-purple)}
.ab-download-button{background:#24599d!important;box-shadow:0 3px 9px #0002;font-weight:600}
.ab-release:nth-of-type(2) .ab-download-button{background:#855213!important}.ab-release:nth-of-type(3) .ab-download-button{background:#6b4298!important}
.ab-publish .ab-download-button{background:#19643f!important}
#content-related{background:var(--ab-surface);border-radius:10px;border:1px solid var(--ab-border)}
#content-related .module{border:0}#content-related h3{color:var(--ab-gold)}
.login #container{border:1px solid var(--ab-border);border-radius:14px;box-shadow:0 15px 45px #0003}
.login .submit-row{border:0;background:transparent}
@media(max-width:767px){#header{padding:16px}#content{padding:20px 14px}.module tbody th,.module tbody td{padding:10px 7px}.submit-row input{margin-bottom:8px}#content h1{font-size:22px}}

/* ABservices single-select geometry v1 START */
html body select:not([multiple]):not([size]),
html body select:not([multiple])[size="1"] {
    box-sizing: border-box !important;
    height: 42px !important;
    min-height: 42px !important;
    max-height: none !important;
    padding: 6px 28px 6px 10px !important;
    line-height: normal !important;
    font-size: 14px !important;
    vertical-align: middle !important;
}
/* ABservices single-select geometry v1 END */
