:root{--ink:#203b2d;--muted:#718078;--line:#dfe4dc;--paper:#f5f6f0;--lime:#d2f27d;--white:#fff;--radius:18px}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.65 "Microsoft JhengHei","PingFang TC",system-ui,sans-serif}button,input,textarea,select{font:inherit}button,a,input,select,summary{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}header{height:92px;padding:0 max(32px,calc((100vw - 1370px)/2));display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:20px}.wordmark{display:flex;align-items:center;gap:12px;font-size:17px;white-space:nowrap}.wordmark b{font-size:14px;letter-spacing:2px;margin-left:9px}.logo{display:grid;place-items:center;width:38px;height:38px;background:var(--ink);color:var(--lime);border-radius:10px;font:bold 26px Georgia}nav{display:flex;align-items:center;gap:23px;font-size:12px}nav a{color:var(--muted)}.status{background:#e7ebe1;border:1px solid #d9dfd2;border-radius:30px;padding:6px 12px;display:flex;align-items:center;gap:8px;white-space:nowrap}.status i{width:7px;height:7px;border-radius:50%;background:#a88947}.status.online i{background:#4b8f38}.status.offline{color:#977630}main{max-width:1370px;margin:auto;padding:0 32px}.intro{display:flex;justify-content:space-between;align-items:flex-end;padding:52px 0 44px;gap:25px}.eyebrow{font-size:10px;letter-spacing:2.7px;font-weight:700;color:#637465}h1{font-size:clamp(28px,3.05vw,44px);line-height:1.4;letter-spacing:-1px;font-weight:600;margin:15px 0}h1 span{color:#628046}.intro p{color:var(--muted);max-width:650px;font-size:13px;margin-bottom:0}.intro-tag{border-left:1px solid var(--line);padding-left:24px;min-width:250px;margin-bottom:7px}.intro-tag>span{font:italic 31px Georgia;color:#90a381}.intro-tag p{font-size:11px;white-space:nowrap}.studio{display:grid;grid-template-columns:1.02fr .98fr;gap:28px;align-items:start}.create-panel,.results-panel,.login{border:1px solid var(--line);background:var(--white);border-radius:var(--radius);padding:26px}.section-top{display:flex;align-items:center;justify-content:space-between;padding-bottom:15px;border-bottom:1px solid #edf0e9;gap:15px}.section-top h2{font-size:17px;font-weight:600;margin:0}.section-top>span{font-size:10px;letter-spacing:1.6px;color:var(--muted)}.field-title{display:flex;align-items:center;gap:10px;margin:26px 0 12px}.field-title b{font:12px Georgia;color:#89977c}.field-title label{font-size:13px;font-weight:600}.field-title span{margin-left:auto;color:var(--muted);font-size:11px}.dropzone{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:180px;border:1px dashed #b7c5aa;border-radius:12px;background:#f8faf3;cursor:pointer;text-align:center;gap:3px;padding:22px}.dropzone.dragging{background:#edf9d8;border-color:var(--ink)}.dropzone .plus{font-size:25px;line-height:1.2;color:#799652;margin-bottom:12px}.dropzone strong{font-weight:500;font-size:14px}.dropzone small{color:var(--muted);font-size:10px}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.image-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-top:12px}.image-card{position:relative;border:1px solid var(--line);border-radius:9px;overflow:hidden;aspect-ratio:1;background:#f7f7f2}.image-card img{width:100%;height:100%;object-fit:contain}.image-card .remove{position:absolute;right:4px;top:4px;border:0;background:#203b2dd9;color:white;border-radius:50%;width:21px;height:21px;padding:0;line-height:21px}.image-card span{position:absolute;left:5px;bottom:5px;background:#ffffffde;border-radius:4px;font-size:10px;padding:0 6px}.reference{border-bottom:1px solid #edf0e9;padding:10px 0 14px;font-size:11px;color:var(--muted)}.reference summary{cursor:pointer;color:#63765b}.reference summary span{margin-left:8px;font-size:10px}.reference input{padding:5px}.two-columns{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}form label{display:block;font-size:12px;color:#506450}em{font-style:normal;color:#8a9588;font-size:10px;margin-left:5px}input:not([type=file]):not([type=checkbox]),textarea,select{display:block;width:100%;border:1px solid #dce2d6;border-radius:8px;background:#fcfcf9;color:var(--ink);padding:11px 12px;margin-top:7px;font-size:12px;outline:none;min-height:43px}input:focus,textarea:focus,select:focus{border-color:#95b36e;box-shadow:0 0 0 3px #b3d37822}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#98a192}.form-note,.time-note{font-size:10px;color:#8c9586;line-height:1.8;margin:7px 0 16px}.time-note{margin:14px 0 0}.actions{display:flex;gap:10px;align-items:center}.primary,.secondary{border-radius:8px;border:1px solid var(--ink);padding:12px 17px;font-size:12px;line-height:1.4;transition:background .15s}.primary{background:var(--ink);color:#fff}.primary span{margin-left:20px;color:var(--lime)}.primary:hover{background:#355240}.secondary{background:#fff;color:var(--ink);border-color:#d3dccb}.secondary:hover{background:#f0f5e8}button:disabled{opacity:.5;cursor:wait}.quiet{border:0;background:transparent;color:#71836a;font-size:11px;padding:3px}.empty-preview{aspect-ratio:4/3;position:relative;overflow:hidden;background:linear-gradient(140deg,#244834,#152b21);border-radius:12px;margin-top:20px;color:#dce9cc;display:flex;flex-direction:column;align-items:center;justify-content:center}.film-chip{position:absolute;top:23px;left:24px;font-size:8px;letter-spacing:2.5px;color:#b7cca2}.orb{position:absolute;width:220px;height:220px;border:1px solid #537d53;border-radius:50%;box-shadow:0 0 0 35px #496f4725,0 0 0 70px #496f4715;transform:rotate(-20deg);background:radial-gradient(at 25% 22%,#bdd38a55,transparent 60%)}.play-icon{z-index:1;font-size:50px;font-weight:200;color:#d2edac}.empty-preview p{text-align:center;font-size:12px;position:relative;line-height:2}.empty-preview strong{font-size:17px;font-weight:500;color:#eef5e4}video{width:100%;height:auto;max-height:530px;display:block;background:#16241c;border-radius:12px;margin-top:20px}.active-task{padding:20px 0 15px}.task-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:14px}.pill{font-size:10px;padding:2px 8px;border-radius:20px;background:#edf3e2;color:#57763e}.active-task p{font-size:11px;color:var(--muted);overflow-wrap:anywhere}.progress{height:5px;background:#e9eee2;border-radius:6px;overflow:hidden}.progress>div{height:100%;width:0;background:#87ad54;transition:width .7s}.progress-legend{display:flex;justify-content:space-between;font-size:9px;color:#98a28d;padding:5px 0}.steps{display:flex;justify-content:space-between;font-size:9px;color:#a2ae98;padding-top:12px}.steps span{border-top:2px solid #e5eadf;padding-top:6px;flex:1;text-align:center;margin-right:4px}.steps span.complete{color:#4e7335;border-color:#99b574}.task-actions{display:flex;flex-wrap:wrap;gap:7px;padding-top:15px}.task-actions a,.task-actions button{font-size:10px;padding:6px 10px;border-radius:6px;background:#f3f6ed;border:1px solid #dce5d2;color:var(--ink)}.history{margin-top:20px}.job-row{display:flex;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid #edf0e9;cursor:pointer}.job-row:hover{background:#f8faf4}.job-icon{width:38px;height:46px;display:grid;place-items:center;background:#edf1e5;border-radius:6px;color:#879d6c}.job-info{flex:1;min-width:0}.job-info b{font-size:12px;font-weight:500}.job-info p{font-size:10px;color:#8b9583;margin:2px 0}.job-row.selected .job-info b{color:#698c46}.muted{font-size:12px;color:var(--muted)}.plan-editor{padding:15px;border:1px solid #d4e0c8;border-radius:10px;background:#f9fbf5;margin:8px 0 20px}.plan-editor h3{font-size:15px;margin:0}.plan-editor p{font-size:10px;color:var(--muted)}.segment-editor{margin:15px 0;padding-top:12px;border-top:1px solid var(--line)}.segment-editor h4{font-size:12px;margin:0 0 8px}.segment-editor label{margin-top:8px}.segment-editor textarea{font:11px/1.7 system-ui}.segment-editor details{font-size:10px;margin-top:10px}.login{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:32px 40px}.login h2{font-size:24px;margin:10px 0}.login p{font-size:12px;color:var(--muted)}.login form{min-width:300px}.login button{margin-top:15px;width:100%}footer{display:flex;justify-content:space-between;padding:26px 0 32px;font-size:9px;letter-spacing:1.5px;color:#98a38c;gap:15px}.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);z-index:20;background:#213a2e;color:white;padding:12px 24px;border-radius:8px;max-width:90vw;font-size:13px;box-shadow:0 6px 30px #0003}.hidden{display:none!important}dialog{border:1px solid #dce5d2;border-radius:16px;width:min(720px,92vw);max-height:85vh;padding:24px;color:var(--ink);box-shadow:0 30px 90px #0003}dialog::backdrop{background:#14241dab}.dialog-heading{display:flex;justify-content:space-between;align-items:center}.dialog-heading h2{font-size:21px;margin:0}dialog p{font-size:11px;color:var(--muted)}#settingsFields label{margin:13px 0}.check{display:flex;gap:9px;align-items:center;margin:18px 0}#testResult{font-size:12px}.settings-group{border-top:1px solid var(--line);margin-top:20px}.settings-group h3{font-size:14px}
@media(min-width:1450px){.intro{padding-top:60px}.dropzone{min-height:195px}}@media(max-width:1000px){.intro-tag{display:none}header{padding:0 24px}.studio{gap:18px}main{padding:0 24px}.create-panel,.results-panel{padding:20px}.wordmark b{display:none}nav{gap:14px}.actions{flex-wrap:wrap}.primary{flex:1}.image-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:750px){header{height:75px;padding:0 18px}nav a{display:none}nav{gap:10px}.wordmark{font-size:14px}.logo{width:31px;height:31px;font-size:22px}.status{font-size:10px;padding:4px 8px}main{padding:0 16px}.intro{padding:30px 0}.intro p{font-size:12px}.studio{grid-template-columns:1fr}.create-panel,.results-panel{padding:20px}.image-grid{grid-template-columns:repeat(4,1fr)}.login{display:block;padding:24px}.login form{min-width:0}footer{display:block;font-size:8px}footer span{display:block;margin-bottom:7px}.empty-preview{aspect-ratio:5/3}.orb{width:160px;height:160px}.eyebrow{font-size:9px;letter-spacing:1.6px}h1{font-size:28px}.two-columns{gap:10px}em{display:block;margin-left:0}#settingsButton{font-size:10px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}
