:root{--bg: #0f0c09;--bg-raised: #171310;--bg-card: #1b1612;--ink: #d4b896;--ink-dim: #a08a68;--ink-faint: #6e5c45;--rule: #3a2e22;--rule-strong: #5a4530;--blood: #8b1a1a;--blood-bright: #c0392b;--gold: #c9a84c;--gold-deep: #8c7530;--bg-card2: #211a14;--moon-lit: #dcc79c;--moon-dark: #14100b}*{box-sizing:border-box}html,body{margin:0;padding:0;background:radial-gradient(ellipse at top,rgba(139,26,26,.06) 0%,transparent 55%),radial-gradient(ellipse at bottom,rgba(201,168,76,.04) 0%,transparent 55%),var(--bg);color:var(--ink);font-family:Georgia,Crimson Pro,serif;line-height:1.6;min-height:100vh}a{color:var(--gold);text-decoration:none;border-bottom:1px dotted var(--gold-deep)}a:hover{color:var(--blood-bright);border-bottom-color:var(--blood)}code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;background:#8b1a1a1f;color:var(--ink);padding:1px 6px;border:1px solid rgba(139,26,26,.25);font-size:.9em}.frame{max-width:560px;margin:80px auto;padding:56px 64px;background:linear-gradient(180deg,var(--bg-raised) 0%,var(--bg) 100%);border:1px solid var(--rule);position:relative}.frame.wide{max-width:860px}.frame:before,.frame:after{content:"";position:absolute;width:60px;height:60px;border:1px solid var(--gold-deep);opacity:.4;pointer-events:none}.frame:before{top:14px;left:14px;border-right:none;border-bottom:none}.frame:after{bottom:14px;right:14px;border-left:none;border-top:none}.eyebrow{font-style:italic;letter-spacing:.18em;text-transform:uppercase;font-size:11px;color:var(--ink-faint);margin-bottom:14px}h1{font-weight:400;font-size:40px;margin:0 0 10px;letter-spacing:.02em}h1 .crest{color:var(--blood);font-style:italic}h2{font-weight:400;font-size:22px;color:var(--ink);margin:0 0 10px;letter-spacing:.02em}.subtitle{font-style:italic;color:var(--ink-dim);font-size:17px;margin:0 0 28px}.status{font-size:14px;color:var(--ink-faint);margin:0;padding-top:18px;border-top:1px solid var(--rule)}.status strong{font-weight:600}.status .ok{color:var(--gold)}.status .pending{color:var(--blood)}.row-between{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:16px}.section{margin:36px 0;padding-top:24px;border-top:1px solid var(--rule)}.section:first-of-type{border-top:none;padding-top:0}.muted{color:var(--ink-faint);font-size:14px}.muted a{color:var(--ink-dim);border-bottom-color:var(--ink-faint)}.banner{background:#c9a84c0f;border:1px solid var(--gold-deep);border-left:3px solid var(--gold);padding:12px 16px;margin:16px 0 24px;font-size:14px;color:var(--ink-dim)}.choices{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:8px}.choice{display:flex;flex-direction:column;gap:6px;padding:22px 24px;background:var(--bg-card);border:1px solid var(--rule);border-left:3px solid var(--gold);color:var(--ink);text-decoration:none;transition:border-color .2s ease,transform .15s ease}.choice:hover{border-color:var(--rule-strong);border-left-color:var(--blood);transform:translate(2px);color:var(--ink)}.choice-label{font-size:18px;color:var(--ink);letter-spacing:.02em}.choice-desc{font-style:italic;color:var(--ink-dim);font-size:14px}@media (max-width: 600px){.choices{grid-template-columns:1fr}}.form{display:flex;flex-direction:column;gap:18px;margin-top:8px}.field{display:flex;flex-direction:column;gap:6px}.field-label{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint)}input[type=text],input[type=email]{background:var(--bg-card);color:var(--ink);border:1px solid var(--rule);padding:12px 14px;font-family:inherit;font-size:16px;letter-spacing:.02em;outline:none;transition:border-color .15s ease}input[type=text]:focus,input[type=email]:focus{border-color:var(--gold)}.error{color:var(--blood-bright);font-style:italic;margin:0;font-size:14px}button{font-family:inherit;cursor:pointer;letter-spacing:.02em}button:disabled{cursor:not-allowed;opacity:.5}.primary{display:inline-block;background:var(--bg-card);color:var(--gold);border:1px solid var(--gold-deep);padding:12px 22px;font-size:15px;font-family:inherit;text-decoration:none;transition:background .15s ease,border-color .15s ease}.primary:hover{background:#c9a84c1a;border-color:var(--gold)}.primary.inline{padding:8px 16px;font-size:14px}.ghost{background:transparent;color:var(--ink-dim);border:1px solid var(--rule);padding:8px 16px;font-size:14px;text-decoration:none}.ghost:hover{color:var(--ink);border-color:var(--rule-strong)}.ghost.small{padding:4px 10px;font-size:12px}.list{list-style:none;padding:0;margin:12px 0}.list li{padding:10px 14px;border:1px solid var(--rule);border-bottom:none;background:var(--bg-card)}.list li:last-child{border-bottom:1px solid var(--rule)}.list li a{color:var(--ink);border-bottom:none}.list li a:hover{color:var(--gold)}.code-list li{display:flex;align-items:center;justify-content:space-between;gap:12px}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:18px;letter-spacing:.12em;color:var(--gold)}details summary{cursor:pointer;padding:8px 0;font-size:14px}details summary:hover{color:var(--ink)}textarea{background:var(--bg-card);color:var(--ink);border:1px solid var(--rule);padding:12px 14px;font-family:inherit;font-size:15px;letter-spacing:.01em;line-height:1.5;outline:none;resize:vertical;transition:border-color .15s ease}textarea:focus{border-color:var(--gold)}.tag-row{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.tag-pill{display:inline-block;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;letter-spacing:.04em;color:var(--ink-dim);background:#c9a84c0f;border:1px solid var(--gold-deep);padding:2px 8px}.tag-btn{background:var(--bg-card);color:var(--ink-dim);border:1px solid var(--rule);padding:6px 12px;font-size:13px;font-family:inherit;transition:border-color .15s ease,color .15s ease,background .15s ease}.tag-btn:hover{border-color:var(--rule-strong);color:var(--ink)}.tag-btn.active{background:#c9a84c14;border-color:var(--gold-deep);color:var(--gold)}.message-list{list-style:none;padding:0;margin:12px 0;display:flex;flex-direction:column;gap:10px}.message-item{padding:14px 16px;background:var(--bg-card);border:1px solid var(--rule);border-left:3px solid var(--blood);display:flex;flex-direction:column;gap:8px}.message-item.read{border-left-color:var(--rule-strong);opacity:.7}.message-head{display:flex;justify-content:space-between;align-items:center;gap:12px}.message-body{margin:0;color:var(--ink);font-size:15px;white-space:pre-wrap}.message-item.read .message-body{color:var(--ink-dim)}.noctuary .panel{background:linear-gradient(180deg,var(--bg-raised) 0%,var(--bg) 100%);border:1px solid var(--rule);position:relative;padding:26px 28px;margin-top:20px}.noctuary .panel:before,.noctuary .panel:after{content:"";position:absolute;width:34px;height:34px;border:1px solid var(--gold-deep);opacity:.45;pointer-events:none}.noctuary .panel:before{top:9px;left:9px;border-right:none;border-bottom:none}.noctuary .panel:after{bottom:9px;right:9px;border-left:none;border-top:none}.noctuary .panel-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.noctuary .panel-title{font-family:IM Fell English,Georgia,serif;font-size:21px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}.noctuary .panel-meta{font-size:12px;letter-spacing:.06em;color:var(--ink-faint);font-style:italic}.noctuary .panel-lede{font-style:italic;color:var(--ink-faint);font-size:13px;border-top:1px solid var(--rule);padding-top:12px;margin-top:12px}.noctuary .night{margin-top:26px}.noctuary .night-head{display:flex;align-items:center;gap:12px}.noctuary .night-no{font-family:IM Fell English,Georgia,serif;font-size:17px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink);white-space:nowrap}.noctuary .night-head .line{flex:1;height:1px;background:linear-gradient(90deg,var(--rule-strong),transparent)}.noctuary .night-phase{display:flex;align-items:center;gap:7px;font-size:12px;font-style:italic;color:var(--ink-dim);letter-spacing:.03em;white-space:nowrap}.noctuary .night-sub{display:flex;align-items:baseline;gap:10px;margin:5px 0 2px;padding-left:1px}.noctuary .night-date{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-deep)}.noctuary .night-vibe{font-style:italic;color:var(--ink-dim);font-size:14px}.noctuary .entries{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-direction:column;gap:9px}.noctuary .entry{display:grid;grid-template-columns:18px 1fr;gap:11px;align-items:start;background:var(--bg-card);border:1px solid var(--rule);border-left:3px solid var(--rule-strong);padding:11px 14px}.noctuary .entry .glyph{font-size:14px;line-height:1.5;text-align:center;color:var(--ink-faint)}.noctuary .entry .e-body{margin:0;font-size:15px;color:var(--ink)}.noctuary .entry .e-meta{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:7px}.noctuary .entry .who{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint)}.noctuary .entry.downtime{border-left-color:var(--blood)}.noctuary .entry.downtime .glyph{color:var(--blood-bright)}.noctuary .entry.gazette{border-left-color:var(--gold-deep)}.noctuary .entry.gazette .glyph{color:var(--gold)}.noctuary .entry.note{border-left-color:var(--rule-strong);background:transparent;border-style:dashed}.noctuary .entry.note .e-body{color:var(--ink-dim);font-style:italic}.noctuary .entry.scene{border-left-color:var(--blood-bright);background:linear-gradient(90deg,rgba(139,26,26,.1),var(--bg-card) 60%)}.noctuary .entry.scene .glyph{color:var(--blood-bright)}.noctuary .pill{display:inline-block;font-family:ui-monospace,Menlo,monospace;font-size:10.5px;letter-spacing:.04em;color:var(--ink-dim);background:#c9a84c0f;border:1px solid var(--gold-deep);padding:2px 7px}.noctuary .pill.blood{color:#d98a82;background:#8b1a1a1a;border-color:#7a2020}.moon{display:inline-block;width:14px;height:14px;border-radius:50%;background:var(--moon-lit);position:relative;flex-shrink:0;box-shadow:0 0 7px #dcc79c73}.moon.new{background:var(--moon-dark);box-shadow:inset 0 0 0 1px var(--rule-strong)}.moon.waxing-crescent{background:var(--moon-dark);box-shadow:inset -7px 0 0 -2px var(--moon-lit)}.moon.first-quarter{background:linear-gradient(90deg,var(--moon-dark) 50%,var(--moon-lit) 50%)}.moon.waxing-gibbous{box-shadow:inset 8px 0 0 -3px var(--moon-dark),0 0 7px #dcc79c66}.moon.full{box-shadow:0 0 16px #dcc79c99}.moon.waning-gibbous{box-shadow:inset -8px 0 0 -3px var(--moon-dark),0 0 7px #dcc79c66}.moon.last-quarter{background:linear-gradient(90deg,var(--moon-lit) 50%,var(--moon-dark) 50%)}.moon.waning-crescent{background:var(--moon-dark);box-shadow:inset 7px 0 0 -2px var(--moon-lit)}.moon-float{position:fixed;top:26px;right:30px;z-index:60;display:flex;flex-direction:column;align-items:center;gap:7px;width:194px;background:linear-gradient(180deg,#171310f0,#0f0c09f0);border:1px solid var(--rule);padding:18px 16px 15px;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.moon-float:before{content:"";position:absolute;top:6px;left:6px;width:18px;height:18px;border:1px solid var(--gold-deep);border-right:none;border-bottom:none;opacity:.5}.moon-float:after{content:"";position:absolute;bottom:6px;right:6px;width:18px;height:18px;border:1px solid var(--gold-deep);border-left:none;border-top:none;opacity:.5}.moon-float .big{width:58px;height:58px;animation:moonglow 6s ease-in-out infinite}@keyframes moonglow{0%,to{filter:drop-shadow(0 0 6px rgba(220,199,156,.3))}50%{filter:drop-shadow(0 0 13px rgba(220,199,156,.55))}}.moon-float .mf-phase{font-family:IM Fell English,Georgia,serif;font-size:16px;letter-spacing:.08em;color:var(--ink);text-align:center;margin-top:2px}.moon-float .mf-night{font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-deep)}.moon-float .mf-tagline{font-style:italic;font-size:12.5px;color:var(--ink-dim);text-align:center;line-height:1.45;border-top:1px solid var(--rule);padding-top:9px;margin-top:3px;width:100%}.moon-float .mf-effect{width:100%;display:flex;flex-direction:column;gap:2px;background:var(--bg-card);border:1px solid var(--rule);border-left:2px solid var(--blood);padding:7px 9px}.moon-float .mf-effect-label{font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-faint)}.moon-float .mf-effect-text{font-size:12.5px;color:var(--ink-dim)}.moon-float .mf-potency{width:100%;margin-top:2px}.moon-float .mf-potency .lab{font-size:9.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-faint);display:flex;justify-content:space-between}.moon-float .mf-bar{height:5px;background:var(--bg-card);border:1px solid var(--rule);margin-top:4px;position:relative;overflow:hidden}.moon-float .mf-bar i{position:absolute;left:0;top:0;bottom:0;background:linear-gradient(90deg,var(--blood),var(--blood-bright))}
