:root{
  --ins-bg:#f5f7fb;
  --ins-surface:#ffffff;
  --ins-surface-2:#f8fafc;
  --ins-text:#172033;
  --ins-muted:#667085;
  --ins-line:#e6eaf0;
  --ins-primary:#2446a8;
  --ins-primary-2:#345bd3;
  --ins-success:#177245;
  --ins-warning:#9a6700;
  --ins-danger:#b42318;
  --ins-info:#175cd3;
  --ins-radius:18px;
  --ins-radius-sm:12px;
  --ins-shadow:0 14px 38px rgba(25,38,69,.08);
  --ins-shadow-soft:0 6px 20px rgba(25,38,69,.055);
  --ins-ease:cubic-bezier(.2,.8,.2,1);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body.ins-app{margin:0;background:var(--ins-bg);color:var(--ins-text);font-family:Vazirmatn,system-ui,-apple-system,"Segoe UI",sans-serif;min-height:100vh}
body.ins-app::before{content:"";position:fixed;inset:0 0 auto;height:240px;background:radial-gradient(circle at 78% 15%,rgba(52,91,211,.12),transparent 34%),linear-gradient(180deg,#fff 0%,rgba(255,255,255,0) 100%);pointer-events:none;z-index:-1}
a{transition:color .18s var(--ins-ease),background-color .18s var(--ins-ease),border-color .18s var(--ins-ease),transform .18s var(--ins-ease)}
.ins-skip{position:fixed;top:8px;right:8px;z-index:2000;transform:translateY(-140%);background:#111827;color:#fff;padding:.65rem .9rem;border-radius:10px;text-decoration:none}.ins-skip:focus{transform:none}
.ins-navbar{position:sticky;top:0;z-index:1040;background:rgba(255,255,255,.9)!important;backdrop-filter:blur(16px);border-bottom:1px solid rgba(230,234,240,.95);box-shadow:0 2px 14px rgba(25,38,69,.025)}
.ins-navbar .navbar-brand{display:flex;align-items:center;gap:.65rem;color:var(--ins-text);font-weight:900;letter-spacing:-.4px}
.ins-brand-mark{width:36px;height:36px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(135deg,var(--ins-primary),var(--ins-primary-2));color:#fff;box-shadow:0 8px 20px rgba(36,70,168,.25)}
.ins-navbar .nav-link{font-weight:700;color:#475467;border-radius:10px;padding:.55rem .75rem!important}.ins-navbar .nav-link:hover,.ins-navbar .nav-link.active{background:#eef3ff;color:var(--ins-primary)}
.ins-page{position:relative;z-index:1}.ins-page .container{max-width:1180px}
.ins-page-title{font-weight:950;letter-spacing:-.65px;color:#172033}.ins-eyebrow{display:inline-flex;align-items:center;gap:.4rem;font-size:.78rem;font-weight:900;color:var(--ins-primary);background:#eef3ff;border:1px solid #dce6ff;border-radius:999px;padding:.32rem .65rem}
.card,.ins-card,.ins-panel{border:1px solid var(--ins-line)!important;border-radius:var(--ins-radius)!important;background:var(--ins-surface);box-shadow:var(--ins-shadow-soft);overflow:hidden}
.card:hover.ins-hover,.ins-hover:hover{transform:translateY(-2px);box-shadow:var(--ins-shadow)}
.btn{border-radius:11px;font-weight:800;min-height:42px;display:inline-flex;align-items:center;justify-content:center;gap:.38rem;transition:transform .16s var(--ins-ease),box-shadow .16s var(--ins-ease),background .16s var(--ins-ease)}
.btn:hover{transform:translateY(-1px)}.btn:active{transform:translateY(0)}.btn-primary{background:linear-gradient(135deg,var(--ins-primary),var(--ins-primary-2));border-color:transparent;box-shadow:0 7px 18px rgba(36,70,168,.18)}
.btn-success{box-shadow:0 7px 18px rgba(23,114,69,.12)}
.form-control,.form-select{border-radius:12px;border:1px solid #d9dee8;min-height:46px;background:#fff;color:var(--ins-text);transition:border-color .16s,box-shadow .16s,background .16s}.form-control:focus,.form-select:focus{border-color:#91a8ed;box-shadow:0 0 0 .22rem rgba(52,91,211,.12)}
textarea.form-control{min-height:110px}.form-label{font-weight:800;color:#344054;margin-bottom:.42rem}.form-text,.text-muted,.muted{color:var(--ins-muted)!important}
.alert{border:0;border-radius:14px}.alert-danger{background:#fff0ee;color:#8f1f17}.alert-warning{background:#fff8e8;color:#7a5600}.alert-success{background:#ecfdf3;color:#11663d}.alert-info{background:#eff8ff;color:#175cd3}
.table{--bs-table-bg:transparent}.table thead th{font-size:.78rem;text-transform:none;color:#667085;background:#f8fafc;border-bottom-color:var(--ins-line);white-space:nowrap}.table td{vertical-align:middle;border-color:#edf0f4}.table-responsive{border-radius:14px;border:1px solid var(--ins-line)}
.ins-hero{padding:clamp(1.25rem,3vw,2.35rem);background:linear-gradient(135deg,#fff 20%,#f1f5ff 100%);border:1px solid #e1e8fb;border-radius:26px;box-shadow:var(--ins-shadow);position:relative;overflow:hidden}.ins-hero::after{content:"";position:absolute;width:260px;height:260px;border-radius:50%;left:-80px;top:-90px;background:radial-gradient(circle,rgba(52,91,211,.16),rgba(52,91,211,0) 70%);pointer-events:none}.ins-hero h1{font-weight:950;letter-spacing:-1px;line-height:1.55}.ins-hero p{color:#586174;line-height:2}
.ins-feature-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.ins-feature{padding:1.1rem}.ins-icon{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:#eef3ff;color:var(--ins-primary);font-size:1.25rem;margin-bottom:.8rem}.ins-feature h3{font-size:1rem;font-weight:900}.ins-feature p{font-size:.87rem;color:var(--ins-muted);margin:0;line-height:1.85}
.ins-metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.ins-metric{padding:1rem 1.05rem}.ins-metric .v{font-size:1.55rem;font-weight:950;letter-spacing:-.6px}.ins-metric .k{font-size:.8rem;color:var(--ins-muted);margin-top:.15rem}
.ins-empty{padding:2.25rem 1rem;text-align:center;border:1px dashed #ccd4e2;border-radius:18px;background:#fbfcfe}.ins-empty .ins-empty-icon{width:58px;height:58px;border-radius:18px;margin:0 auto .8rem;display:grid;place-items:center;background:#eef3ff;color:var(--ins-primary);font-size:1.45rem}.ins-empty h3{font-size:1rem;font-weight:900}.ins-empty p{color:var(--ins-muted);max-width:560px;margin:.35rem auto 1rem;line-height:1.9}
.ins-case-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ins-case-card{display:block;text-decoration:none;color:inherit;padding:1rem 1.05rem;border:1px solid var(--ins-line);border-radius:16px;background:#fff;box-shadow:0 4px 14px rgba(25,38,69,.04);transition:transform .18s var(--ins-ease),box-shadow .18s var(--ins-ease),border-color .18s}.ins-case-card:hover{transform:translateY(-2px);box-shadow:var(--ins-shadow-soft);border-color:#cbd7fb;color:inherit}.ins-case-card .title{font-weight:900}.ins-case-meta{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.55rem;color:var(--ins-muted);font-size:.79rem}
.ins-status{display:inline-flex;align-items:center;gap:.28rem;border-radius:999px;padding:.28rem .58rem;font-size:.72rem;font-weight:900;background:#f2f4f7;color:#475467}.ins-status::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor;opacity:.75}.ins-status[data-status="draft"]{background:#f2f4f7;color:#475467}.ins-status[data-status="in_progress"]{background:#eff8ff;color:#175cd3}.ins-status[data-status="ready"],.ins-status[data-status="done"],.ins-status[data-status="paid"]{background:#ecfdf3;color:#16794f}.ins-status[data-status="closed"],.ins-status[data-status="archived"]{background:#fff1f0;color:#b42318}
.ins-process{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin:.75rem 0 1rem}.ins-process-step{position:relative;padding:.7rem .55rem;border:1px solid var(--ins-line);border-radius:13px;background:#fff;min-width:0}.ins-process-step .n{width:24px;height:24px;border-radius:8px;display:grid;place-items:center;font-size:.75rem;font-weight:900;background:#f2f4f7;color:#667085;margin-bottom:.35rem}.ins-process-step .t{font-size:.72rem;font-weight:850;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ins-process-step.done{border-color:#a6e4c7;background:#f5fdf8}.ins-process-step.done .n{background:#dcfae6;color:#087443}.ins-process-step.active{border-color:#9eb4f3;background:#f4f7ff;box-shadow:0 5px 15px rgba(52,91,211,.09)}.ins-process-step.active .n{background:var(--ins-primary);color:#fff}
.ins-wizard{display:flex;align-items:center;gap:.55rem;margin-bottom:1.1rem}.ins-wizard .step{display:flex;align-items:center;gap:.4rem;font-size:.78rem;font-weight:850;color:#98a2b3}.ins-wizard .step b{width:28px;height:28px;border-radius:9px;background:#f2f4f7;display:grid;place-items:center;color:#667085}.ins-wizard .step.active{color:var(--ins-primary)}.ins-wizard .step.active b,.ins-wizard .step.done b{background:var(--ins-primary);color:#fff}.ins-wizard .line{height:2px;flex:1;background:#e5e9f0;min-width:18px}.ins-wizard .line.done{background:#9eb4f3}
.ins-dropzone{border:1.5px dashed #b9c5da;border-radius:16px;background:#fbfcff;padding:1rem;transition:border-color .16s,background .16s,transform .16s}.ins-dropzone.dragover,.ins-dropzone.is-dragover{border-color:var(--ins-primary);background:#f1f5ff;transform:scale(1.005)}
.ins-file-chip{display:flex;align-items:center;justify-content:space-between;gap:.7rem;padding:.7rem .8rem;border:1px solid var(--ins-line);border-radius:12px;background:#fff}.ins-file-chip .name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:800}
.ins-skeleton{position:relative;overflow:hidden;background:#eef1f5;border-radius:10px;min-height:18px}.ins-skeleton::after{content:"";position:absolute;inset:0;transform:translateX(100%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.78),transparent);animation:ins-shimmer 1.35s infinite}
.ins-network{position:fixed;left:16px;bottom:16px;z-index:2000;max-width:min(360px,calc(100vw - 32px));padding:.65rem .85rem;border-radius:12px;background:#101828;color:#fff;box-shadow:0 10px 28px rgba(16,24,40,.22);font-size:.82rem;font-weight:750;transform:translateY(120%);opacity:0;transition:.25s var(--ins-ease)}.ins-network.show{transform:none;opacity:1}.ins-network.offline{background:#7a271a}
.ins-submit-spin{width:17px;height:17px;border:2px solid rgba(255,255,255,.45);border-top-color:#fff;border-radius:50%;animation:ins-spin .7s linear infinite}
.ins-admin-nav{display:flex;gap:.45rem;flex-wrap:wrap;margin-bottom:1rem}.ins-admin-nav a{padding:.48rem .72rem;border-radius:10px;text-decoration:none;font-size:.8rem;font-weight:850;color:#475467;background:#fff;border:1px solid var(--ins-line)}.ins-admin-nav a.active,.ins-admin-nav a:hover{color:var(--ins-primary);border-color:#cbd7fb;background:#f3f6ff}
body.ins-lawyer-portal{background:var(--ins-bg)}body.ins-lawyer-portal .wrap{max-width:1120px!important;margin:24px auto!important}body.ins-lawyer-portal .list-group-item{border-color:var(--ins-line);padding:1rem}body.ins-lawyer-portal .pill{font-size:.72rem!important;padding:.28rem .55rem!important;border-radius:999px!important;background:#eef3ff!important;color:var(--ins-primary)!important}
.ins-chat-thread{display:flex;flex-direction:column;gap:.7rem}.ins-chat-bubble{max-width:min(78%,680px);padding:.75rem .9rem;border-radius:16px;background:#f2f4f7;line-height:1.9;white-space:pre-wrap}.ins-chat-message{display:flex;flex-direction:column}.ins-chat-message.is-mine{align-items:flex-start}.ins-chat-message.is-peer{align-items:flex-end}.ins-chat-message.is-mine .ins-chat-bubble{background:#eaf0ff;color:#1e3a8a}.ins-chat-message.is-peer .ins-chat-bubble{background:#fff;border:1px solid var(--ins-line)}
@keyframes ins-shimmer{100%{transform:translateX(-100%)}}@keyframes ins-spin{to{transform:rotate(360deg)}}@keyframes ins-fade-up{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes ins-soft-pulse{0%,100%{box-shadow:0 0 0 0 rgba(52,91,211,.10)}50%{box-shadow:0 0 0 8px rgba(52,91,211,0)}}
.ins-animate{animation:ins-fade-up .45s var(--ins-ease) both}.ins-pulse{animation:ins-soft-pulse 2s infinite}
@media(max-width:991.98px){.ins-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ins-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ins-process{grid-template-columns:repeat(3,minmax(0,1fr))}.ins-navbar .navbar-collapse{padding:.75rem 0}.ins-navbar .nav-link{padding:.65rem .75rem!important}}
@media(max-width:767.98px){.ins-page .container{padding-left:14px;padding-right:14px}.ins-hero{border-radius:20px}.ins-case-grid{grid-template-columns:1fr}.ins-actionbar{padding-bottom:calc(.5rem + env(safe-area-inset-bottom))}.table-responsive{border:0}.table-responsive table{min-width:760px}.ins-chat-bubble{max-width:92%}}
@media(max-width:575.98px){.ins-feature-grid,.ins-metric-grid{grid-template-columns:1fr}.ins-process{grid-template-columns:repeat(2,minmax(0,1fr))}.ins-wizard .step span{display:none}.ins-wizard .line{min-width:8px}.btn{min-height:44px}.d-flex.gap-2>.btn:not(.btn-sm){flex-grow:1}.ins-network{bottom:82px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}.ins-skeleton::after{display:none}}
@media print{.ins-navbar,.ins-actionbar,.ins-network,.quick-access-menu{display:none!important}body.ins-app{background:#fff}.card,.ins-card,.ins-panel{box-shadow:none!important}}
