/* ONLYMES HERO V2. Local namespaces; never target body.home, global buttons or old theme panels. */
.om2-ui,.om2-treehole-anchor,.om2-treehole-dialog {
  --om2-text:#f2ede8;--om2-muted:#b7b4c0;--om2-accent:#b9b6ff;--om2-rose:#f78fb8;
  font-family:Inter,"Noto Sans SC","Microsoft YaHei",system-ui,sans-serif;
  color:var(--om2-text);font-size:15px;line-height:1.55;box-sizing:border-box;
}
.om2-ui *,.om2-treehole-anchor *,.om2-treehole-dialog *{box-sizing:border-box;}
.om2-ui [hidden],.om2-treehole-dialog [hidden]{display:none!important;}
.om2-ui{position:absolute;inset:0;z-index:30;pointer-events:none;isolation:isolate;--om2-info-y:70%;--om2-info-width:580px;--om2-pager-bottom:30px;}
.om2-ui a,.om2-ui button,.om2-ui details{pointer-events:auto;}
.om2-ui button,.om2-treehole-dialog button,.om2-treehole-orb{font:inherit;-webkit-tap-highlight-color:transparent;cursor:pointer;}
.om2-brand{position:absolute;top:23px;left:32px;color:var(--om2-text);text-decoration:none;font:46px/1 Georgia,"Times New Roman",serif;letter-spacing:-.03em;}
.om2-brand span{display:block;margin-top:13px;font:9px/1.5 Inter,system-ui,sans-serif;letter-spacing:.3em;color:#ada8b5;}
/* No opaque full-width header/banner; only three independent buttons. */
.om2-tabs{position:absolute;top:30px;left:50%;transform:translateX(-50%);display:flex;gap:18px;pointer-events:auto;}
.om2-tab{min-width:110px;min-height:46px;padding:10px 25px;position:relative;border-radius:99px;border:1px solid #444657;
  background:linear-gradient(165deg,rgba(33,37,58,.84),rgba(10,13,24,.8));color:#b9b5c3;letter-spacing:.18em;
  box-shadow:inset 0 1px 0 #ffffff13;transition:color .16s,background-color .16s,transform .16s;}
.om2-tab::after{content:"";position:absolute;inset:-1px;border-radius:inherit;border:1px solid #bfaff5;box-shadow:0 0 15px #a693ff32,inset 0 -2px 8px #8d9bfb26;opacity:0;pointer-events:none;transition:opacity .18s;}
.om2-tab[aria-pressed=true]{color:#fff8f5;background:linear-gradient(165deg,#403452,#111626);}
.om2-tab[aria-pressed=true]::after{opacity:1;}
.om2-tab:hover{color:#fff8f5;transform:translateY(-1px);}
.om2-tab:active{transform:scale(.98);}
.om2-tab[data-pending=true]{color:#e6d7f6;}
.om2-ui :focus-visible,.om2-treehole-anchor :focus-visible,.om2-treehole-dialog :focus-visible{outline:2px solid #e6ccff;outline-offset:5px;}
.om2-status{position:absolute;top:88px;left:50%;transform:translateX(-50%);width:min(680px,80vw);margin:0;text-align:center;color:#eee2ed;font-size:12px;pointer-events:none;}
.om2-status:empty{display:none;}
.om2-meta{position:absolute;top:var(--om2-info-y);left:50%;transform:translateX(-50%);width:var(--om2-info-width);text-align:center;}
.om2-eyebrow{font:10px/1.5 Inter,system-ui,sans-serif;letter-spacing:.32em;color:#cac4d7;}
.om2-title{font:400 clamp(22px,2.15vw,33px)/1.3 Georgia,"Noto Serif SC","Songti SC",SimSun,serif;margin:5px auto 6px;text-wrap:balance;max-width:100%;overflow-wrap:anywhere;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;}
.om2-description{margin:0 auto;color:#c4c0cb;font-size:14px;line-height:1.5;max-width:500px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;}
.om2-launch{display:inline-flex;align-items:center;min-height:36px;margin-top:3px;padding:3px 10px;color:#decaf0;font-size:12px;text-decoration:none;letter-spacing:.08em;}
.om2-launch:hover{text-decoration:underline;text-underline-offset:4px;}
.om2-coming{font-size:12px;color:#b7a9bc;display:block;margin-top:7px;}
.om2-pager{position:absolute;left:50%;bottom:calc(var(--om2-pager-bottom) + env(safe-area-inset-bottom,0px));transform:translateX(-50%);text-align:center;pointer-events:auto;}
.om2-pager output{font:10px/1.5 Inter,system-ui,sans-serif;font-variant-numeric:tabular-nums;letter-spacing:.22em;color:#d4cddf;}
.om2-pager-controls{display:flex;align-items:center;gap:20px;margin-top:10px;}
.om2-direction{width:54px;height:54px;border-radius:50%;padding:14px;color:#f5edf8;border:1px solid #aaa5d5;background:radial-gradient(ellipse at 40% 20%,#30324b,#111420 74%);
  box-shadow:inset 0 1px 2px #ffffff30,0 0 15px #8a91f522;transition:transform .16s,background-color .16s,opacity .16s;}
.om2-direction:hover:not(:disabled){transform:translateY(-2px);background:#393251;}
.om2-direction:active:not(:disabled){transform:scale(.95);}
.om2-direction svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;}
.om2-direction:disabled{opacity:.32;cursor:default;}
.om2-pager-mark{width:23px;height:1px;background:#bdb7ef;box-shadow:0 0 8px #a199ff;}
.om2-directory{position:absolute;right:25px;bottom:26px;max-width:320px;font-size:12px;color:#bdb6c8;}
.om2-directory summary{cursor:pointer;min-height:44px;padding:12px;list-style:none;}
.om2-directory[open]{background:#12131eee;border:1px solid #3d384f;border-radius:14px;max-height:40vh;overflow:auto;}
.om2-directory [data-list]{display:grid;padding:4px 10px 10px;gap:5px;}
.om2-directory button{color:#ddd6e6;background:transparent;border:0;padding:9px;min-height:44px;text-align:left;}
.om2-directory button[aria-pressed=true]{background:#393148;border-radius:8px;}
.om2-motion-setting{display:grid;gap:8px;padding:12px;}
.om2-motion-setting select{min-height:44px;max-width:100%;color:#eee;background:#1d1d2a;border:1px solid #625870;border-radius:8px;padding:8px;font:inherit;}
.om2-motion-note{max-width:260px;padding:0 12px 12px;margin:0;line-height:1.6;color:#bdb6c8;}
/* Fixed hit area. Only the inner decorations move. */
.om2-treehole-anchor{position:fixed;left:28px;bottom:calc(27px + env(safe-area-inset-bottom,0px));z-index:60;width:68px;height:68px;}
.om2-treehole-orb{position:relative;width:68px;height:68px;border:0;padding:0;border-radius:50%;color:#fff3f8;background:none;}
.om2-treehole-shell{position:absolute;inset:0;display:grid;place-items:center;border-radius:50%;border:1px solid #ffdcecb5;
  background:radial-gradient(circle at 32% 23%,#ffbedb,#d6639a 46%,#8c345f 100%);box-shadow:inset 0 2px 6px #fff2,0 0 0 5px #e584ac0d,0 0 26px #e67cb235;
  transition:transform .18s;pointer-events:none;}
.om2-treehole-shell svg{width:30px;height:30px;}
.om2-treehole-halo{position:absolute;inset:-11px;border:1px solid #f38ebc8c;border-radius:50%;box-shadow:0 0 18px #e67ab523;opacity:.28;pointer-events:none;animation:om2-halo 3.9s ease-in-out infinite;}
.om2-treehole-flight{position:absolute;left:43px;top:7px;width:18px;height:18px;color:#ffd2e3;opacity:0;pointer-events:none;animation:om2-letter 5.4s ease-in-out infinite;}
.om2-treehole-flight svg{width:100%;height:100%;}
.om2-treehole-tip{position:absolute;left:83px;bottom:19px;white-space:nowrap;border:1px solid #d297b552;border-radius:99px;padding:6px 11px;background:#211723;color:#f9d3e5;font-size:12px;
  opacity:0;transform:translateX(-4px);pointer-events:none;transition:opacity .16s,transform .16s;}
.om2-treehole-orb:hover .om2-treehole-shell,.om2-treehole-orb:focus-visible .om2-treehole-shell{transform:translateY(-2px) scale(1.035);}
.om2-treehole-orb:active .om2-treehole-shell{transform:scale(.96);}
.om2-treehole-orb:hover .om2-treehole-tip,.om2-treehole-orb:focus-visible .om2-treehole-tip{opacity:1;transform:none;}
@keyframes om2-halo{0%,100%{opacity:.24;transform:scale(.98);}50%{opacity:.68;transform:scale(1.105);}}
@keyframes om2-letter{0%,71%,100%{opacity:0;transform:translate(0,0) rotate(-6deg) scale(.65);}76%{opacity:.88;transform:translate(4px,-6px) rotate(-10deg) scale(.9);}90%{opacity:0;transform:translate(22px,-33px) rotate(9deg) scale(.75);}}
.om2-treehole-anchor[data-open] .om2-treehole-halo,.om2-treehole-anchor[data-open] .om2-treehole-flight{animation-play-state:paused;}
/* Critical: THIS is the full-window mask. Do not replace showModal() with an 'open' attribute. */
.om2-treehole-dialog::backdrop{background:rgba(2,4,12,.78);}
.om2-treehole-dialog{position:fixed;inset:0;margin:auto;width:min(508px,calc(100vw - 32px));max-height:calc(100dvh - 40px);overflow-y:auto;overscroll-behavior:contain;
  padding:32px 34px 24px;border:1px solid #db9cbea6;border-radius:26px;background:linear-gradient(155deg,#242231 0%,#151521 45%,#14141f 100%);
  color:#f6eef4;box-shadow:0 25px 85px #000a,0 0 24px #e692b31a,inset 0 1px 0 #ffe8f31c;}
.om2-treehole-dialog[open]{animation:om2-modal-in .15s ease-out both;}
@keyframes om2-modal-in{from{opacity:0;transform:translateY(6px);}to{opacity:1;transform:none;}}
.om2-dialog-close{position:absolute;right:13px;top:12px;width:44px;height:44px;border:0;background:transparent;border-radius:50%;color:#dbccd8;padding:11px;}
.om2-dialog-close:hover{background:#ffffff0a;color:white;}
.om2-dialog-close svg{width:100%;height:100%;stroke:currentColor;stroke-width:1.5;fill:none;stroke-linecap:round;}
.om2-dialog-heading{text-align:center;}
.om2-dialog-emblem{display:grid;place-items:center;width:56px;height:50px;margin:0 auto 10px;color:#ffd3e8;}
.om2-dialog-emblem svg{width:43px;height:43px;}
.om2-dialog-heading h2{font:400 26px/1.35 Georgia,"Noto Serif SC",SimSun,serif;margin:0 0 18px;}
.om2-dialog-intro{padding:14px 16px;background:#32232d;border:1px solid #7f4b624d;border-radius:13px;margin:0 0 19px;color:#e7d3df;font-size:13px;line-height:1.8;}
.om2-treehole-form label{display:block;color:#d4c9d4;font-size:13px;margin-top:14px;}
.om2-treehole-form label span{color:#aaa0ae;}
.om2-treehole-form input,.om2-treehole-form textarea{display:block;width:100%;margin-top:7px;border:1px solid #71657780;border-radius:12px;background:#23232f;color:#fff4fc;padding:12px 13px;font:14px/1.5 Inter,"Microsoft YaHei",sans-serif;}
.om2-treehole-form input{min-height:46px;}
.om2-treehole-form textarea{resize:vertical;min-height:116px;max-height:40dvh;}
.om2-treehole-form input::placeholder,.om2-treehole-form textarea::placeholder{color:#a099aa;}
.om2-treehole-form input:focus,.om2-treehole-form textarea:focus{outline:1px solid #f1a0c2;outline-offset:0;border-color:#f1a0c2;}
.om2-character-count{display:block;text-align:right;color:#b7aabd;font-size:11px;margin-top:4px;}
.om2-preview-notice{font-size:11px;color:#c8adbd;line-height:1.6;margin:10px 0;}
.om2-treehole-submit{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:48px;padding:10px;border:1px solid #ffdcf0;border-radius:16px;
  background:linear-gradient(135deg,#ef8eb8,#d56097);color:#fff2fa;font-size:15px;letter-spacing:.06em;box-shadow:0 3px 0 #6f335b,0 0 20px #d875a422;}
.om2-treehole-submit svg{width:20px;height:20px;}
.om2-treehole-submit:disabled{cursor:not-allowed;opacity:.65;}
.om2-dialog-endnote{text-align:center;margin:20px 0 0;color:#bda7bc;font:italic 13px/1.5 Georgia,SimSun,serif;letter-spacing:.1em;}
@media(max-width:760px){.om2-brand{left:22px;font-size:32px;top:17px;}.om2-brand span{font-size:7px;letter-spacing:.12em;margin-top:7px;}.om2-tabs{top:85px;gap:10px;}.om2-tab{min-width:88px;min-height:44px;padding:9px 18px;font-size:14px;}.om2-status{top:137px;}}
@media(max-width:480px){.om2-brand{font-size:29px;}.om2-tabs{top:74px;}.om2-status{top:123px;}.om2-meta{padding:0 12px;}.om2-title{font-size:23px;}.om2-description{font-size:12px;line-height:1.55;}.om2-launch{font-size:12px;min-height:40px;}.om2-direction{width:48px;height:48px;padding:12px;}.om2-pager-controls{gap:17px;margin-top:7px;}.om2-treehole-anchor{left:17px;bottom:calc(25px + env(safe-area-inset-bottom,0px));width:52px;height:52px;}.om2-treehole-orb{width:52px;height:52px;}.om2-treehole-shell svg{width:25px;height:25px;}.om2-treehole-halo{inset:-7px;}.om2-treehole-tip{left:66px;bottom:14px;font-size:11px;}.om2-treehole-flight{left:29px;width:15px;height:15px;}.om2-directory{bottom:26px;right:8px;max-width:280px;}.om2-directory summary{font-size:10px;padding:14px 4px;}.om2-treehole-dialog{padding:25px 21px 20px;border-radius:22px;max-height:calc(100dvh - 26px);width:calc(100vw - 26px);}.om2-dialog-heading h2{font-size:24px;}.om2-treehole-form input,.om2-treehole-form textarea{font-size:16px;}.om2-dialog-intro{font-size:12px;}}
@media(prefers-reduced-motion:reduce){.om2-treehole-halo,.om2-treehole-flight{animation:none!important;}.om2-treehole-flight{opacity:0;}.om2-treehole-halo{opacity:.44;}.om2-treehole-dialog[open]{animation:none;}.om2-tab,.om2-tab::after,.om2-direction,.om2-treehole-shell,.om2-treehole-tip{transition:none!important;}.om2-tab:hover,.om2-direction:hover:not(:disabled),.om2-treehole-orb:hover .om2-treehole-shell{transform:none;}}
