/* Saudi majlis identity. Decorative weave stays outside semantic game surfaces. */
:root{--j-paper:#f4e9d2;--j-surface:#fff8e9;--j-sand:#e9d4ad;--j-ink:#30271f;--j-wine:#752735;--j-wine-dark:#55202a;--j-wood:#79543b;--j-muted:#78644d;--j-line:#cdb58f;--j-gold:#ba8743;--j-green:#305d50;--saudi-weave:url('sadu-weave.svg')}
.site-page{background:radial-gradient(#88623716 .7px,transparent .8px) 0 0/7px 7px,var(--j-paper)}
.site-header{background:var(--j-paper);border-top:12px solid transparent;border-image:var(--saudi-weave) 12 round;border-bottom:1px solid var(--j-line)}
.header-inner{min-height:86px}.brand{color:var(--j-wine)!important;font-size:48px}.brand-mark{font-size:20px}.site-header nav a{font-size:14px;color:var(--j-wood)}.site-header nav a[aria-current]::after{height:6px;bottom:11px;clip-path:polygon(0 50%,50% 0,100% 50%,50% 100%)}
.header-play{border-radius:3px;background:var(--j-green);padding:12px 23px}.header-play:hover{background:#25483e}.header-help{color:var(--j-wood)!important}
.home-page .welcome{width:100%;max-width:none;padding:0;display:block;background:var(--j-wine-dark);color:var(--j-surface);isolation:isolate;overflow:hidden}
.majlis-hero{width:min(1280px,calc(100% - 100px));min-height:520px;margin:auto;display:grid;grid-template-columns:1fr 1.08fr;gap:12px;align-items:center;position:relative;padding-block:30px 42px}
.home-page .welcome::before,.home-page .welcome::after{content:'';position:absolute;inset-block:0;width:31px;z-index:-1;background:var(--saudi-weave) center/80px 32px repeat-y;opacity:1}
.home-page .welcome::before{right:0}.home-page .welcome::after{left:0}
.home-page .welcome-copy{padding:25px 20px 25px 0}.home-page .welcome-note{font-size:13px;letter-spacing:0;color:#ead1a8;display:inline-flex;gap:12px}.home-page .welcome-note::before{width:10px;height:10px;background:#d8ae70;transform:rotate(45deg)}
.home-page .welcome h1{font-size:clamp(54px,5.7vw,82px);line-height:1.3;letter-spacing:-2px;font-weight:700;color:var(--j-surface);margin:22px 0 20px}.home-page .welcome h1 em{color:#deb77b}.home-page .welcome-copy>p{font-size:17px;line-height:2;color:#e6d0b6;max-width:42ch}
.hero-links{display:flex;align-items:center;gap:25px;margin-top:28px}.hero-start{display:inline-flex;justify-content:center;align-items:center;gap:32px;min-height:52px;padding:10px 24px;background:#f2dfb9;color:#55202a!important;border:1px solid #f2dfb9;border-radius:3px;text-decoration:none;font-weight:600;font-size:15px}.hero-start:hover{background:white}.hero-start span{font-size:23px}.home-page .browse-games{margin:0;color:#f2dfb9;gap:16px;font-size:14px}.home-page .welcome-details{margin-top:28px;color:#d9bc99;font-size:11px;gap:18px}.home-page .welcome-details span+span::before{color:#b78b50;margin-inline-end:18px}
.majlis-illustration{margin:0;align-self:center;position:relative}.majlis-illustration img{width:100%;height:auto;display:block}.majlis-illustration figcaption{position:absolute;bottom:6px;inset-inline:0;text-align:center;font-size:11px;letter-spacing:1px;color:#d6b88f}.majlis-seal{position:absolute;top:37px;left:14px;display:flex;align-items:center;justify-content:center;flex-direction:column;width:85px;height:85px;border:1px solid #b59168;border-radius:50%;color:#e9d1a6;transform:rotate(-12deg);outline:1px dashed #b59168;outline-offset:5px;font-size:11px}.majlis-seal b{font-size:32px;line-height:1.2;font-weight:500}
.majlis-session{position:relative;z-index:1;padding-block:28px 38px}.home-page .session-card{display:grid;grid-template-columns:235px minmax(0,1fr);align-items:start;gap:15px 35px;border:1px solid #bda17b;border-radius:3px;padding:25px 30px 18px;max-width:none;box-shadow:5px 5px 0 #dfc9a5;background:var(--j-surface);border-inline-start:8px solid var(--j-wine)}.home-page .session-card::before{display:none}.home-page .session-heading{margin:0;align-items:start;text-align:start;gap:8px}.home-page .session-symbol{display:none}.home-page .session-heading h2{font-size:27px;color:var(--j-wine)}.home-page .session-heading p{font-size:12px;max-width:25ch;margin-top:5px}.home-page .room-form-top{display:grid;grid-template-columns:1fr auto;gap:6px 12px;align-items:end}.home-page .room-form-top label{grid-column:1/-1;font-size:12px}.home-page .room-form-top .btn{margin:0;min-width:175px;gap:24px}.site-page .btn{border-radius:3px;background:var(--j-wine);min-height:50px}.site-page input{border-radius:3px;min-height:50px;background:#fffcf4}.home-page .join-entry{padding-top:13px;margin-top:14px;border:0}.home-page .join-entry summary{justify-content:start;gap:20px;min-height:32px;color:var(--j-wood);font-size:12px}.home-page .code-entry{max-width:530px}.home-page .session-footnote{grid-column:1/-1;justify-content:start;background:transparent;border-top:1px solid #dcc7a4;padding:12px 0 0;margin:0;border-radius:0;font-size:11px}.home-page .session-footnote::after{content:'حياكم الله';margin-inline-start:auto;font-family:'Aref Ruqaa',serif;font-size:22px;color:var(--j-wine)}
.library{padding-block:25px 60px;border:0}.section-heading{align-items:center;margin-bottom:30px}.section-kicker{color:var(--j-wood);font-size:12px;letter-spacing:0;display:flex;gap:9px;align-items:center}.section-kicker::before{content:'◆';font-size:9px;color:var(--j-wine)}.section-heading h2{font-size:38px;color:var(--j-wine);line-height:1.4}.section-heading p{font-size:13px;color:var(--j-muted)}.library-link{border:1px solid var(--j-line);padding:10px 16px;border-radius:3px;background:var(--j-surface);min-height:46px;color:var(--j-wood)!important}.library-link>span{background:var(--j-sand);border-radius:2px}
.game-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:27px}.site-page .gameCard{border-radius:3px;border:1px solid #c7aa80;border-bottom:4px solid var(--j-wine);padding:10px 10px 0;background:#fff8e9;box-shadow:4px 4px 0 #e2cfac;transition:transform .18s,box-shadow .18s}.site-page .gameCard:hover{transform:translateY(-5px) rotate(-.5deg);border-color:var(--j-wine);box-shadow:7px 10px 0 #dfc59c}.site-page .gameCard:nth-child(3n+2){border-bottom-color:var(--j-green)}.site-page .gameCard:nth-child(3n){border-bottom-color:#b2733e}.site-page .gc-art{aspect-ratio:640/330;border:1px solid #d2b88d;border-radius:0;position:relative}.site-page .gc-art::after{content:'';position:absolute;inset-inline:0;bottom:0;height:9px;background:var(--saudi-weave) center/80px 32px}.site-page .gc-txt{padding:19px 12px 18px;gap:8px}.site-page .gc-name{font-size:25px;padding-inline-end:35px;color:var(--j-wine)}.gc-name::after{content:'↗';background:var(--j-sand);display:grid;place-content:center;left:12px;top:18px;width:30px;height:30px;border-radius:50%;font-size:18px;color:var(--j-wood)}.site-page .gc-desc{font-size:13px;min-height:48px;line-height:1.9}.site-page .gc-txt .chip{background:#eadbc0;border-radius:2px;padding:4px 9px;color:#6c4f36;font-size:11px}
.together{border-radius:3px;background:var(--j-green);padding:35px 50px;border-block:7px double #b8a277;box-shadow:6px 6px 0 #dbc49f;grid-template-columns:auto 1fr auto;gap:24px}.together::after{width:22px;background:var(--saudi-weave) center/80px 32px;opacity:1}.together-mark{display:block;width:78px;height:90px;background:url('majlis-emblem.svg') center/cover}.together-copy h2{font-size:28px;color:#fff2d9}.together-copy p{color:#e0ddc7}.together .btn{border-radius:3px;background:#f4e6c8;color:#305d50}
.getting-started{padding-block:65px;grid-template-columns:1fr 1.6fr;gap:50px}.getting-started h2,.questions h2{color:var(--j-wine)}.getting-started ol{flex-direction:row;gap:20px;counter-reset:steps}.getting-started li{flex:1;flex-direction:column;gap:17px;border-inline-start:1px solid #cbb28a;padding-inline-start:22px}.getting-started li>span{background:var(--j-wine);color:var(--j-surface);border:0;border-radius:0;clip-path:polygon(20% 0,80% 0,100% 20%,100% 80%,80% 100%,20% 100%,0 80%,0 20%);width:45px;height:45px}.getting-started h3{font-size:19px}.getting-started li p{font-size:12px}.question-grid details{border:1px solid var(--j-line);border-radius:0;padding:20px;background:#f9efd9}.question-grid summary{font-size:14px}
.site-footer{background:#352a23;border-top:0;position:relative;padding-top:70px}.site-footer::before{content:'';position:absolute;inset:0 0 auto;height:32px;background:var(--saudi-weave) center/160px 64px}.site-footer .brand{color:#f4e4c6!important}.site-footer .footer-sadu{display:none}.footer-grid{padding-bottom:32px}.footer-grid>div>a:not(.brand),.footer-identity>p,.footer-free,.footer-support-note,.footer-bottom{color:#dcc7a7}
.page-heading{position:relative;border-bottom:4px double var(--j-line);padding-block:35px;margin-bottom:28px}.page-heading::after{content:'';width:100px;height:100px;background:var(--saudi-weave) center/160px 64px;clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);padding:0;margin-inline:30px;transform:rotate(0)}.page-heading h1{font-size:48px}.catalog-tools{border:1px solid var(--j-line);border-radius:3px;background:#e8d3ad;box-shadow:3px 3px 0 #d6bc93}.filter-tabs button,.filter-tabs button.active{border-radius:3px}.paper,.guide-list article,.faq-full details,.notice,.category-gallery figure{border-radius:3px;box-shadow:3px 3px 0 #dfcaa7}.paper{border-top:6px double var(--j-wine)}.guide-list article>b{background:var(--j-green);border-radius:2px}.category-gallery figure{border-bottom:4px solid var(--j-wine)}
/* Intro: plain wine cloth doors, no Sadu weave or gold borders (the rest of the site keeps its ornament). */.intro::before,.intro::after{background:linear-gradient(90deg,#4a1b24,#5c2330 45%,#4a1b24);border:0;box-shadow:inset 0 0 90px #0000002e}.intro::before{box-shadow:inset 0 0 90px #0000002e,inset 1px 0 0 #00000038}.intro::after{box-shadow:inset 0 0 90px #0000002e,inset -1px 0 0 #00000038}.intro-logo{background:none;padding:0}.intro p{background:none;padding:0}.intro button{border-radius:3px}
/* The same textile/architectural frame follows the player into every game. */
body.jalsa-play{background:radial-gradient(#88623713 .7px,transparent .8px) 0 0/7px 7px,var(--j-paper)}
.jalsa-gamebar{background:var(--j-wine-dark);color:#f5e5c5;border-top:10px solid transparent;border-image:var(--saudi-weave) 10 round;border-bottom:1px solid #9d714f}.jalsa-wordmark{color:#f5e5c5!important}.jalsa-game-location>span{color:#ead4af!important;border-color:#aa8764}.jalsa-game-actions a{color:#f0dfc3!important}.jalsa-game-actions button{color:#f2dfb9;background:transparent;border-color:#ba9670;border-radius:3px}.jalsa-gamebar .jalsa-game-actions button:hover{background:#743441}
body.jalsa-play .panel{border-radius:4px;box-shadow:3px 3px 0 #dfc8a3}body.jalsa-play.jalsa-lobby #app>.main>.panel:first-child{border-top:8px solid transparent;border-image:var(--saudi-weave) 8 round}body.jalsa-play.jalsa-lobby #app>.side .hero{border-radius:3px;box-shadow:5px 5px 0 #d8be96;border:1px solid #bd9b70;border-bottom:7px solid var(--j-wine)}body.jalsa-play.jalsa-lobby #app>.side .hero .scene{border-bottom:12px solid transparent;border-image:var(--saudi-weave) 12 round}body.jalsa-play.jalsa-lobby #app>.side .hero h1{color:var(--j-wine)}body.jalsa-play .rules,body.jalsa-play .waiting,.jalsa-rule-dialog{border-radius:3px}.jalsa-rule-head{background:var(--j-wine-dark);border-bottom:12px solid transparent;border-image:var(--saudi-weave) 12 round}.jalsa-game-kicker::before{content:'◆';padding-inline-end:7px;font-size:9px}.jalsa-rule-note{background:#ead6b2}.jalsa-progress{border-radius:3px;border-inline-start:4px solid var(--j-wine)}
#party-bar{background:var(--j-wine-dark);color:#f5e5c5;border-top:12px solid transparent;border-image:var(--saudi-weave) 12 round}#party-bar h1,#party-bar strong{color:#f5e5c5}#party-main>section:only-child{border-radius:3px;border-top:10px solid transparent;border-image:var(--saudi-weave) 10 round}.party-game-card{border-radius:3px;border-bottom:5px solid var(--j-wine);box-shadow:3px 3px 0 #dfc8a3}.party-player{border-radius:3px}.party-invitation{border-bottom:5px double var(--j-line)}
@media(min-width:960px){body.jalsa-play.jalsa-lobby #app{grid-template-columns:minmax(360px,1.05fr) minmax(380px,1fr);gap:38px}}
@media(min-width:1500px){.majlis-hero{min-height:570px}.home-page .welcome h1{font-size:88px}}
@media(max-width:1050px){.majlis-hero{min-height:460px;width:calc(100% - 90px)}.home-page .welcome h1{font-size:60px}.home-page .welcome-copy>p{font-size:14px}.majlis-seal{width:63px;height:63px;left:0;top:15px;font-size:9px}.majlis-seal b{font-size:25px}.hero-links{gap:18px}.home-page .browse-games{font-size:12px}.hero-start{font-size:13px;padding-inline:17px;gap:20px}.home-page .session-card{grid-template-columns:210px 1fr;gap:20px;padding-inline:24px}.game-grid{gap:20px}.together{grid-template-columns:1fr auto}.together-mark{display:none}.getting-started{grid-template-columns:1fr;gap:26px}.getting-started ol{max-width:none}}
@media(max-width:720px){.site-header{border-top-width:8px}.header-inner{min-height:72px;gap:13px}.brand{font-size:37px}.header-play{padding:9px 13px;font-size:12px}.nav-toggle{border-radius:2px;border-color:#c3aa84}.site-header nav{top:72px;background:var(--j-surface)}.site-header nav a[aria-current]::after{bottom:auto;clip-path:none}.home-page .welcome{padding:0}.home-page .welcome::before,.home-page .welcome::after{width:12px;background-size:64px 26px}.majlis-hero{width:calc(100% - 56px);grid-template-columns:1fr;gap:0;padding-block:28px 25px;min-height:0}.home-page .welcome-copy{padding:0;text-align:center}.home-page .welcome-note{font-size:11px;gap:8px}.home-page .welcome-note::before{width:7px;height:7px}.home-page .welcome h1{font-size:clamp(42px,10.5vw,64px);line-height:1.3;letter-spacing:-1px;margin:16px 0}.home-page .welcome-copy>p{font-size:13px;max-width:none;line-height:1.9}.hero-links{justify-content:center;gap:20px;margin-top:23px}.hero-start{min-height:47px;font-size:13px;padding-inline:20px}.home-page .browse-games{font-size:12px;gap:10px}.home-page .welcome-details{justify-content:center;font-size:10px;gap:12px;margin-top:20px}.home-page .welcome-details span+span::before{margin-inline-end:12px}.majlis-illustration{max-width:390px;justify-self:center;width:100%;margin-top:0}.majlis-illustration img{max-height:285px;object-fit:contain}.majlis-illustration figcaption{bottom:0;font-size:10px}.majlis-seal{top:17px;left:7px;width:54px;height:54px;font-size:8px;outline-offset:3px}.majlis-seal b{font-size:22px}.majlis-session{padding-block:22px 30px}.home-page .session-card{display:block;max-width:none;border-radius:2px;padding:19px 20px 14px;border-inline-start-width:5px;box-shadow:4px 4px 0 #dfc9a5}.home-page .session-heading{margin-bottom:17px}.home-page .session-heading h2{font-size:24px}.home-page .session-heading p{max-width:none;font-size:11px}.home-page .room-form-top{gap:8px;grid-template-columns:minmax(0,1fr) auto}.home-page .room-form-top .btn{min-width:0;padding:10px 14px;font-size:12px;gap:10px}.home-page .room-form-top .btn svg{width:15px}.home-page .room-form-top label{font-size:11px}.home-page input{padding:10px;min-height:48px}.home-page .join-entry{margin-top:9px;padding-top:8px}.home-page .join-entry summary{font-size:11px;gap:10px}.home-page .session-footnote{margin-top:14px;padding-top:10px;gap:6px;font-size:9px}.home-page .session-footnote::after{font-size:18px}.section-heading{align-items:start;gap:10px;margin-bottom:22px}.section-heading h2{font-size:28px}.section-heading p{font-size:11px;max-width:25ch}.section-kicker{font-size:10px;margin-bottom:8px}.library{padding-block:15px 40px}.library-link{padding:7px 10px;gap:7px;font-size:10px;min-height:38px;margin-top:27px}.library-link>svg{display:none}.game-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 13px}.site-page .gameCard{padding:6px 6px 0;border-bottom-width:3px;box-shadow:3px 3px 0 #e2cfac}.site-page .gc-art{aspect-ratio:1.35}.site-page .gc-art>svg{height:100%;width:auto;max-width:none}.site-page .gc-art::after{height:7px}.site-page .gc-txt{padding:12px 5px;gap:7px}.site-page .gc-name{font-size:19px;padding-inline-end:0}.gc-name::after{display:none}.site-page .gc-desc{font-size:11px;min-height:80px;line-height:1.85}.site-page .gc-txt .chip{font-size:9px;padding:3px 6px}.together{grid-template-columns:1fr;padding:26px 27px;gap:16px;box-shadow:4px 4px 0 #dbc49f}.together::after{width:12px}.together-copy h2{font-size:23px}.together-copy p{font-size:12px}.together .btn{font-size:13px;padding:10px 19px}.getting-started{padding-block:42px;gap:23px}.getting-started h2,.questions h2{font-size:25px}.getting-started ol{flex-direction:column;gap:22px}.getting-started li{flex-direction:row;border:0;padding:0;gap:17px}.getting-started li>span{width:38px;height:38px}.getting-started h3{font-size:19px}.getting-started li p{font-size:12px}.question-grid{gap:12px}.question-grid details{padding:17px}.site-footer{padding-top:57px}.site-footer::before{height:24px;background-size:120px 48px}.page-heading h1{font-size:34px}.page-heading::after{width:54px;height:54px;margin-inline:10px;background-size:80px 32px}.page-heading{padding-block:28px}.page-heading>p{font-size:13px}.catalog-tools{padding:16px}.jalsa-gamebar{border-top-width:8px}.jalsa-game-actions button{padding:8px 11px}.jalsa-game-location>span{font-size:11px}body.jalsa-play.jalsa-lobby #app>.side .hero{border-radius:3px;border-bottom-width:5px}body.jalsa-play.jalsa-lobby #app>.side .hero .scene{border-radius:2px;border-bottom-width:8px}body.jalsa-play .panel{border-radius:3px}#party-main>section:only-child{border-radius:3px}}
@media(prefers-reduced-motion:reduce){.site-page .gameCard{transition:none}.site-page .gameCard:hover{transform:none}}
body[data-play-game="mafia"].jalsa-active .top .iconBtn,body[data-play-game="liars-table"].jalsa-active .top .iconBtn{color:#ead7b8;border-color:#9c8161}body[data-play-game="mafia"].jalsa-active .top .chip,body[data-play-game="liars-table"].jalsa-active .log{color:#ddcdb6}
@media(min-width:701px){.jalsa-gamebar .play-stage-badge{color:#ead2a8;border-color:#a98260}}
