:root{font-family:Segoe UI,system-ui,-apple-system,sans-serif;line-height:1.5;font-weight:400;color:#e0e0e0;background-color:#1a1a2e;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;overflow-x:hidden}#root{min-height:100vh;overflow-x:hidden}.app-loading{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a1a2e,#16213e,#1a1a2e)}.app-loading .spinner{font-size:4rem;animation:pulse 1.5s infinite}.password-gate{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a1a2e,#16213e,#1a1a2e);padding:1rem}.password-card{background:#ffffff0d;padding:2.5rem 2rem;border-radius:20px;text-align:center;max-width:340px;width:100%;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1)}.heart-icon{font-size:3rem;margin-bottom:.75rem;animation:pulse 2s ease-in-out infinite}.password-card h1{font-size:1.5rem;color:#fff;margin-bottom:.5rem;font-weight:500}.password-card p{color:#888;margin-bottom:1.5rem;font-size:.9rem}.password-card form{display:flex;flex-direction:column;gap:.75rem}.password-card input{padding:.875rem 1rem;border:1px solid rgba(255,255,255,.15);border-radius:10px;font-size:1rem;outline:none;transition:border-color .2s;background:#ffffff0d;color:#e0e0e0}.password-card input::placeholder{color:#666}.password-card input:focus{border-color:#ffffff4d}.password-card button{padding:.875rem 1rem;background:linear-gradient(135deg,#f093fb,#f5576c);color:#fff;border:none;border-radius:10px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s}.password-card button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 20px #f5576c4d}.password-card button:disabled{opacity:.6;cursor:not-allowed}.password-card .error{color:#ff6b6b;margin-top:.75rem;font-size:.85rem}.role-select{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a1a2e,#16213e,#1a1a2e);padding:1rem}.role-content{text-align:center;animation:fadeIn .5s ease-out}.role-icon{font-size:3rem;margin-bottom:.75rem;animation:pulse 2s ease-in-out infinite}.role-content h1{font-size:1.5rem;color:#fff;margin:0 0 .5rem;font-weight:500}.role-content p{color:#888;margin:0 0 2rem;font-size:.95rem}.role-buttons{display:flex;gap:1rem;justify-content:center}.role-btn{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1.5rem 2rem;border:2px solid transparent;border-radius:16px;background:#ffffff0d;cursor:pointer;transition:all .2s ease;min-width:120px}.role-btn:hover{transform:translateY(-4px)}.role-btn.arda{border-color:#64c8ff4d}.role-btn.arda:hover{background:#64c8ff26;border-color:#64c8ff99;box-shadow:0 8px 30px #64c8ff33}.role-btn.askim{border-color:#ff64964d}.role-btn.askim:hover{background:#ff649626;border-color:#ff649699;box-shadow:0 8px 30px #ff649633}.role-emoji{font-size:2.5rem}.role-name{color:#e0e0e0;font-size:.95rem;font-weight:500}@media(max-width:400px){.role-buttons{flex-direction:column}.role-btn{flex-direction:row;padding:1rem 1.5rem}.role-emoji{font-size:2rem}}.homepage{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a1a2e,#16213e,#1a1a2e);padding:1rem;overflow:hidden}.homepage-content{text-align:center;animation:fadeIn .6s ease-out;overflow:hidden}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.homepage-title{font-size:4rem;margin:0;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.homepage-subtitle{font-size:1.5rem;color:#e0e0e0;margin:0 0 1.5rem;font-weight:300;letter-spacing:.2em}.next-date-section{margin-bottom:2rem}.date-countdown{background:#ffffff0d;border-radius:16px;padding:1rem 1.5rem;transition:background .2s;position:relative}.countdown-content{cursor:pointer}.countdown-content:hover{opacity:.9}.delete-date-btn{position:absolute;top:.5rem;right:.5rem;background:#ff646433;border:none;border-radius:50%;width:32px;height:32px;cursor:pointer;font-size:.9rem;opacity:.6;transition:all .2s}.delete-date-btn:hover{opacity:1;background:#ff646466}.no-date-entry{background:#ffffff08;border-radius:16px;padding:1.5rem;text-align:center}.no-date-text{color:#666;font-size:.95rem;margin:0 0 1rem}.countdown-title{font-size:.9rem;color:#aaa;margin:0 0 .25rem}.countdown-time{font-size:1.5rem;color:#fff;margin:0;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:.02em}.homepage.arda .countdown-time{color:#64c8ff}.homepage.askim .countdown-time{color:#ff6496}.countdown-date{font-size:.8rem;color:#888;margin:.25rem 0 0}.add-date-btn{background:#ffffff1a;border:1px dashed rgba(255,255,255,.3);padding:.75rem 1.5rem;border-radius:12px;color:#aaa;font-size:.9rem;cursor:pointer;transition:all .2s}.add-date-btn:hover{background:#ffffff26;color:#fff}.date-edit{display:flex;flex-direction:column;align-items:center;gap:.5rem;max-width:280px;margin:0 auto}.date-edit-label{color:#aaa;font-size:.85rem;margin:0 0 .25rem}.date-edit input{padding:.6rem .8rem;border:1px solid rgba(255,255,255,.2);border-radius:8px;background:#0000004d;color:#e0e0e0;font-size:.9rem;width:100%;max-width:200px;text-align:center}.date-edit input:focus{outline:none;border-color:#64c8ff80}.date-edit-buttons{display:flex;gap:.5rem;justify-content:center}.date-edit-buttons button{padding:.5rem 1rem;border:none;border-radius:8px;font-size:.85rem;cursor:pointer;transition:background .2s}.date-edit-buttons button:first-child{background:#64c8ff4d;color:#64c8ff}.date-edit-buttons button:first-child:hover{background:#64c8ff66}.date-edit-buttons button:last-child{background:#ffffff1a;color:#aaa}.date-edit-buttons button:last-child:hover{background:#ffffff26}.homepage-greeting{font-size:1.1rem;color:#aaa;margin:.5rem 0 .25rem;font-weight:400}.homepage.arda .homepage-greeting{color:#64c8ff}.homepage.askim .homepage-greeting{color:#ff6496}.homepage-buttons{display:flex;flex-direction:column;gap:1rem;max-width:280px;margin:0 auto}.homepage-btn{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:1rem 2rem;border:none;border-radius:12px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s ease;color:#fff}.homepage-btn:hover{transform:translateY(-2px);box-shadow:0 8px 25px #0000004d}.homepage-btn:active{transform:translateY(0)}.btn-icon{font-size:1.25rem}.btn-text{font-size:.95rem}.gallery-btn{background:linear-gradient(135deg,#667eea,#764ba2)}.gallery-btn:hover{background:linear-gradient(135deg,#5a6fd6,#6a4190)}.favorites-btn{background:linear-gradient(135deg,#f093fb,#f5576c)}.favorites-btn:hover{background:linear-gradient(135deg,#e080e8,#e04a5f)}.upload-btn{background:linear-gradient(135deg,#4facfe,#00f2fe)}.upload-btn:hover{background:linear-gradient(135deg,#3d9ae8,#00dce5)}.discover-btn{background:linear-gradient(135deg,#fa709a,#fee140)}.discover-btn:hover{background:linear-gradient(135deg,#e86088,#e8d035)}.notes-btn{background:linear-gradient(135deg,#a8edea,#fed6e3);color:#333}.notes-btn:hover{background:linear-gradient(135deg,#96dbd8,#f0c4d0)}.recycle-btn{background:#ffffff1a}.recycle-btn:hover{background:#ffffff26}@media(max-width:480px){.homepage-title{font-size:3rem}.homepage-subtitle{font-size:1.2rem}.homepage-buttons{max-width:240px}.homepage-btn{padding:.875rem 1.5rem}}.gallery{min-height:100vh;background:linear-gradient(135deg,#1a1a2e,#16213e,#1a1a2e);padding:1rem}.gallery-header{display:flex;align-items:center;gap:1rem;margin-bottom:1rem;flex-wrap:wrap}.gallery-header h1{font-size:1.25rem;color:#fff;margin:0;font-weight:500}.header-stats{display:flex;gap:1rem;color:#888;font-size:.75rem;margin-left:auto}.album-tabs{display:flex;gap:.5rem;margin-bottom:1rem;flex-wrap:wrap}.album-tab{padding:.5rem 1rem;border:none;border-radius:8px;background:#ffffff1a;color:#e0e0e0;font-size:.8rem;cursor:pointer;transition:all .2s}.album-tab:hover{background:#ffffff26}.album-tab.active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.gallery-loading,.gallery-error{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;color:#e0e0e0}.spinner{font-size:3rem;animation:pulse 1.5s infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}.empty-gallery{text-align:center;padding:3rem 1rem;color:#888}.empty-icon{font-size:3rem;margin-bottom:1rem}.empty-gallery h2{color:#e0e0e0;font-size:1.1rem;margin-bottom:.5rem}.empty-gallery p{font-size:.85rem;margin-bottom:1.5rem}.empty-gallery button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:10px;font-size:.9rem;cursor:pointer}.photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.75rem}.photo-card{border-radius:10px;overflow:hidden;cursor:pointer;transition:transform .2s;aspect-ratio:1;position:relative}.photo-card:hover{transform:scale(1.02)}.photo-card img{width:100%;height:100%;object-fit:cover}.photo-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:2rem;background:#ffffff0d}.photo-overlay{position:absolute;bottom:0;left:0;right:0;padding:.5rem;background:linear-gradient(transparent,#00000080)}.photo-hearts{display:flex;gap:2px;justify-content:flex-end;font-size:.9rem}.lightbox{position:fixed;inset:0;background:#000000f2;z-index:1000;display:flex;align-items:center;justify-content:center;padding:1rem}.lightbox-content{max-width:95vw;max-height:95vh;position:relative;display:flex;flex-direction:column;align-items:center}.lightbox-content img{max-width:100%;max-height:65vh;border-radius:8px;object-fit:contain}.loading-full{color:#fff;font-size:1rem;padding:3rem}.lightbox-info{margin-top:1rem;text-align:center;width:100%}.lightbox-note{color:#ccc;font-size:.85rem;margin-bottom:.75rem;font-style:italic}.lightbox-meta{display:flex;gap:1rem;justify-content:center;align-items:center;color:#888;font-size:.75rem;margin-bottom:1rem}.uploader-badge{background:#ffffff1a;padding:.25rem .6rem;border-radius:6px}.lightbox-actions{display:flex;gap:.75rem;justify-content:center;align-items:center;flex-wrap:wrap}.heart-btn,.download-btn{padding:.5rem 1rem;border:none;border-radius:8px;background:#ffffff26;color:#e0e0e0;font-size:.8rem;cursor:pointer;transition:all .2s}.heart-btn:hover{background:#ffffff40}.heart-btn.main-heart{padding:.6rem 1.2rem;font-size:.85rem}.heart-btn.main-heart.arda:hover{background:#64c8ff33}.heart-btn.main-heart.askim:hover{background:#ff649633}.heart-btn.active.arda{background:#64c8ff4d;color:#64c8ff}.heart-btn.active.askim{background:#ff64964d;color:#ff6496}.partner-liked{color:#888;font-size:.75rem;padding:.4rem .8rem;background:#ffffff0d;border-radius:6px}.download-btn{background:#4facfe4d}.delete-btn{padding:.5rem 1rem;border:none;border-radius:8px;background:#ff646433;color:#ff6b6b;font-size:.8rem;cursor:pointer;transition:all .2s}.delete-btn:hover{background:#ff646459}.note-display{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem}.lightbox-note{margin:0;color:#ccc;font-size:.9rem;font-style:italic}.lightbox-note.empty{color:#666}.note-author{color:#888;font-size:.75rem}.edit-note-btn{background:#ffffff1a;border:none;padding:.3rem .5rem;border-radius:6px;cursor:pointer;font-size:.75rem;transition:background .2s}.edit-note-btn:hover{background:#fff3}.note-edit{margin-bottom:.75rem}.note-edit textarea{width:100%;min-height:60px;padding:.5rem;border:1px solid rgba(255,255,255,.2);border-radius:8px;background:#0000004d;color:#e0e0e0;font-size:.85rem;resize:vertical}.note-edit textarea:focus{outline:none;border-color:#64c8ff80}.note-edit-actions{display:flex;gap:.5rem;margin-top:.5rem}.note-edit-actions button{padding:.4rem .8rem;border:none;border-radius:6px;font-size:.8rem;cursor:pointer;transition:background .2s}.note-edit-actions button:first-child{background:#64c8ff4d;color:#64c8ff}.note-edit-actions button:first-child:hover{background:#64c8ff66}.note-edit-actions button:last-child{background:#ffffff1a;color:#aaa}.note-edit-actions button:last-child:hover{background:#ffffff26}.photo-date{cursor:pointer;padding:.25rem .5rem;border-radius:6px;transition:background .2s}.photo-date:hover{background:#ffffff1a}.date-edit-inline{display:flex;align-items:center;gap:.25rem}.date-edit-inline input{padding:.25rem .4rem;border:1px solid rgba(255,255,255,.3);border-radius:6px;background:#0006;color:#e0e0e0;font-size:.75rem}.date-edit-inline button{background:#ffffff1a;border:none;padding:.25rem .4rem;border-radius:4px;color:#aaa;font-size:.75rem;cursor:pointer}.date-edit-inline button:hover{background:#fff3}@media(max-width:480px){.gallery-header{gap:.5rem}.gallery-header h1{font-size:1rem}.header-stats{width:100%;margin-left:0;margin-top:.5rem}.photo-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}}.upload-page{min-height:100vh;background:linear-gradient(135deg,#1a1a2e,#16213e,#1a1a2e);padding:1rem}.upload-header{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.back-btn{background:#ffffff1a;border:none;padding:.5rem 1rem;border-radius:8px;color:#e0e0e0;cursor:pointer;font-size:.85rem;transition:background .2s}.back-btn:hover:not(:disabled){background:#fff3}.upload-header h1{font-size:1.25rem;color:#fff;margin:0;font-weight:500;flex:1}.upload-user{font-size:.85rem;padding:.4rem .8rem;border-radius:8px;background:#ffffff1a}.upload-page.arda .upload-user{color:#64c8ff;background:#64c8ff26}.upload-page.askim .upload-user{color:#ff6496;background:#ff649626}.usage-bar{background:#ffffff0d;padding:.75rem 1rem;border-radius:10px;margin-bottom:1rem}.usage-info{display:flex;justify-content:space-between;font-size:.75rem;color:#888;margin-bottom:.5rem}.usage-progress{height:6px;background:#ffffff1a;border-radius:3px;overflow:hidden}.usage-fill{height:100%;background:linear-gradient(90deg,#4facfe,#00f2fe);transition:width .3s}.selection-group{margin-bottom:1rem}.selection-label{display:block;color:#888;font-size:.75rem;margin-bottom:.5rem}.uploader-toggle,.album-toggle{display:flex;gap:.5rem}.toggle-btn{flex:1;padding:.6rem 1rem;border:none;border-radius:8px;background:#ffffff1a;color:#e0e0e0;font-size:.8rem;cursor:pointer;transition:all .2s}.toggle-btn:hover:not(:disabled){background:#ffffff26}.toggle-btn.active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.toggle-btn.active.arda{background:linear-gradient(135deg,#64c8ff,#4facfe)}.toggle-btn.active.askim{background:linear-gradient(135deg,#ff6496,#f093fb)}.batch-date-section{background:#ffffff0d;padding:1rem;border-radius:12px;margin-bottom:1rem}.batch-date-label{display:block;color:#e0e0e0;font-size:.9rem;font-weight:500;margin-bottom:.5rem}.batch-date-controls{display:flex;gap:.5rem;align-items:center}.batch-date-input{flex:1;padding:.6rem .8rem;border:1px solid rgba(255,255,255,.2);border-radius:8px;background:#0000004d;color:#e0e0e0;font-size:.9rem}.apply-batch-btn{padding:.6rem 1rem;border:none;border-radius:8px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;font-size:.8rem;cursor:pointer;transition:all .2s;white-space:nowrap}.apply-batch-btn:hover:not(:disabled){opacity:.9;transform:scale(1.02)}.batch-date-hint{color:#666;font-size:.75rem;margin:.5rem 0 0}.upload-area{margin-bottom:1rem}.upload-area input[type=file]{display:none}.file-label{display:block;cursor:pointer}.drop-zone{background:#ffffff0d;border:2px dashed rgba(255,255,255,.2);border-radius:12px;padding:2rem;text-align:center;transition:all .2s;display:flex;flex-direction:column;align-items:center;gap:.5rem;color:#e0e0e0}.drop-zone:hover{border-color:#fff6;background:#ffffff14}.drop-icon{font-size:2.5rem;margin-bottom:.5rem}.drop-hint{color:#666;font-size:.8rem}.pending-summary{display:flex;gap:1rem;padding:.75rem 0;color:#888;font-size:.8rem}.pending-summary .warning{color:#ff6b6b;font-weight:500}.pending-files{display:flex;flex-direction:column;gap:.75rem}.pending-file{background:#ffffff0d;border-radius:10px;padding:.75rem;display:flex;align-items:center;gap:.75rem;position:relative}.pending-file img{width:60px;height:60px;object-fit:cover;border-radius:6px}.file-info{flex:1;display:flex;flex-direction:column;gap:.4rem}.file-info input[type=text]{padding:.4rem .6rem;border:1px solid rgba(255,255,255,.1);border-radius:6px;font-size:.85rem;background:#ffffff0d;color:#e0e0e0}.file-info input[type=text]::placeholder{color:#666}.file-info input[type=text]:focus{outline:none;border-color:#ffffff4d}.photo-album-selector{display:flex;gap:.25rem}.album-btn{flex:1;padding:.35rem .5rem;border:none;border-radius:6px;background:#ffffff14;color:#888;font-size:.7rem;cursor:pointer;transition:all .2s}.album-btn:hover:not(:disabled){background:#ffffff1f;color:#e0e0e0}.album-btn.active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.upload-page.arda .album-btn.active{background:linear-gradient(135deg,#64c8ff,#4facfe)}.upload-page.askim .album-btn.active{background:linear-gradient(135deg,#ff6496,#f093fb)}.album-btn.other{opacity:.7}.album-btn.other.active{background:linear-gradient(135deg,#666,#888)!important;opacity:1}.file-meta{display:flex;align-items:center;gap:.5rem}.date-input{padding:.3rem .5rem;border:1px solid rgba(255,255,255,.1);border-radius:6px;font-size:.75rem;background:#ffffff0d;color:#e0e0e0;cursor:pointer}.date-input:focus{outline:none;border-color:#ffffff4d}.date-with-source{display:flex;align-items:center;gap:.3rem}.date-source{font-size:.85rem;cursor:help;opacity:.9}.date-source.exif{filter:none}.date-source.file{filter:saturate(.7)}.date-source.today{animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.file-size{color:#666;font-size:.75rem}.upload-progress{position:absolute;bottom:0;left:0;right:0;height:3px;background:#ffffff1a;border-radius:0 0 10px 10px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,#4facfe,#00f2fe);transition:width .2s}.status-icon{font-size:1.2rem}.remove-btn{position:absolute;top:.4rem;right:.4rem;background:#ff6464cc;color:#fff;border:none;width:20px;height:20px;border-radius:50%;cursor:pointer;font-size:.9rem;line-height:1}.pending-file.done{opacity:.6}.pending-file.error{border:1px solid #ff6b6b}.upload-error{color:#ff6b6b;text-align:center;margin:1rem 0;font-size:.85rem}.upload-actions{padding:1.5rem 0;text-align:center}.upload-submit{background:linear-gradient(135deg,#4facfe,#00f2fe);color:#fff;border:none;padding:.875rem 2rem;border-radius:10px;font-size:.95rem;font-weight:500;cursor:pointer;transition:transform .2s}.upload-submit:hover:not(:disabled){transform:translateY(-2px)}.upload-submit:disabled{opacity:.5;cursor:not-allowed}@media(max-width:480px){.pending-file{flex-direction:column;align-items:stretch}.pending-file img{width:100%;height:120px}.usage-info{flex-direction:column;gap:.2rem}.uploader-toggle,.album-toggle{flex-wrap:wrap}}.favorites{min-height:100vh;background:linear-gradient(135deg,#1a1a2e,#16213e,#1a1a2e);padding:1rem}.favorites-loading,.favorites-error{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;color:#e0e0e0}.favorites-loading .spinner{width:40px;height:40px;border:3px solid rgba(255,255,255,.1);border-top-color:#f5576c;border-radius:50%;animation:spin 1s linear infinite}.favorites-header{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem}.favorites-header h1{font-size:1.25rem;color:#fff;margin:0;font-weight:500;flex:1}.favorites-user{font-size:.85rem;padding:.4rem .8rem;border-radius:8px;background:#ffffff1a}.favorites.arda .favorites-user{color:#64c8ff;background:#64c8ff26}.favorites.askim .favorites-user{color:#ff6496;background:#ff649626}.favorites-tabs{display:flex;gap:.5rem;margin-bottom:1.5rem;flex-wrap:wrap}.tab{flex:1;min-width:100px;padding:.6rem 1rem;border:none;border-radius:8px;background:#ffffff1a;color:#e0e0e0;font-size:.8rem;cursor:pointer;transition:all .2s}.tab:hover{background:#ffffff26}.tab.active{background:linear-gradient(135deg,#f093fb,#f5576c);color:#fff}.no-favorites{text-align:center;padding:3rem 1rem;color:#888}.favorites-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.75rem}.favorite-item{position:relative;aspect-ratio:1;border-radius:10px;overflow:hidden;cursor:pointer;transition:transform .2s}.favorite-item:hover{transform:scale(1.02)}.favorite-item img{width:100%;height:100%;object-fit:cover}.favorite-hearts{position:absolute;bottom:6px;right:6px;display:flex;gap:2px;font-size:.9rem}.photo-modal{position:fixed;inset:0;background:#000000e6;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content img{max-width:100%;max-height:70vh;object-fit:contain;border-radius:8px}.close-btn{position:absolute;top:-40px;right:0;background:none;border:none;color:#fff;font-size:1.5rem;cursor:pointer;padding:.5rem}.modal-info{margin-top:1rem;text-align:center;width:100%}.modal-info .note{color:#ccc;font-size:.85rem;margin-bottom:1rem;font-style:italic}.modal-actions{display:flex;gap:.75rem;justify-content:center;align-items:center;flex-wrap:wrap}.main-heart{font-size:1.8rem;background:none;border:none;cursor:pointer;transition:transform .2s;filter:grayscale(.5)}.main-heart:hover{transform:scale(1.15)}.main-heart.active{filter:none;animation:heartPop .3s ease}@keyframes heartPop{0%,to{transform:scale(1)}50%{transform:scale(1.3)}}.partner-liked{font-size:.8rem;color:#999;padding:.4rem .8rem;background:#ffffff0d;border-radius:8px}.download-btn{padding:.5rem 1rem;border:none;border-radius:8px;background:#4facfe4d;color:#e0e0e0;font-size:.8rem;cursor:pointer;transition:all .2s}.download-btn:hover{background:#4facfe80}@media(max-width:480px){.favorites-tabs{flex-direction:column}.tab{min-width:auto}.favorites-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}}.discover{min-height:100vh;background:linear-gradient(135deg,#1a1a2e,#16213e,#1a1a2e);padding:1rem;display:flex;flex-direction:column}.discover-loading{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;color:#e0e0e0}.discover-loading .spinner{width:40px;height:40px;border:3px solid rgba(255,255,255,.1);border-top-color:#f5576c;border-radius:50%;animation:spin 1s linear infinite}.discover-header{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.discover-header h1{font-size:1.25rem;color:#fff;margin:0;font-weight:500;flex:1}.discover-user{font-size:.85rem;padding:.4rem .8rem;border-radius:8px;background:#ffffff1a}.discover.arda .discover-user{color:#64c8ff;background:#64c8ff26}.discover.askim .discover-user{color:#ff6496;background:#ff649626}.discover-counter{text-align:center;color:#999;font-size:.85rem;margin-bottom:1rem}.discover-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;color:#e0e0e0}.discover-empty-buttons{display:flex;gap:.75rem}.discover-empty button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;padding:.75rem 1.5rem;border-radius:12px;color:#fff;cursor:pointer;font-size:.9rem;transition:opacity .2s}.discover-empty button:hover{opacity:.9}.discover-empty button:last-child{background:#ffffff1a}.discover-card{flex:1;max-height:55vh;position:relative;border-radius:16px;overflow:hidden;background:#ffffff0d;transition:transform .3s ease;touch-action:pan-y}.discover-card img{width:100%;height:100%;object-fit:contain;background:#111;cursor:pointer;transition:opacity .3s}.card-loading{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:5}.card-loading .spinner{width:30px;height:30px;border:3px solid rgba(255,255,255,.1);border-top-color:#f5576c;border-radius:50%;animation:spin 1s linear infinite}.discover-card.swiping-left{transform:translate(-150%) rotate(-20deg);opacity:0}.discover-card.swiping-right{transform:translate(150%) rotate(20deg);opacity:0}.card-info{position:absolute;bottom:0;left:0;right:0;padding:1rem;background:linear-gradient(transparent,#000000d9);color:#fff}.card-date{font-size:.8rem;color:#ccc;margin-bottom:.25rem}.card-note{margin-top:.25rem}.card-note p{margin:0;font-size:.9rem;font-style:italic}.note-author{font-size:.75rem;color:#aaa;display:block;margin-top:.25rem}.swipe-hint{position:absolute;top:50%;transform:translateY(-50%);font-size:3rem;opacity:0;transition:opacity .2s;pointer-events:none}.swipe-hint.left{left:1rem}.swipe-hint.right{right:1rem}.discover-actions{display:flex;justify-content:center;gap:1.5rem;margin-top:1.5rem}.action-btn{width:55px;height:55px;border-radius:50%;border:none;font-size:1.3rem;cursor:pointer;transition:transform .2s,box-shadow .2s,opacity .2s}.action-btn:hover:not(:disabled){transform:scale(1.1)}.action-btn:disabled{opacity:.3;cursor:not-allowed}.action-btn.undo{background:#ffffff1a;color:#ffc107}.action-btn.undo:hover:not(:disabled){background:#ffc10733}.action-btn.skip{background:#ffffff1a;color:#999}.action-btn.skip:hover{background:#ff646433;color:#ff6b6b}.action-btn.like{background:linear-gradient(135deg,#ff6b6b,#ff8e8e);color:#fff;box-shadow:0 4px 15px #ff6b6b66}.action-btn.like:hover{box-shadow:0 6px 20px #ff6b6b99}.discover-tip{text-align:center;color:#666;font-size:.75rem;margin-top:1rem}.fullscreen-modal{position:fixed;inset:0;background:#000000f2;z-index:1000;display:flex;align-items:center;justify-content:center;padding:1rem}.fullscreen-content{position:relative;max-width:100%;max-height:100%;display:flex;flex-direction:column;align-items:center}.fullscreen-content img{max-width:100%;max-height:70vh;object-fit:contain;transition:transform .3s ease}.fullscreen-controls{display:flex;gap:1rem;margin-top:1rem}.fullscreen-controls button{padding:.75rem 1.5rem;border:none;border-radius:10px;font-size:.9rem;cursor:pointer;transition:all .2s}.rotate-btn{background:#ffffff26;color:#fff}.rotate-btn:hover{background:#ffffff40}.close-btn{background:#ff64644d;color:#fff}.close-btn:hover{background:#ff646480}.fullscreen-info{margin-top:1rem;text-align:center;color:#ccc}.fullscreen-date{font-size:.9rem;margin:0}.fullscreen-note{font-size:.85rem;font-style:italic;margin:.5rem 0 0;color:#aaa}@media(max-width:480px){.discover-card{max-height:50vh}.action-btn{width:50px;height:50px;font-size:1.2rem}.discover-actions{gap:1rem}.fullscreen-content img{max-height:60vh}}.recycle-bin{min-height:100vh;background:linear-gradient(135deg,#1a1a2e,#16213e,#1a1a2e);padding:1rem}.recycle-loading{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;color:#e0e0e0}.recycle-loading .spinner{width:40px;height:40px;border:3px solid rgba(255,255,255,.1);border-top-color:#f5576c;border-radius:50%;animation:spin 1s linear infinite}.recycle-header{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.recycle-header h1{font-size:1.25rem;color:#fff;margin:0;font-weight:500;flex:1}.recycle-user{font-size:.85rem;padding:.4rem .8rem;border-radius:8px;background:#ffffff1a}.recycle-bin.arda .recycle-user{color:#64c8ff;background:#64c8ff26}.recycle-bin.askim .recycle-user{color:#ff6496;background:#ff649626}.recycle-info{color:#999;font-size:.85rem;text-align:center;margin-bottom:1.5rem}.recycle-empty{flex:1;display:flex;align-items:center;justify-content:center;color:#e0e0e0;min-height:200px}.recycle-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:.75rem}.recycle-item{position:relative;aspect-ratio:1;border-radius:10px;overflow:hidden;cursor:pointer;transition:transform .2s;opacity:.7}.recycle-item:hover{transform:scale(1.03);opacity:1}.recycle-item img{width:100%;height:100%;object-fit:cover}.days-remaining{position:absolute;bottom:0;left:0;right:0;padding:.25rem;background:#000000b3;color:#ff6b6b;font-size:.7rem;text-align:center}.photo-modal{position:fixed;inset:0;background:#000000f2;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content{position:relative;max-width:90vw;max-height:90vh;display:flex;flex-direction:column;align-items:center}.modal-content img{max-width:100%;max-height:60vh;object-fit:contain;border-radius:8px}.close-btn{position:absolute;top:-2rem;right:0;background:none;border:none;color:#fff;font-size:1.5rem;cursor:pointer;padding:.5rem}.modal-info{margin-top:1rem;text-align:center}.deleted-date{color:#999;font-size:.85rem;margin:0}.remaining-time{color:#ff6b6b;font-size:.8rem;margin:.5rem 0 1rem}.modal-actions{display:flex;gap:1rem;justify-content:center}.restore-btn,.purge-btn{padding:.6rem 1.2rem;border:none;border-radius:8px;cursor:pointer;font-size:.85rem;transition:all .2s}.restore-btn{background:#64c8ff33;color:#64c8ff}.restore-btn:hover{background:#64c8ff4d}.purge-btn{background:#ff646433;color:#ff6b6b}.purge-btn:hover{background:#ff64644d}@media(max-width:480px){.recycle-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}}.notes-page{min-height:100vh;background:linear-gradient(135deg,#1a1a2e,#16213e,#1a1a2e);padding:1rem}.notes-loading{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;color:#e0e0e0}.notes-loading .spinner{width:40px;height:40px;border:3px solid rgba(255,255,255,.1);border-top-color:#f5576c;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.notes-header{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem}.notes-header h1{font-size:1.25rem;color:#fff;margin:0;font-weight:500;flex:1}.back-btn{background:#ffffff1a;border:none;color:#e0e0e0;padding:.5rem 1rem;border-radius:8px;cursor:pointer;font-size:.85rem;transition:background .2s}.back-btn:hover{background:#fff3}.notes-user{font-size:.85rem;padding:.4rem .8rem;border-radius:8px;background:#ffffff1a}.notes-page.arda .notes-user{color:#64c8ff;background:#64c8ff26}.notes-page.askim .notes-user{color:#ff6496;background:#ff649626}.add-note{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.5rem}.add-note-category{display:flex;gap:.5rem}.cat-btn{padding:.5rem .75rem;border:1px solid rgba(255,255,255,.1);border-radius:8px;background:#ffffff0d;cursor:pointer;font-size:1rem;transition:all .2s}.cat-btn.active{background:#64c8ff33;border-color:#64c8ff80}.add-note-input{display:flex;gap:.5rem}.add-note-input input{flex:1;padding:.75rem 1rem;border:1px solid rgba(255,255,255,.2);border-radius:10px;background:#0000004d;color:#e0e0e0;font-size:.9rem}.add-note-input input:focus{outline:none;border-color:#64c8ff80}.add-note-input button{padding:.75rem 1rem;border:none;border-radius:10px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;font-size:1rem;cursor:pointer;transition:opacity .2s}.add-note-input button:disabled{opacity:.5;cursor:not-allowed}.category-tabs{display:flex;gap:.5rem;margin-bottom:1.5rem;overflow-x:auto;padding-bottom:.5rem}.category-tab{display:flex;align-items:center;gap:.4rem;padding:.6rem .8rem;border:1px solid rgba(255,255,255,.1);border-radius:10px;background:#ffffff0d;color:#888;cursor:pointer;font-size:.8rem;white-space:nowrap;transition:all .2s}.category-tab:hover{background:#ffffff1a}.category-tab.active{background:#64c8ff26;border-color:#64c8ff66;color:#64c8ff}.tab-icon{font-size:1rem}.tab-label{display:none}.tab-count{background:#ffffff1a;padding:.1rem .4rem;border-radius:10px;font-size:.7rem}.category-tab.active .tab-count{background:#64c8ff33}@media(min-width:480px){.tab-label{display:inline}}.note-category-icon{font-size:.9rem;opacity:.7}.notes-section{margin-bottom:2rem}.notes-section h2{font-size:.9rem;color:#888;margin:0 0 .75rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em}.notes-section.completed h2{color:#6b8}.notes-list{display:flex;flex-direction:column;gap:.5rem}.note-item{display:flex;align-items:flex-start;gap:.5rem;background:#ffffff0d;padding:.75rem;border-radius:10px;transition:background .2s}.note-item:hover{background:#ffffff14}.note-item.done{opacity:.6}.reorder-btns{display:flex;flex-direction:column;gap:2px}.reorder-btn{background:#ffffff1a;border:none;color:#888;font-size:.6rem;padding:.2rem .3rem;border-radius:4px;cursor:pointer;transition:all .2s;line-height:1}.reorder-btn:hover:not(:disabled){background:#fff3;color:#fff}.reorder-btn:disabled{opacity:.3;cursor:not-allowed}.check-btn{background:none;border:none;font-size:1.1rem;cursor:pointer;padding:0;line-height:1}.note-content{flex:1;min-width:0}.note-text{margin:0;color:#e0e0e0;font-size:.9rem;word-break:break-word}.note-item.done .note-text{text-decoration:line-through;color:#888}.note-author{font-size:.75rem;color:#666;display:block;margin-top:.25rem}.delete-note-btn{background:#ff646426;border:none;color:#ff6b6b;font-size:.9rem;cursor:pointer;padding:.4rem .5rem;border-radius:6px;opacity:.7;transition:opacity .2s,background .2s}.note-item:hover .delete-note-btn{opacity:1}.delete-note-btn:hover{background:#ff64644d;color:#f44}.notes-empty{text-align:center;color:#888;padding:3rem 1rem}.notes-empty p{margin:0}.notes-empty p:first-child{font-size:1.1rem;color:#aaa;margin-bottom:.5rem}.notes-hint{font-size:.85rem}@media(max-width:480px){.add-note input{font-size:16px}}
