diff --git a/data/settings.css b/data/settings.css new file mode 100644 index 0000000..a50ae06 --- /dev/null +++ b/data/settings.css @@ -0,0 +1,335 @@ +* { + margin: 0; + padding: 0; + box-sizing: border-box; + } + + body { + font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif; + background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); + min-height: 100vh; + padding: 20px; + } + + .container { + max-width: 600px; + margin: 0 auto; + background: rgba(255, 255, 255, 0.95); + border-radius: 20px; + box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1); + overflow: hidden; + backdrop-filter: blur(10px); + } + + .header { + background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); + color: white; + padding: 30px; + text-align: center; + position: relative; + } + + .header::before { + content: ""; + position: absolute; + top: 0; + left: 0; + right: 0; + bottom: 0; + background: url('data:image/svg+xml,'); + opacity: 0.3; + } + + .header h1 { + font-size: 2.5em; + margin-bottom: 10px; + position: relative; + z-index: 1; + } + + .header p { + font-size: 1.1em; + opacity: 0.9; + position: relative; + z-index: 1; + } + + .content { + padding: 40px; + } + + .nav-buttons { + display: flex; + gap: 15px; + margin-bottom: 30px; + } + + .nav-button { + flex: 1; + padding: 12px 20px; + background: #f8f9fa; + border: 2px solid #e9ecef; + border-radius: 10px; + color: #495057; + text-decoration: none; + text-align: center; + font-weight: 600; + transition: all 0.3s ease; + } + + .nav-button:hover { + background: #667eea; + color: white; + border-color: #667eea; + transform: translateY(-2px); + box-shadow: 0 5px 15px rgba(102, 126, 234, 0.3); + } + + .section { + margin-bottom: 30px; + background: #f8f9fa; + border-radius: 15px; + padding: 25px; + box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05); + } + + .section h2 { + color: #495057; + margin-bottom: 20px; + font-size: 1.4em; + display: flex; + align-items: center; + gap: 10px; + } + + .section h2::before { + content: ""; + width: 4px; + height: 25px; + background: linear-gradient(135deg, #667eea, #764ba2); + border-radius: 2px; + } + + .form-group { + margin-bottom: 20px; + } + + .form-group label { + display: block; + margin-bottom: 8px; + color: #495057; + font-weight: 600; + } + + .form-group input { + width: 100%; + padding: 12px 15px; + border: 2px solid #e9ecef; + border-radius: 10px; + font-size: 16px; + transition: all 0.3s ease; + } + + .form-group input:focus { + outline: none; + border-color: #667eea; + box-shadow: 0 0 0 3px rgba(102, 126, 234, 0.1); + } + + .time-row { + display: flex; + gap: 15px; + align-items: end; + } + + .time-input { + flex: 1; + } + + .current-time { + background: white; + padding: 15px; + border-radius: 10px; + text-align: center; + font-family: monospace; + font-size: 18px; + color: #495057; + border: 2px solid #e9ecef; + margin-bottom: 15px; + } + + .button-group { + display: flex; + gap: 15px; + flex-wrap: wrap; + } + + .btn { + padding: 15px 25px; + border: none; + border-radius: 12px; + font-size: 16px; + font-weight: 600; + cursor: pointer; + transition: all 0.3s ease; + text-decoration: none; + display: inline-block; + text-align: center; + min-width: 150px; + } + + .btn-primary { + background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); + color: white; + } + + .btn-primary:hover { + transform: translateY(-2px); + box-shadow: 0 10px 25px rgba(102, 126, 234, 0.3); + } + + .btn-secondary { + background: linear-gradient(135deg, #74b9ff 0%, #0984e3 100%); + color: white; + } + + .btn-secondary:hover { + transform: translateY(-2px); + box-shadow: 0 10px 25px rgba(116, 185, 255, 0.3); + } + + .btn-warning { + background: linear-gradient(135deg, #ffecd2 0%, #fcb69f 100%); + color: #d84315; + } + + .btn-warning:hover { + transform: translateY(-2px); + box-shadow: 0 10px 25px rgba(252, 182, 159, 0.3); + } + + .btn-danger { + background: linear-gradient(135deg, #ff9a9e 0%, #fecfef 100%); + color: #c62828; + } + + .btn-danger:hover { + transform: translateY(-2px); + box-shadow: 0 10px 25px rgba(255, 154, 158, 0.3); + } + + .btn-disabled { + background: #e9ecef !important; + color: #6c757d !important; + cursor: not-allowed !important; + transform: none !important; + box-shadow: none !important; + } + + .btn-disabled:hover { + transform: none !important; + box-shadow: none !important; + } + + .restriction-notice { + background: #fff3cd; + color: #856404; + padding: 15px; + border-radius: 10px; + border: 2px solid #ffeaa7; + margin-bottom: 15px; + font-weight: 600; + text-align: center; + } + + .status-message { + margin-top: 20px; + padding: 15px; + border-radius: 10px; + font-weight: 600; + text-align: center; + display: none; + } + + .status-success { + background: #d4edda; + color: #155724; + border: 2px solid #c3e6cb; + } + + .status-error { + background: #f8d7da; + color: #721c24; + border: 2px solid #f5c6cb; + } + + .status-info { + background: #cce7ff; + color: #004085; + border: 2px solid #b3d9ff; + } + + .learning-mode { + display: none; + text-align: center; + padding: 30px; + background: linear-gradient(135deg, #ffecd2 0%, #fcb69f 100%); + border-radius: 15px; + margin-top: 20px; + } + + .learning-mode h3 { + color: #d84315; + font-size: 1.5em; + margin-bottom: 15px; + } + + .learning-mode p { + color: #bf360c; + font-size: 1.2em; + margin-bottom: 20px; + } + + .pulse { + animation: pulse 2s infinite; + } + + @keyframes pulse { + 0% { + transform: scale(1); + } + 50% { + transform: scale(1.05); + } + 100% { + transform: scale(1); + } + } + + @media (max-width: 600px) { + .container { + margin: 10px; + border-radius: 15px; + } + + .content { + padding: 20px; + } + + .nav-buttons { + flex-direction: column; + } + + .button-group { + flex-direction: column; + } + + .btn { + width: 100%; + } + + .time-row { + flex-direction: column; + gap: 10px; + } + } \ No newline at end of file