:root{--green:#078348;--green-dark:#006b39;--green-soft:#edf7ee;--gold:#bb9447;--ink:#28382f;--muted:#68786b;--line:#e0e7dd;--paper:#f4f6f0;--danger:#b44e43;--radius:22px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}body{color:var(--ink);-webkit-font-smoothing:antialiased;background:#eff2ec;margin:0;font-family:PingFang SC,Microsoft YaHei,system-ui,sans-serif;font-size:15px;line-height:1.65}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}button{color:inherit}h1,h2,h3,p{margin:0}h2{font-size:17px;line-height:1.5}h3{font-size:15px}a{color:inherit;text-decoration:none}input,textarea,select{border:1px solid var(--line);width:100%;color:var(--ink);background:#f7f8f4;border-radius:12px;outline:none;min-height:48px;padding:12px 14px;font-size:16px;transition:border-color .15s,box-shadow .15s}textarea{resize:vertical;line-height:1.8}input::placeholder,textarea::placeholder{color:#7d8a7e}input:focus,textarea:focus,select:focus{border-color:#62a97e;box-shadow:0 0 0 3px #07834812}label{color:#56695a;margin:18px 0 8px;font-size:13px;font-weight:600;display:block}button:focus-visible{outline:2px solid var(--green);outline-offset:4px}a:focus-visible{outline:2px solid var(--green);outline-offset:4px}[tabindex]:focus-visible{outline:2px solid var(--green);outline-offset:4px}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.muted{color:var(--muted)}.green{color:var(--green)}.text-danger{color:var(--danger)!important}.small{font-size:12px}.center{text-align:center}.right{text-align:right}.full-width{width:100%}.field-note{color:var(--muted);float:right;font-size:12px;font-weight:400}.field-help{color:var(--muted);margin:7px 0 14px;font-size:12px;line-height:1.75}.button{border:1px solid #0000;border-radius:13px;justify-content:center;align-items:center;gap:9px;min-height:48px;padding:12px 18px;font-weight:600;line-height:1.5;transition:background .15s,transform .15s;display:inline-flex}.button:active:not(:disabled){transform:translateY(1px)}.button-primary{background:var(--green);color:#fff;box-shadow:0 5px 16px #07834820}.button-primary:hover:not(:disabled){background:var(--green-dark)}.button-secondary{border-color:var(--line);color:#56695a;background:#f4f6f0}.button-ghost{color:var(--green);background:0 0}.button-danger{color:#fff;background:#b44e43}.button-row{gap:12px;display:flex}.button-row>*{flex:1}.icon-button{background:#f2f5ee;border:0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:inline-flex}.text-button{white-space:nowrap;background:0 0;border:0;justify-content:center;align-items:center;gap:5px;min-height:36px;padding:6px 0;font-size:13px;font-weight:500;display:inline-flex}.small-button{border:1px solid var(--line);background:#fff;border-radius:9px;flex-shrink:0;min-height:44px;padding:7px 10px;font-size:12px}.card{border-radius:var(--radius);background:#fff;border:1px solid #fff;padding:23px;box-shadow:0 4px 18px #23351e05}.card-heading{justify-content:space-between;align-items:center;gap:10px;margin-bottom:18px;display:flex}.card-heading h2{align-items:center;gap:8px;display:flex}.card-heading h2>svg{color:var(--green)}.section-kicker{color:#668064;background:#f0f5eb;border-radius:7px;justify-content:center;align-items:center;width:23px;height:23px;font-size:10px;font-weight:600;display:inline-flex}.alert{overflow-wrap:anywhere;border-radius:11px;margin:12px 0;padding:11px 13px;font-size:13px;line-height:1.75}.alert-error{color:#a04238;background:#fff1ee;border:1px solid #f0d8d2}.alert-info{color:#846324;background:#fff7e5;border:1px solid #f2e5c4}.alert-success{color:#277045;background:#eef7ed}.avatar{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:39px;height:39px;font-size:16px;font-weight:600;display:inline-flex}.avatar-small{border-radius:9px;width:29px;height:29px;font-size:12px}.avatar-0{color:#6b805d;background:#e4eee1}.avatar-1{color:#988251;background:#efe9db}.avatar-2{color:#67828d;background:#e3ebee}.avatar-3{color:#a57b67;background:#f1e5df}.tag{color:var(--muted);white-space:nowrap;background:#f1f4ee;border-radius:7px;padding:3px 8px;font-size:11px;line-height:1.6}.tag-green{color:var(--green);background:#edf7ee}.tag-gold{color:#96702c;background:#faf2dc}.progress-track{background:#e9eee5;border-radius:8px;height:7px;overflow:hidden}.progress-fill{background:linear-gradient(90deg,#91d7a3,var(--green));border-radius:8px;height:100%;transition:width .4s}.spinner{border:2px solid;border-right-color:#0000;border-radius:50%;width:18px;height:18px;animation:.75s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.sheet-backdrop{z-index:80;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#18221975;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.sheet{background:#fff;border-radius:25px;outline:none;flex-direction:column;width:min(100%,510px);max-height:calc(100dvh - 48px);display:flex;overflow:hidden;box-shadow:0 24px 80px #10231340}.sheet-wide{width:min(100%,580px)}.sheet-handle{background:#dbe2d5;border-radius:5px;flex-shrink:0;width:38px;height:4px;margin:13px auto 0;display:none}.sheet-header{flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:22px 24px 16px;display:flex}.sheet-header h2{font-size:20px}.sheet-content{overscroll-behavior:contain;min-height:0;padding:0 24px 24px;overflow-y:auto}.sheet-footer{background:#fff;border-top:1px solid #edf0e9;flex-shrink:0;padding:17px 24px 22px}.sheet-custom-header{justify-content:space-between;align-items:center;gap:12px;padding:20px 24px 15px;display:flex}.sheet-custom-header h2{font-size:17px}.sheet-content>.button.full-width{margin-top:14px}.confirmation-mark,.lock-symbol,.share-symbol{width:60px;height:60px;color:var(--green);background:#edf5e9;border-radius:20px;justify-content:center;align-items:center;margin:8px auto 18px;display:flex}.confirmation-mark.is-danger{color:#af7049;background:#fcf0e8}.confirm-description{color:#627266;font-size:14px;line-height:1.9}.confirm-description p+p{margin-top:12px}.confirm-description strong{color:var(--ink)}.toast{left:50%;bottom:calc(148px + env(safe-area-inset-bottom));color:#fff;z-index:120;background:#26382df2;border:1px solid #ffffff17;border-radius:50px;align-items:center;gap:8px;width:max-content;max-width:calc(100% - 32px);padding:12px 19px;font-size:13px;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 8px 25px #1a2c2626}.toast svg{color:#a7dbad;flex-shrink:0}@media (max-width:640px){.card{border-radius:22px;padding:20px}.sheet-backdrop{align-items:flex-end;padding:0}.sheet{border-radius:26px 26px 0 0;width:100%;max-height:calc(100dvh - 24px)}.sheet-handle{display:block}.sheet-header{padding:16px 22px}.sheet-custom-header{padding:14px 22px}.sheet-content{padding:0 22px calc(24px + env(safe-area-inset-bottom))}.sheet-footer{padding:16px 22px calc(18px + env(safe-area-inset-bottom))}.sheet-content:has(+.sheet-footer){padding-bottom:22px}.card-heading h2{font-size:16px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}.lobby-card{max-width:590px;margin:0 auto;padding:32px}.lobby-mark{color:#ab873d;background:#faf6e8;border:1px solid #e9e3cd;border-radius:17px;justify-content:center;align-items:center;width:54px;height:54px;margin-bottom:20px;display:flex}.eyebrow{letter-spacing:2px;color:#958253;margin-bottom:7px;font-size:11px}.lobby-card h2{letter-spacing:1px;font-size:25px}.lobby-intro{max-width:410px;margin:12px 0 22px;font-size:13px;line-height:1.9}.segmented{background:#f0f3ec;border-radius:12px;margin:22px 0;padding:4px;display:flex}.segmented button{color:#7b897c;background:0 0;border:0;border-radius:9px;flex:1;min-height:43px;padding:10px;font-size:14px}.segmented .active{color:#375d43;background:#fff;font-weight:600;box-shadow:0 2px 8px #1e352a08}.lobby-card form>.button{margin-top:18px}.lobby-footnote{color:#798879;justify-content:center;align-items:flex-start;gap:6px;margin-top:22px;font-size:11px;line-height:1.8;display:flex}.lobby-footnote svg{flex-shrink:0;margin-top:3px}.recent-rooms{border-top:1px solid #edf1e9;margin-top:24px;padding-top:20px}.recent-room{text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;width:100%;padding:12px 0;font-size:13px;display:flex}.recent-room>span{align-items:center;gap:9px;display:flex}.recent-room svg{color:#7e927d}.sheet .lobby-card{box-shadow:none;border:0;padding:0}.sheet .lobby-mark{display:none}.sheet .lobby-card h2{font-size:21px}.sheet .lobby-card .eyebrow{display:none}@media (max-width:640px){.lobby-card{padding:25px 22px}.lobby-card h2{font-size:23px}}.identity-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.identity-option{text-align:left;background:#fff;border:1px solid #e2e8de;border-radius:14px;align-items:center;gap:12px;min-height:79px;padding:14px 15px;transition:background .15s,border-color .15s;display:flex;position:relative}.identity-text{flex-direction:column;flex:1;min-width:0;display:flex}.identity-text strong{overflow-wrap:anywhere;padding-right:8px;font-size:14px;font-weight:600}.member-state{color:#899687;align-items:center;gap:3px;margin-top:3px;font-size:11px;display:flex}.member-state.done{color:#5f896a}.identity-option.is-done{background:#f7f8f4;border-color:#e8ece4}.identity-option.is-done strong{color:#748273}.identity-option.is-selected{border-color:var(--green);box-shadow:inset 0 0 0 .5px var(--green);background:#edf7ef}.identity-option.is-selected strong{color:#1d5434}.identity-option.is-selected .avatar{color:#39764b;background:#d6ebda}.selected-tick{background:var(--green);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;display:flex;position:absolute;top:8px;right:8px}.progress-caption{color:var(--muted);justify-content:space-between;align-items:center;margin:21px 0 10px;font-size:12px;display:flex}.progress-caption strong{color:var(--green);font-variant-numeric:tabular-nums;font-size:16px;line-height:1.2}.progress-caption strong span{color:#96a18f;font-size:12px;font-weight:400}.progress-caption.all-done{color:var(--green)}.subsection-heading{justify-content:space-between;align-items:center;margin-top:20px;display:flex}.managed-list{flex-direction:column;gap:9px;margin:15px 0;display:flex}.managed-member{background:#f6f8f2;border-radius:14px;align-items:center;gap:8px;min-height:72px;padding:12px;display:flex}.managed-name{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.managed-name strong{overflow-wrap:anywhere;font-size:13px}.managed-name input{min-height:42px;padding:8px;font-size:16px}.add-member-form{gap:10px;margin:18px 0 8px;display:flex}.add-member-form input{flex:1;min-width:0}.add-member-form .button{padding-inline:14px}.members-manager .field-help{margin-bottom:10px}@media (max-width:400px){.identity-option{gap:9px;min-height:76px;padding:12px}.identity-option .avatar{border-radius:10px;width:33px;height:33px}.identity-text strong{font-size:13px}.managed-member{gap:6px;padding:10px}.small-button{padding-inline:8px}}@media (max-width:800px){.identity-card{padding:16px}.identity-card .card-heading{margin-bottom:12px}.identity-card .card-heading .text-button{min-height:24px;padding:0}.identity-grid{gap:8px}.identity-option{gap:9px;min-height:58px;padding:9px 10px}.identity-option .avatar{border-radius:9px;width:30px;height:30px;font-size:13px}.identity-text strong{font-size:13px;line-height:1.4}.member-state{margin-top:3px;font-size:10px;line-height:1.3}.progress-caption{margin:14px 0 7px;font-size:11px}.progress-caption strong{font-size:15px}.selected-tick{width:14px;height:14px;top:6px;right:6px}.identity-card .progress-track{height:6px}}.time-card{background:linear-gradient(115deg,#fff 60%,#fbfcf6);justify-content:space-between;align-items:center;padding-block:20px;display:flex}.time-heading{color:#5a715e;align-items:center;gap:7px;display:flex}.time-heading h2{font-size:12px;font-weight:500}.time-heading svg{color:#819875}.shared-tag{color:#899a7c;background:#f0f4e9;border-radius:4px;margin-left:2px;padding:1px 5px;font-size:9px}.time-value{letter-spacing:1px;font-variant-numeric:tabular-nums;color:#273b2d;margin:8px 0 4px;font-family:Arial,Microsoft YaHei,sans-serif;font-size:37px;font-weight:600;line-height:1.25}.time-value.is-empty{color:#9aa797;font-weight:400}.time-date{color:#7c8c7b;font-size:11px}.time-edit{min-height:42px;color:var(--green);background:#f8fbf4;border:1px solid #dfe9d9;border-radius:10px;align-items:center;gap:3px;padding:8px 12px;font-size:12px;font-weight:500;display:flex}.date-field{background:#f7f8f3;border:1px solid #e6ebdf;border-radius:11px;align-items:center;gap:8px;margin:22px 0 5px;padding:8px 12px;font-size:12px;display:flex}.date-field svg{color:#889c7d;flex-shrink:0}.date-field span{white-space:nowrap}.date-field input{box-shadow:none;text-align:right;background:0 0;border:0;flex:1;min-width:0;min-height:35px;padding:5px 0 5px 6px;font-size:14px}.time-wheels{grid-template-columns:minmax(0,1fr) 24px minmax(0,1fr);height:220px;margin:18px 0;display:grid;position:relative}.wheel-highlight{pointer-events:none;background:#edf3e9;border-radius:11px;height:44px;position:absolute;top:88px;left:0;right:0}.wheel-column{z-index:1;min-width:0;position:relative}.wheel-list{scroll-snap-type:y mandatory;overscroll-behavior:contain;scrollbar-width:none;height:220px;padding:88px 0;overflow-y:auto;-webkit-mask-image:linear-gradient(#0000,#000 24% 76%,#0000);mask-image:linear-gradient(#0000,#000 24% 76%,#0000)}.wheel-list::-webkit-scrollbar{display:none}.wheel-option{scroll-snap-align:center;color:#bdc8b7;font-variant-numeric:tabular-nums;cursor:pointer;justify-content:center;align-items:center;height:44px;font-family:Arial,sans-serif;font-size:27px;display:flex}.wheel-option.selected{color:#293e2f;font-size:30px;font-weight:600}.wheel-colon{color:#86967e;z-index:1;justify-content:center;align-items:center;font-size:24px;display:flex}.numeric-time{grid-template-columns:1fr 20px 1fr;align-items:center;gap:12px;margin:28px 0;display:grid}.numeric-time input{text-align:center;padding:20px 8px;font-family:Arial,sans-serif;font-size:34px}.numeric-time>span{text-align:center;font-size:28px}.numeric-time label{margin:0}@media (max-width:800px){.time-card{padding:16px 18px}.time-value{vertical-align:baseline;margin:8px 12px 0 0;font-size:32px;line-height:1.15;display:inline-block}.time-date{font-size:10px;display:inline-block}.time-edit{min-height:38px;padding:7px 10px}.time-heading h2{font-size:11px}.shared-tag{font-size:8px}}.time-wheels .wheel-list:focus-visible{outline-offset:-2px;border-radius:12px;outline:2px solid #078348}.character-count{color:#68796b;font-variant-numeric:tabular-nums;white-space:nowrap;font-size:11px}.character-count span{color:#a1ac9a}.pledge-textarea{resize:vertical;background:#f7f8f4;border-color:#e3e9df;min-height:132px;padding:15px 16px;font-size:16px}.pledge-textarea:disabled{background:#fafbf8}.pledge-preview{color:#8f743d;background:#fffbf0;border:1px solid #eadcb8;border-radius:13px;min-height:88px;margin-top:15px;padding:16px 16px 14px;position:relative}.pledge-preview p{white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:1.9;position:relative}.quote-mark{color:#dfcd9f35;font-family:Georgia,serif;font-size:60px;line-height:1;position:absolute;top:2px;left:12px}.signature{text-align:right;color:#ac843d;margin-top:8px;font-size:12px;font-weight:600;display:block}.pledge-preview.is-placeholder{color:#9b8a63}.editor-footnote{color:#869781;align-items:center;gap:5px;margin-top:15px;font-size:10px;display:flex}.pledge-entry{border-bottom:1px solid #eef1e9;padding:16px 0}.pledge-entry:first-child{padding-top:0}.pledge-entry:last-child{border-bottom:0;padding-bottom:0}.pledge-entry-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.pledge-entry-head>span:first-child{align-items:center;gap:8px;min-width:0;display:flex}.pledge-entry-head strong{overflow-wrap:anywhere;font-size:12px;font-weight:600}.entry-check{color:#7a9972;white-space:nowrap;align-items:center;gap:3px;font-size:10px;display:flex}.pledge-entry>p{color:#697b68;white-space:pre-wrap;overflow-wrap:anywhere;margin:9px 0 0 37px;font-size:13px;line-height:1.9}.pledge-entry.not-submitted{opacity:.8}.all-pledges-card .card-heading{margin-bottom:18px}.submitted-card{background:linear-gradient(120deg,#fff,#f5fbf3)}.success-circle{width:25px;height:25px;color:var(--green);background:#e1f1df;border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.submitted-card blockquote{white-space:pre-wrap;overflow-wrap:anywhere;background:#fffdf5;border-left:3px solid #bfa05b;margin:20px 0 14px;padding:19px;font-size:17px;line-height:1.9}.submitted-card cite{text-align:right;color:#9d7d37;margin-top:13px;font-size:13px;font-style:normal;display:block}.submitted-card .card-heading h2{font-size:16px}@media (max-width:800px){.pledge-card{padding:16px}.pledge-card .card-heading{margin-bottom:12px}.pledge-textarea{height:104px;min-height:104px;padding:11px 13px;line-height:1.7}.pledge-preview{min-height:72px;margin-top:12px;padding:11px 13px}.pledge-preview p{font-size:12px;line-height:1.75}.signature{margin-top:5px;font-size:11px}.editor-footnote{margin-top:11px;font-size:9px}}.notice-card{background:#fffefa}.notice-card .card-heading{margin-bottom:12px}.notice-card h2{font-size:14px}.notice-card h2>svg{color:#ab9255}.notice-text{white-space:pre-wrap;overflow-wrap:anywhere;color:#68715e;font-size:13px;line-height:1.95}.notice-empty{font-size:12px;line-height:1.95}.admin-status{color:#4b7f51;background:#f0f7eb;border-radius:11px;justify-content:space-between;align-items:center;gap:8px;margin:4px 0 18px;padding:9px 12px;font-size:12px;display:flex}.admin-status>span{align-items:center;gap:5px;display:flex}.admin-login{padding:5px 0 6px}.admin-login h3,.admin-login>p{text-align:center}.admin-login h3{margin:14px 0 8px;font-size:20px}.admin-login form{margin-top:22px}.admin-login form>.button{margin-top:18px}.admin-login>.field-help{margin-top:19px}.lock-symbol{margin-top:10px}.legacy-readonly .alert{margin-bottom:20px}.legacy-time{background:#f7f8f3;border-radius:12px;margin:20px 0;padding:16px}.legacy-time>span,.legacy-time>strong{display:block}.legacy-time>strong{margin-top:5px;font-family:Arial,sans-serif;font-size:30px}.legacy-readonly>.button{margin-top:24px}.legacy-notice{border-top:1px solid var(--line);margin-top:20px;padding-top:18px}.legacy-notice p{white-space:pre-wrap;overflow-wrap:anywhere;margin-top:8px;font-size:14px}.import-source-actions{justify-content:space-between;align-items:center;gap:14px;margin:15px 0;display:flex}.file-button{cursor:pointer;color:var(--green);align-items:center;gap:7px;margin:0;padding:10px 0;font-size:13px;display:inline-flex}.file-button:focus-within{outline:2px solid var(--green);outline-offset:3px}.import-preview{border-top:1px solid var(--line);margin-top:20px;padding-top:8px}.import-preview>p{margin-top:14px;font-size:13px}.name-chips{flex-wrap:wrap;gap:6px;margin:12px 0;display:flex}.name-chips span{color:#68775f;background:#f0f4eb;border-radius:7px;padding:5px 9px;font-size:12px}.checkbox-label{background:#fff7e6;border-radius:10px;align-items:flex-start;gap:9px;padding:12px;font-size:12px;font-weight:400;line-height:1.9;display:flex}.checkbox-label input{width:17px;height:17px;min-height:0;accent-color:var(--green);flex-shrink:0;margin-top:4px}.import-preview>.button{margin-top:22px}.brand-header{color:#e7d59f;background:radial-gradient(at 15% 0,#6a51232b,#0000 65%),linear-gradient(110deg,#292315,#18170f);border-bottom:1px solid #ad8b4426;min-height:238px;padding:35px 24px 76px;position:relative;overflow:hidden}.brand-inner{max-width:1020px;margin:0 auto;position:relative}.brand-link{z-index:1;align-items:center;gap:15px;display:inline-flex;position:relative}.brand-emblem{color:#c8a75d;background:linear-gradient(140deg,#b79a4e12,#382f1810);border:1px solid #c2a15d55;border-radius:15px 15px 20px 20px;justify-content:center;align-items:center;width:53px;height:62px;display:inline-flex}.brand-overline{letter-spacing:3px;color:#a48e5b;margin:2px 0 6px;font-size:8px;line-height:1.5;display:block}.brand-link h1{letter-spacing:7px;color:#0000;background:linear-gradient(130deg,#f3dfa6,#c39c48);-webkit-background-clip:text;background-clip:text;font-family:Songti SC,STSong,SimSun,serif;font-size:39px;font-weight:500;line-height:1.3}.brand-motto{letter-spacing:3px;color:#b99c5e;align-items:center;gap:12px;margin:17px 0 0 69px;font-size:11px;display:flex}.brand-motto>span:not(.motto-dot){background:#ad914347;width:22px;height:1px}.motto-dot{margin:0 -3px}.brand-watermark{color:#c4a04a09;-webkit-user-select:none;user-select:none;font:190px/1.2 STKaiti,KaiTi,serif;position:absolute;top:-45px;right:20px;transform:rotate(-9deg)}.app-main{max-width:1068px;margin:-61px auto 0;padding:0 24px 170px;position:relative}.room-toolbar{justify-content:space-between;align-items:center;gap:14px;min-height:35px;margin-bottom:20px;display:flex}.room-switch{color:#e4d6ae;background:#ffffff05;border:1px solid #d0b87529;border-radius:30px;align-items:center;gap:8px;max-width:70%;min-height:35px;padding:7px 12px;font-size:12px;display:flex}.room-switch strong{white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.room-switch>svg{opacity:.75;flex-shrink:0}.sync-indicator{color:#95c7a0;white-space:nowrap;background:0 0;border:0;align-items:center;gap:6px;padding:8px 0;font-size:10px;display:inline-flex}.sync-offline{color:#ddbd78}.sync-connecting,.sync-polling{color:#b9bf9c}.status-dot{background:currentColor;border-radius:50%;width:5px;height:5px;box-shadow:0 0 0 3px #a1d4a509}.room-workspace{grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);align-items:start;gap:20px;display:grid}.editor-column,.room-aside{flex-direction:column;gap:18px;display:flex}.room-tip{color:#9aa68f;gap:9px;padding:6px 10px;font-size:11px;line-height:1.9;display:flex}.room-tip>svg{color:#9fae94;flex-shrink:0;margin-top:3px}.room-tip p{color:#7b8c75}.room-tip span{color:#94a18b;font-size:10px}.page-alert{margin-bottom:18px}.page-alert>.alert{margin-top:0}.action-dock{z-index:30;padding:18px 24px calc(17px + env(safe-area-inset-bottom));pointer-events:none;background:linear-gradient(#eff2ec00,#eff2ec 60%);position:fixed;bottom:0;left:0;right:0}.dock-inner{-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);pointer-events:auto;background:#ffffffed;border:1px solid #e3e9dd;border-radius:21px;max-width:1020px;margin:0 auto;padding:14px 20px 18px;box-shadow:0 -2px 25px #2d452d08}.dock-context{color:#84927c;justify-content:space-between;align-items:center;min-height:20px;margin-bottom:10px;font-size:11px;display:flex}.dock-context strong{color:#5f725d;font-weight:500}.dock-context .text-button{min-height:20px;padding:0;font-size:11px}.pledge-submit{letter-spacing:1px;border-radius:15px;width:100%;min-height:52px;font-size:17px}.pledge-submit>svg:last-child:not(:first-child){margin-left:3px}.management-actions{border-top:1px solid #e5ebdf;margin-top:22px;padding-top:8px}.management-actions button{background:0 0;border:0;justify-content:space-between;align-items:center;width:100%;padding:16px 0;font-size:13px;display:flex}.management-actions button>span{align-items:center;gap:9px;display:flex}.management-actions button:not(.text-danger)>span>svg{color:#829675}.management-actions button>svg{color:#a6b29d}.share-input{word-break:break-all;margin-bottom:12px;font-size:12px}.share-symbol{color:#729347;background:#f1f5e7}.lobby-main{max-width:640px;margin-top:-47px;padding-bottom:35px}.lobby-features{color:#819278;flex-wrap:wrap;justify-content:center;gap:18px;margin:28px 0 21px;font-size:10px;display:flex}.lobby-features>span{align-items:center;gap:5px;display:inline-flex}.lobby-features svg{color:#9aaa8b;width:14px;height:14px}.site-footer{text-align:center;color:#a5ae9b;letter-spacing:1px;margin:26px 0 8px;font-size:10px}.loading-card{text-align:center;margin-top:30px;padding:60px 24px}.loading-card>.spinner{color:#87a378;width:26px;height:26px;margin-bottom:20px}.loading-card h2{margin-bottom:12px;font-size:19px}.skeleton-card{min-height:380px;padding:35px}.skeleton-line,.skeleton-block{background:#eef2e8;border-radius:8px;height:22px;margin-bottom:18px;display:block}.skeleton-line.short{width:60%}.skeleton-block{height:220px}@media (min-width:801px){.dock-inner{grid-template-columns:1fr 340px;align-items:center;gap:30px;padding:16px 23px;display:grid}.dock-context{margin:0}.brand-watermark{right:55px}.room-aside{position:sticky;top:22px}.lobby-main .brand-watermark{display:none}}@media (max-width:800px){.brand-header{min-height:225px;padding:33px 24px 75px}.brand-inner{max-width:530px}.brand-link h1{letter-spacing:6px;font-size:35px}.brand-overline{letter-spacing:2.5px;font-size:7px}.brand-emblem{width:48px;height:59px}.brand-motto{letter-spacing:2px;gap:10px;margin-left:63px;font-size:10px}.brand-watermark{font-size:155px;top:-28px;right:-9px}.app-main{max-width:570px;margin-top:-57px;padding:0 16px 155px}.room-toolbar{margin-bottom:17px}.room-workspace{flex-direction:column;gap:17px;display:flex}.editor-column,.room-aside{gap:17px;width:100%}.room-aside{flex-direction:column;display:flex}.action-dock{padding:12px 12px calc(11px + env(safe-area-inset-bottom))}.dock-inner{border-radius:18px;max-width:546px;padding:12px 14px 13px}.dock-context{margin-bottom:8px;font-size:10px}.pledge-submit{min-height:50px;font-size:16px}.lobby-main{max-width:570px;margin-top:-49px;padding-bottom:25px}.room-tip{justify-content:center;margin-top:0}.lobby-features{gap:14px;font-size:9px}.lobby-features svg{width:12px;height:12px}.room-switch{max-width:65%;font-size:11px}.sync-indicator{font-size:9px}.brand-link{gap:13px}}@media (max-width:370px){.brand-link h1{letter-spacing:5px;font-size:31px}.brand-overline{font-size:6px}.brand-emblem{width:43px;height:53px}.brand-motto{margin-left:56px}.app-main{padding-inline:12px}.lobby-features{gap:10px}.card{padding:17px}}@media (max-width:800px){.brand-header{min-height:156px;padding:20px 24px 50px}.brand-emblem{border-radius:13px 13px 18px 18px;width:44px;height:53px}.brand-link h1{font-size:32px}.brand-motto{margin-top:12px;margin-left:57px}.brand-overline{font-size:6px}.brand-watermark{font-size:135px;top:-30px}.app-main{margin-top:-48px}.room-toolbar{margin-bottom:14px}.editor-column,.room-aside,.room-workspace{gap:12px}.action-dock{padding:7px 12px calc(7px + env(safe-area-inset-bottom))}.dock-inner{padding:9px 13px 10px}.dock-context{min-height:17px;margin-bottom:6px;font-size:10px}.pledge-submit{border-radius:13px;min-height:46px;font-size:16px}.lobby-main{margin-top:-15px}.room-switch{padding-block:5px}.sync-indicator{padding-block:6px}}
