.detail-page{position:relative;padding:calc(var(--nav-height) + 40px) 0 80px;min-height:100vh}.detail-bg{position:fixed;inset:0;pointer-events:none;z-index:0}.detail-glow{position:absolute;top:-180px;left:50%;transform:translate(-50%);width:700px;height:500px;background:radial-gradient(ellipse,rgba(77,159,255,.06) 0%,transparent 70%)}.detail-glow--warm{top:auto;bottom:-200px;left:30%;width:600px;height:400px;background:radial-gradient(ellipse,rgba(255,107,77,.04) 0%,transparent 70%)}.detail-grain{position:absolute;inset:0;opacity:.02;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-repeat:repeat;background-size:256px}.container{position:relative;z-index:1}.detail-loading,.not-found{text-align:center;padding:80px 0;color:var(--text-dim)}.not-found a{color:var(--accent)}.back-link{display:inline-flex;align-items:center;gap:6px;color:var(--text-dim);font-family:var(--font-mono);font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;text-decoration:none;margin-bottom:32px;transition:color var(--transition-fast)}.back-link:hover{color:var(--accent)}.detail-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-xl, 20px);overflow:hidden;margin-bottom:24px;transition:border-color var(--transition-base)}.detail-card:hover{border-color:var(--border-hover)}.detail-layout{display:grid;grid-template-columns:1.2fr 1fr;align-items:stretch}.detail-preview{background:#07070c;display:flex;align-items:center;justify-content:center;padding:32px;border-right:1px solid var(--border)}.widget-preview-frame{border-radius:var(--radius-lg);overflow:hidden;border:1px solid rgba(255,255,255,.06);background:#0a0a0f;aspect-ratio:16 / 10;width:100%;box-shadow:0 8px 32px #0006}.preview-iframe{width:100%;height:100%;border:none;display:block}.product-info{padding:36px 32px;display:flex;flex-direction:column;gap:16px}.type-badge{display:inline-flex;align-items:center;padding:4px 14px;font-family:var(--font-mono);font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;border-radius:100px;width:-moz-fit-content;width:fit-content}.type-badge--widget{background:#22c55e14;color:var(--color-success);border:1px solid rgba(34,197,94,.15)}.product-name{font-family:var(--font-heading);font-weight:800;font-size:clamp(1.6rem,4vw,2.4rem);line-height:1.1;letter-spacing:-.03em;margin:0;color:var(--accent)}.product-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-family:var(--font-mono);font-size:.78rem;color:var(--text-dim)}.meta-sep{opacity:.3}.author-text{color:var(--accent);font-weight:500}.ratings-area{padding:0}.d-stars{display:flex;align-items:center;gap:2px}.star-btn,.star-static{display:inline-flex;vertical-align:middle;transition:transform var(--transition-fast)}.star-btn{cursor:pointer}.star-btn:hover{transform:scale(1.2)}.star-static{cursor:default}.star-filled{color:#fbbf24}.star-empty{color:var(--text-dim)}.star-label{color:var(--text-dim);font-family:var(--font-mono);font-size:.78rem;margin-left:8px}.product-desc{color:var(--text-secondary);font-size:.95rem;line-height:1.7;margin:0}.download-btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:14px 24px;background:var(--accent);color:#fff;border:none;border-radius:10px;font-family:var(--font-mono);font-size:.9rem;font-weight:500;letter-spacing:.02em;cursor:pointer;transition:all .2s;box-shadow:0 0 24px #4d9fff33;text-decoration:none}.download-btn:hover{background:var(--accent-hover);color:#fff;box-shadow:0 0 36px #4d9fff4d;transform:translateY(-1px)}.report-btn{background:none;border:none;color:var(--text-dim);font-family:var(--font-mono);font-size:.72rem;cursor:pointer;display:inline-flex;align-items:center;gap:4px;padding:0;margin-left:auto;transition:color .15s}.report-btn:hover{color:var(--accent-warm)}.report-form-inline{display:inline-flex;align-items:center;gap:4px;margin-left:auto;flex-wrap:wrap}.report-form-label{font-family:var(--font-mono);font-size:.68rem;color:var(--text-dim)}.report-reason-btn{padding:3px 10px;border-radius:100px;background:#ffffff0a;border:1px solid var(--border);color:var(--text-secondary);font-size:.66rem;font-family:var(--font-mono);cursor:pointer;transition:all .12s}.report-reason-btn:hover{border-color:var(--accent-warm);color:var(--accent-warm);background:#ff6b4d0f}.report-cancel-btn{padding:3px 8px;background:none;border:none;color:var(--text-dim);font-size:.66rem;font-family:var(--font-mono);cursor:pointer}.report-done{font-family:var(--font-mono);font-size:.68rem;color:var(--text-dim)}.comment-flag{font-family:var(--font-mono);font-size:.66rem;color:var(--text-dim);cursor:pointer;margin-left:auto;opacity:0;transition:opacity .15s,color .15s}.comment-item:hover .comment-flag{opacity:1}.comment-flag:hover{color:var(--accent-warm)}.tags-wrap{display:flex;flex-wrap:wrap;gap:6px}.stat-row{display:flex;align-items:center;justify-content:space-between;padding-top:8px;border-top:1px solid var(--border);margin-top:auto}.detail-tag{display:inline-block;padding:4px 12px;font-family:var(--font-mono);font-size:.72rem;border-radius:100px;background:#ffffff08;border:1px solid var(--border);color:var(--text-secondary);text-decoration:none;transition:all var(--transition-fast)}.detail-tag:hover{border-color:var(--accent);color:var(--accent);background:#4d9fff0d}.stat-row{font-family:var(--font-mono);font-size:.72rem;color:var(--text-dim)}.bottom-tabs{border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden;background:#ffffff05}.btab-bar{display:flex;border-bottom:1px solid var(--border)}.btab{padding:12px 24px;font-family:var(--font-mono);font-size:.78rem;background:none;border:none;color:var(--text-dim);cursor:pointer;transition:all .15s;letter-spacing:.02em;border-bottom:2px solid transparent;margin-bottom:-1px}.btab:hover{color:var(--text-secondary)}.btab.active{color:var(--accent);border-bottom-color:var(--accent)}.btab-content{padding:24px}.install-steps{padding-left:20px;color:var(--text-secondary);font-size:.88rem;line-height:1.7;list-style:none;counter-reset:step}.install-steps li{counter-increment:step;padding:6px 0;display:flex;align-items:baseline;gap:10px}.install-steps li:before{content:counter(step);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:20px;height:20px;border-radius:50%;background:#4d9fff1a;color:var(--accent);font-family:var(--font-mono);font-size:.68rem;font-weight:600}.install-steps code{font-family:var(--font-mono);background:#ffffff0f;padding:2px 8px;border-radius:4px;font-size:.85em;color:var(--accent)}.install-steps strong{color:var(--text-primary)}.comments-list{color:var(--text-dim);font-size:.9rem}.comments-empty{color:var(--text-dim);font-size:.9rem;padding:24px 0}.comment-form{margin-bottom:24px}.comment-textarea{width:100%;padding:14px 16px;background:#0000004d;border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-primary);font-size:.9rem;font-family:var(--font-display);resize:vertical;outline:none;transition:border-color .2s,box-shadow .2s;line-height:1.5}.comment-textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px #4d9fff14}.comment-textarea::-moz-placeholder{color:var(--text-dim)}.comment-textarea::placeholder{color:var(--text-dim)}.comment-form-footer{display:flex;justify-content:space-between;align-items:center;margin-top:10px}.comment-counter{font-family:var(--font-mono);font-size:.72rem;color:var(--text-dim)}.comment-submit{padding:8px 20px;background:var(--accent);color:#fff;border:none;border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:.8rem;font-weight:500;cursor:pointer;transition:all .2s}.comment-submit:hover{background:var(--accent-hover);transform:translateY(-1px)}.comment-error{color:#ef4444;font-family:var(--font-mono);font-size:.78rem;margin-top:6px;min-height:1em}.comment-signin{color:var(--text-dim);font-size:.9rem;margin-bottom:20px}.comment-signin a{color:var(--accent);font-weight:500}.comment-item{padding:18px 0;border-bottom:1px solid var(--border)}.comment-item:last-child{border-bottom:none}.comment-header{display:flex;align-items:baseline;gap:10px;margin-bottom:6px}.comment-author{color:var(--text-primary);font-size:.88rem;font-weight:600}.comment-date{font-family:var(--font-mono);color:var(--text-dim);font-size:.7rem}.comment-body{color:var(--text-secondary);font-size:.9rem;line-height:1.65}.owner-toolbar{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:var(--bg-card);border:1px solid var(--border);border-radius:10px;margin-bottom:24px}.owner-badge{font-family:var(--font-mono);font-size:.7rem;color:var(--color-success);text-transform:uppercase;letter-spacing:.06em}.owner-actions{display:flex;gap:8px}.owner-btn{padding:5px 14px;background:none;border:1px solid var(--border);border-radius:6px;font-family:var(--font-mono);font-size:.72rem;color:var(--text-secondary);cursor:pointer;transition:all .15s}.owner-btn:hover{border-color:var(--accent);color:var(--accent)}.owner-btn-danger:hover{border-color:#ef4444;color:#ef4444}.edit-inline{display:flex;flex-direction:column;gap:8px}.edit-textarea{width:100%;padding:10px 12px;background:#0000004d;border:1px solid var(--border);border-radius:8px;color:var(--text-primary);font-size:.88rem;font-family:var(--font-display);resize:vertical;outline:none;line-height:1.5}.edit-textarea:focus{border-color:var(--accent)}.edit-actions{display:flex;gap:6px}.more-header{font-family:var(--font-mono);font-size:.7rem;color:var(--accent);text-transform:uppercase;letter-spacing:.08em;margin-bottom:14px}.more-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.more-grid>*{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;overflow:hidden;transition:border-color .2s,transform .2s}.more-grid>*:hover{border-color:var(--border-hover);transform:translateY(-2px);box-shadow:0 8px 24px #00000059}.more-browse{text-align:center;margin-top:16px}.more-link{font-family:var(--font-mono);font-size:.78rem;color:var(--accent);text-decoration:none}.more-link:hover{text-decoration:underline}#more-section{margin-top:32px}@media(max-width:900px){.detail-layout{grid-template-columns:1fr}.detail-preview{border-right:none;border-bottom:1px solid var(--border);padding:24px}.product-info{padding:28px 24px}.more-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.detail-page{padding-top:calc(var(--nav-height) + 24px)}.product-name{font-size:1.5rem}.product-meta{font-size:.72rem;gap:6px}.detail-preview{padding:16px}.product-info{padding:24px 20px}}@media(prefers-reduced-motion:reduce){.detail-glow{display:none}.download-btn:hover,.star-btn:hover,.comment-submit:hover{transform:none}}
