:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--canvas:#f3f5f7;--surface:#fff;--surface-subtle:#f8fafb;--ink:#16202a;--ink-soft:#4f5d69;--ink-faint:#78848e;--line:#dce2e6;--line-strong:#c8d1d7;--brand:#087f72;--brand-dark:#06665d;--brand-soft:#e7f6f3;--brand-faint:#f3fbf9;--warning:#a35a08;--warning-soft:#fff7e8;--danger:#b42318;--danger-soft:#fff1ef;--success:#16704f;--shadow:0 18px 48px #1f2d3514}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--canvas);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline-offset:2px;outline:3px solid #087f7238}button{background:var(--brand);color:#fff;cursor:pointer;border:1px solid #0000;border-radius:9px;justify-content:center;align-items:center;gap:7px;min-height:42px;padding:0 17px;font-weight:700;transition:background .15s,border-color .15s,transform .15s;display:inline-flex}button:hover{background:var(--brand-dark)}button:active{transform:translateY(1px)}button:disabled{cursor:not-allowed;opacity:.48;transform:none}a{color:var(--brand-dark)}h1,h2,h3,p{margin-top:0}h1,h2,h3{color:var(--ink);letter-spacing:-.02em}h1{margin-bottom:12px;font-size:clamp(30px,4vw,44px);line-height:1.18}h2{margin-bottom:8px;font-size:24px;line-height:1.3}h3{margin-bottom:7px;font-size:18px}.appShell{min-height:100vh}.appHeader{border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff0;justify-content:space-between;align-items:center;gap:24px;min-height:72px;padding:12px max(20px,50vw - 620px);display:flex}.brand{color:var(--ink);align-items:center;gap:12px;text-decoration:none;display:inline-flex}.brand>span:last-child{gap:2px;display:grid}.brand strong{font-size:16px;line-height:1.2}.brand small{color:var(--ink-faint);letter-spacing:.08em;text-transform:uppercase;font-size:10px}.brandMark{background:var(--brand);color:#fff;border-radius:10px;place-items:end center;width:39px;height:39px;padding-bottom:5px;display:grid;position:relative;overflow:hidden;box-shadow:0 5px 14px #087f7233}.brandMark:before{content:"";background:#ffffff8c;height:2px;position:absolute;inset:7px 0 auto}.brandMark span{font-size:15px;font-weight:800}.headerActions{align-items:center;gap:12px;display:flex}.localBadge{color:var(--ink-soft);align-items:center;gap:7px;font-size:13px;display:inline-flex}.localBadge>span{background:var(--brand-soft);width:19px;height:19px;color:var(--brand-dark);border-radius:50%;place-items:center;font-size:11px;font-weight:800;display:inline-grid}.accountTrigger{border-color:var(--line);min-height:38px;color:var(--ink);background:#fff;padding:0 12px;font-size:13px}.accountTrigger:hover{background:var(--surface-subtle);border-color:var(--line-strong)}.accountDot{background:#a8b1b8;border-radius:50%;width:8px;height:8px}.accountDot.isActive{background:#2eb67d;box-shadow:0 0 0 3px #e4f6ee}.workspace{width:min(1240px,100% - 40px);margin:0 auto;padding:42px 0 34px;scroll-margin-top:20px}.workspaceIntro{justify-content:space-between;align-items:end;gap:28px;display:flex}.workspaceIntro>div{max-width:800px}.workspaceIntro p:not(.eyebrow){color:var(--ink-soft);margin-bottom:0;font-size:16px;line-height:1.7}.eyebrow,.stepLabel,.cardEyebrow{color:var(--brand-dark);letter-spacing:.08em;text-transform:uppercase;margin:0 0 9px;font-size:12px;font-weight:800;display:block}.textButton,.workspaceFooter button,.quietButton,.logoutButton{min-height:auto;color:var(--brand-dark);background:0 0;border:0;border-radius:0;padding:5px 0;font-size:13px;font-weight:700}.textButton:hover,.workspaceFooter button:hover,.quietButton:hover,.logoutButton:hover{color:var(--brand);background:0 0}.stepper{background:var(--surface);border:1px solid var(--line);border-radius:12px;grid-template-columns:repeat(4,1fr);margin:34px 0 22px;padding:0;list-style:none;display:grid;overflow:hidden}.stepper li{min-height:58px;color:var(--ink-faint);justify-content:center;align-items:center;gap:9px;font-size:13px;display:flex;position:relative}.stepper li+li{border-left:1px solid var(--line)}.stepper li>span{border:1px solid var(--line-strong);border-radius:50%;place-items:center;width:25px;height:25px;font-size:11px;font-weight:800;display:inline-grid}.stepper li.isCurrent{background:var(--brand-faint);color:var(--brand-dark)}.stepper li.isCurrent:after{content:"";background:var(--brand);border-radius:3px 3px 0 0;height:3px;position:absolute;bottom:0;left:24px;right:24px}.stepper li.isCurrent>span{background:var(--brand);border-color:var(--brand);color:#fff}.stepper li.isComplete{color:var(--ink-soft)}.stepper li.isComplete>span{background:var(--brand-soft);color:var(--brand-dark);border-color:#0000}.notice{border:1px solid var(--line);color:var(--ink-soft);background:#f7fafc;border-radius:10px;align-items:center;gap:9px;margin-bottom:14px;padding:11px 14px;font-size:13px;display:flex}.notice>span{width:19px;height:19px;color:var(--ink-soft);background:#dfe8ed;border-radius:50%;flex:none;place-items:center;font-size:11px;font-weight:800;display:inline-grid}.taskCard,.fileBar{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:14px}.taskCard{padding:30px}.taskHeading p{color:var(--ink-soft);margin-bottom:0;font-size:14px;line-height:1.65}.centeredHeading{text-align:center}.withAction,.previewToolbar{justify-content:space-between;align-items:center;gap:28px;display:flex}.withAction>div:first-child{max-width:680px}.uploadStep{padding:34px}.dropZone{background:var(--surface-subtle);border:2px dashed #bfcbd1;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:11px;min-height:290px;margin-top:25px;padding:32px;transition:background .15s,border-color .15s,box-shadow .15s;display:flex}.dropZone.isDragging{background:var(--brand-faint);border-color:var(--brand);box-shadow:inset 0 0 0 4px #087f720d}.dropZone strong{font-size:17px}.dropZone>span{color:var(--ink-faint);margin-bottom:8px;font-size:13px}.uploadIcon{background:var(--brand-soft);width:52px;height:52px;color:var(--brand-dark);border-radius:50%;place-items:center;margin-bottom:4px;font-size:28px;font-weight:300;display:grid}.uploadFootnotes{grid-template-columns:repeat(3,1fr);gap:16px;margin-top:20px;display:grid}.uploadFootnotes>span{color:var(--ink-soft);text-align:center;font-size:12px;line-height:1.55}.uploadFootnotes strong{color:var(--ink);margin-bottom:2px;font-size:13px;display:block}.visuallyHiddenFileInput,.srOnly{clip:rect(0, 0, 0, 0);white-space:nowrap;clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.fileBar{box-shadow:none;grid-template-columns:auto 1fr auto;align-items:center;gap:13px;margin-bottom:14px;padding:14px 16px;display:grid}.fileType{background:var(--brand-soft);width:44px;height:44px;color:var(--brand-dark);letter-spacing:.05em;border-radius:9px;place-items:center;font-size:10px;font-weight:900;display:grid}.fileSummary{gap:3px;min-width:0;display:grid}.fileSummary strong{text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.fileSummary span{color:var(--ink-faint);font-size:12px}.secondary,.compactButton{border-color:var(--line);color:var(--ink-soft);background:#fff}.secondary:hover,.compactButton:hover{background:var(--surface-subtle);border-color:var(--line-strong)}.compactButton{min-height:36px;padding:0 12px;font-size:12px}.sheetRow{width:min(340px,100%);margin-top:22px}.mappingGrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:26px;display:grid}.field{background:var(--surface-subtle);border:1px solid var(--line);min-width:0;color:var(--ink);border-radius:11px;gap:9px;padding:16px;font-size:13px;font-weight:700;display:grid}.field>span{justify-content:space-between;align-items:center;gap:10px;display:flex}.field em{background:var(--brand-soft);color:var(--brand-dark);border-radius:20px;padding:2px 7px;font-size:10px;font-style:normal}.field select,.filenameField input,.redeemForm input,.eventTable input{border:1px solid var(--line-strong);width:100%;height:40px;color:var(--ink);background:#fff;border-radius:8px;padding:0 10px}.field select:hover,.filenameField input:hover,.redeemForm input:hover,.eventTable input:hover{border-color:#aebbc2}.field small{min-height:34px;color:var(--ink-faint);font-size:11px;font-weight:400;line-height:1.5;overflow:hidden}.mappingFooter{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;margin-top:18px;padding-top:18px;display:flex}.mappingFooter>span{color:var(--ink-faint);font-size:12px}.filenameField{color:var(--ink-soft);grid-template-columns:auto 220px auto;align-items:center;gap:8px;font-size:12px;display:grid}.previewStep{padding:0;overflow:clip}.previewToolbar{z-index:5;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff5;padding:22px 24px;position:sticky;top:0}.compactHeading h2{margin-bottom:4px;font-size:20px}.compactHeading .stepLabel{margin-bottom:5px}.exportCluster{align-items:center;gap:18px;display:flex}.countSummary{grid-template-columns:auto auto;align-items:baseline;column-gap:5px;display:grid}.countSummary strong{font-size:24px}.countSummary span{color:var(--ink-soft);font-size:12px}.countSummary em{color:var(--warning);text-align:right;grid-column:1/-1;font-size:11px;font-style:normal}.countSummary em.isGood{color:var(--success)}.exportButton{min-height:46px;padding:0 20px}.tableActions{background:var(--surface-subtle);border-bottom:1px solid var(--line);align-items:center;gap:20px;padding:11px 24px;display:flex}.quietButton{color:var(--ink-soft);font-size:12px}.dangerText,.dangerText:hover{color:var(--danger)}.statusCard{border:1px solid var(--line);border-radius:10px;justify-content:space-between;align-items:center;gap:16px;margin:16px 24px;padding:13px 15px;font-size:12px;display:flex}.statusCard p{color:var(--ink-soft);margin:3px 0 0;line-height:1.55}.warningCard{background:var(--warning-soft);border-color:#eed4aa}.successCard{color:var(--success);background:#f0faf6;border-color:#bfe4d4;justify-content:flex-start}.successCard span{color:var(--ink-soft)}.errorSummaryList{gap:8px;margin:0;padding:0;list-style:none;display:flex}.errorSummaryList li{color:var(--warning);white-space:nowrap;background:#ffffffb8;border-radius:7px;padding:5px 8px}.errorSummaryList strong{margin-left:3px}.warning{color:var(--warning);margin:14px 24px;font-size:13px}.tableWrap{width:100%;overflow-x:auto}.eventTable{border-collapse:collapse;width:100%;min-width:1100px}.eventTable th,.eventTable td{border-bottom:1px solid var(--line);vertical-align:middle;text-align:left;padding:10px 8px;font-size:12px}.eventTable th{color:var(--ink-soft);white-space:nowrap;background:#f5f7f8;padding-top:11px;padding-bottom:11px;font-weight:800}.eventTable th:first-child,.eventTable td:first-child{padding-left:24px}.eventTable th:last-child,.eventTable td:last-child{padding-right:20px}.eventTable td:first-child{min-width:190px}.eventTable td:nth-child(2){width:150px}.eventTable td:nth-child(3){width:110px}.eventTable td:nth-child(5){min-width:160px}.eventTable input{height:36px;font-size:12px}.eventTable .invalidRow{background:#fff9f7}.eventTable .invalidRow input[aria-label*=标题],.eventTable .invalidRow input[aria-label*=日期]{background:snow;border-color:#e7aaa4}.reminderCell{min-width:165px}.reminderCell>div{gap:6px;display:flex}.reminderCell label{color:var(--ink-soft);white-space:nowrap;align-items:center;gap:4px;display:inline-flex}.reminderCell input{text-align:center;width:42px;padding:0 5px}.statusCell{width:140px;color:var(--danger)}.statusCell>span{line-height:1.45;display:block}.validStatus{color:var(--success);font-weight:700}.rowActionCell{width:52px}.rowDeleteButton,.modalCloseButton{width:34px;min-height:34px;color:var(--ink-faint);background:0 0;border-color:#0000;border-radius:50%;padding:0;font-size:22px;font-weight:400}.rowDeleteButton:hover,.modalCloseButton:hover{color:var(--ink);background:#edf1f3}.hint{color:var(--ink-faint);margin:12px 24px;font-size:12px}.calendarTip{background:#f4f7f9;border-radius:10px;align-items:flex-start;gap:12px;margin:18px 24px 24px;padding:14px 16px;display:flex}.calendarTip>span{width:22px;height:22px;color:var(--ink-soft);background:#dfe8ed;border-radius:50%;flex:none;place-items:center;font-size:12px;font-weight:800;display:grid}.calendarTip strong{font-size:13px}.calendarTip p{color:var(--ink-soft);margin:4px 0 0;font-size:12px;line-height:1.55}.workspaceFooter{color:var(--ink-faint);justify-content:space-between;align-items:center;gap:20px;padding:18px 3px 0;font-size:11px;display:flex}.workspaceFooter button{color:var(--ink-soft);font-size:11px}.modalOverlay{z-index:50;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#111c2294;place-items:center;padding:24px;animation:.15s ease-out overlayIn;display:grid;position:fixed;inset:0}.modalPanel{background:var(--surface);border:1px solid #ffffff40;border-radius:16px;width:min(980px,100%);max-height:min(90vh,820px);padding:26px;animation:.18s ease-out modalIn;overflow:auto;box-shadow:0 30px 90px #101b2047}.modalHeader{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.modalHeader h2{margin-bottom:0;font-size:25px}.modalLead{max-width:700px;color:var(--ink-soft);margin:12px 0 0;font-size:14px;line-height:1.65}.membershipGrid,.resultGrid{grid-template-columns:1fr 1fr;gap:16px;margin-top:22px;display:grid}.accountCard,.planCard,.resultOption{border:1px solid var(--line);border-radius:13px;padding:22px}.accountCard{background:var(--surface-subtle);flex-direction:column;align-items:flex-start;display:flex}.accountStateIcon{background:var(--brand-soft);width:44px;height:44px;color:var(--brand-dark);border-radius:50%;place-items:center;margin:7px 0 14px;font-size:18px;font-weight:800;display:grid}.accountCard>p:not(.cardEyebrow){color:var(--ink-soft);margin-bottom:18px;font-size:13px;line-height:1.65}.primaryLinkButton,.purchaseDirectLink,.downloadButton{background:var(--brand);color:#fff;border-radius:9px;justify-content:center;align-items:center;gap:6px;min-height:44px;padding:0 16px;font-size:13px;font-weight:800;text-decoration:none;display:inline-flex}.primaryLinkButton:hover,.purchaseDirectLink:hover,.downloadButton:hover{background:var(--brand-dark)}.accountCard .primaryLinkButton{width:100%;margin-top:auto}.redeemForm{grid-template-columns:1fr auto;gap:8px;width:100%;margin-top:auto;display:grid}.redeemForm button{min-height:40px}.logoutButton{color:var(--ink-faint);margin-top:10px;font-size:11px}.planCard{background:var(--brand-faint);border-color:#c7e7e1}.planPrice{align-items:baseline;gap:7px;display:flex}.planPrice strong{letter-spacing:-.04em;font-size:34px}.planPrice span{color:var(--ink-soft);font-size:13px;font-weight:700}.planCard ul{color:var(--ink-soft);margin:17px 0;padding-left:19px;font-size:13px;line-height:1.9}.planPurchase{border-top:1px solid #c7e7e1;align-items:center;gap:15px;padding-top:16px;display:flex}.purchaseQrFrame{background:#fff;border:1px solid #d1eae5;border-radius:9px;flex:none;place-items:center;padding:8px;display:grid}.purchaseQrFrame svg{width:116px;height:116px}.planPurchase>div:last-child{gap:5px;display:grid}.planPurchase span{color:var(--ink-soft);font-size:11px;line-height:1.5}.purchaseDirectLink{width:100%;margin-top:13px;display:none}.planNotice,.privacyNote{color:var(--ink-faint);font-size:11px;line-height:1.6}.planNotice{text-align:center;margin:10px 0 0}.privacyNote{margin:15px 2px 0}.successKicker{color:var(--success);margin-bottom:8px;font-size:12px;font-weight:800;display:block}.resultOption{text-align:center;position:relative}.primaryResult{background:var(--brand-faint);border-color:#bfe0da}.optionNumber{min-height:24px;color:var(--ink-soft);background:#edf1f3;border-radius:20px;align-items:center;margin-bottom:14px;padding:0 9px;font-size:10px;font-weight:800;display:inline-flex}.primaryResult .optionNumber{background:var(--brand-soft);color:var(--brand-dark)}.resultOption>p{min-height:42px;color:var(--ink-soft);margin-bottom:15px;font-size:13px;line-height:1.6}.resultQr{border:1px solid var(--line);background:#fff;border-radius:11px;width:fit-content;margin:0 auto 10px;padding:12px}.resultQr svg{display:block}.resultOption small{color:var(--ink-faint);font-size:10px}.resultOption .downloadButton{width:100%;margin:23px 0 10px}.rawDownloadLink{font-size:12px}.resultTips{background:var(--surface-subtle);text-align:left;border-radius:9px;margin-top:23px;padding:14px}.resultTips strong{font-size:12px}.resultTips p{color:var(--ink-soft);margin:4px 0 0;font-size:11px;line-height:1.55}.mobilePage{place-items:center;min-height:100vh;padding:20px;display:grid}.downloadPanel{background:var(--surface);border:1px solid var(--line);width:min(520px,100%);box-shadow:var(--shadow);border-radius:14px;padding:26px}.downloadPanel p{color:var(--ink-soft);line-height:1.7}.downloadPanel .downloadButton{width:100%;margin:12px 0}.steps{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:13px 0;padding:16px 0}@keyframes overlayIn{0%{opacity:0}to{opacity:1}}@keyframes modalIn{0%{opacity:0;transform:translateY(8px)scale(.99)}to{opacity:1;transform:translateY(0)scale(1)}}@media (max-width:860px){.workspaceIntro,.withAction,.previewToolbar,.mappingFooter{flex-direction:column;align-items:stretch}.mappingGrid{grid-template-columns:1fr}.mappingFooter{display:flex}.filenameField{grid-template-columns:auto minmax(0,1fr) auto}.exportCluster{justify-content:space-between}.statusCard{flex-direction:column;align-items:flex-start}.errorSummaryList{flex-wrap:wrap}}@media (max-width:700px){.appHeader{min-height:64px;padding:10px 14px}.brand small,.localBadge{display:none}.accountTrigger{padding:0 10px}.workspace{width:min(100% - 24px,1240px);padding-top:27px}.workspaceIntro .textButton{align-self:flex-start;min-height:40px}.stepper{margin-top:25px}.stepper li{gap:0;min-height:54px}.stepper li strong{display:none}.stepper li>span{width:27px;height:27px}.taskCard,.uploadStep{padding:20px}.dropZone{text-align:center;min-height:255px;padding:22px 15px}.dropZone strong{font-size:15px}.uploadFootnotes{grid-template-columns:1fr}.fileBar{grid-template-columns:auto minmax(0,1fr)}.fileBar button{grid-column:1/-1;width:100%}.withAction>button{width:100%}.previewStep{padding:0}.previewToolbar{padding:19px 18px}.exportCluster{flex-direction:column;align-items:stretch}.countSummary{width:fit-content}.countSummary em{text-align:left}.exportButton{width:100%}.tableActions{flex-wrap:wrap;gap:2px 16px;padding:8px 18px}.tableActions .quietButton{min-height:40px}.statusCard,.warning,.calendarTip,.hint{margin-left:18px;margin-right:18px}.tableWrap{padding:0 13px;overflow:visible}.eventTable,.eventTable tbody,.eventTable tr,.eventTable td{width:100%;min-width:0;display:block}.eventTable thead{display:none}.eventTable tr{border:1px solid var(--line);background:#fff;border-radius:11px;margin-bottom:12px;padding:12px}.eventTable tr.invalidRow{background:#fff9f7;border-color:#edc6c1}.eventTable td,.eventTable th:first-child,.eventTable td:first-child,.eventTable th:last-child,.eventTable td:last-child{border:0;grid-template-columns:76px minmax(0,1fr);align-items:center;gap:8px;padding:7px 0;display:grid}.eventTable td:before{color:var(--ink-faint);font-size:11px;font-weight:700}.eventTable td:first-child:before{content:"日程标题"}.eventTable td:nth-child(2):before{content:"日期"}.eventTable td:nth-child(3):before{content:"时间"}.eventTable td:nth-child(4):before{content:"提醒"}.eventTable td:nth-child(5):before{content:"备注"}.eventTable td:nth-child(6):before{content:"状态"}.eventTable td:nth-child(2),.eventTable td:nth-child(3),.eventTable td:nth-child(5),.statusCell,.reminderCell,.rowActionCell{width:100%;min-width:0}.rowActionCell{justify-content:flex-end;display:flex!important}.membershipGrid,.resultGrid{grid-template-columns:1fr}.modalOverlay{align-items:end;padding:10px}.modalPanel{border-radius:16px 16px 10px 10px;max-height:94vh;padding:20px}.modalHeader h2{font-size:21px}.planPurchase{align-items:flex-start}.purchaseQrFrame{display:none}.purchaseDirectLink{display:inline-flex}.resultQr svg{width:174px;height:174px}.workspaceFooter{flex-direction:column;align-items:flex-start;gap:0}.workspaceFooter button{min-height:40px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
