
/* Paper Studio v2 · landing page. Scoped to avoid changing /studio or the main resource library. */
:root{--ps-bg:#f7f6f2;--ps-ink:#26312c;--ps-text:#4c5a52;--ps-muted:#77817b;--ps-line:#e0e5df;--ps-panel:#fff;--ps-accent:#315d4d;--ps-accent-2:#e9f2ea;--ps-shadow:0 24px 68px rgba(28,45,35,.065)}
html{background:var(--ps-bg)}
body.paper-home{color:var(--ps-ink);background:radial-gradient(ellipse 70% 35% at 85% 0%,#e8eee5 0%,transparent 80%),var(--ps-bg);font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","PingFang SC","Microsoft Yahei",sans-serif;line-height:1.55;min-height:100dvh}
body.paper-home.dark{--ps-bg:#111815;--ps-ink:#f0f3ef;--ps-text:#b7c4b9;--ps-muted:#91a197;--ps-line:#303d35;--ps-panel:#1b2620;--ps-accent:#97c5a7;--ps-accent-2:#263a2e;--ps-shadow:0 28px 65px #0005;background:radial-gradient(ellipse 70% 35% at 85% 0%,#203528 0%,transparent 80%),var(--ps-bg)}
body.paper-home *{box-sizing:border-box}
body.paper-home button,body.paper-home a{font:inherit}
body.paper-home [hidden]{display:none!important}
.ps-shell{width:min(1180px,calc(100% - 64px));margin:0 auto}
.ps-header{position:sticky;top:0;z-index:40;border-bottom:1px solid var(--ps-line);background:color-mix(in srgb,var(--ps-bg) 88%,transparent);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}
.ps-header-inner{height:74px;display:flex;align-items:center;gap:22px}
.ps-brand{display:flex;gap:11px;align-items:center;text-decoration:none;color:var(--ps-ink)}
.ps-brand-mark{width:38px;height:38px;border:1px solid #294e41;border-radius:12px;background:var(--ps-accent);color:#fff;display:grid;place-items:center;font-family:Georgia,serif;font-size:22px;font-weight:700}
.ps-brand-copy{display:grid;line-height:1.17}.ps-brand-copy b{font-size:17px;letter-spacing:-.035em}.ps-brand-copy small{margin-top:4px;color:var(--ps-muted);font-size:11px;font-weight:500;letter-spacing:.08em}
.ps-header-links{margin-left:auto;display:flex;gap:9px;align-items:center}
.ps-header-links a,.ps-header-links button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:38px;padding:0 13px;border-radius:10px;border:1px solid transparent;background:transparent;text-decoration:none;color:var(--ps-text);font-size:12px!important;font-weight:600;cursor:pointer}
.ps-header-links a:hover,.ps-header-links button:hover{background:var(--ps-accent-2);color:var(--ps-ink)}
.ps-header-links .ps-header-cta{border-color:var(--ps-line);background:var(--ps-panel);color:var(--ps-ink)}
.ps-signal{display:inline-flex;align-items:center;gap:7px;color:var(--ps-accent);font-size:11px;font-weight:650}.ps-signal:before{content:"";width:7px;height:7px;border-radius:50%;background:#58a778;box-shadow:0 0 0 3px #58a77822}
.ps-hero{display:grid;grid-template-columns:minmax(0,1.03fr) minmax(330px,.97fr);gap:76px;align-items:center;padding:74px 0 50px}
.ps-eyebrow{display:flex;gap:12px;align-items:center;margin-bottom:22px;color:var(--ps-accent);font-size:11px;font-weight:800;letter-spacing:.19em}
.ps-eyebrow:before{content:"";width:27px;height:1px;background:currentColor}
.ps-hero h1{font-size:clamp(42px,5vw,67px);letter-spacing:-.065em;line-height:1.17;margin:0 0 23px;font-weight:790}
.ps-hero h1 em{font-style:normal;color:var(--ps-accent)}
.ps-lead{font-size:16px;line-height:1.9;color:var(--ps-text);max-width:560px;margin:0 0 30px}
.ps-actions{display:flex;flex-wrap:wrap;gap:10px}
.ps-button{appearance:none;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:47px;border:1px solid var(--ps-line);border-radius:12px;padding:0 18px;cursor:pointer;font-size:13px!important;font-weight:700!important;transition:background .15s,color .15s,transform .15s}
.ps-button:hover{transform:translateY(-1px)}
.ps-button.primary{background:var(--ps-accent);border-color:var(--ps-accent);color:#fff}
.ps-button.primary:hover{filter:brightness(.93)}
.ps-button.secondary{background:var(--ps-panel);color:var(--ps-ink)}
.ps-button.secondary:hover{background:var(--ps-accent-2)}
.ps-smallnote{margin-top:19px;color:var(--ps-muted);font-size:12px;display:flex;flex-wrap:wrap;gap:16px}
.ps-smallnote span:before{content:"✓";margin-right:6px;color:var(--ps-accent)}
.ps-document-frame{background:color-mix(in srgb,var(--ps-panel) 68%,#d6ded8);border:1px solid var(--ps-line);border-radius:24px;padding:19px;box-shadow:var(--ps-shadow);min-width:0;position:relative}
.ps-document-top{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:var(--ps-muted);margin-bottom:16px}
.ps-document-top span{display:flex;align-items:center;gap:8px}
.ps-document-top i{width:7px;height:7px;background:#68a97d;border-radius:50%}
.ps-document-top b{font-size:10px;font-weight:600;color:var(--ps-accent);background:var(--ps-accent-2);padding:5px 9px;border-radius:7px}
.ps-paper-demo{background:#fff;color:#1b2020;aspect-ratio:210/273;max-height:525px;overflow:hidden;padding:38px 37px;border:1px solid #e2e3de;box-shadow:0 7px 30px #28352f11;font-family:"Times New Roman","Songti SC","SimSun",serif;line-height:1.65;position:relative}
.ps-paper-demo .ps-watermark{position:absolute;right:-8%;top:35%;transform:rotate(-29deg);font:700 46px Georgia,serif;letter-spacing:.1em;color:#ecf0ed;z-index:0;pointer-events:none}
.ps-paper-demo>div:not(.ps-watermark){position:relative;z-index:1}
.ps-sheet-kicker{font-size:10px;letter-spacing:.1em;text-align:center;color:#7b817e}
.ps-sheet-title{font-family:"Songti SC","SimSun",serif;text-align:center;font-size:18px;font-weight:700;line-height:1.4;margin:10px 0 2px}
.ps-sheet-sub{font-size:10px;text-align:center;color:#6e7772;margin-bottom:17px}
.ps-sheet-rule{border-top:1px solid #aab2ac;margin-bottom:16px}
.ps-paper-demo .ps-q{font-size:12px;margin:14px 0 8px;line-height:1.65}
.ps-paper-demo .ps-q-num{font-weight:bold;display:inline-block;min-width:20px}
.ps-formula{display:inline;font-family:Georgia,"Times New Roman",serif;font-style:italic}
.ps-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 14px;margin:9px 0 12px 21px;font-size:11px}
.ps-math-display{text-align:center;font-family:Georgia,serif;font-size:16px;margin:8px 0}
.ps-sheet-foot{border-top:1px solid #ddd;position:absolute;bottom:20px;left:37px;right:37px;text-align:center;padding-top:5px;color:#7d857f;font-size:9px}
.ps-document-caption{display:flex;align-items:center;justify-content:space-between;margin:13px 0 0;color:var(--ps-muted);font-size:11px;gap:12px}
.ps-document-caption strong{font-weight:600;color:var(--ps-text)}
.ps-section{padding:35px 0 70px}
.ps-section-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:23px}
.ps-section-label{font-size:11px;letter-spacing:.16em;font-weight:750;color:var(--ps-accent)}
.ps-section-head h2{font-size:31px;line-height:1.2;letter-spacing:-.045em;margin:9px 0 0;font-weight:760}
.ps-section-head p{margin:0;max-width:420px;color:var(--ps-text);font-size:13px;line-height:1.7}
.ps-task-grid{display:grid;grid-template-columns:1.18fr .82fr;gap:16px}
.ps-task-card{background:var(--ps-panel);border:1px solid var(--ps-line);border-radius:20px;padding:28px;min-width:0;box-shadow:0 8px 30px #11251b05}
.ps-task-card h3{margin:0 0 7px;font-size:19px;letter-spacing:-.025em}
.ps-task-card p{font-size:13px;color:var(--ps-text);margin:0;line-height:1.75}
.ps-dropzone{margin-top:22px;border:1.5px dashed #a7b9ac;border-radius:14px;background:color-mix(in srgb,var(--ps-accent-2) 65%,var(--ps-panel));min-height:183px;padding:21px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:7px;transition:.16s}
.ps-dropzone.drag-over{border-color:#4b9d6e;box-shadow:inset 0 0 0 2px #4b9d6e26;background:#e1f0e4}
.ps-drop-icon{width:42px;height:42px;border-radius:13px;background:var(--ps-panel);border:1px solid var(--ps-line);display:grid;place-items:center;font-size:22px;color:var(--ps-accent)}
.ps-dropzone strong{font-size:13px;color:var(--ps-ink)}
.ps-dropzone small{font-size:11px;color:var(--ps-muted)}
.ps-dropzone .ps-button{margin-top:8px;min-height:39px}
.ps-microcopy{color:var(--ps-muted);font-size:11px;margin-top:12px;line-height:1.6}
.ps-helper-list{padding:17px 0 0;display:flex;flex-direction:column;gap:14px}
.ps-helper-row{display:flex;align-items:start;gap:13px;padding:11px 0;border-bottom:1px solid var(--ps-line)}
.ps-helper-row:last-child{border-bottom:0}
.ps-helper-number{font:600 11px ui-monospace,monospace;color:var(--ps-accent);padding-top:3px}
.ps-helper-text{flex:1;min-width:0}
.ps-helper-text strong{display:block;font-size:13px;margin-bottom:4px}
.ps-helper-text small{display:block;color:var(--ps-muted);font-size:11px;line-height:1.6}
.ps-helper-row button{margin-left:auto;flex:0 0 auto;border:1px solid var(--ps-line);background:var(--ps-panel);border-radius:9px;padding:8px 10px;color:var(--ps-accent);cursor:pointer;font-size:11px;font-weight:700}
.ps-helper-row button:hover{background:var(--ps-accent-2)}
.ps-about{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px;padding-bottom:82px}
.ps-about>article{border-top:1px solid var(--ps-line);padding:18px 0 0}
.ps-about strong{display:block;font-size:13px;margin-bottom:6px}.ps-about p{margin:0;color:var(--ps-muted);font-size:12px;line-height:1.7}
.ps-footer{border-top:1px solid var(--ps-line);padding:23px 0 34px;color:var(--ps-muted);font-size:11px}
.ps-footer-inner{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap}
body.paper-home .modal-layer{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:18px}
body.paper-home .modal-backdrop{position:absolute;inset:0;background:#111d169a;border:0;cursor:pointer}
body.paper-home .modal{position:relative;z-index:1;width:min(530px,100%);background:var(--ps-panel);border:1px solid var(--ps-line);border-radius:18px;overflow:hidden;box-shadow:0 30px 90px #0003}
body.paper-home .modal header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:20px 23px;border-bottom:1px solid var(--ps-line)}
body.paper-home .modal h2{margin:0;font-size:18px}body.paper-home .modal header span{font-size:10px;color:var(--ps-accent);letter-spacing:.1em}
body.paper-home .modal .icon-btn{width:32px;height:32px;border:1px solid var(--ps-line);border-radius:9px;background:var(--ps-panel);color:var(--ps-ink);cursor:pointer}
body.paper-home .modal-body{padding:20px 23px;color:var(--ps-text);font-size:13px;max-height:70dvh;overflow:auto}
body.paper-home .modal-body code{font-family:ui-monospace,monospace;background:var(--ps-accent-2);color:var(--ps-ink);padding:2px 4px;border-radius:4px}
body.paper-home .warning-box{padding:13px;border-radius:9px;background:var(--ps-accent-2);color:var(--ps-text);margin-top:15px}
body.paper-home .toast{position:fixed;bottom:28px;left:50%;transform:translate(-50%,15px);z-index:200;opacity:0;pointer-events:none;transition:.2s;padding:10px 17px;border-radius:10px;background:#1e3328;color:#fff;font-size:12px;box-shadow:0 10px 24px #0002}
body.paper-home .toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:1000px){.ps-hero{gap:34px;grid-template-columns:minmax(0,1fr) minmax(300px,.9fr)}.ps-hero h1{font-size:clamp(38px,5.4vw,55px)}}
@media(max-width:760px){.ps-shell{width:min(100% - 32px,580px)}.ps-header-inner{height:60px}.ps-brand-mark{height:35px;width:35px}.ps-brand-copy b{font-size:15px}.ps-header-links .ps-status-hide,.ps-header-links a.ps-header-cta{display:none}.ps-hero{grid-template-columns:1fr;padding:45px 0 12px;gap:30px}.ps-eyebrow{margin-bottom:17px}.ps-hero h1{font-size:clamp(36px,9.5vw,48px)}.ps-lead{font-size:14px;margin-bottom:22px}.ps-document-frame{max-width:510px;margin:0 auto;width:100%;padding:13px}.ps-paper-demo{padding:24px 24px;max-height:390px}.ps-paper-demo .ps-q{font-size:11px}.ps-sheet-foot{left:24px;right:24px}.ps-section{padding:42px 0}.ps-section-head{display:block}.ps-section-head h2{font-size:25px}.ps-section-head p{margin-top:10px;font-size:12px}.ps-task-grid{grid-template-columns:1fr}.ps-task-card{padding:21px}.ps-about{grid-template-columns:1fr;gap:18px;padding-bottom:42px}.ps-about>article{padding-top:14px}.ps-smallnote{font-size:11px;gap:10px}}
@media(prefers-reduced-motion:reduce){body.paper-home *,body.paper-home *:before,body.paper-home *:after{transition:none!important;animation:none!important}}
