@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700;800&display=swap";:root{color:#173043;font-synthesis:none;text-rendering:optimizelegibility;--navy:#102b3f;--navy-soft:#1c435b;--ocean:#168c8c;--ocean-dark:#0c6e72;--sand:#e8cfa9;--cream:#fbfaf6;--line:#dbe5e4;--muted:#71818c;--danger:#b74848;--shadow:0 18px 48px #102b3f14;background:#f3f6f5;font-family:DM Sans,system-ui,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input,textarea{font:inherit}button{cursor:pointer}h1,h2,p{margin-top:0}h1,h2,strong{font-family:Manrope,system-ui,sans-serif}.eyebrow{color:var(--ocean-dark);letter-spacing:.14em;text-transform:uppercase;margin-bottom:.45rem;font-size:.72rem;font-weight:800}.muted{color:var(--muted)}.login-shell{background:radial-gradient(circle at 15% 10%,#168c8c40,#0000 30%),linear-gradient(135deg,#0b273a 0%,#174860 56%,#f3f6f5 56%);grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr);min-height:100vh;padding:clamp(2rem,6vw,6rem);display:grid}.login-brand{color:#fff;align-self:center;max-width:650px;padding-right:clamp(2rem,6vw,7rem)}.login-brand .eyebrow{color:#9de2dc;margin-top:2.3rem}.login-brand h1{letter-spacing:-.055em;margin-bottom:1.5rem;font-size:clamp(2.5rem,5vw,4.8rem);line-height:1.02}.login-brand>p:not(.eyebrow){color:#dbe9ed;max-width:560px;font-size:1.08rem;line-height:1.75}.brand-mark{color:#fff;background:linear-gradient(145deg,#26aaa4,#0d7178);border:1px solid #ffffff42;border-radius:18px;justify-content:center;align-items:center;width:62px;height:62px;display:inline-flex;box-shadow:0 16px 38px #0000002e}.brand-mark.small{border-radius:12px;width:42px;height:42px}.login-trust{color:#dbe9ed;border-top:1px solid #ffffff2b;align-items:center;gap:.65rem;margin-top:2.4rem;padding-top:1.25rem;display:flex}.login-card{background:#fffffff7;border:1px solid #fffc;border-radius:26px;place-self:center end;width:100%;max-width:470px;padding:clamp(2rem,4vw,3.5rem);box-shadow:0 30px 90px #08233338}.login-card h2{letter-spacing:-.035em;margin-bottom:.5rem;font-size:2rem}.login-card form{gap:1rem;margin-top:2rem;display:grid}label{color:#2e4656;gap:.45rem;font-size:.86rem;font-weight:700;display:grid}input,textarea{color:#173043;background:#fff;border:1px solid #d5e0df;border-radius:12px;outline:none;transition:border-color .16s,box-shadow .16s}input{height:48px;padding:0 .9rem}input:focus,textarea:focus{border-color:var(--ocean);box-shadow:0 0 0 4px #168c8c1c}.form-error{color:var(--danger);margin:0;font-size:.84rem}.primary-button,.secondary-button,.danger-button{border-radius:11px;justify-content:center;align-items:center;gap:.48rem;min-height:42px;padding:0 1rem;font-weight:700;transition:transform .15s,opacity .15s,background .15s;display:inline-flex}.primary-button{background:var(--ocean-dark);border:1px solid var(--ocean-dark);color:#fff}.primary-button:hover:not(:disabled){background:#095d62;transform:translateY(-1px)}.secondary-button{border:1px solid var(--line);color:var(--navy);background:#fff}.secondary-button:hover:not(:disabled){background:#f6faf9}.danger-button{color:var(--danger);background:#fff8f8;border:1px solid #f0cccc;width:100%;margin-top:auto}button:disabled{cursor:not-allowed;opacity:.48}.full{width:100%}.center-state{color:var(--navy);background:#f3f6f5;justify-content:center;align-items:center;gap:.75rem;min-height:100vh;display:flex}.access-blocked{text-align:center;flex-direction:column}.access-blocked h2{margin:.65rem 0 0}.spin{animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.app-shell{min-height:100vh}.topbar{border-bottom:1px solid var(--line);z-index:20;background:#fffffff0;justify-content:space-between;align-items:center;height:70px;padding:0 clamp(1rem,3vw,2.5rem);display:flex;position:sticky;top:0}.brand-inline,.topbar-actions,.guest-heading,.chat-actions{align-items:center;display:flex}.brand-inline{gap:.75rem}.brand-inline>span:last-child{display:grid}.brand-inline strong{color:var(--navy)}.brand-inline small{color:var(--muted);font-size:.72rem}.topbar-actions{gap:1rem}.online-indicator{color:#28774f;background:#edf8f2;border-radius:999px;align-items:center;gap:.45rem;padding:.45rem .75rem;font-size:.77rem;font-weight:700;display:flex}.online-indicator i{background:#37ad70;border-radius:50%;width:8px;height:8px}.staff-name{color:#385062;font-size:.88rem;font-weight:700}.icon-button{color:#5e7380;background:0 0;border:0;border-radius:10px;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.icon-button:hover{background:#edf2f2}.dashboard{max-width:1740px;margin:0 auto;padding:2rem clamp(1rem,3vw,2.5rem) 2.5rem}.welcome-row{justify-content:space-between;align-items:end;display:flex}.welcome-row h1{color:var(--navy);letter-spacing:-.045em;margin-bottom:.3rem;font-size:clamp(1.8rem,3vw,2.55rem)}.welcome-row p:last-child{margin-bottom:0}.metric-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:1.6rem 0;display:grid}.metric-grid article{border:1px solid var(--line);background:#fff;border-radius:16px;align-items:center;gap:.9rem;padding:1rem 1.2rem;display:flex;box-shadow:0 8px 30px #102b3f09}.metric-grid article>svg{color:var(--ocean-dark);background:#e7f5f3;border-radius:11px;width:42px;height:42px;padding:10px}.metric-grid span{display:grid}.metric-grid strong{color:var(--navy);font-size:1.45rem}.metric-grid small{color:var(--muted)}.notice{color:#176569;background:#ecf7f6;border:1px solid #c5e7e3;border-radius:10px;margin-bottom:1rem;padding:.75rem 1rem;font-size:.85rem}.workspace{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:19px;grid-template-columns:330px minmax(420px,1fr) 300px;height:calc(100vh - 300px);min-height:620px;display:grid;overflow:hidden}.conversation-panel,.details-panel{background:#fbfcfb;flex-direction:column;min-width:0;display:flex}.conversation-panel{border-right:1px solid var(--line)}.details-panel{border-left:1px solid var(--line);padding:1.25rem;overflow-y:auto}.panel-heading,.quote-heading{justify-content:space-between;align-items:center;display:flex}.panel-heading{padding:1.2rem 1.2rem .75rem}.details-panel .panel-heading{padding:0}.panel-heading h2,.quote-heading h2{color:var(--navy);margin:0;font-size:1.05rem}.count-badge{color:var(--ocean-dark);background:#e7f3f2;border-radius:999px;justify-content:center;align-items:center;min-width:28px;height:28px;font-size:.76rem;font-weight:800;display:flex}.search-box{align-items:center;margin:0 1.1rem .8rem;display:flex;position:relative}.search-box svg{color:#82919a;position:absolute;left:.8rem}.search-box input{background:#f1f5f4;width:100%;height:42px;padding-left:2.35rem}.filter-tabs{border-bottom:1px solid var(--line);grid-template-columns:repeat(3,1fr);padding:0 1rem;display:grid}.filter-tabs button{color:#7a8a94;background:0 0;border:0;border-bottom:2px solid #0000;padding:.7rem .2rem;font-size:.76rem;font-weight:700}.filter-tabs button.active{border-color:var(--ocean);color:var(--ocean-dark)}.conversation-list{flex:1;min-height:0;overflow-y:auto}.conversation-item{color:inherit;text-align:left;background:0 0;border:0;border-bottom:1px solid #ebf0ef;align-items:flex-start;gap:.75rem;width:100%;padding:1rem 1.05rem;display:flex}.conversation-item:hover,.conversation-item.selected{background:#eef7f5}.conversation-item.selected{box-shadow:inset 3px 0 var(--ocean)}.avatar{color:var(--ocean-dark);text-transform:uppercase;background:linear-gradient(145deg,#d8ebe7,#bcd9d5);border-radius:50%;flex:none;justify-content:center;align-items:center;width:38px;height:38px;font-family:Manrope,sans-serif;font-size:.82rem;font-weight:800;display:flex}.avatar.large{width:44px;height:44px}.conversation-copy{flex:1;gap:.22rem;min-width:0;display:grid}.conversation-copy>span{justify-content:space-between;align-items:center;min-width:0;display:flex}.conversation-copy strong{color:var(--navy);text-overflow:ellipsis;white-space:nowrap;font-size:.84rem;overflow:hidden}.conversation-copy time{color:#8d9aa2;white-space:nowrap;font-size:.65rem}.conversation-copy small{color:var(--muted);font-size:.73rem}.status-tag{border-radius:999px;justify-self:start;margin-top:.2rem;padding:.24rem .5rem;font-size:.65rem;font-style:normal;font-weight:700}.status-human{color:#9a5a0c;background:#fff1dc}.status-new,.status-collecting{color:#376d96;background:#e9f2fa}.status-ready_to_submit,.status-submitted{color:#347850;background:#e8f7ee}.status-closed{color:#6d7a82;background:#edf0f1}.chat-panel{background:linear-gradient(#f6f9f8e6,#f6f9f8e6),radial-gradient(circle at 20% 10%,#d7e8e5 1px,#0000 1px) 0 0/18px 18px;flex-direction:column;min-width:0;display:flex}.chat-header{border-bottom:1px solid var(--line);background:#fffffff5;justify-content:space-between;align-items:center;min-height:73px;padding:.8rem 1.2rem;display:flex}.guest-heading{gap:.75rem}.guest-heading h2{color:var(--navy);margin:0 0 .14rem;font-size:1rem}.guest-heading p{color:var(--muted);margin:0;font-size:.76rem}.message-area{flex:1;padding:1.35rem;overflow-y:auto}.message-row{margin-bottom:.75rem;display:flex}.message-row.outbound{justify-content:flex-end}.message-bubble{background:#fff;border:1px solid #e1e9e8;border-radius:4px 15px 15px;max-width:min(76%,620px);padding:.7rem .85rem .5rem;box-shadow:0 5px 18px #102b3f0d}.message-row.outbound .message-bubble{background:#daf0eb;border-color:#c7e4de;border-radius:15px 4px 15px 15px}.message-bubble.sender-staff{background:#d7edf3;border-color:#bfdae3}.message-bubble small{color:var(--ocean-dark);margin-bottom:.25rem;font-size:.65rem;font-weight:800;display:block}.message-bubble p{white-space:pre-wrap;margin:0;line-height:1.45}.message-bubble time{color:#7f8e97;text-align:right;margin-top:.35rem;font-size:.62rem;display:block}.empty-chat,.empty-list,.no-quote,.empty-details{color:#8a989f;text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.empty-chat{min-height:180px}.empty-chat.full{flex:1}.empty-chat h2{color:var(--navy);margin:.7rem 0 .2rem}.empty-list{padding:3rem 1rem}.composer{border-top:1px solid var(--line);background:#fff;padding:.75rem 1rem 1rem}.composer>p{color:#7b8a93;align-items:center;gap:.35rem;margin:0 0 .55rem;font-size:.72rem;display:flex}.composer>div{align-items:flex-end;gap:.55rem;display:flex}.composer textarea{resize:vertical;flex:1;min-height:46px;max-height:120px;padding:.75rem .9rem}.send-button{background:var(--ocean-dark);color:#fff;border:0;border-radius:12px;justify-content:center;align-items:center;width:46px;height:46px;display:flex}.detail-list,.quote-grid{margin:1rem 0 0}.detail-list div{border-bottom:1px solid #e8eeed;padding:.7rem 0}.detail-list dt,.quote-grid dt{color:#86949c;text-transform:uppercase;margin-bottom:.18rem;font-size:.68rem;font-weight:700}.detail-list dd,.quote-grid dd{color:var(--navy);overflow-wrap:anywhere;margin:0;font-size:.82rem;font-weight:600}.section-divider{border-top:1px solid var(--line);margin:1.2rem 0}.quote-heading{align-items:flex-start}.quote-status{text-transform:uppercase;border-radius:999px;padding:.3rem .5rem;font-size:.62rem;font-weight:800}.quote-submitted{color:#397b55;background:#e5f6ec}.quote-failed{color:#ae4747;background:#fff0f0}.quote-submitting,.quote-draft{color:#96600f;background:#fff3de}.quote-grid{grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:1.3rem;display:grid}.quote-grid div{background:#fff;border:1px solid #e5eceb;border-radius:10px;padding:.65rem}.no-quote{background:#fff;border:1px dashed #cfdbd9;border-radius:12px;margin:1rem 0;padding:1.4rem 1rem}.no-quote p{margin:.5rem 0 0;font-size:.78rem}.empty-details{height:100%;padding:2rem;font-size:.85rem}@media (max-width:1250px){.workspace{grid-template-columns:300px minmax(430px,1fr)}.details-panel{display:none}}@media (max-width:820px){.login-shell{background:linear-gradient(160deg,#0b273a 0%,#174860 46%,#eef4f2 46%);grid-template-columns:1fr;padding:2rem 1rem}.login-brand{padding:1rem 1rem 3rem}.login-brand h1{font-size:2.5rem}.login-card{justify-self:center}.staff-name,.online-indicator{display:none}.dashboard{padding:1.25rem .75rem}.metric-grid{grid-template-columns:1fr}.metric-grid article{padding:.75rem 1rem}.workspace{height:auto;min-height:0;display:block}.conversation-panel{border:0;max-height:460px}.chat-panel{border-top:1px solid var(--line);min-height:660px}.welcome-row{align-items:flex-start}.welcome-row .secondary-button{padding:0 .7rem}}@media (max-width:560px){.login-brand>p:not(.eyebrow),.login-trust{display:none}.login-brand{padding-bottom:2rem}.login-brand h1{margin-bottom:0}.topbar{height:62px}.welcome-row .muted{max-width:220px}.chat-header{flex-direction:column;align-items:flex-start;gap:.75rem}.chat-actions,.chat-actions button{width:100%}.message-bubble{max-width:88%}}
