@import url('https://fonts.googleapis.com/css2?family=Archivo:wght@500;600;700;800&family=Courier+Prime:wght@400;700&display=swap');
/* ===== Skin: PUNCH — timeclock.now. Industrial time-card stock: kraft board,
   ink blue, perforated edges, rubber-stamp accents, tabular numerals. ===== */
:root{--c:#1f4e79}
body.skin-punch{--c:#1f4e79;--c-d:#153958;--c-l:#e4edf5;--kraft:#c9b491;--kraft-d:#a8946f;--stamp:#b23a30;
  --ink:#22252b;--mut:#565c66;--faint:#8d939d;--line:#ded8ca;--line2:#bfb7a3;--bg:#ebe5d7;--card:#fdfcf8;
  --shadow:0 1px 0 rgba(34,37,43,.1),0 4px 14px rgba(34,37,43,.08);
  margin:0;font-family:'Archivo',-apple-system,BlinkMacSystemFont,sans-serif;color:var(--ink);background:var(--bg);
  font-size:15px;line-height:1.62;-webkit-font-smoothing:antialiased}
body.skin-punch *{box-sizing:border-box}
body.skin-punch h1,body.skin-punch h2,body.skin-punch h3,body.skin-punch h4{font-weight:800;line-height:1.18;
  letter-spacing:-.015em;color:var(--c-d)}
body.skin-punch a{color:var(--c);text-decoration:none;font-weight:600}
body.skin-punch a:hover{color:var(--stamp);text-decoration:underline}

/* ---- Chrome: a punched card edge under the header ---- */
body.skin-punch .g-header{background:var(--c-d);position:sticky;top:0;z-index:20;
  border-bottom:6px solid var(--kraft);
  background-image:radial-gradient(circle at 10px 100%,transparent 5px,var(--c-d) 5px);background-size:22px 100%}
body.skin-punch .g-bar{max-width:1120px;margin:0 auto;display:flex;align-items:center;gap:16px;padding:13px 24px;flex-wrap:wrap}
body.skin-punch .g-brand{color:#fff;font-weight:800;font-size:19px;display:flex;align-items:center;gap:10px;letter-spacing:-.02em}
body.skin-punch .g-brand b{color:var(--kraft)}
body.skin-punch .g-brand::before{content:"";width:20px;height:20px;border:3px solid var(--kraft);border-radius:3px;
  box-shadow:inset 0 0 0 2px var(--c-d),inset 0 -5px 0 -2px var(--kraft)}
body.skin-punch .g-nav{display:flex;gap:3px;flex-wrap:wrap;margin-left:auto}
body.skin-punch .g-nav a{color:#b6c8da;font-size:13.5px;font-weight:600;padding:7px 13px;border-radius:4px}
body.skin-punch .g-nav a:hover{background:rgba(255,255,255,.11);color:#fff;text-decoration:none}
body.skin-punch .g-nav a.is-main{background:var(--kraft);color:var(--c-d)}
body.skin-punch .g-cta{background:var(--stamp);color:#fff;padding:9px 18px;border-radius:4px;font-weight:700;font-size:13.5px;
  box-shadow:0 2px 0 #8b2b23}
body.skin-punch .g-cta:hover{background:#c9433a;text-decoration:none}
body.skin-punch .g-main{max-width:1120px;margin:0 auto;padding:32px 24px 64px}

/* ---- Hero: a time card ---- */
body.skin-punch .hero{display:grid;grid-template-columns:1fr 1fr;gap:34px;align-items:center;background:var(--card);
  border:1px solid var(--line2);border-top:5px solid var(--c);border-radius:2px;padding:36px;margin-bottom:32px;
  box-shadow:var(--shadow);position:relative;
  background-image:repeating-linear-gradient(180deg,transparent 0 33px,var(--line) 33px 34px)}
body.skin-punch .hero::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:8px;
  background:radial-gradient(circle at 9px 8px,var(--bg) 5px,transparent 5px);background-size:18px 8px}
body.skin-punch .hero-h1{font-size:40px;margin:0 0 12px}
body.skin-punch .hero-lead{font-size:16.5px;color:var(--mut);margin:0 0 18px}
body.skin-punch .hero-badges{list-style:none;display:flex;flex-wrap:wrap;gap:8px;padding:0;margin:0}
body.skin-punch .hero-badges li{background:var(--c-l);color:var(--c-d);font-size:11.5px;font-weight:700;padding:5px 12px;
  border-radius:3px;border:1px dashed var(--c);letter-spacing:.03em;text-transform:uppercase}
body.skin-punch .hero-steps{margin:18px 0 0;padding-left:20px;color:var(--mut);font-size:14px}
body.skin-punch .hero-widget{display:flex;justify-content:center;align-items:center;padding:28px;background:var(--kraft);
  border:1px solid var(--kraft-d);border-radius:2px;box-shadow:inset 0 0 30px rgba(0,0,0,.09)}
body.skin-punch .wc-stage{border-radius:2px;background:rgba(253,252,248,.86);border-color:var(--kraft-d)}

/* ---- Sections & cards ---- */
body.skin-punch .section-h{font-size:24px;margin:0 0 17px;padding-bottom:9px;border-bottom:3px double var(--line2)}
body.skin-punch .toolgrid-wrap,body.skin-punch .content-body,body.skin-punch .articles-strip,
body.skin-punch .other-tools,body.skin-punch .faq{margin:44px 0}
body.skin-punch .toolgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(236px,1fr));gap:14px}
body.skin-punch .tool-card{display:flex;flex-direction:column;gap:5px;background:var(--card);border:1px solid var(--line2);
  border-radius:2px;padding:19px;transition:.14s;position:relative}
body.skin-punch .tool-card::before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--c)}
body.skin-punch .tool-card:hover{text-decoration:none;box-shadow:var(--shadow);transform:translateY(-2px)}
body.skin-punch .tool-card-label{font-weight:800;font-size:16px;color:var(--c-d);margin-top:4px}
body.skin-punch .tool-card-short{font-size:10.5px;font-weight:700;color:var(--stamp);text-transform:uppercase;letter-spacing:.12em}
body.skin-punch .tool-card-lead{font-size:13px;color:var(--mut)}

/* ---- Longform ---- */
body.skin-punch .longform{max-width:770px;background:var(--card);border:1px solid var(--line2);border-radius:2px;padding:34px;box-shadow:var(--shadow)}
body.skin-punch .longform .lead-copy p:first-child{font-size:17.5px;color:var(--ink);border-left:4px solid var(--kraft);padding-left:16px}
body.skin-punch .longform h2{font-size:22px;margin:28px 0 11px}
body.skin-punch .longform p{margin:0 0 15px;color:var(--mut)}

/* ---- Articles: stamped cards ---- */
body.skin-punch .art-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(258px,1fr));gap:15px}
body.skin-punch .art-card{display:flex;flex-direction:column;gap:7px;background:var(--card);border:1px solid var(--line2);
  border-radius:2px;padding:19px;transition:.14s}
body.skin-punch .art-card:hover{text-decoration:none;box-shadow:var(--shadow);border-color:var(--c)}
body.skin-punch .art-cluster{font-family:'Courier Prime',monospace;font-size:10.5px;font-weight:700;color:var(--stamp);
  text-transform:uppercase;letter-spacing:.14em;border:1.5px solid var(--stamp);border-radius:2px;padding:2px 7px;align-self:flex-start;
  transform:rotate(-1.5deg)}
body.skin-punch .art-title{font-weight:800;font-size:16.5px;line-height:1.26;color:var(--c-d)}
body.skin-punch .art-excerpt{font-size:13px;color:var(--mut)}
body.skin-punch .art-meta{font-family:'Courier Prime',monospace;font-size:11px;color:var(--faint);margin-top:auto}

/* ---- FAQ ---- */
body.skin-punch .faq-item{border:1px solid var(--line2);border-radius:2px;margin-bottom:8px;background:var(--card)}
body.skin-punch .faq-q{cursor:pointer;padding:15px 18px;font-weight:700;font-size:15.5px;color:var(--c-d);list-style:none}
body.skin-punch .faq-q::-webkit-details-marker{display:none}
body.skin-punch .faq-q::after{content:"IN";float:right;font-family:'Courier Prime',monospace;font-size:11px;font-weight:700;
  color:var(--stamp);border:1.5px solid var(--stamp);padding:1px 6px;border-radius:2px}
body.skin-punch .faq-item[open]{border-color:var(--c);border-left:4px solid var(--c)}
body.skin-punch .faq-item[open] .faq-q::after{content:"OUT";color:var(--c);border-color:var(--c)}
body.skin-punch .faq-a{padding:0 18px 16px;color:var(--mut)}

/* ---- Article page ---- */
body.skin-punch .crumbs{font-family:'Courier Prime',monospace;font-size:12px;color:var(--faint);margin:22px 0 14px}
body.skin-punch .crumbs span{margin:0 7px}
body.skin-punch .article{max-width:740px;background:var(--card);border:1px solid var(--line2);border-top:5px solid var(--c);
  border-radius:2px;padding:40px;box-shadow:var(--shadow)}
body.skin-punch .article-head h1{font-size:33px;margin:8px 0}
body.skin-punch .article-meta{font-family:'Courier Prime',monospace;color:var(--faint);font-size:12.5px}
body.skin-punch .tool-cta,body.skin-punch .tool-cta-foot{background:var(--c-l);border:1px dashed var(--c);border-radius:2px;
  padding:20px 24px;display:flex;gap:16px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin:24px 0}
body.skin-punch .cta-btn{background:var(--c);color:#fff;padding:12px 22px;border-radius:4px;font-weight:700;box-shadow:0 2px 0 var(--c-d)}
body.skin-punch .cta-btn:hover{background:var(--c-d);color:#fff;text-decoration:none}
body.skin-punch .article-body{color:var(--mut);font-size:16px}
body.skin-punch .article-body h2{font-size:24px;margin:32px 0 11px;padding-bottom:6px;border-bottom:2px solid var(--line)}
body.skin-punch .article-body h3{font-size:18.5px;margin:25px 0 9px;color:var(--c)}
body.skin-punch .article-body p{margin:0 0 15px}
body.skin-punch .article-body ul,body.skin-punch .article-body ol{margin:0 0 15px 22px}
body.skin-punch .article-body li{margin:6px 0}
body.skin-punch .article-body strong{color:var(--c-d)}

/* ---- Index, error, footer ---- */
body.skin-punch .page-head h1{font-size:36px}
body.skin-punch .cluster-block{margin:44px 0}
body.skin-punch .error-page{text-align:center;padding:86px 0}
body.skin-punch .error-page h1{font-size:92px;color:var(--c)}
body.skin-punch .g-footer{background:var(--c-d);margin-top:56px;padding:44px 24px 24px;color:#a9bccd;border-top:6px solid var(--kraft)}
body.skin-punch .g-foot-grid{max-width:1120px;margin:0 auto;display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:30px}
body.skin-punch .g-foot-grid h4{color:var(--kraft);font-size:11.5px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;margin:0 0 12px}
body.skin-punch .g-foot-grid a{display:block;color:#a9bccd;font-size:13.5px;padding:4px 0;font-weight:500}
body.skin-punch .g-foot-grid a:hover{color:#fff}
body.skin-punch .g-foot-brand .g-brand{color:#fff}
body.skin-punch .g-copy{max-width:1120px;margin:28px auto 0;border-top:1px solid rgba(255,255,255,.14);padding-top:18px;
  font-family:'Courier Prime',monospace;font-size:12px;color:#8296a8}

/* ---- Supplementary ---- */
body.skin-punch .hero-copy{min-width:0}
body.skin-punch .hero-tool,body.skin-punch .hero-tool-page{min-width:0;align-self:center}
body.skin-punch .hero-tool-page{max-width:820px;margin:0 auto 32px}
body.skin-punch .lf-section{margin:8px 0}
body.skin-punch .articles-strip-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:18px;flex-wrap:wrap}
body.skin-punch .more-link{font-size:13.5px;font-weight:700;color:var(--stamp)}
body.skin-punch .faq-title{font-size:24px;margin:0 0 17px;padding-bottom:9px;border-bottom:3px double var(--line2)}
body.skin-punch .faq-list{max-width:770px;display:flex;flex-direction:column;gap:8px}
body.skin-punch .page-head{margin-bottom:16px;border-bottom:3px double var(--line2);padding-bottom:17px}
body.skin-punch .page-head-lead{font-size:16.5px;color:var(--mut);max-width:640px;margin-top:9px}
body.skin-punch .article-head{margin-bottom:16px;border-bottom:1px solid var(--line);padding-bottom:14px}
body.skin-punch .empty-note{color:var(--faint);background:var(--card);border:1px dashed var(--line2);padding:24px;text-align:center}

/* ---- Widget flourishes: everything reads like a payroll form ---- */
body.skin-punch .wc-time,body.skin-punch .tw-out,body.skin-punch .tw-card-h,body.skin-punch .tw-punch-dur,
body.skin-punch .tw-total-line{font-family:'Courier Prime',monospace}
body.skin-punch .tw-card-row{border-radius:0;border-bottom:1px solid var(--line)}
body.skin-punch .tw-card-row:nth-child(even){background:rgba(31,78,121,.05)}
body.skin-punch .tw-card-row.is-head{color:var(--c-d);border-bottom:2px solid var(--line2)}
body.skin-punch .tw-punch-entry{border-radius:0;border-bottom:1px dashed var(--line2);font-family:'Courier Prime',monospace}
body.skin-punch .tw-punch-total{color:var(--c-d);font-family:'Courier Prime',monospace}
body.skin-punch .wc-input,body.skin-punch .wc-select{border-radius:3px;background:#fff;border-color:var(--line2)}
body.skin-punch .wc-fbtn{border-radius:4px;background:var(--c);box-shadow:0 2px 0 var(--c-d)}
body.skin-punch .wc-fbtn2{border-radius:4px}
body.skin-punch .tw-ghost{border-radius:4px}
body.skin-punch .tw-ref-item{border-radius:2px;font-family:'Courier Prime',monospace;background:var(--c-l);border-color:var(--line2)}

@media(max-width:760px){
  body.skin-punch .hero{grid-template-columns:1fr;gap:24px;padding:24px}
  body.skin-punch .hero-h1{font-size:30px}
  body.skin-punch .toolgrid{grid-template-columns:1fr}
  body.skin-punch .g-foot-grid{grid-template-columns:1fr 1fr}
}
