:root{--red: #ff2442;--red-dark: #e31838;--ink: #1f2329;--muted: #77808d;--line: #e7ebf0;--surface: rgba(255, 255, 255, .9);--shadow: 0 22px 64px rgba(39, 47, 64, .1);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;color:var(--ink);background:#f7f8fa;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;overflow-x:hidden;background:radial-gradient(circle at 6% 0%,rgba(255,117,139,.18),transparent 30%),radial-gradient(circle at 96% 4%,rgba(255,215,164,.2),transparent 27%),#f7f8fa}button,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}.app-shell{min-height:100vh;animation:page-in .65s ease both}.page-width{width:min(1500px,calc(100% - 56px));margin:0 auto}.topbar{display:flex;align-items:center;justify-content:space-between;padding:27px 0 18px;animation:slide-down .65s .04s cubic-bezier(.2,.75,.25,1) both}.brand{display:inline-flex;align-items:center;gap:11px;color:var(--ink);text-decoration:none}.brand-mark{display:grid;width:39px;height:39px;place-items:center;color:#fff;border-radius:13px;background:linear-gradient(135deg,#ff5b72,var(--red-dark));box-shadow:0 10px 22px #ff244233;font-weight:900}.brand strong{display:block;letter-spacing:-.03em}.brand small{display:block;margin-top:3px;color:var(--muted);font-size:11px}.topbar-note{color:#a0a8b3;font-size:11px;font-weight:800;letter-spacing:.14em}.hero{padding:64px 0 42px;text-align:center;animation:rise-in .7s .1s cubic-bezier(.2,.75,.25,1) both}.eyebrow,.section-kicker{color:var(--red);font-size:11px;font-weight:850;letter-spacing:.14em}.hero h1{margin:0 0 14px;font-size:clamp(34px,5vw,58px);letter-spacing:-.06em;line-height:1.06}.hero p{max-width:620px;margin:0 auto;color:var(--muted);font-size:14px;line-height:1.8}.surface-card{border:1px solid rgba(255,255,255,.92);border-radius:25px;background:var(--surface);box-shadow:var(--shadow);backdrop-filter:blur(16px)}.workspace-layout{display:grid;grid-template-columns:minmax(300px,.75fr) minmax(0,1.28fr) minmax(350px,.95fr);gap:28px;align-items:start}.workspace-layout:not(.has-result) .input-panel{grid-column:1 / -1}.workspace-layout.has-result .input-panel{position:sticky;top:18px;grid-column:1}.input-panel,.result-panel{padding:30px}.input-panel{animation:rise-in .7s .18s cubic-bezier(.2,.75,.25,1) both}.section-heading,.result-header,.gallery-heading,.content-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.section-heading h2,.result-header h2{margin:0;font-size:20px;letter-spacing:-.03em}.counter{color:#9aa2ad;font-size:12px}textarea{display:block;width:100%;min-height:158px;margin-top:18px;padding:17px;resize:vertical;outline:0;border:1px solid var(--line);border-radius:16px;color:var(--ink);background:#fff;font-size:14px;line-height:1.75;transition:.2s}textarea:focus{border-color:#ff244280;box-shadow:0 0 0 4px #ff244217}.input-actions{display:flex;align-items:center;gap:10px;margin-top:14px}.primary-button,.secondary-button{min-height:43px;padding:0 17px;border:0;border-radius:12px;font-size:13px;font-weight:750;transition:transform .2s,opacity .2s,box-shadow .2s,background-color .2s}.primary-button,.secondary-button,.source-link,.author-badge,.content-heading h3,.gallery-heading h3,.text-toggle,.stat-item,.preview-step,.download-button,.close-button{display:inline-flex;align-items:center;gap:7px}.button-icon{flex:0 0 auto}.primary-button{color:#fff;background:linear-gradient(135deg,#ff536d,var(--red-dark));box-shadow:0 9px 18px #ff24422e}.secondary-button{color:#616b78;background:#f0f2f5}.primary-button:hover,.secondary-button:hover{transform:translateY(-2px)}.primary-button:active,.secondary-button:active,.preview-step:active,.download-button:active,.close-button:active{transform:translateY(0) scale(.97)}.primary-button:disabled{cursor:wait;opacity:.6}.input-tip{margin-left:auto;color:#9aa2ad;font-size:12px}.workspace-layout.has-result .input-actions{flex-wrap:wrap}.workspace-layout.has-result .input-tip{width:100%;margin-left:0;padding-top:2px}.spinner{display:inline-block;width:13px;height:13px;margin-right:7px;vertical-align:-2px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.spin-icon{animation:spin .8s linear infinite}.notice{display:flex;align-items:center;gap:7px;margin-top:14px;padding:11px 13px;border-radius:11px;font-size:13px}.error-notice{color:#b4233c;background:#fff0f2}.success-notice{color:#177245;background:#eaf9f0}.result-panel{margin-top:24px;scroll-margin-top:18px}.workspace-layout.has-result .result-panel{grid-column:2 / -1;margin-top:0}.result-enter-active,.result-leave-active{transition:opacity .55s ease,transform .55s cubic-bezier(.2,.75,.25,1),filter .55s ease}.result-enter-from,.result-leave-to{opacity:0;transform:translateY(18px) scale(.985);filter:blur(5px)}.result-header{align-items:flex-start;padding-bottom:21px;border-bottom:1px solid var(--line)}.result-header h2{max-width:740px;font-size:24px;line-height:1.4}.result-header p{margin:8px 0 0;color:var(--muted);font-size:12px}.source-link{padding-top:5px;color:var(--red-dark);font-size:13px;text-decoration:none;white-space:nowrap}.source-link:hover{text-decoration:underline}.result-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(350px,.85fr);gap:28px;align-items:start;padding-top:26px}.details-column{min-width:0}.inner-card{border:1px solid var(--line);border-radius:20px;background:#fff;transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease}.inner-card:hover{border-color:#f0d9de;box-shadow:0 14px 28px #272f4012;transform:translateY(-2px)}.author-card,.content-card,.gallery-card{padding:24px}.author-main{display:flex;align-items:center;gap:14px;margin-top:15px}.avatar{display:grid;width:62px;height:62px;flex:0 0 auto;place-items:center;overflow:hidden;color:var(--red);border:1px solid #ffd7de;border-radius:18px;background:#fff0f2;font-size:21px;font-weight:850}.avatar img{width:100%;height:100%;object-fit:cover}.author-copy{min-width:0}.author-copy strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:17px}.author-copy span{display:block;margin-top:6px;overflow:hidden;color:var(--muted);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.author-badge{margin-left:auto;padding:6px 9px;color:#687383;border-radius:8px;background:#f2f4f7;font-size:11px;white-space:nowrap}.stats-row{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-top:21px;padding-top:19px;border-top:1px solid var(--line)}.stat-item{position:relative;min-width:0;min-height:112px;flex-direction:column;justify-content:center;padding:16px 8px 14px;text-align:center;border:1px solid #e1e6ee;border-radius:16px;background:linear-gradient(145deg,#fff,#fbfcfe 72%,#fff4f6);box-shadow:0 6px 16px #272f400b;transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}.stat-item:after{position:absolute;right:15px;bottom:0;left:15px;height:2px;border-radius:2px 2px 0 0;background:linear-gradient(90deg,transparent,rgba(255,36,66,.5),transparent);content:"";opacity:.55;transition:opacity .25s ease}.stat-item:hover{border-color:#ffc5cf;box-shadow:0 12px 24px #ff24421c;transform:translateY(-4px)}.stat-item:hover:after{opacity:1}.stat-icon{width:21px;height:21px;flex:0 0 auto;margin-bottom:9px;color:var(--red);stroke-width:1.9}.stat-item strong{display:block;overflow:hidden;font-size:22px;font-weight:800;letter-spacing:-.03em;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}.stat-item span{display:block;margin-top:8px;color:#697484;font-size:12px;font-weight:600}.content-card{margin-top:17px}.content-heading h3,.gallery-heading h3{margin:5px 0 0;font-size:15px}.text-toggle{padding:5px 0;border:0;color:var(--red-dark);background:transparent;font-size:12px;font-weight:750;transition:color .2s,transform .2s}.text-toggle:hover{color:var(--red);transform:translateY(-1px)}.text-toggle svg{transition:transform .3s ease}.text-toggle.expanded svg{transform:rotate(180deg)}.note-content{position:relative;max-height:220px;overflow:hidden;margin:17px 0 0;color:#4f5864;white-space:pre-wrap;font-size:14px;line-height:1.9;-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 78%,transparent 100%);mask-image:linear-gradient(to bottom,#000 0%,#000 78%,transparent 100%);transition:max-height .65s cubic-bezier(.2,.75,.25,1),opacity .35s ease}.note-content.expanded{-webkit-mask-image:none;mask-image:none}.gallery-card{position:sticky;top:18px}.image-count{color:var(--muted);font-size:12px}.gallery-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap}.download-all-button{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:0 11px;border:1px solid #ffd0d7;border-radius:9px;color:var(--red-dark);background:#fff7f8;font-size:12px;font-weight:750;transition:transform .2s,color .2s,background-color .2s,box-shadow .2s}.download-all-button:hover{color:#fff;background:var(--red);box-shadow:0 7px 16px #ff244233;transform:translateY(-2px)}.download-all-button:active{transform:translateY(0) scale(.97)}.download-all-button:disabled{cursor:wait;opacity:.65}.image-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:18px}.image-tile{display:block;width:100%;padding:0;overflow:hidden;border:0;border-radius:13px;background:#edf0f4;cursor:zoom-in;opacity:0;animation:tile-in .55s var(--delay, 0ms) cubic-bezier(.2,.75,.25,1) both;transition:transform .28s ease,box-shadow .28s ease}.image-tile img{display:block;width:100%;height:auto;transition:transform .45s cubic-bezier(.2,.75,.25,1),filter .35s ease}.image-tile:hover{box-shadow:0 12px 24px #1f232929;transform:translateY(-4px)}.image-tile:hover img{filter:saturate(1.08);transform:scale(1.045)}.empty-state{padding:50px 10px;color:var(--muted);text-align:center;font-size:13px}.raw-details{margin-top:22px;padding-top:17px;border-top:1px solid var(--line)}.raw-details summary{cursor:pointer;color:var(--muted);font-size:13px}.raw-details pre{max-height:340px;overflow:auto;margin:13px 0 0;padding:14px;border-radius:12px;color:#53606f;background:#f6f7f9;font-size:12px;line-height:1.6;white-space:pre-wrap;word-break:break-word}.preview-overlay{position:fixed;inset:0;z-index:30;display:grid;place-items:center;padding:20px;background:#10141bcc;backdrop-filter:blur(9px)}.preview-fade-enter-active,.preview-fade-leave-active{transition:opacity .3s ease,backdrop-filter .3s ease}.preview-fade-enter-from,.preview-fade-leave-to{opacity:0;backdrop-filter:blur(0)}.preview-fade-enter-active .preview-modal{animation:preview-pop .38s cubic-bezier(.2,.8,.25,1) both}.preview-modal{display:flex;max-width:96vw;max-height:94vh;flex-direction:column;overflow:hidden;border:1px solid rgba(255,255,255,.16);border-radius:18px;background:#171a20;box-shadow:0 25px 90px #0006}.preview-image-enter-active,.preview-image-leave-active{transition:opacity .28s ease,transform .32s cubic-bezier(.2,.75,.25,1)}.preview-image-enter-from{opacity:0;transform:scale(.94) translate(22px)}.preview-image-leave-to{opacity:0;transform:scale(1.035) translate(-22px)}.preview-image{display:block;width:auto;max-width:92vw;height:auto;max-height:78vh;object-fit:contain}.preview-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 14px;color:#d8dde5;font-size:12px}.preview-navigation,.preview-actions{display:flex;align-items:center;gap:10px}.preview-step,.close-button{padding:8px 11px;border:1px solid #424853;border-radius:9px;color:#e6e9ee;background:#252a33;font-size:12px;cursor:pointer}.preview-step:hover,.close-button:hover{border-color:#ff536d;background:#3a2028}.download-button{padding:8px 13px;color:#fff;border-radius:9px;background:var(--red);font-weight:750;text-decoration:none;transition:transform .2s,box-shadow .2s,background-color .2s}.download-button:hover{background:var(--red-dark);box-shadow:0 8px 18px #ff24424d;transform:translateY(-2px)}.footer{padding:26px 0 42px;color:#9aa2ad;text-align:center;font-size:12px}@keyframes page-in{0%{opacity:0}to{opacity:1}}@keyframes slide-down{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}@keyframes rise-in{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes tile-in{0%{opacity:0;transform:translateY(14px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes preview-pop{0%{opacity:0;transform:translateY(18px) scale(.94)}to{opacity:1;transform:translateY(0) scale(1)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media(max-width:1100px)and (min-width:821px){.workspace-layout{grid-template-columns:minmax(270px,.72fr) minmax(0,1.28fr);gap:22px}.workspace-layout.has-result .result-panel{grid-column:2}.result-layout{grid-template-columns:1fr}.gallery-card{position:static}}@media(max-width:820px){.workspace-layout{grid-template-columns:1fr}.workspace-layout.has-result .input-panel,.workspace-layout.has-result .result-panel{grid-column:1;position:static}.workspace-layout.has-result .result-panel{margin-top:0}.result-layout{grid-template-columns:1fr}.gallery-card{position:static}}@media(max-width:600px){.page-width{width:min(100% - 22px,1160px)}.topbar-note{display:none}.hero{padding:36px 0 26px}.hero h1{font-size:38px}.input-panel,.result-panel{padding:17px;border-radius:20px}.input-actions{flex-wrap:wrap}.input-tip{width:100%;margin-left:0}.stats-row{grid-template-columns:repeat(3,minmax(0,1fr))}.image-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.result-header{display:block}.source-link{display:inline-flex;margin-top:7px}.preview-toolbar{flex-wrap:wrap;justify-content:center}.preview-navigation,.preview-actions{width:100%;justify-content:center}}
