:root{--kenkyo-red:#e63946;--kenkyo-red-dark:#c1121f;--kenkyo-gradient:linear-gradient(135deg, #e63946 0%, #ff5a5a 100%);--kenkyo-dark-gradient:linear-gradient(135deg, #0f1419 0%, #1a1f2a 100%);--bg:#0f1419;--surface:#1a1f2a;--text:#fff;--text-muted:#b0b5be;--border:#2a2e3a;--success:#22c55e;--success-bg:#22c55e26;--danger:#ff6b6b;--danger-bg:#ff6b6b26;--warning:#fbbf24;--warning-bg:#fbbf2426;--info:#60a5fa;--info-bg:#60a5fa26}*{box-sizing:border-box;margin:0;padding:0}html,body{max-width:100vw;overflow-x:hidden}body{background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6}a{color:inherit;text-decoration:none}button{font-family:inherit}.login-container{background:var(--kenkyo-dark-gradient);justify-content:center;align-items:center;min-height:100vh;display:flex}.login-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;width:100%;max-width:400px;padding:40px;box-shadow:0 10px 40px #0000004d}.login-logo{object-fit:contain;margin-bottom:16px;display:block}.login-card h1{color:var(--kenkyo-red);margin-bottom:10px;font-size:28px;font-weight:800}.login-card p{color:var(--text-muted);margin-bottom:30px;font-size:14px}.login-error{color:var(--danger);margin-bottom:16px;font-size:13px}.form-group{margin-bottom:20px}.form-group label{color:var(--text);margin-bottom:8px;font-size:14px;font-weight:600;display:block}.form-group select,.form-group input,.form-group textarea{border:2px solid var(--border);border-radius:8px;width:100%;padding:12px;font-family:inherit;font-size:14px;transition:border-color .3s}.form-group select:focus,.form-group input:focus,.form-group textarea:focus{border-color:var(--kenkyo-red);outline:none}.btn-login{background:var(--kenkyo-gradient);color:#fff;cursor:pointer;border:none;border-radius:8px;width:100%;padding:12px;font-size:16px;font-weight:700;transition:transform .2s;box-shadow:0 4px 16px #e6394666}.btn-login:hover{transform:translateY(-2px)}.btn-login:active{transform:translateY(0)}.btn-login:disabled{opacity:.7;cursor:not-allowed;transform:none}.app-container{background:var(--bg);flex-direction:column;min-height:100vh;display:flex}.header{background:var(--kenkyo-dark-gradient);border-bottom:1px solid var(--border);color:#fff;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:20px 40px;display:flex}.logo-section{align-items:center;gap:12px;transition:opacity .3s;display:flex}.logo-section:hover{opacity:.8}.logo{object-fit:contain;flex-shrink:0;width:40px;height:40px}.logo-text{font-size:20px;font-weight:800}.header-right{flex-wrap:wrap;align-items:center;gap:20px;display:flex}.user-info{text-align:right}.user-name{color:var(--text);font-size:13px;font-weight:600}.user-role{color:var(--text-muted);font-size:11px}.btn-logout{background:var(--kenkyo-red);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:8px 16px;font-size:12px;font-weight:700;transition:background .3s;box-shadow:0 2px 8px #e6394666}.btn-logout:hover{background:var(--kenkyo-red-dark)}.content{flex-direction:column;flex:1;display:flex}.btn-home{background:var(--surface);color:#fff;border:1px solid var(--border);cursor:pointer;border-radius:6px;padding:8px 16px;font-size:12px;font-weight:700;transition:border-color .3s}.btn-home:hover{border-color:var(--kenkyo-red)}.home-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px;max-width:760px;display:grid}.home-tile{background:var(--surface);border:1px solid var(--border);color:var(--text);border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:32px 16px;font-weight:600;transition:all .3s;display:flex}.home-tile:hover{border-color:var(--kenkyo-red);transform:translateY(-2px);box-shadow:0 8px 24px #e6394633}.home-tile-icon{font-size:40px}.home-tile-label{font-size:15px}.tab-content{flex:1;width:100%;max-width:1200px;margin:0 auto;padding:40px}.tab-content h2{background:linear-gradient(135deg, #fff 0%, var(--kenkyo-red) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:24px;font-size:32px;font-weight:800;display:inline-block}.dashboard-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:40px;display:grid}.card{background:linear-gradient(135deg,#e6394626 0%,#e639460d 100%);border:1px solid #e639464d;border-radius:12px;padding:28px}.card.success{background:linear-gradient(135deg,#22c55e26 0%,#22c55e0d 100%);border-color:#22c55e4d}.card.warning{background:linear-gradient(135deg,#fbbf2426 0%,#fbbf240d 100%);border-color:#fbbf244d}.card.info{background:linear-gradient(135deg,#60a5fa26 0%,#60a5fa0d 100%);border-color:#60a5fa4d}.card h3{color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:12px;font-size:12px;font-weight:700}.card.success h3{color:#4ade80}.card.warning h3{color:#fcd34d}.card.info h3{color:#93c5fd}.card .value{color:var(--danger);margin-bottom:4px;font-size:36px;font-weight:800}.card.success .value{color:var(--success)}.card.warning .value{color:var(--warning)}.card.info .value{color:var(--info)}.card .subtitle{color:var(--text-muted);margin-top:4px;font-size:12px}.ranking-table{border-collapse:collapse;background:var(--surface);border:1px solid var(--border);border-radius:12px;width:100%;overflow:hidden}.ranking-table th{color:var(--text-muted);text-align:left;text-transform:uppercase;letter-spacing:.5px;background:#e639461a;padding:16px;font-size:12px;font-weight:700}.ranking-table td{border-bottom:1px solid var(--border);padding:16px;font-size:13px}.ranking-table tr:last-child td{border-bottom:none}.ranking-table tr:hover td{background:#e639460d}.report-section{background:var(--surface);border:1px solid var(--border);border-radius:12px;margin-bottom:20px;padding:24px}.report-section h3{color:var(--text);margin-bottom:16px;font-size:16px;font-weight:800}.report-item{background:var(--bg);border:1px solid var(--border);border-radius:10px;justify-content:space-between;align-items:center;margin-bottom:12px;padding:16px;display:flex}.document-category{margin-bottom:20px}.document-category:last-child{margin-bottom:0}.document-category h4{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:10px;font-size:12px;font-weight:800}.report-item .user-name{font-weight:700}.report-item .count{color:#ff8a8a;background:#e6394633;border-radius:20px;padding:4px 12px;font-size:11px;font-weight:700}.report-item-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.empty-state{color:var(--text-muted)}.type-selector{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:24px;display:grid}.type-btn{background:var(--surface);color:var(--text-muted);cursor:pointer;border:none;border-radius:10px;padding:14px;font-size:14px;font-weight:700;transition:all .3s}.type-btn.active{background:var(--kenkyo-gradient);color:#fff;box-shadow:0 4px 16px #e6394666}.items-count{color:var(--text-muted);font-size:12px;font-weight:600}.checklist-list{flex-direction:column;gap:12px;display:flex}.checklist-card{background:var(--surface);border:1px solid var(--border);color:var(--text);border-radius:10px;justify-content:space-between;align-items:center;gap:16px;padding:20px;transition:all .3s;display:flex}.checklist-card:hover{border-color:var(--kenkyo-red);transform:translateY(-2px)}.checklist-card h3{margin-bottom:4px;font-size:16px;font-weight:700}.checklist-card p{color:var(--text-muted);font-size:12px}.checklist-card-progress{color:var(--text-muted);white-space:nowrap;font-size:12px;font-weight:700}.checklist-card.done .checklist-card-progress{color:var(--success)}.checklist-block-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.checklist-block-header h3{margin-bottom:4px;font-size:16px;font-weight:700}.checklist-block-header p{color:var(--text-muted);font-size:12px}.btn-pdf{background:var(--kenkyo-gradient);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:8px 14px;font-size:12px;font-weight:700;transition:transform .2s;box-shadow:0 2px 8px #e639464d}.btn-pdf:hover{transform:translateY(-2px)}.checklist-item{background:var(--surface);border:1px solid var(--border);border-radius:10px;flex-direction:column;align-items:flex-start;margin-bottom:12px;padding:16px;transition:all .3s;display:flex}.checklist-item.status-conforme{background:var(--success-bg);border-color:#22c55e4d}.checklist-item.status-nao-conforme{background:var(--danger-bg);border-color:#ff6b6b4d}.checklist-item.status-nao-se-aplica{background:var(--bg);border-color:var(--border)}.item-button-row{flex-wrap:wrap;align-items:center;gap:8px;width:100%;margin-bottom:12px;display:flex}.btn-status{border:1px solid var(--border);cursor:pointer;color:var(--text-muted);background:0 0;border-radius:6px;padding:6px 12px;font-size:12px;font-weight:600;transition:all .2s}.btn-status:hover{border-color:var(--text-muted)}.btn-status-conforme.active{background:var(--success);border-color:var(--success);color:#fff}.btn-status-nao-conforme.active{background:var(--danger);border-color:var(--danger);color:#fff}.btn-status-nao-se-aplica.active{background:var(--text-muted);border-color:var(--text-muted);color:var(--bg)}.requires-photo-badge{color:var(--warning);background:var(--warning-bg);border-radius:12px;padding:4px 8px;font-size:11px;font-weight:700}.item-text{color:var(--text-muted);margin-bottom:8px;font-size:13px}.justification-box{background:var(--warning-bg);border-left:4px solid var(--danger);border-radius:6px;width:100%;padding:12px;font-size:12px}.justification-form{flex-direction:column;gap:8px;width:100%;display:flex}.justification-form textarea{border:2px solid var(--danger);border-radius:6px;width:100%;min-height:70px;padding:8px;font-family:inherit;font-size:13px}.justification-form-buttons{gap:8px;display:flex}.history-item{background:var(--surface);border:1px solid var(--border);border-left:4px solid var(--kenkyo-red);border-radius:10px;margin-bottom:12px;padding:16px}.history-item .date{color:var(--text-muted);font-size:12px}.history-item .title{margin:8px 0;font-weight:700}.history-item-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.history-item-actions{flex-shrink:0;align-items:center;gap:10px;display:flex}.history-item-details{border-top:1px solid var(--border);margin-top:12px;padding-top:12px}.status-pill{border-radius:20px;padding:4px 12px;font-size:11px;font-weight:700;display:inline-block}.status-pill.completed{background:var(--success-bg);color:#4ade80}.status-pill.pending{background:var(--warning-bg);color:#fcd34d}.manage-section{margin-bottom:32px}.manage-section h3{color:var(--text);margin-bottom:16px;font-size:18px;font-weight:800}.btn-add{background:var(--kenkyo-gradient);color:#fff;cursor:pointer;border:none;border-radius:8px;margin-bottom:20px;padding:10px 16px;font-size:14px;font-weight:700;transition:transform .2s;box-shadow:0 2px 8px #e639464d}.btn-add:hover{transform:translateY(-2px)}.list-item{background:var(--surface);border:1px solid var(--border);border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;padding:16px;display:flex}.list-item .info h4{margin-bottom:4px}.list-item .info p{color:var(--text-muted);font-size:12px}.list-item-actions{gap:8px;display:flex}.btn-small{border:1px solid var(--border);background:var(--surface);cursor:pointer;color:var(--text-muted);border-radius:6px;padding:6px 12px;font-size:12px;transition:all .3s}.btn-small:hover{border-color:var(--kenkyo-red);color:var(--kenkyo-red)}.btn-delete{color:var(--danger);border-color:#ff6b6b66}.btn-delete:hover{background:var(--danger-bg);border-color:var(--danger)}.inline-form{background:var(--surface);border:1px solid var(--kenkyo-red);border-radius:12px;margin-bottom:20px;padding:24px}.inline-form h4{margin-bottom:16px;font-weight:800}.inline-form-buttons{justify-content:flex-end;gap:12px;display:flex}.item-editor-row{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:8px;display:flex}.item-editor-row input[type=text],.item-editor-row input[type=date]{border:2px solid var(--border);border-radius:6px;flex:1;min-width:160px;padding:8px;font-family:inherit;font-size:14px}.item-editor-checkbox{color:var(--text-muted);white-space:nowrap;flex-shrink:0;align-items:center;gap:6px;font-size:12px;display:flex}.item-editor-checkbox input{flex-shrink:0;width:auto}.btn-cancel{border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;border-radius:8px;padding:10px 20px;font-weight:700;transition:all .3s}.btn-cancel:hover{border-color:var(--text-muted)}.btn-save{background:var(--kenkyo-gradient);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:10px 20px;font-weight:700;transition:transform .2s;box-shadow:0 2px 8px #e639464d}.btn-save:hover{transform:translateY(-2px)}@media (max-width:768px){.header{flex-direction:column;gap:12px;padding:16px 20px}.tab-content{padding:20px}.dashboard-grid{grid-template-columns:1fr}.ranking-table{font-size:12px}}
