:root {
  --yellow: #ffc400;
  --yellow-deep: #e5a900;
  --ink: #202123;
  --ink-2: #3b3d41;
  --muted: #73767d;
  --line: #e9e9e6;
  --soft: #f7f7f4;
  --paper: #ffffff;
  --green: #16a36a;
  --blue: #3772ff;
  --red: #e94b5a;
  --orange: #f08422;
  --shadow: 0 12px 35px rgba(32, 33, 35, .08);
  font-family: "DM Sans", system-ui, sans-serif;
  color: var(--ink);
  background: var(--soft);
}

* { box-sizing: border-box; }
body { margin: 0; min-width: 320px; background: var(--soft); }
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }
.app { min-height: 100vh; display: flex; }

.brand { display: flex; align-items: center; gap: 10px; text-decoration: none; color: var(--ink); }
.brand-mark { position: relative; width: 35px; height: 35px; border-radius: 50%; border: 8px solid var(--ink); display: grid; place-items: center; overflow: visible; }
.brand-mark::before { content: ""; width: 13px; height: 43px; background: var(--yellow); clip-path: polygon(54% 0,100% 0,64% 43%,100% 43%,14% 100%,39% 57%,0 57%); position: absolute; z-index: 1; }
.brand-copy { display: grid; line-height: 1; }
.brand-copy strong { font: 800 21px/1 "Manrope", sans-serif; letter-spacing: -.9px; }
.brand-copy small { color: var(--muted); font-size: 8px; letter-spacing: .8px; margin-top: 4px; font-weight: 700; }

.sidebar { width: 258px; background: var(--paper); padding: 25px 14px 17px; border-right: 1px solid var(--line); display: flex; flex-direction: column; flex-shrink: 0; position: fixed; inset: 0 auto 0 0; z-index: 20; transition: transform .25s ease; }
.sidebar .brand { padding: 0 11px 27px; }
.sidebar-label { color: #a5a6aa; font-size: 10px; font-weight: 700; letter-spacing: 1.1px; padding: 14px 11px 8px; }
.nav { display: grid; gap: 3px; }
.nav-item { border: 0; background: transparent; color: #5d6066; padding: 10px 11px; border-radius: 9px; display: flex; align-items: center; gap: 12px; font-size: 13px; font-weight: 600; text-align: left; transition: background .18s, color .18s; }
.nav-item:hover { background: #f7f7f4; color: var(--ink); }
.nav-item.active { background: #fff6cf; color: #4b3b00; }
.nav-item svg { width: 17px; height: 17px; stroke-width: 2; }
.nav-badge { margin-left: auto; background: var(--yellow); color: #493800; min-width: 20px; height: 20px; padding: 0 6px; border-radius: 20px; font-size: 10px; display: grid; place-items: center; }
.sidebar-bottom { margin-top: auto; }
.help-card { margin: 10px 6px 14px; background: #202123; color: white; padding: 15px; border-radius: 12px; font-size: 11px; line-height: 1.45; }
.help-card strong { display: block; font-size: 12px; margin-bottom: 4px; }
.help-card button { margin-top: 12px; background: var(--yellow); border: 0; border-radius: 7px; padding: 7px 10px; color: #382d00; font-size: 11px; font-weight: 700; }
.profile { display: flex; align-items: center; gap: 9px; padding: 10px; border-top: 1px solid var(--line); }
.avatar { width: 32px; height: 32px; border-radius: 10px; display: grid; place-items: center; background: #2a2b2e; color: var(--yellow); font-weight: 800; font-size: 12px; }
.profile-copy { min-width: 0; flex: 1; }.profile-copy strong,.profile-copy small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }.profile-copy strong { font-size: 11px; }.profile-copy small { font-size: 10px; color: var(--muted); margin-top: 2px; }.profile button { border: 0; background: transparent; color: var(--muted); padding: 5px; }
.profile .logout-button { display: inline-flex; align-items: center; gap: 5px; padding: 7px 8px; border: 1px solid var(--line); border-radius: 7px; color: #5f6167; font-size: 10px; font-weight: 700; }
.profile .logout-button:hover { color: #b4303d; border-color: #f2b8be; background: #fff2f3; }
.profile .logout-button svg { width: 14px; }

.main { margin-left: 258px; flex: 1; min-width: 0; }
.topbar { min-height: 73px; padding: 15px 34px; border-bottom: 1px solid var(--line); background: rgba(255,255,255,.84); backdrop-filter: blur(12px); display: flex; align-items: center; gap: 18px; position: sticky; top: 0; z-index: 10; }
.mobile-menu { display: none; border: 0; background: transparent; padding: 5px; color: var(--ink); }
.search { width: min(420px, 47vw); height: 40px; display: flex; align-items: center; gap: 9px; padding: 0 12px; background: var(--soft); border: 1px solid transparent; border-radius: 9px; color: var(--muted); }
.search:focus-within { border-color: #efc54a; background: white; }.search svg { width: 16px; }.search input { min-width: 0; flex: 1; border: 0; outline: 0; background: transparent; font-size: 12px; }.shortcut { border: 1px solid var(--line); background: white; border-radius: 4px; color: var(--muted); padding: 2px 5px; font-size: 10px; }
.top-actions { display: flex; align-items: center; gap: 8px; margin-left: auto; }.icon-button { width: 37px; height: 37px; display: grid; place-items: center; border: 1px solid var(--line); background: white; border-radius: 9px; color: var(--ink); position: relative; }.icon-button svg { width: 17px; }.notification-dot { position: absolute; right: 7px; top: 7px; width: 6px; height: 6px; background: var(--red); border: 1.5px solid white; border-radius: 50%; }
.content { padding: 27px 34px 55px; max-width: 1680px; margin: auto; }
.page-intro { display: flex; justify-content: space-between; gap: 18px; align-items: flex-start; margin-bottom: 24px; }.eyebrow { color: #a37600; text-transform: uppercase; letter-spacing: 1px; font-weight: 700; font-size: 10px; margin: 0 0 6px; }.page-title { margin: 0; font: 800 clamp(22px, 2.5vw, 31px)/1.1 "Manrope", sans-serif; letter-spacing: -1.15px; }.page-subtitle { color: var(--muted); margin: 7px 0 0; font-size: 12px; }.date-chip { padding: 8px 11px; border-radius: 7px; color: var(--muted); border: 1px solid var(--line); background: white; font-size: 11px; white-space: nowrap; }
.primary-button, .secondary-button, .danger-button { display: inline-flex; align-items: center; justify-content: center; gap: 8px; border: 0; border-radius: 8px; min-height: 36px; padding: 0 13px; font-weight: 700; font-size: 11px; }.primary-button { background: var(--yellow); color: #3f3300; box-shadow: 0 4px 13px rgba(255,196,0,.24); }.primary-button:hover { background: #ffce24; }.primary-button svg,.secondary-button svg { width: 15px; }.secondary-button { color: #45474c; background: white; border: 1px solid var(--line); }.danger-button { color: white; background: var(--red); }

.metrics { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 15px; }.metric { background: var(--paper); border: 1px solid var(--line); border-radius: 12px; padding: 16px; min-height: 115px; position: relative; overflow: hidden; }.metric-label { color: var(--muted); font-size: 11px; font-weight: 600; }.metric-number { font: 800 28px/1 "Manrope",sans-serif; letter-spacing: -1.4px; margin-top: 13px; }.metric-note { display: flex; align-items: center; gap: 4px; color: var(--green); font-size: 10px; font-weight: 700; margin-top: 7px; }.metric-note.warn { color: var(--orange); }.metric-icon { position: absolute; right: 13px; top: 13px; width: 31px; height: 31px; border-radius: 9px; display: grid; place-items: center; background: #fff7d5; color: #b07d00; }.metric-icon.blue { background: #eaf0ff; color: var(--blue); }.metric-icon.green { background: #e7f7ef; color: var(--green); }.metric-icon.red { background: #ffeaed; color: var(--red); }.metric-icon svg { width: 16px; }
.dashboard-grid { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(290px,.8fr); gap: 17px; margin-top: 18px; }.card { background: var(--paper); border: 1px solid var(--line); border-radius: 12px; padding: 18px; }.card-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 8px; margin-bottom: 17px; }.card-title { font: 800 14px "Manrope",sans-serif; margin: 0; letter-spacing: -.25px; }.card-subtitle { color: var(--muted); font-size: 10px; margin: 4px 0 0; }.card-link { border:0; background: transparent; color: #997100; padding: 0; font-size: 10px; font-weight: 700; }
.chart { height: 205px; display: flex; gap: clamp(6px,1vw,13px); align-items: flex-end; padding: 4px 6px 20px; position: relative; border-bottom: 1px solid var(--line); background: repeating-linear-gradient(to bottom, transparent 0, transparent 50px, #f2f2ef 51px); }.bar-group { flex: 1; height: 100%; display:flex; align-items:flex-end; justify-content:center; gap: 3px; position:relative; }.bar { width: min(15px,35%); border-radius: 4px 4px 0 0; background: var(--yellow); min-height: 3px; transition: height .25s; }.bar.alt { background: #393b3f; }.bar-label { position:absolute; bottom:-17px; color:var(--muted); font-size:9px; }.chart-legend { display:flex; gap:15px; margin-top:15px; color:var(--muted); font-size:10px; }.legend-dot { width:7px; height:7px; border-radius:2px; display:inline-block; margin-right:5px; background:var(--yellow); }.legend-dot.dark { background:#393b3f; }
.activity-list,.alert-list { display:grid; gap:0; }.activity { display:flex; align-items:flex-start; gap:10px; padding:10px 0; border-bottom:1px solid #f0f0ed; }.activity:last-child { border:0; padding-bottom:0; }.activity-icon { width:28px;height:28px; flex:0 0 28px; border-radius:8px; display:grid;place-items:center;background:#f7f7f4;color:#696b70; }.activity-icon svg { width:14px; }.activity strong { font-size:11px; display:block; }.activity p { color:var(--muted); font-size:10px; line-height:1.35; margin:3px 0 0; }.activity time { margin-left:auto; color:#a7a8ac; font-size:9px; white-space:nowrap; }.donut-wrap { display:flex; align-items:center; gap:19px; padding:5px 0 1px; }.donut { width:116px;height:116px; flex:0 0 116px; border-radius:50%; background:conic-gradient(var(--yellow) 0 42%, #3d3e42 42% 69%, var(--blue) 69% 87%, #e7e7e5 87%); position:relative; }.donut::after { content:""; position:absolute; inset:20px; background:white; border-radius:50%; }.donut-center { position:absolute; inset:0; z-index:1; display:grid;place-content:center;text-align:center; }.donut-center strong{font:800 23px "Manrope"}.donut-center small{font-size:9px;color:var(--muted)}.donut-list { display:grid;gap:10px; flex:1; }.donut-list div{font-size:10px;color:var(--muted);display:flex;justify-content:space-between;gap:12px}.donut-list b{color:var(--ink);}.donut-list span:first-child:before{content:"";display:inline-block;width:7px;height:7px;border-radius:2px;background:var(--yellow);margin-right:6px}.donut-list div:nth-child(2) span:first-child:before{background:#3d3e42}.donut-list div:nth-child(3) span:first-child:before{background:var(--blue)}

.toolbar { display:flex; align-items:center; gap:9px; margin-bottom:15px; flex-wrap:wrap; }.toolbar .search { width: min(340px,100%); height:36px; background:white; border-color:var(--line); }.toolbar-spacer { flex:1; }.filter-button { height:36px; border:1px solid var(--line); background:white; border-radius:8px; padding:0 11px; color:#5c5e64; font-size:11px; font-weight:600; display:flex;align-items:center;gap:7px; }.filter-button svg{width:14px}.filter-button.active{border-color:#e6b400;background:#fff9dc;color:#735a00}
.data-card { border: 1px solid var(--line); border-radius: 12px; background: white; overflow: hidden; }.table-wrap { overflow-x: auto; }.data-table { width:100%; border-collapse:collapse; min-width:700px; }.data-table th { text-align:left; background:#fafaf8; color:#898b90; padding:11px 15px; border-bottom:1px solid var(--line); text-transform:uppercase; letter-spacing:.65px; font-size:9px; white-space:nowrap; }.data-table td { border-bottom:1px solid #eeeeeb; padding:12px 15px; color:#51535a; font-size:11px; vertical-align:middle; }.data-table tr:last-child td{border-bottom:0}.data-table tr:hover td {background:#fffef8}.data-table strong {color:#27282b;font-size:11px}.muted {color:var(--muted)!important}.record-cell {display:flex;align-items:center;gap:9px}.record-icon {width:28px;height:28px;border:1px solid var(--line);border-radius:7px;display:grid;place-items:center;color:#5c5e64;background:#fff}.record-icon svg{width:14px}.stock-bar{width:72px;height:5px;border-radius:8px;background:#ededeb;overflow:hidden}.stock-bar span{display:block;height:100%;border-radius:inherit;background:var(--green)}.stock-bar span.low{background:var(--orange)}.row-actions{display:flex;gap:4px}.row-action{border:0;background:transparent;color:#8b8d91;padding:4px;border-radius:4px}.row-action:hover{background:#f4f4f1;color:var(--ink)}.row-action svg{width:15px;display:block}.status{display:inline-flex;align-items:center;gap:5px;border-radius:20px;padding:4px 8px;font-size:9px;font-weight:700;white-space:nowrap}.status::before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor}.status.pendente,.status.suspensa{color:#b37200;background:#fff5d2}.status.planeada,.status.aberta{color:#3567bc;background:#e9f1ff}.status.em-curso,.status.aprovado{color:#14865a;background:#e8f8f0}.status.concluida,.status.entregue{color:#5d6270;background:#f0f1f3}.status.cancelada,.status.rejeitado{color:#c44c58;background:#ffebed}.status.baixo{color:#c16000;background:#fff0dc}.pagination{padding:12px 15px;display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:10px;border-top:1px solid var(--line)}.pagination-buttons{display:flex;gap:5px}.pagination-buttons button{border:1px solid var(--line);background:white;border-radius:5px;width:25px;height:25px;color:#666}

.work-board { display:grid; grid-template-columns:repeat(5,minmax(205px,1fr)); gap:12px; overflow-x:auto; padding-bottom:7px; }.board-column { background:#f0f0ed; border-radius:10px; padding:10px; min-height:420px; min-width:205px; }.board-header{display:flex;align-items:center;justify-content:space-between;padding:3px 4px 11px}.board-header strong{font-size:11px}.board-header span{width:19px;height:19px;border-radius:5px;background:#e1e1dc;color:#76777b;display:grid;place-items:center;font-size:9px}.work-ticket{background:white;padding:12px;border-radius:8px;box-shadow:0 1px 2px rgba(0,0,0,.04);margin-bottom:8px;border:1px solid rgba(0,0,0,.03);cursor:grab}.ticket-code{font-size:9px;color:#9a9b9e;font-weight:700}.work-ticket h4{margin:6px 0;font:700 11px "Manrope"}.work-ticket p{margin:0;color:var(--muted);font-size:9px}.ticket-footer{display:flex;align-items:center;justify-content:space-between;margin-top:12px}.assignee{width:21px;height:21px;border-radius:50%;background:#303237;color:var(--yellow);display:grid;place-items:center;font-size:8px;font-weight:800}.due-date{font-size:9px;color:#6f7075}.schedule-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:17px}.schedule-side{display:grid;gap:17px}.planning-row{display:flex;gap:10px;padding:11px 0;border-bottom:1px solid #f0f0ed;align-items:center}.planning-row:last-child{border:0}.planning-date{width:36px;height:36px;border-radius:8px;background:#fff8d8;color:#876200;display:grid;place-content:center;text-align:center;line-height:1}.planning-date b{font-size:13px}.planning-date span{font-size:8px;margin-top:2px}.planning-row strong{font-size:11px;display:block}.planning-row p{margin:3px 0 0;font-size:10px;color:var(--muted)}

.report-grid {display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.report-card{padding:17px;border-radius:11px;border:1px solid var(--line);background:white}.report-card svg{width:20px;color:#9c7200}.report-card h3{font:800 13px "Manrope";margin:15px 0 4px}.report-card p{font-size:10px;color:var(--muted);margin:0 0 16px;line-height:1.45}.report-card button{width:100%}
.settings-grid {display:grid;grid-template-columns:1.1fr .9fr;gap:17px}.setting-row{display:flex;gap:12px;padding:13px 0;border-bottom:1px solid #eee}.setting-row:last-child{border:0}.setting-row strong{font-size:11px;display:block}.setting-row p{font-size:10px;line-height:1.4;color:var(--muted);margin:4px 0 0}.toggle{margin-left:auto;align-self:center;width:34px;height:19px;border:0;border-radius:20px;background:#d7d7d4;padding:2px}.toggle span{display:block;width:15px;height:15px;background:white;border-radius:50%;transition:transform .2s}.toggle.on{background:var(--yellow)}.toggle.on span{transform:translateX(15px)}

.modal-backdrop{position:fixed;inset:0;background:rgba(22,23,25,.42);z-index:50;display:grid;place-items:center;padding:18px;animation:fade .15s}.modal{width:min(650px,100%);max-height:min(92vh,790px);overflow:auto;background:white;border-radius:14px;box-shadow:0 25px 70px rgba(0,0,0,.25);animation:rise .18s}.modal-header{padding:19px 21px 16px;display:flex;align-items:flex-start;justify-content:space-between;border-bottom:1px solid var(--line)}.modal-header h2{margin:0;font:800 17px "Manrope";letter-spacing:-.55px}.modal-header p{font-size:10px;color:var(--muted);margin:4px 0 0}.modal-close{border:0;background:transparent;color:var(--muted);padding:3px}.modal-close svg{width:18px}.modal-body{padding:20px 21px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.form-field{display:grid;gap:6px}.form-field.full{grid-column:1/-1}.form-field label{font-size:10px;color:#56585e;font-weight:700}.form-field input,.form-field select,.form-field textarea{width:100%;border:1px solid #dededb;outline:0;border-radius:7px;padding:9px 10px;color:var(--ink);font-size:12px;background:white}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:#d7a900;box-shadow:0 0 0 3px #fff7d7}.form-field textarea{min-height:72px;resize:vertical}.form-hint{font-size:9px;color:var(--muted);margin-top:-2px}.modal-footer{border-top:1px solid var(--line);padding:14px 21px;display:flex;justify-content:flex-end;gap:8px}.quick-table{width:100%;border-collapse:collapse}.quick-table input{border:1px solid var(--line);padding:7px;width:100%;border-radius:5px;font-size:10px}.quick-table th{font-size:9px;color:var(--muted);text-align:left;padding:0 0 7px}.quick-table td{padding:3px}.signature-box{border:1px dashed #bbbcb9;background:#fcfcfa;border-radius:8px;position:relative;height:150px;overflow:hidden}.signature-box canvas{width:100%;height:100%;touch-action:none}.signature-clear{position:absolute;right:7px;top:7px;font-size:9px;color:#696b70;border:1px solid var(--line);background:white;padding:4px 7px;border-radius:5px}.scan-box{text-align:center;padding:10px}.scan-box video{max-width:100%;width:390px;border-radius:9px;background:#202123}.scan-result{font-size:11px;color:var(--green);font-weight:700;margin:10px 0}.notice{border-radius:8px;padding:10px 11px;background:#fff8df;color:#806200;font-size:10px;line-height:1.45;margin-bottom:14px}.empty-state{text-align:center;padding:42px 18px;color:var(--muted)}.empty-state svg{width:28px;height:28px;margin-bottom:7px}.empty-state strong{display:block;color:var(--ink);font-size:12px}.empty-state p{margin:5px 0 0;font-size:10px}
.notifications{position:fixed;right:24px;top:66px;width:min(340px,calc(100vw - 30px));background:white;border:1px solid var(--line);box-shadow:var(--shadow);z-index:25;border-radius:11px;padding:14px;display:none}.notifications.show{display:block}.notifications h3{font:800 13px "Manrope";margin:0 0 9px}.notification{padding:10px 0;border-bottom:1px solid #efefec;display:flex;gap:9px}.notification:last-child{border:0}.notification i{width:7px;height:7px;margin-top:4px;background:var(--yellow);border-radius:50%;flex:0 0 7px}.notification strong{font-size:10px;display:block}.notification p{font-size:9px;color:var(--muted);margin:3px 0 0}.toast{position:fixed;z-index:80;bottom:22px;right:22px;background:#26272a;color:white;border-radius:9px;padding:11px 14px;font-size:11px;box-shadow:var(--shadow);display:flex;align-items:center;gap:8px;transform:translateY(80px);opacity:0;transition:.25s}.toast.show{transform:translateY(0);opacity:1}.toast i{width:18px;height:18px;background:var(--yellow);color:#3b3000;border-radius:50%;display:grid;place-items:center;font-style:normal;font-size:12px}

.login-screen {min-height:100vh;background:#212225;display:grid;grid-template-columns:1.05fr .95fr}.login-aside{position:relative;padding:clamp(35px,6vw,90px);color:white;overflow:hidden;background:radial-gradient(circle at 35% 35%,#414345 0,#222326 45%,#17181a 100%)}.login-aside:after{content:"";position:absolute;width:510px;height:510px;border:80px solid rgba(255,196,0,.95);border-radius:50%;right:-230px;bottom:-250px}.login-aside .brand{color:white;position:relative;z-index:1}.login-aside .brand-mark{border-color:white}.login-aside .brand-copy small{color:#c4c4c2}.login-words{position:relative;z-index:1;margin-top:clamp(70px,17vh,190px);max-width:530px}.login-words .eyebrow{color:var(--yellow)}.login-words h1{font:800 clamp(36px,4.2vw,61px)/1.07 "Manrope";letter-spacing:-2.5px;margin:0}.login-words p{margin:18px 0 0;color:#c8c8c5;line-height:1.65;font-size:14px;max-width:440px}.login-points{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:40px;max-width:430px}.login-points div{display:flex;align-items:center;gap:8px;color:#d8d8d5;font-size:11px}.login-points span{width:21px;height:21px;display:grid;place-items:center;border-radius:6px;background:rgba(255,255,255,.1);color:var(--yellow)}.login-points svg{width:13px}.login-panel{background:#fff;display:grid;place-items:center;padding:35px}.login-form{width:min(360px,100%)}.login-form h2{font:800 28px "Manrope";letter-spacing:-1px;margin:0}.login-form>p{color:var(--muted);font-size:12px;margin:8px 0 30px}.login-form .form-field{margin-bottom:15px}.password-wrap{position:relative}.password-wrap input{padding-right:34px}.password-toggle{position:absolute;right:7px;top:50%;transform:translateY(-50%);border:0;background:transparent;color:var(--muted);padding:5px}.login-submit{width:100%;margin-top:8px;min-height:42px}.login-demo{margin-top:19px;padding:11px;background:#fff9df;border-radius:7px;color:#665314;font-size:10px;line-height:1.55}.login-demo strong{display:block}.login-footer{color:#9c9da0;font-size:10px;text-align:center;margin-top:35px}.dark {--ink:#ececeb;--ink-2:#e0e0de;--muted:#9c9da2;--line:#343538;--soft:#1e1f21;--paper:#292a2d}.dark body,.dark{background:#1e1f21}.dark .sidebar,.dark .topbar,.dark .card,.dark .data-card,.dark .metric,.dark .record-icon,.dark .filter-button,.dark .secondary-button,.dark .icon-button,.dark .pagination-buttons button,.dark .work-ticket,.dark .modal,.dark .form-field input,.dark .form-field select,.dark .form-field textarea{background:#292a2d}.dark .topbar{background:rgba(41,42,45,.9)}.dark .search,.dark .board-column{background:#242528}.dark .data-table th{background:#252629}.dark .data-table td{border-color:#36373a;color:#d4d4d1}.dark .data-table tr:hover td{background:#2d2e31}.dark .status.concluida,.dark .status.entregue{background:#37383c}.dark .donut::after{background:#292a2d}.dark .help-card{background:#151618}.dark .login-panel{background:#292a2d}.dark .login-form h2{color:#efefed}.dark .login-demo{background:#3d351e;color:#f2db8e}.dark .signature-box{background:#242528}
@keyframes fade {from{opacity:0}to{opacity:1}}@keyframes rise{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(max-width:1100px){.metrics{grid-template-columns:repeat(2,1fr)}.dashboard-grid,.schedule-grid,.settings-grid{grid-template-columns:1fr}.sidebar{width:225px}.main{margin-left:225px}.content{padding:24px}.topbar{padding:14px 24px}}
@media(max-width:760px){.sidebar{transform:translateX(-100%);width:258px;box-shadow:15px 0 30px rgba(0,0,0,.14)}.sidebar.open{transform:translateX(0)}.main{margin-left:0}.mobile-menu{display:block}.topbar{padding:12px 16px;min-height:62px}.content{padding:20px 16px 35px}.search{width:auto;flex:1}.shortcut{display:none}.page-intro{margin-bottom:18px}.date-chip{display:none}.metrics{grid-template-columns:1fr 1fr;gap:9px}.metric{padding:13px;min-height:103px}.metric-number{font-size:24px;margin-top:12px}.dashboard-grid{gap:12px;margin-top:12px}.card{padding:15px}.donut-wrap{gap:12px}.donut{width:94px;height:94px;flex-basis:94px}.donut::after{inset:16px}.donut-center strong{font-size:18px}.toolbar-spacer{display:none}.toolbar .search{min-width:100%;order:-1}.page-intro .primary-button{padding:0 10px}.page-intro .primary-button span{display:none}.report-grid{grid-template-columns:1fr}.login-screen{grid-template-columns:1fr}.login-aside{display:none}.login-panel{min-height:100vh;padding:25px}.form-grid{grid-template-columns:1fr}.form-field.full{grid-column:auto}.top-actions .icon-button:nth-child(2){display:none}.notifications{right:12px;top:58px}.work-board{margin-right:-16px;padding-right:16px}.help-card{display:none}}
@media(max-width:400px){.metrics{grid-template-columns:1fr}.top-actions{gap:4px}.top-actions .icon-button{width:34px;height:34px}.page-title{font-size:23px}.page-intro{align-items:center}.page-intro .page-subtitle{display:none}}

/* Navegação e ações acessíveis em ecrãs pequenos. */
.sidebar-brand-row { display: flex; align-items: flex-start; justify-content: space-between; }
.sidebar-brand-row .brand { flex: 1; }
.sidebar-mobile-close, .sidebar-backdrop { display: none; }
.notification { width: 100%; border: 0; background: transparent; text-align: left; color: inherit; cursor: pointer; }
.notification:hover { background: #fafaf7; border-radius: 7px; }
.notification span { min-width: 0; }
.dark .notification:hover { background: #323337; }
.delete-user { color: var(--red); }
.delete-user:hover { color: #bd3040; background: #ffeaed; }

@media(max-width:760px) {
  .mobile-menu { display: inline-flex; align-items: center; gap: 5px; min-height: 36px; padding: 0 9px; border-radius: 8px; background: #fff4c2; color: #655000; font-size: 10px; font-weight: 800; }
  .mobile-menu svg { width: 16px; height: 16px; stroke-width: 2.4; }
  .sidebar-mobile-close { display: grid; place-items: center; width: 32px; height: 32px; margin: 1px 5px 0 0; border: 1px solid var(--line); border-radius: 8px; background: var(--paper); color: var(--ink); }
  .sidebar-mobile-close svg { width: 17px; }
  .sidebar-backdrop { display: block; position: fixed; inset: 0; z-index: 19; border: 0; background: rgba(20, 21, 23, .42); opacity: 0; pointer-events: none; transition: opacity .25s ease; }
  .sidebar.open + .sidebar-backdrop { opacity: 1; pointer-events: auto; }
  .top-actions .icon-button:first-child { display: none; }
  .top-actions .icon-button:nth-child(2) { display: grid; }
}
