:root{--primary:#4b286d;--success:#6aa84f;--danger:#cc0000;--info:#3c78d8;--caution:#f1c232;--neutral-bg:#f3f0f7;--neutral-text:#1e1e1e;--card-bg:#ffffff;--border-color:#d1c4e9;--link-hover:#6e3795;--app-height:100vh;--bottom-slack:0px}*,:after,:before{box-sizing:border-box}body{margin:0;background:var(--neutral-bg);color:var(--neutral-text);font-family:system-ui,-apple-system,sans-serif;line-height:1.5}.dashboard{max-width:1400px;margin:2rem auto;padding:0 2.5rem}.content{grid-template-columns:repeat(2,1fr);align-items:stretch;gap:2.5rem;margin-top:2rem}.group-info,.group-information,.quests,.status-box,.tasks-ybr{height:auto;border-radius:1rem;overflow:hidden;box-shadow:0 4px 20px rgba(75,40,109,.1);background:white;transition:transform .2s ease}.group-info,.group-information,.status-box{margin-bottom:2.5rem}.quests,.tasks-ybr{display:flex;flex-direction:column;justify-content:space-between;height:100%;min-height:300px}.card-header{background:var(--primary);color:white;padding:1.25rem 1.5rem;font-weight:700;letter-spacing:.025em}.card-content{padding:1.5rem;height:calc(100% - 60px);display:flex;flex-direction:column}.group-info-content{display:flex;justify-content:space-between;align-items:center;padding:2rem}.group-title{font-size:1.75rem;font-weight:700;margin-bottom:.75rem;color:white}.team-role{font-size:1.25rem;color:white;opacity:.9;font-weight:500}.member-badge{display:flex;align-items:center;gap:.75rem;background:rgba(255,255,255,.15);padding:.75rem 1.25rem;border-radius:.75rem;backdrop-filter:blur(4px)}.progress-container{margin-top:auto;padding-top:1.5rem;border-top:1px solid #e5e7eb}.progress-bar{width:100%;height:8px;background:#e5e7eb;border-radius:9999px;overflow:hidden;margin-top:.5rem}.progress-bar-fill{height:100%;border-radius:9999px;transition:width .3s ease}.progress-bar-fill.lab{background:var(--success)}.progress-bar-fill.sheet{background:var(--primary)}.tasks-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem;margin-bottom:2rem}.task-stat{font-size:1.125rem;font-weight:600;display:flex;justify-content:space-between;margin-bottom:.5rem}.quest-link{display:block;padding:.75rem 0;color:var(--primary);text-decoration:none;font-weight:500;transition:all .2s ease}.quest-link:hover{color:var(--link-hover);transform:translateX(4px)}.check-in-button{width:100%;padding:1rem;border:none;border-radius:.75rem;font-size:1.125rem;font-weight:600;cursor:pointer;transition:all .3s ease;background:#f3f4f6;color:var(--primary)}.check-in-button:hover{background:#e5e7eb}.check-in-button.checked-in{background:var(--success);color:white}@media (max-width:1024px){.dashboard{padding:0 1.5rem}.content{gap:1.5rem}}@media (max-width:768px){.dashboard{padding:1rem}.content,.tasks-grid{grid-template-columns:1fr}.tasks-grid{gap:1rem}.quests,.tasks-ybr{display:flex;flex-direction:column;justify-content:space-between;height:100%;margin-bottom:1.5rem;min-height:200px}.quest-link{padding:1rem 0;font-size:1rem}.card-content{overflow-y:auto}}.get-green-guide{display:flex;justify-content:center;padding:2rem;background-color:var(--neutral-bg)}.get-green-content{max-width:800px;width:100%;background-color:var(--card-bg);padding:2rem;border-radius:1rem;box-shadow:0 4px 16px rgba(75,40,109,.1);text-align:center}.get-green-content h1{font-size:2rem;font-weight:700;color:var(--primary);margin-bottom:1.5rem}.get-green-content h2{font-size:1.25rem;font-weight:600;color:var(--primary);margin-top:2rem;margin-bottom:1rem}.get-green-content p{margin-bottom:1rem;font-size:1rem;line-height:1.6}.get-green-content ul{margin:0 auto 1.5rem;padding-left:1.5rem;text-align:left}.get-green-content li{margin-bottom:.5rem}@media (max-width:768px){.get-green-content{padding:1.25rem}.get-green-content h1{font-size:1.5rem}.get-green-content h2{font-size:1.1rem}}.page-wrapper{background-color:white;font-family:sans-serif}.dashboard-header{background-color:#6b21a8;color:white;padding:1rem;display:flex;justify-content:space-between;align-items:center;border-top-left-radius:.5rem;border-top-right-radius:.5rem;flex-wrap:wrap;gap:.5rem}.dashboard-header h1{font-size:1.25rem}.refresh-btn{font-size:1.5rem;cursor:pointer;background:transparent;border:none;color:white}.controls{gap:.5rem;padding:1rem}.tab{padding:.5rem 1rem;background-color:#d1d5db;border-radius:.375rem;white-space:nowrap}.tab.active{background-color:#6b21a8}.quest-dropdown{background-color:#d1d5db;border-radius:.375rem;max-width:100%}.content{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;padding:1.5rem}@media (max-width:768px){.content{grid-template-columns:1fr}}.left-panel,.right-panel{background-color:#d1d5db;padding:1rem;border-radius:.5rem;min-height:300px;position:relative}.right-panel h2{text-align:center;color:#4b5563}.task-list{margin-top:.5rem;gap:.5rem}.task-item{align-items:center;gap:.5rem}.task-done{color:#4b5563}.calendar-title{text-align:center;font-weight:600;margin-bottom:1rem}.calendar-grid{gap:.5rem;text-align:center;overflow-x:auto}@media (max-width:400px){.calendar-grid{grid-template-columns:repeat(7,minmax(2rem,1fr));font-size:.75rem}}.calendar-day{padding:.5rem;border-radius:.375rem;background-color:white;transition:background .2s}.calendar-day.has-task{background-color:#9333ea;color:white}.hover-popup{box-shadow:0 2px 8px rgba(0,0,0,.15)}.popup-input{padding:.25rem .5rem}.scrollable-panel{background-color:#d1d5db;padding:1rem;border-radius:.5rem;position:relative;z-index:0}.page-wrapper{min-height:100vh;background-color:#f4f3ff;font-family:Inter,sans-serif;padding:2rem}.controls{display:flex;flex-wrap:wrap;gap:.75rem;padding:1rem 0;align-items:center}.tab{padding:.5rem 1.25rem;background-color:#e9e0ff;border-radius:.75rem;font-size:.875rem;font-weight:500;color:#4b1d95;box-shadow:0 1px 4px rgba(0,0,0,.08);cursor:pointer;transition:all .2s ease}.tab.active{background-color:#4b1d95;color:white;font-weight:600}.quest-dropdown{padding:.5rem 1rem;background-color:#fff;border-radius:.5rem;font-size:.875rem;border:1px solid #c4b5fd;box-shadow:0 1px 2px rgba(0,0,0,.04)}.task-filter{display:flex;gap:.25rem}.filter-btn{padding:.4rem .75rem;border-radius:.75rem;background-color:#ede9fe;font-size:.8rem;cursor:pointer;color:#4c1d95;transition:background .2s ease}.filter-btn.active{background-color:#4b1d95;color:white;font-weight:600}.scrollable-panel{background-color:#fff;padding:1.5rem;border-radius:1rem;min-height:300px;max-height:70vh;overflow-y:auto;margin:1rem 0;box-shadow:0 4px 16px rgba(0,0,0,.08)}.task-list{margin-top:1rem;display:flex;flex-direction:column;gap:1.25rem}.task-item{display:flex;align-items:flex-start;gap:.75rem;background-color:#f3f0ff;padding:.75rem 1rem;border-left:4px solid #4b1d95;border-radius:.5rem;box-shadow:0 2px 5px rgba(0,0,0,.05);transition:background .2s ease}.task-item:hover{background-color:#e9e5ff}.no-scrollbar{scrollbar-width:none;-ms-overflow-style:none}.no-scrollbar::-webkit-scrollbar{display:none}.task-done{text-decoration:line-through;color:#6b7280}.calendar-title{font-weight:700;font-size:1.25rem;margin-bottom:1.5rem;color:#3b0764}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:.75rem;font-size:.875rem;padding-top:2rem}.calendar-cell,.calendar-grid{position:relative}.calendar-day{padding:.75rem;border-radius:.5rem;background-color:#fafafa;border:1px solid #e4e4e7;transition:background .2s ease;cursor:default}.calendar-day.has-task{background-color:#c4b5fd;color:#1e1b4b;font-weight:600;cursor:pointer}.hover-popup{position:fixed;z-index:9999;background-color:white;color:black;border-radius:.5rem;padding:1rem;width:16rem;box-shadow:0 4px 16px rgba(0,0,0,.1);display:none;flex-direction:column;gap:.5rem;pointer-events:auto}.group:hover .hover-popup{display:flex}.popup-header{font-weight:600;text-align:center;color:#6b21a8;font-size:.875rem}.popup-input{border:1px solid #d1d5db;border-radius:.375rem;padding:.4rem .75rem;width:100%;outline:none;font-size:.875rem;background-color:#f9fafb}@media (max-width:768px){.calendar-grid{grid-template-columns:repeat(7,minmax(2rem,1fr));font-size:.75rem}}