:root{--bg: oklch(.985 .003 85);--bg-2: oklch(.975 .004 85);--bg-raised: oklch(.995 .002 85);--ink: oklch(.22 .01 60);--ink-2: oklch(.38 .008 60);--ink-3: oklch(.55 .006 60);--ink-4: oklch(.72 .005 60);--line: oklch(.9 .006 70);--line-2: oklch(.93 .005 70);--line-3: oklch(.96 .004 70);--accent: oklch(.58 .14 55);--accent-soft: oklch(.92 .04 65);--accent-ink: oklch(.35 .09 55);--dot-new: oklch(.68 .1 250);--dot-verifying: oklch(.72 .12 85);--dot-verified: oklch(.65 .1 150);--dot-candidate: oklch(.62 .14 55);--dot-hold: oklch(.7 .01 60);--radius: 4px;--radius-lg: 6px;--font-sans: "Inter", "Inter Tight", "Noto Sans JP", ui-sans-serif, system-ui, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--font-display: "Inter Tight", "Inter", "Noto Sans JP", sans-serif;--sidebar-w: 236px}*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--font-sans);background:var(--bg);color:var(--ink);font-size:14px;line-height:1.55;font-feature-settings:"ss01","cv11";-webkit-font-smoothing:antialiased;letter-spacing:-.005em}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer}input,textarea,select{font-family:inherit}.mono{font-family:var(--font-mono);font-feature-settings:normal;letter-spacing:0}.app{display:grid;grid-template-columns:var(--sidebar-w) 1fr;min-height:100vh}.sidebar{border-right:1px solid var(--line);background:var(--bg-2);display:flex;flex-direction:column;position:sticky;top:0;height:100vh;overflow-y:auto}.sidebar-brand{padding:18px 20px 14px;border-bottom:1px solid var(--line-2)}.brand-mark{display:flex;align-items:center;gap:10px}.brand-logo{width:22px;height:22px;border:1.5px solid var(--ink);border-radius:3px;position:relative;display:grid;place-items:center;background:var(--bg-raised)}.brand-logo:before{content:"";position:absolute;inset:4px;border-left:1.5px solid var(--ink);border-top:1.5px solid var(--ink)}.brand-logo:after{content:"";position:absolute;right:4px;bottom:4px;width:6px;height:6px;background:var(--accent);border-radius:50%}.brand-name{font-family:var(--font-display);font-size:14px;font-weight:600;letter-spacing:-.01em}.brand-sub{font-family:var(--font-mono);font-size:10px;color:var(--ink-3);margin-top:3px;letter-spacing:.04em;text-transform:uppercase}.sidebar-search{padding:12px 16px;border-bottom:1px solid var(--line-2)}.search-input{display:flex;align-items:center;gap:8px;background:var(--bg-raised);border:1px solid var(--line);border-radius:var(--radius);padding:7px 10px}.search-input:focus-within{border-color:var(--ink-4)}.search-input input{border:none;background:transparent;outline:none;width:100%;font-size:13px;color:var(--ink)}.search-input input::placeholder{color:var(--ink-4)}.search-kbd{font-family:var(--font-mono);font-size:10px;color:var(--ink-4);padding:1px 5px;border:1px solid var(--line);border-radius:3px;background:var(--bg)}.nav-section{padding:14px 12px 10px}.nav-section-title{font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-4);padding:0 8px 8px}.nav-item{display:flex;align-items:center;gap:10px;padding:6px 10px;border-radius:var(--radius);font-size:13px;color:var(--ink-2);cursor:pointer;margin-bottom:1px;position:relative}.nav-item:hover{background:var(--line-3);color:var(--ink)}.nav-item.active{background:var(--bg-raised);color:var(--ink);font-weight:500;box-shadow:0 0 0 1px var(--line) inset}.nav-item.active:before{content:"";position:absolute;left:-12px;top:6px;bottom:6px;width:2px;background:var(--accent);border-radius:0 2px 2px 0}.nav-icon{width:14px;height:14px;flex-shrink:0;color:var(--ink-3)}.nav-item.active .nav-icon{color:var(--ink)}.nav-count{margin-left:auto;font-family:var(--font-mono);font-size:10px;color:var(--ink-4)}.sidebar-foot{margin-top:auto;padding:12px 16px;border-top:1px solid var(--line-2);display:flex;align-items:center;gap:10px}.avatar{width:28px;height:28px;border-radius:50%;background:var(--accent-soft);color:var(--accent-ink);display:grid;place-items:center;font-size:11px;font-weight:600;flex-shrink:0;border:1px solid var(--line)}.avatar.sm{width:22px;height:22px;font-size:10px}.avatar.lg{width:36px;height:36px;font-size:13px}.user-meta{flex:1;min-width:0}.user-meta .u-name{font-size:12px;font-weight:500;color:var(--ink)}.user-meta .u-role{font-size:10px;color:var(--ink-3);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.04em}.topbar{height:52px;display:flex;align-items:center;padding:0 28px;border-bottom:1px solid var(--line);background:var(--bg);gap:16px;position:sticky;top:0;z-index:5;backdrop-filter:blur(8px)}.breadcrumbs{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--ink-3)}.breadcrumbs .crumb-sep{color:var(--ink-4)}.breadcrumbs .crumb-current{color:var(--ink);font-weight:500}.topbar-actions{display:flex;align-items:center;gap:8px}.btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;font-size:13px;border-radius:var(--radius);border:1px solid var(--line);background:var(--bg-raised);color:var(--ink);transition:border-color .12s,background .12s}.btn:hover{border-color:var(--ink-4)}.btn.primary{background:var(--ink);color:var(--bg);border-color:var(--ink)}.btn.primary:hover{background:var(--ink-2);border-color:var(--ink-2)}.btn.ghost{background:transparent;border-color:transparent;color:var(--ink-2)}.btn.ghost:hover{background:var(--line-3);color:var(--ink)}.btn.sm{padding:4px 9px;font-size:12px}.btn.xs{padding:2px 7px;font-size:11px}.btn .btn-ico{width:14px;height:14px}.page{padding:28px 28px 60px;max-width:1280px}.page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding-bottom:18px;margin-bottom:22px;border-bottom:1px solid var(--line)}.page-title{font-family:var(--font-display);font-size:24px;font-weight:600;letter-spacing:-.02em;margin:0 0 4px}.page-eyebrow{font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;color:var(--ink-3);text-transform:uppercase;margin-bottom:6px}.page-sub{color:var(--ink-3);font-size:13px;max-width:640px}.page-header-actions{display:flex;align-items:center;gap:8px}.section-title{font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;color:var(--ink-3);text-transform:uppercase;margin:0 0 14px;display:flex;align-items:center;gap:10px}.section-title:after{content:"";flex:1;height:1px;background:var(--line)}.section-title .section-count{color:var(--ink-4)}.section-title a.section-more{font-family:var(--font-mono);font-size:10px;color:var(--ink-3);border:1px solid var(--line);padding:1px 7px;border-radius:10px}.section-title a.section-more:hover{color:var(--ink);border-color:var(--ink-4)}.tag{display:inline-flex;align-items:center;gap:5px;font-size:11px;padding:2px 8px;border:1px solid var(--line);background:var(--bg-raised);color:var(--ink-2);border-radius:10px;font-family:var(--font-mono);letter-spacing:.01em}.tag:hover{border-color:var(--ink-4)}.tag-dot{width:5px;height:5px;border-radius:50%;background:var(--ink-4)}.tag[data-type=技術] .tag-dot{background:#679dd4}.tag[data-type=ツール] .tag-dot{background:#60a06e}.tag[data-type=開発] .tag-dot{background:#b75f0b}.tag[data-type=用途] .tag-dot{background:#c79e41}.tag[data-type=セキュリティ] .tag-dot{background:#ac5154}.badge{display:inline-flex;align-items:center;gap:5px;font-size:11px;padding:1px 8px;border:1px solid var(--line);border-radius:3px;color:var(--ink-2);background:var(--bg-raised);font-family:var(--font-mono);letter-spacing:.02em}.badge-dot{width:6px;height:6px;border-radius:50%;background:var(--ink-4)}.badge[data-status=未確認] .badge-dot,.badge[data-status=未回答] .badge-dot,.badge[data-status=試作] .badge-dot{background:var(--dot-new)}.badge[data-status=確認中] .badge-dot,.badge[data-status=検証中] .badge-dot,.badge[data-status=改善中] .badge-dot{background:var(--dot-verifying)}.badge[data-status=検証済み] .badge-dot,.badge[data-status=回答あり] .badge-dot,.badge[data-status=利用中] .badge-dot{background:var(--dot-verified)}.badge[data-status=採用候補] .badge-dot{background:var(--dot-candidate)}.badge[data-status=保留] .badge-dot,.badge[data-status=停止中] .badge-dot{background:var(--dot-hold)}.importance{display:inline-flex;align-items:center;gap:2px;font-family:var(--font-mono);font-size:10px;color:var(--ink-3);letter-spacing:.04em}.importance-bars{display:inline-flex;gap:2px;margin-right:4px}.importance-bar{width:3px;height:9px;background:var(--line);border-radius:1px}.importance[data-level=高] .importance-bar:nth-child(-n+3){background:var(--accent)}.importance[data-level=中] .importance-bar:nth-child(-n+2){background:var(--ink-3)}.importance[data-level=低] .importance-bar:nth-child(-n+1){background:var(--ink-4)}.row-list{border-top:1px solid var(--line)}.row{display:grid;gap:16px;padding:14px 4px;border-bottom:1px solid var(--line-2);cursor:pointer;transition:background .12s}.row:hover{background:var(--bg-2)}.row .row-title{font-size:14px;font-weight:500;color:var(--ink);letter-spacing:-.005em}.row .row-meta{display:flex;align-items:center;gap:10px;color:var(--ink-3);font-size:11px;font-family:var(--font-mono)}.row .row-meta .dot-sep{color:var(--line)}.card{background:var(--bg-raised);border:1px solid var(--line);border-radius:var(--radius-lg);padding:18px}.card.flat{background:transparent}.home-hero{display:grid;grid-template-columns:1.3fr 1fr;gap:28px;padding:4px 0 28px;border-bottom:1px solid var(--line);margin-bottom:28px}.hero-title{font-family:var(--font-display);font-size:32px;font-weight:600;line-height:1.15;letter-spacing:-.025em;margin:10px 0;max-width:540px}.hero-title .accent{color:var(--accent)}.hero-sub{color:var(--ink-2);font-size:14px;max-width:520px;line-height:1.65}.hero-eyebrow{font-family:var(--font-mono);font-size:11px;color:var(--ink-3);letter-spacing:.15em;text-transform:uppercase}.hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:18px;max-width:520px}.hero-action{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--line);background:var(--bg-raised);border-radius:var(--radius);transition:border-color .12s,background .12s;text-align:left}.hero-action:hover{border-color:var(--ink);background:var(--bg-raised)}.hero-action .ha-ico{width:30px;height:30px;border:1px solid var(--line);border-radius:3px;display:grid;place-items:center;color:var(--ink-2);flex-shrink:0}.hero-action .ha-label{font-size:13px;font-weight:500;color:var(--ink)}.hero-action .ha-sub{font-size:11px;color:var(--ink-3);font-family:var(--font-mono)}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;background:var(--bg-raised)}.metric{padding:14px 16px;border-right:1px solid var(--line-2)}.metric:last-child{border-right:none}.metric-label{font-family:var(--font-mono);font-size:10px;color:var(--ink-3);letter-spacing:.08em;text-transform:uppercase}.metric-value{font-family:var(--font-display);font-size:22px;font-weight:600;margin-top:2px;letter-spacing:-.02em}.metric-delta{font-family:var(--font-mono);font-size:10px;color:var(--ink-3);margin-top:2px}.metric-delta.up{color:#33854a}.home-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:32px}.link-row{display:grid;grid-template-columns:44px 1fr auto;gap:16px;padding:16px 6px;border-bottom:1px solid var(--line-2);cursor:pointer;transition:background .12s}.link-row:hover{background:var(--bg-2)}.link-thumb{width:44px;height:44px;border-radius:var(--radius);border:1px solid var(--line);background:var(--bg-2);display:grid;place-items:center;color:var(--ink-2);font-family:var(--font-mono);font-size:10px;text-transform:uppercase;flex-shrink:0;position:relative;overflow:hidden}.link-thumb:before{content:"";position:absolute;inset:0;background-image:repeating-linear-gradient(135deg,transparent 0 5px,currentColor 5px 6px);opacity:.05}.link-thumb .st-label{position:relative}.link-body{min-width:0}.link-title{font-size:14px;font-weight:500;color:var(--ink);letter-spacing:-.005em;margin-bottom:4px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.link-domain{font-family:var(--font-mono);font-size:11px;color:var(--ink-3);margin-bottom:4px}.link-summary{font-size:12px;color:var(--ink-3);line-height:1.55;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:8px}.link-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-family:var(--font-mono);font-size:11px;color:var(--ink-3)}.link-aside{display:flex;flex-direction:column;align-items:flex-end;gap:6px;flex-shrink:0;min-width:90px}.comment-bubble{padding:10px 12px;background:var(--bg-2);border-left:2px solid var(--line);border-radius:0 var(--radius) var(--radius) 0;font-size:12px;color:var(--ink-2);line-height:1.55;margin-top:8px}.comment-bubble:before{content:"COMMENT";font-family:var(--font-mono);font-size:9px;letter-spacing:.12em;color:var(--ink-4);display:block;margin-bottom:3px}.filter-bar{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--line);margin-bottom:4px}.filter-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border:1px solid var(--line);border-radius:12px;font-size:12px;color:var(--ink-2);background:var(--bg-raised);cursor:pointer}.filter-chip:hover{border-color:var(--ink-4)}.filter-chip.active{background:var(--ink);color:var(--bg);border-color:var(--ink)}.filter-chip .chip-count{font-family:var(--font-mono);font-size:10px;color:var(--ink-4)}.filter-chip.active .chip-count{color:#a29d99}.filter-group-label{font-family:var(--font-mono);font-size:10px;color:var(--ink-4);letter-spacing:.08em;text-transform:uppercase;margin-right:4px}.qa-row{display:grid;grid-template-columns:56px 1fr auto;gap:20px;padding:18px 6px;border-bottom:1px solid var(--line-2);cursor:pointer}.qa-row:hover{background:var(--bg-2)}.qa-count{text-align:center;font-family:var(--font-mono)}.qa-count .num{font-size:20px;font-weight:600;color:var(--ink);font-family:var(--font-display)}.qa-count .num.zero{color:var(--ink-4)}.qa-count .lbl{font-size:9px;color:var(--ink-3);letter-spacing:.08em;text-transform:uppercase;margin-top:1px}.qa-body{min-width:0}.qa-title{font-family:var(--font-display);font-size:16px;font-weight:600;letter-spacing:-.015em;color:var(--ink);margin-bottom:5px}.qa-excerpt{font-size:12px;color:var(--ink-3);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:9px}.qa-meta{display:flex;align-items:center;gap:10px;font-family:var(--font-mono);font-size:11px;color:var(--ink-3)}.detail-layout{display:grid;grid-template-columns:1fr 280px;gap:40px}.detail-aside{border-left:1px solid var(--line);padding-left:24px}.detail-aside .aside-section{margin-bottom:22px}.detail-aside .aside-label{font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);margin-bottom:8px}.detail-aside .aside-value{font-size:13px;color:var(--ink)}.detail-title{font-family:var(--font-display);font-size:28px;line-height:1.25;letter-spacing:-.025em;font-weight:600;margin:6px 0 10px}.detail-eyebrow{font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3)}.detail-meta{display:flex;align-items:center;gap:14px;font-family:var(--font-mono);font-size:11px;color:var(--ink-3);padding-bottom:14px;border-bottom:1px solid var(--line);margin-bottom:22px}.prose{font-size:14px;color:var(--ink-2);line-height:1.75;white-space:pre-wrap;text-wrap:pretty}.prose p{margin:0 0 14px}.answer-block{padding:20px 0;border-bottom:1px solid var(--line-2);display:grid;grid-template-columns:48px 1fr;gap:16px}.answer-block:last-child{border-bottom:none}.answer-block.accepted{background:linear-gradient(to right,var(--accent-soft) 0%,transparent 40%);border-radius:var(--radius-lg);padding:20px 16px;margin:0 -16px;border-bottom:1px solid var(--line-2)}.vote-col{display:flex;flex-direction:column;align-items:center;gap:2px}.vote-btn{width:22px;height:22px;border:1px solid var(--line);background:var(--bg-raised);border-radius:3px;display:grid;place-items:center;color:var(--ink-3)}.vote-count{font-family:var(--font-mono);font-size:13px;font-weight:500}.answer-body{font-size:14px;color:var(--ink-2);line-height:1.7;white-space:pre-wrap}.answer-header{display:flex;align-items:center;gap:10px;margin-bottom:8px;font-size:12px;color:var(--ink-3)}.accepted-mark{display:inline-flex;align-items:center;gap:4px;font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);border:1px solid var(--accent);padding:1px 6px;border-radius:3px}.note-fields{display:grid;grid-template-columns:120px 1fr;border-top:1px solid var(--line)}.note-field{display:contents}.note-field-label{padding:16px 0;font-family:var(--font-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);border-bottom:1px solid var(--line-2)}.note-field-value{padding:16px 0;border-bottom:1px solid var(--line-2);font-size:14px;color:var(--ink-2);line-height:1.7;white-space:pre-wrap}.app-hero{display:grid;grid-template-columns:auto 1fr auto;gap:24px;align-items:center;padding:20px 24px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--bg-raised);margin-bottom:24px}.app-icon{width:56px;height:56px;border-radius:var(--radius-lg);border:1px solid var(--line);display:grid;place-items:center;font-family:var(--font-display);font-size:22px;font-weight:600;color:var(--ink);background:var(--bg-2)}.app-url{font-family:var(--font-mono);font-size:12px;color:var(--accent);margin-top:4px;display:inline-flex;align-items:center;gap:5px}.app-specs{display:grid;grid-template-columns:repeat(2,1fr);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden}.app-spec{padding:12px 16px;border-right:1px solid var(--line-2);border-bottom:1px solid var(--line-2)}.app-spec:nth-child(2n){border-right:none}.app-spec:nth-last-child(-n+2){border-bottom:none}.spec-label{font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3)}.spec-value{font-size:13px;color:var(--ink);margin-top:3px}.caution{margin-top:16px;padding:12px 14px;border:1px solid var(--line);border-left:2px solid var(--accent);border-radius:var(--radius);background:var(--bg-raised);font-size:13px;color:var(--ink-2);line-height:1.6}.caution-label{font-family:var(--font-mono);font-size:10px;color:var(--accent-ink);letter-spacing:.12em;text-transform:uppercase;margin-bottom:4px}.comments-feed{border-top:1px solid var(--line)}.comment-item{display:grid;grid-template-columns:32px 1fr;gap:14px;padding:16px 0;border-bottom:1px solid var(--line-2)}.comment-meta{display:flex;align-items:center;gap:10px;margin-bottom:6px}.comment-author{font-weight:500;color:var(--ink);font-size:13px}.comment-time{font-family:var(--font-mono);font-size:10px;color:var(--ink-3)}.comment-type{font-family:var(--font-mono);font-size:10px;padding:1px 7px;border-radius:10px;letter-spacing:.04em;background:var(--bg-2);color:var(--ink-2);border:1px solid var(--line)}.comment-type[data-ctype=不具合報告]{color:#a43b38;border-color:#edaaa4}.comment-type[data-ctype=セキュリティ指摘]{color:var(--accent-ink);border-color:var(--accent)}.comment-type[data-ctype=改善提案]{color:#33548c;border-color:#a8bfe5}.comment-type[data-ctype=活用アイデア]{color:#236436;border-color:#a3c9aa}.comment-type[data-ctype=技術メモ]{color:#5a5450;border-color:var(--line);background:var(--bg-2)}.comment-body{font-size:13px;color:var(--ink-2);line-height:1.65}.composer{margin-top:16px;border:1px solid var(--line);border-radius:var(--radius-lg);padding:12px;background:var(--bg-raised)}.composer-types{display:flex;gap:6px;margin-bottom:10px;flex-wrap:wrap}.composer textarea{width:100%;min-height:70px;border:none;outline:none;resize:vertical;background:transparent;font-size:13px;color:var(--ink);line-height:1.6}.composer-foot{display:flex;justify-content:space-between;align-items:center;padding-top:8px;border-top:1px solid var(--line-2)}.composer-hint{font-family:var(--font-mono);font-size:10px;color:var(--ink-4)}.project-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.project-card{border:1px solid var(--line);border-radius:var(--radius-lg);padding:18px;background:var(--bg-raised);cursor:pointer;transition:border-color .12s,background .12s}.project-card:hover{border-color:var(--ink-4)}.project-card-head{display:flex;align-items:center;gap:10px;margin-bottom:10px}.project-swatch{width:10px;height:10px;border-radius:2px}.project-name{font-family:var(--font-display);font-size:16px;font-weight:600;letter-spacing:-.015em}.project-desc{font-size:12px;color:var(--ink-3);line-height:1.55;margin-bottom:14px;min-height:36px}.project-stats{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line-2);padding-top:10px}.project-stat{text-align:left}.project-stat .p-num{font-family:var(--font-display);font-size:15px;font-weight:600}.project-stat .p-lbl{font-family:var(--font-mono);font-size:9px;color:var(--ink-3);letter-spacing:.06em;text-transform:uppercase;margin-top:2px}.tag-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:4px;border-top:1px solid var(--line-2);padding-top:4px}.tag-cell{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-bottom:1px solid var(--line-2);font-size:13px;cursor:pointer}.tag-cell:hover{background:var(--bg-2)}.tag-cell .tag-name{display:flex;align-items:center;gap:8px}.tag-cell .tag-count{font-family:var(--font-mono);font-size:11px;color:var(--ink-3)}.activity-list{padding-top:4px}.activity-item{display:grid;grid-template-columns:24px 1fr auto;gap:12px;padding:10px 0;border-bottom:1px solid var(--line-3);font-size:12px;align-items:center}.activity-ico{width:22px;height:22px;border:1px solid var(--line);border-radius:3px;display:grid;place-items:center;color:var(--ink-3);background:var(--bg-raised)}.activity-text{color:var(--ink-2)}.activity-text b{color:var(--ink);font-weight:500}.activity-time{font-family:var(--font-mono);font-size:10px;color:var(--ink-4)}.flow-diagram{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin:18px 0 0;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--bg-raised);overflow:hidden}.flow-step{padding:14px;border-right:1px solid var(--line-2);position:relative}.flow-step:last-child{border-right:none}.flow-step .fs-num{font-family:var(--font-mono);font-size:10px;color:var(--ink-4);letter-spacing:.1em}.flow-step .fs-title{font-size:13px;font-weight:500;color:var(--ink);margin:4px 0 3px}.flow-step .fs-desc{font-size:11px;color:var(--ink-3);line-height:1.5}.flow-step:after{content:"→";position:absolute;right:-7px;top:16px;background:var(--bg-raised);padding:0 2px;color:var(--ink-4);font-size:12px;z-index:1}.flow-step:last-child:after{display:none}.modal-backdrop{position:fixed;inset:0;background:#1e1a164d;backdrop-filter:blur(4px);z-index:100;display:grid;place-items:center;padding:40px}.modal{background:var(--bg);border:1px solid var(--line);border-radius:var(--radius-lg);width:720px;max-width:100%;max-height:88vh;overflow:auto;box-shadow:0 24px 60px -20px #1e1a164d}.modal-head{display:flex;align-items:center;justify-content:space-between;padding:16px 22px;border-bottom:1px solid var(--line)}.modal-title{font-family:var(--font-display);font-size:16px;font-weight:600;letter-spacing:-.015em}.modal-body{padding:20px 22px 24px}.modal-foot{padding:14px 22px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;background:var(--bg-2)}.form-row{margin-bottom:16px}.form-row label{display:block;font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);margin-bottom:5px}.form-row .input,.form-row .textarea,.form-row .select{width:100%;padding:8px 10px;border:1px solid var(--line);background:var(--bg-raised);border-radius:var(--radius);font-size:13px;color:var(--ink);outline:none}.form-row .input:focus,.form-row .textarea:focus,.form-row .select:focus{border-color:var(--ink-4)}.form-row .textarea{min-height:70px;resize:vertical;font-family:inherit}.form-row-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.url-preview{display:grid;grid-template-columns:48px 1fr;gap:12px;padding:12px;border:1px dashed var(--line);border-radius:var(--radius);margin-bottom:14px;background:var(--bg-2)}.url-preview-ok .url-preview-title{font-size:13px;font-weight:500;margin-bottom:2px}.url-preview-ok .url-preview-domain{font-family:var(--font-mono);font-size:11px;color:var(--ink-3)}.url-preview-loading{font-family:var(--font-mono);font-size:11px;color:var(--ink-3);grid-column:1 / -1;display:flex;align-items:center;gap:6px}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--line);border-radius:10px;border:2px solid var(--bg)}::-webkit-scrollbar-thumb:hover{background:var(--ink-4)}body[data-density=compact]{font-size:13px}body[data-density=compact] .page{padding:20px 22px 50px}body[data-density=compact] .link-row,body[data-density=compact] .qa-row{padding:11px 6px}body[data-density=compact] .hero-title{font-size:26px}body[data-theme=dark]{--bg: oklch(.19 .008 260);--bg-2: oklch(.22 .008 260);--bg-raised: oklch(.24 .009 260);--ink: oklch(.94 .004 85);--ink-2: oklch(.8 .005 85);--ink-3: oklch(.6 .006 85);--ink-4: oklch(.45 .006 85);--line: oklch(.32 .008 260);--line-2: oklch(.28 .008 260);--line-3: oklch(.25 .008 260);--accent-soft: oklch(.32 .08 55)}body[data-theme=dark] .btn.primary{background:var(--bg);color:var(--ink);border-color:var(--ink-3)}body[data-theme=dark] .brand-logo{border-color:var(--ink-2)}body[data-theme=dark] .brand-logo:before{border-color:var(--ink-2)}body[data-accent=indigo]{--accent: oklch(.58 .14 265);--accent-ink: oklch(.45 .12 265);--accent-soft: oklch(.92 .04 265)}body[data-theme=dark][data-accent=indigo]{--accent-soft: oklch(.3 .1 265)}body[data-accent=forest]{--accent: oklch(.55 .12 155);--accent-ink: oklch(.42 .1 155);--accent-soft: oklch(.92 .04 155)}body[data-theme=dark][data-accent=forest]{--accent-soft: oklch(.3 .08 155)}body[data-accent=amber]{--accent: oklch(.58 .14 55);--accent-ink: oklch(.35 .09 55);--accent-soft: oklch(.92 .04 65)}body[data-theme=dark][data-accent=amber]{--accent-soft: oklch(.3 .08 55)}.me-header{display:grid;grid-template-columns:auto 1fr auto;gap:24px;align-items:center;padding:22px 24px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--bg-raised);margin-bottom:28px;position:relative;overflow:hidden}.me-header:before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 90% 0%,var(--accent-soft) 0%,transparent 40%),repeating-linear-gradient(135deg,transparent 0 18px,var(--line-3) 18px 19px);opacity:.6;pointer-events:none}.me-header>*{position:relative}.me-avatar{width:72px;height:72px;border-radius:50%;border:1px solid var(--line);display:grid;place-items:center;font-family:var(--font-display);font-size:24px;font-weight:600;background:var(--bg)}.me-name{font-family:var(--font-display);font-size:22px;font-weight:600;letter-spacing:-.02em}.me-role{font-family:var(--font-mono);font-size:11px;color:var(--ink-3);letter-spacing:.08em;text-transform:uppercase;margin-top:2px}.me-email{font-family:var(--font-mono);font-size:12px;color:var(--ink-3);margin-top:6px}.me-stats{display:grid;grid-template-columns:repeat(5,1fr);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;background:var(--bg-raised);margin-bottom:28px}.me-stat{padding:16px 18px;border-right:1px solid var(--line-2)}.me-stat:last-child{border-right:none}.me-stat-label{font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3)}.me-stat-value{font-family:var(--font-display);font-size:26px;font-weight:600;letter-spacing:-.02em;margin-top:4px;display:flex;align-items:baseline;gap:8px}.me-stat-split{font-family:var(--font-mono);font-size:11px;color:var(--ink-3);margin-top:2px;display:flex;gap:10px}.me-stat-split .sp-shared{color:#428252}.me-stat-split .sp-private{color:var(--ink-3)}.me-tabs{display:flex;gap:0;border-bottom:1px solid var(--line);margin-bottom:14px}.me-tab{padding:10px 14px;font-size:13px;color:var(--ink-3);border-bottom:2px solid transparent;margin-bottom:-1px;cursor:pointer;display:inline-flex;align-items:center;gap:7px}.me-tab.active{color:var(--ink);border-bottom-color:var(--accent);font-weight:500}.me-tab-count{font-family:var(--font-mono);font-size:10px;color:var(--ink-4);background:var(--bg-2);padding:1px 6px;border-radius:8px}.vis-badge{display:inline-flex;align-items:center;gap:4px;font-family:var(--font-mono);font-size:10px;padding:1px 7px;border-radius:3px;letter-spacing:.04em;border:1px solid var(--line)}.vis-badge[data-vis=shared]{color:#195c2e;border-color:#a9d0b0;background:#e9f6eb}.vis-badge[data-vis=private]{color:var(--ink-2);border-color:var(--line);background:var(--bg-2)}body[data-theme=dark] .vis-badge[data-vis=shared]{background:#14361d;color:#9fd3a9;border-color:#295935}.me-row{display:grid;grid-template-columns:auto 1fr auto;gap:16px;padding:14px 8px;border-bottom:1px solid var(--line-2);align-items:center}.me-row:hover{background:var(--bg-2)}.me-row-icon{width:32px;height:32px;border:1px solid var(--line);border-radius:4px;display:grid;place-items:center;font-family:var(--font-mono);font-size:9px;color:var(--ink-2);background:var(--bg-raised)}.me-row-title{font-size:13px;font-weight:500;color:var(--ink);margin-bottom:4px;cursor:pointer}.me-row-title:hover{color:var(--accent)}.me-row-meta{display:flex;gap:10px;align-items:center;font-family:var(--font-mono);font-size:11px;color:var(--ink-3);flex-wrap:wrap}.me-actions{display:flex;gap:6px;flex-shrink:0}.me-filter{display:flex;gap:6px;margin-bottom:8px;padding:4px 0 10px}.vis-switch{display:inline-flex;background:var(--bg-2);border:1px solid var(--line);border-radius:12px;padding:2px;font-size:11px;font-family:var(--font-mono)}.vis-switch button{padding:3px 10px;border:none;background:transparent;border-radius:10px;color:var(--ink-3);cursor:pointer}.vis-switch button.active{background:var(--bg-raised);color:var(--ink);box-shadow:0 0 0 1px var(--line)}.confirm{background:var(--bg);border:1px solid var(--line);border-radius:var(--radius-lg);width:440px;max-width:100%;box-shadow:0 24px 60px -20px #1e1a164d}.confirm-head{padding:18px 22px 10px}.confirm-title{font-family:var(--font-display);font-size:16px;font-weight:600}.confirm-body{padding:6px 22px 18px;color:var(--ink-2);font-size:13px;line-height:1.65}.confirm-foot{padding:14px 22px;border-top:1px solid var(--line);display:flex;justify-content:flex-end;gap:8px;background:var(--bg-2)}.auth-shell{min-height:100vh;display:grid;place-items:center;background:var(--bg);padding:40px 20px}.auth-card{width:100%;max-width:420px;background:var(--bg-raised);border:1px solid var(--line);border-radius:var(--radius-lg);padding:28px 28px 24px;box-shadow:0 16px 40px -20px #1e1a162e}.auth-brand{margin-bottom:18px}.brand-name{font-family:var(--font-display);font-size:16px;font-weight:600;letter-spacing:-.01em}.brand-tag{font-size:11px;color:var(--ink-3);margin-top:2px}.auth-title{font-family:var(--font-display);font-size:22px;font-weight:600;margin:6px 0 22px}.auth-form{display:flex;flex-direction:column;gap:14px}.auth-field{display:flex;flex-direction:column;gap:6px;font-size:12px;color:var(--ink-2)}.auth-field>span{font-weight:500;color:var(--ink-2);display:flex;align-items:baseline;gap:8px}.auth-field em{font-style:normal;color:var(--ink-4);font-size:11px}.auth-field input{font-size:14px;padding:9px 12px;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-raised);color:var(--ink);transition:border-color .1s}.auth-field input:focus{outline:none;border-color:var(--accent)}.auth-radio-row{border:none;padding:0;margin:0;flex-direction:row;flex-wrap:wrap;gap:16px}.auth-radio-row legend{font-weight:500;margin-bottom:6px;color:var(--ink-2)}.radio{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--ink);cursor:pointer}.radio input{accent-color:var(--accent)}.auth-error{font-size:13px;color:#a20519;background:oklch(.97 .04 25);border:1px solid oklch(.85 .06 25);padding:10px 12px;border-radius:var(--radius)}.auth-done{font-size:13px;color:var(--ink-2);padding:12px;background:var(--bg-2);border:1px solid var(--line);border-radius:var(--radius);margin-bottom:16px}.auth-foot{margin-top:18px;font-size:12px;color:var(--ink-3);display:flex;align-items:center;gap:6px;flex-wrap:wrap}.auth-foot a{color:var(--accent-ink);text-decoration:none}.auth-foot a:hover{text-decoration:underline}.auth-foot .dot{color:var(--ink-4)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 14px;font-size:13px;font-weight:500;background:var(--bg-raised);border:1px solid var(--line);border-radius:var(--radius);color:var(--ink);cursor:pointer;transition:background .1s,border-color .1s}.btn:hover{background:var(--bg-2);border-color:var(--ink-4)}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:var(--ink);border-color:var(--ink);color:var(--bg)}.btn-primary:hover{background:#37322e;border-color:#37322e}.btn-destructive{background:#a20519;border-color:#a20519;color:var(--bg)}.btn-destructive:hover{background:oklch(.4 .2 25);border-color:oklch(.4 .2 25)}.btn-ghost{background:transparent;border-color:transparent;color:var(--ink-2);padding:6px 10px}.btn-ghost:hover{background:var(--bg-2);color:var(--ink)}.main{display:flex;flex-direction:column;min-width:0}.topbar{height:52px;padding:0 24px;display:flex;align-items:center;gap:14px;border-bottom:1px solid var(--line);background:var(--bg);position:sticky;top:0;z-index:10}.topbar-spacer{flex:1}.topbar-warn{display:inline-flex;align-items:center;gap:8px;font-size:12px;color:oklch(.4 .16 60);background:oklch(.96 .06 65);border:1px solid oklch(.85 .07 65);padding:5px 10px;border-radius:var(--radius)}.topbar-user{display:flex;align-items:center;gap:10px}.topbar-user-meta{display:flex;flex-direction:column;line-height:1.2;font-size:12px}.topbar-user-name{font-weight:500}.topbar-user-handle{font-size:11px;color:var(--ink-3)}.avatar{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;border:1px solid;font-size:11px;font-weight:600;letter-spacing:0;user-select:none;flex-shrink:0}.avatar-sm{width:28px;height:28px;font-size:11px}.avatar-md{width:40px;height:40px;font-size:13px}.avatar-lg{width:56px;height:56px;font-size:16px}.page{flex:1;padding:28px 32px 80px;overflow-y:auto;max-width:1280px;margin:0 auto;width:100%}.page-head{margin-bottom:24px;padding-bottom:18px;border-bottom:1px solid var(--line)}.page-title{font-family:var(--font-display);font-size:24px;font-weight:600;letter-spacing:-.015em;margin:0 0 4px}.page-subtitle{font-size:13px;color:var(--ink-3);margin:0}.page-section{margin-bottom:28px}.empty-state{border:1px dashed var(--line);border-radius:var(--radius-lg);padding:48px 24px;text-align:center;background:var(--bg-2)}.empty-state-title{font-size:14px;font-weight:500;color:var(--ink);margin-bottom:6px}.empty-state-desc{font-size:12px;color:var(--ink-3);max-width:360px;margin:0 auto;line-height:1.6}.empty-state-action{margin-top:16px;display:flex;justify-content:center;gap:10px}.spinner{display:inline-block;border:2px solid var(--line);border-top-color:var(--accent);border-radius:50%;animation:spinner-spin .7s linear infinite}.page-loading{min-height:100vh;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:14px;color:var(--ink-3);font-size:12px}@keyframes spinner-spin{to{transform:rotate(360deg)}}.visibility-badge{display:inline-flex;align-items:center;gap:5px;font-size:11px;padding:2px 8px;border-radius:999px;border:1px solid var(--line);background:var(--bg-raised);color:var(--ink-2)}.visibility-badge[data-visibility=shared]{border-color:#a9ddb2;background:#e3fde7;color:#115629}.visibility-badge[data-visibility=private]{border-color:var(--line);background:var(--bg-2);color:var(--ink-3)}.visibility-dot{width:5px;height:5px;border-radius:50%;background:currentColor;opacity:.6}.modal-backdrop{position:fixed;inset:0;background:#1e1a1659;display:grid;place-items:center;z-index:50;animation:modal-in .12s ease-out}.modal-confirm{background:var(--bg-raised);border:1px solid var(--line);border-radius:var(--radius-lg);width:420px;max-width:calc(100% - 32px);box-shadow:0 24px 60px -20px #1e1a1659}.modal-header{padding:18px 22px 6px}.modal-title{font-family:var(--font-display);font-size:16px;font-weight:600;margin:0}.modal-body{padding:6px 22px 18px;color:var(--ink-2);font-size:13px;line-height:1.65}.modal-footer{padding:14px 22px;border-top:1px solid var(--line);display:flex;justify-content:flex-end;gap:8px;background:var(--bg-2);border-radius:0 0 var(--radius-lg) var(--radius-lg)}@keyframes modal-in{0%{opacity:0}to{opacity:1}}.error-fallback{min-height:100vh;display:grid;place-items:center;background:var(--bg);padding:40px 20px}.error-fallback-card{background:var(--bg-raised);border:1px solid var(--line);border-radius:var(--radius-lg);padding:28px;max-width:480px;text-align:center}.error-fallback-card h1{font-family:var(--font-display);font-size:18px;margin:0 0 12px}.error-fallback-message{font-family:var(--font-mono);font-size:12px;color:var(--ink-3);background:var(--bg-2);padding:10px 12px;border-radius:var(--radius);border:1px solid var(--line);margin:0 0 16px;word-break:break-all;text-align:left}.error-fallback-card .btn{margin:0 4px}.page-home .quick-actions{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:28px}.quick-action{display:flex;align-items:center;gap:12px;padding:14px 16px;background:var(--bg-raised);border:1px solid var(--line);border-radius:var(--radius-lg);text-decoration:none;color:var(--ink);transition:border-color .1s,background .1s}.quick-action:hover{border-color:var(--ink-4);background:var(--bg-2)}.quick-action-icon{display:grid;place-items:center;width:32px;height:32px;border-radius:var(--radius);background:var(--accent-soft);color:var(--accent-ink);font-size:16px;font-weight:600}.quick-action-label{font-size:13px;font-weight:500}.section-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:12px}.section-title{font-family:var(--font-display);font-size:14px;font-weight:600;margin:0}.section-sub{font-size:11px;color:var(--ink-4)}.section-more{font-size:11px;color:var(--accent-ink);text-decoration:none}.section-more:hover{text-decoration:underline}.section-loading{padding:18px;display:grid;place-items:center}.kflow{margin-bottom:28px;padding:20px 22px;background:var(--bg-raised);border:1px solid var(--line);border-radius:var(--radius-lg)}.kflow-track{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,1fr);gap:0;position:relative}.kflow-step{position:relative;padding:0 14px}.kflow-step+.kflow-step:before{content:"";position:absolute;left:-1px;top:14px;height:1px;width:14px;background:var(--line)}.kflow-num{font-size:11px;color:var(--ink-4);margin-bottom:6px}.kflow-label{font-family:var(--font-display);font-size:13px;font-weight:600;margin-bottom:3px}.kflow-sub{font-size:11px;color:var(--ink-3);line-height:1.4}.metrics-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:28px}.metric-cell{padding:16px 20px;background:var(--bg-raised);border:1px solid var(--line);border-radius:var(--radius-lg)}.metric-label{font-size:11px;color:var(--ink-4);margin-bottom:6px}.metric-value{font-family:var(--font-display);font-size:28px;font-weight:600;letter-spacing:-.02em}.home-columns{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:28px}.home-section{background:var(--bg-raised);border:1px solid var(--line);border-radius:var(--radius-lg);padding:18px 20px}.home-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1px}.home-list-item{border-top:1px solid var(--line-2)}.home-list-item:first-child{border-top:0}.home-list-link{display:block;padding:12px 4px;text-decoration:none;color:inherit}.home-list-link:hover{background:var(--bg-2)}.home-list-meta{font-size:10px;color:var(--ink-4);text-transform:uppercase;letter-spacing:.06em;margin-bottom:4px}.home-list-title{font-size:13px;font-weight:500;margin-bottom:4px;line-height:1.4}.home-list-sub{font-size:12px;color:var(--ink-3);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.compose-modal{background:var(--bg-raised);border:1px solid var(--line);border-radius:var(--radius-lg);width:720px;max-width:calc(100% - 32px);max-height:calc(100vh - 64px);display:flex;flex-direction:column;box-shadow:0 24px 60px -20px #1e1a1659}.compose-head{display:flex;align-items:center;justify-content:space-between;padding:16px 22px;border-bottom:1px solid var(--line)}.compose-body{padding:18px 22px 22px;overflow-y:auto}.compose-form{display:flex;flex-direction:column;gap:14px}.compose-form textarea{font-family:var(--font-sans);font-size:14px;line-height:1.6;padding:9px 12px;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-raised);color:var(--ink);resize:vertical}.compose-form textarea:focus{outline:none;border-color:var(--accent)}.compose-form select{font-size:14px;padding:9px 12px;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-raised)}.compose-row-2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.compose-foot{display:flex;align-items:center;justify-content:space-between;margin-top:8px;padding-top:14px;border-top:1px solid var(--line-2)}.compose-draft-hint{font-size:11px;color:var(--ink-4)}.visibility-radio{border:1px solid var(--line);border-radius:var(--radius);padding:12px 14px;display:flex;flex-direction:column;gap:8px;margin:0}.visibility-radio legend{font-size:12px;font-weight:500;color:var(--ink-2);padding:0 4px}.visibility-radio .radio{align-items:flex-start}.visibility-radio .radio span{display:flex;flex-direction:column;gap:2px}.visibility-radio em{font-style:normal;font-size:11px;color:var(--ink-4)}.tag-input{display:flex;flex-direction:column;gap:4px}.tag-chips{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:6px 8px;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-raised);min-height:38px}.tag-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;background:var(--bg-2);border:1px solid var(--line);border-radius:999px;font-size:12px;color:var(--ink)}.tag-chip-x{background:transparent;border:0;font-size:12px;color:var(--ink-3);cursor:pointer;padding:0 2px}.tag-chip-x:hover{color:var(--ink)}.tag-chip-input{flex:1;min-width:80px;border:0;outline:none;background:transparent;font-size:13px;color:var(--ink)}.tag-input-help{font-size:10px;color:var(--ink-4)}.tag-list{display:inline-flex;flex-wrap:wrap;gap:6px}.tag-pill{display:inline-flex;align-items:center;gap:5px;padding:2px 8px;border-radius:999px;font-size:11px;background:var(--bg-2);border:1px solid var(--line);color:var(--ink-2)}.tag-pill-dot{width:4px;height:4px;border-radius:50%;background:var(--accent);opacity:.7}.status-badge{display:inline-flex;align-items:center;gap:5px;font-size:11px;padding:2px 8px;border-radius:999px;border:1px solid var(--line);background:var(--bg-raised);color:var(--ink-2)}.status-dot{width:5px;height:5px;border-radius:50%;background:var(--ink-3);opacity:.7}.status-badge[data-status=検証済み]{color:#236436;border-color:#a9ddb2;background:#e3fde7}.status-badge[data-status=採用候補]{color:var(--accent-ink);border-color:var(--accent);background:var(--accent-soft)}.status-badge[data-status=検証中],.status-badge[data-status=確認中]{color:oklch(.45 .12 85);border-color:#ecc980;background:oklch(.97 .05 85)}.importance-badge{display:inline-flex;align-items:center;gap:5px;font-size:11px;color:var(--ink-3)}.importance-bars{display:inline-flex;gap:1px;align-items:flex-end}.importance-bar{width:3px;background:var(--line)}.importance-bar:nth-child(1){height:4px}.importance-bar:nth-child(2){height:7px}.importance-bar:nth-child(3){height:10px}.importance-badge[data-level=高] .importance-bar{background:var(--accent)}.importance-badge[data-level=中] .importance-bar:nth-child(-n+2){background:var(--ink-3)}.importance-badge[data-level=低] .importance-bar:nth-child(1){background:var(--ink-3)}.source-badge{display:inline-flex;align-items:center;font-size:10px;padding:2px 6px;border-radius:var(--radius);border:1px solid var(--line);background:var(--bg-raised);color:var(--ink-2)}.page-head-row{display:flex;align-items:center;justify-content:space-between;gap:16px}.list-toolbar{display:flex;align-items:center;gap:8px;margin-bottom:18px}.list-search{flex:1;font-size:13px;padding:8px 12px;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-raised)}.list-search:focus{outline:none;border-color:var(--accent)}.list-filter{font-size:13px;padding:8px 10px;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-raised)}.row-list{list-style:none;margin:0;padding:0}.row-item{border-top:1px solid var(--line-2)}.row-item:first-child{border-top:1px solid var(--line)}.row-link{display:block;padding:14px 4px;text-decoration:none;color:inherit}.row-link:hover{background:var(--bg-2)}.row-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:6px}.row-domain{color:var(--ink-3);font-size:11px}.row-title{font-size:14px;font-weight:500;margin-bottom:4px}.row-comment{font-size:12px;color:var(--ink-3);line-height:1.5;margin-bottom:6px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.page-link{display:inline-block;margin-top:6px;font-size:12px;color:var(--accent-ink);word-break:break-all;text-decoration:none}.page-link:hover{text-decoration:underline}.page-foot{margin-top:28px;padding-top:18px;border-top:1px solid var(--line)}.link-thumb{margin-bottom:18px;border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;max-width:480px}.link-thumb img{display:block;width:100%;height:auto}.prose{font-size:13px;line-height:1.75;color:var(--ink);white-space:pre-wrap}.comment-composer{background:var(--bg-2);border:1px solid var(--line);border-radius:var(--radius-lg);padding:14px 16px;margin-bottom:18px;display:flex;flex-direction:column;gap:10px}.comment-composer-types{display:flex;flex-wrap:wrap;gap:12px}.comment-composer-body{font-family:var(--font-sans);font-size:13px;line-height:1.6;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-raised);padding:9px 12px;resize:vertical}.comment-composer-body:focus{outline:none;border-color:var(--accent)}.comment-composer-foot{display:flex;justify-content:flex-end}.comment-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.comment-item{border:1px solid var(--line);border-radius:var(--radius-lg);padding:12px 16px;background:var(--bg-raised)}.comment-head{display:flex;align-items:center;gap:8px;margin-bottom:6px}.comment-author{font-size:11px;color:var(--ink-3)}.comment-time{font-size:11px;color:var(--ink-4);margin-left:auto}.comment-body{font-size:13px;line-height:1.65;color:var(--ink)}.comment-body p{margin:0 0 6px}.comment-type{display:inline-flex;align-items:center;font-size:10px;padding:2px 8px;border-radius:999px;border:1px solid var(--line);background:var(--bg-raised);color:var(--ink-2)}.comment-type[data-type=impression]{color:#124a7b;border-color:#b1d2f4;background:oklch(.97 .03 250)}.comment-type[data-type=improve]{color:var(--accent-ink);border-color:var(--accent);background:var(--accent-soft)}.comment-type[data-type=bug]{color:#a20519;border-color:#f3bfba;background:oklch(.97 .04 25)}.comment-type[data-type=idea]{color:#115629;border-color:#a9ddb2;background:#e3fde7}.comment-type[data-type=tech]{color:#584332;border-color:var(--line);background:var(--bg-2)}.comment-type[data-type=security]{color:#8a0314;border-color:#f8a49d;background:oklch(.96 .05 25)}.markdown-body p{margin:0 0 6px}.markdown-body code{font-family:var(--font-mono);font-size:12px;background:var(--bg-2);padding:0 4px;border-radius:3px}.markdown-body pre{background:var(--bg-2);padding:10px 12px;border-radius:var(--radius);overflow-x:auto;font-size:12px}.markdown-body a{color:var(--accent-ink)}.markdown-body ul,.markdown-body ol{padding-left:22px;margin:6px 0}.accepted-mark{color:var(--accent-ink);background:var(--accent-soft);border:1px solid var(--accent);font-size:10px;padding:1px 8px;border-radius:999px}.answer-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}.answer-item{display:grid;grid-template-columns:64px 1fr;gap:14px;padding:14px 16px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--bg-raised)}.answer-item.is-accepted{border-color:var(--accent);background:linear-gradient(0deg,var(--accent-soft),var(--bg-raised))}.answer-vote{display:flex;flex-direction:column;align-items:center;gap:2px;padding-top:4px}.answer-vote .btn{padding:2px 6px;font-size:12px}.answer-vote-count{font-size:14px;font-weight:600;color:var(--ink)}.answer-body{min-width:0}.answer-head{display:flex;align-items:center;gap:8px;margin-bottom:6px;font-size:12px}.answer-author{color:var(--ink-3)}.answer-time{color:var(--ink-4);margin-left:auto}.note-section{display:grid;grid-template-columns:1fr 1fr;gap:14px}.note-block{background:var(--bg-raised);border:1px solid var(--line);border-radius:var(--radius-lg);padding:14px 16px}.note-label{font-size:11px;color:var(--ink-3);margin:0 0 6px;text-transform:uppercase;letter-spacing:.06em}.app-spec-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:24px}.spec-cell{background:var(--bg-raised);border:1px solid var(--line);border-radius:var(--radius-lg);padding:12px 14px}.spec-label{font-size:11px;color:var(--ink-4);margin-bottom:4px;text-transform:uppercase;letter-spacing:.06em}.spec-value{font-size:13px;color:var(--ink)}.app-caution{background:oklch(.97 .04 25);border:1px solid oklch(.85 .06 25);border-radius:var(--radius-lg);padding:14px 18px}.app-caution .section-title{color:oklch(.4 .18 25)}.me-header{display:flex;align-items:center;gap:18px;padding-bottom:24px;margin-bottom:24px;border-bottom:1px solid var(--line)}.me-header-meta{flex:1;min-width:0}.me-name{font-family:var(--font-display);font-size:20px;font-weight:600;margin:0}.me-handle{font-size:12px;color:var(--ink-3);margin-top:2px}.me-quick-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.me-metrics{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-bottom:24px}.me-metric{background:var(--bg-raised);border:1px solid var(--line);border-radius:var(--radius-lg);padding:14px 16px}.me-metric-label{font-size:11px;color:var(--ink-4);margin-bottom:6px}.me-metric-total{font-family:var(--font-display);font-size:24px;font-weight:600;letter-spacing:-.02em}.me-metric-sub{display:flex;gap:10px;font-size:11px;color:var(--ink-3);margin-top:4px}.me-tabs{display:flex;gap:4px;flex-wrap:wrap;border-bottom:1px solid var(--line);margin-bottom:16px}.me-tab{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;background:transparent;border:0;border-bottom:2px solid transparent;font-size:13px;color:var(--ink-3);cursor:pointer;margin-bottom:-1px}.me-tab:hover{color:var(--ink)}.me-tab.is-active{color:var(--ink);border-bottom-color:var(--accent);font-weight:500}.me-tab.is-disabled{color:var(--ink-4);cursor:not-allowed}.me-tab-count{font-size:11px;color:var(--ink-4);background:var(--bg-2);padding:1px 6px;border-radius:999px;border:1px solid var(--line)}.me-tab.is-active .me-tab-count{background:var(--accent-soft);color:var(--accent-ink);border-color:var(--accent)}.me-vis-filter{margin-bottom:12px}.segmented{display:inline-flex;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--bg-raised)}.segmented-item{padding:6px 14px;font-size:12px;background:transparent;border:0;cursor:pointer;color:var(--ink-3);border-right:1px solid var(--line)}.segmented-item:last-child{border-right:0}.segmented-item.is-active{background:var(--ink);color:var(--bg);border-right-color:var(--ink)}.comment-target-link{font-size:11px;color:var(--accent-ink);text-decoration:none}.comment-target-link:hover{text-decoration:underline}.sidebar-nav{flex:1;padding:12px 12px 24px;display:flex;flex-direction:column;gap:18px;overflow-y:auto}.nav-group{display:flex;flex-direction:column;gap:1px}.nav-group-label{padding:6px 10px 4px;font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--ink-4)}.nav-item{display:flex;align-items:center;gap:8px;padding:8px 10px;font-size:13px;color:var(--ink-2);border-radius:var(--radius);text-decoration:none;cursor:pointer;transition:background .1s,color .1s}.nav-item:hover{background:var(--bg-2);color:var(--ink)}.nav-item.is-active{background:var(--bg-raised);color:var(--ink);border:1px solid var(--line-2);font-weight:500}body[data-accent=indigo]{--accent: oklch(.55 .16 265);--accent-soft: oklch(.92 .05 265);--accent-ink: oklch(.35 .14 265)}body[data-accent=forest]{--accent: oklch(.5 .13 150);--accent-soft: oklch(.92 .04 150);--accent-ink: oklch(.32 .1 150)}body[data-theme=dark]{--bg: oklch(.18 .008 60);--bg-2: oklch(.22 .008 60);--bg-raised: oklch(.25 .008 60);--ink: oklch(.95 .005 60);--ink-2: oklch(.8 .005 60);--ink-3: oklch(.62 .005 60);--ink-4: oklch(.45 .005 60);--line: oklch(.32 .008 60);--line-2: oklch(.28 .008 60);--line-3: oklch(.3 .008 60);--accent-soft: oklch(.32 .1 55)}body[data-theme=dark][data-accent=indigo]{--accent-soft: oklch(.28 .1 265)}body[data-theme=dark][data-accent=forest]{--accent-soft: oklch(.28 .08 150)}.tweaks-toggle{position:fixed;right:16px;bottom:16px;z-index:90;width:36px;height:36px;border-radius:50%;border:1px solid var(--line);background:var(--bg-raised);color:var(--ink-2);font-size:16px;cursor:pointer;box-shadow:0 4px 12px -4px #1e1a162e;transition:transform .12s,border-color .12s}.tweaks-toggle:hover{border-color:var(--ink-4);transform:translateY(-1px)}.tweaks-panel{position:fixed;right:16px;bottom:60px;z-index:95;width:280px;background:var(--bg-raised);border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 32px -8px #1e1a1640;font-size:12px;color:var(--ink);overflow:hidden}.tweaks-head{display:flex;align-items:center;justify-content:space-between;padding:10px 8px 10px 14px;border-bottom:1px solid var(--line-2)}.tweaks-head b{font-size:12px;font-weight:600}.tweaks-close{border:0;background:transparent;color:var(--ink-3);width:22px;height:22px;border-radius:6px;cursor:pointer;font-size:13px}.tweaks-close:hover{background:var(--line-3);color:var(--ink)}.tweaks-body{padding:12px 14px 14px;display:flex;flex-direction:column;gap:12px}.tweaks-row{display:flex;flex-direction:column;gap:6px}.tweaks-lbl{font-size:11px;color:var(--ink-3)}.tweaks-seg{display:flex;padding:2px;background:var(--bg-2);border-radius:8px;border:1px solid var(--line-2)}.tweaks-seg-btn{flex:1;height:24px;border:0;background:transparent;color:var(--ink-2);font-size:11px;font-weight:500;border-radius:6px;cursor:pointer;transition:background .12s,color .12s}.tweaks-seg-btn:hover{color:var(--ink)}.tweaks-seg-btn.is-active{background:var(--bg-raised);color:var(--ink);box-shadow:0 1px 2px #1e1a1614}.link-thumb[data-source=youtube]{background:oklch(.97 .04 27);border-color:#f3c0b9}.link-thumb[data-source=github],.link-thumb[data-source=x]{background:var(--bg-2);border-color:var(--line)}.link-thumb[data-source=qiita]{background:#e5fde5;border-color:#aedcae}.link-thumb[data-source=zenn]{background:oklch(.97 .03 245);border-color:#a4c9e9}.link-thumb[data-source=doc],.link-thumb[data-source=book],.link-thumb[data-source=globe]{background:var(--bg-2);border-color:var(--line)}body[data-theme=dark] .link-thumb[data-source=youtube]{background:#47211d;border-color:#733a35}body[data-theme=dark] .link-thumb[data-source=qiita]{background:#18361a;border-color:#2f5831}body[data-theme=dark] .link-thumb[data-source=zenn]{background:#163045;border-color:#295171}.me-row-icon svg{display:block}.admin-section{margin-top:8px}.admin-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding:10px 0;border-bottom:1px solid var(--line);margin-bottom:12px}.admin-toolbar-note{font-size:11px;color:var(--ink-3);width:100%}.admin-search{flex:1;min-width:200px;max-width:320px;padding:6px 10px;font-size:13px;background:var(--bg-raised);border:1px solid var(--line);border-radius:var(--radius);color:var(--ink)}.admin-search:focus{outline:1px solid var(--accent);outline-offset:-1px}.admin-rows{display:flex;flex-direction:column;gap:0;border-top:1px solid var(--line)}.admin-row{display:flex;align-items:center;gap:12px;padding:12px 4px;border-bottom:1px solid var(--line)}.admin-row-form{background:var(--bg-2);padding:10px;border-radius:var(--radius)}.admin-row-title{font-size:14px;font-weight:500;color:var(--ink);display:flex;align-items:center;gap:8px}.admin-row-self{font-size:10px;color:var(--accent-ink);background:var(--accent-soft);padding:1px 6px;border-radius:999px;border:1px solid var(--accent);font-family:var(--font-mono)}body[data-theme=dark] .admin-row-self{color:var(--accent);border-color:var(--accent)}.announcements-banner{display:flex;align-items:center;gap:8px;padding:4px 12px;margin:4px 24px 0;background:var(--accent-soft);border:1px solid var(--accent);border-radius:6px;font-size:12px;line-height:1.3;color:var(--accent-ink)}.announcements-banner-icon{font-size:13px;flex-shrink:0}.announcements-banner-body{flex:1;min-width:0;display:flex;align-items:center;gap:6px;flex-wrap:wrap}.announcements-banner-title{font-weight:500;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.announcements-banner-version{color:var(--ink-3);font-size:10px}.announcements-banner-badge{background:var(--accent);color:#fff;padding:0 6px;border-radius:999px;font-size:9px;font-family:var(--font-mono);letter-spacing:.02em}.announcements-banner-close{background:transparent;border:0;font-size:14px;line-height:1;color:var(--ink-3);cursor:pointer;padding:2px 6px}.announcements-banner-close:hover{color:var(--ink)}body[data-theme=dark] .announcements-banner{color:var(--accent);border-color:var(--accent)}body[data-theme=dark] .announcements-banner-badge{color:var(--bg)}.announcements-list{display:flex;flex-direction:column;gap:28px}.announcements-release{border-top:1px solid var(--line);padding-top:18px}.announcements-release-head{display:flex;align-items:center;gap:10px;margin-bottom:6px}.announcements-release-date{font-size:11px;color:var(--ink-3)}.announcements-version-badge{font-size:10px;background:var(--bg-2);border:1px solid var(--line);border-radius:999px;padding:1px 8px;color:var(--ink-3)}.announcements-release-title{font-size:18px;font-weight:600;margin:0 0 12px;color:var(--ink)}.announcements-entries{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.announcements-entry{display:flex;gap:10px;padding:8px 0}.announcements-entry-icon{font-size:16px;flex-shrink:0}.announcements-entry-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.announcements-entry-title{font-weight:500;color:var(--ink)}.announcements-entry-badge{font-size:10px;font-family:var(--font-mono);padding:1px 6px;border-radius:999px;border:1px solid var(--line)}.announcements-entry-badge.feedback{color:var(--accent-ink);background:var(--accent-soft);border-color:var(--accent)}.announcements-entry-badge.admin{color:var(--ink-3);background:var(--bg-2)}.announcements-entry-desc{font-size:12px;color:var(--ink-3);line-height:1.55;margin:4px 0 0}.feedback-fab{position:fixed;right:16px;bottom:64px;z-index:92;width:36px;height:36px;border-radius:50%;border:1px solid var(--line);background:var(--bg-raised);color:var(--ink-2);font-size:16px;cursor:pointer;box-shadow:0 4px 12px -4px #1e1a162e;transition:transform .12s,border-color .12s}.feedback-fab:hover{border-color:var(--ink-4);transform:translateY(-1px)}.feedback-panel{position:fixed;right:16px;bottom:108px;z-index:96;width:320px;background:var(--bg-raised);border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 32px -8px #1e1a1640;font-size:13px;color:var(--ink);overflow:hidden}.feedback-panel-head{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-bottom:1px solid var(--line)}.feedback-panel-close{background:transparent;border:0;font-size:18px;line-height:1;color:var(--ink-3);cursor:pointer;padding:0 4px}.feedback-panel-close:hover{color:var(--ink)}.feedback-panel-close:disabled{opacity:.4;cursor:not-allowed}.feedback-form{display:flex;flex-direction:column;gap:10px;padding:12px 14px}.feedback-cat-group{display:flex;gap:4px}.feedback-cat{flex:1;padding:6px 0;background:transparent;border:1px solid var(--line);border-radius:6px;font-size:12px;color:var(--ink-3);cursor:pointer}.feedback-cat.active{background:var(--accent-soft);color:var(--accent-ink);border-color:var(--accent)}body[data-theme=dark] .feedback-cat.active{color:var(--accent);border-color:var(--accent)}.feedback-message{width:100%;resize:vertical;padding:8px 10px;font-size:13px;font-family:inherit;background:var(--bg);border:1px solid var(--line);border-radius:6px;color:var(--ink)}.feedback-message:focus{outline:1px solid var(--accent);outline-offset:-1px}.feedback-counter{font-size:11px;color:var(--ink-3);text-align:right;font-family:var(--font-mono)}.feedback-counter.warn{color:#bd413f}.feedback-sent{display:flex;align-items:center;gap:12px;padding:18px 16px}.feedback-sent-check{width:32px;height:32px;border-radius:50%;background:#b5f8c2;color:oklch(.35 .15 150);display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:700;flex-shrink:0}.feedback-sent-sub{font-size:11px;color:var(--ink-3);margin:2px 0 0}.admin-row-feedback{flex-direction:row;align-items:flex-start}.feedback-row-message{font-size:13px;color:var(--ink);white-space:pre-wrap;line-height:1.55}.admin-row-meta{display:flex;gap:8px;font-size:12px;color:var(--ink-3);font-family:var(--font-mono)}.admin-role-select,.admin-input{padding:6px 10px;font-size:13px;background:var(--bg-raised);border:1px solid var(--line);border-radius:var(--radius);color:var(--ink)}.admin-input{flex:1;min-width:160px}.admin-role-select:disabled{opacity:.5;cursor:not-allowed}.admin-mod-row{display:flex;align-items:stretch;gap:8px;border-bottom:1px solid var(--line);padding:4px 0}.admin-logs{margin-top:28px}
