#tm-join{font:inherit;cursor:pointer}.tm-dialog{padding:0;border:1px solid #dfe5d6;border-radius:24px;background:#faf9f2;color:#24483c;width:min(580px,calc(100vw - 24px));max-height:calc(100dvh - 32px);box-shadow:0 26px 90px #173c3438}.tm-dialog::backdrop{background:#17362f66;backdrop-filter:blur(4px)}.tm-shell{padding:28px;max-height:calc(100dvh - 40px);overflow:auto;box-sizing:border-box}.tm-top{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.tm-top small{font-size:10px;letter-spacing:2px;color:#788d72}.tm-top h2{font-size:26px;margin:10px 0 20px;font-weight:650}.tm-close{border:0;background:#eaf0e4;color:#345748;border-radius:50%;width:32px;height:32px;flex-shrink:0;font-size:23px;cursor:pointer}.tm-caption{font-size:13px;font-weight:bold;letter-spacing:2px}.tm-notice{white-space:pre-wrap;line-height:1.9;font-size:15px}.tm-note{font-size:12px;color:#758275;line-height:1.7}.tm-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:10px;margin-top:20px}.tm-button{padding:10px 17px;background:#f6f7ef;color:#315543;border:1px solid #d4ddca;border-radius:11px;cursor:pointer;font:inherit;font-size:14px;min-height:42px}.tm-primary{background:#315e4d;color:#fff;border-color:#315e4d}.tm-button:disabled{opacity:.45;cursor:wait}.tm-status{font-size:13px;color:#62765c;line-height:1.7;min-height:22px}.tm-day{font-size:13px;color:#798b6b}.tm-details{border:1px solid #dce2d1;border-radius:16px;background:#fffef8;padding:0 18px}.tm-detail{display:flex;align-items:center;justify-content:space-between;padding:18px 0;border-bottom:1px solid #e8ebdf;gap:8px}.tm-detail small{display:block;color:#7c8b76;font-size:12px}.tm-detail strong{display:block;font:600 25px ui-monospace,monospace;letter-spacing:3px;margin-top:6px;user-select:all}.tm-official{display:block;overflow-wrap:anywhere;padding:16px 0;font-size:13px;color:#34664f}.tm-dialog :focus-visible{outline:2px solid #7e9f74;outline-offset:3px}@media(max-width:480px){.tm-shell{padding:22px 18px;padding-bottom:max(22px,env(safe-area-inset-bottom))}.tm-top h2{font-size:23px}.tm-notice{font-size:14px}.tm-actions .tm-button{flex:1}.tm-detail strong{font-size:22px;letter-spacing:2px}}@media(prefers-reduced-motion:reduce){.tm-dialog::backdrop{backdrop-filter:none}}
