/* ═════════════════════════════════════════════════════════════════
   GESTIÓN DOCUMENTAL · estilos del módulo, acotados bajo .gd

   Generado por scripts/portar-documental.js desde Control_Documentos_Hadysic este si.html.
   No editar a mano: los ajustes de CGC van en el bloque final, que el
   script copia tal cual de scripts/documental-marco.css.

   Todo va bajo .gd porque comparte nombres de clase con el shell (.btn,
   .card, .modal, .field, .kpi…): sin ámbito, uno pisaría al otro según
   el orden de carga. Sus variables se amarran a los tokens Hadysic.
   ═════════════════════════════════════════════════════════════════ */
.gd{
  --navy:var(--rail);
  --navy2:var(--rail2);
  --orange:var(--marca);
  --orange2:#ff9f1a;
  --bg:var(--surface2);
  --card:var(--surface);
  --text:var(--ink);
  --muted:var(--ink3);
  --line:var(--line);
  --line2:var(--line2);
  /* OJO: nunca "--field-line:var(--field-line)" — un custom property que
     se referencia a sí mismo es un ciclo inválido en CSS (no "hereda el
     de :root" como parecería). En modo oscuro se veía bien de pura
     casualidad: la regla de abajo (:root[data-theme="dark"] .gd), más
     específica, pisaba el valor con uno literal; en claro no había nada
     que la pisara y el borde quedaba sin valor (Pablo, 6-oct — probado
     aislado con getComputedStyle antes de este fix). Va literal en los
     dos lados. */
  --field-line:#94a3b8;
  --blue:var(--c1);
  --green:var(--ok);
  --yellow:var(--warn);
  --red:var(--bad);
  --purple:var(--c4);
  --cyan:var(--c5);
  --shadow:0 5px 18px rgba(21,45,80,.07);
  color:var(--ink);
}
.gd *{box-sizing:border-box}
.gd{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;background:var(--bg);color:var(--text);font-size:14px}
.gd button, .gd input, .gd select, .gd textarea{font:inherit}
.gd button{cursor:pointer}
.gd .app{display:grid;grid-template-columns:248px 1fr;min-height:100vh}
.gd .sidebar{background:linear-gradient(180deg,#071d39 0%,#0b2947 100%);color:#fff;padding:18px 12px;position:sticky;top:0;height:100vh;overflow:auto}
.gd .app.sidebar-hidden{grid-template-columns:0 1fr}
.gd .app.sidebar-hidden .sidebar{width:0;padding:0;overflow:hidden;opacity:0;pointer-events:none}
.gd .app, .gd .sidebar{transition:grid-template-columns .22s ease,width .22s ease,padding .22s ease,opacity .16s ease}
.gd .brand{height:70px;display:flex;align-items:center;padding:0 9px 12px;border-bottom:1px solid rgba(255,255,255,.09);margin-bottom:13px}
.gd .brand img{width:198px;max-width:100%;height:auto}
.gd .nav-group{font-size:10px;color:#96aac1;text-transform:uppercase;letter-spacing:.08em;padding:15px 13px 8px}
.gd .nav-item{display:flex;gap:11px;align-items:center;border-radius:9px;padding:11px 12px;color:#e7eef8;margin:3px 0;text-decoration:none;transition:.18s}
.gd .nav-item:hover{background:rgba(255,255,255,.07)}
.gd .nav-item.active{background:linear-gradient(90deg,#e87800,#ff9816);box-shadow:0 5px 13px rgba(242,139,12,.22);color:white}
.gd .nav-item svg{width:18px;height:18px;flex:none}
.gd .nav-item.nav-sub{padding-left:22px;font-size:12px}
.gd .nav-group{margin-top:18px}
.gd .nav-group:first-of-type{margin-top:12px}
.gd .nav-section{margin-top:4px}
.gd .nav-group-toggle{display:flex;align-items:center;justify-content:space-between;cursor:pointer;user-select:none;border-radius:8px;transition:.15s}
.gd .nav-group-toggle:hover{background:rgba(255,255,255,.05);color:#e7eef8}
.gd .nav-group-toggle .nav-caret{width:14px;height:14px;transition:transform .18s;flex:none;color:#96aac1}
.gd .nav-section.open .nav-group-toggle .nav-caret{transform:rotate(90deg)}
.gd .nav-children{display:grid;grid-template-rows:0fr;transition:grid-template-rows .2s ease;overflow:hidden}
.gd .nav-children>*{min-height:0}
.gd .nav-section.open .nav-children{grid-template-rows:1fr}
.gd .nav-children-inner{overflow:hidden}
.gd .sidebar-bottom{margin-top:26px;border-top:1px solid rgba(255,255,255,.09);padding:17px 13px;color:#b8c7da;font-size:11px;line-height:1.55}
.gd .main{min-width:0}
.gd .topbar{height:70px;background:white;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:14px;padding:0 25px;position:sticky;top:0;z-index:20}
.gd .project-box{border:1px solid var(--line);background:#fbfcfe;border-radius:8px;padding:7px 12px;min-width:300px}
.gd .project-box label{display:block;font-size:10px;color:var(--muted);margin-bottom:2px}
.gd .project-box select{border:0;background:transparent;width:100%;font-weight:700;color:var(--text);outline:none}
.gd .search{flex:1;max-width:610px;position:relative}
.gd .search input{width:100%;height:41px;border:1px solid var(--line);border-radius:8px;padding:0 43px 0 14px;background:#fbfcfe;outline:none}
.gd .search svg{position:absolute;right:13px;top:11px;width:19px;color:#64748b}
.gd .top-actions{margin-left:auto;display:flex;align-items:center;gap:15px}
.gd .icon-btn{width:39px;height:39px;border:1px solid var(--line);border-radius:8px;background:white;display:grid;place-items:center;position:relative}
.gd .icon-btn svg{width:18px}
.gd .badge-count{position:absolute;right:-4px;top:-5px;background:var(--orange);color:#fff;font-size:10px;border-radius:10px;padding:2px 5px}
.gd .profile{display:flex;align-items:center;gap:10px;padding-left:7px}
.gd .avatar{width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,#f2a948,#d86800);color:white;display:grid;place-items:center;font-weight:800}
.gd .profile strong{display:block;font-size:13px}
.gd .profile small{display:block;color:var(--muted);margin-top:2px}
.gd .content{padding:23px 25px 35px;max-width:1700px;margin:auto}
.gd .page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:18px}
.gd .page-head h1{margin:0;font-size:25px;letter-spacing:-.02em}
.gd .page-head p{margin:5px 0 0;color:var(--muted)}
.gd .demo-pill{font-size:11px;background:#fff4df;color:#9b5a00;border:1px solid #ffdba6;border-radius:20px;padding:7px 10px;white-space:nowrap}
.gd .cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:16px}
.gd .kpi{background:var(--card);border:1px solid var(--line);border-radius:11px;padding:15px;box-shadow:var(--shadow);display:flex;gap:12px;align-items:center}
.gd .kpi-icon{width:45px;height:45px;border-radius:50%;display:grid;place-items:center;flex:none}
.gd .kpi-icon svg{width:22px;height:22px}
.gd .kpi .label{font-size:12px;color:#43516a;margin-bottom:4px}
.gd .kpi .value{font-size:25px;font-weight:800;line-height:1}
.gd .kpi .sub{font-size:11px;color:var(--muted);margin-top:5px}
.gd .blue{color:var(--blue)}
.gd .green{color:var(--green)}
.gd .red{color:var(--red)}
.gd .orange{color:var(--orange)}
.gd .purple{color:var(--purple)}
.gd .bg-blue{background:#eaf2ff}
.gd .bg-green{background:#eaf8ef}
.gd .bg-red{background:#fdeeee}
.gd .bg-orange{background:#fff2df}
.gd .bg-purple{background:#f1edff}
.gd .grid-2{display:grid;grid-template-columns:minmax(0,2.1fr) minmax(290px,.9fr);gap:15px}
.gd .grid-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:15px}
.gd .panel{background:white;border:1px solid var(--line);border-radius:11px;box-shadow:var(--shadow);overflow:hidden}
.gd .panel-head{padding:14px 16px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:10px}
.gd .panel-head h3{margin:0;font-size:15px}
.gd .panel-body{padding:15px 16px}
.gd .type-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.gd .type-card{border:1px solid var(--line);border-radius:10px;padding:12px;background:#fff;transition:.15s;cursor:pointer}
.gd .type-card:hover{border-color:#f3ac55;box-shadow:0 3px 12px rgba(242,139,12,.12)}
.gd .type-card .top{display:flex;justify-content:space-between;gap:8px;align-items:center}
.gd .type-card .n{font-size:22px;font-weight:800;margin-top:8px}
.gd .type-card .mini{font-size:11px;color:var(--muted);margin-top:5px}
.gd .bar{height:6px;background:#edf1f6;border-radius:6px;overflow:hidden;margin-top:9px}
.gd .bar > i{display:block;height:100%;border-radius:6px;background:var(--orange)}
.gd .filters{display:grid;grid-template-columns:1.3fr repeat(4,.9fr) auto;gap:9px;align-items:end}
.gd .field label{display:block;font-size:11px;font-weight:700;color:#536174;margin:0 0 5px}
/* Fondo blanco puro + borde var(--line) (muy tenue) sobre una tarjeta
   también blanca dejaba el campo invisible hasta hacerle foco (Pablo,
   5-oct, y otra vez el 6-oct: --line2 seguía sin notarse). Mismo criterio
   que .field del resto de CGC (app.css): fondo --surface2 y borde
   --field-line, mucho más oscuro que --line2, que sí se distinguen de
   la tarjeta. */
.gd .field input, .gd .field select, .gd .field textarea{width:100%;border:1px solid var(--field-line);border-radius:7px;background:var(--bg);padding:9px 10px;color:var(--text);outline:none}
.gd .field input:focus, .gd .field select:focus, .gd .field textarea:focus{border-color:#f3a347;box-shadow:0 0 0 3px rgba(242,139,12,.12)}
.gd .btn{border:1px solid var(--line);border-radius:7px;background:white;padding:9px 13px;font-weight:700;color:var(--text);display:inline-flex;align-items:center;gap:7px;justify-content:center}
.gd .btn svg{width:16px;height:16px}
.gd .btn.primary{background:var(--orange);color:white;border-color:var(--orange)}
.gd .btn.blue{background:var(--blue);color:white;border-color:var(--blue)}
.gd .btn.green{background:var(--green);color:white;border-color:var(--green)}
.gd .btn.danger{background:#fff2f2;color:var(--red);border-color:#ffcaca}
.gd .table-wrap{overflow:auto}
.gd .table-wrap:has(>table){max-height:68vh;position:relative;overflow:auto}
.gd .table-wrap>table>thead th{position:sticky;top:0;z-index:7;background:#f8fafc;box-shadow:0 1px 0 var(--line)}
.gd table{width:100%;border-collapse:collapse;min-width:920px}
.gd th{text-align:left;background:#f8fafc;color:#526075;font-size:10.5px;text-transform:none;padding:10px;border-bottom:1px solid var(--line);white-space:nowrap}
.gd td{padding:10px;border-bottom:1px solid #edf0f4;font-size:12px;vertical-align:middle}
.gd tr:hover td{background:#fbfcfe}
.gd .status{display:inline-flex;align-items:center;border-radius:6px;padding:4px 7px;font-size:10.5px;font-weight:700;white-space:nowrap}
.gd .st-green{background:#e8f8ed;color:#238147}
.gd .st-yellow{background:#fff2d9;color:#9a6900}
.gd .st-red{background:#fde8e8;color:#b92c2c}
.gd .st-blue{background:#eaf2ff;color:#1c5eb8}
.gd .st-gray{background:#eef1f5;color:#667085}
.gd .st-purple{background:#efeaff;color:#694db5}
.gd .dot{width:7px;height:7px;border-radius:50%;display:inline-block;margin-right:6px;background:currentColor}
.gd .activity{display:flex;gap:10px;padding:10px 0;border-bottom:1px solid #edf0f4}
.gd .activity:last-child{border:0}
.gd .activity-time{font-size:10px;color:var(--muted);white-space:nowrap}
.gd .activity strong{font-size:12px}
.gd .activity p{margin:3px 0 0;font-size:11px;color:var(--muted);line-height:1.4}
.gd .alert-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 0;border-bottom:1px solid #edf0f4}
.gd .alert-row:last-child{border:0}
.gd .alert-row strong{font-size:12px;display:block}
.gd .alert-row small{color:var(--muted)}
.gd .progress{height:8px;background:#edf1f5;border-radius:8px;overflow:hidden}
.gd .progress i{height:100%;display:block;background:var(--green);border-radius:8px}
.gd .workflow{display:flex;align-items:center;gap:7px;overflow:auto;padding:5px 2px 12px}
.gd .step{min-width:126px;border:1px solid var(--line);border-radius:10px;padding:12px;text-align:center;background:#fff;position:relative}
.gd .step.done{background:#eefaf2;border-color:#9dd6ae}
.gd .step.active{background:#fff7e7;border-color:#f0af47}
.gd .step.pending{background:#f8fafc;color:#778397}
.gd .step b{display:block;font-size:11px;margin-top:5px}
.gd .step small{font-size:9.5px;color:var(--muted);display:block;margin-top:4px}
.gd .arrow{color:#8a98aa;font-size:20px;flex:none}
.gd .audit{position:relative;padding-left:22px}
.gd .audit:before{content:"";position:absolute;left:6px;top:6px;bottom:5px;width:2px;background:#dce4ee}
.gd .audit-event{position:relative;margin:0 0 14px;padding-left:7px}
.gd .audit-event:before{content:"";position:absolute;left:-20px;top:4px;width:10px;height:10px;border:2px solid white;border-radius:50%;background:var(--blue);box-shadow:0 0 0 2px #cbd6e5}
.gd .audit-event strong{font-size:12px}
.gd .audit-event div{font-size:10.5px;color:var(--muted);margin-top:3px}
.gd .folder-tree ul{list-style:none;margin:5px 0;padding-left:20px}
.gd .folder-tree li{padding:5px 0;font-size:12px}
.gd .folder-tree .folder{color:#1a63bf;font-weight:700}
.gd .form-section{border:1px solid var(--line);border-radius:10px;padding:15px;margin-bottom:12px;background:#fff}
.gd .form-section h3{font-size:14px;margin:0 0 13px;display:flex;align-items:center;gap:8px}
.gd .num{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:var(--orange);color:white;font-size:11px}
.gd .form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}
.gd .span2{grid-column:span 2}
.gd .span4{grid-column:span 4}
.gd .form-actions{display:flex;justify-content:center;gap:10px;margin-top:12px}
.gd .notice{border:1px solid #f4d8a9;background:#fff8eb;border-radius:8px;padding:11px;color:#7b571d;font-size:11px;line-height:1.5}
.gd .chart-bars{display:flex;flex-direction:column;gap:10px}
.gd .chart-row{display:grid;grid-template-columns:120px 1fr 40px;gap:9px;align-items:center;font-size:11px}
.gd .chart-row .track{height:9px;background:#edf1f5;border-radius:8px;overflow:hidden}
.gd .chart-row .fill{height:100%;background:var(--blue);border-radius:8px}
.gd .donut{width:155px;height:155px;border-radius:50%;background:conic-gradient(var(--green) 0 56%,var(--yellow) 56% 77%,var(--red) 77% 86%,var(--blue) 86% 100%);position:relative;margin:auto}
.gd .donut:after{content:"";position:absolute;inset:29px;border-radius:50%;background:white}
.gd .donut-center{position:absolute;inset:0;display:grid;place-items:center;z-index:2;font-size:22px;font-weight:800}
.gd .settings-list{display:grid;grid-template-columns:260px 1fr;gap:15px}
.gd .setting-menu a{display:block;padding:11px 12px;border-radius:8px;text-decoration:none;color:var(--text);margin-bottom:5px;font-size:12px}
.gd .setting-menu a.active{background:#fff1de;color:#a75b00;font-weight:800;border-left:3px solid var(--orange)}
.gd .toast{position:fixed;right:22px;bottom:22px;background:#11263f;color:white;border-radius:9px;padding:13px 16px;box-shadow:0 12px 30px rgba(0,0,0,.2);z-index:999;display:none;max-width:360px}
.gd .toast.show{display:block;animation:pop .2s ease}
@keyframes pop{from{transform:translateY(10px);opacity:0}to{transform:none;opacity:1}}
.gd .modal{position:fixed;inset:0;background:rgba(3,15,30,.5);display:none;align-items:center;justify-content:center;z-index:1000;padding:25px}
.gd .modal.show{display:flex}
.gd .modal-box{background:white;border-radius:12px;max-width:860px;width:100%;max-height:88vh;overflow:auto;box-shadow:0 25px 60px rgba(0,0,0,.25)}
.gd .modal-head{padding:16px 18px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}
.gd .modal-body{padding:18px}
.gd .record-drawer{position:fixed;right:18px;top:84px;width:min(430px,calc(100vw - 30px));max-height:calc(100vh - 102px);background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 22px 60px rgba(7,29,57,.24);z-index:850;display:none;overflow:hidden}
.gd .record-drawer.show{display:flex;flex-direction:column}
.gd .record-drawer.pinned{border-color:#f2a24a;box-shadow:0 22px 60px rgba(242,139,12,.2)}
.gd .record-drawer-head{padding:14px 16px;border-bottom:1px solid var(--line);display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.gd .record-drawer-head h3{margin:0;font-size:16px}
.gd .record-drawer-head small{display:block;color:var(--muted);margin-top:4px}
.gd .record-drawer-tools{display:flex;gap:5px}
.gd .record-drawer-tools button{border:1px solid var(--line);background:#fff;border-radius:7px;padding:6px 8px;font-weight:700}
.gd .record-drawer-body{padding:16px;overflow:auto}
.gd .record-file-summary{display:flex;gap:12px;align-items:flex-start;margin-bottom:14px}
.gd .record-file-icon{width:48px;height:48px;border-radius:11px;background:#edf4ff;color:#1d6de2;display:grid;place-items:center;flex:none}
.gd .record-file-icon svg{width:22px;height:22px}
.gd .record-file-summary b{font-size:14px;display:block}
.gd .record-file-summary p{color:var(--muted);font-size:11px;line-height:1.45;margin:5px 0 0}
.gd .record-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.gd .record-detail{border:1px solid var(--line);background:#f9fbfe;border-radius:8px;padding:9px;min-width:0}
.gd .record-detail small{display:block;color:var(--muted);font-size:9.5px;margin-bottom:4px}
.gd .record-detail b{display:block;font-size:11px;word-break:break-word}
.gd .record-drawer-actions{padding:12px 16px;border-top:1px solid var(--line);display:flex;gap:7px;flex-wrap:wrap}
.gd .record-drawer-hint{font-size:10px;color:var(--muted);margin-top:12px;padding-top:10px;border-top:1px solid var(--line)}
.gd #view tbody tr{cursor:pointer}
@media(max-width:650px){
.gd .record-drawer{right:8px;top:76px;width:calc(100vw - 16px);max-height:calc(100vh - 84px)}
.gd .record-detail-grid{grid-template-columns:1fr}
}
.gd .record-download-block{margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}
.gd .record-download-block h4{margin:0 0 9px;font-size:12px}
.gd .record-download-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.gd .record-download-grid .btn{font-size:10px;padding:8px;min-width:0}
.gd .record-download-grid .btn:disabled{opacity:.48;cursor:not-allowed;background:#f1f3f6;color:#7b8798}
.gd .record-download-grid .wide{grid-column:span 2}
.gd .revision-trace{margin-top:15px;padding-top:13px;border-top:1px solid var(--line)}
.gd .revision-trace-head{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:9px}
.gd .revision-trace-head h4{margin:0;font-size:12px}
.gd .revision-note{border:1px solid #cfe0f5;background:#f5f9ff;border-radius:9px;padding:9px;font-size:10px;line-height:1.45;color:#536985;margin-bottom:11px}
.gd .revision-list{position:relative;padding-left:28px}
.gd .revision-list:before{content:"";position:absolute;left:9px;top:10px;bottom:14px;width:2px;background:#d8e4f2}
.gd .revision-item{position:relative;border:1px solid #d9e3ef;border-radius:10px;padding:10px;margin-bottom:10px;background:#fff}
.gd .revision-item:before{content:"";position:absolute;left:-28px;top:13px;width:14px;height:14px;border-radius:50%;background:#2e7ee7;border:3px solid white;box-shadow:0 0 0 1px #afc5dd}
.gd .revision-item.obsolete:before{background:#9bacbe}
.gd .revision-item-head{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px}
.gd .revision-tag{background:#eaf3ff;color:#1763b2;border-radius:7px;padding:4px 7px;font-size:10px;font-weight:800}
.gd .revision-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px 12px}
.gd .revision-grid small{display:block;color:var(--muted);font-size:9px}
.gd .revision-grid b{font-size:10.5px;word-break:break-word}
.gd .revision-empty{font-size:10px;color:var(--muted);padding:8px 0}
@media(max-width:650px){
.gd .revision-grid{grid-template-columns:1fr}
}
.gd .special-doc-side, .gd .trans-side, .gd .sia-side, .gd .payment-side, .gd .proc-side, .gd .internal-side{display:none!important}
.gd .special-doc-layout, .gd .comm-layout, .gd .trans-layout, .gd .sia-layout, .gd .payment-layout, .gd .proc-layout, .gd .internal-layout{grid-template-columns:minmax(0,1fr)!important}
.gd .sia-side{display:block!important;margin-top:14px}
.gd .sia-side .panel{position:static!important}
.gd .comm-side{display:block!important;margin-top:14px}
.gd .comm-side .panel{position:static!important}
.gd .close{border:0;background:none;font-size:22px}
.gd .footer-note{color:#7a8797;font-size:10px;text-align:center;padding:18px}
.gd .copy-workspace{display:grid;grid-template-columns:1.05fr 1.08fr .92fr;gap:15px;margin-bottom:15px}
.gd .copy-card{background:#fff;border:1px solid var(--line);border-radius:11px;box-shadow:var(--shadow);overflow:hidden}
.gd .copy-card-head{padding:13px 15px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:10px}
.gd .copy-card-head h3{margin:0;font-size:15px}
.gd .copy-card-body{padding:14px 15px}
.gd .copy-doc-title{display:flex;gap:11px;align-items:flex-start;padding-bottom:12px;border-bottom:1px solid #edf0f4;margin-bottom:10px}
.gd .copy-doc-icon{width:44px;height:44px;border-radius:9px;display:grid;place-items:center;background:#eaf8ef;color:var(--green);flex:none}
.gd .copy-doc-icon svg{width:23px;height:23px}
.gd .copy-meta{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}
.gd .copy-meta .alert-row{padding:8px 0}
.gd .copy-meta .alert-row span:first-child{color:var(--muted);font-size:10.5px}
.gd .copy-meta .alert-row b{font-size:11px;text-align:right}
.gd .copy-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.gd .copy-form-grid .field input, .gd .copy-form-grid .field select{padding:8px 9px;font-size:11px}
.gd .receipt-box{border:1px solid #d8e3ef;border-radius:10px;padding:12px;background:#fbfdff;margin-bottom:10px}
.gd .receipt-box.signed{border-color:#a9ddba;background:#f2fbf5}
.gd .receipt-box.pending{border-color:#f0ce91;background:#fffaf1}
.gd .receipt-title{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:8px}
.gd .receipt-title strong{font-size:12px}
.gd .receipt-detail{font-size:10.5px;color:var(--muted);line-height:1.55}
.gd .receipt-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}
.gd .receipt-actions .btn{padding:8px 9px;font-size:11px}
.gd .signature-pad-wrap{border:1px dashed #9fb2c8;border-radius:10px;background:#f8fafc;padding:10px}
.gd .signature-pad{display:block;width:100%;height:190px;background:white;border:1px solid #cbd7e5;border-radius:8px;touch-action:none;cursor:crosshair}
.gd .signature-tools{display:flex;justify-content:space-between;gap:8px;align-items:center;margin-top:9px}
.gd .signature-help{font-size:10.5px;color:var(--muted)}
.gd .record-preview{border:1px solid #c9d4e0;border-radius:8px;overflow:hidden}
.gd .record-preview .record-title{background:#f7f9fc;padding:10px 12px;text-align:center;font-weight:800;font-size:12px;border-bottom:1px solid #c9d4e0}
.gd .record-preview table{min-width:0}
.gd .record-preview th, .gd .record-preview td{font-size:10px;padding:7px}
.gd .record-preview th{background:#f1f5f9}
.gd .copy-status-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:10px}
.gd .copy-status-strip>div{border:1px solid var(--line);border-radius:8px;padding:8px;text-align:center;background:#fafcff}
.gd .copy-status-strip b{display:block;font-size:13px}
.gd .copy-status-strip small{font-size:9.5px;color:var(--muted)}
@media(max-width:1250px){
.gd .copy-workspace{grid-template-columns:1fr 1fr}
.gd .copy-workspace>.copy-card:last-child{grid-column:1/-1}
}
@media(max-width:850px){
.gd .copy-workspace{grid-template-columns:1fr}
.gd .copy-workspace>.copy-card:last-child{grid-column:auto}
.gd .receipt-actions, .gd .copy-form-grid, .gd .copy-status-strip{grid-template-columns:1fr}
}
@media(max-width:1200px){
.gd .cards{grid-template-columns:repeat(2,1fr)}
.gd .type-grid{grid-template-columns:repeat(2,1fr)}
.gd .grid-2{grid-template-columns:1fr}
.gd .form-grid{grid-template-columns:repeat(2,1fr)}
.gd .span4{grid-column:span 2}
}
@media(max-width:800px){
.gd .app, .gd .app.sidebar-hidden{grid-template-columns:1fr}
.gd .sidebar, .gd .app.sidebar-hidden .sidebar{position:fixed;left:-260px;z-index:100;width:248px;padding:18px 12px;opacity:1;pointer-events:auto;transition:left .2s}
.gd .sidebar.open, .gd .app.sidebar-hidden .sidebar.open{left:0}
.gd .topbar{padding:0 12px}
.gd .project-box{min-width:210px}
.gd .search{display:none}
.gd .profile div:last-child{display:none}
.gd .content{padding:16px 12px}
.gd .cards{grid-template-columns:1fr}
.gd .type-grid{grid-template-columns:1fr}
.gd .filters{grid-template-columns:1fr}
.gd .form-grid{grid-template-columns:1fr}
.gd .span2, .gd .span4{grid-column:span 1}
.gd .settings-list{grid-template-columns:1fr}
}
.gd .cards-5{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:13px;margin-bottom:16px}
.gd .dashboard-layout{display:grid;grid-template-columns:minmax(0,2.15fr) minmax(330px,.85fr);gap:15px}
.gd .dashboard-side{display:flex;flex-direction:column;gap:15px}
.gd .alert-card-row{display:grid;grid-template-columns:32px 1fr auto 18px;gap:9px;align-items:center;padding:10px 0;border-bottom:1px solid #edf0f4}
.gd .alert-card-row:last-child{border-bottom:0}
.gd .alert-card-row .aicon{width:30px;height:30px;border-radius:50%;display:grid;place-items:center}
.gd .alert-card-row .aicon svg{width:18px;height:18px}
.gd .alert-card-row strong{font-size:12px;display:block}
.gd .alert-card-row small{font-size:10.5px;color:var(--muted)}
.gd .alert-num{min-width:32px;text-align:center;border-radius:7px;padding:5px 7px;font-weight:800}
.gd .quick-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.gd .quick-grid .btn{justify-content:flex-start;padding:11px}
.gd .storage-crumb{display:flex;align-items:center;gap:7px;flex-wrap:wrap;font-size:11px;margin-bottom:11px}
.gd .storage-crumb span{display:flex;align-items:center;gap:5px}
.gd .storage-box{background:#f6f8fb;border:1px solid var(--line);border-radius:7px;padding:10px;font:11px Consolas,monospace;line-height:1.5}
.gd .form-section.stage-blue{border-color:#93b9ff;background:linear-gradient(180deg,#fbfdff,#fff)}
.gd .form-section.stage-blue .num{background:#1565d8}
.gd .form-section.stage-orange{border-color:#f3ae62;background:linear-gradient(180deg,#fffdf9,#fff)}
.gd .form-section.stage-orange .num{background:#f47c06}
.gd .form-section.stage-green{border-color:#8fd4a8;background:linear-gradient(180deg,#fbfffc,#fff)}
.gd .form-section.stage-green .num{background:#17914a}
.gd .form-section.stage-purple{border-color:#b49ae8;background:linear-gradient(180deg,#fdfbff,#fff)}
.gd .form-section.stage-purple .num{background:#7733c5}
.gd .form-section.stage-yellow{border-color:#edc84f;background:linear-gradient(180deg,#fffef8,#fff)}
.gd .form-section.stage-yellow .num{background:#e8b500}
.gd .log-layout{display:grid;grid-template-columns:1fr;gap:14px}
.gd .log-side{min-width:0}
.gd .log-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap}
.gd .log-filter-grid{display:grid;grid-template-columns:1.35fr repeat(6,.75fr) 1fr auto;gap:8px;align-items:end}
.gd .log-doc-card{display:flex;gap:11px;align-items:flex-start}
.gd .log-doc-icon{width:42px;height:42px;border-radius:9px;background:#eaf2ff;color:var(--blue);display:grid;place-items:center;flex:none}
.gd .log-doc-icon svg{width:22px;height:22px}
.gd .log-side .panel{position:sticky;top:86px}
.gd .mini-history{padding:8px 0;border-bottom:1px solid #edf0f4;display:grid;grid-template-columns:28px 78px 1fr auto;gap:5px;align-items:center;font-size:10.5px}
.gd .internal-layout{display:grid;grid-template-columns:minmax(0,1fr) 325px;gap:15px}
.gd .internal-main{min-width:0}
.gd .internal-side{min-width:0}
.gd .internal-side .panel{position:sticky;top:86px}
.gd .workflow-image{width:100%;display:block;border-radius:8px;border:1px solid #e7edf5;background:#fff}
.gd .internal-check{position:relative;padding-left:21px}
.gd .internal-check:before{content:"";position:absolute;left:7px;top:10px;bottom:13px;width:2px;background:#dce4ee}
.gd .internal-check-row{display:grid;grid-template-columns:15px 1fr auto;gap:8px;align-items:start;padding:8px 0;position:relative}
.gd .internal-check-dot{width:10px;height:10px;border-radius:50%;margin-top:3px;background:#fff;border:2px solid #95a2b3;z-index:2}
.gd .internal-check-dot.active{border-color:#1d6de2;background:#1d6de2}
.gd .internal-check-dot.done{border-color:#27a75a;background:#27a75a}
.gd .internal-check-row b{font-size:11px}
.gd .internal-check-row small{display:block;color:var(--muted);font-size:9.5px;margin-top:3px}
.gd .internal-actions{display:grid;gap:8px;margin-top:13px}
.gd .internal-actions .btn{width:100%;padding:10px}
.gd .trace-filters{display:grid;grid-template-columns:1fr 1fr 1.15fr 1.1fr 1.5fr;gap:12px;align-items:end}
.gd .trace-filter-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:10px}
.gd .trace-life{display:flex;align-items:flex-start;gap:0;overflow:auto;padding:12px 4px}
.gd .trace-stage{min-width:112px;text-align:center;position:relative}
.gd .trace-stage:not(:last-child):after{content:"";position:absolute;top:22px;left:70%;right:-30%;height:2px;background:#9dbce8}
.gd .trace-circle{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;margin:auto;background:#1671eb;color:#fff;border:5px solid #eaf2ff}
.gd .trace-circle.green{background:#1a9c55;border-color:#e9f8ee}
.gd .trace-circle.orange{background:#f39a13;border-color:#fff3df}
.gd .trace-circle.red{background:#f05656;border-color:#fdeeee}
.gd .trace-circle.gray{background:#909baa;border-color:#eff2f5}
.gd .trace-circle svg{width:19px;height:19px}
.gd .trace-stage b{display:block;font-size:10.5px;margin-top:7px}
.gd .trace-stage small{font-size:9.3px;color:var(--muted);line-height:1.4;display:block;margin-top:4px}
.gd .audit-table table{min-width:720px}
.gd .audit-table th, .gd .audit-table td{font-size:10.5px;padding:8px}
.gd .copy-download-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.gd .download-list{display:grid;gap:9px}
.gd .download-item{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;border:1px solid var(--line);border-radius:8px;padding:10px}
.gd .download-item small{display:block;color:var(--muted);margin-top:3px}
@media(max-width:1350px){
.gd .cards-5{grid-template-columns:repeat(3,1fr)}
.gd .dashboard-layout, .gd .log-layout, .gd .internal-layout{grid-template-columns:1fr}
.gd .log-side .panel, .gd .internal-side .panel{position:static}
.gd .log-filter-grid{grid-template-columns:repeat(4,1fr)}
}
@media(max-width:850px){
.gd .cards-5{grid-template-columns:1fr}
.gd .quick-grid, .gd .log-filter-grid, .gd .trace-filters{grid-template-columns:1fr}
.gd .trace-filter-actions{justify-content:stretch}
.gd .trace-filter-actions .btn{flex:1}
}
.gd .db-head, .gd .rp-head{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;margin-bottom:14px}
.gd .db-head h1, .gd .rp-head h1{margin:0;font-size:26px;letter-spacing:-.02em}
.gd .db-head p, .gd .rp-head p{margin:4px 0 0;color:var(--muted);font-size:11px}
.gd .db-head-actions, .gd .rp-head-actions{display:flex;align-items:center;gap:12px;font-size:10.5px;color:#596a80}
.gd .db-head-actions .btn, .gd .rp-head-actions .btn{padding:8px 12px}
.gd .db-kpis{display:grid;grid-template-columns:1fr 1fr 1fr 1.15fr;gap:13px;margin-bottom:14px}
.gd .db-kpi{background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow);padding:14px;min-height:85px;display:flex;align-items:center;gap:13px}
.gd .db-kpi .ico{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;flex:none}
.gd .db-kpi .ico svg{width:24px;height:24px}
.gd .db-kpi .lab{font-size:11px;color:#43516a;font-weight:700}
.gd .db-kpi .val{font-size:25px;font-weight:800;margin-top:3px}
.gd .db-kpi .sub{font-size:9.5px;color:var(--muted);margin-top:4px}
.gd .db-advance{display:grid;grid-template-columns:70px 1fr;gap:13px;align-items:center;width:100%}
.gd .db-ring{width:65px;height:65px;border-radius:50%;background:conic-gradient(#20a663 0 55%,#ecf0f4 55% 100%);position:relative;display:grid;place-items:center}
.gd .db-ring:after{content:'';position:absolute;inset:8px;background:#fff;border-radius:50%}
.gd .db-ring b{position:relative;z-index:2;font-size:16px}
.gd .db-legend{display:grid;gap:5px;font-size:9.5px}
.gd .db-legend div{display:grid;grid-template-columns:9px 1fr auto;gap:6px;align-items:center}
.gd .db-legend i{width:9px;height:4px;border-radius:3px;display:block}
.gd .db-layout{display:grid;grid-template-columns:245px minmax(0,1fr) 330px;gap:12px}
.gd .db-tree, .gd .db-main, .gd .db-detail{background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow);overflow:hidden}
.gd .db-panel-head{padding:12px 13px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}
.gd .db-panel-head h3{font-size:13px;margin:0}
.gd .db-tree-body{padding:10px}
.gd .db-tree-search{position:relative;margin-bottom:8px}
.gd .db-tree-search input{width:100%;border:1px solid var(--line);padding:8px 28px 8px 9px;border-radius:6px;font-size:10.5px}
.gd .db-tree-search svg{position:absolute;right:8px;top:8px;width:15px;height:15px}
.gd .db-tree ul{list-style:none;margin:0;padding-left:15px}
.gd .db-tree li{padding:5px 0;font-size:10px;white-space:nowrap}
.gd .db-tree .sel{background:#edf4ff;border-radius:5px;padding:6px}
.gd .db-tree .count{float:right;background:#eef3fb;border-radius:5px;padding:2px 6px;color:#4b5d73}
.gd .db-breadcrumb{padding:11px 13px 7px;color:#607086;font-size:9.5px}
.gd .db-main-actions{display:flex;gap:7px;align-items:center}
.gd .db-main .table-wrap table{min-width:760px}
.gd .db-main th, .gd .db-main td{font-size:10px;padding:8px}
.gd .db-row-selected td{background:#edf5ff}
.gd .db-progress{width:75px;height:5px;background:#e9eef4;border-radius:4px;overflow:hidden}
.gd .db-progress i{display:block;height:100%;border-radius:4px}
.gd .db-pagination{display:flex;justify-content:space-between;align-items:center;padding:10px 13px;font-size:9.5px;color:var(--muted)}
.gd .db-detail-body{padding:12px}
.gd .db-item-title{display:flex;gap:10px;align-items:center;margin-bottom:9px}
.gd .db-item-icon{width:44px;height:44px;border-radius:9px;background:#eaf2ff;color:var(--blue);display:grid;place-items:center}
.gd .db-item-icon svg{width:23px}
.gd .db-tabs{display:flex;gap:20px;border-bottom:1px solid var(--line);margin:0 -12px 12px;padding:0 12px}
.gd .db-tab{padding:9px 0;font-size:10px}
.gd .db-tab.active{color:var(--blue);border-bottom:2px solid var(--blue);font-weight:700}
.gd .db-mini-row{display:grid;grid-template-columns:105px 1fr;gap:7px;padding:4px 0;font-size:9.8px}
.gd .db-mini-row span:first-child{font-weight:700;color:#536174}
.gd .db-doc-row{display:grid;grid-template-columns:1fr 70px 18px;gap:5px;align-items:center;padding:5px 0;font-size:9.5px}
.gd .db-route{background:#f3f5f8;border-radius:6px;padding:8px;font:9px Consolas,monospace;line-height:1.45}
.gd .db-bottom-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:10px}
.gd .db-bottom-actions .btn.blue{grid-column:1/-1}
.gd .rp-filters{background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow);padding:13px;margin-bottom:13px;display:grid;grid-template-columns:1.1fr repeat(4,.9fr) auto auto;gap:12px;align-items:end}
.gd .rp-filters .field input, .gd .rp-filters .field select{font-size:10px;padding:8px}
.gd .rp-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-bottom:13px}
.gd .rp-kpi{background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow);padding:13px;display:flex;gap:10px;align-items:center;min-height:83px}
.gd .rp-kpi .ico{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;flex:none}
.gd .rp-kpi .ico svg{width:22px}
.gd .rp-kpi .lab{font-size:10px;font-weight:700;color:#43516a}
.gd .rp-kpi .val{font-size:22px;font-weight:800;margin-top:3px}
.gd .rp-kpi .sub{font-size:9px;color:var(--muted);margin-top:4px}
.gd .rp-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.gd .rp-card{background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow);padding:12px;min-height:200px}
.gd .rp-card h3{font-size:12.5px;margin:0 0 10px}
.gd .rp-card .detail-link{display:flex;justify-content:space-between;color:var(--blue);font-size:9.5px;margin-top:9px}
.gd .rp-donut-wrap{display:grid;grid-template-columns:145px 1fr;gap:10px;align-items:center}
.gd .rp-donut{width:135px;height:135px;border-radius:50%;position:relative;margin:auto}
.gd .rp-donut:after{content:'';position:absolute;inset:27px;border-radius:50%;background:#fff}
.gd .rp-donut .center{position:absolute;inset:0;display:grid;place-items:center;z-index:2;text-align:center;font-weight:800}
.gd .rp-donut .center small{display:block;font-weight:400;color:var(--muted);font-size:9px}
.gd .rp-legend{display:grid;gap:8px;font-size:9.5px}
.gd .rp-legend div{display:grid;grid-template-columns:8px 1fr auto;gap:6px;align-items:center}
.gd .rp-legend i{width:7px;height:7px;border-radius:50%}
.gd .rp-bars{display:grid;gap:10px;margin-top:8px}
.gd .rp-bar-row{display:grid;grid-template-columns:85px 1fr 42px;gap:7px;align-items:center;font-size:9.5px}
.gd .rp-track{height:8px;background:#edf1f5;border-radius:5px;overflow:hidden}
.gd .rp-fill{height:100%;border-radius:5px}
.gd .rp-line svg{width:100%;height:135px}
.gd .rp-gauge{height:130px;position:relative;overflow:hidden}
.gd .rp-gauge .semi{width:220px;height:110px;border-radius:220px 220px 0 0;background:conic-gradient(from 270deg at 50% 100%,#16a05b 0 48.15%,#e8edf2 48.15% 50%);position:absolute;left:50%;bottom:0;transform:translateX(-50%)}
.gd .rp-gauge .semi:after{content:'';position:absolute;left:25px;right:25px;bottom:0;height:80px;background:#fff;border-radius:180px 180px 0 0}
.gd .rp-gauge .gtext{position:absolute;left:0;right:0;bottom:17px;text-align:center;font-size:25px;font-weight:800;color:#16a05b;z-index:2}
.gd .rp-gauge .gtext small{display:block;font-size:10px;color:#47586d;font-weight:600}
.gd .rp-alerts{margin-top:12px;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow);overflow:hidden}
.gd .rp-alerts h3{font-size:13px;margin:0;padding:12px 13px 4px}
.gd .rp-alerts table{min-width:900px}
.gd .rp-alerts th, .gd .rp-alerts td{font-size:9.8px;padding:7px 10px}
.gd .rp-alert-footer{text-align:center;color:var(--blue);font-size:10px;padding:9px}
.gd .workflow-vector{width:100%;height:auto;display:block;background:#fff}
.gd .workflow-vector text{font-family:Inter,Segoe UI,Arial,sans-serif}
.gd .workflow-vector .box{stroke-width:1.5}
.gd .workflow-vector .label{font-weight:700;fill:#0d2038}
.gd .workflow-vector .small{fill:#495a70}
.gd .workflow-vector .numtxt{fill:#fff;font-weight:800;font-size:11px}
.gd .workflow-vector .numbg{stroke:#fff;stroke-width:2}
.gd .workflow-vector .arr{stroke:#0d315b;stroke-width:2.2;fill:none;marker-end:url(#wfArrow)}
.gd .workflow-vector .dashed{stroke:#63748a;stroke-width:1.3;fill:none;stroke-dasharray:4 3;marker-end:url(#wfArrowSmall)}
@media(max-width:1450px){
.gd .db-layout{grid-template-columns:220px minmax(0,1fr) 300px}
.gd .rp-kpis{grid-template-columns:repeat(3,1fr)}
.gd .rp-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:1050px){
.gd .db-kpis{grid-template-columns:repeat(2,1fr)}
.gd .db-layout{grid-template-columns:1fr}
.gd .rp-filters{grid-template-columns:repeat(3,1fr)}
.gd .rp-grid{grid-template-columns:1fr}
.gd .rp-kpis{grid-template-columns:repeat(2,1fr)}
}
.gd .stamp-demo-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:14px 0 18px}
.gd .stamp-demo-card{background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);overflow:hidden}
.gd .stamp-demo-card img{width:100%;display:block;border-bottom:1px solid #eef2f5}
.gd .stamp-demo-body{padding:12px 14px}
.gd .stamp-demo-body h4{margin:0 0 6px;font-size:14px}
.gd .stamp-demo-body p{margin:0 0 10px;color:var(--muted);font-size:11px;line-height:1.5}
.gd .stamp-tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}
.gd .stamp-link-row{display:flex;gap:8px;flex-wrap:wrap}
@media(max-width:1100px){
.gd .stamp-demo-grid{grid-template-columns:1fr}
}
.gd .copy-action-stack{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.gd .copy-action-stack .btn{padding:7px 10px;min-width:auto}
.gd .copy-action-stack .status{white-space:nowrap}
.gd .diffusion-box{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.gd .diffusion-box .status{white-space:nowrap}
.gd .log-file-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;padding:9px 0;border-bottom:1px solid #edf0f4}
.gd .log-file-row:last-child{border-bottom:0}
.gd .log-file-name{min-width:0}
.gd .log-file-name b{display:block;font-size:10.8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.gd .log-file-name small{display:block;color:var(--muted);font-size:9.5px;margin-top:3px}
.gd .log-file-actions{display:flex;gap:5px}
.gd .log-file-actions .btn{padding:6px 8px;font-size:10px}
.gd .internal-file-actions{display:flex;gap:5px;flex-wrap:wrap;align-items:center}
.gd .internal-file-actions .btn{padding:6px 8px;font-size:10px}
.gd .internal-file-box{border:1px solid #dce5ef;border-radius:9px;background:#f9fbfd;padding:10px;margin:12px 0}
.gd .internal-file-box h4{margin:0 0 8px;font-size:11.5px}
.gd .internal-file-box .log-file-row{padding:7px 0}
.gd .log-aconex-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 12px;border:1px solid #dbe5f0;border-radius:9px;background:#fbfdff;padding:4px 12px;margin-top:8px}
.gd .log-aconex-grid .alert-row{padding:8px 0}
.gd .log-aconex-grid .alert-row span:first-child{font-size:10.5px;color:var(--muted)}
.gd .log-aconex-grid .alert-row b{font-size:11px;text-align:right}
.gd .aconex-days{display:inline-flex;align-items:center;border-radius:6px;padding:4px 7px;font-size:10.5px;font-weight:800}
.gd .aconex-days.done{background:#e8f8ed;color:#238147}
.gd .aconex-days.pending{background:#fff2d9;color:#9a6900}
.gd #logTable th, .gd #logTable td{white-space:nowrap}
.gd #logTable td.log-name{white-space:normal;min-width:220px}
.gd .bulk-drop{border:2px dashed #a9bad0;border-radius:11px;background:#f8fbff;padding:18px;text-align:center;margin-bottom:12px}
.gd .bulk-drop strong{display:block;font-size:13px;margin-bottom:5px}
.gd .bulk-drop small{color:var(--muted);font-size:10.5px}
.gd .bulk-drop input{margin-top:10px;max-width:100%}
.gd .bulk-common{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:12px 0}
.gd .bulk-preview{border:1px solid var(--line);border-radius:9px;overflow:auto;max-height:330px}
.gd .bulk-preview table{min-width:1050px}
.gd .bulk-preview th, .gd .bulk-preview td{font-size:10.5px;padding:7px}
.gd .bulk-preview input, .gd .bulk-preview select{width:100%;border:1px solid var(--line);border-radius:6px;padding:6px 7px;background:#fff;font-size:10.5px}
.gd .pdf-hover-preview{position:fixed;z-index:9999;left:50%;top:50%;transform:translate(-50%,-50%);width:calc(100vw - 16px);height:96vh;background:#fff;border:1px solid #b8c7d8;border-radius:12px;box-shadow:0 24px 70px rgba(15,35,60,.32);overflow:hidden;pointer-events:none;display:none}
.gd .pdf-hover-preview.show{display:flex;flex-direction:column}
.gd .pdf-hover-preview-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;background:#f5f8fc;border-bottom:1px solid #d7e0ea;color:#173555;font-size:12px;font-weight:800}
.gd .pdf-hover-preview-head small{font-size:11px;font-weight:500;color:var(--muted)}
.gd .pdf-hover-preview iframe{width:100%;flex:1;min-height:0;border:0;background:#eef2f6}
.gd .pdf-hover-preview-state{display:grid;place-items:center;height:100%;padding:24px;text-align:center;color:var(--muted);font-size:13px}
@media (hover:none),(max-width:760px){
.gd .pdf-hover-preview{display:none!important}
}
.gd .bulk-file-type{display:inline-flex;border-radius:6px;padding:4px 6px;font-size:9.5px;font-weight:700}
.gd .bulk-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:10px 0}
.gd .bulk-summary>div{border:1px solid var(--line);border-radius:8px;padding:9px;text-align:center;background:#fafcff}
.gd .bulk-summary b{display:block;font-size:17px}
.gd .bulk-summary small{font-size:9.5px;color:var(--muted)}
@media(max-width:800px){
.gd .bulk-common{grid-template-columns:1fr}
.gd .bulk-summary{grid-template-columns:1fr}
}
.gd .phase-banner{display:grid;grid-template-columns:1fr auto 1fr;gap:10px;align-items:center;margin-bottom:14px}
.gd .phase-card{border:1px solid var(--line);border-radius:10px;background:#fff;padding:12px 14px}
.gd .phase-card.active{border-color:#8bb8f6;background:#f7fbff}
.gd .phase-card.waiting{border-color:#e5d39c;background:#fffdf6}
.gd .phase-card b{display:block;font-size:12px}
.gd .phase-card small{display:block;color:var(--muted);font-size:10.5px;margin-top:4px;line-height:1.45}
.gd .phase-arrow{font-size:22px;color:#8da0b7}
.gd .future-step{border:1px dashed #b7c5d6;border-radius:10px;background:#f8fafc;padding:16px;margin-bottom:12px}
.gd .future-step-head{display:flex;align-items:center;justify-content:space-between;gap:10px}
.gd .future-step h3{margin:0;font-size:14px}
.gd .future-step p{margin:7px 0 0;color:var(--muted);font-size:11px;line-height:1.55}
.gd .process-badge{display:inline-flex;align-items:center;border-radius:7px;padding:5px 8px;font-size:10px;font-weight:800}
.gd .process-waiting{background:#fff2d9;color:#9a6900}
.gd .process-done{background:#e8f8ed;color:#238147}
.gd .response-modal-section{border:1px solid var(--line);border-radius:9px;padding:12px;margin:10px 0;background:#fff}
.gd .response-modal-section.green{border-color:#8fd4a8;background:#fbfffc}
.gd .response-modal-section.purple{border-color:#b49ae8;background:#fdfbff}
.gd .response-modal-section.yellow{border-color:#edc84f;background:#fffef8}
.gd .response-modal-section h3{font-size:13px;margin:0 0 11px}
@media(max-width:800px){
.gd .phase-banner{grid-template-columns:1fr}
.gd .phase-arrow{transform:rotate(90deg);text-align:center}
}
.gd .bulk-response-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:10px 0 12px}
.gd .bulk-response-summary>div{border:1px solid var(--line);border-radius:8px;padding:9px;text-align:center;background:#fafcff}
.gd .bulk-response-summary b{display:block;font-size:17px}
.gd .bulk-response-summary small{font-size:9.5px;color:var(--muted)}
.gd .bulk-response-common{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:11px 0}
.gd .bulk-response-table{border:1px solid var(--line);border-radius:9px;overflow:auto;max-height:330px}
.gd .bulk-response-table table{min-width:1250px}
.gd .bulk-response-table th, .gd .bulk-response-table td{font-size:10.5px;padding:7px}
.gd .bulk-response-table input, .gd .bulk-response-table select{width:100%;border:1px solid var(--line);border-radius:6px;padding:6px 7px;background:#fff;font-size:10.5px}
.gd .bulk-response-tip{border:1px solid #cfe1f5;background:#f5faff;border-radius:9px;padding:9px 10px;font-size:10.5px;color:#31506f;line-height:1.5;margin:9px 0}
@media(max-width:800px){
.gd .bulk-response-common{grid-template-columns:1fr}
.gd .bulk-response-summary{grid-template-columns:repeat(2,1fr)}
}
.gd .aconex-choice{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:4px}
.gd .aconex-choice label{display:flex;align-items:flex-start;gap:8px;border:1px solid var(--line);border-radius:9px;padding:10px;background:#fff;cursor:pointer}
.gd .aconex-choice input{margin-top:2px}
.gd .aconex-choice b{display:block;font-size:11px}
.gd .aconex-choice small{display:block;font-size:9.7px;color:var(--muted);margin-top:3px;line-height:1.4}
.gd .aconex-choice label.selected{border-color:#7eafea;background:#f5faff}
.gd .aconex-skip{border:1px solid #a8d6b7;background:#f5fff8;border-radius:10px;padding:14px;margin-bottom:12px}
.gd .aconex-skip h3{margin:0 0 6px;font-size:13px;color:#257c43}
.gd .aconex-skip p{margin:0;font-size:10.7px;color:#54705d;line-height:1.5}
.gd .hidden-flow{display:none!important}
.gd .log-id-select{display:flex;align-items:center;gap:7px;white-space:nowrap}
.gd .log-id-select input{width:15px;height:15px;cursor:pointer}
.gd .log-select-all-head{display:flex;align-items:center;gap:6px;font-weight:800}
.gd .log-select-all-head small{font-size:9px;color:var(--muted);font-weight:600;text-transform:none}
.gd .log-filter-flow input{font-family:Consolas,monospace}
.gd .databook-choice{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:10px}
.gd .databook-choice label{display:flex;align-items:flex-start;gap:8px;border:1px solid var(--line);border-radius:9px;padding:10px;background:#fff;cursor:pointer}
.gd .databook-choice label.selected{border-color:#7eafea;background:#f5faff}
.gd .databook-choice input{margin-top:2px}
.gd .databook-choice b{display:block;font-size:11px}
.gd .databook-choice small{display:block;font-size:9.7px;color:var(--muted);margin-top:3px;line-height:1.4}
.gd .archive-direct{border:1px solid #c9d7e6;background:#f8fbff;border-radius:10px;padding:14px;margin-bottom:12px}
.gd .archive-direct h3{margin:0 0 6px;font-size:13px;color:#31506f}
.gd .archive-direct p{margin:0;font-size:10.7px;color:#5d6d7f;line-height:1.5}
.gd .ot-switch-box{border:1px solid #cfe0f2;background:#f8fbff;border-radius:10px;padding:13px 14px;margin-top:16px}
.gd .ot-switch-head{display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap}
.gd .ot-switch-head strong{font-size:12px}
.gd .ot-switch-head small{display:block;color:var(--muted);font-size:10.5px;margin-top:4px}
.gd .ot-radio{display:flex;gap:8px;align-items:center}
.gd .ot-radio label{border:1px solid var(--line);border-radius:7px;padding:7px 11px;background:#fff;font-size:10.5px;font-weight:700;cursor:pointer}
.gd .ot-radio label.active{border-color:#79aee8;background:#edf6ff;color:#185fae}
.gd .ot-register{margin-top:14px;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#fff}
.gd .ot-register-head{padding:12px 13px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.gd .ot-register-head h3{margin:0;font-size:13px}
.gd .ot-register-head small{color:var(--muted);font-size:10px}
.gd .ot-table-wrap{overflow:auto}
.gd .ot-table{min-width:1180px}
.gd .ot-table th, .gd .ot-table td{font-size:10px;padding:8px}
.gd .ot-table td:nth-child(3), .gd .ot-table td:nth-child(4){white-space:normal;min-width:210px}
.gd .minutes-table{min-width:2050px}
.gd .minutes-table th, .gd .minutes-table td{font-size:10px;padding:8px}
.gd .minutes-table td:nth-child(2), .gd .minutes-table td:nth-child(6){white-space:normal;min-width:170px}
.gd .minutes-actions{display:flex;gap:5px;flex-wrap:wrap}
.gd .minutes-actions .btn{padding:6px 8px;font-size:10px}
.gd .findings-table{min-width:2950px}
.gd .findings-table th, .gd .findings-table td{font-size:9.5px;padding:7px}
.gd .findings-table .stage-head{text-align:center;background:#eaf2ff;color:#174f9c;font-weight:800}
.gd .findings-table td:nth-child(6){white-space:normal;min-width:260px}
.gd .finding-meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:14px}
.gd .finding-meta>div{background:#fff;border:1px solid var(--line);border-radius:8px;padding:10px 12px}
.gd .finding-meta small{display:block;color:var(--muted);margin-bottom:3px}
.gd .finding-meta b{font-size:12px}
@media(max-width:900px){
.gd .finding-meta{grid-template-columns:1fr 1fr}
}
.gd .ot-empty{padding:20px;text-align:center;color:var(--muted);font-size:11px}
.gd .ot-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.gd .ot-actions{display:flex;gap:5px;flex-wrap:wrap}
.gd .ot-actions .btn{padding:6px 8px;font-size:10px}
.gd .ot-contract-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-top:12px}
.gd .ot-contract-summary>div{border:1px solid var(--line);border-radius:8px;padding:9px;background:#fafcff}
.gd .ot-contract-summary b{display:block;font-size:16px}
.gd .ot-contract-summary small{font-size:9.5px;color:var(--muted)}
@media(max-width:800px){
.gd .ot-form-grid, .gd .ot-contract-summary{grid-template-columns:1fr}
.gd .ot-switch-head{align-items:flex-start}
}
.gd .response-files{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}
.gd .response-file-card{border:1px dashed #aebed0;border-radius:9px;background:#fbfdff;padding:11px}
.gd .response-file-card label{display:block;font-size:10.5px;font-weight:800;color:#536174;margin-bottom:6px}
.gd .response-file-card small{display:block;color:var(--muted);font-size:9.5px;line-height:1.45;margin-top:5px}
.gd .response-file-card input{width:100%;font-size:10.5px}
.gd .response-db-choice{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-bottom:11px}
.gd .response-db-choice label{display:flex;align-items:flex-start;gap:8px;border:1px solid var(--line);border-radius:8px;background:#fff;padding:9px;cursor:pointer}
.gd .response-db-choice label.selected{border-color:#e7b82b;background:#fffdf3}
.gd .response-db-choice b{display:block;font-size:10.8px}
.gd .response-db-choice small{display:block;color:var(--muted);font-size:9.4px;line-height:1.4;margin-top:3px}
.gd .response-db-choice input{margin-top:2px}
.gd .response-no-db{border:1px solid #cdd9e6;background:#f8fbff;border-radius:8px;padding:10px;color:#526579;font-size:10.5px;line-height:1.5}
@media(max-width:800px){
.gd .response-files, .gd .response-db-choice{grid-template-columns:1fr}
}
.gd .special-doc-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:14px}
.gd .special-doc-side .panel{position:sticky;top:86px}
.gd .special-filters{display:grid;grid-template-columns:1.35fr repeat(4,.8fr) auto;gap:8px;align-items:end}
.gd .special-table{min-width:1850px}
.gd .special-table th, .gd .special-table td{font-size:10px;padding:8px;vertical-align:top}
.gd .special-table td.wrap{white-space:normal;min-width:210px;line-height:1.4}
.gd .special-title{font-weight:800;color:#17314f}
.gd .special-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:14px}
.gd .special-kpi{background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow);padding:13px}
.gd .special-kpi.quick-active{border-color:#1d6de2;box-shadow:0 0 0 2px rgba(29,109,226,.14);background:#f4f8ff}
.gd .kpi.quick-active{border-color:#1d6de2;box-shadow:0 0 0 2px rgba(29,109,226,.14);background:#f4f8ff}
.gd .special-kpi small{display:block;color:var(--muted);font-size:9.7px}
.gd .special-kpi b{display:block;font-size:23px;margin-top:4px}
.gd .table-wrap:has(#sdiTable), .gd .table-wrap:has(#smtTable), .gd .table-wrap:has(#siaTable){max-height:64vh;overflow:auto}
.gd .table-wrap:has(#sdiTable) thead th, .gd .table-wrap:has(#smtTable) thead th, .gd .table-wrap:has(#siaTable) thead th{position:sticky;top:0;z-index:6;background:#fff;box-shadow:0 1px 0 var(--line)}
.gd .table-wrap:has(#sdiTable) table, .gd .table-wrap:has(#smtTable) table{border-collapse:separate;border-spacing:0}
.gd #sdiTable th:nth-child(-n+7), .gd #sdiTable td:nth-child(-n+7), .gd #smtTable th:nth-child(-n+6), .gd #smtTable td:nth-child(-n+6){position:sticky;background:#fff;z-index:4}
.gd #sdiTable th:nth-child(-n+7), .gd #smtTable th:nth-child(-n+6){z-index:9}
.gd #sdiTable th:nth-child(1), .gd #sdiTable td:nth-child(1){left:0;min-width:118px}
.gd #sdiTable th:nth-child(2), .gd #sdiTable td:nth-child(2){left:118px;min-width:48px}
.gd #sdiTable th:nth-child(3), .gd #sdiTable td:nth-child(3){left:166px;min-width:112px}
.gd #sdiTable th:nth-child(4), .gd #sdiTable td:nth-child(4){left:278px;min-width:70px}
.gd #sdiTable th:nth-child(5), .gd #sdiTable td:nth-child(5){left:348px;min-width:58px}
.gd #sdiTable th:nth-child(6), .gd #sdiTable td:nth-child(6){left:406px;min-width:48px}
.gd #sdiTable th:nth-child(7), .gd #sdiTable td:nth-child(7){left:454px;min-width:245px;box-shadow:5px 0 7px -6px #53657d}
.gd #smtTable th:nth-child(1), .gd #smtTable td:nth-child(1){left:0;min-width:48px}
.gd #smtTable th:nth-child(2), .gd #smtTable td:nth-child(2){left:48px;min-width:112px}
.gd #smtTable th:nth-child(3), .gd #smtTable td:nth-child(3){left:160px;min-width:70px}
.gd #smtTable th:nth-child(4), .gd #smtTable td:nth-child(4){left:230px;min-width:58px}
.gd #smtTable th:nth-child(5), .gd #smtTable td:nth-child(5){left:288px;min-width:48px}
.gd #smtTable th:nth-child(6), .gd #smtTable td:nth-child(6){left:336px;min-width:245px;box-shadow:5px 0 7px -6px #53657d}
.gd #siaTable th:nth-child(-n+7), .gd #siaTable td:nth-child(-n+7){position:sticky;background:#fff;z-index:4}
.gd #siaTable th:nth-child(-n+7){z-index:9}
.gd #siaTable th:nth-child(1), .gd #siaTable td:nth-child(1){left:0;min-width:55px}
.gd #siaTable th:nth-child(2), .gd #siaTable td:nth-child(2){left:55px;min-width:125px}
.gd #siaTable th:nth-child(3), .gd #siaTable td:nth-child(3){left:180px;min-width:125px}
.gd #siaTable th:nth-child(4), .gd #siaTable td:nth-child(4){left:305px;min-width:85px}
.gd #siaTable th:nth-child(5), .gd #siaTable td:nth-child(5){left:390px;min-width:235px}
.gd #siaTable th:nth-child(6), .gd #siaTable td:nth-child(6){left:625px;min-width:70px}
.gd #siaTable th:nth-child(7), .gd #siaTable td:nth-child(7){left:695px;min-width:48px;box-shadow:5px 0 7px -6px #53657d}
.gd #sdiTable tbody tr:hover td:nth-child(-n+7), .gd #smtTable tbody tr:hover td:nth-child(-n+6){background:#f5f9ff}
@media(max-width:900px){
.gd #sdiTable th:nth-child(n+4):nth-child(-n+7), .gd #sdiTable td:nth-child(n+4):nth-child(-n+7), .gd #smtTable th:nth-child(n+4):nth-child(-n+6), .gd #smtTable td:nth-child(n+4):nth-child(-n+6){position:static}
.gd .table-wrap:has(#sdiTable), .gd .table-wrap:has(#smtTable){max-height:70vh}
}
.gd .special-detail-section{border-top:1px solid var(--line);padding-top:11px;margin-top:11px}
.gd .special-detail-section h4{margin:0 0 7px;font-size:11.5px}
.gd .special-detail-text{font-size:10.5px;color:#48586d;line-height:1.55;white-space:pre-line}
.gd .special-meta-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.gd .special-meta{border:1px solid var(--line);border-radius:7px;padding:8px;background:#fafcff}
.gd .special-meta small{display:block;color:var(--muted);font-size:9px}
.gd .special-meta b{display:block;font-size:10.5px;margin-top:3px;word-break:break-word}
.gd .special-applicant{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.gd .special-response-box{border:1px solid #cfe4d5;background:#f7fcf8;border-radius:8px;padding:9px}
.gd .special-response-box.pending{border-color:#eed6a1;background:#fffbf2}
.gd .special-response-box small{font-size:9.5px;color:var(--muted)}
.gd .special-response-box p{font-size:10.3px;margin:5px 0 0;line-height:1.5}
.gd .smt-change-box{border:1px solid var(--line);border-radius:8px;padding:10px;margin-top:8px;background:#fbfcfe}
.gd .smt-change-box b{display:block;font-size:10.5px;margin-bottom:5px}
.gd .smt-change-box div{font-size:10.2px;color:#4d5d70;line-height:1.5}
@media(max-width:1300px){
.gd .special-doc-layout{grid-template-columns:1fr}
.gd .special-doc-side .panel{position:static}
}
@media(max-width:900px){
.gd .special-filters, .gd .special-kpis{grid-template-columns:1fr}
}
.gd .comm-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:14px}
.gd .comm-side .panel{position:sticky;top:86px}
.gd .comm-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:14px}
.gd .comm-kpi{background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow);padding:13px}
.gd .comm-kpi small{display:block;color:var(--muted);font-size:9.7px}
.gd .comm-kpi b{display:block;font-size:23px;margin-top:4px}
.gd .comm-filters{display:grid;grid-template-columns:1.35fr repeat(4,.8fr) auto;gap:8px;align-items:end}
.gd .comm-table{min-width:1750px}
.gd .comm-table.book-table{min-width:1900px}
.gd .log-selection-bar{display:flex;align-items:center;gap:9px;flex-wrap:wrap;padding:10px 12px;background:#f8fbff;border:1px solid var(--line);border-radius:10px;margin:0 0 9px}
.gd .log-selection-bar small{color:var(--muted);margin-right:auto}
.gd .log-select-cell{width:38px;min-width:38px;text-align:center!important}
.gd .log-select-cell input{width:16px;height:16px;cursor:pointer}
.gd .comm-table th, .gd .comm-table td{font-size:10px;padding:8px;vertical-align:top}
.gd .comm-table td.wrap{white-space:normal;min-width:190px;line-height:1.4}
.gd .comm-detail-section{border-top:1px solid var(--line);padding-top:11px;margin-top:11px}
.gd .comm-detail-section h4{margin:0 0 7px;font-size:11.5px}
.gd .comm-detail-text{font-size:10.5px;color:#48586d;line-height:1.55;white-space:pre-line}
.gd .comm-meta-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.gd .comm-meta{border:1px solid var(--line);border-radius:7px;padding:8px;background:#fafcff}
.gd .comm-meta small{display:block;color:var(--muted);font-size:9px}
.gd .comm-meta b{display:block;font-size:10.5px;margin-top:3px;word-break:break-word}
.gd .answer-chip{display:inline-flex;align-items:center;border-radius:6px;padding:4px 7px;font-size:9.5px;font-weight:800}
.gd .answer-yes{background:#e8f8ed;color:#238147}
.gd .answer-no{background:#fff2d9;color:#9a6900}
.gd .answer-na{background:#eef1f5;color:#667486}
.gd .days-alert{background:#fdecec;color:#b52d2d}
.gd .days-ok{background:#eef7ff;color:#2368a8}
@media(max-width:1300px){
.gd .comm-layout{grid-template-columns:1fr}
.gd .comm-side .panel{position:static}
}
@media(max-width:900px){
.gd .comm-filters, .gd .comm-kpis{grid-template-columns:1fr}
}
.gd .trans-layout{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:14px}
.gd .trans-side .panel{position:sticky;top:86px}
.gd .trans-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:14px}
.gd .trans-kpi{background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow);padding:13px}
.gd .trans-kpi small{display:block;color:var(--muted);font-size:9.7px}
.gd .trans-kpi b{display:block;font-size:23px;margin-top:4px}
.gd .trans-filters{display:grid;grid-template-columns:1.35fr repeat(4,.8fr) auto;gap:8px;align-items:end}
.gd .trans-table{min-width:1450px}
.gd .trans-table th, .gd .trans-table td{font-size:10px;padding:8px;vertical-align:top}
.gd .trans-table td.wrap{white-space:normal;min-width:220px;line-height:1.4}
.gd .trans-meta-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.gd .trans-meta{border:1px solid var(--line);border-radius:7px;padding:8px;background:#fafcff}
.gd .trans-meta small{display:block;color:var(--muted);font-size:9px}
.gd .trans-meta b{display:block;font-size:10.5px;margin-top:3px;word-break:break-word}
.gd .trans-detail-section{border-top:1px solid var(--line);padding-top:11px;margin-top:11px}
.gd .trans-detail-section h4{margin:0 0 7px;font-size:11.5px}
.gd .trans-detail-text{font-size:10.5px;color:#48586d;line-height:1.55}
@media(max-width:1300px){
.gd .trans-layout{grid-template-columns:1fr}
.gd .trans-side .panel{position:static}
}
@media(max-width:900px){
.gd .trans-filters, .gd .trans-kpis{grid-template-columns:1fr}
}
.gd .entry-hub{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.gd .entry-card{border:1px solid var(--line);border-radius:11px;background:#fff;box-shadow:var(--shadow);padding:15px;cursor:pointer;transition:.15s}
.gd .entry-card:hover{transform:translateY(-2px);border-color:#9fc4ef}
.gd .entry-card .entry-icon{width:38px;height:38px;border-radius:9px;display:flex;align-items:center;justify-content:center;background:#eef5ff;margin-bottom:10px}
.gd .entry-card .entry-icon svg{width:19px;height:19px}
.gd .entry-card h3{font-size:13px;margin:0 0 5px}
.gd .entry-card p{font-size:10.5px;color:var(--muted);line-height:1.45;margin:0}
.gd .entry-card .entry-action{margin-top:12px;font-size:10.5px;font-weight:800;color:#2368a8}
.gd .entry-intro{border:1px solid #cfe0f2;background:#f8fbff;border-radius:10px;padding:12px 14px;margin-bottom:14px;font-size:10.7px;color:#4a5f77;line-height:1.5}
.gd .entry-section-title{font-size:11px;font-weight:800;color:#536174;margin:17px 0 9px;text-transform:uppercase;letter-spacing:.03em}
.gd .entry-back{margin-bottom:12px}
.gd .specific-entry-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.gd .specific-entry-note{border:1px solid #d7e3f0;background:#fafcff;border-radius:9px;padding:10px;margin-bottom:12px;font-size:10.5px;color:#56687d;line-height:1.5}
.gd .sia-layout{display:grid;grid-template-columns:minmax(0,1fr) 370px;gap:14px}
.gd .sia-side .panel{position:sticky;top:86px}
.gd .sia-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:14px}
.gd .sia-kpi{background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow);padding:13px}
.gd .sia-kpi small{display:block;color:var(--muted);font-size:9.7px}
.gd .sia-kpi b{display:block;font-size:23px;margin-top:4px}
.gd .sia-filters{display:grid;grid-template-columns:1.35fr repeat(4,.8fr) auto;gap:8px;align-items:end}
.gd .sia-table{min-width:1850px}
.gd .sia-table th, .gd .sia-table td{font-size:10px;padding:8px;vertical-align:top}
.gd .sia-table td.wrap{white-space:normal;min-width:200px;line-height:1.4}
.gd .sia-meta-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.gd .sia-meta{border:1px solid var(--line);border-radius:7px;padding:8px;background:#fafcff}
.gd .sia-meta small{display:block;color:var(--muted);font-size:9px}
.gd .sia-meta b{display:block;font-size:10.5px;margin-top:3px;word-break:break-word}
.gd .sia-days{display:inline-flex;padding:4px 7px;border-radius:6px;background:#eef7ff;color:#2368a8;font-size:9.5px;font-weight:800}
@media(max-width:1100px){
.gd .entry-hub{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:800px){
.gd .entry-hub, .gd .specific-entry-grid, .gd .sia-kpis{grid-template-columns:1fr}
.gd .sia-layout{grid-template-columns:1fr}
.gd .sia-side .panel{position:static}
}
.gd .entry-track-block{margin-top:14px;border:1px solid #cfe0f2;border-radius:10px;overflow:hidden;background:#fff}
.gd .entry-track-head{padding:10px 12px;background:#f5f9ff;border-bottom:1px solid #d9e5f2;display:flex;justify-content:space-between;align-items:center;gap:10px}
.gd .entry-track-head h3{margin:0;font-size:12px}
.gd .entry-track-head small{font-size:9.5px;color:var(--muted)}
.gd .entry-track-body{padding:12px}
.gd .entry-response-note{border:1px solid #f0d39a;background:#fffaf0;border-radius:8px;padding:9px 10px;font-size:10px;color:#705f38;line-height:1.45;margin-bottom:10px}
.gd .specific-phase-banner{display:grid;grid-template-columns:1fr 34px 1fr;gap:9px;align-items:center;margin-bottom:14px}
.gd .specific-stage-note{border:1px solid #d9e5f2;background:#f8fbff;border-radius:8px;padding:9px 10px;font-size:10px;color:#576a80;line-height:1.45;margin-bottom:10px}
.gd .specific-stage-note.wait{border-color:#f0d39a;background:#fffaf0;color:#705f38}
.gd .specific-stage-note.done{border-color:#bddfc7;background:#f5fbf7;color:#3f7150}
.gd .specific-final-choice{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-bottom:10px}
.gd .specific-final-choice label{display:flex;gap:8px;align-items:flex-start;border:1px solid var(--line);border-radius:8px;padding:9px;background:#fff;cursor:pointer}
.gd .specific-final-choice label.selected{border-color:#e8bb3f;background:#fffdf4}
.gd .specific-final-choice b{display:block;font-size:10.7px}
.gd .specific-final-choice small{display:block;color:var(--muted);font-size:9.3px;line-height:1.4;margin-top:3px}
.gd .specific-final-choice input{margin-top:2px}
@media(max-width:800px){
.gd .specific-phase-banner{grid-template-columns:1fr}
.gd .specific-phase-banner .phase-arrow{display:none}
.gd .specific-final-choice{grid-template-columns:1fr}
}
.gd .dashboard-doc-groups{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}
.gd .dashboard-doc-card{border:1px solid var(--line);border-radius:10px;background:#fff;padding:13px;cursor:pointer;transition:.15s;box-shadow:0 2px 8px rgba(17,38,63,.04)}
.gd .dashboard-doc-card:hover{transform:translateY(-2px);border-color:#9fc4ef;box-shadow:0 7px 18px rgba(17,38,63,.08)}
.gd .dashboard-doc-card .hd{display:flex;align-items:center;justify-content:space-between;gap:9px}
.gd .dashboard-doc-card .doc-icon{width:35px;height:35px;border-radius:8px;display:grid;place-items:center;flex:none}
.gd .dashboard-doc-card .doc-icon svg{width:18px;height:18px}
.gd .dashboard-doc-card .doc-count{font-size:25px;font-weight:900;line-height:1}
.gd .dashboard-doc-card h4{font-size:11.5px;margin:9px 0 4px}
.gd .dashboard-doc-card p{font-size:9.8px;color:var(--muted);line-height:1.42;margin:0;min-height:28px}
.gd .dashboard-doc-card .foot{display:flex;align-items:center;justify-content:space-between;margin-top:10px;padding-top:8px;border-top:1px solid #edf1f5;font-size:9.5px}
.gd .dashboard-doc-card .foot b{color:#276cb1}
.gd .dashboard-contract-summary{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:10px;color:var(--muted)}
@media(max-width:1200px){
.gd .dashboard-doc-groups{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:900px){
.gd .dashboard-doc-groups{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:650px){
.gd .dashboard-doc-groups{grid-template-columns:1fr}
}
.gd .asbuilt-head-grid{display:grid;grid-template-columns:1.2fr repeat(4,1fr);gap:10px;margin-bottom:14px}
.gd .asbuilt-meta-card, .gd .asbuilt-kpi-card{border:1px solid var(--line);border-radius:10px;background:#fff;box-shadow:var(--shadow);padding:12px}
.gd .asbuilt-meta-card h3{font-size:12px;margin:0 0 8px}
.gd .asbuilt-meta-card .meta-line{display:flex;justify-content:space-between;gap:10px;padding:4px 0;border-bottom:1px solid #eef2f6;font-size:9.8px}
.gd .asbuilt-meta-card .meta-line:last-child{border-bottom:0}
.gd .asbuilt-kpi-card h4{font-size:10.5px;margin:0 0 8px;color:#4d5f73}
.gd .asbuilt-kpi-row{display:flex;justify-content:space-between;align-items:center;padding:4px 0;font-size:9.7px;border-bottom:1px solid #eef2f6}
.gd .asbuilt-kpi-row:last-child{border-bottom:0}
.gd .asbuilt-kpi-row b{font-size:13px}
.gd .asbuilt-tabs{display:flex;gap:7px;margin-bottom:10px;flex-wrap:wrap}
.gd .asbuilt-tabs button.active{background:#eaf3ff;border-color:#8eb8e8;color:#185fae}
.gd .asbuilt-table{min-width:1700px}
.gd .asbuilt-table.master{min-width:1950px}
.gd .asbuilt-table th, .gd .asbuilt-table td{font-size:10px;padding:8px;vertical-align:top}
.gd .asbuilt-table td.wrap{white-space:normal;min-width:220px;line-height:1.4}
.gd .asbuilt-zero{padding:26px;text-align:center;color:var(--muted);font-size:10.5px}
.gd .asbuilt-summary-note{border:1px solid #d6e4f2;background:#f8fbff;border-radius:8px;padding:9px 10px;font-size:10px;color:#53687f;line-height:1.5;margin-bottom:10px}
.gd .asbuilt-status-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:10px 0}
.gd .asbuilt-status-box{border:1px solid var(--line);border-radius:8px;padding:9px;background:#fafcff}
.gd .asbuilt-status-box small{display:block;font-size:9px;color:var(--muted)}
.gd .asbuilt-status-box b{font-size:17px}
@media(max-width:1200px){
.gd .asbuilt-head-grid{grid-template-columns:1fr 1fr}
.gd .asbuilt-status-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:700px){
.gd .asbuilt-head-grid, .gd .asbuilt-status-grid{grid-template-columns:1fr}
}
.gd .response-upload-box{border:1px dashed #9fb5cb;background:#f9fcff;border-radius:9px;padding:10px;}
.gd .response-upload-box label{display:block;font-size:10.5px;font-weight:800;color:#506176;margin-bottom:6px}
.gd .response-upload-box input[type=file]{width:100%;font-size:10px}
.gd .response-upload-box small{display:block;font-size:9.2px;color:var(--muted);line-height:1.45;margin-top:5px}
.gd .response-file-list{margin-top:7px;display:flex;gap:5px;flex-wrap:wrap}
.gd .response-file-chip{display:inline-flex;align-items:center;gap:4px;padding:4px 6px;border-radius:6px;background:#edf4fb;border:1px solid #d4e3f1;font-size:9px;color:#445d77;max-width:100%}
.gd .response-file-chip b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:230px}
.gd .dashboard-doc-card{position:relative}
.gd .dashboard-doc-card:after{content:"Abrir módulo";position:absolute;right:11px;top:10px;font-size:8.4px;font-weight:800;color:#7690aa;opacity:0;transition:.15s}
.gd .dashboard-doc-card:hover:after{opacity:1}
.gd .payment-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:14px}
.gd .payment-kpi{background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow);padding:13px}
.gd .payment-kpi small{display:block;color:var(--muted);font-size:9.6px}
.gd .payment-kpi b{display:block;font-size:23px;margin-top:4px}
.gd .payment-layout{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:14px}
.gd .payment-side .panel{position:sticky;top:86px}
.gd .payment-filters{display:grid;grid-template-columns:1.35fr repeat(3,.8fr) auto;gap:8px;align-items:end}
.gd .payment-table{min-width:1700px}
.gd .payment-table th, .gd .payment-table td{font-size:10px;padding:8px;vertical-align:top}
.gd .payment-table td.wrap{white-space:normal;min-width:210px;line-height:1.4}
.gd .payment-empty{padding:34px 18px;text-align:center;color:var(--muted);font-size:10.5px;line-height:1.55}
.gd .payment-empty b{display:block;color:#41546b;font-size:12px;margin-bottom:4px}
.gd .payment-meta{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.gd .payment-meta div{border:1px solid var(--line);background:#fafcff;border-radius:7px;padding:8px}
.gd .payment-meta small{display:block;color:var(--muted);font-size:9px}
.gd .payment-meta b{display:block;font-size:10.5px;margin-top:3px}
@media(max-width:1100px){
.gd .payment-kpis{grid-template-columns:repeat(2,1fr)}
.gd .payment-layout{grid-template-columns:1fr}
.gd .payment-side .panel{position:static}
}
@media(max-width:700px){
.gd .payment-kpis, .gd .payment-filters{grid-template-columns:1fr}
}
.gd .kpi.clickable, .gd .rp-kpi.clickable, .gd .rp-card.clickable, .gd .rp-alert-footer.clickable{cursor:pointer;transition:.15s;}
.gd .kpi.clickable:hover, .gd .rp-kpi.clickable:hover, .gd .rp-card.clickable:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(20,43,70,.10);border-color:#9fc4ef;}
.gd .rp-card.clickable .detail-link, .gd .rp-alert-footer.clickable{color:#1767c5;font-weight:800}
.gd .report-detail-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px}
.gd .report-detail-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:14px}
.gd .report-detail-stat{background:#fff;border:1px solid var(--line);border-radius:10px;padding:12px;box-shadow:var(--shadow)}
.gd .report-detail-stat small{display:block;color:var(--muted);font-size:9.5px}
.gd .report-detail-stat b{display:block;font-size:22px;margin-top:4px}
.gd .report-detail-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:14px}
.gd .report-detail-list{display:grid;gap:8px}
.gd .report-detail-row{display:grid;grid-template-columns:minmax(120px,1.15fr) 2fr auto;gap:10px;align-items:center;border:1px solid var(--line);border-radius:8px;padding:10px;background:#fff}
.gd .report-detail-stat.clickable, .gd .report-detail-row.clickable{cursor:pointer;transition:.15s ease}
.gd .report-detail-stat.clickable:hover, .gd .report-detail-row.clickable:hover{border-color:#2a72df;box-shadow:0 5px 16px rgba(25,71,130,.10);transform:translateY(-1px)}
.gd .report-detail-stat.active{border-color:#2a72df;background:#f2f7ff;box-shadow:0 0 0 2px rgba(42,114,223,.10)}
.gd .report-empty{padding:28px!important;text-align:center!important;color:var(--muted)}
.gd .report-detail-row .track{height:7px;border-radius:5px;background:#edf1f5;overflow:hidden}
.gd .report-detail-row .track i{display:block;height:100%;border-radius:5px}
.gd .report-detail-note{border:1px solid #d6e4f2;background:#f8fbff;border-radius:9px;padding:11px;font-size:10.3px;color:#52687f;line-height:1.55}
.gd .report-detail-table td, .gd .report-detail-table th{font-size:10px}
.gd .report-detail-actions{display:flex;gap:8px;flex-wrap:wrap}
@media(max-width:950px){
.gd .report-detail-summary{grid-template-columns:repeat(2,1fr)}
.gd .report-detail-grid{grid-template-columns:1fr}
}
@media(max-width:600px){
.gd .report-detail-summary{grid-template-columns:1fr}
.gd .report-detail-row{grid-template-columns:1fr}
}
.gd .proc-layout{display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:14px}
.gd .proc-side .panel{position:sticky;top:86px}
.gd .proc-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:14px}
.gd .proc-kpi{background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow);padding:13px}
.gd .proc-kpi small{display:block;color:var(--muted);font-size:9.7px}
.gd .proc-kpi b{display:block;font-size:23px;margin-top:4px}
.gd .proc-filters{display:grid;grid-template-columns:1.35fr repeat(4,.8fr) auto;gap:8px;align-items:end}
.gd .proc-table{min-width:2050px}
.gd .proc-table th, .gd .proc-table td{font-size:10px;padding:8px;vertical-align:top}
.gd .proc-table td.wrap{white-space:normal;min-width:240px;line-height:1.4}
.gd .proc-rev-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 7px;border-radius:7px;background:#eef5ff;color:#1f66b5;font-weight:800;font-size:9.5px}
.gd .proc-meta-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.gd .proc-meta{border:1px solid var(--line);border-radius:7px;padding:8px;background:#fafcff}
.gd .proc-meta small{display:block;color:var(--muted);font-size:9px}
.gd .proc-meta b{display:block;font-size:10.4px;margin-top:3px;word-break:break-word}
.gd .proc-rev-history{display:grid;gap:8px;margin-top:10px}
.gd .proc-rev-card{border:1px solid var(--line);border-radius:9px;padding:9px;background:#fff}
.gd .proc-rev-card.current{border-color:#9fc4ef;background:#f7fbff}
.gd .proc-rev-top{display:flex;justify-content:space-between;gap:8px;align-items:center;margin-bottom:7px}
.gd .proc-rev-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.gd .proc-rev-grid div{font-size:9.4px;color:#55687d}
.gd .proc-rev-grid b{display:block;color:#28394e;margin-top:2px}
.gd .proc-warning{display:inline-flex;padding:4px 7px;border-radius:6px;background:#fff3e8;color:#a85a10;font-size:9px;font-weight:800}
@media(max-width:1350px){
.gd .proc-layout{grid-template-columns:1fr}
.gd .proc-side .panel{position:static}
}
@media(max-width:900px){
.gd .proc-kpis, .gd .proc-filters{grid-template-columns:1fr}
}
.gd .proc-select-head{display:flex;align-items:center;gap:5px;white-space:nowrap}
.gd .proc-select-head small{font-size:8px;color:var(--muted)}
.gd .proc-selected-toolbar{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:10px;padding:9px 10px;border:1px solid #d7e4f1;background:#f8fbff;border-radius:9px}
.gd .proc-selected-toolbar .info{font-size:10px;color:#52677d}
.gd .proc-selected-toolbar .actions{display:flex;gap:7px;flex-wrap:wrap}
.gd .proc-trace{display:grid;gap:9px;margin-top:10px;position:relative}
.gd .proc-trace:before{content:"";position:absolute;left:14px;top:7px;bottom:7px;width:2px;background:#dce6f0}
.gd .proc-trace-item{position:relative;padding-left:36px}
.gd .proc-trace-dot{position:absolute;left:7px;top:9px;width:16px;height:16px;border-radius:50%;border:3px solid #fff;box-shadow:0 0 0 1px #cbd9e6;background:#2b73d2}
.gd .proc-trace-dot.obsolete{background:#96a2af}
.gd .proc-trace-card{border:1px solid var(--line);border-radius:9px;background:#fff;padding:9px}
.gd .proc-trace-card.obsolete{background:#fafafa;border-color:#e1e5e9}
.gd .proc-trace-top{display:flex;justify-content:space-between;gap:8px;align-items:center;margin-bottom:7px}
.gd .proc-obsolete{display:inline-flex;align-items:center;padding:4px 7px;border-radius:6px;background:#eef0f2;color:#6f7b87;font-size:9px;font-weight:900}
.gd .proc-current{display:inline-flex;align-items:center;padding:4px 7px;border-radius:6px;background:#e8f7ed;color:#2b7d48;font-size:9px;font-weight:900}
.gd .proc-pending{display:inline-flex;align-items:center;padding:4px 7px;border-radius:6px;background:#fff4df;color:#9c6900;font-size:9px;font-weight:900}
.gd .proc-stage-lock{border:1px dashed #d8c38d;background:#fffaf0;border-radius:9px;padding:10px 11px;font-size:10px;color:#6d603b;line-height:1.5;margin:10px 0}
.gd .proc-stage-disabled{opacity:.56;pointer-events:none;filter:grayscale(.15)}
.gd .proc-response-files{border:1px dashed #a9bfd5;background:#f9fcff;border-radius:8px;padding:10px}
.gd .proc-response-files small{display:block;font-size:9px;color:var(--muted);margin-top:5px}
.gd .kpi.clickable{cursor:pointer;transition:.15s;position:relative}
.gd .kpi.clickable:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(20,43,70,.10);border-color:#9fc4ef}
.gd .kpi.clickable:after{content:"Abrir";position:absolute;right:10px;top:8px;font-size:8px;font-weight:800;color:#6d8baa;opacity:0;transition:.15s}
.gd .kpi.clickable:hover:after{opacity:1}
.gd .live-empty{padding:28px;text-align:center;border:1px dashed #b9c8dc;border-radius:14px;color:#61738d}
.gd .live-saving{opacity:.72;pointer-events:none}
.gd .cc-generator{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:14px;margin:14px 0}
.gd .cc-selected-doc{border:1px solid #cddaea;border-radius:12px;background:#f8fbff;padding:14px;min-height:142px}
.gd .cc-selected-doc.empty{display:grid;place-items:center;color:var(--muted);border-style:dashed}
.gd .cc-selected-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.gd .cc-selected-head h3{margin:0 0 5px;font-size:15px}
.gd .cc-stamp-preview{width:min(100%,380px);margin:12px auto 0;background:#fff;border:2.5px solid #357ab7;border-radius:4px;padding:9px 14px 11px;text-align:center;box-shadow:0 1px 3px rgba(16,35,63,.08)}
.gd .cc-stamp-brand{display:flex;flex-direction:column;align-items:center;gap:0;margin-bottom:2px}
.gd .cc-stamp-brand img{height:34px;width:auto;display:block;margin:0 auto}
.gd .cc-stamp-title{font-weight:800;font-size:15px;letter-spacing:.5px;color:#000;padding:4px 0;margin:6px 0 8px}
.gd .cc-stamp-row{display:flex;justify-content:center;gap:16px;flex-wrap:wrap;font-size:12px;color:#000;margin-top:6px}
.gd .cc-stamp-preview .cc-value{color:#000;font-weight:700;font-size:12px}
.gd .cc-auto-number{font-size:24px;font-weight:900;color:#1768c5;background:#edf5ff;border:1px solid #b9d4f4;border-radius:9px;padding:7px 12px;text-align:center}
.gd .cc-log-actions{display:flex;gap:6px;flex-wrap:wrap}
.gd .cc-log-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}
.gd .cc-log-tabs .active{background:#1768c5;color:#fff;border-color:#1768c5}
.gd .cc-person-summary{display:grid;grid-template-columns:minmax(250px,.7fr) minmax(0,1.3fr);gap:12px;margin-bottom:12px}
.gd .cc-person-card{border:1px solid var(--line);border-radius:10px;padding:13px;background:#fff}
.gd .cc-person-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.gd .cc-person-kpis div{border:1px solid var(--line);border-radius:9px;padding:10px;background:#f8fbff}
.gd .cc-person-kpis small{display:block;color:var(--muted)}
.gd .cc-person-kpis b{display:block;font-size:22px;margin-top:4px}
@media(max-width:900px){
.gd .cc-generator, .gd .cc-person-summary{grid-template-columns:1fr}
.gd .cc-person-kpis{grid-template-columns:repeat(2,1fr)}
.gd .cc-stamp-row{font-size:9px;gap:10px}
}
.gd .cc-grid-table{border-collapse:collapse;width:100%}
.gd .cc-grid-table th, .gd .cc-grid-table td{border:1px solid #c9d4e0;padding:8px 9px}
.gd .cc-grid-table thead th{background:#f3f6fa}
.gd .cc-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:16px}
.gd .cc-filter-card{background:#fff;border:1px solid var(--line);border-radius:11px;padding:14px 16px;box-shadow:var(--shadow);cursor:pointer;min-height:86px;display:flex;flex-direction:column;justify-content:center}
.gd .cc-filter-card.active{border:2px solid #2678e8;background:#f5f9ff}
.gd .cc-filter-card small{display:block;color:#51627a;font-size:11px;line-height:1.3}
.gd .cc-filter-card b{display:block;font-size:24px;line-height:1;margin:7px 0 5px;color:#0c2340}
.gd .cc-filter-card .green{color:#18a957}
.gd .cc-filter-card .orange{color:#ef8500}
.gd .cc-filter-card .red{color:#e33f46}
.gd .cc-log-actions .btn{min-height:37px}
.gd .cc-record-document{background:#fff;border:2px solid #244f7a;color:#10233f}
.gd .cc-record-document .record-header{display:grid;grid-template-columns:1fr 210px;border-bottom:1px solid #244f7a}
.gd .cc-record-document .record-header>div{padding:14px;text-align:center;font-weight:800}
.gd .cc-record-document .record-header .meta{border-left:1px solid #244f7a;text-align:left;font-size:11px;line-height:1.7}
.gd .cc-record-document .doc-line{padding:12px;border-bottom:1px solid #244f7a;font-size:12px}
.gd .cc-record-document table{width:100%;border-collapse:collapse}
.gd .cc-record-document th, .gd .cc-record-document td{border:1px solid #94aac0;padding:8px;font-size:10px;text-align:center}
.gd .cc-record-document th{background:#eaf1f8}
.gd .cc-record-document .signature-img{max-width:150px;max-height:55px}
@media(max-width:1000px){
.gd .cc-filter-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:650px){
.gd .cc-filter-grid{grid-template-columns:1fr}
.gd .cc-record-document{overflow:auto}
.gd .cc-record-document .record-header{grid-template-columns:1fr}
.gd .cc-record-document .record-header .meta{border-left:0;border-top:1px solid #244f7a}
}
.gd .internal-demo-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.gd .internal-demo-step{display:flex;align-items:center;gap:11px;text-align:left;border:1px solid #cddff3;border-radius:11px;background:#f8fbff;padding:12px;color:var(--text);transition:.16s}
.gd .internal-demo-step:hover{border-color:#4387dc;box-shadow:0 4px 14px rgba(29,109,226,.1);transform:translateY(-1px)}
.gd .internal-demo-step>b{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:var(--blue);color:#fff;flex:none}
.gd .internal-demo-step strong, .gd .internal-demo-step small{display:block}
.gd .internal-demo-step strong{font-size:12px}
.gd .internal-demo-step small{font-size:10px;color:var(--muted);margin-top:3px;line-height:1.35}
.gd .mobile-nav-backdrop{display:none}
@media(max-width:800px){
.gd, .gd{width:100%;max-width:100%;overflow-x:hidden}
.gd{font-size:13px;-webkit-text-size-adjust:100%}
.gd .app{display:block;min-height:100dvh}
.gd .main{width:100%;min-width:0}
.gd .sidebar, .gd .app.sidebar-hidden .sidebar{top:0;bottom:0;height:100dvh;left:-270px;width:min(82vw,270px);z-index:2200;box-shadow:16px 0 38px rgba(3,15,30,.28)}
.gd .sidebar.open, .gd .app.sidebar-hidden .sidebar.open{left:0}
.gd .mobile-nav-backdrop{position:fixed;inset:0;background:rgba(3,15,30,.48);z-index:2100}
.gd .mobile-nav-backdrop.show{display:block}
.gd .nav-item{min-height:44px;padding:12px}
.gd .topbar{height:62px;padding:7px 9px;gap:8px;z-index:2000}
.gd #menuBtn{display:grid;flex:0 0 42px;width:42px;height:42px;font-size:19px}
.gd .project-box{min-width:0;flex:1;padding:5px 8px;overflow:hidden}
.gd .project-box label{font-size:8px}
.gd .project-box select{font-size:11px;white-space:nowrap;text-overflow:ellipsis}
.gd .top-actions{margin-left:0;gap:5px}
.gd .top-actions>.icon-btn{display:none}
.gd .profile{padding-left:0}
.gd .profile .avatar{width:36px;height:36px;font-size:11px}
.gd .content{width:100%;padding:14px 10px 84px}
.gd .page-head{display:block;margin-bottom:13px}
.gd .page-head h1{font-size:21px;line-height:1.15}
.gd .page-head p{font-size:11px;line-height:1.45}
.gd .page-head>div:last-child, .gd .page-head>.demo-pill{margin-top:10px}
.gd .demo-pill{display:inline-flex;white-space:normal}
.gd .panel, .gd .form-section, .gd .kpi, .gd .type-card{border-radius:10px}
.gd .panel-head, .gd .copy-card-head, .gd .db-panel-head{padding:12px;align-items:flex-start;flex-wrap:wrap}
.gd .panel-body, .gd .copy-card-body, .gd .modal-body{padding:12px}
.gd .cards, .gd .cards-5, .gd .proc-kpis, .gd .special-kpis, .gd .comm-kpis, .gd .trans-kpis, .gd .sia-kpis, .gd .payment-kpis, .gd .db-kpis, .gd .rp-kpis{grid-template-columns:1fr 1fr!important;gap:8px}
.gd .kpi{padding:11px;gap:8px;min-width:0}
.gd .kpi-icon{width:36px;height:36px}
.gd .kpi .value{font-size:20px}
.gd .kpi .label{font-size:10px}
.gd .kpi .sub{font-size:9px}
.gd .grid-2, .gd .grid-3, .gd .dashboard-layout, .gd .log-layout, .gd .internal-layout, .gd .proc-layout, .gd .db-layout, .gd .rp-grid, .gd .report-detail-grid{grid-template-columns:1fr!important}
.gd .filters, .gd .form-grid, .gd .proc-filters, .gd .log-filter-grid, .gd .trace-filters, .gd .rp-filters, .gd .special-filters, .gd .comm-filters, .gd .trans-filters, .gd .sia-filters, .gd .payment-filters{grid-template-columns:1fr!important}
.gd .field input, .gd .field select, .gd .field textarea{min-height:44px;font-size:16px;padding:10px}
.gd .btn{min-height:42px;padding:10px 12px;white-space:normal;text-align:center}
.gd .form-actions, .gd .record-drawer-actions, .gd .report-detail-actions, .gd .proc-selected-toolbar .actions{display:grid;grid-template-columns:1fr;width:100%;gap:8px}
.gd .form-actions .btn, .gd .record-drawer-actions .btn, .gd .report-detail-actions .btn, .gd .proc-selected-toolbar .actions .btn{width:100%}
.gd .modal{padding:0;align-items:flex-end}
.gd .modal-box{width:100%;max-width:none;max-height:94dvh;border-radius:16px 16px 0 0}
.gd .modal-head{position:sticky;top:0;background:#fff;z-index:3;padding:13px 14px}
.gd .close{min-width:42px;min-height:42px}
.gd .record-drawer{inset:62px 0 0 0!important;width:100%!important;max-height:none!important;border:0;border-radius:0;z-index:2050}
.gd .record-drawer-head{padding:12px}
.gd .record-drawer-body{padding:12px 12px 90px}
.gd .record-drawer-actions{position:sticky;bottom:0;background:#fff;padding:10px 12px;z-index:4}
.gd .record-file-summary{align-items:center}
.gd .record-download-grid{grid-template-columns:1fr}
.gd .record-download-grid .wide{grid-column:span 1}
.gd .revision-list{padding-left:22px}
.gd .revision-item:before{left:-22px}
.gd .revision-grid, .gd .proc-rev-grid, .gd .record-detail-grid{grid-template-columns:1fr}
.gd .internal-journey-grid, .gd .internal-route-grid{grid-template-columns:1fr!important}
.gd .workflow{padding-bottom:14px;scroll-snap-type:x proximity}
.gd .step{min-width:76vw;scroll-snap-align:start}
.gd .internal-demo-steps{grid-template-columns:1fr}
.gd .internal-demo-step{min-height:62px}
.gd .table-wrap{width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain;border-radius:8px}
.gd .table-wrap>table:not(.mobile-card-table){min-width:760px}
.gd .table-wrap:has(>table:not(.mobile-card-table)){background:linear-gradient(90deg,#fff 30%,rgba(255,255,255,0)),linear-gradient(90deg,rgba(255,255,255,0),#fff 70%) 100% 0,radial-gradient(farthest-side at 0 50%,rgba(15,35,63,.18),transparent),radial-gradient(farthest-side at 100% 50%,rgba(15,35,63,.18),transparent) 100% 0;background-repeat:no-repeat;background-size:35px 100%,35px 100%,12px 100%,12px 100%;background-attachment:local,local,scroll,scroll}
.gd table.mobile-card-table{min-width:0;border-collapse:separate;border-spacing:0 10px;background:transparent}
.gd table.mobile-card-table thead{display:none}
.gd table.mobile-card-table tbody, .gd table.mobile-card-table tr, .gd table.mobile-card-table td{display:block;width:100%}
.gd table.mobile-card-table tr{border:1px solid var(--line);border-radius:10px;background:#fff;padding:6px 10px;box-shadow:0 2px 8px rgba(21,45,80,.05)}
.gd table.mobile-card-table td{border:0;border-bottom:1px solid #edf0f4;padding:8px 0;display:grid;grid-template-columns:minmax(105px,38%) 1fr;gap:10px;align-items:start;white-space:normal;word-break:break-word;text-align:left}
.gd table.mobile-card-table td:last-child{border-bottom:0}
.gd table.mobile-card-table td:before{content:attr(data-mobile-label);font-size:9px;line-height:1.35;color:var(--muted);font-weight:800;text-transform:uppercase}
.gd table.mobile-card-table td[colspan]:before{display:none}
.gd table.mobile-card-table td .btn{width:100%;margin:3px 0}
.gd .toast{left:10px;right:10px;bottom:72px;max-width:none;text-align:center}
}
@media(max-width:420px){
.gd .cards, .gd .cards-5, .gd .proc-kpis, .gd .special-kpis, .gd .comm-kpis, .gd .trans-kpis, .gd .sia-kpis, .gd .payment-kpis, .gd .db-kpis, .gd .rp-kpis{grid-template-columns:1fr!important}
.gd .page-head h1{font-size:19px}
.gd .record-file-summary{align-items:flex-start}
}

/* ── Marco de CGC (scripts/documental-marco.css) ────────────────────
   La maqueta es una aplicación de pantalla completa con su propio menú
   y barra. Dentro de la plataforma no trae ninguno de los dos: pinta en
   el contenido como cualquier módulo, y su índice documental (1.0–26.0)
   es una vista (gdIndiceView). Menú y barra siguen en el DOM, ocultos,
   porque el script los lee al arrancar. */
main:has(#v-documentos.active){max-width:none}
/* La columna 1fr de la plataforma crece hasta la tabla más ancha del
   módulo y arrastra la página entera (en móvil, a casi el doble). */
#app:has(#v-documentos.active){grid-template-columns:236px minmax(0,1fr)}
@media (max-width:820px){ #app:has(#v-documentos.active){grid-template-columns:minmax(0,1fr)} }
.gd .app, .gd .app.sidebar-hidden{display:block;min-height:0;background:transparent}
.gd .sidebar, .gd .topbar, .gd .mobile-nav-backdrop{display:none !important}
.gd .main{min-width:0}
.gd .content{padding:0 0 30px;max-width:none}
.gd .gd-indice-buscar{display:flex;gap:8px;margin:0 0 14px}
.gd .gd-indice-buscar input{flex:1;min-width:0;padding:9px 12px;border:1px solid var(--line);border-radius:var(--r);background:var(--card);color:var(--text);font:inherit}
.gd .gd-indice{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}
.gd .gd-indice section{background:var(--card);border:1px solid var(--line);border-radius:var(--r2);padding:12px 14px}
.gd .gd-indice h3{font-size:13px;margin:0 0 8px}
.gd .gd-indice ul{list-style:none;margin:0;padding:0}
.gd .gd-indice li button{display:block;width:100%;text-align:left;border:0;background:none;color:var(--text);font:inherit;font-size:12.5px;padding:5px 6px;border-radius:6px;cursor:pointer}
.gd .gd-indice li button:hover{background:var(--bg)}
/* Un solo proyecto por ahora (30-sep): el selector queda en el DOM
   porque la maqueta lo lee, pero no se muestra. */
.gd .project-box{display:none}
.gd .footer-note{display:none}
/* La maqueta pinta fondos blancos fijos en cientos de reglas: con el
   tema oscuro el texto claro quedaba sobre blanco. El módulo se queda
   siempre en claro, como un documento abierto dentro de la plataforma. */
:root[data-theme="dark"] .gd{
  color-scheme:light;
  --bg:#f4f7fb; --surface:#ffffff; --surface2:#f8fafc; --surface3:#eef2f7;
  --line:#e2e8f0; --line2:#cbd5e1; --field-line:#94a3b8;
  --ink:#10233f; --ink2:#4a5b73; --ink3:#6c7a90;
  --marca:#f28b0c; --marca-ambar:#fcb424;
  --ok:#17804a; --ok-bg:#e3f6ea; --warn:#8a6100; --warn-bg:#fff4d6;
  --bad:#c93a3a; --bad-bg:#fde8e8; --c1:#1d6de2; --c2:#f28b0c; --c3:#27a75a; --c4:#7655c5; --c5:#1a9bb8;
}
:root[data-theme="dark"] #v-documentos > .gd{border-radius:var(--r2);padding:12px}
/* Vista previa del timbre: el JPG oficial con los valores encima, en las
   mismas posiciones que usa el PDF (TIMBRE_CC, documentos-cgc.js). */
.gd .cc-stamp-png{position:relative;padding:0;border:0;background:none;container-type:inline-size;width:min(100%,420px)}
.gd .cc-stamp-png img{display:block;width:100%;height:auto}
.gd .cc-stamp-png .cc-value{position:absolute;transform:translateY(-100%);text-align:center;font-size:2.42cqw;line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#08141f}
.gd-remoto{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 12px;padding:10px 14px;border:1px solid var(--warn);background:var(--warn-bg);color:var(--ink);border-radius:var(--r)}
@media(max-width:800px){
  .gd .content{padding:0 0 24px}
}
