:root{font-family:Inter,Segoe UI,Microsoft YaHei,sans-serif;color:#253e36;background:#f5f7f4;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer;border:1px solid #dce5dd;border-radius:8px;background:#fff;padding:9px 14px;color:#4b685a;transition:background .15s}button:hover{background:#edf4ee}button:disabled{opacity:.5;cursor:default}input,textarea,select{width:100%;border:1px solid #dae4db;border-radius:8px;background:#fff;color:#2c4c3d;padding:11px 12px;outline:none;font-size:13px}input:focus,textarea:focus,select:focus{border-color:#7daf8c;box-shadow:0 0 0 3px #dcece1}textarea{resize:vertical;line-height:1.8}label{display:flex;flex-direction:column;gap:8px;font-size:12px;font-weight:500;color:#617d6b;margin-bottom:19px}h1,h2,h3,p{margin-top:0}h1{font-size:30px;font-weight:600;letter-spacing:-1px;margin-bottom:10px}h2{font-size:24px;font-weight:600}h3{font-size:15px;font-weight:600;margin-bottom:16px}a{color:#3c825b;text-decoration:none}code{font:11px/1.6 Consolas,monospace;overflow-wrap:anywhere}time{color:#9cac9f;font-size:11px}.primary{background:#225e43;color:#fff;border-color:#225e43;box-shadow:0 3px 8px #183d2112}.primary:hover{background:#194b33}.wide{width:100%;padding:12px}.text-button{padding:3px 0;border:0;background:transparent;color:#679477;font-size:12px}.text-button:hover{background:transparent;color:#2b6440}.muted{color:#8b9f91;font-size:13px;line-height:1.8}.small{font-size:11px}.eyebrow{display:block;font-size:9px;font-weight:600;letter-spacing:2px;color:#93aa99;margin-bottom:13px}.brand{display:grid;place-items:center;width:38px;height:38px;background:#214d39;color:#b9e7bd;border-radius:11px;font:700 italic 29px Georgia,serif}.wordmark{display:flex;align-items:center;gap:11px;font-weight:650;font-size:12px;letter-spacing:1.4px}.wordmark small{display:block;color:#9cb1a0;font-size:8px;letter-spacing:1.5px;margin-top:4px}.auth-page{min-height:100vh;display:grid;grid-template-columns:46% 54%}.auth-story{padding:50px 65px;background:#e4eee3;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.auth-story:after{content:"";position:absolute;right:-160px;bottom:100px;width:430px;height:430px;border:1px solid #c2d6c3;border-radius:50%;box-shadow:0 0 0 65px #dce8dc,0 0 0 66px #cbdccc;pointer-events:none}.auth-story>div{z-index:1}.auth-story h1{font-size:55px;line-height:1.35;letter-spacing:-2px;color:#2e593d;margin-top:25px}.auth-story p{color:#7b9880;font-size:14px;line-height:2}.story-footer{font-size:10px;letter-spacing:2px;color:#85a18b;z-index:1}.auth-form{display:grid;place-items:center;padding:40px;background:#fafbf9}.auth-box{width:350px;max-width:100%}.auth-box h2{margin-bottom:12px}.auth-box form{margin-top:32px}.auth-box>.text-button{margin-top:20px}.workspace{display:flex;min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:224px;padding:30px 22px 20px;border-right:1px solid #e1e8df;background:#fbfcf9;display:flex;flex-direction:column}.sidebar .wordmark{margin-bottom:48px}.workspace-label{font-size:10px;color:#a6b6a8;margin:0 12px 15px}.sidebar nav{display:flex;flex-direction:column;gap:7px}.sidebar nav button{display:flex;align-items:center;gap:13px;text-align:left;background:transparent;border:0;padding:12px 14px;color:#92a698;font-size:20px}.sidebar nav button span{font-size:12px}.sidebar nav b{margin-left:auto;font-size:10px;font-weight:500}.sidebar nav .selected{background:#e9f1e8;color:#427a52}.sidebar-note{margin-top:auto;padding:22px 8px 10px;color:#809d87;font-size:11px}.sidebar-note p{font-size:10px;line-height:1.9;color:#a5b4a7;margin-top:10px}.sidebar-note i,.live-tag i,.connection-state i{display:inline-block;width:5px;height:5px;border-radius:50%;background:#7caf82;margin-right:7px}.user-block{display:flex;align-items:center;gap:9px;padding-top:20px;border-top:1px solid #e4eae1;font-size:11px}.avatar{display:grid;place-items:center;width:30px;height:30px;background:#e2ecdf;color:#6b8f72;border-radius:50%;font-size:12px}.user-block small{display:block;font-size:9px;color:#a2b1a2;margin-top:3px}.user-block>.text-button{margin-left:auto;font-size:10px}.main{margin-left:224px;flex:1;min-width:0}.topbar{height:74px;background:#fcfdfb;border-bottom:1px solid #e1e8df;padding:0 42px;display:flex;align-items:center;justify-content:space-between;font-size:11px;color:#8fa18f}.slash{margin:0 12px;color:#c4cec1}.live-tag{font-size:10px;background:#f0f6ed;padding:7px 10px;border-radius:6px;color:#83a280}.page-body{padding:38px 42px;max-width:1550px;margin:auto}.page-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:28px}.page-heading .muted{margin-bottom:0}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:26px}.stat-grid>div{padding:20px 24px;border:1px solid #e0e8dc;border-radius:12px;background:#fcfdf9}.stat-grid span{display:block;color:#8c9f89;font-size:11px}.stat-grid strong{display:block;margin:9px 0 6px;color:#385f3e;font-size:31px;font-weight:500}.stat-grid small{color:#acb9a6;font-size:10px}.surface{background:#fff;border:1px solid #e0e7dc;border-radius:12px;box-shadow:0 2px 6px #20402d03}.table-toolbar{padding:20px 23px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #edf1e8}.table-toolbar h3{margin:0;font-size:13px}.table-toolbar h3 span{color:#9bb28e;margin-left:6px;font-size:11px;font-weight:400}.filters{display:flex;gap:8px}.filters select{width:150px;padding:7px 9px;color:#7c9276;font-size:11px}.filters button{font-size:11px;padding:7px 11px}.table-head,.task-row{display:grid;grid-template-columns:minmax(200px,2fr) minmax(160px,1.5fr) minmax(120px,1fr) 135px 50px;gap:18px;padding:18px 23px;align-items:center}.table-head{font-size:10px;background:#fafbf8;color:#9cac93;padding-top:12px;padding-bottom:12px}.task-row{border-top:1px solid #f0f3eb;min-height:111px}.task-name strong{display:block;font-size:12px;color:#49683e;overflow-wrap:anywhere}.task-name span{display:block;font-size:10px;color:#97aa8c;margin-top:7px}.task-name code{display:block;color:#b1bda5;font-size:9px;margin-top:5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-name .external-id{font-size:9px;color:#9caf91}.badge{display:inline-block;font-size:10px;padding:4px 8px;background:#f0f3e9;color:#94a67c;border-radius:5px}.badge[data-state=completed]{background:#e8f4e8;color:#5d9965}.badge[data-state=generating],.badge[data-state=preparing],.badge[data-state=submitting]{background:#fff3dd;color:#b49756}.badge[data-state=uploading],.badge[data-state=downloading]{background:#e8f0fa;color:#789ac1}.badge[data-state=failed],.badge[data-state=needs_review]{background:#fbece5;color:#bc927a}.progress-line{display:flex;align-items:center;gap:7px;margin-top:7px}.progress-line small{font-size:9px;color:#9daf92}.progress-line progress{width:70px;height:3px}.task-state p{font-size:9px;color:#a1b096;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin:6px 0 0}progress{accent-color:#74ad7c;height:5px;border:0;border-radius:5px;overflow:hidden}progress::-webkit-progress-bar{background:#eef3e9}progress::-webkit-progress-value{background:#82b180}.task-media{font-size:9px;color:#a2b096}.mini-assets{display:flex;gap:4px;margin-bottom:6px}.mini-assets img{width:26px;height:31px;object-fit:cover;border:1px solid #e4eadf;border-radius:4px}.empty{padding:70px;text-align:center;color:#9bab91}.empty-icon{display:grid;place-items:center;width:60px;height:60px;background:#edf3e7;border-radius:15px;color:#a4bb94;margin:0 auto 20px;font-size:30px}.empty h3{color:#7f9970;font-size:15px}.empty p{font-size:12px;margin-bottom:20px}.empty button{font-size:12px}.create-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:24px;align-items:start}.form-surface{padding:27px}.form-surface>h3{margin-bottom:25px}.form-surface label{margin-bottom:22px}.execution-note{background:#f3f7ef;border:1px solid #e5eddf;border-radius:8px;padding:16px;margin:20px 0;color:#819876;font-size:11px}.execution-note p{font-size:10px;line-height:1.9;color:#9bad92;margin-bottom:0;margin-top:7px}.upload-item{display:flex;align-items:center;gap:10px;padding:9px 0;font-size:11px;color:#89a07f}.upload-item span{flex:1;overflow-wrap:anywhere}.upload-item progress{width:90px}.new-managed{display:flex;align-items:center;gap:18px;padding:24px;margin-bottom:24px}.new-managed h3{margin-bottom:5px}.new-managed p{margin:0}.new-managed input{max-width:300px;margin-left:auto}.new-managed button{white-space:nowrap}.managed-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.managed-card{padding:22px}.managed-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.account-symbol{display:grid;place-items:center;width:36px;height:36px;background:#edf4e8;color:#91ac7d;border-radius:9px;font-size:25px}.connection-state{font-size:10px;color:#abb8a0}.connection-state i{background:#c3cdb9}.connection-state.online{color:#7ca46f}.connection-state.online i{background:#81b66c}.managed-card h3{margin-bottom:10px}.app-id{display:flex;gap:7px;align-items:start}.app-id code{color:#9aae8b;font-size:10px;flex:1}.managed-card footer{display:flex;gap:9px;border-top:1px solid #edf1e7;margin-top:20px;padding-top:17px}.managed-card footer button{font-size:10px;padding:6px 8px}.credential-card{background:#edf5e8;border:1px solid #d6e7ca;border-radius:12px;padding:25px;margin-bottom:26px;max-width:800px}.credential-card p{font-size:11px;color:#8da17f}.credential-card h3{font-size:16px}.credential-card label{margin-top:18px;margin-bottom:8px}.copy-field{display:flex;gap:12px;align-items:center;background:#ffffffa8;border:1px solid #dce8d2;border-radius:7px;padding:9px 12px}.copy-field code{flex:1;color:#71935c}.copy-field button{font-size:10px;padding:5px 9px}.credential-card>.text-button{margin-top:15px}.banner{padding:12px 15px;border-radius:8px;font-size:12px;margin-bottom:22px;display:flex;align-items:center;justify-content:space-between;gap:10px}.banner button{background:transparent;border:0;padding:0;color:inherit}.error{color:#b17862;background:#fff0e9;border:1px solid #f2d7c9;padding:12px;border-radius:7px;font-size:12px}.notice{color:#6f9461;background:#edf6e8;border:1px solid #dcebd1}.modal-mask{position:fixed;top:0;right:0;bottom:0;left:0;background:#20342b55;z-index:10;display:flex;align-items:center;justify-content:center;padding:30px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.detail-modal{width:850px;max-width:100%;height:90vh;background:#fafcf8;border:1px solid #dce7d4;border-radius:16px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 25px 80px #1e342d44}.detail-modal>header{display:flex;justify-content:space-between;align-items:center;padding:26px 30px;border-bottom:1px solid #e3eadc;background:#fff}.detail-modal h2{font-size:21px;margin:0}.detail-modal .eyebrow{margin-bottom:8px}.icon-button{font-size:25px;border:0;padding:4px 9px;color:#9aab8c}.detail-body{overflow:auto;padding:26px 30px}.detail-body h3{font-size:13px;margin-top:27px;color:#6c8a5a}.detail-status{display:flex;align-items:center;gap:12px;font-size:12px;color:#8ea27f}.detail-status button{font-size:11px;padding:6px 9px}.id-block{display:flex;align-items:center;gap:12px;margin-top:10px;font-size:10px;color:#94a986}.id-block code{color:#78965f}.detail-assets{display:flex;flex-wrap:wrap;gap:12px}.detail-assets a{width:85px;color:#93a680;font-size:9px;overflow-wrap:anywhere}.detail-assets img{display:block;width:75px;height:85px;object-fit:cover;border-radius:7px;border:1px solid #dce6d4;margin-bottom:6px}.detail-body pre{white-space:pre-wrap;overflow-wrap:anywhere;background:#f1f6ec;border:1px solid #e3ecd9;border-radius:8px;padding:18px;font:12px/1.9 Segoe UI,Microsoft YaHei,sans-serif;color:#789063;max-height:350px;overflow:auto}.output-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.output-grid article{min-width:0}.output-grid video{width:100%;max-height:260px;background:#1e3023;border-radius:8px}.output-grid a{font-size:11px;margin-top:8px;display:block}.event-list>div{display:flex;align-items:baseline;gap:12px;padding:10px 0;border-bottom:1px solid #e8eee1;font-size:11px;color:#88a075}.event-list i{width:5px;height:5px;background:#a9c298;border-radius:50%;flex-shrink:0}.event-list span{flex:1}.event-list time{font-size:9px}.pagination{display:flex;justify-content:flex-end;align-items:center;gap:15px;padding:18px 23px;border-top:1px solid #edf1e7;color:#9aab8e;font-size:11px}.pagination button{font-size:11px}.loading{padding:60px;color:#87a177;font-size:13px}@media(max-width:1150px){.sidebar{width:190px;padding:25px 16px}.main{margin-left:190px}.page-body{padding:30px 25px}.topbar{padding:0 25px}.managed-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.table-head,.task-row{grid-template-columns:minmax(160px,2fr) minmax(130px,1.5fr) 90px 44px;gap:12px}.table-head>span:nth-child(4),.task-row>time{display:none}.create-layout{grid-template-columns:minmax(0,1fr) 270px}}@media(max-width:760px){.auth-page{grid-template-columns:1fr}.auth-story{display:none}.auth-form{min-height:100vh}.sidebar{position:static;width:100%;padding:16px;border-right:0;border-bottom:1px solid #e1e8df}.sidebar .wordmark{margin:0 0 16px}.sidebar nav{flex-direction:row}.sidebar nav button{padding:10px;font-size:15px}.sidebar-note,.user-block,.workspace-label{display:none}.workspace{display:block}.main{margin:0}.topbar{height:54px;padding:0 18px}.page-body{padding:25px 18px}.page-heading{gap:15px}.page-heading h1{font-size:24px}.page-heading .muted{font-size:11px}.stat-grid{grid-template-columns:repeat(2,1fr);gap:10px}.stat-grid>div{padding:16px}.table-toolbar{align-items:flex-start;flex-direction:column}.filters{width:100%}.filters select{width:100%;min-width:0}.table-head{display:none}.task-row{grid-template-columns:1fr 130px;padding:18px;gap:15px}.task-row>.task-media{display:none}.task-row>.text-button{grid-column:2}.create-layout,.managed-grid{grid-template-columns:1fr}.new-managed{flex-wrap:wrap}.new-managed input{max-width:none;margin:0}.credential-card{padding:18px}.detail-body{padding:20px}.modal-mask{padding:10px}.output-grid{grid-template-columns:repeat(2,1fr)}.id-block{flex-wrap:wrap}.event-list{overflow-wrap:anywhere}.event-list time{max-width:80px}}
