:root{color-scheme:light;--bg:#f7f8fb;--text:#172338;--muted:#626f80;--line:#e3e8f0;--blue:#2065db;--blue-dark:#184fae;--surface:#fff;--soft:#edf3ff;--radius:17px;--shadow:0 12px 28px rgba(25,51,92,.045);font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Noto Sans JP","Segoe UI",sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-size:15px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #72a8ff;outline-offset:3px}.container{max-width:1060px;margin:0 auto;padding-left:24px;padding-right:24px}.site-header{background:rgba(255,255,255,.93);position:sticky;top:0;z-index:10;border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.header-content{min-height:79px;display:flex;align-items:center;justify-content:space-between;gap:12px}.brand{display:flex;align-items:center;gap:10px;font-size:16px;letter-spacing:-.035em;font-weight:800;line-height:1.2}.brand strong{font-weight:500}.brand small{display:block;color:var(--muted);font-weight:500;font-size:11px;margin-top:4px;letter-spacing:0}.brand-mark{display:grid;place-items:center;background:#18243a;color:white;border-radius:14px;font-size:21px;width:40px;height:40px}.header-actions{display:flex;align-items:center;gap:13px}.language-switch{display:flex;border:1px solid var(--line);border-radius:99px;padding:3px;background:var(--bg)}.language-switch button{border:0;background:transparent;color:var(--muted);font-size:12px;border-radius:99px;padding:6px 12px}.language-switch button.active{background:#1d2d47;color:#fff}.follow-link{font-size:13px;font-weight:750}.hero{padding-top:62px;padding-bottom:57px;border-bottom:1px solid var(--line)}.eyebrow,.section-kicker{color:var(--blue);font-size:12px;font-weight:850;letter-spacing:.12em}.hero h1{font-size:clamp(29px,4.4vw,48px);letter-spacing:-.047em;line-height:1.35;margin:15px 0 14px;max-width:780px}.hero p{font-size:16px;color:var(--muted);max-width:710px;line-height:1.8;margin:0}.hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:26px}.button{border-radius:12px;padding:11px 19px;display:inline-flex;align-items:center;justify-content:center;font-weight:750;font-size:13px;border:1px solid transparent;min-height:44px}.button-primary{background:var(--blue);color:#fff}.button-primary:hover{background:var(--blue-dark)}.button-secondary{background:#fff;border-color:var(--line)}.button-reset{background:#eef1f6;color:var(--text);border:0}.update-line{font-size:12px;color:var(--muted);margin-top:25px}.dot{display:inline-block;width:7px;height:7px;background:#42a47d;border-radius:50%;margin-right:5px}.section{padding:54px 0 12px;scroll-margin-top:95px}.section-head{margin-bottom:22px}.section h2,.follow-panel h2{margin:7px 0 4px;font-size:26px;letter-spacing:-.045em}.section-head p{margin:0;color:var(--muted);font-size:13px}.tabs{display:flex;gap:8px;flex-wrap:wrap}.tabs button{padding:9px 20px;border-radius:100px;background:white;border:1px solid var(--line);color:var(--muted);font-size:13px;font-weight:700}.tabs button.active{background:var(--text);border-color:var(--text);color:#fff}.count{margin:16px 0 11px;color:var(--muted);font-size:12px}.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.event-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow);min-width:0;display:flex;flex-direction:column;gap:10px}.card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.country-label{font-size:12px;color:var(--muted);font-weight:650}.deadline-pill{display:inline-flex;gap:5px;padding:4px 10px;border-radius:100px;font-size:11px;font-weight:800;white-space:nowrap;background:#eaf1ff;color:#1b5dbb}.deadline-pill.soon{background:#fff0e7;color:#b34a13}.deadline-pill.unknown{background:#eef1f5;color:#536073}.card-title{font-size:17px;line-height:1.5;letter-spacing:-.025em;font-weight:850;margin:0}.reward{font-size:13px;color:#2b415d;font-weight:700;margin:0}.card-description{font-size:12px;color:var(--muted);margin:0;flex:1}.meta{padding:11px 12px;border-radius:11px;background:#f5f7fa;font-size:12px;display:flex;flex-direction:column;gap:5px}.meta-label{color:var(--muted)}.source-link{align-self:flex-start;color:var(--blue);font-size:12px;font-weight:800}.source-link:hover{text-decoration:underline}.filter-panel{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:19px;display:grid;grid-template-columns:1.35fr 1fr 1fr auto;gap:12px;align-items:end;box-shadow:var(--shadow)}.field{min-width:0}.field label{display:block;color:#34435a;font-size:12px;font-weight:750;margin-bottom:7px}.field select,.field input{width:100%;border:1px solid #d8e0eb;border-radius:10px;height:44px;background:#fff;padding:0 11px;font-size:13px;color:var(--text)}.field-clear button{white-space:nowrap}.filter-note{font-size:12px;color:var(--muted);margin:11px 2px 0}.empty{grid-column:1/-1;padding:40px 22px;border:1px dashed #c8d4e3;border-radius:15px;background:#fff;color:var(--muted);text-align:center;font-size:13px}.error{color:#a32631;background:#fff0f1;border-radius:10px;padding:9px 12px;font-size:12px;margin-top:12px}.follow-panel{background:#e9f1ff;border:1px solid #dae7ff;border-radius:20px;padding:26px;margin-top:56px;display:flex;align-items:center;justify-content:space-between;gap:20px}.follow-panel h2{font-size:20px}.follow-panel p{margin:3px 0 0;color:#5b6b81;font-size:13px}.follow-panel .button{white-space:nowrap}.disclaimer{margin:35px 0 52px;padding:0 2px;color:var(--muted)}.disclaimer h2{font-size:13px;color:var(--text);margin:0 0 8px}.disclaimer p{font-size:12px;line-height:1.8;margin:0}.site-footer{border-top:1px solid var(--line);background:#fff}.footer-content{display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;padding-top:22px;padding-bottom:22px;font-size:11px;color:var(--muted)}
@media(max-width:820px){.filter-panel{grid-template-columns:1fr 1fr}.field:first-child{grid-column:1/-1}.field-clear{grid-column:1/-1}.field-clear button{width:100%}}@media(max-width:620px){.container{padding-left:16px;padding-right:16px}.header-content{min-height:67px}.brand{font-size:13px}.brand-mark{height:35px;width:35px;border-radius:10px}.top-follow{display:none}.hero{padding-top:40px;padding-bottom:40px}.hero p{font-size:14px}.section{padding-top:42px}.cards{grid-template-columns:1fr}.filter-panel{padding:13px;gap:11px}.follow-panel{align-items:stretch;flex-direction:column;padding:21px}.follow-panel .button{width:100%}.section h2{font-size:23px}.event-card{padding:17px}}

/* v0.8 explicit multi-country campaign grouping */
.country-selectors { display:flex; flex-wrap:wrap; gap:8px; margin:14px 0; }
.country-chip { padding:8px 11px; border:1px solid #cbd5e1; border-radius:20px; background:#fff; color:#25324a; font:inherit; font-size:0.85rem; cursor:pointer; }
.country-chip:hover, .country-chip:focus-visible { border-color:#0d5bcc; outline-offset:2px; background:#f2f6ff; }

/* v0.11: upcoming events */
.status-chip{display:inline-flex;align-self:flex-start;padding:3px 10px;border-radius:100px;background:#eaf7ee;color:#276940;font-size:11px;font-weight:800}

/* v0.12 long-term campaign and dates pending */
.country-chip {display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:3px;line-height:1.4;}
.country-chip small {display:block;font-size:11px;color:var(--muted);font-weight:500;}
.status-chip.pending {background:#fff5e8;color:#9b581e;}
