/* Jui storefront assets and palette; SAC only. See brand/sources.json. */
@font-face { font-family: Manrope; src: url('/painel/brand/manrope-regular.woff2') format('woff2'); font-weight: 400; font-display: swap; }
@font-face { font-family: Manrope; src: url('/painel/brand/manrope-bold.woff2') format('woff2'); font-weight: 700; font-display: swap; }
.sac-qa { --bg:#f0eee2; --surface:#fffefa; --surface-2:#f0eee2; --text:#3d4226; --text-2:#535943; --muted:#646a52; --border:#dcded0; --accent:#b2d926; --accent-text:#30391a; --crit-text:#9e3026; color-scheme:light; background:var(--bg); color:var(--text); font-family:Manrope,Arial,sans-serif; font-size:14px; line-height:1.55; }
.sac-qa button,.sac-qa input,.sac-qa select,.sac-qa textarea { font:inherit; }
.sac-qa button { background:var(--accent); color:var(--accent-text); border:1px solid transparent; padding:10px 16px; border-radius:10px; font-weight:700; transition:background .15s; }
.sac-qa button:hover:not(:disabled) { background:#c1e635; }
.sac-qa button.ghost { background:transparent; color:var(--text); border:1px solid var(--border); }
.sac-qa button.ghost:hover:not(:disabled) { background:#eeefdf; }
.sac-qa button:disabled { opacity:.6; cursor:wait; }
.sac-qa :focus-visible { outline:3px solid #586d16; outline-offset:3px; }
.sac-qa label { font-size:12px; font-weight:700; margin:12px 0 6px; }
.sac-qa input:not([type=checkbox]),.sac-qa textarea,.sac-qa select { background:#fffefa; color:var(--text); border:1px solid #ced2bf; border-radius:9px; padding:10px 12px; margin-top:5px; width:100%; max-width:100%; }
.sac-qa input::placeholder,.sac-qa textarea::placeholder { color:#747965; opacity:1; }
.sac-qa h1,.sac-qa h2,.sac-qa h3 { color:var(--text); letter-spacing:-.035em; }
.sac-qa h2 { font-size:17px; }.sac-qa h3 { font-size:14px; }
.sac-qa p { color:var(--text-2); }
.sac-header { height:86px; padding:18px 32px; background:#fffefa; border-bottom:1px solid var(--border); }
.sac-brand { display:flex; gap:22px; align-items:center; }.sac-brand img { object-fit:contain; }.sac-brand-divider { height:32px; border-left:1px solid var(--border); }
.sac-header h1 { font-size:19px; margin:0; }.sac-header p { font-size:11px; margin:2px 0 0; color:var(--muted); }
.sac-environment { display:flex; align-items:center; gap:8px; border:1px solid var(--border); border-radius:24px; padding:6px 12px; font-size:11px; color:var(--text-2); }
.sac-dot { display:inline-block; width:7px; height:7px; background:#718f20; border-radius:50%; flex-shrink:0; }
.sac-account { height:48px; border:0; padding:0 32px; font-size:11px; background:#f0eee2; }.sac-account p { margin:0; }.sac-account .sac-dot { margin-right:6px; }.sac-account>div { display:flex; align-items:center; gap:16px; }.sac-account button { padding:3px 12px; font-size:11px; }
.sac-layout { grid-template-columns:256px minmax(320px,1fr) 306px; gap:0; min-height:calc(100dvh - 166px); margin:0 20px; background:#fffefa; border:1px solid var(--border); border-radius:18px; overflow:hidden; }
.sac-list,.sac-comments { background:#f8f8f0; padding:22px 18px; border-color:var(--border); }.sac-list { border-right:1px solid var(--border); }.sac-comments { border-left:1px solid var(--border); }
.sac-heading { gap:10px; }.sac-heading h2 { margin:0; font-size:16px; }.sac-heading #sac-new { padding:8px 10px; font-size:11px; }
.sac-filter-details { margin-top:18px; border-bottom:1px solid var(--border); padding-bottom:7px; }.sac-filter-details summary { font-size:12px; color:var(--text-2); }.sac-date-range { gap:8px; }.sac-date-range input { padding:7px 3px!important; font-size:11px; }
#sac-cases { gap:9px; margin:18px 0; }#sac-cases button { color:var(--text); background:#fffefa; border:1px solid var(--border); font-size:11px; font-weight:400; padding:14px; line-height:1.85; border-radius:11px; white-space:pre-line; }#sac-cases button::first-line { font-size:13px; font-weight:700; }#sac-cases button[aria-current=true] { background:#edf2d9; border-color:#9caf62; box-shadow:inset 3px 0 #809c2a; }
.sac-pagination { font-size:11px; }.sac-pagination button { font-size:10px; padding:6px 8px; }
.sac-chat { background:#fffefa; }#sac-empty { padding:100px 20px 70px; text-align:center; color:var(--text); }#sac-empty h2 { font-size:28px; margin:15px 0; }#sac-empty p { font-size:13px; line-height:1.8; }#sac-empty button { margin-top:16px; }#sac-empty .sac-empty-foot { margin-top:28px; color:var(--muted); font-size:11px; }
.sac-empty-mark { margin:0 auto 24px; background:#e9eecf; width:64px; height:64px; border-radius:22px 22px 22px 4px; color:#637b20; font-size:64px; line-height:1.2; font-family:Georgia,serif; }.sac-eyebrow { color:#63733a; font-size:10px; letter-spacing:.17em; font-weight:700; }
.sac-chat-heading { padding:22px 26px 12px; border-color:var(--border); }.sac-chat-heading h2 { font-size:19px; }.sac-chat-heading p { color:var(--muted); font-size:10px; line-height:1.6; max-width:620px; }.sac-toolbar { justify-content:flex-start; gap:8px; }.sac-toolbar label { display:flex; gap:8px; align-items:center; font-size:10px; margin:0; }.sac-toolbar select { width:auto; margin:0; padding:6px!important; font-size:10px; }.sac-toolbar button { padding:7px 10px; font-size:10px; }
#sac-messages { padding:24px 26px; height:clamp(280px,43dvh,600px); gap:20px; background:#fffefa; }.sac-bubble { border-radius:14px; padding:14px 16px; max-width:88%; font-size:13px; }.sac-bubble.client { background:#eaf0d6; color:#3d4226; border-bottom-right-radius:3px; }.sac-bubble.reply { background:#f4f3eb; color:#3d4226; border-bottom-left-radius:3px; }.sac-bubble small { color:#666e50; font-size:10px; font-weight:700; }.sac-bubble p { color:#3d4226; line-height:1.7; margin:6px 0; }.sac-bubble button { color:#566526; background:transparent; padding:4px 0; font-size:10px; border-radius:4px; }.sac-bubble.is-selected { outline:2px solid #829c3a; outline-offset:3px; }
#sac-turn { border:0; padding:14px 26px; }#sac-turn textarea { min-height:82px; padding:14px; font-size:12px; resize:vertical; border-radius:13px; background:#fffefa; margin:0; }.sac-send-row { margin-top:10px; }.sac-send-row span { font-size:9px; color:#666e50; }.sac-send-row button { min-width:90px; }
.sac-compare { padding:6px 26px 18px; font-size:11px; }.sac-comparison section { border-color:var(--border); border-radius:9px; }.sac-review-icon { color:#6f8432; font-size:24px; }.sac-comments h2 { font-size:15px; }.sac-comments p { color:#62694e; font-size:12px; line-height:1.8; }.sac-comments form { border-color:var(--border); padding-top:16px; }.sac-comments label { font-size:11px; }.sac-comments textarea { font-size:12px; min-height:72px; }.sac-comments pre { color:#535943; }.sac-comments summary { font-size:11px; }.sac-comments #sac-close-comment { font-size:10px; padding:5px 9px; }.sac-review-actions { flex-wrap:wrap; }.sac-review-actions button { flex:1; font-size:10px; }
.sac-qa dialog { color:var(--text); background:#fffefa; border:1px solid var(--border); box-shadow:0 24px 100px #3d422633; border-radius:20px; padding:28px; }.sac-qa dialog::backdrop { background:#252b1a66; backdrop-filter:blur(3px); }.sac-order-editor { background:#f8f8f0; border-color:var(--border); border-radius:12px; }.sac-product-editor { flex-wrap:wrap; }.sac-order-editor button { font-size:11px; }.sac-qa summary { color:var(--text-2); }.sac-qa pre { overflow-wrap:anywhere; white-space:pre-wrap; }
#sac-status { margin:0; padding:8px 32px; color:#535f2d; font-size:11px; min-height:32px; }.sac-skip { position:absolute; top:-90px; left:12px; z-index:10; padding:12px; background:#fffefa; color:var(--text); }.sac-skip:focus { top:10px; }.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; }
.sac-mobile-nav { display:none; }
.sac-qa input:not([type=checkbox]),.sac-qa textarea,.sac-qa select { border-color:#899175; }
.sac-login-subtitle { font-size:12px; }.sac-login-note { font-size:11px; }
@media(min-width:1101px) { .sac-layout { height:calc(100dvh - 166px); min-height:560px; }.sac-list,.sac-comments { overflow-y:auto; }.sac-chat { overflow-y:auto; }#sac-current { height:100%; display:flex; flex-direction:column; }.sac-chat-heading,#sac-turn,.sac-compare { flex-shrink:0; }#sac-messages { flex:1; min-height:180px; height:auto; } }
/* Centered, calm login; no loading flash of the workspace. */
.sac-auth .sac-header,.sac-auth .sac-skip { display:none; }.sac-auth #sac-status { text-align:center; }.sac-login-stage { min-height:calc(100dvh - 36px); display:flex; flex-direction:column; align-items:center; justify-content:center; padding:36px 20px 20px; position:relative; overflow:hidden; background:radial-gradient(ellipse at 0% 0%,#e2e9c9 0,transparent 40%),radial-gradient(ellipse at 100% 100%,#e5e9ce 0,transparent 42%),#f0eee2; }.sac-login-intro { text-align:center; z-index:1; margin-bottom:24px; }.sac-login-intro p { font-size:24px; line-height:1.4; margin:8px 0 0; letter-spacing:-.04em; color:#3d4226; }.sac-login-intro strong { font-weight:700; }
.sac-qa .login-card { width:min(440px,100%); padding:36px 40px 28px; border-radius:22px; background:#fffefa; box-shadow:0 12px 50px #3d42260b; border:1px solid #dde0cc; display:flex; flex-direction:column; gap:0; z-index:1; }.sac-login-logo { display:block; margin:0 auto 23px; object-fit:contain; }.login-card h1 { text-align:center; font-size:28px; margin:0; letter-spacing:-.06em; }.sac-login-subtitle { font-size:11px; text-align:center; line-height:1.7; margin:8px 0 21px; color:#646a52; }.sac-qa .login-card label { font-size:12px; margin:12px 0 0; }.sac-qa .login-card input { min-height:46px; padding:12px; font-size:13px; }.sac-password-field { position:relative; }.sac-password-field input { padding-right:86px!important; }.sac-password-field button { position:absolute; right:8px; top:13px; border:0!important; padding:5px 8px; font-size:10px; color:#57672d!important; }.sac-qa #sac-login-submit { display:flex; justify-content:space-between; align-items:center; margin-top:24px; padding:13px 17px; min-height:48px; font-size:13px; }.sac-login-note { font-size:10px; line-height:1.8; color:#696f59; text-align:center; margin:20px 0 0; }.sac-login-footer { font-size:10px; color:#686f55; margin:24px 0 0; }.sac-qa #sac-login-error { font-size:12px; color:#9e3026; background:#fff0e9; border:1px solid #e3c0b7; padding:10px; border-radius:8px; margin:14px 0 0; }
@media(min-width:1600px) { .sac-layout { grid-template-columns:280px minmax(320px,1fr) 340px; max-width:1800px; margin:auto; } }
@media(max-width:1100px) and (min-width:761px) { .sac-layout { grid-template-columns:210px minmax(300px,1fr); }.sac-comments { grid-column:1/-1; border-top:1px solid var(--border); border-left:0; }.sac-comments form { max-width:600px; } }
@media(max-width:760px) { .sac-header { height:76px; padding:14px 16px; }.sac-brand { gap:12px; }.sac-brand img { width:58px; height:30px; }.sac-header h1 { font-size:17px; }.sac-header p { font-size:9px; max-width:180px; }.sac-environment { display:none; }.sac-account { padding:0 16px; height:46px; font-size:10px; gap:8px; }.sac-account-detail { display:none; }.sac-account>div { gap:8px; }.sac-mobile-nav { display:flex; padding:0 12px 10px; gap:8px; }.sac-mobile-nav button { flex:1; font-size:11px; background:transparent; border:1px solid #cbd0b9; }.sac-mobile-nav button[aria-pressed=true] { background:#e0e8c2; }.sac-layout { display:block; margin:0 10px; min-height:calc(100dvh - 220px); border-radius:14px; }.sac-list,.sac-comments { display:none; border:0; }.sac-qa[data-sac-view=cases] .sac-list { display:block; }.sac-qa[data-sac-view=cases] .sac-chat,.sac-qa[data-sac-view=review] .sac-chat { display:none; }.sac-qa[data-sac-view=review] .sac-comments { display:block; }.sac-chat-heading { padding:18px 16px 12px; }.sac-toolbar { flex-wrap:wrap; }#sac-messages { padding:18px 16px; height:43dvh; }.sac-bubble { max-width:95%; font-size:12px; }#sac-turn { padding:12px 16px; }.sac-send-row span { max-width:180px; }.sac-compare { padding:8px 16px; }.sac-comparison { grid-template-columns:1fr; }#sac-empty { padding:65px 16px; }#sac-empty h2 { font-size:24px; }.sac-qa dialog { padding:20px; width:calc(100vw - 24px); }.sac-qa .login-card { padding:30px 26px 24px; }.sac-login-stage { padding:24px 18px 18px; }.sac-login-intro { margin-bottom:18px; }.sac-login-intro p { font-size:21px; }#sac-status { padding:8px 18px; }.sac-product-editor>* { max-width:100%; } }
@media(prefers-reduced-motion:reduce) { .sac-qa * { transition:none!important; scroll-behavior:auto!important; } }
