:root{--bg:#f4f7fb;--surface:#ffffff;--ink:#1b2430;--muted:#5b6775;--line:#d7e0ea;--accent:#00a1eb;--accent-deep:#0077b3;--shadow:0 18px 40px rgba(27,54,80,0.08);--radius:18px;--font:"Hiragino Sans","Noto Sans JP","Segoe UI",sans-serif}*{box-sizing:border-box}body,html{margin:0;padding:0;min-height:100%;background:radial-gradient(circle at top left,rgba(0,161,235,.16),transparent 40%),linear-gradient(180deg,#eef5fb 0,var(--bg) 45%,#e8eef5 100%);color:var(--ink);font-family:var(--font)}body.maintenanceActive{overflow:hidden}a{color:var(--accent-deep);text-decoration:none}a:hover{text-decoration:underline}.pageMain,.siteFooter,.siteHeader{width:min(920px,calc(100% - 32px));margin-left:auto;margin-right:auto}.siteHeader{display:flex;align-items:center;justify-content:space-between;padding:20px 0 8px}.brand img{display:block;height:36px;width:auto}.siteNav{display:flex;align-items:center;gap:16px;font-size:14px}.navButton{border:0;padding:0;background:none;color:var(--accent-deep);font:inherit;cursor:pointer}.navButton:hover{text-decoration:underline}.siteFooter{display:flex;justify-content:space-between;gap:16px;padding:32px 0 48px;color:var(--muted);font-size:13px}.siteFooter nav{display:flex;flex-wrap:wrap;gap:12px}.pageMain{padding:12px 0 24px}.hero{display:grid;grid-gap:18px;gap:18px;margin-bottom:28px}.heroCopy h1{margin:0 0 8px;font-size:clamp(2rem,4vw,3rem);letter-spacing:.02em}.heroCopy p{margin:0;color:var(--muted);line-height:1.7}.searchBox{position:relative}.searchBox input{width:100%;border:1px solid var(--line);border-radius:999px;padding:14px 18px;font-size:16px}.searchBox input,.suggestList{background:var(--surface);box-shadow:var(--shadow)}.suggestList{position:absolute;z-index:10;top:calc(100% + 8px);left:0;right:0;margin:0;padding:8px 0;list-style:none;border:1px solid var(--line);border-radius:14px;overflow:hidden}.suggestList a{display:flex;justify-content:space-between;gap:12px;padding:10px 16px;color:var(--ink);text-decoration:none}.suggestList a:hover{background:#f3f8fc}.suggestMeta{color:var(--muted);font-size:13px}.section{margin:28px 0}.section h2{margin:0 0 14px;font-size:1.15rem}.cardGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));grid-gap:16px;gap:16px}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.cardLink{display:block;color:inherit;text-decoration:none}.cardTop{display:flex;gap:14px;align-items:center;padding:18px 18px 8px}.cardTop h1,.cardTop h2{margin:0;font-size:1.25rem}.nickname,.position{margin:2px 0 0;color:var(--muted);font-size:13px}.avatar{width:56px;height:56px;border-radius:50%;object-fit:cover;background:#dbe7f2}.avatar.large{width:96px;height:96px}.avatar.placeholder{background:linear-gradient(135deg,#c9d9e8,#e8eef5)}.cardBody{padding:8px 18px 18px}.cardBody p{margin:0 0 8px;line-height:1.7;white-space:pre-wrap}.cardBody dl{margin:12px 0 0}.row{display:grid;grid-template-columns:110px 1fr;grid-gap:10px;gap:10px;padding:10px 0;border-top:1px solid var(--line)}.row dt{color:var(--muted);font-size:13px}.row dd{margin:0;white-space:pre-wrap;line-height:1.6}.aboutCard{padding:20px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.aboutCard h2{margin-top:0}.aboutItems{display:grid;grid-gap:12px;gap:12px}.aboutItem{display:grid;grid-template-columns:110px 1fr;grid-gap:10px;gap:10px;padding-top:10px;border-top:1px solid var(--line)}.actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 18px;border-radius:999px;background:var(--accent);color:#fff;font-weight:700;text-decoration:none}.button:hover{background:var(--accent-deep);text-decoration:none}.button.secondary{background:transparent;color:var(--accent-deep);border:1px solid var(--accent)}.profilePage{display:grid;grid-gap:16px;gap:16px}.shareBar{display:flex;align-items:center;gap:12px;padding:8px 4px}.counts{color:var(--muted);font-size:13px}.likeButton{display:inline-flex;align-items:center;gap:6px;border:0;padding:0;background:none;color:var(--ink);cursor:pointer}.likeButton img{opacity:.45}.likeButton.isLiked img,.likeButton:hover img{opacity:1}.likeButton:disabled{cursor:default}.pageTitle{margin:0 0 16px;font-size:1.4rem}.editor{display:grid;grid-gap:16px;gap:16px}.editorHero{display:grid;grid-template-columns:auto 1fr;grid-gap:18px;gap:18px;align-items:center;padding:18px}.imageToggle{justify-items:center}.editorFields,.imageToggle{display:grid;grid-gap:10px;gap:10px}.textArea,.textInput{width:100%;border:1px solid var(--line);border-radius:12px;padding:10px 12px;font:inherit;background:var(--surface)}.rowEditor{display:grid;grid-gap:10px;gap:10px}.rowEditorLine{display:grid;grid-template-columns:140px 1fr auto;grid-gap:8px;gap:8px;align-items:start}.rowEditorActions{display:grid;grid-gap:4px;gap:4px}.rowEditorActions button{min-width:36px;min-height:32px}.checkLabel,.fieldLabel{display:grid;grid-gap:8px;gap:8px;color:var(--muted);font-size:14px}.checkLabel{grid-template-columns:auto 1fr;align-items:center}.hint,.notice{color:var(--muted);font-size:13px;line-height:1.7}.formError{color:#b42318}.textButton{border:0;background:none;color:var(--accent-deep);font:inherit;cursor:pointer;padding:0 8px}.textButton.danger{color:#b42318}@media (max-width:640px){.editorHero,.rowEditorLine{grid-template-columns:1fr}}.tagList{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0}.tagList a{display:inline-block;padding:6px 12px;border-radius:999px;background:#e7f5fc;color:var(--accent-deep);text-decoration:none}.linkCards{display:grid;grid-gap:10px;gap:10px}.linkCard{display:grid;grid-template-columns:72px 1fr;grid-gap:12px;gap:12px;align-items:center;padding:12px;border-radius:14px;background:var(--surface);border:1px solid var(--line);color:inherit;text-decoration:none}.linkCard img{width:72px;height:72px;object-fit:cover;border-radius:10px;background:#edf2f7}.linkCard span,.linkCard strong{display:block}.linkCard span{margin-top:4px;color:var(--muted);font-size:12px;word-break:break-all}.tagGrid,.userList{display:grid;grid-gap:12px;gap:12px}.staticPage{padding:24px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.staticPage h1{margin-top:0}.empty{color:var(--muted)}.maintenanceOverlay{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:24px;background:rgba(27,36,48,.72);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);touch-action:none}.maintenanceOverlay__panel{max-width:520px;padding:32px 28px;background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);text-align:center}.maintenanceOverlay__message{margin:0;font-size:18px;line-height:1.75;font-weight:600;color:var(--ink)}@media (max-width:640px){.pageMain,.siteFooter,.siteHeader{width:calc(100% - 24px)}.aboutItem,.row{grid-template-columns:1fr}.siteFooter{flex-direction:column}.maintenanceOverlay__message{font-size:16px}}.loginPage{max-width:520px}.loginPage h1,.loginPage p{margin:0 0 12px}.loginPage p{line-height:1.7;color:var(--muted)}.loginNote{font-size:14px}.loginActions{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}.accountCard{margin-top:36px;padding:20px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.accountCard h2,.accountCard h3{margin:0 0 8px}.accountCardSection{margin-top:16px}.clerkSpinner{display:block;width:36px;height:36px;border:3px solid #ddd;border-top:3px solid var(--accent);border-radius:50%;animation:clerk-spin .8s linear infinite}@keyframes clerk-spin{to{transform:rotate(1turn)}}.clerkRedirectOverlay{position:fixed;inset:0;z-index:9999;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;background:rgba(255,255,255,.95)}.clerkRedirectOverlay p{margin:0;font-size:15px;font-weight:500}