@font-face {
  font-family: 'Bricolage Grotesque';
  font-style: normal;
  font-weight: 500 800;
  font-stretch: 100%;
  font-display: swap;
  src: url(/bricolage-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Bricolage Grotesque';
  font-style: normal;
  font-weight: 500 800;
  font-stretch: 100%;
  font-display: swap;
  src: url(/bricolage-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url(/manrope-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url(/manrope-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* Art direction: regional editorial utility. Warm paper, proofreading-red accent.
   Bricolage Grotesque display + Manrope body, self-hosted. Balanced public UI,
   compact admin. Light/dark tokens share the same hierarchy. */
:root,[data-theme="light"]{
 --font-display:'Bricolage Grotesque','Arial',sans-serif;--font-body:'Manrope','Arial',sans-serif;
 --text-xs:clamp(.75rem,.71rem + .2vw,.875rem);--text-sm:clamp(.875rem,.84rem + .17vw,.95rem);--text-base:clamp(1rem,.97rem + .16vw,1.0625rem);--text-lg:clamp(1.125rem,1rem + .6vw,1.375rem);--text-xl:clamp(1.5rem,1.2rem + 1.1vw,2.25rem);--text-2xl:clamp(2.25rem,1.3rem + 3vw,3.5rem);
 --space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;
 --color-bg:#f4f0e8;--color-surface:#fffdf8;--color-surface-2:#ebe5d9;--color-surface-offset:#ded6c8;--color-text:#211d18;--color-text-muted:#645e55;--color-text-faint:#797166;--color-primary:#b42637;--color-primary-hover:#921c2b;--color-primary-soft:#f3dce0;--color-inverse:#fffaf4;--color-divider:color-mix(in oklch,var(--color-text) 15%,transparent);--color-error:#a3122a;--color-success:#23603e;
 --radius-sm:.375rem;--radius-md:.625rem;--radius-lg:1rem;--radius-xl:1.5rem;--radius-full:999px;--shadow:0 12px 32px oklch(.26 .02 70 / .08);--transition:180ms cubic-bezier(.16,1,.3,1);--content:74rem;--prose:46rem;
}
[data-theme="dark"]{--color-bg:#191713;--color-surface:#24211c;--color-surface-2:#302c25;--color-surface-offset:#3b352d;--color-text:#f3ede3;--color-text-muted:#c1b8aa;--color-text-faint:#a49988;--color-primary:#f4818e;--color-primary-hover:#ff9ca7;--color-primary-soft:#4e2c31;--color-inverse:#211813;--color-error:#ff9ba8;--color-success:#88d5a4;--shadow:0 12px 32px #0005}
@media(prefers-color-scheme:dark){:root:not([data-theme]){--color-bg:#191713;--color-surface:#24211c;--color-surface-2:#302c25;--color-surface-offset:#3b352d;--color-text:#f3ede3;--color-text-muted:#c1b8aa;--color-text-faint:#a49988;--color-primary:#f4818e;--color-primary-hover:#ff9ca7;--color-primary-soft:#4e2c31;--color-inverse:#211813;--color-error:#ff9ba8;--color-success:#88d5a4;--shadow:0 12px 32px #0005}}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:none;text-size-adjust:none;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;scroll-behavior:smooth;scroll-padding-top:var(--space-24)}body{min-height:100dvh;color:var(--color-text);background:var(--color-bg);font:400 var(--text-base)/1.65 var(--font-body)}img,svg{display:block;max-width:100%;height:auto}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer}a{color:inherit;text-underline-offset:3px}a:hover{color:var(--color-primary)}button,input,a,textarea{transition:color var(--transition),background var(--transition),border-color var(--transition),box-shadow var(--transition),transform var(--transition)}h1,h2,h3{line-height:1.1;text-wrap:balance;letter-spacing:-.035em}h1,h2{font-family:var(--font-display)}p,li{max-width:72ch;text-wrap:pretty}::selection{background:var(--color-primary-soft)}:focus-visible{outline:3px solid var(--color-primary);outline-offset:3px;border-radius:var(--radius-sm)}button:active,.btn:active{transform:translateY(1px)}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip-link{position:fixed;z-index:100;top:var(--space-4);left:var(--space-4);padding:var(--space-3) var(--space-4);background:var(--color-text);color:var(--color-bg);transform:translateY(-200%)}.skip-link:focus{transform:none}.container{width:min(100% - 3rem,var(--content));margin-inline:auto}.site-header{position:sticky;top:0;z-index:10;border-bottom:1px solid var(--color-divider);background:color-mix(in oklch,var(--color-bg) 92%,transparent);backdrop-filter:blur(16px)}.nav{min-height:5rem;display:flex;align-items:center;justify-content:space-between;gap:var(--space-4)}.brand{display:inline-flex;align-items:center;gap:var(--space-2);font:750 var(--text-lg)/1 var(--font-display);text-decoration:none;white-space:nowrap}.brand svg{width:2.25rem;flex-shrink:0;color:var(--color-primary)}.nav-links{display:flex;align-items:center;gap:var(--space-4)}.nav-links a{display:flex;align-items:center;min-height:2.75rem;font-size:var(--text-sm);text-decoration:none}.icon-btn{display:grid;place-items:center;min-width:2.75rem;min-height:2.75rem;border:1px solid var(--color-divider);border-radius:var(--radius-full);background:transparent;font-size:var(--text-lg)}.icon-btn:hover{background:var(--color-surface-2)}.hero{padding:clamp(var(--space-16),7vw,var(--space-24)) 0}.hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(var(--space-8),5vw,var(--space-16));align-items:center}.eyebrow{display:block;margin-bottom:var(--space-5);font-size:var(--text-xs);font-weight:750;text-transform:uppercase;letter-spacing:.1em;color:var(--color-primary)}.hero h1{font-size:var(--text-2xl);font-weight:800;letter-spacing:-.055em;line-height:1.02}.lede{margin-top:var(--space-6);max-width:39ch;font-size:var(--text-lg);color:var(--color-text-muted)}.hero-note{margin-top:var(--space-8);font-size:var(--text-xs);color:var(--color-text-muted)}.shortener-card,.card{background:var(--color-surface);border:1px solid var(--color-divider);border-radius:var(--radius-xl)}.shortener-card{padding:clamp(var(--space-5),3vw,var(--space-8));box-shadow:var(--shadow)}.card-top{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding-bottom:var(--space-5);margin-bottom:var(--space-6);border-bottom:1px solid var(--color-divider)}.tiny-label{font-size:var(--text-xs);font-weight:700;letter-spacing:.025em}.code{font-family:var(--font-body);font-size:var(--text-sm);font-variant-numeric:tabular-nums}.muted{color:var(--color-text-muted)}.form-stack{display:grid;gap:var(--space-5)}label{display:block;margin-bottom:var(--space-2);font-size:var(--text-sm);font-weight:700}input,textarea{width:100%;min-height:3.25rem;padding:var(--space-3) var(--space-4);border:1px solid color-mix(in oklch,var(--color-text) 28%,transparent);border-radius:var(--radius-md);background:var(--color-bg);font-size:var(--text-base)}input::placeholder,textarea::placeholder{color:var(--color-text-faint)}input:hover,textarea:hover{border-color:var(--color-text-muted)}.field-help{display:block;margin-top:var(--space-2);font-size:var(--text-xs);color:var(--color-text-muted)}.captcha-row{display:grid;grid-template-columns:1fr auto;gap:var(--space-4);align-items:end}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-3);min-height:3.25rem;padding:var(--space-3) var(--space-5);border:1px solid transparent;border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:750;text-decoration:none}.primary{background:var(--color-primary);color:var(--color-inverse)}.primary:hover{background:var(--color-primary-hover);color:var(--color-inverse)}.secondary{border-color:var(--color-divider);background:var(--color-surface-2)}.secondary:hover{background:var(--color-surface-offset);color:var(--color-text)}.ghost{background:transparent;color:inherit}.ghost:hover{background:color-mix(in oklch,currentColor 8%,transparent)}.btn:disabled{cursor:wait;opacity:.7}.check-row{display:flex;align-items:flex-start;gap:var(--space-3);font-size:var(--text-xs);font-weight:400;color:var(--color-text-muted);margin:0}.check-row input{width:1.25rem;height:1.25rem;min-height:1.25rem;flex-shrink:0;accent-color:var(--color-primary);margin-top:var(--space-1)}.message{padding:var(--space-3) var(--space-4);margin-block:var(--space-3);border-radius:var(--radius-md);background:var(--color-surface-2);font-size:var(--text-sm)}.message.error{background:color-mix(in oklch,var(--color-error) 10%,var(--color-surface));color:var(--color-error)}.message.success{background:color-mix(in oklch,var(--color-success) 10%,var(--color-surface));color:var(--color-success)}#form-message:empty{display:none}.result{display:grid;gap:var(--space-3);padding:var(--space-5);border-radius:var(--radius-lg);background:var(--color-primary-soft);animation:result-enter .25s ease-out}.result-url{font:750 var(--text-lg)/1.3 var(--font-display);overflow-wrap:anywhere}.result-url:hover{color:var(--color-text)}.result .btn{background:var(--color-surface)}@keyframes result-enter{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.trust-strip{border-block:1px solid var(--color-divider)}.trust-list{display:flex;justify-content:space-between;gap:var(--space-8);list-style:none;padding-block:var(--space-6);font-size:var(--text-sm);font-weight:650}.trust-list span{margin-right:var(--space-3);color:var(--color-primary);font-size:var(--text-xs)}.content-section{padding-block:clamp(var(--space-12),7vw,var(--space-24))}.editorial-split{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(var(--space-8),7vw,var(--space-24))}.section-title{font-size:var(--text-xl);max-width:18ch}.steps{display:grid;gap:var(--space-8)}.steps article{padding-bottom:var(--space-6);border-bottom:1px solid var(--color-divider)}.steps .tiny-label{color:var(--color-primary)}.steps h3{font:750 var(--text-lg)/1.3 var(--font-body);margin-top:var(--space-2)}.steps p{margin-top:var(--space-2);font-size:var(--text-sm);color:var(--color-text-muted)}.faq-section{padding:var(--space-16) 0;background:var(--color-surface-2)}.faq-note{margin-top:var(--space-6);font-size:var(--text-sm)}details{border-top:1px solid var(--color-divider)}details:last-child{border-bottom:1px solid var(--color-divider)}summary{list-style:none;cursor:pointer;padding:var(--space-5) var(--space-8) var(--space-5) 0;position:relative;font-size:var(--text-sm);font-weight:750}summary::-webkit-details-marker{display:none}summary::after{content:'+';position:absolute;right:var(--space-2);color:var(--color-primary)}details[open] summary::after{content:'−'}details p{padding-bottom:var(--space-5);font-size:var(--text-sm);color:var(--color-text-muted)}.site-footer{padding:var(--space-12) 0 var(--space-6);border-top:1px solid var(--color-divider)}.footer-grid,.footer-meta{display:flex;align-items:center;justify-content:space-between;gap:var(--space-6)}.footer-links,.regional-links{display:flex;flex-wrap:wrap;gap:var(--space-4);font-size:var(--text-xs)}.footer-links a,.regional-links a{display:inline-flex;align-items:center;min-height:2.75rem}.footer-meta{margin-top:var(--space-8);font-size:var(--text-xs);color:var(--color-text-muted)}.prose{max-width:var(--prose)}.prose h1{font-size:var(--text-xl);margin-bottom:var(--space-6)}.prose h2{font:750 var(--text-lg)/1.3 var(--font-body);margin-top:var(--space-10)}.prose p,.prose li{margin-top:var(--space-4);color:var(--color-text-muted)}.prose ul{padding-left:var(--space-5)}.prose>.btn{margin-top:var(--space-6)}.contact-card{padding:var(--space-6);margin-top:var(--space-8)}.between{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4)}.login-page{min-height:100dvh;display:grid;place-items:center;padding:var(--space-4)}.login-card{width:min(100%,29rem);padding:var(--space-8)}.login-card .between{margin-bottom:var(--space-10)}.login-card h1{font-size:var(--text-xl)}.login-card p{margin:var(--space-4) 0 var(--space-6);color:var(--color-text-muted)}.admin-shell{display:grid;grid-template-columns:15rem minmax(0,1fr);min-height:100dvh}.sidebar{position:sticky;top:0;height:100dvh;padding:var(--space-6);border-right:1px solid var(--color-divider);background:var(--color-surface)}.sidebar nav{display:grid;gap:var(--space-2);margin-block:var(--space-12)}.sidebar nav a{display:flex;align-items:center;min-height:2.75rem;padding:var(--space-3);font-size:var(--text-sm);text-decoration:none;border-radius:var(--radius-md)}.sidebar nav a:hover{background:var(--color-surface-2)}.admin-main{min-width:0;padding:clamp(var(--space-4),3vw,var(--space-10))}.admin-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-8)}.admin-head .eyebrow{margin-bottom:var(--space-2)}.admin-head h1{font-size:var(--text-xl)}.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-4);margin-bottom:var(--space-8)}.kpis article{padding:var(--space-5);border:1px solid var(--color-divider);border-radius:var(--radius-lg);background:var(--color-surface)}.kpis span{font-size:var(--text-xs);color:var(--color-text-muted)}.kpis strong{display:block;margin-top:var(--space-3);font:750 var(--text-xl)/1 var(--font-body);font-variant-numeric:tabular-nums}.toolbar{display:flex;gap:var(--space-3);margin-bottom:var(--space-4)}.table-card{overflow-x:auto;border:1px solid var(--color-divider);border-radius:var(--radius-lg);background:var(--color-surface)}table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}th,td{text-align:left;padding:var(--space-4);border-bottom:1px solid var(--color-divider)}th{font-size:var(--text-xs);font-weight:750;color:var(--color-text-muted);white-space:nowrap;background:var(--color-surface-2)}td{font-variant-numeric:tabular-nums}.dest{max-width:18rem;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.code{white-space:nowrap}.badge{padding:var(--space-1) var(--space-2);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:750;background:var(--color-primary-soft);color:var(--color-primary)}.badge.off{background:var(--color-surface-2);color:var(--color-text-muted)}.row-actions{display:flex;gap:var(--space-2)}.mini-btn{min-height:2.75rem;padding:var(--space-2) var(--space-3);border:1px solid var(--color-divider);border-radius:var(--radius-sm);background:var(--color-surface-2);font-size:var(--text-xs)}.mini-btn:hover{background:var(--color-surface-offset)}.danger{color:var(--color-error)}.empty{padding:var(--space-12) var(--space-6);text-align:center}.empty h2{font-size:var(--text-lg)}.empty p{margin:var(--space-3) auto var(--space-6);font-size:var(--text-sm);color:var(--color-text-muted)}.pagination{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-top:var(--space-5);font-size:var(--text-xs)}.report-section{margin-top:var(--space-12)}.report-section h2{font-size:var(--text-lg);margin-bottom:var(--space-5)}.report-list{display:grid;gap:var(--space-4)}.report-item{padding:var(--space-5)}.report-item p{margin-block:var(--space-4);overflow-wrap:anywhere;font-size:var(--text-sm)}
@media(max-width:960px){.hero-grid{grid-template-columns:1fr 1.15fr;gap:var(--space-6)}.card-top{flex-direction:column;align-items:flex-start}.admin-shell{grid-template-columns:12rem minmax(0,1fr)}.sidebar{padding:var(--space-4)}.sidebar .brand{font-size:var(--text-sm)}.kpis{grid-template-columns:repeat(2,1fr)}.footer-grid{flex-direction:column;align-items:flex-start}}
@media(max-width:720px){.container{width:calc(100% - 2rem)}.hero{padding-top:var(--space-12)}.hero-grid,.editorial-split{grid-template-columns:1fr;gap:var(--space-10)}.hero-note{margin-top:var(--space-5)}.nav-links a{display:none}.nav{min-height:4.5rem}.hero h1{max-width:15ch}.card-top{flex-direction:row}.trust-list{flex-direction:column;gap:var(--space-4);padding-block:var(--space-5)}.trust-list li{max-width:none}.footer-links,.regional-links{gap:var(--space-3)}.footer-meta{align-items:flex-start;flex-direction:column}.admin-shell{display:block}.sidebar{position:relative;height:auto;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-4);border-right:0;border-bottom:1px solid var(--color-divider)}.sidebar nav{display:none}.sidebar form .btn{min-height:2.75rem;padding:var(--space-2)}.admin-main{padding:var(--space-5) var(--space-4)}.admin-head h1{font-size:var(--text-lg)}.kpis{gap:var(--space-3)}.kpis article{padding:var(--space-4)}.toolbar{align-items:stretch}.pagination{flex-wrap:wrap}}
@media(max-width:400px){.captcha-row{grid-template-columns:1fr}.card-top{align-items:flex-start;flex-direction:column}.shortener-card{padding:var(--space-5)}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
