*{box-sizing:border-box;margin:0;padding:0}:root{--fossee-red:#c0392b;--fossee-dark:#1a1a2e;--fossee-gray:#f4f4f4;--fossee-text:#333;--fossee-muted:#666;--fossee-white:#fff;--border:#e0e0e0;--radius:10px;--shadow:0 2px 12px #00000014}body{background-color:var(--fossee-gray);color:var(--fossee-text);font-family:Segoe UI,sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button{cursor:pointer;border:none;outline:none}.navbar{z-index:100;background:linear-gradient(90deg,#1a1a2e 0%,#16213e 100%);justify-content:space-between;align-items:center;height:62px;padding:0 28px;display:flex;position:fixed;top:0;left:0;right:0;box-shadow:0 2px 12px #0006}.nav-brand a{color:#fff;letter-spacing:.4px;align-items:center;gap:8px;font-size:1.15rem;font-weight:700;display:flex}.nav-brand a:before{content:"⚙";color:var(--fossee-red);font-size:1.1rem}.nav-links{align-items:center;gap:4px;margin:0;padding:0;list-style:none;display:flex}.nav-links li a{color:#ffffffbf;border-radius:6px;align-items:center;gap:6px;padding:7px 13px;font-size:.88rem;font-weight:500;transition:background .2s,color .2s;display:flex}.nav-links li a:hover{color:#fff;background:#ffffff14}.nav-links li a.active{color:#fff;background:#ffffff1a}.nav-login{color:#fff!important;background:0 0!important;border:1.5px solid #ffffff59!important;border-radius:6px!important;padding:7px 18px!important;font-size:.88rem!important;font-weight:500!important;transition:background .2s,border-color .2s!important}.nav-login:hover{background:#ffffff1a!important;border-color:#ffffffb3!important}.nav-register{background:var(--fossee-red)!important;color:#fff!important;border:none!important;border-radius:6px!important;padding:7px 18px!important;font-size:.88rem!important;font-weight:600!important;transition:background .2s,transform .1s!important}.nav-register:hover{background:#a93226!important;transform:translateY(-1px)!important}.nav-profile{background:var(--fossee-red)!important;color:#fff!important;border-radius:20px!important;align-items:center!important;gap:7px!important;padding:7px 16px!important;font-size:.88rem!important;font-weight:500!important;transition:background .2s!important;display:flex!important}.nav-profile:hover{background:#a93226!important}.hamburger{color:#fff;cursor:pointer;background:0 0;border:none;border-radius:6px;padding:6px;transition:background .2s;display:none}.hamburger:hover{background:#ffffff1a}@media (width<=768px){.navbar{padding:0 16px}.hamburger{justify-content:center;align-items:center;display:flex}.nav-links{background:#16213e;border-top:1px solid #ffffff14;flex-direction:column;align-items:stretch;gap:4px;padding:12px 16px 20px;display:none;position:absolute;top:62px;left:0;right:0;box-shadow:0 8px 24px #0000004d}.nav-links.open{display:flex}.nav-links li{width:100%}.nav-links li a{color:#fffc;border-radius:8px;padding:12px 14px;font-size:.95rem;display:flex}.nav-links li a:hover{color:#fff;background:#ffffff14}.nav-login{text-align:center!important;justify-content:center!important;margin-top:8px!important;padding:12px 14px!important;font-size:.95rem!important}.nav-register{text-align:center!important;border-radius:8px!important;justify-content:center!important;padding:12px 14px!important;font-size:.95rem!important}.nav-profile{border-radius:8px!important;justify-content:center!important;margin-top:8px!important;padding:12px 14px!important;font-size:.95rem!important}}@media (width<=480px){.nav-brand a{font-size:1rem}}.nav-logout{color:#ffffffbf;cursor:pointer;white-space:nowrap;background:0 0;border:1.5px solid #fff3;border-radius:6px;align-items:center;gap:7px;padding:7px 14px;font-size:.88rem;font-weight:500;transition:background .2s,color .2s;display:flex}.nav-logout:hover{color:#fff;background:#ffffff14;border-color:#fff6}@media (width<=768px){.nav-logout{border-radius:8px;justify-content:center;width:100%;margin-top:4px;padding:12px 14px;font-size:.95rem}}.footer{background:var(--fossee-dark);color:#fff9;margin-top:60px;padding:28px 24px}.footer-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;max-width:1100px;margin:0 auto;display:flex}.footer-brand strong{color:#fff;margin-bottom:4px;font-size:1rem;display:block}.footer-brand p{font-size:.8rem;line-height:1.6}.footer-links{flex-wrap:wrap;align-items:center;gap:10px;font-size:.82rem;display:flex}.footer-links a{color:#ffffffb3;transition:color .2s}.footer-links a:hover{color:#fff}@media (width<=600px){.footer-inner{text-align:center;flex-direction:column}}.workshop-card{background:var(--fossee-white);border-radius:var(--radius);box-shadow:var(--shadow);border:1px solid #0000;flex-direction:column;gap:14px;padding:20px;transition:transform .2s,box-shadow .2s;display:flex}.workshop-card:hover{border-color:var(--border);transform:translateY(-3px);box-shadow:0 8px 24px #0000001f}.card-top{justify-content:space-between;align-items:center;display:flex}.type-tag{text-transform:uppercase;letter-spacing:.5px;color:#1a73e8;background:#e8f0fe;border-radius:20px;padding:3px 10px;font-size:.72rem;font-weight:700}.status-badge{border-radius:20px;padding:3px 10px;font-size:.72rem;font-weight:700}.status-upcoming{color:#2e7d32;background:#e8f5e9}.status-full{color:#c62828;background:#fdecea}.status-pending{color:#f57f17;background:#fff8e1}.card-title{color:var(--fossee-dark);font-size:1rem;font-weight:700;line-height:1.4}.card-meta{flex-direction:column;gap:6px;display:flex}.meta-row{color:var(--fossee-muted);align-items:center;gap:7px;font-size:.85rem;display:flex}.seats-info{flex-direction:column;gap:6px;display:flex}.seats-text{color:var(--fossee-muted);justify-content:space-between;font-size:.8rem;display:flex}.progress-bar{background:#eee;border-radius:99px;height:6px;overflow:hidden}.progress-fill{border-radius:99px;height:100%;transition:width .4s}.book-btn{text-align:center;background:var(--fossee-red);color:#fff;border-radius:8px;margin-top:auto;padding:11px;font-size:.9rem;font-weight:600;transition:background .2s,transform .1s;display:block}.book-btn:hover{background:#a93226}.book-btn:active{transform:scale(.97)}.book-btn.disabled{color:#888;pointer-events:none;background:#ccc}.home-page{padding-top:60px}.hero{text-align:center;background:linear-gradient(135deg,#1a1a2e 0%,#16213e 60%,#c0392b 100%);padding:72px 24px}.hero-content{max-width:640px;margin:0 auto}.hero-content h1{color:#fff;margin-bottom:16px;font-size:2.2rem;font-weight:700;line-height:1.3}.hero-content p{color:#fffc;margin-bottom:32px;font-size:1rem;line-height:1.8}.hero-actions{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.hero-btn{border-radius:8px;padding:12px 26px;font-size:.95rem;font-weight:600;transition:all .2s;display:inline-block}.hero-btn.primary{background:var(--fossee-red);color:#fff}.hero-btn.primary:hover{background:#a93226;transform:translateY(-1px)}.hero-btn.outline{color:#fff;background:0 0;border:2px solid #ffffff80}.hero-btn.outline:hover{background:#ffffff1a;border-color:#fff}.workshops-section{max-width:1100px;margin:0 auto;padding:48px 20px 60px}.section-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:24px;display:flex}.section-header h2{color:var(--fossee-dark);font-size:1.5rem;font-weight:700}.search-input{border:1.5px solid var(--border);width:240px;color:var(--fossee-text);background:#fff;border-radius:8px;padding:10px 16px;font-size:.9rem;transition:border-color .2s}.search-input:focus{border-color:var(--fossee-red);outline:none}.filter-tabs{flex-wrap:wrap;gap:8px;margin-bottom:32px;display:flex}.filter-tab{border:1.5px solid var(--border);color:var(--fossee-muted);cursor:pointer;background:#fff;border-radius:20px;padding:7px 18px;font-size:.85rem;font-weight:500;transition:all .2s}.filter-tab:hover{border-color:var(--fossee-red);color:var(--fossee-red)}.filter-tab.active{background:var(--fossee-red);color:#fff;border-color:var(--fossee-red)}.cards-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;display:grid}.no-results{text-align:center;color:var(--fossee-muted);padding:80px 20px}.no-results p{font-size:1rem}@media (width<=768px){.hero-content h1{font-size:1.6rem}.hero-content p{font-size:.95rem}.hero-btn{padding:11px 20px;font-size:.9rem}.section-header{flex-direction:column;align-items:flex-start}.search-input{width:100%}.workshops-section{padding:32px 16px 48px}}@media (width<=480px){.hero{padding:52px 16px}.hero-content h1{font-size:1.4rem}.hero-actions{flex-direction:column;align-items:center}.hero-btn{text-align:center;width:100%;max-width:280px}.cards-grid{grid-template-columns:1fr}.filter-tabs{gap:6px}.filter-tab{padding:6px 14px;font-size:.8rem}}.auth-page{background:linear-gradient(135deg,#1a1a2e 0%,#16213e 100%);justify-content:center;align-items:center;min-height:100vh;padding:24px 16px;display:flex}.auth-card{background:var(--fossee-white);border-radius:16px;width:100%;max-width:420px;padding:40px 36px;box-shadow:0 8px 32px #0003}.auth-header{text-align:center;margin-bottom:28px}.auth-header h1{color:var(--fossee-dark);margin-bottom:6px;font-size:1.6rem}.auth-header p{color:var(--fossee-muted);font-size:.9rem}.auth-error{color:#c0392b;background:#fdecea;border:1px solid #f5c6c2;border-radius:8px;margin-bottom:16px;padding:10px 14px;font-size:.9rem}.auth-form{flex-direction:column;gap:18px;display:flex}.form-group{flex-direction:column;gap:6px;display:flex}.form-group label{color:var(--fossee-text);font-size:.85rem;font-weight:600}.form-group input{border:1.5px solid var(--border);width:100%;color:var(--fossee-text);border-radius:8px;padding:12px 14px;font-size:.95rem;transition:border-color .2s}.form-group input:focus{border-color:var(--fossee-red);outline:none}.password-wrap{position:relative}.password-wrap input{padding-right:60px}.toggle-pw{color:var(--fossee-red);cursor:pointer;background:0 0;border:none;font-size:.8rem;font-weight:600;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.btn-primary-full{background:var(--fossee-red);color:#fff;border-radius:8px;width:100%;margin-top:4px;padding:13px;font-size:1rem;font-weight:600;transition:background .2s,transform .1s}.btn-primary-full:hover{background:#a93226}.btn-primary-full:active{transform:scale(.98)}.auth-footer{color:var(--fossee-muted);justify-content:center;gap:10px;margin-top:20px;font-size:.88rem;display:flex}.auth-footer a{color:var(--fossee-red)}.auth-footer a:hover{text-decoration:underline}@media (width<=480px){.auth-card{padding:28px 20px}}.register-card{max-width:500px!important}.step-indicator{justify-content:center;align-items:center;gap:0;margin-bottom:24px;display:flex}.step-dot{background:var(--border);width:32px;height:32px;color:var(--fossee-muted);border-radius:50%;justify-content:center;align-items:center;font-size:.85rem;font-weight:700;transition:all .3s;display:flex}.step-dot.done{background:var(--fossee-red);color:#fff}.step-line{background:var(--border);width:60px;height:2px}.form-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.field-error{color:#c0392b;margin-top:2px;font-size:.78rem}.form-group select{border:1.5px solid var(--border);color:var(--fossee-text);background:#fff;border-radius:8px;width:100%;padding:12px 14px;font-size:.95rem}.form-group select:focus{border-color:var(--fossee-red);outline:none}.reg-btn-row{align-items:center;gap:12px;display:flex}.btn-back{border:1.5px solid var(--border);color:var(--fossee-muted);background:0 0;border-radius:8px;padding:13px 18px;font-size:.95rem;font-weight:600;transition:all .2s}.btn-back:hover{border-color:var(--fossee-dark);color:var(--fossee-dark)}@media (width<=480px){.form-row{grid-template-columns:1fr}}.profile-page{max-width:900px;margin:0 auto;padding:80px 20px 40px}.profile-hero{background:var(--fossee-white);border-radius:var(--radius);box-shadow:var(--shadow);flex-wrap:wrap;align-items:center;gap:20px;margin-bottom:24px;padding:24px 28px;display:flex}.avatar{background:var(--fossee-red);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:64px;height:64px;font-size:1.4rem;font-weight:700;display:flex}.profile-name{flex:1}.profile-name h2{color:var(--fossee-dark);margin-bottom:4px;font-size:1.4rem}.position-badge{color:#1565c0;background:#eaf4ff;border-radius:20px;padding:3px 10px;font-size:.78rem;font-weight:600}.edit-btn{background:var(--fossee-dark);color:#fff;border-radius:8px;align-items:center;gap:6px;padding:8px 16px;font-size:.88rem;font-weight:500;transition:background .2s;display:flex}.edit-btn:hover{background:#2c2c54}.profile-grid{grid-template-columns:1fr 1fr;gap:20px;display:grid}.info-card,.workshops-card{background:var(--fossee-white);border-radius:var(--radius);box-shadow:var(--shadow);padding:24px}.info-card h3,.workshops-card h3{color:var(--fossee-dark);border-bottom:2px solid var(--fossee-gray);margin-bottom:16px;padding-bottom:10px;font-size:1rem;font-weight:700}.info-list{flex-direction:column;gap:12px;display:flex}.info-row{flex-direction:column;gap:2px;display:flex}.info-label{color:var(--fossee-muted);text-transform:uppercase;letter-spacing:.5px;font-size:.75rem}.info-value{color:var(--fossee-text);font-size:.95rem;font-weight:500}.workshop-list{flex-direction:column;gap:12px;display:flex}.workshop-row{background:var(--fossee-gray);border-radius:8px;justify-content:space-between;align-items:center;padding:12px;display:flex}.workshop-info{flex-direction:column;gap:2px;display:flex}.workshop-type{color:var(--fossee-dark);font-size:.9rem;font-weight:600}.workshop-date{color:var(--fossee-muted);font-size:.78rem}.badge{border-radius:20px;padding:4px 12px;font-size:.78rem;font-weight:600}.badge.confirmed{color:#2e7d32;background:#e8f5e9}.badge.pending{color:#f57f17;background:#fff8e1}.no-workshops{color:var(--fossee-muted);font-size:.9rem}@media (width<=768px){.profile-grid{grid-template-columns:1fr}.profile-hero{text-align:center;flex-direction:column}}
