/*
Theme Name: Hackosam Universe
Theme URI: https://iamhackosam.com
Author: King Hackosam
Author URI: https://iamhackosam.com
Description: The custom theme behind iamhackosam.com. Paper and ink and one drop of leather brown. Built for a writer: full-width letter pages with a sponsor rail and sticky author card, a letters archive, a designed 404, a search page, and a sun/moon theme that remembers the reader's choice. Poppins, Bricolage Grotesque, Newsreader, and Caveat throughout.
Version: 1.0.1
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
License: Proprietary
License URI: https://iamhackosam.com
Text Domain: hackosam
Tags: blog, one-column, custom-colors, custom-menu, custom-logo, featured-images, full-width-template, dark-mode, translation-ready
*/

/* ============================================================
   GLOBAL RESET + BRAND BASE
   Section styles live in assets/css/ and load per template.
============================================================ */
:root{
  --kh-paper:#f4f4f2; --kh-ink:#131312; --kh-sub:#3f3f3c; --kh-mut:#757570;
  --kh-line:rgba(20,20,18,0.16); --kh-accent:#8b5a2b; --kh-card:#ffffff;
  --kh-night:#0f0f0e; --kh-bone:#f2f2ef;
}
*,*::before,*::after{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;}
html,body{overflow-x:clip;}
body{
  margin:0; padding:0;
  background:var(--kh-paper); color:var(--kh-ink);
  font-family:'Newsreader',Georgia,serif; line-height:1.5;
  -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale;
  transition:background .45s ease,color .45s ease;
}
/* pre-paint dark background so the night theme never flashes white */
html.khp-dark,body.khp-dark{background:var(--kh-night);}
img,svg,video{max-width:100%; height:auto;}
a{color:inherit;}
::selection{background:#8b5a2b; color:#fdf9f3;}

/* skip link (keyboard + screen readers) */
.kh-skip{
  position:absolute; left:-9999px; top:0; z-index:2147483001;
  font-family:'Bricolage Grotesque',sans-serif; font-weight:700; font-size:13px;
  letter-spacing:.09em; text-transform:uppercase;
  background:#111111; color:#ffffff; padding:14px 22px; border-radius:0 0 12px 0;
}
.kh-skip:focus{left:0;}
.screen-reader-text{
  border:0; clip:rect(1px,1px,1px,1px); clip-path:inset(50%);
  height:1px; width:1px; margin:-1px; padding:0; overflow:hidden;
  position:absolute !important; word-wrap:normal !important;
}
:focus-visible{outline:2px solid var(--kh-accent); outline-offset:3px;}

/* WordPress core alignment + caption classes, for the letter body */
.alignleft{float:left; margin:.4em 1.6em 1em 0;}
.alignright{float:right; margin:.4em 0 1em 1.6em;}
.aligncenter{display:block; margin-left:auto; margin-right:auto;}
.alignwide{margin-left:-60px; margin-right:-60px; max-width:calc(100% + 120px);}
.alignfull{margin-left:calc(50% - 50vw); margin-right:calc(50% - 50vw); max-width:100vw;}
.wp-caption{max-width:100%;}
.wp-caption-text,figcaption{
  font-family:'Bricolage Grotesque',sans-serif; font-size:13px; line-height:1.5;
  color:var(--kh-mut); text-align:center; margin-top:10px;
}
.sticky,.gallery-caption,.bypostauthor{}
@media (max-width:900px){
  .alignwide{margin-left:0; margin-right:0; max-width:100%;}
}

@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{
    animation-duration:.001ms !important; animation-iteration-count:1 !important;
    transition-duration:.001ms !important; scroll-behavior:auto !important;
  }
}
