
:root{--ink:#132e35;--muted:#72858a;--teal:#087f75;--line:#e1e9e8;--bg:#f4f7f6;--white:#fff;--amber:#a76a18}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--bg);font:14px/1.6 "Segoe UI","Microsoft YaHei",sans-serif}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer;border:0;border-radius:9px;padding:11px 18px;transition:.15s}button:hover{filter:brightness(.95)}button:disabled{opacity:.5;cursor:wait}a:focus-visible,button:focus-visible{outline:3px solid #53b9ac;outline-offset:3px}input,textarea,select{display:block;width:100%;border:1px solid #dbe4e2;background:#fcfdfd;border-radius:9px;padding:12px;color:var(--ink);outline:none;margin-top:7px}input:focus,textarea:focus,select:focus{border-color:var(--teal);box-shadow:0 0 0 3px #087f7510}textarea{resize:vertical}label{display:block;color:#385359;font-weight:500}h1,h2,p{margin:0}h1{font-size:39px;line-height:1.3;letter-spacing:-1.2px;font-weight:650}h2{font-size:18px;letter-spacing:-.3px}p{color:var(--muted);margin-top:7px}small,.muted{color:var(--muted)}.top{height:82px;padding:0 5%;display:flex;justify-content:space-between;align-items:center;background:white;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;font-size:29px;font-weight:750;color:var(--teal)}.brand>span{font-size:22px;color:var(--ink)}.brand-sub{font-size:9px;letter-spacing:2px;display:block;color:var(--muted);line-height:1.1}.top-note{font-size:12px;color:var(--muted)}.live-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#1ba38d;margin-right:6px;box-shadow:0 0 0 4px #1ba38d10}.client-wrap{max-width:1000px;margin:0 auto;padding:48px 28px}.admin-wrap{max-width:1340px;margin:auto;padding:38px 36px}.eyebrow{color:var(--teal);font-size:10px;letter-spacing:2.5px;font-weight:700;margin-bottom:16px}.intro{display:flex;align-items:center;justify-content:space-between;gap:35px;margin-bottom:36px}.intro p{max-width:510px;margin-top:16px;line-height:1.9}.time-card{min-width:250px;background:#e6f0ec;border:1px solid #d2e5dd;border-radius:16px;padding:24px 25px;font-size:12px}.time-card strong{display:block;font-size:35px;letter-spacing:3px;font-variant-numeric:tabular-nums;font-weight:500;margin:8px 0}.time-card small{font-size:10px}.card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:28px;margin-bottom:22px;box-shadow:0 4px 20px #193c3103}.section-title{display:flex;align-items:center;gap:14px;margin-bottom:24px}.section-title p{font-size:12px}.section-title>.subtle,.section-title>.muted,.section-title>.pill{margin-left:auto}.step{display:grid;place-items:center;flex-shrink:0;width:36px;height:36px;background:#e8f3ef;color:var(--teal);font-weight:650;border-radius:10px}.pill,.badge{padding:4px 10px;border-radius:6px;font-size:11px;background:#edf5f1;color:var(--teal);white-space:nowrap}.badge.warn{background:#fff4df;color:var(--amber)}.badge.off{background:#f3eded;color:#9a615b}.primary{color:#fff;background:var(--teal);font-weight:600}.primary span{margin-left:25px}.outline{display:inline-block;border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:9px;padding:9px 14px}.subtle{background:transparent;color:var(--teal);padding:6px 9px;font-size:12px}.form-bottom,.inline-form{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-top:18px}.form-bottom label{width:215px}.inline-form{margin-top:0}.grow{flex:1}.helper{font-size:12px;color:var(--muted);padding-top:18px;margin-top:18px;border-top:1px solid #f0f3f2}.count{background:#f0f4f3;border-radius:6px;padding:2px 7px;margin-left:6px;font-size:12px;color:var(--muted)}.empty{text-align:center;padding:40px 15px;color:var(--muted);border:1px dashed #dce6e3;border-radius:10px}.empty-icon{font-size:28px;opacity:.45;margin-bottom:8px}.empty p{font-size:12px}.file-row{display:flex;align-items:center;gap:14px;padding:16px 4px;border-bottom:1px solid #edf1f0}.file-row:last-child{border:0}.file-icon{display:grid;place-items:center;background:#edf4f8;color:#4d7e9b;border-radius:9px;width:39px;height:43px;font-size:10px;font-weight:700;flex-shrink:0}.file-icon.folder{background:#fff4dc;color:#b38c36;font-size:20px}.file-detail{flex:1;min-width:0}.file-detail b{font-size:13px;font-weight:550;display:block;overflow-wrap:anywhere}.file-detail small{font-size:11px}.file-row input[type=checkbox]{width:17px;margin:0}.job-row{display:flex;align-items:start;gap:14px;padding:16px 0;border-bottom:1px solid var(--line)}.job-row:last-child{border:0}.job-row p{font-size:12px;margin:0;overflow-wrap:anywhere}.job-row small{font-size:10px}.job-row>div{flex:1}.compact{padding-top:22px;padding-bottom:18px}footer{display:flex;justify-content:space-between;font-size:11px;color:#94a3a5;margin-top:32px}.notice{padding:14px 18px;border-radius:9px;background:#e6f1ed;color:var(--teal);margin-bottom:20px;overflow-wrap:anywhere}.notice.error{background:#fff1eb;color:#a65332}.hidden{display:none!important}.admin-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:28px}.admin-title h1{font-size:30px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:17px;margin-bottom:22px}.stats article{background:white;border:1px solid var(--line);border-radius:12px;padding:22px}.stats span{font-size:12px;color:#60797e}.stats strong{display:block;font-size:34px;font-weight:550;margin:6px 0}.stats small{font-size:11px}.provider-note{display:flex;align-items:start;gap:12px;background:#fff9ee;border:1px solid #eee2c8;border-radius:10px;padding:16px 20px;margin-bottom:24px}.provider-note>span{display:grid;place-items:center;background:#f4e6c8;color:var(--amber);border-radius:50%;height:22px;width:22px}.provider-note b{font-size:12px;color:#82662f}.provider-note p{font-size:12px;margin:2px 0;color:#95825e}.admin-grid{display:grid;grid-template-columns:340px 1fr;gap:22px}.admin-grid .card{min-width:0}.full{width:100%}#create-form label{margin-bottom:18px}.new-key{border-top:1px solid var(--line);padding-top:20px;margin-top:22px}.new-key p{font-size:12px}.new-key button{margin-top:10px}.new-key input{font-size:11px}.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:12px}th{font-size:11px;color:#90a09f;font-weight:500;padding:10px 8px;background:#f8faf9;white-space:nowrap}td{padding:18px 8px;border-bottom:1px solid var(--line)}td small{display:block;font-size:10px}td button{padding:4px 6px;white-space:nowrap}td .actions{display:flex;flex-wrap:wrap;gap:4px}.login{max-width:440px;margin:60px auto}.login label{margin:24px 0 18px}.login button{width:100%}dialog{border:1px solid var(--line);border-radius:16px;padding:26px;width:min(760px,92vw);max-height:85vh;color:var(--ink)}dialog::backdrop{background:#0a282b66;backdrop-filter:blur(3px)}.drive-nav{display:flex;align-items:center;gap:16px;margin:18px 0;font-size:12px;overflow-wrap:anywhere}#drive-files{max-height:380px;overflow-y:auto}#folder-nav{margin-bottom:12px}#folder-nav button{margin-right:6px}.job-row a{font-size:11px;color:var(--teal);overflow-wrap:anywhere}#logout{margin-left:16px}
@media(max-width:900px){.admin-grid{grid-template-columns:1fr}.stats{grid-template-columns:repeat(2,1fr)}.intro{align-items:flex-start}.intro h1{font-size:32px}.time-card{min-width:210px}.admin-wrap{padding:30px 20px}}@media(max-width:650px){.top{height:70px}.top-note{font-size:10px}.client-wrap{padding:30px 18px}.intro{display:block}.time-card{margin-top:25px;width:100%}.time-card strong{font-size:30px}.card{padding:20px}.form-bottom,.inline-form{align-items:stretch;flex-direction:column}.form-bottom label{width:100%}.section-title{gap:10px}.section-title p{font-size:11px}.section-title .pill{display:none}.intro h1{font-size:31px}.admin-title{gap:12px}.admin-title h1{font-size:24px}.admin-title .outline{font-size:11px;white-space:nowrap}.stats article{padding:16px}.stats strong{font-size:28px}footer{display:block}footer span{display:block;margin-top:6px}.file-row{gap:9px}.file-row button,.file-row a{font-size:11px;padding:8px}.brand-sub{font-size:8px}.job-row{gap:8px}}


body[data-page=client]{--ink:#e3eaf5;--muted:#9baec6;--line:#2d394c;--bg:#101622;--teal:#6ea9ff;background:var(--bg);color:var(--ink)}
body[data-page=client] .top{background:#131c2b;height:70px}body[data-page=client] .brand>span{font-size:21px}.flow-wrap{max-width:1100px;padding:28px 24px}.flow-wrap .card{background:#1b2434;border-color:var(--line);border-radius:18px;padding:25px;margin-bottom:20px}.flow-wrap .section-title{margin-bottom:20px}.flow-wrap .step{background:#367ef4;color:white;border-radius:50%;width:32px;height:32px}.flow-wrap label{color:#b5c6dc}.flow-wrap input,.flow-wrap textarea,.flow-wrap select{background:#111927;border-color:#324056;color:#e3eaf5}.flow-wrap .primary{background:#377ef0;color:#fff;font-size:17px;padding:14px}.share-fields{display:grid;grid-template-columns:2fr 1fr;gap:16px;align-items:start}.share-fields textarea{min-height:75px;resize:vertical}.access-line{display:flex;align-items:center;gap:24px}.access-line strong{font-size:28px;font-variant-numeric:tabular-nums;color:#7cb6ff}.result-status{padding:15px 18px;background:#162132;border:1px solid #34465f;border-radius:10px;color:#c0d1e7;font-size:15px}.result-status.success{background:#123f35;border-color:#1b7557;color:#79efbd}.result-status.failure{background:#3a2630;border-color:#743d4a;color:#ffabb6}.result-status.working{background:#18345a;border-color:#315f9d;color:#a8d0ff}.flow-steps{display:flex;list-style:none;padding:0;margin:16px 0;gap:10px}.flow-steps li{flex:1;font-size:12px;padding:8px;border-bottom:2px solid #344155;color:#899bb4}.flow-steps .done{color:#7ee2b2;border-color:#2cb977}.flow-steps .active{color:#91bcff;border-color:#4b91ff}.result-toolbar{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:16px}.result-toolbar label{font-size:12px;max-width:75%}.result-toolbar select{margin:5px 0 10px;font-size:12px;padding:8px}.flow-wrap .file-row{border-color:#2c394c;padding:14px 0;gap:10px}.flow-wrap .file-icon{background:transparent;width:26px;height:30px;font-size:18px}.flow-wrap .file-detail b{font-size:14px}.flow-wrap .file-icon.folder,.flow-wrap .file-row:has([data-archive])>.file-detail b{color:#ffd15b}.flow-wrap .outline{background:#172232;border-color:#34445a;color:#d9e8fc;font-size:12px;white-space:nowrap}.tree-toggle{padding:4px;width:24px;flex-shrink:0;background:transparent;color:#a6bbd4;font-size:18px}.tree-toggle:disabled{opacity:.3;cursor:default}.tree-children{padding-left:20px;margin-left:11px;border-left:1px solid #35465d}.download-actions{margin-top:20px}.download-actions .primary{background:#20bb63}.download-help{font-size:13px;line-height:1.8;margin:12px 0}.flow-wrap .notice{background:#123c33;color:#83edbb;border:1px solid #267556;margin:16px 0 0}.flow-wrap .notice.error{background:#3a2630;color:#ffabb6;border-color:#743d4a}.history{border-top:1px solid #334056;padding-top:16px;margin-top:20px}.history summary{cursor:pointer;color:#9fb2cc;font-size:12px}.flow-wrap .empty{border-color:#34465f;padding:22px}.flow-wrap .empty-icon{display:none}.flow-wrap .badge{background:#163c34;color:#7ce2bb}.flow-wrap .badge.warn{background:#4b3521;color:#ffd09c}.flow-wrap footer{color:#90a4bd}.flow-wrap #notice:not(.hidden){position:sticky;bottom:16px;z-index:3}.flow-wrap #result-card{scroll-margin-top:20px}
@media(max-width:650px){.share-fields{grid-template-columns:1fr}.flow-wrap{padding:18px 12px}.flow-wrap .card{padding:18px 14px}.access-line{display:block}.access-line small{display:block}.flow-wrap .tree-children{padding-left:9px;margin-left:4px}.flow-wrap .file-detail b{font-size:12px}.flow-wrap .file-row{gap:5px}.flow-wrap .outline{padding:8px}.flow-steps{gap:4px}.flow-steps li{padding:5px 2px;font-size:11px}}
.share-fields{margin-bottom:20px}

.flow-wrap #share{min-height:120px;font-size:16px;line-height:1.5}.parse-help{margin:16px 0 22px;font-size:14px}.flow-wrap #share-url,.flow-wrap #extract-code{font-size:16px;padding:15px}.flow-wrap #extract-feedback{margin-top:14px}

.extract-progress{margin:20px 0 24px}.progress-caption{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;color:#b8d3fa}.progress-caption strong{font-size:22px;color:#86b7ff;font-variant-numeric:tabular-nums}.progress-track{height:12px;border-radius:10px;overflow:hidden;background:#101b2d;border:1px solid #30425c}#progress-fill{height:100%;width:0;background:linear-gradient(90deg,#347bf3,#6ab4ff);border-radius:10px;transition:width 1s linear}.progress-track.complete #progress-fill{background:#23c576}.progress-track.stopped #progress-fill{background:#b77d52}.extract-progress small{display:block;margin-top:9px;font-size:12px}

.download-heading{text-align:center;padding:36px 20px 12px}.download-heading h1{font-size:32px;letter-spacing:0;font-weight:750}.download-heading h1 span{color:#ffd528;margin-right:9px}.download-heading p{font-size:16px;margin-top:12px;color:#9baec6}.flow-wrap .access-card{padding:30px 26px}.member-card{border:1px solid #303c51;border-radius:18px;padding:28px 32px;background:#1a2333}.member-top{display:flex;justify-content:space-between;gap:18px;color:#ffcf22;font-size:13px;letter-spacing:3px}.member-code{font-size:38px;font-weight:750;letter-spacing:4px;color:#ffdc00;padding:26px 0 28px;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.member-details{display:grid;grid-template-columns:1fr 1fr;gap:32px;border-top:1px solid #303c51;padding-top:22px}.member-label{display:block;color:#a1b4ce;font-size:14px}.member-details strong{display:block;margin:8px 0 3px;font-size:23px;font-weight:650;color:#fff}.member-hint{display:block;color:#ffda16;font-size:13px}.remaining-time{display:block;margin-top:6px;font-size:12px;color:#afc2dd}#verify-card:not(.hidden){margin-top:24px}@media(max-width:650px){.download-heading{padding-top:28px}.download-heading h1{font-size:26px}.download-heading p{font-size:13px}.flow-wrap .access-card{padding:16px}.member-card{padding:20px 16px}.member-top{font-size:11px;letter-spacing:1px}.member-code{font-size:26px;letter-spacing:2px;padding:24px 0}.member-details{gap:16px;grid-template-columns:1fr}.member-details strong{font-size:21px}}

.member-code{font-size:clamp(21px,3vw,36px);letter-spacing:2px;word-break:break-all}

.fallback-downloads{margin-top:14px}.fallback-downloads summary{cursor:pointer}.fallback-file{display:block;padding:8px 0;text-decoration:underline;overflow-wrap:anywhere}
