*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:linear-gradient(135deg,#f0f4ff,#fef9f0);color:#1a1a2e;min-height:100vh}.app-header{background:linear-gradient(135deg,#ff6b35,#f90,#ffb347);color:#fff;padding:1.25rem 2rem;text-align:center;box-shadow:0 4px 20px #ff6b354d}.app-header h1{font-size:1.4rem;margin-bottom:.2rem;font-weight:700}.app-header p{opacity:.9;font-size:.85rem;font-weight:300}.app-body{display:flex;max-width:1400px;margin:0 auto;padding:1.5rem;gap:1.5rem;height:calc(100vh - 90px)}.main-panel{flex:1;display:flex;flex-direction:column;gap:1rem;min-width:0}.side-panel{width:300px;flex-shrink:0}.chat-window{flex:1;display:flex;flex-direction:column;background:#fff;border-radius:16px;box-shadow:0 4px 24px #0000000f;overflow:hidden;border:1px solid rgba(255,153,0,.1)}.chat-messages{flex:1;overflow-y:auto;padding:1.5rem;display:flex;flex-direction:column;gap:1rem}.message{display:flex;gap:.75rem;max-width:85%;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.message.user{align-self:flex-end;flex-direction:row-reverse}.message-avatar{font-size:1.4rem;flex-shrink:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#f0f4ff}.message.user .message-avatar{background:#fff3e0}.message-content{padding:.85rem 1.1rem;border-radius:16px;line-height:1.6;white-space:pre-wrap;font-size:.9rem}.message.assistant .message-content{background:#f8f9ff;border:1px solid #e8ecff;color:#2d3748}.message.user .message-content{background:linear-gradient(135deg,#ff6b35,#f90);color:#fff;border:none}.typing{opacity:.6;font-style:italic}.chat-input{display:flex;padding:1rem 1.25rem;border-top:1px solid #f0f2f5;gap:.75rem;background:#fafbfc}.chat-input input{flex:1;padding:.85rem 1.1rem;border:2px solid #e8ecf0;border-radius:12px;font-size:.9rem;outline:none;transition:border-color .2s}.chat-input input:focus{border-color:#f90;box-shadow:0 0 0 3px #ff99001a}.chat-input button{padding:.85rem 1.5rem;background:linear-gradient(135deg,#ff6b35,#f90);color:#fff;border:none;border-radius:12px;font-weight:600;cursor:pointer;transition:transform .1s,box-shadow .2s;font-size:.9rem}.chat-input button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #ff6b354d}.chat-input button:disabled{opacity:.4;cursor:not-allowed}.chat-help-hint{text-align:center;padding:.4rem;font-size:.75rem;color:#999;background:#fafbfc;border-top:1px solid #f0f2f5}.progress-tracker{background:#fff;border-radius:16px;padding:1.5rem;box-shadow:0 4px 24px #0000000f;position:sticky;top:1.5rem;border:1px solid rgba(255,153,0,.1)}.progress-tracker h3{margin-bottom:1rem;color:#2d3748;font-size:1rem}.progress-tracker h4{margin:1.25rem 0 .5rem;font-size:.75rem;text-transform:uppercase;color:#8895a7;letter-spacing:.5px}.progress-bar{height:10px;background:#f0f2f5;border-radius:5px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,#ff6b35,#f90,#ffb347);border-radius:5px;transition:width .5s ease}.progress-label{font-size:.8rem;color:#8895a7;margin-top:.4rem;display:block;font-weight:500}.status-badge{margin-top:1rem;padding:.6rem .75rem;border-radius:8px;font-size:.8rem;font-weight:600;text-align:center}.status-gathering{background:#fff8e1;color:#f57c00;border:1px solid #ffe0b2}.status-ready_for_review{background:#e8f5e9;color:#2e7d32;border:1px solid #c8e6c9}.status-submitted{background:#e3f2fd;color:#1565c0;border:1px solid #bbdefb}.field-list{list-style:none}.field-list li{display:flex;align-items:center;gap:.5rem;padding:.4rem 0;font-size:.8rem}.field-list .filled{color:#2e7d32}.field-list .empty{color:#bbb}.field-icon{width:1.2rem;text-align:center;font-size:.9rem}.field-value{color:#8895a7;font-size:.7rem;margin-left:auto;max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.summary-panel{background:#fff;border-radius:16px;padding:1.5rem;box-shadow:0 4px 24px #0000000f;border:2px solid #e8f5e9}.summary-panel h3{margin-bottom:1rem;color:#2d3748}.summary-section{margin-bottom:1rem}.summary-section h4{font-size:.75rem;text-transform:uppercase;color:#8895a7;margin-bottom:.3rem;letter-spacing:.5px}.summary-value{font-size:.85rem}.summary-description{font-size:.8rem;background:#f8f9ff;padding:.75rem;border-radius:8px;white-space:pre-wrap;overflow-x:auto;border:1px solid #e8ecff}.summary-table{width:100%;font-size:.8rem;border-collapse:collapse}.summary-table td{padding:.5rem .6rem;border-bottom:1px solid #f0f2f5}.summary-table td:first-child{font-weight:500;width:40%;color:#555}.summary-table input{width:100%;padding:.4rem;border:1px solid #e8ecf0;border-radius:6px}.summary-actions{display:flex;gap:.5rem;margin-top:1.25rem;flex-wrap:wrap}.summary-actions button{padding:.65rem 1.1rem;border:none;border-radius:8px;font-weight:600;cursor:pointer;font-size:.8rem;transition:transform .1s}.summary-actions button:hover{transform:translateY(-1px)}.btn-generate{width:100%;padding:.85rem;background:linear-gradient(135deg,#43a047,#66bb6a);color:#fff;border:none;border-radius:12px;font-size:.95rem;font-weight:600;cursor:pointer;margin-top:.5rem;box-shadow:0 4px 12px #43a04733}.btn-generate:hover{transform:translateY(-1px);box-shadow:0 6px 16px #43a0474d}.btn-submit{background:linear-gradient(135deg,#ff6b35,#f90);color:#fff;box-shadow:0 4px 12px #ff6b3533}.btn-edit{background:#f0f2f5;color:#555}.btn-save{background:linear-gradient(135deg,#43a047,#66bb6a);color:#fff}.btn-copy{background:#f0f2f5;color:#555}.summary-panel.submitted{border-color:#43a047;background:#f8fff9}.success-details{margin-top:1rem}.task-id{font-size:1.1rem;margin-bottom:.5rem}.task-id .label{color:#666;margin-right:.5rem}.btn-task-link{display:inline-block;background:linear-gradient(135deg,#ff6b35,#f90);color:#fff;padding:.75rem 1.5rem;border-radius:8px;text-decoration:none;font-weight:600;margin:.75rem 0;box-shadow:0 4px 12px #ff6b3533}.btn-task-link:hover{transform:translateY(-1px);box-shadow:0 6px 16px #ff6b354d}.success-message{color:#555;font-size:.85rem}.email-sent{color:#2e7d32;font-size:.8rem;margin-top:.5rem}.next-steps{margin-top:1rem;background:#f8f9ff;padding:1rem;border-radius:8px;border:1px solid #e8ecff}.next-steps h4{margin-bottom:.5rem;font-size:.85rem;color:#2d3748}.next-steps ul{font-size:.8rem;padding-left:1.2rem}.next-steps li{margin-bottom:.3rem}.email-section{margin-top:1rem}.email-input{width:100%;padding:.7rem .85rem;border:2px solid #e8ecf0;border-radius:8px;font-size:.85rem;transition:border-color .2s}.email-input:focus{border-color:#f90;outline:none;box-shadow:0 0 0 3px #ff99001a}.resume-banner{background:linear-gradient(135deg,#e3f2fd,#f3e5f5);border:1px solid #bbdefb;border-radius:12px;padding:1.25rem;margin-bottom:1rem;text-align:center}.resume-banner p{font-size:.9rem;color:#1565c0;margin-bottom:.75rem;font-weight:500}.resume-banner button{padding:.6rem 1.25rem;border:none;border-radius:8px;font-weight:600;cursor:pointer;font-size:.85rem;margin:0 .25rem}.btn-resume{background:linear-gradient(135deg,#1565c0,#42a5f5);color:#fff}.btn-new{background:#f0f2f5;color:#555}@media(max-width:900px){.app-body{flex-direction:column;height:auto}.side-panel{width:100%}}.login-screen{background:#fff;border-radius:16px;padding:3rem 2rem;box-shadow:0 4px 24px #0000000f;text-align:center;max-width:400px;margin:10vh auto}.login-icon{font-size:3rem;margin-bottom:1rem}.login-screen h2{color:#2d3748;margin-bottom:.5rem}.login-screen p{color:#8895a7;font-size:.9rem;margin-bottom:1.5rem}.login-screen form{display:flex;gap:.5rem}.login-input{flex:1;padding:.85rem 1rem;border:2px solid #e8ecf0;border-radius:10px;font-size:.95rem;outline:none;text-align:center;letter-spacing:2px}.login-input:focus{border-color:#f90;box-shadow:0 0 0 3px #ff99001a}.login-button{padding:.85rem 1.5rem;background:linear-gradient(135deg,#ff6b35,#f90);color:#fff;border:none;border-radius:10px;font-weight:600;cursor:pointer;font-size:.95rem}.login-button:hover{transform:translateY(-1px);box-shadow:0 4px 12px #ff6b354d}.login-error{color:#e53e3e;font-size:.85rem;margin-top:.75rem}.btn-back{background:none;border:none;color:#ff6b35;font-weight:600;cursor:pointer;font-size:.9rem;padding:.5rem 0}.btn-back:hover{text-decoration:underline}.btn-download{background:#e3f2fd;color:#1565c0}.btn-download:hover{background:#bbdefb}.btn-download-inline{width:100%;padding:.6rem;background:#e3f2fd;color:#1565c0;border:1px solid #bbdefb;border-radius:8px;font-size:.85rem;font-weight:500;cursor:pointer;text-align:center}.btn-download-inline:hover{background:#bbdefb}.tpsa-actions{display:flex;gap:.5rem}.tpsa-actions button{flex:1}.btn-submit-inline{padding:.6rem;background:#e8f5e9;color:#2e7d32;border:1px solid #c8e6c9;border-radius:8px;font-size:.85rem;font-weight:500;cursor:pointer;text-align:center}.btn-submit-inline:hover{background:#c8e6c9}.confirmation-summary{margin:1rem 0;background:#f8f9ff;padding:1rem;border-radius:8px;border:1px solid #e8ecff}.confirmation-summary h4{margin-bottom:.5rem;font-size:.85rem;color:#2d3748}.subtasks-info{margin:1rem 0}.subtasks-info h4{margin-bottom:.5rem;font-size:.85rem;color:#2d3748}.subtasks-info ul{font-size:.85rem;padding-left:1.2rem}.subtasks-info li{margin-bottom:.3rem}.action-required{margin:1rem 0;background:#fff3e0;padding:1rem;border-radius:8px;border:1px solid #ffe0b2}.action-required h4{margin-bottom:.4rem;font-size:.85rem;color:#e65100}.action-required p{font-size:.85rem;color:#333}.contact-info{margin-top:1rem;font-size:.8rem;color:#666}.contact-info a{color:#1565c0}
