@font-face{font-family:GatherstoneFell;src:url(/assets/gatherstone/im-fell-english.ttf) format("truetype");font-display:swap}:root{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#ded8c8;background:#171a18;font-synthesis:none;color-scheme:dark}*{box-sizing:border-box}body{margin:0;min-width:320px;background:radial-gradient(ellipse at top,#373a32,transparent 65%),#171a18;min-height:100vh;padding:20px 8px max(20px,env(safe-area-inset-bottom))}#app{max-width:430px;margin:0 auto;border:17px solid transparent;border-image:url(/assets/gatherstone/frame-worn.png) 18 / 17px / 2px round;background:url(/assets/gatherstone/stone.png);background-clip:padding-box;padding:12px 10px 0;min-height:410px}button,input,textarea{font:inherit}button{cursor:pointer;min-height:44px;touch-action:manipulation}button:disabled{opacity:.55;cursor:wait}button:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #efcb6e;outline-offset:3px}h1,h2,h3,.event-title,.section-heading{font-family:GatherstoneFell,Georgia,serif;font-weight:400}h1{font-size:30px;color:#e1c78d}h2{margin:0;font-size:23px;color:#dfc58c}p{line-height:1.5}button{color:#edd9a9}.button{border:9px solid transparent;border-image:url(/assets/gatherstone/button-worn.png) 14 fill / 9px / 0 stretch;background:transparent;color:#edce8a;text-shadow:0 1px #160400;font:16px/1.2 GatherstoneFell,Georgia,serif;padding:4px 5px;min-height:46px}.button:hover{filter:brightness(1.12)}[aria-pressed=true]{outline:2px solid #e5c37d;outline-offset:-3px;filter:brightness(1.15)}.wide{width:100%}.text-button{border:0;background:none;color:inherit;text-decoration:underline;text-underline-offset:3px;padding:8px 5px;font-size:13px}.later{display:block;margin:8px auto;color:#b9b09e}.paper{color:#342d23;background:url(/assets/gatherstone/parchment.png) center/100% 100%;margin-top:15px;padding:0 14px 16px;min-height:340px}.section-heading{margin:0 -14px;padding:10px 14px;background:#262a27d9;border-bottom:2px solid #141613;color:#d8c195;font-size:20px}.activity{padding:18px 0;border-bottom:1px solid #8d795650}.activity:last-child{border:0}.event-title{border:0;padding:0;background:none;color:#30291e;font-size:24px;text-align:left;width:100%;min-height:44px;overflow-wrap:anywhere}.event-title:before{content:"!";color:#8e743b;display:inline-block;width:19px;text-shadow:0 1px #e9d5ab}.meta{font-size:11px;color:#5b4a33;margin:0}.description{white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;margin:5px 0 10px}.count{font-size:12px;margin:10px 0}.participant{display:flex;align-items:center;gap:8px;justify-content:space-between;margin:6px 0;font-size:13px}.participant-name{min-width:0;overflow-wrap:anywhere}.participant-name small{font-size:10px;display:block;color:#66543a}.selection-icons{display:flex;gap:3px;flex-wrap:wrap;align-items:center;justify-content:flex-end;max-width:60%}.class-icon{width:29px;height:29px;object-fit:cover;border:1px solid #746348}.role-icon{display:inline-block;width:29px;height:29px;background-image:url(/assets/classes/roles-large.png);background-size:382.089552% 382.089552%;flex-shrink:0}.role-icon[data-role=Tank]{background-position:0% 35.449735%}.role-icon[data-role=Heiler]{background-position:35.449735% 0%}.role-icon[data-role=DPS]{background-position:35.449735% 35.449735%}.neutral-icon{border:1px solid #9e8c67;border-radius:50%;display:inline-grid;place-items:center;width:26px;height:26px;color:#68583c}.replies{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin-top:14px}.replies .button{min-width:0;padding:3px 0;font-size:14px}.paper .text-button{color:#4d3c25}.details-button{display:block;margin:3px 0 -6px}.add{margin:16px 0}.tabs{display:flex;gap:7px;padding:0 0 13px}.tab{flex:1;min-width:0;padding:9px 2px;border:1px solid #746c59;border-radius:2px;color:#bcb4a0;background:#262c27;box-shadow:inset 0 1px #766f5f,inset 0 -2px #151914;font:16px GatherstoneFell,Georgia,serif}.tab[aria-current]{color:#edce8a;background:#4b4432;border-color:#b49c6b}.empty{padding:30px 0;font-size:14px}.field{display:flex;flex-direction:column;gap:6px;margin:16px 0;font-size:13px}.field input,.field textarea{display:block;width:100%;min-width:0;min-height:44px;padding:10px 8px;border:1px solid #776e57;background:#161c1b;color:#e4dcc9;border-radius:2px;font-size:16px}.onboarding{padding:20px 10px 28px;min-height:400px}.step{font-size:12px;color:#ada590}.setup{padding:20px 10px 24px}.setup h2{font-size:28px;margin-bottom:20px}.setup>.button{width:100%;margin-top:15px}.setup-status{font-size:13px}.sheet{position:fixed;width:min(430px,calc(100vw - 16px));max-height:90dvh;overflow:auto;border:12px solid transparent;border-image:url(/assets/gatherstone/frame-worn.png) 18 / 12px / 1px round;background:url(/assets/gatherstone/stone.png);color:#ded8c8;padding:18px 15px;overscroll-behavior:contain}.sheet::backdrop{background:#0009;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.sheet-header{display:flex;justify-content:space-between;align-items:center;gap:10px}.sheet-header h2{overflow-wrap:anywhere;min-width:0}.sheet p{overflow-wrap:anywhere}.sheet .setup{padding:25px 0 0;border-top:1px solid #625b4b;margin-top:25px}.sheet .participants .participant-name small{color:#b4a78f}.picker fieldset{border:0;padding:0;margin:20px 0}.picker legend{font-size:13px;margin-bottom:10px}.role-options{display:flex;gap:6px}.choice{min-width:0;flex:1;display:flex;align-items:center;justify-content:center;gap:3px;background:#282e29;border:1px solid #746b56;color:#ddc998;font-size:13px}.class-options{display:flex;flex-wrap:wrap;gap:7px}.class-choice{border:1px solid #746b56;background:#242923;padding:6px;display:flex;align-items:center;justify-content:center;width:46px}.class-choice .class-icon{width:30px;height:30px}.friend{padding:16px 0;border-bottom:1px solid #8d795650;display:flex;align-items:center;justify-content:space-between;gap:8px;overflow-wrap:anywhere}.friend>span:first-child{min-width:0}.friend small{display:block;font-size:11px;margin-top:4px}.error{font-size:13px;color:#ffd29b;padding:8px;border:1px solid #ad7657;background:#321f17}.paper .error{color:#7b1810;background:#e4c99e}.cancelled{font-size:13px;font-weight:600;color:#892b22}.sheet .cancelled{color:#ffc5a5}.owner-actions{display:flex;justify-content:space-between;margin-top:14px}.history summary{padding:14px 0;cursor:pointer;font-size:13px;min-height:44px}.handoff-code{display:block;font:18px ui-monospace,monospace;margin:14px 0;overflow-wrap:anywhere;-webkit-user-select:all;user-select:all}.setup-status small{display:block}.logout{display:block;margin:20px auto 0;color:#d4b891}[hidden]{display:none!important}@media(max-width:370px){body{padding:12px 4px}#app{border-width:13px;border-image-width:13px;padding:10px 7px 0}.paper{padding-left:10px;padding-right:10px}.section-heading{margin-left:-10px;margin-right:-10px}.replies{gap:3px}.replies .button{font-size:12px;border-width:7px}.choice{font-size:12px}.role-options{gap:4px}.role-icon{width:25px;height:25px}.sheet{padding:14px 10px}}.admin-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.admin-header h1{margin:12px 0 20px}.admin-paper{margin-bottom:14px}.admin-card{padding:18px 0;border-bottom:1px solid #8d795650;overflow-wrap:anywhere}.admin-card:last-child{border:0}.admin-card h2{color:#342d23;font-size:23px}.admin-member-heading{display:flex;justify-content:space-between;gap:8px;align-items:center}.admin-actions{display:flex;flex-wrap:wrap;gap:4px}.admin-device{margin:8px 0;padding:12px 0;border-top:1px solid #8d795650}.admin-device .meta{margin:5px 0}.admin-devices summary{cursor:pointer;min-height:44px;padding:12px 0}.field select{display:block;width:100%;min-width:0;min-height:44px;padding:10px 8px;border:1px solid #776e57;background:#161c1b;color:#e4dcc9;border-radius:2px;font-size:16px}.merge-preview,.push-preview{margin-top:20px}.push-device-list{border:1px solid #746b56;padding:10px}.push-device-list .field{flex-direction:row;align-items:center;justify-content:space-between}.push-device-list input{width:24px;min-height:24px;flex-shrink:0}.push-preview ul{padding-left:20px;font-size:13px}.setup-guide{border-top:1px solid #625b4b;margin-top:24px;padding-top:10px;font-size:13px;line-height:1.5}.setup-guide summary{min-height:44px;padding:12px 0;cursor:pointer}.setup-guide details p{color:#c6bdac;margin:0 0 12px}.admin-header{flex-wrap:wrap}.admin-header h1{flex:1 0 100%;margin-bottom:4px}.setup-hints:empty{display:none}.setup-hint{margin-top:12px;padding:12px;background:#20251f;border:1px solid #66604e}.setup-hint h2{font-size:20px}.setup-hint p{font-size:12px;color:#c6bdac;margin:6px 0}.hint-actions{display:flex;justify-content:space-between;gap:8px}.hint-actions .text-button{font-size:12px;color:#dac692}.presence{color:#342d23;background:url(/assets/gatherstone/parchment.png) center/100% 100%;padding:0 12px 9px;border:1px solid #756747}.presence-header{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 -12px;padding:8px 12px;background:#262a27ed;border-bottom:2px solid #141613}.presence-header h2{font-size:21px;color:#dfc58c}.presence-count{font-size:11px;color:#c2b69b;white-space:nowrap}.presence-own{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 0 3px}.presence-identity{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 7px;min-width:0}.presence-state{font-size:13px;font-weight:600}.is-attending .presence-state{color:#355029}.presence-time{color:#6d5a3e;font-size:11px;overflow-wrap:anywhere}.presence-own .button{font-size:14px;min-width:85px;flex-shrink:0}.presence-roster{list-style:none;margin:3px 0 0;padding:5px 0 0;border-top:1px solid #8d795650;display:flex;flex-wrap:wrap;gap:5px 14px}.presence-person{min-width:0;max-width:100%}.presence-person-info{display:inline-flex;flex-wrap:wrap;align-items:baseline;gap:5px;overflow-wrap:anywhere}.presence-person-info strong{font-size:12px;font-weight:600}.presence-person-info small{font-size:11px;color:#705c3f}.presence-empty{font-size:11px;color:#705c3f;margin:3px 0 0}.presence-time-choices{display:flex;flex-wrap:wrap;gap:7px;margin:20px 0 5px}.presence-time-chip{min-height:44px;font-size:15px;padding:5px 7px}.presence-time-chip[aria-pressed=true]{outline:2px solid #e5c37d;outline-offset:-3px;filter:brightness(1.15)}.presence-sheet .presence-save{width:100%;margin-top:8px}.presence-withdraw{display:block;margin:12px auto 0;color:#bcb39c;font-family:inherit}@media(max-width:370px){.presence-header h2{font-size:19px}.presence-header{gap:5px}}.presence-status-choices{display:flex;gap:8px;margin:18px 0 4px}.presence-status-choices .presence-time-chip{flex:1;min-width:0}.presence-offline-action{padding:4px 0;min-height:44px;font:12px -apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.presence .is-offline .presence-state{color:#726958}.presence-offline-list{font:11px/1.5 -apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#796e59;margin:9px 0 0;overflow-wrap:anywhere}.presence-own{flex-wrap:wrap}.presence-quick-actions{display:flex;align-items:center;gap:8px;margin-left:auto}.presence-quick-actions .presence-offline-action{white-space:nowrap}.hidden-activities{margin-top:16px;border-top:1px solid #8d795650}.hidden-activity{padding:12px 0;border-top:1px solid #8d795630}.hidden-activity .event-title{font-size:21px}.hidden-activity .text-button{min-height:44px}#app.has-hub-navigation{display:flex;flex-direction:column;min-height:calc(100vh - 20px);min-height:calc(100dvh - 20px);padding-bottom:calc(64px + env(safe-area-inset-bottom,0px))}#app.has-hub-navigation>.paper{flex:1}body:has(.hub-tabs){padding-bottom:0}.hub-tabs{position:fixed;z-index:20;left:50%;bottom:0;transform:translate(-50%);width:min(430px,calc(100% - 16px));min-height:64px;padding:9px 10px calc(9px + env(safe-area-inset-bottom,0px));margin:0;background:#242923 url(/assets/gatherstone/stone.png);border-top:2px solid #79715a;box-shadow:0 -5px 17px #0007,inset 0 1px #c6ba8e22}.hub-tabs .tab{min-height:44px}html:has(.hub-tabs){scroll-padding-bottom:calc(78px + env(safe-area-inset-bottom,0px))}@media(max-width:370px){.hub-tabs{width:calc(100% - 8px)}}.activity-templates,.activity-note{font-size:13px;margin:12px 0}.activity-templates summary,.activity-note summary{min-height:44px;cursor:pointer;padding:12px 0;color:#d8c28c}.activity-templates select{width:100%;min-height:44px}.waitlist{margin:12px 0;padding:10px 0 4px 24px;border-top:1px solid #82745955;font-size:13px}.waitlist li{padding:5px 0}.waitlist small{margin-left:8px;color:#74603b}.sheet .waitlist small{color:#dcc691}.offer-note{font-size:13px;font-weight:600;color:#745126;margin:10px 0}.replies>.text-button{grid-column:1 / -1;min-height:44px;text-align:left}.replies-has-offer{grid-template-columns:repeat(2,minmax(0,1fr))}.replies-has-offer>.button:first-child{grid-column:1 / -1}.own-wait-status{font-size:13px;color:#735c34;margin:12px 0 0}.sheet .own-wait-status{color:#dfc58c}.activity-time-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.push-preferences{border-top:1px solid #625b4b;margin-top:24px;padding-top:16px}.push-preferences h3{font-size:21px;margin:0 0 8px}.preference-option{display:flex;align-items:center;gap:10px;min-height:44px;font-size:14px;cursor:pointer}.preference-option input{width:20px;height:20px;flex:none;accent-color:#8b7650}.push-preferences .button,.reminder-settings .button{margin-top:12px}.save-status{font-size:13px;min-height:18px}.reminder-settings{padding-bottom:14px;margin-bottom:20px;border-bottom:1px solid #82745955}.reminder-settings h2{font-size:23px}.push-preferences .meta{color:#dfc58c}.reminder-settings h2{color:#4d3c25}
