/*
Theme Name: Hexaspérant
Author: Hexaspérant
Description: Thème communautaire fun pour partager de courtes anecdotes.
Version: 2.1.0
Requires at least: 6.5
Requires PHP: 8.0
License: GPL-2.0-or-later
Text Domain: hexasperant
*/
:root{--yellow:#FFD23F;--yellow-soft:#FFF3B8;--orange:#F46036;--orange-dark:#D94A27;--ink:#202020;--muted:#6E6962;--bg:#FFFDF7;--card:#fff;--paper:#FFF9D9;--border:#E8E1D5;--radius:18px;--shadow:0 8px 24px rgba(64,48,25,.10);--shadow-hover:0 14px 32px rgba(64,48,25,.16)}
html[data-theme="dark"]{--yellow:#FFD23F;--yellow-soft:#3A3217;--orange:#FF6B3D;--orange-dark:#FF9A72;--red:#FF3B30;--ink:#FFF8E7;--muted:#B9B0A3;--bg:#111111;--card:#1D1D1D;--paper:#27251E;--border:#3B3831;--shadow:0 12px 30px rgba(0,0,0,.38);--shadow-hover:0 16px 38px rgba(0,0,0,.52)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:radial-gradient(circle at 8% 0%,rgba(255,210,63,.22),transparent 26rem),radial-gradient(circle at 94% 12%,rgba(244,96,54,.10),transparent 24rem),var(--bg);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.6}a{color:var(--orange-dark)}img{max-width:100%;height:auto}.hx-container{width:min(1080px,calc(100% - 32px));margin:auto}
.hx-header{position:sticky;top:0;z-index:50;background:rgba(255,253,247,.94);backdrop-filter:blur(14px);border-bottom:2px solid var(--ink);box-shadow:0 3px 0 rgba(32,32,32,.04)}.hx-nav{min-height:74px;display:flex;align-items:center;gap:18px}.hx-brand{display:flex;align-items:center;gap:9px;text-decoration:none;color:var(--ink)}.hx-logo{font-weight:950;font-size:1.38rem;letter-spacing:-.045em}.hx-logo span{color:var(--orange)}.hx-brand .hx-mascot{width:42px;height:42px;flex:0 0 42px}.hx-menu{margin-left:auto;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.hx-menu a{text-decoration:none;font-weight:800;padding:8px 12px;border-radius:999px;color:var(--ink)}.hx-menu a:hover{background:var(--yellow-soft)}
.hx-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:2px solid var(--ink);border-radius:12px;padding:10px 17px;font:inherit;font-weight:900;text-decoration:none;cursor:pointer;transition:transform .15s,box-shadow .15s}.hx-button:hover{transform:translate(-1px,-2px);box-shadow:4px 5px 0 var(--ink)}.hx-button-primary{color:var(--ink);background:var(--yellow);box-shadow:3px 3px 0 var(--ink)}.hx-button-primary:hover{background:#ffd94f}.hx-button-light{color:var(--ink);background:white;border-color:var(--border);box-shadow:2px 2px 0 var(--border)}
.hx-hero{padding:58px 0 42px;overflow:hidden}.hx-hero-inner{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(280px,.92fr);align-items:center;gap:42px}.hx-kicker{display:inline-block;padding:6px 12px;border-radius:999px;background:var(--ink);color:#fff;font-weight:900;transform:rotate(-1deg)}.hx-hero h1{margin:15px 0 14px;max-width:780px;font-size:clamp(2.8rem,6.1vw,5.35rem);line-height:.91;letter-spacing:-.065em;text-wrap:balance}.hx-hero h1 .hx-gradient-text{display:inline;background:linear-gradient(110deg,var(--orange),#C83E24);-webkit-background-clip:text;background-clip:text;color:transparent;white-space:normal}.hx-hero p{max-width:680px;margin:0 0 25px;color:var(--muted);font-size:1.12rem}.hx-hero-art{display:flex;justify-content:center;align-items:center;min-height:300px}.hx-hero-art .hx-mascot{width:min(340px,100%);filter:drop-shadow(10px 13px 0 rgba(32,32,32,.12));transform:rotate(4deg);transition:transform .2s}.hx-hero-art .hx-mascot:hover{transform:rotate(-3deg) translateY(-4px)}
.hx-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:18px 0}.hx-toolbar h2{margin:0;font-size:1.45rem;letter-spacing:-.025em}.hx-feed{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;padding:10px 0 50px}
.hx-card{position:relative;background:var(--paper);border:2px solid var(--ink);border-radius:4px;padding:22px;box-shadow:6px 7px 0 var(--ink);transition:transform .16s,box-shadow .16s}.hx-card:nth-child(2n){transform:rotate(.65deg);background:#FFFDEB}.hx-card:nth-child(3n){transform:rotate(-.55deg);background:#FFF6C8}.hx-card:hover{transform:translateY(-4px) rotate(0deg);box-shadow:9px 11px 0 var(--ink)}.hx-card:before{content:"";position:absolute;top:-9px;left:50%;width:72px;height:20px;transform:translateX(-50%) rotate(-2deg);background:rgba(255,210,63,.55);border:1px solid rgba(32,32,32,.08)}.hx-card-meta{display:flex;gap:10px;align-items:center;color:var(--muted);font-size:.88rem;padding-top:4px}.hx-avatar{width:34px;height:34px;border:2px solid var(--ink);border-radius:50%;display:grid;place-items:center;background:var(--yellow);color:var(--ink);font-weight:950}.hx-card h2{margin:14px 0 8px;font-size:clamp(1.25rem,2.4vw,1.7rem);line-height:1.18}.hx-card h2 a{text-decoration:none;color:inherit}.hx-card-content{font-size:1.04rem}.hx-card-actions{display:flex;align-items:center;gap:8px;margin-top:18px;flex-wrap:wrap}.hx-pill{display:inline-flex;align-items:center;gap:6px;padding:6px 11px;border-radius:999px;background:#fff;border:2px solid var(--ink);color:var(--ink);text-decoration:none;font-weight:850}.hx-pill:hover{background:var(--yellow)}
.hx-form-wrap{max-width:760px;margin:45px auto 70px;background:#fff;border:2px solid var(--ink);border-radius:8px;padding:30px;box-shadow:8px 9px 0 var(--ink);position:relative}.hx-form-wrap:before{content:"";position:absolute;top:-12px;left:16%;width:95px;height:24px;background:rgba(255,210,63,.58);transform:rotate(-3deg)}.hx-form-wrap h1{margin-top:0}.hx-field{margin:18px 0}.hx-field label{display:block;font-weight:900;margin-bottom:7px}.hx-field input,.hx-field textarea,.hx-field select{width:100%;padding:13px 14px;border:2px solid var(--ink);border-radius:8px;background:#fffdf7;font:inherit;color:inherit}.hx-field textarea{min-height:190px;resize:vertical}.hx-note{color:var(--muted);font-size:.92rem}
.hx-single{padding:45px 0 70px}.hx-single>.hx-container>.hx-card{max-width:800px;margin:auto}.hx-comments{max-width:800px;margin:24px auto}.hx-comments h2{font-size:1.35rem}.comment-list{padding:0;list-style:none}.comment-list .comment{background:#fff;border:2px solid var(--ink);border-radius:8px;padding:16px;margin:12px 0;box-shadow:3px 3px 0 var(--border)}.comment-meta{font-size:.9rem}.comment-content{margin-top:8px}.comment-form-comment textarea{width:100%;min-height:130px}.comment-form input,.comment-form textarea{border:2px solid var(--ink);border-radius:8px;padding:10px;font:inherit}.comment-form .submit{border:2px solid var(--ink);border-radius:10px;padding:10px 17px;background:var(--yellow);color:var(--ink);font-weight:900;cursor:pointer;box-shadow:3px 3px 0 var(--ink)}
.hx-footer{margin-top:30px;padding:35px 0;border-top:2px solid var(--ink);color:var(--muted)}.hx-footer-inner{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}.hx-footer strong{color:var(--ink)}.hx-alert{padding:13px 15px;border-radius:8px;background:#FFF0EB;border:2px solid var(--orange);color:#8E2F1E}.hx-empty{text-align:center;padding:45px 20px;color:var(--muted)}
.hx-mascot{display:block;width:100%;height:auto}.hx-mascot-face{fill:var(--ink)}.hx-mascot-paper{fill:var(--yellow);stroke:var(--ink);stroke-width:7;stroke-linejoin:round}.hx-mascot-fold{fill:#FFF4B4;stroke:var(--ink);stroke-width:7;stroke-linejoin:round}.hx-mascot-shadow{fill:rgba(32,32,32,.12)}
@media(max-width:780px){.hx-hero{padding:38px 0 28px}.hx-hero-inner{grid-template-columns:1fr;text-align:center;gap:18px}.hx-hero h1{font-size:clamp(2.55rem,11vw,4.2rem);line-height:.93;max-width:100%;text-wrap:pretty}.hx-hero h1 .hx-gradient-text{display:inline}.hx-hero p{margin-left:auto;margin-right:auto}.hx-hero-art{min-height:210px}.hx-hero-art .hx-mascot{width:250px}.hx-feed{grid-template-columns:1fr}.hx-card:nth-child(2n),.hx-card:nth-child(3n){transform:none}.hx-card:hover{transform:translateY(-3px)}.hx-nav{min-height:64px}.hx-menu a:not(.hx-button){display:none}.hx-logo{font-size:1.18rem}.hx-brand .hx-mascot{width:36px;height:36px;flex-basis:36px}.hx-hero{padding-top:38px}}


/* Dark mode — Hexaspérant devient diabolique */
html[data-theme="dark"] body{background:radial-gradient(circle at 8% 0%,rgba(255,210,63,.08),transparent 26rem),radial-gradient(circle at 94% 12%,rgba(255,59,48,.09),transparent 24rem),var(--bg)}
html[data-theme="dark"] .hx-header{background:rgba(17,17,17,.94);border-bottom-color:#050505;box-shadow:0 3px 0 rgba(255,255,255,.03)}
html[data-theme="dark"] .hx-menu a:hover{background:var(--yellow-soft)}
html[data-theme="dark"] .hx-card{background:#27251E;border-color:#0B0B0B;box-shadow:6px 7px 0 #050505}
html[data-theme="dark"] .hx-card:nth-child(2n){background:#25231D}
html[data-theme="dark"] .hx-card:nth-child(3n){background:#2B281C}
html[data-theme="dark"] .hx-pill{background:#1D1D1D;color:var(--ink);border-color:#555}
html[data-theme="dark"] .hx-form-wrap,html[data-theme="dark"] .comment-list .comment{background:#1D1D1D;border-color:#0A0A0A;box-shadow:8px 9px 0 #050505}
html[data-theme="dark"] .hx-field input,html[data-theme="dark"] .hx-field textarea,html[data-theme="dark"] .hx-field select{background:#111;color:var(--ink);border-color:#555}
html[data-theme="dark"] .hx-alert{background:#351D19;border-color:var(--red);color:#FFDAD5}
html[data-theme="dark"] .hx-footer{border-top-color:#050505}
.hx-theme-toggle{border:2px solid var(--ink);background:var(--card);color:var(--ink);width:40px;height:40px;border-radius:50%;display:inline-grid;place-items:center;cursor:pointer;font-size:18px;box-shadow:3px 3px 0 var(--ink);margin-left:4px}
.hx-theme-toggle:hover{transform:translate(-1px,-2px)}
.hx-face-dark,.hx-mascot-horns{display:none}
html[data-theme="dark"] .hx-face-light{display:none}
html[data-theme="dark"] .hx-face-dark,html[data-theme="dark"] .hx-mascot-horns{display:block}
html[data-theme="dark"] .hx-mascot-paper{filter:drop-shadow(0 0 8px rgba(255,59,48,.12))}
html[data-theme="dark"] .hx-mascot-fold{fill:#FF9B24}
html[data-theme="dark"] .hx-hero-art .hx-mascot{filter:drop-shadow(10px 13px 0 rgba(0,0,0,.58)) drop-shadow(0 0 24px rgba(255,59,48,.38)) drop-shadow(0 0 52px rgba(255,59,48,.14))}
html[data-theme="dark"] .hx-mascot-horns{filter:drop-shadow(0 0 7px rgba(255,59,48,.85))}
html[data-theme="dark"] .hx-mascot-tail{display:block;filter:drop-shadow(0 0 6px rgba(255,59,48,.7))}
.hx-mascot-tail{display:none}
html[data-theme="dark"] .hx-kicker{background:#000;color:var(--yellow)}
@media(max-width:780px){.hx-theme-toggle{width:36px;height:36px;font-size:16px;margin-left:auto}.hx-menu{margin-left:0}}


.hx-auth-card{max-width:560px;margin:48px auto;padding:34px;background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);position:relative;overflow:hidden}.hx-auth-card:before{content:"";position:absolute;width:130px;height:30px;top:12px;left:50%;transform:translateX(-50%) rotate(-2deg);background:rgba(255,210,63,.38)}.hx-auth-mascot{text-align:center;margin:4px 0 12px}.hx-auth-mascot .hx-mascot{margin:auto;width:110px;height:100px}.hx-auth-card h1{text-align:center;margin:0 0 10px}.hx-auth-intro{text-align:center;color:var(--muted);margin:0 0 24px}.hx-auth-form{display:grid;gap:16px}.hx-auth-form label{display:grid;gap:7px;font-weight:700}.hx-auth-form input:not([type=checkbox]){width:100%;box-sizing:border-box;padding:13px 14px;border:1px solid var(--border);border-radius:12px;background:var(--bg);color:var(--ink);font:inherit}.hx-auth-form .hx-check{display:flex;align-items:center;gap:8px;font-weight:500;color:var(--muted)}.hx-auth-links,.hx-auth-switch{text-align:center}.hx-auth-links{display:flex;justify-content:center;gap:18px;flex-wrap:wrap;margin-top:20px}.hx-auth-links a,.hx-auth-switch a{font-weight:700;color:var(--link)}.hx-auth-error{padding:12px 14px;border-radius:12px;margin-bottom:18px;background:#fff0ed;color:#9b2c1f;border:1px solid #ffc7bd}.hx-auth-card .hx-btn{display:inline-block;text-decoration:none}.hx-auth-card button{border:0}.hx-auth-switch{margin-top:20px;color:var(--muted)}html[data-theme="dark"] .hx-auth-error{background:#3a1d1d;color:#ffb4ad;border-color:#6b2b2b}

/* J'aime Hexaspérant */
.hx-like-wrap{margin:28px 0 8px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}.hx-like-button{appearance:none;display:inline-flex;align-items:center;gap:8px;border:1px solid var(--border);background:var(--card);color:var(--ink);border-radius:999px;padding:10px 15px;font:inherit;font-weight:800;cursor:pointer;box-shadow:0 5px 14px rgba(32,32,32,.08);transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease,background .16s ease}.hx-like-button:hover{transform:translateY(-2px);box-shadow:0 8px 18px rgba(32,32,32,.12)}.hx-like-button:disabled{opacity:.65;cursor:wait;transform:none}.hx-like-heart{font-size:19px;line-height:1}.hx-like-count{min-width:1.4em;text-align:center;background:var(--surface-2);border-radius:999px;padding:2px 7px}.hx-like-button.is-liked{border-color:#ffaaa2;background:#fff1ef}.hx-like-button.is-liked .hx-like-count{background:#ffd8d3;color:#9b2c1f}.hx-like-login{font-size:.9rem;color:var(--muted)}html[data-theme="dark"] .hx-like-button.is-liked{background:#351d1d;border-color:#71312d}html[data-theme="dark"] .hx-like-button.is-liked .hx-like-count{background:#552421;color:#ffd0cb}


/* Top Hexaspérances */
.hx-top-page{padding:42px 0 70px}.hx-top-hero{display:grid;grid-template-columns:130px 1fr;gap:24px;align-items:center;max-width:920px;margin:0 auto 28px}.hx-top-mascot{width:120px}.hx-top-mascot .hx-mascot{width:120px;transform:rotate(-5deg);filter:drop-shadow(6px 8px 0 rgba(32,32,32,.12))}.hx-top-hero h1{font-size:clamp(2.2rem,6vw,4.2rem);line-height:.95;letter-spacing:-.055em;margin:10px 0}.hx-top-hero p{color:var(--muted);font-size:1.08rem;margin:0}.hx-top-tabs{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin:0 auto 28px}.hx-top-tab{display:inline-flex;padding:10px 16px;border:2px solid var(--ink);border-radius:999px;text-decoration:none;color:var(--ink);background:var(--card);font-weight:900;box-shadow:3px 3px 0 var(--ink)}.hx-top-tab:hover{background:var(--yellow);transform:translate(-1px,-1px)}.hx-top-tab.is-active{background:var(--yellow);box-shadow:4px 4px 0 var(--ink)}.hx-top-list{max-width:920px;margin:auto;display:grid;gap:14px}.hx-top-item{display:grid;grid-template-columns:64px 1fr auto;gap:16px;align-items:center;background:var(--paper);border:2px solid var(--ink);border-radius:6px;padding:18px 20px;box-shadow:5px 6px 0 var(--ink)}.hx-top-item:nth-child(2n){transform:rotate(.3deg)}.hx-top-item:nth-child(3n){transform:rotate(-.25deg)}.hx-top-rank{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:var(--yellow);border:2px solid var(--ink);font-size:1.3rem;font-weight:950;box-shadow:3px 3px 0 var(--ink)}.hx-top-main h2{margin:9px 0 5px;font-size:1.3rem;line-height:1.15}.hx-top-main h2 a{color:inherit;text-decoration:none}.hx-top-main h2 a:hover{color:var(--orange)}.hx-top-excerpt{color:var(--muted);font-size:.96rem}.hx-top-score{min-width:74px;text-align:center;display:grid;gap:1px;justify-items:center}.hx-top-score span{font-size:1.35rem}.hx-top-score strong{font-size:1.35rem;line-height:1}.hx-top-score small{color:var(--muted);font-weight:700}.hx-top-empty{text-align:center;padding:45px 20px}.hx-top-empty-mascot{width:150px;margin:0 auto 10px}.hx-top-empty h2{margin:0 0 7px}.hx-top-empty p{color:var(--muted)}
html[data-theme="dark"] .hx-top-item{background:#27251E;border-color:#0B0B0B;box-shadow:5px 6px 0 #050505}html[data-theme="dark"] .hx-top-tab{background:#1D1D1D;border-color:#555;box-shadow:3px 3px 0 #050505}html[data-theme="dark"] .hx-top-tab.is-active{background:var(--yellow);color:#202020;border-color:#202020}html[data-theme="dark"] .hx-top-rank{border-color:#111;box-shadow:3px 3px 0 #050505}
@media(max-width:780px){.hx-top-page{padding-top:30px}.hx-top-hero{grid-template-columns:1fr;text-align:center;gap:8px}.hx-top-mascot{width:90px;margin:auto}.hx-top-mascot .hx-mascot{width:90px}.hx-top-item{grid-template-columns:48px 1fr;gap:12px;padding:15px}.hx-top-score{grid-column:2;grid-row:1;justify-self:end;display:flex;align-items:center;gap:5px;min-width:0}.hx-top-score span{font-size:1rem}.hx-top-score strong{font-size:1.1rem}.hx-top-score small{display:none}.hx-top-main{grid-column:1 / -1;grid-row:2}.hx-top-item:nth-child(2n),.hx-top-item:nth-child(3n){transform:none}}
