/* vest-kavuah-only styles. Shared shell lives in app.css — don't redefine it here. */

.btn-confirm{background:rgba(52,211,153,.12);color:#059669;border:1px solid rgba(52,211,153,.3);padding:8px 18px;border-radius:var(--radius-full);font-size:.85rem;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;gap:6px;font-family:var(--font-sans);transition:background .2s,border-color .2s,transform .2s}
.btn-confirm:hover{background:rgba(52,211,153,.2);transform:translateY(-1px)}
.btn-dismiss{background:rgba(239,68,68,.08);color:#dc2626;border:1px solid rgba(239,68,68,.25);padding:8px 18px;border-radius:var(--radius-full);font-size:.85rem;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;gap:6px;font-family:var(--font-sans);transition:background .2s,border-color .2s,transform .2s}
.btn-dismiss:hover{background:rgba(239,68,68,.15);transform:translateY(-1px)}
.vk-header-bar{display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 32px;
      background: linear-gradient(135deg, rgba(255,255,255,0.96) 0%, var(--rose-hover) 60%, rgba(253,251,249,0.97) 100%);
      border: 1px solid rgba(200,148,149,0.18);
      border-radius: 22px;
      padding: 22px 32px;
      margin-bottom: 16px;
      box-shadow: 0 4px 24px rgba(26,18,25,0.05), inset 0 1px 0 rgba(255,255,255,0.95);
      position: relative;
      overflow: hidden;}
.vk-header-bar::before{content: '';
      position: absolute;
      top: -40px; right: -40px;
      width: 200px; height: 200px;
      background: radial-gradient(circle, rgba(200,148,149,0.1) 0%, transparent 70%);
      pointer-events: none;}
.vk-header-left{position: relative; z-index: 1;}
.vk-header-eyebrow{font-size: 0.67rem; font-weight: 700; text-transform: uppercase;
      letter-spacing: 0.1em; color: var(--rose-deep); opacity: 0.8; margin-bottom: 4px;}
/* Solid colour,no gradient-clip glow — locked rule 2. Inter to match every other page title. */
.vk-header-title{font-family: var(--font-sans);
      font-size: 2.1rem; font-weight: 800; line-height: 1.2; letter-spacing: -0.025em;
      color: var(--text); display: flex; align-items: baseline; gap: 12px;}
.vk-header-title-heb{font-size: 1rem; opacity: 0.7; direction: rtl; font-style: italic;
      font-weight: 600; color: var(--rose-deep);}
.vk-header-sub{font-size: 0.85rem; color: var(--text-light); margin-top: 4px;}
.vk-header-right{flex-shrink: 0; position: relative; z-index: 1;}
.btn-detect{display: inline-flex; align-items: center; gap: 10px;
      background: linear-gradient(135deg, var(--rose-deep) 0%, var(--rose) 100%);
      color: white; box-shadow: 0 6px 24px rgba(168,110,111,0.38);
      padding: 12px 28px; font-size: 0.92rem; font-weight: 700;
      border-radius: var(--radius-full); border: none; cursor: pointer;
      font-family: var(--font-sans); transition: var(--transition); white-space: nowrap;}
.btn-detect [data-lucide]{width: 17px; height: 17px;}
.btn-detect:hover{transform: translateY(-2px); box-shadow: 0 12px 36px rgba(168,110,111,0.46), 0 0 28px rgba(200,148,149,0.2);}
.btn-detect:disabled{opacity: 0.7; cursor: not-allowed; transform: none;}
@keyframes scanSpin { from { transform: rotate(0deg); } to { transform: rotate(360deg); } }
.btn-detect.scanning [data-lucide]{animation: scanSpin 0.85s linear infinite;}
.btn-detect.done{background: linear-gradient(135deg, #059669, #34D399); box-shadow: 0 6px 24px rgba(52,211,153,0.3);}
.vk-stage{background: rgba(255,255,255,0.5);
      border: 1.5px dashed rgba(200,148,149,0.22);
      border-radius: 24px;
      min-height: 320px;
      margin-bottom: 18px;
      padding: 20px;
      display: flex;
      flex-direction: column;
      gap: 14px;
      position: relative;
      transition: border-color .4s ease;}
.vk-stage.has-results{background: transparent;
      border-color: transparent;
      padding: 0;}
.vk-empty-state{display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      flex: 1;
      min-height: 280px;
      text-align: center;
      padding: 40px 32px;}
.vk-empty-icon{width: 72px; height: 72px;
      border-radius: 20px;
      background: rgba(200,148,149,0.08);
      border: 1px solid rgba(200,148,149,0.16);
      display: flex; align-items: center; justify-content: center;
      color: var(--rose-deep); margin: 0 auto 22px;
      box-shadow: 0 0 0 8px rgba(200,148,149,0.04);}
.vk-empty-icon [data-lucide]{width: 30px; height: 30px;}
.vk-empty-state h3{font-family: var(--font-serif);
      font-size: 1.45rem; font-weight: 700;
      color: var(--text); margin-bottom: 10px;}
.vk-empty-state p{font-size: 0.9rem; color: var(--text-light);
      max-width: 340px; line-height: 1.65; margin: 0 auto;}
.vk-detected-card{background: linear-gradient(160deg, rgba(255,245,225,0.97) 0%, rgba(255,252,245,0.97) 40%, rgba(255,255,255,0.97) 100%);
      border: 2px solid rgba(245,158,11,0.38);
      border-radius: 22px;
      overflow: hidden;
      box-shadow: 0 12px 48px rgba(26,18,25,0.10), 0 2px 8px rgba(26,18,25,0.04), 0 0 0 5px rgba(245,158,11,0.07);
      transition: var(--transition);
      animation: cardAlertIn .55s var(--ease-out) both;}
.vk-detected-card:hover{transform: translateY(-2px);
      box-shadow: 0 20px 60px rgba(26,18,25,0.13), 0 0 0 5px rgba(245,158,11,0.09);}
@keyframes cardAlertIn {
      0%   { opacity: 0; transform: translateY(22px) scale(0.98); }
      55%  { opacity: 1; transform: translateY(-3px) scale(1.004); }
      100% { opacity: 1; transform: translateY(0) scale(1); }
    }
@keyframes cardPulse {
      0%   { box-shadow: 0 0 0 0 rgba(200,148,149,0.5), 0 8px 40px rgba(26,18,25,0.09); }
      60%  { box-shadow: 0 0 0 14px rgba(200,148,149,0), 0 8px 40px rgba(26,18,25,0.09); }
      100% { box-shadow: 0 8px 40px rgba(26,18,25,0.09); }
    }
.vk-detected-card.highlight-scan{animation: cardPulse 0.7s ease-out;}
@keyframes refCardPulse {
      0%   { box-shadow: 0 0 0 0 rgba(200,148,149,0.4); }
      65%  { box-shadow: 0 0 0 10px rgba(200,148,149,0); }
      100% { box-shadow: none; }
    }
.vk-ref-card.highlight-scan{animation: refCardPulse 0.65s ease-out;}
.vk-card-accent{height: 7px;}
.vk-card-accent.rose{background: linear-gradient(90deg, var(--rose-deep), var(--rose), rgba(200,148,149,0.25));}
.vk-card-accent.violet{background: linear-gradient(90deg, var(--violet), #7C5F88, rgba(74,55,80,0.2));}
.vk-card-accent.teal{background: linear-gradient(90deg, #0f766e, #14b8a6, rgba(20,184,166,0.2));}
.vk-card-accent.indigo{background: linear-gradient(90deg, #4338ca, #818cf8, rgba(99,102,241,0.2));}
.vk-detected-body{padding: 28px 32px;}
.vk-detected-header{display: flex; align-items: center;
      justify-content: space-between; gap: 12px; margin-bottom: 24px;}
.vk-detected-identity{display: flex; align-items: center; gap: 14px;}
.vk-detected-icon{width: 52px; height: 52px; border-radius: 15px;
      display: flex; align-items: center; justify-content: center; flex-shrink: 0;}
.vk-detected-icon [data-lucide]{width: 22px; height: 22px;}
.vk-detected-icon.rose{background: rgba(200,148,149,0.13); color: var(--rose-deep);  border: 1px solid rgba(200,148,149,0.24);}
.vk-detected-icon.violet{background: rgba(74,55,80,0.1);     color: var(--violet);     border: 1px solid rgba(74,55,80,0.2);}
.vk-detected-icon.teal{background: rgba(20,184,166,0.1);   color: #0f766e;           border: 1px solid rgba(20,184,166,0.22);}
.vk-detected-icon.indigo{background: rgba(99,102,241,0.1);   color: #4338ca;           border: 1px solid rgba(99,102,241,0.22);}
.vk-detected-name{font-size: 1.35rem; font-weight: 800; color: var(--text); display: block; line-height: 1.2;}
.vk-detected-type{font-size: 0.78rem; color: var(--text-light); font-weight: 500; margin-top: 2px; display: block;}
.vk-focus-block{border-radius: 16px;
      padding: 22px 26px;
      margin-bottom: 20px;
      position: relative;
      overflow: hidden;}
.vk-focus-block.pending{background: linear-gradient(135deg, rgba(245,158,11,0.07) 0%, rgba(245,158,11,0.04) 100%);
      border: 1px solid rgba(245,158,11,0.3);}
.vk-focus-block.active{background: linear-gradient(135deg, rgba(200,148,149,0.08) 0%, rgba(200,148,149,0.04) 100%);
      border: 1px solid rgba(200,148,149,0.32);}
.vk-focus-block::after{content: '';
      position: absolute;
      right: -20px; top: -20px;
      width: 100px; height: 100px;
      border-radius: 50%;
      background: rgba(245,158,11,0.06);
      pointer-events: none;}
.vk-focus-block.active::after{background: rgba(200,148,149,0.07);}
.vk-focus-label{font-size: 0.67rem; font-weight: 800;
      text-transform: uppercase; letter-spacing: 0.12em;
      margin-bottom: 10px; display: block;}
.vk-focus-block.pending .vk-focus-label{color: #b45309;}
.vk-focus-block.active  .vk-focus-label{color: var(--rose-deep);}
.vk-focus-date{font-family: var(--font-serif);
      font-size: 2.6rem;
      font-weight: 700;
      color: var(--text);
      line-height: 1.1;
      margin-bottom: 8px;
      position: relative;
      z-index: 1;}
.vk-focus-next{font-size: 0.95rem;
      font-weight: 700;
      color: var(--text);
      margin-bottom: 6px;
      position: relative;
      z-index: 1;}
.vk-focus-block.pending .vk-focus-next{color: var(--text);}
.vk-focus-block.active  .vk-focus-next{color: var(--text);}
.vk-focus-note{font-size: 0.84rem; line-height: 1.5; position: relative; z-index: 1;}
.vk-focus-block.pending .vk-focus-note{color: rgba(180,83,9,0.8);}
.vk-focus-block.active  .vk-focus-note{color: rgba(168,110,111,0.85);}
.vk-detected-desc{font-size: 0.9rem; color: var(--text-muted);
      line-height: 1.72; margin-bottom: 22px;}
.vk-ruling-divider{height: 1px; background: rgba(200,148,149,0.1); margin-bottom: 16px;}
.vk-ruling-row{display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 12px;}
.vk-ruling-label{font-size: 0.69rem; font-weight: 700;
      text-transform: uppercase; letter-spacing: 0.09em;
      color: var(--text-light);}
.vk-ruling-actions{display: flex; gap: 8px; flex-wrap: wrap; align-items: center;}
.vk-notes{width: 100%;
      background: rgba(255,255,255,0.7);
      border: 1px solid rgba(200,148,149,0.18);
      border-radius: 10px;
      padding: 9px 13px;
      font-family: var(--font-sans); font-size: 0.83rem; color: var(--text);
      resize: vertical; min-height: 52px; margin-top: 12px;
      transition: var(--transition); display: block;}
.vk-notes:focus{border-color: var(--rose); box-shadow: 0 0 0 3px rgba(200,148,149,0.12); outline: none;}
.vk-notes::placeholder{color: var(--text-light);}
.vk-ref-section-label{font-size: 0.7rem; font-weight: 700;
      text-transform: uppercase; letter-spacing: 0.09em;
      color: var(--text-light); margin-bottom: 10px;
      display: flex; align-items: center; gap: 10px;}
.vk-ref-section-label::before,.vk-ref-section-label::after{content: ''; flex: 1; height: 1px; background: rgba(200,148,149,0.14);}
.vk-ref-grid{display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 10px;
      margin-bottom: 14px;}
.vk-ref-card{background: rgba(255,255,255,0.72);
      border: 1px solid rgba(200,148,149,0.1);
      border-radius: 14px;
      padding: 14px 16px;
      transition: var(--transition);}
.vk-ref-card:hover{background: rgba(255,255,255,0.92);
      border-color: rgba(200,148,149,0.2);
      transform: translateY(-2px);
      box-shadow: 0 6px 20px rgba(26,18,25,0.06);}
.vk-ref-header{display: flex; align-items: center; gap: 9px; margin-bottom: 9px;}
.vk-ref-icon{width: 30px; height: 30px; border-radius: 9px;
      display: flex; align-items: center; justify-content: center; flex-shrink: 0;}
.vk-ref-icon [data-lucide]{width: 13px; height: 13px;}
.vk-ref-icon.rose{background: rgba(200,148,149,0.12); color: var(--rose-deep);  border: 1px solid rgba(200,148,149,0.2);}
.vk-ref-icon.violet{background: rgba(74,55,80,0.09);    color: var(--violet);     border: 1px solid rgba(74,55,80,0.16);}
.vk-ref-icon.teal{background: rgba(20,184,166,0.09);  color: #0f766e;           border: 1px solid rgba(20,184,166,0.18);}
.vk-ref-icon.indigo{background: rgba(99,102,241,0.09);  color: #4338ca;           border: 1px solid rgba(99,102,241,0.18);}
.vk-ref-name{font-size: 0.82rem; font-weight: 800; color: var(--text); display: block; line-height: 1.2;}
.vk-ref-type{font-size: 0.65rem; color: var(--text-light); font-weight: 500;}
.vk-ref-desc{font-size: 0.76rem; color: var(--text-muted); line-height: 1.55;}
.vk-consult-banner{display: flex; align-items: flex-start; gap: 12px;
      background: rgba(245,158,11,0.07);
      border: 1px solid rgba(245,158,11,0.18);
      border-radius: 14px; padding: 13px 18px;
      font-size: 0.84rem; color: #92650a;
      font-weight: 500; line-height: 1.6;}
.vk-consult-banner [data-lucide]{width: 17px; height: 17px; color: #b45309; flex-shrink: 0; margin-top: 2px;}
@media(max-width:900px){
.vk-header-bar{flex-direction:column;align-items:flex-start;gap:14px;padding:20px 22px}
.vk-header-title{font-size:1.5rem}
.vk-ref-grid{grid-template-columns:repeat(2,1fr)}
.vk-detected-body{padding:22px 22px}
.vk-focus-date{font-size:2rem}
}
@media(max-width:600px){
.vk-focus-date{font-size:1.7rem}
.vk-ref-grid{grid-template-columns:1fr 1fr}
.vk-detected-header{flex-direction:column;align-items:flex-start;gap:10px}
}
