*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:radial-gradient(1200px 700px at 82% -12%,rgba(60,88,72,.3),transparent 60%),radial-gradient(900px 600px at -5% 100%,rgba(184,146,74,.12),transparent 55%),#0e1410;color:#e9e2cf;font-family:Spectral,serif;line-height:1.6;min-height:100vh;overflow-x:hidden}body:before{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='a'%3E%3CfeTurbulence baseFrequency='.9' numOctaves='2' type='fractalNoise'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23a)' opacity='.04'/%3E%3C/svg%3E");content:"";inset:0;mix-blend-mode:overlay;pointer-events:none;position:fixed;z-index:1}@keyframes fade{0%{opacity:0}to{opacity:1}}@keyframes rise{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.kicker{color:#d4b574;font-size:11px;letter-spacing:.38em;margin-bottom:14px}.kicker,.wordmark{font-family:IBM Plex Mono,monospace;text-transform:uppercase}.wordmark{color:#cdc6ae;font-size:9.5px;letter-spacing:.34em;opacity:.75}.title{color:#e9e2cf;font-family:Cormorant Garamond,serif;font-size:clamp(2.4rem,6vw,4.6rem);font-weight:700;letter-spacing:.5px;line-height:.96}.caption,.title .em{color:#d4b574;font-style:italic}.caption{font-family:Cormorant Garamond,serif;font-size:1.5rem;font-weight:600;letter-spacing:.04em}.sub{color:#cdc6ae;font-size:1.05rem;font-style:italic;margin:18px auto 0;max-width:660px}.sec-title{align-items:center;color:#e9e2cf;display:flex;font-family:Cormorant Garamond,serif;font-size:1.5rem;gap:14px;margin:46px 0 22px}.sec-title:before{background:#b8924a;content:"";height:1px;width:30px}.sec-title span{color:#d4b574;font-family:IBM Plex Mono,monospace;font-size:.7rem;letter-spacing:.3em;text-transform:uppercase}.rule{background:linear-gradient(90deg,transparent,rgba(184,146,74,.28),transparent);height:1px;margin:38px 0}.wrap{margin:0 auto;max-width:1080px;padding:0 24px;position:relative;z-index:2}.grid{display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.row{display:flex;flex-wrap:wrap;gap:10px}.row--center{align-items:center;justify-content:center}.row--between{justify-content:space-between}.stack{display:flex;flex-direction:column;gap:14px}.center,.site-header{text-align:center}.site-header{padding:64px 0 28px;position:relative}.logo{filter:drop-shadow(0 6px 16px rgba(0,0,0,.45));height:auto;margin:0 auto 2px;width:200px}.crest,.logo{display:block}.crest{height:90px;margin:0 auto 18px;width:90px}.site-footer{color:rgba(233,226,207,.4);font-size:.68rem;letter-spacing:.2em;padding:50px 0 40px;text-align:center}.btn,.site-footer{font-family:IBM Plex Mono,monospace;text-transform:uppercase}.btn{align-items:center;background:#3c5848;border:none;border-radius:3px;color:#e9e2cf;cursor:pointer;display:inline-flex;font-size:.78rem;gap:10px;justify-content:center;letter-spacing:.18em;padding:12px 22px;transition:.35s}.btn:hover{background:#b8924a;color:#0e1410}.btn:disabled{cursor:not-allowed;opacity:.4}.btn--gold{background:#b8924a;color:#0e1410}.btn--gold:hover{background:#d4b574}.btn--blood{background:#6e2a2a;color:#e9e2cf}.btn--blood:hover{background:#9c3c3c}.btn--ghost{background:none;border:1px solid rgba(184,146,74,.28);color:#cdc6ae}.btn--ghost:hover{background:none;border-color:#b8924a;color:#d4b574}.btn--block{width:100%}.btn--sm{font-size:.68rem;padding:8px 14px}.btn--lg{font-size:.85rem;padding:16px 30px}.btn-link{background:none;border:none;color:#d4b574;cursor:pointer;font-family:IBM Plex Mono,monospace;font-size:.68rem;letter-spacing:.15em;padding:0;text-decoration:underline dotted;text-transform:uppercase}.btn-link:hover{color:#b8924a}.card{background:linear-gradient(165deg,#1a261d,#141d17);border:1px solid rgba(184,146,74,.28);border-radius:5px;overflow:hidden;position:relative;transition:transform .35s,box-shadow .35s,border-color .35s}.card:hover{border-color:#b8924a;box-shadow:0 24px 60px -20px rgba(0,0,0,.75);transform:translateY(-3px)}.card.is-solved{border-color:#6c8a57}.card__head{align-items:flex-start;border-bottom:1px solid rgba(184,146,74,.28);cursor:pointer;display:flex;gap:10px;justify-content:space-between;padding:18px 22px 14px}.card__num{color:#d4b574;font-family:IBM Plex Mono,monospace;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;text-transform:none}.card__title{color:#e9e2cf;font-family:Cormorant Garamond,serif;font-size:1.45rem;font-weight:600;line-height:1.1;margin-top:4px}.card__body{max-height:0;overflow:hidden;padding:0 22px;transition:max-height .5s ease,padding .5s ease}.card.is-open .card__body{max-height:960px;padding:18px 22px 24px}.card__text{color:#cdc6ae;font-size:1rem;white-space:pre-line}.card__text b{color:#e9e2cf;font-weight:600}.card__text .data{color:#d4b574;font-family:IBM Plex Mono,monospace;font-size:.92rem}.card__ask{color:#e9e2cf;font-style:italic;margin-top:14px}.panel{background:linear-gradient(180deg,#1a261d,#141d17);border:1px solid rgba(184,146,74,.28);border-radius:4px;box-shadow:0 24px 60px -20px rgba(0,0,0,.75);overflow:hidden;padding:34px 38px;position:relative}@media(max-width:560px){.panel{padding:26px 22px}}.panel--seal:after{border:1px solid rgba(184,146,74,.28);border-radius:50%;content:"";height:160px;opacity:.25;position:absolute;right:-30px;top:-30px;width:160px}.panel__title{color:#d4b574;font-family:Cormorant Garamond,serif;font-size:1.9rem;font-weight:600;margin-bottom:14px}.panel__text{color:#cdc6ae;font-size:1.06rem;position:relative}.panel__meta{color:#9c3c3c;font-family:IBM Plex Mono,monospace;font-size:.82rem;letter-spacing:.2em;margin-top:18px;text-transform:uppercase}.panel__motto{color:#3c5848;filter:brightness(1.5);font-size:1rem;font-style:italic;margin-top:18px}.panel--ledger{background:linear-gradient(180deg,#141d17,#1a261d);padding:26px 30px}.panel--victory{background:radial-gradient(700px 400px at 50% 0,rgba(184,146,74,.18),transparent 60%),#141d17;border:1px solid #b8924a;border-radius:5px;box-shadow:none;padding:50px 30px;text-align:center}.panel--victory .panel__title{font-size:2.6rem;font-weight:700;margin:14px 0}.field{background:#0e1410;border:1px solid rgba(184,146,74,.28);border-radius:3px;color:#e9e2cf;flex:1;font-family:IBM Plex Mono,monospace;font-size:1rem;letter-spacing:.1em;min-width:140px;padding:12px 14px}.field::placeholder{color:rgba(205,198,174,.5)}.field:focus{border-color:#b8924a;outline:none}.field--center,.field--code{text-align:center}.field--code{font-size:1.3rem;letter-spacing:.4em;max-width:220px}textarea.field{line-height:1.5;min-height:96px;resize:vertical}.answer-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.field-group{display:flex;flex-direction:column;gap:6px}.field-group+.field-group{margin-top:18px}.field-group .field{flex:none;width:100%}.field-label{color:#d4b574;font-family:IBM Plex Mono,monospace;font-size:.68rem;letter-spacing:.22em;text-transform:uppercase}.checkbox{align-items:center;color:#cdc6ae;display:flex;font-size:.92rem;gap:10px}.checkbox input{accent-color:#b8924a;height:15px;width:15px}.checkbox label{cursor:pointer;font-size:.68rem;letter-spacing:.15em;text-transform:uppercase;text-transform:none}.checkbox label,.tag{color:#cdc6ae;font-family:IBM Plex Mono,monospace}.tag{border:1px solid rgba(184,146,74,.28);border-radius:3px;flex-shrink:0;font-size:.6rem;letter-spacing:.12em;padding:4px 8px;text-transform:uppercase;white-space:nowrap}.tag.is-solved{border-color:#6c8a57;color:#6c8a57}.pill{align-items:center;border:1px solid rgba(184,146,74,.28);border-radius:30px;color:#cdc6ae;display:inline-flex;font-family:IBM Plex Mono,monospace;font-size:.72rem;gap:7px;letter-spacing:.15em;padding:6px 13px;text-transform:uppercase;text-transform:none;transition:.4s}.pill .dot{background:rgba(233,226,207,.25);border-radius:50%;height:7px;transition:.4s;width:7px}.pill.is-done{border-color:#b8924a;color:#d4b574}.pill.is-done .dot{background:#b8924a;box-shadow:0 0 10px #b8924a}.chip{background:rgba(184,146,74,.12);border-radius:3px;color:#d4b574;font-family:IBM Plex Mono,monospace;font-size:.65rem;letter-spacing:.1em;padding:4px 10px;text-transform:uppercase;text-transform:none}.progress{align-items:center;margin:30px 0 6px}.progress,.slots{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.slots{margin-bottom:22px}.slot{align-items:center;background:#0e1410;border:1px solid rgba(184,146,74,.28);border-radius:4px;color:#e9e2cf;display:flex;font-family:IBM Plex Mono,monospace;font-size:1.8rem;height:66px;justify-content:center;transition:.4s;width:54px}.slot.is-filled{border-color:#b8924a;box-shadow:inset 0 0 14px rgba(184,146,74,.2);color:#d4b574}@media(max-width:560px){.slot{font-size:1.4rem;height:56px;width:44px}}.feedback{font-family:IBM Plex Mono,monospace;font-size:.8rem;letter-spacing:.05em;margin-top:14px;min-height:18px;text-transform:uppercase;text-transform:none}.feedback.is-ok{color:#6c8a57}.feedback.is-no{color:#9c3c3c}.hint{border-left:2px solid #b8924a;color:#cdc6ae;display:none;font-size:.9rem;font-style:italic;margin-top:10px;padding-left:12px}.hint.is-show{animation:fade .4s;display:block}.fragment{align-items:center;background:rgba(184,146,74,.1);border:1px dashed #b8924a;border-radius:4px;color:#d4b574;display:none;font-family:IBM Plex Mono,monospace;font-size:.85rem;gap:12px;letter-spacing:normal;margin-top:14px;padding:12px 16px;text-transform:uppercase;text-transform:none}.fragment.is-show{animation:fade .5s;display:flex}.fragment .big{color:#e9e2cf;font-size:1.6rem;font-weight:600}.alert{border:1px solid rgba(184,146,74,.28);border-left-width:3px;border-radius:4px;color:#cdc6ae;font-size:.92rem;padding:12px 16px}.alert--ok{border-left-color:#6c8a57}.alert--warn{border-left-color:#b8924a}.alert--err{border-left-color:#9c3c3c}.auth{align-items:center;display:flex;justify-content:center;min-height:100vh;padding:40px 24px}.auth__card{animation:rise .6s ease;background:linear-gradient(180deg,#1a261d,#141d17);border:1px solid rgba(184,146,74,.28);border-radius:5px;box-shadow:0 24px 60px -20px rgba(0,0,0,.75);max-width:420px;overflow:hidden;padding:40px 38px;position:relative;width:100%}.auth__card:after{border:1px solid rgba(184,146,74,.28);border-radius:50%;content:"";height:150px;opacity:.25;position:absolute;right:-40px;top:-40px;width:150px}.auth__kicker{color:#d4b574;font-family:IBM Plex Mono,monospace;font-size:11px;letter-spacing:.36em;margin-bottom:10px;text-transform:uppercase}.auth__title{color:#e9e2cf;font-family:Cormorant Garamond,serif;font-size:2.2rem;font-weight:700;line-height:1;margin-bottom:30px}.auth__title .em{color:#d4b574;font-style:italic}.auth__actions{margin-top:30px}.auth__note{color:#cdc6ae;font-size:.9rem;font-style:italic;margin-top:18px}.auth__note a{color:#d4b574;text-decoration:underline dotted}.auth__note a:hover{color:#b8924a}.auth__form .form-group,.auth__form .mb-3,.auth__form>div{margin-bottom:18px}.auth__form label{color:#d4b574;display:block;font-family:IBM Plex Mono,monospace;font-size:.68rem;letter-spacing:.22em;margin-bottom:6px;text-transform:uppercase}.auth__form input[type=email],.auth__form input[type=password],.auth__form input[type=text]{background:#0e1410;border:1px solid rgba(184,146,74,.28);border-radius:3px;color:#e9e2cf;font-family:IBM Plex Mono,monospace;font-size:1rem;letter-spacing:.1em;padding:12px 14px;width:100%}.auth__form input[type=email]::placeholder,.auth__form input[type=password]::placeholder,.auth__form input[type=text]::placeholder{color:rgba(205,198,174,.5)}.auth__form input[type=email]:focus,.auth__form input[type=password]:focus,.auth__form input[type=text]:focus{border-color:#b8924a;outline:none}.auth__form input[type=checkbox]{accent-color:#b8924a;height:15px;margin-right:10px;vertical-align:middle;width:15px}.auth__form .checkbox label,.auth__form .form-check label{color:#cdc6ae;cursor:pointer;display:inline;font-family:IBM Plex Mono,monospace;font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;text-transform:none}.auth__form ul{list-style:none;margin:6px 0 0;padding:0}.auth__form ul li{border-left:2px solid #9c3c3c;color:#9c3c3c;font-family:IBM Plex Mono,monospace;font-size:.7rem;letter-spacing:.05em;margin-top:4px;padding-left:12px;text-transform:uppercase;text-transform:none}