/*
Theme Name: Global I.T. Minimal
Description: Minimal white theme matching the Global I.T. personal homepages.
Version: 1.6.0
Requires PHP: 8.1
Text Domain: global-it-minimal
*/
:root{--ink:#171717;--grey:#6f6f6f;--muted:#a19a93;--line:#e8e5df;--accent:#f05a28;--mono:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;--sans:Arial,Helvetica,sans-serif;--wrap:1080px;--read:700px}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:#fff;color:var(--ink);font:18px/1.7 var(--sans)}
a{color:inherit}
img{max-width:100%;height:auto;display:block}
.skip{position:absolute;left:-9999px}.skip:focus{left:16px;top:16px;background:#fff;padding:8px 12px;border:2px solid var(--accent);z-index:10}
.wrap{width:min(var(--wrap),100% - 48px);margin:0 auto}
.read{width:min(var(--read),100% - 48px);margin:0 auto}
.kicker,.meta,.site-head nav,.site-foot{font:600 12px/1.4 var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--grey)}
.site-head{border-bottom:1px solid var(--line)}
.site-head .wrap{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:26px 0}
.brand{font:700 20px/1 var(--sans);letter-spacing:-.03em;text-transform:uppercase;text-decoration:none;color:var(--ink)}
.brand span{color:var(--accent)}
.site-head nav a{text-decoration:none;margin-left:22px}
.site-head nav a:hover,.site-head nav a[aria-current]{color:var(--ink)}
main{padding:72px 0 96px}
.archive-title{margin:0 0 56px;font-size:clamp(44px,7vw,88px);line-height:.9;letter-spacing:-.06em;text-transform:uppercase}
.post-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.post-list li{border-bottom:1px solid var(--line)}
.post-list a{display:grid;grid-template-columns:180px 1fr;gap:32px;padding:34px 0;text-decoration:none}
.post-list h2{margin:0 0 10px;font-size:clamp(24px,3vw,34px);line-height:1.12;letter-spacing:-.03em}
.post-list p{margin:0;color:var(--grey);font-size:17px}
.post-list a:hover h2{color:var(--accent)}
.entry-head{margin-bottom:44px}
.entry-head h1{margin:18px 0 22px;font-size:clamp(36px,5.4vw,62px);line-height:1.02;letter-spacing:-.045em}
.entry-head .meta span+span:before{content:"/";margin:0 10px;color:var(--line)}
.hero{margin:0 auto 56px;width:min(1200px,100% - 48px)}
.hero img{width:100%;border:1px solid var(--line)}
.entry{font-size:19px}
.entry .lead{font-size:22px;line-height:1.55;color:#2b2b2b}
.entry h2{margin:60px 0 14px;font-size:28px;line-height:1.2;letter-spacing:-.025em}
.entry h2:before{content:"";display:block;width:40px;height:4px;background:var(--accent);margin-bottom:22px}
.entry p{margin:0 0 22px}
.entry code{font:15px/1 var(--mono);background:#f6f5f2;border:1px solid var(--line);padding:2px 6px;border-radius:3px;overflow-wrap:anywhere}
.entry a{text-decoration-color:var(--accent);text-underline-offset:3px}
.entry figure{margin:44px 0}
.entry figure img{border:1px solid var(--line)}
.entry figcaption{margin-top:12px;font:13px/1.5 var(--mono);color:var(--grey)}
.entry .checklist{counter-reset:c;list-style:none;padding:0;margin:28px 0}
.entry .checklist li{counter-increment:c;position:relative;padding:20px 0 20px 64px;border-top:1px solid var(--line)}
.entry .checklist li:last-child{border-bottom:1px solid var(--line)}
.entry .checklist li:before{content:counter(c,decimal-leading-zero);position:absolute;left:0;top:22px;font:700 14px/1 var(--mono);color:var(--accent);letter-spacing:.08em}
.entry .sources{padding-left:20px;font-size:16px;color:var(--grey)}
.entry .sources li{margin:6px 0}
.post-nav{margin-top:72px;padding-top:28px;border-top:1px solid var(--line)}
.post-nav a{font:600 12px/1.4 var(--mono);letter-spacing:.16em;text-transform:uppercase;text-decoration:none;color:var(--grey)}
.post-nav a:hover{color:var(--accent)}
.site-foot{border-top:1px solid var(--line)}
.site-foot .wrap{display:flex;justify-content:space-between;gap:24px;padding:28px 0;color:var(--muted)}
.site-foot a{text-decoration:none}
@media(max-width:700px){body{font-size:17px}main{padding:48px 0 72px}.post-list a{grid-template-columns:1fr;gap:10px;padding:28px 0}.entry{font-size:18px}.entry .lead{font-size:20px}.entry .checklist li{padding-left:48px}.site-foot .wrap{flex-direction:column}.site-head nav a{margin-left:16px}}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.entry-head .meta a{color:var(--accent);text-decoration:none}.entry-head .meta a:hover{text-decoration:underline}
.entry .table-wrap{overflow-x:auto;margin:32px 0;-webkit-overflow-scrolling:touch}
.entry table{width:100%;min-width:560px;border-collapse:collapse;font-size:16px;line-height:1.5}
.entry th{text-align:left;font:600 11px/1.4 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--grey);padding:0 16px 12px 0;border-bottom:2px solid var(--ink)}
.entry td{padding:14px 16px 14px 0;border-bottom:1px solid var(--line);vertical-align:top}
.entry td:first-child{font-weight:700;white-space:nowrap}
.entry pre{margin:24px 0;padding:18px 20px;background:#f6f5f2;border:1px solid var(--line);overflow-x:auto;font:14px/1.65 var(--mono)}
.entry pre code{background:none;border:0;padding:0;font-size:inherit;overflow-wrap:normal}
.entry-head .updated{margin:10px 0 0;font:12px/1.4 var(--mono);color:var(--muted)}
.entry h3{margin:34px 0 10px;font-size:21px;line-height:1.3;letter-spacing:-.015em}
.entry .tldr{margin:8px 0 40px;padding:20px 24px;border-left:4px solid var(--accent);background:#faf9f7}
.entry .tldr-label{margin:0 0 8px;font:700 12px/1 var(--mono);letter-spacing:.16em;color:var(--accent)}
.entry .tldr ul{margin:0;padding-left:20px;font-size:17px}
.entry .tldr li{margin:6px 0}
.entry .gitm-figure svg{display:block;width:100%;height:auto;border:1px solid var(--line);background:#fff}
.gitm-widget{margin:40px 0;padding:24px;border:1px solid var(--line);border-top:4px solid var(--accent);background:#fff}
.gitm-widget .w-title{margin:0 0 6px;font-weight:700;font-size:20px;letter-spacing:-.01em}
.gitm-widget .w-intro{margin:0 0 18px;color:var(--grey);font-size:16px}
.gitm-widget .w-field{display:flex;flex-direction:column;gap:6px;margin:0 0 14px}
.gitm-widget label{font-size:15px}
.gitm-widget .w-field label{font:600 11px/1.4 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--grey)}
.gitm-widget input[type=text],.gitm-widget select{font:16px/1.4 var(--sans);padding:10px 12px;border:1px solid #cfcac2;border-radius:3px;background:#fff;color:var(--ink);max-width:420px}
.gitm-widget input[type=text]:focus,.gitm-widget select:focus{outline:2px solid var(--accent);outline-offset:1px}
.gitm-widget .w-check{display:flex;gap:10px;align-items:flex-start;margin:0 0 10px}
.gitm-widget .w-check input{margin-top:4px;accent-color:var(--accent)}
.gitm-widget .w-btn{font:600 12px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;padding:12px 18px;border:0;border-radius:3px;background:var(--ink);color:#fff;cursor:pointer;margin-top:4px}
.gitm-widget .w-btn:hover{background:var(--accent)}
.gitm-widget .w-result{margin-top:16px;font-size:16px}
.gitm-widget .w-result:empty{display:none}
.gitm-widget .w-result.ok,.gitm-widget .w-result.warn,.gitm-widget .w-result.bad{padding:14px 16px;border-left:4px solid}
.gitm-widget .w-result.ok{border-color:#1f9d55;background:#f1faf4}
.gitm-widget .w-result.warn{border-color:#d68a00;background:#fdf8ee}
.gitm-widget .w-result.bad{border-color:#c62828;background:#fdf2f2}
.gitm-widget .w-result ul{margin:8px 0 0;padding-left:20px}
.gitm-widget .w-code{margin:0 0 12px}
.gitm-widget .w-note{font-size:14px;color:var(--grey)}
