@import url("https://fonts.googleapis.com/css2?family=Vazirmatn:wght@400;500;600;700;800;900&display=swap");:root{--ink:#172033;--muted:#778198;--line:#e6eaf2;--panel:#fff;--bg:#f7f8fc;--teal:#00a99d;--teal-dark:#007f78;--violet:#7856d6;--orange:#f58b52;--red:#de5268;--shadow:0 18px 48px rgba(27,39,74,.07)}*{box-sizing:border-box}body,html{min-height:100%}body{margin:0;color:var(--ink);background:radial-gradient(circle at 90% -10%,#dff8f3 0,transparent 32rem),var(--bg);font-family:Vazirmatn,Tahoma,Arial,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer;border:0}button:disabled{cursor:not-allowed;opacity:.55}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(28px,4vw,44px);line-height:1.35;margin:8px 0 4px;letter-spacing:-.7px}h2{font-size:20px;margin-bottom:5px}h3{font-size:15px;margin-bottom:12px}.muted{color:var(--muted)}.eyebrow{display:inline-block;color:var(--teal-dark);font-size:12px;font-weight:800;letter-spacing:.4px}.auth-page{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(340px,480px);grid-gap:8vw;gap:8vw;align-items:center;max-width:1200px;margin:auto;padding:48px}.auth-art{padding:24px}.auth-art h1{max-width:620px;font-size:clamp(42px,6vw,76px);line-height:1.2}.auth-art>p:not(.eyebrow){max-width:520px;font-size:18px;color:var(--muted);line-height:2}.brand-mark{width:58px;height:58px;display:grid;place-items:center;border-radius:18px;background:var(--ink);color:#fff;font-weight:900;box-shadow:10px 12px 0 #b7ebe4}.brand-mark.small{width:40px;height:40px;border-radius:12px;box-shadow:5px 6px 0 #b7ebe4;font-size:13px}.auth-highlights{display:flex;flex-wrap:wrap;gap:10px;margin-top:34px}.auth-highlights span,.count-badge,.pill,.status-label{display:inline-flex;align-items:center;border-radius:999px;padding:7px 12px;background:#e8faf7;color:var(--teal-dark);font-size:12px;font-weight:700}.auth-card{background:var(--panel);border:1px solid var(--line);border-radius:28px;padding:34px;box-shadow:var(--shadow)}.auth-card h2{font-size:32px;margin:10px 0}.field{display:grid;grid-gap:7px;gap:7px;margin:0 0 14px;color:#606b80;font-size:13px;font-weight:600}input,select,textarea{width:100%;border:1px solid var(--line);border-radius:12px;padding:11px 13px;background:#fff;color:var(--ink);outline:none;transition:.2s ease}textarea{resize:vertical;line-height:1.9}input:focus,select:focus,textarea:focus{border-color:var(--teal);box-shadow:0 0 0 4px #00a99d1a}.ghost,.icon-button,.link-button,.primary,.secondary{border-radius:11px;padding:10px 15px;font-weight:700;transition:.2s ease}.primary{color:#fff;background:var(--ink);box-shadow:0 8px 18px #17203322}.primary:hover{background:var(--teal-dark);transform:translateY(-1px)}.secondary{color:var(--teal-dark);background:#eaf9f7}.secondary:hover{background:#d6f4ef}.ghost{color:var(--muted);background:transparent}.ghost:hover{color:var(--ink);background:#f0f2f7}.link-button{color:var(--teal-dark);background:transparent;padding:5px}.icon-button{color:#68738a;background:#f2f4f8;padding:6px 9px;font-size:12px}.icon-button:hover{background:#e8ebf2}.danger{color:var(--red)!important}.wide{width:100%}.demo-box{margin-top:18px;border-radius:12px;padding:12px;background:#faf3e9;color:#9a6c42;font-size:12px}.app-shell{min-height:100vh}.app-topbar{position:-webkit-sticky;position:sticky;top:0;z-index:10;min-height:74px;gap:24px;padding:12px max(22px,calc((100% - 1440px) / 2));background:#ffffffea;border-bottom:1px solid #e6eaf2cc;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.app-topbar,.brand{display:flex;align-items:center}.brand{gap:12px;min-width:150px}.brand span,.brand strong{display:block}.brand strong{font-size:16px}.brand span{color:var(--muted);font-size:11px;margin-top:2px}.top-nav{display:flex;align-items:center;justify-content:center;gap:4px;flex:1 1}.top-nav button{display:inline-flex;align-items:center;gap:7px;padding:9px 12px;color:var(--muted);border-radius:10px;background:transparent;font-size:13px;font-weight:700}.top-nav button span{font-size:17px}.top-nav button.active,.top-nav button:hover{color:var(--ink);background:#eefaf8}.top-nav button.active{color:var(--teal-dark)}.top-meta{display:flex;align-items:center;gap:10px;min-width:150px;justify-content:end}.status-dot{color:var(--muted);font-size:11px;white-space:nowrap}.status-dot:before{content:"";display:inline-block;width:7px;height:7px;margin-left:6px;border-radius:50%;background:#bdc4d1}.status-dot.on:before{background:#24bb9b;box-shadow:0 0 0 4px #24bb9b20}.app-content{max-width:1440px;margin:auto;padding:42px 28px 110px}.stack-page{display:grid;grid-gap:24px;gap:24px}.page-intro{display:flex;justify-content:space-between;align-items:end;gap:20px}.page-intro p{margin-bottom:0}.count-badge{background:var(--ink);color:#fff;padding-inline:15px}.panel{background:var(--panel);border:1px solid var(--line);border-radius:20px;padding:22px;box-shadow:var(--shadow)}.section-heading{display:flex;justify-content:space-between;align-items:start;gap:14px;margin-bottom:18px}.section-heading h2,.section-heading h3{margin-bottom:2px}.section-heading p{margin-bottom:0;font-size:13px}.feature-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:18px;gap:18px}.feature-card{min-height:190px;display:flex;align-items:center;gap:18px;text-align:right;border-radius:22px;padding:28px;color:var(--ink);box-shadow:var(--shadow);transition:transform .2s ease,box-shadow .2s ease}.feature-card:hover{transform:translateY(-4px);box-shadow:0 24px 50px #1b274a16}.case-card{background:linear-gradient(135deg,#dff9f4,#f3fffd)}.contract-card{background:linear-gradient(135deg,#eee8ff,#fbf9ff)}.feature-card .feature-icon{width:62px;height:62px;display:grid;place-items:center;border-radius:18px;background:#fff;color:var(--teal-dark);font-size:30px;box-shadow:0 10px 20px #1b274a10}.feature-card .feature-svg{width:44px;height:44px;fill:none;stroke:currentColor;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}.contract-card .feature-icon{color:var(--violet)}.feature-card-content,.feature-card>span:nth-child(2){display:grid;grid-gap:5px;gap:5px;flex:1 1}.feature-card-content{min-width:0}.feature-card em,.feature-card small{color:var(--muted);font-style:normal;font-size:12px}.feature-card strong{font-size:27px}.feature-card>b{font-size:24px;color:var(--muted)}.feature-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.feature-link{border:1px solid var(--line);border-radius:10px;padding:8px 12px;background:#fff;color:var(--ink);font-size:12px;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.feature-link:hover{transform:translateY(-1px);box-shadow:0 8px 16px #1b274a12}.feature-link.primary-link{background:var(--teal-dark);border-color:var(--teal-dark);color:#fff}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.75fr);grid-gap:18px;gap:18px}.metric-row{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:10px;gap:10px;margin-bottom:26px}.metric-row>div{padding:13px;border-radius:14px;background:#fafbfe;border:1px solid #f0f2f6}.metric-row span,.metric-row strong{display:block}.metric-row span{color:var(--muted);font-size:11px}.metric-row strong{margin-top:5px;font-size:23px}.charts{display:grid;grid-template-columns:1fr 1fr;grid-gap:28px;gap:28px}.bar-line{display:grid;grid-template-columns:72px 1fr 26px;align-items:center;grid-gap:8px;gap:8px;margin:14px 0;font-size:12px}.bar-line>div{height:9px;overflow:hidden;border-radius:99px;background:#eef1f6}.bar-line i{display:block;height:100%;border-radius:inherit;background:var(--teal)}.bar-line i.violet{background:var(--violet)}.bar-line b{color:var(--muted);font-size:11px}.reminder{display:flex;align-items:center;gap:10px;padding:13px 0;border-bottom:1px solid #f0f2f6}.reminder:last-child{border-bottom:0}.reminder-mark{width:29px;height:29px;display:grid;place-items:center;border-radius:10px;background:#e8faf7;color:var(--teal-dark)}.reminder.overdue .reminder-mark{background:#fff0f2;color:var(--red)}.reminder>div{flex:1 1;min-width:0}.reminder small,.reminder strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.reminder small{color:var(--muted);margin-top:3px;font-size:11px}.reminder>b{color:var(--teal-dark);font-size:11px;white-space:nowrap}.overdue-text,.reminder.overdue>b{color:var(--red)!important}.workspace-grid{display:grid;grid-template-columns:minmax(310px,.75fr) minmax(0,1.25fr);grid-gap:18px;gap:18px;align-items:start}html[data-case-mode=list] .workspace-grid:not(.contracts-grid) .form-panel,html[data-case-mode=new] .case-details,html[data-case-mode=new] .workspace-grid:not(.contracts-grid) .list-panel,html[data-contract-mode=list] .contracts-grid .form-panel,html[data-contract-mode=new] .contracts-grid .list-panel{display:none}html[data-case-mode=list] .workspace-grid:not(.contracts-grid),html[data-case-mode=new] .workspace-grid:not(.contracts-grid),html[data-contract-mode=list] .contracts-grid,html[data-contract-mode=new] .contracts-grid{grid-template-columns:minmax(0,1fr)}.contracts-grid{grid-template-columns:minmax(360px,.9fr) minmax(0,1.1fr)}.form-panel{position:-webkit-sticky;position:sticky;top:94px}.step-badge{color:#fff;background:var(--teal);padding:8px 10px;border-radius:10px;font-size:12px;font-weight:800}.two-fields{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px}.record-list{display:grid;grid-gap:9px;gap:9px}.record-card{width:100%;display:flex;align-items:center;gap:12px;text-align:right;padding:14px;background:#fff;border:1px solid var(--line);border-radius:14px;color:var(--ink)}.record-card.selected,.record-card:hover{border-color:#8bded5;background:#f6fffd}.record-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:#eefaf8;color:var(--teal-dark);font-size:20px}.record-card>span:nth-child(2){flex:1 1;min-width:0}.record-card em,.record-card small,.record-card strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.record-card small{margin-top:3px;color:var(--ink);font-family:monospace;font-size:12px}.record-card em{margin-top:4px;color:var(--muted);font-size:11px;font-style:normal}.record-card>b{color:var(--muted);font-size:22px}.pagination{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:22px;color:var(--muted);font-size:12px}.pagination button{padding:7px 10px;border-radius:9px;color:var(--teal-dark);background:#eaf9f7}.case-details{display:grid;grid-gap:16px;gap:16px}.party-summary{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}.party-summary>div{display:grid;grid-gap:5px;gap:5px;padding:13px;border-radius:12px;background:#fafbfe;font-size:13px}.party-summary strong{color:var(--muted);font-size:11px}.upload-box{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding:15px;border:1px dashed #b9c2d3;border-radius:14px;background:#fbfcfe}.upload-box>div{flex:1 1;display:grid;grid-gap:3px;gap:3px;min-width:180px}.upload-box input[type=file]{max-width:300px;padding:7px}.document-list{display:grid;grid-gap:8px;gap:8px}.document-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:11px 0;border-bottom:1px solid #f0f2f6}.document-row>div:first-child{display:grid;grid-gap:3px;gap:3px;min-width:0}.document-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.document-row small{color:var(--muted);font-size:11px}.extracted-text-panel{margin-top:10px;padding:14px;border:1px solid #d9f0ed;border-radius:14px;background:#f8fffe}.extracted-text-meta{display:flex;flex-wrap:wrap;gap:8px;color:var(--muted);font-size:11px}.extracted-page{margin-top:10px;padding:12px;border-radius:10px;background:#fff;border:1px solid #eef0f5}.extracted-page h4{margin:0 0 8px;font-size:12px;color:var(--teal-dark)}.extracted-page pre{margin:0;white-space:pre-wrap;word-break:break-word;font:inherit;line-height:2;color:var(--ink)}.icon-actions{display:flex;gap:5px;flex-wrap:wrap}.contract-card{padding:16px;border:1px solid var(--line);border-radius:15px;background:#fff}.contract-head{display:flex;justify-content:space-between;gap:12px}.contract-head h3{margin:8px 0 2px}.contract-head small{color:var(--ink);font-family:monospace}.status-label{padding:4px 8px;font-size:10px}.status-label.final{color:#6e4ecb;background:#f0eaff}.contract-card>p{margin:12px 0;font-size:12px}.feature-card.contract-card{padding:28px;border:0;border-radius:22px;background:linear-gradient(135deg,#eee8ff,#fbf9ff)}.feature-card.contract-card .feature-icon{color:var(--violet)}.feature-card.contract-card .feature-link.primary-link{background:var(--violet);border-color:var(--violet)}.contract-item{display:flex;align-items:center;gap:8px;padding:9px 0;border-top:1px solid #f0f2f6}.contract-item>div{flex:1 1;min-width:0}.contract-item small,.contract-item strong{display:block}.contract-item small{color:var(--muted);font-size:11px;margin-top:2px}.contract-item em{color:var(--teal-dark);font-size:11px;font-style:normal}.teal-dot,.violet-dot{width:8px;height:8px;border-radius:99px;background:var(--teal)}.violet-dot{background:var(--violet)}.form-actions,.items-heading{display:flex;justify-content:space-between;align-items:center;gap:10px}.items-heading{margin:10px 0}.items-heading h3{margin:0}.item-editor{display:grid;grid-gap:9px;gap:9px;margin:10px 0;padding:12px;border-radius:13px;background:#fafbfe;border:1px solid #eef0f5}.item-top{display:grid;grid-template-columns:100px 1fr auto;grid-gap:7px;gap:7px}.form-actions{margin-top:15px;justify-content:start}.draft-grid,.research-grid{display:grid;grid-template-columns:1.25fr .75fr;grid-gap:18px;gap:18px;align-items:start}.result-list{display:grid;grid-gap:10px;gap:10px;margin-top:22px}.evidence{padding:14px;border-radius:13px;background:#fafbfe;border:1px solid #f0f2f6}.evidence-meta{display:flex;justify-content:space-between;gap:10px}.evidence p{margin:9px 0 0;line-height:1.9;font-size:13px}.tag{display:inline-flex;padding:4px 8px;border-radius:7px;background:#e7faf5;color:var(--teal-dark);font-size:10px}.tag.contrary{color:var(--red);background:#fff0f2}.claim-result,.subpanel{margin-top:18px;padding:15px;border-radius:14px;background:#fafbfe;border:1px solid #eef0f5}.draft-record{display:grid;grid-gap:3px;gap:3px;width:100%;text-align:right;padding:12px;border-radius:11px;background:#fafbfe;color:var(--ink);border:1px solid transparent}.draft-record.selected,.draft-record:hover{border-color:#9bded7;background:#f3fffd}.draft-record small,.version small{color:var(--muted);font-size:11px}.editor{min-height:390px;line-height:2}.compact{min-height:100px;margin-top:12px}.toolbar{display:flex;align-items:center;gap:8px}.toolbar.wrap{flex-wrap:wrap;margin-top:10px}.check{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:12px}.check input{width:auto}.version{padding:10px 0;border-bottom:1px solid #edf0f4;font-size:12px}.alert,.version{display:flex;justify-content:space-between;gap:10px}.alert{align-items:center;padding:12px 15px;border-radius:12px;font-size:13px}.alert button{background:transparent;color:inherit;font-size:19px}.global-alert{max-width:900px;margin:-15px auto 20px}.error{color:#a33148;background:#fff0f2;border:1px solid #ffd6dc}.success{color:#087d72;background:#e9faf6;border:1px solid #c7f1e9}.empty-state{display:grid;place-items:center;min-height:130px;padding:20px;color:var(--muted);text-align:center;background:#fafbfe;border-radius:14px}.floating-pleading{position:fixed;left:28px;bottom:25px;z-index:12;display:inline-flex;align-items:center;gap:8px;padding:14px 18px;border-radius:999px;color:#fff;background:var(--ink);box-shadow:0 12px 30px #17203333;font-weight:800}.floating-pleading span{color:#7fe4d5;font-size:20px}.autocomplete-field{position:relative}.autocomplete-menu{display:grid;grid-gap:4px;gap:4px;max-height:260px;overflow-y:auto;margin:-7px 0 12px;padding:6px;border:1px solid #c9eee8;border-radius:12px;background:#fff;box-shadow:0 14px 30px #17203318}.autocomplete-option{display:grid;grid-gap:3px;gap:3px;width:100%;padding:10px 11px;border-radius:9px;color:var(--ink);background:transparent;text-align:right}.autocomplete-option:hover{background:#effbf9}.autocomplete-option strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.autocomplete-option small,.field-hint{color:var(--muted);font-size:10px;font-weight:500}.selected-claim{display:inline-flex;align-items:center;gap:4px;margin:-4px 0 12px;color:var(--teal-dark);font-size:11px;font-weight:800}.claim-input-group{padding:13px;margin:2px 0 12px;border:1px solid #d9f0ed;border-radius:14px;background:#f8fffe}.claim-input-group .field:last-child{margin-bottom:0}.file-selected{display:block;margin-top:7px;color:var(--teal-dark);font-size:11px;font-style:normal;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.claim-box{padding:15px;border-radius:14px;background:#fffaf0;border:1px solid #f5e3b8}.claim-box strong{display:block;color:#8a6b2e;font-size:11px}.claim-box p{margin:8px 0 0;line-height:1.9;white-space:pre-wrap}.generation-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding:13px 0 2px}.generation-actions small{color:var(--muted);font-size:11px}.compact-field{min-width:190px;margin:0}.compact-field select{min-height:36px;padding:8px 10px}.button-spinner{display:inline-block;width:13px;height:13px;margin-left:7px;vertical-align:-2px;border:2px solid;border-left:2px solid transparent;border-radius:50%;animation:button-spin .7s linear infinite}@keyframes button-spin{to{transform:rotate(1turn)}}.procedure-intake-box{display:grid;grid-gap:10px;gap:10px;margin:4px 0 14px;padding:14px;border:1px solid #cdeee8;border-radius:16px;background:linear-gradient(135deg,#f7fffd,#f7f9ff)}.procedure-intake-box .section-heading{margin:0}.procedure-intake-box .section-heading small{display:block;margin-top:4px;color:var(--muted);font-size:10px;font-weight:600}.procedure-intake-box .field{margin:0}@media (max-width:1050px){.app-topbar{flex-wrap:wrap}.top-nav{order:3;flex-basis:100%;overflow-x:auto;justify-content:start}.top-meta{margin-right:auto}.contracts-grid,.dashboard-grid,.draft-grid,.research-grid,.workspace-grid{grid-template-columns:1fr}.form-panel{position:static}}@media (max-width:680px){.auth-page{grid-template-columns:1fr;padding:22px;gap:10px}.auth-art{padding:10px}.auth-art h1{font-size:38px}.auth-card{padding:22px}.app-content{padding:26px 14px 100px}.app-topbar{padding:10px 14px;gap:10px}.brand,.top-meta{min-width:auto}.page-intro{align-items:start;flex-direction:column}.charts,.feature-cards,.metric-row,.party-summary,.two-fields{grid-template-columns:1fr}.feature-card{min-height:145px;padding:20px}.feature-card strong{font-size:22px}.item-top{grid-template-columns:85px 1fr auto}.upload-box input[type=file]{max-width:100%}.floating-pleading{left:14px;bottom:15px}}