:root{--bg: #FFFBF3;--surface: #FFFFFF;--text: #2E2A26;--muted: #8A8078;--border: #EFE4D6;--primary: #FF7A33;--primary-dark: #E8631D;--primary-soft: #FFEEE0;--daily: #2E9E5B;--daily-soft: #E7F4EC;--fandom: #8B5CF6;--fandom-soft: #F1ECFE;--anime: #E0457B;--anime-soft: #FDE9F1;--meme: #0E8F9C;--meme-soft: #E0F4F6;--info: #2E7DD1;--info-soft: #E7F1FC;--danger: #E14848;--danger-soft: #FBE7E7;--radius: 14px}*{box-sizing:border-box}html,body{touch-action:manipulation}body{margin:0;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Apple SD Gothic Neo,Malgun Gothic,sans-serif;line-height:1.5}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer}.header{background:var(--surface);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:100}.header-inner{max-width:960px;margin:0 auto;padding:12px 20px;display:flex;align-items:center;gap:20px;flex-wrap:wrap}.brand{display:flex;align-items:center;gap:8px;font-weight:800;font-size:19px}.brand-icon{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;background:var(--primary);color:#fff;border-radius:50%;font-size:16px}.nav-panel{display:flex;align-items:center;gap:8px;flex:1;flex-wrap:wrap}.nav-explore{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.nav-divider{width:1px;height:20px;background:var(--border);flex-shrink:0}.admin-dropdown{position:relative}.admin-dropdown-toggle{color:var(--muted);background:var(--bg)}.admin-dropdown-toggle:hover,.admin-dropdown-toggle.open{border-color:var(--muted);color:var(--text)}.admin-dropdown-menu{position:absolute;top:calc(100% + 6px);left:0;display:flex;flex-direction:column;min-width:150px;padding:6px;background:var(--surface);border:1px solid var(--border);border-radius:10px;box-shadow:0 8px 24px #2e2a261f;z-index:110}.admin-dropdown-menu a{padding:9px 10px;border-radius:8px;font-size:14px;font-weight:600;color:var(--text)}.admin-dropdown-menu a:hover{background:var(--bg)}.admin-dropdown-menu a.nav-active{background:var(--primary-soft);color:var(--primary-dark)}.nav-toggle{display:none;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;border:1px solid var(--border);background:#fff;font-size:16px;margin-left:auto}.user-box{margin-left:auto}@media (max-width: 768px){.header-inner{gap:12px}.nav-toggle{display:inline-flex}.nav-panel{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:10px;padding:14px 20px 18px;background:var(--surface);border-bottom:1px solid var(--border);box-shadow:0 12px 24px #2e2a2614}.nav-panel.open{display:flex}.nav-explore{flex-direction:column;align-items:stretch}.nav-explore .btn,.nav-panel>.btn-primary{width:100%;text-align:center}.nav-divider{width:100%;height:1px}.admin-dropdown-toggle{width:100%;text-align:center}.admin-dropdown-menu{position:static;margin-top:6px;box-shadow:none;border:none;background:var(--bg)}}main{max-width:720px;margin:0 auto;padding:24px 20px 80px;min-height:60vh}.page-title{font-size:22px;margin:0 0 16px}.helper-text{color:var(--muted);font-size:13px}.btn{border-radius:10px;border:1px solid transparent;padding:10px 16px;font-size:14px;font-weight:600}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-dark)}.btn-outline{background:#fff;border-color:var(--border);color:var(--text)}.btn-outline:hover{border-color:var(--primary)}.nav-active{background:var(--primary-soft);border-color:var(--primary);color:var(--primary-dark)}.btn-danger{background:var(--danger);color:#fff}.btn-text{background:none;border:none;color:var(--primary-dark);font-weight:600;padding:8px 4px}.btn-sm{padding:6px 10px;font-size:12.5px}.btn-block{width:100%}.btn[disabled]{opacity:.45;cursor:not-allowed}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:18px;margin-bottom:14px}.post-list{display:flex;flex-direction:column;gap:4px}.post-row{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:7px 14px;display:flex;flex-direction:column;gap:1px}.post-row:hover{border-color:var(--primary)}.post-row-top{display:flex;align-items:center;gap:6px;min-width:0}.badge{display:inline-block;flex-shrink:0;font-size:10.5px;font-weight:700;padding:2px 7px;border-radius:999px;margin-right:6px}.post-row-top .badge{margin-right:0}.badge-humor{background:var(--primary-soft);color:var(--primary-dark)}.badge-daily{background:var(--daily-soft);color:var(--daily)}.badge-uncategorized{background:var(--border);color:var(--muted)}.badge-fandom{background:var(--fandom-soft);color:var(--fandom)}.badge-anime{background:var(--anime-soft);color:var(--anime)}.badge-info{background:var(--info-soft);color:var(--info)}.badge-meme{background:var(--meme-soft);color:var(--meme)}.meme-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}@media (max-width: 720px){.meme-grid{grid-template-columns:repeat(2,1fr)}}.meme-card{display:flex;flex-direction:column;min-width:0;background:var(--surface);border:1px solid var(--border);border-radius:12px;overflow:hidden;color:inherit;text-decoration:none}.meme-card:hover{border-color:var(--primary)}.meme-thumb{position:relative;aspect-ratio:1 / 1;background:var(--border);overflow:hidden}.meme-thumb img{display:block;width:100%;height:100%;object-fit:cover}.meme-thumb-empty{display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-size:32px}.meme-best-badge{position:absolute;top:6px;left:6px;margin:0}.meme-gif-badge{position:absolute;right:6px;bottom:6px;padding:2px 6px;border-radius:6px;background:#000000a6;color:#fff;font-size:11px;font-weight:700;line-height:1.3}.meme-card-body{display:flex;flex-direction:column;gap:4px;padding:8px 10px 10px}.meme-title{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:13px;font-weight:600;line-height:1.35;word-break:keep-all}.meme-title-read{opacity:.55}.meme-meta{color:var(--muted);font-size:12px}.badge-fandom-topic{background:var(--fandom-soft);color:var(--fandom);text-decoration:none}.badge-anime-topic{background:var(--anime-soft);color:var(--anime);text-decoration:none}.badge-best{background:var(--text);color:#fff}.notice-pinned-list{display:flex;flex-direction:column;gap:3px;margin-bottom:8px}.notice-pinned-row{display:flex;align-items:center;gap:6px;min-width:0;background:var(--primary-soft);border:1px solid #FFD9BD;border-radius:8px;padding:4px 14px}.notice-pinned-row:hover{border-color:var(--primary)}.notice-pinned-row .badge{margin-right:0}.notice-pinned-row .post-title{font-size:13px}.notice-pinned-date{flex-shrink:0;color:var(--muted);font-size:11.5px}.badge-pinned{background:var(--primary);color:#fff}.notice-list-item{display:block;text-decoration:none;color:inherit}.notice-list-item:hover{border-color:var(--primary)}.form-group .checkbox-field{display:flex;align-items:center;gap:8px;cursor:pointer;font-weight:400;font-size:14px}.checkbox-field input[type=checkbox]{width:16px;height:16px;accent-color:var(--primary)}.post-title{flex:1;min-width:0;font-weight:700;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.post-title-best{color:var(--primary-dark)}.post-title-read{color:var(--muted)}.comment-badge{flex-shrink:0;min-width:20px;padding:2px 6px;border-radius:5px;background:var(--primary);color:#fff;font-size:11px;font-weight:700;text-align:center}.post-meta{color:var(--muted);font-size:11.5px}.post-source{color:var(--muted);font-size:12.5px;margin-top:6px;word-break:break-all}.post-source a{color:var(--primary-dark)}.form{display:flex;flex-direction:column;gap:16px;max-width:480px}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{font-weight:700;font-size:13.5px}.input,.textarea,.select{border:1px solid var(--border);border-radius:10px;padding:11px 12px;font-size:14px;background:#fff;color:var(--text);font-family:inherit}.textarea{min-height:160px;resize:vertical}.field-error{color:var(--danger);font-size:13px;background:var(--danger-soft);padding:8px 10px;border-radius:8px}.form-actions{display:flex;gap:10px;flex-wrap:wrap}.empty-state{background:var(--surface);border:1px dashed var(--border);border-radius:var(--radius);padding:40px 20px;text-align:center}.list-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:16px;flex-wrap:wrap}.list-toolbar-left{flex:1;min-width:0}.list-toolbar .category-tabs,.list-toolbar .topic-filter-banner{margin-bottom:0}.list-search{display:flex;align-items:center;gap:6px;flex-shrink:0}.list-search-input{width:160px;padding:7px 10px;border:1px solid var(--border);border-radius:8px;font-size:14px;font-family:inherit}.list-search-input:focus{outline:none;border-color:var(--primary)}@media (max-width: 480px){.list-search{width:100%}.list-search-input{width:auto;flex:1}}.category-tabs{display:flex;gap:8px;margin-bottom:16px;flex-wrap:wrap}.category-tab{padding:6px 14px;border-radius:999px;border:1px solid var(--border);background:#fff;font-size:13px;font-weight:600;color:var(--muted)}.category-tab.active{background:var(--primary);border-color:var(--primary);color:#fff}.pagination{display:flex;gap:6px;justify-content:center;margin-top:20px}.page-btn{width:32px;height:32px;border-radius:8px;border:1px solid var(--border);background:#fff}.page-btn.active{background:var(--primary);border-color:var(--primary);color:#fff;font-weight:700}.page-btn[disabled]{opacity:.35;cursor:not-allowed}.page-arrow{font-weight:700;color:var(--muted)}.detail-content{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:18px;margin:14px 0;white-space:pre-wrap;min-height:80px}.vote-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:14px 0 16px}.vote-btn{display:inline-flex;align-items:center;gap:6px;background:#fff;border:1px solid var(--border);border-radius:999px;padding:9px 16px;font-size:14px;font-weight:700;color:var(--text);transition:border-color .15s ease,background .15s ease,color .15s ease}.vote-btn:hover:not([disabled]){border-color:var(--primary)}.vote-btn[disabled]{opacity:.5;cursor:not-allowed}.vote-btn.active-like{background:var(--primary-soft);border-color:var(--primary);color:var(--primary-dark)}.vote-btn.active-dislike{background:var(--danger-soft);border-color:var(--danger);color:var(--danger)}.comment-section{border-top:1px solid var(--border);padding-top:20px}.comment-section-title{font-size:16px;margin:0 0 12px}.comment-form{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.comment-reply-form{margin-top:12px}.comment-textarea{min-height:56px;font-size:13.5px;padding:8px 10px}.comment-list{display:flex;flex-direction:column;gap:2px}.comment-item{padding:10px 4px;border-bottom:1px solid var(--border)}.comment-item:last-child{border-bottom:none}.comment-reply{margin-left:22px;padding-left:12px;border-left:2px solid var(--border);border-bottom:none}.comment-head{display:flex;align-items:baseline;gap:8px;margin-bottom:4px}.comment-author{font-weight:700;font-size:13px}.comment-time{color:var(--muted);font-size:11.5px}.comment-content{margin:0 0 6px;font-size:13.5px;line-height:1.45;white-space:pre-wrap}.comment-deleted{color:var(--muted);font-style:italic}.comment-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.comment-vote-btn{background:none;border:1px solid var(--border);border-radius:999px;padding:2px 9px;font-size:11.5px;font-weight:600;color:var(--text)}.comment-vote-btn:hover:not([disabled]){border-color:var(--primary)}.comment-vote-btn[disabled]{opacity:.5;cursor:not-allowed}.comment-vote-btn.active-like{background:var(--primary-soft);border-color:var(--primary);color:var(--primary-dark)}.comment-vote-btn.active-dislike{background:var(--danger-soft);border-color:var(--danger);color:var(--danger)}.comment-link-btn{font-size:12px;padding:2px 4px;font-weight:600}.content-toolbar{display:flex;align-items:center;gap:8px;margin-bottom:6px;flex-wrap:wrap}.content-attachment{position:relative;margin:10px 0}.content-image{display:block;max-width:100%;width:auto;height:auto;border-radius:var(--radius);border:1px solid var(--border)}.content-video{display:block;width:100%;max-height:480px;border-radius:var(--radius);border:1px solid var(--border);background:#000}.content-video-portrait{width:auto;height:auto;max-width:100%;max-height:min(80vh,800px);margin:0 auto}.content-attachment-missing{margin:10px 0}.content-youtube{position:relative;width:100%;aspect-ratio:16 / 9;margin:10px 0;border-radius:var(--radius);overflow:hidden;border:1px solid var(--border);background:#000}.content-youtube-short{aspect-ratio:9 / 16;width:min(100%,45vh,450px);margin:10px auto}.content-youtube iframe{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:none}.attachment-remove-btn{position:absolute;top:10px;right:10px;width:26px;height:26px;border-radius:999px;border:none;background:#0000008c;color:#fff;font-size:16px;line-height:1;cursor:pointer}.attachment-remove-btn:hover{background:#000000bf}.attachment-strip{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.attachment-chip{position:relative;width:48px;height:48px}.attachment-chip-thumb{width:48px;height:48px;border-radius:8px;object-fit:cover;display:block;border:1px solid var(--border)}.attachment-chip-video{width:48px;height:48px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:18px;background:var(--bg);border:1px solid var(--border)}.attachment-chip-remove{position:absolute;top:-6px;right:-6px;width:18px;height:18px;border-radius:999px;border:none;background:#000000a6;color:#fff;font-size:12px;line-height:1;cursor:pointer;padding:0}.attachment-chip-remove:hover{background:#000000d9}.report-form{margin-top:10px;padding:12px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.report-list{display:flex;flex-direction:column;gap:12px}.report-card{padding:14px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.report-card-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:8px}.report-target-preview{font-size:14px;color:var(--text);background:var(--bg);border-radius:8px;padding:8px 10px;margin:6px 0;word-break:break-all}.severity-high{background:var(--danger-soft);color:var(--danger)}.severity-medium{background:var(--primary-soft);color:var(--primary-dark)}.severity-low,.severity-none{background:var(--daily-soft);color:var(--daily)}.severity-unknown{background:var(--border);color:var(--muted)}.legal-doc{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:24px 22px;font-size:14.5px;line-height:1.75}.legal-doc .page-title{margin-bottom:8px}.legal-heading{font-size:16px;margin:26px 0 8px}.legal-doc p{margin:8px 0}.legal-doc ol,.legal-doc ul{margin:8px 0;padding-left:22px}.legal-doc li{margin:4px 0}.footer{border-top:1px solid var(--border);padding:22px 20px 40px;text-align:center;color:var(--muted);font-size:13px}.footer-links{display:flex;justify-content:center;gap:18px;flex-wrap:wrap}.footer-links a:hover{color:var(--primary-dark);text-decoration:underline}.footer-strong{font-weight:700;color:var(--text)}.footer-copy{margin:10px 0 0}.consent-box{border:1px solid var(--border);border-radius:10px;background:#fff;padding:6px 14px}.consent-box label{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:14px}.consent-box input[type=checkbox]{width:16px;height:16px;accent-color:var(--primary);flex-shrink:0}.consent-all{padding:10px 0;border-bottom:1px solid var(--border);font-weight:700}.consent-item{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 0}.consent-required{color:var(--primary-dark);font-style:normal;font-weight:700;margin-right:2px}.consent-view{color:var(--muted);font-size:13px;text-decoration:underline;flex-shrink:0}.notice-box{background:var(--primary-soft);border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px;max-width:480px}.notice-box p{margin:0}.notice-box p+p{margin-top:6px}.topic-filter-banner{display:flex;align-items:center;justify-content:space-between;gap:10px;background:var(--fandom-soft);border:1px solid var(--fandom);border-radius:10px;padding:10px 14px;margin-bottom:16px;font-size:13.5px;font-weight:600;color:var(--text)}.topic-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px}.topic-card{display:flex;flex-direction:column;gap:4px;background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:14px;text-decoration:none;color:inherit}.topic-card:hover{border-color:var(--fandom)}.topic-card-name{font-weight:700;color:var(--fandom)}.topic-chip{display:flex;align-items:center;gap:10px}.topic-picker{position:relative;display:flex;flex-direction:column;gap:6px}.topic-suggestions{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:10;background:#fff;border:1px solid var(--border);border-radius:10px;box-shadow:0 6px 20px #2e2a261f;max-height:220px;overflow-y:auto;padding:6px;display:flex;flex-direction:column;gap:2px}.topic-suggestion-item{text-align:left;background:none;border:none;border-radius:8px;padding:8px 10px;font-size:13.5px;font-weight:600;color:var(--text)}.topic-suggestion-item:hover{background:var(--fandom-soft)}.topic-suggestion-create{color:var(--fandom)}.post-nav{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:10px;overflow:hidden;margin:16px 0 20px}.post-nav-item{display:flex;align-items:center;gap:10px;padding:10px 14px;background:var(--surface);text-decoration:none;color:inherit;border-bottom:1px solid var(--border);min-width:0}.post-nav-item:last-child{border-bottom:none}a.post-nav-item:hover{background:var(--bg)}.post-nav-label{flex-shrink:0;width:56px;font-size:12.5px;font-weight:700;color:var(--muted)}.post-nav-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}.post-nav-empty{cursor:default}@media (max-width: 768px){input:not([type=checkbox]):not([type=radio]):not([type=file]),textarea,select{font-size:16px}}.daily-message{display:flex;align-items:center;gap:12px;margin-bottom:10px}.daily-trigger{position:relative;flex-shrink:0;padding:0;background:none;border:0;border-radius:50%;line-height:0;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform .15s ease}.daily-trigger:hover{transform:scale(1.06)}.daily-trigger:active{transform:scale(.96)}.daily-trigger:focus-visible{outline:3px solid var(--primary);outline-offset:3px}.daily-mascot{width:56px;height:56px;animation:daily-bob 3.2s ease-in-out infinite}.daily-hint{position:absolute;top:-4px;right:-6px;display:flex;align-items:center;justify-content:center;width:20px;height:20px;background:var(--primary);border:2px solid #fff;border-radius:50%;color:#fff;font-size:12px;font-weight:800;line-height:1;animation:daily-hint-pop 1.6s ease-in-out infinite}.daily-bubble{position:relative;flex:1;min-width:0;padding:8px 12px;background:#fff;border:2px solid var(--primary);border-radius:12px;animation:daily-bubble-in .18s ease-out}.daily-bubble:before{content:"";position:absolute;left:-8px;top:50%;width:12px;height:12px;background:#fff;border-left:2px solid var(--primary);border-bottom:2px solid var(--primary);transform:translateY(-50%) rotate(45deg)}.daily-message-label{display:block;margin-bottom:2px;color:var(--primary-dark);font-size:11.5px;font-weight:700}.daily-message-text{margin:0;font-size:14px;line-height:1.5;overflow-wrap:anywhere}.daily-message-tip{display:block;margin-top:6px;color:var(--muted);font-size:11px}.daily-close{position:absolute;top:2px;right:6px;padding:0 4px;background:none;border:0;color:var(--muted);font-size:18px;line-height:1.2;cursor:pointer}.daily-close:hover{color:var(--primary-dark)}@keyframes daily-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@keyframes daily-hint-pop{0%,to{transform:scale(1)}50%{transform:scale(1.18)}}@keyframes daily-bubble-in{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion: reduce){.daily-mascot,.daily-hint,.daily-bubble{animation:none}}@media (min-width: 1120px){.daily-message{position:fixed;top:100px;left:calc(50% - 544px);width:170px;margin-bottom:0;flex-direction:column;gap:14px;z-index:5}.daily-mascot{width:104px;height:104px}.daily-bubble{flex:none;width:100%;padding:10px 12px}.daily-bubble:before{left:50%;top:-8px;border-left:2px solid var(--primary);border-top:2px solid var(--primary);border-bottom:0;transform:translate(-50%) rotate(45deg)}.daily-message-text{line-height:1.6}}.neighbor-list{margin-top:36px;padding-top:20px;border-top:1px solid var(--border, #e5e5e5)}.neighbor-list-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:10px}.neighbor-list-title{font-size:1.05rem;margin:0}.post-row-current{background:var(--primary-soft);box-shadow:inset 3px 0 0 var(--primary)}.neighbor-current-mark{color:var(--primary)}.meme-card-current{outline:3px solid var(--primary);outline-offset:-3px;border-radius:8px}@media (max-width: 720px){.neighbor-list{margin-top:28px}}
