html,body,#root{margin:0;min-height:100%;background:#fbf7f4;color:#2d211c;font-family:PingFang SC,Microsoft YaHei,Noto Sans SC,system-ui,sans-serif}.centered{min-height:100vh;display:grid;place-items:center;color:#6f5d54}.login-wrap{min-height:100vh;display:grid;grid-template-columns:minmax(0,1fr);place-items:center;padding:16px;overflow-x:hidden;background:linear-gradient(160deg,#fdf1ea,#fbf7f4 55%,#fff)}.login-card{width:100%;max-width:min(420px,calc(100vw - 32px));min-width:0;box-shadow:0 8px 24px #1118271a}.login-card .ant-card-body{padding:24px 20px}.login-card .ant-form,.login-card .ant-form-item,.login-card .ant-input,.login-card .ant-input-affix-wrapper,.login-card .ant-btn{max-width:100%}.login-hint{display:block;margin-top:20px;font-size:12px;line-height:1.6}.app-shell{min-height:100vh;background:linear-gradient(180deg,#fff8f3 0,#fbf7f4 280px 100%)}.app-header{height:64px;padding:0 24px 0 0;background:#f4734b;display:flex;align-items:center;justify-content:space-between;box-shadow:0 2px 14px #b54c2b29}.ant-card{border-color:#f0e2da;border-radius:14px;box-shadow:0 2px 10px #5d36230a}.ant-card-head{border-bottom-color:#f6e9e2}.ant-tabs-tab{font-weight:500}.followup-modal .ant-modal-body{max-height:calc(100vh - 220px);overflow-y:auto;padding-right:4px}.followup-form-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(260px,.8fr);gap:0 24px;align-items:start}.followup-form-main,.followup-form-side{min-width:0}.followup-form-side{border-left:1px solid #f0f0f0;padding-left:22px}.followup-form-side .ant-form-item{margin-bottom:16px}.followup-form-main .ant-form-item{margin-bottom:18px}.followup-form-main textarea.ant-input{min-height:132px}@media(max-width:768px){.followup-modal .ant-modal-body{max-height:calc(100vh - 180px)}.followup-form-grid{grid-template-columns:1fr;gap:0}.followup-form-side{border-left:0;padding-left:0}}.app-recording-entry{color:#ffffffdb!important}.app-recording-entry:hover{color:#fff!important;background:#ffffff1f!important}.recording-dock{position:fixed;right:24px;bottom:96px;z-index:1100;padding:8px 10px;border-radius:10px;border:1px solid #ffccc7;background:#fff;box-shadow:0 8px 24px #00000029}.recording-dock-file{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}@media(max-width:768px){.recording-entry-label{display:none}.recording-dock{right:12px;bottom:84px;max-width:calc(100vw - 24px)}}.followup-timeline-item{cursor:pointer;border-radius:6px;padding:4px 6px;margin-left:-6px;transition:background .15s ease}.followup-timeline-item:hover,.followup-timeline-item:focus-visible{background:#fff6f1;outline:none}.followup-search,.contract-search{width:240px;max-width:100%}@media(max-width:768px){.contract-search{width:100%;min-width:190px}}@media(max-width:768px){.followup-search{width:100%;min-width:190px}}.activity-recording-audio{display:block;flex:0 0 auto;width:260px;max-width:100%;min-width:180px;height:32px}.app-logo{display:block;height:64px;width:auto;max-width:min(45vw,280px);object-fit:contain;box-sizing:border-box;padding:3px;border-radius:0;background:transparent}.app-header-brand{height:100%;align-items:center}.app-logo-fallback{display:inline-flex;align-items:center;height:100%;padding-left:16px;font-size:24px;line-height:1}.tenant-logo-preview{width:112px;height:56px;border:1px dashed #d9d9d9;border-radius:6px;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#fafafa}.tenant-logo-preview img{max-width:100%;max-height:100%;object-fit:contain}.app-content{padding:28px;max-width:none;width:100%;margin:0 auto;min-width:0}.ant-table-row{cursor:pointer}.mobile-card-list{display:none}.desktop-table{display:block}.app-tabs-wrap{position:relative}.mobile-tab-more{display:none}.list-selection-bar{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 12px;margin-bottom:10px;border:1px solid #f6c9b7;border-radius:8px;background:#fff1ea}.mobile-record-card-selected{border-color:#e2603a!important;background:#fff1ea!important}.selected-row>td{background:#fff3ed!important}.agent-chat-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:16px;align-items:start}.agent-chat-history{min-height:420px}.agent-conversation-active{background:#fff3ed;border-radius:6px}.agent-chat-main{min-height:520px}.agent-messages{min-height:220px;max-height:460px;overflow-y:auto;padding:4px 2px}.agent-empty{padding:24px 8px}.agent-empty .ant-space{width:100%}.agent-empty .ant-btn{height:auto;max-width:100%;white-space:normal;text-align:left}.agent-message{margin-bottom:16px;padding:10px 12px;border-radius:8px;max-width:88%}.agent-message-user{margin-left:auto;background:#ffe9df}.agent-message-assistant{margin-right:auto;background:#faf4ef}.agent-message-role{font-size:12px;color:#8a766b;margin-bottom:4px}.agent-message-content{white-space:pre-wrap;line-height:1.65}.agent-message-optimistic{opacity:.82}.agent-message-pending .agent-message-content{display:flex;align-items:center}.agent-usage{padding:6px 2px 2px;text-align:center;font-size:12px}.agent-pending-action{border-color:#f59e0b;background:#fffbeb}.agent-fab{position:fixed;right:24px;bottom:24px;z-index:900;width:64px;height:64px;border:none;border-radius:50%;background:radial-gradient(circle at 32% 26%,#fff,#fff1ea 52%,#ffe0d3);box-shadow:0 14px 32px #1d4ed859,0 0 26px #60a5fa73,inset 0 0 0 1px #ffffffd9;overflow:visible;will-change:translate;transition:none;isolation:isolate;cursor:grab;touch-action:none;animation:agent-fab-breathe 3.6s ease-in-out infinite}.agent-fab:active{cursor:grabbing}.agent-fab:before{content:"";position:absolute;inset:-9px;z-index:0;border-radius:50%;background:conic-gradient(from 0deg,#38bdf8a6,#6366f18c,#a855f799,#22d3ee99,#38bdf8a6);filter:blur(10px);opacity:.55;animation:agent-halo-spin 5s linear infinite}.agent-fab:after{content:"";position:absolute;inset:2px;z-index:1;border-radius:50%;border:1px solid rgba(255,255,255,.65);pointer-events:none}.agent-fab.ant-btn{width:64px;height:64px;min-width:64px;padding:0;border-radius:50%}.agent-fab .ant-btn-icon{position:relative;z-index:2;display:flex;align-items:center;justify-content:center;line-height:1}.agent-orb-icon{display:block;width:40px;height:40px;filter:drop-shadow(0 0 6px rgba(59,130,246,.55));animation:agent-orb-pulse 3.2s ease-in-out infinite}.agent-fab:hover{background:radial-gradient(circle at 32% 26%,#fff,#fff1ea 52%,#ffe0d3)!important;transform:translateY(-1px) scale(1.03)}.agent-fab:hover:before{opacity:.8}@keyframes agent-halo-spin{to{transform:rotate(360deg)}}@keyframes agent-orb-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.07)}}@keyframes agent-fab-breathe{0%,to{box-shadow:0 14px 32px #1d4ed859,0 0 22px #60a5fa66,inset 0 0 0 1px #ffffffd9}50%{box-shadow:0 16px 36px #1d4ed86b,0 0 34px #818cf88c,inset 0 0 0 1px #fffffff2}}.agent-float{animation:agent-float-in .16s ease-out;overscroll-behavior:contain}.agent-float .ant-card-body,.agent-float .agent-messages,.agent-float .agent-chat-history{overscroll-behavior:contain}@keyframes agent-float-in{0%{opacity:0;transform:translateY(8px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@media(min-width:901px){.agent-float .agent-chat-layout{grid-template-columns:220px minmax(0,1fr);gap:12px;height:100%;flex:1}.agent-float .agent-chat-history,.agent-float .agent-chat-main{height:100%;min-height:0}.agent-float .agent-chat-history .ant-card-body{max-height:calc(100% - 57px);overflow-y:auto}.agent-float .agent-chat-main .ant-card-body{height:calc(100% - 57px);overflow-y:auto;display:flex}.agent-float .agent-chat-main .ant-card-body>.ant-space{height:100%;width:100%}.agent-float .agent-chat-main .ant-space-item:has(.agent-messages){flex:1;min-height:0;display:flex}.agent-float .agent-messages{flex:1;min-height:0;max-height:none;width:100%}}.agent-mobile-new{display:none}@media(max-width:900px){.agent-chat-layout{grid-template-columns:1fr}.agent-chat-history{min-height:auto}.agent-float .agent-chat-history{display:none}.agent-mobile-new{display:block}.agent-float .agent-chat-main .ant-space-compact{display:flex;flex-direction:row;align-items:flex-end;gap:6px}.agent-float .agent-chat-main .ant-space-compact>.ant-input{flex:1;width:auto!important;min-width:0}.agent-float .agent-chat-main .ant-space-compact>.ant-btn{flex:0 0 auto;width:auto}.agent-float .agent-chat-main,.agent-float .agent-chat-main>.ant-card,.agent-float .agent-chat-main .ant-card-body{height:100%;min-height:0}.agent-float .agent-chat-main .ant-card-body{height:calc(100% - 57px);overflow:hidden;display:flex;padding:12px 14px calc(12px + env(safe-area-inset-bottom))}.agent-float .agent-card-collapsed .ant-card-body{display:none}.agent-float .agent-chat-main .ant-card-body>.ant-space{height:100%;min-height:0;width:100%}.agent-float .agent-chat-main .ant-space-item:has(.agent-messages){flex:1;min-height:0;display:flex}.agent-float .agent-messages{flex:1;min-height:0;max-height:none;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding-bottom:8px}.agent-float .agent-pending-action .ant-card-body{max-height:32vh;overflow-y:auto;overscroll-behavior:contain}}body{overflow-x:hidden}@media(max-width:768px){.contract-date-row{display:flex!important;flex-wrap:wrap;gap:0}.contract-date-row>.ant-space-item{flex:1 1 100%;width:100%;min-width:0}.contract-date-row .ant-form-item{width:100%;margin-bottom:12px}.contract-date-row .ant-picker,.contract-date-row .ant-input{width:100%}.contract-detail-modal .ant-modal-footer .ant-space{flex-wrap:wrap;width:100%}.contract-detail-modal .ant-modal-footer .ant-space-item{flex:1 1 calc(50% - 8px)}.contract-detail-modal .ant-modal-footer .ant-btn{width:100%}.agent-mobile-new .ant-space{display:flex;flex-wrap:wrap;gap:6px;width:100%}.agent-mobile-new .ant-space-item{flex:0 0 auto}.agent-fab{top:auto!important;left:auto!important;right:12px!important;bottom:calc(76px + env(safe-area-inset-bottom))!important;translate:none!important;transform:none!important;width:56px!important;height:56px!important}.app-header{position:fixed;left:0;right:0;top:0;width:100%;z-index:200;height:56px;min-height:56px;padding:0 10px 0 0;display:flex;flex-wrap:nowrap;gap:6px;align-items:center}.app-header-brand{flex:0 0 auto;min-width:0;flex-wrap:nowrap}.app-header-brand .ant-tag,.app-header-brand .app-tenant-name{display:none}.app-logo{height:56px;width:auto;max-width:45vw;padding:3px}.app-logo-fallback{padding-left:10px;font-size:22px}.app-header-actions{display:flex;flex:1;min-width:0;flex-wrap:nowrap;gap:2px;align-items:center}.app-header-actions>.ant-space-item:nth-child(2){flex:1;min-width:0}.app-header-actions .ant-select{width:100%!important}.app-header-actions .ant-input-affix-wrapper{height:34px}.app-tenant-name{max-width:46vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-user-email,.app-account-name{display:none}.app-content{padding:68px 12px 12px;min-width:0}.app-content-with-tabs{padding-top:56px}.app-tabs-wrap{position:relative;padding-top:46px}.app-tabs-wrap .ant-tabs-nav{position:fixed;left:0;right:0;top:56px;z-index:190;height:46px;margin:0;padding:0 44px 0 12px;background:#fff;border-bottom:1px solid #f0f0f0}.app-tabs-wrap .ant-tabs-nav:before{border-bottom:0}.ant-tabs,.ant-tabs-nav,.ant-tabs-nav-wrap,.ant-card,.ant-table-wrapper{min-width:0;max-width:100%}.ant-tabs-nav{width:100%;margin-bottom:12px}.ant-tabs-nav-wrap{overflow-x:auto!important;overflow-y:hidden;scrollbar-width:none}.ant-tabs-nav-wrap::-webkit-scrollbar{display:none}.customer-page-header{flex-direction:column;align-items:stretch!important}.customer-page-actions{width:100%}.customer-page-actions .ant-space-item{flex:1 1 140px}.customer-page-actions .ant-btn,.customer-page-actions .ant-input{width:100%!important}.crm-list-card .ant-card-head-wrapper{flex-wrap:wrap;gap:8px}.crm-list-card .ant-card-extra{width:100%;margin-left:0}.crm-list-card .ant-card-extra .ant-space{width:100%;flex-wrap:wrap}.crm-list-card .ant-card-extra .ant-space-item{flex:1 1 140px}.crm-list-card .ant-card-extra .ant-btn,.crm-list-card .ant-card-extra .ant-input,.crm-list-card .ant-card-extra .ant-select{width:100%!important}.ant-table-wrapper{overflow-x:auto}.ant-table{min-width:680px}.ant-drawer-content-wrapper{width:100%!important;max-width:100vw!important}.ant-drawer-body{padding:16px}.ant-modal{max-width:calc(100vw - 24px);margin:8px auto}.role-permission-grid{grid-template-columns:1fr!important}.dashboard-toolbar{width:100%}.dashboard-toolbar .ant-select{width:100%!important}.agent-float{left:0!important;top:0!important;width:100vw!important;height:100vh!important;height:100dvh!important;max-width:none!important;max-height:none!important;border-radius:0!important;border:0!important;overflow:hidden!important;padding-top:env(safe-area-inset-top)}.agent-float-header{flex:0 0 auto;cursor:default!important;touch-action:auto!important}.agent-float-body{flex:1;min-height:0;display:flex;overflow:hidden!important;padding:8px 10px calc(8px + env(safe-area-inset-bottom))!important}.agent-fab.ant-btn{right:16px;bottom:16px;width:58px;height:58px;min-width:58px}.agent-orb-icon{width:36px;height:36px}}@media(max-width:768px){*,*:before,*:after{box-sizing:border-box}.app-content{width:100%;max-width:100%}html,body{max-width:100%;overflow-x:hidden}.crm-list-card{overflow:hidden}.crm-list-card .ant-card-body{overflow-x:auto;max-width:100%;padding-left:0;padding-right:0}.desktop-table{display:none}.mobile-card-list{display:flex;flex-direction:column;gap:8px;padding:10px 12px}.mobile-record-card{display:flex;flex-direction:column;gap:6px;width:100%;padding:12px;text-align:left;background:#fff;border:1px solid #eadfd8;border-radius:10px;cursor:pointer}.mobile-record-card-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.mobile-record-card-meta{display:flex;align-items:center;justify-content:space-between;color:#8a766b;font-size:12px}.mobile-pagination{display:flex;align-items:center;justify-content:center;gap:12px;padding-top:4px}.crm-list-card .ant-table-content{overflow-x:auto;max-width:calc(100vw - 48px)}.crm-list-card .ant-table{min-width:680px}.customer-page-actions{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;width:100%;min-width:0}.customer-page-actions .ant-space-item{width:100%;min-width:0;flex:none}.customer-page-actions .ant-space,.customer-page-actions .ant-select,.customer-page-actions .ant-input{min-width:0;max-width:100%}.customer-page-header>.ant-space-item{min-width:0;width:100%}.customer-page-actions .ant-space-item:last-child{grid-column:1 / -1}.customer-page-actions .ant-btn,.customer-page-actions .ant-input,.customer-page-actions .ant-input-affix-wrapper,.customer-page-actions .ant-select{width:100%!important;max-width:100%}.ant-pagination{display:flex;flex-wrap:wrap;justify-content:center;padding:8px 12px}.app-header-actions>.ant-space-item:nth-child(2){flex:1;width:auto;min-width:0;max-width:100%}.app-tabs-wrap .ant-tabs-nav{padding-right:44px}.app-tabs-wrap .ant-tabs-nav-more{display:none!important}.mobile-tab-more{display:inline-flex;position:fixed;right:4px;top:63px;z-index:191;width:32px;height:32px;align-items:center;justify-content:center;background:#fff}}@media(max-width:480px){.app-tenant-name{display:none}.ant-card-body{padding:12px}.ant-statistic-content{font-size:22px}}
