:root{font-family:Inter,Segoe UI,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;line-height:1.5;font-weight:400;color:#f5f7ff;background-color:#05070f;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{margin:0}button{font-family:inherit}:root{--color-noir: #0B0F14;--color-teal-highlight: #2EF2C8;--color-teal-base: #10D2C2;--color-cyan-contrast: #06B6D4;--color-text: #EAFDFC;--color-border: #1A2A2F;--color-surface: rgba(16, 26, 32, .82);--color-surface-strong: rgba(11, 17, 22, .9)}.app-shell{min-height:100vh;background:radial-gradient(circle at top left,rgba(16,210,194,.12),transparent 45%),var(--color-noir);color:var(--color-text);display:flex;align-items:center;justify-content:center;padding:2.75rem;box-sizing:border-box}.auth-card{background:var(--color-surface-strong);border:1px solid rgba(46,242,200,.22);border-radius:36px;padding:3rem;width:min(820px,100%);box-shadow:0 48px 72px #050c108c;display:grid;grid-template-columns:minmax(200px,240px) 1fr;gap:2.25rem;align-items:center}.auth-illustration{display:grid;place-items:center;padding:1.7rem;border-radius:28px;background:radial-gradient(circle at 35% 30%,#2ef2c840,#06b6d41a);border:1px solid rgba(16,210,194,.32);box-shadow:inset 0 0 0 1px #eafdfc0d}.brand-logo{width:120px;max-width:100%;height:auto;filter:drop-shadow(0 16px 28px rgba(16,210,194,.35))}.auth-content{display:flex;flex-direction:column;gap:1.4rem;max-width:360px}.auth-content h1{margin:0;font-size:2rem;letter-spacing:.01em}.auth-form{display:flex;flex-direction:column;gap:1rem}.auth-form label{display:flex;flex-direction:column;font-size:.92rem;gap:.5rem}.auth-form input,.chat-input input,.report-form textarea,.upload-area input[type=file]{background:#091114d1;border:1px solid rgba(6,182,212,.3);border-radius:16px;padding:.85rem 1rem;color:var(--color-text);font-size:1rem;transition:border-color .2s ease,box-shadow .2s ease}.auth-form input:focus,.chat-input input:focus,.report-form textarea:focus{outline:none;border-color:var(--color-teal-highlight);box-shadow:0 0 0 3px #10d2c23d}.primary{background:linear-gradient(135deg,var(--color-teal-base),var(--color-teal-highlight));border:none;color:#021212;font-weight:700;border-radius:18px;padding:.95rem 1.8rem;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.primary:disabled{opacity:.55;cursor:not-allowed}.primary:not(:disabled):hover{transform:translateY(-2px);box-shadow:0 14px 26px #10d2c259}.form-error,.panel-error{color:#ff8a9a;font-size:.9rem}.dashboard{width:min(1200px,100%);display:flex;flex-direction:column;gap:2.4rem}.dashboard-header{background:var(--color-surface);border:1px solid rgba(6,182,212,.22);border-radius:30px;padding:2rem;display:flex;flex-wrap:wrap;justify-content:space-between;gap:1.5rem;align-items:center}.dashboard-identity{display:flex;align-items:center;gap:1.5rem}.dashboard-logo{width:82px;height:auto;filter:drop-shadow(0 12px 32px rgba(16,210,194,.35))}.dashboard-baseline{display:flex;flex-direction:column;gap:.55rem}.greeting{font-size:1rem;color:#eafdfcbf;margin:0}.dashboard-baseline h2{margin:0;font-size:1.8rem;letter-spacing:.01em}.dashboard-baseline p{margin:0;color:#eafdfcb3;max-width:480px;line-height:1.58}.user-badge{background:#0e191ed9;border-radius:20px;padding:1.1rem 1.6rem;display:flex;flex-direction:column;gap:.75rem;min-width:240px;border:1px solid rgba(26,42,47,.85)}.user-badge button{background:transparent;border:1px solid rgba(6,182,212,.4);color:var(--color-text);border-radius:14px;padding:.55rem 1.1rem;cursor:pointer;transition:background .2s ease}.user-badge button:hover{background:#06b6d42e}.dashboard-panels{display:grid;gap:1.6rem;grid-template-columns:repeat(auto-fit,minmax(360px,1fr))}.panel{background:#0d161cd1;border-radius:24px;padding:1.8rem;border:1px solid rgba(6,182,212,.2);display:flex;flex-direction:column;gap:1.1rem;width:100%}.panel h3{margin:0;font-size:1.25rem}.panel-subtitle{color:#eafdfc9e;margin:0;font-size:.95rem;line-height:1.5}.upload-area{position:relative;border:1px dashed rgba(6,182,212,.35);border-radius:18px;padding:2.4rem 1rem;text-align:center;cursor:pointer;display:block}.upload-area input[type=file]{opacity:0;position:absolute;inset:0;cursor:pointer}.upload-area span{font-weight:600;color:#eafdfcd9}.success-card{display:flex;align-items:center;gap:1rem;background:#10d2c21f;border:1px solid rgba(46,242,200,.35);border-radius:18px;padding:1rem 1.2rem;box-shadow:inset 0 0 0 1px #06b6d42e}.success-icon{width:2.2rem;height:2.2rem;border-radius:50%;background:linear-gradient(135deg,#10d2c2d9,#2ef2c8d9);display:grid;place-items:center;font-weight:700;color:#021212;font-size:1.1rem}.success-text{display:flex;flex-direction:column;gap:.35rem;color:#eafdfce6}.success-text span{font-size:.85rem;color:#eafdfcb3}.chat-window{background:#091114c7;border-radius:20px;padding:1.2rem;min-height:260px;max-height:420px;overflow-y:auto}.chat-window ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:1rem}.user-message,.assistant-message{border-radius:20px;padding:1rem 1.1rem;max-width:78%;display:flex;flex-direction:column;gap:.45rem}.user-message{align-self:flex-end;background:linear-gradient(135deg,#10d2c247,#2ef2c838);border:1px solid rgba(46,242,200,.28)}.assistant-message{align-self:flex-start;background:#06b6d42e;border:1px solid rgba(6,182,212,.3)}.user-message .role,.assistant-message .role{font-size:.72rem;opacity:.72;text-transform:uppercase;letter-spacing:.08em}.message-body{display:flex;flex-direction:column;gap:.55rem;font-size:.96rem;color:#eafdfcf0;line-height:1.65}.assistant-paragraph{margin:0}.assistant-list{margin:0;padding-left:1.2rem;display:flex;flex-direction:column;gap:.42rem}.chat-input{display:flex;gap:.75rem;align-items:center}.chat-input input{flex:1}.placeholder{color:#eafdfc99;font-size:.95rem}.summary-mini{display:flex;gap:.75rem;font-size:.9rem;color:#2ef2c8d9}.report-form{display:flex;flex-direction:column;gap:.85rem}.report-form textarea{resize:vertical;min-height:170px}.report-preview{background:#091114c7;border-radius:20px;padding:1.1rem;max-height:320px;overflow-y:auto;border:1px solid rgba(6,182,212,.2)}.report-preview pre{white-space:pre-wrap;font-family:Inter,system-ui,sans-serif;font-size:.94rem;color:#eafdfce0}.report-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.85rem}.report-header button{background:transparent;border:1px solid rgba(6,182,212,.4);color:var(--color-text);border-radius:14px;padding:.45rem 1rem;cursor:pointer}@media (max-width: 1100px){.auth-card{grid-template-columns:1fr;text-align:center;padding:2.5rem;justify-items:center}.auth-content{align-items:center}.auth-illustration{margin-bottom:1.5rem}.dashboard-panels{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}}@media (max-width: 768px){.app-shell{padding:1.25rem}.auth-card{padding:1.8rem;gap:1.6rem;justify-items:center;width:min(520px,100%)}.auth-content{align-items:center;text-align:center;gap:1rem;max-width:100%}.auth-content h1{font-size:1.6rem}.auth-form label{font-size:.9rem}.auth-illustration{padding:1.15rem}.brand-logo{width:92px}.primary{width:100%}.dashboard-header{flex-direction:column;align-items:stretch;padding:1.6rem;gap:1.2rem}.dashboard-baseline h2{font-size:1.55rem}.dashboard-baseline p{font-size:.9rem}.dashboard-logo{width:70px}.dashboard-panels{grid-template-columns:1fr;gap:1.2rem}.panel{padding:1.35rem;gap:.95rem}.chat-window{min-height:220px;max-height:360px}.chat-input{flex-direction:column;align-items:stretch;gap:.6rem}.chat-input button{width:100%}.report-form textarea{min-height:150px}}@media (max-width: 560px){.app-shell{padding:1rem}.auth-card{padding:1.6rem;border-radius:26px;gap:1.4rem}.auth-illustration{padding:1rem}.brand-logo{width:84px}.auth-content h1{font-size:1.45rem}.auth-form input{font-size:.95rem}.dashboard-header{padding:1.4rem;gap:1rem}.dashboard-identity{flex-direction:column;align-items:flex-start;gap:1rem}.user-badge{width:100%;padding:.9rem 1.2rem;gap:.6rem}.dashboard-logo{width:64px}.panel{padding:1.2rem}.chat-window{max-height:320px}}
