
/* MITSULI privacy controls */
:root{--gdpr-clearance:0px}body{padding-bottom:var(--gdpr-clearance)!important}
#mitsuli-cookie-bar,#mitsuli-cookie-panel{font-family:system-ui,-apple-system,"Noto Sans TC",sans-serif;box-sizing:border-box;color:#fff;z-index:2147483640}
#mitsuli-cookie-bar *,#mitsuli-cookie-panel *{box-sizing:border-box}
#mitsuli-cookie-bar{position:fixed;left:0;right:0;bottom:0;background:rgba(7,13,20,.91);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-top:1px solid rgba(255,255,255,.19);box-shadow:0 -14px 34px rgba(0,0,0,.18);padding:19px max(22px,env(safe-area-inset-right)) calc(19px + env(safe-area-inset-bottom)) max(22px,env(safe-area-inset-left));}
#mitsuli-cookie-bar[hidden],#mitsuli-cookie-panel[hidden],#mitsuli-cookie-launcher[hidden]{display:none!important}
.mitsuli-cookie-inner{width:min(1280px,100%);margin:auto;display:flex;align-items:center;gap:26px;justify-content:space-between}
.mitsuli-cookie-copy{max-width:850px;min-width:0}.mitsuli-cookie-heading{font-size:16px;font-weight:700;letter-spacing:.06em;margin-bottom:7px;display:flex;gap:9px;align-items:center}.mitsuli-cookie-copy p{font-size:13px;line-height:1.8;color:rgba(255,255,255,.84);margin:0}
.mitsuli-cookie-copy a,#mitsuli-cookie-panel a{color:#c7e5ff;text-decoration:underline;text-underline-offset:3px}
.mitsuli-cookie-actions{display:flex;gap:9px;flex-shrink:0;flex-wrap:wrap}.mitsuli-cookie-btn{min-height:42px;padding:9px 15px;border-radius:8px;border:1px solid rgba(255,255,255,.37);background:transparent;color:#fff;cursor:pointer;font:600 13px/1.3 inherit;white-space:nowrap;transition:background .16s,transform .16s}.mitsuli-cookie-btn:hover{background:rgba(255,255,255,.13);transform:translateY(-1px)}.mitsuli-cookie-btn.primary{background:#fff;color:#142333;border-color:#fff}.mitsuli-cookie-btn.primary:hover{background:#e7f3ff}.mitsuli-cookie-btn:focus-visible,.mitsuli-cookie-check:focus-visible{outline:3px solid #6ec8ff;outline-offset:3px}
#mitsuli-cookie-launcher{position:fixed;bottom:18px;left:16px;z-index:2147483600;color:#fff;background:rgba(7,13,20,.85);border:1px solid rgba(255,255,255,.24);border-radius:999px;padding:9px 13px;font:600 12px system-ui,sans-serif;cursor:pointer;box-shadow:0 5px 22px rgba(0,0,0,.2)}
#mitsuli-cookie-panel{position:fixed;bottom:16px;left:16px;width:min(470px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow:auto;padding:24px;background:rgba(8,16,25,.98);border-radius:16px;border:1px solid rgba(255,255,255,.2);box-shadow:0 18px 55px rgba(0,0,0,.45)}
#mitsuli-cookie-panel h2{font-size:20px;color:#fff;margin:0 0 12px}#mitsuli-cookie-panel p{font-size:13px;line-height:1.7;color:#e2eaf1;margin:0 0 14px}.mitsuli-cookie-option{display:flex;justify-content:space-between;gap:15px;padding:12px 0;border-top:1px solid rgba(255,255,255,.17);font-size:14px}.mitsuli-cookie-option small{display:block;opacity:.72;margin-top:3px}.mitsuli-cookie-check{width:21px;height:21px;accent-color:#62bcf6;flex-shrink:0}.mitsuli-panel-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
@media(max-width:850px){#mitsuli-cookie-bar{padding:14px 18px calc(14px + env(safe-area-inset-bottom))}.mitsuli-cookie-inner{flex-direction:column;align-items:stretch;gap:13px}.mitsuli-cookie-actions{width:100%}.mitsuli-cookie-actions button{flex:1}.mitsuli-cookie-heading{font-size:14px}.mitsuli-cookie-copy p{font-size:12px}}
@media(max-width:420px){.mitsuli-cookie-actions{gap:6px}.mitsuli-cookie-btn{font-size:12px;padding:9px 8px}}

/* Match all consent actions to the primary Accept button footprint. */
.mitsuli-cookie-actions .mitsuli-cookie-btn{width:104px;min-width:104px;height:44px;min-height:44px;padding:0 10px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 104px;font-family:system-ui,-apple-system,"Noto Sans TC",sans-serif;font-size:13px;font-weight:600;line-height:1.35;text-align:center}
@media(max-width:850px){.mitsuli-cookie-actions .mitsuli-cookie-btn{flex:1 1 0;width:auto;min-width:0}}

/* GDPR actions: equal footprint and a single aligned row on desktop */
#mitsuli-cookie-bar .mitsuli-cookie-inner {align-items:center;}
#mitsuli-cookie-bar .mitsuli-cookie-actions {display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:nowrap;}
#mitsuli-cookie-bar .mitsuli-cookie-actions .mitsuli-cookie-btn {box-sizing:border-box;appearance:none;-webkit-appearance:none;margin:0;width:104px;min-width:104px;max-width:104px;height:44px;min-height:44px;max-height:44px;padding:0 10px;display:flex;align-items:center;justify-content:center;flex:0 0 104px;font-family:system-ui,-apple-system,'Noto Sans TC',sans-serif;font-weight:600;font-size:13px;line-height:1.3;text-align:center;vertical-align:middle;transform:none;}
@media(max-width:850px){#mitsuli-cookie-bar .mitsuli-cookie-actions{justify-content:stretch;width:100%;}#mitsuli-cookie-bar .mitsuli-cookie-actions .mitsuli-cookie-btn{width:0;min-width:0;max-width:none;flex:1 1 0;}}

/* Same visual footprint for both preference-panel actions; override sitewide button styles. */
#mitsuli-cookie-panel .mitsuli-panel-actions{display:flex;align-items:center;justify-content:flex-start;gap:8px;flex-wrap:nowrap}
#mitsuli-cookie-panel .mitsuli-panel-actions .mitsuli-cookie-btn{appearance:none;-webkit-appearance:none;box-sizing:border-box;position:static;display:inline-flex;align-items:center;justify-content:center;flex:0 0 104px;width:104px;min-width:104px;max-width:104px;height:44px;min-height:44px;max-height:44px;margin:0;padding:0 10px;border-radius:8px;font:600 13px/1.3 system-ui,-apple-system,"Noto Sans TC",sans-serif;text-align:center;vertical-align:middle;transform:none}
@media(max-width:380px){#mitsuli-cookie-panel .mitsuli-panel-actions .mitsuli-cookie-btn{flex:1 1 0;width:auto;min-width:0;max-width:none}}
/* Footer privacy link: right aligned, immediately ABOVE the bottom legal-text divider. */
footer.site-footer .wrap.mitsuli-footer-privacy{display:flex;justify-content:flex-end;align-items:center;text-align:right;padding:12px 0 14px;margin:0 auto;border-bottom:1px solid rgba(255,255,255,.18)}
footer.site-footer .mitsuli-footer-privacy a{color:inherit;text-decoration:underline;text-underline-offset:4px;font-size:13px;line-height:1.6}
footer.site-footer .wrap.site-footer-bottom{border-top:0!important}


/* GDPR 2026-10-30: Keep the Save button label legible on mouse hover/focus. */
#mitsuli-cookie-panel .mitsuli-panel-actions .mitsuli-cookie-btn.primary,
#mitsuli-cookie-panel .mitsuli-panel-actions .mitsuli-cookie-btn.primary:hover,
#mitsuli-cookie-panel .mitsuli-panel-actions .mitsuli-cookie-btn.primary:focus,
#mitsuli-cookie-panel .mitsuli-panel-actions .mitsuli-cookie-btn.primary:active {color:#142333!important;-webkit-text-fill-color:#142333!important;background:#ffffff!important;border-color:#ffffff!important;opacity:1!important;text-shadow:none!important;}
#mitsuli-cookie-panel .mitsuli-panel-actions .mitsuli-cookie-btn.primary:hover {background:#e7f3ff!important;}
/* Put privacy link on the SAME baseline/row as LINE and YouTube, at far right. */
footer.site-footer .wrap.site-footer-contact{display:flex!important;justify-content:space-between;align-items:flex-end;column-gap:20px;row-gap:10px;flex-wrap:wrap;}
footer.site-footer .wrap.site-footer-contact > div:first-child{min-width:0;}
footer.site-footer .wrap.site-footer-contact .mitsuli-footer-privacy{margin-left:auto;align-self:flex-end;text-align:right;white-space:nowrap;padding:0!important;border:0!important;}
footer.site-footer .wrap.site-footer-contact .mitsuli-footer-privacy a{font-size:14px;color:#8ce0f0;text-decoration:underline;text-underline-offset:3px;}
footer.site-footer .wrap.site-footer-contact .mitsuli-footer-privacy a:hover{color:#fff;}
/* No extra line between footer social links and privacy policy. */
footer.site-footer .wrap.mitsuli-footer-privacy{border:0!important;}
@media(max-width:600px){footer.site-footer .wrap.site-footer-contact .mitsuli-footer-privacy{margin-left:auto;text-align:right;}}

/* 2026-10-30: Both consent surfaces live as full-width bottom banners.
   Reserve their actual heights in normal page flow to avoid covering footer text. */
#mitsuli-cookie-bar,#mitsuli-cookie-panel{position:fixed!important;left:0!important;right:0!important;bottom:0!important;top:auto!important;width:100%!important;max-width:none!important;max-height:min(85dvh,720px)!important;overflow-y:auto;transform:none!important;border-radius:0!important;margin:0!important;background:rgba(7,13,20,.94)!important;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:0!important;border-top:1px solid rgba(255,255,255,.22)!important;box-shadow:0 -12px 35px rgba(0,0,0,.22)!important;}
#mitsuli-cookie-panel{padding:20px max(22px,calc((100vw - 1180px)/2)) calc(20px + env(safe-area-inset-bottom))!important;}
#mitsuli-cookie-panel h2{font-size:18px!important;margin:0 0 6px!important}
#mitsuli-cookie-panel p{margin:0 0 10px!important}
#mitsuli-cookie-panel .mitsuli-cookie-option{padding:8px 0!important;align-items:center;}
#mitsuli-cookie-panel .mitsuli-panel-actions{margin-top:13px!important}
#mitsuli-cookie-panel .mitsuli-panel-actions .mitsuli-cookie-btn{color:#fff!important;-webkit-text-fill-color:#fff!important}
#mitsuli-cookie-panel .mitsuli-panel-actions .mitsuli-cookie-btn.primary,
#mitsuli-cookie-panel .mitsuli-panel-actions .mitsuli-cookie-btn.primary:hover{color:#142333!important;-webkit-text-fill-color:#142333!important}
/* Use a true two-column footer row. Privacy stays on the right, baseline aligned
   with the Line / YouTube links in the left column. No additional divider above it. */
footer.site-footer .wrap.site-footer-contact{display:grid!important;grid-template-columns:minmax(0,1fr) auto;align-items:end!important;gap:16px!important;}
footer.site-footer .wrap.site-footer-contact .mitsuli-footer-privacy{grid-column:2;justify-self:end;align-self:end!important;text-align:right!important;padding:0!important;margin:0!important;border:0!important;line-height:1.9!important}
footer.site-footer .wrap.site-footer-contact .mitsuli-footer-privacy a{display:inline!important;font-size:14px!important;line-height:1.9!important;vertical-align:baseline!important}
footer.site-footer .wrap.mitsuli-footer-privacy{border:0!important;}
@media(max-width:600px){footer.site-footer .wrap.site-footer-contact{grid-template-columns:minmax(0,1fr);gap:4px!important;}footer.site-footer .wrap.site-footer-contact .mitsuli-footer-privacy{grid-column:1;justify-self:end;}}

/* 2026-10-30: Accessible and roomy bottom-bar preference editor. */
#mitsuli-cookie-bar .mitsuli-cookie-actions .mitsuli-cookie-btn.primary,
#mitsuli-cookie-bar .mitsuli-cookie-actions .mitsuli-cookie-btn.primary:hover,
#mitsuli-cookie-bar .mitsuli-cookie-actions .mitsuli-cookie-btn.primary:focus-visible {
 background:#fb902b!important;border-color:#ffbb72!important;color:#121820!important;-webkit-text-fill-color:#121820!important;opacity:1!important;
}
#mitsuli-cookie-bar .mitsuli-cookie-actions .mitsuli-cookie-btn.primary:hover{background:#ffad52!important}
#mitsuli-cookie-panel{
 position:fixed!important;inset:auto 0 0!important;width:100%!important;height:auto!important;
 min-height:132px!important;max-height:min(75dvh,520px)!important;
 padding:22px max(22px,calc((100vw - 1280px)/2)) calc(22px + env(safe-area-inset-bottom))!important;
 display:grid!important;grid-template-columns:minmax(230px,1fr) minmax(430px,1.65fr) auto!important;
 align-items:center!important;column-gap:32px!important;row-gap:16px!important;
 overflow-x:hidden!important;overflow-y:auto!important;
 background:rgba(7,13,20,.94)!important;border-radius:0!important;
}
#mitsuli-cookie-panel[hidden]{display:none!important}
#mitsuli-cookie-panel .mitsuli-panel-intro{min-width:0!important;max-width:none!important}
#mitsuli-cookie-panel .mitsuli-panel-intro h2{font-size:16px!important;line-height:1.55!important;margin:0 0 8px!important;letter-spacing:.025em!important}
#mitsuli-cookie-panel .mitsuli-panel-intro p{font-size:13px!important;line-height:1.8!important;margin:0!important;letter-spacing:.02em!important}
#mitsuli-cookie-panel .mitsuli-panel-options{min-width:0!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:20px!important;flex-wrap:wrap!important}
#mitsuli-cookie-panel .mitsuli-cookie-option{flex:0 1 auto!important;display:flex!important;align-items:center!important;gap:10px!important;border:0!important;padding:4px 0!important;margin:0!important;font-size:13px!important;line-height:1.6!important;white-space:normal!important;letter-spacing:.015em!important}
#mitsuli-cookie-panel .mitsuli-cookie-option span{display:block!important}
#mitsuli-cookie-panel .mitsuli-cookie-option small{font-size:11px!important;line-height:1.5!important;margin-top:4px!important}
#mitsuli-cookie-panel .mitsuli-cookie-check{flex-shrink:0!important;width:19px!important;height:19px!important;margin:0!important}
#mitsuli-cookie-panel .mitsuli-panel-actions{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:10px!important;flex-wrap:nowrap!important;margin:0!important;min-width:218px!important}
#mitsuli-cookie-panel .mitsuli-panel-actions .mitsuli-cookie-btn{flex:0 0 104px!important;width:104px!important;min-width:104px!important;height:44px!important;line-height:1.35!important;white-space:nowrap!important}
#mitsuli-cookie-panel .mitsuli-panel-actions .mitsuli-cookie-btn.primary,
#mitsuli-cookie-panel .mitsuli-panel-actions .mitsuli-cookie-btn.primary:hover,
#mitsuli-cookie-panel .mitsuli-panel-actions .mitsuli-cookie-btn.primary:focus-visible{background:#fff!important;color:#142333!important;-webkit-text-fill-color:#142333!important}
@media(min-width:851px) and (max-width:1250px){
 #mitsuli-cookie-panel{grid-template-columns:minmax(180px,1fr) minmax(320px,1.5fr) auto!important;column-gap:18px!important;padding-left:22px!important;padding-right:22px!important}
 #mitsuli-cookie-panel .mitsuli-panel-options{gap:12px!important}
}
@media(max-width:1000px){
 #mitsuli-cookie-panel{grid-template-columns:minmax(0,1fr) auto!important;min-height:0!important;row-gap:14px!important}
 #mitsuli-cookie-panel .mitsuli-panel-intro{grid-column:1!important}
 #mitsuli-cookie-panel .mitsuli-panel-options{grid-column:1!important;grid-row:2!important;justify-content:flex-start!important;gap:12px 22px!important}
 #mitsuli-cookie-panel .mitsuli-panel-actions{grid-column:2!important;grid-row:1 / span 2!important}
}
@media(max-width:700px){
 #mitsuli-cookie-panel{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:14px!important;padding:18px 18px calc(18px + env(safe-area-inset-bottom))!important}
 #mitsuli-cookie-panel[hidden]{display:none!important}
 #mitsuli-cookie-panel .mitsuli-panel-options{justify-content:flex-start!important;gap:10px!important}
 #mitsuli-cookie-panel .mitsuli-cookie-option{padding:8px 10px!important;border:1px solid rgba(255,255,255,.22)!important;border-radius:8px!important}
 #mitsuli-cookie-panel .mitsuli-panel-actions{justify-content:flex-end!important;width:100%!important;min-width:0!important}
}
