:root{--bg:#f3efe6;--bg-deep:#e7e0d2;--ink:#1c1914;--ink-soft:#5c564c;--accent:#0f6b5c;--accent-soft:#d7ebe5;--line:#1c19141f;--card:#fffdf8;--shadow:0 18px 40px #281e0a14;--radius:18px;--font:-apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;--display:"Songti SC", "Noto Serif SC", "Source Han Serif SC", STSong, Georgia, serif;--bottom-nav-content-h:3.15rem}*{box-sizing:border-box}html,body,#root{min-height:100%}body{font-family:var(--font);color:var(--ink);background:radial-gradient(1200px 600px at 10% -10%, #f7f1e2 0%, transparent 55%), radial-gradient(900px 500px at 100% 0%, #dceee8 0%, transparent 45%), linear-gradient(180deg, var(--bg), var(--bg-deep));background-attachment:fixed;margin:0}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}.app-shell{flex-direction:column;min-height:100vh;display:flex}.topbar{z-index:20;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);background:#f3efe6d1;justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 1.4rem;display:flex;position:sticky;top:0}.brand{align-items:center;gap:.45rem;display:flex}.brand-icon{border-radius:7px;flex-shrink:0;box-shadow:0 1px #1c19140f}.brand-mark{font-family:var(--display);letter-spacing:.02em;font-size:1.7rem;line-height:1}.brand-sub{color:var(--ink-soft);font-size:.85rem;line-height:1}.nav{gap:.35rem;display:flex}.nav a{color:var(--ink-soft);border-radius:999px;padding:.45rem .85rem}.nav a.active{background:var(--ink);color:#f7f2e8}.ad-slots{z-index:15;width:min(1200px,100% - 2.8rem);margin:.35rem auto 0}.ad-slots-row{flex-wrap:wrap;justify-content:flex-end;gap:.4rem;display:flex}.ad-slot-trigger{border:1px solid var(--line);background:color-mix(in srgb, var(--card) 88%, transparent);color:var(--ink-soft);cursor:pointer;border-radius:999px;align-items:center;gap:.35rem;padding:.2rem .55rem;font-size:.78rem;line-height:1.3;transition:color .15s,border-color .15s,background .15s;display:inline-flex}.ad-slot-trigger:hover,.ad-slot-trigger.is-open{color:var(--accent,#0f6b5c);border-color:color-mix(in srgb, var(--accent,#0f6b5c) 35%, var(--line));background:#fff}.ad-slot-trigger-text{text-overflow:ellipsis;white-space:nowrap;max-width:14rem;overflow:hidden}.ad-slot-backdrop{z-index:80;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#1c19147a;place-items:center;padding:1.25rem;animation:.16s ease-out ad-slot-in;display:grid;position:fixed;inset:0}.ad-slot-dialog{background:var(--card,#fffdf8);border:1px solid var(--line);border-radius:16px;width:min(100%,520px);max-height:min(88vh,720px);overflow:auto;box-shadow:0 18px 48px #1c191438}.ad-slot-dialog-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:.75rem;padding:.75rem .9rem;display:flex}.ad-slot-dialog-head h2{color:var(--ink);margin:0;font-size:1rem;font-weight:600}.ad-slot-dialog-close{width:2rem;height:2rem;color:var(--ink-soft);cursor:pointer;background:0 0;border:none;border-radius:999px;flex-shrink:0;font-size:1.35rem;line-height:1}.ad-slot-dialog-close:hover{background:color-mix(in srgb, var(--line) 70%, transparent);color:var(--ink)}@keyframes ad-slot-in{0%{opacity:0}to{opacity:1}}.ad-slot-media{cursor:pointer;background:0 0;border:none;width:100%;margin:0;padding:.75rem;line-height:0;display:block}.ad-slot-media:not(button){cursor:default}.ad-slot-img{object-fit:contain;object-position:center;border-radius:10px;width:100%;height:auto;max-height:min(70vh,560px);display:block}.bottom-nav{display:none}.main{flex:1;width:min(1200px,100% - 2rem);margin:0 auto;padding:1.5rem 0 3rem}.footer{text-align:center;color:var(--ink-soft);border-top:1px solid var(--line);padding:1.2rem;font-size:.9rem}.page h1{font-family:var(--display);margin:0 0 .4rem;font-size:clamp(1.8rem,4vw,2.6rem);font-weight:400}.lead,.home-intro p{color:var(--ink-soft);margin:0}.home-intro{margin-bottom:1.4rem}.module-label{letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin:0 0 .35rem;font-size:.78rem}.module-link{color:var(--accent);margin-top:.75rem;font-size:.95rem;display:inline-block}.intro-actions{flex-wrap:wrap;align-items:center;gap:.6rem;margin-top:.9rem;display:flex}.share-toast{color:var(--accent);font-size:.85rem}.mp-share-hint{color:var(--ink-soft);margin:.65rem 0 0;font-size:.82rem;line-height:1.45}.work-desc{color:var(--ink-soft);margin:.35rem 0 .8rem;font-size:.95rem;line-height:1.55}.link-btn{justify-content:center;align-items:center;display:inline-flex}.toolbar{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.8rem 1rem;margin-bottom:.75rem;display:flex}.tag-row-wrap{flex:280px;min-width:0;overflow:hidden}.tag-row{scrollbar-width:none;-webkit-overflow-scrolling:touch;flex-wrap:nowrap;gap:.4rem;padding-bottom:.15rem;display:flex;overflow-x:auto}.tag-row::-webkit-scrollbar{display:none}.tag-row .chip{flex-shrink:0}.toolbar-actions{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.sort-row{gap:.35rem;display:flex}.list-meta{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem 1rem;margin-bottom:1rem;display:flex}.list-meta-count{color:var(--ink-soft);margin:0;font-size:.9rem}.list-meta-count strong{color:var(--ink);font-weight:600}.list-meta-clear{color:var(--accent);cursor:pointer;text-underline-offset:2px;background:0 0;border:none;padding:0;font-size:.88rem;text-decoration:underline}.list-meta-main{flex-wrap:wrap;align-items:center;gap:.35rem 1.25rem;display:flex}.list-meta-hint{color:var(--ink-soft);margin:0;font-size:.85rem}.community-stats{color:var(--ink-soft);margin:0;font-size:.88rem}.community-stats strong{color:var(--ink);font-weight:600}.community-stats-pending{color:var(--accent);text-underline-offset:2px;text-decoration:underline}.moderation-banner{border-radius:10px;margin:0 0 1rem;padding:.75rem 1rem;font-size:.92rem;line-height:1.5}.moderation-banner.pending{color:#7a5a12;background:#d4a0171f;border:1px solid #d4a01759}.moderation-banner.rejected{color:#8a2424;background:#b4282814;border:1px solid #b4282847}.moderation-flag{color:#7a5a12;font-weight:600}.moderation-reason{max-width:100%;color:var(--ink-soft)}.chip{border:1px solid var(--line);color:var(--ink-soft);cursor:pointer;background:#fffdf8b3;border-radius:999px;padding:.35rem .8rem}.chip.active{background:var(--accent);border-color:var(--accent);color:#f4fffb}.search{gap:.4rem;display:flex}.search input,.publish-form input,.publish-form textarea,.auth-form input{border:1px solid var(--line);background:var(--card);border-radius:12px;width:100%;padding:.65rem .8rem}.search button,.btn-primary,.btn-ghost{cursor:pointer;border:none;border-radius:12px;padding:.65rem 1rem}.btn-primary{background:var(--accent);color:#f4fffb}.btn-primary.wide{width:100%}.btn-ghost{border:1px solid var(--line);color:var(--ink);background:0 0}.masonry{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.9rem;display:grid}.masonry-dimmed{opacity:.55;pointer-events:none;transition:opacity .2s}.work-card{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);border:1px solid var(--line);transition:transform .2s,box-shadow .2s;display:block;overflow:hidden}.work-card:hover{transform:translateY(-3px);box-shadow:0 22px 44px #281e0a1f}.work-card-media{aspect-ratio:3/4;background:var(--bg-deep);overflow:hidden}.work-card-media img{object-fit:cover;width:100%;height:100%;display:block}.ai-image-wrap{display:block;position:relative}.ai-image-wrap--inline{vertical-align:bottom;max-width:100%;display:inline-block}.comment-md .ai-image-wrap--inline{max-width:min(100%,520px)}.ai-generated-mark{z-index:1;color:#ffffffeb;pointer-events:none;letter-spacing:.04em;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#00000073;border-radius:4px;padding:2px 7px;font-size:10px;font-weight:500;line-height:1.35;position:absolute;bottom:6px;right:6px}.work-card-media .ai-generated-mark,.mine-card-media .ai-generated-mark{padding:2px 5px;font-size:9px;bottom:5px;right:5px}.detail-media-frame .ai-generated-mark{padding:3px 8px;font-size:11px;bottom:10px;right:10px}.work-card-body{padding:.6rem .7rem .75rem}.work-card-title{-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:.95rem;font-weight:600;line-height:1.35;display:-webkit-box;overflow:hidden}.work-card-sub{color:var(--ink-soft);flex-wrap:wrap;align-items:center;gap:.35rem .5rem;margin-top:.35rem;font-size:.8rem;display:flex}.work-card-author{color:var(--ink);font-weight:500}.work-card-sep{color:var(--ink-soft);opacity:.6}.work-card-sub .likes{margin-left:auto}.work-card-meta{justify-content:space-between;align-items:center;gap:.5rem;padding:.55rem .7rem .7rem;display:flex}.work-card-body .tags{margin-top:.45rem}.tags{flex-wrap:wrap;gap:.3rem;display:flex}.tag{background:var(--accent-soft);color:var(--accent);border-radius:999px;padding:.15rem .45rem;font-size:.75rem}.likes{color:var(--ink-soft);white-space:nowrap;font-size:.85rem}.state{text-align:center;color:var(--ink-soft);padding:2rem 0}.state.error{color:#9b2c2c}.state.ok{color:var(--accent)}.state.soft{font-size:.88rem;line-height:1.45}.publish-form .state{text-align:left;padding:.15rem 0}.pager{justify-content:center;align-items:center;gap:1rem;margin-top:1.5rem;display:flex}.pager button{border:1px solid var(--line);background:var(--card);cursor:pointer;border-radius:10px;padding:.45rem .9rem}.pager button:disabled{opacity:.4;cursor:not-allowed}.load-more{justify-content:center;margin-top:1.25rem;display:flex}.load-more-btn{min-width:12rem}.work-card-skeleton{background:var(--card);border-radius:var(--radius);border:1px solid var(--line);padding:.65rem}.work-card-skeleton-media{aspect-ratio:3/4;background:linear-gradient(90deg, var(--bg-deep), #fffdf8e6, var(--bg-deep));background-size:200% 100%;border-radius:12px;animation:1.2s ease-in-out infinite list-shimmer}.work-card-skeleton-line{background:linear-gradient(90deg, var(--bg-deep), #fffdf8e6, var(--bg-deep));background-size:200% 100%;border-radius:999px;width:55%;height:.7rem;margin-top:.65rem;animation:1.2s ease-in-out infinite list-shimmer}.work-card-skeleton-line-lg{width:82%;height:.85rem}.work-card-skeleton-tags{gap:.4rem;margin-top:.55rem;display:flex}.work-card-skeleton-tags span{background:linear-gradient(90deg, var(--bg-deep), #fffdf8e6, var(--bg-deep));background-size:200% 100%;border-radius:999px;width:2.8rem;height:.65rem;animation:1.2s ease-in-out infinite list-shimmer}@keyframes list-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.back{color:var(--ink-soft);margin-bottom:1rem;display:inline-block}.detail-grid{grid-template-columns:1.2fr .8fr;align-items:start;gap:1.4rem;display:grid}.detail-media{border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.detail-media-frame{aspect-ratio:9/16;width:100%;max-height:min(75vh,720px);position:relative}.detail-media-skeleton{border-radius:inherit;position:absolute;inset:0}.detail-media-frame img{opacity:0;width:100%;height:auto;transition:opacity .28s;display:block}.detail-media-frame img.is-visible{opacity:1}.detail-media-frame.is-loaded{aspect-ratio:auto;max-height:none}.detail-media-frame.is-loaded img{border-radius:inherit}.skeleton-shimmer{background:linear-gradient(90deg, var(--bg-deep), #fffdf8e6, var(--bg-deep));background-size:200% 100%;animation:1.2s ease-in-out infinite list-shimmer}.detail-media-skeleton.skeleton-shimmer{background:linear-gradient(90deg,#161616,#2b2b2b,#161616) 0 0/200% 100%}.detail-page-skeleton .detail-skeleton-back{border-radius:999px;width:5.5rem;height:.95rem;margin-bottom:1rem}.detail-skeleton-line{border-radius:999px;height:.85rem;margin-bottom:.65rem}.detail-skeleton-line-title{width:72%;height:1.35rem;margin-bottom:.85rem}.detail-skeleton-line-md{width:92%}.detail-skeleton-line-sm{width:38%;margin-top:.2rem;margin-bottom:1rem}.detail-skeleton-tags{flex-wrap:wrap;gap:.45rem;margin-bottom:.85rem;display:flex}.detail-skeleton-tags span{border-radius:999px;width:3rem;height:1.35rem}.detail-skeleton-block{border-radius:14px;height:5.5rem;margin-bottom:.75rem}.detail-skeleton-block-short{height:3.2rem}.detail-skeleton-actions{grid-template-columns:1fr 1fr;gap:.55rem;margin-top:.5rem;display:grid}.detail-skeleton-actions span{border-radius:999px;height:2.35rem}.detail-skeleton-actions span:first-child{grid-column:1/-1}.detail-side h1{margin-bottom:.5rem}.author{color:var(--ink-soft);margin:.6rem 0 1rem}.prompt-block{border:1px solid var(--line);background:#fffdf8e6;border-radius:14px;margin-bottom:1rem;padding:.9rem}.prompt-head{justify-content:space-between;align-items:center;gap:.6rem;margin-bottom:.5rem;display:flex}.prompt-block h2,.params h2{margin:0;font-size:.95rem}.prompt-block pre{white-space:pre-wrap;word-break:break-word;color:var(--ink);margin:0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.86rem;line-height:1.5}.params ul{color:var(--ink-soft);margin:.4rem 0 0;padding-left:1.1rem}.detail-actions{flex-wrap:wrap;gap:.6rem;margin-top:1rem;display:flex}.publish-page{width:100%;max-width:960px;margin-left:auto;margin-right:auto}.profile-page,.auth-page,.feedback-page{max-width:720px}.auth-tabs{gap:.4rem;margin:1.2rem 0 .4rem;display:flex}.code-row{grid-template-columns:1fr auto;align-items:stretch;gap:.5rem;display:grid}.code-row input{min-width:0}.btn-secondary{appearance:none;border:1px solid var(--line);color:var(--ink);font:inherit;cursor:pointer;white-space:nowrap;background:#fffdf8d9;border-radius:999px;padding:.55rem 1rem;font-weight:600}.btn-secondary:disabled{opacity:.55;cursor:not-allowed}.upload-meta{color:var(--ink-soft);margin:-.4rem 0 0;font-size:.88rem}.progress{background:#1c191414;border-radius:999px;height:8px;overflow:hidden}.progress-bar{background:linear-gradient(90deg, var(--accent), #c46b3a);height:100%;transition:width .2s}.auth-form{gap:1rem;margin-top:1rem;display:grid}.auth-form label{color:var(--ink-soft);gap:.4rem;display:grid}.auth-hint{color:var(--ink-soft);margin-top:1.2rem;font-size:.9rem}.auth-hint a{color:var(--accent);margin-left:.4rem;text-decoration:underline}.profile-head{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.profile-section{margin-top:1.8rem}.profile-section h2{font-family:var(--display);margin:0 0 .8rem;font-size:1.35rem;font-weight:400}.mine-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.8rem;display:grid}.mine-card{color:var(--ink-soft);gap:.4rem;font-size:.85rem;display:grid}.mine-card-wrap{justify-items:start;gap:.35rem;display:grid}.mine-card img{aspect-ratio:1;object-fit:cover;border:1px solid var(--line);background:var(--card);border-radius:12px;width:100%}.mine-card-media{border-radius:12px;width:100%;overflow:hidden}.mine-card-media img{aspect-ratio:1;object-fit:cover;border:1px solid var(--line);background:var(--card);border-radius:12px;width:100%}.text-btn.danger,.btn-ghost.danger{color:#a33a2d}.ops-page{max-width:960px}.ops-tabs{flex-wrap:wrap}.ops-meta{color:var(--ink-soft);margin:.8rem 0 1rem;font-size:.92rem}.ops-table-wrap{border:1px solid var(--line);background:#fffdf8b8;border-radius:14px;overflow-x:auto}.ops-table{border-collapse:collapse;width:100%;font-size:.9rem}.ops-table th,.ops-table td{text-align:left;border-bottom:1px solid var(--line);white-space:nowrap;padding:.7rem .85rem}.ops-table th{color:var(--ink-soft);font-weight:600}.ops-table tr:last-child td{border-bottom:none}.ops-work-grid{margin-top:.4rem}.ops-work-card{gap:.35rem;display:grid}.ops-work-meta{color:var(--ink-soft);flex-wrap:wrap;gap:.35rem .7rem;font-size:.78rem;display:flex}.ops-work-meta .moderation-flag.status-approved{color:var(--accent)}.ops-work-meta .moderation-flag.status-rejected{color:#a33a2d}.ops-dialog-backdrop{z-index:80;background:#1c191473;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.ops-dialog{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);width:min(100%,640px);max-height:min(92vh,900px);box-shadow:var(--shadow);padding:1.1rem 1.2rem 1.3rem;overflow:auto}.ops-dialog-head{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.85rem;display:flex}.ops-dialog-head h2{font-family:var(--display);margin:0;font-size:1.35rem;font-weight:400}.ops-dialog-close{appearance:none;color:var(--ink-soft);cursor:pointer;background:0 0;border:0;border-radius:999px;width:2rem;height:2rem;font-size:1.35rem;line-height:1}.ops-dialog-close:hover{color:var(--ink);background:#1c191414}.ops-edit-form{gap:.85rem;display:grid}.ops-edit-form label{color:var(--ink-soft);gap:.35rem;font-size:.92rem;display:grid}.ops-edit-form input,.ops-edit-form textarea,.ops-edit-form select{width:100%}.ops-dialog-actions{justify-content:flex-end;gap:.65rem;margin-top:.35rem;display:flex}.ops-actions{flex-wrap:wrap;gap:.6rem;display:flex}.ops-data-panel{border:1px solid var(--border);background:var(--surface);border-radius:12px;margin:1.5rem 0 2rem;padding:1rem 1.1rem}.ops-data-panel h2{margin:0 0 .35rem;font-size:1.05rem}.ops-data-actions{flex-wrap:wrap;gap:.6rem;margin-top:.75rem;display:flex}.ops-import-label{cursor:pointer}.ops-import-label.disabled{opacity:.6;pointer-events:none}.ops-data-msg{color:var(--ink-soft);margin:.75rem 0 0;font-size:.92rem}.ops-data-msg.error{color:#c0392b}.tool-page .tool-head{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.5rem;display:flex}.tool-page .tool-head h1{margin:0}.tool-gate label{color:var(--ink-soft);margin-bottom:.4rem;font-size:.9rem;display:block}.tool-gate input{width:100%;max-width:420px;margin-bottom:.75rem}.tool-drop{border:1px dashed var(--line);text-align:center;color:var(--ink-soft);background:#fffdf873;border-radius:12px;margin-top:.85rem;padding:1.4rem 1rem;font-size:.92rem}.tool-thumb{object-fit:cover;background:#eee;border-radius:8px;width:56px;height:56px;display:block}.tool-mime{text-transform:uppercase;background:#0000000f;border-radius:6px;padding:.2rem .45rem;font-size:.75rem;display:inline-block}.tool-detail{max-width:min(720px,96vw);max-height:90vh;overflow:auto}.tool-detail-body{padding:0 1.1rem 1.1rem}.tool-detail-body label{color:var(--ink-soft);margin:.65rem 0 .35rem;font-size:.9rem;display:block}.tool-detail-body select,.tool-detail-body textarea{box-sizing:border-box;width:100%}.tool-detail-img{object-fit:contain;background:#111;border-radius:10px;max-width:100%;max-height:280px;margin:0 auto 1rem;display:block}.tool-dl{gap:.55rem;margin:0 0 1rem;display:grid}.tool-dl>div{grid-template-columns:88px 1fr;gap:.5rem;font-size:.9rem;display:grid}.tool-dl dt{color:var(--ink-soft);margin:0}.tool-dl dd{word-break:break-all;margin:0}.tool-json{color:#d7e0ea;white-space:pre-wrap;word-break:break-word;background:#111;border-radius:10px;max-height:360px;margin:.75rem 0 0;padding:.85rem 1rem;font-size:.78rem;line-height:1.45;overflow:auto}.tool-help-list{margin:0 0 1rem;padding:0 1.1rem 0 2rem;line-height:1.7}.tool-help-list kbd{border:1px solid var(--line);text-align:center;background:#fffdf8e6;border-radius:4px;min-width:1.4em;padding:.1rem .35rem;font-size:.85rem;display:inline-block}.publish-form{gap:1rem;margin-top:1.2rem;display:grid}.publish-form label{color:var(--ink-soft);gap:.4rem;display:grid}.field-label{color:var(--ink-soft);margin-bottom:.4rem;display:block}.upload-zone{border-radius:var(--radius);cursor:pointer;min-height:220px;color:var(--ink-soft);background:#fffdf8b3;border:1.5px dashed #1c191440;place-items:center;display:grid;position:relative;overflow:hidden}.upload-zone.is-busy{pointer-events:none;opacity:.85;cursor:wait}.upload-zone img{object-fit:cover;width:100%;height:100%;min-height:220px}.upload-zone-hint{color:#fffdf8;text-align:center;background:#1c19148c;padding:.55rem .8rem;font-size:.85rem;position:absolute;bottom:0;left:0;right:0}.analyze-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 1.25rem;display:flex}.analyze-provider{flex-wrap:wrap;flex:16rem;align-items:center;gap:.65rem 1rem;min-width:0;display:flex}.analyze-provider-reopen{text-align:left;flex:16rem;justify-self:start}.analyze-provider-close{appearance:none;color:var(--ink-soft);cursor:pointer;background:0 0;border:0;border-radius:999px;place-items:center;width:1.75rem;height:1.75rem;margin-left:-.25rem;font-size:1.25rem;line-height:1;transition:background .18s,color .18s;display:grid}.analyze-provider-close:hover:not(:disabled){color:var(--ink);background:#1c191414}.analyze-provider-close:disabled{opacity:.55;cursor:not-allowed}.skip-analyze-switch{flex:none;margin-left:auto}.form-switch{cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--ink-soft);align-items:center;gap:.55rem;font-size:.92rem;display:inline-flex}.form-switch input{opacity:0;pointer-events:none;width:0;height:0;position:absolute}.form-switch-track{background:#1c191424;border-radius:999px;flex-shrink:0;width:2.5rem;height:1.45rem;transition:background .18s;position:relative}.form-switch-track:after{content:"";background:#fffdf8;border-radius:50%;width:calc(1.45rem - 4px);height:calc(1.45rem - 4px);transition:transform .18s;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #1c19142e}.form-switch input:checked+.form-switch-track{background:var(--accent)}.form-switch input:checked+.form-switch-track:after{transform:translate(1.05rem)}.form-switch input:disabled+.form-switch-track,.form-switch input:disabled~.form-switch-label{opacity:.55}.form-switch:has(input:disabled){cursor:not-allowed}.form-switch-label{white-space:nowrap}.quota-hints{color:var(--ink-soft);margin:-.35rem 0 1rem;font-size:.88rem;line-height:1.45}.quota-locked{border:1px dashed var(--line);border-radius:var(--radius);background:color-mix(in srgb, var(--card) 88%, var(--accent) 12%);flex-wrap:wrap;flex:16rem;align-items:center;gap:.65rem .85rem;padding:.75rem .9rem;display:flex}.quota-locked p{color:var(--ink-soft);flex:12rem;margin:0;font-size:.9rem;line-height:1.45}.upload-zone.is-locked{opacity:.72;cursor:not-allowed}.analyze-provider-label{color:var(--ink-soft);font-size:.92rem}.analyze-provider-switch{border:1px solid var(--line);background:#fffdf8d9;border-radius:999px;display:inline-flex;overflow:hidden}.analyze-provider-switch button{color:var(--ink-soft);cursor:pointer;background:0 0;border:0;padding:.4rem .95rem;transition:background .18s,color .18s}.analyze-provider-switch button.is-active{background:var(--accent);color:#fff}.analyze-provider-switch button:disabled{opacity:.55;cursor:not-allowed}.analyze-actions{border:1px solid var(--line);background:#fffdf8b8;border-radius:12px;gap:.75rem;padding:.85rem 1rem;display:grid}.analyze-actions .btn-secondary{justify-self:start}.choice-field{gap:.45rem;display:grid}.choice-custom-row{grid-template-columns:1fr auto;align-items:stretch;gap:.5rem;display:grid}.choice-custom-row input{min-width:0}.grid-2{grid-template-columns:1fr 1fr;gap:.8rem;display:grid}.grid-2 .choice-field{min-width:0}.visibility{border:1px solid var(--line);border-radius:12px;gap:1rem;padding:.8rem 1rem;display:flex}.visibility label{align-items:center;gap:.35rem;display:flex}.placeholder-list{color:var(--ink-soft);margin-top:1.2rem;padding-left:1.1rem;line-height:1.9}.footer-links{flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem;margin:.4rem 0 0;font-size:.85rem;display:flex}.footer-links a{color:var(--ink-soft);text-underline-offset:2px;text-decoration:underline}.footer-beian{margin:.55rem 0 0;font-size:.8rem}.footer-beian a{color:var(--ink-soft)}.footer-traffic{color:var(--ink-soft);opacity:.85;flex-wrap:wrap;justify-content:center;gap:.35rem .45rem;margin:.45rem 0 0;font-size:.75rem;display:flex}.wecom-contact{margin:.9rem auto .55rem}.wecom-compact{max-width:380px}.wecom-entry{border:1px solid var(--line);cursor:pointer;text-align:left;width:100%;color:inherit;font:inherit;background:#fffdf8eb;border-radius:14px;align-items:center;gap:.75rem;padding:.55rem .7rem;display:flex}.wecom-entry:hover{border-color:#0f6b5c59}.wecom-entry-text{gap:.12rem;min-width:0;display:grid}.wecom-entry-text strong{color:var(--ink);font-size:.92rem}.wecom-entry-text span{color:var(--ink-soft);font-size:.8rem}.wecom-preview{border:1px solid var(--line);cursor:pointer;background:#f0f0f0;border-radius:12px;padding:0;display:block;overflow:hidden}.wecom-preview img{object-fit:contain;object-position:center bottom;background:#fff;width:100%;height:100%;display:block}.wecom-preview-sm{flex-shrink:0;width:64px;height:96px}.wecom-preview-lg{border-radius:14px;width:min(240px,100%);height:min(420px,58vh);margin:0 auto}.wecom-card{border:1px solid var(--line);border-radius:var(--radius);max-width:320px;box-shadow:var(--shadow);background:#fffdf8f2;justify-items:center;gap:.75rem;margin:1.1rem auto 1.2rem;padding:1rem 1rem 1.1rem;display:grid}.wecom-copy-center{text-align:center}.wecom-title{color:var(--ink);margin:0;font-size:1.05rem;font-weight:650}.wecom-lead{color:var(--ink-soft);margin:.35rem 0 0;font-size:.88rem;line-height:1.5}.wecom-open-btn{border-radius:999px;padding:.45rem .95rem}.wecom-lightbox-backdrop{z-index:90;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#1c191480;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.wecom-lightbox{background:var(--card);border-radius:var(--radius);border:1px solid var(--line);width:min(400px,100%);max-height:min(92vh,900px);box-shadow:var(--shadow);flex-direction:column;display:flex;overflow:hidden}.wecom-lightbox-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:.75rem;padding:.75rem .9rem;display:flex}.wecom-lightbox-head h2{font-family:var(--display);margin:0;font-size:1.2rem;font-weight:400}.wecom-lightbox-tip{color:var(--ink-soft);margin:.7rem .9rem 0;font-size:.88rem;line-height:1.45}.wecom-lightbox-frame{flex:1;min-height:0;padding:.7rem .9rem 1rem;overflow:auto}.wecom-lightbox-img{object-fit:contain;background:#f3f3f3;border-radius:12px;width:100%;height:auto;max-height:min(75vh,720px);margin:0 auto;display:block}.mail-fallback{text-align:center;margin-bottom:1.2rem!important}.mail-link{color:var(--accent);text-underline-offset:2px;text-decoration:underline}.detail-actions .link-btn,.btn-primary.link-btn{justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.active-fav{border-color:var(--accent)!important;color:var(--accent)!important}.comments-section{border-top:1px solid var(--line);margin-top:2rem;padding-top:1.2rem}.comments-section h2{font-family:var(--display);margin:0 0 .9rem;font-size:1.4rem;font-weight:400}.comment-form{gap:.6rem;margin-bottom:1rem;display:grid}.comment-md-hint{color:var(--ink-soft);margin:0;font-size:.82rem;line-height:1.45}.comment-locked-hint{color:var(--ink-soft);background:color-mix(in srgb, var(--line) 55%, transparent);border:1px solid var(--line);border-radius:10px;padding:.55rem .7rem}.comment-toolbar{flex-wrap:wrap;gap:.45rem;display:flex}.comment-toolbar .btn-ghost{padding:.35rem .75rem;font-size:.88rem}.comment-preview{border:1px solid var(--line);background:var(--card);border-radius:12px;min-height:7.5rem;padding:.75rem .9rem}.comment-len{color:var(--ink-soft);margin-right:auto;font-size:.82rem}.comment-form textarea,.auth-form textarea{border:1px solid var(--line);background:var(--card);resize:vertical;border-radius:12px;width:100%;padding:.65rem .8rem}.comment-form textarea:disabled,.comment-form textarea:read-only{opacity:.72;cursor:not-allowed;background:color-mix(in srgb, var(--bg) 70%, var(--card))}.comment-form-actions{justify-content:flex-end;align-items:center;gap:.8rem;display:flex}.muted-link{color:var(--ink-soft);text-decoration:underline}.comment-list{gap:.8rem;margin:0;padding:0;list-style:none;display:grid}.comment-item{border:1px solid var(--line);background:#fffdf8bf;border-radius:12px;padding:.85rem 1rem}.comment-item p{white-space:pre-wrap;word-break:break-word;margin:.35rem 0 0}.comment-md{word-break:break-word;margin-top:.45rem}.comment-md>:first-child{margin-top:0}.comment-md>:last-child{margin-bottom:0}.comment-md h1,.comment-md h2,.comment-md h3{font-family:var(--display);margin:.7rem 0 .35rem;font-weight:400;line-height:1.3}.comment-md h1{font-size:1.2rem}.comment-md h2{font-size:1.08rem}.comment-md h3{font-size:1rem}.comment-md p,.comment-md li{color:var(--ink);margin:.4rem 0;font-size:.95rem;line-height:1.65}.comment-md ul,.comment-md ol{margin:.35rem 0 .55rem;padding-left:1.2rem}.comment-md a{color:var(--accent);text-underline-offset:2px;text-decoration:underline}.comment-md code{background:#1c19140f;border-radius:6px;padding:.1em .35em;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.88em}.comment-md .md-code-block{border:1px solid var(--line);background:#1c1914;border-radius:12px;margin:.75rem 0;overflow:hidden}.comment-md .md-code-toolbar{background:#ffffff0f;border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:center;gap:.5rem;padding:.35rem .65rem;display:flex}.comment-md .md-code-lang{letter-spacing:.04em;text-transform:uppercase;color:#fff8eb8c;font-size:.72rem}.comment-md .md-code-copy{appearance:none;color:#fff8ebe0;font:inherit;cursor:pointer;background:#ffffff0f;border:1px solid #fff8eb2e;border-radius:6px;padding:.32rem .55rem;font-size:.75rem;line-height:1}.comment-md .md-code-copy:hover:not(:disabled){background:#ffffff1f}.comment-md .md-code-copy:disabled{opacity:.85;cursor:default}.comment-md .md-pre{-webkit-overflow-scrolling:touch;margin:0;padding:.85rem 1rem;overflow-x:auto}.comment-md .md-pre code,.comment-md .md-code{color:#f4efe4;white-space:pre;tab-size:2;background:0 0;padding:0;font-size:.82rem;line-height:1.55;display:block}.comment-md .md-quote{border-left:3px solid var(--accent);color:var(--ink-soft);margin:.65rem 0;padding:.15rem 0 .15rem .85rem}.comment-md .md-quote>:first-child{margin-top:0}.comment-md .md-quote>:last-child{margin-bottom:0}.comment-md .md-hr{border:0;border-top:1px solid var(--line);margin:1rem 0}.comment-md .md-media{margin:.55rem 0}.comment-md .ai-image-wrap{max-width:min(100%,520px)}.comment-md .md-media .ai-image-wrap{width:100%;display:block}.comment-md .md-img,.comment-md .md-video{background:#efeae0;border-radius:12px;width:100%;max-width:min(100%,520px);height:auto;display:block}.comment-md .md-video{object-fit:contain;min-height:200px;max-height:420px}.comment-meta{color:var(--ink-soft);flex-wrap:wrap;align-items:baseline;gap:.6rem;font-size:.85rem;display:flex}.comment-meta strong{color:var(--ink)}.text-btn{color:var(--ink-soft);cursor:pointer;background:0 0;border:none;padding:0;text-decoration:underline}.mail-link{color:var(--accent);margin-left:.35rem}.feedback-done{gap:.8rem;margin-top:1.4rem;display:grid}.feedback-done .link-btn{width:fit-content}.poster-overlay{z-index:80;place-items:center;padding:1.25rem;display:grid;position:fixed;inset:0}.poster-backdrop{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer;background:#12100cb8;border:0;position:absolute;inset:0}.poster-sheet{z-index:1;background:var(--card);border:1px solid var(--line);width:min(1180px,100%);max-height:min(94vh,920px);box-shadow:var(--shadow);border-radius:22px;flex-direction:column;display:flex;position:relative;overflow:hidden}.poster-sheet.poster-portrait{width:min(520px,100%)}.poster-toolbar{border-bottom:1px solid var(--line);background:#fffdf8eb;align-items:center;gap:.75rem;padding:.85rem 1rem;display:flex}.poster-brand{align-items:baseline;gap:.35rem;min-width:0;display:flex}.poster-brand-mark{font-family:var(--display);font-size:1.35rem}.poster-brand-sub{color:var(--ink-soft);font-size:.85rem}.poster-orient{gap:.35rem;margin-left:auto;display:flex}.poster-close{color:var(--ink-soft);cursor:pointer;background:0 0;border:0;border-radius:999px;width:2.2rem;height:2.2rem}.poster-close:hover{background:var(--bg-deep);color:var(--ink)}.poster-stage{background:radial-gradient(800px 400px at 20% 0,#f7f1e2e6,#0000 60%),linear-gradient(#f7f2e8,#ebe4d6);flex:1;place-items:center;min-height:0;padding:1rem;display:grid;overflow:auto}.poster-preview{object-fit:contain;background:#fff;border-radius:12px;width:auto;max-width:100%;height:auto;max-height:calc(94vh - 9.5rem);display:block;box-shadow:0 24px 60px #1c191438}.poster-sheet.poster-landscape .poster-preview{max-width:min(100%,1080px)}.poster-sheet.poster-portrait .poster-preview{width:100%;max-width:100%;height:auto;max-height:none}.poster-hint{border-bottom:1px solid var(--line);color:var(--ink-soft);background:#e8f4f0b8;justify-content:space-between;align-items:center;gap:.75rem;padding:.55rem 1rem;font-size:.85rem;display:flex}.poster-hint-action{color:var(--accent);cursor:pointer;white-space:nowrap;background:0 0;border:0;font-size:.85rem;font-weight:600}.poster-hint-action:hover{text-decoration:underline}.poster-skeleton{gap:.65rem;width:min(100%,360px);padding:.5rem;display:grid}.poster-skeleton-landscape{width:min(100%,520px)}.poster-skeleton-media{aspect-ratio:3/4;background:linear-gradient(90deg,#ffffff59,#ffffffb3,#ffffff59) 0 0/200% 100%;border-radius:12px;animation:1.2s ease-in-out infinite poster-shimmer}.poster-skeleton-landscape .poster-skeleton-media{aspect-ratio:16/10}.poster-skeleton-line,.poster-skeleton-block{background:linear-gradient(90deg,#ffffff59,#ffffffb3,#ffffff59) 0 0/200% 100%;border-radius:999px;height:.75rem;animation:1.2s ease-in-out infinite poster-shimmer}.poster-skeleton-line-lg{width:72%;height:1rem}.poster-skeleton-tags{gap:.4rem;display:flex}.poster-skeleton-tags:before,.poster-skeleton-tags:after{content:"";background:linear-gradient(90deg,#ffffff59,#ffffffb3,#ffffff59) 0 0/200% 100%;border-radius:999px;width:3.2rem;height:.65rem;animation:1.2s ease-in-out infinite poster-shimmer}.poster-skeleton-block{border-radius:10px;height:4.5rem}@keyframes poster-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.poster-actions{border-top:1px solid var(--line);background:#fffdf8f5;flex-wrap:wrap;align-items:center;gap:.6rem;padding:.9rem 1rem 1.05rem;display:flex}.poster-toast{color:var(--accent);margin-left:auto;font-size:.9rem;font-weight:600}.poster-more{position:relative}.poster-more-trigger{cursor:pointer;list-style:none}.poster-more-trigger::-webkit-details-marker{display:none}.poster-more-menu{z-index:2;border:1px solid var(--line);background:var(--card);min-width:8.5rem;box-shadow:var(--shadow);border-radius:12px;padding:.35rem;position:absolute;bottom:calc(100% + .35rem);right:0}.poster-more-item{text-align:left;cursor:pointer;width:100%;font:inherit;background:0 0;border:0;border-radius:8px;padding:.55rem .7rem;display:block}.poster-more-item:hover{background:var(--bg-deep)}.weibo-share-btn{color:#e6162d!important;border-color:#e6162d47!important}.weibo-share-btn:hover{background:#e6162d14}@media (width<=760px){.poster-overlay{padding:0}.poster-sheet,.poster-sheet.poster-portrait,.poster-sheet.poster-landscape{border:0;border-radius:0;width:100%;height:100%;max-height:100%}.poster-toolbar{padding:.75rem .85rem;padding-top:calc(.55rem + env(safe-area-inset-top,0px))}.poster-stage{padding:.75rem}.poster-preview,.poster-sheet.poster-landscape .poster-preview{object-fit:contain;border-radius:10px;width:auto;max-width:100%;height:auto;max-height:calc(100vh - 12rem)}.poster-sheet.poster-portrait .poster-preview{object-fit:contain;border-radius:10px;width:100%;max-width:100%;height:auto;max-height:none}.poster-actions{padding:.85rem;padding-bottom:calc(.95rem + env(safe-area-inset-bottom,0px))}.poster-actions .btn-primary,.poster-actions .btn-ghost,.poster-more{flex:calc(50% - .4rem);justify-content:center}.poster-more-trigger{justify-content:center;width:100%}.poster-hint{flex-direction:column;align-items:flex-start;gap:.35rem}.poster-toast{text-align:center;width:100%;margin-left:0}}@media (width<=768px){.topbar{display:none}.ad-slots{width:min(1200px,100% - 1.25rem);margin:.55rem auto 0}.ad-slots-row{justify-content:center}.ad-slot-trigger{padding:.35rem .75rem;font-size:.82rem}.ad-slot-dialog{width:min(100%,420px)}.footer{background:0 0;padding:.35rem .75rem .5rem;display:block}.footer>:not(.footer-traffic){display:none}.footer-traffic{opacity:.7;margin:0;font-size:.68rem}.has-bottom-nav .footer{padding-bottom:calc(var(--bottom-nav-content-h,56px) + env(safe-area-inset-bottom,0px) + .35rem)}.has-bottom-nav .main{width:min(1200px,100% - 1.25rem);padding-top:1rem;padding-bottom:calc(var(--bottom-nav-content-h) + env(safe-area-inset-bottom,0px) + 1.25rem)}.main{width:min(1200px,100% - 1.25rem);padding-top:1rem;padding-bottom:calc(env(safe-area-inset-bottom,0px) + 1.25rem)}.detail-grid{grid-template-columns:1fr;gap:1rem}.detail-side h1{font-size:1.45rem}.prompt-head{flex-direction:column;align-items:stretch}.detail-actions{grid-template-columns:1fr 1fr;gap:.55rem;display:grid}.detail-actions .btn-primary,.detail-actions .link-btn{grid-column:1/-1}.comments-section{margin-top:1.5rem;padding-top:1rem}.bottom-nav{z-index:30;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom,0px);background:#fffdf8f5;flex-direction:column;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 28px #281e0a0f}.bottom-nav-row{min-height:var(--bottom-nav-content-h);padding:.4rem max(.85rem, env(safe-area-inset-left,0px)) .45rem max(.85rem, env(safe-area-inset-right,0px));justify-content:space-around;align-items:stretch;gap:.15rem;display:flex}.bottom-nav-item{min-width:0;max-width:5.5rem;color:var(--ink-soft);-webkit-tap-highlight-color:transparent;border-radius:12px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:.2rem;padding:.25rem .2rem;font-size:.7rem;line-height:1.15;transition:color .15s,background .15s;display:flex}.bottom-nav-item.active{color:var(--accent);background:var(--accent-soft)}.bottom-nav-item-accent .bottom-nav-icon{width:26px;height:26px}.bottom-nav-item-accent.active{color:#f4fffb;background:var(--accent)}.bottom-nav-item-accent.active .bottom-nav-icon{filter:brightness(0)invert()}.bottom-nav-icon{flex-shrink:0}.bottom-nav-label{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}}.app-shell.layout-mobile .topbar{display:none}.app-shell.layout-mobile .ad-slots{width:min(1200px,100% - 1.25rem);margin:.55rem auto 0}.app-shell.layout-mobile .ad-slots-row{justify-content:center}.app-shell.layout-mobile .ad-slot-trigger{padding:.35rem .75rem;font-size:.82rem}.app-shell.layout-mobile .ad-slot-dialog{width:min(100%,420px)}.app-shell.layout-mobile .footer{background:0 0;padding:.35rem .75rem .5rem;display:block}.app-shell.layout-mobile .footer>:not(.footer-traffic){display:none}.app-shell.layout-mobile .footer-traffic{opacity:.7;margin:0;font-size:.68rem}.app-shell.layout-mobile.has-bottom-nav .footer{padding-bottom:calc(var(--bottom-nav-content-h,56px) + env(safe-area-inset-bottom,0px) + .35rem)}.app-shell.layout-mobile .main{width:min(1200px,100% - 1.25rem);padding-top:1rem;padding-bottom:calc(env(safe-area-inset-bottom,0px) + 1.25rem)}.app-shell.layout-mobile.has-bottom-nav .main{padding-bottom:calc(var(--bottom-nav-content-h) + env(safe-area-inset-bottom,0px) + 1.25rem)}.app-shell.layout-mobile .detail-grid{grid-template-columns:1fr;gap:1rem}.app-shell.layout-mobile .detail-side h1{font-size:1.45rem}.app-shell.layout-mobile .prompt-head{flex-direction:column;align-items:stretch}.app-shell.layout-mobile .detail-actions{grid-template-columns:1fr 1fr;gap:.55rem;display:grid}.app-shell.layout-mobile .detail-actions .btn-primary,.app-shell.layout-mobile .detail-actions .link-btn{grid-column:1/-1}.app-shell.layout-mobile .comments-section{margin-top:1.5rem;padding-top:1rem}.app-shell.layout-mobile .bottom-nav{z-index:30;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom,0px);background:#fffdf8f5;flex-direction:column;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 28px #281e0a0f}.app-shell.layout-mobile .bottom-nav-row{min-height:var(--bottom-nav-content-h);padding:.4rem max(.85rem, env(safe-area-inset-left,0px)) .45rem max(.85rem, env(safe-area-inset-right,0px));justify-content:space-around;align-items:stretch;gap:.15rem;display:flex}.app-shell.layout-mobile .bottom-nav-item{min-width:0;max-width:5.5rem;color:var(--ink-soft);-webkit-tap-highlight-color:transparent;border-radius:12px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:.2rem;padding:.25rem .2rem;font-size:.7rem;line-height:1.15;transition:color .15s,background .15s;display:flex}.app-shell.layout-mobile .bottom-nav-item.active{color:var(--accent);background:var(--accent-soft)}.app-shell.layout-mobile .bottom-nav-item-accent .bottom-nav-icon{width:26px;height:26px}.app-shell.layout-mobile .bottom-nav-item-accent.active{color:#f4fffb;background:var(--accent)}.app-shell.layout-mobile .bottom-nav-item-accent.active .bottom-nav-icon{filter:brightness(0)invert()}.app-shell.layout-mobile .bottom-nav-icon{flex-shrink:0}.app-shell.layout-mobile .bottom-nav-label{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}@media (width<=900px){.detail-grid{grid-template-columns:1fr}.masonry{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}}@media (width<=560px){.grid-2,.masonry{grid-template-columns:1fr}.pricing-grid{grid-template-columns:1fr 1fr}}.legal-page{max-width:760px}.legal-page.pricing-page{max-width:900px}.legal-doc-body{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);margin-top:1.4rem;padding:1.2rem 1.3rem 1.6rem}.legal-md h1{font-family:var(--display);margin:0 0 .85rem;font-size:1.55rem;font-weight:400}.legal-md h2{font-family:var(--display);margin:1.4rem 0 .55rem;font-size:1.2rem;font-weight:400}.legal-md h3{margin:1.1rem 0 .4rem;font-size:1.02rem}.legal-md p,.legal-md li{color:var(--ink-soft);font-size:.95rem;line-height:1.7}.legal-md p{margin:.55rem 0}.legal-md ul,.legal-md ol{margin:.4rem 0 .8rem;padding-left:1.25rem}.legal-md strong{color:var(--ink);font-weight:650}.pricing-grid{grid-template-columns:repeat(4,1fr);gap:.75rem;margin:1.2rem 0 .8rem;display:grid}.pricing-card{border:1px solid var(--line);background:#fffdf8d9;border-radius:14px;padding:1rem .9rem}.pricing-card h2{margin:0 0 .35rem;font-size:1rem;font-weight:600}.pricing-card .price{align-items:baseline;gap:.25rem;margin:.2rem 0 .45rem;display:flex}.price-num{font-family:var(--display);color:var(--accent);font-size:1.65rem}.price-unit{color:var(--ink-soft);font-size:.85rem}.pricing-card p{color:var(--ink-soft);margin:0;font-size:.88rem}.pricing-card.featured{border-color:var(--accent);background:var(--accent-soft)}.pricing-links{color:var(--ink-soft);margin:0 0 .4rem;font-size:.9rem}.pricing-links a{color:var(--accent);text-underline-offset:2px;text-decoration:underline}.legal-agree{color:var(--ink-soft);cursor:pointer;text-align:left;justify-content:flex-start;align-items:flex-start;gap:.55rem;margin:.2rem 0;font-size:.9rem;line-height:1.55;display:flex}.publish-form label.legal-agree,.auth-form label.legal-agree{grid-template-columns:unset;text-align:left;justify-self:start;align-items:flex-start;gap:.55rem;width:100%;max-width:100%;display:flex}.legal-agree input{width:auto;accent-color:var(--accent);flex-shrink:0;margin-top:.2rem}.legal-agree>span{text-align:left;flex:1;min-width:0}.legal-agree-wrap{justify-items:start;gap:.45rem;display:grid}.legal-agree-hint{margin:0;font-size:.88rem}.legal-inline-link{appearance:none;color:var(--accent);font:inherit;text-underline-offset:2px;cursor:pointer;background:0 0;border:none;margin:0;padding:0;text-decoration:underline}.upload-notice{border-left:3px solid var(--accent);background:#0f6b5c14;border-radius:0 12px 12px 0;margin:1rem 0 0;padding:.85rem 1rem}.upload-notice p{color:var(--ink-soft);margin:0;font-size:.9rem;line-height:1.6}.upload-notice a{color:var(--accent);text-underline-offset:2px;text-decoration:underline}.tutorials-page,.tutorial-detail-page{width:100%;max-width:640px;margin-left:auto;margin-right:auto}.tutorial-compose.in-dialog{box-shadow:none;background:0 0;border:none;margin:0;padding:0}.tutorial-compose-backdrop{z-index:80;background:#1c191473;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.tutorial-compose-dialog{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);width:min(100%,640px);max-height:min(92vh,900px);box-shadow:var(--shadow);padding:1.1rem 1.2rem 1.3rem;overflow:auto}.tutorial-compose-dialog-head{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.85rem;display:flex}.tutorial-compose-dialog-head h2{font-family:var(--display);margin:0;font-size:1.35rem;font-weight:400}.tutorial-compose-dialog-close{appearance:none;color:var(--ink-soft);cursor:pointer;background:0 0;border:0;border-radius:999px;width:2rem;height:2rem;font-size:1.35rem;line-height:1}.tutorial-compose-dialog-close:hover{color:var(--ink);background:#1c191414}.tutorial-compose-md .tutorial-compose-preview,.tutorial-compose-md.show-preview .tutorial-compose-input{display:none}.tutorial-compose-md.show-preview .tutorial-compose-preview{display:block}.tutorial-compose-md.md-split{grid-template-columns:1fr 1fr;align-items:stretch;gap:1rem;display:grid}.tutorial-compose-md.md-split .tutorial-compose-input{min-height:24rem}.tutorial-compose-md.md-split .tutorial-compose-preview{max-height:70vh;display:block;overflow:auto}.tutorial-compose-backdrop.desktop-fullscreen{padding:0}.tutorial-compose-backdrop.desktop-fullscreen .tutorial-compose-dialog{border:none;border-radius:0;flex-direction:column;width:100%;max-width:none;height:100dvh;max-height:none;padding:1rem clamp(1.2rem,4vw,3rem) 1.2rem;display:flex;overflow:hidden}.tutorial-compose-backdrop.desktop-fullscreen .tutorial-compose-dialog-head{flex:none;width:100%;max-width:1500px;margin:0 auto .8rem}.tutorial-compose-backdrop.desktop-fullscreen .tutorial-compose.in-dialog{flex-direction:column;flex:auto;width:100%;max-width:1500px;min-height:0;margin:0 auto;display:flex;overflow:hidden}.tutorial-compose-backdrop.desktop-fullscreen .tutorial-compose-top,.tutorial-compose-backdrop.desktop-fullscreen .tutorial-compose-toolbar,.tutorial-compose-backdrop.desktop-fullscreen .tutorial-compose-hint,.tutorial-compose-backdrop.desktop-fullscreen .tutorial-compose-actions,.tutorial-compose-backdrop.desktop-fullscreen .tutorial-compose .state{flex:none}.tutorial-compose-backdrop.desktop-fullscreen .tutorial-compose-md,.tutorial-compose-backdrop.desktop-fullscreen .tutorial-compose>.tutorial-compose-input{flex:auto;min-height:0}.tutorial-compose-backdrop.desktop-fullscreen .tutorial-compose-md.md-split{height:100%}.tutorial-compose-backdrop.desktop-fullscreen .tutorial-compose-md .tutorial-compose-input{resize:none;height:100%;min-height:0}.tutorial-compose-backdrop.desktop-fullscreen .tutorial-compose-md .tutorial-compose-preview{height:100%;min-height:0;max-height:none;overflow:auto}.tutorial-compose-backdrop.desktop-fullscreen .tutorial-media-view{flex:none;max-height:28vh;overflow:auto}.tutorial-page-toolbar{z-index:15;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);background:#f3efe6eb;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:.5rem;margin:0 0 .85rem;padding:.55rem 0;display:grid;position:sticky;top:3.35rem}.tutorial-detail-sticky{z-index:15;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);background:#f3efe6eb;margin:0 0 .85rem;padding-bottom:.15rem;position:sticky;top:3.35rem}.tutorial-detail-sticky .tutorial-page-toolbar{z-index:auto;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border-bottom:none;margin:0;padding:.45rem 0 .35rem;position:static;top:auto}.tutorial-detail-sticky .tutorial-cat-row{margin:0;padding:.2rem 0 .45rem}.tutorial-page-toolbar-start{justify-self:start;min-width:0}.tutorial-page-toolbar-center{justify-self:center}.tutorial-page-toolbar-actions{flex-shrink:0;justify-self:end}.tutorial-back-link{color:var(--ink-soft);white-space:nowrap;font-size:.9rem;text-decoration:none;display:inline-block}.tutorial-back-link:hover{color:var(--ink)}.tutorial-cat-row{scrollbar-width:none;-webkit-overflow-scrolling:touch;flex-wrap:nowrap;gap:.4rem;margin:0 0 .85rem;padding-bottom:.15rem;display:flex;overflow-x:auto}.tutorial-cat-row::-webkit-scrollbar{display:none}.tutorial-cat-row .chip{flex-shrink:0}.tutorial-cat-manage{color:var(--ink-soft);border-style:dashed}.tutorial-category-dialog{width:min(30rem,92vw)}.tutorial-category-create{gap:.5rem;margin-bottom:.75rem;display:flex}.tutorial-category-create input{flex:1;min-width:0}.tutorial-category-list{max-height:50vh;margin:0;padding:0;list-style:none;overflow-y:auto}.tutorial-category-item{border-bottom:1px solid var(--line);align-items:center;gap:.6rem;padding:.55rem .25rem;display:flex}.tutorial-category-item.is-draggable{cursor:grab}.tutorial-category-item.is-dragging{opacity:.55;background:#1c19140a}.tutorial-category-drag{width:1.1rem;color:var(--ink-soft);letter-spacing:-.12em;text-align:center;-webkit-user-select:none;user-select:none;flex:0 0 1.1rem;font-size:.85rem}.tutorial-category-drag.is-locked{visibility:hidden}.tutorial-category-item input{flex:1;min-width:0}.tutorial-category-item-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.tutorial-category-item-name em{color:var(--ink-soft);border:1px solid var(--line);border-radius:999px;margin-left:.4rem;padding:.05rem .45rem;font-size:.72rem;font-style:normal}.tutorial-category-item-hint{color:var(--ink-soft);font-size:.82rem}.tutorial-category-tip{color:var(--ink-soft);margin:.75rem 0 0;font-size:.82rem;line-height:1.45}.tutorial-feed-status{text-align:center;flex-wrap:wrap;justify-content:center;align-items:center;gap:.65rem;margin:.75rem 0 1rem;display:flex}.tutorial-feed-status.soft{color:var(--ink-soft);font-size:.88rem}.tutorial-feed-sentinel{height:1px;margin-top:.5rem}.tutorial-media-scroll-meta{justify-content:flex-end;margin-bottom:.35rem;display:flex}.tutorial-media-scroll-count{color:var(--ink-soft);font-variant-numeric:tabular-nums;font-size:.78rem}.tutorial-media-pager{justify-content:center;align-items:center;gap:.85rem;margin-top:.55rem;display:flex}.tutorial-media-pager-btn{appearance:none;border:1px solid var(--line);background:var(--card);width:2.5rem;height:2.5rem;color:var(--ink);cursor:pointer;border-radius:999px;flex-shrink:0;padding:0;font-size:1.45rem;line-height:1;box-shadow:0 1px 4px #1c191414}.tutorial-media-pager-btn:disabled,.tutorial-media-pager-btn.at-edge{opacity:.35;cursor:default}.tutorial-media-pager .tutorial-media-scroll-count{text-align:center;min-width:4.5rem;color:var(--ink);font-size:.88rem}.tutorial-media-hint{text-align:center;color:var(--ink-soft);margin:.4rem 0 0;font-size:.8rem;line-height:1.45}.tutorial-media-view.is-mobile .tutorial-media-scroll-wrap{padding:0}.tutorial-media-view.is-mobile .tutorial-media-scroll.cols-1{scroll-snap-type:x mandatory;gap:0}.tutorial-media-view.is-mobile .tutorial-media-scroll.cols-1 .tutorial-post-media-item,.tutorial-media-view.is-mobile .tutorial-media-scroll.cols-1 .tutorial-compose-media-item{scroll-snap-align:center;scroll-snap-stop:always;flex:0 0 100%}.tutorial-media-view.is-mobile .tutorial-post-media-item img,.tutorial-media-view.is-mobile .tutorial-compose-media-item img{object-fit:contain;width:100%;height:auto}@media (width<=768px){.tutorial-page-toolbar,.tutorial-detail-sticky{top:0}}.app-shell.layout-mobile .tutorial-page-toolbar,.app-shell.layout-mobile .tutorial-detail-sticky{top:0}.tutorial-compose-mode{background:#1c19140d;border-radius:999px;gap:.35rem;margin-bottom:.75rem;padding:.2rem;display:inline-flex}.tutorial-compose-mode button{appearance:none;color:var(--ink-soft);font:inherit;cursor:pointer;background:0 0;border:none;border-radius:999px;padding:.35rem .8rem;font-size:.84rem}.tutorial-compose-mode button.active{background:var(--card);color:var(--accent);box-shadow:0 1px 3px #1c191414}.tutorial-compose-top{flex-wrap:wrap;align-items:center;gap:.5rem .75rem;margin-bottom:.75rem;display:flex}.tutorial-compose-top .tutorial-compose-mode{margin-bottom:0}.tutorial-compose-category{color:var(--ink-soft);align-items:center;gap:.4rem;font-size:.84rem;display:inline-flex}.tutorial-compose-category select{font:inherit;color:var(--ink);border:1px solid var(--line);background:#fffdf8e6;border-radius:8px;max-width:10rem;padding:.3rem .45rem}.tutorial-compose-toolbar{flex-wrap:wrap;gap:.45rem;margin-bottom:.55rem;display:flex}.tutorial-compose-toolbar .btn-ghost{padding:.35rem .7rem;font-size:.84rem}.tutorial-compose-preview{border:1px solid var(--line);background:#fffdf8e6;border-radius:12px;min-height:8rem;padding:.75rem .85rem}.tutorial-compose-input{border:1px solid var(--line);width:100%;min-height:5.5rem;font:inherit;resize:vertical;background:#fffdf8e6;border-radius:12px;padding:.65rem .75rem;font-size:.95rem;line-height:1.55}.tutorial-compose-hint{color:var(--ink-soft);margin:.45rem 0 0;font-size:.82rem}.tutorial-compose-len{color:var(--ink-soft);margin-left:auto;font-size:.82rem}.tutorial-compose{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);margin:0 0 1.25rem;padding:1rem}.tutorial-compose-media-item{border:1px solid var(--line);background:#1c19140a;border-radius:12px;flex:none;position:relative;overflow:hidden}.tutorial-compose-media-item img,.tutorial-compose-media-item video,.tutorial-compose-media-item .oss-video{object-fit:contain;width:100%;height:auto;display:block}.tutorial-compose-media-item .oss-video-el{max-height:280px}.tutorial-compose-media-item .tutorial-media-uploading{min-height:120px;color:var(--ink-soft);place-items:center;font-size:.85rem;display:grid;position:relative}.tutorial-compose-media-item .tutorial-media-uploading-bar{background:var(--accent);border-radius:2px;height:4px;transition:width .2s;position:absolute;bottom:0;left:0;right:0}.tutorial-media-remove{color:#fff;cursor:pointer;background:#1c19148c;border:none;border-radius:999px;width:1.6rem;height:1.6rem;font-size:1.1rem;line-height:1;position:absolute;top:.35rem;right:.35rem}.tutorial-compose-actions{flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:.75rem;display:flex}.tutorial-compose-actions .btn-primary{margin-left:auto}.tutorial-feed{border:1px solid var(--line);border-radius:var(--radius);background:var(--card);box-shadow:var(--shadow);gap:0;display:grid;overflow:hidden}.tutorial-post{border-bottom:1px solid var(--line);padding:0}.tutorial-post:last-child{border-bottom:none}.tutorial-post-body{color:inherit;cursor:pointer;padding:1rem 1rem .35rem;text-decoration:none;display:block}.tutorial-post-body:hover .tutorial-post-content,.tutorial-post-body:hover .tutorial-md{color:var(--ink)}.tutorial-content-copyable,.tutorial-content-copyable .tutorial-post-content,.tutorial-content-copyable .tutorial-md,.tutorial-content-copyable .comment-md{-webkit-user-select:text;user-select:text}.tutorial-post-head{align-items:flex-start;gap:.65rem;display:flex}.tutorial-post-avatar{background:var(--accent-soft);width:2.5rem;height:2.5rem;color:var(--accent);border-radius:999px;flex-shrink:0;place-items:center;font-size:.95rem;font-weight:650;display:grid;overflow:hidden}.tutorial-post-avatar img{object-fit:cover;width:100%;height:100%}.tutorial-post-meta{flex:1;min-width:0}.tutorial-post-author{font-size:.92rem;display:block}.tutorial-post-time{color:var(--ink-soft);margin-top:.1rem;font-size:.82rem;display:block}.tutorial-post-admin{flex-shrink:0;gap:.45rem;padding:0 1rem .75rem;display:flex}.tutorial-post-admin .danger{color:#b42318}.tutorial-post-text{margin-top:.45rem}.tutorial-post-content{white-space:pre-wrap;word-break:break-word;margin:0;font-size:.95rem;line-height:1.6}.tutorial-post-content.collapsed{-webkit-line-clamp:6;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.tutorial-post-more{font:inherit;color:var(--accent);cursor:pointer;background:0 0;border:none;margin-top:.25rem;padding:0;font-size:.88rem;display:inline-block}.tutorial-post-more:hover{text-underline-offset:2px;text-decoration:underline}.tutorial-md{margin:0;font-size:.95rem;line-height:1.65}.tutorial-md.collapsed{-webkit-line-clamp:6;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.tutorial-md>:first-child{margin-top:0}.tutorial-md>:last-child{margin-bottom:0}.tutorial-md .md-img,.tutorial-md .md-video{border-radius:12px;max-width:100%}.tutorial-md .md-video{object-fit:contain;background:#000;width:100%;min-height:200px;max-height:420px}.tutorial-md .md-media{margin:.5rem 0}.tutorial-detail-post .tutorial-md{font-size:1rem;line-height:1.75}.tutorial-detail-post .tutorial-md h1,.tutorial-detail-post .tutorial-md h2,.tutorial-detail-post .tutorial-md h3{margin:1.1rem 0 .45rem}.tutorial-detail-post .tutorial-md p,.tutorial-detail-post .tutorial-md li{font-size:1rem;line-height:1.75}.tutorial-detail-post .tutorial-md .md-code-block{margin:1rem 0}.tutorial-interaction-bar{flex-wrap:wrap;align-items:center;gap:.15rem;padding:0 .75rem .65rem;display:flex}.tutorial-interaction-bar.compact{padding-top:.15rem}.tutorial-interaction-btn{color:var(--ink-soft);font:inherit;cursor:pointer;background:0 0;border:none;border-radius:999px;align-items:center;gap:.3rem;padding:.35rem .55rem;font-size:.82rem;text-decoration:none;display:inline-flex}.tutorial-interaction-btn:hover{color:var(--accent);background:#0f6b5c14}.tutorial-interaction-btn.active{color:#c41e3a}.tutorial-interaction-btn.static{cursor:default}.tutorial-interaction-btn.static:hover{color:var(--ink-soft);background:0 0}.tutorial-interaction-icon{font-size:.95rem;line-height:1}.tutorial-media-view{margin-top:.65rem}.tutorial-media-layout-tabs{background:#1c19140d;border-radius:999px;gap:.25rem;padding:.15rem;display:inline-flex}.tutorial-media-layout-tabs button{appearance:none;color:var(--ink-soft);cursor:pointer;background:0 0;border:none;border-radius:999px;padding:.28rem .65rem;font-size:.78rem}.tutorial-media-layout-tabs button.active{background:var(--card);color:var(--ink);box-shadow:0 1px 4px #1c191414}.tutorial-media-scroll-wrap{position:relative}.tutorial-media-scroll-wrap.has-nav{padding:0 1.85rem}.tutorial-media-scroll{scroll-behavior:smooth;scroll-snap-type:x proximity;scrollbar-width:none;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;flex-wrap:nowrap;gap:.35rem;display:flex;overflow-x:auto}.tutorial-media-scroll::-webkit-scrollbar{display:none}.tutorial-media-scroll.cols-1 .tutorial-post-media-item,.tutorial-media-scroll.cols-1 .tutorial-compose-media-item{scroll-snap-align:start;flex:0 0 100%}.tutorial-media-scroll.cols-2 .tutorial-post-media-item,.tutorial-media-scroll.cols-2 .tutorial-compose-media-item{scroll-snap-align:start;flex:0 0 calc(50% - .175rem)}.tutorial-media-scroll.cols-4 .tutorial-post-media-item,.tutorial-media-scroll.cols-4 .tutorial-compose-media-item{scroll-snap-align:start;flex:0 0 calc(25% - .2625rem)}.tutorial-post-media-item{cursor:zoom-in;background:#1c19140a;border:none;border-radius:12px;padding:0;display:block;overflow:hidden}.tutorial-post-media-item img{object-fit:contain;width:100%;height:auto;display:block}.tutorial-media-scroll-nav{z-index:2;color:#fff;cursor:pointer;background:#1c1914b8;border:none;border-radius:999px;width:1.75rem;height:1.75rem;padding:0;font-size:1.25rem;line-height:1;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 2px 10px #1c19142e}.tutorial-media-scroll-nav:hover:not(:disabled){background:#1c1914e6}.tutorial-media-scroll-nav:disabled,.tutorial-media-scroll-nav.at-edge{opacity:.35;cursor:default}.tutorial-media-scroll-nav.prev{left:0}.tutorial-media-scroll-nav.next{right:0}.tutorial-post-media{margin-top:.65rem}.tutorial-post-video{border:1px solid var(--line);background:#000;border-radius:14px;margin-top:.65rem;overflow:hidden}.tutorial-post-video video,.tutorial-post-video .oss-video{width:100%;display:block}.tutorial-post-video .oss-video-el{object-fit:contain;vertical-align:top;width:100%;max-height:none;display:block}.tutorial-post-video.variant-feed .oss-video-el{max-height:420px}.tutorial-post-video.variant-detail .oss-video-el{height:auto;max-height:none}.oss-video{border-radius:inherit;isolation:isolate;-webkit-user-select:none;user-select:none;background:#0b0a08;width:100%;position:relative;overflow:hidden}:-webkit-any(.oss-video:fullscreen,.oss-video:-webkit-full-screen,.oss-video:fullscreen){background:#000;border-radius:0;justify-content:center;align-items:center;width:100vw;height:100vh;display:flex}:-moz-any(.oss-video:fullscreen,.oss-video:fullscreen,.oss-video:-moz-full-screen){background:#000;border-radius:0;justify-content:center;align-items:center;width:100vw;height:100vh;display:flex}:is(.oss-video:fullscreen,.oss-video:fullscreen,.oss-video:fullscreen){background:#000;border-radius:0;justify-content:center;align-items:center;width:100vw;height:100vh;display:flex}:-webkit-any(.oss-video:fullscreen .oss-video-el,.oss-video:-webkit-full-screen .oss-video-el,.oss-video:fullscreen .oss-video-el){width:100%;height:100%;max-height:100vh}:-moz-any(.oss-video:fullscreen .oss-video-el,.oss-video:fullscreen .oss-video-el,.oss-video:-moz-full-screen .oss-video-el){width:100%;height:100%;max-height:100vh}:is(.oss-video:fullscreen .oss-video-el,.oss-video:fullscreen .oss-video-el,.oss-video:fullscreen .oss-video-el){width:100%;height:100%;max-height:100vh}.oss-video-el{object-fit:contain;cursor:pointer;background:#0b0a08;width:100%;max-height:520px;display:block}.oss-video-poster{z-index:1;object-fit:contain;cursor:pointer;background:#0b0a08;width:100%;height:100%;position:absolute;inset:0}.oss-video-loading{z-index:4;color:#fff8eb;pointer-events:none;background:#0c0a08b8;border-radius:999px;padding:.35rem .75rem;font-size:.82rem;position:absolute;top:42%;left:50%;transform:translate(-50%,-50%)}.oss-video--feed .oss-video-el{max-height:420px}.oss-video--idle .oss-video-el{aspect-ratio:16/9;min-height:200px}.oss-video-center{z-index:2;color:#fff8eb;min-width:5.5rem;font:inherit;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0c0a08b8;border:1px solid #fff8eb47;border-radius:16px;flex-direction:column;align-items:center;gap:.35rem;padding:.85rem 1.1rem;display:inline-flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.oss-video-center:hover{background:#0c0a08db}.oss-video-center-icon{background:#fff8eb24;border-radius:999px;place-items:center;width:2.2rem;height:2.2rem;display:grid}.oss-video-center-icon svg{width:1.15rem;height:1.15rem;margin-left:2px}.oss-video-center-label{letter-spacing:.06em;font-size:.92rem;font-weight:600}.oss-video-bar{z-index:3;opacity:0;pointer-events:none;background:linear-gradient(#0000,#080705e0);flex-wrap:wrap;align-items:center;gap:.4rem .55rem;padding:.55rem .65rem .65rem;transition:opacity .18s;display:flex;position:absolute;bottom:0;left:0;right:0}.oss-video-bar.is-visible{opacity:1;pointer-events:auto}.oss-video-btn{appearance:none;color:#fff8eb;min-height:2rem;font:inherit;cursor:pointer;white-space:nowrap;background:#fff8eb1a;border:1px solid #fff8eb38;border-radius:999px;align-items:center;gap:.35rem;padding:.28rem .7rem;font-size:.82rem;font-weight:600;line-height:1;display:inline-flex}.oss-video-btn:hover{background:#fff8eb2e}.oss-video-btn.is-muted{background:#ffa03c2e;border-color:#ffc47873}.oss-video-btn-icon{place-items:center;width:1.1rem;height:1.1rem;display:grid}.oss-video-btn-icon svg{width:1rem;height:1rem;display:block}.oss-video-btn-text{letter-spacing:.02em}.oss-video-seek{flex:10rem;align-items:center;gap:.45rem;min-width:0;display:flex}.oss-video-range{appearance:none;background:linear-gradient(90deg, #fff8eb 0, #fff8eb var(--oss-video-pct,0%), #fff8eb47 var(--oss-video-pct,0%), #fff8eb47 100%);cursor:pointer;border-radius:999px;flex:1;min-width:0;height:.35rem}.oss-video-range::-webkit-slider-thumb{appearance:none;background:#fff8eb;border:0;border-radius:50%;width:.85rem;height:.85rem}.oss-video-range::-moz-range-thumb{background:#fff8eb;border:0;border-radius:50%;width:.85rem;height:.85rem}.oss-video-time{font-variant-numeric:tabular-nums;color:#fff8ebb8;flex-shrink:0;font-size:.72rem}.comment-md .md-video-mount,.tutorial-md .md-video-mount{background:#0b0a08;border-radius:12px;margin:.55rem 0;overflow:hidden}.comment-md .md-video-mount .oss-video-el,.tutorial-md .md-video-mount .oss-video-el{max-height:480px}.tutorial-detail-post .md-video-mount .oss-video-el{max-height:none}@media (width<=720px){.oss-video-btn-text{font-size:.78rem}.oss-video-bar{padding:.5rem .55rem .55rem}}.tutorial-detail-content-wrap{margin-top:.65rem}.tutorial-detail-actions{flex-wrap:wrap;gap:.5rem;margin-top:.55rem;display:flex}.tutorial-copy-btn{padding:.35rem .75rem;font-size:.84rem}.tutorial-detail-post{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:1rem}.tutorial-detail-post .tutorial-post-content{margin-top:.65rem}.tutorial-detail-post .tutorial-md .md-img{object-fit:contain;width:100%;max-width:100%;height:auto}.tutorial-detail-post .tutorial-md .md-video{object-fit:contain;width:100%;height:auto;min-height:200px;max-height:none}.tutorial-detail-post .tutorial-interaction-bar{padding:.5rem 0 0}.tutorial-comment-content{white-space:pre-wrap;word-break:break-word;color:var(--ink-soft);margin:.35rem 0 0;font-size:.92rem;line-height:1.55}.image-lightbox{z-index:90;padding:1rem;padding-top:calc(1rem + env(safe-area-inset-top,0px));padding-bottom:calc(1rem + env(safe-area-inset-bottom,0px));overscroll-behavior:none;background:#000000e0;place-items:center;display:grid;position:fixed;inset:0}.image-lightbox-shell{flex-direction:column;align-items:stretch;width:min(96vw,1100px);max-height:92vh;display:flex}.image-lightbox-top{flex-shrink:0;justify-content:flex-end;align-items:center;margin-bottom:.55rem;display:flex}.image-lightbox-top-spacer{flex:1}.image-lightbox-close{appearance:none;color:#fff;cursor:pointer;background:#ffffff1f;border:1px solid #ffffff47;border-radius:999px;width:2.5rem;height:2.5rem;padding:0;font-size:1.65rem;line-height:1}.image-lightbox-stage{flex:1;place-items:center;min-height:0;display:grid}.image-lightbox-stage img{object-fit:contain;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;max-width:100%;max-height:calc(92vh - 7.5rem);margin:0 auto;display:block}.image-lightbox-pager{flex-shrink:0;justify-content:center;align-items:center;gap:1rem;width:100%;margin-top:.75rem;display:flex}.image-lightbox-pager-btn{appearance:none;color:#fff;cursor:pointer;background:#ffffff29;border:1px solid #ffffff47;border-radius:999px;width:2.5rem;height:2.5rem;padding:0;font-size:1.5rem;line-height:1}.image-lightbox-pager-btn:disabled,.image-lightbox-pager-btn.at-edge{opacity:.35;cursor:default}.image-lightbox-counter{text-align:center;color:#ffffffe6;font-variant-numeric:tabular-nums;min-width:4.5rem;margin:0;font-size:.92rem}.image-lightbox-hint{text-align:center;color:#ffffff8c;flex-shrink:0;margin:.45rem 0 0;font-size:.78rem}@media (width<=768px){.image-lightbox{padding:.75rem;padding-top:calc(.75rem + env(safe-area-inset-top,0px));padding-bottom:calc(.75rem + env(safe-area-inset-bottom,0px));align-items:stretch}.image-lightbox-shell{width:100%;height:100%;max-height:none}.image-lightbox-stage{flex:1}.image-lightbox-stage img{max-height:calc(100vh - 11rem - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px))}}.legal-modal-backdrop{z-index:80;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#1c191473;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.legal-modal{background:var(--card);border-radius:var(--radius);border:1px solid var(--line);width:min(720px,100%);max-height:min(82vh,860px);box-shadow:var(--shadow);flex-direction:column;display:flex;overflow:hidden}.legal-modal-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:.8rem;padding:.9rem 1rem;display:flex}.legal-modal-head h2{font-family:var(--display);margin:0;font-size:1.25rem;font-weight:400}.legal-modal-actions{flex-shrink:0;align-items:center;gap:.65rem;display:flex}.legal-modal-body{padding:.6rem 1.1rem 1.2rem;overflow:auto}@media (width<=800px){.pricing-grid{grid-template-columns:1fr 1fr}}
