@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap";
:root{--bg-primary:#0a0a0f;--bg-secondary:#12121a;--bg-card:#ffffff0a;--bg-card-hover:#ffffff12;--bg-glass:#ffffff0f;--border-glass:#ffffff14;--border-active:#ffffff26;--text-primary:#f0f0f5;--text-secondary:#8a8a9a;--text-muted:#55556a;--primary:#ff6b35;--primary-glow:#ff6b3540;--primary-soft:#ff6b351f;--secondary:#4ecdc4;--secondary-glow:#4ecdc440;--secondary-soft:#4ecdc41f;--accent:#ffe66d;--accent-soft:#ffe66d1f;--success:#4ade80;--success-soft:#4ade801f;--danger:#f87171;--danger-soft:#f871711f;--warning:#fbbf24;--kutay:#ff6b35;--kutay-soft:#ff6b351f;--dylan:#6366f1;--dylan-soft:#6366f11f;--common:#4ecdc4;--common-soft:#4ecdc41f;--safe-bottom:env(safe-area-inset-bottom,0px);--safe-top:env(safe-area-inset-top,0px);--nav-height:72px;--header-height:56px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--radius-full:9999px;--shadow-sm:0 2px 8px #0000004d;--shadow-md:0 4px 16px #0006;--shadow-lg:0 8px 32px #00000080;--shadow-glow-primary:0 0 20px var(--primary-glow);--shadow-glow-secondary:0 0 20px var(--secondary-glow)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{background:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;overflow-x:hidden}body{background:var(--bg-primary);min-height:100dvh;padding-bottom:calc(var(--nav-height) + var(--safe-bottom) + 8px)}.page-container{max-width:480px;padding:16px;padding-top:calc(var(--safe-top) + 16px);margin:0 auto}.page-header{justify-content:space-between;align-items:center;margin-bottom:24px;padding:0 4px;display:flex}.page-title{background:linear-gradient(135deg, var(--text-primary), var(--text-secondary));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:24px;font-weight:700}.page-subtitle{color:var(--text-secondary);margin-top:4px;font-size:14px}.glass-card{background:var(--bg-glass);-webkit-backdrop-filter:blur(20px);border:1px solid var(--border-glass);border-radius:var(--radius-lg);padding:16px;transition:all .3s}.glass-card:hover{background:var(--bg-card-hover);border-color:var(--border-active)}.glass-card-static{background:var(--bg-glass);-webkit-backdrop-filter:blur(20px);border:1px solid var(--border-glass);border-radius:var(--radius-lg);padding:16px}.btn{border-radius:var(--radius-md);cursor:pointer;white-space:nowrap;-webkit-tap-highlight-color:transparent;border:none;outline:none;justify-content:center;align-items:center;gap:8px;padding:12px 24px;font-family:Inter,sans-serif;font-size:14px;font-weight:600;text-decoration:none;transition:all .25s;display:inline-flex}.btn:active{transform:scale(.96)}.btn-primary{background:linear-gradient(135deg, var(--primary), #ff8a5c);color:#fff;box-shadow:var(--shadow-glow-primary)}.btn-primary:hover{box-shadow:0 0 30px var(--primary-glow)}.btn-primary:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.btn-secondary{background:var(--bg-glass);border:1px solid var(--border-glass);color:var(--text-primary)}.btn-secondary:hover{border-color:var(--border-active);background:var(--bg-card-hover)}.btn-ghost{color:var(--text-secondary);background:0 0;padding:8px 16px}.btn-ghost:hover{color:var(--text-primary);background:var(--bg-glass)}.btn-danger{background:var(--danger-soft);color:var(--danger);border:1px solid #f8717133}.btn-danger:hover{background:#f8717133}.btn-success{background:linear-gradient(135deg, var(--secondary), #6ee7de);color:#0a0a0f;box-shadow:var(--shadow-glow-secondary)}.btn-full{width:100%}.btn-sm{padding:8px 16px;font-size:13px}.btn-icon{border-radius:var(--radius-md);width:40px;height:40px;padding:0}.input-field{background:var(--bg-glass);border:1px solid var(--border-glass);border-radius:var(--radius-md);width:100%;color:var(--text-primary);outline:none;padding:12px 16px;font-family:Inter,sans-serif;font-size:14px;transition:all .2s}.input-field:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.input-field::placeholder{color:var(--text-muted)}.input-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px;font-size:12px;font-weight:600;display:block}.owner-badge{border-radius:var(--radius-sm);cursor:pointer;-webkit-tap-highlight-color:transparent;border:2px solid #0000;justify-content:center;align-items:center;width:28px;height:28px;font-size:12px;font-weight:700;transition:all .2s;display:inline-flex}.owner-badge-K{background:var(--kutay-soft);color:var(--kutay);border-color:#0000}.owner-badge-K.active{background:var(--kutay);color:#fff;border-color:var(--kutay);box-shadow:0 0 12px var(--primary-glow)}.owner-badge-D{background:var(--dylan-soft);color:var(--dylan);border-color:#0000}.owner-badge-D.active{background:var(--dylan);color:#fff;border-color:var(--dylan);box-shadow:0 0 12px #6366f166}.owner-badge-C{background:var(--common-soft);color:var(--common);border-color:#0000}.owner-badge-C.active{background:var(--common);color:#0a0a0f;border-color:var(--common);box-shadow:0 0 12px var(--secondary-glow)}.bottom-nav{height:calc(var(--nav-height) + var(--safe-bottom));padding-bottom:var(--safe-bottom);-webkit-backdrop-filter:blur(20px);border-top:1px solid var(--border-glass);z-index:100;background:#0a0a0fd9;justify-content:space-around;align-items:center;display:flex;position:fixed;bottom:0;left:0;right:0}.nav-item{color:var(--text-muted);border-radius:var(--radius-md);-webkit-tap-highlight-color:transparent;cursor:pointer;background:0 0;border:none;flex-direction:column;align-items:center;gap:4px;padding:8px 12px;font-family:Inter,sans-serif;text-decoration:none;transition:all .2s;display:flex}.nav-item:hover,.nav-item.active{color:var(--primary)}.nav-item.active{background:var(--primary-soft)}.nav-icon{font-size:22px;line-height:1}.nav-label{letter-spacing:.3px;font-size:10px;font-weight:600}.receipt-item-row{background:var(--bg-glass);border:1px solid var(--border-glass);border-radius:var(--radius-md);grid-template-columns:1fr auto auto;align-items:center;gap:8px;margin-bottom:8px;padding:12px;transition:all .2s;display:grid}.receipt-item-info{min-width:0}.receipt-item-name{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:500;overflow:hidden}.receipt-item-type{color:var(--text-secondary);margin-top:2px;font-size:12px}.receipt-item-price{color:var(--accent);white-space:nowrap;font-size:15px;font-weight:600}.receipt-item-owners{gap:4px;display:flex}.editable-inline{border:none;border-bottom:1px dashed var(--text-muted);color:inherit;font-family:inherit;font-size:inherit;font-weight:inherit;background:0 0;outline:none;width:100%;min-width:0;padding:2px 4px;transition:all .2s}.editable-inline:focus{border-bottom-color:var(--primary);background:var(--primary-soft);border-radius:4px}.recipe-card{background:var(--bg-glass);border:1px solid var(--border-glass);border-radius:var(--radius-lg);cursor:pointer;margin-bottom:12px;padding:16px;transition:all .3s}.recipe-card:hover{background:var(--bg-card-hover);border-color:var(--border-active);box-shadow:var(--shadow-md);transform:translateY(-2px)}.recipe-card-header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:8px;display:flex}.recipe-card-title{color:var(--text-primary);font-size:16px;font-weight:600}.recipe-card-meta{gap:12px;margin-top:4px;display:flex}.recipe-card-meta-item{color:var(--text-secondary);align-items:center;gap:4px;font-size:12px;display:flex}.recipe-card-description{color:var(--text-secondary);margin-top:8px;font-size:13px;line-height:1.5}.recipe-tag{background:var(--primary-soft);color:var(--primary);border-radius:var(--radius-full);margin-top:8px;margin-right:4px;padding:3px 8px;font-size:11px;font-weight:600;display:inline-block}.split-card{border:1px solid var(--border-glass);border-radius:var(--radius-lg);background:linear-gradient(135deg,#ff6b3514,#4ecdc414);padding:20px}.split-total{text-align:center;margin-bottom:16px}.split-total-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;font-size:12px}.split-total-amount{background:linear-gradient(135deg, var(--primary), var(--accent));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:32px;font-weight:800}.split-row{border-bottom:1px solid var(--border-glass);justify-content:space-between;align-items:center;padding:8px 0;display:flex}.split-row:last-child{border-bottom:none;padding-top:12px;font-weight:600}.split-row-label{color:var(--text-secondary);align-items:center;gap:8px;font-size:14px;display:flex}.split-row-amount{color:var(--text-primary);font-size:14px;font-weight:600}.tab-bar{background:var(--bg-glass);border-radius:var(--radius-md);gap:4px;margin-bottom:20px;padding:4px;display:flex}.tab-item{text-align:center;color:var(--text-secondary);border-radius:var(--radius-sm);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;flex:1;padding:10px 8px;font-family:Inter,sans-serif;font-size:13px;font-weight:600;transition:all .2s}.tab-item.active{background:var(--primary);color:#fff;box-shadow:var(--shadow-glow-primary)}.tab-item:not(.active):hover{color:var(--text-primary);background:var(--bg-card-hover)}.loading-spinner{border:3px solid var(--border-glass);border-top-color:var(--primary);border-radius:50%;width:24px;height:24px;animation:.8s linear infinite spin}.loading-overlay{color:var(--text-secondary);flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:48px 0;font-size:14px;display:flex}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.animate-fade-in{animation:.3s forwards fadeIn}.animate-slide-up{animation:.4s forwards slideUp}.empty-state{text-align:center;color:var(--text-secondary);padding:48px 24px}.empty-state-icon{opacity:.5;margin-bottom:12px;font-size:48px}.empty-state-text{margin-bottom:4px;font-size:15px}.empty-state-hint{color:var(--text-muted);font-size:13px}.log-entry{border-bottom:1px solid var(--border-glass);align-items:flex-start;gap:12px;padding:12px;display:flex}.log-entry:last-child{border-bottom:none}.log-avatar{border-radius:var(--radius-sm);flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:14px;font-weight:700;display:flex}.log-avatar.kutay{background:var(--kutay-soft);color:var(--kutay)}.log-avatar.dylan{background:var(--dylan-soft);color:var(--dylan)}.log-content{flex:1;min-width:0}.log-details{color:var(--text-primary);font-size:13px;line-height:1.4}.log-time{color:var(--text-muted);margin-top:2px;font-size:11px}.user-selector-page{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:100dvh;padding:24px;display:flex}.user-selector-logo{margin-bottom:8px;font-size:48px}.user-selector-title{background:linear-gradient(135deg, var(--primary), var(--accent));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:4px;font-size:28px;font-weight:800}.user-selector-subtitle{color:var(--text-secondary);margin-bottom:48px;font-size:14px}.user-cards{gap:16px;width:100%;max-width:360px;display:flex}.user-card{background:var(--bg-glass);border:2px solid var(--border-glass);border-radius:var(--radius-xl);cursor:pointer;text-align:center;-webkit-tap-highlight-color:transparent;flex:1;padding:24px 16px;transition:all .3s}.user-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}.user-card:first-child:hover{border-color:var(--kutay);box-shadow:0 8px 32px #ff6b3533}.user-card:last-child:hover{border-color:var(--dylan);box-shadow:0 8px 32px #6366f133}.user-card-avatar{border-radius:var(--radius-lg);justify-content:center;align-items:center;width:64px;height:64px;margin:0 auto 12px;font-size:28px;display:flex}.user-card-avatar.kutay{background:linear-gradient(135deg, var(--kutay-soft), #ff6b3533)}.user-card-avatar.dylan{background:linear-gradient(135deg, var(--dylan-soft), #6366f133)}.user-card-name{color:var(--text-primary);font-size:18px;font-weight:700}.quick-actions{grid-template-columns:1fr 1fr;gap:12px;margin-bottom:24px;display:grid}.quick-action{background:var(--bg-glass);border:1px solid var(--border-glass);border-radius:var(--radius-lg);text-align:center;cursor:pointer;-webkit-tap-highlight-color:transparent;flex-direction:column;align-items:center;gap:8px;padding:20px 16px;text-decoration:none;transition:all .3s;display:flex}.quick-action:hover{box-shadow:var(--shadow-md);border-color:var(--border-active);transform:translateY(-2px)}.quick-action-icon{font-size:28px}.quick-action-label{color:var(--text-primary);font-size:13px;font-weight:600}.quick-action-desc{color:var(--text-secondary);font-size:11px}.upload-zone{border:2px dashed var(--border-glass);border-radius:var(--radius-lg);text-align:center;cursor:pointer;-webkit-tap-highlight-color:transparent;padding:40px 24px;transition:all .3s}.upload-zone:hover,.upload-zone.active{border-color:var(--primary);background:var(--primary-soft)}.upload-zone-icon{margin-bottom:12px;font-size:40px}.upload-zone-text{color:var(--text-secondary);font-size:14px}.upload-zone-hint{color:var(--text-muted);margin-top:4px;font-size:12px}.modal-overlay{-webkit-backdrop-filter:blur(8px);z-index:200;background:#000000b3;justify-content:center;align-items:flex-end;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.modal-content{background:var(--bg-secondary);border-radius:var(--radius-xl) var(--radius-xl) 0 0;width:100%;max-width:480px;max-height:85dvh;padding:24px;animation:.3s slideUp;overflow-y:auto}.modal-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.modal-title{font-size:18px;font-weight:700}.modal-close{background:var(--bg-glass);border-radius:var(--radius-sm);width:32px;height:32px;color:var(--text-secondary);cursor:pointer;border:none;justify-content:center;align-items:center;font-family:Inter,sans-serif;font-size:18px;display:flex}.divider{background:var(--border-glass);height:1px;margin:16px 0}.badge{border-radius:var(--radius-full);align-items:center;padding:4px 10px;font-size:12px;font-weight:600;display:inline-flex}.badge-primary{background:var(--primary-soft);color:var(--primary)}.badge-secondary{background:var(--secondary-soft);color:var(--secondary)}.section-title{color:var(--text-primary);margin-bottom:12px;font-size:16px;font-weight:600}.flex-between{justify-content:space-between;align-items:center;display:flex}.text-right{text-align:right}.text-center{text-align:center}.mt-8{margin-top:8px}.mt-12{margin-top:12px}.mt-16{margin-top:16px}.mt-24{margin-top:24px}.mb-8{margin-bottom:8px}.mb-12{margin-bottom:12px}.mb-16{margin-bottom:16px}.gap-8{gap:8px}.gap-12{gap:12px}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-glass);border-radius:4px}.recipe-detail-header{margin-bottom:24px}.recipe-detail-title{color:var(--text-primary);margin-bottom:8px;font-size:22px;font-weight:700}.recipe-detail-meta{flex-wrap:wrap;gap:16px;display:flex}.recipe-detail-meta-item{color:var(--text-secondary);background:var(--bg-glass);border-radius:var(--radius-full);align-items:center;gap:6px;padding:6px 12px;font-size:13px;display:flex}.ingredient-list{list-style:none}.ingredient-item{border-bottom:1px solid var(--border-glass);justify-content:space-between;align-items:center;padding:10px 0;font-size:14px;display:flex}.ingredient-item:last-child{border-bottom:none}.ingredient-name{color:var(--text-primary)}.ingredient-amount{color:var(--text-secondary);font-weight:500}.ingredient-available{color:var(--success)}.ingredient-missing{color:var(--danger)}.step-list{counter-reset:step;list-style:none}.step-item{counter-increment:step;border-bottom:1px solid var(--border-glass);gap:12px;padding:12px 0;display:flex}.step-item:last-child{border-bottom:none}.step-number{background:var(--primary-soft);width:28px;height:28px;color:var(--primary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:13px;font-weight:700;display:flex}.step-text{color:var(--text-primary);padding-top:3px;font-size:14px;line-height:1.6}.cook-confirmation{border:1px solid var(--border-glass);border-radius:var(--radius-lg);background:linear-gradient(135deg,#4ecdc414,#ff6b3514);margin-top:24px;padding:20px}.cook-confirmation-title{color:var(--text-primary);text-align:center;margin-bottom:12px;font-size:16px;font-weight:600}.portion-editor{margin-top:12px}.portion-row{border-bottom:1px solid var(--border-glass);justify-content:space-between;align-items:center;gap:8px;padding:8px 0;display:flex}.portion-row:last-child{border-bottom:none}.portion-name{color:var(--text-primary);flex:1;font-size:13px}.portion-input{background:var(--bg-glass);border:1px solid var(--border-glass);border-radius:var(--radius-sm);width:80px;color:var(--text-primary);text-align:right;outline:none;padding:6px 10px;font-family:Inter,sans-serif;font-size:13px}.portion-input:focus{border-color:var(--primary)}.portion-unit{color:var(--text-secondary);width:30px;font-size:12px}
