Spaces:
Sleeping
Sleeping
| body { | |
| font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; | |
| background-color: #121212; | |
| color: #ffffff; | |
| margin: 0; | |
| overflow-x: hidden; | |
| display: flex; | |
| } | |
| .main-panel { | |
| flex-grow: 1; | |
| display: flex; | |
| justify-content: center; | |
| align-items: center; | |
| min-height: 100vh; | |
| padding: 2rem; | |
| transition: 0.3s; | |
| } | |
| .container { | |
| background-color: #1e1e1e; | |
| padding: 2rem; | |
| border-radius: 12px; | |
| box-shadow: 0 8px 16px rgba(0,0,0,0.5); | |
| width: 90%; | |
| max-width: 650px; /* ZWI臉KSZONE Z 500px - panel na komputerze jest teraz szerszy */ | |
| text-align: center; | |
| box-sizing: border-box; | |
| } | |
| h1 { color: #00ff88; margin-top: 0; } | |
| .mode-indicator { color: #aaa; font-size: 0.9rem; margin-bottom: 20px; } | |
| input[type="file"] { display: none; } | |
| .custom-file-upload { | |
| border: 2px dashed #00ff88; | |
| padding: 1.5rem; | |
| cursor: pointer; | |
| border-radius: 8px; | |
| display: block; | |
| margin-bottom: 1rem; | |
| transition: 0.3s; | |
| } | |
| .custom-file-upload:hover { background-color: rgba(0, 255, 136, 0.1); } | |
| #preview { | |
| max-width: 100%; | |
| border-radius: 8px; | |
| margin-bottom: 1rem; | |
| display: none; | |
| max-height: 300px; | |
| object-fit: cover; | |
| width: 100%; | |
| } | |
| button { | |
| background-color: #00ff88; | |
| color: #121212; | |
| border: none; | |
| padding: 10px 20px; | |
| font-size: 1rem; | |
| font-weight: bold; | |
| border-radius: 6px; | |
| cursor: pointer; | |
| width: 100%; | |
| transition: 0.3s; | |
| } | |
| button:hover { background-color: #00cc6a; } | |
| button:disabled { background-color: #555; cursor: not-allowed; } | |
| .results { | |
| margin-top: 1.5rem; | |
| text-align: left; | |
| display: none; | |
| background-color: #2a2a2a; | |
| padding: 1rem; | |
| border-radius: 8px; | |
| } | |
| table { | |
| width: 100%; | |
| border-collapse: collapse; | |
| margin-top: 10px; | |
| } | |
| th, td { | |
| text-align: left; | |
| padding: 8px; | |
| border-bottom: 1px solid #444; | |
| } | |
| th { color: #888; font-size: 0.9rem; } | |
| .emoji-col { width: 30px; text-align: center; } | |
| .val-model { color: #00ff88; font-weight: bold; } | |
| .val-truth { color: #ffaa00; } | |
| .val-diff { color: #ff4444; font-size: 0.9rem; } | |
| .sidebar { | |
| position: fixed; | |
| right: -400px; | |
| top: 0; | |
| width: 350px; | |
| height: 100vh; | |
| background-color: #1a1a1a; | |
| border-left: 1px solid #333; | |
| transition: right 0.3s ease-in-out; | |
| padding: 1.5rem; | |
| box-sizing: border-box; | |
| overflow-y: auto; | |
| z-index: 100; | |
| } | |
| .sidebar.open { right: 0; } | |
| #sidebarTitle { color: #00ff88; margin-top: 0; } | |
| #sidebarDesc { font-size: 0.85rem; color: #888; } | |
| /* PRZYCISKI ZAK艁ADEK */ | |
| .toggle-btn { | |
| position: fixed; | |
| right: 20px; | |
| background-color: #333; | |
| color: white; | |
| width: 180px; | |
| height: 45px; | |
| box-sizing: border-box; | |
| display: flex; | |
| align-items: center; | |
| justify-content: center; | |
| z-index: 101; | |
| transition: all 0.3s ease-in-out; | |
| border-radius: 6px; | |
| box-shadow: -2px 0 5px rgba(0,0,0,0.5); | |
| } | |
| #btnTest { top: 20px; } | |
| #btnExternal { top: 75px; } | |
| #btnUser { top: 130px; } | |
| .toggle-btn.shifted { | |
| right: 350px; | |
| } | |
| .toggle-btn.open { | |
| background-color: #00ff88; | |
| color: #121212; | |
| border-radius: 6px 0 0 6px; | |
| } | |
| .meal-card { | |
| background-color: #2a2a2a; | |
| border-radius: 8px; | |
| padding: 10px; | |
| margin-bottom: 15px; | |
| cursor: pointer; | |
| border: 1px solid transparent; | |
| transition: 0.2s; | |
| } | |
| .meal-card:hover { border-color: #00ff88; } | |
| .meal-card img { width: 100%; height: 120px; object-fit: cover; border-radius: 4px; } | |
| .meal-card-title { font-weight: bold; margin: 8px 0 4px 0; font-size: 1.1rem; } | |
| .meal-card-macro { font-size: 0.85rem; color: #aaa; } | |
| .add-meal-form { | |
| background-color: #222; | |
| padding: 15px; | |
| border-radius: 8px; | |
| margin-top: 20px; | |
| border: 1px dashed #555; | |
| } | |
| .add-meal-form input[type="number"], .add-meal-form input[type="text"] { | |
| width: 100%; padding: 8px; margin-bottom: 8px; background-color: #333; | |
| border: 1px solid #444; color: white; border-radius: 4px; box-sizing: border-box; | |
| } | |
| .form-label { font-size: 0.85rem; color: #aaa; display: block; margin-bottom: 5px; } | |
| .form-file { display: block ; margin-bottom: 10px; font-size: 0.8rem; } | |
| .form-row { display: flex; gap: 5px; } | |
| .btn-save { margin-top: 10px; background-color: #444; color: white; } | |
| /* --- RESPONSYWNO艢膯 I PRZYCISK MENU - FINALNA, KULOODPORNA POPRAWKA UX --- */ | |
| .mobile-hamburger-wrapper { | |
| display: none; /* Ca艂kowicie ukrywamy przycisk na komputerze */ | |
| } | |
| @media (max-width: 800px) { | |
| /* Bezwzgl臋dne wymuszenie uk艂adu pionowego, bez tego wszystko si臋 rozsypuje */ | |
| body { | |
| flex-direction: column ; | |
| align-items: center ; | |
| } | |
| /* Mniejsze paddingi zewn臋trzne, 偶eby panel g艂贸wne mia艂 wi臋cej miejsca na oddychanie */ | |
| .main-panel { | |
| width: 100% ; | |
| min-height: auto ; | |
| padding: 10px ; | |
| box-sizing: border-box ; | |
| } | |
| /* KULOODPORNE CENTROWANIE NA 90% SZEROKO艢CI - Twoja sugestia, to jest Source of Truth */ | |
| .container { | |
| width: 90% ; /* Agresywne wymuszenie szeroko艣ci na telefonie */ | |
| max-width: 650px ; /* Ale nie szerszy ni偶 wersja PC */ | |
| margin: 0 auto ; /* Gwarantuje idealne centrowanie */ | |
| box-sizing: border-box ; | |
| } | |
| /* Menu pod przyciskiem r贸wnie偶 u艂o偶one Flexboxem */ | |
| .menu-container { | |
| display: none; | |
| flex-direction: column; | |
| align-items: center; | |
| width: 100%; | |
| gap: 10px; | |
| margin-top: 10px; | |
| margin-bottom: 20px; | |
| } | |
| .menu-container.show { | |
| display: flex; | |
| } | |
| /* Wy艣rodkowane Hamburger Menu - ma tak膮 sam膮 szeroko艣膰 jak kontener! */ | |
| .mobile-hamburger-wrapper { | |
| display: flex ; | |
| justify-content: center ; | |
| width: 100% ; | |
| margin-top: 20px; | |
| margin-bottom: 10px; | |
| } | |
| .hamburger-btn { | |
| display: block ; | |
| background-color: #333; | |
| color: #00ff88; | |
| border: 1px solid #00ff88; | |
| padding: 12px 20px; | |
| font-size: 1.1rem; | |
| font-weight: bold; | |
| border-radius: 6px; | |
| cursor: pointer; | |
| width: 90% ; /* Zr贸wnane z szeroko艣ci膮 kontenera */ | |
| max-width: 650px ; | |
| } | |
| /* Przyciski zak艂adek - teraz idealnie dopasuj膮 si臋 do szeroko艣ci panelu */ | |
| .toggle-btn { | |
| display: block ; | |
| width: 90% ; | |
| max-width: 650px ; | |
| position: static ; | |
| margin: 0 auto ; | |
| } | |
| /* --- FINA艁OWA POPRAWKA TABELI NA MOBILE (Gdzie ucieka艂y litery) --- */ | |
| .results { padding: 8px ; } | |
| /* Ukrywamy kolumny/ikony na mobile, je艣li s膮, 偶eby tekst mia艂 luz */ | |
| .emoji-col { display: none ; } | |
| /* Panel boczny rozci膮gamy na ca艂膮 szeroko艣膰 telefonu */ | |
| .sidebar { | |
| width: 100%; | |
| right: -100%; | |
| } | |
| .sidebar.open { | |
| right: 0; | |
| } | |
| } |