@import"https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&family=Unbounded:wght@400;500;700;900&display=swap";:root{--black: #0b0b0c;--black2: #131315;--black3: #1b1b1e;--bone: #f5f3ee;--smoke: #8f8c86;--red: #ff0033;--line: rgba(245, 243, 238, .13);font-family:Space Grotesk,sans-serif;color:var(--bone);background:var(--black)}*{box-sizing:border-box}body{margin:0;background:var(--black)}button{font:inherit;cursor:pointer;color:inherit}.app-shell{min-height:100svh;background:radial-gradient(circle at 70% 0,#25111a,transparent 35%),var(--black)}.sidebar{position:fixed;inset:0 auto 0 0;width:244px;padding:29px 20px 22px;border-right:1px solid var(--line);background:#0c0c0dcc;z-index:10;display:flex;flex-direction:column;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.logo{display:block;margin:0 8px 56px;font:700 .9rem Unbounded;letter-spacing:-.09em}.logo span{color:var(--red);margin-left:3px}.side-label{font:500 .58rem Unbounded;letter-spacing:.16em;color:var(--smoke);padding:0 12px;margin-bottom:12px}.sidebar nav{display:grid;gap:4px}.sidebar nav button,.side-bottom button{width:100%;border:0;background:transparent;padding:12px;display:flex;align-items:center;gap:12px;text-align:left;font-size:.91rem;color:#aaa}.sidebar nav button.active{background:var(--red);color:#fff}.sidebar nav button:hover,.side-bottom button:hover{color:#fff}.side-bottom{margin-top:auto;border-top:1px solid var(--line);padding-top:14px;display:grid;gap:2px}.side-bottom .switcher{color:var(--bone)}.mobile-menu{display:none}.app-content{margin-left:244px;min-height:100svh}.app-header{min-height:160px;padding:37px 5vw 27px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:start}.eyebrow{font:500 .59rem Unbounded;letter-spacing:.19em;color:var(--red);margin:0 0 10px}.app-header h1{font:700 clamp(1.4rem,2vw,2rem) "Unbounded";letter-spacing:-.06em;margin:0;text-transform:uppercase}.header-actions{display:flex;align-items:center;gap:11px}.icon-btn{position:relative;border:1px solid var(--line);background:transparent;width:41px;height:41px;display:grid;place-items:center}.icon-btn:hover{border-color:var(--red)}.notification i{position:absolute;width:7px;height:7px;background:var(--red);right:9px;top:9px;border-radius:50%}.avatar,.person{display:grid;place-items:center;border-radius:50%;background:var(--bone);color:var(--black);font:700 .65rem Unbounded}.avatar{height:41px;width:41px}.dashboard{padding:42px 5vw 70px;max-width:1500px;margin:auto}.member-top{display:grid;grid-template-columns:minmax(300px,490px) 1fr;gap:60px;align-items:center;padding-bottom:46px}.digital-card{height:286px;position:relative;overflow:hidden;background:var(--black3);border:1px solid #36363a;padding:32px;box-shadow:18px 21px 50px #0008}.card-title b{font:700 1.3rem Unbounded;letter-spacing:-.12em;display:block}.digital-card small{font-size:.6rem;letter-spacing:.05em;color:#aaa}.digital-card>span{position:absolute;right:51px;top:32px;background:var(--red);font:500 .6rem Unbounded;padding:7px 19px}.card-member{position:absolute;left:32px;top:141px;font:500 1rem Unbounded}.card-member small{display:block;margin-top:9px}.card-valid{position:absolute;left:32px;bottom:28px;display:flex;align-items:center;gap:10px;font-size:.58rem;color:#aaa}.card-valid i{height:26px;width:34px;background:#444}.card-stripe{position:absolute;right:0;top:0;width:26px;height:100%;background:repeating-linear-gradient(-55deg,var(--red) 0 12px,#d1002a 12px 25px)}.member-intro h2{font:900 clamp(2.5rem,4.5vw,4rem) "Unbounded";letter-spacing:-.1em;line-height:.91;margin:0}.member-intro h2 em{font-style:normal;color:var(--red)}.member-intro>p:not(.eyebrow){max-width:440px;color:#bab7b3;line-height:1.65}.line-btn,.text-btn{border:0;background:none;padding:0;display:inline-flex;align-items:center;gap:5px;font:500 .63rem Unbounded;text-transform:uppercase;letter-spacing:.06em}.line-btn{margin-top:9px;border-bottom:1px solid var(--red);padding-bottom:8px}.text-btn{color:var(--bone)}.member-grid,.admin-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:20px}.panel,.access-history{border:1px solid var(--line);background:#111113;padding:25px}.panel-head{display:flex;justify-content:space-between;align-items:start;gap:15px}.panel h3{font:500 1.05rem Unbounded;letter-spacing:-.06em;margin:0}.qr-card{display:flex;flex-direction:column;align-items:stretch}.live{font:500 .53rem Unbounded;color:#ddd;display:flex;align-items:center;gap:5px}.live i{height:6px;width:6px;border-radius:50%;background:#31d46a}.qr-box{width:190px;height:190px;display:grid;place-items:center;background:var(--bone);color:var(--black);margin:27px auto 15px}.qr-note{font-size:.78rem;color:var(--smoke);display:flex;gap:7px;justify-content:center;align-items:center}.solid-btn{background:var(--bone);color:var(--black);border:0;padding:13px;display:flex;justify-content:center;align-items:center;gap:8px;font:500 .58rem Unbounded;letter-spacing:.06em;text-transform:uppercase}.event-list{display:flex;flex-direction:column}.event-row{display:grid;grid-template-columns:56px 1fr auto;gap:15px;align-items:center;padding:21px 0;border-bottom:1px solid var(--line)}.date{border-right:1px solid var(--line);display:grid;gap:0}.date b{font:700 1.4rem Unbounded;letter-spacing:-.12em}.date span{font:500 .55rem Unbounded;color:var(--red)}.event-row b{font:500 .78rem Unbounded;letter-spacing:-.03em}.event-row small{display:block;color:var(--smoke);margin-top:6px}.confirmed,.access-ok{font:500 .55rem Unbounded;color:#59d587;display:flex;align-items:center;gap:4px}.benefit{margin-top:auto;padding:18px;background:#202024;display:flex;align-items:center;gap:13px}.benefit svg{color:var(--red)}.benefit div{display:grid;gap:3px;flex:1}.benefit b{font-size:.85rem}.benefit span{font-size:.73rem;color:var(--smoke)}.access-history{margin-top:20px}.history-row{display:grid;grid-template-columns:34px 1fr 190px 60px;align-items:center;padding:16px 0;border-top:1px solid var(--line);font-size:.86rem}.history-row>span:not(.ok){color:var(--smoke);font-size:.76rem}.ok{height:25px;width:25px;background:#103b25;color:#5fd98d;display:grid;place-items:center}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:20px}.stat-grid article{padding:21px;border:1px solid var(--line);background:#111113;position:relative}.stat-icon{display:grid;place-items:center;width:35px;height:35px;background:#242428;color:var(--red);margin-bottom:26px}.stat-grid p{font:500 .55rem Unbounded;letter-spacing:.12em;color:var(--smoke);margin:0}.stat-grid b{font:700 1.8rem Unbounded;letter-spacing:-.11em;display:block;margin:7px 0}.stat-grid small{font-size:.7rem;color:#5bd284}.chart-panel{min-height:352px}.select{border:1px solid var(--line);background:transparent;padding:8px 10px;font-size:.7rem;color:#aaa;display:flex;align-items:center}.chart{height:200px;margin:25px 0 12px;position:relative}.chart-lines{position:absolute;top:0;right:0;bottom:0;left:0;background:repeating-linear-gradient(to bottom,transparent 0 48px,var(--line) 48px 49px)}.chart-fill{position:absolute;top:20px;right:0;bottom:20px;left:0;background:linear-gradient(180deg,#ff003355,transparent 90%);clip-path:polygon(0 84%,20% 70%,40% 74%,60% 42%,80% 55%,100% 5%,100% 100%,0 100%);border-bottom:3px solid var(--red)}.chart-labels{position:absolute;bottom:-2px;left:0;right:0;display:flex;justify-content:space-between;font:500 .53rem Unbounded;color:var(--smoke)}.legend{display:flex;gap:20px;font-size:.73rem;color:#bbb}.legend i{display:inline-block;height:8px;width:8px;border-radius:50%;margin-right:5px}.resident-dot{background:var(--bone)}.vip-dot{background:var(--red)}.scan-row{display:flex;align-items:center;gap:12px;padding:13px 0;border-top:1px solid var(--line)}.person{height:34px;width:34px;background:#302f33;color:var(--bone);font-size:.52rem}.scan-row div{flex:1;display:grid;gap:2px}.scan-row b{font-size:.83rem}.scan-row b small,.scan-row div span{font-size:.65rem;color:var(--smoke);font-weight:400}.members-panel{margin-top:20px}.members-panel .panel-head>div:last-child{display:flex;gap:15px;align-items:center}.small{padding:10px 12px}.table{margin-top:20px}.table-head,.table-row{display:grid;grid-template-columns:2fr 1fr 1.2fr 1.1fr 30px;gap:12px;align-items:center}.table-head{font:500 .53rem Unbounded;letter-spacing:.09em;color:var(--smoke);padding:0 0 10px}.table-row{padding:13px 0;border-top:1px solid var(--line);font-size:.78rem}.table-row span:first-child{display:grid;gap:2px}.table-row small{font-size:.63rem;color:var(--smoke)}.tier{font:500 .55rem Unbounded;width:max-content;padding:5px 7px}.tier.vip{background:#3e101d;color:#ff7a98}.tier.resident{background:#252529;color:#d1d0cd}.status-active{color:#66d18d}.table-row button{border:0;background:none;color:var(--smoke)}@media(max-width:1000px){.sidebar{width:210px}.app-content{margin-left:210px}.member-top{gap:32px}.stat-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.sidebar{transform:translate(-100%);transition:transform .25s;width:250px}.sidebar.show{transform:translate(0)}.mobile-menu{display:grid;place-items:center;position:fixed;z-index:11;top:18px;left:18px;width:40px;height:40px;border:1px solid var(--line);background:var(--black)}.app-content{margin-left:0}.app-header{padding:27px 22px 23px 76px;min-height:116px}.header-actions .icon-btn{display:none}.dashboard{padding:25px 18px 50px}.member-top,.member-grid,.admin-grid{grid-template-columns:1fr}.member-top{gap:25px}.digital-card{height:248px}.card-member{top:125px}.stat-grid{grid-template-columns:1fr 1fr;gap:8px}.stat-grid article{padding:16px}.stat-grid b{font-size:1.45rem}.stat-icon{margin-bottom:16px}.panel,.access-history{padding:18px}.event-row{grid-template-columns:49px 1fr}.confirmed{display:none}.history-row{grid-template-columns:32px 1fr 45px}.history-row>span:nth-child(3){display:none}.table{overflow:auto}.table-head,.table-row{min-width:610px}.members-panel{overflow:hidden}.chart-panel{min-height:330px}}.auth-shell{min-height:100vh;display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,42%);background:var(--black)}.auth-panel{width:min(100%,540px);padding:clamp(38px,9vw,120px) 7vw;display:flex;flex-direction:column;justify-content:center}.auth-logo{color:var(--bone);font:700 1.25rem Unbounded;letter-spacing:-.13em;text-decoration:none;margin-bottom:auto}.auth-logo span{color:var(--red);margin-left:.12em}.auth-panel .eyebrow{margin-top:80px}.auth-panel h1{font:800 clamp(2.8rem,5vw,5.2rem) "Unbounded";line-height:.88;letter-spacing:-.11em;margin:0}.auth-panel h1 em{color:var(--red);font-style:normal}.auth-copy{color:var(--smoke);max-width:390px;line-height:1.6;margin:25px 0 30px}.auth-form{display:grid;gap:11px;max-width:420px}.auth-form label{font:500 .57rem Unbounded;letter-spacing:.12em;color:var(--smoke)}.auth-input{height:52px;border:1px solid var(--line);display:flex;align-items:center;gap:11px;padding:0 15px;color:var(--red)}.auth-input input{min-width:0;width:100%;border:0;background:transparent;outline:0;color:var(--bone);font:400 .95rem Space Grotesk}.auth-form .solid-btn{margin-top:6px;min-height:48px}.auth-form .solid-btn:disabled{opacity:.65;cursor:wait}.auth-message{max-width:420px;margin:18px 0 0;font-size:.9rem;color:#ff9aac}.auth-message.sent{color:#68d995}.auth-footnote{color:#6b6969;font-size:.75rem;margin-top:28px}.auth-art{background:var(--red);padding:7vw;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}.auth-art span{font:800 clamp(4rem,11vw,11rem) "Unbounded";letter-spacing:-.15em;line-height:.76;color:var(--black);writing-mode:vertical-rl;transform:rotate(180deg)}.auth-art b{color:var(--black);font:700 clamp(2rem,4vw,4.5rem) "Unbounded";letter-spacing:-.12em;line-height:.85}.auth-loading{place-items:center;color:var(--bone);font:500 .8rem Unbounded;letter-spacing:.08em}@media(max-width:760px){.auth-shell{grid-template-columns:1fr}.auth-art{display:none}.auth-panel{min-height:100vh;box-sizing:border-box;padding:35px 26px}.auth-panel .eyebrow{margin-top:65px}}
