.login-container{display:flex;justify-content:center;align-items:center;min-height:calc(100vh - 5em);padding:2em 1em}.login-card{background-color:#fffaf5;border:1px solid #e8c99a;border-radius:14px;box-shadow:0 4px 20px rgba(44,24,16,0.12);padding:2.2em 2.4em;width:100%;max-width:400px}.login-site-name{text-align:center;font-size:0.85em;font-weight:700;color:#9ecb6a;letter-spacing:0.06em;margin-bottom:0.3em}.login-title{text-align:center;font-size:1.5em;font-weight:700;color:#2c1810;margin:0 0 1.6em;padding-bottom:0.6em;border-bottom:2px solid #e8c99a}.login-field{margin-bottom:1.2em}.login-field label{display:block;font-size:0.85em;font-weight:600;color:#7a5c3a;margin-bottom:0.35em;letter-spacing:0.03em}.input{width:100%;padding:0.7em 0.9em;border:1px solid #e8c99a;border-radius:8px;font-size:1em;color:#2c1810;background-color:#fff;box-sizing:border-box;transition:border-color 0.2s, box-shadow 0.2s}.input:focus{outline:none;border-color:#d98e04;box-shadow:0 0 0 3px rgba(217,142,4,0.15)}.login-button{width:100%;padding:0.8em;background-color:#9ecb6a;color:#fff;border:none;border-radius:22px;font-size:1em;font-weight:700;cursor:pointer;letter-spacing:0.06em;transition:background-color 0.2s, transform 0.1s;margin-top:0.4em}.login-button:hover{background-color:#85be44;transform:translateY(-1px)}.login-button:active{transform:translateY(0)}.alert{background-color:#fff0f0;border:1px solid #f5a0a0;border-radius:8px;padding:0.8em 1em;margin-bottom:1.4em;color:#b30000;font-size:0.88em}.alert ul{margin:0;padding-left:1.2em}.links{margin-top:1.4em;padding-top:1em;border-top:1px solid #e8c99a;text-align:center;font-size:0.88em}.links a{display:inline-block;color:#d98e04;text-decoration:none;margin:0.3em 0}.links a:hover{text-decoration:underline;opacity:0.8}.links br{display:none}@media (max-width: 420px){.login-card{padding:1.6em 1.2em}}.signup-badge-required{display:inline-block;font-size:0.68em;font-weight:700;background-color:#e05252;color:#fff;border-radius:4px;padding:0.1em 0.45em;margin-left:0.35em;vertical-align:middle;letter-spacing:0.03em}.signup-badge-optional{display:inline-block;font-size:0.68em;font-weight:700;background-color:#9ecb6a;color:#fff;border-radius:4px;padding:0.1em 0.45em;margin-left:0.35em;vertical-align:middle;letter-spacing:0.03em}.signup-field-note{font-size:0.78em;color:#7a5c3a;margin:0.15em 0 0.4em}.signup-submit-btn{width:100%;padding:0.8em;background-color:#9ecb6a;color:#fff;border:none;border-radius:22px;font-size:1em;font-weight:700;cursor:pointer;letter-spacing:0.06em;transition:background-color 0.2s, transform 0.1s, opacity 0.2s;margin-top:0.4em}.signup-submit-btn:hover:not(:disabled){background-color:#85be44;transform:translateY(-1px)}.signup-submit-btn:active:not(:disabled){transform:translateY(0)}.signup-submit-btn:disabled{background-color:#c8c0b4 !important;color:#f0ece8 !important;cursor:not-allowed !important;opacity:0.72 !important;transform:none !important}.signup-syurui-group{display:flex;gap:1.2em;flex-wrap:wrap;margin-top:0.5em}.signup-radio-label{display:flex;align-items:center;gap:0.35em;font-size:0.9em;color:#2c1810;cursor:pointer;accent-color:#d98e04}.login-field--remember{display:flex;align-items:center;gap:0.4em;font-size:0.88em}.login-field--remember input[type="checkbox"]{accent-color:#d98e04;width:1em;height:1em;cursor:pointer}.login-field--remember label{display:inline;margin:0;font-size:1em;cursor:pointer}.signup-agree-field{margin-top:0.2em}.signup-agree-label{display:flex;align-items:flex-start;gap:0.5em;font-size:0.88em;color:#2c1810;cursor:pointer;line-height:1.5}.signup-agree-label input[type="checkbox"]{accent-color:#d98e04;width:1.1em;height:1.1em;flex-shrink:0;margin-top:0.15em;cursor:pointer}.signup-agree-label a{color:#d98e04;text-decoration:underline}.signup-links{margin-top:1.4em;padding-top:1em;border-top:1px solid #e8c99a;text-align:center}.signup-link-main{display:inline-block;padding:0.5em 1.8em;border:1.5px solid #d98e04;border-radius:20px;color:#d98e04;font-size:0.9em;font-weight:600;text-decoration:none;transition:background-color 0.18s, color 0.18s}.signup-link-main:hover{background-color:#d98e04;color:#fff}.signup-links-sub{margin-top:0.9em;display:flex;justify-content:center;flex-wrap:wrap;gap:0.4em 1.4em}.signup-links-sub a{font-size:0.82em;color:#7a5c3a;text-decoration:none}.signup-links-sub a:hover{color:#d98e04;text-decoration:underline}.mainbox_login{max-width:520px;margin:2em auto;padding:0 1em 3em}.login_title h2{font-size:1.5em;font-weight:700;color:#2c1810;padding-bottom:0.5em;border-bottom:2px solid #e8c99a;margin-bottom:1.2em}.field,.field1,.field2{margin-bottom:1em}.field label,.field1 label,.field2 label{font-size:0.85em;font-weight:600;color:#7a5c3a}.field input[type="text"],.field input[type="email"],.field input[type="password"],.field input[type="url"],.field input[type="number"],.field select,.field textarea,.field1 input[type="text"],.field1 input[type="email"],.field1 input[type="password"],.field1 input[type="url"],.field1 input[type="number"],.field1 select,.field1 textarea,.field2 input[type="text"],.field2 input[type="email"],.field2 input[type="password"],.field2 input[type="url"],.field2 input[type="number"],.field2 select,.field2 textarea{display:block;width:100%;padding:0.65em 0.9em;border:1px solid #e8c99a;border-radius:8px;font-size:0.95em;color:#2c1810;background-color:#fff;box-sizing:border-box;margin-top:0.3em;transition:border-color 0.2s, box-shadow 0.2s}.field input[type="text"]:focus,.field input[type="email"]:focus,.field input[type="password"]:focus,.field input[type="url"]:focus,.field input[type="number"]:focus,.field select:focus,.field textarea:focus,.field1 input[type="text"]:focus,.field1 input[type="email"]:focus,.field1 input[type="password"]:focus,.field1 input[type="url"]:focus,.field1 input[type="number"]:focus,.field1 select:focus,.field1 textarea:focus,.field2 input[type="text"]:focus,.field2 input[type="email"]:focus,.field2 input[type="password"]:focus,.field2 input[type="url"]:focus,.field2 input[type="number"]:focus,.field2 select:focus,.field2 textarea:focus{outline:none;border-color:#d98e04;box-shadow:0 0 0 3px rgba(217,142,4,0.15)}.field textarea,.field1 textarea,.field2 textarea{resize:vertical;min-height:100px}.button_login{margin-top:1.5em}.button_login input[type="submit"]{display:block;width:100%;padding:0.8em;background-color:#9ecb6a;color:#fff;border:none;border-radius:22px;font-size:1em;font-weight:700;cursor:pointer;letter-spacing:0.06em;transition:background-color 0.2s}.button_login input[type="submit"]:hover{background-color:#85be44}.prof-page{max-width:640px;margin:0 auto 3em;padding:0 1em}.prof-card{margin-bottom:1.6em}.prof-section-heading{font-size:0.78em;font-weight:700;color:#7a5c3a;letter-spacing:0.1em;text-transform:uppercase;padding-bottom:0.6em;border-bottom:2px solid #e8c99a;margin-bottom:1.2em}.form-label-note{font-size:0.78em;color:#7a5c3a;font-weight:400;margin-left:0.4em}.input-prefix-group{display:flex;align-items:stretch}.input-prefix{display:flex;align-items:center;padding:0 0.75em;background-color:#f0e8da;border:1px solid #e8c99a;border-right:none;border-radius:8px 0 0 8px;font-size:0.9em;color:#7a5c3a;font-weight:600;flex-shrink:0}.input-with-prefix{border-radius:0 8px 8px 0 !important;flex:1;min-width:0}.input-unit-group{display:flex;align-items:center;gap:0.5em}.input-unit{width:9em !important}.input-unit-prefix,.input-unit-suffix{font-size:0.9em;color:#7a5c3a;white-space:nowrap;flex-shrink:0}.vibe-edit-row{display:flex;align-items:center;gap:0.7em;margin-top:0.4em}.vibe-edit-label{font-size:0.82em;color:#7a5c3a;white-space:nowrap}.vibe-edit-slider{flex:1;accent-color:#d98e04;cursor:pointer}.prof-danger-zone{margin-top:2em;padding:1.2em 1.4em;background-color:#fff8f8;border:1px solid #fca5a5;border-radius:10px}.prof-danger-title{font-size:0.9em;font-weight:700;color:#b91c1c;margin:0 0 0.4em}.prof-danger-desc{font-size:0.82em;color:#7f4040;margin:0 0 0.9em;line-height:1.5}.btn-danger{display:inline-block;padding:0.45em 1.2em;background-color:transparent;color:#b91c1c;border:1px solid #b91c1c;border-radius:20px;font-size:0.85em;font-weight:600;cursor:pointer;transition:background-color 0.2s, color 0.2s;text-decoration:none}.btn-danger:hover{background-color:#b91c1c;color:#fff}.btn-back{display:inline-block;margin-left:1em;font-size:0.85em;color:#7a5c3a;text-decoration:none}.btn-back:hover{text-decoration:underline}
