@font-face{font-family:FishDex Field;src:url(/fonts/dotgothic16.woff) format("woff");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:"Press Start 2P";src:url(/fonts/press-start-2p-latin.woff2) format("woff2");font-weight:400;font-display:swap}:root{--color-ink: #17251f;--color-shell: #d6c98e;--color-shell-light: #f4e9b7;--color-shell-dark: #776c43;--color-screen: #c7dfb1;--color-screen-light: #e8f4cb;--color-screen-mid: #87a878;--color-screen-dark: #315447;--color-ocean: #277a89;--color-alert: #b8403a;--color-discovery: #d48b26;--color-focus: #fff36b;--font-display: "Courier New", "FishDex Field", monospace;--font-body: Inter, "Noto Sans JP", system-ui, "FishDex Field", sans-serif;color-scheme:light;font-family:var(--font-body);color:var(--color-ink);background:var(--color-ink)}*{box-sizing:border-box}body{margin:0;min-width:320px;font-size:16px;line-height:1.5}h1,h2,h3,p{margin:0 0 16px}h1,h2,h3,.display{font-family:var(--font-display);font-weight:900;line-height:1.15}h1{font-size:clamp(26px,5vw,40px);letter-spacing:-1px;text-transform:uppercase}h2{font-size:24px}h3{font-size:18px}h1:focus{outline:none}a{color:inherit}button,input,select,textarea{font:inherit;color:inherit}button,.button{min-height:48px;display:inline-flex;justify-content:center;align-items:center;gap:8px;padding:10px 16px;background:var(--color-shell);border:2px solid var(--color-ink);box-shadow:inset 2px 2px var(--color-shell-light),2px 4px var(--color-ink);color:var(--color-ink);font:700 15px var(--font-display);text-decoration:none;cursor:pointer;text-align:center;overflow-wrap:anywhere;transition:transform .1s steps(2)}button:active,.button:active{transform:translateY(2px);box-shadow:inset 2px 2px var(--color-shell-light),1px 2px var(--color-ink)}button:hover,.button:hover{filter:brightness(1.07)}button:disabled{cursor:not-allowed;opacity:.65}.primary{background:var(--color-discovery);box-shadow:inset 2px 2px var(--color-shell-light),2px 4px var(--color-ink)}.secondary{background:var(--color-screen-dark);color:var(--color-screen-light);box-shadow:inset 2px 2px var(--color-screen-mid),2px 4px var(--color-ink)}.wide{width:100%}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}.actions>*{flex:1}.actions .text-link{flex:initial}.text-link{display:inline-flex;align-items:center;min-height:44px;font-weight:700;text-underline-offset:4px}.panel{border:2px solid var(--color-screen-dark);box-shadow:inset 2px 2px var(--color-screen-light),2px 3px var(--color-ink);background:var(--color-screen);padding:16px;margin-bottom:16px}.panel-title{background:var(--color-screen-dark);color:var(--color-screen-light);font:700 15px var(--font-display);padding:8px 12px;margin:-16px -16px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:2px solid var(--color-screen-dark);padding-bottom:16px;margin-bottom:20px}.page-heading h1{margin:0}.eyebrow{font:700 12px var(--font-display);letter-spacing:1px;text-transform:uppercase}.muted{font-size:14px}.badge{display:inline-block;padding:4px 8px;border:1px solid var(--color-screen-dark);font:700 12px var(--font-display)}.badge.success{background:var(--color-screen-dark);color:var(--color-screen-light)}.badge.warn{background:var(--color-shell-light)}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.split{display:grid;grid-template-columns:1fr 1fr;gap:20px}.stack{display:grid;gap:16px}.toolbar{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:20px;align-items:end}.toolbar>label{flex:1;min-width:130px}.toolbar input{width:100%}label{display:grid;gap:8px;font-size:14px;font-weight:700}input:not([type=checkbox]):not([type=radio]):not([type=file]),select,textarea{width:100%;min-width:0;min-height:48px;border:2px solid var(--color-screen-dark);border-radius:0;background:var(--color-screen-light);padding:10px 12px;box-shadow:inset 2px 2px var(--color-screen-mid)}input[type=checkbox],input[type=radio]{width:22px;height:22px;accent-color:var(--color-screen-dark);flex-shrink:0}input[type=file]{max-width:100%}textarea{min-height:110px;resize:vertical}.check{display:flex;align-items:center;min-height:44px;gap:12px;font-size:16px}.tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}.tabs>*{flex:1}.tabs button[aria-pressed=true],.tabs a.active{background:var(--color-screen-dark);color:var(--color-screen-light);border-color:var(--color-discovery);box-shadow:inset 0 0 0 1px var(--color-discovery),2px 4px var(--color-ink)}.message{display:flex;gap:12px;align-items:center;padding:16px;border:2px solid var(--color-screen-dark);background:var(--color-shell-light);margin:16px 0;font-size:14px;flex-wrap:wrap}.message.error{border-color:var(--color-alert);border-left-width:8px}.message span{flex:1;min-width:160px}.empty{text-align:center;padding:40px 16px}.empty fd-icon{width:56px!important;height:56px!important;margin-bottom:20px}.meter{height:20px;border:2px solid var(--color-ink);background:var(--color-screen-mid);position:relative;overflow:hidden}.meter>span{display:block;height:100%;background:var(--color-discovery)}.meter:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0,transparent calc(10% - 2px),var(--color-screen-dark) calc(10% - 2px),var(--color-screen-dark) 10%)}.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:20px 0}.stat{border:2px solid var(--color-screen-dark);padding:12px 4px;text-align:center}.stat strong{display:block;font:900 28px var(--font-display)}.stat span{font-size:12px}.coast-strip{height:128px;background:url(/art/coast.webp) center/cover;image-rendering:pixelated;border:2px solid var(--color-ink)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.skip-link{position:fixed;top:-80px;left:16px;z-index:100;background:var(--color-focus);padding:16px}.skip-link:focus{top:8px}:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px;box-shadow:0 0 0 6px var(--color-ink)}.row-link{display:flex;align-items:center;gap:16px;padding:12px;border:2px solid var(--color-screen-dark);text-decoration:none;margin-bottom:12px;box-shadow:2px 3px var(--color-ink)}.row-link fd-fish{width:96px;flex-shrink:0}.row-link .row-content{flex:1;min-width:0}.row-link h3{margin:0 0 8px}.row-link small{display:block}.provenance{border-top:2px solid var(--color-screen-mid);margin-top:20px;padding-top:12px;font-size:12px;overflow-wrap:anywhere}.flow-rail{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:0;list-style:none;gap:4px;margin:0 0 20px}.flow-rail li{padding:8px 4px;border:2px solid var(--color-screen-dark);font:700 12px var(--font-display);text-align:center;overflow-wrap:anywhere}.flow-rail .active{background:var(--color-screen-dark);color:var(--color-screen-light);border-color:var(--color-discovery)}@media(max-width:600px){.split{grid-template-columns:1fr}.page-heading{gap:8px;flex-wrap:wrap}.panel{padding:12px}.panel-title{margin:-12px -12px 12px}.toolbar,.row-link{gap:8px}.row-link fd-fish{width:64px}.row-link h3{font-size:16px}.stats .stat strong{font-size:24px}.tabs button,.tabs .button{padding:8px;font-size:13px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.reduce-motion *{animation:none!important;transition:none!important;scroll-behavior:auto!important}@media(prefers-contrast:more){:root{--color-screen-mid: #c7dfb1;--color-screen-dark: #17251f}}h1{font-family:"Press Start 2P",var(--font-display);font-size:clamp(20px,3.5vw,30px);line-height:1.4;font-weight:400;overflow-wrap:anywhere}summary:focus-visible{outline:3px solid var(--color-focus)}h1:focus-visible{outline:none;box-shadow:none}:lang(ja){font-family:"FishDex Field",var(--font-body)}
