:root{--color-bg:#0d1524;--color-bg-alt:#131f34;--color-panel:#16213a;--color-panel-alt:#1c2c4a;--color-gold:#c9a24b;--color-gold-light:#e3c073;--color-gold-dim:rgba(201,162,75,.4);--color-gold-faint:rgba(201,162,75,.16);--color-button-text:#f4f7ff;--color-accent:#3d5fa0;--color-accent-light:#6483c4;--color-heading:#ecd6a0;--color-text:#e8ecf6;--color-text-muted:#aeb8ce;--color-text-faint:#7c8aa5;--color-good:#34c78e;--color-good-bg:rgba(52,199,142,.16);--color-bad:#ef5754;--color-bad-bg:rgba(239,87,84,.18);--color-caution:#f0b429;--color-caution-bg:rgba(240,180,41,.16);--font-serif:"Shippori Mincho","Noto Serif JP","Hiragino Mincho ProN",serif;--font-display:"Cormorant Garamond","Shippori Mincho",serif;--font-sans:"Noto Sans JP","Hiragino Sans",sans-serif}*{box-sizing:border-box}body,html{background:var(--color-bg);color:var(--color-text)}body{margin:0;font-family:var(--font-sans);background:radial-gradient(ellipse 70% 50% at 15% 0,rgba(61,95,160,.28),transparent),radial-gradient(ellipse 70% 60% at 100% 10%,rgba(201,162,75,.14),transparent),radial-gradient(ellipse 60% 50% at 0 100%,rgba(52,199,142,.09),transparent),url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220' viewBox='0 0 220 220'%3E%3Cg fill='none' stroke='%23c9a24b' opacity='.16'%3E%3Ccircle cx='110' cy='110' r='50'/%3E%3Ccircle cx='110' cy='110' r='4'/%3E%3Cpath d='m110 48 4 56-4 6-4-6ZM110 172l4-56-4-6-4 6ZM48 110l56-4 6 4-6 4ZM172 110l-56-4-6 4 6 4ZM110 34v12M110 174v12M34 110h12M174 110h12'/%3E%3C/g%3E%3Cg fill='%23fff' opacity='.4'%3E%3Ccircle cx='32' cy='28' r='1.1'/%3E%3Ccircle cx='188' cy='40' r='.9'/%3E%3Ccircle cx='165' cy='178' r='1'/%3E%3Ccircle cx='22' cy='165' r='.8'/%3E%3Ccircle cx='64' cy='195' r='1'/%3E%3Ccircle cx='196' cy='150' r='.8'/%3E%3C/g%3E%3C/svg%3E"),var(--color-bg);background-size:auto,auto,auto,220px 220px,auto;min-height:100vh}.compass-card{position:relative;background:var(--color-panel);border:1px solid var(--color-gold-dim);border-radius:6px;box-shadow:0 12px 32px #03071273,inset 0 1px #ffffff0a}.compass-card:before{content:"";position:absolute;inset:6px;border:1px solid var(--color-gold-faint);border-radius:3px;pointer-events:none}.compass-card:after{content:"✦";position:absolute;top:-.7em;left:50%;transform:translate(-50%);background:var(--color-bg);color:var(--color-gold);font-size:1rem;padding:0 .6em;line-height:1}
