:root{--bg:#f5f7fb;--surface:#fff;--surface-2:#f9fafc;--text:#172033;--muted:#6f7890;--faint:#9da5b7;--line:#e6e9f0;--primary:#3157d5;--primary-soft:#eef2ff;--green:#16866b;--red:#d14747;--amber:#d5941d;--shadow:0 12px 35px rgba(30,45,80,.08);--radius:16px}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--text);background:var(--bg)}button,input,textarea,select{font:inherit}.hidden{display:none!important}button{cursor:pointer}.shell{min-height:100vh;display:grid;grid-template-columns:250px 1fr;grid-template-rows:72px 1fr}.sidebar{position:fixed;inset:0 auto 0 0;width:250px;background:var(--surface);border-right:1px solid var(--line);padding:22px 16px;display:flex;flex-direction:column;z-index:20}.brand{display:flex;align-items:center;gap:11px;padding:0 8px 26px}.brand strong{font-size:15px;display:block}.brand span{font-size:11px;color:var(--muted)}.brand-mark{width:56px;height:56px;border-radius:18px;background:linear-gradient(145deg,#3157d5,#6d8aff);color:#fff;display:grid;place-items:center;font-weight:800;box-shadow:0 12px 28px rgba(49,87,213,.28)}.brand-mark.small{width:39px;height:39px;border-radius:12px;font-size:13px}.sidebar nav{display:flex;flex-direction:column;gap:5px}.sidebar nav a{display:flex;align-items:center;gap:12px;padding:12px 13px;border-radius:11px;color:#5d667b;text-decoration:none;font-size:13.5px;font-weight:550}.sidebar nav a i{font-style:normal;width:19px;text-align:center;font-size:17px}.sidebar nav a:hover{background:var(--surface-2);color:var(--text)}.sidebar nav a.active{background:var(--primary-soft);color:var(--primary)}.sidebar-foot{margin-top:auto;border-top:1px solid var(--line);padding-top:14px}.user-button{border:0;background:none;width:100%;display:flex;align-items:center;gap:10px;text-align:left;padding:7px}.user-button>span:first-child{width:34px;height:34px;border-radius:50%;background:#172033;color:#fff;display:grid;place-items:center;font-weight:700}.user-button strong,.user-button small{display:block}.user-button small{color:var(--muted);margin-top:2px}.topbar{grid-column:2;position:sticky;top:0;height:72px;background:rgba(245,247,251,.88);backdrop-filter:blur(14px);display:flex;align-items:center;padding:0 30px;z-index:15}.crumb{font-size:13px;color:var(--muted);font-weight:600}.top-actions{margin-left:auto;display:flex;gap:7px}.icon-button{position:relative;border:1px solid var(--line);background:var(--surface);width:39px;height:39px;border-radius:11px;color:var(--muted)}.icon-button:hover{color:var(--primary);border-color:#cfd7f2}.icon-button.menu{display:none}.notify-badge{position:absolute;right:-4px;top:-5px;background:var(--red);color:#fff;border:2px solid var(--bg);border-radius:10px;min-width:18px;height:18px;font-size:10px;display:grid;place-items:center}.content{grid-column:2;padding:12px 30px 50px;max-width:1600px;width:100%;margin:0 auto}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:12px 0 24px}.page-head h1{font-size:27px;letter-spacing:-.7px;margin:0}.page-head p{color:var(--muted);font-size:13px;margin:6px 0 0}.actions{display:flex;gap:9px;align-items:center}.btn{border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:10px;padding:10px 15px;font-weight:650;font-size:13px}.btn:hover{border-color:#c8cee0}.btn.primary{background:var(--primary);border-color:var(--primary);color:#fff;box-shadow:0 6px 18px rgba(49,87,213,.18)}.btn.danger{color:var(--red)}.btn.ghost{background:transparent}.btn.small{padding:7px 10px;font-size:12px}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 2px 7px rgba(30,45,80,.025)}.empty{padding:45px 20px;text-align:center;color:var(--muted)}.empty strong{display:block;color:var(--text);margin-bottom:5px}.loader{padding:60px;text-align:center;color:var(--muted)}
.login-view{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 20% 15%,#e8edff,transparent 34%),var(--bg);padding:20px}.login-card{width:min(410px,100%);background:var(--surface);border:1px solid var(--line);border-radius:24px;padding:42px;box-shadow:var(--shadow)}.login-card .brand-mark{margin-bottom:24px}.login-card h1{font-size:26px;margin:0}.login-card>p{color:var(--muted);margin:8px 0 28px}.login-card form,.form-grid{display:grid;gap:15px}.login-card label,.field{display:grid;gap:7px;color:#515a6e;font-size:12px;font-weight:650}.login-card input,.input,.field input,.field textarea,.field select{width:100%;border:1px solid var(--line);background:var(--surface);border-radius:10px;padding:11px 12px;color:var(--text);outline:none}.field textarea{resize:vertical;min-height:90px}.login-card input:focus,.field input:focus,.field textarea:focus,.field select:focus{border-color:#8da2eb;box-shadow:0 0 0 3px var(--primary-soft)}.error{color:var(--red);min-height:16px}
.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:20px}.stat{padding:19px}.stat span{font-size:12px;color:var(--muted)}.stat strong{display:block;font-size:25px;margin-top:7px}.week-toolbar{display:flex;align-items:center;gap:8px;padding:14px 16px;border-bottom:1px solid var(--line)}.week-toolbar strong{margin-right:auto;font-size:14px}.week-board{display:grid;grid-template-columns:repeat(7,minmax(150px,1fr));overflow-x:auto;min-height:460px}.day-column{border-right:1px solid var(--line);min-width:150px;padding:12px;background:var(--surface)}.day-column:last-child{border:0}.day-column.drag-over{background:var(--primary-soft)}.day-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:13px}.day-head span{font-size:11px;text-transform:uppercase;color:var(--muted);font-weight:700}.day-head b{width:29px;height:29px;display:grid;place-items:center;border-radius:9px;font-size:13px}.day-column.today .day-head b{background:var(--primary);color:#fff}.task-card{border:1px solid var(--line);background:var(--surface-2);border-radius:11px;padding:10px;margin-bottom:8px;cursor:pointer}.task-card:hover{border-color:#cbd3ea;transform:translateY(-1px)}.task-card.dragging{opacity:.45}.task-card strong{display:block;font-size:12.5px;line-height:1.35}.task-meta{display:flex;gap:5px;align-items:center;color:var(--muted);font-size:10.5px;margin-top:7px}.priority-bar{width:4px;height:30px;border-radius:4px;float:left;margin-right:8px}.priority-high{background:var(--red)}.priority-medium{background:var(--amber)}.priority-low{background:#8ba0bb}.unscheduled{margin-top:16px;padding:16px}.unscheduled-list{display:flex;gap:8px;overflow:auto;padding-top:10px}.unscheduled .task-card{min-width:190px}
.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.entity-card{padding:20px;transition:.15s;cursor:pointer}.entity-card:hover{transform:translateY(-2px);box-shadow:var(--shadow);border-color:#d5daea}.entity-card-head{display:flex;align-items:center;gap:12px}.entity-logo{width:44px;height:44px;border-radius:13px;background:var(--primary-soft);color:var(--primary);display:grid;place-items:center;font-weight:800;overflow:hidden}.entity-logo img{width:100%;height:100%;object-fit:cover}.entity-card h3{font-size:15px;margin:0}.entity-card p{font-size:12px;color:var(--muted);margin:5px 0 0}.entity-card-foot{display:flex;gap:14px;border-top:1px solid var(--line);padding-top:13px;margin-top:18px;color:var(--muted);font-size:11px}.status{padding:4px 8px;border-radius:99px;background:#eaf7f2;color:var(--green);font-size:10px;font-weight:750;margin-left:auto}.status.archived{background:#f0f1f4;color:var(--muted)}
.detail-hero{padding:22px;display:flex;gap:18px;align-items:center;margin-bottom:16px}.detail-logo{width:76px;height:76px;border-radius:20px;background:var(--primary-soft);display:grid;place-items:center;color:var(--primary);font-size:24px;font-weight:800;overflow:hidden}.detail-logo img{width:100%;height:100%;object-fit:cover}.detail-hero h1{margin:0;font-size:25px}.detail-hero p{margin:6px 0 0;color:var(--muted)}.detail-actions{margin-left:auto}.tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);margin:0 0 18px}.tabs button{border:0;background:none;padding:12px 14px;color:var(--muted);font-weight:650;font-size:12px;border-bottom:2px solid transparent}.tabs button.active{color:var(--primary);border-color:var(--primary)}.two-col{display:grid;grid-template-columns:1.3fr .7fr;gap:16px}.section-card{padding:20px}.section-card h2{font-size:15px;margin:0 0 16px}.info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.info-grid div span{display:block;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.4px;margin-bottom:4px}.info-grid div strong{font-size:13px}.palette{display:flex;gap:10px;flex-wrap:wrap}.color-chip{width:90px}.color-swatch{height:48px;border-radius:11px;border:1px solid rgba(0,0,0,.08)}.color-chip small{display:block;margin-top:5px;color:var(--muted)}.file-list,.simple-list{display:grid;gap:8px}.file-row,.simple-row{border:1px solid var(--line);border-radius:11px;padding:11px 12px;display:flex;align-items:center;gap:10px}.file-row>span,.simple-row>span{min-width:0;flex:1}.file-row strong,.simple-row strong{font-size:12.5px;display:block;overflow:hidden;text-overflow:ellipsis}.file-row small,.simple-row small{color:var(--muted)}
.project-box{padding:22px}.project-add{display:grid;grid-template-columns:1fr 130px auto;gap:9px;margin-bottom:20px}.project-add textarea{min-height:52px;resize:none}.project-item{display:flex;align-items:flex-start;gap:11px;padding:14px 7px;border-bottom:1px solid var(--line);cursor:grab}.project-item:last-child{border:0}.project-item.dragging{opacity:.4}.project-item .handle{color:var(--faint)}.project-item-content{flex:1;white-space:pre-wrap;font-size:13.5px;line-height:1.5}.priority-pill{font-size:10px;border-radius:99px;padding:4px 8px;font-weight:750}.priority-pill.high{background:#fdecec;color:var(--red)}.priority-pill.medium{background:#fff4dc;color:#a46b00}.priority-pill.low{background:#edf1f6;color:#66758a}.row-actions{display:flex;gap:5px}.row-actions button{border:0;background:none;color:var(--faint)}.row-actions button:hover{color:var(--text)}
.table-wrap{overflow:auto}.data-table{width:100%;border-collapse:collapse}.data-table th{text-align:left;padding:11px 14px;border-bottom:1px solid var(--line);font-size:10px;text-transform:uppercase;color:var(--muted);letter-spacing:.4px}.data-table td{padding:13px 14px;border-bottom:1px solid var(--line);font-size:12.5px}.data-table tr:hover td{background:var(--surface-2)}.check{width:18px;height:18px}.filters{display:flex;gap:8px;margin-bottom:14px}.filters input,.filters select{border:1px solid var(--line);background:var(--surface);border-radius:9px;padding:9px 11px}
.modal-overlay{position:fixed;inset:0;background:rgba(26,34,52,.34);backdrop-filter:blur(3px);display:grid;place-items:center;padding:20px;z-index:60}.modal{background:var(--surface);width:min(590px,100%);max-height:90vh;overflow:auto;border-radius:20px;box-shadow:0 30px 80px rgba(20,30,55,.22);padding:24px}.modal.wide{width:min(850px,100%)}.modal-head{display:flex;align-items:center;margin-bottom:19px}.modal-head h2{font-size:18px;margin:0}.modal-close,.drawer-head button{margin-left:auto;border:0;background:none;font-size:23px;color:var(--muted)}.modal-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:20px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.checkbox{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--muted)}.toast-root{position:fixed;right:20px;bottom:20px;z-index:100;display:grid;gap:8px}.toast{background:#172033;color:#fff;border-radius:11px;padding:12px 15px;box-shadow:var(--shadow);font-size:12.5px}.drawer{position:fixed;right:0;top:0;bottom:0;width:min(390px,100%);background:var(--surface);box-shadow:-20px 0 50px rgba(20,30,55,.13);z-index:55;padding:20px;overflow:auto}.drawer-head{display:flex;align-items:center;border-bottom:1px solid var(--line);padding-bottom:14px}.notification-row{padding:14px 4px;border-bottom:1px solid var(--line)}.notification-row strong{font-size:12.5px}.notification-row p{font-size:12px;color:var(--muted);margin:5px 0}.notification-row.unread{border-left:3px solid var(--primary);padding-left:10px}
.question-row{border:1px solid var(--line);border-radius:11px;padding:13px;margin-bottom:8px;display:flex;gap:10px;align-items:center}.question-row>div{flex:1}.question-row strong{font-size:12.5px}.question-row small{display:block;color:var(--muted);margin-top:3px}.link-result{background:var(--primary-soft);padding:12px;border-radius:10px;word-break:break-all;font-size:12px}.submission-answer{padding:12px 0;border-bottom:1px solid var(--line)}.submission-answer label{display:block;font-size:11px;color:var(--muted);margin-bottom:5px}.media-preview{max-width:100%;max-height:360px;border-radius:12px}
@media(max-width:1100px){.stats{grid-template-columns:repeat(2,1fr)}.card-grid{grid-template-columns:repeat(2,1fr)}.two-col{grid-template-columns:1fr}.week-board{grid-template-columns:repeat(7,180px)}}
@media(max-width:760px){.shell{display:block}.sidebar{transform:translateX(-102%);transition:.2s;box-shadow:var(--shadow)}body.menu-open .sidebar{transform:none}.topbar{height:62px;padding:0 14px}.icon-button.menu{display:block}.crumb{margin-left:10px}.content{padding:12px 14px 90px}.page-head{align-items:flex-start}.page-head h1{font-size:23px}.page-head .actions{flex-wrap:wrap;justify-content:flex-end}.stats{grid-template-columns:1fr 1fr}.card-grid{grid-template-columns:1fr}.week-board{grid-template-columns:repeat(7,82vw)}.field-row,.info-grid,.project-add{grid-template-columns:1fr}.detail-hero{align-items:flex-start;flex-wrap:wrap}.detail-actions{margin-left:0;width:100%}.tabs{overflow:auto}.login-card{padding:28px}.data-table{min-width:680px}}

/* Integração Dashboard ↔ Projetos */
.task-card{position:relative;padding-right:10px}
.task-check{display:block;width:100%;margin-top:9px;border:1px solid #cbd3df;background:#fff;color:#657187;border-radius:7px;padding:5px 7px;font-size:10.5px;font-weight:700}
.task-check:hover{background:#eaf7f2;border-color:#78bca9;color:var(--green)}
.project-add{grid-template-columns:1fr 120px 140px 110px auto}
.project-item-content small{display:block;color:var(--muted);font-size:11px;margin-top:5px}
@media(max-width:760px){.project-add{grid-template-columns:1fr}}
