@keyframes slideIn{0%{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}@keyframes filmFade{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes filmZoom{0%{transform:scale(1)}to{transform:scale(1.08)}}@keyframes modalSlide{0%{opacity:0;transform:translateY(20px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.timeline{position:relative;padding-left:40px}.timeline::before{content:"";position:absolute;left:15px;top:0;bottom:0;width:2px;background:linear-gradient(to bottom,var(--accent),rgba(var(--accent-rgb, 201, 169, 110),.1));border-radius:2px}.timeline-item{position:relative;margin-bottom:32px;animation:slideIn .5s ease forwards;opacity:0}.timeline-dot{position:absolute;left:-33px;top:20px;width:12px;height:12px;background:var(--accent);border-radius:50%;border:3px solid var(--bg);box-shadow:0 0 12px rgba(var(--accent-rgb, 201, 169, 110),.4);z-index:1}.timeline-card{background:var(--bg-card);border:1px solid rgba(255,255,255,.06);border-radius:var(--radius);overflow:hidden;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;cursor:pointer}.timeline-card:hover{border-color:rgba(var(--accent-rgb, 201, 169, 110),.15);transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,.3)}.timeline-card:active{transform:scale(.98);transition:transform .1s ease}.timeline-photo{width:100%;aspect-ratio:16/10;object-fit:cover;display:block}.timeline-photo-placeholder{width:100%;aspect-ratio:16/10;display:flex;align-items:center;justify-content:center;font-size:64px;background:linear-gradient(135deg,rgba(var(--accent-rgb, 201, 169, 110),.06),rgba(240,124,110,.04))}.timeline-info{padding:16px 20px 20px}.timeline-date{font-size:11px;color:var(--accent-light, var(--text-muted));font-weight:500;letter-spacing:1px;text-transform:uppercase;margin-bottom:4px;opacity:.7}.timeline-title{font-family:"Playfair Display",serif;font-size:17px;font-weight:600;margin-bottom:8px;line-height:1.35;color:var(--text)}.timeline-friends{display:flex;gap:6px;flex-wrap:wrap}.timeline-friend-tag{padding:4px 12px;background:rgba(var(--accent-rgb, 201, 169, 110),.1);color:var(--accent-light);font-size:12px;border-radius:50px;font-weight:500}.timeline-category{display:inline-block;padding:3px 10px;font-size:11px;font-weight:500;border-radius:50px;margin-top:10px;letter-spacing:.5px;text-transform:uppercase}.cat-reise{background:rgba(110,192,240,.15);color:var(--blue)}.cat-feier{background:rgba(240,200,80,.15);color:var(--gold)}.cat-abenteuer{background:rgba(240,124,110,.15);color:var(--warm)}.cat-alltag{background:rgba(110,240,160,.15);color:var(--green)}.cat-meilenstein{background:rgba(var(--accent-rgb, 201, 169, 110),.15);color:var(--accent-light)}.friends-grid{display:flex;flex-direction:column;gap:0}.fc-section-header{display:flex;justify-content:space-between;align-items:flex-end;border-bottom:1px solid rgba(212,168,83,.05);padding-bottom:8px;margin-bottom:16px}.fc-section-title{font-family:"Playfair Display","Noto Serif",serif;font-size:22px;font-weight:700;color:var(--text);letter-spacing:.3px}.fc-section-count{font-family:"Inter",sans-serif;font-size:11px;text-transform:uppercase;letter-spacing:.2em;color:var(--text-secondary, #d2c5b2);font-weight:500}.fc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin-bottom:16px}.fc-avatar-wrap,.fc-card{display:flex;align-items:center;overflow:hidden}.fc-card{border:1px solid var(--outline-variant, #4e4637);border-radius:var(--radius);padding:20px 14px 16px;cursor:pointer;transition:all .5s cubic-bezier(.4,0,.2,1);position:relative;flex-direction:column;text-align:center}.fc-card:active{transform:scale(.97)}.fc-card:hover{border-color:rgba(242,195,107,.25);background:rgba(58,52,46,.3)}.fc-avatar-wrap{width:64px;height:64px;border-radius:50%;justify-content:center;background:rgba(212,168,83,.08);margin-bottom:10px;flex-shrink:0;border:2px solid rgba(212,168,83,.15);transition:all .5s ease}.fc-card:hover .fc-avatar-wrap{border-color:rgba(242,195,107,.4);box-shadow:0 0 16px rgba(212,168,83,.12)}.fc-avatar-img{width:100%;height:100%;object-fit:cover;border-radius:50%;filter:grayscale(.3);transition:filter .5s ease}.fc-card:hover .fc-avatar-img{filter:grayscale(0)}.fc-avatar-initials{font-family:"Playfair Display",serif;font-size:24px;font-weight:700;color:var(--accent-light, #f2c36b)}.fc-name{font-family:"Noto Serif","Playfair Display",serif;font-size:15px;font-weight:600;color:var(--text, #ece0d8);margin-bottom:2px;max-width:100%}.fc-label{font-family:"Inter",sans-serif;font-size:11px;color:var(--text-secondary, #d2c5b2);margin-bottom:8px;text-transform:uppercase;letter-spacing:.08em}.fc-stats{display:flex;gap:14px;margin-top:4px}.fc-stat{text-align:center;display:flex;flex-direction:column;gap:1px}.fc-stat-num{font-family:"Playfair Display",serif;font-size:16px;font-weight:700;color:var(--accent-light, #f2c36b)}.fc-stat-label{font-family:"Inter",sans-serif;font-size:9px;color:var(--outline, #9b8f7e);letter-spacing:.12em;text-transform:uppercase}.fc-add-circle-btn,.fc-flame{display:flex;align-items:center;color:var(--accent-light, #f2c36b);font-family:"Inter",sans-serif}.fc-flame{position:absolute;top:10px;right:10px;font-size:13px;gap:3px;font-weight:600}.fc-add-circle-btn{width:100%;justify-content:center;gap:10px;padding:18px;border-radius:var(--radius);border:2px dashed rgba(242,195,107,.2);background:0 0;cursor:pointer;transition:all .3s ease}.fc-add-circle-btn:hover{border-color:rgba(242,195,107,.5);background:rgba(242,195,107,.05)}.fc-add-circle-btn .material-symbols-outlined{font-size:22px}.fc-add-circle-text{font-family:"Playfair Display",serif;font-size:13px;text-transform:uppercase;letter-spacing:.15em;font-weight:500}.fc-empty-state{text-align:center;padding:48px 20px}.fc-empty-icon-wrap{width:72px;height:72px;border-radius:50%;background:rgba(58,52,46,.15);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);display:flex;align-items:center;justify-content:center;margin:0 auto 16px;border:1px solid var(--outline-variant, #4e4637)}.fc-empty-icon{font-size:32px;color:var(--accent-light, #f2c36b);opacity:.7}.fc-empty-title{font-family:"Playfair Display",serif;font-size:18px;font-weight:600;color:var(--text, #ece0d8);margin-bottom:6px}.fc-add-btn,.fc-empty-desc{font-family:"Inter",sans-serif}.fc-empty-desc{font-size:13px;line-height:1.5;color:var(--text-secondary, #d2c5b2);max-width:260px;margin:0 auto 20px}.fc-add-btn{padding:12px 28px;background:linear-gradient(135deg,var(--accent-light, #f2c36b),var(--accent, #d4a853));color:var(--on-primary, #412d00);border:0;border-radius:var(--radius-sm);font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;letter-spacing:.02em}.fc-add-btn:hover{box-shadow:0 4px 20px rgba(212,168,83,.3)}.friend-card{display:none}.friend-stat{text-align:center}.friend-stat-num{font-size:15px;font-weight:600;color:var(--accent-light)}.friend-stat-label{font-size:10px;color:var(--text-muted);letter-spacing:.3px}.achievements-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:32px}.stat-card{background:var(--bg-card);border:1px solid rgba(255,255,255,.06);border-radius:var(--radius);padding:24px;text-align:center}.stat-number{font-family:"Playfair Display",serif;font-size:36px;font-weight:700;background:linear-gradient(135deg,var(--accent-light),var(--gold));-webkit-background-clip:text;-webkit-text-fill-color:transparent}.stat-label{font-size:12px;color:var(--text-muted);text-transform:uppercase;letter-spacing:1px;margin-top:4px}.achievements-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px}.achievement-card{background:var(--bg-card);border:1px solid rgba(255,255,255,.06);border-radius:var(--radius);padding:24px;text-align:center;transition:var(--transition);position:relative}.achievement-card.locked{opacity:.4}.achievement-card:not(.locked):hover{transform:translateY(-4px);border-color:rgba(240,200,80,.3);box-shadow:0 8px 32px rgba(240,200,80,.1)}.achievement-icon{font-size:40px;margin-bottom:12px;display:block;width:56px;height:56px;border-radius:50%;overflow:hidden;margin-left:auto;margin-right:auto}.achievement-icon img{width:100%;height:100%;object-fit:cover;border-radius:50%}.achievement-title{font-family:"Playfair Display",serif;font-size:16px;font-weight:600;margin-bottom:6px}.achievement-desc{font-size:12px;color:var(--text-secondary);line-height:1.5}.achievement-badge{position:absolute;top:-8px;right:-8px;background:var(--gold);color:#1a1a24;width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;box-shadow:0 4px 12px rgba(240,200,80,.4)}.achievement-progress{margin-top:12px;height:4px;background:rgba(255,255,255,.06);border-radius:4px;overflow:hidden}.achievement-progress-bar{height:100%;background:linear-gradient(90deg,var(--accent),var(--gold));border-radius:4px;transition:width 1s ease}.book-preview{display:flex;flex-direction:column;gap:24px}.book-cover{background:linear-gradient(135deg,#17120e,#241f19,#17120e);border:1px solid rgba(242,195,107,.15);border-radius:16px;padding:60px 40px;text-align:center;position:relative;overflow:hidden}.book-cover::after,.book-cover::before{content:"";position:absolute;pointer-events:none}.book-cover::before{inset:8px;border:1px solid rgba(242,195,107,.1);border-radius:12px}.book-cover::after{top:-50%;left:50%;transform:translateX(-50%);width:200px;height:200px;border-radius:50%;background:radial-gradient(circle,rgba(242,195,107,.08)0,transparent 70%)}.book-cover-label{font-family:"Inter",sans-serif;font-size:10px;font-weight:500;text-transform:uppercase;letter-spacing:.2em;color:#f2c36b;margin-bottom:16px}.book-cover-title{font-family:"Playfair Display",serif;font-size:36px;font-weight:700;font-style:italic;margin-bottom:8px;color:#ece0d8}.book-cover-subtitle{font-family:"Noto Serif",Georgia,serif;font-size:16px;color:#d2c5b2;margin-bottom:32px;font-weight:300}.book-cinema-btn,.book-cover-years{font-family:"Inter",sans-serif;font-weight:500}.book-cover-years{font-size:12px;color:#9b8f7e;letter-spacing:.2em;text-transform:uppercase;margin-bottom:16px}.book-cinema-btn{display:inline-flex;align-items:center;gap:6px;margin-top:8px;padding:10px 20px;background:rgba(242,195,107,.1);border:1px solid rgba(242,195,107,.2);color:#f2c36b;border-radius:9999px;cursor:pointer;font-size:13px;transition:all .3s ease;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.book-cinema-btn:hover{background:rgba(242,195,107,.15)}.book-chapter{background:#241f19;border:1px solid rgba(78,70,55,.3);border-radius:16px;overflow:hidden}.book-chapter-header{padding:24px;border-bottom:1px solid rgba(78,70,55,.3);display:flex;align-items:center;justify-content:space-between}.book-chapter-title{font-family:"Playfair Display",serif;font-size:24px;font-weight:700;font-style:italic;color:#ece0d8}.book-chapter-count{font-size:11px;color:#d2c5b2;font-family:"Inter",sans-serif;text-transform:uppercase;letter-spacing:.1em}.book-moments{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;padding:2px}.book-moment{aspect-ratio:1;display:flex;align-items:center;justify-content:center;font-size:32px;background:rgba(58,52,46,.15);cursor:pointer;transition:all .3s ease;position:relative}.book-moment:hover{transform:scale(1.02);z-index:1}.book-expand-btn,.book-moment-label{font-family:"Inter",sans-serif;transition:all .3s ease}.book-moment-label{position:absolute;bottom:8px;left:8px;right:8px;font-size:10px;color:#ece0d8;text-shadow:0 1px 4px rgba(0,0,0,.7);text-align:center;opacity:0}.book-moment:hover .book-moment-label{opacity:1}.book-expand-btn{width:100%;padding:12px;margin-top:4px;background:rgba(242,195,107,.05);border:1px solid rgba(242,195,107,.1);border-radius:0 0 16px 16px;color:#f2c36b;font-size:13px;font-weight:500;cursor:pointer}.book-expand-btn:hover,.book-moment:hover{background:rgba(242,195,107,.1)}.book-empty-state{text-align:center;padding:48px 16px;color:#d2c5b2}.book-empty-title{font-size:16px;font-family:"Noto Serif",Georgia,serif;margin-top:12px;margin-bottom:4px;color:#ece0d8}.book-empty-sub{font-size:13px;font-family:"Inter",sans-serif;color:#9b8f7e;font-weight:300}.book-actions{display:flex;gap:12px;margin-top:8px}.book-action-btn{flex:1;padding:16px;border:1px solid rgba(78,70,55,.3);background:#241f19;color:#ece0d8;font-size:14px;font-weight:500;display:flex;justify-content:center;gap:10px}.book-action-btn:hover{border-color:rgba(242,195,107,.3);background:#2f2923}.book-action-btn.primary{background:linear-gradient(135deg,#d4a853,#f2c36b);border-color:transparent;color:#412d00;font-family:"Noto Serif",Georgia,serif;font-weight:700;box-shadow:0 8px 24px rgba(212,168,83,.2)}.book-action-btn.primary:hover{box-shadow:0 12px 32px rgba(212,168,83,.35);transform:translateY(-2px)}.book-action-btn,.book-open-viewer-btn,.shared-book-cinema-btn{align-items:center;border-radius:9999px;cursor:pointer;font-family:"Inter",sans-serif;transition:all .3s ease}.book-open-viewer-btn{width:100%;padding:14px;margin-top:8px;border:1px solid rgba(242,195,107,.2);background:0 0;color:#f2c36b;font-size:12px;font-weight:500;display:flex;justify-content:center;gap:8px;text-transform:uppercase;letter-spacing:.1em}.book-open-viewer-btn:hover{background:rgba(242,195,107,.05)}.shared-book-cinema-btn{display:inline-flex;gap:4px;margin-top:6px;padding:4px 12px;background:linear-gradient(135deg,#d4a853,#f2c36b);color:#412d00;border:0;font-size:11px;font-weight:600}.shared-book-cinema-btn:hover{box-shadow:0 4px 16px rgba(212,168,83,.3)}.film-container{text-align:center;padding:40px 20px}.film-slide{display:none;animation:filmFade .8s ease}.film-slide.active{display:block}.film-emoji,.film-photo{margin-bottom:24px;animation:float 3s ease-in-out infinite}.film-emoji{font-size:80px;display:block}.film-photo{width:160px;height:160px;border-radius:50%;object-fit:cover;border:3px solid rgba(255,255,255,.15);box-shadow:0 8px 32px rgba(0,0,0,.3)}.film-fullbleed{padding:0!important;position:relative}.film-fullbleed .film-slide{position:relative;min-height:360px;overflow:hidden;border-radius:var(--radius)}.film-fullbleed-bg{position:absolute;inset:0;background-size:cover;background-position:center;animation:filmZoom 6s ease-in-out infinite alternate}.film-fullbleed-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.7)0,rgba(0,0,0,.1) 50%,rgba(0,0,0,.3) 100%)}.film-fullbleed-content{position:relative;z-index:2;display:flex;flex-direction:column;justify-content:flex-end;min-height:360px;padding:32px 24px}.film-fullbleed .film-text{font-size:28px;text-shadow:0 2px 12px rgba(0,0,0,.5)}.film-fullbleed .film-subtext{text-shadow:0 1px 8px rgba(0,0,0,.5)}.film-fullbleed .film-nav,.film-fullbleed .film-progress{padding:0 24px;position:relative;z-index:2}.film-text{font-family:"Playfair Display",serif;font-size:28px;font-weight:600;margin-bottom:12px;line-height:1.4}.film-subtext,.form-group label{font-size:16px;color:var(--text-secondary);font-weight:300;margin-bottom:32px}.film-progress{display:flex;gap:6px;justify-content:center;margin-top:32px}.film-dot{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.15);transition:var(--transition)}.film-dot.active{background:var(--accent);box-shadow:0 0 8px rgba(var(--accent-rgb, 201, 169, 110),.5)}.film-nav{display:flex;justify-content:center;gap:16px;margin-top:24px}.film-nav-btn,.form-group input[type=date],.form-group input[type=text]{color:var(--text);font-family:"Inter",sans-serif;font-size:14px;transition:var(--transition)}.film-nav-btn{padding:10px 28px;border-radius:50px;border:1px solid rgba(255,255,255,.1);background:0 0;cursor:pointer}.film-nav-btn:hover{background:rgba(255,255,255,.05)}.film-nav-btn.primary{background:linear-gradient(135deg,#d4a853,#f2c36b);border-color:transparent;color:#412d00;font-weight:600}.modal{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.7);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);animation:fadeIn .3s ease}.modal-content{background:var(--bg-modal);border:1px solid rgba(255,255,255,.08);border-radius:var(--radius);width:90%;max-width:600px;max-height:85vh;overflow-y:auto;position:relative;animation:modalSlide .4s ease}.modal-close{position:absolute;top:16px;right:16px;background:rgba(255,255,255,.06);border:0;color:var(--text-secondary);width:36px;height:36px;border-radius:50%;font-size:20px;cursor:pointer;transition:var(--transition);z-index:10;display:flex;align-items:center;justify-content:center}.modal-close:hover{background:rgba(255,255,255,.1);color:var(--text)}.modal-film{max-width:500px;min-height:400px}.fc-detail-header{padding:40px 24px 24px;text-align:center;border-bottom:1px solid rgba(212,168,83,.05);position:relative}.fc-detail-header::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at center top,rgba(242,195,107,.06)0,transparent 70%);pointer-events:none}.fc-detail-avatar-ring{width:96px;height:96px;border-radius:50%;padding:3px;background:linear-gradient(135deg,var(--accent-light, #f2c36b),var(--accent, #d4a853));display:flex;align-items:center;justify-content:center;margin:0 auto 14px;box-shadow:0 8px 32px rgba(212,168,83,.2)}.fc-detail-avatar-img{width:100%;height:100%;border-radius:50%;object-fit:cover;border:3px solid var(--bg, #17120e)}.fc-detail-avatar-initials,.fc-detail-name{font-family:"Playfair Display",serif;font-weight:700}.fc-detail-avatar-initials{width:100%;height:100%;border-radius:50%;background:var(--surface-container, #241f19);border:3px solid var(--bg, #17120e);display:flex;align-items:center;justify-content:center;font-size:36px;color:var(--accent-light, #f2c36b)}.fc-detail-name{font-size:28px;color:var(--text, #ece0d8);margin-bottom:4px;letter-spacing:.3px}.fc-detail-bio{font-family:"Noto Serif",serif;font-size:15px;font-style:italic;color:var(--text-secondary, #d2c5b2);margin:6px 0 4px;line-height:1.5}.fc-detail-since{font-family:"Inter",sans-serif;font-size:12px;color:var(--outline, #9b8f7e);text-transform:uppercase;letter-spacing:.15em;margin-bottom:4px}.fc-detail-stats{display:flex;justify-content:center;gap:32px;padding:20px 0 0}.fc-sharing-section{margin:20px 24px;padding:20px;border-radius:var(--radius);border:1px solid var(--outline-variant, #4e4637)}.fc-sharing-header{display:flex;align-items:flex-start;gap:12px;margin-bottom:16px}.fc-sharing-icon{font-size:24px;color:var(--accent-light, #f2c36b);flex-shrink:0;margin-top:2px}.fc-sharing-title,.modal-form h3{font-family:"Playfair Display",serif}.fc-sharing-title{font-size:16px;font-weight:600;color:var(--text, #ece0d8);margin-bottom:2px}.fc-sharing-info{font-family:"Inter",sans-serif;font-size:12px;color:var(--outline, #9b8f7e);line-height:1.5}.sharing-row-info{display:flex;align-items:flex-start;flex:1}.fc-books-section{padding:20px 24px}.fc-book-card{display:flex;align-items:center;gap:14px;padding:14px;border-radius:var(--radius);border:1px solid var(--outline-variant, #4e4637);margin-bottom:10px;cursor:pointer;transition:all .5s ease}.fc-book-card:hover{border-color:rgba(242,195,107,.25);background:rgba(58,52,46,.3)}.fc-book-cover{width:56px;height:56px;border-radius:8px;background-size:cover;background-position:center;flex-shrink:0}.fc-book-info{flex:1;min-width:0}.fc-book-title{font-family:"Noto Serif",serif;font-size:15px;font-weight:600;color:var(--text, #ece0d8);margin-bottom:2px}.fc-book-desc,.fc-book-meta{font-family:"Inter",sans-serif}.fc-book-desc{font-size:12px;color:var(--text-secondary, #d2c5b2);margin-bottom:4px;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fc-book-meta{font-size:11px;color:var(--outline, #9b8f7e)}.fc-book-chevron{font-size:20px;color:var(--outline, #9b8f7e);opacity:.4;transition:all .3s ease}.fc-book-card:hover .fc-book-chevron{color:var(--accent-light, #f2c36b);opacity:1}.fc-books-empty{text-align:center;padding:28px 20px;border-radius:var(--radius);border:1px solid var(--outline-variant, #4e4637)}.fc-books-empty p,.fc-create-book-btn{font-family:"Inter",sans-serif;font-size:13px}.fc-books-empty p{color:var(--outline, #9b8f7e);margin-bottom:14px}.fc-create-book-btn{padding:10px 20px;background:0 0;border:1px solid rgba(242,195,107,.3);border-radius:var(--radius-sm);color:var(--accent-light, #f2c36b);font-weight:500;cursor:pointer;transition:all .3s ease}.fc-create-book-btn:hover{background:rgba(242,195,107,.08);border-color:rgba(242,195,107,.5)}.fc-timeline-section{padding:20px 24px}.fc-event,.fc-event-visual{display:flex;align-items:center}.fc-event{gap:14px;padding:14px 0;border-bottom:1px solid rgba(212,168,83,.05);transition:background .3s ease}.fc-event-visual{width:44px;height:44px;border-radius:10px;overflow:hidden;justify-content:center;flex-shrink:0;background:rgba(58,52,46,.15);border:1px solid var(--outline-variant, #4e4637)}.fc-event-photo{width:100%;height:100%;object-fit:cover;border-radius:10px}.fc-event-icon{font-size:22px;color:var(--outline, #9b8f7e)}.fc-event-info{flex:1;min-width:0}.fc-event-title{font-family:"Inter",sans-serif;font-size:14px;font-weight:500;color:var(--text, #ece0d8);margin-bottom:2px}.fc-event-date{font-family:"Inter",sans-serif;font-size:12px;color:var(--outline, #9b8f7e)}.fc-event-chevron{font-size:18px;color:var(--outline, #9b8f7e);opacity:.3}.fc-actions{padding:24px;display:flex;gap:12px}.fc-action-btn{flex:1;padding:14px;border-radius:var(--radius-sm);border:1px solid var(--outline-variant, #4e4637);background:rgba(58,52,46,.15);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);color:var(--text, #ece0d8);font-family:"Inter",sans-serif;font-size:13px;font-weight:500;cursor:pointer;transition:all .3s ease;text-align:center}.fc-action-btn:hover{border-color:rgba(242,195,107,.25);background:rgba(58,52,46,.3)}.fc-action-primary,.fc-action-primary:hover{background:linear-gradient(135deg,var(--accent-light, #f2c36b),var(--accent, #d4a853))}.fc-action-primary{border-color:transparent;color:var(--on-primary, #412d00);font-weight:600}.fc-action-primary:hover{box-shadow:0 4px 20px rgba(212,168,83,.3)}.friend-detail-actions,.friend-detail-header{display:none}.modal-form{padding:32px}.modal-form h3{font-size:24px;margin-bottom:24px}.form-group{margin-bottom:20px}.form-group label{display:block;font-size:13px;font-weight:500;margin-bottom:8px}.form-group input[type=date],.form-group input[type=text]{width:100%;padding:12px 16px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-sm)}.form-group input:focus{outline:0;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}.friend-select{display:flex;flex-wrap:wrap;gap:8px}.friend-chip{padding:6px 14px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:50px;font-size:13px;cursor:pointer;transition:var(--transition)}.friend-chip:hover{border-color:rgba(var(--accent-rgb, 201, 169, 110),.3)}.friend-chip.selected{background:var(--accent-glow);border-color:var(--accent);color:var(--accent-light)}.category-select{display:flex;flex-wrap:wrap;gap:8px}.cat-btn{padding:6px 14px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:50px;font-size:13px;color:var(--text-secondary)}.cat-btn:hover{border-color:rgba(var(--accent-rgb, 201, 169, 110),.3)}.cat-btn.active{background:var(--accent-glow);border-color:var(--accent);color:var(--accent-light)}.cat-btn,.fab,.photo-upload,.submit-btn{cursor:pointer;transition:var(--transition)}.photo-upload{display:flex;align-items:center;justify-content:center;gap:12px;padding:32px;border:2px dashed rgba(255,255,255,.08);border-radius:var(--radius);color:var(--text-muted)}.photo-upload:hover{border-color:rgba(var(--accent-rgb, 201, 169, 110),.3);color:var(--text-secondary)}.fab,.submit-btn{background:linear-gradient(135deg,var(--accent),var(--accent-dark));border:0;color:#fff}.submit-btn{width:100%;padding:14px;border-radius:var(--radius-sm);font-family:"Inter",sans-serif;font-size:15px;font-weight:500}.submit-btn:hover{box-shadow:0 8px 24px rgba(var(--accent-rgb, 201, 169, 110),.3);transform:translateY(-1px)}.fab{position:fixed;bottom:32px;right:32px;width:56px;height:56px;border-radius:50%;box-shadow:0 8px 24px rgba(var(--accent-rgb, 201, 169, 110),.4);display:flex;align-items:center;justify-content:center;z-index:50}.fab:hover{transform:translateY(-4px) scale(1.05);box-shadow:0 12px 36px rgba(var(--accent-rgb, 201, 169, 110),.5)}.fab svg{width:24px;height:24px}