@import url("https://fonts.googleapis.com/css?family=Hepta+Slab:400,200|Karla:400,700"); :root { --primary-color: #e7503e; --background-color: #fefefa; --card-background: #fffde5; --text-color: #e7503e; --border-radius: 4px; } * { margin: 0; padding: 0; box-sizing: border-box; } body { font-family: "Karla", Helvetica, sans-serif; line-height: 1.6; color: var(--text-color); background-color: var(--background-color); } .main-header { display: flex; justify-content: space-between; align-items: flex-start; padding: 1.2rem 40px 0 40px; max-width: 950px; margin: 0 auto; } .header-left h1 { font-family: "Hepta Slab", Helvetica, sans-serif; font-weight: 200; font-size: 42px; color: var(--primary-color); margin-bottom: 0.3rem; line-height: 1; } .header-left .star { font-size: 1.1em; vertical-align: middle; } .subtitle { font-size: 1rem; color: var(--primary-color); font-family: "Karla", Helvetica, sans-serif; } .header-nav { display: flex; align-items: center; gap: 12px; margin-top: 0.3rem; } .nav-link { font-family: "Hepta Slab", Helvetica, sans-serif; font-size: 1.1rem; color: var(--primary-color); text-decoration: none; transition: text-decoration 0.2s; } .nav-link:hover { text-decoration: underline; } .nav-separator { font-family: "Hepta Slab", Helvetica, sans-serif; font-size: 1.1rem; color: var(--primary-color); } .main-content { max-width: 950px; margin: 0 auto; padding: 1.2rem 40px 1.2rem 40px; } .home-columns { display: flex; gap: 8rem; align-items: flex-start; } .upload-section { flex: 1 1 0; min-width: 260px; max-width: 400px; background: var(--card-background); border: 2px dashed var(--primary-color); border-radius: var(--border-radius); padding: 0; margin: 0; min-height: 540px; } .card-header { background-color: var(--primary-color); color: white; padding: 10px 14px; border-radius: var(--border-radius) var(--border-radius) 0 0; } .card-header h2 { color: white; font-family: "Hepta Slab", Helvetica, sans-serif; font-size: 1.3rem; margin-bottom: 0.2rem; } .card-header p { color: white; font-size: 0.9rem; } .card-content { padding: 1rem 1rem 1.2rem 1rem; background-color: var(--card-background); border-radius: 0 0 var(--border-radius) var(--border-radius); min-height: 400px; } .model-selector { margin-bottom: 0.7rem; } .model-select { width: 100%; padding: 0.3rem 2rem 0.3rem 0.7rem; font-family: "Karla", Helvetica, sans-serif; font-size: 1rem; color: var(--primary-color); border: 2px dashed var(--primary-color); background-color: white; border-radius: var(--border-radius); appearance: none; background-image: url('data:image/svg+xml;utf8,'); background-repeat: no-repeat; background-position: right 0.5rem center; background-size: 1.1em; box-sizing: border-box; transition: border-color 0.2s; } .model-select:focus { outline: none; border-color: var(--primary-color); } /* Style the dropdown options (limited by browser support) */ .model-select option { color: var(--primary-color); font-family: "Karla", Helvetica, sans-serif; font-size: 1rem; background: white; } /* Chrome/Edge: highlight selected/hovered option */ .model-select option:checked, .model-select option:focus, .model-select option:hover { background: var(--primary-color); color: white; } /* Firefox: highlight selected option */ @-moz-document url-prefix() { .model-select option:checked { background: var(--primary-color) !important; color: white !important; } } .upload-area { border: 2px dashed var(--primary-color); border-radius: var(--border-radius); padding: 1.1rem; text-align: center; cursor: pointer; transition: border-color 0.3s ease; margin-bottom: 0.7rem; background: rgba(255, 255, 255, 0.32); } .upload-area:hover { border-color: var(--primary-color); } .upload-placeholder { display: flex; flex-direction: column; align-items: center; gap: 0.7rem; color: var(--primary-color); font-size: 0.95rem; } .upload-placeholder img { width: 32px; height: auto; opacity: 0.5; } .preview-image { max-width: 100%; max-height: 300px; border-radius: var(--border-radius); margin: 0.7rem 0; } .submit-button { background-color: white; color: var(--primary-color); border: 2px solid var(--primary-color); padding: 0.7rem 1.2rem; border-radius: var(--border-radius); cursor: pointer; width: 100%; font-size: 1rem; font-family: "Karla", Helvetica, sans-serif; display: flex; align-items: center; justify-content: center; margin: 1rem 0 0 0; gap: 0.7rem; transition: background 0.2s, color 0.2s; } .submit-button:disabled { opacity: 0.5; cursor: not-allowed; } .submit-button:hover:not(:disabled) { background-color: var(--primary-color); color: white; } .error-message { color: var(--primary-color); margin: 0.7rem 0; text-align: center; font-family: "Karla", Helvetica, sans-serif; font-size: 0.95rem; } .result-section { flex: 1 1 0; min-width: 260px; max-width: 400px; background: none; padding: 0 0 0 0; margin: 0; display: flex; flex-direction: column; align-items: stretch; justify-content: center; position: relative; width: 100%; min-height: 350px; } .result-image-container { width: 100%; margin-bottom: 0.3rem; text-align: center; } .result-image { max-height: 400px; max-width: 400px; width: auto; border: 2px dashed var(--primary-color); border-radius: var(--border-radius); object-fit: contain; display: block; margin-left: auto; margin-right: auto; } .result-image-label { font-size: 0.8rem; color: #e7503ebf; margin-top: 0.1rem; font-family: "Karla", Helvetica, sans-serif; } .result-section h2 { font-family: "Hepta Slab", Helvetica, sans-serif; font-size: 1.1rem; color: var(--primary-color); margin: 0.7rem 0 0.3rem 0; } #resultDescription { color: var(--primary-color); font-size: 0.95rem; margin-bottom: 0.3rem; } .probability-section { margin: 0.7rem 0 0.3rem 0; width: 100%; } .probability-bar { width: 100%; height: 16px; background-color: #f8f5c8; border-radius: var(--border-radius); overflow: hidden; margin-top: 0.3rem; box-sizing: border-box; } .probability-fill { height: 100%; background-color: var(--primary-color); border-radius: 4px 0 0 4px; transition: width 0.8s cubic-bezier(0.4, 1.4, 0.6, 1); } .likely-info { margin-top: 1rem; } .likely-users { color: var(--primary-color); font-size: 0.95rem; margin-bottom: 0.7rem; } .result-section h3 { font-family: "Hepta Slab", Helvetica, sans-serif; font-size: 1rem; color: var(--primary-color); margin: 0.7rem 0 0.3rem 0; } .result-actions { display: flex; flex-direction: column; gap: 0.7rem; margin-top: 0.7rem; } .action-button { background: white; color: var(--primary-color); border: 2px solid var(--primary-color); border-radius: var(--border-radius); padding: 0.7rem 1.2rem; font-size: 1rem; font-family: "Karla", Helvetica, sans-serif; text-align: center; text-decoration: none; display: flex; align-items: center; justify-content: center; gap: 0.7rem; transition: background 0.2s, color 0.2s; } .action-button:hover { background: var(--primary-color); color: white; text-decoration: none; } .arrow { font-size: 1.1em; margin-left: 0.3em; } @media (max-width: 900px) { .main-header, .main-content { padding: 0.7rem 2vw 0 2vw; } .home-columns { flex-direction: column; gap: 1rem; } .upload-section, .result-section { max-width: 100%; min-width: 0; } } .custom-dropdown { position: relative; width: 100%; } .dropdown-toggle { width: 100%; background: white; color: var(--primary-color); border: 2px dashed var(--primary-color); border-radius: var(--border-radius); font-family: "Karla", Helvetica, sans-serif; font-size: 1rem; padding: 0 0 0 0.7rem; text-align: left; display: flex; align-items: center; justify-content: space-between; cursor: pointer; transition: border-color 0.2s; box-sizing: border-box; } #dropdown-arrow { background-color: #e7503e; border-radius: 0 4px 4px 0; } .dropdown-menu { position: static; width: 100%; background: white; border: 2px dashed var(--primary-color); border-top: none; border-radius: 0 0 var(--border-radius) var(--border-radius); box-shadow: none; z-index: 1; margin: 0; list-style: none; max-height: 0; overflow: hidden; transition: max-height 0.25s cubic-bezier(0.4, 1.4, 0.6, 1); } .custom-dropdown.open .dropdown-menu { max-height: 400px; transition: max-height 0.35s cubic-bezier(0.4, 1.4, 0.6, 1); } .dropdown-option { font-family: "Karla", Helvetica, sans-serif; font-size: 1rem; color: var(--primary-color); background: white; padding: 0.6rem 1rem; cursor: pointer; transition: background 0.15s, color 0.15s; border: none; outline: none; } .dropdown-option.selected, .dropdown-option:hover, .dropdown-option:focus { background: var(--primary-color); color: white; } .custom-dropdown.open .dropdown-toggle { border-bottom: none; border-bottom-left-radius: 0; border-bottom-right-radius: 0; box-shadow: 0 4px 16px rgba(231, 80, 62, 0.1); transition: box-shadow 0.2s; } .custom-dropdown.open .dropdown-menu { border-top-left-radius: 0; border-top-right-radius: 0; } .result-percentage { font-weight: bold; } .result-description-strong { font-weight: bold; } #loadingAnimation { display: none; position: absolute; top: 0; left: 0; right: 0; bottom: 0; width: 100%; height: 100%; /* background: none; */ z-index: 2; justify-content: center; align-items: center; flex-direction: column; text-align: center; } #loadingAnimation img { width: 64px; height: 64px; margin-bottom: 1rem; } #loadingAnimation .loading-message { font-family: "Karla", Helvetica, sans-serif; color: var(--primary-color); font-size: 1.1rem; } /* --- Footer Styles --- */ .main-footer { text-align: center; font-size: 0.95em; color: #e7503e; margin-top: 3rem; padding: 1.5rem 0 0.5rem 0; background: none; } .footer-nav .nav-link { color: #e7503e; text-decoration: none; margin: 0 0.5em; } .footer-nav .nav-separator { color: #e7503e; margin: 0 0.2em; } /* --- Get Organized Page Styles --- */ .get-organized-hero { background: #e4573d; color: #fff; padding: 2rem 1.5rem 1rem 1.5rem; border-radius: 4px; margin-bottom: 2rem; } .get-organized-hero h2 { font-size: 2.2rem; margin-bottom: 0.2em; } .get-organized-hero p { font-size: 1.1rem; margin: 0; } .get-organized-columns { display: flex; gap: 3rem; margin-top: 2rem; flex-wrap: wrap; } .get-organized-left { flex: 2; min-width: 320px; } .get-organized-right { flex: 1.2; min-width: 260px; display: flex; flex-direction: column; align-items: flex-start; } .big-number { font-size: 1.5rem; color: #e4573d; font-weight: 700; margin-bottom: 1.2rem; } .not-alone { color: #e4573d; font-weight: 600; margin-bottom: 1rem; } .explanation { color: #b85c4c; margin-bottom: 1.5rem; } .together-list ul { margin: 0.5em 0 0 1.2em; padding: 0; color: #e4573d; } .together-list li { margin-bottom: 0.5em; font-weight: 600; } .get-organized-right h3 { color: #e4573d; font-size: 1.3rem; margin-bottom: 1.2rem; } .org-btn { display: flex; align-items: center; border: 2px solid #e4573d; color: #e4573d; background: none; border-radius: 6px; padding: 0.8em 1.2em; font-size: 1.15rem; font-weight: 500; margin-bottom: 1.1em; text-decoration: none; transition: background 0.15s, color 0.15s; } .org-btn img { width: 1.5em; height: 1.5em; margin-left: 0.7em; } .org-btn:hover { background: #e4573d; color: #fff; } .home-link { color: inherit; text-decoration: none; } .home-link:hover { text-decoration: none; } .resource-categories { display: flex; flex-direction: column; gap: 0.7rem; width: 320px; } .resource-category { background: none; border: 2px dashed #e7503e; color: #e7503e; font-family: "Hepta Slab", Helvetica, sans-serif; font-size: 1.15rem; padding: 0.8em 1.2em; border-radius: 6px; text-align: left; cursor: pointer; transition: background 0.15s, color 0.15s; } .resource-category.active { background: #e7503e; color: #fff; border-style: solid; } .resources-content { display: flex; gap: 2.5rem; margin-top: 2.5rem; } .resource-details { flex: 1 1 0; min-width: 340px; max-width: 500px; background: none; border: 2px dashed #e7503e; border-radius: 6px; padding: 2.2rem 2.2rem 2.2rem 2.2rem; display: flex; flex-direction: column; align-items: flex-start; justify-content: flex-start; } .resource-preview { width: 100%; max-width: 340px; margin-bottom: 1.2rem; border-radius: 6px; border: 2px dashed #e7503e; display: none; } .resource-info h3 { font-family: "Hepta Slab", Helvetica, sans-serif; font-size: 2rem; color: #e7503e; margin-bottom: 1.1rem; margin-top: 0; } .resource-info p { color: #e7503e; font-size: 1.1rem; margin-bottom: 1.5rem; } .resource-info ul { margin: 0.7em 0 0 1.2em; padding: 0; color: #e7503e; } .resource-info li { margin-bottom: 0.5em; font-weight: 600; } .resource-info .action-button { background: white; color: #e7503e; border: 2px solid #e7503e; border-radius: 6px; padding: 0.7rem 1.2rem; font-size: 1.1rem; font-family: "Karla", Helvetica, sans-serif; text-align: center; text-decoration: none; display: inline-flex; align-items: center; gap: 0.7rem; transition: background 0.2s, color 0.2s; margin-top: 1.2rem; } .resource-info .action-button:hover { background: #e7503e; color: white; text-decoration: none; } .styled-input { width: 260px; padding: 0.3rem 2rem 0.3rem 0.7rem; font-family: "Karla", Helvetica, sans-serif; font-size: 1rem; color: var(--primary-color); border: 2px dashed var(--primary-color); background-color: white; border-radius: var(--border-radius); box-sizing: border-box; transition: border-color 0.2s; outline: none; margin-top: 0.5em; } .styled-input:focus { border-color: var(--primary-color); } .about-overlay { position: fixed; top: 0; left: 0; right: 0; bottom: 0; background: rgba(231, 80, 62, 0.12); z-index: 1000; display: flex; align-items: center; justify-content: center; } .about-modal { background: #fff; border-radius: 8px; max-width: 420px; width: 90vw; box-shadow: 0 8px 32px rgba(0, 0, 0, 0.18); border: 6px solid #e4573d; padding: 0 0 1.5em 0; position: relative; font-size: 1.1rem; color: #e4573d; margin: 2em 0; } .about-modal h2 { background: #e4573d; color: #fff; font-family: "Hepta Slab", Helvetica, sans-serif; font-size: 2rem; margin: 0 0 1em 0; padding: 0.7em 1.2em 0.5em 1.2em; border-radius: 6px 6px 0 0; } .about-modal p { margin: 1.2em 1.5em 0.5em 1.5em; color: #e4573d; font-size: 1.08rem; } .about-modal ul { margin: 0.7em 2.2em 1em 2.2em; color: #e4573d; font-size: 1.08rem; } .about-close { position: absolute; top: 0.5em; right: 1em; background: none; border: none; font-size: 2rem; color: #fff; cursor: pointer; z-index: 10; }