:root{
  --bg-body:#eef2ff;
  --white:#FFFFFF;
  --gray-25:#fcfcff;
  --gray-50:#f8f9ff;
  --gray-100:#eceffd;
  --gray-200:#d8ddf6;
  --gray-300:#bcc5eb;
  --gray-400:#8d96bb;
  --gray-500:#697296;
  --gray-600:#4b5679;
  --gray-700:#343d5d;
  --gray-800:#202844;
  --gray-900:#12182e;
  --blue-50:#eef3ff;
  --blue-100:#dfe8ff;
  --blue-200:#c8d7ff;
  --blue-500:#4f73ff;
  --blue-600:#355cf0;
  --indigo-50:#eff1ff;
  --indigo-100:#e4e8ff;
  --indigo-500:#745dff;
  --indigo-600:#5d49f3;
  --green-50:#eefcf4;
  --green-500:#1fbf75;
  --orange-50:#fff5ed;
  --orange-500:#f38b3c;
  --red-50:#fff2f4;
  --red-200:#ffc7d1;
  --red-600:#e2496d;
  --brand-primary:#4f73ff;
  --brand-hover:#3e61f0;
  --brand-accent:#7c57ff;
  --shadow-sm:0 12px 26px rgba(44,56,112,.09);
  --shadow-md:0 22px 58px rgba(38,49,96,.16);
  --shadow-brand:0 22px 46px rgba(91,124,255,.36);
  --surface-border:rgba(212,220,243,.96);
  --surface-bg:linear-gradient(180deg, rgba(255,255,255,.96), rgba(248,250,255,.92));
  --surface-bg-strong:linear-gradient(180deg, rgba(255,255,255,.95), rgba(248,250,255,.92));
  --surface-shadow:0 10px 24px rgba(44,56,112,.05);
  --surface-shadow-soft:0 12px 28px rgba(44,56,112,.06);
  --surface-shadow-strong:0 18px 38px rgba(44,56,112,.08);
  --surface-shadow-compact:0 14px 28px rgba(44,56,112,.10);
  --surface-radius-md:16px;
  --surface-radius-lg:18px;
  --surface-radius-xl:20px;
  --surface-radius-xxl:22px;
  --nav-active-bg:linear-gradient(135deg, rgba(91,124,255,.14), rgba(139,92,255,.10));
  --radius-md:12px;
  --radius-lg:18px;
  --radius-xl:24px;
}
*,*::before,*::after{box-sizing:border-box}
html,body{
  height:100%;
  max-width:100%;
  overflow-x:hidden;
}
body{
  margin:0;
  font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  background:
    radial-gradient(circle at 9% 7%, rgba(100,126,255,.48), transparent 18%),
    radial-gradient(circle at 86% 8%, rgba(145,98,255,.36), transparent 17%),
    radial-gradient(circle at 50% 16%, rgba(255,255,255,.9), transparent 22%),
    radial-gradient(circle at 18% 72%, rgba(141,180,255,.18), transparent 20%),
    radial-gradient(circle at 78% 76%, rgba(196,181,253,.18), transparent 22%),
    radial-gradient(circle at 50% 100%, rgba(202,217,255,.62), transparent 34%),
    linear-gradient(180deg, #fcfdff 0%, #f4f7ff 40%, #edf2ff 100%);
  color:var(--gray-800);
  display:flex;
  overflow:hidden;
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
  position:relative;
}
body.app-boot{
  visibility:hidden;
}
body.mobile-nav-open{overflow:hidden}
body.modal-open{overflow:hidden}
body::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(120deg, rgba(255,255,255,.72), transparent 36%),
    radial-gradient(circle at 20% 20%, rgba(255,255,255,.48), transparent 22%),
    radial-gradient(circle at 80% 14%, rgba(255,255,255,.16), transparent 18%);
  opacity:.9;
}
button,input,textarea{font:inherit;outline:none}
button{cursor:pointer}
svg{display:block;flex-shrink:0}
h1,h2,h3,h4,p{margin:0}
p{line-height:1.55}

.sidebar{
  width:256px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.88) 0%, rgba(247,249,255,.78) 100%),
    linear-gradient(150deg, rgba(121,146,255,.16), rgba(172,124,255,.10));
  border-right:1px solid rgba(210,218,244,.82);
  display:flex;
  flex-direction:column;
  flex-shrink:0;
  padding:24px 16px;
  margin:16px 0 16px 16px;
  max-height:calc(100vh - 32px);
  min-height:0;
  border-radius:28px;
  box-shadow:0 28px 66px rgba(38,49,96,.16);
  backdrop-filter:blur(24px);
  position:relative;
  z-index:1;
  overflow-x:hidden;
  overflow-y:auto;
  overscroll-behavior:contain;
}
.sidebar::before{
  content:"";
  position:absolute;
  inset:-12% -18% auto;
  height:220px;
  background:
    radial-gradient(circle, rgba(129,140,248,.28), transparent 52%),
    radial-gradient(circle at 70% 35%, rgba(196,181,253,.24), transparent 44%);
  pointer-events:none;
}
  .mobile-topbar,.mobile-nav-backdrop,.icon-btn.mobile-sidebar-close{display:none}
.mobile-topbar-title{display:flex;align-items:center;gap:10px}
.mobile-topbar-logo{
  width:28px;
  height:28px;
  border-radius:50%;
  object-fit:cover;
  box-shadow:var(--shadow-sm);
  flex-shrink:0;
}
.logo-group{
  display:flex;
  align-items:center;
  gap:14px;
  padding:8px 12px 14px;
  margin:0 0 20px;
  border-bottom:1px solid rgba(225,230,248,.82);
  position:relative;
  z-index:1;
}
.logo-icon{
  width:48px;
  height:48px;
  border-radius:16px;
  overflow:hidden;
  box-shadow:0 16px 34px rgba(82,104,209,.22);
  flex-shrink:0;
}
.logo-image{width:100%;height:100%;display:block;object-fit:cover}
.logo-group h1{font-size:19px;font-weight:700;color:var(--gray-900)}
.logo-group p{font-size:11px;color:var(--gray-500);margin-top:4px;max-width:148px;line-height:1.5}
.nav-menu{display:flex;flex-direction:column;gap:4px}
.nav-item{
  width:100%;
  display:flex;align-items:center;gap:12px;
  padding:12px 16px;
  border:0;
  color:var(--gray-600);
  background:transparent;
  font-size:15px;
  font-weight:600;
  text-align:left;
  border-radius:14px;
  transition:background .2s,color .2s,transform .2s;
  position:relative;
  z-index:1;
}
.nav-item:hover{background:rgba(255,255,255,.92);color:var(--gray-800);transform:translateX(2px)}
.nav-item.active{
  background:
    linear-gradient(135deg, rgba(91,124,255,.30), rgba(124,87,255,.22)),
    linear-gradient(180deg, rgba(255,255,255,.24), rgba(255,255,255,0));
  color:var(--indigo-600);
  box-shadow:
    inset 0 0 0 1px rgba(116,120,255,.12),
    0 18px 34px rgba(91,124,255,.20);
}
.nav-item.active::before{
  content:"";
  position:absolute;
  left:2px;
  top:50%;
  transform:translateY(-50%);
  width:4px;
  height:20px;
  background:linear-gradient(180deg, var(--blue-600), var(--brand-accent));
  border-radius:0 4px 4px 0;
}
.sidebar-footer{
  margin-top:auto;
  border-top:1px solid rgba(216,221,246,.7);
  padding-top:20px;
  display:grid;
  gap:14px;
}
.auth-card{
  border:1px solid rgba(210,218,244,.86);
  border-radius:var(--surface-radius-xl);
  background:linear-gradient(180deg, rgba(255,255,255,.98), rgba(247,249,255,.96));
  padding:16px;
  margin:0 8px;
  box-shadow:var(--surface-shadow-soft);
  backdrop-filter:blur(12px);
}
.auth-header{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:8px;
  margin-bottom:8px;
}
.auth-header strong{font-size:13px;color:var(--gray-800)}
.mode-badge{
  display:inline-flex;
  align-items:center;
  padding:4px 8px;
  border-radius:999px;
  background:rgba(91,124,255,.08);
  color:var(--blue-600);
  font-size:11px;
  font-weight:700;
}
.mode-badge.authenticated{
  background:var(--green-50);
  color:var(--green-500);
}
.auth-user{
  font-size:12px;
  color:var(--gray-500);
  line-height:1.45;
  margin-bottom:10px;
}
.auth-user.subtle{
  font-size:11px;
  color:var(--gray-400);
  margin-top:-4px;
}
.auth-actions{display:grid;gap:8px}
.auth-btn{
  width:100%;
  justify-content:center;
  padding:8px 12px;
  font-size:13px;
}
.feedback-entry-btn{
  width:calc(100% - 16px);
  margin:0 8px;
  padding:12px 14px;
  border:1px solid rgba(210,218,244,.88);
  border-radius:var(--surface-radius-lg);
  background:linear-gradient(180deg, rgba(255,255,255,.98), rgba(247,249,255,.96));
  color:var(--gray-700);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  text-align:left;
  position:relative;
  box-shadow:var(--surface-shadow-compact);
  transition:border-color .2s,background .2s,transform .2s,box-shadow .2s;
}
.feedback-unread-dot{
  position:absolute;
  top:9px;
  right:10px;
  width:8px;
  height:8px;
  border-radius:999px;
  background:var(--red-600);
  box-shadow:0 0 0 2px var(--white);
}

.ask-text-modal-card{
  max-width:560px;
}

.ask-text-modal-input{
  min-height:180px;
  margin:8px 0 16px;
}

.ask-attachment-row{
  flex-wrap:wrap;
}
.feedback-entry-btn strong{
  display:block;
  font-size:13px;
  color:var(--gray-800);
  margin-bottom:3px;
}
.feedback-entry-btn small{
  display:block;
  font-size:11px;
  line-height:1.35;
  color:var(--gray-500);
}
.feedback-entry-btn svg{flex:0 0 auto;color:var(--blue-500)}
.feedback-entry-btn:hover{
  border-color:var(--blue-200);
  background:linear-gradient(180deg, rgba(255,255,255,.99), rgba(240,245,255,.96));
  transform:translateY(-1px);
  box-shadow:0 16px 28px rgba(56,76,162,.12);
}
.btn-primary.ask-workspace-entry-btn{
  min-height:54px;
  padding:15px 18px;
  font-size:15px;
  font-weight:800;
  box-shadow:0 22px 42px rgba(91,124,255,.28);
}
.btn-primary.ask-workspace-entry-btn:hover{
  transform:translateY(-1px);
  box-shadow:0 26px 52px rgba(91,124,255,.32);
}
.reply-copy-btn{
  width:auto;
  min-width:78px;
  min-height:36px;
  padding:7px 10px;
  font-size:12px;
  font-weight:600;
  color:var(--gray-600);
  background:rgba(255,255,255,.72);
  border-color:rgba(209,217,238,.95);
  box-shadow:none;
}
.actions.vertical .reply-copy-btn{
  align-self:flex-start;
}
.reply-copy-btn:hover{
  color:var(--gray-800);
  border-color:rgba(176,190,228,.96);
  background:rgba(248,250,255,.95);
  box-shadow:none;
}
.feedback-entry-btn:focus-visible,
.quota-overview-button:focus-visible,
.reply-copy-btn:focus-visible,
.ask-workspace-entry-btn:focus-visible,
.btn-primary:focus-visible,
.btn-outline:focus-visible,
.icon-btn:focus-visible{
  box-shadow:0 0 0 3px rgba(79,115,255,.18), 0 0 0 1px rgba(79,115,255,.55);
}
.usage-card{
  width:calc(100% - 16px);
  margin:0 8px;
  padding:13px 14px 12px;
  border-radius:var(--surface-radius-xl);
  background:linear-gradient(180deg, rgba(14,20,42,.98), rgba(31,41,72,.98));
  box-shadow:0 24px 46px rgba(23,33,72,.28);
  border:1px solid rgba(126,162,255,.12);
  color:#fff;
  text-align:left;
  display:block;
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.usage-card:hover{
  transform:translateY(-1px);
  box-shadow:0 28px 54px rgba(23,33,72,.32);
  border-color:rgba(163,191,255,.24);
}
.usage-card:focus-visible{
  box-shadow:0 0 0 3px rgba(79,115,255,.2), 0 28px 54px rgba(23,33,72,.32);
}
.usage-title{
  display:flex;
  justify-content:space-between;
  align-items:baseline;
  gap:12px;
  font-size:12px;
  color:rgba(229,236,255,.72);
  margin-bottom:6px;
}
.usage-title span,
.usage-submeta span{
  color:rgba(229,236,255,.74);
  font-size:12px;
  font-weight:600;
}
.usage-title strong,
.usage-submeta strong{
  color:#9fb7ff;
  font-size:16px;
  line-height:1;
  font-weight:800;
  letter-spacing:0;
}
.usage-bar{display:none}
.usage-fill{display:none}
.usage-meta{display:none}
.usage-submeta{
  display:flex;
  justify-content:space-between;
  align-items:baseline;
  gap:12px;
  font-size:12px;
  color:rgba(229,236,255,.72);
  margin:6px 0 7px;
}
.usage-card p{font-size:12px;color:rgba(229,236,255,.64);line-height:1.45;margin:0}
#usageQuotaHint{
  margin-top:2px;
  color:rgba(229,236,255,.88);
  font-size:12px;
  font-weight:600;
}
.back-btn{
  margin-right:2px;
}
.quota-overview-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin:8px 0 18px;
}
.quota-overview-card{
  border:1px solid var(--gray-200);
  border-radius:var(--radius-lg);
  padding:14px;
  background:var(--gray-25);
}
.quota-overview-button{
  width:100%;
  text-align:left;
  cursor:pointer;
  transition:border-color .15s ease, background-color .15s ease, transform .15s ease;
}
.quota-overview-button:hover{
  border-color:var(--blue-200);
  background:var(--blue-50);
}
.quota-overview-card span{
  display:block;
  font-size:12px;
  color:var(--gray-500);
  margin-bottom:6px;
}
.quota-overview-card strong{
  display:block;
  font-size:20px;
  color:var(--gray-900);
  margin-bottom:6px;
}
.quota-overview-card small{
  display:block;
  font-size:12px;
  line-height:1.45;
  color:var(--gray-500);
}
.quota-referral-panel{
  margin:0 0 18px;
  padding:14px;
  border:1px solid var(--gray-200);
  border-radius:var(--radius-lg);
  background:var(--white);
}
.modal-referral-panel{
  margin-bottom:16px;
}
.quota-referral-head{
  margin-bottom:8px;
}
.quota-referral-desc{
  margin:0 0 10px;
  font-size:12px;
  line-height:1.45;
  color:var(--gray-500);
}
.quota-referral-row{
  display:flex;
  gap:8px;
  align-items:center;
  margin-bottom:10px;
}
.quota-referral-row.compact-row{
  align-items:flex-start;
  justify-content:space-between;
  margin-bottom:0;
}
.quota-referral-copy{
  flex:1 1 auto;
  min-width:0;
}
.quota-referral-copy strong{
  display:block;
  font-size:13px;
  color:var(--gray-800);
  margin-bottom:4px;
}
.quota-referral-copy small{
  display:block;
  font-size:12px;
  line-height:1.45;
  color:var(--gray-500);
}
.quota-referral-actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.quota-referral-input{
  flex:1 1 auto;
  min-width:0;
}
.quota-referral-item{
  padding:10px 0;
  border-top:1px solid var(--gray-100);
}
.quota-referral-item:first-child{
  padding-top:0;
  border-top:none;
}
.quota-referral-item strong{
  display:block;
  font-size:12px;
  color:var(--gray-800);
  margin-bottom:4px;
}
.quota-referral-item small{
  display:block;
  font-size:11px;
  line-height:1.45;
  color:var(--gray-500);
}
.quota-history-item{
  border:1px solid var(--gray-200);
  border-radius:var(--radius-lg);
  padding:12px 14px;
  background:var(--white);
}
.quota-history-row{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:flex-start;
}
.quota-history-row strong{
  font-size:13px;
  color:var(--gray-800);
}
.quota-history-row b{
  font-size:13px;
  color:var(--gray-900);
  white-space:nowrap;
}
.quota-history-item p{
  margin:6px 0 0;
  font-size:12px;
  line-height:1.45;
  color:var(--gray-500);
}
.quota-history-meta{
  margin-top:8px;
  font-size:11px;
  color:var(--gray-400);
}
.quota-expiry-badge{
  display:inline-flex;
  align-items:center;
  padding:2px 6px;
  border-radius:999px;
  font-size:10px;
  line-height:1.4;
  white-space:nowrap;
  background:rgba(37,99,235,0.08);
  color:#1d4ed8;
}
.quota-expiry-badge.is-soon{
  background:rgba(245,158,11,0.12);
  color:#b45309;
}
.quota-expiry-badge.is-expired{
  background:rgba(239,68,68,0.12);
  color:#b91c1c;
}

.main-content{flex:1;min-width:0;overflow-y:auto;overflow-x:hidden;padding:34px 34px 34px 22px;position:relative;z-index:1}
.container{width:100%;max-width:1160px;min-width:0;margin:0 auto}
.page-header{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:20px;
  margin-bottom:20px;
  padding:24px 26px;
  border:1px solid rgba(208,216,243,.98);
  border-radius:30px;
  background:
    radial-gradient(circle at 12% 10%, rgba(119,145,255,.16), transparent 20%),
    radial-gradient(circle at 88% 18%, rgba(174,120,255,.14), transparent 18%),
    linear-gradient(135deg, rgba(255,255,255,.90), rgba(247,249,255,.80)),
    linear-gradient(180deg, rgba(255,255,255,.36), rgba(255,255,255,0));
  box-shadow:0 28px 54px rgba(44,56,112,.14);
  backdrop-filter:blur(26px);
  position:relative;
  overflow:hidden;
}
.page-header::before{
  content:"";
  position:absolute;
  inset:-30% auto auto -8%;
  width:240px;
  height:240px;
  border-radius:999px;
  background:radial-gradient(circle, rgba(107,124,255,.12), rgba(107,124,255,0) 70%);
  pointer-events:none;
}
.page-header::after{
  content:"";
  position:absolute;
  inset:0 auto auto 0;
  width:100%;
  height:1px;
  background:linear-gradient(90deg, rgba(255,255,255,.85), rgba(255,255,255,0));
}
.page-title{font-size:32px;font-weight:780;color:var(--gray-900);margin-bottom:10px;letter-spacing:0;line-height:1.12}
.page-desc{font-size:14px;color:var(--gray-600);max-width:760px;line-height:1.72}
.header-actions{display:flex;gap:12px;flex-shrink:0}
body.task-entry-mode .header-actions{display:none}
.page-notice{
  margin-bottom:16px;
  border:1px solid var(--blue-100);
  border-radius:var(--radius-lg);
  background:var(--blue-50);
  color:var(--blue-600);
  padding:12px 16px;
  font-size:14px;
  font-weight:600;
}
.page-notice.error{
  border-color:var(--red-200);
  background:var(--red-50);
  color:var(--red-600);
}
.modal{
  position:fixed;
  inset:0;
  z-index:1200;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:20px;
  background:rgba(14,20,42,.44);
  backdrop-filter:blur(12px);
}
.modal.hidden{display:none}
.modal-card{
  width:min(420px,100%);
  background:linear-gradient(180deg, rgba(255,255,255,.96), rgba(247,249,255,.96));
  border:1px solid rgba(216,221,246,.82);
  border-radius:28px;
  box-shadow:0 26px 70px rgba(28,38,78,.18);
  padding:22px;
  backdrop-filter:blur(20px);
  max-height:min(calc(100vh - 40px), 860px);
  overflow-y:auto;
  overflow-x:hidden;
}
.auth-modal-card{
  width:min(520px,100%);
}
.auth-credentials{
  display:grid;
  gap:12px;
  margin-bottom:14px;
  padding:14px;
  border:1px solid rgba(216,221,246,.82);
  border-radius:18px;
  background:rgba(250,251,255,.92);
}
.auth-mode-switch{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  margin:10px 0 14px;
  padding:4px;
  background:rgba(241,245,255,.8);
  border:1px solid rgba(216,221,246,.82);
  border-radius:18px;
}
.auth-mode-tab{
  min-height:40px;
  border:0;
  border-radius:14px;
  background:transparent;
  color:var(--gray-600);
  font-weight:700;
}
.auth-mode-tab.active{
  background:linear-gradient(180deg, rgba(255,255,255,.98), rgba(248,250,255,.96));
  color:var(--gray-900);
  box-shadow:0 10px 22px rgba(28,38,78,.10);
}
.auth-pane{
  display:grid;
  gap:12px;
}
.auth-actions-block{
  margin-top:10px;
}
.modal-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:10px;
}
.modal-header h3{font-size:18px;color:var(--gray-900)}
.modal-desc,.modal-note{
  font-size:13px;
  color:var(--gray-500);
  line-height:1.55;
}
.modal-desc{margin-bottom:16px}
.modal-note{margin-top:12px}
.modal-note.error{
  color:var(--red-600);
  background:var(--red-50);
  border:1px solid rgba(226,73,109,.24);
  border-radius:var(--radius-md);
  padding:10px 12px;
  font-weight:700;
}
.modal-note.pending{
  color:var(--blue-600);
  background:var(--blue-50);
  border:1px solid rgba(79,115,255,.18);
  border-radius:var(--radius-md);
  padding:10px 12px;
}
.modal-note.success{
  color:var(--green-500);
  background:var(--green-50);
  border:1px solid rgba(31,191,117,.18);
  border-radius:var(--radius-md);
  padding:10px 12px;
}
.warning-note{
  color:#b45309;
  background:#fffbeb;
  border:1px solid #fde68a;
  border-radius:var(--radius-md);
  padding:10px 12px;
}
.auth-benefit-prompt{
  margin:0 0 16px;
  padding:12px;
  border:1px solid var(--blue-100);
  border-radius:var(--radius-md);
  background:var(--blue-50);
  color:var(--blue-600);
  font-size:13px;
  line-height:1.55;
}
.feedback-modal-card{width:min(560px,100%)}
.ask-quota-modal-card{width:min(480px,100%)}
.ask-quota-referral-box{
  display:grid;
  gap:10px;
  margin:6px 0 12px;
  padding:14px;
  border:1px solid var(--gray-200);
  border-radius:var(--radius-lg);
  background:rgba(255,255,255,.72);
}
.feedback-textarea{
  min-height:118px;
  resize:vertical;
  line-height:1.55;
}
.feedback-form-meta{
  display:flex;
  justify-content:space-between;
  gap:12px;
  margin:8px 0 14px;
  font-size:12px;
  color:var(--gray-500);
}
.feedback-form-meta .error{color:var(--red-600)}
.feedback-form-meta .success{color:var(--green-500)}
.feedback-history{
  margin-top:18px;
  padding-top:16px;
  border-top:1px solid var(--gray-100);
}
.feedback-history-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:10px;
}
.feedback-history-head strong{font-size:14px;color:var(--gray-800)}
.small-btn{
  padding:6px 10px;
  font-size:12px;
}
.feedback-history-list{
  max-height:220px;
  overflow:auto;
  display:grid;
  gap:10px;
}
.feedback-history-item{
  border:1px solid rgba(216,221,246,.72);
  border-radius:16px;
  padding:12px;
  background:linear-gradient(180deg, rgba(255,255,255,.96), rgba(248,250,255,.92));
}
.feedback-history-item strong{
  display:block;
  font-size:13px;
  color:var(--gray-800);
  margin-bottom:6px;
}
.feedback-history-item p{
  font-size:13px;
  color:var(--gray-600);
  line-height:1.55;
  white-space:pre-wrap;
}
.feedback-history-item time{
  display:block;
  margin-top:8px;
  font-size:11px;
  color:var(--gray-400);
}
.feedback-reply{
  margin-top:10px;
  padding:10px;
  border:1px solid var(--green-100);
  border-radius:var(--radius-md);
  background:var(--green-50);
}
.feedback-reply.pending{
  border-color:var(--gray-100);
  background:var(--white);
}
.feedback-reply span{
  display:block;
  margin-bottom:4px;
  font-size:12px;
  font-weight:700;
  color:var(--green-500);
}
.feedback-reply.pending span{color:var(--gray-500)}
.feedback-reply p{
  color:var(--gray-700);
  font-size:13px;
}
.icon-btn{
  width:34px;
  height:34px;
  border-radius:999px;
  border:1px solid var(--gray-200);
  background:var(--white);
  color:var(--gray-600);
  display:flex;
  align-items:center;
  justify-content:center;
}
button:disabled{
  cursor:not-allowed;
  opacity:.62;
  transform:none !important;
}

.grid-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:24px;align-items:start;min-width:0}
.grid-layout.task-entry-only{grid-template-columns:minmax(0,1fr)}
.history-page-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:20px;
  align-items:start;
  min-width:0;
}
.stack{display:flex;flex-direction:column;gap:16px;min-width:0}
.card{
  background:linear-gradient(180deg, rgba(255,255,255,.96), rgba(250,251,255,.92));
  border:1px solid rgba(212,220,243,.96);
  border-radius:var(--radius-xl);
  box-shadow:0 26px 52px rgba(44,56,112,.12);
  padding:28px;
  min-width:0;
  backdrop-filter:blur(18px);
  position:relative;
  overflow:hidden;
}
.card::before{
  content:"";
  position:absolute;
  inset:0 0 auto 0;
  height:64px;
  background:linear-gradient(180deg, rgba(255,255,255,.38), rgba(255,255,255,0));
  pointer-events:none;
}
.card::after{
  content:"";
  position:absolute;
  right:-60px;
  bottom:-60px;
  width:180px;
  height:180px;
  border-radius:999px;
  background:radial-gradient(circle, rgba(131,149,255,.08), rgba(131,149,255,0) 70%);
  pointer-events:none;
}
.card.compact,.insight-card{position:sticky;top:0}
.card-title{font-size:18px;font-weight:700;color:var(--gray-900);margin-bottom:24px}

.internal-page{
  display:block;
  overflow:auto;
  background:
    radial-gradient(circle at 16% 0%, rgba(79,115,255,.08), transparent 24%),
    radial-gradient(circle at 100% 0%, rgba(124,87,255,.06), transparent 28%),
    var(--bg-body);
}
.internal-shell{
  max-width:1440px;
  margin:0 auto;
  padding:32px 24px 48px;
}
.internal-admin-layout{
  display:grid;
  grid-template-columns:240px minmax(0,1fr);
  gap:20px;
  align-items:start;
}
.internal-admin-sidebar{
  position:sticky;
  top:24px;
  display:grid;
  gap:10px;
}
.internal-nav-item{
  width:100%;
  text-align:left;
  border:1px solid var(--gray-100);
  border-radius:var(--radius-lg);
  background:var(--white);
  padding:14px 16px;
  box-shadow:var(--shadow-sm);
  transition:border-color .2s,background .2s;
}
.internal-nav-item:hover{
  border-color:var(--gray-300);
}
.internal-nav-item.active{
  border-color:var(--blue-500);
  background:var(--blue-50);
  box-shadow:inset 3px 0 0 var(--blue-500);
}
.internal-nav-item strong{
  display:block;
  font-size:14px;
  color:var(--gray-900);
  margin-bottom:4px;
}
.internal-nav-item span{
  display:block;
  font-size:12px;
  line-height:1.5;
  color:var(--gray-500);
}
.internal-admin-main{
  min-width:0;
}
.internal-panel{
  display:none;
}
.internal-panel.active{
  display:block;
}
.internal-panel-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:16px;
  margin-bottom:16px;
}
.internal-panel-head h2{
  margin:0 0 6px;
  font-size:22px;
  color:var(--gray-900);
}
.internal-panel-head p{
  font-size:13px;
  color:var(--gray-500);
}
.internal-auth-gate{
  min-height:calc(100vh - 80px);
  display:flex;
  align-items:center;
  justify-content:center;
}
.internal-auth-card{
  width:min(460px,100%);
  background:var(--white);
  border:1px solid var(--gray-100);
  border-radius:var(--radius-xl);
  box-shadow:var(--shadow-sm);
  padding:24px;
}
.internal-header{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:20px;
  margin-bottom:20px;
}
.internal-eyebrow{
  font-size:12px;
  color:var(--gray-400);
  margin-bottom:8px;
  text-transform:uppercase;
}
.internal-header h1{
  font-size:28px;
  color:var(--gray-900);
  margin-bottom:8px;
}
.internal-subtitle{
  font-size:14px;
  color:var(--gray-500);
  max-width:720px;
}
.internal-token-card{
  min-width:320px;
  display:grid;
  gap:10px;
}
.internal-toolbar-actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}
.internal-filter-bar{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  align-items:end;
}
.internal-entity-filter-bar{
  grid-template-columns:repeat(3,minmax(0,1fr));
  margin-bottom:12px;
}
.internal-entity-filter-bar-wide{
  grid-template-columns:1.3fr 1fr 1fr auto;
}
.internal-grid{
  display:grid;
  grid-template-columns:1.3fr 1fr;
  gap:20px;
  margin-bottom:20px;
}
.internal-grid-halves{
  grid-template-columns:1fr 1fr;
}
.internal-card,.internal-subcard{
  background:var(--white);
  border:1px solid var(--gray-100);
  border-radius:var(--radius-xl);
  box-shadow:var(--shadow-sm);
}
.internal-card{padding:20px}
.internal-subcard{padding:16px}
.internal-card-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:16px;
  margin-bottom:16px;
}
.internal-card-head strong,.internal-subcard strong{
  display:block;
  color:var(--gray-900);
  font-size:15px;
  margin-bottom:4px;
}
.internal-card-head p{
  color:var(--gray-500);
  font-size:12px;
}
.internal-metric-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.internal-funnel-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.internal-metric{
  padding:14px;
  border:1px solid var(--gray-100);
  border-radius:var(--radius-lg);
  background:var(--gray-50);
}
.internal-metric span{
  display:block;
  font-size:12px;
  color:var(--gray-500);
  margin-bottom:8px;
}
.internal-metric strong{
  font-size:24px;
  color:var(--gray-900);
}
.internal-list{
  display:grid;
  gap:10px;
}
.internal-list-item{
  display:flex;
  justify-content:space-between;
  gap:12px;
  padding:12px 14px;
  border:1px solid var(--gray-100);
  border-radius:var(--radius-lg);
  background:var(--gray-50);
}
.internal-list-button{
  width:100%;
  text-align:left;
  cursor:pointer;
}
.internal-list-button.active{
  border-color:var(--blue-500);
  background:var(--blue-50);
  box-shadow:0 0 0 1px rgba(37,99,235,.08);
}
.internal-list-main strong{
  display:block;
  font-size:14px;
  color:var(--gray-900);
  margin-bottom:4px;
}
.internal-list-main p,.internal-list-side span{
  font-size:12px;
  color:var(--gray-500);
}
.internal-list-side{
  display:grid;
  gap:4px;
  text-align:right;
}
.internal-lookup-bar{
  display:grid;
  grid-template-columns:1fr 1fr auto;
  gap:12px;
  align-items:end;
  margin-bottom:16px;
}
.internal-lookup-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
  margin-bottom:16px;
}
.internal-pre{
  margin:0;
  white-space:pre-wrap;
  word-break:break-word;
  font-size:12px;
  line-height:1.55;
  color:var(--gray-700);
}
.internal-kv-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.internal-kv-item{
  min-width:0;
  padding:10px 12px;
  border:1px solid var(--gray-100);
  border-radius:var(--radius-md);
  background:var(--white);
}
.internal-kv-item span{
  display:block;
  margin-bottom:5px;
  color:var(--gray-500);
  font-size:12px;
}
.internal-kv-item strong{
  display:block;
  margin:0;
  color:var(--gray-900);
  font-size:13px;
  line-height:1.45;
  word-break:break-word;
}
.internal-stat-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
}
.internal-stat-item{
  padding:12px;
  border:1px solid var(--gray-100);
  border-radius:var(--radius-md);
  background:var(--white);
}
.internal-stat-item span{
  display:block;
  margin-bottom:8px;
  color:var(--gray-500);
  font-size:12px;
}
.internal-stat-item strong{
  display:block;
  margin:0;
  color:var(--gray-900);
  font-size:20px;
  line-height:1.1;
}
.internal-quota-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.internal-quota-card{
  min-width:0;
  padding:12px;
  border:1px solid var(--gray-100);
  border-radius:var(--radius-md);
  background:var(--white);
}
.internal-quota-card strong{
  display:block;
  margin:0 0 10px;
  color:var(--gray-900);
  font-size:14px;
}
.internal-quota-metrics{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
  margin-bottom:10px;
}
.internal-quota-metrics span{
  display:block;
  padding:8px;
  border:1px solid var(--gray-100);
  border-radius:var(--radius-md);
  background:var(--gray-50);
  color:var(--gray-500);
  font-size:12px;
}
.internal-quota-metrics b{
  display:block;
  margin-top:4px;
  color:var(--gray-900);
  font-size:16px;
  font-weight:700;
}
.internal-quota-meta{
  display:grid;
  gap:4px;
  color:var(--gray-500);
  font-size:12px;
  line-height:1.45;
}
.internal-json-modal-card{width:min(820px,100%)}
.internal-form-modal-card{width:min(720px,100%)}
.internal-json-modal-body{
  max-height:min(70vh,680px);
  overflow:auto;
  padding:12px;
  border:1px solid var(--gray-100);
  border-radius:var(--radius-md);
  background:var(--gray-50);
}
.internal-inline-meta{
  margin-bottom:12px;
  font-size:12px;
  color:var(--gray-500);
}
.internal-master-detail{
  display:grid;
  grid-template-columns:minmax(320px,0.92fr) minmax(0,1.08fr);
  gap:16px;
  align-items:start;
}
.internal-detail-panel{
  min-width:0;
}
.internal-tabs{
  display:flex;
  gap:6px;
  padding:4px;
  margin-bottom:12px;
  border:1px solid var(--gray-100);
  border-radius:var(--radius-md);
  background:var(--gray-50);
  overflow-x:auto;
}
.internal-tab{
  flex:0 0 auto;
  padding:8px 10px;
  border:0;
  border-radius:var(--radius-sm);
  background:transparent;
  color:var(--gray-600);
  font-size:13px;
  cursor:pointer;
}
.internal-tab.active{
  background:var(--white);
  color:var(--blue-600);
  box-shadow:var(--shadow-sm);
}
.internal-tab-panel{min-width:0}
.internal-form-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
  margin-bottom:12px;
}
.internal-form-grid-wide{
  grid-template-columns:1fr 1fr 1.2fr;
}
.inline-input-group{
  display:grid;
  grid-template-columns:minmax(0,1fr) 88px;
  gap:8px;
}
.internal-review-block{
  border:1px solid var(--gray-100);
  border-radius:var(--radius-lg);
  padding:14px;
  background:var(--gray-50);
  margin-bottom:12px;
}
.internal-review-block-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:10px;
}
.internal-review-block-head strong{margin:0}
.internal-help-text{
  margin:-2px 0 10px;
  color:var(--gray-500);
  font-size:12px;
  line-height:1.5;
}
.internal-detail-summary{
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr) minmax(0,.75fr);
  gap:12px;
  margin-bottom:12px;
}
.internal-review-block-primary{
  background:linear-gradient(180deg, rgba(79,115,255,.06), rgba(79,115,255,.02));
  border-color:rgba(79,115,255,.14);
}
.internal-action-block{
  background:rgba(255,255,255,.94);
}
.internal-chip{
  display:inline-flex;
  align-items:center;
  padding:3px 8px;
  border-radius:999px;
  background:rgba(79,115,255,.10);
  color:#355cf0;
  font-size:11px;
  font-weight:600;
}
.internal-help-inline{
  color:var(--gray-400);
  font-size:12px;
}
.internal-review-text{
  font-size:14px;
  line-height:1.65;
  color:var(--gray-800);
  white-space:pre-wrap;
}
.internal-review-text.compact{
  font-size:13px;
  line-height:1.6;
}
.internal-pre.compact{
  max-height:240px;
  overflow:auto;
}
.internal-disclosure{
  margin:0 0 12px;
  border:1px solid var(--gray-100);
  border-radius:var(--radius-lg);
  background:var(--white);
  box-shadow:var(--shadow-sm);
  overflow:hidden;
}
.internal-disclosure > summary{
  list-style:none;
  cursor:pointer;
  padding:12px 14px;
  font-size:13px;
  font-weight:600;
  color:var(--gray-800);
  background:var(--gray-50);
}
.internal-disclosure > summary::-webkit-details-marker{
  display:none;
}
.internal-disclosure[open] > summary{
  border-bottom:1px solid var(--gray-100);
}
.internal-disclosure > *:not(summary){
  padding:12px 14px;
}
.internal-settings-card .internal-disclosure{
  margin-bottom:10px;
}
.internal-settings-card .internal-form-grid{
  margin-bottom:0;
}

.btn-outline,.btn-primary{
  border-radius:var(--radius-md);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  font-weight:500;
  transition:background .2s,transform .2s,border-color .2s;
}
.btn-outline{
  padding:8px 16px;
  background:linear-gradient(180deg, rgba(255,255,255,.98), rgba(245,248,255,.96));
  border:1px solid rgba(216,221,246,.88);
  color:var(--gray-700);
  font-size:14px;
  box-shadow:var(--shadow-sm);
}
.btn-compact{
  padding:6px 10px;
  font-size:12px;
}
.btn-outline:hover{
  background:linear-gradient(180deg, rgba(255,255,255,.98), rgba(238,243,255,.96));
  border-color:var(--blue-200);
}
.btn-outline.danger{
  color:#b91c1c;
  border-color:#fecaca;
  background:#fffafa;
}
.btn-outline.danger:hover{
  background:#fef2f2;
  border-color:#fca5a5;
}
.btn-primary{
  padding:14px 24px;
  background:linear-gradient(135deg, var(--brand-primary), var(--brand-accent));
  border:0;
  color:var(--white);
  font-size:16px;
  font-weight:600;
  box-shadow:var(--shadow-brand);
}
.btn-primary:hover{
  background:linear-gradient(135deg, var(--brand-hover), #7554f3);
  transform:translateY(-1px);
}
.btn-primary.small{padding:8px 20px;font-size:14px;border-radius:var(--radius-md)}
.btn-primary.wide{width:100%}
.action-status{
  display:flex;
  align-items:center;
  gap:10px;
  margin-top:12px;
  padding:10px 12px;
  border:1px solid var(--blue-100);
  border-radius:var(--radius-md);
  background:linear-gradient(180deg,#f8fbff 0%,#eef5ff 100%);
  color:var(--blue-600);
  font-size:13px;
  font-weight:600;
}
.action-status.error{
  border-color:#fecaca;
  background:linear-gradient(180deg,#fff7f7 0%,#fff1f2 100%);
  color:#dc2626;
}
.action-status.error .status-spinner{
  display:none;
}
.status-spinner{
  width:16px;
  height:16px;
  border:2px solid rgba(37,99,235,.18);
  border-top-color:var(--blue-600);
  border-radius:50%;
  animation:spin .8s linear infinite;
  flex-shrink:0;
}
@keyframes spin{
  to{transform:rotate(360deg)}
}

.stepper{display:flex;align-items:center;justify-content:center;margin-bottom:32px;font-size:14px}
.step{display:flex;align-items:center;font-weight:500;color:var(--gray-400);white-space:nowrap}
.step.active,.step.done{color:var(--blue-600)}
.step-num{
  width:24px;height:24px;border-radius:50%;
  border:1px solid var(--gray-200);
  display:flex;align-items:center;justify-content:center;
  font-size:12px;margin-right:8px;
}
.step.active .step-num,.step.done .step-num{
  background:var(--blue-600);
  color:var(--white);
  border-color:var(--blue-600);
  box-shadow:0 2px 4px rgba(37,99,235,.3);
}
.step-line{width:60px;height:1px;background:var(--gray-200);margin:0 16px}
.step-line.active{background:var(--blue-600)}

.task-choice-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  margin-bottom:20px;
  position:relative;
  z-index:1;
}
body.task-entry-mode .task-choice-head{display:none}
.task-choice-head .card-title{margin-bottom:6px}
.task-choice-desc{
  font-size:14px;
  color:var(--gray-600);
  line-height:1.7;
}
.required-badge{
  flex-shrink:0;
  display:inline-flex;
  align-items:center;
  min-height:26px;
  padding:4px 9px;
  border:1px solid #fecdd3;
  border-radius:999px;
  background:#fff1f2;
  color:#be123c;
  font-size:12px;
  font-weight:700;
}
.task-landing{
  min-height:auto;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
}
.landing-task-grid .analysis-type-card{
  min-height:192px;
  justify-content:space-between;
}
.analysis-form-panel{
  position:relative;
}
.analysis-type-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  margin-bottom:8px;
  position:relative;
  z-index:1;
}
.analysis-type-card{
  min-height:180px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:14px;
  padding:22px 22px 24px;
  border:1px solid rgba(208,216,243,.98);
  border-radius:22px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.98), rgba(247,249,255,.92)),
    linear-gradient(135deg, rgba(255,255,255,.34), rgba(255,255,255,0));
  color:var(--gray-700);
  text-align:left;
  box-shadow:0 22px 40px rgba(51,64,120,.14);
  backdrop-filter:blur(22px);
  transition:border-color .2s,background .2s,box-shadow .2s,transform .2s;
  position:relative;
  overflow:hidden;
}
.analysis-type-card::before{
  content:"";
  position:absolute;
  inset:0 0 auto 0;
  height:96px;
  background:linear-gradient(180deg, rgba(255,255,255,.54), rgba(255,255,255,0));
  pointer-events:none;
}
.analysis-type-card::after{
  content:"";
  position:absolute;
  right:-24px;
  top:-24px;
  width:120px;
  height:120px;
  border-radius:999px;
  opacity:.9;
  pointer-events:none;
}
.analysis-type-card:hover{
  border-color:rgba(146,165,228,.98);
  background:
    linear-gradient(180deg, rgba(255,255,255,.98), rgba(243,247,255,.92)),
    linear-gradient(135deg, rgba(255,255,255,.34), rgba(255,255,255,0));
  box-shadow:0 30px 48px rgba(58,72,138,.22);
  transform:translateY(-4px);
}
.analysis-type-card.selected{
  border-color:var(--blue-500);
  background:
    linear-gradient(180deg, rgba(239,244,255,.96), rgba(248,250,255,.92)),
    linear-gradient(135deg, rgba(255,255,255,.28), rgba(255,255,255,0));
  box-shadow:0 0 0 2px rgba(91,124,255,.24),0 26px 48px rgba(59,88,182,.20);
}
.analysis-type-card[data-task-entry-type="signal_reading"]{
  background:
    linear-gradient(180deg, rgba(255,255,255,.98), rgba(245,248,255,.90)),
    linear-gradient(135deg, rgba(108,137,255,.18), rgba(255,255,255,0));
}
.analysis-type-card[data-task-entry-type="signal_reading"]::after{
  background:radial-gradient(circle, rgba(109,136,255,.18), rgba(109,136,255,0) 68%);
}
.analysis-type-card[data-task-entry-type="reply_check"]{
  background:
    linear-gradient(180deg, rgba(255,255,255,.98), rgba(244,252,248,.90)),
    linear-gradient(135deg, rgba(82,211,146,.14), rgba(255,255,255,0));
}
.analysis-type-card[data-task-entry-type="reply_check"]::after{
  background:radial-gradient(circle, rgba(82,211,146,.16), rgba(82,211,146,0) 68%);
}
.analysis-type-card[data-task-entry-type="relationship_progress"]{
  background:
    linear-gradient(180deg, rgba(255,255,255,.98), rgba(255,247,240,.90)),
    linear-gradient(135deg, rgba(251,146,60,.14), rgba(255,255,255,0));
}
.analysis-type-card[data-task-entry-type="relationship_progress"]::after{
  background:radial-gradient(circle, rgba(251,146,60,.16), rgba(251,146,60,0) 68%);
}
.analysis-type-card strong{
  font-size:21px;
  color:var(--gray-900);
  line-height:1.28;
  position:relative;
  z-index:1;
}
.analysis-type-card span:last-child{
  font-size:14px;
  line-height:1.7;
  color:var(--gray-600);
  position:relative;
  z-index:1;
}
.analysis-type-icon{
  width:50px;
  height:50px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:14px;
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.78),
    0 10px 24px rgba(91,124,255,.10);
  position:relative;
  z-index:1;
}
.analysis-type-icon.blue{
  background:linear-gradient(180deg, rgba(223,232,255,.98), rgba(241,245,255,.98));
  color:var(--blue-600);
}
.analysis-type-icon.green{
  background:linear-gradient(180deg, rgba(223,253,236,.98), rgba(240,253,246,.98));
  color:#1fa26b;
}
.analysis-type-icon.orange{
  background:linear-gradient(180deg, rgba(255,234,220,.98), rgba(255,247,241,.98));
  color:#e77b28;
}
.current-task-summary{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  column-gap:10px;
  row-gap:2px;
  align-items:center;
  width:100%;
  padding:12px 14px;
  border:1px solid var(--blue-100);
  border-radius:var(--radius-md);
  background:#f8fbff;
  margin-bottom:22px;
  text-align:left;
}
.current-task-summary span{
  grid-row:1 / span 2;
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:3px 8px;
  border-radius:6px;
  background:var(--blue-600);
  color:var(--white);
  font-size:12px;
  font-weight:700;
  white-space:nowrap;
}
.current-task-summary strong{
  font-size:14px;
  color:var(--gray-900);
}
.current-task-summary p{
  font-size:12px;
  color:var(--gray-500);
  line-height:1.5;
}
.current-task-summary em{
  grid-column:3;
  grid-row:1 / span 2;
  justify-self:end;
  align-self:center;
  font-style:normal;
  font-size:12px;
  font-weight:700;
  color:var(--blue-600);
}
.task-switch-panel{
  position:absolute;
  z-index:12;
  top:58px;
  left:0;
  width:min(420px,100%);
  display:grid;
  gap:8px;
  padding:10px;
  border:1px solid var(--gray-200);
  border-radius:var(--radius-md);
  background:var(--white);
  box-shadow:var(--shadow-md);
}
.task-switch-card{
  min-height:42px;
  padding:10px 12px;
  border:1px solid var(--gray-200);
  border-radius:8px;
  background:var(--white);
  color:var(--gray-700);
  font-size:14px;
  font-weight:700;
  text-align:left;
}
.task-switch-card:hover{
  border-color:var(--blue-100);
  background:var(--blue-50);
}
.task-switch-card.selected{
  border-color:var(--blue-500);
  background:var(--blue-50);
  color:var(--blue-600);
}
.form-divider{
  height:1px;
  background:var(--gray-100);
  margin:0 -2px 22px;
}
.form-intro{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:16px;
  margin-bottom:18px;
}
.form-intro h3{
  font-size:17px;
  color:var(--gray-900);
}
.form-intro p{
  max-width:360px;
  font-size:12px;
  color:var(--gray-500);
  text-align:right;
}

.form-section{margin-bottom:24px}
.section-title{
  display:flex;
  align-items:center;
  gap:6px;
  font-size:16px;
  font-weight:700;
  color:var(--gray-800);
  margin-bottom:12px;
}
.section-title .required-mark,
.section-title .optional-mark{
  display:inline-flex;
  align-items:center;
  min-height:22px;
  padding:2px 7px;
  border-radius:999px;
  font-size:12px;
  font-weight:700;
}
.section-title .required-mark{
  border:1px solid #fecdd3;
  background:#fff1f2;
  color:#be123c;
}
.section-title .optional-mark{
  border:1px solid var(--gray-200);
  background:var(--gray-50);
  color:var(--gray-500);
}
.textarea-wrapper{
  border:1px solid var(--gray-200);
  border-radius:var(--radius-lg);
  overflow:hidden;
  transition:border-color .2s,box-shadow .2s;
}
.textarea-wrapper.plain-textarea{overflow:hidden}
.textarea-wrapper.plain-textarea .main-textarea{
  border-radius:0;
}
.textarea-wrapper:focus-within{border-color:var(--blue-500);box-shadow:0 0 0 1px var(--blue-500)}
.textarea-tabs{display:flex;background:var(--gray-50);border-bottom:1px solid var(--gray-100)}
.tab-btn{
  padding:12px 20px;
  font-size:14px;
  font-weight:500;
  color:var(--gray-500);
  background:transparent;
  border:0;
  cursor:pointer;
}
.tab-btn.active,.upload-tab:hover{
  color:var(--blue-600);
  background:var(--white);
  border-bottom:2px solid var(--blue-600);
  font-weight:600;
}
.file-input{
  position:absolute;
  width:1px;
  height:1px;
  opacity:0;
  overflow:hidden;
  clip:rect(0 0 0 0);
  clip-path:inset(50%);
  white-space:nowrap;
}
.image-mode-panel{
  margin-top:12px;
  padding:14px;
  border:1px solid var(--blue-100);
  border-radius:var(--radius-lg);
  background:linear-gradient(180deg,#f8fbff 0%,#ffffff 100%);
}
.image-mode-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:6px;
}
.image-mode-head strong{
  font-size:14px;
  color:var(--gray-900);
}
.image-mode-head span{
  font-size:12px;
  color:var(--blue-600);
  font-weight:600;
}
.image-mode-desc{
  margin-bottom:12px;
  font-size:13px;
  line-height:1.6;
  color:var(--gray-600);
}
.image-transcript-preview{
  margin-top:12px;
  border:1px solid var(--gray-200);
  border-radius:var(--radius-lg);
  background:var(--white);
  overflow:hidden;
}
.image-transcript-preview .image-transcript-preview-text{
  height:220px;
  max-height:220px;
  min-height:220px;
  overflow:auto;
  resize:none;
  white-space:pre-wrap;
}
.image-transcript-preview-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:10px 12px;
  border-bottom:1px solid var(--gray-100);
  background:var(--gray-50);
}
.image-transcript-preview-head strong{
  font-size:13px;
  color:var(--gray-900);
}
.image-transcript-preview-head span{
  font-size:12px;
  color:var(--gray-500);
}
.image-transcript-preview-text{
  min-height:150px;
  height:180px;
  border:0;
  border-radius:0;
  background:var(--white);
}
.image-mode-actions{
  display:grid;
  gap:10px;
  margin-top:12px;
}
.main-textarea{
  width:100%;
  height:180px;
  padding:16px;
  border:0;
  resize:vertical;
  font-size:14px;
  line-height:1.6;
  color:var(--gray-700);
  background:var(--white);
}
.main-textarea[readonly]{
  cursor:default;
  color:var(--gray-600);
  background:var(--gray-50);
}
.option-card.locked,
.task-switch-card.locked,
.analysis-type-card.locked,
.tab-btn.locked,
.current-task-summary:disabled{
  cursor:not-allowed;
  opacity:.64;
}
.tab-btn[aria-disabled="true"]{
  pointer-events:none;
}
.secondary-textarea{height:112px}
.compact-secondary-textarea{height:92px;min-height:92px}
.draft-message-textarea{height:72px;min-height:72px}
.reply-extra-textarea{margin-top:14px}
.input-meta{
  display:flex;
  justify-content:flex-end;
  align-items:center;
  gap:8px;
  margin-top:8px;
  font-size:12px;
  color:var(--gray-400);
  flex-wrap:wrap;
}
.privacy-pill{
  display:inline-flex;
  align-items:center;
  gap:4px;
  background:var(--gray-100);
  color:var(--gray-500);
  padding:4px 8px;
  border-radius:4px;
}
.alias-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
  margin-top:14px;
}
.image-queue{
  display:grid;
  gap:10px;
  margin-top:12px;
}
.image-queue-item{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  padding:12px 14px;
  border:1px solid var(--gray-200);
  border-radius:var(--radius-lg);
  background:var(--gray-50);
}
.image-thumb-btn{
  width:84px;
  height:112px;
  padding:0;
  border:1px solid var(--gray-200);
  border-radius:12px;
  background:var(--white);
  overflow:hidden;
  flex-shrink:0;
  box-shadow:var(--shadow-sm);
}
.image-thumb{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.image-queue-main{
  min-width:0;
  display:grid;
  gap:4px;
}
.image-queue-head{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}
.image-queue-main strong{
  font-size:13px;
  color:var(--gray-900);
}
.image-order-badge{
  display:inline-flex;
  align-items:center;
  min-height:22px;
  padding:0 8px;
  border-radius:999px;
  background:var(--blue-50);
  color:var(--blue-600);
  font-size:11px;
  font-weight:700;
}
.image-queue-main span{
  font-size:12px;
  color:var(--gray-500);
  word-break:break-all;
}
.image-queue-tip{
  font-style:normal;
  font-size:11px;
  color:var(--orange-500);
}
.image-queue-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  justify-content:flex-end;
  align-items:center;
}
.image-order-group{
  display:flex;
  gap:8px;
}
.image-order-btn,.image-remove-btn{
  min-height:36px;
  padding:7px 12px;
  font-size:12px;
}
.image-preview-modal-card{
  width:min(92vw,880px);
  max-width:92vw;
  position:relative;
  display:flex;
  flex-direction:column;
  overflow:hidden;
}
.image-preview-stage{
  flex:1 1 auto;
  min-height:0;
  display:flex;
  align-items:center;
  justify-content:center;
  max-height:72vh;
  overflow:auto;
  overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;
  touch-action:pan-x pan-y;
  border-radius:var(--radius-lg);
  background:#f8fafc;
}
.image-preview-modal-img{
  max-width:100%;
  max-height:72vh;
  display:block;
  object-fit:contain;
  cursor:pointer;
}
#imagePreviewCloseBtn{
  display:none;
}
.transcript-segments{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-bottom:14px;
}
.transcript-segment-chip{
  display:inline-grid;
  gap:2px;
  padding:8px 10px;
  border:1px solid var(--blue-100);
  border-radius:var(--radius-md);
  background:var(--blue-50);
}
.transcript-segment-chip strong{
  font-size:12px;
  color:var(--blue-600);
}
.transcript-segment-chip span{
  font-size:11px;
  color:var(--gray-600);
  word-break:break-all;
}
.transcript-segment-chip em{
  font-style:normal;
  font-size:11px;
  color:var(--gray-500);
}
.transcript-editor-list{
  display:grid;
  gap:14px;
  min-width:0;
}
.transcript-editor-card{
  border:1px solid var(--gray-200);
  border-radius:var(--radius-lg);
  background:var(--white);
  overflow:hidden;
  min-width:0;
  max-width:100%;
}
.review-notice{
  margin-bottom:16px;
  padding:16px;
  border:1px solid #fbbf24;
  border-radius:var(--radius-lg);
  background:linear-gradient(180deg,#fffaf0 0%,#fffbeb 100%);
  box-shadow:0 8px 24px rgba(245,158,11,.08);
}
.review-notice-head{
  display:grid;
  gap:6px;
  margin-bottom:12px;
}
.review-notice-head strong{
  display:inline-flex;
  align-items:center;
  width:max-content;
  min-height:28px;
  padding:0 10px;
  border-radius:999px;
  background:#f59e0b;
  color:#fff;
  font-size:13px;
}
.review-notice-head span{
  font-size:13px;
  color:#92400e;
  line-height:1.6;
}
.review-notice-list{
  display:grid;
  gap:10px;
}
.review-notice-item{
  padding:10px 12px;
  border-radius:var(--radius-md);
  background:rgba(255,255,255,.82);
  border:1px solid rgba(251,191,36,.26);
  color:#78350f;
  font-size:13px;
  line-height:1.6;
}
.transcript-editor-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:12px;
  padding:12px 14px;
  background:var(--gray-50);
  border-bottom:1px solid var(--gray-100);
}
.transcript-editor-head-main{
  min-width:0;
  display:grid;
  gap:4px;
}
.transcript-editor-head strong{
  font-size:13px;
  color:var(--gray-900);
}
.transcript-editor-head span{
  font-size:12px;
  color:var(--gray-500);
}
.transcript-inline-preview{
  width:76px;
  height:102px;
  padding:0;
  border:1px solid var(--gray-200);
  border-radius:10px;
  overflow:hidden;
  background:var(--white);
  flex-shrink:0;
}
.transcript-inline-preview img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.transcript-segment-textarea{
  min-height:160px;
  border-radius:0;
  border:0;
}
.transcript-chat-editor{
  display:grid;
  gap:12px;
  padding:18px 14px;
  background:#ededed;
  overflow-x:hidden;
  min-width:0;
  max-width:100%;
}
.transcript-chat-row{
  display:grid;
  gap:6px;
  min-width:0;
  max-width:100%;
}
.transcript-chat-editor{
  max-height:52vh;
  overflow:auto;
  padding-right:4px;
}
.transcript-time-marker{
  display:flex;
  justify-content:center;
}
.transcript-time-marker input{
  width:150px;
  min-height:26px;
  border:0;
  border-radius:999px;
  background:transparent;
  color:#9ca3af;
  font-size:12px;
  text-align:center;
  outline:none;
}
.transcript-time-marker input:focus{
  background:rgba(255,255,255,.78);
  box-shadow:0 0 0 1px rgba(148,163,184,.38);
}
.transcript-bubble-wrap{
  width:min(72%,520px);
  max-width:100%;
  min-width:0;
  display:grid;
  gap:4px;
}
.transcript-chat-row.user .transcript-bubble-wrap{
  justify-self:end;
}
.transcript-chat-row.partner .transcript-bubble-wrap{
  justify-self:start;
}
.transcript-bubble-meta{
  display:flex;
  align-items:center;
  gap:6px;
  flex-wrap:wrap;
}
.transcript-chat-row.user .transcript-bubble-meta{
  justify-content:flex-end;
}
.transcript-chat-row.partner .transcript-bubble-meta{
  justify-content:flex-start;
}
.transcript-bubble-meta select,
.transcript-message-remove{
  min-height:24px;
  border:0;
  border-radius:999px;
  background:rgba(255,255,255,.78);
  color:var(--gray-500);
  font-size:12px;
  outline:none;
}
.transcript-bubble-meta select{
  padding:2px 8px;
}
.transcript-message-remove{
  padding:2px 8px;
  cursor:pointer;
}
.transcript-message-remove:hover{
  color:#dc2626;
  background:#fff;
}
.transcript-message-textarea{
  box-sizing:border-box;
  display:block;
  width:100%;
  max-width:100%;
  min-width:0;
  min-height:34px;
  height:34px;
  padding:6px 10px;
  border:0;
  border-radius:8px;
  color:#111827;
  font-size:14px;
  line-height:1.35;
  resize:none;
  overflow:auto;
  outline:none;
  box-shadow:0 1px 1px rgba(15,23,42,.05);
}
.transcript-chat-row.partner .transcript-message-textarea{
  background:#fff;
  border-top-left-radius:4px;
}
.transcript-chat-row.user .transcript-message-textarea{
  background:#95ec69;
  border-top-right-radius:4px;
  text-align:right;
}
.transcript-message-textarea:focus{
  box-shadow:0 0 0 2px rgba(59,130,246,.25),0 1px 1px rgba(15,23,42,.05);
}
.transcript-remove-hint{
  margin-top:8px;
  font-size:12px;
  color:var(--gray-500);
}
.compact-field{margin-bottom:0}
.inline-note{
  margin-top:10px;
  font-size:12px;
  color:var(--gray-500);
}
.draft-input-wrap{position:relative}
.text-input{
  width:100%;
  border:1px solid rgba(216,221,246,.88);
  border-radius:var(--radius-lg);
  padding:12px 16px;
  font-size:14px;
  color:var(--gray-700);
  background:rgba(255,255,255,.96);
  transition:border-color .2s,box-shadow .2s;
  box-shadow:0 8px 18px rgba(48,63,120,.05);
}
.text-input:focus{
  border-color:var(--blue-200);
  box-shadow:0 0 0 4px rgba(91,124,255,.12), 0 10px 26px rgba(51,67,145,.08);
}
.draft-input-wrap .text-input{padding-right:74px}
.draft-input-wrap small{
  position:absolute;
  right:16px;
  top:50%;
  transform:translateY(-50%);
  font-size:12px;
  color:var(--gray-300);
}

.options-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.option-card{
  border:1px solid var(--gray-200);
  border-radius:var(--radius-lg);
  padding:16px;
  cursor:pointer;
  background:var(--white);
  text-align:left;
  transition:border-color .2s,background .2s;
}
.option-card:hover{border-color:var(--gray-300)}
.option-card.selected{border:2px solid var(--blue-500);background:rgba(59,130,246,.05);padding:15px}
.option-head{display:flex;align-items:center;gap:8px;margin-bottom:4px}

@media (max-width: 1120px){
  .internal-admin-layout{
    grid-template-columns:1fr;
  }
  .internal-admin-sidebar{
    position:static;
    grid-template-columns:repeat(4,minmax(0,1fr));
  }
  .internal-master-detail{
    grid-template-columns:1fr;
  }
  .internal-detail-summary{
    grid-template-columns:1fr;
  }
}

@media (max-width: 860px){
  .internal-shell{
    padding:24px 16px 40px;
  }
  .internal-header{
    flex-direction:column;
    align-items:stretch;
  }
  .internal-token-card{
    min-width:0;
  }
  .internal-filter-bar,
  .internal-entity-filter-bar,
  .internal-entity-filter-bar-wide,
  .internal-form-grid,
  .internal-form-grid-wide,
  .internal-lookup-bar,
  .internal-lookup-grid,
  .internal-grid,
  .internal-grid-halves,
  .internal-metric-grid,
  .internal-funnel-grid,
  .internal-kv-grid,
  .internal-stat-grid,
  .internal-quota-grid,
  .internal-quota-metrics{
    grid-template-columns:1fr;
  }
  .internal-admin-sidebar{
    grid-template-columns:1fr;
  }
  .internal-list-item{
    flex-direction:column;
    align-items:flex-start;
  }
  .internal-list-side{
    text-align:left;
  }
}
.option-head strong{font-size:14px;color:var(--gray-900)}
.option-card p{font-size:12px;color:var(--gray-500);padding-left:28px}
.radio-circle{
  width:20px;height:20px;border-radius:50%;
  border:1px solid var(--gray-300);
  display:flex;align-items:center;justify-content:center;
}
.option-card.selected .radio-circle{background:var(--blue-500);border-color:var(--blue-500)}

.feature-list{display:flex;flex-direction:column;gap:24px}
.feature-item{display:flex;gap:16px}
.feature-icon{
  width:48px;height:48px;border-radius:var(--radius-lg);
  display:flex;align-items:center;justify-content:center;
}
.feature-icon.blue{background:var(--blue-50);color:var(--blue-600)}
.feature-icon.purple{background:#f5f3ff;color:#8b5cf6}
.feature-icon.green{background:var(--green-50);color:var(--green-500)}
.feature-icon.orange{background:var(--orange-50);color:var(--orange-500)}
.feature-item strong{display:block;font-size:14px;color:var(--gray-800);margin-bottom:4px}
.feature-item p{font-size:12px;color:var(--gray-500);line-height:1.5}
.security-badge{
  margin-top:32px;
  background:rgba(239,246,255,.6);
  border:1px solid rgba(219,234,254,.8);
  border-radius:var(--radius-lg);
  padding:16px;
  display:flex;
  align-items:center;
  gap:12px;
}
.security-badge.small{margin-top:20px;font-size:13px;color:var(--gray-700)}
.security-icon{
  width:40px;height:40px;border-radius:50%;
  background:var(--white);
  color:var(--blue-600);
  display:flex;align-items:center;justify-content:center;
  box-shadow:var(--shadow-sm);
}
.security-badge strong{font-size:13px;color:var(--gray-800);line-height:1.4}

.callout,.reply-box{
  border:1px solid var(--surface-border);
  border-radius:20px;
  padding:16px;
  background:var(--surface-bg-strong);
  margin-bottom:18px;
  box-shadow:var(--surface-shadow-soft);
  backdrop-filter:blur(12px);
}
.callout.summary{
  background:linear-gradient(180deg, rgba(242,246,255,.96), rgba(248,250,255,.92));
  border-color:rgba(198,215,255,.92);
}
.callout.info{
  background:linear-gradient(180deg, rgba(250,251,255,.98), rgba(245,247,255,.92));
  border-color:rgba(214,221,244,.96);
}
.callout.uncertainty{
  background:linear-gradient(180deg, rgba(255,248,230,.98), rgba(255,252,240,.94));
  border-color:#fde68a;
}
.callout strong,.reply-box span{
  display:block;
  font-size:12px;
  font-weight:700;
  color:var(--gray-500);
  margin-bottom:6px;
}
.callout p,.reply-box p{font-size:14px;color:var(--gray-800)}
.mode-result-panel{
  border:1px solid var(--surface-border);
  border-radius:var(--surface-radius-xxl);
  background:var(--surface-bg-strong);
  padding:18px;
  margin-bottom:20px;
  box-shadow:var(--surface-shadow-strong);
  backdrop-filter:blur(18px);
}
.mode-result-head{
  display:grid;
  gap:6px;
  padding-bottom:14px;
  border-bottom:1px solid var(--gray-100);
  margin-bottom:14px;
}
.mode-result-head span{
  font-size:12px;
  font-weight:700;
  color:var(--blue-600);
}
.mode-result-head strong{
  font-size:18px;
  line-height:1.45;
  color:var(--gray-900);
}
.mode-result-card-row{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
  margin-bottom:14px;
}
.mode-result-card{
  border:1px solid var(--surface-border);
  border-radius:var(--surface-radius-lg);
  background:var(--surface-bg);
  padding:14px;
  box-shadow:var(--surface-shadow);
}
.mode-result-card-primary{
  background:linear-gradient(180deg, rgba(238,252,244,.98), rgba(246,255,249,.96));
  border-color:#bbf7d0;
}
.mode-result-card span{
  display:block;
  font-size:12px;
  font-weight:700;
  color:var(--gray-500);
  margin-bottom:6px;
}
.mode-result-card p{
  font-size:14px;
  line-height:1.6;
  color:var(--gray-800);
  word-break:break-word;
}
.mode-signal-grid{
  display:grid;
  gap:10px;
  margin-bottom:14px;
}
.mode-signal-item{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  border:1px solid var(--surface-border);
  border-radius:var(--surface-radius-lg);
  padding:14px;
  background:var(--surface-bg-strong);
  box-shadow:var(--surface-shadow);
}
.mode-signal-item strong{
  display:block;
  font-size:14px;
  color:var(--gray-900);
  margin-bottom:4px;
}
.mode-signal-item p{
  font-size:13px;
  line-height:1.55;
  color:var(--gray-600);
}
.mode-signal-item > span{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:52px;
  padding:4px 8px;
  border-radius:999px;
  background:var(--blue-50);
  color:var(--blue-600);
  font-size:12px;
  font-weight:700;
}
.mode-result-columns{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}
.mode-result-columns > div{
  border:1px solid var(--surface-border);
  border-radius:var(--surface-radius-lg);
  padding:14px;
  background:var(--surface-bg-strong);
  box-shadow:var(--surface-shadow);
}
.mode-result-columns h4{
  font-size:13px;
  color:var(--gray-900);
  margin-bottom:8px;
}
.mode-result-columns ul{
  display:grid;
  gap:7px;
  padding-left:18px;
}
.mode-result-columns li{
  font-size:13px;
  line-height:1.55;
  color:var(--gray-700);
  word-break:break-word;
}
.mode-watch-strip{
  margin-top:12px;
  border:1px solid var(--blue-100);
  border-radius:var(--radius-md);
  background:var(--blue-50);
  padding:12px;
}
.mode-watch-strip strong{
  display:block;
  font-size:12px;
  color:var(--blue-600);
  margin-bottom:4px;
}
.mode-watch-strip ul{
  display:grid;
  gap:6px;
  padding-left:18px;
}
.mode-watch-strip li{
  font-size:13px;
  line-height:1.55;
  color:var(--gray-800);
}
.report-detail-block{
  border:1px solid rgba(212,220,243,.96);
  border-radius:22px;
  background:linear-gradient(180deg, rgba(255,255,255,.95), rgba(248,250,255,.92));
  padding:0;
  margin-bottom:18px;
  box-shadow:var(--surface-shadow-strong);
  backdrop-filter:blur(16px);
}
.report-detail-block summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  min-height:46px;
  padding:12px 14px;
  color:var(--gray-700);
  font-size:14px;
  font-weight:700;
  cursor:pointer;
  list-style:none;
}
.report-detail-block summary::-webkit-details-marker{display:none}
.report-detail-block summary::after{
  content:"展开";
  flex-shrink:0;
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:3px 8px;
  border-radius:999px;
  background:linear-gradient(180deg, rgba(255,255,255,.98), rgba(248,250,255,.96));
  border:1px solid rgba(212,220,243,.96);
  color:var(--gray-600);
  font-size:12px;
}
.report-detail-block[open]{
  padding-bottom:14px;
}
.report-detail-block[open] summary{
  margin-bottom:14px;
  border-bottom:1px solid var(--gray-200);
}
.report-detail-block[open] summary::after{content:"收起"}
.report-detail-block > :not(summary){
  margin-left:14px;
  margin-right:14px;
}
.probe-question{
  background:var(--blue-50);
  border:1px solid var(--blue-100);
  border-left:4px solid var(--blue-500);
  border-radius:var(--radius-lg);
  padding:16px;
  font-size:15px;
  line-height:1.65;
  color:var(--gray-900);
  margin-bottom:12px;
}
.options{display:grid;gap:10px;margin-bottom:18px}
.option{
  width:100%;
  padding:12px 14px;
  text-align:left;
  background:var(--white);
  color:var(--gray-700);
  border:1px solid var(--gray-200);
  border-radius:var(--radius-lg);
  transition:border-color .2s,background .2s;
}
.option:hover,.option.active{border-color:var(--blue-500);background:var(--blue-50)}
.option.custom-option{
  background:#fffbeb;
  border-color:#fde68a;
  border-style:dashed;
  color:#92400e;
}
.option.custom-option:hover,.option.custom-option.active{
  background:#fef3c7;
  border-color:#f59e0b;
}

.tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}
.tag{
  display:inline-flex;
  padding:6px 10px;
  border-radius:999px;
  background:var(--gray-100);
  color:var(--gray-700);
  font-size:12px;
}
.hypothesis{
  border:1px solid var(--gray-200);
  border-radius:var(--radius-lg);
  padding:14px;
  margin-bottom:10px;
  background:var(--white);
}
.hypothesis strong{display:block;font-size:14px;color:var(--gray-900);margin-bottom:4px}
.hypothesis p{font-size:13px;color:var(--gray-500)}
.risk-list,.reaction-list{display:grid;gap:10px;margin-bottom:20px}
.risk-item{
  border:1px solid var(--orange-50);
  border-left:3px solid var(--orange-500);
  border-radius:var(--radius-md);
  background:#fffaf0;
  padding:10px 12px;
  color:var(--gray-700);
  font-size:13px;
}
.reaction-item{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  border:1px solid var(--surface-border);
  border-radius:var(--surface-radius-md);
  background:var(--surface-bg-strong);
  padding:10px 12px;
  font-size:13px;
  box-shadow:var(--surface-shadow);
}
.reaction-item span{color:var(--gray-700)}
.reaction-item strong{color:var(--blue-600)}
.ask-card{
  display:none;
  margin-top:18px;
  border:1px solid var(--surface-border);
  border-radius:var(--surface-radius-xxl);
  background:var(--surface-bg-strong);
  padding:18px;
  box-shadow:var(--surface-shadow-strong);
  backdrop-filter:blur(18px);
}
.ask-workspace-entry{
  margin-top:16px;
  padding:16px;
  border:1px solid var(--surface-border);
  border-radius:var(--surface-radius-xl);
  background:var(--surface-bg-strong);
  box-shadow:var(--surface-shadow-soft);
}
.ask-workspace-entry p{
  margin:8px 0 0;
  font-size:12px;
  line-height:1.5;
  color:var(--gray-600);
}
.ask-workspace-toolbar{
  display:none;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  margin-bottom:12px;
}
.ask-card.workspace-open{
  display:block;
  margin-top:0;
  border-color:rgba(198,215,255,.95);
  box-shadow:var(--surface-shadow-compact);
  min-height:0;
}
.ask-card.workspace-open .ask-workspace-toolbar{display:flex}
body.ask-workspace-mode #report.grid-layout,
body.ask-workspace-mode #historyDetail.grid-layout{
  grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);
}
body.ask-workspace-mode #report .card:first-child,
body.ask-workspace-mode #historyDetail .card:first-child{
  align-self:start;
}
body.ask-workspace-mode .ask-workspace-entry{display:none}
body.ask-workspace-mode .ask-card{margin-top:0}
body.ask-workspace-mode #report .card.compact > .kpis,
body.ask-workspace-mode #report .card.compact > .metric-note,
body.ask-workspace-mode #report .card.compact > .reply-box,
body.ask-workspace-mode #report .card.compact > .metric,
body.ask-workspace-mode #report .card.compact > .actions.vertical,
body.ask-workspace-mode #historyDetail .card.compact > .kpis,
body.ask-workspace-mode #historyDetail .card.compact > .metric-note,
body.ask-workspace-mode #historyDetail .card.compact > .reply-box,
body.ask-workspace-mode #historyDetail .card.compact > .metric,
body.ask-workspace-mode #historyDetail .card.compact > .history-detail-actions{
  display:none;
}
body.ask-workspace-mode #report .card.compact,
body.ask-workspace-mode #historyDetail .card.compact{
  position:static;
  top:auto;
  padding:0;
  border:0;
  background:transparent;
  box-shadow:none;
  backdrop-filter:none;
  overflow:visible;
}
body.ask-workspace-mode #report .card.compact > .card-title,
body.ask-workspace-mode #historyDetail .card.compact > .card-title{
  display:none;
}
body.ask-workspace-mode #reportDetailBlock.report-detail-hidden,
body.ask-workspace-mode #historyFullDetailBlock.report-detail-hidden{
  padding-bottom:0;
}
body.ask-workspace-mode #reportDetailBlock.report-detail-hidden > *,
body.ask-workspace-mode #historyFullDetailBlock.report-detail-hidden > *{
  display:none;
}
.workspace-report-extra-hidden{display:none!important}
body.ask-workspace-mode #reportDetailBlock.report-detail-workspace-open,
body.ask-workspace-mode #historyFullDetailBlock.report-detail-workspace-open{
  padding-bottom:14px;
}
.ask-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:6px;
}
.ask-header strong{font-size:14px;color:var(--gray-900)}
.ask-usage{
  display:inline-flex;
  align-items:center;
  padding:5px 10px;
  border-radius:999px;
  border:1px solid rgba(189,206,245,.95);
  background:linear-gradient(180deg, rgba(244,248,255,.96), rgba(237,243,255,.94));
  color:#4268b8;
  font-size:11px;
  font-weight:700;
  box-shadow:0 6px 14px rgba(44,56,112,.05);
}
.ask-desc{
  font-size:13px;
  color:var(--gray-600);
  line-height:1.6;
  margin-bottom:14px;
}
.ask-textarea{
  min-height:88px;
  border:1px solid rgba(212,220,243,.96);
  border-radius:16px;
  background:linear-gradient(180deg, rgba(248,250,255,.98), rgba(255,255,255,.96));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.72), 0 8px 18px rgba(48,63,120,.04);
  transition:border-color .2s,box-shadow .2s,background .2s;
}
.ask-textarea:focus{
  border-color:var(--blue-500);
  background:var(--white);
  box-shadow:0 0 0 3px rgba(37,99,235,.12);
}
.ask-question-textarea{
  min-height:96px;
}
.ask-draft-field{
  margin-bottom:6px;
}
.ask-draft-textarea{
  min-height:58px;
  height:68px;
}
.ask-draft-note{
  margin-top:0;
  margin-bottom:12px;
}
.ask-attachment-row{
  display:flex;
  align-items:center;
  gap:10px;
  margin:0 0 12px;
  min-width:0;
}
.ask-attachment-btn{
  flex:0 0 auto;
  padding:8px 10px;
  font-size:12px;
  line-height:1;
  cursor:pointer;
  white-space:nowrap;
}
.ask-attachment-status{
  min-width:0;
  flex:1 1 auto;
  color:var(--gray-500);
  font-size:12px;
  line-height:1.4;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.ask-attachment-row.has-attachment .ask-attachment-btn{
  border-color:var(--primary);
  color:var(--primary);
  background:rgba(70, 115, 190, 0.08);
}
.ask-attachment-row.has-attachment .ask-attachment-status{
  color:var(--gray-700);
}
.ask-attachment-list{
  display:flex;
  flex-direction:column;
  gap:6px;
  margin:-4px 0 12px;
}
.ask-attachment-item{
  position:relative;
  display:flex;
  align-items:center;
  gap:6px;
  min-width:0;
  padding:6px 8px;
  border:1px solid rgba(212,220,243,.96);
  border-radius:12px;
  background:linear-gradient(180deg, rgba(255,255,255,.96), rgba(248,250,255,.92));
}
.ask-attachment-thumb-btn{
  padding:0;
  border:0;
  background:transparent;
  flex:0 0 auto;
  cursor:zoom-in;
}
.ask-attachment-thumb-btn:focus-visible{
  outline:2px solid var(--primary);
  outline-offset:2px;
  border-radius:10px;
}
.ask-attachment-thumb{
  width:34px;
  height:34px;
  border-radius:9px;
  object-fit:cover;
  border:1px solid rgba(212,220,243,.96);
  background:linear-gradient(180deg, rgba(255,255,255,.98), rgba(244,247,255,.94));
  flex:0 0 auto;
  box-shadow:0 8px 18px rgba(44,56,112,.06);
}
.ask-attachment-name{
  flex:1 1 auto;
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:12px;
  color:var(--gray-800);
}
.ask-attachment-order{
  flex:0 0 auto;
  font-size:11px;
  color:var(--gray-500);
}
.ask-attachment-menu{
  position:relative;
  flex:0 0 auto;
}
.ask-attachment-menu summary{
  list-style:none;
  width:28px;
  height:28px;
  display:grid;
  place-items:center;
  border:1px solid rgba(212,220,243,.96);
  border-radius:8px;
  background:linear-gradient(180deg, rgba(255,255,255,.98), rgba(248,250,255,.96));
  color:var(--gray-600);
  cursor:pointer;
  font-weight:700;
  line-height:1;
}
.ask-attachment-menu summary::-webkit-details-marker{display:none}
.ask-attachment-menu[open] summary{
  border-color:var(--blue-200);
  color:var(--blue-600);
  background:var(--blue-50);
}
.ask-attachment-menu-list{
  position:absolute;
  z-index:30;
  right:0;
  top:34px;
  min-width:96px;
  padding:6px;
  border:1px solid rgba(212,220,243,.96);
  border-radius:10px;
  background:linear-gradient(180deg, rgba(255,255,255,.98), rgba(248,250,255,.96));
  box-shadow:0 12px 28px rgba(15,23,42,.14);
}
.ask-attachment-menu-list button{
  width:100%;
  min-height:30px;
  border:0;
  border-radius:7px;
  background:transparent;
  color:var(--gray-700);
  font-size:12px;
  text-align:left;
  cursor:pointer;
}
.ask-attachment-menu-list button:hover:not(:disabled){
  background:var(--gray-50);
}
.ask-attachment-menu-list button:disabled{
  cursor:not-allowed;
  opacity:.45;
}
.ask-attachment-menu-list button.danger{
  color:#dc2626;
}
.ask-evidence-panel{
  margin:-2px 0 12px;
  padding:12px 12px 16px;
  border:1px solid var(--surface-border);
  border-radius:16px;
  background:var(--surface-bg-strong);
  box-shadow:var(--surface-shadow);
}
.ask-evidence-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:6px;
}
.ask-evidence-head strong{
  font-size:13px;
  color:var(--gray-900);
}
.ask-evidence-head span{
  font-size:11px;
  color:var(--gray-500);
}
.ask-evidence-panel p{
  margin:0 0 12px;
  font-size:12px;
  line-height:1.5;
  color:var(--gray-600);
}
.ask-evidence-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-bottom:10px;
}
.ask-evidence-textarea{
  min-height:96px;
  margin-bottom:8px;
  font-size:13px;
  line-height:1.55;
}
.ask-evidence-editor{
  max-height:56vh;
  overflow:auto;
  margin-bottom:12px;
  padding-right:2px;
}
.ask-evidence-card{
  padding:0;
  margin:0;
  border:0;
  border-radius:10px;
  background:transparent;
  overflow:hidden;
  box-shadow:none;
}
.ask-evidence-confirm-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  padding:8px 2px 8px;
}
.ask-evidence-confirm-head strong{
  font-size:12px;
  color:var(--gray-800);
}
.ask-evidence-confirm-head span{
  min-width:0;
  text-align:right;
  font-size:11px;
  color:var(--gray-500);
}
.ask-evidence-chat-editor{
  gap:10px;
  padding:16px;
  border:1px solid var(--surface-border);
  border-radius:16px;
  background:var(--surface-bg);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.78);
  max-height:68vh;
  overflow:auto;
  overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;
  touch-action:pan-y;
  margin-bottom:12px;
}
.ask-evidence-chat-editor .transcript-chat-row{
  margin-bottom:8px;
}
.ask-evidence-chat-editor .transcript-message-textarea{
  min-height:34px;
  height:auto;
  font-size:14px;
  padding:6px 10px;
  overflow:hidden;
}
@media (max-width:520px){
  .ask-attachment-item{
    flex-wrap:wrap;
  }
  .ask-attachment-name{
    flex-basis:calc(100% - 42px);
  }
  .ask-evidence-head{align-items:flex-start;flex-direction:column}
  .ask-evidence-confirm-head{align-items:flex-start;flex-direction:column}
  .ask-evidence-confirm-head span{text-align:left}
  .ask-workspace-toolbar{align-items:stretch}
  .ask-evidence-chat-editor{
    max-height:72vh;
  }
}
.ask-thread-panel{
  margin-top:14px;
  margin-bottom:16px;
  border:1px solid var(--surface-border);
  border-radius:18px;
  padding:14px;
  background:var(--surface-bg-strong);
  box-shadow:var(--surface-shadow);
  min-width:0;
  min-height:0;
}
.ask-thread-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-bottom:10px;
  gap:10px;
}
.ask-thread-head strong{
  font-size:13px;
  color:var(--gray-900);
}
.ask-compose-panel{
  margin-top:14px;
  padding:16px;
  border:1px solid var(--surface-border);
  border-radius:18px;
  background:var(--surface-bg-strong);
  box-shadow:var(--surface-shadow);
  min-width:0;
}
.ask-thread-list{
  display:grid;
  gap:12px;
  min-width:0;
  min-height:0;
}
.ask-entry{
  border:1px solid var(--surface-border);
  border-radius:18px;
  padding:14px;
  background:var(--surface-bg-strong);
  box-shadow:var(--surface-shadow);
}
.ask-entry p,
.ask-entry-note,
.ask-followup-box p{
  word-break:break-word;
}
.ask-entry.user{
  background:linear-gradient(180deg, rgba(247,250,255,.98), rgba(243,247,255,.94));
}
.ask-entry.assistant{
  background:linear-gradient(180deg, rgba(255,255,255,.98), rgba(249,250,255,.95));
  border-color:rgba(198,215,255,.92);
}
.ask-entry-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:8px;
}
.ask-entry-label{
  font-size:12px;
  font-weight:700;
  color:var(--gray-800);
}
.ask-entry-meta{
  font-size:11px;
  color:var(--gray-500);
}
.ask-entry p{
  font-size:14px;
  line-height:1.65;
  color:var(--gray-800);
}
.ask-evidence-summary{
  margin-top:10px;
  border:1px solid var(--surface-border);
  border-radius:14px;
  background:var(--surface-bg);
  overflow:hidden;
}
.ask-evidence-summary summary{
  cursor:pointer;
  padding:8px 10px;
  font-size:12px;
  font-weight:700;
  color:var(--gray-700);
  background:linear-gradient(180deg, rgba(250,251,255,.98), rgba(245,247,255,.95));
}
.ask-evidence-summary pre{
  margin:0;
  padding:10px;
  max-height:220px;
  overflow:auto;
  white-space:pre-wrap;
  word-break:break-word;
  font-family:inherit;
  font-size:12px;
  line-height:1.55;
  color:var(--gray-700);
}
.ask-evidence-file-list{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  padding:8px 10px 0;
}
.ask-evidence-file-list span{
  max-width:100%;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  border:1px solid var(--gray-200);
  border-radius:999px;
  padding:3px 7px;
  font-size:11px;
  color:var(--gray-600);
  background:var(--gray-50);
}
.ask-entry-stats{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:10px;
}
.ask-mini-chip{
  display:inline-flex;
  align-items:center;
  padding:4px 8px;
  border-radius:999px;
  background:var(--gray-100);
  color:var(--gray-700);
  font-size:11px;
  font-weight:700;
}
.ask-followup-box{
  margin-top:10px;
  padding:10px 12px;
  border:1px solid #bbf7d0;
  border-radius:var(--radius-md);
  background:var(--green-50);
}
.ask-followup-box strong{
  display:block;
  margin-bottom:4px;
  font-size:12px;
  color:var(--green-600);
}
.ask-followup-box p{
  font-size:13px;
  color:var(--gray-800);
}
.ask-entry-note{
  margin-top:10px;
  font-size:12px;
  line-height:1.5;
  color:var(--gray-500);
}
.ask-mode-detail{
  margin-top:12px;
  padding:12px 14px;
  border:1px solid rgba(196,203,232,.92);
  border-radius:var(--radius-lg);
  background:linear-gradient(180deg, rgba(255,255,255,.96), rgba(247,249,255,.94));
}
.ask-mode-detail > summary{
  cursor:pointer;
  list-style:none;
  font-size:12px;
  font-weight:700;
  color:var(--indigo-600);
}
.ask-mode-detail > summary::-webkit-details-marker{display:none}
.ask-mode-detail[open] > summary{margin-bottom:10px}
.ask-mode-detail > p{
  font-size:13px;
  color:var(--gray-800);
}
.ask-mode-list{
  margin-top:10px;
  padding-top:10px;
  border-top:1px dashed rgba(196,203,232,.9);
}
.ask-mode-list strong{
  display:block;
  margin-bottom:4px;
  font-size:12px;
  color:var(--gray-700);
}
.ask-mode-list p{
  font-size:12px;
  color:var(--gray-600);
}
.history-list{display:grid;gap:12px}
.history-list,
#historyFullDetailBlock,
.ask-thread-list{
  min-width:0;
}
.history-toolbar{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:16px;
  margin-bottom:14px;
}
.history-toolbar-desc{
  margin:4px 0 0;
  color:var(--gray-500);
  font-size:12px;
  line-height:1.5;
}
.history-toolbar-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
}
.segmented-control{
  display:inline-flex;
  gap:6px;
  padding:4px;
  border:1px solid var(--surface-border);
  border-radius:999px;
  background:var(--surface-bg-strong);
  box-shadow:var(--surface-shadow);
}
.segmented-control-item{
  border:0;
  border-radius:999px;
  padding:8px 12px;
  font-size:12px;
  color:var(--gray-600);
  background:transparent;
}
.segmented-control-item.active{
  background:linear-gradient(180deg, rgba(245,249,255,.99), rgba(236,243,255,.95));
  color:#36559d;
  font-weight:700;
}
.history-pagination{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  margin-top:14px;
  flex-wrap:wrap;
}
.history-page-status{
  color:var(--gray-500);
  font-size:12px;
}
.history-annotation-tags{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
}
.history-annotation-preview{
  display:grid;
  gap:6px;
}
.history-annotation-tag{
  display:inline-flex;
  align-items:center;
  padding:4px 8px;
  border-radius:999px;
  background:rgba(90,117,186,.10);
  color:#39599b;
  border:1px solid rgba(147,170,223,.75);
  font-size:11px;
  font-weight:600;
}
.history-annotation-note{
  margin:0;
  color:var(--gray-700);
  font-size:12px;
  line-height:1.6;
}
.history-list-meta{
  display:grid;
  gap:12px;
  min-width:0;
}
.history-detail-head{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:12px;
  margin-bottom:16px;
  position:sticky;
  top:0;
  z-index:4;
  padding:10px 0 8px;
  background:transparent;
  backdrop-filter:none;
}
.history-detail-time{
  color:var(--gray-500);
  font-size:12px;
  text-align:right;
  padding:6px 0;
  background:transparent;
}
.history-detail-time-inline{
  display:block;
  margin:0 0 14px auto;
}
.history-detail-head .btn-outline.btn-compact{
  border-color:rgba(190,203,231,.72);
  background:rgba(255,255,255,.38);
  backdrop-filter:blur(10px);
  box-shadow:0 8px 20px rgba(44,56,112,.06);
}
.history-detail-head .btn-outline.btn-compact:hover{
  background:rgba(255,255,255,.58);
  border-color:rgba(161,182,225,.88);
}
.history-item{
  position:relative;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
  border:1px solid var(--surface-border);
  border-radius:20px;
  background:var(--surface-bg-strong);
  padding:16px;
  text-align:left;
  transition:border-color .2s,background .2s,box-shadow .2s;
  box-shadow:0 12px 28px rgba(44,56,112,.06);
  contain:layout paint;
}
.history-item-shell{
  position:relative;
  overflow:hidden;
  border-radius:20px;
  border:1px solid transparent;
  background:var(--surface-bg-strong);
}
.history-item-shell.active{
  border-color:rgba(126,155,231,.96);
}
.history-item-shell .history-item{
  width:100%;
  position:relative;
  z-index:1;
}
.history-item-actions{
  display:flex;
  justify-content:flex-end;
  flex-wrap:wrap;
  padding:10px 14px 14px;
  gap:8px;
  border-top:1px solid rgba(223,230,244,.88);
  background:linear-gradient(180deg, rgba(252,253,255,.96), rgba(245,248,255,.94));
}
.history-item:hover{
  border-color:rgba(181,200,244,.98);
  background:linear-gradient(180deg, rgba(250,252,255,.98), rgba(243,247,255,.94));
  box-shadow:0 16px 34px rgba(44,56,112,.09);
}
.history-item.active{
  border-color:rgba(126,155,231,.96);
  background:linear-gradient(180deg, rgba(245,249,255,.99), rgba(237,244,255,.95));
  box-shadow:0 0 0 1px rgba(70,115,190,.10), 0 16px 34px rgba(44,56,112,.10);
}
.history-main{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:6px;
  align-items:flex-start;
}
.history-side{
  flex-shrink:0;
  display:flex;
  align-items:flex-end;
  flex-direction:column;
  gap:8px;
}
.history-item strong{display:block;color:var(--gray-900);font-size:14px;margin-bottom:4px}
.history-item p{font-size:12px;color:var(--gray-500);word-break:break-word;line-height:1.5}
.history-risk{
  flex-shrink:0;
  color:#4268b8;
  background:linear-gradient(180deg, rgba(242,247,255,.98), rgba(233,241,255,.96));
  border:1px solid rgba(189,206,245,.95);
  border-radius:999px;
  padding:6px 10px;
  font-size:12px;
  font-weight:700;
}
.history-item-action-btn{
  border:1px solid rgba(170,189,238,.9);
  background:rgba(248,250,255,.96);
  color:#5a73b6;
  border-radius:999px;
  padding:7px 12px;
  font-size:12px;
  font-weight:700;
  cursor:pointer;
  line-height:1;
  box-shadow:0 6px 14px rgba(44,56,112,.05);
}
.history-item-action-btn:hover{
  background:rgba(238,244,255,.98);
  border-color:rgba(141,167,231,.98);
}
.history-item-action-btn.danger{
  color:#b33b49;
  border-color:rgba(233,182,190,.95);
  background:rgba(255,247,248,.98);
}
.history-item-action-btn.danger:hover{
  background:rgba(255,241,243,.98);
  border-color:rgba(220,147,158,.98);
}
.history-flags{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
}
.history-flag{
  display:inline-flex;
  align-items:center;
  padding:4px 8px;
  border-radius:999px;
  border:1px solid rgba(221,227,242,.96);
  background:rgba(255,255,255,.72);
  color:var(--gray-600);
  font-size:11px;
  font-weight:600;
}
.history-detail-actions{
  display:grid;
  gap:8px;
  margin-top:16px;
  padding-top:14px;
  border-top:1px solid var(--gray-100);
}
.empty-state{
  border:1px dashed var(--gray-300);
  border-radius:var(--radius-lg);
  padding:24px;
  text-align:center;
  color:var(--gray-500);
  background:var(--gray-50);
  font-size:14px;
}
.compact-empty{
  padding:14px;
  font-size:12px;
  margin-top:8px;
}
@media (max-width: 640px){
  .history-pagination{
    gap:8px;
  }
  .history-pagination .btn-outline.small-btn{
    padding:6px 10px;
    font-size:12px;
  }
  .history-page-status{
    width:100%;
    text-align:center;
  }
  .history-toolbar-actions{
    flex-direction:column;
    align-items:stretch;
  }
  .history-toolbar{
    flex-direction:column;
    align-items:stretch;
  }
  .history-toolbar-actions{
    justify-content:stretch;
  }
  .segmented-control{
    width:100%;
    justify-content:space-between;
  }
  .segmented-control-item{
    flex:1 1 0;
    min-width:0;
    padding:8px 10px;
  }
  .quota-referral-row{
    flex-direction:column;
    align-items:stretch;
  }
  .quota-referral-row.compact-row{
    align-items:stretch;
  }
  .quota-referral-actions{
    justify-content:stretch;
    flex-direction:column;
  }
  .quota-referral-row .small-btn{
    width:100%;
  }
}
.kpis{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:18px}
.kpis div{
  border:1px solid var(--surface-border);
  border-radius:18px;
  padding:14px;
  background:var(--surface-bg-strong);
  text-align:center;
  box-shadow:var(--surface-shadow);
}
.kpis strong{display:block;font-size:22px;color:var(--gray-900);margin-bottom:4px}
.kpis span{font-size:12px;color:var(--gray-500)}
.reply-box.recommended{
  background:linear-gradient(180deg, rgba(240,253,244,.96), rgba(233,250,240,.92));
  border-color:rgba(181,230,196,.95);
}
.reply-box.avoid{
  background:linear-gradient(180deg, rgba(255,245,245,.96), rgba(255,239,239,.92));
  border-color:rgba(248,198,198,.96);
}
.reply-box.avoid span{color:#d14343}
.metric{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:14px;
  padding:12px 14px;
  border:1px solid var(--surface-border);
  border-radius:16px;
  background:var(--surface-bg-strong);
  font-size:14px;
  box-shadow:var(--surface-shadow);
  margin-bottom:10px;
}
.metric-note{
  margin:-2px 0 14px;
  color:var(--gray-500);
  font-size:13px;
  line-height:1.6;
}
.metric:last-child{margin-bottom:0}
.metric span{color:var(--gray-500)}
.metric strong{color:var(--gray-900)}
.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.actions.vertical{display:grid;grid-template-columns:1fr;gap:10px}

.field{display:block;margin-bottom:12px}
.field span{display:block;font-size:13px;color:var(--gray-500);margin-bottom:6px}
.chat-log{
  display:grid;
  gap:10px;
  min-height:300px;
  max-height:520px;
  overflow:auto;
  padding:16px;
  margin-bottom:16px;
  border:1px solid var(--gray-100);
  border-radius:var(--radius-lg);
  background:var(--gray-50);
}
.bubble{
  max-width:88%;
  padding:10px 12px;
  border-radius:14px;
  font-size:14px;
  line-height:1.5;
  box-shadow:var(--shadow-sm);
}
.bubble.user{margin-left:auto;background:var(--blue-100);color:var(--gray-900)}
.bubble.partner{background:var(--white);color:var(--gray-800)}
.bubble.system{background:#fff7ed;color:#9a3412}

.hidden,.view.hidden{display:none}
.mobile-flow-view{display:none}

@media (max-width:1024px){
  body::before{
    display:none;
  }
  html,
  body{
    width:100%;
    max-width:100%;
    overscroll-behavior-x:none;
  }
  body{
    display:flex;
    flex-direction:column;
    min-height:100dvh;
    height:100dvh;
    overflow:hidden;
    overflow-x:hidden;
    overscroll-behavior-y:none;
  }
.mobile-topbar{
    position:sticky;
    top:0;
    z-index:35;
    display:flex;
    align-items:flex-start;
    gap:10px;
    min-height:64px;
    padding:10px 14px 12px;
    border-bottom:1px solid rgba(218,225,246,.58);
    background:
      radial-gradient(circle at 12% 0%, rgba(109,136,255,.10), transparent 24%),
      radial-gradient(circle at 88% 0%, rgba(145,98,255,.08), transparent 22%),
      linear-gradient(180deg, rgba(255,255,255,.74), rgba(248,250,255,.62));
    box-shadow:0 6px 18px rgba(44,56,112,.05);
    backdrop-filter:blur(18px);
    -webkit-backdrop-filter:blur(18px);
    transform:translateZ(0);
    backface-visibility:hidden;
    contain:paint;
    isolation:isolate;
}
  .mobile-menu-btn{width:38px;height:38px}
  .mobile-topbar-title{
    display:grid;
    grid-template-columns:auto minmax(0,1fr);
    column-gap:8px;
    row-gap:2px;
    align-items:center;
    min-width:0;
    padding-top:1px;
  }
  .mobile-topbar-title .mobile-topbar-logo{
    grid-row:1 / span 2;
    align-self:start;
    margin-top:1px;
  }
  .mobile-topbar-title strong{font-size:15px;color:var(--gray-900);min-width:0}
  .mobile-topbar-title span{
    grid-column:2;
    font-size:11px;
    line-height:1.35;
    color:var(--gray-500);
    min-width:0;
  }
  .mobile-nav-backdrop{
    position:fixed;
    inset:0;
    z-index:38;
    display:block;
    background:rgba(17,24,39,.36);
  }
  .mobile-nav-backdrop.hidden{display:none}
  .sidebar{
    position:fixed;
    inset:0 auto 0 0;
    z-index:40;
    display:flex;
    margin:0;
    border-radius:0;
    border-right:1px solid rgba(210,218,244,.82);
    width:min(82vw,300px);
    max-width:300px;
    max-height:100dvh;
    transform:translate3d(-120%,0,0);
    transition:transform .22s ease;
    box-shadow:none;
    border-right:0;
    will-change:transform;
    backface-visibility:hidden;
    contain:paint;
  }
  body.mobile-nav-open .sidebar{
    transform:translate3d(0,0,0);
    border-right:1px solid rgba(210,218,244,.82);
    box-shadow:var(--shadow-md);
  }
  .sidebar .logo-group{
    border-bottom:0;
    padding-bottom:10px;
    margin-bottom:18px;
  }
  .mobile-sidebar-close{
    display:flex;
    position:absolute;
    top:14px;
    right:14px;
    width:34px;
    height:34px;
    z-index:1;
  }
  .main-content{
    flex:1 1 auto;
    min-height:0;
    width:100%;
    max-width:100%;
    padding:20px;
    overflow-y:auto;
    overflow-x:hidden;
    -webkit-overflow-scrolling:touch;
    overscroll-behavior-y:none;
    touch-action:auto;
  }
  .container{
    width:100%;
    max-width:100%;
    overflow-x:clip;
  }
  .grid-layout{grid-template-columns:minmax(0,1fr)}
  body.ask-workspace-mode #report.grid-layout,
  body.ask-workspace-mode #historyDetail.grid-layout{
    grid-template-columns:minmax(0,1fr);
    min-height:0;
  }
  body.ask-workspace-mode #report > .card:first-child,
  body.ask-workspace-mode #historyDetail > .card:first-child{
    order:1;
  }
  body.ask-workspace-mode #report > .card:first-child,
  body.ask-workspace-mode #historyDetail > .card:first-child{
    padding:0;
    border:0;
    border-radius:0;
    background:transparent;
    box-shadow:none;
    backdrop-filter:none;
    overflow:visible;
  }
  body.ask-workspace-mode #report > .card:first-child::before,
  body.ask-workspace-mode #report > .card:first-child::after,
  body.ask-workspace-mode #historyDetail > .card:first-child::before,
  body.ask-workspace-mode #historyDetail > .card:first-child::after{
    display:none;
  }
  body.ask-workspace-mode #report > .card.compact,
  body.ask-workspace-mode #historyDetail > .card.compact{
    order:2;
    position:static;
  }
  body.ask-workspace-mode #report .card.compact,
  body.ask-workspace-mode #historyDetail .card.compact{
    padding:0;
    border:0;
    border-radius:0;
    box-shadow:none;
    background:transparent;
    backdrop-filter:none;
    overflow:visible;
  }
  body.ask-workspace-mode #report,
  body.ask-workspace-mode #historyDetail{
    align-items:stretch;
    min-height:0;
  }
  body.ask-workspace-mode #report > .card:first-child,
  body.ask-workspace-mode #historyDetail > .card:first-child,
  body.ask-workspace-mode #report > .card.compact,
  body.ask-workspace-mode #historyDetail > .card.compact{
    min-height:0;
  }
  body.ask-workspace-mode #report .card.compact > .card-title,
  body.ask-workspace-mode #historyDetail .card.compact > .card-title{
    display:none;
  }
  .mode-result-card-row,.mode-result-columns{grid-template-columns:1fr}
  .card.compact,.insight-card{
    position:static;
    top:auto;
  }
  #report > .card.compact,
  #historyDetail > .card.compact,
  #history > .card.compact{
    width:100%;
    min-width:0;
    overflow:visible;
  }
  .history-detail-actions{
    margin-top:14px;
  }
  .page-header{
    align-items:flex-start;
    flex-direction:column;
    padding:0;
    margin:0 0 18px;
    border:none;
    border-radius:0;
    background:transparent;
    box-shadow:none;
    backdrop-filter:none;
    overflow:visible;
  }
  .page-header::before,
  .page-header::after{display:none}
  .internal-grid,.internal-lookup-grid{grid-template-columns:1fr}
  .internal-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .internal-funnel-grid,.internal-filter-bar,.internal-entity-filter-bar{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:720px){
  body{
    background:#fff;
    min-height:100dvh;
    height:100dvh;
    overflow:hidden;
    overscroll-behavior-y:none;
  }
  html,
  body{
    position:relative;
    overflow-x:hidden;
  }
  body.view-mobileReport .page-header,
  body.view-mobileAskWorkspace .page-header{
    display:none;
  }
  .mobile-flow-view:not(.hidden){
    display:block;
    min-width:0;
  }
  #mobileReport,
  #mobileHistoryDetail,
  #mobileAskWorkspace{
    width:100%;
    min-width:0;
    max-width:100%;
    overflow:visible;
    overflow-x:clip;
    overscroll-behavior-x:none;
  }
  body.view-mobileAskWorkspace .mobile-flow-head{
    position:static;
    top:auto;
    z-index:auto;
    margin-bottom:8px;
    padding:0 0 8px;
    background:transparent;
    backdrop-filter:none;
  }
  .mobile-flow-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    margin-bottom:12px;
    position:sticky;
    top:0;
    z-index:4;
    padding:10px 0 8px;
    background:linear-gradient(180deg, rgba(255,255,255,.98), rgba(255,255,255,.92));
    backdrop-filter:blur(10px);
  }
  .mobile-flow-title-block{
    display:grid;
    gap:3px;
    min-width:0;
    flex:1 1 auto;
    text-align:right;
  }
  .mobile-flow-head span{
    min-width:0;
    font-size:13px;
    color:var(--gray-500);
    font-weight:700;
  }
  .mobile-flow-title-block span{
    font-size:16px;
    color:var(--gray-900);
  }
  .mobile-flow-title-block p{
    margin:0;
    font-size:12px;
    line-height:1.45;
    color:var(--gray-500);
  }
  .mobile-flow-card{
    display:grid;
    gap:12px;
    overflow:visible;
    min-width:0;
    max-width:100%;
  }
  .mobile-flow-card .card-title,
  .mobile-flow-card .callout,
  .mobile-flow-card .reply-box,
  .mobile-flow-card .metric,
  .mobile-flow-card .report-detail-block{
    margin-bottom:0;
  }
  .mobile-ask-mount{
    width:100%;
    min-width:0;
  }
  .mobile-ask-workspace .ask-card{
    display:block;
    margin:0;
    border-radius:16px;
    box-shadow:none;
    overflow:visible;
  }
  .mobile-ask-workspace .ask-workspace-toolbar{
    display:none !important;
  }
  .mobile-ask-workspace .ask-thread-panel{
    max-height:none;
    overflow:visible;
    overscroll-behavior:auto;
    -webkit-overflow-scrolling:auto;
  }
  .mobile-ask-workspace .ask-compose-panel{
    margin-top:12px;
  }
  .mobile-report-ask-entry{
    margin-top:14px;
  }
  .container{
    width:100%;
    max-width:100%;
    overflow-x:clip;
  }
  .main-content{
    flex:1 1 auto;
    min-height:0;
    padding:12px;
    overflow-y:auto;
    overflow-x:hidden;
    overscroll-behavior-y:none;
    overscroll-behavior-x:none;
    -webkit-overflow-scrolling:touch;
    touch-action:auto;
  }
  .page-header{gap:10px;margin-bottom:14px;padding:0}
  .page-title{font-size:20px}
  .page-desc{font-size:13px;line-height:1.65}
  .status-banner{margin-bottom:12px;padding:10px 12px;font-size:13px}
  .card{
    padding:18px;
    border-radius:16px;
  }
  body.ask-workspace-mode #report > .card:first-child,
  body.ask-workspace-mode #historyDetail > .card:first-child,
  body.ask-workspace-mode #report .card.compact,
  body.ask-workspace-mode #historyDetail .card.compact{
    border-radius:0;
    background:none;
    box-shadow:none;
  }
  body.ask-workspace-mode #report,
  body.ask-workspace-mode #historyDetail{
    min-height:0;
    align-items:stretch;
  }
  body.ask-workspace-mode #report > .card:first-child,
  body.ask-workspace-mode #historyDetail > .card:first-child,
  body.ask-workspace-mode #report .card.compact,
  body.ask-workspace-mode #historyDetail .card.compact,
  body.ask-workspace-mode .ask-card.workspace-open{
    min-height:0;
  }
  .ask-thread-panel{
    max-height:none;
    overflow:visible;
    overscroll-behavior:auto;
    -webkit-overflow-scrolling:auto;
    touch-action:auto;
  }
  .ask-thread-list,
  .history-list,
  #historyDetailPanel,
  .mobile-flow-card,
  .mobile-ask-mount{
    touch-action:auto;
  }
  .image-mode-panel,
  .image-queue,
  .transcript-editor-list,
  .review-notice,
  .transcript-chat-editor,
  .ask-evidence-editor,
  #analysisFormPanel,
  #transcriptConfirm .card{
    touch-action:auto;
  }
  .ask-evidence-editor{
    display:grid;
    gap:12px;
    max-height:min(58vh, 540px);
    overflow:auto;
    padding-right:4px;
    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
  }
  .transcript-chat-editor{
    max-height:min(52vh, 480px);
    overflow:auto;
    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
  }
  .image-queue{
    overflow:visible;
  }
  .task-choice-head{gap:10px}
  .required-badge{min-height:24px}
  .task-landing{min-height:auto;justify-content:flex-start;padding-top:4px}
  .analysis-type-grid{grid-template-columns:1fr;gap:10px;margin-bottom:24px}
  .analysis-type-card{min-height:auto;padding:18px}
  .landing-task-grid .analysis-type-card{min-height:152px}
  .current-task-summary{grid-template-columns:1fr;margin-bottom:20px}
  .current-task-summary span{grid-row:auto;width:max-content}
  .current-task-summary em{grid-column:auto;grid-row:auto;justify-self:start}
  .task-switch-panel{position:static;width:100%;margin-top:-10px;margin-bottom:16px}
  .form-intro{display:grid;gap:6px}
  .form-intro p{max-width:none;text-align:left}
  .alias-grid,
  .header-actions,.options-grid,.kpis{grid-template-columns:1fr}
  .header-actions{display:grid;width:100%}
  .btn-outline,.btn-primary.small,.btn-primary.wide{width:100%}
  .btn-primary{min-height:48px;padding:13px 18px;font-size:15px}
  .btn-outline{min-height:44px}
  .reply-copy-btn{
    width:auto;
    max-width:160px;
    justify-self:start;
  }
  .modal{
    height:100dvh;
    align-items:flex-start;
    overflow-y:auto;
    padding:calc(env(safe-area-inset-top, 0px) + 12px) 12px calc(env(safe-area-inset-bottom, 0px) + 18px);
    overscroll-behavior:contain;
  }
  .modal-card{
    width:calc(100vw - 24px);
    max-width:calc(100vw - 24px);
    max-height:calc(100dvh - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px) - 32px);
    padding:18px;
    border-radius:20px;
  }
  .image-queue-item{flex-direction:column;align-items:flex-start}
  .image-thumb-btn{width:100%;height:164px}
  .image-queue-main{width:100%}
  .image-queue-head{justify-content:space-between}
  .image-queue-actions{width:100%;justify-content:stretch;display:grid;gap:10px}
  .image-order-group{display:grid;grid-template-columns:1fr 1fr;gap:10px;width:100%}
  .image-order-btn,.image-remove-btn{width:100%;min-height:42px;font-size:13px}
  .image-mode-head{align-items:flex-start;flex-direction:column}
  .image-preview-modal-card{
    width:min(calc(100vw - 32px), 520px);
    max-width:calc(100vw - 32px);
    max-height:min(78dvh, 680px);
    padding:18px 16px 16px;
  }
  .image-preview-modal-card .modal-header{
    position:relative;
    flex:0 0 auto;
    z-index:2;
    margin:-2px -4px 10px;
    padding:0 4px;
    background:linear-gradient(180deg, rgba(255,255,255,.96), rgba(247,249,255,.9));
  }
  .image-preview-modal-card .icon-btn{
    flex-shrink:0;
    position:absolute;
    top:calc(env(safe-area-inset-top, 0px) + 10px);
    right:12px;
    z-index:3;
    width:40px;
    height:40px;
    border:1px solid rgba(216,221,246,.9);
    background:rgba(255,255,255,.94);
    box-shadow:0 10px 24px rgba(28,38,78,.16);
  }
  .image-preview-stage{
    flex:1 1 auto;
    min-height:0;
    max-height:none;
    align-items:flex-start;
    justify-content:flex-start;
    border-radius:16px;
    overscroll-behavior:contain;
  }
  .image-preview-modal-img{
    width:100%;
    max-width:none;
    max-height:none;
    height:auto;
  }
  .transcript-editor-head{flex-direction:column}
  .transcript-inline-preview{width:100%;height:164px}
  .transcript-chat-editor{padding:14px 10px}
  .transcript-bubble-wrap{width:min(90%,100%)}
  .transcript-message-textarea{font-size:14px}
  .review-notice{padding:14px}
  .review-notice-head strong{min-height:30px}
  .review-notice-head span{font-size:12px}
  .section-title{font-size:15px;line-height:1.45}
  .main-textarea{min-height:160px;font-size:15px}
  .secondary-textarea{height:108px}
  .draft-message-textarea{height:72px;min-height:72px}
  .input-meta{justify-content:space-between;align-items:flex-start;gap:6px}
  .privacy-pill{width:100%;justify-content:center}
  .ask-entry-head{flex-direction:column;align-items:flex-start}
  .ask-workspace-entry,
  .ask-card,
  .ask-thread-panel,
  .ask-compose-panel,
  .ask-evidence-panel,
  .ask-entry,
  .ask-evidence-summary{
    width:100%;
    min-width:0;
    max-width:100%;
  }
  .ask-workspace-toolbar{
    flex-wrap:wrap;
    justify-content:stretch;
  }
  .ask-workspace-toolbar .btn-outline{
    flex:1 1 160px;
    min-width:0;
  }
  .ask-header{
    flex-direction:column;
    align-items:flex-start;
  }
  .ask-attachment-row{
    align-items:flex-start;
    flex-direction:column;
  }
  .ask-attachment-status{
    width:100%;
    white-space:normal;
    overflow:visible;
    text-overflow:clip;
  }
  .stepper{
    justify-content:flex-start;
    overflow-x:auto;
    overflow-y:hidden;
    padding-bottom:6px;
    margin-bottom:20px;
    scrollbar-width:none;
  }
  .stepper::-webkit-scrollbar{display:none}
  .step{font-size:13px}
  .step-num{width:22px;height:22px;font-size:11px}
  .step-line{width:34px;margin:0 10px}
  .feature-list{gap:16px}
  .feature-item{gap:12px}
  .feature-icon{width:42px;height:42px}
  .security-badge{margin-top:20px;padding:14px}
  .history-item{align-items:flex-start;flex-direction:column}
  .history-item{
    contain:none;
    box-shadow:0 8px 18px rgba(44,56,112,.05);
  }
  .history-side{width:100%;justify-content:flex-start}
  .history-item-actions{
    justify-content:stretch;
  }
  .history-item-action-btn{
    flex:1 1 0;
    min-width:0;
    padding:8px 10px;
    font-size:11px;
  }
  .reaction-item,.metric{align-items:flex-start;flex-direction:column}
  .mode-result-panel{padding:14px}
  .mode-result-head strong{font-size:16px}
  .mode-signal-item{flex-direction:column}
  .mode-signal-item > span{min-width:0}
  .mode-result-card-row,.mode-result-columns{gap:10px}
  .history-detail-head{align-items:flex-start;flex-direction:column}
  .history-detail-time{text-align:left}
  .history-detail-time-inline{margin:0 0 12px 0}
  .mobile-history-detail-time{
    display:block;
    margin:0 0 12px;
    color:var(--gray-500);
    font-size:12px;
    text-align:right;
    padding:0 0 6px;
  }
  .history-detail-actions{
    padding-top:12px;
    margin-top:12px;
  }
  .ask-thread-panel,
  .ask-compose-panel,
  .ask-evidence-panel,
  .ask-card{
    backdrop-filter:none;
  }
  .mobile-topbar{
    backdrop-filter:none;
  }
  .action-status{font-size:12px;padding:10px}
  .internal-shell{padding:24px 16px 40px}
  .internal-header{flex-direction:column;align-items:stretch}
  .internal-token-card,.internal-lookup-bar,.internal-filter-bar,.internal-entity-filter-bar{grid-template-columns:1fr;min-width:0}
  .internal-metric-grid,.internal-funnel-grid{grid-template-columns:1fr}
  .internal-list-item{flex-direction:column}
  .internal-list-side{text-align:left}
  .internal-toolbar-actions{display:grid;grid-template-columns:1fr}
}
