:root{font-family:Tahoma,Arial,sans-serif;color:#153e35;background:#f5f7f3;font-synthesis:none;font-size:16px;line-height:1.7;--green: #073e35;--lime: #d8ec9f;--muted: #6a7e75;--border: #dce5de}.guest-detail{border-top:1px solid var(--border);margin-top:30px;padding-top:25px}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default;opacity:.55}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #789e28;outline-offset:4px}button,a{touch-action:manipulation}button{color:inherit}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}h1{line-height:1.3;font-weight:700}h2{line-height:1.5}button svg,a svg{flex-shrink:0}button{border:0}input,select{width:100%;min-height:48px;border:1px solid #cbd9d0;border-radius:9px;padding:9px 12px;background:#fff;color:#153e35}label{display:flex;flex-direction:column;gap:6px;font-size:.875rem;text-align:start}button:disabled svg{opacity:.6}.app{max-width:1440px;margin:auto;min-height:100dvh;padding:0 5.2%}.site-header{height:108px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border)}.brand{display:flex;align-items:center;gap:12px}.brand-symbol{height:45px;width:45px;border:1px solid #c3d4c7;border-radius:50%;display:grid;place-items:center}.brand strong{font-size:1.25rem;line-height:1.3}.brand small{display:block;font-size:.75rem;letter-spacing:.03em;color:var(--muted)}.header-label{color:var(--muted);font-size:.875rem}.home-heading{padding:57px 0 35px;text-align:center}.eyebrow{display:flex;justify-content:center;align-items:center;gap:9px;color:#61754f;font-size:.875rem;font-weight:700;margin-bottom:15px}.eyebrow>span:empty{width:6px;height:6px;background:#6e8f44;border-radius:50%}.home-heading h1{font-size:clamp(2.7rem,4.5vw,4rem);letter-spacing:-.06em}.home-heading h1 span{color:#69875a}.home-heading p{color:var(--muted);margin-top:20px;line-height:1.9}.home-note{display:flex;align-items:center;justify-content:center;gap:10px;font-size:.8rem;color:#698172;margin-top:22px}.home-note i{height:3px;width:3px;background:#9cafa1;border-radius:50%;margin:0 5px}.game-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;padding:10px 0 0}.game-card{padding:24px 26px 18px;text-align:right;border:1px solid #d9e2d8;border-radius:20px;min-height:370px;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s;background:#e8efdc}.game-card:hover{transform:translateY(-5px);box-shadow:0 15px 30px #153e350b}.game-card.sand{background:#f0eadd;border-color:#e5ddce}.game-card.blue{background:#e4ecec;border-color:#d5e1e0}.card-top{display:flex;justify-content:space-between;align-items:center;color:#6c7e68;font-size:.75rem}.game-number{font-size:1.1rem;font-weight:700}.game-emblem{height:100px;display:flex;align-items:center}.game-emblem svg{height:60px;width:60px;color:#3d654c}.sand .game-emblem svg{color:#927e49}.blue .game-emblem svg{color:#577c7d}.card-copy>span{font-size:.75rem;color:#6f826a}.card-copy h2{font-size:1.5rem;margin:4px 0 10px}.card-copy p{font-size:.875rem;line-height:1.9;color:#63796d;max-width:300px}.card-bottom{margin-top:auto;padding-top:23px;display:flex;align-items:center;justify-content:space-between;font-size:.85rem;font-weight:700}.arrow-circle{width:37px;height:37px;border:1px solid #91aa9360;border-radius:50%;display:grid;place-items:center}.home-bottom{display:flex;align-items:center;justify-content:center;gap:10px;color:#7a8a80;font-size:.8rem;margin:28px 0 40px}footer{border-top:1px solid var(--border);padding:24px 0;display:flex;justify-content:space-between;font-size:.75rem;color:#859389}.primary,.secondary{min-height:48px;border-radius:10px;padding:11px 22px;display:inline-flex;align-items:center;justify-content:center;gap:10px;font-weight:700;font-size:.9rem}.primary{background:var(--green);color:#fff}.primary:hover:not(:disabled){background:#155b4b}.secondary{border:1px solid #bfcfc3;background:transparent}.large{min-width:240px;padding:15px 30px}.text-button{display:inline-flex;align-items:center;justify-content:center;gap:9px;background:none;padding:8px;font-size:.875rem;color:#526e5b}.muted{color:var(--muted);font-size:.8rem}.error{background:#fff0e9;color:#8a3e25;padding:13px 18px;border:1px solid #eed5c9;border-radius:10px;margin:15px 0;font-size:.875rem}.center-panel{max-width:580px;margin:100px auto;text-align:center;display:grid;gap:20px}.game-shell{max-width:640px;margin:34px auto 50px}.game-heading{position:relative;text-align:center;margin-bottom:24px}.game-heading h1{font-size:2rem}.game-heading .eyebrow{margin-bottom:7px}.intro-panel,.result-panel{background:#fff;border:1px solid var(--border);border-radius:24px;text-align:center;padding:38px 44px;display:flex;align-items:center;flex-direction:column;gap:20px}.intro-icon{width:116px;height:116px;border-radius:50%;background:#edf3e6;display:grid;place-items:center;margin-bottom:4px}.sand .intro-icon{background:#f5eddd}.blue .intro-icon{background:#e7efef}.intro-panel p,.result-panel p{color:#667a6b;max-width:440px}.intro-panel h2{font-size:1.4rem}.round-facts{display:flex;align-items:center;gap:24px;font-size:.85rem;color:#687d6b}.round-facts>span{display:flex;align-items:center;gap:7px}.guest-name{font-size:.85rem}.intro-panel label{width:100%}.timer{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:14px;font-size:.85rem}.timer b{font-size:1.6rem;line-height:1.3}.timer.urgent{color:#af4d2f}.game-meta{display:flex;justify-content:space-between;font-size:.85rem;color:#6f806f;margin-bottom:15px}.game-meta b{color:var(--green);margin-inline-start:8px}.memory-board{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.memory-card{border-radius:15px;min-height:108px;background:#124f41;color:#c5dfa6;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;border:1px solid #185c4a;position:relative}.memory-card .card-mark{font-size:.85rem}.memory-card.revealed{background:#fff;color:var(--green);border-color:#cfdfc6}.memory-card.matched{background:#e8f0dc;opacity:1;border-color:#a7bf85}.memory-card span{font-size:.9rem}.match-check{position:absolute;top:10px;left:10px}.game-feedback{min-height:55px;font-size:.85rem;margin:20px auto 0;text-align:center;color:#58704e;max-width:510px}.play-panel{background:#fff;border:1px solid var(--border);border-radius:20px;padding:25px}.scenario .eyebrow{justify-content:flex-start}.scenario-text{color:#637466;margin:15px 0 24px;line-height:2}.scenario h3{font-size:1.1rem;margin-bottom:16px}.choices{display:grid;gap:14px}.choices button{display:flex;align-items:center;gap:15px;text-align:right;background:#f2f5ed;border:1px solid #d8e1d0;border-radius:12px;padding:19px;line-height:1.9;font-size:.95rem}.choices button>span{border-radius:50%;display:grid;place-items:center;width:30px;height:30px;background:#fff;flex-shrink:0}.choices button:hover:not(:disabled){border-color:#7b9867}.consequence{background:#eaf1df;padding:17px;border-radius:12px;display:flex;align-items:center;gap:12px;margin:15px 0;font-size:.875rem}.consequence svg{flex-shrink:0}.word-list{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-bottom:22px}.word-list>span{border:1px solid #d2ddd3;border-radius:25px;padding:5px 15px;font-size:.875rem;display:flex;align-items:center;gap:5px}.word-list .found{background:#e6f0d9;border-color:#a1bd80}.letter-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;touch-action:none;user-select:none}.letter-grid button{aspect-ratio:1;min-width:0;background:#f0f4ee;border-radius:9px;border:1px solid #e1e7db;font-size:1.5rem;padding:0}.letter-grid .selected{background:#d9e7bd;border-color:#7a9a54}.letter-grid .found{background:#b8d299;border-color:#91b568}.result-seal{width:92px;height:92px;display:grid;place-items:center;background:#edf3df;border:1px solid #d8e7c1;border-radius:50%}.result-panel h2{font-size:1.7rem}.result-panel .eyebrow{margin-bottom:-8px}.result-slogan{font-size:1.9rem;margin:10px 0;color:#547843}.result-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.save-state{font-size:.85rem}.reset-countdown{display:flex;align-items:center;gap:12px;background:#f2f6eb;border-radius:12px;padding:12px 20px;font-size:.9rem}.reset-countdown strong{font-size:1.8rem}.idle-overlay{position:fixed;inset:0;background:#052b23bb;z-index:20;display:grid;place-items:center;padding:20px}.idle-overlay .panel{max-width:480px;display:grid;gap:20px;text-align:center}.kiosk-app{height:100dvh;overflow:hidden}.kiosk-app .site-header{height:9dvh;min-height:60px}.kiosk-app .game-shell{margin:2dvh auto;max-width:min(740px,88vw)}.kiosk-app .game-heading{margin-bottom:2dvh}.kiosk-app .play-panel{padding:2dvh 24px}.kiosk-app .memory-card{height:12dvh;min-height:58px}.kiosk-app .memory-board{gap:1dvh}.kiosk-app .game-feedback{margin-top:1dvh;min-height:0}.kiosk-app .intro-panel{margin-top:6dvh;padding:5dvh 40px}.kiosk-app .letter-grid button{max-height:7dvh;aspect-ratio:auto;height:7dvh}.setup{padding:50px 0;text-align:center}.setup>p{color:var(--muted);margin:15px 0 25px}.setup>.panel{max-width:500px;margin:25px auto;display:grid;gap:20px}.setup-games{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:40px}.setup-games .panel{display:flex;align-items:center;flex-direction:column;gap:20px}.setup-games span{display:flex;gap:10px;align-items:center}.panel{padding:25px;background:#fff;border:1px solid var(--border);border-radius:16px}.panel h2{font-size:1.15rem;margin-bottom:15px}.login-page{min-height:100dvh;padding:35px;background:#edf2e9}.login-page>.brand{justify-content:center}.login-card{max-width:450px;margin:60px auto;background:#fff;border:1px solid var(--border);padding:35px;border-radius:20px;display:grid;gap:20px}.login-card .eyebrow{justify-content:flex-start;margin:0}.login-card p{color:var(--muted);font-size:.9rem}.admin-layout{display:grid;grid-template-columns:240px 1fr;min-height:100dvh;background:#f5f7f3}.admin-layout aside{background:#093e34;color:#e4eddf;padding:30px 23px;display:flex;flex-direction:column;position:sticky;top:0;height:100dvh}.admin-layout .brand small{color:#a5baab}.admin-layout .brand-symbol{border-color:#76927b}.nav-label{font-size:.75rem;color:#91b39a;margin:50px 10px 12px}.admin-layout nav{display:grid;gap:7px}.admin-layout nav button{display:flex;gap:12px;align-items:center;padding:13px 15px;border-radius:9px;background:transparent;text-align:right;color:#becfc3;font-size:.9rem}.admin-layout nav button.active{background:#d7e9b4;color:#244632}.admin-user{margin-top:auto;display:grid;gap:13px;font-size:.85rem}.admin-user button{background:transparent;color:#a3bfae;display:flex;gap:10px;font-size:.8rem;padding:5px 0}.admin-main{padding:40px;min-width:0}.admin-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}.admin-heading .eyebrow{justify-content:flex-start;margin-bottom:5px;font-weight:400}.admin-heading h1{font-size:1.9rem}.admin-heading>div:last-child{display:flex;align-items:center;gap:10px}.icon-button{background:#fff;border:1px solid var(--border);padding:10px;border-radius:10px;display:grid;place-items:center}.filters{display:flex;align-items:flex-end;flex-wrap:wrap;gap:12px;background:#fff;border:1px solid var(--border);border-radius:14px;padding:17px;margin-bottom:24px}.filters label{flex:1;min-width:120px;font-size:.75rem}.filters input,.filters select{font-size:.85rem;min-height:44px}.filters .secondary{min-height:44px;font-size:.8rem;padding:8px 15px}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}.metric{background:#fff;border:1px solid var(--border);padding:24px;border-radius:15px;display:flex;flex-direction:column;gap:12px}.metric span{font-size:.85rem;color:var(--muted)}.metric strong{font-size:2.3rem;font-weight:400}.overview-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.stat-row{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:12px 0;border-bottom:1px solid #edf0e9;font-size:.875rem}.stat-row:last-child{border-bottom:0}.panel>.muted{margin-top:15px}.kiosk-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:24px}.station-form{display:flex;gap:15px;align-items:flex-end}.station-form label{flex:1}.station-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px}.status{padding:3px 12px;background:#e8eee2;border-radius:20px;font-size:.75rem}.status.disconnected,.status.error{background:#f8e9df;color:#925938;margin:0;border:0}.status.playing{background:#d3e9bf}.kiosk-card>p{font-size:.85rem;color:var(--muted)}.inline-actions{display:flex;gap:15px;margin-top:20px}.inline-actions button{background:none;font-size:.8rem;text-decoration:underline;padding:5px 0}.enrol-code{background:#e2edcf;border:1px solid #c5d9a8;border-radius:12px;padding:20px;text-align:center;margin-top:20px}.enrol-code code{font-size:1.3rem;direction:ltr;display:block;margin:10px;user-select:all;overflow-wrap:anywhere}.enrol-code p{font-size:.875rem}.table-scroll{overflow-x:auto}table{border-collapse:collapse;width:100%;white-space:nowrap;font-size:.85rem}th{text-align:right;color:#6d816f;font-weight:400}td,th{padding:15px 12px;border-bottom:1px solid #e6ede2}.empty{text-align:center;color:var(--muted);padding:50px 0}.pagination{display:flex;align-items:center;justify-content:center;gap:20px;margin-top:25px}.pagination button{padding:8px 18px;background:#eaf0e4;border-radius:8px}.table-scroll+.empty{padding:25px}.metrics>.panel{grid-column:auto}@media(min-width:1600px){.kiosk-app{font-size:1.2rem}.kiosk-app .game-shell{max-width:850px}.kiosk-app .game-heading h1{font-size:3rem}.kiosk-app .memory-card span{font-size:1.3rem}.kiosk-app .memory-card svg{width:40px;height:40px}.kiosk-app .game-feedback{font-size:1rem}}@media(max-width:900px){.app{padding:0 5%}.game-cards{gap:12px}.game-card{padding:20px;min-height:385px}.card-copy h2{font-size:1.3rem}.admin-layout{grid-template-columns:180px 1fr}.admin-layout aside{padding:25px 15px}.admin-main{padding:25px}.metrics{grid-template-columns:repeat(2,1fr)}.overview-grid,.kiosk-grid{grid-template-columns:1fr}.station-form{flex-wrap:wrap}.header-label{display:none}}@media(max-width:620px){.site-header{height:84px}.home-heading{padding:35px 0 25px}.home-heading h1{font-size:2.7rem}.home-heading p{font-size:.875rem}.game-cards{grid-template-columns:1fr;gap:16px}.game-card{min-height:0;padding:23px;display:grid;grid-template-columns:1fr 75px;gap:0 10px}.card-top{grid-column:1/3;flex-direction:row-reverse;justify-content:flex-end;gap:15px;margin-bottom:14px}.game-emblem{grid-column:2;grid-row:2;height:80px;align-items:center;justify-content:center}.game-emblem svg{height:48px;width:48px}.card-copy{grid-column:1;grid-row:2}.card-copy h2{font-size:1.4rem}.card-copy p{font-size:.8rem}.card-bottom{grid-column:1/3;padding-top:15px}.home-bottom{font-size:.7rem}.home-bottom p{max-width:280px}footer{font-size:.65rem}.game-shell{margin:25px auto}.game-heading h1{font-size:1.6rem}.intro-panel,.result-panel{padding:28px 22px;gap:18px}.intro-panel p,.result-panel p{font-size:.9rem}.play-panel{padding:16px}.memory-board{gap:8px}.memory-card{min-height:90px}.memory-card span{font-size:.8rem}.game-meta{font-size:.75rem}.letter-grid{gap:4px}.letter-grid button{font-size:1.2rem}.word-list{gap:5px}.word-list>span{padding:4px 9px;font-size:.8rem}.result-panel h2{font-size:1.4rem}.result-actions{flex-direction:column;width:100%}.setup-games{grid-template-columns:1fr}.admin-layout{display:block}.admin-layout aside{height:auto;position:static;padding:20px}.admin-layout aside .brand{display:none}.nav-label{display:none}.admin-layout nav{display:flex;flex-wrap:wrap;gap:5px}.admin-layout nav button{font-size:.8rem;padding:10px}.admin-user{display:flex;justify-content:space-between;margin-top:15px}.admin-main{padding:20px 14px}.admin-heading{align-items:flex-start}.admin-heading>div:last-child>.muted{display:none}.admin-heading h1{font-size:1.5rem}.metrics{gap:10px}.metric{padding:18px}.metric strong{font-size:1.9rem}.metric span{font-size:.75rem}.station-form{display:grid}.kiosk-app .intro-panel{padding:3dvh 20px}.kiosk-app .memory-card{height:11dvh}.kiosk-app .game-feedback{font-size:.75rem}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}.scenario{display:flex;flex-direction:column;min-height:clamp(350px,50dvh,620px)}.scenario-feedback{display:flex;flex-direction:column;align-items:center;text-align:center;flex:1;padding-top:24px;gap:16px}.feedback-icon{background:#e5efd6;border-radius:50%;width:74px;height:74px;display:grid;place-items:center}.scenario-feedback>p{max-width:460px;font-size:1.1rem;line-height:1.9;color:#415c49}.scenario-feedback h3{margin:0}.scenario-next{margin-top:auto;padding-top:28px;display:grid;gap:13px;width:100%}.continue-countdown{display:flex;gap:8px;justify-content:center;align-items:center;font-size:.9rem;color:#5c705e}.continue-countdown strong{font-size:1.2rem;color:var(--green)}.scenario-next .primary{width:100%;min-height:58px;font-size:1.05rem}.kiosk-app .scenario{min-height:57dvh}.kiosk-code-input{text-align:center;font-size:2rem;letter-spacing:.45em;min-height:74px}.enrol-code code{font-size:2.6rem;letter-spacing:.35em}@media(max-width:620px){.scenario-feedback>p{font-size:1rem}.scenario-next{padding-top:18px}.scenario-feedback{padding-top:15px;gap:12px}}.letter-grid{width:min(100%,max(245px,calc(100dvh - 430px)));margin-inline:auto}.kiosk-app .letter-grid{width:100%}.kiosk-list{display:grid;gap:12px}.kiosk-row{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr 1.3fr;align-items:center;gap:20px}.kiosk-row h2{margin:0;font-size:1.15rem}.kiosk-row p{margin:8px 0 0}.kiosk-code{display:grid;gap:6px}.kiosk-code span{font-size:.85rem;color:var(--muted)}.kiosk-code code,.permanent-code-notice code{font-size:1.8rem;font-weight:800;letter-spacing:.15em;color:#126553}.permanent-code-notice{padding:16px 22px;background:#e8f4ed;border-radius:16px}@media(max-width:1000px){.kiosk-row{grid-template-columns:1fr 1fr}.kiosk-identity{grid-column:1 / -1}}.brand .najm-logo{width:72px;height:64px;object-fit:contain}.brand .campaign-logo{width:150px;height:56px;object-fit:contain}.brand-divider{height:38px;width:1px;background:#073e3526;margin:0 8px}.admin-layout aside .brand{background:#f6f8f3;border-radius:12px;padding:12px;gap:6px}.admin-layout aside .brand img{max-width:45%}.banner-slider{margin-top:24px}.banner-image{border-radius:22px;overflow:hidden;background:#073e35;aspect-ratio:16 / 9}.banner-image img{width:100%;height:100%;object-fit:contain;display:block}.banner-image img[hidden]{display:none}.banner-controls{display:flex;justify-content:center;align-items:center;gap:14px;padding:10px 0}.banner-controls button{min-width:44px;min-height:44px;display:grid;place-items:center;border:0;border-radius:50%;background:transparent;color:#073e35}.banner-controls button:hover{background:#e2ebe3}.banner-dots{display:flex}.banner-dots button:after{content:"";width:7px;height:7px;border-radius:8px;background:#b7c8bd}.banner-dots button[aria-current]:after{width:23px;background:#073e35}.home-heading.compact-heading{padding:20px 0 25px}.home-heading.compact-heading h1{font-size:clamp(1.5rem,3vw,2.2rem);letter-spacing:0}.home-heading.compact-heading p{margin-top:8px;font-size:.9rem}.game-card{min-height:280px}.game-emblem{height:70px}.game-emblem svg{width:44px;height:44px}.start-countdown{display:grid;justify-items:center;gap:6px;margin:16px 0;color:#073e35}.start-countdown strong{width:78px;height:78px;border-radius:50%;display:grid;place-items:center;border:3px solid #87a78d;background:#edf4e8;font-size:2.5rem;line-height:1}@media(max-width:600px){.brand .najm-logo{width:49px;height:48px}.brand .campaign-logo{width:110px;height:40px}.brand{gap:8px}.brand-divider{margin:0 3px;height:28px}.banner-slider{margin-top:16px}.banner-image{border-radius:12px}.banner-controls{gap:3px}}.intro-panel.countdown-panel{padding:24px;gap:14px}.countdown-panel .intro-icon,.countdown-panel .round-facts{display:none}.countdown-panel .guest-name{font-size:1.1rem;font-weight:700;color:#073e35}.station-form{flex-wrap:wrap}.station-form select{min-width:170px}.server-status{display:grid;gap:20px}.server-status .metrics{margin:0}.server-status .metrics strong{font-size:1.6rem;color:#073e35}.status-chart svg{width:100%;max-height:280px;direction:ltr}.status-chart text{font-size:12px;fill:#536e61}
