.submit-expose{background:var(--color-background);max-width:100vw;min-height:100vh;overflow-x:hidden}.hero-section{background:var(--color-light-surface);padding:var(--spacing-4xl) 0;text-align:center;position:relative}.hero-section:after{content:"";background:var(--color-accent);width:60px;height:3px;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.hero-title{font-family:var(--font-family-heading);font-size:clamp(var(--font-size-3xl), 5vw, var(--font-size-5xl));margin-bottom:var(--spacing-lg);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);color:var(--color-text-headline)}.hero-subtitle{font-size:clamp(var(--font-size-lg), 3vw, var(--font-size-xl));color:var(--color-text-body);max-width:800px;line-height:var(--line-height-normal);margin:0 auto}.requirements-section{padding:var(--spacing-4xl) 0;background:var(--color-background)}.section-title{font-family:var(--font-family-heading);font-size:clamp(var(--font-size-2xl), 4vw, var(--font-size-3xl));text-align:center;margin-bottom:var(--spacing-3xl);color:var(--color-text-headline);font-weight:var(--font-weight-bold)}.requirements-grid{gap:var(--spacing-xl);max-width:var(--container-max-width);padding:0 var(--container-padding);grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin:0 auto;display:grid}.requirement-card{background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--border-radius-lg);padding:var(--spacing-xl);text-align:center;box-shadow:var(--shadow-base);transition:all var(--transition-base);position:relative}.requirement-card:before{content:"";background:var(--color-accent);height:3px;transition:transform var(--transition-base);position:absolute;top:0;left:0;right:0;transform:scaleX(0)}.requirement-card:hover{box-shadow:var(--shadow-lg);border-color:#e02f654d;transform:translateY(-3px)}.requirement-card:hover:before{transform:scaleX(1)}.requirement-icon{font-size:var(--font-size-4xl);margin-bottom:var(--spacing-base);opacity:.8;transition:opacity var(--transition-base)}.requirement-card:hover .requirement-icon{opacity:1}.requirement-title{font-family:var(--font-family-heading);font-size:var(--font-size-lg);margin-bottom:var(--spacing-sm);color:var(--color-text-headline);font-weight:var(--font-weight-semibold)}.requirement-description{color:var(--color-text-body);line-height:var(--line-height-normal);font-size:var(--font-size-sm)}.form-section{padding:var(--spacing-4xl) 0;background:var(--color-light-surface)}.form-layout{gap:var(--spacing-3xl);max-width:var(--container-max-width);padding:0 var(--container-padding);grid-template-columns:2fr 1fr;align-items:start;margin:0 auto;display:grid}.form-content{background:var(--color-background);border-radius:var(--border-radius-lg);padding:var(--spacing-2xl);box-shadow:var(--shadow-lg);border:1px solid var(--color-border)}.form-content .section-title{text-align:left;margin-bottom:var(--spacing-xl)}.expose-form{gap:var(--spacing-2xl);flex-direction:column;display:flex}.form-group{border:none;margin:0;padding:0}.form-group legend{font-family:var(--font-family-heading);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-headline);margin-bottom:var(--spacing-lg);border-bottom:2px solid var(--color-accent);width:100%;padding:0;padding-bottom:var(--spacing-xs)}.input-row{gap:var(--spacing-lg);margin-bottom:var(--spacing-lg);grid-template-columns:1fr 1fr;display:grid}.input-group{gap:var(--spacing-xs);margin-bottom:var(--spacing-base);flex-direction:column;display:flex}.input-group label{font-weight:var(--font-weight-semibold);color:var(--color-text-headline);font-size:var(--font-size-sm)}.input-group input,.input-group select,.input-group textarea{padding:var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--border-radius-base);font-size:var(--font-size-base);transition:border-color var(--transition-base);background:var(--color-background);color:var(--color-text-body);font-family:inherit}.input-group input.error,.input-group select.error,.input-group textarea.error{border-color:var(--color-error)}.input-group textarea{resize:vertical;min-height:100px}.input-group small{font-size:var(--font-size-xs);color:var(--color-text-secondary)}.char-counter{font-size:var(--font-size-xs);color:var(--color-text-secondary);text-align:right;margin-top:var(--spacing-xs)}.error-message{color:var(--color-error);font-size:var(--font-size-xs);margin-top:var(--spacing-xs)}.checkbox-group{align-items:flex-start;gap:var(--spacing-sm);display:flex}.checkbox-group input[type=checkbox]{cursor:pointer;width:18px;height:18px;margin-top:4px}.checkbox-group label{font-size:var(--font-size-sm);color:var(--color-text-body);cursor:pointer}.checkbox-group label a{color:var(--color-accent);text-decoration:none}.checkbox-group label a:hover{text-decoration:underline}.file-preview{margin-top:var(--spacing-base);padding:var(--spacing-base);background:var(--color-light-surface);border-radius:var(--border-radius-base)}.file-list{margin:var(--spacing-sm) 0 0 0;padding:0;list-style:none}.file-item{padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--border-radius-base);margin-bottom:var(--spacing-xs);justify-content:space-between;align-items:center;display:flex}.file-size{color:var(--color-text-secondary);margin-left:var(--spacing-sm)}.btn-remove{background:var(--color-error);color:#fff;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius-base);cursor:pointer;font-size:var(--font-size-sm);transition:all var(--transition-base);border:none}.btn-remove:hover{background:#c0392b}.btn-remove:disabled{opacity:.5;cursor:not-allowed}.alert{padding:var(--spacing-base);border-radius:var(--border-radius-base);margin-bottom:var(--spacing-lg);font-size:var(--font-size-sm)}.alert-success{color:#155724;background:#d4edda;border:1px solid #c3e6cb}.alert-warning{color:#856404;background:#fff3cd;border:1px solid #ffeeba}.alert-danger{color:#721c24;background:#f8d7da;border:1px solid #f5c6cb}.form-actions{gap:var(--spacing-base);text-align:center;padding-top:var(--spacing-lg);border-top:1px solid var(--color-border);flex-direction:column;align-items:center;display:flex}.form-note{font-size:var(--font-size-xs);color:var(--color-text-secondary);line-height:var(--line-height-normal);max-width:400px}.rate-limit-info{color:var(--color-text-secondary);font-size:var(--font-size-xs)}.loading-spinner{width:16px;height:16px;margin-right:var(--spacing-xs);border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;animation:.8s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.tips-sidebar{background:var(--color-background);border-radius:var(--border-radius-lg);padding:var(--spacing-xl);box-shadow:var(--shadow-base);border:1px solid var(--color-border);top:var(--spacing-xl);position:sticky}.tips-sidebar h3{font-family:var(--font-family-heading);font-size:var(--font-size-lg);margin-bottom:var(--spacing-lg);color:var(--color-text-headline);font-weight:var(--font-weight-semibold);border-bottom:2px solid var(--color-accent);padding-bottom:var(--spacing-xs)}.tips-list{gap:var(--spacing-lg);margin-bottom:var(--spacing-xl);flex-direction:column;display:flex}.tip-item h4{font-family:var(--font-family-heading);font-size:var(--font-size-base);margin-bottom:var(--spacing-xs);color:var(--color-text-headline);font-weight:var(--font-weight-semibold)}.tip-item p{color:var(--color-text-body);font-size:var(--font-size-sm);line-height:var(--line-height-normal);margin:0}.contact-info{padding:var(--spacing-base);background:var(--color-light-surface);border-radius:var(--border-radius-base);border-left:4px solid var(--color-accent)}.contact-info h4{font-family:var(--font-family-heading);font-size:var(--font-size-base);margin-bottom:var(--spacing-xs);color:var(--color-text-headline);font-weight:var(--font-weight-semibold)}.contact-info p{color:var(--color-text-body);font-size:var(--font-size-sm);line-height:var(--line-height-normal);margin:0}.contact-info a{color:var(--color-accent);text-decoration:none}.contact-info a:hover{text-decoration:underline}.success-section{padding:var(--spacing-4xl) 0;background:var(--color-light-surface);align-items:center;min-height:80vh;display:flex}.success-content{text-align:center;max-width:600px;margin:0 auto}.success-icon{margin-bottom:var(--spacing-lg);font-size:4rem}.success-content h1{font-family:var(--font-family-heading);font-size:var(--font-size-3xl);margin-bottom:var(--spacing-lg);color:var(--color-text-headline);font-weight:var(--font-weight-bold)}.success-content p{font-size:var(--font-size-lg);color:var(--color-text-body);line-height:var(--line-height-normal);margin-bottom:var(--spacing-xl)}.success-actions{gap:var(--spacing-base);flex-wrap:wrap;justify-content:center;display:flex}@media (max-width:768px){.hero-section,.requirements-section,.form-section{padding:var(--spacing-3xl) var(--container-padding)}.requirements-grid{grid-template-columns:1fr;padding:0}.form-layout{gap:var(--spacing-xl);grid-template-columns:1fr;padding:0}.tips-sidebar{order:-1;position:static}.input-row{grid-template-columns:1fr}.form-content{padding:var(--spacing-lg)}.success-actions{flex-direction:column;align-items:center}.btn{width:100%;max-width:300px}.input-group input[type=file]{box-sizing:border-box;width:100%;max-width:100%}.file-item{gap:var(--spacing-sm)}.file-item>span{overflow-wrap:anywhere;word-break:break-word;flex:1;min-width:0}}@media (max-width:480px){.hero-section,.requirements-section,.form-section{padding-left:var(--spacing-base);padding-right:var(--spacing-base)}.form-content,.tips-sidebar{padding:var(--spacing-base)}}@media (max-width:768px){.hero-subtitle,.requirement-description,.tip-item p,.contact-info p{max-width:65ch;font-size:16px}.requirement-card{padding:var(--spacing-lg)}.btn{width:100%;max-width:320px;min-height:44px}}@media (max-width:375px){.submit-expose{overflow-x:hidden}.requirements-grid,.form-layout{padding:0 var(--spacing-sm)}.requirement-card{padding:var(--spacing-base)}}@media (prefers-reduced-motion:reduce){.requirement-card,.btn,.loading-spinner{transition:none}.loading-spinner{animation:none}}.btn:focus{outline:2px solid var(--color-accent);outline-offset:2px}.input-group input:focus,.input-group select:focus,.input-group textarea:focus{border-color:var(--color-accent);outline:none;box-shadow:0 0 0 3px #e02f6526}
