@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600;700&family=Inter:wght@400;500;600;700&display=swap');
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:#28231f;background:#f7f3ee;font-family:Inter,system-ui,sans-serif;min-height:100vh}body:before{content:"";position:fixed;inset:0;background:radial-gradient(circle at 10% 10%,rgba(181,151,132,.18),transparent 30%),radial-gradient(circle at 90% 70%,rgba(118,139,113,.12),transparent 28%);pointer-events:none;z-index:-2}.ambient{position:fixed;inset:0;overflow:hidden;pointer-events:none;z-index:-1}.ambient i{position:absolute;width:7px;height:7px;border:1px solid rgba(143,111,97,.25);transform:rotate(45deg);animation:float 9s infinite ease-in-out}.ambient i:nth-child(1){left:12%;top:18%}.ambient i:nth-child(2){right:14%;top:30%;animation-delay:-3s}.ambient i:nth-child(3){left:70%;bottom:14%;animation-delay:-6s}@keyframes float{50%{transform:translateY(-25px) rotate(135deg);opacity:.25}}
h1,h2,h3{font-family:"Cormorant Garamond",Georgia,serif;margin:.15em 0;line-height:1.03}h1{font-size:clamp(2.4rem,7vw,5rem);font-weight:500}h2{font-size:2rem}.eyebrow{text-transform:uppercase;letter-spacing:.24em;font-size:.7rem;color:var(--accent);font-weight:700}.center-shell{min-height:100vh;display:grid;place-items:center;padding:24px}.glass-card{width:min(620px,100%);padding:clamp(28px,6vw,64px);text-align:center;background:rgba(255,255,255,.72);border:1px solid rgba(255,255,255,.8);box-shadow:0 30px 80px rgba(60,44,35,.12);backdrop-filter:blur(18px);border-radius:32px;position:relative;overflow:hidden}.glass-card:after{content:"";position:absolute;inset:10px;border:1px solid rgba(143,111,97,.13);border-radius:24px;pointer-events:none}.hero-logo{width:min(280px,70%);height:auto;mix-blend-mode:multiply;margin-bottom:18px}.unlock-card p,.setup-card p{color:#6c625c;line-height:1.7}.sparkle{font-size:1.5rem;color:#b99a68;animation:pulse 2s infinite}@keyframes pulse{50%{transform:scale(1.25);opacity:.45}}.secret-form{display:flex;gap:10px;margin:28px auto 14px;max-width:430px}.secret-form input{flex:1}.stack{display:grid;gap:18px;text-align:left;margin-top:24px}label{display:grid;gap:8px;font-size:.84rem;font-weight:600;color:#5d514a}input,select,textarea{width:100%;border:1px solid #ded4cc;background:#fff;border-radius:13px;padding:14px 15px;font:inherit;color:#28231f;outline:none;transition:.2s}input:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 12%,transparent)}.btn{appearance:none;border:0;border-radius:999px;padding:13px 22px;font-weight:700;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:.2s;font:600 .88rem Inter}.btn:hover{transform:translateY(-2px)}.btn.primary{background:var(--accent);color:#fff;box-shadow:0 10px 25px color-mix(in srgb,var(--accent) 25%,transparent)}.btn.soft{background:#eee6df;color:#5b4c44}.btn.gold{background:linear-gradient(135deg,#a47b3e,#d6b97a);color:#fff;box-shadow:0 12px 30px rgba(164,123,62,.25)}.btn.danger{background:#9e443d;color:#fff}.btn.full{width:100%}.notice{padding:14px 16px;border-radius:14px;margin:18px 0;font-size:.9rem;line-height:1.5}.notice.error{background:#f8e7e3;color:#873d37}.notice.success{background:#e5f0e6;color:#46624a}
.app-shell{width:min(920px,calc(100% - 32px));margin:auto;padding:30px 0 80px}.app-shell.narrow{width:min(720px,calc(100% - 28px))}.player-head{display:flex;align-items:center;gap:18px;padding:12px 0 35px}.player-head .nav-logo{width:82px;mix-blend-mode:multiply}.player-head h1{font-size:2.2rem}.icon-link,.back-link{margin-left:auto;color:#75665e;text-decoration:none;font-size:.82rem}.back-link{display:inline-block;margin:10px 0 24px}.progress-card{background:#fff;padding:20px 24px;border-radius:20px;box-shadow:0 12px 40px rgba(60,44,35,.07);margin-bottom:34px}.progress-copy{display:flex;justify-content:space-between;font-size:.8rem;margin-bottom:12px;color:#71655e}.progress-track{height:7px;background:#eee8e3;border-radius:10px;overflow:hidden}.progress-track i{display:block;height:100%;background:linear-gradient(90deg,var(--accent),#c8aa96);border-radius:10px;transition:width .8s}.timeline{position:relative}.timeline:before{content:"";position:absolute;left:25px;top:30px;bottom:30px;width:1px;background:#d9cec6}.test-node{display:grid;grid-template-columns:52px 1fr;gap:18px;position:relative;margin:0 0 24px}.node-index{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:#eee6df;color:#8b7c73;font-family:"Cormorant Garamond";font-size:1.35rem;font-weight:700;z-index:1;border:5px solid #f7f3ee}.test-node.done .node-index{background:#72856e;color:#fff}.test-node.available:not(.done) .node-index{background:var(--accent);color:#fff;box-shadow:0 0 0 7px color-mix(in srgb,var(--accent) 10%,transparent)}.node-card{background:#fff;border-radius:22px;padding:24px;box-shadow:0 10px 35px rgba(60,44,35,.06);border:1px solid #f0e9e4}.test-node.locked .node-card{opacity:.56}.node-card h2{margin:3px 0 14px}.mini{font-size:.66rem;text-transform:uppercase;letter-spacing:.18em;color:#9b8b82}.master-chip{display:inline-flex;gap:8px;align-items:center;background:#f7efdf;color:#7a5c2f;border-radius:999px;padding:8px 13px;margin:0 0 14px;font-size:.75rem}.lock-copy{font-size:.78rem;color:#998b83}.final-teaser{text-align:center;padding:55px 25px;margin-top:45px;border-radius:28px;background:#2e2926;color:#fff;position:relative;overflow:hidden}.final-teaser span{color:#d2b47b;letter-spacing:1em}.final-teaser p{color:#cfc6c0}.challenge-card{background:#fff;border-radius:28px;padding:clamp(25px,6vw,55px);box-shadow:0 20px 60px rgba(60,44,35,.09);position:relative;overflow:hidden}.challenge-number{position:absolute;right:-10px;top:-38px;font:700 11rem "Cormorant Garamond";color:#f4eee9;z-index:0}.challenge-card>*{position:relative}.rich-content{font:1.12rem/1.7 "Cormorant Garamond",Georgia,serif;margin:24px 0}.rich-content img{max-width:100%;height:auto;border-radius:18px}.answer-form{display:grid;gap:20px;margin-top:30px}.photo-drop{padding:28px;text-align:center;border:1px dashed #cdbdb2;border-radius:18px;background:#faf8f6;cursor:pointer}.photo-drop input{margin-top:12px}.camera{font-size:2rem;color:var(--accent)}.attempts{display:flex;align-items:center;gap:6px;color:#8b7e76;font-size:.75rem}.attempts i{width:9px;height:9px;border-radius:50%;background:#e3d9d2}.attempts i.active{background:var(--accent)}.attempts span{margin-left:6px}.result{padding:24px;border-radius:20px;margin:25px 0}.result.success{background:#edf4ec}.result.error{background:#f8e9e6}.result-icon{width:38px;height:38px;border-radius:50%;background:#71836d;color:#fff;display:grid;place-items:center;font-weight:700}.master-reveal{margin-top:20px;padding:22px;text-align:center;border:1px solid #d9c39a;background:#fff9ec;border-radius:16px}.master-reveal small{display:block;text-transform:uppercase;letter-spacing:.15em;color:#8a7045}.master-reveal strong{display:block;font:700 4rem "Cormorant Garamond";color:#6e5228}.final-card{text-align:center}.token-bank{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin:28px 0}.drag-token{width:54px;height:54px;border:1px solid #cdb58b;border-radius:13px;background:#fff8e9;color:#6d522c;font:700 1.5rem "Cormorant Garamond";cursor:grab;box-shadow:0 8px 18px rgba(90,68,34,.08)}.drag-token.dragging{opacity:.25}.pattern{display:flex;align-items:center;justify-content:center;gap:6px;margin:30px auto;flex-wrap:nowrap}.drop-slot{width:48px;height:58px;border:1px dashed #bcae9f;border-radius:12px;background:#faf7f3;display:grid;place-items:center;font:700 1.5rem "Cormorant Garamond";transition:.2s}.drop-slot.over{transform:scale(1.08);border-color:var(--accent);background:#f3ebe5}.separator{font:600 2rem "Cormorant Garamond"}.final-attempts{justify-content:center;margin-bottom:20px}.final-message{padding:35px;border:1px solid #d7bd88;background:linear-gradient(145deg,#fffaf0,#fff);border-radius:20px;margin-top:28px}
.mode-admin{background:#f4f1ed}.admin-layout{display:grid;grid-template-columns:230px 1fr;min-height:100vh}.admin-side{position:sticky;top:0;height:100vh;background:#292522;padding:28px 22px;color:#fff;display:flex;flex-direction:column}.admin-side img{width:150px;filter:invert(1);opacity:.9;margin:0 auto 35px}.admin-side nav{display:grid;gap:8px}.admin-side nav a,.side-logout{color:#c9c0ba;text-decoration:none;padding:11px 13px;border-radius:10px;font-size:.83rem}.admin-side nav a:hover,.admin-side nav a.active{background:#3a3430;color:#fff}.side-logout{margin-top:auto}.admin-main{padding:40px clamp(25px,5vw,70px);max-width:1400px;width:100%}.admin-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.admin-top h1{font-size:3.3rem}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.stats-grid>div{background:#fff;border:1px solid #ebe3dd;border-radius:17px;padding:20px}.stats-grid strong{font:600 2rem "Cormorant Garamond";display:block}.stats-grid span{font-size:.72rem;color:#897b72}.admin-section{margin-top:38px;background:#fff;border:1px solid #e8e0da;border-radius:22px;padding:28px}.section-title{display:flex;justify-content:space-between}.admin-tests{display:grid;gap:10px;margin-top:20px}.admin-tests article{display:grid;grid-template-columns:54px 1fr auto;align-items:center;gap:16px;border:1px solid #eee7e2;border-radius:15px;padding:13px}.order-controls{display:grid;place-items:center}.order-controls form{margin:0}.order-controls button,.row-actions button{border:0;background:none;cursor:pointer;color:#776a62}.order-controls span{font-weight:700}.admin-test-copy h3{font-family:Inter;font-size:1rem;margin:0 0 7px}.badges,.status-row{display:flex;flex-wrap:wrap;gap:7px;align-items:center}.badges span{font-size:.64rem;background:#f3efec;padding:5px 8px;border-radius:999px;color:#756961}.status-row{margin-top:8px;font-size:.7rem;color:#897d75}.status{padding:4px 7px;border-radius:7px}.status.ok{background:#e3eee4;color:#46604a}.status.pending{background:#f2eee9;color:#7e7169}.row-actions{display:flex;gap:8px;align-items:center}.row-actions a,.row-actions button{font-size:.7rem;text-decoration:none;color:#6e625b}.row-actions .danger-link{color:#a14740}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:20px 0}.form-grid .wide{grid-column:1/-1}.check{display:flex;align-items:center;gap:9px}.check input{width:auto}.admin-form small{font-weight:400;color:#968981}.mini-editor,.rich-editor{min-height:100px;border:1px solid #ded4cc;border-radius:13px;padding:15px;background:#fff;font-weight:400;line-height:1.6;outline:none}.rich-editor{min-height:260px}.toolbar{display:flex;gap:5px;background:#f3efec;padding:7px;border-radius:11px 11px 0 0;margin-bottom:-9px;z-index:1}.toolbar button{border:0;background:#fff;border-radius:7px;padding:7px 10px;cursor:pointer}.inline-actions{display:flex;gap:10px;align-items:center}.danger-zone{margin-top:38px;border:1px solid #e6c7c2;background:#fff7f6;border-radius:20px;padding:25px}.editor-shell{width:min(900px,calc(100% - 32px));margin:auto;padding:35px 0 80px}.editor-head{margin-bottom:25px}.editor-form{display:grid;gap:22px;background:#fff;border-radius:22px;padding:28px;border:1px solid #e8e0da}.admin-login{max-width:480px}
@media(max-width:760px){.secret-form{display:grid}.player-head{align-items:flex-start}.player-head .nav-logo{width:62px}.timeline:before{left:20px}.test-node{grid-template-columns:42px 1fr;gap:10px}.node-index{width:42px;height:42px}.node-card{padding:19px}.pattern{gap:3px}.drop-slot{width:34px;height:48px}.separator{font-size:1.5rem}.admin-layout{display:block}.admin-side{position:relative;height:auto;display:flex;flex-direction:row;align-items:center;padding:12px 16px;gap:10px}.admin-side img{width:70px;margin:0 auto 0 0}.admin-side nav{display:none}.side-logout{margin:0}.admin-main{padding:25px 14px}.admin-top{align-items:flex-end}.stats-grid{grid-template-columns:1fr 1fr}.admin-section{padding:18px}.admin-tests article{grid-template-columns:40px 1fr}.row-actions{grid-column:2;justify-content:flex-start;flex-wrap:wrap}.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.inline-actions{align-items:stretch;flex-direction:column}.challenge-card{border-radius:22px}.photo-drop{padding:20px}}
