﻿
  :root{
    --bg:#EEF1F8;
    --panel:#FFFFFF;
    --panel-alt:#F6F7FB;
    --line:#E4E7F0;
    --text:#1C1E2A;
    --text-soft:#6B7280;
    --navy:#12142B;
    --navy-soft:#1C1F3B;
    --blue:#3E6BFF;
    --blue-deep:#2A4FDB;
    --purple:#8B5CF6;
    --amber:#F5A623;
    --green:#22C55E;
    --red:#EF4444;
    --pink:#EC4899;
    --cyan:#06B6D4;
    --mono:'Space Mono', monospace;
    --sans:'Manrope', sans-serif;
  }
  *{box-sizing:border-box;}
  body{margin:0;font-family:var(--sans);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;}
  .app{display:flex;min-height:100vh;}
  .main{flex:1;min-width:0;display:flex;flex-direction:column;}
  ::-webkit-scrollbar{width:6px;height:6px;}
  ::-webkit-scrollbar-thumb{background:#C7CCDB;border-radius:4px;}

  /* ===== SIDEBAR (persistente, estilo RHID) ===== */
  .sidebar{width:230px;flex-shrink:0;background:var(--navy);color:#fff;padding:18px 0;overflow-y:auto;position:sticky;top:0;height:100vh;}
  .sidebar .drawer-brand{padding:0 18px 18px;}
  .sidebar .drawer-item{color:#C6C9E0;}
  .sidebar .drawer-item:hover{background:rgba(255,255,255,0.06);}
  .sidebar .drawer-item.active{background:rgba(255,255,255,0.08);color:#fff;border-right:3px solid var(--blue);}

  /* ===== LOGIN ===== */
  .login-screen{min-height:100vh;position:relative;overflow:hidden;display:flex;align-items:flex-end;justify-content:center;background:#05060A;}
  .login-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;animation:kenburns 22s ease-in-out infinite alternate;opacity:0.9;}
  @keyframes kenburns{0%{transform:scale(1) translate(0,0);}100%{transform:scale(1.14) translate(-1.5%,-2%);}}
  .login-glow{position:absolute;inset:0;
    background:radial-gradient(circle at 30% 30%, rgba(62,107,255,0.28), transparent 45%),
               radial-gradient(circle at 75% 65%, rgba(139,92,246,0.22), transparent 45%),
               linear-gradient(180deg, rgba(5,6,10,0.1) 0%, rgba(5,6,10,0.6) 55%, rgba(5,6,10,0.96) 100%);
    animation:pulseGlow 5s ease-in-out infinite;}
  @keyframes pulseGlow{0%,100%{opacity:1;}50%{opacity:0.72;}}
  .login-scan{position:absolute;left:0;right:0;height:2px;background:linear-gradient(90deg, transparent, rgba(6,182,212,0.65), transparent);animation:scan 6s linear infinite;}
  @keyframes scan{0%{top:0%;}100%{top:100%;}}
  .login-content{position:relative;z-index:2;width:100%;max-width:400px;padding:0 20px 42px;animation:riseIn 1s ease-out;}
  @keyframes riseIn{from{opacity:0;transform:translateY(22px);}to{opacity:1;transform:translateY(0);}}
  .login-logo{width:64px;height:64px;object-fit:contain;margin-bottom:14px;}
  .login-eyebrow{color:var(--cyan);font-size:12px;letter-spacing:0.06em;font-weight:700;margin-bottom:6px;}
  .login-title{color:#F6F4EE;font-size:26px;font-weight:800;margin:0 0 22px;letter-spacing:-0.01em;}
  .login-card{background:rgba(255,255,255,0.08);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,0.14);border-radius:14px;padding:18px;}
  .login-card label{display:block;font-size:11.5px;color:#D7D6CE;margin-bottom:6px;font-weight:700;letter-spacing:0.02em;}
  .login-card input{width:100%;padding:11px 12px;border-radius:9px;border:1px solid rgba(255,255,255,0.18);background:rgba(255,255,255,0.08);color:#F6F4EE;font-family:var(--sans);font-size:14.5px;margin-bottom:14px;}
  .login-card input::placeholder{color:#9694A0;}
  .login-card input:focus{outline:none;border-color:var(--blue);}
  .login-btn{width:100%;padding:13px;border:none;border-radius:9px;background:linear-gradient(90deg,var(--blue),var(--purple));color:#fff;font-weight:800;font-size:14.5px;cursor:pointer;font-family:var(--sans);}
  .login-error{color:var(--red);font-size:12.5px;margin:-4px 0 12px;min-height:14px;}

  /* ===== TOP BAR ===== */
  header.top{background:var(--panel);color:var(--text);padding:14px 22px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:14px;}
  header.top .brand{display:flex;align-items:center;gap:9px;min-width:0;}
  .brand-logo{width:32px;height:32px;object-fit:contain;flex-shrink:0;}
  header.top .brand b{font-size:15px;font-weight:800;letter-spacing:-0.01em;}
  header.top .top-right{display:flex;align-items:center;gap:14px;flex-shrink:0;}
  header.top .who{font-size:12px;color:var(--text-soft);text-align:right;font-weight:700;}
  header.top .who-link{font-size:11.5px;color:var(--text-soft);text-decoration:none;}
  header.top .logout{font-size:11.5px;color:var(--red);text-decoration:underline;cursor:pointer;}

  .content{padding:20px 24px 0;max-width:1180px;width:100%;margin:0 auto;}

  nav.tabs{display:flex;gap:6px;overflow-x:auto;padding-bottom:4px;margin-bottom:14px;}
  nav.tabs button{flex:0 0 auto;display:flex;align-items:center;gap:6px;border:1px solid var(--line);background:var(--panel);padding:9px 13px;font-family:var(--sans);font-size:12.5px;font-weight:700;color:var(--text-soft);border-radius:9px;cursor:pointer;white-space:nowrap;}
  nav.tabs button .ic{font-size:14px;}
  nav.tabs button.active{background:var(--navy);color:#fff;border-color:var(--navy);}

  /* ---- Menu / breadcrumb ---- */
  .menu-btn{display:none;width:34px;height:34px;border-radius:8px;border:none;background:var(--panel-alt);color:var(--text);font-size:16px;cursor:pointer;flex-shrink:0;}
  .mark-mobile, .brand-title-mobile{display:none;}
  .breadcrumb{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--text-soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
  .breadcrumb b{color:var(--text);}

  @media (max-width:880px){
    .sidebar{display:none;}
    .menu-btn{display:inline-flex;align-items:center;justify-content:center;}
    .mark-mobile, .brand-title-mobile{display:block;}
    .breadcrumb{display:none;}
    .content{padding:16px 14px 0;}
    header.top{padding:12px 14px;}
  }
  .drawer-overlay{position:fixed;inset:0;background:rgba(10,11,20,0.55);z-index:60;display:flex;}
  .drawer{width:78%;max-width:290px;background:var(--panel);height:100%;overflow-y:auto;padding:16px 0;animation:drawerIn 0.18s ease-out;}
  @keyframes drawerIn{from{transform:translateX(-14px);opacity:0.5;}to{transform:translateX(0);opacity:1;}}
  .drawer-brand{display:flex;align-items:center;gap:9px;padding:0 16px 16px;border-bottom:1px solid var(--line);margin-bottom:10px;}
  .drawer-brand .brand-logo{width:32px;height:32px;}
  .drawer-group{padding:10px 16px 4px;font-size:10.5px;text-transform:uppercase;letter-spacing:0.05em;color:#A6ABBB;font-weight:800;}
  .drawer-item{display:flex;align-items:center;gap:11px;padding:10px 16px;font-size:13.5px;font-weight:600;color:var(--text);cursor:pointer;}
  .drawer-item .ic{width:20px;text-align:center;font-size:15px;}
  .drawer-item.active{background:var(--panel-alt);color:var(--blue);border-right:3px solid var(--blue);}
  .drawer-close{margin-left:auto;}

  /* ---- Avatar photo ---- */
  .avatar{overflow:hidden;}
  .avatar img{width:100%;height:100%;object-fit:cover;}
  .photo-upload{display:flex;align-items:center;gap:12px;margin-bottom:14px;}
  .photo-preview{width:64px;height:64px;border-radius:50%;overflow:hidden;background:var(--panel-alt);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--text-soft);font-size:11px;}
  .photo-preview img{width:100%;height:100%;object-fit:cover;}

  /* ---- Documentos ---- */
  .doc-group{margin-bottom:16px;}
  .doc-group-title{font-size:11.5px;font-weight:800;color:var(--text-soft);text-transform:uppercase;letter-spacing:0.03em;margin:0 0 8px;display:flex;align-items:center;gap:6px;}
  .doc-item{display:flex;align-items:center;gap:10px;background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:10px 12px;margin-bottom:8px;}
  .doc-item .dic{width:34px;height:34px;border-radius:8px;background:var(--panel-alt);display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0;}
  .doc-item .di{flex:1;min-width:0;}
  .doc-item .di b{font-size:13px;display:block;}
  .doc-item .di div{font-size:11px;color:var(--text-soft);margin-top:1px;}
  .doc-item .da{display:flex;gap:6px;flex-shrink:0;}

  /* ---- Financeiro ---- */
  .fin-month{margin-bottom:14px;}
  .fin-month-head{display:flex;justify-content:space-between;align-items:center;padding:8px 4px;font-size:13px;font-weight:800;}
  .fin-item{display:flex;justify-content:space-between;align-items:center;background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:10px 12px;margin-bottom:6px;font-size:12.5px;}
  .fin-item .fi-tipo{font-weight:700;}
  .fin-item .fi-desc{color:var(--text-soft);font-size:11px;margin-top:1px;}
  .fin-item .fi-valor{font-family:var(--mono);font-weight:700;}
  .fin-item .fi-valor.ganho{color:var(--green);}
  .fin-item .fi-valor.desconto{color:var(--red);}
  .barchart{display:flex;align-items:flex-end;gap:8px;height:120px;padding:10px 4px 0;}
  .barchart .bc-col{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;}
  .barchart .bc-bar{width:100%;max-width:26px;border-radius:5px 5px 0 0;background:linear-gradient(180deg,var(--blue),var(--purple));min-height:3px;}
  .barchart .bc-label{font-size:9px;color:var(--text-soft);margin-top:5px;text-align:center;}
  .barchart .bc-val{font-size:9px;color:var(--text);font-weight:700;margin-bottom:3px;}

  .panel{display:none;}
  .panel.active{display:block;}
  .empty-state{text-align:center;padding:36px 20px;background:var(--panel);border:1px dashed var(--line);border-radius:12px;color:var(--text-soft);font-size:13.5px;}

  /* ---- Alerts ---- */
  .alert{border-radius:10px;padding:12px 14px;margin-bottom:14px;font-size:13px;font-weight:600;display:flex;gap:10px;align-items:flex-start;border:1px solid;}
  .alert-red{background:#FEF2F2;border-color:#FCA5A5;color:#B91C1C;}
  .alert-amber{background:#FFFBEB;border-color:#FCD34D;color:#92400E;}
  .alert-green{background:#F0FDF4;border-color:#86EFAC;color:#166534;}
  .alert small{display:block;font-weight:400;color:#8A8577;margin-top:2px;}

  /* ---- Employee header card (used in Painel & Espelho) ---- */
  .emp-header{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:16px;margin-bottom:14px;}
  .emp-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;gap:8px;flex-wrap:wrap;}
  .emp-toolbar .tools{display:flex;gap:8px;}
  .emp-toolbar .count{font-size:11.5px;color:var(--text-soft);}
  .emp-main{display:flex;align-items:center;gap:12px;}
  .emp-nav-btn{border:1px solid var(--line);background:var(--panel-alt);border-radius:50%;width:30px;height:30px;flex-shrink:0;cursor:pointer;font-size:15px;color:var(--text-soft);}
  .avatar{width:46px;height:46px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:800;font-size:16px;flex-shrink:0;}
  .emp-info{flex:1;min-width:0;}
  .emp-info b{font-size:15px;}
  .emp-info div{font-size:12px;color:var(--text-soft);margin-top:2px;}
  .emp-stats{display:flex;gap:14px;align-items:center;margin-top:14px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:14px;}
  .donut-wrap{display:flex;align-items:center;gap:10px;}
  .donut{width:64px;height:64px;border-radius:50%;position:relative;flex-shrink:0;}
  .donut::after{content:'';position:absolute;inset:11px;background:var(--panel);border-radius:50%;}
  .donut-legend{font-size:11px;color:var(--text-soft);}
  .donut-legend div{display:flex;align-items:center;gap:5px;margin-bottom:2px;}
  .donut-legend .sw{width:8px;height:8px;border-radius:2px;}
  .mini-stat{min-width:90px;}
  .mini-stat .v{font-family:var(--mono);font-size:16px;font-weight:700;}
  .mini-stat .l{font-size:10.5px;color:var(--text-soft);}

  /* ---- Clock ---- */
  .clock-card{background:linear-gradient(160deg,var(--navy-soft),var(--navy) 75%);color:#fff;border-radius:16px;padding:24px 18px 20px;text-align:center;margin-bottom:14px;position:relative;overflow:hidden;}
  .clock-card::before{content:'';position:absolute;top:-40%;right:-20%;width:60%;height:120%;background:radial-gradient(circle,rgba(139,92,246,0.28),transparent 70%);}
  .clock-date{font-size:12.5px;color:#B7BADB;margin-bottom:4px;text-transform:capitalize;position:relative;}
  .clock-time{font-family:var(--mono);font-size:40px;font-weight:700;letter-spacing:0.02em;font-variant-numeric:tabular-nums;position:relative;}
  .punch-actions{display:flex;gap:8px;margin-top:16px;position:relative;}
  .punch-btn{flex:1;padding:13px 8px;border:none;border-radius:10px;font-family:var(--sans);font-weight:800;font-size:13.5px;cursor:pointer;}
  .punch-btn.facial{background:linear-gradient(90deg,var(--purple),var(--pink));color:#fff;}
  .punch-btn.simple{background:rgba(255,255,255,0.1);color:#fff;border:1px solid rgba(255,255,255,0.2);}
  .punch-hint{font-size:11.5px;color:#B7BADB;margin-top:9px;position:relative;}
  .punch-status{font-size:11.5px;color:var(--cyan);margin-top:6px;min-height:14px;position:relative;}

  .chips{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0;}
  .chip{background:var(--panel-alt);border:1px solid var(--line);border-radius:20px;padding:6px 10px 6px 12px;font-size:12.5px;display:flex;align-items:center;gap:7px;cursor:pointer;}
  .chip b{font-family:var(--mono);font-weight:700;}
  .chip .dot{width:7px;height:7px;border-radius:50%;flex-shrink:0;}
  .chip .dot.facial{background:var(--purple);}
  .chip .dot.manual{background:var(--text-soft);}
  .chip .rm{cursor:pointer;color:var(--red);font-weight:700;font-size:13px;line-height:1;}
  .punch-detail{background:var(--panel-alt);border:1px solid var(--line);border-radius:10px;padding:10px 12px;margin-top:-4px;margin-bottom:12px;font-size:12px;color:var(--text-soft);}
  .punch-detail .row{display:flex;gap:12px;align-items:center;}
  .punch-detail img{width:52px;height:40px;object-fit:cover;border-radius:6px;border:1px solid var(--line);}

  .card{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:14px 16px;margin-bottom:12px;}
  .card h3{font-size:11.5px;text-transform:uppercase;letter-spacing:0.04em;color:var(--text-soft);margin:0 0 10px;font-weight:700;}
  .grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
  .grid3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;}
  .stat{border-left:3px solid var(--line);padding-left:10px;}
  .stat .v{font-family:var(--mono);font-size:17px;font-weight:700;}
  .stat .l{font-size:11px;color:var(--text-soft);}
  .stat.c-blue{border-color:var(--blue);} .stat.c-purple{border-color:var(--purple);} .stat.c-amber{border-color:var(--amber);}
  .stat.c-green{border-color:var(--green);} .stat.c-red{border-color:var(--red);} .stat.c-pink{border-color:var(--pink);} .stat.c-cyan{border-color:var(--cyan);}
  .pos{color:var(--green);} .neg{color:var(--red);}

  .manual-toggle{font-size:12.5px;color:var(--blue);text-decoration:underline;cursor:pointer;display:inline-block;margin-top:2px;}
  .manual-row{display:flex;gap:8px;margin-top:10px;flex-wrap:wrap;align-items:center;}
  input[type=time], input[type=date], input[type=number], input[type=text], select{
    font-family:var(--sans);border:1px solid var(--line);border-radius:8px;padding:8px 9px;font-size:13.5px;background:#fff;color:var(--text);}
  input::placeholder{color:#A6ABBB;}
  .btn-sm{border:1px solid var(--line);background:#fff;border-radius:8px;padding:8px 12px;font-size:12.5px;font-weight:700;cursor:pointer;color:var(--text);}
  .btn-add{background:linear-gradient(90deg,var(--blue),var(--purple));border:none;color:#fff;}
  .btn-amber{background:linear-gradient(90deg,var(--amber),#FF7A45);border:none;color:#2A1400;}

  /* ---- Grid (espelho) ---- */
  .grid-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;gap:8px;flex-wrap:wrap;}
  .grid-toolbar .month-label{font-weight:800;font-size:14.5px;text-transform:capitalize;}
  .grid-toolbar .actions{display:flex;gap:6px;}
  .month-nav button{border:1px solid var(--line);background:var(--panel);color:var(--text);border-radius:8px;padding:6px 11px;font-size:14px;cursor:pointer;}

  .grid-scroll{overflow-x:auto;border:1px solid var(--line);border-radius:12px;background:var(--panel);}
  table.grid{width:100%;border-collapse:collapse;font-size:11.3px;min-width:920px;}
  table.grid th, table.grid td{padding:8px 7px;text-align:left;border-bottom:1px solid var(--line);white-space:nowrap;}
  table.grid thead th{font-size:9.5px;text-transform:uppercase;color:var(--text-soft);font-weight:800;letter-spacing:0.02em;background:var(--panel-alt);position:sticky;top:0;}
  table.grid td.num{font-family:var(--mono);}
  table.grid tr.weekend td{background:#FAFBFD;}
  table.grid tr.holiday td{background:#F3F0FF;}
  table.grid tr.falta-row td{background:#FEF2F2;}
  table.grid tr.occ-row td{background:#F5F3FF;}
  table.grid tr:hover td{background:#EEF1FB;cursor:pointer;}
  table.grid tfoot td{font-weight:800;border-top:2px solid var(--navy);border-bottom:none;font-family:var(--mono);background:var(--panel-alt);}
  .st-ico{width:18px;height:18px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:10px;color:#fff;font-weight:800;}
  .st-ok{background:var(--green);} .st-falta{background:var(--red);} .st-atraso{background:var(--amber);} .st-folga{background:#94A3B8;} .st-open{background:var(--blue);}
  .day-cell{display:flex;flex-direction:column;line-height:1.25;}
  .day-cell .hname{font-size:9px;color:var(--purple);font-weight:700;}
  .badge-tag{display:inline-block;font-size:9px;font-weight:800;padding:1px 5px;border-radius:5px;margin-left:3px;vertical-align:middle;}
  .occ-select-row{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-end;margin-top:8px;}
  .occ-select-row .field{margin-bottom:0;flex:1;min-width:120px;}

  .edit-panel{background:var(--panel-alt);}
  .edit-panel-inner{padding:12px;}

  /* ---- Funcionarios ---- */
  .emp-card{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:14px;margin-bottom:10px;display:flex;justify-content:space-between;align-items:center;gap:10px;}
  .emp-card .info b{font-size:14.5px;}
  .emp-card .info div{font-size:12px;color:var(--text-soft);margin-top:2px;}
  .emp-card .actions{display:flex;gap:6px;flex-shrink:0;}
  .emp-card.active-emp{border-color:var(--blue);box-shadow:0 0 0 1px var(--blue) inset;}

  /* ---- Settings ---- */
  .field{margin-bottom:14px;}
  .field label{display:block;font-size:12.5px;font-weight:700;color:var(--text-soft);margin-bottom:6px;}
  .field .desc{font-size:11.5px;color:#8A8FA3;margin-top:4px;}
  .daybox{display:flex;gap:6px;flex-wrap:wrap;}
  .daybox button{width:36px;height:36px;border-radius:50%;border:1px solid var(--line);background:#fff;font-size:12px;font-weight:700;cursor:pointer;color:var(--text-soft);}
  .daybox button.on{background:linear-gradient(90deg,var(--blue),var(--purple));color:#fff;border-color:transparent;}
  .row3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;}
  .row2{display:grid;grid-template-columns:1fr 1fr;gap:8px;}
  .row4{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:8px;}
  .hol-list{margin-top:8px;}

  .disclaimer{font-size:11px;color:#9297A8;line-height:1.5;margin:20px 14px 0;padding-top:14px;border-top:1px solid var(--line);}
  .loading{text-align:center;padding:40px 0;color:var(--text-soft);font-size:13px;}

  /* ---- Facial modal ---- */
  .modal-overlay{position:fixed;inset:0;background:rgba(10,11,20,0.72);display:flex;align-items:center;justify-content:center;z-index:50;padding:20px;}
  .modal-box{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:18px;max-width:360px;width:100%;text-align:center;}
  .modal-box h3{margin:0 0 4px;font-size:15px;}
  .modal-box p{font-size:12px;color:var(--text-soft);margin:0 0 12px;}
  .cam-frame{width:100%;aspect-ratio:4/3;background:#000;border-radius:12px;overflow:hidden;position:relative;border:2px solid var(--purple);}
  .cam-frame video{width:100%;height:100%;object-fit:cover;transform:scaleX(-1);}
  .cam-ring{position:absolute;inset:8%;border:2px dashed rgba(255,255,255,0.4);border-radius:50%;pointer-events:none;}
  .modal-actions{display:flex;gap:8px;margin-top:14px;}
  .modal-actions button{flex:1;padding:11px;border-radius:9px;border:none;font-weight:700;font-size:13px;cursor:pointer;}
  .modal-err{color:var(--red);font-size:12px;margin-top:10px;}

  /* ---- Print sheet ---- */
  #printSheet{display:none;}
  @media print{
    body *{visibility:hidden;}
    #printSheet, #printSheet *{visibility:visible;}
    #printSheet{display:block !important;position:absolute;top:0;left:0;width:100%;padding:0;font-family:var(--sans);color:#111;background:#fff;}
    .ps-header{display:flex;justify-content:space-between;align-items:flex-end;border-bottom:2px solid #111;padding-bottom:10px;margin-bottom:14px;}
    .ps-header h2{margin:0;font-size:18px;}
    .ps-header .sub{font-size:12px;color:#444;margin-top:3px;}
    .ps-brand{display:flex;align-items:center;gap:12px;}
    .ps-brand img{width:46px;height:46px;object-fit:contain;border-radius:6px;}
    .ps-meta{display:flex;gap:20px;font-size:12px;margin-bottom:14px;flex-wrap:wrap;}
    .ps-meta div b{display:block;font-size:13px;}
    table.ps-table{width:100%;border-collapse:collapse;font-size:9px;}
    table.ps-table th, table.ps-table td{border:1px solid #999;padding:4px 4px;text-align:left;}
    table.ps-table th{background:#eee;}
    table.ps-table tfoot td{font-weight:700;background:#f3f3f3;}
    .ps-sign{display:flex;justify-content:space-between;margin-top:50px;font-size:11px;}
    .ps-sign div{width:45%;border-top:1px solid #111;padding-top:6px;text-align:center;}
  }

