:root{--ink: #0B1E2D;--ink-2: #122C40;--paper: #FAF7F2;--paper-2: #F1EBDF;--sand: #E8DCC4;--accent: #0F766E;--accent-2: #14B8A6;--gold: #C9A227;--rose: #B91C1C;--amber: #D97706;--green: #15803D;--line: rgba(11,30,45,.1);--line-strong: rgba(11,30,45,.25);--shadow: 0 1px 2px rgba(11,30,45,.04), 0 8px 24px rgba(11,30,45,.06);--shadow-lg: 0 2px 4px rgba(11,30,45,.06), 0 18px 48px rgba(11,30,45,.12);--serif: "Fraunces", Georgia, serif;--sans: "IBM Plex Sans Arabic", system-ui, sans-serif;--mono: "JetBrains Mono", monospace}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--sans);background:var(--paper);color:var(--ink);font-feature-settings:"ss01","ss02";line-height:1.55;min-height:100vh;background-image:radial-gradient(circle at 15% 10%,rgba(15,118,110,.04),transparent 45%),radial-gradient(circle at 85% 85%,rgba(201,162,39,.05),transparent 45%)}.wrap{max-width:1240px;margin:0 auto;padding:28px 24px 64px}header.topbar{display:flex;align-items:center;justify-content:space-between;padding:14px 0 26px;border-bottom:1px solid var(--line);margin-bottom:28px;gap:16px;flex-wrap:wrap}.brand{display:flex;align-items:center;gap:14px}.brand-mark{width:46px;height:46px;border-radius:10px;background:linear-gradient(135deg,var(--ink) 0%,var(--accent) 100%);display:grid;place-items:center;color:var(--paper);font-family:var(--serif);font-weight:700;font-size:22px;font-style:italic;letter-spacing:-.02em;box-shadow:var(--shadow)}.brand-text h1{font-family:var(--serif);font-weight:500;font-size:20px;letter-spacing:-.01em;line-height:1.1}.brand-text small{color:#0b1e2d99;font-size:12px;letter-spacing:.06em;text-transform:uppercase}.topbar-controls{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.lang-toggle{display:inline-flex;border:1px solid var(--line-strong);border-radius:999px;padding:3px;background:var(--paper-2)}.lang-toggle button{border:none;background:transparent;padding:6px 14px;border-radius:999px;font-size:13px;font-weight:600;cursor:pointer;color:var(--ink);font-family:var(--sans);transition:all .2s ease}.lang-toggle button.active{background:var(--ink);color:var(--paper)}.btn{border:1px solid var(--line-strong);background:var(--paper);padding:8px 14px;border-radius:999px;cursor:pointer;font-family:var(--sans);font-size:13px;font-weight:500;color:var(--ink);transition:all .2s ease;display:inline-flex;align-items:center;gap:6px}.btn:hover{background:var(--ink);color:var(--paper)}.btn-primary{background:var(--accent);color:var(--paper);border-color:var(--accent)}.btn-primary:hover{background:var(--ink);border-color:var(--ink)}.btn-danger{background:transparent;color:var(--rose);border-color:#b91c1c4d}.btn-danger:hover{background:var(--rose);color:var(--paper);border-color:var(--rose)}.btn-sm{padding:5px 10px;font-size:11px}.main-tabs{display:flex;gap:4px;margin-bottom:24px;border-bottom:1px solid var(--line-strong)}.main-tab{padding:12px 20px;background:transparent;border:none;font-family:var(--sans);font-size:14px;font-weight:600;color:#0b1e2d8c;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:all .15s ease}.main-tab:hover{color:var(--ink)}.main-tab.active{color:var(--ink);border-bottom-color:var(--accent)}.hero{margin-bottom:28px}.eyebrow{display:inline-flex;align-items:center;gap:8px;font-family:var(--mono);font-size:11px;font-weight:500;color:var(--accent);letter-spacing:.12em;text-transform:uppercase;margin-bottom:14px}.eyebrow:before{content:"";width:24px;height:1px;background:var(--accent)}.hero h2{font-family:var(--serif);font-weight:500;font-size:clamp(28px,4.2vw,46px);line-height:1.08;letter-spacing:-.02em;margin-bottom:14px;max-width:820px}[dir=rtl] .hero h2{font-family:var(--sans);font-weight:600}.hero h2 em{font-style:italic;color:var(--accent);font-weight:500}[dir=rtl] .hero h2 em{font-style:normal}.hero p{max-width:720px;font-size:15.5px;color:#0b1e2db8;line-height:1.6}.grid{display:grid;grid-template-columns:1fr 380px;gap:24px;align-items:start}@media (max-width: 980px){.grid{grid-template-columns:1fr}}.card{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:24px;box-shadow:var(--shadow)}.card+.card{margin-top:18px}.card-title{font-family:var(--serif);font-weight:600;font-size:18px;margin-bottom:4px;letter-spacing:-.01em;display:flex;align-items:center;gap:10px}[dir=rtl] .card-title{font-family:var(--sans);font-weight:700}.card-sub{font-size:13px;color:#0b1e2d99;margin-bottom:18px}.num-badge{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--ink);color:var(--paper);font-family:var(--mono);font-size:12px;font-weight:700}.field{margin-bottom:16px}.field label{display:block;font-size:13px;font-weight:600;color:var(--ink);margin-bottom:8px}.field .hint{font-size:12px;color:#0b1e2d8c;margin-top:6px;line-height:1.45}select,input[type=number],input[type=text]{width:100%;padding:11px 14px;font-family:var(--sans);font-size:14px;background:var(--paper-2);border:1px solid var(--line);border-radius:8px;color:var(--ink);transition:all .2s ease}select:focus,input:focus{outline:none;border-color:var(--accent);background:var(--paper);box-shadow:0 0 0 3px #0f766e1f}input[type=number]::-webkit-outer-spin-button,input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none}.row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.row-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}.phase-pills{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.phase-pill{padding:7px 12px;border-radius:999px;border:1px solid var(--line-strong);background:var(--paper-2);font-size:12px;font-weight:600;cursor:pointer;transition:all .15s ease;font-family:var(--sans);color:var(--ink)}.phase-pill:hover{border-color:var(--accent)}.phase-pill.active{background:var(--ink);color:var(--paper);border-color:var(--ink)}.rule-banner{margin-top:16px;padding:16px;border-radius:10px;background:linear-gradient(180deg,#0f766e0f,#0f766e05);border:1px solid rgba(15,118,110,.18);display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:start}.rule-banner .big{font-family:var(--serif);font-size:44px;font-weight:700;line-height:1;color:var(--accent);letter-spacing:-.03em}.rule-banner .big small{font-size:20px;vertical-align:top}.rule-banner dl{display:grid;grid-template-columns:1fr 1fr;gap:4px 18px}.rule-banner dt{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#0b1e2d99;font-weight:600}.rule-banner dd{font-size:13px;font-weight:600;color:var(--ink);margin-bottom:6px}.result-panel{position:sticky;top:24px;background:var(--ink);color:var(--paper);border-radius:14px;overflow:hidden;box-shadow:var(--shadow-lg)}.result-head{padding:20px 22px 16px;border-bottom:1px solid rgba(250,247,242,.08);background:linear-gradient(180deg,var(--ink-2),var(--ink))}.result-head .eyebrow{color:var(--gold)}.result-head .eyebrow:before{background:var(--gold)}.result-head h3{font-family:var(--serif);font-size:22px;font-weight:500;margin-top:6px;letter-spacing:-.01em;color:var(--paper)}[dir=rtl] .result-head h3{font-family:var(--sans);font-weight:600}.result-body{padding:20px 22px 24px}.donut-wrap{display:flex;align-items:center;gap:20px;margin-bottom:18px}.donut{--pct: 0;--size: 118px;width:var(--size);height:var(--size);border-radius:50%;background:conic-gradient(var(--ring-color, #14B8A6) calc(var(--pct) * 1%),rgba(250,247,242,.08) 0);display:grid;place-items:center;position:relative;flex-shrink:0;transition:background .6s ease}.donut:after{content:"";position:absolute;top:10px;right:10px;bottom:10px;left:10px;border-radius:50%;background:var(--ink)}.donut-inner{position:relative;z-index:1;text-align:center}.donut-inner .val{font-family:var(--serif);font-size:28px;font-weight:700;letter-spacing:-.02em}[dir=rtl] .donut-inner .val{font-family:var(--sans)}.donut-inner .lab{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:#faf7f299}.donut-meta{flex:1}.donut-meta .status-pill{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:999px;font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;margin-bottom:8px}.status-pill.ok{background:#22c55e2e;color:#86efac}.status-pill.warn{background:#f59e0b2e;color:#fcd34d}.status-pill.bad{background:#ef444438;color:#fca5a5}.status-pill.neutral{background:#faf7f21f;color:#faf7f2b3}.donut-meta p{font-size:13px;color:#faf7f2bf;line-height:1.5}.stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#faf7f214;border-radius:10px;overflow:hidden;margin-bottom:18px}.stat{background:var(--ink);padding:12px 14px}.stat .k{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:#faf7f28c;margin-bottom:4px}.stat .v{font-family:var(--mono);font-size:20px;font-weight:700;color:var(--paper)}.stat .v small{font-size:12px;color:#faf7f280;font-weight:500}.action-line{padding:14px 16px;border-radius:10px;background:#c9a2271f;border:1px solid rgba(201,162,39,.3);font-size:13px;line-height:1.55}.action-line strong{color:var(--gold);display:block;margin-bottom:4px}.action-line.ok{background:#22c55e1a;border-color:#22c55e4d}.action-line.ok strong{color:#86efac}.wage-note{margin-top:12px;padding:12px 14px;border-radius:10px;background:#faf7f20d;font-size:12.5px;border-left:3px solid var(--gold)}[dir=rtl] .wage-note{border-left:0;border-right:3px solid var(--gold)}.wage-note .label{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--gold);font-weight:700;margin-bottom:4px}.rules-table-wrap{overflow-x:auto}.rules-table{width:100%;border-collapse:collapse;font-size:13px}.rules-table thead th{text-align:left;padding:12px;font-size:11px;text-transform:uppercase;letter-spacing:.06em;font-weight:700;color:#0b1e2da6;border-bottom:1px solid var(--line-strong);background:var(--paper-2);white-space:nowrap}[dir=rtl] .rules-table thead th{text-align:right}.rules-table tbody td{padding:12px;border-bottom:1px solid var(--line);vertical-align:top}.rules-table tbody tr:hover{background:var(--paper-2)}.rules-table .sector-name{font-weight:600;min-width:220px}.rules-table .rate-cell{font-family:var(--mono);font-weight:700;color:var(--accent);font-size:14px}.rules-table .actions-cell{display:flex;gap:6px;flex-wrap:wrap}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0b1e2d99;display:none;align-items:center;justify-content:center;z-index:1000;padding:20px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-overlay.open{display:flex}.modal{background:var(--paper);border-radius:16px;max-width:680px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 24px 80px #0000004d}.modal-head{padding:22px 24px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}.modal-head h3{font-family:var(--serif);font-size:20px;font-weight:600}[dir=rtl] .modal-head h3{font-family:var(--sans);font-weight:700}.modal-close{background:none;border:none;font-size:24px;cursor:pointer;color:#0b1e2d80;line-height:1}.modal-close:hover{color:var(--ink)}.modal-body{padding:22px 24px}.modal-foot{padding:18px 24px;border-top:1px solid var(--line);display:flex;gap:10px;justify-content:flex-end}[dir=rtl] .modal-foot{justify-content:flex-start}.phase-editor{border:1px solid var(--line);border-radius:10px;padding:12px;margin-bottom:10px;background:var(--paper-2);position:relative}.phase-editor-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.phase-editor-head .label{font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:700;color:#0b1e2d99}.formula{margin-top:12px;padding:14px 16px;border-radius:10px;background:var(--ink);color:var(--paper);font-family:var(--mono);font-size:12.5px;overflow-x:auto;direction:ltr}.formula .comment{color:#faf7f280}.formula .num{color:var(--gold)}.formula .op{color:var(--accent-2)}.footnote{margin-top:28px;padding:18px 22px;border-radius:10px;background:var(--paper-2);border:1px dashed var(--line-strong);font-size:12px;color:#0b1e2da6;line-height:1.65}.footnote strong{color:var(--ink)}.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%);background:var(--ink);color:var(--paper);padding:12px 20px;border-radius:999px;font-size:13px;font-weight:500;box-shadow:var(--shadow-lg);opacity:0;pointer-events:none;transition:opacity .3s ease,transform .3s ease;z-index:2000}.toast.show{opacity:1;transform:translate(-50%) translateY(-8px)}.tab-panel{display:none}.tab-panel.active{display:block}.search-row{display:flex;gap:12px;margin-bottom:16px;flex-wrap:wrap}.search-row input{flex:1;min-width:200px}@media print{.topbar-controls,.main-tabs,.btn,.btn-primary,.btn-danger{display:none!important}.result-panel{position:static!important}body{background:#fff}}.auth-card{max-width:440px;margin:10vh auto;background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:40px 36px;box-shadow:var(--shadow-lg)}.auth-brand{text-align:center;margin-bottom:28px}.auth-brand .brand-mark{width:56px;height:56px;border-radius:12px;background:linear-gradient(135deg,var(--ink) 0%,var(--accent) 100%);display:grid;place-items:center;color:var(--paper);font-family:var(--serif);font-weight:700;font-size:26px;font-style:italic;letter-spacing:-.02em;margin:0 auto 18px;box-shadow:var(--shadow)}.auth-brand h1{font-family:var(--serif);font-weight:500;font-size:24px;letter-spacing:-.01em;margin-bottom:8px}.auth-sub{color:#0b1e2da6;font-size:14px;line-height:1.5}.auth-form label{display:block;margin-bottom:14px}.auth-form label span{display:block;font-size:13px;font-weight:600;margin-bottom:6px;color:var(--ink)}.auth-form input{width:100%;padding:12px 14px;font-family:var(--sans);font-size:15px;background:var(--paper-2);border:1px solid var(--line);border-radius:8px;color:var(--ink);transition:all .2s ease}.auth-form input:focus{outline:none;border-color:var(--accent);background:var(--paper);box-shadow:0 0 0 3px #0f766e1f}.auth-err{color:var(--rose);font-size:13px;font-weight:500;margin-bottom:12px;min-height:18px}.auth-btn{display:block;width:100%;background:var(--ink);color:var(--paper);border:none;border-radius:8px;padding:13px 16px;margin-top:8px;font-family:var(--sans);font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.auth-btn:hover{background:var(--accent)}.auth-btn-secondary{display:block;width:100%;background:transparent;color:#0b1e2da6;border:none;padding:10px 16px;margin-top:10px;font-family:var(--sans);font-size:12px;cursor:pointer;text-decoration:underline}.auth-btn-secondary:hover{color:var(--ink)}.auth-note{margin-top:20px;padding:12px 14px;background:var(--paper-2);border-radius:8px;font-size:12px;color:#0b1e2da6;line-height:1.5}.auth-note strong{color:var(--ink)}
