:root{--bg-primary:#f5f7fa;--bg-secondary:#eaecf1;--bg-card:#fff;--bg-card-hover:#f9fafb;--text-primary:#152137;--text-secondary:#626d84;--text-muted:#9da3af;--primary:#192743;--primary-hover:#111a2c;--primary-light:#dee3ed;--accent:#a6873f;--accent-hover:#866b2d;--accent-light:#f5efe0;--border:#d3d7de;--border-focus:#a6873f;--shadow-sm:0 2px 8px #0f172a0a;--shadow-md:0 4px 20px #0f172a14;--shadow-lg:0 12px 30px #0f172a1f;--radius-sm:6px;--radius-md:12px;--radius-lg:20px;--font-serif:"Cormorant Garamond", Georgia, serif;--font-sans:"Inter", system-ui, -apple-system, sans-serif;--success:#196636;--success-light:#e7f9ed;--error:#9c1616;--error-light:#fbe4e4;--warning:#9c6b16;--warning-light:#fbf3e4}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background-color:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;min-height:100vh;line-height:1.6;transition:background-color .3s,color .3s}h1,h2,h3,h4{font-family:var(--font-serif);letter-spacing:-.01em;font-weight:600}a{color:var(--accent);text-decoration:none;transition:color .2s}a:hover{color:var(--accent-hover)}button,input,select,textarea{font-family:inherit;font-size:inherit}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:var(--radius-sm)}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.animate-fade{animation:.4s cubic-bezier(.16,1,.3,1) forwards fadeIn}.card{background-color:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:1.5rem;transition:transform .25s,box-shadow .25s,border-color .25s}.card:hover{box-shadow:var(--shadow-md);border-color:var(--accent);transform:translateY(-2px)}.input-field{border-radius:var(--radius-sm);border:1px solid var(--border);background-color:var(--bg-card);width:100%;color:var(--text-primary);outline:none;padding:.75rem 1rem;transition:border-color .2s,box-shadow .2s}.input-field:focus{border-color:var(--border-focus);box-shadow:0 0 0 2px var(--accent-light)}.btn-primary{background-color:var(--primary);color:var(--bg-card);border:1px solid var(--accent);border-radius:var(--radius-sm);cursor:pointer;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-weight:500;transition:background-color .2s,transform .1s,box-shadow .2s;display:inline-flex}.btn-primary:hover{background-color:var(--primary-hover);box-shadow:0 4px 12px #2a2d3033}.btn-secondary{color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;background-color:#0000;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-weight:500;transition:background-color .2s,border-color .2s;display:inline-flex}.btn-secondary:hover{background-color:var(--bg-secondary);border-color:var(--text-secondary)}.app-container{grid-template-columns:260px 1fr;height:100vh;display:grid;overflow:hidden}@media (max-width:900px){.app-container{grid-template-columns:1fr;height:auto;overflow:auto}}.sidebar{border-right:1px solid var(--border);color:var(--text-primary);background-color:#f4f5f8;flex-direction:column;justify-content:space-between;height:100vh;padding:2rem 1.5rem;display:flex;overflow-y:auto}@media (max-width:900px){.sidebar{border-right:none;border-bottom:1px solid var(--border);height:auto;overflow-y:visible}}.sidebar-title{font-family:var(--font-serif);color:var(--primary);letter-spacing:.05em;text-align:center;border-bottom:1px solid var(--border);margin-bottom:2rem;padding-bottom:1rem;font-size:1.5rem}.sidebar-menu{flex-direction:column;gap:.5rem;list-style:none;display:flex}.sidebar-link{color:var(--text-secondary);border-radius:var(--radius-sm);align-items:center;gap:.75rem;padding:.75rem 1rem;transition:all .2s;display:flex}.sidebar-link:hover,.sidebar-link.active{background-color:var(--accent-light);color:var(--accent);font-weight:600}.main-content{height:100vh;padding:2rem;overflow-y:auto}@media (max-width:900px){.main-content{height:auto;overflow-y:visible}}.timeline{justify-content:space-between;margin-bottom:2.5rem;padding:1rem 0;display:flex;position:relative;overflow-x:auto}.timeline:before{content:"";background-color:var(--border);z-index:1;height:2px;position:absolute;top:50%;left:5%;right:5%;transform:translateY(-50%)}.timeline-step{z-index:2;background-color:var(--bg-primary);cursor:pointer;flex-direction:column;align-items:center;min-width:100px;padding:0 10px;display:flex;position:relative}.timeline-node{background-color:var(--bg-card);border:2px solid var(--border);width:30px;height:30px;color:var(--text-muted);border-radius:50%;justify-content:center;align-items:center;font-size:.85rem;font-weight:700;transition:all .3s;display:flex}.timeline-step.active .timeline-node{border-color:var(--accent);background-color:var(--accent);color:var(--bg-card);box-shadow:0 0 0 4px var(--accent-light)}.timeline-step.completed .timeline-node{border-color:var(--primary);background-color:var(--primary-light);color:var(--primary)}.timeline-label{color:var(--text-secondary);text-align:center;white-space:nowrap;margin-top:.5rem;font-size:.75rem;font-weight:500}.timeline-step.active .timeline-label{color:var(--text-primary);font-weight:600}.chat-container{background-color:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);flex-direction:column;height:600px;display:flex;overflow:hidden}.chat-messages-scroll{background-color:#fcfcfd;flex-direction:column;flex:1;gap:1.25rem;padding:1.5rem;display:flex;overflow-y:auto}.chat-bubble-wrapper{flex-direction:column;max-width:80%;display:flex}.chat-bubble-wrapper.user{align-self:flex-end}.chat-bubble-wrapper.ai{align-self:flex-start}.chat-bubble{border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:.85rem 1.15rem;font-size:.925rem;line-height:1.5;position:relative}.chat-bubble-wrapper.user .chat-bubble{background-color:var(--primary);color:var(--bg-card);border:1px solid var(--primary);border-bottom-right-radius:2px}.chat-bubble-wrapper.ai .chat-bubble{background-color:var(--bg-card);color:var(--text-primary);border:1px solid var(--border);border-bottom-left-radius:2px}.chat-sender-label{text-transform:uppercase;letter-spacing:.05em;opacity:.8;margin-bottom:.25rem;font-size:.7rem;font-weight:600;display:block}.chat-bubble-wrapper.user .chat-sender-label{color:var(--accent);text-align:right}.chat-bubble-wrapper.ai .chat-sender-label{color:var(--text-secondary)}.chat-suggestions{background-color:var(--bg-secondary);border-top:1px solid var(--border);flex-wrap:wrap;gap:.5rem;padding:.75rem 1.25rem;display:flex}.suggestion-chip{background-color:var(--bg-card);border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;border-radius:50px;padding:.4rem .85rem;font-size:.8rem;font-weight:500;transition:all .2s}.suggestion-chip:hover{background-color:var(--accent-light);border-color:var(--accent);color:var(--accent)}.chat-input-area{background-color:var(--bg-card);border-top:1px solid var(--border);align-items:center;gap:.75rem;padding:1rem 1.25rem;display:flex}.chat-input{flex:1;font-size:.9rem;border-radius:24px!important}.btn-send-chat{background-color:var(--accent);width:42px;height:42px;color:var(--bg-card);cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;transition:all .2s;display:flex}.btn-send-chat:hover:not(:disabled){background-color:var(--accent-hover);transform:scale(1.05)}.btn-send-chat:disabled{background-color:var(--border);color:var(--text-muted);cursor:not-allowed}.typing-dots{align-items:center;gap:4px;padding:.4rem 0;display:flex}.typing-dots span{background-color:var(--text-muted);border-radius:50%;width:6px;height:6px;animation:1.4s ease-in-out infinite both typingBounce}.typing-dots span:first-child{animation-delay:-.32s}.typing-dots span:nth-child(2){animation-delay:-.16s}@keyframes typingBounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}.badge-deadline{text-transform:uppercase;letter-spacing:.03em;border-radius:4px;align-items:center;padding:.25rem .6rem;font-size:.7rem;font-weight:600;line-height:1;display:inline-flex}.badge-deadline.safe{background-color:var(--success-light);color:var(--success);border:1px solid #c2f0d3}.badge-deadline.urgent{background-color:var(--warning-light);color:var(--warning);border:1px solid #f5e0bc}.badge-deadline.overdue{background-color:var(--error-light);color:var(--error);border:1px solid #f5bcbc}.case-card.border-overdue{border-left:4px solid var(--error)!important}.case-card.border-urgent{border-left:4px solid var(--warning)!important}
