/* Identidade Alaska: navegação azul profunda e área de trabalho editorial. */
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root {
 --os-bg:#f4f5f2; --os-bg-elev:#fafbf8; --os-surface:#fff; --os-surface-2:#f1f4f4;
 --os-surface-3:#e8eeee; --os-border:#dce3e4; --os-border-strong:#bacbd0;
 --os-text:#18303c; --os-text-2:#3f5661; --os-muted:#607580; --os-faint:#87989f;
 --os-accent:#006e81; --os-accent-strong:#005868; --os-accent-soft:#e4f2f3;
 --os-on-accent:#fff; --os-success:#16745b; --os-font:'DM Sans',system-ui,sans-serif;
 --os-shadow:0 3px 12px #142d3a08; --os-shadow-sm:0 1px 3px #142d3a08;
 --os-radius-lg:14px; --sb-wide:244px; --tb-h:68px;
 --bg:var(--os-bg); --surface:var(--os-surface); --surface-soft:var(--os-surface-2);
 --surface-raised:var(--os-surface); --border:var(--os-border); --text:var(--os-text);
 --muted:var(--os-muted); --muted-strong:var(--os-text-2); --brand:var(--os-accent);
 --brand-strong:var(--os-accent-strong); --accent:var(--os-success); --ink:var(--os-text);
 --green:var(--os-success); --shadow:var(--os-shadow); --shadow-strong:0 8px 24px #142d3a12;
 --sidebar-width:244px; --topbar-height:68px;
}
.dark {
 --os-bg:#101e27; --os-bg-elev:#13232e; --os-surface:#192b36; --os-surface-2:#203540;
 --os-surface-3:#2a404c; --os-border:#304650; --os-border-strong:#49616d;
 --os-text:#e9f0f0; --os-text-2:#c0d0d4; --os-muted:#a0b6bf; --os-faint:#8197a1;
 --os-accent:#79d7da; --os-accent-strong:#9ce5e5; --os-accent-soft:#233f47;
 --os-on-accent:#102932; --os-success:#73cfab; --os-shadow:0 3px 12px #00000016;
 --bg:var(--os-bg); --surface:var(--os-surface); --surface-soft:var(--os-surface-2);
 --surface-raised:var(--os-surface); --border:var(--os-border); --text:var(--os-text);
 --muted:var(--os-muted); --muted-strong:var(--os-text-2); --brand:var(--os-accent);
 --brand-strong:var(--os-accent-strong); --accent:var(--os-success); --ink:var(--os-text);
}
body {font-family:var(--os-font); background:var(--bg); color:var(--text);}
h1,h2,h3,.view-title,.stat-value,.os-brand-name,.brand-title {font-family:'Manrope',system-ui,sans-serif;}
body[data-area] .os-shell, body[data-area] .app-shell, body[data-area] .os-main, body[data-area] .main-shell {background:var(--bg);}
body[data-area] .os-sidebar, body[data-area] .sidebar {background:#122e3f; border-right:0; box-shadow:none; color:#dce9ef;}
body[data-area] .os-brand, body[data-area] .brand {height:92px; border-color:#ffffff12; background:none;}
body[data-area] .os-brand-name, body[data-area] .brand-title {color:#fff; font-size:23px; font-weight:800; letter-spacing:-.8px;}
body[data-area] .os-brand-sub, body[data-area] .brand-subtitle {color:#9bb6c4;}
body[data-area] .os-brand-mark, body[data-area] .brand-mark {background:#1e3b4d; border:1px solid #ffffff15; border-radius:12px; box-shadow:none;}
body[data-area] .os-nav {padding:20px 12px;}
body[data-area] .os-nav-item, body[data-area] .nav-link {color:#bdd0da; min-height:44px; border-radius:8px; font-size:13px;}
body[data-area] .os-nav-item:hover, body[data-area] .nav-link:hover {background:#ffffff0c; color:#fff;}
body[data-area] .os-nav-item.is-active, body[data-area] .nav-link.is-active {background:#244658; color:#fff; box-shadow:inset 3px 0 #8bdbda;}
body[data-area] .os-nav-label {color:#7f9baa; font-size:10px; letter-spacing:1.4px; margin:26px 12px 10px;}
body[data-area] .os-nav-soon {background:#ffffff08; color:#8aa7b7;}
body[data-area] .os-sidebar-foot, body[data-area] .sidebar-footer {border-color:#ffffff12;}
body[data-area] .os-topbar, body[data-area] .topbar {height:68px; background:var(--surface); border-bottom:1px solid var(--border); box-shadow:none; padding-inline:30px;}
body[data-area] .os-content, body[data-area] .content {padding:32px;}
body[data-area] .view {max-width:1520px; gap:26px;}
body[data-area] .view-header {align-items:flex-end; padding-bottom:22px; border-bottom:1px solid var(--border);}
body[data-area] .view-title {font-size:30px; font-weight:800; letter-spacing:-1.1px; line-height:1.3; text-align:left;}
body[data-area] .view-subtitle {font-size:14px; line-height:1.65; text-align:left; margin-top:8px; color:var(--muted);}
body[data-area] .panel, body[data-area] .stat-card, body[data-area] .table-wrap, body[data-area] .knowledge-card, body[data-area] .premium-panel, body[data-area] .premium-stat {background:var(--surface); border:1px solid var(--border); border-radius:12px; box-shadow:var(--shadow);}
body[data-area] .panel {padding:24px;}
body[data-area] .panel:hover, body[data-area] .stat-card:hover, body[data-area] .knowledge-card:hover {box-shadow:var(--shadow); border-color:var(--border); transform:none;}
body[data-area] .stat-card {padding:24px; position:relative; min-height:158px; border-top:3px solid #94bcc1;}
body[data-area] .stat-label {font-size:11px; font-weight:700; letter-spacing:.8px; color:var(--muted);}
body[data-area] .stat-value {font-size:38px; font-weight:800; letter-spacing:-1.5px; margin-top:12px; font-variant-numeric:tabular-nums;}
body[data-area] .stat-note {font-size:12px; margin-top:10px; line-height:1.5;}
body[data-area] .grid-4, body[data-area] .grid-3, body[data-area] .grid-2 {gap:20px;}
body[data-area] .grid-4 {grid-template-columns:repeat(4,minmax(0,1fr));}
body[data-area] .grid-2 {grid-template-columns:repeat(2,minmax(0,1fr));}
body[data-area] .btn, body[data-area] .os-btn {border-radius:7px; min-height:40px; font-weight:600; box-shadow:none; background:var(--surface);}
body[data-area] .btn:hover {transform:none; background:var(--surface-soft); box-shadow:none;}
body[data-area] .btn-primary, body[data-area] .os-btn-primary {background:var(--brand); color:var(--os-on-accent); border:1px solid var(--brand); box-shadow:none;}
body[data-area] .btn-primary:hover, body[data-area] .os-btn-primary:hover {background:var(--brand-strong); color:var(--os-on-accent);}
body[data-area] .btn-link {font-weight:600;}
body[data-area] .form-input {background:var(--surface); border:1px solid var(--os-border-strong); border-radius:7px; min-height:44px; padding:11px 13px;}
body[data-area] .form-label {font-size:12px; color:var(--text); font-weight:600; margin-bottom:8px;}
body[data-area] .form-input:focus {border-color:var(--brand);}
body[data-area] .data-table th {background:var(--surface-soft); padding:16px 20px; font-size:10px; letter-spacing:1px; font-weight:700;}
body[data-area] .data-table td {padding:18px 20px; font-size:13px;}
body[data-area] .data-table tbody tr:hover td {background:var(--surface-soft);}
body[data-area] .badge {border-radius:5px; padding:4px 7px; font-size:10px; font-weight:700; letter-spacing:.3px;}
body[data-area] .kanban-board {gap:18px; align-items:stretch; padding-bottom:16px;}
body[data-area] .kanban-column-shell {background:var(--surface-soft); border:1px solid var(--border); border-radius:12px; box-shadow:none; min-width:280px;}
body[data-area] .kanban-column-header {padding:16px 14px; background:none; border-bottom:1px solid var(--border);}
body[data-area] .kanban-column-header strong {font-size:11px; letter-spacing:.8px;}
body[data-area] .kanban-column-soma {font-size:11px; font-variant-numeric:tabular-nums; color:var(--muted);}
body[data-area] .kanban-column {padding:12px;}
body[data-area] .deal-card {background:var(--surface); border:1px solid var(--border); border-radius:9px; box-shadow:0 2px 5px #16334206; margin-bottom:12px; padding:16px;}
body[data-area] .deal-card:hover {transform:none; border-color:var(--os-border-strong); box-shadow:0 4px 12px #16334210;}
body[data-area] .deal-card h3 {font-size:14px; letter-spacing:-.3px; line-height:1.5; font-weight:800;}
body[data-area] .deal-card p {line-height:1.65; font-size:12px;}
body[data-area] .deal-valor {font-family:'Manrope',sans-serif; font-size:16px; color:var(--text); font-weight:800;}
body[data-area] .deal-card footer {border-top:1px solid var(--border); margin-top:16px; padding-top:12px;}
body[data-area] .kanban-vazio {background:none; min-height:190px; color:var(--muted); border:1px dashed var(--os-border-strong); border-radius:8px;}
body[data-area] .modal {backdrop-filter:blur(3px);}
body[data-area] .modal-panel {background:var(--surface); border-radius:14px; padding:28px; box-shadow:0 20px 70px #081e3240;}
body[data-area] .empty-state {background:var(--surface); border:1px dashed var(--os-border-strong); border-radius:10px; color:var(--muted); box-shadow:none;}
body[data-area] #calendar-grid {border:1px solid var(--border); border-radius:10px; overflow:hidden;}
body[data-area] #calendar-grid>div {background:var(--surface); border-color:var(--border); min-height:116px;}
body[data-area] #calendar-grid>div[data-calendar-date]:hover {background:var(--surface-soft);}
body[data-area] .knowledge-card {padding:22px;}
body[data-area] .knowledge-card::before, body[data-area] .premium-stat::before, body[data-area] .premium-panel::before {display:none;}
body[data-area] .knowledge-card h3 {font-size:17px; letter-spacing:-.5px;}
body[data-area] .portal-hero {background:#122e3f; color:#fff; padding:34px; border-radius:14px; box-shadow:none; border:0;}
body[data-area] .portal-hero::after {display:none;}
body[data-area] .portal-hero .view-title {color:#fff; font-size:34px;}
body[data-area] .portal-hero .view-subtitle {color:#bed2dc;}
body[data-area] .hero-eyebrow {color:#87cdcf; font-size:10px; letter-spacing:2px;}
body[data-area] .portal-hero .btn:not(.btn-primary) {background:#ffffff0b; border-color:#ffffff30; color:#fff;}
body[data-area] .portal-hero .btn-primary {background:#b8e5e3; border-color:#b8e5e3; color:#12313d;}
body[data-area] .chat-sidebar, body[data-area] .chat-main {background:var(--surface); border-color:var(--border);}
body[data-area] .chat-header, body[data-area] .chat-sidebar-head {background:var(--surface-soft);}
body[data-area] .message-bubble {box-shadow:none; border-radius:12px;}
body[data-area] .dashboard-intro {background:#122e3f; border-radius:14px; padding:32px; color:#fff; display:flex; justify-content:space-between; gap:28px; align-items:center;}
body[data-area] .dashboard-intro .view-title {color:#fff; font-size:34px; max-width:620px;}
body[data-area] .dashboard-intro .view-subtitle {color:#bed2dc; max-width:540px;}
body[data-area] .dashboard-intro .btn {background:#b8e5e3; border-color:#b8e5e3; color:#12313d; white-space:nowrap;}
body[data-area] .section-kicker {font-size:10px; font-weight:700; letter-spacing:1.8px; text-transform:uppercase; color:var(--muted); margin-bottom:10px;}
body[data-area] .dashboard-intro .section-kicker {color:#8bcdd0;}
body[data-area] .dashboard-links {display:grid; gap:0;}
body[data-area] .dashboard-links a {display:flex; align-items:center; justify-content:space-between; padding:17px 0; border-bottom:1px solid var(--border); font-size:14px; font-weight:600; text-decoration:none;}
body[data-area] .dashboard-links a:last-child {border-bottom:0;}
body[data-area] .dashboard-links a span {font-size:12px; font-weight:400; color:var(--muted); display:block; margin-top:5px;}
body[data-area] .dashboard-links a:hover {color:var(--brand);}
@media (max-width:1200px) {
body[data-area] .grid-4 {grid-template-columns:repeat(2,minmax(0,1fr));}
body[data-area] .os-content, body[data-area] .content {padding:24px;}
body[data-area] .view-title {font-size:28px;}}
@media (max-width:760px) {
body[data-area] .grid-2, body[data-area] .grid-3 {grid-template-columns:1fr;}
body[data-area] .os-content, body[data-area] .content {padding:18px;}
body[data-area] .os-topbar, body[data-area] .topbar {padding-inline:18px;}
body[data-area] .view-header {align-items:flex-start; flex-direction:column;}
body[data-area] .action-group {justify-content:flex-start;}
body[data-area] .dashboard-intro {padding:24px; flex-direction:column; align-items:flex-start;}
body[data-area] .dashboard-intro .view-title, body[data-area] .portal-hero .view-title {font-size:27px;}
body[data-area] .view-title {font-size:26px;}
body[data-area] .stat-card {padding:18px; min-height:146px;}
body[data-area] .stat-value {font-size:32px;}
body[data-area] .portal-hero {padding:24px;}
body[data-area] .panel {padding:20px;}
body[data-area] .kanban-column-shell {min-width:270px;} }
@media (max-width:420px) {
body[data-area] .grid-4 {gap:12px;}
body[data-area] .stat-label {font-size:10px;}
body[data-area] .stat-note {font-size:11px;}
body[data-area] .os-content, body[data-area] .content {padding:14px;} }
@media (prefers-reduced-motion:reduce) {* {scroll-behavior:auto!important; transition:none!important; animation:none!important;}}
/* Login mantém os mesmos campos e contrato de autenticação. */
.login-page {min-height:100dvh; background:#f4f5f2; color:#18303c; display:grid; grid-template-columns:minmax(0,1.15fr) minmax(360px,1fr);}
.login-story {background:#122e3f; padding:60px; display:flex; flex-direction:column; justify-content:space-between; position:relative; overflow:hidden; color:#fff;}
.login-story::after {content:''; position:absolute; width:360px; height:360px; border:1px solid #ffffff14; border-radius:50%; right:-140px; bottom:-110px; box-shadow:0 0 0 65px #ffffff03,0 0 0 130px #ffffff02; pointer-events:none;}
.login-brand {display:flex; align-items:center; gap:12px; font-family:'Manrope',sans-serif; font-size:27px; font-weight:800; letter-spacing:-1px;}
.login-brand img {width:44px; height:44px; object-fit:contain;}
.login-story-copy {max-width:560px; margin:80px 0; position:relative; z-index:1;}
.login-story-copy .section-kicker {color:#94d1d1;}
.login-story h1 {font-size:clamp(36px,4.3vw,62px); line-height:1.14; font-weight:600; letter-spacing:-2px; margin:20px 0 26px;}
.login-story p {font-size:16px; line-height:1.8; max-width:430px; color:#b7cdd9;}
.login-story-foot {font-size:11px; color:#9cb8c8; letter-spacing:.5px;}
.login-form-side {display:flex; align-items:center; justify-content:center; padding:50px;}
.login-form-wrap {width:100%; max-width:360px;}
.login-form-wrap h2 {font-size:30px; font-weight:800; letter-spacing:-1px; margin:12px 0;}
.login-form-wrap>p {color:#607580; font-size:14px; line-height:1.7; margin-bottom:34px;}
.login-form-wrap label {display:block; font-size:12px; font-weight:600; margin:22px 0 8px;}
.login-form-wrap input {width:100%; background:#fff; border:1px solid #c8d5d8; border-radius:7px; color:#18303c; height:48px; padding:12px 14px; outline:none;}
.login-form-wrap input:focus {border-color:#006e81; box-shadow:0 0 0 3px #006e8115;}
.login-password {position:relative;}
.login-password input {padding-right:48px;}
.login-password button {position:absolute; right:0; top:0; height:48px; padding:14px; color:#607580; background:none; border:0;}
.login-password svg {width:20px; height:20px;}
.login-submit {width:100%; height:48px; margin-top:28px; background:#006e81; color:#fff; border:0; border-radius:7px; font-size:14px; font-weight:600;}
.login-submit:hover {background:#005868;}
.login-submit:disabled {opacity:.6; cursor:wait;}
.login-form-foot {font-size:11px; color:#607580; border-top:1px solid #dce3e4; margin-top:36px; padding-top:20px; line-height:1.7;}
.login-error {font-size:12px; color:#982e33; background:#fff0f0; padding:12px; margin-top:16px; border-radius:7px;}
@media(max-width:760px) {.login-page {display:flex; flex-direction:column;} .login-story {padding:26px;} .login-story-copy {margin:35px 0 0;} .login-story h1 {font-size:32px; letter-spacing:-1px; margin-bottom:14px;} .login-story-copy p,.login-story-foot {display:none;} .login-form-side {padding:30px 24px 40px;} .login-brand {font-size:22px;} .login-brand img {width:34px; height:34px;}}
/* Mantém contraste do menu independente do tema da área de trabalho. */
body[data-area] .os-sidebar .os-nav-item .ic {color:#bdd0da;}
body[data-area] .os-sidebar .os-nav-item:hover .ic {color:#fff;}
body[data-area] .os-sidebar .os-nav-item.is-active .ic {color:#9be2df;}
body[data-area] .os-nav-item.is-active::before {display:none;}
body[data-area] .volume-bar {background:#087d8e;}
body[data-area] .volume-bar-secondary {background:#789fa8;}
body[data-area] .volume-bar-tertiary {background:#a99875;}
body[data-area] .kanban-column-shell {width:320px; min-width:320px; flex:0 0 320px;}
body[data-area] .kanban-column {display:flex; flex-direction:column; gap:12px; min-width:0;}
body[data-area] .deal-card {width:100%; min-width:0; margin-bottom:0;}
body[data-area] .kanban-column-header {display:grid; grid-template-columns:minmax(0,1fr) auto 22px 22px; gap:8px; align-items:center;}
body[data-area] .kanban-column-header>div {display:contents;}
body[data-area] .kanban-column-header strong {grid-column:1; grid-row:1;}
body[data-area] .kanban-column-header [id^='count-'] {grid-column:2; grid-row:1;}
body[data-area] .kanban-column-header [data-stage-action='edit'] {grid-column:3; grid-row:1;}
body[data-area] .kanban-column-header [data-stage-action='delete'] {grid-column:4; grid-row:1;}
body[data-area] .kanban-column-soma {grid-column:1/-1; grid-row:2; min-height:16px;}
@media(max-width:760px) {body[data-area] .kanban-column-shell {width:290px; min-width:290px; flex-basis:290px;}}
.login-page .section-kicker {font-size:10px; font-weight:700; letter-spacing:1.8px; text-transform:uppercase; margin-bottom:10px; color:#607580;}
.login-story .section-kicker {color:#94d1d1;}
body[data-area] .table-wrap {overflow-x:auto;}
body[data-area] .data-table {min-width:640px;}
