.member-panel{color:#eee6d8;max-width:680px;margin:auto}.app .modal:has(.member-panel){background:#231f32;color:#eee6d8;border-color:#a88a655c;color-scheme:dark}.app .modal:has(.member-panel) .modal-title h2{color:#eee6d8}.app .modal:has(.member-panel) .icon-button,.app .modal:has(.member-panel) .text-button{color:#d7c9b5}.app .modal:has(.member-panel) .primary{background:linear-gradient(120deg,#ead1a7,#bea075);color:#292034;border-color:#d3b47b}.app .modal:has(.member-panel) .secondary{background:#ffffff04;color:#e2d7e8;border-color:#a392b45c}.member-panel button,.member-panel input{font:inherit}.member-tabs,.member-form-switch{display:flex;gap:8px;margin-bottom:22px}.member-tabs button,.member-form-switch button{display:inline-flex;align-items:center;justify-content:center;gap:8px;flex:1;padding:12px 10px;border:1px solid #8e7d6055;border-radius:8px;background:transparent;color:#bfb4a4}.member-tabs .active,.member-form-switch .active{background:#d2ba831c;color:#f1dba7;border-color:#c3a873}.member-intro{font-size:16px;line-height:1.85;color:#ddd2bf;margin:20px 0}.member-form{display:grid;gap:16px;margin-top:22px}.member-form label{display:grid;gap:8px;font-size:13px;color:#d7c9b5}.member-form input{width:100%;min-width:0;padding:12px;border:1px solid #6d665c;background:#ffffff08;border-radius:7px;color:#fff}.member-panel button:focus-visible,.member-form input:focus-visible{outline:3px solid #b4dccc;outline-offset:3px}.member-help{color:#b6ac9f;font-size:12px;line-height:1.75;margin:10px 0}.member-error,.member-notice{padding:13px 16px;border:1px solid #cd8d8166;border-radius:8px;background:#a24f4314;color:#f1b6a9;font-size:13px;line-height:1.7}.member-notice{border-color:#89b8a666;color:#b8d9c9;background:#678b7c14}.member-profile{display:flex;align-items:center;gap:16px;padding:18px 0}.member-emblem{display:grid;place-items:center;color:#e9cb89;background:#ddc07e14;border:1px solid #b5996055;width:64px;height:64px;border-radius:50%;flex-shrink:0}.member-profile h3{margin:5px 0;font-size:23px;word-break:break-all}.member-profile span{color:#b29e7b;letter-spacing:.15em;font-size:10px}.member-level{margin-left:auto;white-space:nowrap;color:#ead19a;font-size:22px}.member-xp{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;font-size:11px;color:#b7b29f}.member-xp progress{width:100%;height:6px;border:0;border-radius:6px;overflow:hidden;background:#ffffff15;accent-color:#cdb47e}.member-xp progress::-webkit-progress-bar{background:#ffffff15}.member-xp progress::-webkit-progress-value{background:#cdb47e}.member-stats{display:grid;grid-template-columns:repeat(4,1fr);margin:22px 0 14px;border:1px solid #9b8b6c55;border-radius:10px;overflow:hidden}.member-stats div{text-align:center;padding:18px 6px;background:#ffffff04;border-right:1px solid #9b8b6c33}.member-stats div:last-child{border:0}.member-stats dt{font-size:11px;color:#beb09b}.member-stats dd{margin:8px 0 0;color:#f1e5ce;font-size:24px;font-weight:600}.member-practice{display:flex;align-items:center;flex-wrap:wrap;gap:10px 16px;padding:14px 0;margin-bottom:12px;border-bottom:1px solid #9b8b6c44;font-size:13px}.member-practice small{color:#b6ac9f;font-size:11px}.member-section-heading{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px}.member-section-heading h3{display:flex;gap:8px;align-items:center;margin:0;font-size:17px}.member-section-heading button{padding:9px 12px;font-size:12px}.member-empty{display:grid;justify-items:center;text-align:center;gap:12px;padding:36px 18px;color:#dac18d}.member-empty p{color:#b6ac9f;font-size:13px;line-height:1.7}.member-ranking-scroll{overflow-x:auto}.member-ranking table{width:100%;border-collapse:collapse;font-size:12px}.member-ranking th,.member-ranking td{padding:13px 8px;border-bottom:1px solid #a3916c33;text-align:left}.member-ranking thead th{font-size:11px;color:#a99a80;font-weight:400}.member-ranking tbody th{max-width:160px;overflow-wrap:anywhere}.member-ranking .is-me{background:#bfa87512}.header-account-button{max-width:180px;overflow:hidden;text-overflow:ellipsis}@media(max-width:1500px){.app .header-motto{display:none}}@media(max-width:820px){.app .site-header{min-height:80px;height:auto;padding:14px 20px;flex-wrap:wrap;gap:14px}.app .header-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px 16px}}@media(max-width:480px){.member-profile{gap:10px}.member-profile h3,.member-level{font-size:19px}.member-emblem{width:50px;height:50px}.member-stats dd{font-size:20px}.app .header-actions{width:100%;justify-content:flex-start}.member-panel{font-size:13px}}.room-chat{position:fixed;z-index:70;right:max(16px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom));font-size:13px;color:#252033}.room-chat-trigger{margin-left:auto;display:flex;align-items:center;gap:7px;min-height:44px;padding:10px 16px;color:#fff;background:#5e3c96;border:1px solid #5e3c96;border-radius:24px;box-shadow:0 4px 16px #2e184b25;font-weight:700}.room-chat-unread{display:grid;place-items:center;min-width:20px;height:20px;padding:0 4px;border-radius:12px;background:#fff;color:#5e3c96;font-size:11px}.room-chat-panel{display:flex;flex-direction:column;width:min(350px,calc(100vw - 24px));max-height:min(470px,calc(100dvh - 90px));margin-bottom:10px;overflow:hidden;background:#fff;border:1px solid #ded7e8;border-radius:16px;box-shadow:0 10px 35px #27123825}.room-chat-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-shrink:0;padding:13px 15px;border-bottom:1px solid #eee9f3}.room-chat-heading h2{margin:0;font-size:15px;font-weight:750;color:#382453}.room-chat-heading p{margin:4px 0 0;font-size:11px;color:#7b7487}.room-chat-close{display:grid;place-items:center;min-width:36px;min-height:36px;padding:7px;border:0;border-radius:8px;color:#766885;background:#f5f2f8}.room-chat-history{min-height:110px;height:245px;overflow-y:auto;overscroll-behavior:contain;padding:12px;scroll-padding:12px}.room-chat-empty{margin:32px 0;text-align:center;font-size:12px;color:#827a8e}.room-chat-message{margin:0 0 12px}.room-chat-message:last-child{margin-bottom:0}.room-chat-meta{display:flex;align-items:baseline;gap:6px;min-width:0;font-size:10px;color:#847b91}.room-chat-meta strong{max-width:170px;overflow-wrap:anywhere;color:#463257;font-size:12px;font-weight:700}.room-chat-meta time{margin-left:auto;white-space:nowrap}.room-chat-message p{display:table;max-width:100%;margin:5px 0 0;padding:8px 10px;border-radius:0 10px 10px;background:#f3f0f7;line-height:1.55;overflow-wrap:anywhere;white-space:pre-wrap}.room-chat-message.is-mine p{background:#ede6f8}.room-chat-form{flex-shrink:0;padding:10px 12px 12px;border-top:1px solid #eee9f3}.room-chat-label{display:block;margin-bottom:5px;font-size:11px;color:#6f647d}.room-chat textarea{box-sizing:border-box;width:100%;min-height:60px;max-height:100px;padding:8px 10px;resize:vertical;font:inherit;font-size:13px;line-height:1.5;color:#252033;background:#fff;border:1px solid #dcd4e7;border-radius:8px}.room-chat textarea:focus{outline:2px solid #b59bdb;outline-offset:1px}.room-chat-compose-bottom{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:7px}.room-chat-compose-bottom small{font-size:10px;color:#867b93}.room-chat-compose-bottom small.is-over-limit{color:#ba3c50}.room-chat-send{display:flex;align-items:center;gap:5px;min-height:34px;padding:6px 10px;border:0;border-radius:8px;background:#5e3c96;color:#fff;font-size:12px;font-weight:700}.room-chat button:disabled{cursor:not-allowed;opacity:.5}.room-chat-error{margin:6px 12px;color:#a23049;font-size:11px;line-height:1.5}.room-chat-form .room-chat-error{margin:7px 0 0}.room-chat-error button{color:#5e3c96;border:0;padding:0;background:transparent;font:inherit;text-decoration:underline}.room-chat button:focus-visible{outline:2px solid #9874c9;outline-offset:3px}@media(max-width:520px){.room-chat{right:12px;bottom:max(12px,env(safe-area-inset-bottom))}.room-chat-panel{width:min(340px,calc(100vw - 24px));max-height:calc(100dvh - 86px)}.room-chat-history{height:min(240px,38dvh)}.room-chat textarea{font-size:16px}}.room-chat-retention{grid-column:1/-1;display:block;font-size:10px;line-height:1.5;opacity:.7}
