/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */@layer theme{:host,:root{--font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,::backdrop,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.block{display:block}.hidden{display:none}}:root{--red:#e60012;--red-deep:#c90010;--ink:#17191c;--text:#34383f;--muted:#7c8490;--line:#e8eaee;--soft:#f3f5f7;--canvas:#f8f9fb;--green:#138a63;--amber:#b56710;--blue:#3274d9}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}body,html{background:var(--canvas)}body{color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,PingFang SC,Microsoft YaHei,Arial,sans-serif;font-size:15px}button,input{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}.app{background:var(--canvas);width:100%;max-width:520px;min-height:100dvh;margin:0 auto}.topbar{height:58px;padding:env(safe-area-inset-top) 18px 0;border-bottom:1px solid var(--line);z-index:20;background:#fff;justify-content:space-between;position:sticky;top:0}.brand,.topbar{align-items:center;display:flex}.brand{letter-spacing:.02em;gap:10px;font-size:17px;font-weight:700}.brand-logo{object-fit:contain;width:112px;height:auto;display:block}.top-title{white-space:nowrap;font-size:17px;font-weight:650;position:absolute;left:50%;transform:translate(-50%)}.topbar-right{justify-content:flex-end;min-width:36px;display:flex}.icon-btn{color:#4d535d;background:0 0;border:0;border-radius:7px;place-items:center;width:36px;height:36px;padding:0;display:grid}.icon-btn:disabled{opacity:.45}.content{padding:16px 16px calc(24px + env(safe-area-inset-bottom))}.page-head{justify-content:space-between;align-items:flex-end;gap:14px;margin:2px 0 16px;display:flex}.page-head h1{letter-spacing:-.02em;margin:0;font-size:23px;font-weight:700;line-height:1.25}.page-head p{color:var(--muted);margin:5px 0 0;font-size:13px;line-height:1.5}.card{border:1px solid var(--line);border-radius:9px}.btn,.card{background:#fff}.btn{height:44px;color:var(--text);border:1px solid #dfe2e7;border-radius:7px;justify-content:center;align-items:center;gap:7px;padding:0 16px;font-weight:600;display:inline-flex}.btn.primary{border-color:var(--red);background:var(--red);color:#fff}.btn.primary:active{background:var(--red-deep)}.btn.block{width:100%}.btn:disabled{opacity:.48;cursor:not-allowed}.field{flex-direction:column;gap:7px;display:flex}.field label{color:#4a5059;font-size:13px;font-weight:600}.input{width:100%;height:44px;color:var(--ink);box-shadow:none;background:#fff;border:1px solid #dfe2e7;border-radius:7px;outline:none;padding:0 13px}.input:focus{border-color:#959da8}.form-stack{flex-direction:column;gap:15px;display:flex}.badge{color:#636a75;white-space:nowrap;background:#f2f3f5;border-radius:5px;align-items:center;height:23px;padding:0 8px;font-size:12px;font-weight:600;display:inline-flex}.badge.red{color:var(--red);background:#fff0f1}.badge.green{color:var(--green);background:#eef8f4}.badge.amber{color:var(--amber);background:#fff7eb}.badge.blue{color:var(--blue);background:#eef4ff}.platform-badge{color:#4b515a;align-items:center;gap:6px;font-size:13px;font-weight:600;display:inline-flex}.platform-dot{background:#333;border-radius:50%;width:8px;height:8px}.platform-dot.xhs{background:#ff2442}.platform-dot.kuaishou{background:#ff4b1f}.platform-dot.wechat{background:#07c160}.platform-dot.dongchedi{background:#f16421}.platform-dot.autohome{background:#236adf}.task-list{flex-direction:column;gap:10px;display:flex}.task-card{padding:15px;display:block}.task-top,.unit-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.task-card h2{margin:11px 0 5px;font-size:16px;font-weight:650;line-height:1.45}.task-card p{color:var(--muted);margin:0;font-size:13px;line-height:1.6}.task-footer{border-top:1px solid #f0f1f3;align-items:center;gap:10px;margin-top:13px;padding-top:12px;display:flex}.task-footer .progress{flex:1}.progress-number{color:var(--muted);min-width:32px;font-size:12px}.link{color:var(--red);font-size:13px;font-weight:600}.progress{background:#eceef1;border-radius:2px;height:4px;overflow:hidden}.progress i{background:var(--red);height:100%;transition:width .2s;display:block}.detail-hero{margin-bottom:12px;padding:16px}.detail-hero h1{margin:12px 0 6px;font-size:20px;font-weight:700;line-height:1.45}.detail-hero>p{color:var(--muted);margin:0;font-size:13px}.hero-progress{align-items:center;gap:12px;margin-top:15px;display:flex}.hero-progress .progress{flex:1}.hero-progress span{color:var(--muted);font-size:12px}.notice{color:#8c5d22;background:#fffbf4;border:1px solid #f2dfc5;border-radius:7px;padding:12px 13px;font-size:13px;line-height:1.6}.notice.success-notice{color:#237357;background:#f3faf7;border-color:#cde8dc}.notice.error-notice{color:#b63f45;background:#fff7f7;border-color:#f1c8cb}.unit-list{flex-direction:column;gap:10px;margin-top:12px;display:flex}.upload-unit{padding:15px}.unit-number{color:var(--red);font-size:12px;font-weight:700}.upload-unit h2{margin:10px 0;font-size:16px;font-weight:650;line-height:1.55}.shoot-guide{border-top:1px solid #f0f1f3;margin:0 0 14px}.shoot-guide>div{border-bottom:1px solid #f0f1f3;padding:10px 0}.shoot-guide dt{color:#626975;margin-bottom:4px;font-size:12px;font-weight:650}.shoot-guide dd{color:#555c66;white-space:pre-wrap;margin:0;font-size:13px;line-height:1.65}.unit-error{color:#b63f45;background:#fff3f4;border-radius:6px;margin:0 0 12px;padding:9px 11px;font-size:12px;line-height:1.55}.upload-progress{margin:4px 0 13px}.upload-progress span{color:var(--muted);margin-top:6px;font-size:12px;display:block}.upload-actions{grid-template-columns:1fr 1fr;gap:9px;display:grid}.empty,.error,.loading{text-align:center;min-height:260px;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;padding:30px;display:flex}.empty strong,.error strong{color:var(--text);margin:12px 0 6px;font-size:16px}.error .btn{margin-top:18px}.empty-icon{border:1px solid var(--line);color:#9ba1aa;border-radius:50%;place-items:center;width:44px;height:44px;display:grid}.spinner{border:2px solid #e3e5e8;border-top:2px solid var(--red);border-radius:50%;width:24px;height:24px;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.login{background:#fff;flex-direction:column;min-height:100dvh;padding:54px 26px 30px;display:flex}.login-brand{align-items:center;gap:12px;display:flex}.login-brand .brand-logo{width:148px}.login-brand-divider{background:#e4e6e9;width:1px;height:20px}.login h1{letter-spacing:-.03em;margin:54px 0 7px;font-size:27px}.login-sub{color:var(--muted);margin:0 0 30px;line-height:1.6}.login-footer{color:#a0a6af;text-align:center;margin-top:auto;padding-top:30px;font-size:12px}@media (min-width:700px){body{padding:20px 0}.app,.login{border:1px solid var(--line);min-height:calc(100dvh - 40px)}}