/* ARC PLUG / OUTPOST 201 / DARK GRIT — shared, build-free storefront system.
   Existing application scripts, data attributes and server endpoints remain intact. */
:root{--op-paper:#0c1012;--op-paper-2:#161d21;--op-ink:#e4e8e5;--op-muted:#a5afad;--op-line:#343e41;--op-orange:#e58650;--op-green:#a6bd94;--op-dark:#090d0f;--op-white:#e9ede8;--op-display:"Barlow Condensed","Noto Sans Display ExtraCondensed","Roboto Condensed","Arial Narrow",Impact,sans-serif;--op-body:"Inter",Arial,sans-serif;--op-mono:ui-monospace,SFMono-Regular,Consolas,"Liberation Mono",monospace;--op-max:1392px;--op-surface:#171e22;--op-surface-2:#20282c;--op-input:#0d1316;--op-on-accent:#111514;--op-line-strong:#566163;}
html{scroll-behavior:smooth;scroll-padding-top:110px;}
html body.outpost-page{margin:0;padding:0;background:var(--op-paper)!important;color:var(--op-ink);font-family:var(--op-body);font-size:15px;line-height:1.6;min-width:320px;display:block;overflow-x:clip;color-scheme:dark;-webkit-font-smoothing:antialiased;}
.outpost-page *,.outpost-page *::before,.outpost-page *::after{box-sizing:border-box;}
.outpost-page [hidden]{display:none!important;}
.outpost-page a{color:inherit;text-decoration:none;}
.outpost-page button,.outpost-page input,.outpost-page select,.outpost-page textarea{font:inherit;}
.outpost-page button,.outpost-page summary{cursor:pointer;}
.outpost-page img{max-width:100%;}
.outpost-page :is(a,button,input,select,textarea,summary):focus-visible{outline:3px solid var(--op-orange)!important;outline-offset:5px!important;box-shadow:none;}
.outpost-page ::selection{background:var(--op-orange);color:white;}
.outpost-page .op-icon{width:22px;height:22px;display:inline-block;flex-shrink:0;vertical-align:middle;}
.outpost-page .op-wrap{width:min(var(--op-max),calc(100% - 96px));margin-inline:auto;}
.outpost-page .op-eyebrow{font:600 10px/1.5 var(--op-mono);letter-spacing:1.7px;display:flex;align-items:center;gap:10px;text-transform:uppercase;}
.outpost-page .op-eyebrow>i{height:6px;width:6px;display:block;background:var(--op-orange);border-radius:50%;}
.outpost-page .op-signal{display:inline-block;flex:none;width:6px;height:6px;border-radius:50%;background:#aac487;box-shadow:0 0 0 4px #aac48712;}
.outpost-page .op-skip{position:fixed;left:20px;top:-100px;z-index:100001;background:var(--op-dark);color:var(--op-white);padding:14px 24px;font-weight:700;}
.outpost-page .op-skip:focus{top:12px;}
/* Utility line and persistent header */
.outpost-page .op-utility{background:var(--op-dark);color:#bfc1b6;height:31px;font:500 9px/1 var(--op-mono);letter-spacing:1.1px;position:relative;z-index:1020;}
.outpost-page .op-utility>.op-wrap{height:100%;display:flex;align-items:center;justify-content:space-between;gap:20px;}
.outpost-page .op-utility span,.outpost-page .op-utility a{display:flex;gap:10px;align-items:center;}
.outpost-page .op-utility .op-icon{width:12px;height:12px;}
.outpost-page .op-header{position:sticky;top:0;z-index:1000;background:var(--op-paper);border-bottom:1px solid var(--op-line);box-shadow:none;width:100%;margin:0;}
.outpost-page .op-nav{display:flex;align-items:center;justify-content:space-between;gap:36px;min-height:87px;}
.outpost-page .op-brand{display:inline-flex;gap:12px;align-items:center;flex-shrink:0;}
.outpost-page .op-brand-mark{display:grid;place-items:center;width:40px;height:44px;background:var(--op-orange);color:var(--op-paper);clip-path:polygon(0 0,80% 0,100% 18%,100% 100%,20% 100%,0 82%);}
.outpost-page .op-brand-mark .op-icon{width:24px;height:30px;stroke-width:1.3;fill:currentColor;stroke:none;}
.outpost-page .op-wordmark{font:800 28px/.95 var(--op-display);letter-spacing:.4px;display:block;}
.outpost-page .op-wordmark small{font:600 7px/1 var(--op-mono);letter-spacing:1px;display:block;margin-top:7px;}
.outpost-page .op-navlinks{display:flex;gap:29px;align-items:center;margin-left:auto;height:87px;}
.outpost-page .op-navlinks>a,.outpost-page .op-market-toggle{font:600 12px/1 var(--op-body);background:none;border:0;padding:12px 0;color:var(--op-ink);white-space:nowrap;position:relative;border-radius:0;box-shadow:none;}
.outpost-page .op-navlinks>a[aria-current=page]::after{content:"";display:block;position:absolute;bottom:1px;left:0;width:17px;height:2px;background:var(--op-orange);}
.outpost-page .op-navlinks>a:hover,.outpost-page .op-market-toggle:hover{color:var(--op-orange);}
.outpost-page .op-market{position:relative;height:100%;display:flex;align-items:center;}
.outpost-page .op-market-toggle{display:flex;align-items:center;gap:7px;}
.outpost-page .op-chevron{width:12px;height:12px;transition:transform .2s;}
.outpost-page .op-market-toggle[aria-expanded=true] .op-chevron{transform:rotate(180deg);}
.outpost-page .op-mega{position:absolute;top:calc(100% - 1px);left:-130px;width:410px;background:var(--op-paper);border:1px solid var(--op-line);border-top:3px solid var(--op-orange);padding:20px;box-shadow:0 22px 38px #16181328;text-align:left;z-index:1010;}
.outpost-page .op-mega-label{display:flex;justify-content:space-between;font:600 9px/1 var(--op-mono);letter-spacing:1px;color:var(--op-muted);padding:2px 0 18px;}
.outpost-page .op-mega-label>b{font-weight:400;}
.outpost-page .op-dept-link{display:flex;align-items:center;gap:14px;padding:17px 8px;border-top:1px solid var(--op-line);transition:background .18s,padding .18s;}
.outpost-page .op-dept-link:hover{background:var(--op-paper-2);padding-left:13px;}
.outpost-page .op-dept-link>.op-icon{width:22px;height:22px;color:var(--op-orange);}
.outpost-page .op-dept-link>.op-icon:last-child{width:15px;height:15px;margin-left:auto;color:var(--op-muted);}
.outpost-page .op-dept-num{font:10px/1 var(--op-mono);color:var(--op-muted);}
.outpost-page .op-dept-link strong{display:block;font-size:13px;font-weight:700;line-height:1.35;}
.outpost-page .op-dept-link small{display:block;font-size:10px;line-height:1.4;color:var(--op-muted);margin-top:4px;}
.outpost-page .op-mega-foot{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--op-line);padding-top:15px;font:9px/1.4 var(--op-mono);gap:10px;}
.outpost-page .op-mega-foot>a{display:flex;align-items:center;gap:5px;color:var(--op-orange);}
.outpost-page .op-mega-foot .op-icon{width:12px;height:12px;}
html body.outpost-page .op-actions{display:flex;align-items:center;justify-content:flex-end;gap:16px;flex-wrap:nowrap;margin:0;padding:0;min-width:0;}
.outpost-page .op-orders{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:600;white-space:nowrap;order:2;}
.outpost-page .op-orders .op-icon{width:17px;height:18px;}
html body.outpost-page .op-actions #discordAuthControl{margin:0;display:flex;align-items:center;gap:8px;min-height:40px;border:1px solid var(--op-ink);border-radius:2px;padding:10px 13px;background:var(--op-surface-2);color:var(--op-white);box-shadow:none;order:3;max-width:205px;white-space:nowrap;}
.outpost-page .op-actions #discordAuthControl>span:last-child{min-width:0;display:block;}
.outpost-page .op-actions #discordAuthControl strong{font:600 10px/1.2 var(--op-body);display:block;max-width:140px;overflow:hidden;text-overflow:ellipsis;}
.outpost-page .op-actions #discordAuthControl small{display:none;}
.outpost-page .op-actions :is(.discord-auth-mark,.discord-auth-avatar-fallback){width:20px;height:20px;border-radius:2px;background:transparent;color:var(--op-white);display:grid;place-items:center;font-size:12px;font-weight:800;}
.outpost-page .op-actions #discordAuthControl img{width:22px;height:22px;border-radius:2px;}
.outpost-page .op-actions #resellerPortalControl,.outpost-page .op-actions #customerOrdersControl{display:none!important;}
.outpost-page .op-actions #adminCommandControl:not([hidden]){display:flex;gap:4px;align-items:center;order:1;font-size:10px;border:0;background:transparent;padding:0;min-height:0;color:var(--op-ink);box-shadow:none;}
.outpost-page .op-menu-button{display:none;width:40px;height:40px;align-items:center;justify-content:center;flex-direction:column;gap:6px;border:1px solid var(--op-line);background:transparent;border-radius:2px;order:5;}
.outpost-page .op-menu-button>span{display:block;width:17px;height:1px;background:var(--op-ink);transition:transform .2s;}
.outpost-page .op-menu-button[aria-expanded=true]>span:first-child{transform:translateY(3.5px) rotate(45deg);}
.outpost-page .op-menu-button[aria-expanded=true]>span:last-child{transform:translateY(-3.5px) rotate(-45deg);}
html body.outpost-page .op-mobile{background:var(--op-paper);position:absolute;left:0;right:0;top:100%;padding:24px;max-height:calc(100dvh - 75px);overflow:auto;border-bottom:2px solid var(--op-orange);box-shadow:0 30px 40px #17181326;z-index:1010;transform:none;opacity:1;visibility:visible;}
.outpost-page .op-mobile-label{font:10px var(--op-mono);letter-spacing:1px;color:var(--op-muted);margin-bottom:18px;}
.outpost-page .op-mobile>a{display:flex;align-items:center;gap:14px;padding:16px 0;border-bottom:1px solid var(--op-line);color:var(--op-ink);font:600 16px var(--op-body);border-radius:0;background:none;margin:0;}
.outpost-page .op-mobile>a>span{font:10px var(--op-mono);color:var(--op-orange);}
.outpost-page .op-mobile>a>.op-icon{margin-left:auto;width:18px;height:18px;}
.outpost-page .op-mobile-extra{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:20px;}
.outpost-page .op-mobile-extra>a{font-size:12px;padding:8px 0;}
/* Shared link, button and rule vocabulary */
.outpost-page .op-button{display:inline-flex;align-items:center;justify-content:center;gap:22px;min-height:50px;padding:15px 23px;font:600 11px/1.3 var(--op-body);border:1px solid transparent;border-radius:2px;transition:background .18s,transform .18s,color .18s;position:relative;white-space:normal;text-align:center;}
.outpost-page .op-button .op-icon{width:18px;height:18px;}
.outpost-page .op-button:hover{transform:translateY(-2px);}
.outpost-page .op-button-orange{background:var(--op-orange);color:var(--op-on-accent);border-color:var(--op-orange);}
.outpost-page .op-button-orange:hover{background:#ee9a69;border-color:#c83d24;}
.outpost-page .op-button-dark{background:var(--op-dark);color:var(--op-white);}
.outpost-page .op-button-ghost{color:var(--op-white);border-color:#f2efe65c;background:#1c1e1933;}
.outpost-page .op-button-ghost:hover{background:#f2efe611;border-color:var(--op-white);}
.outpost-page .op-text-link{display:inline-flex;align-items:center;gap:18px;font-size:11px;font-weight:700;padding:10px 0;border-bottom:1px solid currentColor;}
.outpost-page .op-text-link .op-icon{width:17px;height:17px;}
.outpost-page .op-text-link:hover{color:var(--op-orange);}
.outpost-page .op-stripes{display:flex;gap:4px;width:100px;height:8px;transform:skewX(-22deg);}
.outpost-page .op-stripes i{flex:1;background:#798473;}
.outpost-page .op-stripes i:nth-child(2){background:var(--op-surface-2);}
.outpost-page .op-stripes i:nth-child(3){background:#da8546;}
.outpost-page .op-stripes i:nth-child(4){background:var(--op-orange);}
/* Common footer */
.outpost-page .op-footer{background:var(--op-paper);color:var(--op-ink);padding:60px 0 24px;border-top:1px solid var(--op-line);width:100%;clear:both;}
.outpost-page .op-footer-top{display:grid;grid-template-columns:1fr 1fr auto;gap:30px;align-items:center;padding-bottom:40px;border-bottom:1px solid var(--op-line);}
.outpost-page .op-footer-top>p{margin:0;color:var(--op-muted);font-size:12px;line-height:1.9;}
.outpost-page .op-footer-discord{display:flex;align-items:center;gap:24px;font-size:12px;font-weight:600;}
.outpost-page .op-footer-discord:hover{color:var(--op-orange);}
.outpost-page .op-footer-links{padding:40px 0;display:grid;grid-template-columns:1fr 1fr 1.35fr;gap:40px;}
.outpost-page .op-footer-links>div{display:flex;flex-direction:column;align-items:flex-start;gap:10px;}
.outpost-page .op-footer-links>div>span{font:500 9px var(--op-mono);letter-spacing:1.4px;color:var(--op-muted);margin-bottom:6px;}
.outpost-page .op-footer-links a{font-size:12px;}
.outpost-page .op-footer-links a:hover{text-decoration:underline;text-underline-offset:4px;}
.outpost-page .op-footer-links>.op-footer-stamp{border-left:1px solid var(--op-line);padding-left:70px;position:relative;}
.outpost-page .op-footer-stamp>strong{font:700 43px/.96 var(--op-display);letter-spacing:-.5px;}
.outpost-page .op-footer-stamp>.op-stripes{margin-top:15px;}
.outpost-page .op-footer-bottom{display:flex;justify-content:space-between;border-top:1px solid var(--op-line);padding-top:22px;font-size:10px;color:var(--op-muted);gap:20px;}
.outpost-page .op-footer-bottom>span:last-child{display:flex;gap:26px;}
.outpost-page .op-disclaimer{font-size:9px;color:var(--op-muted);margin:14px 0 0;max-width:950px;line-height:1.7;}
/* Legacy component visibility must not be dependent on scroll/animation JS. */
html body.outpost-page :is(.loading-screen,.cursor-glow,.page-orb,.page-grid,.vault-bg){display:none!important;}
html body.outpost-page .reveal{opacity:1!important;transform:none!important;visibility:visible!important;}
@media(min-width:1600px){.outpost-page .op-nav{gap:52px;}.outpost-page .op-navlinks{gap:36px;}}
@media(max-width:1200px){.outpost-page .op-wrap{width:calc(100% - 64px);}.outpost-page .op-nav{gap:24px;}.outpost-page .op-navlinks{gap:22px;}.outpost-page .op-orders>span{display:none;}.outpost-page .op-wordmark small{font-size:6px;}.outpost-page .op-actions{gap:12px;}}
@media(max-width:1000px){.outpost-page .op-nav{min-height:76px;}.outpost-page .op-navlinks{display:none;}.outpost-page .op-menu-button{display:flex;}.outpost-page .op-wordmark small{font-size:7px;}.outpost-page .op-actions{margin-left:auto;}.outpost-page .op-footer-top{grid-template-columns:1fr auto;}.outpost-page .op-footer-top>p{display:none;}}
@media(max-width:700px){html{scroll-padding-top:85px;}.outpost-page .op-wrap{width:calc(100% - 40px);}.outpost-page .op-utility{height:28px;font-size:7px;letter-spacing:.4px;}.outpost-page .op-utility a{display:none;}.outpost-page .op-nav{min-height:70px;gap:12px;}.outpost-page .op-brand{gap:9px;}.outpost-page .op-brand-mark{width:30px;height:34px;}.outpost-page .op-brand-mark .op-icon{width:20px;height:24px;}.outpost-page .op-wordmark{font-size:24px;}.outpost-page .op-wordmark small{font-size:5px;letter-spacing:.4px;margin-top:5px;}.outpost-page .op-actions{gap:8px!important;}.outpost-page .op-orders{display:none;}.outpost-page .op-actions #discordAuthControl{padding:8px!important;min-height:36px!important;gap:0!important;}.outpost-page .op-actions #discordAuthControl .discord-auth-mark{display:none;}.outpost-page .op-actions #discordAuthControl strong{max-width:104px;font-size:9px;}.outpost-page .op-actions #discordAuthControl.signed-in>img,.outpost-page .op-actions #discordAuthControl.signed-in>.discord-auth-avatar-fallback{display:none;}.outpost-page .op-menu-button{width:36px;height:36px;}.outpost-page .op-actions #adminCommandControl:not([hidden]){display:none;}.outpost-page .op-button{min-height:48px;padding:13px 18px;}.outpost-page .op-footer{padding-top:35px;}.outpost-page .op-footer-top{gap:20px;align-items:start;padding-bottom:25px;}.outpost-page .op-footer-discord{font-size:10px;gap:8px;margin-top:9px;}.outpost-page .op-footer-discord>.op-icon{width:15px;}.outpost-page .op-footer-links{grid-template-columns:1fr 1fr;padding:30px 0;gap:30px 20px;}.outpost-page .op-footer-links>.op-footer-stamp{grid-column:1/-1;border-left:0;border-top:1px solid var(--op-line);padding:25px 0 0;}.outpost-page .op-footer-stamp>strong{font-size:36px;}.outpost-page .op-footer-bottom{font-size:9px;flex-direction:column;gap:12px;}.outpost-page .op-disclaimer{font-size:8px;}.outpost-page .op-footer-stamp>.op-stripes{position:absolute;right:0;bottom:3px;}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important;}.outpost-page *,.outpost-page *::before,.outpost-page *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important;}}
@media print{.outpost-page .op-header,.outpost-page .op-utility,.outpost-page .op-footer{display:none;}.outpost-page{background:var(--op-input)!important;color:var(--op-ink)!important;}}
