:root{--font-main:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--bg-primary:#fff;--bg-secondary:#f9f9f9;--bg-sheet:#fff;--text-main:#222;--text-muted:#717171;--accent:#ff385c;--border:#ebebeb;--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-2xl:48px;--space-3xl:64px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:24px;--radius-full:9999px;--shadow-sm:0 1px 2px #0000000a;--shadow-md:0 4px 6px -1px #0000000d, 0 2px 4px -1px #00000008;--shadow-lg:0 10px 15px -3px #0000000f, 0 4px 6px -2px #00000005;--shadow-elevation:0 20px 25px -5px #0000000d, 0 10px 10px -5px #00000005;--max-width:1280px;--nav-height:80px;--mobile-header-max-height:160px;--mobile-card-min-width:240px}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-main);background-color:var(--bg-secondary);color:var(--text-main);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.page-header{text-align:center;margin-bottom:var(--space-3xl);padding-top:var(--space-2xl)}.page-header.align-left{text-align:left}.page-title{color:var(--text-main);margin-bottom:var(--space-xs);letter-spacing:-.02em;font-size:32px;font-weight:700}.page-subtitle{color:var(--text-muted);font-size:18px}@media (width<=768px){.page-header{text-align:left;margin-bottom:var(--space-lg);padding-top:var(--space-md);max-height:var(--mobile-header-max-height);overflow:hidden}.page-title{margin-bottom:var(--space-xs);font-size:24px}.page-subtitle{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:14px;display:-webkit-box;overflow:hidden}}.horizontal-scroll-row{gap:var(--space-md);padding-bottom:var(--space-md);margin:0 calc(-1 * var(--space-md));padding-left:var(--space-md);padding-right:var(--space-md);scrollbar-width:none;display:flex;overflow-x:auto}.horizontal-scroll-row::-webkit-scrollbar{display:none}.horizontal-scroll-row>*{flex:0 0 var(--mobile-card-min-width)}.filter-chips-row{gap:var(--space-sm);padding:var(--space-sm) 0;margin-bottom:var(--space-md);scrollbar-width:none;background:var(--bg-secondary);z-index:10;display:flex;position:sticky;top:0;overflow-x:auto}.filter-chip{white-space:nowrap;border:1px solid var(--border);border-radius:var(--radius-full);color:var(--text-main);background:#fff;padding:8px 16px;font-size:14px;font-weight:600}.filter-chip.active{background:var(--text-main);color:#fff;border-color:var(--text-main)}.mono-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-family:JetBrains Mono,Courier New,monospace;font-size:10px;font-weight:600}.workspace-sheet{background:var(--bg-sheet);border-radius:var(--radius-xl);border:1px solid var(--border);box-shadow:var(--shadow-sm);padding:var(--space-xl);margin-bottom:var(--space-xl)}h1,h2,h3,h4{letter-spacing:-.02em;font-weight:600}a{color:inherit;text-decoration:none}button{cursor:pointer;background:0 0;border:none;font-family:inherit}.container{max-width:var(--max-width);padding:0 var(--space-lg);margin:0 auto}@media (width<=768px){.container{padding:0 var(--space-md)}}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:3000;background:#0006;justify-content:center;align-items:center;animation:.2s fadeIn;display:flex;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{border-radius:var(--radius-xl);width:100%;max-width:600px;box-shadow:var(--shadow-lg);padding:var(--space-2xl);background:#fff;animation:.3s slideUp;transform:translateY(0)}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-header{margin-bottom:var(--space-xl);justify-content:space-between;align-items:center;display:flex}.modal-header h2{font-size:24px;font-weight:800}.close-btn{color:var(--text-muted);transition:color .2s}.close-btn:hover{color:var(--text-main)}.modal-options{gap:var(--space-md);flex-direction:column;display:flex}.create-option{align-items:center;gap:var(--space-xl);padding:var(--space-lg);border:1px solid var(--border);border-radius:var(--radius-lg);cursor:pointer;transition:all .2s;display:flex}.create-option:hover{border-color:var(--text-main);background:var(--bg-secondary)}.create-icon{border-radius:var(--radius-full);color:#fff;justify-content:center;align-items:center;width:56px;height:56px;display:flex}.create-icon.project{background:#3b82f6}.create-icon.community{background:#10b981}.create-icon.practical{background:#f59e0b}.create-info h3{margin-bottom:4px;font-size:18px;font-weight:700}.create-info p{color:var(--text-muted);font-size:14px;line-height:1.5}.modal-header-left{align-items:center;gap:var(--space-sm);display:flex}.modal-back-btn{cursor:pointer;color:var(--text-muted);border-radius:var(--radius-sm);background:0 0;border:none;align-items:center;padding:4px;transition:color .15s;display:flex}.modal-back-btn:hover{color:var(--text-main)}.create-form{gap:var(--space-lg);flex-direction:column;display:flex}.form-field{flex-direction:column;gap:6px;display:flex}.form-label{color:var(--text-secondary);font-size:13px;font-weight:700}.form-input{border:1px solid var(--border);border-radius:var(--radius-md);box-sizing:border-box;background:#fff;outline:none;width:100%;padding:10px 14px;font-family:inherit;font-size:15px;transition:border-color .15s}.form-input:focus{border-color:var(--brand-main)}.form-actions{justify-content:flex-end;gap:var(--space-sm);padding-top:var(--space-sm);display:flex}.form-cancel-btn{border:1px solid var(--border);border-radius:var(--radius-full);cursor:pointer;color:var(--text-muted);background:0 0;padding:9px 20px;font-size:14px;font-weight:600}.form-submit-btn{background:var(--brand-main,#111);color:#fff;border-radius:var(--radius-full);cursor:pointer;border:none;padding:9px 24px;font-size:14px;font-weight:700;transition:opacity .15s}.form-submit-btn:disabled{opacity:.4;cursor:not-allowed}.create-success{align-items:center;gap:var(--space-md);padding:var(--space-xl) 0;text-align:center;flex-direction:column;display:flex}.success-icon{border-radius:var(--radius-full);color:#fff;justify-content:center;align-items:center;width:64px;height:64px;display:flex}.success-title{font-size:18px;font-weight:700}.success-sub{color:var(--text-muted);margin-bottom:var(--space-sm);font-size:14px}.create-icon.discussion{background:#7c3aed}.create-icon.gids{background:#059669}.create-icon.event{background:#db2777}@media (width<=600px){.modal-content{height:100dvh;padding:var(--space-xl);border-radius:0;overflow-y:auto}}.layout{flex-direction:column;min-height:100vh;display:flex}.top-nav{height:var(--nav-height);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border);z-index:1000;background:#ffffffd9;align-items:center;display:flex;position:sticky;top:0}.nav-content{justify-content:space-between;align-items:center;width:100%;display:flex}.nav-left{align-items:center;gap:var(--space-lg);display:flex}.logo-wrapper{align-items:center;display:flex}.main-logo{width:auto;height:32px;color:var(--accent);transition:transform .2s}.logo-wrapper:hover .main-logo{transform:scale(1.05)}.context-indicator{color:var(--text-muted);border-left:1px solid var(--border);padding-left:var(--space-lg);text-transform:uppercase;letter-spacing:.05em;font-size:13px;font-weight:700}.desktop-links{gap:var(--space-xl);display:flex}.nav-link{color:var(--text-main);opacity:.6;padding:var(--space-sm) 0;font-size:15px;font-weight:500;transition:all .2s;position:relative}.nav-link:hover{opacity:1}.nav-link.active{opacity:1;font-weight:700}.nav-link.active:after{content:"";background:var(--text-main);height:2px;position:absolute;bottom:-4px;left:0;right:0}.nav-actions{align-items:center;gap:var(--space-lg);display:flex}.create-btn{background:var(--accent);color:#fff;border-radius:var(--radius-full);padding:10px 24px;font-size:14px;font-weight:600;transition:transform .2s}.create-btn:hover{transform:scale(1.02)}.user-profile-icon{border-radius:var(--radius-full);border:1px solid var(--border);width:40px;height:40px;color:var(--text-muted);justify-content:center;align-items:center;display:flex}.main-content{padding:var(--space-2xl) 0 var(--space-3xl);flex:1}.bottom-nav{display:none}@media (width<=768px){.top-nav{height:64px}.desktop-links,.create-btn{display:none}.bottom-nav{border-top:1px solid var(--border);height:64px;padding-bottom:env(safe-area-inset-bottom);z-index:1000;background:#fff;justify-content:space-around;align-items:center;display:flex;position:fixed;bottom:0;left:0;right:0}.mobile-nav-link{color:var(--text-muted);opacity:.6;flex-direction:column;align-items:center;gap:4px;font-size:10px;font-weight:500;display:flex}.mobile-nav-link.active{color:var(--accent);opacity:1}.mobile-nav-link span{font-size:10px}.main-content{padding-top:var(--space-lg);padding-bottom:80px}}.tgp-card{cursor:pointer;border-radius:var(--radius-lg);background:0 0;flex-direction:column;width:100%;transition:all .25s cubic-bezier(.2,.8,.2,1);display:flex;position:relative}.card-outer-content{border-radius:var(--radius-lg);background:#fff;flex-direction:column;height:100%;display:flex}.card-image-wrapper{aspect-ratio:16/10;border-radius:var(--radius-lg) var(--radius-lg) 0 0;background-color:var(--bg-secondary);width:100%;position:relative;overflow:hidden}.card-image{object-fit:cover;width:100%;height:100%;transition:transform .6s cubic-bezier(.2,.8,.2,1)}.tgp-card:hover .card-image{transform:scale(1.03)}.card-tags{top:var(--space-sm);left:var(--space-sm);gap:var(--space-xs);display:flex;position:absolute}.card-tag{border-radius:var(--radius-md);text-transform:uppercase;letter-spacing:.05em;color:var(--text-main);box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#fffffff2;padding:4px 10px;font-size:10px;font-weight:800}.card-content{padding:var(--space-md);flex-direction:column;gap:4px;display:flex}.card-title{color:var(--text-main);margin:0;font-size:16px;font-weight:600;line-height:1.3}.card-metadata{color:var(--text-muted);text-transform:uppercase;letter-spacing:.02em;font-family:JetBrains Mono,monospace;font-size:11px}.tgp-card.practical{width:100%;padding-top:26px;position:relative}.tgp-card.practical:nth-child(odd){transform:rotate(-.8deg)}.tgp-card.practical:nth-child(2n){transform:rotate(.6deg)}.tgp-card.practical .hanger{z-index:-1;background:#bbb;width:2px;height:28px;position:absolute;top:0;left:50%;transform:translate(-50%)}.tgp-card.practical .hanger:after{content:"";background:#444;border-radius:50%;width:10px;height:10px;position:absolute;top:-4px;left:-4px;box-shadow:0 2px 4px #0003}.tgp-card.practical .card-outer-content{background:#fff radial-gradient(#00000004 1px,#0000 1px) 0 0/4px 4px;border:1px solid #00000008;border-radius:6px;transition:all .25s;overflow:hidden;box-shadow:0 2px 4px #0000000d,0 18px 40px #0000002e}.tgp-card.practical .card-image-wrapper{aspect-ratio:4/5;border-radius:0}.tgp-card.practical .card-content{background:#fff;padding:18px 16px}.tgp-card.practical .card-title{margin-bottom:4px;font-size:16px}.tgp-card.practical .card-metadata{color:#666;text-transform:none;letter-spacing:normal;font-family:inherit;font-size:13px}.tgp-card.practical:hover .card-outer-content{transform:translateY(-6px)scale(1.02);box-shadow:0 6px 12px #0000001a,0 24px 48px #00000038}.tgp-card.practical.tag-groen .card-outer-content{background-color:#f7fdf9}.tgp-card.practical.tag-zand .card-outer-content{background-color:#fffbf5}.tgp-card.practical.tag-blauw .card-outer-content{background-color:#f5f8ff}.tgp-card.practical.tag-rood .card-outer-content{background-color:#fff5f5}.tgp-card.practical.tag-groen .card-content{background-color:#f7fdf9}.tgp-card.practical.tag-zand .card-content{background-color:#fffbf5}.tgp-card.practical.tag-blauw .card-content{background-color:#f5f8ff}.tgp-card.practical.tag-rood .card-content{background-color:#fff5f5}.tgp-card.practical.tag-groen .card-tag{color:#15803d}.tgp-card.practical.tag-zand .card-tag{color:#b45309}.tgp-card.practical.tag-blauw .card-tag{color:#1d4ed8}.tgp-card.practical.tag-rood .card-tag{color:#b91c1c}.tgp-card.community .card-image-wrapper{aspect-ratio:1;margin-bottom:var(--space-md)}.tgp-card.project .card-image-wrapper{aspect-ratio:4/3}.tgp-card.community:hover .card-outer-content,.tgp-card.project:hover .card-outer-content{box-shadow:var(--shadow-md);transform:translateY(-4px)}.home-page{max-width:var(--max-width);padding-bottom:var(--space-2xl);flex-direction:column;gap:56px;margin:0 auto;display:flex}.home-section{gap:var(--space-lg);flex-direction:column;display:flex}.home-section-header{justify-content:space-between;align-items:center;display:flex}.home-section-title{letter-spacing:-.02em;align-items:center;gap:8px;font-size:20px;font-weight:800;display:flex}.home-section-link{color:var(--brand-main);align-items:center;gap:4px;font-size:13px;font-weight:700;text-decoration:none;display:flex}.zap-icon{color:#f59e0b}.activity-feed{border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);background:#fff;flex-direction:column;gap:0;display:flex;overflow:hidden}.activity-pill{border-bottom:1px solid var(--border-light);align-items:center;gap:12px;padding:12px 18px;display:flex}.activity-pill:last-child{border-bottom:none}.activity-avatar{object-fit:cover;border-radius:50%;flex-shrink:0;width:30px;height:30px}.activity-text{color:var(--text-main);flex:1;font-size:13px;line-height:1.4}.activity-text strong{font-weight:700}.activity-time{color:var(--text-muted);white-space:nowrap;flex-shrink:0;font-size:11px}.home-practicals-grid{gap:var(--space-lg);grid-template-columns:repeat(4,1fr);display:grid}.home-communities-grid{gap:var(--space-lg);grid-template-columns:repeat(3,1fr);display:grid}@media (width<=1024px){.home-practicals-grid,.home-communities-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.home-hero-title{font-size:26px}.home-hero{padding:28px 0 0}.home-page{gap:40px}.activity-feed{border-radius:var(--radius-full);gap:var(--space-sm);box-shadow:none;background:0 0;border:none;flex-direction:row;padding:4px 0;overflow-x:auto}.activity-pill{border:1px solid var(--border);border-radius:var(--radius-full);white-space:nowrap;box-shadow:var(--shadow-sm);background:#fff;flex-shrink:0;padding:8px 14px}.activity-pill:last-child{border-bottom:1px solid var(--border)}.activity-time{display:none}.home-practicals-grid{gap:var(--space-md);padding-bottom:4px;display:flex;overflow-x:auto}.home-practicals-grid>*{flex:0 0 220px}.home-communities-grid{gap:var(--space-md);padding-bottom:4px;display:flex;overflow-x:auto}.home-communities-grid>*{flex:0 0 220px}}.identity-banner{align-items:center;gap:var(--space-lg);background:var(--bg-sheet);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-md) var(--space-lg);margin-bottom:var(--space-xl);display:flex}.identity-banner__left{align-items:center;gap:var(--space-md);flex:1;min-width:0;display:flex}.identity-banner__avatar{object-fit:cover;border-radius:50%;flex-shrink:0;width:48px;height:48px}.identity-banner__info{flex-direction:column;gap:2px;min-width:0;display:flex}.identity-banner__name{letter-spacing:-.01em;color:var(--text-main);font-size:15px;font-weight:800}.identity-banner__statement{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.identity-banner__statement--compact{font-size:12px}.identity-banner__tags{flex-wrap:wrap;flex-shrink:0;gap:6px;display:flex}.identity-banner__tag{color:var(--text-muted);background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-full);padding:3px 10px;font-size:11px;font-weight:600}.identity-banner__cta{color:var(--text-main);background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-full);white-space:nowrap;flex-shrink:0;align-items:center;gap:4px;padding:8px 14px;font-size:13px;font-weight:700;transition:background .15s;display:inline-flex}.identity-banner__cta:hover{background:var(--border)}.identity-banner--compact{padding:var(--space-sm) var(--space-md);margin-bottom:var(--space-md);gap:var(--space-sm)}.identity-banner--compact .identity-banner__avatar{width:36px;height:36px}.identity-banner--compact .identity-banner__cta{background:0 0;border:none;padding:6px 10px}@media (width<=768px){.identity-banner__tags{display:none}}.personal-page{max-width:1140px;padding-bottom:var(--space-3xl);margin:0 auto;position:relative}.personal-banner-wrap{padding-top:var(--space-lg)}.personal-grid{gap:var(--space-xl);grid-template-columns:1fr 300px;align-items:start;display:grid}.personal-card{background:var(--bg-sheet);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-lg);margin-bottom:var(--space-md)}.card-eyebrow{text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);margin-bottom:var(--space-md);font-size:11px;font-weight:800;display:block}.card-header-row{margin-bottom:var(--space-md);justify-content:space-between;align-items:center;display:flex}.card-link{color:var(--text-muted);cursor:pointer;background:0 0;border:none;font-size:13px;font-weight:600}.card-link:hover{color:var(--text-main)}.focus-card{padding:0;overflow:hidden}.focus-card>.card-eyebrow{padding:var(--space-lg) var(--space-lg) 0}.focus-content{grid-template-columns:200px 1fr;display:grid}.focus-image{height:100%;min-height:220px}.focus-image img{object-fit:cover;width:100%;height:100%;display:block}.focus-body{padding:var(--space-md) var(--space-lg) var(--space-lg);gap:var(--space-sm);flex-direction:column;display:flex}.focus-phase{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-size:11px;font-weight:700}.focus-title{letter-spacing:-.02em;margin:0;font-size:20px;font-weight:800;line-height:1.2}.focus-progress{align-items:center;gap:10px;display:flex}.progress-track{background:var(--bg-secondary);border-radius:var(--radius-full);flex:1;height:5px;overflow:hidden}.progress-fill{background:var(--text-main);border-radius:var(--radius-full);height:100%;transition:width .4s}.progress-pct{color:var(--text-muted);white-space:nowrap;font-size:12px;font-weight:700}.focus-next{padding-top:var(--space-sm);border-top:1px solid var(--border);flex-direction:column;gap:4px;display:flex}.focus-next-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-size:10px;font-weight:700}.focus-next-text{color:var(--text-main);font-size:14px;font-weight:600;line-height:1.4}.focus-cta{background:var(--text-main);color:#fff;border-radius:var(--radius-full);width:fit-content;margin-top:var(--space-xs);align-items:center;gap:6px;padding:9px 18px;font-size:13px;font-weight:700;text-decoration:none;transition:opacity .15s;display:inline-flex}.focus-cta:hover{opacity:.85}.tasks-list{flex-direction:column;display:flex}.task-row{border-bottom:1px solid var(--border);cursor:pointer;align-items:center;gap:12px;min-height:48px;padding:12px 0;transition:opacity .15s;display:flex}.task-row:last-child{border-bottom:none}.task-row:hover{opacity:.75}.task-check{flex-shrink:0}.check-done{color:#22c55e}.check-todo{color:#d4d4d4}.task-info{flex-direction:column;gap:2px;display:flex}.task-text{color:var(--text-main);font-size:14px;font-weight:600}.task-ctx{color:var(--text-muted);font-size:11px}.task-row--done .task-text{color:var(--text-muted);text-decoration:line-through}.reflection-quote{color:var(--text-main);border-left:3px solid var(--border);padding-left:var(--space-md);margin:0 0 var(--space-md) 0;flex-direction:column;gap:8px;font-size:14px;font-style:italic;line-height:1.65;display:flex}.reflection-date{color:var(--text-muted);font-size:11px;font-style:normal;font-weight:600}.reflection-add-btn{color:var(--text-muted);background:var(--bg-secondary);border:1px dashed var(--border);border-radius:var(--radius-md);justify-content:center;align-items:center;gap:6px;width:100%;padding:8px 14px;font-size:13px;font-weight:600;transition:border-color .15s,color .15s;display:inline-flex}.reflection-add-btn:hover{border-color:var(--text-muted);color:var(--text-main)}.quick-capture-grid{gap:var(--space-sm);grid-template-columns:1fr 1fr;display:grid}.quick-capture-btn{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-main);text-align:center;min-height:44px;padding:12px;font-size:13px;font-weight:700;transition:background .15s}.quick-capture-btn:hover{background:var(--border)}.personal-sidebar{gap:var(--space-md);flex-direction:column;display:flex;position:sticky;top:80px}.sidebar-card{background:var(--bg-sheet);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-md)}.sidebar-card__header{text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted);margin-bottom:var(--space-sm);align-items:center;gap:6px;font-size:12px;font-weight:700;display:flex}.sidebar-list{margin-bottom:var(--space-sm);flex-direction:column;gap:2px;display:flex}.sidebar-list-item{border-radius:var(--radius-sm);color:inherit;justify-content:space-between;align-items:center;min-height:36px;padding:8px 6px;text-decoration:none;transition:background .12s;display:flex}.sidebar-list-item:hover{background:var(--bg-secondary)}.sidebar-item-label{color:var(--text-main);font-size:13px;font-weight:600}.sidebar-item-meta{color:var(--text-muted);font-size:11px}.sidebar-card__link{color:var(--text-muted);border-top:1px solid var(--border);padding-top:8px;font-size:12px;font-weight:600;text-decoration:none;display:block}.sidebar-card__link:hover{color:var(--text-main)}.sidebar-events{gap:var(--space-sm);flex-direction:column;display:flex}.sidebar-event-row{border-bottom:1px solid var(--border);flex-direction:column;gap:2px;padding:6px 0;display:flex}.sidebar-event-row:last-child{border-bottom:none}.sidebar-event-day{text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted);font-size:10px;font-weight:700}.sidebar-event-title{color:var(--text-main);font-size:13px;font-weight:600}.sidebar-actions{flex-direction:column;gap:4px;display:flex}.sidebar-action-btn{text-align:left;color:var(--text-main);border-radius:var(--radius-sm);background:0 0;border:none;min-height:36px;padding:8px 6px;font-size:13px;font-weight:600;transition:background .12s}.sidebar-action-btn:hover{background:var(--bg-secondary)}.fab-wrap{align-items:flex-end;gap:var(--space-sm);z-index:100;flex-direction:column;display:none;position:fixed;bottom:28px;right:24px}.fab-btn{background:var(--text-main);color:#fff;width:52px;height:52px;box-shadow:var(--shadow-lg);border:none;border-radius:50%;justify-content:center;align-items:center;transition:transform .2s;display:flex}.fab-btn:hover{transform:scale(1.05)}.fab-icon--open{transition:transform .2s;transform:rotate(45deg)}.fab-menu{flex-direction:column;align-items:flex-end;gap:6px;display:flex}.fab-menu-item{background:var(--bg-sheet);border:1px solid var(--border);border-radius:var(--radius-full);color:var(--text-main);box-shadow:var(--shadow-sm);white-space:nowrap;padding:10px 18px;font-size:13px;font-weight:700;animation:.15s both fab-item-in}@keyframes fab-item-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (width<=900px){.personal-grid{grid-template-columns:1fr}.personal-sidebar{display:none;position:static}.mobile-only{display:block}.fab-wrap{display:flex}.focus-content{grid-template-columns:1fr}.focus-image{min-height:160px}.personal-page{padding-bottom:100px}}.workspace-card-v2{border-radius:var(--radius-xl);border:1px solid var(--border);cursor:pointer;background:#fff;flex-direction:column;transition:all .2s;display:flex;overflow:hidden}.workspace-card-v2:hover{box-shadow:var(--shadow-md);border-color:var(--text-main);transform:translateY(-4px)}.card-media{aspect-ratio:16/9;background:var(--bg-secondary);width:100%;position:relative}.card-media img{object-fit:cover;width:100%;height:100%}.card-progress-overlay{background:linear-gradient(#0000,#0006);padding:12px;position:absolute;bottom:0;left:0;right:0}.progress-track{border-radius:var(--radius-full);background:#ffffff4d;height:4px;overflow:hidden}.progress-fill{border-radius:var(--radius-full);background:#10b981;height:100%}.card-body{padding:var(--space-lg);gap:var(--space-sm);flex-direction:column;display:flex}.card-meta-top{justify-content:space-between;align-items:center;display:flex}.card-subtitle{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-size:11px;font-weight:800}.member-count{color:var(--text-muted);align-items:center;gap:4px;font-size:12px;font-weight:700;display:flex}.card-title{color:var(--text-main);letter-spacing:-.01em;font-size:17px;font-weight:800}.card-stats{margin-top:var(--space-xs);flex-direction:column;gap:6px;display:flex}.stat-item{color:var(--text-main);align-items:center;gap:6px;font-size:13px;font-weight:600;display:flex}.stat-update{color:var(--text-muted);align-items:center;gap:6px;font-size:12px;font-style:italic;font-weight:500;display:flex}.communities-index{max-width:var(--max-width);padding:var(--space-xl) var(--space-lg);margin:0 auto}.communities-layout-grid{gap:var(--space-xl);grid-template-columns:1fr 320px;align-items:flex-start;display:grid}.main-content-column{gap:var(--space-xl);flex-direction:column;display:flex}.side-content-column{top:var(--space-xl);position:sticky}.category-icon-btn:hover,.category-icon-btn.active{opacity:1}.sheet-header{margin-bottom:var(--space-xl);padding-bottom:var(--space-sm);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;display:flex}.sheet-title{align-items:center;gap:var(--space-sm);font-size:18px;font-weight:700;display:flex}.my-communities-grid{gap:var(--space-md);grid-template-columns:repeat(auto-fill,minmax(300px,1fr));display:grid}.recommended-grid{gap:var(--space-lg);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));display:grid}.discover-grid{gap:var(--space-xl);grid-template-columns:repeat(auto-fill,minmax(220px,1fr));display:grid}.activity-feed{gap:var(--space-md);flex-direction:column;display:flex}.activity-item{gap:var(--space-md);padding-bottom:var(--space-xs);display:flex;position:relative}.activity-dot{border-radius:var(--radius-full);background:var(--accent);flex-shrink:0;width:8px;height:8px;margin-top:6px}.activity-content{flex-direction:column;gap:2px;display:flex}.activity-text{color:var(--text-main);font-size:14px;line-height:1.4}.activity-target{color:var(--text-muted);font-weight:600}.activity-time{opacity:.8;font-size:10px}.text-link-v2{color:var(--text-muted);cursor:pointer;background:0 0;border:none;align-items:center;gap:4px;font-size:13px;font-weight:600;display:flex}.text-link-v2:hover{color:var(--text-main)}.workspace-sheet.compact{padding:var(--space-lg)}@media (width<=1024px){.communities-layout-grid{grid-template-columns:1fr}.side-content-column{position:static}.header-main{align-items:flex-start;gap:var(--space-md);flex-direction:column}.header-search input{width:100%}}.forum-feed{flex-direction:column;gap:16px;display:flex}.thread-card-link{color:inherit;text-decoration:none;display:block}.forum-topbar{align-items:center;gap:12px;display:flex}.forum-search-wrap{background:#fff;border:1px solid #ececec;border-radius:10px;flex:1;align-items:center;gap:10px;padding:10px 16px;display:flex;box-shadow:0 1px 3px #0000000a}.forum-search-icon{color:var(--text-muted);flex-shrink:0}.forum-search-input{width:100%;color:var(--text-main);background:0 0;border:none;outline:none;font-family:inherit;font-size:14px}.forum-search-input::placeholder{color:var(--text-muted)}.forum-new-btn{background:var(--text-main);color:#fff;white-space:nowrap;border-radius:10px;align-items:center;gap:6px;padding:10px 18px;font-size:14px;font-weight:700;transition:opacity .15s;display:flex}.forum-new-btn:hover{opacity:.85}.forum-sort-row{border-bottom:1px solid #ececec;gap:4px;padding-bottom:0;display:flex}.forum-sort-tab{color:var(--text-muted);border-bottom:2px solid #0000;border-radius:8px 8px 0 0;align-items:center;gap:5px;margin-bottom:-1px;padding:9px 14px;font-size:13px;font-weight:600;transition:color .15s,background .15s;display:flex}.forum-sort-tab:hover{color:var(--text-main)}.forum-sort-tab.active{color:var(--text-main);border-bottom-color:var(--text-main);font-weight:700}.forum-pinned-section{background:#fff;border:1px solid #ececec;border-radius:14px;flex-direction:column;gap:12px;padding:16px 20px;display:flex;box-shadow:0 2px 8px #0000000a}.forum-pinned-header{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);align-items:center;gap:6px;font-size:12px;font-weight:800;display:flex}.pinned-star{color:#f59e0b}.forum-guides-row{flex-wrap:wrap;gap:8px;display:flex}.guide-pill{background:var(--bg-secondary);color:var(--text-main);border-radius:20px;align-items:center;gap:6px;padding:7px 14px;font-size:13px;font-weight:600;transition:background .15s;display:flex}.guide-pill:hover{background:var(--border)}.forum-threads{flex-direction:column;gap:10px;display:flex}.thread-card{cursor:pointer;background:#fff;border:1px solid #ececec;border-radius:14px;gap:16px;padding:20px;transition:box-shadow .2s,transform .2s;display:flex;box-shadow:0 2px 8px #0000000a}.thread-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #00000014}.thread-vote-col{flex-direction:column;align-items:center;gap:4px;min-width:28px;padding-top:2px;display:flex}.thread-vote-btn{color:var(--text-muted);transition:color .15s}.thread-vote-btn:hover{color:var(--text-main)}.thread-vote-count{color:var(--text-muted);font-size:12px;font-weight:800}.thread-body{flex-direction:column;flex:1;gap:8px;min-width:0;display:flex}.thread-meta-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.thread-type-badge{text-transform:uppercase;letter-spacing:.04em;border-radius:20px;align-items:center;gap:4px;padding:3px 10px;font-size:11px;font-weight:800;display:inline-flex}.thread-trending-badge{color:#ef4444;align-items:center;gap:3px;font-size:11px;font-weight:700;display:inline-flex}.thread-time{color:var(--text-muted);margin-left:auto;font-size:12px}.thread-title{color:var(--text-main);letter-spacing:-.01em;font-size:16px;font-weight:700;line-height:1.35}.thread-excerpt{color:var(--text-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:14px;line-height:1.55;display:-webkit-box;overflow:hidden}.thread-footer{align-items:center;gap:8px;margin-top:4px;display:flex}.thread-avatar{object-fit:cover;border-radius:50%;width:22px;height:22px}.thread-author{color:var(--text-main);flex:1;font-size:13px;font-weight:700}.thread-replies{color:var(--text-muted);align-items:center;gap:4px;font-size:12px;font-weight:600;display:flex}@media (width<=640px){.forum-topbar{flex-direction:column;align-items:stretch}.forum-new-btn{justify-content:center}.thread-card{gap:12px;padding:16px}.thread-vote-col{display:none}}.members-grid{gap:var(--space-lg);grid-template-columns:repeat(auto-fill,minmax(200px,1fr));padding:0;display:grid}.member-card{align-items:center;gap:var(--space-md);padding:var(--space-md) 0;border:none;border-bottom:1px solid var(--bg-secondary);background:0 0;display:flex}.member-card img{border-radius:var(--radius-full);width:44px;height:44px}.member-info h4{font-size:15px;font-weight:700}.member-info span{color:var(--text-muted);font-size:12px;font-weight:600}.resources-list{flex-direction:column;padding:0;display:flex}.resource-item{align-items:center;gap:var(--space-lg);padding:var(--space-lg) 0;border:none;border-bottom:1px solid var(--bg-secondary);background:0 0;display:flex}.res-icon{color:var(--accent)}.res-info{flex:1}.res-info h4{margin-bottom:2px;font-size:15px;font-weight:700}.res-info span{color:var(--text-muted);font-size:12px;font-weight:600}.download-btn{color:var(--text-muted);transition:color .2s}.download-btn:hover{color:var(--text-main)}.events-list{flex-direction:column;padding:0;display:flex}.event-card{align-items:center;gap:var(--space-xl);padding:var(--space-lg) 0;border:none;border-bottom:1px solid var(--bg-secondary);background:0 0;display:flex}.event-date-block{background:var(--bg-secondary);border-radius:var(--radius-md);flex-direction:column;justify-content:center;align-items:center;min-width:60px;padding:10px;display:flex}.event-day{color:var(--text-main);font-size:18px;font-weight:800}.event-month{color:var(--accent);font-size:11px;font-weight:800}.event-info h4{margin-bottom:2px;font-size:16px;font-weight:700}.event-info p{color:var(--text-muted);font-size:14px;font-weight:500}.empty-state{padding:var(--space-3xl) var(--space-xl);text-align:center;justify-content:center;align-items:center;gap:var(--space-md);background:0 0;flex-direction:column;display:flex}.empty-state-icon{color:var(--text-muted);opacity:.3;margin-bottom:var(--space-sm)}.empty-state-title{color:var(--text-main);letter-spacing:-.01em;font-size:20px;font-weight:800}.empty-state-description{color:var(--text-muted);max-width:400px;font-size:15px;line-height:1.6}.empty-state-action{margin-top:var(--space-lg);background:var(--text-main);color:#fff;border-radius:var(--radius-full);padding:12px 24px;font-size:14px;font-weight:700;transition:transform .2s}.empty-state-action:hover{transform:scale(1.05)}.breadcrumb{margin-bottom:var(--space-lg);align-items:center;gap:4px;display:flex}.breadcrumb-link{color:var(--text-muted);font-size:13px;font-weight:600;text-decoration:none;transition:color .15s}.breadcrumb-link:hover{color:var(--text-main)}.breadcrumb-item{color:var(--text-muted);font-size:13px;font-weight:600}.breadcrumb-item.current{color:var(--text-main);font-weight:700}.breadcrumb-sep{color:var(--border);flex-shrink:0}.community-page-wrapper{min-height:calc(100vh - var(--nav-height));margin:calc(-1 * var(--space-2xl)) calc(-1 * var(--space-lg));padding:var(--space-xl) var(--space-lg);background:#f8f8f6}.community-layout{grid-template-columns:260px 1fr 300px;align-items:start;gap:28px;max-width:1300px;margin:0 auto;display:grid}.comm-sidebar{top:calc(var(--nav-height) + 24px);flex-direction:column;gap:20px;display:flex;position:sticky}.comm-identity{align-items:center;gap:12px;padding:4px 0 8px;display:flex}.comm-avatar{object-fit:cover;border-radius:10px;width:44px;height:44px;box-shadow:0 1px 4px #0000001a}.comm-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:2px;font-size:10px;font-weight:700}.comm-name{letter-spacing:-.02em;font-size:16px;font-weight:800;line-height:1.2}.comm-nav{flex-direction:column;gap:2px;display:flex}.comm-nav-item{color:var(--text-muted);text-align:left;border-radius:8px;align-items:center;gap:10px;width:100%;padding:9px 12px;font-size:14px;font-weight:500;transition:background .15s,color .15s;display:flex}.comm-nav-item:hover{color:var(--text-main);background:#0000000a}.comm-nav-item.active{color:var(--text-main);background:#fff;font-weight:700;box-shadow:0 1px 3px #0000000f}.comm-sidebar-divider{background:var(--border-light);height:1px;margin:0 4px}.comm-sidebar-heading{text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);margin-bottom:4px;padding:0 12px;font-size:10px;font-weight:800}.comm-sidebar-section{flex-direction:column;gap:2px;display:flex}.comm-stats{border:1px solid var(--border-light);background:#fff;border-radius:10px;gap:0;display:flex;overflow:hidden}.comm-stat{border-right:1px solid var(--border-light);flex-direction:column;flex:1;align-items:center;padding:12px 8px;display:flex}.comm-stat:last-child{border-right:none}.comm-stat-value{letter-spacing:-.02em;font-size:16px;font-weight:800}.comm-stat-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:10px;font-weight:600}.comm-main{flex-direction:column;gap:0;min-width:0;display:flex}.comm-context{top:calc(var(--nav-height) + 24px);flex-direction:column;gap:16px;display:flex;position:sticky}.context-card{background:#fff;border:1px solid #ececec;border-radius:14px;overflow:hidden;box-shadow:0 2px 8px #0000000a}.context-cover{object-fit:cover;width:100%;height:90px;display:block}.context-info{flex-direction:column;gap:6px;padding:16px;display:flex}.context-name{letter-spacing:-.01em;font-size:16px;font-weight:800}.context-meta{color:var(--text-muted);font-size:12px;font-weight:500}.context-desc{color:var(--text-muted);margin-top:2px;font-size:13px;line-height:1.5}.context-join-btn{background:var(--text-main);color:#fff;border-radius:8px;width:100%;margin-top:8px;padding:10px 16px;font-size:14px;font-weight:700;transition:opacity .15s}.context-join-btn:hover{opacity:.85}.context-section{background:#fff;border:1px solid #ececec;border-radius:14px;flex-direction:column;gap:10px;padding:16px;display:flex;box-shadow:0 2px 8px #0000000a}.context-heading{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-size:12px;font-weight:800}.trending-tags{flex-wrap:wrap;gap:6px;display:flex}.trending-tag{color:var(--text-main);background:var(--bg-secondary);border-radius:20px;padding:5px 10px;font-size:13px;font-weight:500;transition:background .15s}.trending-tag:hover{background:var(--border)}.context-projects{flex-direction:column;gap:10px;display:flex}.context-project-row{align-items:center;gap:10px;display:flex}.context-project-img{object-fit:cover;border-radius:8px;flex-shrink:0;width:36px;height:36px}.context-project-title{color:var(--text-main);font-size:13px;font-weight:600;line-height:1.3}.context-project-meta{color:var(--text-muted);font-size:11px}.context-practicals{flex-direction:column;gap:6px;display:flex}.context-practical-item{color:var(--text-muted);text-align:left;align-items:center;gap:8px;padding:6px 0;font-size:13px;font-weight:500;transition:color .15s;display:flex}.context-practical-item:hover{color:var(--text-main)}@media (width<=1200px){.community-layout{grid-template-columns:240px 1fr 280px;gap:20px}}@media (width<=1024px){.community-layout{grid-template-columns:220px 1fr}.comm-context{display:none}}@media (width<=768px){.community-layout{grid-template-columns:1fr}.comm-sidebar{position:static}.comm-nav{scrollbar-width:none;flex-direction:row;gap:4px;padding-bottom:4px;overflow-x:auto}.comm-nav-item{white-space:nowrap;flex-shrink:0}.comm-stats,.comm-sidebar-section,.comm-sidebar-divider:last-of-type{display:none}}.projects-index{flex-direction:column;display:flex}.header-with-action{justify-content:space-between;align-items:center;display:flex}.icon-btn-primary{background:var(--text-main);color:#fff;border-radius:var(--radius-full);justify-content:center;align-items:center;width:40px;height:40px;display:flex}.index-section{gap:var(--space-md);margin-bottom:var(--space-2xl);flex-direction:column;display:flex}.section-label{letter-spacing:-.01em;font-size:18px;font-weight:800}.header-search-compact{border:1px solid var(--border);border-radius:var(--radius-full);margin-top:var(--space-md);box-shadow:var(--shadow-sm);background:#fff;align-items:center;padding:10px 16px;display:flex}.header-search-compact input{background:0 0;border:none;outline:none;width:100%;margin-left:10px;font-family:inherit;font-size:14px}.my-projects-grid{gap:var(--space-xl);grid-template-columns:repeat(2,1fr);display:grid}.my-projects-grid .tgp-card.project .card-image-wrapper{aspect-ratio:16/10}.my-projects-grid .tgp-card .card-title{font-size:18px;font-weight:700}@media (width<=640px){.my-projects-grid{grid-template-columns:1fr}}.high-density-grid{gap:var(--space-lg);grid-template-columns:repeat(4,1fr);display:grid}@media (width<=1024px){.high-density-grid{grid-template-columns:repeat(3,1fr)}}@media (width<=768px){.high-density-grid{gap:var(--space-md);grid-template-columns:repeat(2,1fr)}}@media (width<=480px){.high-density-grid{grid-template-columns:1fr}}.chat-container{background:0 0;flex-direction:column;height:600px;display:flex}.chat-messages{padding:var(--space-md) 0;gap:var(--space-lg);flex-direction:column;flex:1;display:flex;overflow-y:auto}.chat-message{gap:var(--space-md);max-width:85%;display:flex}.chat-message.me{flex-direction:row-reverse;align-self:flex-end}.chat-avatar{border-radius:var(--radius-full);width:36px;height:36px;box-shadow:var(--shadow-sm);object-fit:cover;border:2px solid #fff;flex-shrink:0}.message-content{flex-direction:column;gap:4px;display:flex}.chat-message.me .message-content{align-items:flex-end}.message-user{color:var(--text-main);margin-left:4px;font-size:12px;font-weight:700}.message-bubble{border-radius:0 var(--radius-lg) var(--radius-lg) var(--radius-lg);color:var(--text-main);box-shadow:var(--shadow-sm);border:1px solid var(--border);background:#fff;padding:12px 16px;font-size:14px;line-height:1.5}.chat-message.me .message-bubble{background:var(--text-main);color:#fff;border-radius:var(--radius-lg) 0 var(--radius-lg) var(--radius-lg);border:none}.message-time{color:var(--text-muted);margin-top:2px;font-family:JetBrains Mono,monospace;font-size:10px}.chat-input-wrapper{padding-top:var(--space-lg);border-top:1px solid var(--border)}.chat-input-bar{border-radius:var(--radius-full);align-items:center;gap:var(--space-md);border:1px solid var(--border);box-shadow:var(--shadow-sm);background:#fff;padding:6px 16px;display:flex}.chat-input{background:0 0;border:none;outline:none;flex:1;padding:10px 0;font-family:inherit;font-size:14px}.chat-action-btn{color:var(--text-muted);cursor:pointer;border-radius:var(--radius-full);background:0 0;border:none;justify-content:center;align-items:center;padding:8px;transition:all .2s;display:flex}.chat-action-btn:hover{background:var(--bg-secondary);color:var(--text-main)}.chat-send-btn{background:var(--text-main);color:#fff;border-radius:var(--radius-full);cursor:pointer;border:none;justify-content:center;align-items:center;width:34px;height:34px;transition:transform .2s cubic-bezier(.2,.8,.2,1);display:flex}.chat-send-btn:hover{transform:scale(1.05)rotate(-5deg)}.activity-timeline{padding:var(--space-xl) 0;flex-direction:column;display:flex}.timeline-item{gap:var(--space-xl);display:flex}.timeline-connector{flex-direction:column;align-items:center;display:flex}.timeline-dot{border-radius:var(--radius-full);border:1px solid var(--border);z-index:2;width:44px;height:44px;box-shadow:var(--shadow-sm);background:#fff;flex-shrink:0;justify-content:center;align-items:center;display:flex}.timeline-line{background:var(--border);flex:1;width:2px}.timeline-content{padding-bottom:var(--space-3xl);gap:var(--space-xs);flex-direction:column;flex:1;display:flex}.timeline-header{gap:var(--space-md);align-items:center;margin-bottom:2px;display:flex}.timeline-time{color:var(--text-main);font-size:13px;font-weight:700}.timeline-user{color:var(--text-muted);font-size:13px}.timeline-title.milestone{color:#10b981}.timeline-description{color:var(--text-muted);margin-top:4px;font-size:15px;line-height:1.6}.timeline-image-wrapper{margin-top:var(--space-lg);aspect-ratio:16/9;border-radius:var(--radius-lg);background:var(--bg-secondary);width:100%;max-width:600px;overflow:hidden}.timeline-image{object-fit:cover;width:100%;height:100%}.icon-milestone{color:#10b981}.icon-update{color:#3b82f6}.icon-resource{color:#f59e0b}.icon-event{color:var(--accent)}@media (width<=600px){.timeline-item{gap:var(--space-md)}.timeline-dot{width:36px;height:36px}.timeline-dot svg{width:18px;height:18px}}.workspace-tasks{gap:var(--space-xl);flex-direction:column;display:flex;position:relative}.workspace-controls{padding-bottom:var(--space-md);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;display:flex}.desktop-only{display:flex}.mobile-only{display:none}@media (width<=768px){.desktop-only{display:none}.mobile-only{display:block}.view-title-mobile{font-size:18px;font-weight:800}}.view-switcher{background:var(--bg-secondary);border-radius:var(--radius-md);gap:4px;padding:4px;display:flex}.view-btn{align-items:center;gap:var(--space-sm);border-radius:var(--radius-sm);color:var(--text-muted);padding:6px 16px;font-size:13px;font-weight:600;transition:all .2s;display:flex}.view-btn.active{color:var(--text-main);box-shadow:var(--shadow-sm);background:#fff}.blueprint-info-mini{align-items:center;gap:var(--space-sm);color:var(--text-muted);font-size:12px;display:flex}.phase-group{margin-bottom:var(--space-xl)}.phase-header{align-items:center;gap:var(--space-sm);cursor:pointer;border-bottom:1px solid var(--bg-secondary);padding:12px 0;display:flex}.phase-title{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);flex:1;font-size:13px;font-weight:800}.task-row{align-items:center;gap:var(--space-md);border-bottom:1px solid var(--bg-secondary);cursor:pointer;padding:16px 0;transition:all .2s;display:flex}.task-row:hover{background:0 0;padding-left:8px}.task-name{flex:1;font-size:15px;font-weight:600}.comment-count-pill{color:var(--text-muted);background:var(--bg-secondary);border-radius:var(--radius-full);align-items:center;gap:4px;padding:2px 8px;font-size:11px;font-weight:700;display:flex}.mini-avatar{border-radius:var(--radius-full);border:1px solid #fff;width:24px;height:24px}.tgp-table{border-collapse:collapse;width:100%;font-size:14px}.tgp-table th{text-align:left;color:var(--text-muted);border-bottom:1px solid var(--border);padding:12px 0;font-weight:700}.table-phase-row td{color:var(--text-muted);text-transform:uppercase;padding:24px 0 12px;font-size:12px;font-weight:800}.table-task-row{cursor:pointer;border-bottom:1px solid var(--bg-secondary)}.table-task-row:hover{background:0 0}.table-task-row td{padding:16px 0}.task-checkbox-wrapper{justify-content:center;align-items:center;padding:4px;display:flex}.icon-done.pulse-anim{animation:.4s ease-out checkPulse}@keyframes checkPulse{0%{transform:scale(1)}50%{transform:scale(1.3)}to{transform:scale(1)}}.task-row.just-completed{color:#10b981}.task-row.completed .task-name{opacity:.5;text-decoration:line-through}.badge{border-radius:var(--radius-full);padding:4px 10px;font-size:11px;font-weight:700}.status-voltooid{color:#065f46;background:#d1fae5}.status-bezig{color:#1e40af;background:#dbeafe}.status-niet-gestart{color:#374151;background:#f3f4f6}.priority-dot{border-radius:var(--radius-full);width:8px;height:8px;margin-right:4px;display:inline-block}.priority-hoog{background:#ef4444}.priority-medium{background:#f59e0b}.priority-laag{background:#10b981}.task-detail-overlay{z-index:2000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0003;justify-content:flex-end;display:flex;position:fixed;inset:0}.task-detail-panel{width:100%;max-width:550px;height:100vh;box-shadow:var(--shadow-lg);background:#fff;flex-direction:column;animation:.3s ease-out slideIn;display:flex}@keyframes slideIn{0%{transform:translate(100%)}to{transform:translate(0)}}.panel-header{padding:var(--space-lg);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;display:flex}.close-panel{color:var(--text-muted);cursor:pointer}.panel-action-btn{background:var(--bg-secondary);border-radius:var(--radius-md);color:var(--text-main);padding:8px 16px;font-size:13px;font-weight:700}.panel-scroll-content{flex-direction:column;flex:1;display:flex;overflow-y:auto}.panel-main-info{padding:var(--space-2xl);border-bottom:8px solid var(--bg-secondary)}.panel-task-title{margin-bottom:var(--space-xl);letter-spacing:-.02em;font-size:24px;font-weight:800}.panel-properties{gap:var(--space-md);margin-bottom:var(--space-xl);flex-direction:column;display:flex}.prop-row{grid-template-columns:120px 1fr;align-items:center;display:grid}.prop-label{color:var(--text-muted);font-size:14px;font-weight:600}.prop-value{align-items:center;gap:var(--space-sm);font-size:14px;font-weight:700;display:flex}.panel-description-section{padding-top:var(--space-lg);border-top:1px solid var(--border)}.section-subtitle{text-transform:uppercase;color:var(--text-muted);letter-spacing:.05em;margin-bottom:var(--space-lg);font-size:12px;font-weight:800}.panel-description{color:var(--text-main);font-size:15px;line-height:1.6}.panel-comments-section{padding:var(--space-2xl);background:#fff}.comments-list{gap:var(--space-xl);flex-direction:column;display:flex}.comment-item.reply{margin-left:var(--space-2xl);margin-top:calc(-1 * var(--space-sm));position:relative}.reply-connector{color:var(--border);position:absolute;top:4px;left:-24px}.comment-avatar{border-radius:var(--radius-md);flex-shrink:0;width:36px;height:36px}.comment-avatar.mini{width:28px;height:28px}.comment-body{flex-direction:column;flex:1;gap:2px;display:flex}.comment-header{align-items:baseline;gap:var(--space-sm);display:flex}.comment-user{font-size:14px;font-weight:800}.comment-time{color:var(--text-muted);font-size:11px}.comment-text{color:var(--text-main);font-size:14px;line-height:1.5}.reply-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;width:fit-content;margin-top:4px;padding:0;font-size:12px;font-weight:700}.reply-btn:hover{color:var(--text-main);text-decoration:underline}.panel-comment-input-area{padding:var(--space-lg) var(--space-2xl);border-top:1px solid var(--border);background:#fff}.comment-input-wrapper{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md);align-items:center;gap:var(--space-sm);padding:4px 12px;display:flex}.comment-input-wrapper input{background:0 0;border:none;outline:none;flex:1;padding:8px 0;font-family:inherit;font-size:14px}.send-comment-btn{color:var(--accent);justify-content:center;align-items:center;display:flex}.empty-comments{text-align:center;color:var(--text-muted);padding:var(--space-xl) 0;font-size:14px}.kanban-scroll{overflow-x:auto}.kanban-board{min-width:880px;padding-bottom:var(--space-md);grid-template-columns:repeat(3,280px);gap:16px;display:grid}.kanban-column{background:var(--bg-secondary);border-radius:var(--radius-xl);flex-direction:column;gap:10px;min-height:200px;padding:14px;display:flex}.kanban-col-header{border-bottom:1px solid var(--border-light);align-items:center;gap:8px;padding:0 2px 6px;display:flex}.kanban-col-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.kanban-col-label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);flex:1;font-size:12px;font-weight:800}.kanban-col-count{color:var(--text-muted);border-radius:var(--radius-full);background:#fff;padding:1px 7px;font-size:12px;font-weight:700}.kanban-cards{flex-direction:column;gap:8px;display:flex}.kanban-card{border:1px solid var(--border-light);border-radius:var(--radius-lg);cursor:pointer;background:#fff;flex-direction:column;gap:8px;padding:12px 14px;transition:box-shadow .15s,transform .15s;display:flex}.kanban-card:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.kanban-card-title{color:var(--text-main);font-size:13px;font-weight:600;line-height:1.4}.kanban-card-meta{align-items:center;gap:8px;display:flex}.kanban-card-date{color:var(--text-muted);align-items:center;gap:3px;margin-left:auto;font-size:11px;display:flex}.kanban-move-btn{color:var(--brand-main);background:var(--brand-bg,#f0f4ff);border-radius:var(--radius-full);cursor:pointer;border:none;align-self:flex-start;align-items:center;gap:4px;padding:4px 10px;font-size:11px;font-weight:700;transition:opacity .15s;display:flex}.kanban-move-btn:hover{opacity:.8}.kanban-empty{color:var(--text-muted);text-align:center;padding:var(--space-lg) 0;border:1px dashed var(--border-light);border-radius:var(--radius-lg);font-size:12px}.project-detail-wrapper{min-height:calc(100vh - var(--nav-height));margin:calc(-1 * var(--space-2xl)) calc(-1 * var(--space-lg));padding:var(--space-xl) var(--space-lg);background-color:#f7f7f7}.workspace-container{max-width:var(--max-width);gap:var(--space-2xl);grid-template-columns:280px 1fr;align-items:start;margin:0 auto;display:grid}.workspace-sidebar{gap:var(--space-2xl);padding:var(--space-md) 0;top:calc(var(--nav-height) + var(--space-xl));flex-direction:column;display:flex;position:sticky}.sidebar-identity{align-items:center;gap:var(--space-md);display:flex}.sidebar-avatar{border-radius:var(--radius-md);object-fit:cover;width:48px;height:48px;box-shadow:var(--shadow-sm)}.sidebar-breadcrumb{text-transform:uppercase;color:var(--text-muted);letter-spacing:.05em;font-size:11px;font-weight:800}.sidebar-title{letter-spacing:-.02em;font-size:18px;font-weight:800;line-height:1.2}.sidebar-nav{flex-direction:column;gap:4px;display:flex}.sidebar-nav-item{border-radius:var(--radius-md);color:var(--text-muted);text-align:left;justify-content:space-between;align-items:center;padding:10px 16px;font-size:14px;font-weight:600;transition:all .2s;display:flex}.sidebar-nav-item:hover{color:var(--text-main);background:#0000000a}.sidebar-nav-item.active{color:var(--text-main);box-shadow:var(--shadow-sm);background:#fff}.nav-badge{background:var(--bg-secondary);border-radius:var(--radius-full);color:var(--text-muted);padding:2px 8px;font-size:11px}.sidebar-footer{padding-top:var(--space-xl);border-top:1px solid var(--border);margin-top:auto}.presence-mini{align-items:center;gap:var(--space-sm);font-size:12px;font-weight:700;display:flex}.presence-avatars{width:24px;height:24px;position:relative}.presence-avatars img{border-radius:var(--radius-full);width:100%;height:100%}.status-dot{border-radius:var(--radius-full);border:2px solid #fff;width:8px;height:8px;position:absolute;bottom:-1px;right:-1px}.status-dot.online{background:#10b981}.workspace-content{min-height:600px}.content-sheet{border-radius:var(--radius-xl);border:1px solid var(--border);padding:var(--space-2xl);background:#fff;min-height:700px;box-shadow:0 1px 3px #00000005,0 4px 12px #00000008}@media (width<=1024px){.workspace-container{gap:var(--space-lg);grid-template-columns:220px 1fr}}@media (width<=768px){.workspace-container{grid-template-columns:1fr}.workspace-sidebar{padding:0;position:static}.sidebar-nav{scrollbar-width:none;padding-bottom:var(--space-md);flex-direction:row;overflow-x:auto}.sidebar-nav-item{white-space:nowrap}.content-sheet{padding:var(--space-lg)}.sidebar-footer{display:none}}.builder-profile{gap:var(--space-2xl);max-width:var(--max-width);padding:var(--space-xl);flex-direction:column;margin:0 auto;display:flex}.builder-identity{margin-bottom:var(--space-xl)}.identity-card{border-radius:var(--radius-2xl);padding:var(--space-2xl);gap:var(--space-xl);border:1px solid var(--border);background:#fff;flex-direction:column;display:flex;box-shadow:0 10px 30px #0000000d}.identity-main{gap:var(--space-2xl);align-items:flex-start;display:flex}.avatar-container{flex-shrink:0;position:relative}.builder-avatar{border-radius:var(--radius-2xl);object-fit:cover;width:160px;height:160px;box-shadow:var(--shadow-lg);border:4px solid #fff}.builder-status-dot{background:#22c55e;border:3px solid #fff;border-radius:50%;width:20px;height:20px;position:absolute;bottom:10px;right:10px}.identity-details{gap:var(--space-sm);flex-direction:column;flex-grow:1;display:flex}.builder-name{letter-spacing:-.04em;color:var(--text-main);margin:0;font-size:42px;font-weight:800}.identity-meta{gap:var(--space-lg);color:var(--text-muted);font-size:14px;font-weight:500;display:flex}.meta-item{align-items:center;gap:var(--space-xs);display:flex}.builder-bio{color:var(--text-main);max-width:600px;margin:var(--space-md) 0;font-size:18px;line-height:1.6}.builder-socials{gap:var(--space-md);margin-top:var(--space-sm);display:flex}.social-link{color:var(--text-muted);transition:color .2s}.social-link:hover{color:var(--brand-main)}.builder-stats{gap:var(--space-xl);padding:var(--space-xl) 0;border-top:1px solid var(--border-light);border-bottom:1px solid var(--border-light);grid-template-columns:repeat(4,1fr);display:grid}.stat-item{text-align:center;flex-direction:column;align-items:center;display:flex}.stat-value{color:var(--text-main);font-size:24px;font-weight:800}.stat-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:12px;font-weight:600}.identity-actions{gap:var(--space-md);align-items:center;display:flex}.profile-layout-grid{gap:var(--space-3xl);grid-template-columns:1fr 320px;display:grid}.profile-main-content,.profile-sidebar{gap:var(--space-3xl);flex-direction:column;display:flex}.profile-section{gap:var(--space-xl);flex-direction:column;display:flex}.section-header{justify-content:space-between;align-items:center;display:flex}.section-title{align-items:center;gap:var(--space-md);letter-spacing:-.02em;font-size:24px;font-weight:800;display:flex}.view-all{align-items:center;gap:var(--space-xs);color:var(--brand-main);font-size:14px;font-weight:600;text-decoration:none;display:flex}.builder-grid{gap:var(--space-xl);grid-template-columns:repeat(2,1fr);display:grid}.activity-container{background:var(--bg-secondary);padding:var(--space-xl);border-radius:var(--radius-xl)}.map-placeholder{border-radius:var(--radius-2xl);text-align:center;border:2px dashed var(--border);background:#f1f5f9;justify-content:center;align-items:center;height:300px;display:flex;position:relative;overflow:hidden}.map-placeholder:before{content:"";opacity:.5;background-image:radial-gradient(#cbd5e1 1px,#0000 1px);background-size:20px 20px;position:absolute;inset:0}.map-content{z-index:1;align-items:center;gap:var(--space-sm);padding:var(--space-xl);flex-direction:column;display:flex;position:relative}.map-icon{color:var(--brand-main);margin-bottom:var(--space-sm)}.map-btn{margin-top:var(--space-md);border:1px solid var(--border);border-radius:var(--radius-full);box-shadow:var(--shadow-sm);background:#fff;padding:10px 20px;font-weight:600}.sidebar-section{gap:var(--space-lg);flex-direction:column;display:flex}.sidebar-title{align-items:center;gap:var(--space-sm);letter-spacing:-.01em;font-size:18px;font-weight:700;display:flex}.skills-cloud{flex-wrap:wrap;gap:8px;display:flex}.skill-chip{border:1px solid var(--border);border-radius:var(--radius-full);color:var(--text-main);background:#fff;padding:6px 14px;font-size:13px;font-weight:600;box-shadow:0 2px 4px #00000005}.looking-for-list{gap:var(--space-sm);flex-direction:column;display:flex}.need-item{align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-lg);color:#9a3412;background:#fff7ed;font-size:14px;font-weight:600;display:flex}.need-dot{background:#f97316;border-radius:50%;width:8px;height:8px}.add-need-btn{justify-content:center;align-items:center;gap:var(--space-xs);margin-top:var(--space-xs);border:1px dashed var(--border);border-radius:var(--radius-lg);color:var(--text-muted);padding:10px;font-size:13px;font-weight:600;display:flex}.sidebar-communities{gap:var(--space-md);flex-direction:column;display:flex}.mini-community-card{gap:var(--space-md);padding:var(--space-sm);border-radius:var(--radius-lg);border:1px solid var(--border-light);background:#fff;align-items:center;display:flex}.mini-community-card img{border-radius:var(--radius-md);object-fit:cover;width:48px;height:48px}.mini-card-info h4{margin:0;font-size:14px;font-weight:700}.mini-card-info p{color:var(--text-muted);margin:0;font-size:12px}.collaborators-list{gap:var(--space-md);flex-direction:column;display:flex}.collaborator-card{gap:var(--space-md);padding:var(--space-sm);border-radius:var(--radius-lg);border:1px solid var(--border-light);background:#fff;display:flex}.collab-avatar{border-radius:var(--radius-full);object-fit:cover;width:40px;height:40px}.collab-info{flex-direction:column;display:flex}.collab-name{font-size:14px;font-weight:700}.collab-skill{color:var(--brand-main);font-size:12px;font-weight:600}.collab-project{color:var(--text-muted);margin-top:2px;font-size:11px}.view-all-btn{margin-top:var(--space-sm);background:var(--bg-secondary);border-radius:var(--radius-lg);color:var(--text-main);padding:10px;font-size:13px;font-weight:600}.primary-btn{background:var(--brand-main);color:#fff;border-radius:var(--radius-full);cursor:pointer;border:none;padding:12px 24px;font-weight:700;transition:transform .2s}.primary-btn:hover{filter:brightness(1.1);transform:translateY(-2px)}.secondary-btn{color:var(--text-main);border-radius:var(--radius-full);border:1px solid var(--border);cursor:pointer;background:#fff;padding:12px 24px;font-weight:700}.icon-btn{border:1px solid var(--border);border-radius:var(--radius-full);cursor:pointer;background:#fff;justify-content:center;align-items:center;width:44px;height:44px;display:flex}@media (width<=1024px){.profile-layout-grid{grid-template-columns:1fr}.profile-sidebar{order:2}}@media (width<=768px){.identity-main{text-align:center;align-items:center;gap:var(--space-lg);flex-direction:column}.builder-name{font-size:32px}.identity-meta{flex-wrap:wrap;justify-content:center}.builder-stats{grid-template-columns:repeat(2,1fr)}.identity-actions{justify-content:center}.builder-grid{grid-template-columns:1fr}}.practical-journey-page{max-width:var(--max-width);padding:var(--space-xl) var(--space-lg) var(--space-3xl);gap:var(--space-3xl);flex-direction:column;margin:0 auto;display:flex}.journey-hero{gap:var(--space-lg);flex-direction:column;margin-bottom:0;display:flex}.journey-meta{gap:var(--space-sm);display:flex}.journey-title{color:var(--text-main);letter-spacing:-.03em;margin-bottom:var(--space-sm);font-size:36px;font-weight:800}.journey-progress-module{gap:var(--space-sm);background:var(--bg-secondary);padding:var(--space-xl);border-radius:var(--radius-xl);flex-direction:column;display:flex}.progress-header{justify-content:space-between;align-items:baseline;display:flex}.phase-indicator{color:var(--text-main);font-size:18px;font-weight:700}.progress-bar-bg{border-radius:var(--radius-full);height:10px;margin-top:var(--space-xs);background:#0000000d;overflow:hidden}.progress-bar-fill{background:var(--text-main);border-radius:var(--radius-full);height:100%;transition:width .3s}.next-action-card{margin-top:var(--space-md);gap:var(--space-sm);flex-direction:column;display:flex}.next-action-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.1em;font-size:13px;font-weight:700}.next-action-btn{align-items:center;gap:var(--space-md);background:var(--text-main);color:#fff;border-radius:var(--radius-xl);cursor:pointer;border:none;width:fit-content;padding:16px 24px;font-size:18px;font-weight:700;transition:transform .2s;display:flex}.next-action-btn:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.journey-content-grid{gap:var(--space-3xl);grid-template-columns:1fr 340px;align-items:flex-start;display:grid}.journey-main,.journey-sidebar{gap:var(--space-2xl);flex-direction:column;display:flex}.journey-section{gap:var(--space-md);flex-direction:column;display:flex}.phases-list{gap:var(--space-sm);flex-direction:column;display:flex}.phase-item{align-items:center;gap:var(--space-md);padding:var(--space-md) var(--space-lg);border-radius:var(--radius-lg);border:1px solid var(--border);background:0 0;transition:all .2s;display:flex}.phase-item.active{border-color:var(--text-main);box-shadow:var(--shadow-sm);background:#fff}.phase-item.completed{opacity:.6;background:var(--bg-secondary);border-color:#0000}.phase-item.upcoming{opacity:.4;border-style:dashed}.phase-icon{color:var(--text-main);display:flex}.phase-item.completed .phase-icon{color:#10b981}.phase-text{color:var(--text-main);font-size:16px;font-weight:600}.steps-container{padding:var(--space-md) var(--space-xl);flex-direction:column;margin-bottom:0;display:flex}.step-row{align-items:center;gap:var(--space-lg);padding:var(--space-lg) 0;border-bottom:1px solid var(--bg-secondary);cursor:pointer;transition:all .2s;display:flex}.step-row:last-child{border-bottom:none}.step-row:hover{transform:translate(4px)}.step-row.completed{opacity:.4}.step-row.completed .step-text{text-decoration:line-through}.step-checkbox{margin-top:2px}.icon-todo{color:var(--border);transition:color .2s}.step-row:hover .icon-todo{color:var(--text-main)}.icon-done{color:#10b981}.step-text{color:var(--text-main);font-size:16px;font-weight:500}.resource-list{gap:var(--space-md);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.resource-list li{align-items:center;gap:var(--space-md);color:var(--text-main);font-size:15px;display:flex}.dot{background:var(--text-muted);border-radius:var(--radius-full);width:6px;height:6px}.start-project-card p{color:var(--text-muted);margin-bottom:var(--space-lg);font-size:14px;line-height:1.5}.primary-action-btn{background:var(--text-main);color:#fff;border-radius:var(--radius-full);align-items:center;gap:var(--space-sm);cursor:pointer;border:none;height:44px;padding:0 24px;font-weight:700;transition:transform .2s;display:flex}.primary-action-btn:hover{transform:scale(1.02)}.w-full{justify-content:center;width:100%}.phase-item{cursor:pointer;text-align:left}.practical-template-badge{color:#059669;border-radius:var(--radius-full);background:#ecfdf5;align-items:center;gap:4px;padding:3px 8px;font-size:11px;font-weight:700;display:inline-flex}.practical-stats-row{color:var(--text-muted);align-items:center;gap:6px;font-size:13px;display:flex}.phase-duration{color:var(--text-muted);font-size:13px;font-weight:400}.step-row{align-items:flex-start}.step-content{flex:1}.step-description{color:var(--text-muted);margin-top:4px;font-size:13px;line-height:1.5}.step-tips{color:var(--text-muted);margin:6px 0 0;padding-left:16px;font-size:12px;line-height:1.6}.step-duration{color:var(--text-muted);white-space:nowrap;flex-shrink:0;margin-top:3px;font-size:12px}.practical-communities{gap:var(--space-sm);flex-direction:column;display:flex}.practical-community-row{align-items:center;gap:10px;display:flex}.practical-comm-img{border-radius:var(--radius-md);object-fit:cover;width:32px;height:32px}.practical-comm-name{font-size:13px;font-weight:600}.secondary-action-btn{border:1px solid var(--border);color:var(--text-main);border-radius:var(--radius-full);align-items:center;gap:var(--space-sm);cursor:pointer;background:0 0;height:40px;padding:0 24px;font-size:14px;font-weight:700;transition:background .15s;display:flex}.secondary-action-btn:hover{background:var(--bg-secondary)}@media (width<=1024px){.journey-content-grid{grid-template-columns:1fr}.journey-sidebar{order:-1}}@media (width<=768px){.journey-title{font-size:24px}.next-action-btn{padding:12px 18px;font-size:15px}.journey-content-grid{gap:var(--space-xl)}}.discussion-page{max-width:var(--max-width);padding-bottom:var(--space-2xl);margin:0 auto}.discussion-not-found{padding:var(--space-2xl);text-align:center}.back-link{color:var(--brand-main);margin-top:var(--space-md);align-items:center;gap:6px;font-size:14px;text-decoration:none;display:inline-flex}.discussion-layout{gap:var(--space-xl);grid-template-columns:1fr 280px;align-items:start;display:grid}.discussion-post-card{border:1px solid var(--border);border-radius:var(--radius-xl);padding:var(--space-xl);box-shadow:var(--shadow-sm);margin-bottom:var(--space-lg);background:#fff;gap:16px;display:flex}.post-vote-col{flex-direction:column;flex-shrink:0;align-items:center;gap:4px;padding-top:2px;display:flex}.post-vote-btn{cursor:pointer;color:var(--text-muted);border-radius:var(--radius-md);background:0 0;border:none;align-items:center;padding:4px;transition:color .15s,background .15s;display:flex}.post-vote-btn:hover,.post-vote-btn.voted{color:var(--brand-main);background:var(--brand-bg)}.post-vote-count{color:var(--text-secondary);font-size:13px;font-weight:700}.post-body{flex:1;min-width:0}.post-meta-row{margin-bottom:var(--space-sm);flex-wrap:wrap;align-items:center;gap:8px;display:flex}.post-time{color:var(--text-muted);margin-left:auto;font-size:12px}.post-title{letter-spacing:-.02em;margin-bottom:var(--space-md);font-size:22px;font-weight:800;line-height:1.25}.post-author-row{margin-bottom:var(--space-md);align-items:center;gap:8px;display:flex}.post-avatar{object-fit:cover;border-radius:50%;width:28px;height:28px}.post-author{color:var(--text-secondary);font-size:13px;font-weight:600}.post-content{color:var(--text-main);margin-bottom:var(--space-md);font-size:15px;line-height:1.65}.post-tags{flex-wrap:wrap;gap:6px;display:flex}.post-tag{color:var(--brand-main);background:var(--brand-bg,#f0f4ff);border-radius:var(--radius-full);padding:3px 9px;font-size:12px;font-weight:600}.thread-type-badge{border-radius:var(--radius-full);letter-spacing:.01em;align-items:center;gap:4px;padding:3px 8px;font-size:11px;font-weight:700;display:inline-flex}.thread-trending-badge{color:#f59e0b;border-radius:var(--radius-full);background:#fffbeb;align-items:center;gap:3px;padding:3px 8px;font-size:11px;font-weight:700;display:inline-flex}.replies-header{color:var(--text-secondary);padding:0 0 var(--space-md);border-bottom:1px solid var(--border-light);margin-bottom:var(--space-md);align-items:center;gap:8px;font-size:14px;font-weight:700;display:flex}.no-comments{color:var(--text-muted);padding:var(--space-lg) 0;text-align:center;font-size:14px}.comments-thread{gap:var(--space-md);margin-bottom:var(--space-xl);flex-direction:column;display:flex}.comment-item{gap:0;display:flex}.comment-item.nested{margin-left:40px}.comment-nest-line{color:var(--text-muted);flex-shrink:0;margin-right:8px;padding-top:6px}.comment-main{border:1px solid var(--border-light);border-radius:var(--radius-lg);padding:var(--space-md) var(--space-lg);background:#fff;flex:1}.comment-header{margin-bottom:var(--space-sm);align-items:center;gap:8px;display:flex}.comment-avatar{object-fit:cover;border-radius:50%;width:24px;height:24px}.comment-author{font-size:13px;font-weight:700}.comment-time{color:var(--text-muted);margin-left:auto;font-size:12px}.comment-body{color:var(--text-main);margin-bottom:var(--space-sm);font-size:14px;line-height:1.6}.comment-actions{align-items:center;gap:var(--space-sm);display:flex}.comment-vote-btn{cursor:pointer;color:var(--text-muted);border-radius:var(--radius-sm);background:0 0;border:none;align-items:center;gap:4px;padding:3px 6px;font-size:12px;font-weight:600;transition:color .15s;display:inline-flex}.comment-vote-btn:hover,.comment-vote-btn.voted{color:var(--brand-main)}.comment-reply-btn{cursor:pointer;color:var(--text-muted);border-radius:var(--radius-sm);background:0 0;border:none;padding:3px 6px;font-size:12px;font-weight:600}.comment-reply-btn:hover{color:var(--text-main)}.reply-form{border:1px solid var(--border);border-radius:var(--radius-xl);padding:var(--space-md) var(--space-lg);box-shadow:var(--shadow-sm);background:#fff;align-items:flex-start;gap:12px;display:flex}.reply-form.nested-reply-form{margin-top:var(--space-md);border-radius:var(--radius-lg);box-shadow:none;border-color:var(--border-light)}.reply-form-avatar{object-fit:cover;border-radius:50%;flex-shrink:0;width:32px;height:32px}.reply-form-avatar.small{width:24px;height:24px}.reply-input-wrap{flex:1}.reply-input-wrap textarea{border:1px solid var(--border);border-radius:var(--radius-md);width:100%;padding:var(--space-sm) var(--space-md);resize:vertical;box-sizing:border-box;outline:none;font-family:inherit;font-size:14px;transition:border-color .15s}.reply-input-wrap textarea:focus{border-color:var(--brand-main)}.reply-form-actions{justify-content:flex-end;gap:var(--space-sm);margin-top:8px;display:flex}.reply-submit-btn{background:var(--brand-main);color:#fff;border-radius:var(--radius-full);cursor:pointer;border:none;align-items:center;gap:6px;padding:7px 16px;font-size:13px;font-weight:700;transition:opacity .15s;display:inline-flex}.reply-submit-btn:disabled{opacity:.4;cursor:not-allowed}.reply-cancel-btn{cursor:pointer;color:var(--text-muted);border-radius:var(--radius-full);background:0 0;border:none;padding:7px 10px;font-size:13px;font-weight:600}.discussion-sidebar{gap:var(--space-md);flex-direction:column;display:flex;position:sticky;top:80px}.disc-sidebar-card{border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);background:#fff;overflow:hidden}.disc-comm-img{object-fit:cover;width:100%;height:80px}.disc-comm-info{padding:var(--space-md) var(--space-lg)}.disc-comm-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin-bottom:2px;font-size:11px;font-weight:700}.disc-comm-name{margin-bottom:4px;font-size:16px;font-weight:800}.disc-comm-meta{color:var(--text-muted);margin-bottom:var(--space-sm);font-size:12px}.disc-comm-link{color:var(--brand-main);align-items:center;gap:4px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.disc-sidebar-heading{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);padding:var(--space-md) var(--space-lg) 0;margin-bottom:var(--space-sm);font-size:12px;font-weight:700}.disc-meta-list{padding:0 var(--space-lg) var(--space-md);flex-direction:column;gap:8px;display:flex}.disc-meta-row{justify-content:space-between;align-items:center;font-size:13px;display:flex}.disc-meta-label{color:var(--text-muted);font-weight:500}.disc-practical-link{color:inherit;padding:0 var(--space-lg) var(--space-md);text-decoration:none;display:block}.disc-practical-img{object-fit:cover;border-radius:var(--radius-md);width:100%;height:72px;margin-bottom:var(--space-sm)}.disc-practical-info{flex-direction:column;gap:2px;display:flex}.disc-practical-type{text-transform:uppercase;letter-spacing:.08em;color:var(--brand-main);font-size:10px;font-weight:700}.disc-practical-title{margin:0;font-size:14px;font-weight:700;line-height:1.3}.disc-practical-meta{color:var(--text-muted);font-size:12px}.disc-practical-link:hover .disc-practical-title{color:var(--brand-main)}.disc-tags-list{padding:0 var(--space-lg) var(--space-md);flex-wrap:wrap;gap:6px;display:flex}@media (width<=768px){.discussion-layout{grid-template-columns:1fr}.discussion-sidebar{display:none}.discussion-post-card{padding:var(--space-md);gap:10px}.post-vote-col{flex-direction:row;align-items:center;padding-top:0}.post-title{font-size:18px}.comment-item.nested{margin-left:20px}.reply-form{padding:var(--space-md)}}.profile-view{max-width:var(--max-width);padding-bottom:var(--space-2xl);gap:var(--space-xl);flex-direction:column;margin:0 auto;display:flex}.profile-view-not-found{padding:var(--space-2xl);text-align:center}.pv-back-link{color:var(--brand-main);margin-top:var(--space-md);align-items:center;gap:6px;font-size:14px;text-decoration:none;display:inline-flex}.pv-header-card{border:1px solid var(--border);border-radius:var(--radius-xl);padding:var(--space-xl);box-shadow:var(--shadow-sm);align-items:flex-start;gap:var(--space-xl);background:#fff;display:flex}.pv-avatar{border-radius:var(--radius-xl);object-fit:cover;width:88px;height:88px;box-shadow:var(--shadow-md);flex-shrink:0}.pv-identity{flex:1;min-width:0}.pv-name{letter-spacing:-.02em;margin-bottom:4px;font-size:26px;font-weight:800}.pv-location{color:var(--text-muted);align-items:center;gap:4px;margin-bottom:8px;font-size:13px;display:flex}.pv-bio{color:var(--text-secondary);max-width:520px;font-size:14px;line-height:1.6}.pv-actions{gap:var(--space-sm);flex-shrink:0;display:flex}.pv-btn-primary{background:var(--brand-main,#111);color:#fff;border-radius:var(--radius-full);cursor:pointer;white-space:nowrap;border:none;padding:9px 20px;font-size:14px;font-weight:700}.pv-btn-secondary{border:1px solid var(--border);color:var(--text-main);border-radius:var(--radius-full);cursor:pointer;white-space:nowrap;background:0 0;padding:9px 20px;font-size:14px;font-weight:600}.pv-layout{gap:var(--space-xl);grid-template-columns:1fr 260px;align-items:start;display:grid}.pv-main{gap:var(--space-xl);flex-direction:column;display:flex}.pv-section{gap:var(--space-md);flex-direction:column;display:flex}.pv-section-title{color:var(--text-main);align-items:center;gap:8px;font-size:15px;font-weight:800;display:flex}.pv-cards-grid{gap:var(--space-md);grid-template-columns:repeat(2,1fr);display:grid}.pv-item-card{border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-md);color:inherit;background:#fff;align-items:center;gap:12px;text-decoration:none;transition:box-shadow .15s;display:flex}.pv-item-card:hover{box-shadow:var(--shadow-md)}.pv-item-img{border-radius:var(--radius-md);object-fit:cover;flex-shrink:0;width:48px;height:48px}.pv-item-title{margin-bottom:2px;font-size:13px;font-weight:700;display:block}.pv-item-meta{color:var(--text-muted);font-size:11px}.pv-sidebar{gap:var(--space-md);flex-direction:column;display:flex;position:sticky;top:80px}.pv-sidebar-card{border:1px solid var(--border);border-radius:var(--radius-xl);padding:var(--space-lg);box-shadow:var(--shadow-sm);gap:var(--space-md);background:#fff;flex-direction:column;display:flex}.pv-sidebar-heading{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);align-items:center;gap:6px;font-size:12px;font-weight:800;display:flex}.pv-chips{flex-wrap:wrap;gap:6px;display:flex}.pv-chip{background:var(--bg-secondary);color:var(--text-main);border-radius:var(--radius-full);padding:4px 10px;font-size:12px;font-weight:600}.pv-looking-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.pv-looking-list li{color:var(--text-secondary);padding-left:14px;font-size:13px;position:relative}.pv-looking-list li:before{content:"·";color:var(--text-muted);position:absolute;left:4px}.pv-comm-list{flex-direction:column;gap:10px;display:flex}.pv-comm-row{color:inherit;border-radius:var(--radius-md);align-items:center;gap:10px;padding:4px;text-decoration:none;transition:background .15s;display:flex}.pv-comm-row:hover{background:var(--bg-secondary)}.pv-comm-img{border-radius:var(--radius-md);object-fit:cover;flex-shrink:0;width:36px;height:36px}.pv-comm-name{font-size:13px;font-weight:700}.pv-comm-meta{color:var(--text-muted);font-size:11px}@media (width<=768px){.pv-header-card{gap:var(--space-md);flex-direction:column}.pv-actions{width:100%}.pv-btn-primary,.pv-btn-secondary{text-align:center;flex:1;justify-content:center}.pv-layout{grid-template-columns:1fr}.pv-sidebar{order:-1;position:static}.pv-cards-grid{grid-template-columns:1fr}}.identity-page{max-width:860px;padding:var(--space-lg) 0 var(--space-3xl);margin:0 auto}.identity-back{color:var(--text-muted);cursor:pointer;margin-bottom:var(--space-xl);background:0 0;border:none;align-items:center;gap:6px;padding:0;font-size:13px;font-weight:600;transition:color .15s;display:inline-flex}.identity-back:hover{color:var(--text-main)}.identity-header-card{background:var(--bg-sheet);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-2xl);text-align:center;align-items:center;gap:var(--space-md);margin-bottom:var(--space-2xl);flex-direction:column;display:flex}.identity-avatar{object-fit:cover;border-radius:50%;width:72px;height:72px}.identity-name{letter-spacing:-.02em;margin:0;font-size:26px;font-weight:800}.identity-statement{color:var(--text-muted);max-width:520px;font-size:16px;font-style:italic;line-height:1.6}.identity-meta-row{gap:var(--space-lg);flex-wrap:wrap;justify-content:center;display:flex}.identity-meta-item{color:var(--text-muted);align-items:center;gap:5px;font-size:13px;display:flex}.identity-tags{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.identity-tag{color:var(--text-muted);background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-full);padding:4px 12px;font-size:12px;font-weight:600}.identity-section{margin-bottom:var(--space-2xl)}.identity-section-title{text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);margin-bottom:var(--space-lg);font-size:13px;font-weight:800}.timeline{flex-direction:column;gap:0;display:flex;position:relative}.timeline:before{content:"";background:var(--border);width:1px;position:absolute;top:8px;bottom:8px;left:19px}.timeline-item{gap:var(--space-md);padding:var(--space-sm) 0;display:flex;position:relative}.timeline-icon{background:var(--bg-sheet);border:1px solid var(--border);width:40px;height:40px;color:var(--text-muted);z-index:1;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.timeline-item--practical .timeline-icon{color:#059669;background:#f0fdf4;border-color:#d1fae5}.timeline-item--role .timeline-icon{color:#7c3aed;background:#f5f3ff;border-color:#ede9fe}.timeline-item--goal .timeline-icon{color:#d97706;background:#fffbeb;border-color:#fde68a}.timeline-item--reflection .timeline-icon{color:#2563eb;background:#eff6ff;border-color:#bfdbfe}.timeline-item--skill .timeline-icon{color:#db2777;background:#fdf2f8;border-color:#fbcfe8}.timeline-content{flex-direction:column;gap:2px;padding:10px 0;display:flex}.timeline-title{color:var(--text-main);font-size:14px;font-weight:700}.timeline-subtitle{color:var(--text-muted);font-size:13px}.timeline-date{color:var(--text-muted);margin-top:2px;font-size:11px}.roles-list{flex-direction:column;gap:0;display:flex}.role-row{align-items:center;gap:var(--space-md);padding:var(--space-md) 0;border-bottom:1px solid var(--border);display:flex}.role-row:last-child{border-bottom:none}.role-title{color:var(--text-main);flex:1;font-size:15px;font-weight:700}.role-org{color:var(--text-muted);font-size:13px}.role-since{color:var(--text-muted);white-space:nowrap;font-size:12px}.reflections-list{gap:var(--space-lg);flex-direction:column;display:flex}.identity-quote{background:var(--bg-secondary);border-radius:var(--radius-md);padding:var(--space-lg);margin:0}.identity-quote p{color:var(--text-main);margin-bottom:var(--space-sm);font-size:15px;font-style:italic;line-height:1.65}.identity-quote cite{color:var(--text-muted);text-align:right;font-size:12px;font-style:normal;font-weight:600;display:block}.learning-list{gap:var(--space-sm);flex-wrap:wrap;list-style:none;display:flex}.learning-item{border-radius:var(--radius-full);border:1px solid var(--border);padding:6px 14px;font-size:13px;font-weight:600}.learning-item--done{color:#059669;background:#f0fdf4;border-color:#d1fae5}.learning-item--want{background:var(--bg-secondary);color:var(--text-muted);border-color:var(--border)}.goals-list{flex-direction:column;gap:0;display:flex}.goal-row{align-items:flex-start;gap:var(--space-md);padding:var(--space-md) 0;border-bottom:1px solid var(--border);display:flex}.goal-row:last-child{border-bottom:none}.goal-check{color:var(--text-muted);flex-shrink:0;width:20px;font-size:16px}.goal-text{color:var(--text-main);font-size:14px;font-weight:600;line-height:1.5}.goal-row--done .goal-check{color:#22c55e}.goal-row--done .goal-text{color:var(--text-muted);text-decoration:line-through}@media (width<=768px){.identity-page{padding-top:var(--space-md)}.identity-header-card{padding:var(--space-xl) var(--space-md)}.identity-name{font-size:22px}.identity-statement{font-size:14px}}.practicals-index{max-width:var(--max-width);padding:var(--space-xl) var(--space-lg);margin:0 auto}.header-main{margin-bottom:var(--space-xl);justify-content:space-between;align-items:flex-end;display:flex}.header-search{align-items:center;display:flex;position:relative}.search-icon{left:var(--space-md);color:var(--text-muted);position:absolute}.header-search input{border-radius:var(--radius-full);border:1px solid var(--border);width:300px;box-shadow:var(--shadow-sm);background:#fff;padding:12px 16px 12px 48px;font-family:inherit;font-size:14px;transition:all .2s}.header-search input:focus{border-color:var(--text-main);box-shadow:var(--shadow-md);outline:none}.category-icons-scroller{align-items:center;gap:var(--space-xl);padding:var(--space-sm) 0 var(--space-md);scrollbar-width:none;display:flex;overflow-x:auto}.category-icons-scroller::-webkit-scrollbar{display:none}.category-icon-btn{align-items:center;gap:var(--space-sm);cursor:pointer;opacity:.6;background:0 0;border:none;flex-direction:column;min-width:70px;padding:0;transition:all .2s;display:flex}.category-icon-btn:hover,.category-icon-btn.active{opacity:1}.icon-circle{border-radius:var(--radius-full);width:48px;height:48px;color:var(--text-main);justify-content:center;align-items:center;transition:transform .2s cubic-bezier(.2,.8,.2,1);display:flex}.category-icon-btn:hover .icon-circle{transform:scale(1.1)}.category-icon-btn.active .icon-circle{box-shadow:0 0 0 2px var(--text-main)}.category-icon-btn span{color:var(--text-main);font-size:12px;font-weight:600}.category-divider{background:var(--border);width:1px;height:40px;margin:0 var(--space-sm)}.practicals-wall{border-radius:var(--radius-xl);padding:var(--space-2xl) var(--space-xl);margin-bottom:var(--space-xl);background-color:#f4f1ea;background-image:radial-gradient(#0000000a 1px,#0000 1px);background-size:8px 8px;border:1px solid #e5e0d8;box-shadow:inset 0 2px 10px #00000005}.practicals-grid{column-count:3;column-gap:40px;width:100%}.masonry-item{break-inside:avoid;width:100%;margin-bottom:50px;display:inline-block}.masonry-item:nth-child(3n){margin-top:30px}.masonry-item:nth-child(4n){margin-top:-15px}.no-results{padding:var(--space-3xl) 0;text-align:center;color:var(--text-muted)}@media (width<=1024px){.practicals-grid{column-count:2}}@media (width<=768px){.header-main{align-items:flex-start;gap:var(--space-md);flex-direction:column}.header-search input{width:100%}.practicals-grid{column-count:1}}
