/* --- General Layout & Dark Theme --- */ body { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; background-color: #0b0d11; color: #e6edf3; margin: 0; display: flex; justify-content: center; align-items: center; min-height: 100vh; padding: 20px; } .container { background: #1c2128; border-radius: 12px; border: 1px solid #30363d; box-shadow: 0 8px 24px rgba(0, 0, 0, 0.4); width: 100%; max-width: 800px; overflow: hidden; } header { text-align: center; padding: 30px; border-bottom: 1px solid #30363d; } header h1 { margin: 0; font-size: 2.5rem; font-weight: 700; color: #e6edf3; } header p { margin-top: 8px; color: #8b949e; font-size: 1.1rem; } /* --- Model Selector Navigation --- */ .model-selector { display: flex; justify-content: center; padding: 20px; background-color: #161b22; border-bottom: 1px solid #30363d; } .model-btn { background-color: transparent; border: none; padding: 12px 24px; margin: 0 10px; font-size: 1rem; font-weight: 600; color: #8b949e; cursor: pointer; border-radius: 8px; transition: background-color 0.2s, color 0.2s; } .model-btn.active { background-color: #ffd866; color: #000000; } .model-btn:not(.active):hover { background-color: #30363d; color: #e6edf3; } /* --- Main Content & Model Sections --- */ main { padding: 30px; } .model-section { display: none; animation: fadeIn 0.5s; } .model-section.active { display: block; } .model-section h2 { margin-top: 0; font-size: 1.8rem; color: #e6edf3; border-bottom: 2px solid #ffd866; padding-bottom: 10px; margin-bottom: 20px; } .model-section p { margin-bottom: 20px; line-height: 1.6; color: #8b949e; } /* --- Forms --- */ form { display: flex; flex-direction: column; } textarea, input[type="file"], input[type="number"] { width: 100%; padding: 12px; background-color: #0d1117; color: #e6edf3; border: 1px solid #30363d; border-radius: 8px; font-size: 1rem; margin-bottom: 15px; box-sizing: border-box; } button[type="submit"] { background-color: #ffd866; color: #000000; border: none; padding: 14px 20px; font-size: 1.1rem; font-weight: 600; border-radius: 8px; cursor: pointer; transition: background-color 0.2s; align-self: flex-start; } button[type="submit"]:hover { background-color: #f0c340; } /* --- Specific Form Styling --- */ .image-preview-container { margin-bottom: 15px; text-align: center; } .image-preview { max-width: 100%; max-height: 200px; border: 1px solid #30363d; border-radius: 8px; display: none; } .form-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 20px; margin-bottom: 20px; } .form-group label { display: block; font-weight: 600; margin-bottom: 8px; color: #e6edf3; } .beta-tag { background-color: #30363d; color: #8b949e; font-size: 0.8rem; font-weight: 600; padding: 4px 8px; border-radius: 12px; vertical-align: middle; margin-left: 8px; } /* --- Result Display --- */ .result { margin-top: 20px; padding: 15px; background-color: #161b22; border-left: 4px solid #ffd866; border-radius: 4px; font-size: 1.1rem; font-weight: 500; min-height: 24px; } /* --- Footer --- */ footer { text-align: center; padding: 20px; background-color: #161b22; border-top: 1px solid #30363d; font-size: 0.9rem; color: #8b949e; } /* --- Animations --- */ @keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } } /* --- Housing Predictor Form Grid --- */ .housing-predictor-form-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 20px; margin-bottom: 20px; } .housing-predictor-form-group label { display: block; font-weight: 600; margin-bottom: 8px; color: #e6edf3; } .housing-predictor-form-group input[type="number"] { width: 100%; padding: 12px; background-color: #0d1117; color: #e6edf3; border: 1px solid #30363d; border-radius: 8px; font-size: 1rem; margin-bottom: 15px; box-sizing: border-box; }