:root{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-width:320px;min-height:100vh;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;background:linear-gradient(135deg,#667eea,#4b52a2);background-attachment:fixed;background-repeat:no-repeat;background-size:cover;color:#333;overflow-x:hidden;-webkit-overflow-scrolling:touch}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}h1{font-size:3.2em;line-height:1.1}.container{max-width:1200px;margin:0 auto;padding:20px;width:100%;box-sizing:border-box;overflow-x:hidden}.header{background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:15px;padding:20px;margin-bottom:30px;box-shadow:0 8px 32px #0000001a}.main-content{background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:15px;padding:30px;box-shadow:0 8px 32px #0000001a;min-height:500px;width:100%;box-sizing:border-box;overflow-x:hidden}.alert-success{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.spinner{border:4px solid #f3f3f3;border-top:4px solid #667eea;border-radius:50%;width:40px;height:40px;animation:spin 1s linear infinite;margin:20px auto}.auth-page{max-width:600px;margin:0 auto}@media (min-width: 834px) and (max-width: 1194px) and (min-height: 1194px) and (max-height: 1366px){body{background:linear-gradient(135deg,#667eea,#4b52a2)!important;background-attachment:fixed!important;background-size:100% 100%!important;background-repeat:no-repeat!important}.container{padding:10px;max-width:100%;min-height:100vh}.header{padding:12px;margin-bottom:15px}.header h1{font-size:1.8rem}.header p{font-size:.9rem}.main-content,.auth-main-content{padding:15px;margin-bottom:10px}}@media (min-width: 769px) and (max-width: 1024px){body{background:linear-gradient(135deg,#667eea,#4b52a2)!important;background-attachment:fixed!important;background-size:100% 100%!important;background-repeat:no-repeat!important}}@media (max-width: 768px){.container{padding:10px}.header h1{font-size:2rem}.nav{flex-direction:column;align-items:center}.grid-2,.grid-3{grid-template-columns:1fr}.auth-page,.form-page{max-width:100%;padding:0 10px}.form-page .btn-secondary{float:none;width:100%;margin-bottom:20px}}#root{max-width:1280px;margin:0 auto;padding:2rem;text-align:center}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-reduced-motion: no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.card{padding:2em}.read-the-docs{color:#888}.auth-page{width:600px;margin:1.5rem auto;padding:2.5rem 2rem 2rem;background:#fff;border-radius:20px;box-shadow:0 4px 32px #5050a01a;display:flex;flex-direction:column;align-items:stretch;min-height:750px}@media (min-width: 834px) and (max-width: 1194px) and (min-height: 1194px) and (max-height: 1366px){.auth-page{max-width:85%;margin:1rem auto;padding:1.5rem 1rem 1rem;border-radius:15px;min-height:500px}.auth-page h2{font-size:1.6rem;margin-bottom:1.5rem}.form-group{margin-bottom:1rem}.form-group select,.form-group input[type=date],.form-group input[type=time]{padding:.75rem .875rem;font-size:1rem;min-height:44px}.btn.btn-primary{padding:.875rem 0;font-size:1.1rem;min-height:44px}}@media (min-width: 769px) and (max-width: 1024px){.auth-page{max-width:90%;margin:2rem auto;padding:2rem 1.5rem 1.5rem;border-radius:18px;min-height:600px}.auth-page h2{font-size:1.8rem;margin-bottom:1.75rem}.form-group{margin-bottom:1.25rem}.form-group select,.form-group input[type=date],.form-group input[type=time]{padding:.875rem 1rem;font-size:1.05rem;min-height:48px}.btn.btn-primary{padding:1rem 0;font-size:1.15rem;min-height:48px}}@media (max-width: 768px){.auth-page{max-width:95%;margin:1rem auto;padding:1.5rem 1rem 1rem;border-radius:15px}}@media (max-width: 480px){.auth-page{max-width:100%;margin:.5rem;padding:1rem .75rem .75rem;border-radius:12px;overflow-x:hidden;box-sizing:border-box}}.auth-page h2{font-size:2rem;font-weight:700;color:#2d3a4a;margin-bottom:2rem;text-align:center;align-self:center}@media (max-width: 768px){.auth-page h2{font-size:1.75rem;margin-bottom:1.5rem}}@media (max-width: 480px){.auth-page h2{font-size:1.5rem;margin-bottom:1rem}}.form-group{width:100%;margin-bottom:1.5rem}.auth-page .form-group{flex:1;display:flex;flex-direction:column;justify-content:center}@media (max-width: 480px){.form-group{margin-bottom:1rem;width:100%;box-sizing:border-box}}.form-group label{display:block;font-weight:600;color:#2d3a4a;margin-bottom:.5rem;text-align:left}.form-group select,.form-group input[type=date],.form-group input[type=time],.form-group input[type=text]{width:100%;padding:.75rem 1rem;border:1.5px solid #e0e6ed;border-radius:8px;font-size:1.1rem;background:#f8fafc;color:#2d3a4a;transition:border .2s;-webkit-appearance:none;-moz-appearance:none;appearance:none;-webkit-user-select:text;user-select:text}.form-group select{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3e%3c/svg%3e");background-position:right .75rem center;background-repeat:no-repeat;background-size:1rem;padding-right:2.5rem}.form-group input[type=date],.form-group input[type=time]{-webkit-user-modify:read-write;-webkit-appearance:none;appearance:none;-webkit-tap-highlight-color:transparent}.form-group select:focus,.form-group input[type=date]:focus,.form-group input[type=time]:focus,.form-group input[type=text]:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;-webkit-box-shadow:0 0 0 3px rgba(102,126,234,.1)}.cinema-search-wrapper{position:relative}.cinema-search-input{width:100%;padding:.75rem 1rem;border:1.5px solid #e0e6ed;border-radius:8px;font-size:1.1rem;background:#f8fafc;color:#2d3a4a;transition:border .2s}.cinema-search-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.cinema-results-list{position:absolute;top:100%;left:0;right:0;z-index:1000;background:#fff;border:1.5px solid #e0e6ed;border-radius:8px;margin-top:.25rem;box-shadow:0 4px 12px #0000001a}.cinema-result-item{padding:.75rem 1rem;cursor:pointer;color:#2d3a4a;transition:background-color .2s;border-bottom:1px solid #f0f2f7}.cinema-result-item:last-child{border-bottom:none}.cinema-result-item:hover{background-color:#f8fafc}.cinema-result-item:active{background-color:#f0f4ff;color:#667eea}.cinema-result-item.no-results{color:#b0b8c1;cursor:default;font-style:italic}.cinema-result-item.no-results:hover{background-color:#fff}@media (max-width: 480px){.form-group select,.form-group input[type=date],.form-group input[type=time],.form-group input[type=text]{padding:.875rem .75rem;font-size:1rem;border-radius:6px;min-height:44px;touch-action:manipulation;box-sizing:border-box;width:100%;max-width:100%;-webkit-appearance:none;-moz-appearance:none;appearance:none;-webkit-user-select:text;user-select:text}.cinema-result-item{padding:.875rem .75rem;font-size:.95rem}.form-group select{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3e%3c/svg%3e");background-position:right .75rem center;background-repeat:no-repeat;background-size:1rem;padding-right:2.5rem}.form-group input[type=date],.form-group input[type=time]{font-size:.9rem;padding:.875rem .5rem;-webkit-user-modify:read-write;-webkit-tap-highlight-color:transparent}}.form-group select:disabled,.form-group input:disabled{background:#f0f2f7;color:#b0b8c1}.btn.btn-primary{width:100%;padding:1rem 0;background:linear-gradient(90deg,#6a82fb,#5f6cff);color:#fff;font-size:1.2rem;font-weight:700;border:none;border-radius:10px;box-shadow:0 2px 8px #5050a014;cursor:pointer;margin-top:1.5rem;transition:background .2s}.auth-page form .btn.btn-primary{flex-shrink:0;align-self:stretch}@media (max-width: 480px){.btn.btn-primary{padding:.875rem 0;font-size:1.1rem;border-radius:8px;margin-top:1rem;min-height:44px;touch-action:manipulation}}.btn.btn-primary:disabled{background:#b0b8c1;cursor:not-allowed}.alert.alert-error{width:100%;background:#ffeaea;color:#c0392b;border:1px solid #ffb3b3;border-radius:8px;padding:.75rem 1rem;margin-bottom:1.5rem;text-align:center;font-weight:600;align-self:center}@media (max-width: 480px){.alert.alert-error{padding:.625rem .75rem;margin-bottom:1rem;font-size:.9rem}}*{margin:0;padding:0;box-sizing:border-box}html,body{height:auto}body{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;background:linear-gradient(135deg,#66acea,#4b4ba2);background-attachment:fixed;min-height:100vh;color:#333}.container{max-width:1200px;margin:0 auto;padding:20px}.header{background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:15px;padding:20px;margin:0 auto 30px;box-shadow:0 8px 32px #0000001a;display:flex;flex-direction:column;align-items:center;justify-content:center;transition:max-width .3s ease}.header-auth{max-width:600px}.header-form{max-width:100%}.header h1{color:#2c3e50;text-align:center;font-size:2.5rem;margin-bottom:10px}.header p{text-align:center;color:#7f8c8d;font-size:1.1rem}.nav{display:flex;justify-content:center;gap:20px;margin:20px 0}.nav-button{background:linear-gradient(45deg,#667eea,#764ba2);color:#fff;border:none;padding:12px 24px;border-radius:25px;cursor:pointer;font-size:1rem;font-weight:500;transition:all .3s ease;box-shadow:0 4px 15px #667eea4d}.nav-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.nav-button.active{background:linear-gradient(45deg,#e74c3c,#c0392b)}.auth-main-content{background:none;width:100%}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;font-weight:600;color:#2c3e50}.form-control{width:100%;padding:12px 16px;border:2px solid #e1e8ed;border-radius:8px;font-size:1rem;transition:border-color .3s ease}.form-control:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.btn{padding:12px 24px;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;text-decoration:none;display:inline-block;text-align:center}.btn-primary{background:linear-gradient(45deg,#667eea,#764ba2);color:#fff;box-shadow:0 4px 15px #667eea4d}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.btn-secondary{background:linear-gradient(45deg,#95a5a6,#7f8c8d);color:#fff}.btn-danger{background:linear-gradient(45deg,#e74c3c,#c0392b);color:#fff}.grid{display:grid;gap:20px}.grid-2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.grid-3{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.card{background:#fff;border-radius:12px;padding:20px;box-shadow:0 4px 15px #0000001a;transition:transform .3s ease}.card:hover{transform:translateY(-5px)}.table{width:100%;border-collapse:collapse;margin-top:20px}.table th,.table td{padding:12px;text-align:left;border-bottom:1px solid #e1e8ed}.table th{background:#f8f9fa;font-weight:600;color:#2c3e50}.table tr:hover{background:#f8f9fa}.alert{padding:15px;border-radius:8px;margin-bottom:20px}.alert-success{background:#d4edda;color:#155724;border:1px solid #c3e6cb;align-self:center}.alert-error{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.alert-warning{background:#fff3cd;color:#856404;border:1px solid #ffeaa7}.spinner{border:4px solid #f3f3f3;border-top:4px solid #667eea;border-radius:50%;width:40px;height:40px;animation:spin 1s linear infinite;margin:20px auto;align-self:center}@media (max-width: 480px){.spinner{width:32px;height:32px;margin:15px auto}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 768px){.container{padding:10px}.header h1{font-size:2rem}.nav{flex-direction:column;align-items:center}.grid-2,.grid-3{grid-template-columns:1fr}}.auth-page h2{text-align:center;color:#2c3e50;margin-bottom:30px;font-size:1.8rem}.auth-page .form-group{margin-bottom:25px}.auth-page select{width:100%;padding:12px 16px;border:2px solid #e1e8ed;border-radius:8px;font-size:1rem;transition:border-color .3s ease;background:#fff}.auth-page select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.auth-page select:disabled{background:#f8f9fa;color:#6c757d;cursor:not-allowed}.auth-page button{width:100%;margin-top:20px}.form-page{max-width:800px;margin:0 auto}.form-page h2{color:#2c3e50;margin-bottom:20px;font-size:1.8rem}.form-page>div:first-of-type{background:#f8f9fa;padding:15px;border-radius:8px;margin-bottom:20px;font-size:.9rem}.form-page input{width:100%;padding:12px 16px;border:2px solid #e1e8ed;border-radius:8px;font-size:1rem;transition:border-color .3s ease}.form-page input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-page input:disabled{background:#f8f9fa;color:#6c757d;cursor:not-allowed}.form-page .btn-secondary{float:right;margin-bottom:20px}@media (max-width: 768px){.auth-page,.form-page{max-width:100%;padding:0 10px}.form-page .btn-secondary{float:none;width:100%;margin-bottom:20px}}.auth-page input[type=date],.auth-page input[type=time]{color-scheme:light;-webkit-appearance:none;appearance:none;-webkit-user-modify:read-write;-webkit-user-select:text;user-select:text;-webkit-tap-highlight-color:transparent}@supports (-webkit-appearance: none){.form-group input[type=date]::-webkit-datetime-edit,.form-group input[type=time]::-webkit-datetime-edit{-webkit-user-select:text;user-select:text}.form-group input[type=date]::-webkit-datetime-edit-fields-wrapper,.form-group input[type=time]::-webkit-datetime-edit-fields-wrapper{-webkit-user-select:text;user-select:text}.form-group input[type=date]::-webkit-datetime-edit-text,.form-group input[type=time]::-webkit-datetime-edit-text{-webkit-user-select:text;user-select:text}.form-group input[type=date]::-webkit-datetime-edit-month-field,.form-group input[type=date]::-webkit-datetime-edit-day-field,.form-group input[type=date]::-webkit-datetime-edit-year-field,.form-group input[type=time]::-webkit-datetime-edit-hour-field,.form-group input[type=time]::-webkit-datetime-edit-minute-field{-webkit-user-select:text;user-select:text}}.auth-page form{width:100%;flex:1;box-sizing:border-box;display:flex;flex-direction:column;justify-content:space-evenly}@media (max-width: 480px){.auth-page form{width:100%;max-width:100%;overflow-x:hidden}}.modal-backdrop{position:fixed;inset:0;background:#0009;display:flex;justify-content:center;align-items:center;z-index:9999;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:20px;overflow-y:auto;box-sizing:border-box}.modal{background:#fff;border-radius:15px;padding:30px;max-width:500px;width:90%;max-height:calc(100vh - 40px);overflow-y:auto;box-shadow:0 25px 80px #00000080;position:relative;display:flex;flex-direction:column;align-items:center;box-sizing:border-box;animation:modalSlideIn .3s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:scale(.9) translateY(-20px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-header{display:flex;justify-content:center;align-items:center;margin-bottom:20px;width:100%;gap:10px;flex-wrap:wrap}.modal-header h3{font-size:1.5rem;color:#2d3a4a;font-weight:600;margin:0;text-align:center;width:100%}.modal-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#7f8c8d;padding:5px;border-radius:50%;width:30px;height:30px;display:flex;align-items:center;justify-content:center;position:absolute;top:15px;right:15px}.modal-close:hover{color:#e74c3c;background:#f8f9fa}.modal-content{margin-bottom:20px;display:flex;flex-direction:column;align-items:center;width:100%}.modal-content p{margin-bottom:20px;color:#555;line-height:1.5;text-align:center}.planning-options{display:flex;flex-direction:column;gap:10px;align-items:center;width:100%}.planning-option{border:2px solid #e1e8ed;border-radius:8px;padding:15px;cursor:pointer;transition:all .3s ease;background:#f8fafc;width:100%;max-width:350px;display:flex;flex-direction:column;align-items:center}.planning-option:hover{border-color:#667eea;background:#f0f4ff;transform:translateY(-2px);box-shadow:0 4px 15px #667eea33}.option-details{margin-bottom:8px;color:#2d3a4a;text-align:center;width:100%}.option-details:last-child{margin-bottom:0}.option-details strong{color:#667eea;font-weight:600}@media (max-width: 768px){.modal-backdrop{padding:15px}.modal{width:95%;padding:20px;max-height:calc(100vh - 30px)}.modal-header h3{font-size:1.3rem}.planning-option{padding:12px;max-width:100%}}@media (max-width: 480px){.modal-backdrop{padding:10px}.modal{width:calc(100% - 20px);padding:15px;max-height:calc(100vh - 20px);border-radius:10px}.modal-header h3{font-size:1.2rem}.planning-option{padding:10px;max-width:100%}.option-details{font-size:.9rem}}
