#root{min-height:100vh}.appShell{position:relative;min-height:100vh;overflow:hidden;padding:58px 20px 42px;background:radial-gradient(circle at 12% 16%,rgba(255,255,255,.9) 0 2px,transparent 3px),radial-gradient(circle at 82% 26%,rgba(255,255,255,.68) 0 3px,transparent 4px),linear-gradient(135deg,rgba(255,231,97,.18) 0 18%,transparent 34%),linear-gradient(210deg,rgba(255,126,179,.16) 0 16%,transparent 35%),linear-gradient(180deg,#bff5ff,#eafff8 48%,#d4f4ff)}.appShell:before,.appShell:after{position:absolute;z-index:0;border-radius:999px;content:"";pointer-events:none}.appShell:before{top:72px;left:max(18px,calc(50% - 520px));width:112px;height:112px;border:2px solid rgba(35,181,206,.2);box-shadow:42px 132px 0 -34px #ffffffd1,740px 22px 0 -28px #ffffffb3,690px 250px 0 -38px #00bed22e,530px 104px 0 -42px #ff7eb352}.appShell:after{right:max(24px,calc(50% - 560px));bottom:72px;width:180px;height:180px;border:2px solid rgba(36,199,184,.16);box-shadow:-760px -48px 0 -70px #ffe7615c,-620px 92px 0 -78px #ffffffc7}.waterLight{position:absolute;z-index:0;width:360px;height:720px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);filter:blur(1px);pointer-events:none;transform:rotate(18deg)}.waterLightOne{top:-120px;left:5%}.waterLightTwo{top:-160px;right:6%;opacity:.7}.heroSection,.resultSection,.historySection{position:relative;z-index:1;width:min(100%,920px);margin:0 auto}.heroSection{padding:32px 0 24px;text-align:center}.eyebrow{display:inline-flex;min-height:30px;align-items:center;margin:0 0 14px;padding:0 14px;border:1px solid rgba(0,177,202,.18);border-radius:999px;background:#ffffff8f;color:#19758a;font-size:.78rem;font-weight:700;letter-spacing:0;box-shadow:0 8px 24px #009db81a}h1,h2,p{margin-top:0}h1{margin-bottom:14px;color:#0c3b4a;font-size:clamp(2.5rem,8vw,5rem);line-height:1;text-shadow:0 2px 0 rgba(255,255,255,.88),0 14px 32px rgba(0,151,181,.18)}.lead{width:min(100%,560px);margin:0 auto 28px;color:#45616a;line-height:1.8}.moodForm{width:min(100%,720px);margin:0 auto;padding:16px;border:1px solid rgba(0,177,202,.22);border-radius:24px;background:linear-gradient(135deg,#ffffffe6,#eafffac2),#ffffffb8;box-shadow:0 24px 64px #0095b226,inset 0 1px #ffffffc7;text-align:left;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.moodForm label{display:block;margin:0 0 8px 4px;color:#196174;font-size:.9rem;font-weight:700}.inputRow{display:grid;grid-template-columns:1fr auto;gap:10px}.inputRow input{width:100%;min-height:54px;padding:0 18px;border:1px solid rgba(0,166,196,.22);border-radius:18px;outline:none;background:#f8fdffeb;color:#17313d;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease}.inputRow input:focus{border-color:#00aeca;background:#fff;box-shadow:0 0 0 4px #00c2d12b,0 10px 24px #0095b21a}.inputRow button,.ghostButton,.deleteButton{border:0;border-radius:16px;font-weight:700;transition:transform .16s ease,box-shadow .16s ease,background .16s ease}.inputRow button{min-height:54px;padding:0 24px;background:linear-gradient(135deg,#00aeca,#1cc7b8 64%,#ff7eb3);color:#fff;box-shadow:0 14px 30px #0097b547}.inputRow button:hover,.ghostButton:hover,.deleteButton:hover{transform:translateY(-1px)}.inputRow button:hover{background:linear-gradient(135deg,#008fb0,#00bda8 62%,#f25f9d);box-shadow:0 16px 34px #0097b557}.hint{margin:10px 4px 0;color:#607982;font-size:.85rem;line-height:1.6}.resultSection{margin-top:18px}.resultCard{position:relative;display:grid;grid-template-columns:minmax(220px,.78fr) 1fr;gap:28px;align-items:center;min-height:300px;padding:28px;overflow:hidden;border:1px solid rgba(0,177,202,.2);border-radius:30px;background:linear-gradient(145deg,#fffffff0,#edfffbe0),#fff;box-shadow:0 26px 76px #0089a62e,inset 0 1px #fffc}.resultCard:before{position:absolute;inset:0 0 auto;height:8px;background:linear-gradient(90deg,#00c2d1,#44d7b6,#ffe66d,#ff7eb3);content:""}.fishStage{position:relative;display:grid;min-height:220px;place-items:center;overflow:hidden;border:1px solid rgba(0,177,202,.16);border-radius:24px;background:radial-gradient(circle at 26% 24%,rgba(255,255,255,.92) 0 5px,transparent 6px),radial-gradient(circle at 75% 72%,rgba(255,255,255,.72) 0 8px,transparent 9px),linear-gradient(160deg,#a9f2ff,#e8fff5 62%,#fff6bf);box-shadow:inset 0 1px #ffffffb3}.fishStage:before{position:absolute;top:22px;right:22px;bottom:22px;left:22px;border:1px solid rgba(0,142,170,.16);border-radius:999px;content:""}.fishIllustration{position:relative;width:min(84%,260px);filter:drop-shadow(0 16px 18px rgba(0,119,145,.2))}.fishEye{fill:#19303b}.fishGill{fill:none;opacity:.48;stroke-linecap:round;stroke-width:5}.fishMark,.fishSpike,.fishAntenna,.fishTentacle,.fishTailCurl,.fishSmileTail{fill:none;stroke-linecap:round;stroke-linejoin:round}.fishMark{opacity:.42;stroke-width:4}.fishMark.faint{opacity:.28;stroke-width:3}.fishSpike{opacity:.42;stroke-width:3}.fishAntenna,.fishTailCurl,.fishSmileTail{stroke-width:5}.fishTentacle{opacity:.78;stroke-width:5}.fishDot{opacity:.64}.resultMood{margin-bottom:10px;color:#0084a0;font-size:.9rem;font-weight:800}.resultContent h2,.historySection h2{margin-bottom:14px;color:#133442;line-height:1.16}.resultContent h2{font-size:clamp(1.9rem,4vw,3rem)}.description{margin-bottom:22px;color:#415d67;font-size:1.06rem;line-height:1.85}.habitatList{margin:0}.habitatList div{display:inline-grid;gap:6px;min-width:220px;padding:14px 16px;border:1px solid rgba(0,177,202,.17);border-radius:18px;background:linear-gradient(135deg,#f4fcfe,#fff9d6)}.habitatList dt{color:#5a7a84;font-size:.78rem;font-weight:800}.habitatList dd{margin:0;color:#17313d;font-weight:800}.sharePanel{margin-top:20px}.shareTitle{margin-bottom:10px;color:#5a7a84;font-size:.78rem;font-weight:800}.shareTextBox{width:100%;min-height:132px;margin-bottom:12px;padding:12px 14px;border:1px solid rgba(0,177,202,.18);border-radius:16px;outline:none;resize:vertical;background:#f8fdffeb;color:#254651;font-size:.9rem;line-height:1.6}.shareTextBox:focus{border-color:#00aeca;box-shadow:0 0 0 4px #00c2d129}.shareActions{display:flex;flex-wrap:wrap;gap:8px}.shareActions button,.shareActions a{display:inline-flex;min-height:40px;align-items:center;justify-content:center;padding:0 14px;border:1px solid rgba(0,177,202,.2);border-radius:999px;background:#e9fbfc;color:#176577;font-weight:800;text-decoration:none;transition:transform .16s ease,background .16s ease}.shareActions button{border-color:#00b1ca33}.shareActions button:hover,.shareActions a:hover{background:#d8f7f8;transform:translateY(-1px)}.shareStatus{margin:10px 0 0;color:#607982;font-size:.86rem;line-height:1.6}.emptyResult{display:grid;min-height:220px;place-items:center;padding:28px;border:1px dashed rgba(0,166,196,.34);border-radius:30px;background:#fff9;color:#5d7b84;text-align:center}.emptyResult span{display:block;width:70px;height:38px;margin-bottom:18px;border-radius:50% 48% 48% 50%;background:linear-gradient(135deg,#88e3f1,#44d7b6);clip-path:polygon(0 50%,22% 12%,84% 12%,100% 50%,84% 88%,22% 88%)}.historySection{margin-top:28px;padding-bottom:10px}.historyHeader{display:flex;gap:16px;align-items:end;justify-content:space-between;margin-bottom:14px}.historyHeader h2{margin-bottom:0;font-size:1.35rem}.ghostButton{padding:10px 14px;border:1px solid rgba(0,177,202,.2);background:#ffffffc7;color:#176577}.historyList{display:grid;gap:10px;margin:0;padding:0;list-style:none}.historyItem{display:grid;grid-template-columns:1fr auto;gap:14px;align-items:center;padding:14px 14px 14px 16px;border:1px solid rgba(0,177,202,.16);border-radius:20px;background:#ffffffb8;box-shadow:0 10px 28px #0089a614}.historyFish{margin-bottom:5px;color:#163542;font-weight:800}.historyMeta,.emptyHistory{margin:0;color:#617c85;font-size:.9rem}.deleteButton{padding:9px 12px;background:#e9fbfc;color:#176577}.deleteButton:hover{background:#d8f7f8}.siteCredit{position:relative;z-index:1;width:min(100%,920px);margin:26px auto 0;color:#2d7182;font-size:.86rem;font-weight:700;text-align:center}.siteCredit p{display:inline-flex;min-height:34px;align-items:center;padding:0 16px;border:1px solid rgba(0,177,202,.17);border-radius:999px;background:#ffffff80;margin:0}@media (max-width: 720px){.appShell{padding:28px 14px 32px}.heroSection{padding-top:20px}.moodForm{border-radius:20px}.inputRow,.resultCard,.historyItem{grid-template-columns:1fr}.inputRow button{width:100%}.resultCard{gap:20px;padding:18px;border-radius:22px}.fishStage{min-height:180px}.historyHeader{align-items:stretch;flex-direction:column}.ghostButton,.deleteButton,.shareActions button,.shareActions a{width:100%}}:root{color:#19303b;background:#dff6fb;font-family:Inter,Segoe UI,Hiragino Kaku Gothic ProN,Yu Gothic,Meiryo,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input{font:inherit}button{cursor:pointer}
