.proposal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.poll-panel>.section-header{align-items:flex-start}.poll-panel h2{margin-top:7px;overflow-wrap:anywhere}.proposal-card{padding:22px;border:1px solid var(--line);border-radius:14px;min-width:0;display:flex;flex-direction:column}.proposal-card.chosen{border-color:#82a88b;background:#f4f9f3}.proposal-card h3{font-size:19px;overflow-wrap:anywhere}.proposal-card>.small{margin:3px 0 12px}.proposal-card>.tiny{margin:17px 0 12px}.proposal-note{font-size:12px;white-space:pre-wrap;color:#71847a;overflow-wrap:anywhere}.proposal-card .text-link{align-self:flex-start}.proposal-votes{margin-top:auto;border-top:1px solid var(--line);padding-top:15px;display:flex;flex-direction:column;gap:7px}.proposal-votes strong{font-size:13px}.proposal-votes span{font-size:11px;color:#71847a;overflow-wrap:anywhere;line-height:1.6}.proposal-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}.proposal-actions:empty{display:none}.proposal-actions .btn{font-size:11px;padding:10px 12px}.btn.voted{background:#fff3bf;border-color:#d9c572}.poll-footer{margin-top:20px;display:flex;gap:18px;align-items:center;flex-wrap:wrap}.poll-footer>.tiny{max-width:380px}.member-card .icon-btn{margin-left:auto}@media(max-width:900px){.proposal-grid{grid-template-columns:1fr}.proposal-card{padding:18px}}@media(max-width:680px){.poll-panel>.section-header>.pill{font-size:10px}.proposal-actions .btn{flex:1}.poll-panel .section-header h2{font-size:20px}}
.guest-banner{display:flex;justify-content:space-between;gap:20px;padding:20px;background:#fff5ce;border:1px solid #e9d797;border-radius:14px;margin-bottom:25px}.guest-banner strong{font-size:15px}.guest-banner p{font-size:12px;margin:7px 0}.guest-banner small{font-size:11px;color:#68756c}.guest-banner>div:last-child{display:flex;align-items:center;gap:8px}.guest-banner .btn{font-size:11px}@media(max-width:680px){.guest-banner{flex-direction:column;padding:16px}.guest-banner>div:last-child{flex-wrap:wrap}}
.working button,.working a[data-action]{pointer-events:none;opacity:.65;cursor:progress}.working{cursor:progress}
.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.chat-log{height:420px;overflow:auto;padding:16px 8px;overscroll-behavior:contain}.chat-message{display:flex;gap:10px;margin-bottom:18px}.chat-message.mine{flex-direction:row-reverse}.chat-bubble{max-width:85%;min-width:180px;background:#f1f5f3;border-radius:14px;padding:10px 16px}.mine .chat-bubble{background:#edf4ff}.message-meta{display:flex;align-items:center;gap:14px}.message-meta strong{font-size:11px}.message-meta time{font-size:9px;color:#78868b}.chat-bubble p{font-size:13px;white-space:pre-wrap;overflow-wrap:anywhere;margin:8px 0}.chat-compose{display:flex;align-items:center;gap:12px;border-top:1px solid var(--line);padding-top:20px;flex-wrap:wrap}.chat-compose textarea{flex:1;min-width:0;border:1px solid #dce4df;border-radius:10px;padding:12px;resize:vertical;font:inherit;font-size:13px}.chat-compose .form-error{width:100%;margin:0}.interest-summary{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}.preference-card{border-top:1px solid var(--line);padding:20px 0}.preference-card h3{font-size:15px}.preference-card>p{font-size:12px;margin-bottom:7px}.sidebar nav .nav-item{padding-top:10px;padding-bottom:10px;margin-bottom:3px}.sidebar-main{overflow:auto;scrollbar-width:thin}.sidebar-bottom{flex-shrink:0}@media(max-width:680px){.chat-log{height:380px;padding:8px 0}.chat-bubble{max-width:90%;min-width:0;padding:12px}.chat-message{gap:6px}.chat-message>.avatar{display:none}.message-meta{flex-wrap:wrap;gap:6px}.chat-compose{gap:8px}.chat-compose textarea{font-size:16px}.chat-compose>.btn{font-size:11px;padding:10px}.packing-heading{flex-wrap:wrap}}
#preferences-form label{display:block;font-size:12px;margin:15px 0}#preferences-form input:not([type=checkbox]):not([type=hidden]),#preferences-form select,#preferences-form textarea{display:block;width:100%;padding:12px;margin-top:8px;border:1px solid #dae3dc;border-radius:9px;background:white;color:var(--ink);font:inherit}#preferences-form .check-label{display:flex;align-items:center;gap:8px;margin:10px 0}#preferences-form textarea{resize:vertical}#preferences-form legend{font-size:12px}#preferences-form .participants{margin-top:18px}@media(max-width:680px){#preferences-form input:not([type=checkbox]),#preferences-form select,#preferences-form textarea{font-size:16px}}
.bottom-dock{position:fixed;bottom:18px;left:calc(50% + 119px);transform:translateX(-50%);display:flex;align-items:center;justify-content:space-around;gap:12px;width:410px;max-width:calc(100% - 32px);padding:10px 16px;background:#ffffffed;border:1px solid #dfe5e1;border-radius:22px;box-shadow:0 8px 35px #18352f18;backdrop-filter:blur(16px);z-index:30}.dock-tab{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-width:50px;min-height:47px;padding:3px 7px;border:0;background:transparent;border-radius:10px;color:#87948d}.dock-tab>.icon{width:24px;height:24px}.dock-tab>span:not(.avatar){font-size:9px}.dock-tab:hover{color:var(--ink);background:#f3f6f3}.dock-tab.is-current{color:var(--ink);font-weight:650}.dock-tab.is-current:after{content:'';position:absolute;bottom:-5px;width:4px;height:4px;border-radius:50%;background:var(--ink)}.dock-tab.is-current .icon{stroke-width:2.3}.dock-tab .avatar{width:27px;height:27px;border:2px solid #afc4b6;font-size:11px}.dock-create{border:0;background:var(--ink);color:white;width:46px;height:46px;border-radius:14px;display:grid;place-items:center;flex-shrink:0;box-shadow:0 4px 9px #1c303c1a}.dock-create:hover{background:#365745}.dock-create .icon{width:25px;height:25px}.compact-dock,.guest-dock{width:280px}.quick-actions{display:grid;gap:10px}.quick-actions>.btn{justify-content:flex-start;min-height:52px}.dock-profile-card{text-align:center;padding:5px 0 18px}.dock-profile-card>.avatar{width:64px;height:64px;font-size:26px;margin-bottom:15px}.dock-profile-card h3{font-size:20px}.workspace{padding-bottom:85px}#toast{bottom:108px}.page-footer{padding-bottom:30px}@media(max-width:1150px){.bottom-dock{left:calc(50% + 105px)}}@media(max-width:680px){.bottom-dock,.compact-dock,.guest-dock{inset:auto 0 0 0;transform:none;width:100%;max-width:none;gap:0;border-radius:0;border-width:1px 0 0;padding:9px 12px calc(9px + env(safe-area-inset-bottom));box-shadow:0 -3px 20px #18352f08}.dock-tab{flex:1;min-height:45px}.dock-create{margin:0 14px}.dock-tab>span:not(.avatar){font-size:9px}.workspace{padding-bottom:90px}#toast{bottom:calc(88px + env(safe-area-inset-bottom))}}
.friend-badge{margin-left:auto;border-radius:20px;background:#ffda61;color:#1c303c;padding:2px 7px;font-size:10px}.friend-search{display:flex;gap:12px;flex-wrap:wrap}.friend-search>input{flex:1;min-width:190px;border:1px solid #dae3dc;padding:12px;border-radius:10px;font:inherit;font-size:14px}.friend-search>.form-error{width:100%;margin:0}.friend-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.friend-card{border:1px solid var(--line);border-radius:14px;padding:24px;display:flex;align-items:center;flex-direction:column;min-width:0;text-align:center}.friend-card>.avatar{width:58px;height:58px;font-size:23px;margin-bottom:14px}.friend-card>p{overflow-wrap:anywhere;max-width:100%}.friend-card>.text-btn{margin-top:17px;font-size:11px}.friend-card>.btn{font-size:11px;white-space:normal}.friend-invitation{display:flex;align-items:center;gap:16px;padding:20px 0;border-bottom:1px solid var(--line)}.friend-invitation:last-child{border:0}.friend-invitation .heading-actions{margin-left:auto;flex-wrap:wrap}.friend-identity{min-width:0;flex:1}.friend-identity p{overflow-wrap:anywhere;margin-bottom:4px}.friend-invitation h3{overflow-wrap:anywhere}.friend-invitation p{margin-bottom:5px}@media(max-width:1000px){.friend-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:680px){.friend-grid{grid-template-columns:1fr}.friend-invitation{flex-wrap:wrap}.friend-invitation .heading-actions{margin-left:0;width:100%}.friend-search>.btn{width:100%}.friend-search>input{font-size:16px}}
.friend-invitation .heading-actions .btn.primary{font-size:12px;padding:11px 16px}
.home-empty{min-height:calc(100dvh - 300px)}.hidden-footer{display:none}
