:root{
  --bg:#071226;
  --card:#0d1b34;
  --card-2:#102141;
  --line:#1f3764;
  --text:#ebf2ff;
  --muted:#96a8cf;
  --accent:#35b5ff;
  --accent-2:#1e7bd8;
  --paper:#ffffff;
  --paper-text:#1c1c1c;
  --success:#13c296;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:"Cairo",sans-serif;
  background:linear-gradient(180deg,#030814 0%,#08152b 35%,#0a1730 100%);
  color:var(--text);
}
a{text-decoration:none;color:inherit}
.topbar{
  position:sticky;top:0;z-index:9999;
  display:flex;align-items:center;justify-content:space-between;
  padding:14px 20px;
  background:rgba(5,12,26,.94);backdrop-filter:blur(10px);
  border-bottom:1px solid rgba(255,255,255,.08);
  box-shadow:0 8px 22px rgba(0,0,0,.22)
}
.brand{display:flex;flex-direction:column;gap:2px;font-weight:800;font-size:1.1rem;color:#fff;line-height:1.1}.brand span,.brand small{display:block}.brand small{font-size:.85rem;color:#8edcff;font-weight:700}
.main-nav{display:flex;gap:18px;flex-wrap:wrap}
.main-nav a{color:#cfe0ff;font-size:.95rem}
.page-shell{max-width:1400px;margin:0 auto;padding:22px}
.hero{
  background:radial-gradient(circle at top right,#13315d 0,#0d1d38 40%,#081224 100%);
  border:1px solid rgba(255,255,255,.08);border-radius:22px;padding:28px;margin-bottom:22px;
  box-shadow:0 20px 60px rgba(0,0,0,.25)
}
.hero-badge{
  display:inline-block;background:rgba(53,181,255,.12);color:#7cd4ff;border:1px solid rgba(53,181,255,.3);
  padding:6px 12px;border-radius:999px;font-size:.85rem;margin-bottom:10px
}
.hero h1{margin:0 0 10px;font-size:2rem;line-height:1.4}
.hero p{margin:0;color:#c1d0ef;max-width:850px}
.section-card{
  background:linear-gradient(180deg,rgba(16,33,65,.95),rgba(10,24,49,.96));
  border:1px solid rgba(255,255,255,.08);
  border-radius:22px;padding:22px;margin-bottom:22px;
  box-shadow:0 18px 50px rgba(0,0,0,.22)
}
.section-head{display:flex;justify-content:space-between;gap:14px;align-items:end;margin-bottom:18px;flex-wrap:wrap}
.section-head h2{margin:0;font-size:1.6rem}
.section-head p{margin:4px 0 0;color:var(--muted)}
.service-grid,.case-grid,.contact-grid,.library-grid{display:grid;gap:14px}
.service-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.case-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.contact-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}
.library-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.service-item,.case-card,.library-item,.contact-link{
  background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,.015));
  border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:16px
}
.service-item{display:flex;gap:10px;align-items:flex-start;color:#eef5ff}
.service-item i{color:#7cd4ff;margin-top:5px}
.case-card h3{margin:0 0 10px;color:#8ad8ff}
.case-card ul{margin:0;padding-right:18px;color:#d9e6ff}
.contract-section{padding-top:16px}
.compact{align-items:center}
.toolbar-actions{display:flex;gap:10px;flex-wrap:wrap}
.action-btn{
  border:none;border-radius:12px;padding:11px 16px;cursor:pointer;
  background:#153057;color:#fff;font-family:inherit;font-weight:700
}
.action-btn.primary{background:linear-gradient(90deg,#1586ff,#23b0ff)}
.action-btn.show-btn{background:linear-gradient(90deg,#135d9c,#24a1ef)}
.contract-studio{display:grid;grid-template-columns:1.08fr .92fr;gap:18px;align-items:start}
.preview-panel,.form-panel{
  background:#081427;border:1px solid rgba(255,255,255,.09);border-radius:18px;overflow:hidden
}
.studio-topbar,.form-topbar{
  display:flex;justify-content:space-between;align-items:center;gap:12px;
  background:linear-gradient(90deg,#081628,#0f2345);padding:12px 16px;border-bottom:1px solid rgba(255,255,255,.08)
}
.form-topbar-stack{display:grid;gap:12px;align-items:stretch}
.studio-title{font-weight:700}
.contract-meta{color:var(--muted);font-size:.9rem}
.paper-wrap{padding:18px;background:linear-gradient(180deg,#071020,#08172f);display:flex;justify-content:center;align-items:flex-start;overflow:auto}
.paper{
  width:105mm;max-width:105mm;height:157mm;min-height:157mm;margin:0 auto;background:var(--paper);color:var(--paper-text);
  border-radius:10px;box-shadow:0 25px 65px rgba(0,0,0,.35);padding:9mm 8mm 8mm;border:1px solid #e8edf5;
  display:flex;flex-direction:column;overflow:hidden
}
.paper-header{flex:0 0 auto;border-bottom:2px solid #1f4f8a;padding-bottom:10px;margin-bottom:12px}
.paper-header h3{margin:0;text-align:center;font-size:1rem}
.paper-body{white-space:pre-wrap;line-height:1.85;font-size:.72rem;text-align:justify;flex:1;overflow:auto}
.paper-body .fill{display:inline-block;min-width:88px;padding:0 4px;border-bottom:1.7px solid #1b1b1b;text-align:center}
.paper-body .fill.placeholder{color:#777}
.paper-hint{padding:18px;background:#f6f8fb;border:1px dashed #ccd7e5;border-radius:10px;line-height:2}
.contract-select-wrap{display:grid;gap:6px;width:100%}
.contract-select-wrap.wide{width:100%}
.contract-select-wrap span{font-size:.9rem;color:#c8d6f4}
#contractSelect,#fieldSearch,.field-input,.field-textarea,select.field-input,input.field-input{
  width:100%;background:#0c1c36;color:#fff;border:1px solid #284570;border-radius:12px;padding:11px 12px;font-family:inherit
}
#contractSelect,#fieldSearch,.field-input,select.field-input{min-height:46px}
.field-textarea{resize:vertical;min-height:110px}
.form-search-box{padding:14px 16px;border-bottom:1px solid rgba(255,255,255,.06)}
.form-fields{padding:16px;display:grid;gap:12px;max-height:1030px;overflow:auto}
.form-footer-actions{display:flex;gap:10px;flex-wrap:wrap;padding:14px 16px;border-top:1px solid rgba(255,255,255,.06);background:rgba(8,20,39,.88);position:sticky;bottom:0}
.form-footer-actions .action-btn{flex:1}
.context-box{padding:10px 12px;border-radius:12px;background:rgba(53,181,255,.08);border:1px solid rgba(53,181,255,.18);color:#dcebff;font-size:.84rem;line-height:1.9}
.field-subtitle{display:none}
.picker-search{width:100%;margin:12px 0 14px;background:#0c1c36;color:#fff;border:1px solid #284570;border-radius:12px;padding:11px 12px;font-family:inherit}
.picker-card{max-width:520px}
.picker-options{display:grid;gap:8px;max-height:50vh;overflow:auto}
.picker-option{border:1px solid rgba(255,255,255,.08);background:#10284c;color:#fff;border-radius:12px;padding:12px 14px;text-align:right;cursor:pointer;font-family:inherit}
.picker-option:hover{background:#16335f}
.picker-custom{margin-top:14px;display:grid;gap:10px}
.picker-custom.hidden{display:none}
@page{size:A4 portrait;margin:8mm}
.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.field-card{background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:12px}
.field-label-block{display:grid;gap:8px}
.field-title{font-size:.92rem;font-weight:700;color:#eaf2ff;line-height:1.9;word-break:break-word}
.field-help{color:#91a6d0;font-size:.78rem;line-height:1.9}
.control-wrap{display:grid;gap:8px}
.picker-row{display:flex;gap:8px;align-items:center}
.picker-row .field-input{flex:1}
.picker-btn{min-width:44px;height:44px;border:none;border-radius:12px;background:#14345d;color:#dff2ff;cursor:pointer;font-size:1rem}
.hidden-picker{position:absolute;opacity:0;pointer-events:none;width:0;height:0}.custom-field.hidden{display:none}
.helper-strip{display:grid;gap:8px}
.helper-item{display:flex;gap:8px;align-items:flex-start;padding:10px 12px;background:rgba(53,181,255,.08);border:1px solid rgba(53,181,255,.18);border-radius:12px;color:#dcebff;font-size:.88rem}
.helper-item i{margin-top:3px;color:#7cd4ff}
.empty-state{padding:18px;border:1px dashed rgba(255,255,255,.18);border-radius:14px;color:#a7bbdf;text-align:center}
.upload-box{display:inline-flex;align-items:center;gap:10px;background:#12284d;border:1px dashed #3e6dac;border-radius:16px;padding:14px 16px;cursor:pointer}
.upload-box input{display:none}
.library-item img{width:100%;height:180px;object-fit:cover;border-radius:12px;margin-bottom:10px}
.library-item .pdf-icon{font-size:2.1rem;color:#ff6666;margin-bottom:12px}
.library-item a.download{display:inline-flex;align-items:center;gap:6px;color:#8edcff;margin-top:10px}
.contact-link{display:flex;gap:10px;align-items:center;justify-content:center;font-weight:700;min-height:72px}
.contact-link i{font-size:1.25rem}
.contact-link.whatsapp{color:#7ef4c2}.contact-link.facebook{color:#9fc4ff}.contact-link.telegram{color:#93dbff}.contact-link.phone{color:#ffe08f}
.site-footer{text-align:center;padding:24px;color:#95a8cf}
.modal{position:fixed;inset:0;background:rgba(2,8,18,.7);display:flex;align-items:center;justify-content:center;padding:18px;z-index:100}
.modal.hidden{display:none}
.modal-card{max-width:620px;width:100%;background:linear-gradient(180deg,#0d1e39,#071428);border:1px solid rgba(255,255,255,.1);border-radius:22px;padding:24px;position:relative;box-shadow:0 30px 80px rgba(0,0,0,.45)}
.modal-close{position:absolute;left:14px;top:10px;background:none;border:none;color:#fff;font-size:1.8rem;cursor:pointer}
.modal-badge{display:inline-block;padding:6px 12px;border-radius:999px;background:rgba(53,181,255,.12);border:1px solid rgba(53,181,255,.3);color:#89dcff;font-size:.83rem}
.modal-card h2{margin:12px 0 10px}.modal-card p{color:#d6e2fb}.intro-list{padding-right:20px;color:#fff}.modal-links{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}.modal-links a{background:#10284c;border:1px solid rgba(255,255,255,.08);padding:10px 12px;border-radius:12px}
datalist{display:none}
@media (max-width:1100px){
  .contract-studio{grid-template-columns:1fr}
  .paper{width:98mm;max-width:98mm;height:147mm;min-height:147mm}
}
@media (max-width:700px){
  .page-shell{padding:12px}
  .field-grid{grid-template-columns:1fr}
  .hero h1{font-size:1.55rem}
  .paper{width:86mm;max-width:86mm;height:129mm;min-height:129mm;padding:7mm 6mm 6mm}
  .paper-body{font-size:.64rem;line-height:1.7}
  .main-nav{gap:10px}
  .toolbar-actions,.section-head{width:100%}
  .action-btn{flex:1}
  .topbar{position:sticky;top:0;z-index:9999;padding:12px;align-items:flex-start}
  .brand{font-size:1rem}
  .form-footer-actions{flex-direction:column}
}
@media print{
  body{background:#fff}
  .topbar,.hero,.section-card:not(.contract-section),.toolbar-actions,.form-panel,.studio-topbar,.site-footer,.form-footer-actions{display:none!important}
  .contract-section{border:none;box-shadow:none;padding:0;margin:0;background:#fff}
  .preview-panel,.paper-wrap{padding:0;border:none;background:#fff}
  .paper{box-shadow:none;border:none;max-width:none;height:280mm;min-height:280mm;padding:0}
}

.contract-entry-fields{padding:18px;max-height:1030px;overflow:auto}
.entry-paper-wrap{display:flex;justify-content:center}
.entry-paper{
  width:100%;max-width:210mm;min-height:297mm;background:var(--paper);color:var(--paper-text);
  border:1px solid #dfe7f2;border-radius:12px;box-shadow:0 16px 40px rgba(0,0,0,.18);padding:10mm 9mm;
}
.entry-paper-header{border-bottom:2px solid #1f4f8a;padding-bottom:8px;margin-bottom:12px;text-align:center}
.entry-paper-header h3{margin:0;font-size:1.1rem;color:#173d6e}
.entry-paper-header p{margin:6px 0 0;color:#5c6f8f;font-size:.82rem}
.entry-paper-body{white-space:pre-wrap;line-height:2.1;font-size:.98rem;color:#121212}
.inline-field-holder{display:inline-flex;align-items:center;vertical-align:baseline;min-width:120px;max-width:100%;margin:0 3px}
.inline-control-wrap{display:inline-flex;align-items:center;min-width:120px;max-width:100%}
.inline-control{display:inline-flex;align-items:center;width:100%}
.inline-control .field-input,
.inline-control input.field-input,
.inline-control select.field-input{background:#fff;color:#111;border:none;border-bottom:2px solid #1b1b1b;border-radius:0;padding:2px 4px;min-height:30px;height:32px;box-shadow:none}
.inline-control .field-textarea{background:#fff;color:#111;border:1px solid #444;border-radius:8px;min-height:70px;padding:6px 8px}
.inline-control .picker-row{gap:4px}
.inline-control .picker-btn{height:32px;min-width:32px;border-radius:8px;background:#e9eef6;color:#1a3760}
.inline-control datalist{display:none}
.inline-control-wrap .custom-field.hidden{display:none}
.inline-control .field-input::placeholder,.inline-control .field-textarea::placeholder{color:#888}

@media (max-width:1100px){
  .entry-paper{max-width:100%;min-height:auto;padding:7mm 6mm}
  .entry-paper-body{font-size:.9rem;line-height:2}
}

@media (max-width:700px){
  .entry-paper{padding:5mm 4mm;border-radius:10px}
  .entry-paper-body{font-size:.84rem;line-height:1.95}
  .inline-field-holder,.inline-control-wrap{min-width:88px}
  .inline-control .field-input,input.field-input,select.field-input{min-height:28px;height:28px;font-size:.8rem}
}

/* ===== Professional contract-entry workspace enhancements ===== */
.contract-head-pro .section-kicker{
  display:inline-block;padding:6px 12px;border-radius:999px;background:rgba(53,181,255,.12);border:1px solid rgba(53,181,255,.28);color:#8ad8ff;font-size:.82rem;margin-bottom:10px
}
.pro-layout{grid-template-columns:minmax(320px,.95fr) minmax(420px,1.05fr)}
.studio-topbar-pro{justify-content:space-between}
.preview-badges{display:flex;gap:8px;flex-wrap:wrap}
.mini-badge{display:inline-flex;align-items:center;justify-content:center;padding:7px 10px;border-radius:999px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.11);color:#dff1ff;font-size:.78rem;font-weight:700}
.mini-badge.saved{background:rgba(40,180,99,.16);border-color:rgba(46,204,113,.3);color:#b7ffd1}
.workspace-header{display:grid;gap:14px;padding:16px;border-bottom:1px solid rgba(255,255,255,.06);background:linear-gradient(180deg,#081628,#0b1d37)}
.studio-intro-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.intro-card{display:flex;gap:12px;align-items:flex-start;padding:14px 15px;border-radius:18px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.08)}
.intro-card.pro-accent{background:linear-gradient(180deg,rgba(53,181,255,.14),rgba(53,181,255,.05));border-color:rgba(53,181,255,.22)}
.intro-card-icon{width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;border-radius:14px;background:rgba(255,255,255,.07);color:#9edfff;flex:0 0 42px}
.intro-card strong{display:block;color:#fff;margin-bottom:4px;font-size:.96rem}
.intro-card p{margin:0;color:#b8cae6;font-size:.87rem;line-height:1.8}
.studio-steps{display:flex;gap:10px;flex-wrap:wrap}
.step-pill{display:inline-flex;align-items:center;gap:10px;padding:10px 14px;border-radius:999px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);color:#dcecff}
.step-pill span{width:26px;height:26px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:rgba(255,255,255,.08);font-size:.8rem;font-weight:800}
.step-pill strong{font-size:.88rem}
.step-pill.active{background:rgba(53,181,255,.12);border-color:rgba(53,181,255,.25)}
.workspace-header-main{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:end}
.contract-pickers-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:12px;min-width:0}
.contract-search-wrap input{width:100%}
.workspace-quick-actions{display:flex;gap:8px;flex-wrap:wrap}
.quick-btn{border:none;border-radius:12px;padding:11px 14px;background:#15345d;color:#e6f3ff;font-family:inherit;font-weight:700;cursor:pointer;white-space:nowrap}
.quick-btn.danger{background:#4a1f2f;color:#ffe1e7}
.workspace-status-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.status-card{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:12px 14px;display:grid;gap:6px}
.status-card span{color:#9cb2d9;font-size:.78rem}
.status-card strong{font-size:1rem;color:#fff}
.guide-card{display:grid;gap:8px;padding:14px 16px;border-radius:16px;background:linear-gradient(180deg,rgba(53,181,255,.12),rgba(53,181,255,.04));border:1px solid rgba(53,181,255,.18)}
.guide-card-title{display:flex;align-items:center;gap:8px;font-weight:800;color:#dff5ff}
#guideText{color:#d7eaff;line-height:1.95;font-size:.92rem}
.workspace-body{display:grid;grid-template-columns:260px minmax(0,1fr);gap:16px;padding:16px}
.fields-nav-panel{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07);border-radius:16px;padding:12px;display:grid;gap:12px;align-self:start;position:sticky;top:94px;max-height:calc(100vh - 170px);overflow:auto}
.fields-nav-head{display:flex;justify-content:space-between;align-items:center;gap:8px}
.fields-nav-head h3{margin:0;font-size:.98rem}
.nav-filter-btn{border:none;border-radius:10px;padding:8px 10px;background:#10284c;color:#dbeeff;font-family:inherit;cursor:pointer;font-size:.82rem}
.nav-filter-btn.active{background:#1a4f86}
.fields-nav-list{display:grid;gap:8px}
.field-nav-chip{display:flex;align-items:center;gap:10px;text-align:right;border:1px solid rgba(255,255,255,.08);background:#0d213e;color:#fff;border-radius:12px;padding:10px 12px;cursor:pointer;font-family:inherit}
.field-nav-chip .chip-index{width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:rgba(255,255,255,.08);font-size:.78rem;font-weight:800;flex:0 0 26px}
.field-nav-chip .chip-label{flex:1;font-size:.86rem;line-height:1.7}
.field-nav-chip.filled{border-color:rgba(46,204,113,.35);background:rgba(28,114,73,.18)}
.field-nav-chip.missing{border-color:rgba(255,193,7,.22)}
.field-nav-chip.active{outline:2px solid #35b5ff;transform:translateY(-1px)}
.form-fields.contract-entry-fields{padding:0;max-height:none;overflow:visible;background:none}
.entry-paper-wrap{display:block}
.entry-paper{max-width:100%;min-height:820px;padding:12mm 11mm;border-radius:18px;box-shadow:0 24px 50px rgba(0,0,0,.26)}
.entry-paper-header{position:sticky;top:0;background:linear-gradient(180deg,rgba(255,255,255,.97),rgba(255,255,255,.92));backdrop-filter:blur(6px);z-index:3;padding-bottom:10px}
.entry-paper-header p{margin:7px 0 0;color:#617495;font-size:.84rem}
.entry-paper-body{font-size:1rem;line-height:2.18}
.inline-field-holder{position:relative;min-width:120px;max-width:100%;margin:0 4px 2px;padding:1px 0;border-radius:8px;transition:.18s ease}
.inline-field-holder.is-filled{background:rgba(37,185,102,.08)}
.inline-field-holder.is-missing{background:rgba(255,193,7,.08)}
.inline-field-holder.is-active{background:rgba(53,181,255,.13);box-shadow:0 0 0 2px rgba(53,181,255,.18)}
.inline-control-wrap{min-width:120px}
.inline-control .field-input,
.inline-control input.field-input,
.inline-control select.field-input{
  min-width:120px;background:#fff;border:1px solid #d1dced;border-bottom:2px solid #1d2e45;border-radius:10px;padding:4px 8px;height:38px;min-height:38px;box-shadow:0 4px 14px rgba(26,55,96,.06)
}
.inline-control .field-input:focus,
.inline-control input.field-input:focus,
.inline-control select.field-input:focus,
.inline-control .field-textarea:focus{outline:none;border-color:#35b5ff;box-shadow:0 0 0 4px rgba(53,181,255,.12)}
.inline-control .field-textarea{background:#fff;color:#111;border:1px solid #d1dced;border-radius:12px;min-height:96px;padding:8px 10px;box-shadow:0 4px 14px rgba(26,55,96,.06)}
.inline-control .picker-btn{height:38px;min-width:38px;border-radius:10px;background:#eef4fb;color:#1a3760;border:1px solid #d4dfef}
.form-footer-actions{position:sticky;bottom:0;z-index:4;backdrop-filter:blur(7px);background:rgba(8,20,39,.86)}
.empty-state.small{padding:12px;font-size:.85rem}
@media (max-width:1280px){
  .pro-layout{grid-template-columns:1fr}
  .workspace-body{grid-template-columns:1fr}
  .fields-nav-panel{position:relative;top:auto;max-height:none;order:-1}
  .fields-nav-list{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}
}
@media (max-width:900px){
  .studio-intro-grid{grid-template-columns:1fr}
  .contract-pickers-grid{grid-template-columns:1fr}
  .workspace-header-main{grid-template-columns:1fr}
  .workspace-status-row{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:700px){
  .workspace-header,.workspace-body{padding:12px}
  .workspace-quick-actions,.toolbar-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
  .workspace-quick-actions .quick-btn:last-child,.toolbar-actions .action-btn:last-child{grid-column:1 / -1}
  .fields-nav-list{grid-template-columns:1fr}
  .entry-paper{padding:7mm 6mm;border-radius:12px}
  .entry-paper-body{font-size:.88rem;line-height:2.02}
  .inline-field-holder,.inline-control-wrap{min-width:92px}
  .inline-control .field-input,
  .inline-control input.field-input,
  .inline-control select.field-input{min-width:92px;height:34px;min-height:34px;font-size:.82rem;padding:3px 6px}
  .inline-control .picker-btn{height:34px;min-width:34px}
}

/* ===== v12 redesigned contract generator workspace ===== */
.contract-section{
  background:linear-gradient(180deg,#edf0f5,#e8edf3);
  border:1px solid rgba(12,33,61,.08);
}
.contract-head-pro{
  background:linear-gradient(180deg,#10284b,#173764);
  border-radius:22px;
  padding:18px 20px;
  margin-bottom:18px;
  color:#fff;
  align-items:center;
}
.contract-head-pro h2,.contract-head-pro p,.contract-head-pro .section-kicker{color:#fff}
.contract-head-pro p{max-width:720px;color:#d6e4ff}
.contract-head-pro .section-kicker{
  background:rgba(255,255,255,.08);
  border-color:rgba(255,255,255,.18);
  color:#f2f7ff;
}
.toolbar-actions .action-btn{
  min-width:146px;
  justify-content:center;
  background:#2b5b9d;
  border:1px solid rgba(255,255,255,.12);
}
.toolbar-actions .action-btn.primary{background:#2f8b47}
.toolbar-actions .action-btn.show-btn{background:#274a83}
.contract-studio.pro-layout{
  grid-template-columns:minmax(280px,.88fr) minmax(400px,1.12fr);
  gap:18px;
}
.preview-panel,.form-panel{
  background:#f4f6fb;
  border:1px solid #d6dde9;
  border-radius:20px;
  overflow:hidden;
}
.studio-topbar-pro{
  background:#e4e8ef;
  padding:14px 16px;
  border-bottom:1px solid #d6dde9;
}
.studio-title{color:#20395e;font-size:1.1rem}
.contract-meta{color:#4e6181}
.preview-badges .mini-badge{
  background:#fff;
  color:#20395e;
  border:1px solid #d2d9e6;
}
.preview-badges .mini-badge.saved{background:#ecfff2;color:#1c6b3a;border-color:#bce3ca}
.paper-wrap{
  padding:20px;
  background:#eef1f7;
}
.paper{
  width:148mm;
  max-width:148mm;
  min-height:210mm;
  height:auto;
  margin:0 auto;
  background:#fff;
  color:#111;
  border:1px solid #c8cfda;
  box-shadow:0 10px 28px rgba(0,0,0,.12);
  border-radius:6px;
  padding:10mm 9mm;
}
.paper-header h3{color:#111;font-size:1rem}
.paper-body{color:#111;font-size:.82rem;line-height:1.95}
.form-panel{
  background:#eceff4;
}
.workspace-header{
  padding:16px;
  background:transparent;
  border-bottom:none;
  gap:12px;
}
.studio-intro-grid,
.studio-steps,
.workspace-quick-actions,
.workspace-status-row,
.guide-card,
.fields-nav-panel{display:none !important}
.workspace-header-main{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
}
.contract-pickers-grid{
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:12px;
}
.contract-select-wrap span{
  font-weight:700;
  color:#22385e;
  margin-bottom:6px;
}
.contract-select-wrap select,
.contract-select-wrap input,
.manual-field-card .field-input,
.manual-field-card .field-textarea{
  background:#fff;
  color:#10243f;
  border:1px solid #cfd7e4;
  border-radius:12px;
  box-shadow:none;
}
.workspace-body{
  grid-template-columns:1fr;
  padding:0 16px 16px;
}
.form-fields.contract-entry-fields{
  padding:0;
  background:transparent;
}
.manual-sections-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
.manual-section-card{
  background:#f7f8fb;
  border:1px solid #d7ddea;
  border-radius:18px;
  overflow:hidden;
  box-shadow:0 4px 10px rgba(16,36,63,.04);
}
.manual-section-card.section-span-2{grid-column:1 / -1}
.manual-section-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:14px 16px;
  background:#dfe4ec;
  border-bottom:1px solid #d2d9e4;
}
.manual-section-head h3{
  margin:0;
  font-size:1.05rem;
  color:#1c2f4f;
  display:flex;
  align-items:center;
  gap:8px;
}
.manual-fields-wrap{
  padding:14px;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.section-contract .manual-fields-wrap,
.section-terms .manual-fields-wrap,
.section-other .manual-fields-wrap{grid-template-columns:repeat(2,minmax(0,1fr))}
.manual-field-card{
  background:#fff;
  border:1px solid #d7ddea;
  border-radius:14px;
  padding:12px;
  display:grid;
  gap:7px;
  transition:.18s ease;
}
.manual-field-card.filled{border-color:#9fc8af;background:#fbfffc}
.manual-field-card.active{outline:2px solid #3e6dac;transform:translateY(-1px)}
.manual-field-label{
  font-weight:800;
  color:#162b48;
  font-size:.95rem;
}
.manual-field-hint{
  font-size:.78rem;
  color:#667a9b;
  min-height:1.4em;
}
.manual-field-control .field-input,
.manual-field-control input.field-input,
.manual-field-control select.field-input{
  min-height:46px;
  height:46px;
  padding:10px 12px;
  color:#12284d;
}
.manual-field-control .field-textarea{
  min-height:94px;
  padding:12px;
}
.manual-control .picker-row{display:flex;gap:8px}
.manual-control .picker-btn{min-width:42px;height:46px;border-radius:12px;background:#eef3f8;color:#1a3760}
.form-footer-actions{
  padding:16px;
  border-top:1px solid #d7ddea;
  background:#eef1f6;
}
.form-footer-actions .action-btn{justify-content:center;min-width:160px}
.empty-state.small,.empty-state{background:#fff;color:#4f6484;border:1px dashed #c7d1df}
@media (max-width:1100px){
  .contract-studio.pro-layout{grid-template-columns:1fr}
  .paper{width:132mm;max-width:132mm;min-height:188mm}
}
@media (max-width:760px){
  .contract-head-pro{padding:16px}
  .toolbar-actions{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .toolbar-actions .action-btn{min-width:0;width:100%}
  .contract-pickers-grid,.manual-sections-grid,.manual-fields-wrap{grid-template-columns:1fr !important}
  .paper{width:94mm;max-width:94mm;min-height:134mm;padding:8mm 7mm}
  .paper-body{font-size:.71rem;line-height:1.85}
  .form-footer-actions{display:grid;grid-template-columns:1fr;gap:10px}
}

/* v13 - إدخال البيانات من داخل قالب العقد نفسه */
.fields-nav-panel{display:none !important}
.workspace-body{grid-template-columns:1fr !important}
.form-fields.contract-entry-fields{padding:0;background:transparent}
.contract-entry-paper{
  width:100%;
  max-width:210mm;
  min-height:297mm;
  margin:0 auto;
  background:#fff;
  color:#111;
  border:1px solid #d5dbe5;
  box-shadow:0 18px 45px rgba(11,27,55,.14);
}
.contract-entry-body{
  line-height:2.2;
  font-size:1rem;
  color:#111;
}
.contract-slot{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:86px;
  min-height:32px;
  padding:1px 8px;
  margin:0 2px;
  border:0;
  border-bottom:2px dashed #173d6e;
  background:rgba(19,61,110,.05);
  color:#173d6e;
  border-radius:8px 8px 2px 2px;
  font:inherit;
  cursor:pointer;
  transition:.18s ease;
  vertical-align:baseline;
}
.contract-slot.empty{color:#6d7f98;background:rgba(109,127,152,.08)}
.contract-slot.filled{background:rgba(36,133,75,.12);border-bottom-color:#24854b;color:#0b2d15}
.contract-slot:hover,.contract-slot:focus{outline:none;transform:translateY(-1px);box-shadow:0 0 0 2px rgba(44,95,175,.18)}
.field-editor-card{max-width:560px;width:min(92vw,560px)}
.field-modal-hint{margin:4px 0 14px;color:#617495;line-height:1.9}
.field-modal-input-wrap{display:grid;gap:12px}
.field-modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:16px;flex-wrap:wrap}
.manual-only-note{color:#5f7394;font-size:.84rem}
#manualOnlyBtn{background:#f1f5fb;color:#173d6e;border:1px solid #d2ddea}
#showMissingOnlyBtn{display:none}
#fieldModalTextarea.hidden,#fieldModalInput.hidden{display:none !important}

@media (max-width:1100px){
  .contract-entry-paper{max-width:100%;min-height:auto}
}
@media (max-width:760px){
  .contract-entry-body{font-size:.9rem;line-height:2.05}
  .contract-slot{min-width:64px;min-height:30px;padding:1px 6px}
  .field-editor-card{width:min(94vw,94vw)}
  .field-modal-actions{display:grid;grid-template-columns:1fr 1fr}
}


.hidden-preview{display:none !important}


.posts-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
  gap:20px;
}
.post-card{
  background:#fff;
  border:1px solid #d7ddea;
  border-radius:18px;
  overflow:hidden;
  box-shadow:0 8px 20px rgba(16,36,63,.06);
}
.post-thumb-wrap{
  background:#eef2f8;
  padding:12px;
}
.post-thumb{
  width:100%;
  height:auto;
  max-height:320px;
  object-fit:contain;
  display:block;
  border-radius:14px;
}
.post-content{
  padding:18px;
}
.post-title-link{
  display:block;
  color:#183257;
  font-size:1.2rem;
  font-weight:800;
  line-height:1.8;
  text-decoration:none;
  margin-bottom:6px;
}
.post-title-link:hover{color:#0f5ca8}
.post-date{
  color:#6b7d99;
  font-size:.9rem;
  margin-bottom:10px;
}
.post-excerpt{
  color:#304766;
  line-height:1.9;
  margin-bottom:10px;
}
.post-full{
  margin-top:10px;
  padding-top:12px;
  border-top:1px solid #e1e7f0;
}
.post-body{
  color:#12284d;
  line-height:2;
  font-size:1rem;
}
.post-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:16px;
}
.post-btn{
  border:none;
  border-radius:12px;
  padding:10px 16px;
  font-size:.95rem;
  cursor:pointer;
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:120px;
  background:#173d6e;
  color:#fff;
}
.post-link{background:#1f4f8c;color:#fff}
.post-download{background:#1f7a4d;color:#fff}
.post-share{background:#8b5a2b;color:#fff}
@media print {
  #paperBody,
  #paperBody *,
  .paper-body,
  .paper-body * {
    font-size: 13px !important;
    font-weight: 700 !important;
    line-height: 2 !important;
    color: #000 !important;
    font-family: "Tahoma", "Arial", sans-serif !important;
  }
}
.modal-links a.skip-btn {
  background: linear-gradient(135deg, #b8860b, #d4a017);
  border-color: #f0c44c;
  color: #ffffff;
}

.modal-links a.skip-btn:hover {
  background: linear-gradient(135deg, #c89512, #e0b12b);
  border-color: #ffd76a;
  transform: translateY(-2px);
  box-shadow: 0 8px 18px rgba(212, 160, 23, 0.28);
}
.modal-links {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 14px;
  margin-top: 18px;
}

.modal-links a.btn-app {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 58px;
  padding: 14px 18px;
  border-radius: 16px;
  text-decoration: none;
  font-weight: 700;
  font-size: 1.05rem;
  transition: all 0.25s ease;
  border: 1px solid transparent;
  color: #fff;
  box-shadow: 0 8px 18px rgba(0, 0, 0, 0.18);
}

.modal-links a.btn-app i {
  font-size: 1.2rem;
}

/* واتساب */
.modal-links a.btn-whatsapp {
  background: linear-gradient(135deg, #1fb141, #25D366);
  border-color: #57e287;
}

.modal-links a.btn-whatsapp:hover {
  background: linear-gradient(135deg, #1aa33b, #20c45d);
  transform: translateY(-2px);
  box-shadow: 0 10px 22px rgba(37, 211, 102, 0.30);
}

/* فيسبوك */
.modal-links a.btn-facebook {
  background: linear-gradient(135deg, #1877F2, #0d5ed7);
  border-color: #5fa0ff;
}

.modal-links a.btn-facebook:hover {
  background: linear-gradient(135deg, #156de0, #0b55c5);
  transform: translateY(-2px);
  box-shadow: 0 10px 22px rgba(24, 119, 242, 0.30);
}

/* تيليجرام */
.modal-links a.btn-telegram {
  background: linear-gradient(135deg, #229ED9, #1b8fc4);
  border-color: #67c6ef;
}

.modal-links a.btn-telegram:hover {
  background: linear-gradient(135deg, #1f93ca, #1884b5);
  transform: translateY(-2px);
  box-shadow: 0 10px 22px rgba(34, 158, 217, 0.30);
}

/* زر التخطي */
.modal-links a.btn-skip {
  background: linear-gradient(135deg, #6b7280, #4b5563);
  border-color: #9ca3af;
}

.modal-links a.btn-skip:hover {
  background: linear-gradient(135deg, #5d6470, #424955);
  transform: translateY(-2px);
  box-shadow: 0 10px 22px rgba(75, 85, 99, 0.28);
}
.modal-links a.btn-skip {
  background: linear-gradient(135deg, #b8860b, #d4a017);
  border-color: #f0c44c;
}

.modal-links a.btn-skip:hover {
  background: linear-gradient(135deg, #c89512, #e0b12b);
  transform: translateY(-2px);
  box-shadow: 0 10px 22px rgba(212, 160, 23, 0.28);
}
.modal-card {
  background: linear-gradient(180deg, #04142E 0%, #0A2250 100%);
  border: 1px solid rgba(90, 140, 220, 0.25);
  border-radius: 28px;
  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.35);
  color: #D9E4F2;
  padding: 26px 22px 24px;
}

.modal-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(16, 58, 107, 0.95);
  border: 1px solid rgba(86, 157, 255, 0.45);
  color: #BEE1FF;
  border-radius: 999px;
  padding: 10px 18px;
  font-size: 0.95rem;
  font-weight: 600;
  margin: 0 auto 18px;
}

.intro-title {
  margin: 0 0 10px;
  text-align: center;
  color: #F8FAFF;
  font-size: 2.2rem;
  font-weight: 800;
  line-height: 1.35;
}

.intro-subtitle {
  margin: 0 0 16px;
  text-align: center;
  color: #D4A017;
  font-size: 1.22rem;
  font-weight: 700;
  line-height: 1.5;
}

.intro-text {
  margin: 0 0 16px;
  text-align: center;
  color: #D9E4F2;
  font-size: 1.08rem;
  line-height: 1.95;
}

.intro-list {
  margin: 0 0 16px;
  padding: 0 1.2rem 0 0;
  color: #E8F0FA;
  font-size: 1.05rem;
  line-height: 2;
}

.intro-list li {
  margin-bottom: 6px;
}

.intro-note {
  margin: 0 0 20px;
  text-align: center;
  color: #CFE0F6;
  font-size: 1rem;
  line-height: 1.9;
}

.modal-links {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-top: 8px;
}

.modal-links a {
  min-height: 58px;
  border-radius: 18px;
  font-size: 1.08rem;
  font-weight: 800;
}

.modal-links a.btn-whatsapp {
  background: linear-gradient(135deg, #1FAF4B, #25D366);
  color: #fff;
}

.modal-links a.btn-facebook {
  background: linear-gradient(135deg, #1666D8, #1877F2);
  color: #fff;
}

.modal-links a.btn-telegram {
  background: linear-gradient(135deg, #1F8FC4, #229ED9);
  color: #fff;
}

.modal-links a.btn-skip {
  background: linear-gradient(135deg, #B8860B, #D4A017);
  color: #fff;
}

@media (max-width: 768px) {
  .modal-card {
    padding: 22px 18px 20px;
    border-radius: 24px;
  }

  .intro-title {
    font-size: 1.9rem;
  }

  .intro-subtitle {
    font-size: 1.08rem;
  }

  .intro-text,
  .intro-list,
  .intro-note {
    font-size: 0.98rem;
  }
}

@media (max-width: 480px) {
  .modal-links {
    grid-template-columns: 1fr 1fr;
    gap: 12px;
  }

  .intro-title {
    font-size: 1.7rem;
  }

  .intro-subtitle {
    font-size: 1rem;
  }

  .intro-text,
  .intro-list,
  .intro-note {
    font-size: 0.94rem;
    line-height: 1.85;
  }

  .modal-links a {
    min-height: 54px;
    font-size: 1rem;
  }
}
/* ===== Responsive refresh: mobile + desktop + modern buttons ===== */
:root{
  --surface:#0f1f3c;
  --surface-2:#142b50;
  --surface-3:#183866;
  --accent-soft:rgba(64,169,255,.16);
  --shadow-strong:0 18px 50px rgba(0,0,0,.28);
}

body{
  overflow-x:hidden;
}

.topbar{
  gap:16px;
  padding:16px 22px;
  background:rgba(3,10,22,.92);
  box-shadow:0 10px 30px rgba(0,0,0,.22);
}

.brand{
  min-width:0;
}

.brand span{
  font-size:1.42rem;
  letter-spacing:-.01em;
}

.brand small{
  font-size:.88rem;
  line-height:1.45;
}

.nav-toggle{
  display:none;
  width:48px;
  height:48px;
  border:none;
  border-radius:14px;
  background:linear-gradient(135deg, rgba(255,255,255,.10), rgba(53,181,255,.18));
  color:#fff;
  box-shadow:0 10px 24px rgba(0,0,0,.18);
  cursor:pointer;
}

.main-nav{
  align-items:center;
}

.main-nav a{
  padding:10px 12px;
  border-radius:12px;
  transition:.22s ease;
}

.main-nav a:hover,
.main-nav a:focus-visible{
  background:rgba(255,255,255,.06);
  color:#fff;
}

.hero-modern{
  position:relative;
  overflow:hidden;
  padding:34px 30px;
  border-radius:28px;
  background:
    radial-gradient(circle at top right, rgba(53,181,255,.24), transparent 28%),
    radial-gradient(circle at bottom left, rgba(30,123,216,.22), transparent 30%),
    linear-gradient(135deg,#0c1f40 0%,#102b56 52%,#081628 100%);
}

.hero-modern::before{
  content:"";
  position:absolute;
  inset:auto -80px -120px auto;
  width:280px;
  height:280px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(255,255,255,.10), transparent 70%);
  pointer-events:none;
}

.hero-content{
  position:relative;
  z-index:1;
}

.hero h1{
  font-size:clamp(2rem, 3vw, 3.25rem);
  line-height:1.25;
}

.hero p{
  font-size:1.06rem;
  line-height:2;
}

.hero-motto{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-top:16px;
  padding:10px 16px;
  border-radius:999px;
  background:rgba(212,160,23,.14);
  border:1px solid rgba(212,160,23,.28);
  color:#ffe5a6;
  font-weight:800;
}



.section-card{
  border-radius:24px;
}

.contract-head-pro{
  border-radius:24px;
  box-shadow:var(--shadow-strong);
}

.toolbar-actions,
.form-footer-actions,
.workspace-quick-actions{
  gap:12px;
}

.action-btn,
.quick-btn,
.nav-filter-btn,
.contact-link,
.upload-box,
.post-btn,
.picker-option,
.modal-links a{
  transition:transform .2s ease, box-shadow .2s ease, background .2s ease, border-color .2s ease;
}

.action-btn,
.quick-btn{
  position:relative;
  min-height:50px;
  padding:13px 18px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:16px;
  background:linear-gradient(180deg,#163867,#112949);
  color:#fff;
  font-weight:800;
  box-shadow:0 10px 22px rgba(0,0,0,.14);
}

.action-btn i,
.quick-btn i{
  margin-inline-start:4px;
}

.action-btn:hover,
.quick-btn:hover,
.nav-filter-btn:hover,
.contact-link:hover,
.upload-box:hover,
.post-btn:hover,
.picker-option:hover,
.modal-links a:hover{
  transform:translateY(-2px);
  box-shadow:0 14px 28px rgba(0,0,0,.18);
}

.action-btn:active,
.quick-btn:active,
.nav-filter-btn:active,
.contact-link:active,
.upload-box:active,
.post-btn:active,
.picker-option:active,
.modal-links a:active{
  transform:translateY(0);
}

.action-btn.primary{
  background:linear-gradient(135deg,#1f86ff,#2ec0ff);
}

.action-btn.show-btn{
  background:linear-gradient(135deg,#154f8e,#279ff2);
}

.quick-btn{
  background:linear-gradient(180deg,#173866,#112a4d);
}

.quick-btn.danger,
.action-btn.danger{
  background:linear-gradient(135deg,#7b2331,#af3548);
}

.workspace-header,
.workspace-body{
  padding:18px;
}

.workspace-header-main{
  display:grid;
  grid-template-columns:minmax(0, 1.2fr) minmax(280px, .8fr);
  gap:16px;
  align-items:end;
}

.contract-pickers-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:14px;
}

.contract-search-wrap .field-input,
#contractSelect,
.field-input,
.field-textarea,
.picker-search{
  background:#0c1b34;
  border:1px solid #32517d;
  border-radius:15px;
}

#contractSelect:focus,
.field-input:focus,
.field-textarea:focus,
.picker-search:focus{
  outline:none;
  border-color:#49b4ff;
  box-shadow:0 0 0 4px rgba(73,180,255,.14);
}

.studio-intro-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:14px;
}

.intro-card{
  display:flex;
  gap:12px;
  align-items:flex-start;
  min-height:100%;
  background:linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.025));
  border:1px solid rgba(255,255,255,.08);
  border-radius:18px;
  padding:16px;
}

.intro-card.pro-accent{
  background:linear-gradient(180deg, rgba(53,181,255,.15), rgba(53,181,255,.05));
  border-color:rgba(53,181,255,.18);
}

.intro-card-icon{
  width:52px;
  height:52px;
  flex:0 0 52px;
  display:grid;
  place-items:center;
  border-radius:16px;
  background:linear-gradient(135deg,#173966,#1f7fe0);
  color:#fff;
  font-size:1.15rem;
  box-shadow:0 12px 24px rgba(0,0,0,.16);
}

.preview-panel,
.form-panel,
.fields-nav-panel,
.status-card{
  box-shadow:var(--shadow-strong);
}

.status-card{
  border-radius:16px;
}

.fields-nav-panel{
  border-radius:18px;
}

.field-nav-chip{
  border-radius:14px;
}

@media (max-width: 1180px){
  .topbar{
    align-items:flex-start;
    flex-wrap:wrap;
  }

  .main-nav{
    width:100%;
    justify-content:flex-start;
  }

  .workspace-header-main,
  .contract-pickers-grid,
  .studio-intro-grid{
    grid-template-columns:1fr;
  }
}

@media (max-width: 900px){
  .page-shell{
    padding:14px;
  }

  .topbar{
    position: sticky;
    top: 0;
    z-index: 9999;
    padding:14px;
  }

  .brand span{
    font-size:1.12rem;
  }
}

  .brand small{
    font-size:.8rem;
  }

  .nav-toggle{
    display:grid;
    place-items:center;
    margin-inline-start:auto;
  }

  .main-nav{
    display:none;
    width:100%;
    order:3;
    flex-direction:column;
    align-items:stretch;
    gap:8px;
    padding-top:8px;
  }

  .main-nav.is-open{
    display:flex;
  }

  .main-nav a{
    display:block;
    background:rgba(255,255,255,.04);
    border:1px solid rgba(255,255,255,.05);
  }

  .hero-modern{
    padding:22px 18px;
    border-radius:22px;
  }

  .hero p{
    font-size:.98rem;
  }

  .toolbar-actions{
    width:100%;
    display:grid;
    grid-template-columns:repeat(2, minmax(0,1fr));
  }

  .toolbar-actions .action-btn,
  .workspace-quick-actions .quick-btn,
  .form-footer-actions .action-btn{
    width:100%;
  }

  .workspace-status-row{
    grid-template-columns:repeat(2, minmax(0,1fr));
  }
}

@media (max-width: 640px){
  .topbar{
    gap:12px;
  }

  .brand{
    width:calc(100% - 60px);
  }

  .brand span{
    font-size:1rem;
  }

  .brand small{
    font-size:.74rem;
  }

  .section-card,
  .contract-head-pro,
  .preview-panel,
  .form-panel,
  .modal-card{
    border-radius:18px;
  }

  .section-head h2,
  .hero h1{
    word-break:break-word;
  }

  .toolbar-actions,
  .workspace-quick-actions,
  .form-footer-actions{
    grid-template-columns:1fr;
  }

  .action-btn,
  .quick-btn,
  .contact-link,
  .upload-box,
  .modal-links a{
    min-height:52px;
    font-size:.96rem;
  }

  .workspace-header,
  .workspace-body,
  .paper-wrap{
    padding:12px;
  }

  .fields-nav-panel{
    position:relative;
    top:auto;
  }

  .workspace-status-row{
    grid-template-columns:1fr;
  }

  .contract-select-wrap span,
  .section-kicker,
  .hero-badge{
    font-size:.82rem;
  }
}

#showMissingOnlyBtn{display:inline-flex!important;align-items:center;justify-content:center}


/* ===== Contact buttons as app-style tiles ===== */
.contact-card .contact-grid{
  grid-template-columns:repeat(auto-fit,minmax(160px,1fr));
  gap:20px;
  align-items:stretch;
}

.contact-card .contact-link{
  position:relative;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  gap:14px;
  min-height:180px;
  padding:20px 14px;
  border-radius:30px;
  border:1px solid rgba(255,255,255,.08);
  background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.02));
  box-shadow:0 18px 40px rgba(0,0,0,.22);
  overflow:hidden;
}

.contact-card .contact-link::before{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at top, rgba(255,255,255,.12), transparent 55%);
  pointer-events:none;
}

.contact-card .contact-link i{
  position:relative;
  z-index:1;
  width:88px;
  height:88px;
  border-radius:26px;
  display:grid;
  place-items:center;
  font-size:2.8rem;
  color:#fff;
  box-shadow:0 12px 28px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.26);
}

.contact-card .contact-link span{
  position:relative;
  z-index:1;
  font-size:1.2rem;
  line-height:1.55;
  font-weight:800;
  color:#f5f9ff;
  word-break:break-word;
}

.contact-card .contact-link.whatsapp i,
.contact-card .contact-link.whatsapp{
  color:#ddffef;
}
.contact-card .contact-link.whatsapp i{
  background:linear-gradient(180deg,#4df37c,#18b448);
}

.contact-card .contact-link.telegram i,
.contact-card .contact-link.telegram{
  color:#def4ff;
}
.contact-card .contact-link.telegram i{
  background:linear-gradient(180deg,#42c8ff,#1d77ff);
}

.contact-card .contact-link.facebook i,
.contact-card .contact-link.facebook{
  color:#e7efff;
}
.contact-card .contact-link.facebook i{
  background:linear-gradient(180deg,#4388ff,#1b4fe0);
}

.contact-card .contact-link.phone,
.contact-card .contact-link.phone i{
  color:#fff4cd;
}
.contact-card .contact-link.phone i{
  background:linear-gradient(180deg,#41df73,#17a84b);
}

.contact-card .contact-link:hover{
  transform:translateY(-4px) scale(1.01);
}

.contact-card .contact-link:active{
  transform:translateY(0) scale(.99);
}

@media (max-width: 700px){
  .contact-card .contact-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
  }

  .contact-card .contact-link{
    min-height:128px;
    padding:12px 8px;
    gap:10px;
    border-radius:20px;
  }

  .contact-card .contact-link i{
    width:58px;
    height:58px;
    border-radius:18px;
    font-size:1.8rem;
  }

  .contact-card .contact-link span{
    font-size:.88rem;
    line-height:1.45;
  }
}

@media (max-width: 430px){
  .contact-card .contact-grid{
    gap:10px;
  }

  .contact-card .contact-link{
    min-height:112px;
    padding:10px 7px;
    gap:8px;
    border-radius:18px;
  }

  .contact-card .contact-link i{
    width:50px;
    height:50px;
    border-radius:16px;
    font-size:1.5rem;
  }

  .contact-card .contact-link span{
    font-size:.8rem;
    line-height:1.35;
  }
}
@media (max-width: 700px){
  html, body{
    overflow-x: hidden;
  }

  .page-shell{
    padding: 10px;
  }

  .topbar{
    padding: 10px 12px;
    gap: 10px;
    align-items: center;
  }

  .brand{
    width: calc(100% - 52px);
  }

  .brand span{
    font-size: .95rem;
    line-height: 1.2;
  }

  .brand small{
    font-size: .68rem;
    line-height: 1.25;
  }

  .nav-toggle{
    width: 40px;
    height: 40px;
    border-radius: 12px;
  }

  .hero{
    padding: 16px 14px;
    border-radius: 18px;
  }

  .hero h1{
    font-size: 1.15rem;
    line-height: 1.5;
    margin-bottom: 10px;
  }

  .hero p{
    font-size: .88rem;
    line-height: 1.9;
  }

  .hero-motto{
    font-size: .9rem;
    line-height: 1.7;
    margin-top: 10px;
  }

  .section-card{
    padding: 14px;
    border-radius: 18px;
    margin-bottom: 14px;
  }

  .section-head h2{
    font-size: 1.2rem;
  }

  .section-head p{
    font-size: .85rem;
    line-height: 1.8;
  }

  .contract-head-pro{
    padding: 14px;
    border-radius: 18px;
  }

  .contract-head-pro h2{
    font-size: 1.15rem;
    line-height: 1.5;
  }

  .contract-head-pro p{
    font-size: .88rem;
    line-height: 1.9;
  }

  .toolbar-actions{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    width: 100%;
  }

  .toolbar-actions .action-btn{
    width: 100%;
    min-height: 46px;
    font-size: .82rem;
    padding: 10px 8px;
    border-radius: 14px;
  }

  .workspace-header,
  .workspace-body{
    padding: 10px;
  }

  .workspace-status-row{
    grid-template-columns: 1fr 1fr;
    gap: 8px;
  }

  .status-card{
    padding: 10px;
    border-radius: 12px;
  }

  .contract-pickers-grid{
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .contract-select-wrap span{
    font-size: .82rem;
  }

  #contractSelect,
  .field-input,
  .field-textarea,
  select.field-input,
  input.field-input{
    min-height: 42px;
    font-size: 16px;
    border-radius: 12px;
    padding: 10px 12px;
  }

  .entry-paper{
    padding: 6mm 5mm;
    border-radius: 12px;
    min-height: auto;
  }

  .entry-paper-body{
    font-size: .84rem;
    line-height: 2;
  }

  .form-footer-actions{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    padding: 10px;
  }

  .form-footer-actions .action-btn{
    min-height: 44px;
    font-size: .8rem;
    border-radius: 14px;
    padding: 10px 8px;
  }

  .service-grid,
  .case-grid,
  .contact-grid,
  .library-grid{
    grid-template-columns: 1fr;
  }

  .service-item,
  .case-card,
  .contact-link,
  .library-item{
    border-radius: 16px;
    padding: 14px;
  }
}
@media (max-width: 700px){
  .form-footer-actions{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
  }

  #pdfBtnBottom{
    grid-column: 1;
  }

  #shareBtnBottom{
    grid-column: 2;
  }

  #printBtnBottom{
    grid-column: 1 / -1;
  }
}
@media (max-width: 700px){
  .toolbar-actions{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
  }

  #pdfBtn{
    grid-column: 1;
  }

  #shareBtn{
    grid-column: 2;
  }

  #printBtn{
    grid-column: 1;
  }

  #showContractBtn{
    grid-column: 2;
  }
}
@media (max-width: 700px){

  /* أزرار الأعلى */
  .toolbar-actions{
    display: grid !important;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    width: 100%;
    align-items: stretch;
  }

  .toolbar-actions .action-btn{
    width: 100% !important;
    min-width: 0;
    min-height: 56px;
    padding: 12px 10px;
    border-radius: 18px;
    font-size: .95rem;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
  }

  #showContractBtn{ grid-column: 1; }
  #printBtn{ grid-column: 2; }
  #shareBtn{ grid-column: 1; }
  #pdfBtn{ grid-column: 2; }

  /* أزرار الأسفل */
  .form-footer-actions{
    display: grid !important;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    width: 100%;
  }

  .form-footer-actions .action-btn{
    width: 100% !important;
    min-width: 0;
    min-height: 54px;
    padding: 12px 10px;
    border-radius: 18px;
    font-size: .92rem;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
  }

  #pdfBtnBottom{ grid-column: 1; }
  #shareBtnBottom{ grid-column: 2; }
  #printBtnBottom{ grid-column: 1 / -1; }
}
@media (max-width: 700px){

  .toolbar-actions{
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 12px !important;
    width: 100%;
    align-items: stretch;
  }

  .toolbar-actions .action-btn{
    width: 100% !important;
    min-width: 0 !important;
    min-height: 56px !important;
    height: 56px !important;
    padding: 12px 10px !important;
    border-radius: 18px !important;
    font-size: .95rem !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
  }

  #showContractBtn{
    grid-column: 1 !important;
    grid-row: 1 !important;
  }

  #printBtn{
    grid-column: 2 !important;
    grid-row: 1 !important;
  }

  #pdfBtn{
    grid-column: 1 !important;
    grid-row: 2 !important;
  }

  #shareBtn{
    grid-column: 2 !important;
    grid-row: 2 !important;
  }
}
@media (max-width: 700px){
  .brand-toggle{
    cursor: pointer;
    user-select: none;
  }

  .brand-toggle small{
    max-height: 0;
    opacity: 0;
    overflow: hidden;
    margin-top: 0;
    transform: translateY(-4px);
    transition: max-height .25s ease, opacity .25s ease, transform .25s ease, margin-top .25s ease;
  }

  .brand-toggle.is-open small{
    max-height: 60px;
    opacity: 1;
    margin-top: 4px;
    transform: translateY(0);
  }
}
.pdf-saving-toast{
  position: fixed;
  right: 16px;
  bottom: 16px;
  z-index: 99999;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 16px;
  border-radius: 16px;
  background: rgba(7,18,38,.96);
  color: #fff;
  border: 1px solid rgba(255,255,255,.08);
  box-shadow: 0 16px 40px rgba(0,0,0,.28);
  font-size: .95rem;
  font-weight: 700;
}

.pdf-saving-toast.hidden{
  display: none;
}

.pdf-saving-spinner{
  width: 18px;
  height: 18px;
  border: 2px solid rgba(255,255,255,.25);
  border-top-color: #35b5ff;
  border-radius: 50%;
  animation: pdfSpin .8s linear infinite;
}

@keyframes pdfSpin{
  to{ transform: rotate(360deg); }
}

@media (max-width: 700px){
  .pdf-saving-toast{
    right: 12px;
    left: 12px;
    bottom: 12px;
    justify-content: center;
    font-size: .85rem;
    padding: 11px 12px;
    border-radius: 14px;
  }
}
 
.topbar{
  position: fixed !important;
  top: 0 !important;
  right: 0 !important;
  left: 0 !important;
  z-index: 99999 !important;
  background: rgba(5,12,26,.95) !important;
  backdrop-filter: blur(10px);
}

body{
  padding-top: 90px !important;
}
.share-loading-toast{
  position: fixed;
  right: 16px;
  bottom: 16px;
  z-index: 99999;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 16px;
  border-radius: 16px;
  background: rgba(7,18,38,.96);
  color: #fff;
  border: 1px solid rgba(255,255,255,.08);
  box-shadow: 0 16px 40px rgba(0,0,0,.28);
  font-size: .95rem;
  font-weight: 700;
}

.share-loading-toast.hidden{
  display: none;
}

.share-loading-spinner{
  width: 18px;
  height: 18px;
  border: 2px solid rgba(255,255,255,.25);
  border-top-color: #35b5ff;
  border-radius: 50%;
  animation: shareSpin .8s linear infinite;
}

@keyframes shareSpin{
  to{ transform: rotate(360deg); }
}

@media (max-width: 700px){
  .share-loading-toast{
    right: 12px;
    left: 12px;
    bottom: 12px;
    justify-content: center;
    font-size: .85rem;
    padding: 11px 12px;
    border-radius: 14px;
  }
}
.contract-search-wrap{
  display: none !important;
}
