*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--color-bg:#f4f3f1;--color-surface:#fff;--color-primary:#ef7d00;--color-primary-hover:#d4700a;--color-primary-light:#fff3e0;--color-text:#1a1a1a;--color-text-muted:#6b6b6b;--color-border:#e0ddd9;--color-topbar:#1f1e1c;--color-danger:#dc2626;--color-danger-light:#fef2f2;--color-success:#16a34a;--color-success-light:#f0fdf4;--radius:10px;--radius-sm:6px;--shadow:0 1px 3px #00000014, 0 1px 2px #0000000a;--shadow-md:0 4px 6px #00000012, 0 2px 4px #0000000d}body{background:var(--color-bg);color:var(--color-text);min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.5}a{color:var(--color-primary);text-decoration:none}button{cursor:pointer;font-family:inherit}.login-wrapper{background:linear-gradient(135deg,#c96800 0%,#ef7d00 50%,#f59332 100%);justify-content:center;align-items:center;min-height:100vh;padding:1rem;display:flex}.login-card{background:var(--color-surface);border-radius:var(--radius);box-shadow:var(--shadow-md);width:100%;max-width:400px;padding:2.5rem}.login-logo{width:auto;height:72px;margin-bottom:1.25rem;display:block}.login-card h1{color:var(--color-text);margin-bottom:.25rem;font-size:1.25rem;font-weight:700;line-height:1.3}.login-card .subtitle{color:var(--color-text-muted);margin-bottom:1.75rem;font-size:.875rem}.field{margin-bottom:1rem}.field label{color:var(--color-text);margin-bottom:.375rem;font-size:.875rem;font-weight:500;display:block}.field input{border:1px solid var(--color-border);border-radius:var(--radius-sm);width:100%;color:var(--color-text);background:var(--color-surface);outline:none;padding:.625rem .875rem;font-family:inherit;font-size:.9375rem;transition:border-color .15s,box-shadow .15s}.field input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #ef7d0026}.field input::placeholder{color:#bbb9b5}#login-form button[type=submit]{background:var(--color-primary);color:#fff;border-radius:var(--radius-sm);border:none;width:100%;margin-top:.5rem;padding:.75rem;font-size:.9375rem;font-weight:600;transition:background .15s,opacity .15s}#login-form button[type=submit]:hover:not(:disabled){background:var(--color-primary-hover)}#login-form button[type=submit]:disabled{opacity:.6;cursor:not-allowed}.dashboard{flex-direction:column;min-height:100vh;display:flex}.topbar{background:var(--color-topbar);color:#fff;z-index:10;justify-content:space-between;align-items:center;height:56px;padding:0 1.5rem;display:flex;position:sticky;top:0;box-shadow:0 2px 4px #0003}.topbar-title{letter-spacing:-.01em;color:#fff;font-size:1rem;font-weight:700}.topbar-title span{color:var(--color-primary)}#logout-btn{color:#d1cfc9;border-radius:var(--radius-sm);background:#ffffff14;border:1px solid #ffffff26;padding:.375rem .875rem;font-size:.875rem;font-weight:500;transition:background .15s,color .15s}#logout-btn:hover{color:#fff;background:#ffffff26}.main-content{flex:1;width:100%;max-width:960px;margin:0 auto;padding:2rem 1.5rem}.main-content h2{color:var(--color-text);margin-bottom:1.25rem;font-size:1.125rem;font-weight:600}.workspace-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1rem;display:grid}.workspace-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow);cursor:pointer;flex-direction:column;gap:.5rem;padding:1.25rem 1.5rem;transition:box-shadow .15s,transform .15s,border-color .15s;display:flex}.workspace-card:hover{box-shadow:var(--shadow-md);border-color:var(--color-primary);transform:translateY(-1px)}.workspace-card h3{color:var(--color-text);font-size:1rem;font-weight:600}.workspace-card p{color:var(--color-text-muted);flex:1;font-size:.875rem}.badge{text-transform:uppercase;letter-spacing:.04em;background:var(--color-primary-light);color:var(--color-primary);border-radius:99px;align-self:flex-start;padding:.2rem .6rem;font-size:.75rem;font-weight:600;display:inline-block}.badge-editor{background:var(--color-success-light);color:var(--color-success)}.badge-viewer{color:var(--color-text-muted);background:#f0efed}.topbar-left{align-items:center;gap:.5rem;display:flex}.btn-back{color:#ffffffb3;border-radius:var(--radius-sm);background:0 0;border:none;padding:.25rem .5rem;font-size:.875rem;font-weight:500;transition:color .15s,background .15s}.btn-back:hover{color:#fff;background:#ffffff1a}.topbar-sep{color:#ffffff4d;font-size:.875rem}.section-header{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.25rem;display:flex}.section-header h2{margin-bottom:0;font-size:1.125rem;font-weight:600}.section-desc{color:var(--color-text-muted);margin-top:.25rem;font-size:.875rem}.btn-primary{background:var(--color-primary);color:#fff;border-radius:var(--radius-sm);white-space:nowrap;border:none;padding:.5rem 1rem;font-size:.875rem;font-weight:600;transition:background .15s}.btn-primary:hover{background:var(--color-primary-hover)}.btn-secondary{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:background .15s,border-color .15s}.btn-secondary:hover{background:var(--color-bg);border-color:#ccc}.project-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem;display:grid}.project-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow);cursor:pointer;flex-direction:column;gap:.5rem;padding:1.25rem 1.5rem;transition:box-shadow .15s,transform .15s,border-color .15s;display:flex}.project-card:hover{box-shadow:var(--shadow-md);border-color:var(--color-primary);transform:translateY(-1px)}.project-card-header{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.project-card-header h3{color:var(--color-text);font-size:.9375rem;font-weight:600;line-height:1.3}.project-desc{color:var(--color-text-muted);flex:1;font-size:.875rem;line-height:1.5}.project-card-footer{flex-wrap:wrap;align-items:center;gap:.625rem;margin-top:.25rem;display:flex}.project-date{color:var(--color-text-muted);font-size:.75rem}.muted{color:var(--color-border);font-style:italic}.badge-status-rascunho{color:var(--color-text-muted);background:#f0efed}.badge-status-em_planejamento{background:var(--color-primary-light);color:var(--color-primary)}.badge-status-em_execucao{background:var(--color-success-light);color:var(--color-success)}.badge-status-encerrado{color:#555;background:#e8e8e8}.badge-status-suspenso{background:var(--color-danger-light);color:var(--color-danger)}.badge-pmbok{color:#1a5fa8;background:#e8f1fb}.empty-state{text-align:center;color:var(--color-text-muted);flex-direction:column;align-items:center;gap:1rem;padding:3rem 1rem;display:flex}.empty-state p{font-size:.9375rem}.form-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow);max-width:640px;padding:2rem}.form-card h2{margin-bottom:1.5rem;font-size:1.125rem;font-weight:700}.field-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.field textarea,.field select{border:1px solid var(--color-border);border-radius:var(--radius-sm);width:100%;color:var(--color-text);background:var(--color-surface);outline:none;padding:.625rem .875rem;font-family:inherit;font-size:.9375rem;transition:border-color .15s,box-shadow .15s}.field textarea{resize:vertical;line-height:1.5}.field textarea:focus,.field select:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #ef7d0026}.form-actions{justify-content:flex-end;gap:.75rem;margin-top:1.5rem;display:flex}.loading{text-align:center;color:var(--color-text-muted);padding:2rem;font-size:.9375rem}.error{color:var(--color-danger);background:var(--color-danger-light);border-radius:var(--radius-sm);margin-top:.5rem;padding:.5rem .75rem;font-size:.875rem}.hidden{display:none}
